From f7bb088c8f9947bc9508a1f45bd6f0d741645412 Mon Sep 17 00:00:00 2001 From: GuoLei1990 Date: Sat, 29 Nov 2025 00:35:28 +0800 Subject: [PATCH] chore: remove unused code --- packages/physics-physx/README.md | 34 - .../libs/physx.release.downgrade.js | 58 - packages/physics-physx/libs/physx.release.js | 21 - .../physics-physx/libs/physx.release.wasm | Bin 2281109 -> 0 bytes packages/physics-physx/package.json | 38 - .../src/PhysXCharacterController.ts | 192 -- packages/physics-physx/src/PhysXCollider.ts | 87 - .../physics-physx/src/PhysXDynamicCollider.ts | 263 --- packages/physics-physx/src/PhysXPhysics.ts | 310 --- .../physics-physx/src/PhysXPhysicsManager.ts | 7 - .../physics-physx/src/PhysXPhysicsMaterial.ts | 83 - .../physics-physx/src/PhysXPhysicsScene.ts | 570 ------ .../physics-physx/src/PhysXStaticCollider.ts | 15 - .../src/enum/PhysXRuntimeMode.ts | 11 - packages/physics-physx/src/index.ts | 7 - .../src/joint/PhysXFixedJoint.ts | 22 - .../src/joint/PhysXHingeJoint.ts | 126 -- .../physics-physx/src/joint/PhysXJoint.ts | 116 -- .../src/joint/PhysXSpringJoint.ts | 61 - .../src/shape/PhysXBoxColliderShape.ts | 73 - .../src/shape/PhysXCapsuleColliderShape.ts | 175 -- .../src/shape/PhysXColliderShape.ts | 185 -- .../src/shape/PhysXPlaneColliderShape.ts | 20 - .../src/shape/PhysXSphereColliderShape.ts | 42 - packages/physics-physx/tsconfig.json | 18 - packages/shader-lab/README.md | 43 - packages/shader-lab/package.json | 38 - packages/shader-lab/src/GSError.ts | 70 - packages/shader-lab/src/ParserUtils.ts | 66 - packages/shader-lab/src/Preprocessor.ts | 189 -- packages/shader-lab/src/ShaderLab.ts | 120 -- packages/shader-lab/src/ShaderLabUtils.ts | 37 - packages/shader-lab/src/TempArray.ts | 9 - .../shader-lab/src/codeGen/CodeGenVisitor.ts | 369 ---- packages/shader-lab/src/codeGen/GLES100.ts | 54 - packages/shader-lab/src/codeGen/GLES300.ts | 121 -- .../shader-lab/src/codeGen/GLESVisitor.ts | 326 ---- .../shader-lab/src/codeGen/VisitorContext.ts | 130 -- packages/shader-lab/src/codeGen/index.ts | 3 - packages/shader-lab/src/codeGen/types.ts | 12 - packages/shader-lab/src/common/BaseLexer.ts | 241 --- packages/shader-lab/src/common/BaseToken.ts | 39 - packages/shader-lab/src/common/IBaseSymbol.ts | 7 - .../shader-lab/src/common/ShaderPosition.ts | 31 - packages/shader-lab/src/common/ShaderRange.ts | 17 - packages/shader-lab/src/common/SymbolTable.ts | 58 - .../shader-lab/src/common/SymbolTableStack.ts | 53 - .../shader-lab/src/common/enums/Keyword.ts | 115 -- .../src/common/enums/ShaderStage.ts | 5 - packages/shader-lab/src/common/index.ts | 6 - packages/shader-lab/src/common/types.ts | 151 -- packages/shader-lab/src/index.ts | 13 - packages/shader-lab/src/lalr/CFG.ts | 1082 ----------- packages/shader-lab/src/lalr/LALR1.ts | 226 --- packages/shader-lab/src/lalr/Production.ts | 17 - packages/shader-lab/src/lalr/State.ts | 79 - packages/shader-lab/src/lalr/StateItem.ts | 78 - packages/shader-lab/src/lalr/Utils.ts | 76 - packages/shader-lab/src/lalr/index.ts | 2 - packages/shader-lab/src/lalr/types.ts | 17 - packages/shader-lab/src/lexer/Lexer.ts | 534 ------ packages/shader-lab/src/lexer/index.ts | 1 - .../src/macroProcessor/MacroDefine.ts | 41 - .../src/macroProcessor/MacroParser.ts | 669 ------- .../src/macroProcessor/MacroParserLexer.ts | 309 --- .../shader-lab/src/macroProcessor/Utils.ts | 41 - .../src/macroProcessor/constants.ts | 58 - .../shader-lab/src/macroProcessor/index.ts | 1 - .../src/macroProcessor/sourceMap/index.ts | 78 - packages/shader-lab/src/parser/AST.ts | 1659 ----------------- packages/shader-lab/src/parser/Grammar.ts | 34 - .../shader-lab/src/parser/GrammarSymbol.ts | 139 -- .../shader-lab/src/parser/SemanticAnalyzer.ts | 94 - packages/shader-lab/src/parser/ShaderInfo.ts | 17 - .../src/parser/ShaderTargetParser.ts | 143 -- packages/shader-lab/src/parser/TargetParser.y | 642 ------- .../src/parser/builtin/functions.ts | 647 ------- .../shader-lab/src/parser/builtin/index.ts | 2 - .../src/parser/builtin/variables.ts | 50 - packages/shader-lab/src/parser/index.ts | 2 - .../src/parser/symbolTable/FnSymbol.ts | 15 - .../src/parser/symbolTable/StructSymbol.ts | 10 - .../src/parser/symbolTable/SymbolDataType.ts | 10 - .../src/parser/symbolTable/SymbolInfo.ts | 64 - .../src/parser/symbolTable/VarSymbol.ts | 27 - .../src/parser/symbolTable/index.ts | 6 - packages/shader-lab/src/parser/types.ts | 31 - .../src/sourceParser/ShaderSourceFactory.ts | 48 - .../src/sourceParser/ShaderSourceParser.ts | 541 ------ .../src/sourceParser/ShaderSourceParser.y | 152 -- .../src/sourceParser/ShaderSourceSymbol.ts | 21 - .../src/sourceParser/SourceLexer.ts | 215 --- packages/shader-lab/src/sourceParser/index.ts | 1 - packages/shader-lab/tsconfig.json | 25 - packages/shader-lab/verbose/package.json | 14 - rollup.config.js | 5 +- 96 files changed, 3 insertions(+), 12777 deletions(-) delete mode 100644 packages/physics-physx/README.md delete mode 100644 packages/physics-physx/libs/physx.release.downgrade.js delete mode 100644 packages/physics-physx/libs/physx.release.js delete mode 100644 packages/physics-physx/libs/physx.release.wasm delete mode 100644 packages/physics-physx/package.json delete mode 100644 packages/physics-physx/src/PhysXCharacterController.ts delete mode 100644 packages/physics-physx/src/PhysXCollider.ts delete mode 100644 packages/physics-physx/src/PhysXDynamicCollider.ts delete mode 100644 packages/physics-physx/src/PhysXPhysics.ts delete mode 100644 packages/physics-physx/src/PhysXPhysicsManager.ts delete mode 100644 packages/physics-physx/src/PhysXPhysicsMaterial.ts delete mode 100644 packages/physics-physx/src/PhysXPhysicsScene.ts delete mode 100644 packages/physics-physx/src/PhysXStaticCollider.ts delete mode 100644 packages/physics-physx/src/enum/PhysXRuntimeMode.ts delete mode 100644 packages/physics-physx/src/index.ts delete mode 100644 packages/physics-physx/src/joint/PhysXFixedJoint.ts delete mode 100644 packages/physics-physx/src/joint/PhysXHingeJoint.ts delete mode 100644 packages/physics-physx/src/joint/PhysXJoint.ts delete mode 100644 packages/physics-physx/src/joint/PhysXSpringJoint.ts delete mode 100644 packages/physics-physx/src/shape/PhysXBoxColliderShape.ts delete mode 100644 packages/physics-physx/src/shape/PhysXCapsuleColliderShape.ts delete mode 100644 packages/physics-physx/src/shape/PhysXColliderShape.ts delete mode 100644 packages/physics-physx/src/shape/PhysXPlaneColliderShape.ts delete mode 100644 packages/physics-physx/src/shape/PhysXSphereColliderShape.ts delete mode 100644 packages/physics-physx/tsconfig.json delete mode 100644 packages/shader-lab/README.md delete mode 100644 packages/shader-lab/package.json delete mode 100644 packages/shader-lab/src/GSError.ts delete mode 100644 packages/shader-lab/src/ParserUtils.ts delete mode 100644 packages/shader-lab/src/Preprocessor.ts delete mode 100644 packages/shader-lab/src/ShaderLab.ts delete mode 100644 packages/shader-lab/src/ShaderLabUtils.ts delete mode 100644 packages/shader-lab/src/TempArray.ts delete mode 100644 packages/shader-lab/src/codeGen/CodeGenVisitor.ts delete mode 100644 packages/shader-lab/src/codeGen/GLES100.ts delete mode 100644 packages/shader-lab/src/codeGen/GLES300.ts delete mode 100644 packages/shader-lab/src/codeGen/GLESVisitor.ts delete mode 100644 packages/shader-lab/src/codeGen/VisitorContext.ts delete mode 100644 packages/shader-lab/src/codeGen/index.ts delete mode 100644 packages/shader-lab/src/codeGen/types.ts delete mode 100644 packages/shader-lab/src/common/BaseLexer.ts delete mode 100644 packages/shader-lab/src/common/BaseToken.ts delete mode 100644 packages/shader-lab/src/common/IBaseSymbol.ts delete mode 100644 packages/shader-lab/src/common/ShaderPosition.ts delete mode 100644 packages/shader-lab/src/common/ShaderRange.ts delete mode 100644 packages/shader-lab/src/common/SymbolTable.ts delete mode 100644 packages/shader-lab/src/common/SymbolTableStack.ts delete mode 100644 packages/shader-lab/src/common/enums/Keyword.ts delete mode 100644 packages/shader-lab/src/common/enums/ShaderStage.ts delete mode 100644 packages/shader-lab/src/common/index.ts delete mode 100644 packages/shader-lab/src/common/types.ts delete mode 100644 packages/shader-lab/src/index.ts delete mode 100644 packages/shader-lab/src/lalr/CFG.ts delete mode 100644 packages/shader-lab/src/lalr/LALR1.ts delete mode 100644 packages/shader-lab/src/lalr/Production.ts delete mode 100644 packages/shader-lab/src/lalr/State.ts delete mode 100644 packages/shader-lab/src/lalr/StateItem.ts delete mode 100644 packages/shader-lab/src/lalr/Utils.ts delete mode 100644 packages/shader-lab/src/lalr/index.ts delete mode 100644 packages/shader-lab/src/lalr/types.ts delete mode 100644 packages/shader-lab/src/lexer/Lexer.ts delete mode 100644 packages/shader-lab/src/lexer/index.ts delete mode 100644 packages/shader-lab/src/macroProcessor/MacroDefine.ts delete mode 100644 packages/shader-lab/src/macroProcessor/MacroParser.ts delete mode 100644 packages/shader-lab/src/macroProcessor/MacroParserLexer.ts delete mode 100644 packages/shader-lab/src/macroProcessor/Utils.ts delete mode 100644 packages/shader-lab/src/macroProcessor/constants.ts delete mode 100644 packages/shader-lab/src/macroProcessor/index.ts delete mode 100644 packages/shader-lab/src/macroProcessor/sourceMap/index.ts delete mode 100644 packages/shader-lab/src/parser/AST.ts delete mode 100644 packages/shader-lab/src/parser/Grammar.ts delete mode 100644 packages/shader-lab/src/parser/GrammarSymbol.ts delete mode 100644 packages/shader-lab/src/parser/SemanticAnalyzer.ts delete mode 100644 packages/shader-lab/src/parser/ShaderInfo.ts delete mode 100644 packages/shader-lab/src/parser/ShaderTargetParser.ts delete mode 100644 packages/shader-lab/src/parser/TargetParser.y delete mode 100644 packages/shader-lab/src/parser/builtin/functions.ts delete mode 100644 packages/shader-lab/src/parser/builtin/index.ts delete mode 100644 packages/shader-lab/src/parser/builtin/variables.ts delete mode 100644 packages/shader-lab/src/parser/index.ts delete mode 100644 packages/shader-lab/src/parser/symbolTable/FnSymbol.ts delete mode 100644 packages/shader-lab/src/parser/symbolTable/StructSymbol.ts delete mode 100644 packages/shader-lab/src/parser/symbolTable/SymbolDataType.ts delete mode 100644 packages/shader-lab/src/parser/symbolTable/SymbolInfo.ts delete mode 100644 packages/shader-lab/src/parser/symbolTable/VarSymbol.ts delete mode 100644 packages/shader-lab/src/parser/symbolTable/index.ts delete mode 100644 packages/shader-lab/src/parser/types.ts delete mode 100644 packages/shader-lab/src/sourceParser/ShaderSourceFactory.ts delete mode 100644 packages/shader-lab/src/sourceParser/ShaderSourceParser.ts delete mode 100644 packages/shader-lab/src/sourceParser/ShaderSourceParser.y delete mode 100644 packages/shader-lab/src/sourceParser/ShaderSourceSymbol.ts delete mode 100644 packages/shader-lab/src/sourceParser/SourceLexer.ts delete mode 100644 packages/shader-lab/src/sourceParser/index.ts delete mode 100644 packages/shader-lab/tsconfig.json delete mode 100644 packages/shader-lab/verbose/package.json diff --git a/packages/physics-physx/README.md b/packages/physics-physx/README.md deleted file mode 100644 index 11d21b77f..000000000 --- a/packages/physics-physx/README.md +++ /dev/null @@ -1,34 +0,0 @@ -## Installation - -To install, use: - -```sh -npm install @galacean/engine-physics-physx -``` - -This will allow you to import engine entirely using: - -```javascript -import * as PHYSICS_PHYSX from "@galacean/engine-physics-physx"; -``` - -or individual classes using: - -```javascript -import { PhysXPhysics } from "@galacean/engine-physics-physx"; -``` - -## Usage - -```typescript -// Create engine by passing in the HTMLCanvasElement id and adjust canvas size -const engine = await WebGLEngine.create({ canvas: "canvas-id" }); - -// Initialize physics manager with PhysXPhysics. -engine.physicsManager.initialize(PhysXPhysics); - -...... - -// Run engine. -engine.run(); -``` \ No newline at end of file diff --git a/packages/physics-physx/libs/physx.release.downgrade.js b/packages/physics-physx/libs/physx.release.downgrade.js deleted file mode 100644 index 927f13d0f..000000000 --- a/packages/physics-physx/libs/physx.release.downgrade.js +++ /dev/null @@ -1,58 +0,0 @@ - -var PHYSX = (() => { - var _scriptDir = typeof document !== 'undefined' && document.currentScript ? document.currentScript.src : undefined; - if (typeof __filename !== 'undefined') _scriptDir = _scriptDir || __filename; - return ( -function(PHYSX) { - PHYSX = PHYSX || {}; - -var Module=typeof PHYSX!=="undefined"?PHYSX:{};var objAssign=Object.assign;var readyPromiseResolve,readyPromiseReject;Module["ready"]=new Promise(function(resolve,reject){readyPromiseResolve=resolve;readyPromiseReject=reject});if(!Object.getOwnPropertyDescriptor(Module["ready"],"_main")){Object.defineProperty(Module["ready"],"_main",{configurable:true,get:function(){abort("You are getting _main on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_main",{configurable:true,set:function(){abort("You are setting _main on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"___getTypeName")){Object.defineProperty(Module["ready"],"___getTypeName",{configurable:true,get:function(){abort("You are getting ___getTypeName on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"___getTypeName",{configurable:true,set:function(){abort("You are setting ___getTypeName on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"___embind_register_native_and_builtin_types")){Object.defineProperty(Module["ready"],"___embind_register_native_and_builtin_types",{configurable:true,get:function(){abort("You are getting ___embind_register_native_and_builtin_types on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"___embind_register_native_and_builtin_types",{configurable:true,set:function(){abort("You are setting ___embind_register_native_and_builtin_types on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_fflush")){Object.defineProperty(Module["ready"],"_fflush",{configurable:true,get:function(){abort("You are getting _fflush on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_fflush",{configurable:true,set:function(){abort("You are setting _fflush on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"onRuntimeInitialized")){Object.defineProperty(Module["ready"],"onRuntimeInitialized",{configurable:true,get:function(){abort("You are getting onRuntimeInitialized on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"onRuntimeInitialized",{configurable:true,set:function(){abort("You are setting onRuntimeInitialized on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}var moduleOverrides=objAssign({},Module);var arguments_=[];var thisProgram="./this.program";var quit_=(status,toThrow)=>{throw toThrow};var ENVIRONMENT_IS_WEB=typeof window==="object";var ENVIRONMENT_IS_WORKER=typeof importScripts==="function";var ENVIRONMENT_IS_NODE=typeof process==="object"&&typeof process.versions==="object"&&typeof process.versions.node==="string";var ENVIRONMENT_IS_SHELL=!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_NODE&&!ENVIRONMENT_IS_WORKER;if(Module["ENVIRONMENT"]){throw new Error("Module.ENVIRONMENT has been deprecated. To force the environment, use the ENVIRONMENT compile-time option (for example, -s ENVIRONMENT=web or -s ENVIRONMENT=node)")}var scriptDirectory="";function locateFile(path){if(Module["locateFile"]){return Module["locateFile"](path,scriptDirectory)}return scriptDirectory+path}var read_,readAsync,readBinary,setWindowTitle;function logExceptionOnExit(e){if(e instanceof ExitStatus)return;let toLog=e;if(e&&typeof e==="object"&&e.stack){toLog=[e,e.stack]}err("exiting due to exception: "+toLog)}var fs;var nodePath;var requireNodeFS;if(ENVIRONMENT_IS_NODE){if(!(typeof process==="object"&&typeof require==="function"))throw new Error("not compiled for this environment (did you build to HTML and try to run it not on the web, or set ENVIRONMENT to something - like node - and run it someplace else - like on the web?)");if(ENVIRONMENT_IS_WORKER){scriptDirectory=require("path").dirname(scriptDirectory)+"/"}else{scriptDirectory=__dirname+"/"}requireNodeFS=function(){if(!nodePath){fs=require("fs");nodePath=require("path")}};read_=function shell_read(filename,binary){var ret=tryParseAsDataURI(filename);if(ret){return binary?ret:ret.toString()}requireNodeFS();filename=nodePath["normalize"](filename);return fs.readFileSync(filename,binary?null:"utf8")};readBinary=function readBinary(filename){var ret=read_(filename,true);if(!ret.buffer){ret=new Uint8Array(ret)}assert(ret.buffer);return ret};readAsync=function readAsync(filename,onload,onerror){var ret=tryParseAsDataURI(filename);if(ret){onload(ret)}requireNodeFS();filename=nodePath["normalize"](filename);fs.readFile(filename,function(err,data){if(err)onerror(err);else onload(data.buffer)})};if(process["argv"].length>1){thisProgram=process["argv"][1].replace(/\\/g,"/")}arguments_=process["argv"].slice(2);process["on"]("uncaughtException",function(ex){if(!(ex instanceof ExitStatus)){throw ex}});process["on"]("unhandledRejection",function(reason){throw reason});quit_=((status,toThrow)=>{if(keepRuntimeAlive()){process["exitCode"]=status;throw toThrow}logExceptionOnExit(toThrow);process["exit"](status)});Module["inspect"]=function(){return"[Emscripten Module object]"}}else if(ENVIRONMENT_IS_SHELL){if(typeof process==="object"&&typeof require==="function"||typeof window==="object"||typeof importScripts==="function")throw new Error("not compiled for this environment (did you build to HTML and try to run it not on the web, or set ENVIRONMENT to something - like node - and run it someplace else - like on the web?)");if(typeof read!="undefined"){read_=function shell_read(f){const data=tryParseAsDataURI(f);if(data){return intArrayToString(data)}return read(f)}}readBinary=function readBinary(f){let data;data=tryParseAsDataURI(f);if(data){return data}if(typeof readbuffer==="function"){return new Uint8Array(readbuffer(f))}data=read(f,"binary");assert(typeof data==="object");return data};readAsync=function readAsync(f,onload,onerror){setTimeout(()=>onload(readBinary(f)),0)};if(typeof scriptArgs!="undefined"){arguments_=scriptArgs}else if(typeof arguments!="undefined"){arguments_=arguments}if(typeof quit==="function"){quit_=((status,toThrow)=>{logExceptionOnExit(toThrow);quit(status)})}if(typeof print!=="undefined"){if(typeof console==="undefined")console={};console.log=print;console.warn=console.error=typeof printErr!=="undefined"?printErr:print}}else if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){if(ENVIRONMENT_IS_WORKER){scriptDirectory=self.location.href}else 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=""}if(!(typeof window==="object"||typeof importScripts==="function"))throw new Error("not compiled for this environment (did you build to HTML and try to run it not on the web, or set ENVIRONMENT to something - like node - and run it someplace else - like on the web?)");{read_=function(url){try{var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.send(null);return xhr.responseText}catch(err){var data=tryParseAsDataURI(url);if(data){return intArrayToString(data)}throw err}};if(ENVIRONMENT_IS_WORKER){readBinary=function(url){try{var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.responseType="arraybuffer";xhr.send(null);return new Uint8Array(xhr.response)}catch(err){var data=tryParseAsDataURI(url);if(data){return data}throw err}}}readAsync=function(url,onload,onerror){var xhr=new XMLHttpRequest;xhr.open("GET",url,true);xhr.responseType="arraybuffer";xhr.onload=function(){if(xhr.status==200||xhr.status==0&&xhr.response){onload(xhr.response);return}var data=tryParseAsDataURI(url);if(data){onload(data.buffer);return}onerror()};xhr.onerror=onerror;xhr.send(null)}}setWindowTitle=(title=>document.title=title)}else{throw new Error("environment detection error")}var out=Module["print"]||console.log.bind(console);var err=Module["printErr"]||console.warn.bind(console);objAssign(Module,moduleOverrides);moduleOverrides=null;if(Module["arguments"])arguments_=Module["arguments"];if(!Object.getOwnPropertyDescriptor(Module,"arguments")){Object.defineProperty(Module,"arguments",{configurable:true,get:function(){abort("Module.arguments has been replaced with plain arguments_ (the initial value can be provided on Module, but after startup the value is only looked for on a local variable of that name)")}})}if(Module["thisProgram"])thisProgram=Module["thisProgram"];if(!Object.getOwnPropertyDescriptor(Module,"thisProgram")){Object.defineProperty(Module,"thisProgram",{configurable:true,get:function(){abort("Module.thisProgram has been replaced with plain thisProgram (the initial value can be provided on Module, but after startup the value is only looked for on a local variable of that name)")}})}if(Module["quit"])quit_=Module["quit"];if(!Object.getOwnPropertyDescriptor(Module,"quit")){Object.defineProperty(Module,"quit",{configurable:true,get:function(){abort("Module.quit has been replaced with plain quit_ (the initial value can be provided on Module, but after startup the value is only looked for on a local variable of that name)")}})}assert(typeof Module["memoryInitializerPrefixURL"]==="undefined","Module.memoryInitializerPrefixURL option was removed, use Module.locateFile instead");assert(typeof Module["pthreadMainPrefixURL"]==="undefined","Module.pthreadMainPrefixURL option was removed, use Module.locateFile instead");assert(typeof Module["cdInitializerPrefixURL"]==="undefined","Module.cdInitializerPrefixURL option was removed, use Module.locateFile instead");assert(typeof Module["filePackagePrefixURL"]==="undefined","Module.filePackagePrefixURL option was removed, use Module.locateFile instead");assert(typeof Module["read"]==="undefined","Module.read option was removed (modify read_ in JS)");assert(typeof Module["readAsync"]==="undefined","Module.readAsync option was removed (modify readAsync in JS)");assert(typeof Module["readBinary"]==="undefined","Module.readBinary option was removed (modify readBinary in JS)");assert(typeof Module["setWindowTitle"]==="undefined","Module.setWindowTitle option was removed (modify setWindowTitle in JS)");assert(typeof Module["TOTAL_MEMORY"]==="undefined","Module.TOTAL_MEMORY has been renamed Module.INITIAL_MEMORY");if(!Object.getOwnPropertyDescriptor(Module,"read")){Object.defineProperty(Module,"read",{configurable:true,get:function(){abort("Module.read has been replaced with plain read_ (the initial value can be provided on Module, but after startup the value is only looked for on a local variable of that name)")}})}if(!Object.getOwnPropertyDescriptor(Module,"readAsync")){Object.defineProperty(Module,"readAsync",{configurable:true,get:function(){abort("Module.readAsync has been replaced with plain readAsync (the initial value can be provided on Module, but after startup the value is only looked for on a local variable of that name)")}})}if(!Object.getOwnPropertyDescriptor(Module,"readBinary")){Object.defineProperty(Module,"readBinary",{configurable:true,get:function(){abort("Module.readBinary has been replaced with plain readBinary (the initial value can be provided on Module, but after startup the value is only looked for on a local variable of that name)")}})}if(!Object.getOwnPropertyDescriptor(Module,"setWindowTitle")){Object.defineProperty(Module,"setWindowTitle",{configurable:true,get:function(){abort("Module.setWindowTitle has been replaced with plain setWindowTitle (the initial value can be provided on Module, but after startup the value is only looked for on a local variable of that name)")}})}assert(!ENVIRONMENT_IS_SHELL,"shell environment detected but not enabled at build time. Add 'shell' to `-s ENVIRONMENT` to enable.");var POINTER_SIZE=4;function warnOnce(text){if(!warnOnce.shown)warnOnce.shown={};if(!warnOnce.shown[text]){warnOnce.shown[text]=1;err(text)}}function convertJsFunctionToWasm(func,sig){return func}var freeTableIndexes=[];var functionsInTableMap;function getEmptyTableSlot(){if(freeTableIndexes.length){return freeTableIndexes.pop()}try{wasmTable.grow(1)}catch(err){if(!(err instanceof RangeError)){throw err}throw"Unable to grow wasm table. Set ALLOW_TABLE_GROWTH."}return wasmTable.length-1}function updateTableMap(offset,count){for(var i=offset;i=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>4;if(i>2;if(i>2];b=H[e+368>>2];c=H[b>>2];if(c){H[b>>2]=H[c>>2]}if(!c){b=H[33808];c=Ra[H[H[b>>2]+20>>2]](b)|0?23054:55639;c=Ra[H[H[b+12>>2]+8>>2]](b+12|0,12195,c,16202,82)|0;b=c+19&-16;H[b-4>>2]=b-c;c=lA(b,H[e+372>>2])}b=c+11856|0;H[b>>2]=0;H[b+4>>2]=0;Kb=H[a+64>>2];Qe=H[a+28>>2];ei=H[a+32>>2];ci=H[a+36>>2];di=H[a+40>>2];b=H[a+68>>2];pe=L[a+44>>2];fb=L[a+48>>2];sb=L[a+52>>2];Y=Oa-832|0;Oa=Y;yc=c;H[Y+824>>2]=c+12088;H[Y+820>>2]=c+11824;H[Y+816>>2]=c+11852;H[Y+812>>2]=b+11836;H[Y+808>>2]=113028;if(ci){Qb=O(O(1)/fb);Re=H[Kb+496>>2];Se=H[Kb+484>>2];while(1){_b=(Vf<<3)+ei|0;Rb=H[_b>>2];Sc=J[_b+4>>1];Lb=Rb+Sc|0;a:{b:{c:{d:{switch(J[((Rb<<5)+Qe|0)+22>>1]-1|0){case 0:Ed=Lb>>>0<=Rb>>>0;b=Sc;if(Ed){break b}l=H[di+32>>2];h=0;c=Rb;while(1){b=h<<2;E=(c<<5)+Qe|0;Q=H[E+24>>2];H[b+Y>>2]=Q;f=b+(Y+32|0)|0;b=H[Q+68>>2];b=l+(H[((b&7)<<2)+di>>2]+(b>>>3|0)<<4)|0;H[f>>2]=b;g=H[E+4>>2];e=H[E>>2];P=H[E+12>>2];k=H[E+16>>2];m=H[Q+20>>2];y=(Y+96|0)+N(h,176)|0;f=H[Q+16>>2];L[y+44>>2]=L[f>>2];L[y+48>>2]=L[f+4>>2];L[y+52>>2]=L[f+8>>2];L[y+56>>2]=L[f+12>>2];L[y+60>>2]=L[f+16>>2];L[y- -64>>2]=L[f+20>>2];L[y+68>>2]=L[f+24>>2];L[y+72>>2]=L[m>>2];L[y+76>>2]=L[m+4>>2];L[y+80>>2]=L[m+8>>2];L[y+84>>2]=L[m+12>>2];L[y+88>>2]=L[m+16>>2];L[y+92>>2]=L[m+20>>2];L[y+96>>2]=L[m+24>>2];H[y+108>>2]=H[Q+12>>2];b=H[b+8>>2];m=N(k,48)+Re|0;H[y+40>>2]=m;f=N(P,48)+Re|0;H[y+36>>2]=f;H[y+32>>2]=(k<<6)+Se;H[y+28>>2]=(P<<6)+Se;H[y+20>>2]=e;H[y+24>>2]=g;H[y+16>>2]=E;H[y+140>>2]=b;g=J[Q+40>>1];F[y+121|0]=g>>>2&1;F[y+122|0]=g>>>8&1;e=g&8;H[y+100>>2]=e?8:1;b=g&16;e:{if(b){if(J[E+10>>1]==65535){H[y+104>>2]=2;break e}H[y+104>>2]=8;break e}H[y+104>>2]=g&1024?4:g&64?1:2}u=L[(b?H[Q+20>>2]+128|0:m+12|0)>>2];A=L[(e?H[Q+16>>2]+128|0:f+12|0)>>2];b=I[Q+44|0];q=I[Q+45|0]?O(1):O(0);L[y+12>>2]=q;d=b?O(1):O(0);L[y>>2]=d;L[y+4>>2]=d;L[y+8>>2]=q;L[y+124>>2]=L[Q+52>>2];H[y+132>>2]=H[Q+36>>2];b=I[Q+42|0];L[y+160>>2]=u>A?A:u;H[y+128>>2]=2139095039;F[y+136|0]=b;L[y+164>>2]=L[Q+72>>2];L[y+168>>2]=L[Q+76>>2];c=c+1|0;h=h+1|0;if((Sc|0)!=(h|0)){continue}break};break c;case 1:break d;default:break a}}if(Lb>>>0>Rb>>>0){P=H[Kb+168>>2];h=0;c=Rb;while(1){H[Y+24>>2]=0;H[Y+16>>2]=0;H[Y+20>>2]=0;H[Y+8>>2]=0;H[Y+12>>2]=1065353216;H[Y>>2]=0;H[Y+4>>2]=0;b=Y;m=b;U=(c<<5)+Qe|0;C=H[U+24>>2];e=H[C+24>>2];if(e){m=H[e+36>>2]}k=J[C+8>>1];l=H[C+20>>2];g=H[C+12>>2];e=H[C+28>>2];if(e){b=H[e+36>>2]}f=H[U+4>>2];Q=H[U+12>>2];E=H[U+16>>2];e=H[U>>2];y=(Y+32|0)+(h<<4)|0;H[y+12>>2]=k;H[y+8>>2]=l;H[y+4>>2]=g;H[y>>2]=C;g=(Y+96|0)+N(h,176)|0;H[g+16>>2]=U;L[g+44>>2]=L[m>>2];L[g+48>>2]=L[m+4>>2];L[g+52>>2]=L[m+8>>2];L[g+56>>2]=L[m+12>>2];L[g+60>>2]=L[m+16>>2];L[g- -64>>2]=L[m+20>>2];L[g+68>>2]=L[m+24>>2];L[g+72>>2]=L[b>>2];L[g+76>>2]=L[b+4>>2];L[g+80>>2]=L[b+8>>2];L[g+84>>2]=L[b+12>>2];L[g+88>>2]=L[b+16>>2];L[g+92>>2]=L[b+20>>2];d=L[b+24>>2];H[g+40>>2]=N(E,48)+Re;H[g+36>>2]=N(Q,48)+Re;H[g+32>>2]=(E<<6)+Se;H[g+28>>2]=(Q<<6)+Se;H[g+24>>2]=f;H[g+20>>2]=e;L[g+96>>2]=d;L[g+116>>2]=L[C>>2];L[g+120>>2]=L[C+4>>2];H[g+128>>2]=P+(H[C+40>>2]<<5);e=J[C+10>>1];F[g+135|0]=e>>>9&1;b=e&255;F[g+133|0]=b>>>7;F[g+132|0]=e>>>8&1;F[g+134|0]=b>>>5&1;L[g+124>>2]=L[C+44>>2];H[g+100>>2]=J[U+8>>1]==65535?1:8;H[g+104>>2]=J[U+10>>1]==65535?1:8;c=c+1|0;h=h+1|0;if((Sc|0)!=(h|0)){continue}break}}if((Sc|0)==4){y=Y+32|0;i=Y+96|0;C=Y+808|0;sa=L[Kb+612>>2];c=0;f=0;m=0;P=0;g=0;T=0;R=0;gb=0;tb=0;Sb=0;Ed=0;qe=Oa-3840|0;Oa=qe;H[Y>>2]=0;e=1;S=1;f:{g:{while(1){Q=y+(g<<4)|0;E=H[Q+4>>2];if(!E){break f}h=i+N(g,176)|0;o=qe+N(P,80)|0;S6(o+N(f,80)|0,0,960);h:{if(f>>>0>11){break h}U=0;b=f;k=0-b&3;if(k){while(1){l=o+N(b,80)|0;H[l+60>>2]=2139095039;H[l+44>>2]=-8388609;b=b+1|0;U=U+1|0;if((k|0)!=(U|0)){continue}break}}if(f-9>>>0<=2){break h}while(1){f=o+N(b,80)|0;H[f+60>>2]=2139095039;H[f+44>>2]=-8388609;H[f+140>>2]=2139095039;H[f+124>>2]=-8388609;H[f+204>>2]=-8388609;H[f+220>>2]=2139095039;H[f+284>>2]=-8388609;H[f+300>>2]=2139095039;b=b+4|0;if((b|0)!=12){continue}break}}H[h+4>>2]=1065353216;H[h+8>>2]=1065353216;H[h+12>>2]=1065353216;H[h>>2]=1065353216;H[h+144>>2]=0;H[h+136>>2]=0;H[h+140>>2]=0;b=Ra[E|0](o,h+136|0,12,h,H[Q+8>>2],h+44|0,h+72|0,I[h+135|0],h+148|0,h+160|0)|0;T=b>>>0>>0?T:b;if(b){H[h+112>>2]=b;H[h+108>>2]=o;if(I[H[h+20>>2]+62|0]){H[h+4>>2]=0}if(I[H[h+24>>2]+62|0]){H[h+12>>2]=0}f=12-b|0;P=b+P|0;S=g>>>0<3;g=g+1|0;if((g|0)!=4){continue}break g}break}if(S){break f}}e=0;aa=Oa-1744|0;Oa=aa;l=H[i+108>>2];g=H[i+112>>2];i:{if(!g){break i}if((g|0)!=1){f=g&-2;while(1){h=l+N(c,80)|0;j:{if(!(I[h+76|0]&64)){break j}b=1024;k:{switch(J[h+78>>1]-2048|0){case 1:b=1025;break;case 0:break k;default:break j}}G[h+78>>1]=b}h=l+N(c|1,80)|0;l:{if(!(I[h+76|0]&64)){break l}b=1024;m:{switch(J[h+78>>1]-2048|0){case 1:b=1025;break;case 0:break m;default:break l}}G[h+78>>1]=b}c=c+2|0;e=e+2|0;if((f|0)!=(e|0)){continue}break}}if(!(g&1)){break i}c=l+N(c,80)|0;if(!(I[c+76|0]&64)){break i}e=1024;n:{switch(J[c+78>>1]-2048|0){case 1:e=1025;break;case 0:break n;default:break i}}G[c+78>>1]=e}c=0;b=aa+1552|0;tx(b,l,aa+784|0,aa+16|0,g,H[i+28>>2]+28|0,H[i+32>>2]+28|0,L[H[i+36>>2]+32>>2],L[H[i+40>>2]+32>>2],i,I[i+132|0],I[i+133|0],0);P=H[i+284>>2];k=H[i+112>>2];h=b+(k<<2)|0;l=H[i+288>>2];o:{if(!l){break o}if((l|0)!=1){f=l&-2;e=0;while(1){g=P+N(c,80)|0;p:{if(!(I[g+76|0]&64)){break p}b=1025;q:{switch(J[g+78>>1]-2048|0){case 0:b=1024;break;case 1:break q;default:break p}}G[g+78>>1]=b}g=P+N(c|1,80)|0;r:{if(!(I[g+76|0]&64)){break r}b=1025;s:{switch(J[g+78>>1]-2048|0){case 0:b=1024;break;case 1:break s;default:break r}}G[g+78>>1]=b}c=c+2|0;e=e+2|0;if((f|0)!=(e|0)){continue}break}}if(!(l&1)){break o}c=P+N(c,80)|0;if(!(I[c+76|0]&64)){break o}e=1025;t:{switch(J[c+78>>1]-2048|0){case 0:e=1024;break;case 1:break t;default:break o}}G[c+78>>1]=e}c=0;b=k<<4;tx(h,P,b+(aa+784|0)|0,b+(aa+16|0)|0,l,H[i+204>>2]+28|0,H[i+208>>2]+28|0,L[H[i+212>>2]+32>>2],L[H[i+216>>2]+32>>2],i+176|0,I[i+308|0],I[i+309|0],0);E=H[i+460>>2];P=H[i+288>>2]+k|0;h=(aa+1552|0)+(P<<2)|0;l=H[i+464>>2];u:{if(!l){break u}if((l|0)!=1){f=l&-2;e=0;while(1){g=E+N(c,80)|0;v:{if(!(I[g+76|0]&64)){break v}b=1025;w:{switch(J[g+78>>1]-2048|0){case 0:b=1024;break;case 1:break w;default:break v}}G[g+78>>1]=b}g=E+N(c|1,80)|0;x:{if(!(I[g+76|0]&64)){break x}b=1025;y:{switch(J[g+78>>1]-2048|0){case 0:b=1024;break;case 1:break y;default:break x}}G[g+78>>1]=b}c=c+2|0;e=e+2|0;if((f|0)!=(e|0)){continue}break}}if(!(l&1)){break u}c=E+N(c,80)|0;if(!(I[c+76|0]&64)){break u}e=1025;z:{switch(J[c+78>>1]-2048|0){case 0:e=1024;break;case 1:break z;default:break u}}G[c+78>>1]=e}c=0;b=P<<4;tx(h,E,b+(aa+784|0)|0,b+(aa+16|0)|0,l,H[i+380>>2]+28|0,H[i+384>>2]+28|0,L[H[i+388>>2]+32>>2],L[H[i+392>>2]+32>>2],i+352|0,I[i+484|0],I[i+485|0],0);E=H[i+636>>2];S=H[i+464>>2]+P|0;h=(aa+1552|0)+(S<<2)|0;l=H[i+640>>2];A:{if(!l){break A}if((l|0)!=1){f=l&-2;e=0;while(1){g=E+N(c,80)|0;B:{if(!(I[g+76|0]&64)){break B}b=1025;C:{switch(J[g+78>>1]-2048|0){case 0:b=1024;break;case 1:break C;default:break B}}G[g+78>>1]=b}g=E+N(c|1,80)|0;D:{if(!(I[g+76|0]&64)){break D}b=1025;E:{switch(J[g+78>>1]-2048|0){case 0:b=1024;break;case 1:break E;default:break D}}G[g+78>>1]=b}c=c+2|0;e=e+2|0;if((f|0)!=(e|0)){continue}break}}if(!(l&1)){break A}c=E+N(c,80)|0;if(!(I[c+76|0]&64)){break A}e=1025;F:{switch(J[c+78>>1]-2048|0){case 0:e=1024;break;case 1:break F;default:break A}}G[c+78>>1]=e}c=0;b=S<<4;tx(h,E,b+(aa+784|0)|0,b+(aa+16|0)|0,l,H[i+556>>2]+28|0,H[i+560>>2]+28|0,L[H[i+564>>2]+32>>2],L[H[i+568>>2]+32>>2],i+528|0,I[i+660|0],I[i+661|0],0);h=H[i+640>>2];e=1;f=N(T,368);b=Ra[H[H[C>>2]>>2]](C,f+656|0)|0;G:{if(b+1>>>0<2){b=H[i+16>>2];G[b+22>>1]=0;H[b+24>>2]=0;H[b+28>>2]=H[i+128>>2];b=H[i+192>>2];G[b+22>>1]=0;H[b+24>>2]=0;H[b+28>>2]=H[i+304>>2];b=H[i+368>>2];G[b+22>>1]=0;H[b+24>>2]=0;H[b+28>>2]=H[i+480>>2];b=H[i+544>>2];G[b+22>>1]=0;H[b+24>>2]=0;H[b+28>>2]=H[i+656>>2];break G}H[Y>>2]=h+S;Ta=I[H[i+552>>2]+62|0];hb=I[H[i+548>>2]+62|0];Mb=I[H[i+376>>2]+62|0];ib=I[H[i+372>>2]+62|0];Tb=I[H[i+200>>2]+62|0];Ub=I[H[i+196>>2]+62|0];oa=I[H[i+24>>2]+62|0];Z=I[H[i+20>>2]+62|0];c=H[i+16>>2];f=f+640>>>4|0;G[c+22>>1]=f;H[c+24>>2]=b;H[c+28>>2]=H[i+128>>2];c=H[i+192>>2];G[c+22>>1]=f;H[c+24>>2]=b;H[c+28>>2]=H[i+304>>2];c=H[i+368>>2];G[c+22>>1]=f;H[c+24>>2]=b;H[c+28>>2]=H[i+480>>2];c=H[i+544>>2];G[c+22>>1]=f;H[c+24>>2]=b;H[c+28>>2]=H[i+656>>2];re=L[i+648>>2];se=L[i+472>>2];te=L[i+296>>2];ue=L[i+644>>2];ve=L[i+468>>2];we=L[i+292>>2];xe=L[i+672>>2];Ua=L[i+668>>2];Va=L[i+664>>2];Wa=L[i+496>>2];Xa=L[i+492>>2];pa=L[i+488>>2];wa=L[i+320>>2];ja=L[i+316>>2];ga=L[i+312>>2];Ya=L[i+144>>2];ba=L[i+140>>2];_=L[i+540>>2];$=L[i+364>>2];ca=L[i+188>>2];da=L[i+532>>2];V=L[i+356>>2];X=L[i+180>>2];ea=L[i+184>>2];Za=L[i+360>>2];_a=L[i+536>>2];$a=L[i+136>>2];ma=L[i+12>>2];fa=L[i+4>>2];Ga=L[i>>2];ab=L[H[i+36>>2]+32>>2];na=L[i+176>>2];v=L[H[i+212>>2]+32>>2];n=L[i+352>>2];w=L[H[i+388>>2]+32>>2];z=L[i+528>>2];r=L[H[i+564>>2]+32>>2];p=L[i+8>>2];bb=L[H[i+40>>2]+32>>2];t=L[H[i+216>>2]+32>>2];u=L[H[i+392>>2]+32>>2];A=L[H[i+568>>2]+32>>2];q=L[i+116>>2];d=L[i+120>>2];F[b+12|0]=q!=O(3.4028234663852886e38)|d!=O(3.4028234663852886e38);F[b+13|0]=L[i+292>>2]==O(3.4028234663852886e38)?L[i+296>>2]!=O(3.4028234663852886e38):1;F[b+14|0]=L[i+468>>2]==O(3.4028234663852886e38)?L[i+472>>2]!=O(3.4028234663852886e38):1;e=L[i+644>>2]==O(3.4028234663852886e38)?L[i+648>>2]!=O(3.4028234663852886e38):e;c=b+640|0;L[b+156>>2]=xe;L[b+152>>2]=Wa;L[b+148>>2]=wa;L[b+144>>2]=Ya;L[b+140>>2]=Ua;L[b+136>>2]=Xa;L[b+132>>2]=ja;L[b+128>>2]=ba;L[b+124>>2]=Va;L[b+120>>2]=pa;L[b+116>>2]=ga;L[b+112>>2]=$a;L[b+108>>2]=_;L[b+104>>2]=$;L[b+100>>2]=ca;L[b+96>>2]=ma;L[b+92>>2]=da;L[b+88>>2]=V;L[b+84>>2]=X;L[b+80>>2]=fa;Ha=O(_a*A);L[b+76>>2]=Ha;zc=O(Za*u);L[b+72>>2]=zc;Ac=O(ea*t);L[b+68>>2]=Ac;Bc=O(p*bb);L[b+64>>2]=Bc;Cc=O(z*r);L[b+60>>2]=Cc;Dc=O(n*w);L[b+56>>2]=Dc;Ec=O(na*v);L[b+52>>2]=Ec;Fc=O(Ga*ab);L[b+48>>2]=Fc;F[b+15|0]=e;L[b+16>>2]=q*fb;H[b+4>>2]=T;L[b+20>>2]=we*fb;L[b+24>>2]=ve*fb;L[b+28>>2]=ue*fb;L[b+32>>2]=d*fb;L[b+36>>2]=te*fb;L[b+40>>2]=se*fb;L[b+44>>2]=re*fb;F[b|0]=9;F[b+8|0]=H[i+112>>2];F[b+9|0]=H[i+288>>2];F[b+10|0]=H[i+464>>2];F[b+11|0]=H[i+640>>2];Nb=H[i+568>>2];Tc=L[Nb+24>>2];Gc=L[Nb+20>>2];Ob=H[i+564>>2];Hc=L[Ob+24>>2];Ic=L[Ob+20>>2];xa=H[i+392>>2];Jc=L[xa+24>>2];Kc=L[xa+20>>2];ha=H[i+388>>2];Lc=L[ha+24>>2];Fb=L[ha+20>>2];j=H[i+216>>2];Gb=L[j+24>>2];Hb=L[j+20>>2];o=H[i+212>>2];Ib=L[o+24>>2];cb=L[o+20>>2];C=H[i+40>>2];db=L[C+24>>2];Ca=L[C+20>>2];U=H[i+36>>2];Da=L[U+24>>2];Ea=L[U+20>>2];qa=L[i+152>>2];y=H[i+28>>2];Jb=L[y+20>>2];Uc=L[i+328>>2];Q=H[i+204>>2];Vc=L[Q+20>>2];Wc=L[i+504>>2];E=H[i+380>>2];Xc=L[E+20>>2];Yc=L[i+680>>2];l=H[i+556>>2];Zc=L[l+20>>2];_c=L[i+156>>2];$c=L[y+24>>2];ad=L[i+332>>2];bd=L[Q+24>>2];cd=L[i+508>>2];dd=L[E+24>>2];Fd=L[i+684>>2];Gd=L[l+24>>2];Hd=L[i+164>>2];g=H[i+32>>2];Id=L[g+20>>2];Jd=L[i+340>>2];h=H[i+208>>2];Kd=L[h+20>>2];Ld=L[i+516>>2];f=H[i+384>>2];Md=L[f+20>>2];Nd=L[i+692>>2];e=H[i+560>>2];Od=L[e+20>>2];Pd=L[i+168>>2];Qd=L[g+24>>2];ba=L[i+344>>2];ea=L[h+24>>2];Za=L[i+520>>2];_a=L[f+24>>2];$a=L[i+696>>2];Ga=L[e+24>>2];ab=L[i+324>>2];na=L[i+500>>2];v=L[i+676>>2];n=L[i+336>>2];w=L[i+512>>2];Wf=L[Nb+16>>2];Xf=L[Ob+16>>2];Yf=L[Nb+8>>2];Zf=L[Nb+4>>2];_f=L[Nb>>2];$f=L[Ob+8>>2];ag=L[Ob+4>>2];bg=L[Ob>>2];cg=L[xa+16>>2];dg=L[ha+16>>2];eg=L[xa+8>>2];fg=L[xa+4>>2];gg=L[xa>>2];hg=L[ha+8>>2];ig=L[ha+4>>2];jg=L[ha>>2];re=L[j+16>>2];se=L[o+16>>2];te=L[j+8>>2];ue=L[j+4>>2];ve=L[j>>2];we=L[o+8>>2];xe=L[o+4>>2];Ua=L[o>>2];Va=L[C+16>>2];Wa=L[U+16>>2];Xa=L[C+8>>2];pa=L[C+4>>2];wa=L[C>>2];ja=L[U+8>>2];ga=L[U+4>>2];Ya=L[U>>2];z=L[i+148>>2];r=L[y+16>>2];p=L[Q+16>>2];bb=L[E+16>>2];t=L[l+16>>2];u=L[i+160>>2];A=L[g+16>>2];q=L[h+16>>2];d=L[f+16>>2];L[b+220>>2]=L[i+688>>2]-L[e+16>>2];L[b+216>>2]=w-d;L[b+212>>2]=n-q;L[b+208>>2]=u-A;L[b+172>>2]=v-t;L[b+168>>2]=na-bb;L[b+164>>2]=ab-p;L[b+160>>2]=z-r;L[b+252>>2]=$a-Ga;L[b+248>>2]=Za-_a;L[b+244>>2]=ba-ea;L[b+240>>2]=Pd-Qd;L[b+236>>2]=Nd-Od;L[b+232>>2]=Ld-Md;L[b+228>>2]=Jd-Kd;L[b+224>>2]=Hd-Id;L[b+204>>2]=Fd-Gd;L[b+200>>2]=cd-dd;L[b+196>>2]=ad-bd;L[b+192>>2]=_c-$c;L[b+188>>2]=Yc-Zc;L[b+184>>2]=Wc-Xc;L[b+180>>2]=Uc-Vc;L[b+176>>2]=qa-Jb;g=H[i+288>>2];h=H[i+464>>2];f=H[i+640>>2];e=H[i+112>>2];H[b+264>>2]=0;H[b+268>>2]=0;H[b+256>>2]=0;H[b+260>>2]=0;H[b+304>>2]=0;H[b+308>>2]=0;H[b+312>>2]=0;H[b+316>>2]=0;H[b+352>>2]=0;H[b+356>>2]=0;H[b+360>>2]=0;H[b+364>>2]=0;H[b+400>>2]=0;H[b+404>>2]=0;H[b+408>>2]=0;H[b+412>>2]=0;H[b+448>>2]=0;H[b+452>>2]=0;H[b+456>>2]=0;H[b+460>>2]=0;H[b+496>>2]=0;H[b+500>>2]=0;H[b+504>>2]=0;H[b+508>>2]=0;H[b+544>>2]=0;H[b+548>>2]=0;H[b+552>>2]=0;H[b+556>>2]=0;H[b+600>>2]=0;H[b+604>>2]=0;H[b+592>>2]=0;H[b+596>>2]=0;H[b+280>>2]=0;H[b+284>>2]=0;H[b+272>>2]=0;H[b+276>>2]=0;H[b+328>>2]=0;H[b+332>>2]=0;H[b+320>>2]=0;H[b+324>>2]=0;H[b+368>>2]=0;H[b+372>>2]=0;H[b+376>>2]=0;H[b+380>>2]=0;H[b+416>>2]=0;H[b+420>>2]=0;H[b+424>>2]=0;H[b+428>>2]=0;H[b+464>>2]=0;H[b+468>>2]=0;H[b+472>>2]=0;H[b+476>>2]=0;H[b+512>>2]=0;H[b+516>>2]=0;H[b+520>>2]=0;H[b+524>>2]=0;H[b+560>>2]=0;H[b+564>>2]=0;H[b+568>>2]=0;H[b+572>>2]=0;H[b+608>>2]=0;H[b+612>>2]=0;H[b+616>>2]=0;H[b+620>>2]=0;H[b+296>>2]=0;H[b+300>>2]=0;H[b+288>>2]=0;H[b+292>>2]=0;H[b+344>>2]=0;H[b+348>>2]=0;H[b+336>>2]=0;H[b+340>>2]=0;H[b+392>>2]=0;H[b+396>>2]=0;H[b+384>>2]=0;H[b+388>>2]=0;H[b+440>>2]=0;H[b+444>>2]=0;H[b+432>>2]=0;H[b+436>>2]=0;H[b+488>>2]=0;H[b+492>>2]=0;H[b+480>>2]=0;H[b+484>>2]=0;H[b+536>>2]=0;H[b+540>>2]=0;H[b+528>>2]=0;H[b+532>>2]=0;H[b+584>>2]=0;H[b+588>>2]=0;H[b+576>>2]=0;H[b+580>>2]=0;H[b+632>>2]=0;H[b+636>>2]=0;H[b+624>>2]=0;H[b+628>>2]=0;if(T){ia=fb>2];ua=H[b+(k<<2)>>2];Te=J[ua+76>>1];La=O(1);Ma=O(1);ka=H[b+(R<<2)>>2];g=J[ka+76>>1];Ma=g&32?I[i+134|0]?ia:O(1):Ma;va=H[(aa+1552|0)+(S<<2)>>2];Ue=J[ta+76>>1];La=Te&32?I[i+310|0]?ia:O(1):La;Pb=J[va+76>>1];xb=O(1);Jb=O(1);Jb=Ue&32?I[i+486|0]?ia:O(1):Jb;ye=H[i+640>>2];Nb=H[i+464>>2];Ob=H[i+288>>2];xa=H[i+112>>2];xb=Pb&32?I[i+662|0]?ia:O(1):xb;f=S<<4;ed=aa+16|0;ha=f+ed|0;s=L[ha+4>>2];x=L[ha>>2];e=P<<4;j=e+ed|0;fd=L[j+4>>2];gd=L[j>>2];b=k<<4;h=b+ed|0;hd=L[h+4>>2];id=L[h>>2];Rd=aa+784|0;f=Rd+f|0;Uc=L[f+4>>2];Vc=L[f>>2];e=e+Rd|0;Wc=L[e+4>>2];Xc=L[e>>2];b=b+Rd|0;Yc=L[b+4>>2];Zc=L[b>>2];jd=L[ha+8>>2];kd=L[j+8>>2];ld=L[h+8>>2];_c=L[f+8>>2];$c=L[e+8>>2];ad=L[b+8>>2];b=R<<4;e=b+ed|0;md=L[e+8>>2];nd=L[e+4>>2];od=L[e>>2];b=b+Rd|0;bd=L[b+8>>2];cd=L[b+4>>2];dd=L[b>>2];ba=L[ka+52>>2];ea=L[ua+52>>2];Za=L[ta+52>>2];_a=L[va+52>>2];$a=L[ka+56>>2];Ga=L[ua+56>>2];ab=L[ta+56>>2];na=L[va+56>>2];Fd=L[ka+20>>2];Gd=L[ua+20>>2];Hd=L[ta+20>>2];Id=L[va+20>>2];Jd=L[ka+24>>2];Kd=L[ua+24>>2];Ld=L[ta+24>>2];Md=L[va+24>>2];v=L[ka+48>>2];n=L[ua+48>>2];w=L[ta+48>>2];z=L[va+48>>2];r=L[ka+44>>2];p=L[ua+44>>2];bb=L[ta+44>>2];t=L[va+44>>2];u=L[ka+60>>2];A=L[ua+60>>2];q=L[ta+60>>2];d=L[va+60>>2];Nd=L[ka+16>>2];Od=L[ua+16>>2];Pd=L[ta+16>>2];Qd=L[va+16>>2];pd=L[ka>>2];qd=L[ua>>2];rd=L[ta>>2];sd=L[va>>2];td=L[ka+4>>2];ud=L[ua+4>>2];vd=L[ta+4>>2];wd=L[va+4>>2];xd=L[ka+8>>2];yd=L[ua+8>>2];zd=L[ta+8>>2];Ad=L[va+8>>2];H[c+360>>2]=0;H[c+364>>2]=0;H[c+352>>2]=0;H[c+356>>2]=0;h=Pb&64;L[c+348>>2]=h?O(1):O(0);f=Ue&64;L[c+344>>2]=f?O(1):O(0);e=Te&64;L[c+340>>2]=e?O(1):O(0);b=g&64;L[c+336>>2]=b?O(1):O(0);Pb=m>>>0>>0;L[c+44>>2]=Pb?Ad:O(0);ha=m>>>0>>0;L[c+40>>2]=ha?zd:O(0);j=m>>>0>>0;L[c+36>>2]=j?yd:O(0);g=m>>>0>>0;L[c+32>>2]=g?xd:O(0);L[c+28>>2]=Pb?wd:O(0);L[c+24>>2]=ha?vd:O(0);L[c+20>>2]=j?ud:O(0);L[c+16>>2]=g?td:O(0);L[c+12>>2]=Pb?sd:O(0);L[c+8>>2]=ha?rd:O(0);L[c+4>>2]=j?qd:O(0);L[c>>2]=g?pd:O(0);h=!h|m>>>0>=ye>>>0;L[c+172>>2]=h?O(0):Md;f=!f|m>>>0>=Nb>>>0;L[c+168>>2]=f?O(0):Ld;e=!e|m>>>0>=Ob>>>0;L[c+164>>2]=e?O(0):Kd;b=!b|m>>>0>=xa>>>0;L[c+160>>2]=b?O(0):Jd;L[c+156>>2]=h?O(0):Id;L[c+152>>2]=f?O(0):Hd;L[c+148>>2]=e?O(0):Gd;L[c+144>>2]=b?O(0):Fd;L[c+140>>2]=h?O(0):Qd;L[c+136>>2]=f?O(0):Pd;L[c+132>>2]=e?O(0):Od;L[c+128>>2]=b?O(0):Nd;L[c+300>>2]=xb*d;L[c+296>>2]=Jb*q;L[c+292>>2]=La*A;L[c+288>>2]=Ma*u;L[c+284>>2]=xb*t;L[c+280>>2]=Jb*bb;L[c+276>>2]=La*p;L[c+272>>2]=Ma*r;H[c+304>>2]=0;H[c+308>>2]=0;H[c+312>>2]=0;H[c+316>>2]=0;Bd=L[ka+36>>2];Cd=L[ua+36>>2];eb=L[ta+36>>2];sa=L[va+36>>2];qa=L[ka+40>>2];Jb=L[ua+40>>2];r=L[ta+40>>2];p=L[va+40>>2];bb=L[ka+32>>2];t=L[ua+32>>2];u=L[ta+32>>2];A=L[va+32>>2];L[c+236>>2]=h?O(0):na;L[c+232>>2]=f?O(0):ab;L[c+228>>2]=e?O(0):Ga;L[c+224>>2]=b?O(0):$a;L[c+220>>2]=h?O(0):_a;L[c+216>>2]=f?O(0):Za;L[c+212>>2]=e?O(0):ea;L[c+208>>2]=b?O(0):ba;L[c+204>>2]=h?O(0):z;L[c+200>>2]=f?O(0):w;L[c+196>>2]=e?O(0):n;L[c+192>>2]=b?O(0):v;L[c+108>>2]=Pb?p:O(0);L[c+104>>2]=ha?r:O(0);L[c+100>>2]=j?Jb:O(0);L[c+96>>2]=g?qa:O(0);L[c+92>>2]=Pb?sa:O(0);L[c+88>>2]=ha?eb:O(0);L[c+84>>2]=j?Cd:O(0);L[c+80>>2]=g?Bd:O(0);L[c+76>>2]=Pb?A:O(0);L[c+72>>2]=ha?u:O(0);L[c+68>>2]=j?t:O(0);L[c+64>>2]=g?bb:O(0);g=c+240|0;h=c+176|0;f=c+320|0;ha=c+48|0;e=c+112|0;b=c+256|0;H:{I:{if(K[i+112>>2]<=m>>>0){H[ha>>2]=0;H[e>>2]=0;H[f>>2]=0;H[h>>2]=0;H[g>>2]=0;H[aa>>2]=0;d=O(0);break I}q=O(O(O(Ya*pd)+O(O(ga*td)+O(ja*xd)))+O(O(Wa*Nd)+O(O(Ea*Fd)+O(Da*Jd))));d=O(O(O(Va*od)+O(O(Ca*nd)+O(db*md)))+O(O(wa*bb)+O(O(pa*Bd)+O(Xa*qa))));sA(ha,e,b,f,h,g,aa,ka,O(q-d),O(O(O(fa*O(O(bd*bd)+O(O(dd*dd)+O(cd*cd))))+O(Fc*O(O(xd*xd)+O(O(pd*pd)+O(td*td)))))+O(O(ma*O(O(md*md)+O(O(od*od)+O(nd*nd))))+O(Bc*O(O(qa*qa)+O(O(bb*bb)+O(Bd*Bd)))))),L[i+124>>2],O(1),pe,fb,J[ka+76>>1]&64?O(100):D,sb,Qb);if(Z){L[b>>2]=L[b>>2]-q}if(!oa){break H}d=O(d+L[b>>2])}L[b>>2]=d}j=c+244|0;g=c+180|0;h=c+324|0;f=c+116|0;e=c+52|0;b=c+260|0;J:{K:{if(K[i+288>>2]<=m>>>0){H[e>>2]=0;H[f>>2]=0;H[h>>2]=0;H[g>>2]=0;H[j>>2]=0;H[aa+4>>2]=0;d=O(0);break K}q=O(O(O(Ua*qd)+O(O(xe*ud)+O(we*yd)))+O(O(se*Od)+O(O(cb*Gd)+O(Ib*Kd))));d=O(O(O(re*id)+O(O(Hb*hd)+O(Gb*ld)))+O(O(ve*t)+O(O(ue*Cd)+O(te*Jb))));sA(e,f,b,h,g,j,l,ua,O(q-d),O(O(O(X*O(O(ad*ad)+O(O(Zc*Zc)+O(Yc*Yc))))+O(Ec*O(O(yd*yd)+O(O(qd*qd)+O(ud*ud)))))+O(O(ca*O(O(ld*ld)+O(O(id*id)+O(hd*hd))))+O(Ac*O(O(Jb*Jb)+O(O(t*t)+O(Cd*Cd)))))),L[i+300>>2],O(1),pe,fb,J[ua+76>>1]&64?O(100):D,sb,Qb);if(Ub){L[b>>2]=L[b>>2]-q}if(!Tb){break J}d=O(d+L[b>>2])}L[b>>2]=d}j=c+248|0;g=c+184|0;h=c+328|0;f=c+120|0;e=c+56|0;b=c+264|0;L:{M:{if(K[i+464>>2]<=m>>>0){H[e>>2]=0;H[f>>2]=0;H[h>>2]=0;H[g>>2]=0;H[j>>2]=0;H[aa+8>>2]=0;d=O(0);break M}q=O(O(O(jg*rd)+O(O(ig*vd)+O(hg*zd)))+O(O(dg*Pd)+O(O(Fb*Hd)+O(Lc*Ld))));d=O(O(O(cg*gd)+O(O(Kc*fd)+O(Jc*kd)))+O(O(gg*u)+O(O(fg*eb)+O(eg*r))));sA(e,f,b,h,g,j,E,ta,O(q-d),O(O(O(V*O(O($c*$c)+O(O(Xc*Xc)+O(Wc*Wc))))+O(Dc*O(O(zd*zd)+O(O(rd*rd)+O(vd*vd)))))+O(O($*O(O(kd*kd)+O(O(gd*gd)+O(fd*fd))))+O(zc*O(O(r*r)+O(O(u*u)+O(eb*eb)))))),L[i+476>>2],O(1),pe,fb,J[ta+76>>1]&64?O(100):D,sb,Qb);if(ib){L[b>>2]=L[b>>2]-q}if(!Mb){break L}d=O(d+L[b>>2])}L[b>>2]=d}j=c+252|0;g=c+188|0;h=c+332|0;f=c+124|0;e=c+60|0;b=c+268|0;N:{O:{if(K[i+640>>2]<=m>>>0){H[e>>2]=0;H[f>>2]=0;H[h>>2]=0;H[g>>2]=0;H[j>>2]=0;H[aa+12>>2]=0;d=O(0);break O}q=O(O(O(bg*sd)+O(O(ag*wd)+O($f*Ad)))+O(O(Xf*Qd)+O(O(Ic*Id)+O(Hc*Md))));d=O(O(O(Wf*x)+O(O(Gc*s)+O(Tc*jd)))+O(O(_f*A)+O(O(Zf*sa)+O(Yf*p))));sA(e,f,b,h,g,j,Q,va,O(q-d),O(O(O(da*O(O(_c*_c)+O(O(Vc*Vc)+O(Uc*Uc))))+O(Cc*O(O(Ad*Ad)+O(O(sd*sd)+O(wd*wd)))))+O(O(_*O(O(jd*jd)+O(O(x*x)+O(s*s))))+O(Ha*O(O(p*p)+O(O(A*A)+O(sa*sa)))))),L[i+652>>2],O(1),pe,fb,J[va+76>>1]&64?O(100):D,sb,Qb);if(hb){L[b>>2]=L[b>>2]-q}if(!Ta){break N}d=O(d+L[b>>2])}L[b>>2]=d}xa=J[ka+78>>1];P:{if(I[i+132|0]|K[i+112>>2]<=m>>>0){break P}if((xa|0)==1024){H[c+352>>2]=H[c+352>>2]|8;b=gb<<4;L[b+wb>>2]=fa*dd;L[b+ub>>2]=fa*cd;L[b+$b>>2]=fa*bd;L[b+Pc>>2]=ma*od;L[b+Oc>>2]=ma*nd;L[b+Nc>>2]=ma*md;L[b+Mc>>2]=L[aa>>2];L[b+_b>>2]=L[ha>>2];gb=gb+1|0;break P}if(!(xa&2048)){break P}H[c+352>>2]=H[c+352>>2]|16}ha=J[ua+78>>1];Q:{if(I[i+308|0]|K[i+288>>2]<=m>>>0){break Q}if((ha|0)==1024){H[c+356>>2]=H[c+356>>2]|8;b=tb<<4;L[(b+wb|0)+4>>2]=X*Zc;L[(b+ub|0)+4>>2]=X*Yc;L[(b+$b|0)+4>>2]=X*ad;L[(b+Pc|0)+4>>2]=ca*id;L[(b+Oc|0)+4>>2]=ca*hd;L[(b+Nc|0)+4>>2]=ca*ld;L[(b+Mc|0)+4>>2]=L[aa+4>>2];L[(b+_b|0)+4>>2]=L[c+52>>2];tb=tb+1|0;break Q}if(!(ha&2048)){break Q}H[c+356>>2]=H[c+356>>2]|16}j=J[ta+78>>1];R:{if(I[i+484|0]|K[i+464>>2]<=m>>>0){break R}if((j|0)==1024){H[c+360>>2]=H[c+360>>2]|8;b=Sb<<4;L[(b+wb|0)+8>>2]=V*Xc;L[(b+ub|0)+8>>2]=V*Wc;L[(b+$b|0)+8>>2]=V*$c;L[(b+Pc|0)+8>>2]=$*gd;L[(b+Oc|0)+8>>2]=$*fd;L[(b+Nc|0)+8>>2]=$*kd;L[(b+Mc|0)+8>>2]=L[aa+8>>2];L[(b+_b|0)+8>>2]=L[c+56>>2];Sb=Sb+1|0;break R}if(!(j&2048)){break R}H[c+360>>2]=H[c+360>>2]|16}g=J[va+78>>1];S:{if(I[i+660|0]|K[i+640>>2]<=m>>>0){break S}if((g|0)==1024){H[c+364>>2]=H[c+364>>2]|8;b=Ed<<4;L[(b+wb|0)+12>>2]=da*Vc;L[(b+ub|0)+12>>2]=da*Uc;L[(b+$b|0)+12>>2]=da*_c;L[(b+Pc|0)+12>>2]=_*x;L[(b+Oc|0)+12>>2]=_*s;L[(b+Nc|0)+12>>2]=_*jd;L[(b+Mc|0)+12>>2]=L[aa+12>>2];L[(b+_b|0)+12>>2]=L[c+60>>2];Ed=Ed+1|0;break S}if(!(g&2048)){break S}H[c+364>>2]=H[c+364>>2]|16}h=J[ka+76>>1];if(h&16){H[c+352>>2]=H[c+352>>2]|2}f=J[ua+76>>1];if(f&16){H[c+356>>2]=H[c+356>>2]|2}e=J[ta+76>>1];if(e&16){H[c+360>>2]=H[c+360>>2]|2}b=J[va+76>>1];if(b&16){H[c+364>>2]=H[c+364>>2]|2}if(h&8){H[c+352>>2]=H[c+352>>2]|4}if(f&8){H[c+356>>2]=H[c+356>>2]|4}if(e&8){H[c+360>>2]=H[c+360>>2]|4}if(b&8){H[c+364>>2]=H[c+364>>2]|4}if(xa&1){H[c+352>>2]=H[c+352>>2]|64}if(ha&1){H[c+356>>2]=H[c+356>>2]|64}if(j&1){H[c+360>>2]=H[c+360>>2]|64}if(g&1){H[c+364>>2]=H[c+364>>2]|64}c=c+368|0;S=((C|0)!=(S|0))+S|0;P=((P|0)!=(U|0))+P|0;k=((k|0)!=(y|0))+k|0;R=((o|0)!=(R|0))+R|0;m=m+1|0;if((T|0)!=(m|0)){continue}break}}H[c>>2]=0;H[c+4>>2]=0;c=2}Oa=aa+1744|0;e=c}Oa=qe+3840|0}else{e=1}if((e|0)==2){break a}c=0;if(Lb>>>0<=Rb>>>0){break a}while(1){tA((Y+32|0)+(c<<4)|0,(Y+96|0)+N(c,176)|0,Y+808|0,pe,fb,sb,Qb,L[Kb+612>>2]);c=c+1|0;if((Sc|0)!=(c|0)){continue}break}break a}b=J[_b+4>>1]}if((b&65535)==4){q=L[Kb+84>>2];t=L[Kb+88>>2];bb=L[Kb+100>>2];d=L[Kb+92>>2];hb=Y+808|0;l=0;jb=Oa-32|0;Oa=jb;b=Y+96|0;G[H[b+16>>2]+22>>1]=0;G[H[b+192>>2]+22>>1]=0;G[H[b+368>>2]+22>>1]=0;G[H[b+544>>2]+22>>1]=0;H[yc+4112>>2]=0;f=yc+16|0;H[b+112>>2]=f;h=1;e=Y+32|0;m=H[e>>2];T:{if(I[m+12|0]>64){break T}B=yc+4128|0;while(1){g=b+N(l,176)|0;if(L[g+164>>2]!=O(0)|L[g+168>>2]!=O(0)){break T}F[jb+31|0]=0;F[jb+30|0]=0;u=L[H[g+36>>2]+12>>2];A=L[H[g+40>>2]+12>>2];c=yx(f,m,jb+31|0,jb+30|0,jb+24|0,jb+20|0,jb+16|0,jb+12|0,u>2]=c;F[g+120|0]=I[jb+31|0];L[g>>2]=L[jb+24>>2]*L[g>>2];L[g+8>>2]=L[jb+20>>2]*L[g+8>>2];L[g+4>>2]=L[g+4>>2]*(I[H[g+20>>2]+62|0]?O(0):L[jb+16>>2]);L[g+12>>2]=L[g+12>>2]*(I[H[g+24>>2]+62|0]?O(0):L[jb+12>>2]);l=l+1|0;if((l|0)!=4){c=H[yc+4112>>2];H[(b+N(l,176)|0)+112>>2]=((c<<6)+yc|0)+16;m=H[e+(l<<2)>>2];if(c+I[m+12|0]>>>0<=64){continue}break T}break}w=d;m=0;T=0;S=0;P=0;y=0;U=0;Q=0;Ta=0;gb=0;Sd=0;ze=0;Ae=0;Be=0;Mc=0;Nc=0;Oc=0;Pc=0;M=Oa-160|0;Oa=M;H[B+7684>>2]=0;H[B+7688>>2]=0;g=B+7296|0;U:{while(1){c=T<<2;l=b+N(T,176)|0;L[c+(M+144|0)>>2]=L[l>>2];L[c+(M+128|0)>>2]=L[l+8>>2];L[c+(M+112|0)>>2]=L[l+4>>2];L[c+(M+96|0)>>2]=L[l+12>>2];H[l+144>>2]=m;V:{if(I[l+121|0]){break V}if(zx(B,H[l+132>>2],I[l+136|0],l+44|0,l+72|0,bb)){break V}h=1;break U}H[l+152>>2]=H[B+7684>>2];h=1;if(!ez(B,H[l+112>>2],H[l+116>>2])){break U}f=H[l+152>>2];G[l+156>>1]=H[B+7684>>2]-f;e=l+44|0;c=l+72|0;if(fz(B,H[l+112>>2],e,c,f,H[l+144>>2])){break U}gz(B,H[l+112>>2],e,c,bb,H[l+144>>2],O(L[l+124>>2]+t));m=H[B+7688>>2];f=m;k=H[l+144>>2];if(f>>>0>k>>>0){while(1){c=f-1|0;if(H[(B+(c<<2)|0)+7424>>2]==65535){if(f>>>0>>0){while(1){h=B+7424|0;m=f<<2;e=m-4|0;H[h+e>>2]=H[h+m>>2];H[e+g>>2]=H[g+m>>2];f=f+1|0;m=H[B+7688>>2];if(f>>>0>>0){continue}break}k=H[l+144>>2]}m=m-1|0;H[B+7688>>2]=m}f=c;if(c>>>0>k>>>0){continue}break}}H[l+148>>2]=m-k;T=T+1|0;if((T|0)!=4){continue}break}T=0;m=0;f=H[b+144>>2];h=H[b+148>>2];W:{if(f>>>0>=h+f>>>0){break W}k=0;if(h-1>>>0>=3){c=h&-4;while(1){e=B+(f<<2)|0;m=((((H[e+7424>>2]!=65535)+m|0)+(H[e+7428>>2]!=65535)|0)+(H[e+7432>>2]!=65535)|0)+(H[e+7436>>2]!=65535)|0;f=f+4|0;S=S+4|0;if((c|0)!=(S|0)){continue}break}}c=h&3;if(c){while(1){m=(H[(B+(f<<2)|0)+7424>>2]!=65535)+m|0;f=f+1|0;k=k+1|0;if((c|0)!=(k|0)){continue}break}}c=N(m,104)+15&-16;if(!c){break W}h=0;c=Ra[H[H[hb>>2]+4>>2]](hb,c)|0;T=(c|0)==-1?0:c;if(!T){break U}}f=H[b+320>>2];g=H[b+324>>2];X:{if(f>>>0>=g+f>>>0){break X}S=0;if(g-1>>>0>=3){c=g&-4;h=0;while(1){e=B+(f<<2)|0;U=((((H[e+7424>>2]!=65535)+U|0)+(H[e+7428>>2]!=65535)|0)+(H[e+7432>>2]!=65535)|0)+(H[e+7436>>2]!=65535)|0;f=f+4|0;h=h+4|0;if((c|0)!=(h|0)){continue}break}}c=g&3;if(c){while(1){U=(H[(B+(f<<2)|0)+7424>>2]!=65535)+U|0;f=f+1|0;S=S+1|0;if((c|0)!=(S|0)){continue}break}}c=N(U,104)+15&-16;if(!c){break X}h=0;c=Ra[H[H[hb>>2]+4>>2]](hb,c)|0;y=(c|0)==-1?0:c;if(!y){break U}}k=0;f=H[b+496>>2];g=H[b+500>>2];Y:{if(f>>>0>=g+f>>>0){break Y}h=0;if(g-1>>>0>=3){c=g&-4;while(1){e=B+(f<<2)|0;k=((((H[e+7424>>2]!=65535)+k|0)+(H[e+7428>>2]!=65535)|0)+(H[e+7432>>2]!=65535)|0)+(H[e+7436>>2]!=65535)|0;f=f+4|0;Ta=Ta+4|0;if((c|0)!=(Ta|0)){continue}break}}c=g&3;if(c){while(1){k=(H[(B+(f<<2)|0)+7424>>2]!=65535)+k|0;f=f+1|0;h=h+1|0;if((c|0)!=(h|0)){continue}break}}c=N(k,104)+15&-16;if(!c){break Y}h=0;c=Ra[H[H[hb>>2]+4>>2]](hb,c)|0;Q=(c|0)==-1?0:c;if(!Q){break U}}S=0;f=H[b+672>>2];h=H[b+676>>2];Z:{if(f>>>0>=h+f>>>0){break Z}Ta=0;if(h-1>>>0>=3){c=h&-4;g=0;while(1){e=B+(f<<2)|0;S=((((H[e+7424>>2]!=65535)+S|0)+(H[e+7428>>2]!=65535)|0)+(H[e+7432>>2]!=65535)|0)+(H[e+7436>>2]!=65535)|0;f=f+4|0;g=g+4|0;if((c|0)!=(g|0)){continue}break}}c=h&3;if(c){while(1){S=(H[(B+(f<<2)|0)+7424>>2]!=65535)+S|0;f=f+1|0;Ta=Ta+1|0;if((c|0)!=(Ta|0)){continue}break}}c=N(S,104)+15&-16;if(!c){break Z}h=0;c=Ra[H[H[hb>>2]+4>>2]](hb,c)|0;P=(c|0)==-1?0:c;if(!P){break U}}Ta=0;H[M+92>>2]=0;f=0;h=0;c=Oa-256|0;Oa=c;S6(c+128|0,0,128);j=S6(c,0,128);C=I[b+120|0];Mb=H[b+148>>2];if(Mb){l=H[b+144>>2];while(1){g=0;c=h+l|0;R=B+N(c,104)|0;if(!(F[R+2817|0]&1)){g=J[R+2818>>1]!=0}o=H[(B+(c<<2)|0)+7296>>2];_:{if(!o){break _}e=h<<2;c=e+(j+128|0)|0;E=H[c>>2];H[c>>2]=o>>>0>>0?E:o;f=f+o|0;if(!g){break _}c=e+j|0;e=H[c>>2];g=c;c=J[R+2818>>1]<<1;H[g>>2]=c>>>0>>0?e:c;f=c+f|0}h=h+1|0;if((Mb|0)!=(h|0)){continue}break}}ib=M- -64|0;H[ib>>2]=f;E=1;E=C?E:I[b+296|0]!=0;Tb=H[b+324>>2];$:{if(!Tb){f=0;break $}l=H[b+320>>2];h=0;f=0;while(1){g=0;c=h+l|0;R=B+N(c,104)|0;if(!(F[R+2817|0]&1)){g=J[R+2818>>1]!=0}o=H[(B+(c<<2)|0)+7296>>2];aa:{if(!o){break aa}e=h<<2;c=e+(j+128|0)|0;C=H[c>>2];H[c>>2]=o>>>0>>0?C:o;f=f+o|0;if(!g){break aa}c=e+j|0;e=H[c>>2];g=c;c=J[R+2818>>1]<<1;H[g>>2]=c>>>0>>0?e:c;f=c+f|0}h=h+1|0;if((Tb|0)!=(h|0)){continue}break}}H[ib+4>>2]=f;R=1;R=E?R:I[b+472|0]!=0;Ub=H[b+500>>2];ba:{if(!Ub){f=0;break ba}l=H[b+496>>2];h=0;f=0;while(1){g=0;c=h+l|0;C=B+N(c,104)|0;if(!(F[C+2817|0]&1)){g=J[C+2818>>1]!=0}o=H[(B+(c<<2)|0)+7296>>2];ca:{if(!o){break ca}e=h<<2;c=e+(j+128|0)|0;E=H[c>>2];H[c>>2]=o>>>0>>0?E:o;f=f+o|0;if(!g){break ca}c=e+j|0;e=H[c>>2];g=c;c=J[C+2818>>1]<<1;H[g>>2]=c>>>0>>0?e:c;f=c+f|0}h=h+1|0;if((Ub|0)!=(h|0)){continue}break}}H[ib+8>>2]=f;E=1;E=R?E:I[b+648|0]!=0;g=0;C=0;oa=H[b+676>>2];if(oa){l=H[b+672>>2];h=0;while(1){f=0;c=h+l|0;o=B+N(c,104)|0;if(!(F[o+2817|0]&1)){f=J[o+2818>>1]!=0}Z=H[(B+(c<<2)|0)+7296>>2];da:{if(!Z){break da}e=h<<2;c=e+(j+128|0)|0;R=H[c>>2];H[c>>2]=R>>>0>Z>>>0?R:Z;C=C+Z|0;if(!f){break da}c=e+j|0;e=H[c>>2];f=c;c=J[o+2818>>1]<<1;H[f>>2]=c>>>0>>0?e:c;C=c+C|0}h=h+1|0;if((oa|0)!=(h|0)){continue}break}}H[ib+12>>2]=C;h=0;c=Mb>>>0>Tb>>>0?Mb:Tb;c=c>>>0>Ub>>>0?c:Ub;oa=c>>>0>oa>>>0?c:oa;ea:{if(!oa){break ea}f=0;R=0;if(oa-1>>>0>=3){o=oa&-4;C=0;while(1){Z=R<<2;l=Z|12;e=Z|8;c=Z|4;h=H[l+j>>2]+(H[e+j>>2]+(H[c+j>>2]+(H[j+Z>>2]+h|0)|0)|0)|0;Mb=l;l=j+128|0;g=H[Mb+l>>2]+(H[e+l>>2]+(H[c+l>>2]+(H[l+Z>>2]+g|0)|0)|0)|0;R=R+4|0;C=C+4|0;if((o|0)!=(C|0)){continue}break}}e=oa&3;if(!e){break ea}while(1){c=R<<2;h=H[c+j>>2]+h|0;g=H[c+(j+128|0)>>2]+g|0;R=R+1|0;f=f+1|0;if((e|0)!=(f|0)){continue}break}}H[M+92>>2]=(((N(g,160)+N(oa,240)|0)+N(h,208)|0)+(E?g<<4:0)|0)+(h+g<<4);Oa=j+256|0;$b=H[M+92>>2];if($b){h=1;c=$b+16|0;if(c>>>0>16384){break U}h=0;Ta=Ra[H[H[hb>>2]>>2]](hb,c)|0;if(Ta+1>>>0<2){break U}}F[b+136|0]=m;H[b+132>>2]=T;h=$b>>>4|0;e=H[b+16>>2];fa:{if(!T){break fa}m=H[b+148>>2];if(!m){break fa}f=0;while(1){c=H[b+144>>2]+f|0;if(H[(B+(c<<2)|0)+7424>>2]!=65535){T=R6(T,(B+N(c,104)|0)+2816|0,104)+104|0;m=H[b+148>>2]}f=f+1|0;if(m>>>0>f>>>0){continue}break}}G[b+158>>1]=J[b+158>>1]+J[M+64>>1];G[e+22>>1]=h;H[e+24>>2]=Ta;G[e+20>>1]=H[b+116>>2];H[e+28>>2]=H[b+140>>2];F[b+312|0]=U;H[b+308>>2]=y;e=H[b+192>>2];ga:{if(!y){break ga}m=H[b+324>>2];if(!m){break ga}f=0;while(1){c=H[b+320>>2]+f|0;if(H[(B+(c<<2)|0)+7424>>2]!=65535){y=R6(y,(B+N(c,104)|0)+2816|0,104)+104|0;m=H[b+324>>2]}f=f+1|0;if(m>>>0>f>>>0){continue}break}}G[b+334>>1]=J[b+334>>1]+J[M+68>>1];G[e+22>>1]=h;H[e+24>>2]=Ta;G[e+20>>1]=H[b+292>>2];H[e+28>>2]=H[b+316>>2];F[b+488|0]=k;H[b+484>>2]=Q;e=H[b+368>>2];ha:{if(!Q){break ha}m=H[b+500>>2];if(!m){break ha}f=0;while(1){c=H[b+496>>2]+f|0;if(H[(B+(c<<2)|0)+7424>>2]!=65535){Q=R6(Q,(B+N(c,104)|0)+2816|0,104)+104|0;m=H[b+500>>2]}f=f+1|0;if(m>>>0>f>>>0){continue}break}}G[b+510>>1]=J[b+510>>1]+J[M+72>>1];G[e+22>>1]=h;H[e+24>>2]=Ta;G[e+20>>1]=H[b+468>>2];H[e+28>>2]=H[b+492>>2];F[b+664|0]=S;H[b+660>>2]=P;e=H[b+544>>2];ia:{if(!P){break ia}m=H[b+676>>2];if(!m){break ia}f=0;while(1){c=H[b+672>>2]+f|0;if(H[(B+(c<<2)|0)+7424>>2]!=65535){P=R6(P,(B+N(c,104)|0)+2816|0,104)+104|0;m=H[b+676>>2]}f=f+1|0;if(m>>>0>f>>>0){continue}break}}G[b+686>>1]=J[b+686>>1]+J[M+76>>1];G[e+22>>1]=h;H[e+24>>2]=Ta;G[e+20>>1]=H[b+644>>2];H[e+28>>2]=H[b+668>>2];c=H[M+156>>2];H[M+56>>2]=H[M+152>>2];H[M+60>>2]=c;c=H[M+148>>2];H[M+48>>2]=H[M+144>>2];H[M+52>>2]=c;c=H[M+124>>2];H[M+40>>2]=H[M+120>>2];H[M+44>>2]=c;c=H[M+116>>2];H[M+32>>2]=H[M+112>>2];H[M+36>>2]=c;c=H[M+140>>2];H[M+24>>2]=H[M+136>>2];H[M+28>>2]=c;c=H[M+132>>2];H[M+16>>2]=H[M+128>>2];H[M+20>>2]=c;c=H[M+108>>2];H[M+8>>2]=H[M+104>>2];H[M+12>>2]=c;c=H[M+100>>2];H[M>>2]=H[M+96>>2];H[M+4>>2]=c;o=Ta;hb=0;Mb=0;Vb=Oa-16|0;Oa=Vb;H[Vb+8>>2]=0;H[Vb+12>>2]=0;H[Vb>>2]=0;H[Vb+4>>2]=0;l=1;j=b;ib=1;ja:{if(I[b+120|0]){break ja}ib=1;if(I[j+296|0]){break ja}ib=1;if(I[j+472|0]){break ja}ib=I[j+648|0]!=0}e=H[j+104>>2];l=(e|0)!=1?H[j+280>>2]==1:l;c=1;b=1;b=(e|0)!=4?H[j+280>>2]==4:b;c=l?c:H[j+456>>2]==1;i=1;l=1;l=b?l:H[j+456>>2]==4;i=c?i:H[j+632>>2]==1;aa=1;aa=l?aa:H[j+632>>2]==4;bb=q;ka:{Lb=H[j+676>>2];l=H[j+500>>2];b=l>>>0>>0?Lb:l;c=H[j+324>>2];b=b>>>0>c>>>0?b:c;S=H[j+148>>2];ed=b>>>0>S>>>0?b:S;if(!ed){break ka}Rd=I[j+650|0];qe=I[j+474|0];Te=I[j+298|0];Ue=I[j+122|0];kg=I[H[j+24>>2]+62|0]?O(1):O(0);lg=I[H[j+20>>2]+62|0]?O(1):O(0);mg=I[H[j+200>>2]+62|0]?O(1):O(0);ng=I[H[j+196>>2]+62|0]?O(1):O(0);og=I[H[j+376>>2]+62|0]?O(1):O(0);pg=I[H[j+372>>2]+62|0]?O(1):O(0);fd=L[j+624>>2];gd=L[j+620>>2];hd=L[j+616>>2];id=L[j+448>>2];jd=L[j+444>>2];kd=L[j+440>>2];ld=L[j+272>>2];md=L[j+268>>2];nd=L[j+264>>2];od=L[j+96>>2];pd=L[j+92>>2];qd=L[j+88>>2];rd=L[j+596>>2];sd=L[j+592>>2];td=L[j+588>>2];ud=L[j+420>>2];vd=L[j+416>>2];wd=L[j+412>>2];xd=L[j+244>>2];yd=L[j+240>>2];zd=L[j+236>>2];Ad=L[j+68>>2];Bd=L[j- -64>>2];Cd=L[j+60>>2];Jb=L[j+652>>2];Uc=L[j+476>>2];Vc=L[j+300>>2];Z=H[j+560>>2];qg=L[Z+28>>2];T=H[j+384>>2];rg=L[T+28>>2];R=H[j+208>>2];sg=L[R+28>>2];C=H[j+32>>2];tg=L[C+60>>2];ug=L[C+56>>2];vg=L[C+52>>2];wg=L[C+48>>2];xg=L[C+44>>2];yg=L[C+40>>2];zg=L[C+36>>2];Ag=L[C+32>>2];U=H[j+556>>2];Bg=L[U+28>>2];y=H[j+380>>2];Cg=L[y+28>>2];Q=H[j+204>>2];Dg=L[Q+28>>2];E=H[j+28>>2];Eg=L[E+60>>2];Fg=L[E+56>>2];Gg=L[E+52>>2];Hg=L[E+48>>2];Ig=L[E+44>>2];Jg=L[E+40>>2];Kg=L[E+36>>2];Lg=L[E+32>>2];P=H[j+568>>2];Td=L[P+16>>2];k=H[j+392>>2];Ud=L[k+16>>2];g=H[j+216>>2];Vd=L[g+16>>2];m=H[j+40>>2];Wd=L[m+24>>2];Xd=L[m+20>>2];h=H[j+564>>2];Mg=L[h+16>>2];f=H[j+388>>2];Ng=L[f+16>>2];e=H[j+212>>2];Og=L[e+16>>2];b=H[j+36>>2];Pg=L[b+24>>2];Qg=L[b+20>>2];Rg=L[Z+60>>2];Sg=L[Z+56>>2];Tg=L[Z+52>>2];Ug=L[Z+48>>2];Vg=L[Z+44>>2];Wg=L[Z+40>>2];Xg=L[Z+36>>2];Yg=L[Z+32>>2];Zg=L[T+60>>2];_g=L[T+56>>2];$g=L[T+52>>2];ah=L[T+48>>2];bh=L[T+44>>2];ch=L[T+40>>2];dh=L[T+36>>2];eh=L[T+32>>2];fh=L[R+60>>2];gh=L[R+56>>2];hh=L[R+52>>2];ih=L[R+48>>2];jh=L[R+44>>2];kh=L[R+40>>2];lh=L[R+36>>2];mh=L[R+32>>2];nh=L[U+60>>2];oh=L[U+56>>2];ph=L[U+52>>2];qh=L[U+48>>2];rh=L[U+44>>2];sh=L[U+40>>2];th=L[U+36>>2];uh=L[U+32>>2];vh=L[y+60>>2];wh=L[y+56>>2];xh=L[y+52>>2];yh=L[y+48>>2];zh=L[y+44>>2];Ah=L[y+40>>2];Bh=L[y+36>>2];Ch=L[y+32>>2];Dh=L[Q+60>>2];Eh=L[Q+56>>2];Fh=L[Q+52>>2];Gh=L[Q+48>>2];Hh=L[Q+44>>2];Ih=L[Q+40>>2];Jh=L[Q+36>>2];Kh=L[Q+32>>2];Yd=L[P+24>>2];Zd=L[P+20>>2];_d=L[k+24>>2];$d=L[k+20>>2];ae=L[g+24>>2];be=L[g+20>>2];Lh=L[h+24>>2];Mh=L[h+20>>2];Nh=L[f+24>>2];Oh=L[f+20>>2];Ph=L[e+24>>2];Qh=L[e+20>>2];Wc=L[j+124>>2];Ve=L[M+12>>2];We=L[M+8>>2];Xe=L[M+4>>2];Ye=L[M>>2];Rh=L[C+28>>2];Sh=L[E+28>>2];ce=L[m+16>>2];Th=L[b+16>>2];q=L[h+28>>2];d=L[P+28>>2];Xc=d>2];d=L[k+28>>2];Yc=d>2];d=L[g+28>>2];Zc=d>2];de=L[P+8>>2];_c=O(Ze-de);_e=L[f+8>>2];ee=L[k+8>>2];$c=O(_e-ee);$e=L[e+8>>2];fe=L[g+8>>2];ad=O($e-fe);af=L[h+4>>2];ge=L[P+4>>2];bd=O(af-ge);bf=L[f+4>>2];he=L[k+4>>2];cd=O(bf-he);cf=L[e+4>>2];ie=L[g+4>>2];dd=O(cf-ie);df=L[h>>2];je=L[P>>2];Fd=O(df-je);ef=L[f>>2];ke=L[k>>2];Gd=O(ef-ke);ff=L[e>>2];le=L[g>>2];Hd=O(ff-le);q=L[b+28>>2];d=L[m+28>>2];Id=d>2]+62|0]?O(1):O(0);Vh=I[H[j+548>>2]+62|0]?O(1):O(0);gf=O(sb*O(-.800000011920929));hf=O(L[M+16>>2]*L[m+32>>2]);jf=L[b+8>>2];me=L[m+8>>2];Jd=O(jf-me);kf=L[b+4>>2];ne=L[m+4>>2];Kd=O(kf-ne);lf=L[b>>2];oe=L[m>>2];Ld=O(lf-oe);Ce=L[j+612>>2];Wh=O(O(Ce*Ce)+O(-.5));De=L[j+436>>2];Xh=O(O(De*De)+O(-.5));Ee=L[j+260>>2];Yh=O(O(Ee*Ee)+O(-.5));Fe=L[j+84>>2];Zh=O(O(Fe*Fe)+O(-.5));Ge=L[j+584>>2];_h=O(O(Ge*Ge)+O(-.5));He=L[j+408>>2];$h=O(O(He*He)+O(-.5));Ie=L[j+232>>2];ai=O(O(Ie*Ie)+O(-.5));Je=L[j+56>>2];bi=O(O(Je*Je)+O(-.5));mf=L[M+32>>2];nf=O(L[M+48>>2]*L[b+32>>2]);Md=O(mf*nf);of=O(L[M+28>>2]*L[P+32>>2]);pf=O(L[M+24>>2]*L[k+32>>2]);qf=O(L[M+20>>2]*L[g+32>>2]);rf=L[M+44>>2];sf=O(L[M+60>>2]*L[h+32>>2]);Nd=O(rf*sf);tf=L[M+40>>2];uf=O(L[M+56>>2]*L[f+32>>2]);Od=O(tf*uf);vf=L[M+36>>2];wf=O(L[M+52>>2]*L[e+32>>2]);Pd=O(vf*wf);xf=L[j+604>>2];Qd=O(-xf);yf=L[j+600>>2];Wf=O(-yf);zf=L[j+608>>2];Xf=O(-zf);Af=L[j+428>>2];Yf=O(-Af);Bf=L[j+424>>2];Zf=O(-Bf);Cf=L[j+432>>2];_f=O(-Cf);Df=L[j+252>>2];$f=O(-Df);Ef=L[j+248>>2];ag=O(-Ef);Ff=L[j+256>>2];bg=O(-Ff);Gf=L[j+76>>2];cg=O(-Gf);Hf=L[j+80>>2];dg=O(-Hf);If=L[j+576>>2];eg=O(-If);Jf=L[j+572>>2];fg=O(-Jf);Kf=L[j+580>>2];gg=O(-Kf);Lf=L[j+400>>2];hg=O(-Lf);Mf=L[j+396>>2];ig=O(-Mf);Nf=L[j+404>>2];jg=O(-Nf);Of=L[j+224>>2];re=O(-Of);Pf=L[j+220>>2];se=O(-Pf);Qf=L[j+228>>2];te=O(-Qf);Rf=L[j+48>>2];ue=O(-Rf);Sf=L[j+52>>2];ve=O(-Sf);Tf=L[j+72>>2];we=O(-Tf);Uf=L[j+44>>2];xe=O(-Uf);ta=B+7424|0;va=B+2816|0;ua=B+7556|0;Tb=0;Ub=0;y=0;U=0;Q=0;E=0;while(1){ka=S>>>0<=gb>>>0;Sd=ka?Sd:H[j+144>>2]+gb|0;ub=c>>>0<=gb>>>0;ze=ub?ze:H[j+320>>2]+gb|0;wb=l>>>0<=gb>>>0;Ae=wb?Ae:H[j+496>>2]+gb|0;xa=gb>>>0>=Lb>>>0;Be=xa?Be:H[j+672>>2]+gb|0;h=0;m=0;m=ka?m:H[(B+(Sd<<2)|0)+7296>>2];h=ub?h:H[(B+(ze<<2)|0)+7296>>2];e=0;f=0;f=wb?f:H[(B+(Ae<<2)|0)+7296>>2];R=8;if(!xa){R=0;e=H[(B+(Be<<2)|0)+7296>>2]}Pb=Sd<<2;l=H[Pb+ta>>2];ac=H[j+112>>2]+(J[B+N(l,44)>>1]<<6)|0;zc=L[ac+60>>2];ye=ze<<2;c=H[ye+ta>>2];Qc=H[j+288>>2]+(J[B+N(c,44)>>1]<<6)|0;Ac=L[Qc+60>>2];Nb=Ae<<2;b=H[Nb+ta>>2];Rc=H[j+464>>2]+(J[B+N(b,44)>>1]<<6)|0;Bc=L[Rc+60>>2];Ob=Be<<2;S=H[Ob+ta>>2];Dd=H[j+640>>2]+(J[B+N(S,44)>>1]<<6)|0;Cc=L[Dd+60>>2];F[o+7|0]=Rd;F[o+6|0]=qe;F[o+5|0]=Te;F[o+4|0]=Ue;F[o+3|0]=ib;g=e>>>0>f>>>0?e:f;g=h>>>0>>0?g:h;ha=g>>>0>m>>>0?g:m;Sb=ha<<4;Z=S6(o+240|0,0,Sb);L[o+124>>2]=Ve;L[o+120>>2]=We;L[o+116>>2]=Xe;L[o+112>>2]=Ye;L[o+108>>2]=rf;L[o+104>>2]=tf;L[o+100>>2]=vf;L[o+96>>2]=mf;L[o+92>>2]=of;L[o+88>>2]=pf;L[o+84>>2]=qf;L[o+80>>2]=hf;L[o+76>>2]=sf;L[o+72>>2]=uf;L[o+68>>2]=wf;L[o+64>>2]=nf;F[o+11|0]=e;F[o+10|0]=f;F[o+9|0]=h;F[o+8|0]=m;F[o+1|0]=ha;H[o+192>>2]=H[j+108>>2];H[o+196>>2]=H[j+284>>2];H[o+200>>2]=H[j+460>>2];e=H[j+636>>2];Ua=O(-Cc);L[o+28>>2]=Ua;Va=O(-Bc);L[o+24>>2]=Va;Wa=O(-Ac);L[o+20>>2]=Wa;Xa=O(-zc);L[o+16>>2]=Xa;H[o+204>>2]=e;ya=L[ac>>2];za=L[Qc>>2];Aa=L[Rc>>2];Ba=L[Dd>>2];ra=L[ac+4>>2];la=L[Qc+4>>2];_=L[Rc+4>>2];$=L[Dd+4>>2];ca=L[ac+8>>2];da=L[Qc+8>>2];V=L[Rc+8>>2];X=L[Dd+8>>2];L[o+188>>2]=Xc;L[o+184>>2]=Yc;L[o+180>>2]=Zc;L[o+176>>2]=Id;L[o+172>>2]=X;L[o+168>>2]=V;L[o+164>>2]=da;L[o+160>>2]=ca;L[o+156>>2]=$;L[o+152>>2]=_;L[o+148>>2]=la;L[o+144>>2]=ra;L[o+140>>2]=Ba;L[o+136>>2]=Aa;L[o+132>>2]=za;L[o+128>>2]=ya;h=65535;m=65535;la:{if((l|0)==65535){break la}while(1){m=l;e=B+N(l,44)|0;if(I[e+5|0]){break la}m=65535;l=J[e+2>>1];if((l|0)!=65535){continue}break}}ma:{if((c|0)==65535){break ma}while(1){h=c;c=B+N(c,44)|0;if(I[c+5|0]){break ma}h=65535;c=J[c+2>>1];if((c|0)!=65535){continue}break}}l=65535;c=65535;na:{if((b|0)==65535){break na}while(1){c=b;b=B+N(b,44)|0;if(I[b+5|0]){break na}c=65535;b=J[b+2>>1];if((b|0)!=65535){continue}break}}oa:{if((S|0)==65535){break oa}while(1){l=S;b=B+N(l,44)|0;if(I[b+5|0]){break oa}l=65535;S=J[b+2>>1];if((S|0)!=65535){continue}break}}T=0;pa:{if(ka){f=m;P=0;break pa}y=65535;hb=0;P=1;f=m;if((f|0)==65535){f=65535;break pa}while(1){b=B+N(f,44)|0;if(I[b+5|0]!=(P|0)){y=m;break pa}P=0;f=J[b+2>>1];if((f|0)!=65535){continue}break}f=65535;y=m}qa:{if(ub){e=h;break qa}U=65535;Mb=0;T=1;e=h;if((e|0)==65535){e=65535;break qa}while(1){b=B+N(e,44)|0;if(I[b+5|0]!=(T|0)){U=h;break qa}T=0;e=J[b+2>>1];if((e|0)!=65535){continue}break}e=65535;U=h}oa=0;ra:{if(wb){g=c;C=0;break ra}Q=65535;Tb=0;C=1;g=c;if((c|0)==65535){g=65535;break ra}while(1){b=B+N(g,44)|0;if(I[b+5|0]!=(C|0)){Q=c;break ra}C=0;g=J[b+2>>1];if((g|0)!=65535){continue}break}g=65535;Q=c}sa:{if(xa){k=l;break sa}E=65535;Ub=0;oa=1;k=l;if((k|0)==65535){k=65535;break sa}while(1){c=B+N(k,44)|0;if(I[c+5|0]!=(oa|0)){E=l;break sa}oa=0;k=J[c+2>>1];if((k|0)!=65535){continue}break}k=65535;E=l}c=1;c=ka?c:!((f|0)!=65535&I[(B+N(f,44)|0)+5|0]>P>>>0);h=ka|ub<<1;b=wb<<2;ta:{if(!((e|0)==65535|ub)){m=0;if(I[(B+N(e,44)|0)+5|0]>T>>>0){break ta}}m=2}Za=O(ge*$);t=O(je*Ba);_a=O(af*$);$a=O(df*Ba);Ga=O(he*_);u=O(ke*Aa);ab=O(bf*_);na=O(ef*Aa);v=O(ie*la);A=O(le*za);n=O(cf*la);z=O(ff*za);r=O(ne*ra);q=O(oe*ya);p=O(kf*ra);d=O(lf*ya);b=b|h;ua:{if(!((g|0)==65535|wb)){h=0;if(I[(B+N(g,44)|0)+5|0]>C>>>0){break ua}}h=4}Za=O(t+Za);t=O(de*X);_a=O($a+_a);$a=O(Ze*X);Ga=O(u+Ga);u=O(ee*V);ab=O(na+ab);na=O(_e*V);v=O(A+v);A=O(fe*da);n=O(z+n);z=O($e*da);r=O(q+r);q=O(me*ca);p=O(d+p);d=O(jf*ca);R=b|R;va:{if(!((k|0)==65535|xa)){b=0;if(I[(B+N(k,44)|0)+5|0]>oa>>>0){break va}}b=8}l=Z+Sb|0;t=O(t+Za);Dc=O($a+_a);u=O(u+Ga);Ec=O(na+ab);A=O(A+v);Fc=O(z+n);q=O(q+r);Tc=O(d+p);if((R|0)!=15){xa=N(ha,160)+l|0;Z=b|(h|(c|m));tb=0;while(1){m=H[j+640>>2]+(J[B+N(E,44)>>1]+Ub<<6)|0;pa=L[m+16>>2];r=O(pa-td);wa=L[m+20>>2];p=O(wa-sd);v=O(O($*r)-O(Ba*p));z=O(-v);ja=L[m+24>>2];d=O(ja-rd);n=O(O(Ba*d)-O(X*r));r=O(-n);p=O(O(X*p)-O($*d));d=O(-p);s=w>(v>z?v:z)?O(0):v;x=w>(n>r?n:r)?O(0):n;Ca=w>(d>2]+(J[B+N(Q,44)>>1]+Tb<<6)|0;ga=L[h+16>>2];r=O(ga-wd);Ya=L[h+20>>2];p=O(Ya-vd);v=O(O(_*r)-O(Aa*p));z=O(-v);ba=L[h+24>>2];d=O(ba-ud);n=O(O(Aa*d)-O(V*r));r=O(-n);p=O(O(V*p)-O(_*d));d=O(-p);eb=w>(v>z?v:z)?O(0):v;sa=w>(n>r?n:r)?O(0):n;Da=w>(d>2]+(J[B+N(U,44)>>1]+Mb<<6)|0;ea=L[b+16>>2];r=O(ea-zd);ab=L[b+20>>2];p=O(ab-yd);v=O(O(la*r)-O(za*p));z=O(-v);na=L[b+24>>2];d=O(na-xd);n=O(O(za*d)-O(da*r));r=O(-n);p=O(O(da*p)-O(la*d));d=O(-p);Ha=w>(v>z?v:z)?O(0):v;Ea=w>(n>r?n:r)?O(0):n;qa=w>(d>2]+(J[B+N(y,44)>>1]+hb<<6)|0;v=L[c+16>>2];n=O(v-Cd);z=L[c+20>>2];r=O(z-Bd);Za=O(O(ra*n)-O(ya*r));Ga=O(-Za);p=L[c+24>>2];d=O(p-Ad);_a=O(O(ya*d)-O(ca*n));n=O(-_a);$a=O(O(ca*r)-O(ra*d));d=O(-$a);Ga=w>(Ga(n<_a?_a:n)?O(0):_a;d=w>(d<$a?$a:d)?O(0):$a;Ib=O(O(Kg*Ga)+O(O(Lg*r)+O(Sh*d)));cb=O(O(Hg*Ga)+O(O(Ig*r)+O(Jg*d)));db=O(O(Eg*Ga)+O(O(Fg*r)+O(Gg*d)));Sa=O(Md+O(O(Ib*Ib)+O(O(cb*cb)+O(db*db))));Ca=O(Dc+O(O(Lh*s)+O(O(Mh*x)+O(Mg*Ca))));Da=O(Ec+O(O(Nh*eb)+O(O(Oh*sa)+O(Ng*Da))));Ea=O(Fc+O(O(Ph*Ha)+O(O(Qh*Ea)+O(Og*qa))));qa=O(Tc+O(O(Pg*Ga)+O(O(Qg*r)+O(Th*d))));Za=O(O(Ba*L[m+32>>2])+O(O($*L[m+36>>2])+O(X*L[m+40>>2])));_a=O(O(Aa*L[h+32>>2])+O(O(_*L[h+36>>2])+O(V*L[h+40>>2])));$a=O(O(za*L[b+32>>2])+O(O(la*L[b+36>>2])+O(da*L[b+40>>2])));Ga=O(O(ya*L[c+32>>2])+O(O(ra*L[c+36>>2])+O(ca*L[c+40>>2])));sa=O(pa-hd);s=O(ga-kd);ma=O(ea-nd);fa=O(v-qd);Ha=O(ja-fd);pa=O(ba-id);ja=O(na-ld);ia=O(p-od);d=O(wa-gd);ga=O(Ya-jd);Ya=O(ab-md);D=O(z-pd);n=L[m+12>>2];ab=L[h+12>>2];na=L[b+12>>2];v=L[c+12>>2];wa:{if(i){ba=O(O($*sa)-O(Ba*d));r=O(-ba);ea=O(O(Ba*Ha)-O(X*sa));p=O(-ea);z=O(O(X*d)-O($*Ha));d=O(-z);x=w>(r(p(d(r(p(d(r(p(d(r(p(d>2]=Ja;L[l+88>>2]=La;L[l+84>>2]=Ma;L[l+80>>2]=ea;L[l+76>>2]=Ia;L[l+72>>2]=vb;L[l+68>>2]=s;L[l+64>>2]=zb;L[l+60>>2]=Fa;L[l+56>>2]=Ka;L[l+52>>2]=yb;L[l+48>>2]=xb;L[l+44>>2]=Ic;L[l+40>>2]=Lc;L[l+36>>2]=Hb;L[l+32>>2]=db;L[l+28>>2]=Hc;L[l+24>>2]=Kc;L[l+20>>2]=Gb;L[l+16>>2]=cb;L[l+12>>2]=Gc;L[l+8>>2]=Jc;L[l+4>>2]=Fb;L[l>>2]=Ib;L[l+124>>2]=Na>O(0)?O(O(1)/Na):O(0);L[l+120>>2]=Pa>O(0)?O(O(1)/Pa):O(0);L[l+116>>2]=Qa>O(0)?O(O(1)/Qa):O(0);L[l+112>>2]=Sa>O(0)?O(O(1)/Sa):O(0);s=O(Uh*z);z=O(Ca-z);n=O(n-Jb);L[l+140>>2]=Za+O(O(s+(Cc>O(0)?zO(n*Qb)?O(z*Ua):O(0):O(0):O(0)))-O(Vh*Ca));s=O(og*r);r=O(Da-r);z=O(ab-Uc);L[l+136>>2]=_a+O(O(s+(Bc>O(0)?rO(z*Qb)?O(r*Va):O(0):O(0):O(0)))-O(pg*Da));s=O(mg*d);d=O(Ea-d);r=O(na-Vc);L[l+132>>2]=$a+O(O(s+(Ac>O(0)?dO(r*Qb)?O(d*Wa):O(0):O(0):O(0)))-O(ng*Ea));s=O(kg*p);p=O(qa-p);d=O(v-Wc);L[l+128>>2]=Ga+O(O(s+(zc>O(0)?pO(d*Qb)?O(p*Xa):O(0):O(0):O(0)))-O(lg*qa));L[l+156>>2]=gf;L[l+152>>2]=gf;L[l+148>>2]=gf;L[l+144>>2]=gf;L[l+108>>2]=n;L[l+104>>2]=z;L[l+100>>2]=r;L[l+96>>2]=d;if(ib){r=L[c+28>>2];p=L[b+28>>2];d=L[h+28>>2];c=xa+(tb<<4)|0;L[c+12>>2]=L[m+28>>2];L[c+8>>2]=d;L[c+4>>2]=p;L[c>>2]=r}xa:{if(Z&1){R=f;S=P;P=Z;break xa}S=P+1|0;R=65535;h=0;c=f;ya:{if((c|0)==65535){break ya}while(1){m=B+N(c,44)|0;b=I[m+5|0];if((b|0)==(S|0)){S=0;c=J[m+2>>1];if((c|0)!=65535){continue}break ya}break}if((c|0)==65535){break ya}h=b>>>0>S>>>0;R=c}hb=P;y=f;P=h^1|Z}za:{if(Z&2){c=e;h=T;break za}h=T+1|0;f=2;c=e;Aa:{if((c|0)==65535){c=65535;break Aa}Ba:{while(1){m=B+N(c,44)|0;b=I[m+5|0];if((b|0)!=(h|0)){break Ba}h=0;c=J[m+2>>1];if((c|0)!=65535){continue}break}c=65535;break Aa}if((c|0)==65535){c=65535;break Aa}f=(b>>>0<=h>>>0)<<1}P=f|P;Mb=T;U=e}Ca:{if(Z&4){b=g;m=C;break Ca}m=C+1|0;T=4;b=g;Da:{if((b|0)==65535){b=65535;break Da}Ea:{while(1){f=B+N(b,44)|0;e=I[f+5|0];if((e|0)!=(m|0)){break Ea}m=0;b=J[f+2>>1];if((b|0)!=65535){continue}break}b=65535;break Da}if((b|0)==65535){b=65535;break Da}T=(e>>>0<=m>>>0)<<2}P=P|T;Tb=C;Q=g}if(!(Z&8)){f=oa+1|0;C=8;e=k;Fa:{if((e|0)==65535){e=65535;break Fa}Ga:{while(1){E=B+N(e,44)|0;g=I[E+5|0];if((g|0)!=(f|0)){break Ga}f=0;e=J[E+2>>1];if((e|0)!=65535){continue}break}e=65535;break Fa}if((e|0)==65535){e=65535;break Fa}C=(f>>>0>=g>>>0)<<3}P=C|P;Ub=oa;E=k;oa=f;k=e}l=l+160|0;tb=tb+1|0;ha=(Z|0)!=15;Z=P;P=S;f=R;T=h;e=c;C=m;g=b;if(ha){continue}break}}xa=va+N(Be,104)|0;k=J[xa+2>>1];ha=va+N(Ae,104)|0;m=J[ha+2>>1];Z=va+N(ze,104)|0;c=J[Z+2>>1];tb=0;tb=ka?tb:F[ac+48|0]&1?0:J[(B+N(Sd,104)|0)+2818>>1];oa=0;oa=ub?oa:F[Qc+48|0]&1?0:c;g=0;b=(ib?Sb:0)+l|0;ga=L[Dd+44>>2];ab=L[Dd+56>>2];na=L[ac+44>>2];v=L[ac+56>>2];h=I[ac+48|0];n=L[Qc+44>>2];z=L[Qc+56>>2];f=I[Qc+48|0];r=L[Rc+44>>2];p=L[Rc+56>>2];e=I[Rc+48|0];l=I[Dd+48|0];g=wb?g:F[Rc+48|0]&1?0:m;F[o+14|0]=g<<1;F[o+13|0]=oa<<1;F[o+12|0]=tb<<1;F[o|0]=7;ka=gb>>>0>>0?l&1?0:k:0;F[o+15|0]=ka<<1;c=g>>>0>>0?ka:g;c=c>>>0>oa>>>0?c:oa;ub=c>>>0>tb>>>0?c:tb;k=ub<<1;F[o+2|0]=k;if(ub){d=(e&4)>>>2|0?(g|0)==2?O(.5):O(1):O(1);Ya=O(d*p);ba=O(d*r);d=(f&4)>>>2|0?(oa|0)==2?O(.5):O(1):O(1);ea=O(d*z);Za=O(d*n);d=(h&4)>>>2|0?(tb|0)==2?O(.5):O(1):O(1);_a=O(d*v);$a=O(na*d);d=(l&4)>>>2|0?(ka|0)==2?O(.5):O(1):O(1);Ga=O(d*ab);ab=O(d*ga);m=H[j+660>>2];h=H[j+484>>2];f=H[j+308>>2];e=H[j+132>>2];c=H[Vb+12>>2];H[o+216>>2]=H[Vb+8>>2];H[o+220>>2]=c;c=H[Vb+4>>2];H[o+208>>2]=H[Vb>>2];H[o+212>>2]=c;H[o+224>>2]=e+N(Nc,104);H[o+228>>2]=f+N(Oc,104);H[o+232>>2]=h+N(Pc,104);H[o+236>>2]=m+N(Mc,104);c=0;Wb=O(1);r=O(Dc-t);t=O(bd-O($*r));z=t;d=O(-Ba);f=(dO(9999999747378752e-20);d=e?z:f?O(-X):Ba;r=d;ja=e?t:f?$:O(0);t=O(d*d);d=e?p:f?O(0):O(-$);ga=O(O(1)/O(W(O(O(ja*ja)+O(t+O(d*d))))));kb=O(r*ga);lb=O(d*ga);Ia=O(O(Ba*kb)-O($*lb));p=O(Ec-u);u=O(cd-O(_*p));r=u;d=O(-Aa);f=(dO(9999999747378752e-20);d=e?r:f?O(-V):Aa;p=d;na=e?u:f?_:O(0);u=O(d*d);d=e?t:f?O(0):O(-_);v=O(O(1)/O(W(O(O(na*na)+O(u+O(d*d))))));mb=O(p*v);nb=O(d*v);Ja=O(O(Aa*mb)-O(_*nb));t=O(Fc-A);A=O(dd-O(la*t));p=A;d=O(-za);f=(dO(9999999747378752e-20);d=e?p:f?O(-da):za;p=d;n=e?A:f?la:O(0);t=O(d*d);d=e?u:f?O(0):O(-la);t=O(O(1)/O(W(O(O(n*n)+O(t+O(d*d))))));z=O(p*t);r=O(d*t);Ka=O(O(za*z)-O(la*r));A=O(Tc-q);q=O(Kd-O(ra*A));p=q;d=O(-ya);f=(dO(9999999747378752e-20);d=e?p:f?O(-ca):ya;p=d;A=e?q:f?ra:O(0);q=e?u:f?O(0):O(-ra);d=O(O(1)/O(W(O(O(A*A)+O(O(d*d)+O(q*q))))));ob=O(p*d);p=O(q*d);Na=O(O(ya*ob)-O(ra*p));Fa=O(ja*ga);Pa=O(O(X*lb)-O(Ba*Fa));pb=O(na*v);Qa=O(O(V*nb)-O(Aa*pb));qb=O(n*t);Sa=O(O(da*r)-O(za*qb));rb=O(A*d);Ab=O(O(ca*p)-O(ya*rb));Bb=O(O($*Fa)-O(X*kb));Cb=O(O(_*pb)-O(V*mb));Db=O(O(la*qb)-O(da*z));Eb=O(O(ra*rb)-O(ca*ob));l=ac+32|0;f=b;b=k<<4&4080;b=S6(f,0,b)+b|0;h=0;m=0;e=0;f=0;Xb=O(1);Yb=O(1);Zb=O(1);while(1){k=b;S=c>>>0>>0;h=S?c:h;b=xa+N(h,12)|0;ra=L[b+72>>2];la=L[b- -64>>2];_=L[b+68>>2];Ua=O(O(zf*ra)+O(O(yf*la)+O(xf*_)));na=O(zf*Ua);$=L[b+48>>2];ca=L[b+40>>2];Fb=L[b+44>>2];Va=O(O(Kf*$)+O(O(Jf*ca)+O(If*Fb)));d=O(Kf*Va);T=c>>>0>>0;m=T?c:m;b=ha+N(m,12)|0;da=L[b+72>>2];V=L[b- -64>>2];X=L[b+68>>2];Wa=O(O(Cf*da)+O(O(Bf*V)+O(Af*X)));v=O(Cf*Wa);ma=L[b+48>>2];fa=L[b+40>>2];Gb=L[b+44>>2];Xa=O(O(Nf*ma)+O(O(Mf*fa)+O(Lf*Gb)));n=O(Nf*Xa);R=c>>>0>>0;e=R?c:e;b=Z+N(e,12)|0;ia=L[b+72>>2];D=L[b- -64>>2];s=L[b+68>>2];pa=O(O(Ff*ia)+O(O(Ef*D)+O(Df*s)));t=O(Ff*pa);x=L[b+48>>2];Hb=L[b+40>>2];Ib=L[b+44>>2];wa=O(O(Qf*x)+O(O(Pf*Hb)+O(Of*Ib)));u=O(Qf*wa);C=c>>>0>>0;f=C?c:f;b=(va+N(Sd,104)|0)+N(f,12)|0;cb=L[b+72>>2];db=L[b- -64>>2];Ca=L[b+68>>2];ja=O(O(Hf*cb)+O(O(Tf*db)+O(Gf*Ca)));A=O(Hf*ja);Da=L[b+48>>2];Ea=L[b+40>>2];qa=L[b+44>>2];ga=O(O(Sf*Da)+O(O(Uf*Ea)+O(Rf*qa)));q=O(Sf*ga);wb=J[(ua+Ob|0)+(h<<1)>>1];Lb=J[(ua+Nb|0)+(m<<1)>>1];Sb=J[(ua+ye|0)+(e<<1)>>1];b=l;P=J[(ua+Pb|0)+(f<<1)>>1];if((P|0)!=65535){b=(H[j+112>>2]+(P<<6)|0)+32|0}eb=L[b+8>>2];sa=L[b+4>>2];Ha=L[b>>2];b=l;Wb=S?Wb:O(0);Xb=T?Xb:O(0);Yb=R?Yb:O(0);Zb=C?Zb:O(0);b=(Sb|0)!=65535?(H[j+288>>2]+(Sb<<6)|0)+32|0:b;zc=L[b+8>>2];Ac=L[b+4>>2];Bc=L[b>>2];b=l;Fa=O(Fa*Wb);pb=O(pb*Xb);qb=O(qb*Yb);rb=O(rb*Zb);kb=O(kb*Wb);mb=O(mb*Xb);z=O(z*Yb);ob=O(ob*Zb);lb=O(lb*Wb);nb=O(nb*Xb);r=O(r*Yb);p=O(p*Zb);b=(Lb|0)!=65535?(H[j+464>>2]+(Lb<<6)|0)+32|0:b;Cc=L[b+8>>2];Dc=L[b+4>>2];Ec=L[b>>2];b=l;d=O(O(O(Ge*O(O(Jf*Fb)+O(ca*eg)))+O(_h*$))+d);Ke=O(d+d);d=O(O(O(Ce*O(O(yf*_)+O(la*Qd)))+O(Wh*ra))+na);bc=O(d+d);Fc=O(O(rd+Ke)-O(fd+bc));d=O(O(O(He*O(O(Mf*Gb)+O(fa*hg)))+O($h*ma))+n);Le=O(d+d);d=O(O(O(De*O(O(Bf*X)+O(V*Yf)))+O(Xh*da))+v);cc=O(d+d);Tc=O(O(ud+Le)-O(id+cc));d=O(O(O(Ie*O(O(Pf*Ib)+O(Hb*re)))+O(ai*x))+u);Me=O(d+d);d=O(O(O(Ee*O(O(Ef*s)+O(D*$f)))+O(Yh*ia))+t);dc=O(d+d);Gc=O(O(xd+Me)-O(ld+dc));d=O(O(O(Je*O(O(Uf*qa)+O(Ea*ue)))+O(bi*Da))+q);Ne=O(d+d);d=O(O(O(Fe*O(O(Tf*Ca)+O(db*cg)))+O(Zh*cb))+A);ec=O(d+d);Hc=O(O(Ad+Ne)-O(od+ec));d=O(O(If*Va)+O(O(_h*Fb)+O(Ge*O(O(Kf*ca)+O($*fg)))));Oe=O(d+d);d=O(O(xf*Ua)+O(O(Wh*_)+O(Ce*O(O(zf*la)+O(ra*Wf)))));fc=O(d+d);Ic=O(O(sd+Oe)-O(gd+fc));d=O(O(Lf*Xa)+O(O($h*Gb)+O(He*O(O(Nf*fa)+O(ma*ig)))));Pe=O(d+d);d=O(O(Af*Wa)+O(O(Xh*X)+O(De*O(O(Cf*V)+O(da*Zf)))));gc=O(d+d);Jc=O(O(vd+Pe)-O(jd+gc));d=O(O(Of*wa)+O(O(ai*Ib)+O(Ie*O(O(Qf*Hb)+O(x*se)))));ya=O(d+d);d=O(O(Df*pa)+O(O(Yh*s)+O(Ee*O(O(Ff*D)+O(ia*ag)))));hc=O(d+d);Kc=O(O(yd+ya)-O(md+hc));d=O(O(Rf*ga)+O(O(bi*qa)+O(Je*O(O(Sf*Ea)+O(Da*xe)))));za=O(d+d);d=O(O(Gf*ja)+O(O(Zh*Ca)+O(Fe*O(O(Hf*db)+O(cb*we)))));ic=O(d+d);Lc=O(O(Bd+za)-O(pd+ic));d=O(O(Jf*Va)+O(O(_h*ca)+O(Ge*O(O(If*$)+O(Fb*gg)))));Aa=O(d+d);d=O(O(yf*Ua)+O(O(Wh*la)+O(Ce*O(O(xf*ra)+O(_*Xf)))));jc=O(d+d);Fb=O(O(td+Aa)-O(hd+jc));d=O(O(Mf*Xa)+O(O($h*fa)+O(He*O(O(Lf*ma)+O(Gb*jg)))));Ba=O(d+d);d=O(O(Bf*Wa)+O(O(Xh*V)+O(De*O(O(Af*da)+O(X*_f)))));kc=O(d+d);Gb=O(O(wd+Ba)-O(kd+kc));d=O(O(Pf*wa)+O(O(ai*Hb)+O(Ie*O(O(Of*x)+O(Ib*te)))));ra=O(d+d);d=O(O(Ef*pa)+O(O(Yh*D)+O(Ee*O(O(Df*ia)+O(s*bg)))));lc=O(d+d);Hb=O(O(zd+ra)-O(nd+lc));d=O(O(Uf*ga)+O(O(bi*Ea)+O(Je*O(O(Rf*Da)+O(qa*ve)))));la=O(d+d);d=O(O(Tf*ja)+O(O(Zh*db)+O(Fe*O(O(Gf*cb)+O(Ca*dg)))));mc=O(d+d);Ib=O(O(Cd+la)-O(qd+mc));Ia=O(Ia*Wb);Ja=O(Ja*Xb);Ka=O(Ka*Yb);Na=O(Na*Zb);Pa=O(Pa*Wb);Qa=O(Qa*Xb);Sa=O(Sa*Yb);Ab=O(Ab*Zb);Bb=O(Bb*Wb);Cb=O(Cb*Xb);Db=O(Db*Yb);Eb=O(Eb*Zb);n=O(O(kb*Aa)-O(lb*Oe));A=O(-n);t=O(O(lb*Ke)-O(Fa*Aa));q=O(-t);u=O(O(Fa*Oe)-O(kb*Ke));d=O(-u);fa=w>(n>A?n:A)?O(0):n;ia=w>(q(d(n>A?n:A)?O(0):n;x=w>(q(d(n>A?n:A)?O(0):n;Ca=w>(q(d(n>A?n:A)?O(0):n;q=w>(q(d>2]+(wb<<6)|0)+32|0:b;cb=L[b+8>>2];db=L[b+4>>2];Ca=L[b>>2];Ha:{if(i){D=O(O(kb*jc)-O(lb*fc));v=O(-D);s=O(O(lb*bc)-O(Fa*jc));n=O(-s);x=O(O(Fa*fc)-O(kb*bc));d=O(-x);_=w>(v(n(d(v(n(d(v(n(d(v(n(d>2]=oc;L[k+136>>2]=rc;L[k+132>>2]=uc;L[k+128>>2]=wc;L[k+124>>2]=pc;L[k+120>>2]=sc;L[k+116>>2]=vc;L[k+112>>2]=xc;L[k+108>>2]=qc;L[k+104>>2]=tc;L[k+100>>2]=yb;L[k+96>>2]=s;L[k+204>>2]=sb;L[k+200>>2]=sb;L[k+196>>2]=sb;L[k+192>>2]=sb;L[k+92>>2]=Da;L[k+88>>2]=Ua;L[k+84>>2]=Xa;L[k+80>>2]=ja;L[k+76>>2]=Ea;L[k+72>>2]=Va;L[k+68>>2]=pa;L[k+64>>2]=ga;L[k+60>>2]=qa;L[k+56>>2]=Wa;L[k+52>>2]=wa;L[k+48>>2]=na;L[k+44>>2]=Fa;L[k+40>>2]=pb;L[k+36>>2]=qb;L[k+32>>2]=rb;L[k+28>>2]=kb;L[k+24>>2]=mb;L[k+20>>2]=z;L[k+16>>2]=ob;L[k+12>>2]=lb;L[k+8>>2]=nb;L[k+4>>2]=r;L[k>>2]=p;L[k+172>>2]=Wb*(La>O(0)?O(O(.800000011920929)/La):O(0));L[k+168>>2]=Xb*(vb>O(0)?O(O(.800000011920929)/vb):O(0));L[k+164>>2]=Yb*(nc>O(0)?O(O(.800000011920929)/nc):O(0));L[k+160>>2]=Zb*(Ma>O(0)?O(O(.800000011920929)/Ma):O(0));L[k+156>>2]=O(Fa*Fc)+O(O(lb*Fb)+O(kb*Ic));L[k+152>>2]=O(pb*Tc)+O(O(nb*Gb)+O(mb*Jc));L[k+148>>2]=O(qb*Gc)+O(O(r*Hb)+O(z*Kc));L[k+144>>2]=O(rb*Hc)+O(O(p*Ib)+O(ob*Lc));L[k+188>>2]=O(O(O(Fa*cb)+O(O(lb*Ca)+O(kb*db)))+O(Uh*xb))-O(Vh*t);L[k+184>>2]=O(O(O(pb*Cc)+O(O(nb*Ec)+O(mb*Dc)))+O(og*zb))-O(pg*u);L[k+180>>2]=O(O(O(qb*zc)+O(O(r*Bc)+O(z*Ac)))+O(mg*x))-O(ng*A);L[k+176>>2]=O(O(O(rb*eb)+O(O(p*Ha)+O(ob*sa)))+O(kg*d))-O(lg*q);n=O(O(Pa*Aa)-O(Bb*Oe));A=O(-n);t=O(O(Bb*Ke)-O(Ia*Aa));q=O(-t);u=O(O(Ia*Oe)-O(Pa*Ke));d=O(-u);V=w>(n>A?n:A)?O(0):n;X=w>(q(d(n>A?n:A)?O(0):n;ia=w>(q(d(n>A?n:A)?O(0):n;x=w>(q(d(n>A?n:A)?O(0):n;q=w>(q(d(v(n(d(v(n(d(v(n(d(v(n(d>2]=oc;L[k+344>>2]=sc;L[k+340>>2]=vc;L[k+336>>2]=x;L[k+332>>2]=zb;L[k+328>>2]=tc;L[k+324>>2]=wc;L[k+320>>2]=s;L[k+316>>2]=ca;L[k+312>>2]=uc;L[k+308>>2]=xc;L[k+304>>2]=vb;L[k+412>>2]=sb;L[k+408>>2]=sb;L[k+404>>2]=sb;L[k+400>>2]=sb;L[k+300>>2]=Da;L[k+296>>2]=Ua;L[k+292>>2]=Xa;L[k+288>>2]=ja;L[k+284>>2]=Ea;L[k+280>>2]=Va;L[k+276>>2]=pa;L[k+272>>2]=ga;L[k+268>>2]=qa;L[k+264>>2]=Wa;L[k+260>>2]=wa;L[k+256>>2]=na;L[k+252>>2]=Ia;L[k+248>>2]=Ja;L[k+244>>2]=Ka;L[k+240>>2]=Na;L[k+236>>2]=Pa;L[k+232>>2]=Qa;L[k+228>>2]=Sa;L[k+224>>2]=Ab;L[k+220>>2]=Bb;L[k+216>>2]=Cb;L[k+212>>2]=Db;L[k+208>>2]=Eb;L[k+380>>2]=Wb*(pc>O(0)?O(O(.800000011920929)/pc):O(0));L[k+376>>2]=Xb*(qc>O(0)?O(O(.800000011920929)/qc):O(0));L[k+372>>2]=Yb*(rc>O(0)?O(O(.800000011920929)/rc):O(0));L[k+368>>2]=Zb*(nc>O(0)?O(O(.800000011920929)/nc):O(0));L[k+364>>2]=O(Ia*Fc)+O(O(Bb*Fb)+O(Pa*Ic));L[k+360>>2]=O(Ja*Tc)+O(O(Cb*Gb)+O(Qa*Jc));L[k+356>>2]=O(Ka*Gc)+O(O(Db*Hb)+O(Sa*Kc));L[k+352>>2]=O(Na*Hc)+O(O(Eb*Ib)+O(Ab*Lc));L[k+396>>2]=O(O(O(Ia*cb)+O(O(Bb*Ca)+O(Pa*db)))+O(Uh*Ma))-O(Vh*t);L[k+392>>2]=O(O(O(Ja*Cc)+O(O(Cb*Ec)+O(Qa*Dc)))+O(og*La))-O(pg*u);L[k+388>>2]=O(O(O(Ka*zc)+O(O(Db*Bc)+O(Sa*Ac)))+O(mg*yb))-O(ng*A);L[k+384>>2]=O(O(O(Na*eb)+O(O(Eb*Ha)+O(Ab*sa)))+O(kg*d))-O(lg*q);c=c+1|0;if((ub|0)!=(c|0)){continue}break}L[o+60>>2]=Ga;L[o+56>>2]=Ya;L[o+52>>2]=ea;L[o+48>>2]=_a;L[o+44>>2]=ab;L[o+40>>2]=ba;L[o+36>>2]=Za;L[o+32>>2]=$a;Oc=Oc+1|0;Nc=Nc+1|0;Mc=Mc+1|0;Pc=Pc+1|0}gb=gb+1|0;if((ed|0)==(gb|0)){break ka}Lb=H[j+676>>2];l=H[j+500>>2];c=H[j+324>>2];S=H[j+148>>2];o=b;continue}}Oa=Vb+16|0;H[Ta+$b>>2]=0;h=2}Oa=M+160|0}Oa=jb+32|0}else{h=1}La:{if((h|0)==2){break La}c=0;if(Ed){break La}while(1){b=H[(Y+32|0)+(c<<2)>>2];qA((Y+96|0)+N(c,176)|0,b,yc,sb,Qb,L[Kb+84>>2],L[Kb+88>>2],L[Kb+100>>2],Y+808|0);e=(Rb<<5)+Qe|0;G[e+20>>1]=I[b+12|0];H[e+28>>2]=H[b+8>>2];Rb=Rb+1|0;c=c+1|0;if((Sc|0)!=(c|0)){continue}break}}g=J[_b+4>>1];if(!g){break a}c=0;if((g|0)!=1){m=g&65534;b=0;while(1){f=H[(c<<2)+Y>>2];h=Y+96|0;e=h+N(c,176)|0;H[f+36>>2]=H[e+132>>2];F[f+42|0]=I[e+136|0];e=c|1;f=H[(e<<2)+Y>>2];e=h+N(e,176)|0;H[f+36>>2]=H[e+132>>2];F[f+42|0]=I[e+136|0];c=c+2|0;b=b+2|0;if((m|0)!=(b|0)){continue}break}}if(!(g&1)){break a}b=H[(c<<2)+Y>>2];c=(Y+96|0)+N(c,176)|0;H[b+36>>2]=H[c+132>>2];F[b+42|0]=I[c+136|0]}Vf=Vf+1|0;if((ci|0)!=(Vf|0)){continue}break}}Oa=Y+832|0;a=H[H[a+64>>2]+368>>2];H[yc>>2]=H[a>>2];H[a>>2]=yc}function tm(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=O(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;r=Oa-16|0;Oa=r;d=H[33808];c=Ra[H[H[d>>2]+20>>2]](d)|0?37652:55639;h=Ra[H[H[d+12>>2]+8>>2]](d+12|0,6368,c,6215,269)|0;H[h+4>>2]=0;H[h>>2]=109632;l=Oa-16|0;Oa=l;d=H[33808];d=Ra[H[H[d+12>>2]+8>>2]](d+12|0,4115,20591,14579,51)|0;if(d){e=d+19&-16;H[e-4>>2]=e-d}k=h+16|0;d=k+16|0;H[d+4>>2]=128;H[d>>2]=e;while(1){c=f<<5;G[(c+e|0)+20>>1]=65535;G[((c|32)+e|0)+20>>1]=65535;G[((c|64)+e|0)+20>>1]=65535;G[((c|96)+e|0)+20>>1]=65535;G[((c|128)+e|0)+20>>1]=65535;G[((c|160)+e|0)+20>>1]=65535;G[((c|192)+e|0)+20>>1]=65535;G[((c|224)+e|0)+20>>1]=65535;f=f+8|0;if((f|0)!=128){continue}break}H[d+16>>2]=h;H[d+20>>2]=0;H[d+24>>2]=0;H[d+28>>2]=0;H[d+368>>2]=0;H[d+32>>2]=0;H[d+36>>2]=0;H[d+40>>2]=0;H[d+44>>2]=0;H[d+48>>2]=0;H[d+52>>2]=0;H[d+56>>2]=0;H[d+60>>2]=0;c=d- -64|0;H[c>>2]=0;H[c+4>>2]=0;H[d+72>>2]=0;H[d+76>>2]=0;H[d+80>>2]=0;H[d+84>>2]=0;H[d+660>>2]=0;H[d+388>>2]=0;H[d+380>>2]=0;H[d+384>>2]=1024;H[d+372>>2]=64;H[d+376>>2]=32;H[d+364>>2]=d+104;F[d+360|0]=1;F[d+652|0]=1;H[d+656>>2]=d+396;H[d+680>>2]=0;H[d+952>>2]=0;H[d+664>>2]=64;H[d+668>>2]=32;H[d+672>>2]=0;H[d+676>>2]=2048;H[d+972>>2]=0;H[d+976>>2]=0;H[d+964>>2]=0;H[d+968>>2]=4096;H[d+956>>2]=64;H[d+960>>2]=32;H[d+948>>2]=d+688;F[d+944|0]=1;H[d+1020>>2]=0;H[d+1024>>2]=0;c=d+1028|0;H[c>>2]=0;H[c+4>>2]=0;c=d+1036|0;H[c>>2]=0;H[c+4>>2]=0;c=d+1044|0;H[c>>2]=0;H[c+4>>2]=0;H[d+1068>>2]=0;H[d+1072>>2]=0;H[d+1064>>2]=1;c=d+1076|0;H[c>>2]=0;H[c+4>>2]=0;H[d+1092>>2]=0;H[d+1096>>2]=0;c=d+1084|0;H[c>>2]=0;H[c+4>>2]=1;c=d+1100|0;H[c>>2]=0;H[c+4>>2]=0;c=d+1108|0;H[c>>2]=0;H[c+4>>2]=0;H[d+1116>>2]=0;c=d+1128|0;H[c>>2]=0;H[c+4>>2]=0;c=d+1120|0;H[c>>2]=1061158912;H[c+4>>2]=-1;xg(d+1096|0,64);H[d+1188>>2]=0;c=d+1180|0;H[c>>2]=0;H[c+4>>2]=0;c=d+1172|0;H[c>>2]=0;H[c+4>>2]=0;c=d+1164|0;H[c>>2]=0;H[c+4>>2]=0;H[d+1156>>2]=0;H[d+1160>>2]=0;H[d+1196>>2]=0;H[d+1200>>2]=0;c=d+1204|0;H[c>>2]=0;H[c+4>>2]=0;c=d+1212|0;H[c>>2]=0;H[c+4>>2]=0;H[d+1220>>2]=0;c=d+1232|0;H[c>>2]=0;H[c+4>>2]=0;c=d+1224|0;H[c>>2]=1061158912;H[c+4>>2]=-1;xg(d+1200|0,64);c=d+1264|0;H[c>>2]=0;H[c+4>>2]=0;c=d+1256|0;H[c>>2]=0;H[c+4>>2]=0;c=d+1248|0;H[c>>2]=0;H[c+4>>2]=0;H[d+1240>>2]=0;H[d+1244>>2]=0;H[d+1288>>2]=0;c=d+1280|0;H[c>>2]=-1;H[c+4>>2]=0;c=d+1272|0;H[c>>2]=0;H[c+4>>2]=1061158912;xg(d+1252|0,64);H[d+1852>>2]=0;c=d+1576|0;H[c>>2]=8192;H[c+4>>2]=0;c=d+1568|0;H[c>>2]=64;H[c+4>>2]=0;H[d+1556>>2]=d+1296;F[d+1552|0]=1;c=d+1560|0;H[c>>2]=0;H[c+4>>2]=64;H[d+2144>>2]=0;H[d+1872>>2]=0;c=d+1864|0;H[c>>2]=0;H[c+4>>2]=8192;c=d+1856|0;H[c>>2]=64;H[c+4>>2]=32;H[d+1848>>2]=d+1588;F[d+1844|0]=1;c=d+2164|0;H[c>>2]=0;H[c+4>>2]=0;c=d+2156|0;H[c>>2]=0;H[c+4>>2]=8192;c=d+2148|0;H[c>>2]=64;H[c+4>>2]=21;H[d+2140>>2]=d+1880;F[d+2136|0]=1;H[d+2192>>2]=H[b+40>>2];c=H[b+44>>2];H[d+2200>>2]=0;H[d+2204>>2]=0;H[d+2196>>2]=c;c=d+2208|0;H[c>>2]=0;H[c+4>>2]=0;c=d+2216|0;H[c>>2]=0;H[c+4>>2]=0;c=d+2232|0;H[c>>2]=0;H[c+4>>2]=0;c=d+2224|0;H[c>>2]=1061158912;H[c+4>>2]=-1;xg(d+2200|0,64);c=d+2256|0;H[c>>2]=0;H[c+4>>2]=0;c=d+2248|0;H[c>>2]=0;H[c+4>>2]=0;H[d+2240>>2]=0;H[d+2244>>2]=0;c=d+2272|0;H[c>>2]=0;H[c+4>>2]=0;c=d+2264|0;H[c>>2]=1061158912;H[c+4>>2]=-1;xg(d+2240|0,64);c=H[b+112>>2];H[d+2356>>2]=0;F[d+2282|0]=c>>>10&1;f=S6(d+2284|0,0,68);e=d+2728|0;H[e>>2]=0;H[e+4>>2]=0;H[d+2672>>2]=0;H[d+2664>>2]=0;H[d+2668>>2]=0;F[d+2660|0]=0;H[d+2656>>2]=0;H[d+2444>>2]=0;H[d+2448>>2]=0;H[d+2380>>2]=0;H[d+2360>>2]=c;H[d+2416>>2]=0;H[d+2420>>2]=0;c=d+2424|0;H[c>>2]=0;H[c+4>>2]=0;c=d+2432|0;H[c>>2]=0;H[c+4>>2]=0;S6(d+2456|0,0,68);H[d+2752>>2]=0;H[d+2756>>2]=0;H[d+2736>>2]=0;c=d+2720|0;H[c>>2]=h;H[c+4>>2]=0;H[d+2744>>2]=18183;H[d+2740>>2]=d;H[d+2712>>2]=120420;e=d+2760|0;c=e;H[c>>2]=0;H[c+4>>2]=0;H[d+2768>>2]=0;H[d+2776>>2]=18159;c=d+2804|0;H[c>>2]=0;H[c+4>>2]=4;H[d+2800>>2]=d+2780;F[d+2796|0]=1;F[d+2844|0]=0;c=d+2836|0;H[c>>2]=0;H[c+4>>2]=4;H[d+2832>>2]=d+2812;F[d+2828|0]=1;H[d+2752>>2]=110940;H[d+2772>>2]=0;c=H[33808];g=Ra[H[H[c>>2]+20>>2]](c)|0?33606:55639;u=d+2848|0,v=Ra[H[H[c+12>>2]+8>>2]](c+12|0,28,g,13721,113)|0,H[u>>2]=v;c=Oa-16|0;Oa=c;Oa=c+16|0;H[d+2856>>2]=0;H[d+2860>>2]=0;H[d+2852>>2]=d;H[d+2752>>2]=120496;H[e>>2]=h;H[e+4>>2]=0;c=d+2864|0;H[c>>2]=0;H[c+4>>2]=0;H[d+2872>>2]=0;H[d+2876>>2]=0;H[d+2880>>2]=18240;e=d+2908|0;H[e>>2]=0;H[e+4>>2]=4;H[d+2904>>2]=d+2884;F[d+2900|0]=1;F[d+2948|0]=0;e=d+2940|0;H[e>>2]=0;H[e+4>>2]=4;H[d+2936>>2]=d+2916;F[d+2932|0]=1;H[d+2856>>2]=110940;e=H[33808];g=H[33808];u=d+2952|0,v=(x=e+12|0,y=28,z=Ra[H[H[g>>2]+20>>2]](g)|0?33606:55639,A=13721,B=113,w=H[H[e+12>>2]+8>>2],Ra[w](x|0,y|0,z|0,A|0,B|0)|0),H[u>>2]=v;e=Oa-16|0;Oa=e;Oa=e+16|0;H[d+2984>>2]=0;e=d+2976|0;H[e>>2]=0;H[e+4>>2]=0;H[d+2956>>2]=d;H[d+2856>>2]=120572;H[c>>2]=h;H[c+4>>2]=0;c=d+2968|0;H[c>>2]=h;H[c+4>>2]=0;c=d+3096|0;H[c>>2]=0;H[c+4>>2]=0;H[d+2992>>2]=3001;H[d+2988>>2]=d;H[d+2960>>2]=120648;S6(d+3e3|0,0,72);H[d+3104>>2]=0;H[d+3144>>2]=0;H[d+3184>>2]=0;H[d+3224>>2]=0;c=d+3088|0;H[c>>2]=h;H[c+4>>2]=0;c=d+3136|0;H[c>>2]=0;H[c+4>>2]=0;H[d+3112>>2]=11561;H[d+3108>>2]=d;H[d+3080>>2]=120724;c=d+3128|0;H[c>>2]=h;H[c+4>>2]=0;c=d+3176|0;H[c>>2]=0;H[c+4>>2]=0;H[d+3152>>2]=11523;H[d+3148>>2]=d;H[d+3120>>2]=120800;c=d+3168|0;H[c>>2]=h;H[c+4>>2]=0;c=d+3216|0;H[c>>2]=0;H[c+4>>2]=0;H[d+3192>>2]=3999;H[d+3188>>2]=d;H[d+3160>>2]=120876;H[d+3264>>2]=0;H[d+3200>>2]=120952;c=d+3208|0;H[c>>2]=h;H[c+4>>2]=0;H[d+3228>>2]=d;H[d+3232>>2]=3975;c=d+3256|0;H[c>>2]=0;H[c+4>>2]=0;c=d+3248|0;H[c>>2]=h;H[c+4>>2]=0;H[d+3240>>2]=121028;H[d+3268>>2]=d;H[d+3272>>2]=3655;c=d+3296|0;H[c>>2]=0;H[c+4>>2]=0;H[d+3304>>2]=0;c=d+3288|0;H[c>>2]=h;H[c+4>>2]=0;H[d+3344>>2]=0;c=d+3336|0;H[c>>2]=0;H[c+4>>2]=0;H[d+3312>>2]=4226;H[d+3308>>2]=d;H[d+3280>>2]=121104;c=d+3328|0;H[c>>2]=h;H[c+4>>2]=0;H[d+3384>>2]=0;c=d+3376|0;H[c>>2]=0;H[c+4>>2]=0;H[d+3352>>2]=3711;H[d+3348>>2]=d;H[d+3320>>2]=121180;c=d+3368|0;H[c>>2]=h;H[c+4>>2]=0;H[d+3424>>2]=0;c=d+3416|0;H[c>>2]=0;H[c+4>>2]=0;H[d+3392>>2]=2683;H[d+3388>>2]=d;H[d+3360>>2]=121256;c=d+3408|0;H[c>>2]=h;H[c+4>>2]=0;H[d+3464>>2]=0;c=d+3456|0;H[c>>2]=0;H[c+4>>2]=0;H[d+3432>>2]=55809;H[d+3428>>2]=d;H[d+3400>>2]=121332;c=d+3448|0;H[c>>2]=h;H[c+4>>2]=0;H[d+3504>>2]=0;c=d+3496|0;H[c>>2]=0;H[c+4>>2]=0;H[d+3472>>2]=55667;H[d+3468>>2]=d;H[d+3440>>2]=121408;c=d+3488|0;H[c>>2]=h;H[c+4>>2]=0;H[d+3544>>2]=0;c=d+3536|0;H[c>>2]=0;H[c+4>>2]=0;H[d+3512>>2]=3120;H[d+3508>>2]=d;H[d+3480>>2]=121484;c=d+3528|0;H[c>>2]=h;H[c+4>>2]=0;H[d+3584>>2]=0;c=d+3576|0;H[c>>2]=0;H[c+4>>2]=0;H[d+3552>>2]=2749;H[d+3548>>2]=d;H[d+3520>>2]=121560;c=d+3568|0;H[c>>2]=h;H[c+4>>2]=0;H[d+3624>>2]=0;c=d+3616|0;H[c>>2]=0;H[c+4>>2]=0;H[d+3592>>2]=3211;H[d+3588>>2]=d;H[d+3560>>2]=121636;c=d+3608|0;H[c>>2]=h;H[c+4>>2]=0;H[d+3664>>2]=0;c=d+3656|0;H[c>>2]=0;H[c+4>>2]=0;H[d+3632>>2]=12549;H[d+3628>>2]=d;H[d+3600>>2]=121712;c=d+3648|0;H[c>>2]=h;H[c+4>>2]=0;H[d+3704>>2]=0;c=d+3696|0;H[c>>2]=0;H[c+4>>2]=0;H[d+3672>>2]=2843;H[d+3668>>2]=d;H[d+3640>>2]=121788;c=d+3688|0;H[c>>2]=h;H[c+4>>2]=0;H[d+3744>>2]=0;c=d+3736|0;H[c>>2]=0;H[c+4>>2]=0;H[d+3712>>2]=12454;H[d+3708>>2]=d;H[d+3680>>2]=121864;c=d+3728|0;H[c>>2]=h;H[c+4>>2]=0;H[d+3784>>2]=0;c=d+3776|0;H[c>>2]=0;H[c+4>>2]=0;H[d+3752>>2]=11766;H[d+3748>>2]=d;H[d+3720>>2]=121940;c=d+3768|0;H[c>>2]=h;H[c+4>>2]=0;H[d+3824>>2]=0;c=d+3816|0;H[c>>2]=0;H[c+4>>2]=0;H[d+3792>>2]=11748;H[d+3788>>2]=d;H[d+3760>>2]=122016;c=d+3808|0;H[c>>2]=h;H[c+4>>2]=0;H[d+3864>>2]=0;c=d+3856|0;H[c>>2]=0;H[c+4>>2]=0;H[d+3832>>2]=18127;H[d+3828>>2]=d;H[d+3800>>2]=122092;c=d+3848|0;H[c>>2]=h;H[c+4>>2]=0;H[d+3904>>2]=0;c=d+3896|0;H[c>>2]=0;H[c+4>>2]=0;H[d+3872>>2]=12938;H[d+3868>>2]=d;H[d+3840>>2]=122168;c=d+3888|0;H[c>>2]=h;H[c+4>>2]=0;H[d+3944>>2]=0;c=d+3936|0;H[c>>2]=0;H[c+4>>2]=0;H[d+3912>>2]=12106;H[d+3908>>2]=d;H[d+3880>>2]=122244;c=d+3928|0;H[c>>2]=h;H[c+4>>2]=0;H[d+3984>>2]=0;c=d+3976|0;H[c>>2]=0;H[c+4>>2]=0;H[d+3952>>2]=12175;H[d+3948>>2]=d;H[d+3920>>2]=122320;c=d+3968|0;H[c>>2]=h;H[c+4>>2]=0;H[d+4024>>2]=0;c=d+4016|0;H[c>>2]=0;H[c+4>>2]=0;H[d+3992>>2]=18098;H[d+3988>>2]=d;H[d+3960>>2]=122396;c=d+4008|0;H[c>>2]=h;H[c+4>>2]=0;H[d+4064>>2]=0;c=d+4056|0;H[c>>2]=0;H[c+4>>2]=0;H[d+4032>>2]=18213;H[d+4028>>2]=d;H[d+4e3>>2]=122472;c=d+4048|0;H[c>>2]=h;H[c+4>>2]=0;H[d+4104>>2]=0;c=d+4096|0;H[c>>2]=0;H[c+4>>2]=0;H[d+4072>>2]=18285;H[d+4068>>2]=d;H[d+4040>>2]=122548;c=d+4088|0;H[c>>2]=h;H[c+4>>2]=0;H[d+4144>>2]=0;c=d+4136|0;H[c>>2]=0;H[c+4>>2]=0;H[d+4112>>2]=1989;H[d+4108>>2]=d;H[d+4080>>2]=122624;c=d+4128|0;H[c>>2]=h;H[c+4>>2]=0;H[d+4152>>2]=55837;H[d+4148>>2]=d;H[d+4120>>2]=122700;H[d+4176>>2]=0;c=d+4168|0;H[c>>2]=0;H[c+4>>2]=0;H[d+4160>>2]=0;H[d+4164>>2]=0;H[d+4180>>2]=0;H[d+4160>>2]=110940;H[d+4212>>2]=0;H[d+4184>>2]=55695;H[d+4244>>2]=0;H[d+4216>>2]=4;H[d+4208>>2]=d+4188;F[d+4204|0]=1;F[d+4252|0]=0;H[d+4248>>2]=4;H[d+4240>>2]=d+4220;F[d+4236|0]=1;e=H[33808];g=H[33808];u=d+4256|0,v=(B=e+12|0,A=28,z=Ra[H[H[g>>2]+20>>2]](g)|0?33606:55639,y=13721,x=113,w=H[H[e+12>>2]+8>>2],Ra[w](B|0,A|0,z|0,y|0,x|0)|0),H[u>>2]=v;e=Oa-16|0;Oa=e;Oa=e+16|0;H[d+4288>>2]=0;H[d+4328>>2]=0;H[d+4368>>2]=0;e=d+4280|0;H[e>>2]=0;H[e+4>>2]=0;H[d+4260>>2]=d;H[d+4160>>2]=122776;H[c>>2]=h;H[c+4>>2]=0;c=d+4272|0;H[c>>2]=h;H[c+4>>2]=0;c=d+4320|0;H[c>>2]=0;H[c+4>>2]=0;H[d+4296>>2]=3176;H[d+4292>>2]=d;H[d+4264>>2]=122852;c=d+4312|0;H[c>>2]=h;H[c+4>>2]=0;c=d+4360|0;H[c>>2]=0;H[c+4>>2]=0;H[d+4336>>2]=11337;H[d+4332>>2]=d;H[d+4304>>2]=122928;c=d+4352|0;H[c>>2]=h;H[c+4>>2]=0;H[d+4408>>2]=0;c=d+4400|0;H[c>>2]=0;H[c+4>>2]=0;H[d+4376>>2]=3144;H[d+4372>>2]=d;H[d+4344>>2]=123004;c=d+4392|0;H[c>>2]=h;H[c+4>>2]=0;H[d+4448>>2]=0;c=d+4440|0;H[c>>2]=0;H[c+4>>2]=0;H[d+4416>>2]=3242;H[d+4412>>2]=d;H[d+4384>>2]=123080;c=d+4432|0;H[c>>2]=h;H[c+4>>2]=0;H[d+4488>>2]=0;c=d+4480|0;H[c>>2]=0;H[c+4>>2]=0;H[d+4456>>2]=3318;H[d+4452>>2]=d;H[d+4424>>2]=123156;c=d+4472|0;H[c>>2]=h;H[c+4>>2]=0;H[d+4528>>2]=0;c=d+4520|0;H[c>>2]=0;H[c+4>>2]=0;H[d+4496>>2]=18266;H[d+4492>>2]=d;H[d+4464>>2]=123232;c=d+4512|0;H[c>>2]=h;H[c+4>>2]=0;H[d+4568>>2]=0;c=d+4560|0;H[c>>2]=0;H[c+4>>2]=0;H[d+4536>>2]=11049;H[d+4532>>2]=d;H[d+4504>>2]=123308;c=d+4552|0;H[c>>2]=h;H[c+4>>2]=0;H[d+4576>>2]=11029;H[d+4572>>2]=d;H[d+4544>>2]=123384;g=yt(d+4584|0);H[d+4624>>2]=0;H[d+4628>>2]=0;G[d+4620>>1]=0;c=d+4632|0;H[c>>2]=0;H[c+4>>2]=0;e=d+4640|0;H[e>>2]=0;H[e+4>>2]=0;e=d+4648|0;H[e>>2]=0;H[e+4>>2]=0;e=d+4664|0;H[e>>2]=0;H[e+4>>2]=0;e=d+4656|0;H[e>>2]=1061158912;H[e+4>>2]=-1;xg(c,64);H[d+4736>>2]=0;H[d+4740>>2]=0;H[d+996>>2]=0;H[d+88>>2]=0;H[d+92>>2]=0;H[d+96>>2]=0;H[d+4672>>2]=0;H[d+4676>>2]=0;c=d+4680|0;H[c>>2]=0;H[c+4>>2]=0;c=d+4688|0;H[c>>2]=0;H[c+4>>2]=0;c=d+4696|0;H[c>>2]=0;H[c+4>>2]=0;c=d+4704|0;H[c>>2]=0;H[c+4>>2]=0;c=d+4712|0;H[c>>2]=0;H[c+4>>2]=0;c=d+4720|0;H[c>>2]=0;H[c+4>>2]=0;H[d+4728>>2]=0;c=H[33808];e=H[33808];c=(v=c+12|0,w=156,x=Ra[H[H[e>>2]+20>>2]](e)|0?26022:55639,y=9345,z=645,u=H[H[c+12>>2]+8>>2],Ra[u](v|0,w|0,x|0,y|0,z|0)|0);S6(c,0,156);H[d+2352>>2]=c;c=H[33808];e=H[33808];c=(z=c+12|0,y=44,x=Ra[H[H[e>>2]+20>>2]](e)|0?28950:55639,w=9345,v=646,u=H[H[c+12>>2]+8>>2],Ra[u](z|0,y|0,x|0,w|0,v|0)|0);H[c+40>>2]=0;H[c+32>>2]=0;H[c+36>>2]=0;H[c+4>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+24>>2]=0;H[d+2364>>2]=c;c=H[33808];e=H[33808];c=(v=c+12|0,w=44,x=Ra[H[H[e>>2]+20>>2]](e)|0?28950:55639,y=9345,z=647,u=H[H[c+12>>2]+8>>2],Ra[u](v|0,w|0,x|0,y|0,z|0)|0);H[c+40>>2]=0;H[c+32>>2]=0;H[c+36>>2]=0;H[c+4>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+24>>2]=0;H[d+2368>>2]=c;c=H[33808];e=H[33808];c=(z=c+12|0,y=44,x=Ra[H[H[e>>2]+20>>2]](e)|0?28950:55639,w=9345,v=648,u=H[H[c+12>>2]+8>>2],Ra[u](z|0,y|0,x|0,w|0,v|0)|0);H[c+40>>2]=0;H[c+32>>2]=0;H[c+36>>2]=0;H[c+4>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+24>>2]=0;H[d+2372>>2]=c;c=H[33808];e=H[33808];c=(v=c+12|0,w=44,x=Ra[H[H[e>>2]+20>>2]](e)|0?28950:55639,y=9345,z=649,u=H[H[c+12>>2]+8>>2],Ra[u](v|0,w|0,x|0,y|0,z|0)|0);H[c+40>>2]=0;H[c+32>>2]=0;H[c+36>>2]=0;H[c+4>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+24>>2]=0;H[d+2376>>2]=c;c=H[33808];c=Ra[H[H[c+12>>2]+8>>2]](c+12|0,12,20591,9345,651)|0;H[d+1192>>2]=c;H[c+8>>2]=0;H[c+4>>2]=0;H[c>>2]=0;c=H[33808];e=H[33808];c=(z=c+12|0,y=32,x=Ra[H[H[e>>2]+20>>2]](e)|0?43898:55639,w=9345,v=654,u=H[H[c+12>>2]+8>>2],Ra[u](z|0,y|0,x|0,w|0,v|0)|0);H[c+8>>2]=0;H[c+12>>2]=0;H[c+4>>2]=52;H[c>>2]=64;H[c+28>>2]=11821;F[c+24|0]=1;H[c+16>>2]=0;H[c+20>>2]=0;H[l+8>>2]=0;H[l>>2]=0;H[l+4>>2]=0;e=H[33808];i=Ra[H[H[e+12>>2]+8>>2]](e+12|0,3328,20591,15520,60)|0;e=H[c+16>>2];o=H[c+20>>2];H[l>>2]=i;a:{if(e>>>0>=(o&2147483647)>>>0){JN(c+12|0,l);break a}i=H[l+4>>2];e=H[c+12>>2]+N(e,12)|0;H[e>>2]=H[l>>2];H[e+4>>2]=i;H[e+8>>2]=H[l+8>>2];H[c+16>>2]=H[c+16>>2]+1}H[d+2388>>2]=c;c=H[33808];e=Ra[H[H[c>>2]+20>>2]](c)|0?43556:55639;c=Ra[H[H[c+12>>2]+8>>2]](c+12|0,32,e,9345,655)|0;H[c+8>>2]=0;H[c+12>>2]=0;H[c>>2]=64;H[c+4>>2]=176;H[c+28>>2]=11804;F[c+24|0]=1;H[c+16>>2]=0;H[c+20>>2]=0;H[l+8>>2]=0;H[l>>2]=0;H[l+4>>2]=0;e=H[33808];i=Ra[H[H[e+12>>2]+8>>2]](e+12|0,11264,20591,15520,60)|0;e=H[c+16>>2];o=H[c+20>>2];H[l>>2]=i;b:{if(e>>>0>=(o&2147483647)>>>0){JN(c+12|0,l);break b}i=H[l+4>>2];e=H[c+12>>2]+N(e,12)|0;H[e>>2]=H[l>>2];H[e+4>>2]=i;H[e+8>>2]=H[l+8>>2];H[c+16>>2]=H[c+16>>2]+1}H[d+2392>>2]=c;c=H[33808];e=Ra[H[H[c>>2]+20>>2]](c)|0?43726:55639;c=Ra[H[H[c+12>>2]+8>>2]](c+12|0,32,e,9345,656)|0;H[c+8>>2]=0;H[c+12>>2]=0;H[c>>2]=64;H[c+4>>2]=40;H[c+28>>2]=11812;F[c+24|0]=1;H[c+16>>2]=0;H[c+20>>2]=0;H[l+8>>2]=0;H[l>>2]=0;H[l+4>>2]=0;e=H[33808];i=Ra[H[H[e+12>>2]+8>>2]](e+12|0,2560,20591,15520,60)|0;e=H[c+16>>2];o=H[c+20>>2];H[l>>2]=i;c:{if(e>>>0>=(o&2147483647)>>>0){JN(c+12|0,l);break c}i=H[l+4>>2];e=H[c+12>>2]+N(e,12)|0;H[e>>2]=H[l>>2];H[e+4>>2]=i;H[e+8>>2]=H[l+8>>2];H[c+16>>2]=H[c+16>>2]+1}H[d+2384>>2]=c;c=H[33808];e=Ra[H[H[c>>2]+20>>2]](c)|0?44848:55639;c=Ra[H[H[c+12>>2]+8>>2]](c+12|0,292,e,9345,657)|0;H[c+284>>2]=2560;H[c+288>>2]=0;H[c+276>>2]=32;H[c+280>>2]=0;F[c+260|0]=1;H[c+268>>2]=0;H[c+272>>2]=64;H[c+264>>2]=c+4;H[d+2396>>2]=c;c=H[33808];e=H[33808];c=(v=c+12|0,w=292,x=Ra[H[H[e>>2]+20>>2]](e)|0?44528:55639,y=9345,z=658,u=H[H[c+12>>2]+8>>2],Ra[u](v|0,w|0,x|0,y|0,z|0)|0);H[c+284>>2]=1024;H[c+288>>2]=0;H[c+276>>2]=32;H[c+280>>2]=0;F[c+260|0]=1;H[c+268>>2]=0;H[c+272>>2]=64;H[c+264>>2]=c+4;H[d+2408>>2]=c;c=H[33808];e=H[33808];c=(z=c+12|0,y=292,x=Ra[H[H[e>>2]+20>>2]](e)|0?34094:55639,w=9345,v=659,u=H[H[c+12>>2]+8>>2],Ra[u](z|0,y|0,x|0,w|0,v|0)|0);H[c+284>>2]=6144;H[c+288>>2]=0;H[c+276>>2]=32;H[c+280>>2]=0;F[c+260|0]=1;H[c+268>>2]=0;H[c+272>>2]=64;H[c+264>>2]=c+4;H[d+2400>>2]=c;c=H[33808];e=H[33808];c=(v=c+12|0,w=292,x=Ra[H[H[e>>2]+20>>2]](e)|0?34226:55639,y=9345,z=660,u=H[H[c+12>>2]+8>>2],Ra[u](v|0,w|0,x|0,y|0,z|0)|0);H[c+284>>2]=22528;H[c+288>>2]=0;H[c+276>>2]=32;H[c+280>>2]=0;F[c+260|0]=1;H[c+268>>2]=0;H[c+272>>2]=64;H[c+264>>2]=c+4;H[d+2404>>2]=c;c=H[33808];e=H[33808];c=(z=c+12|0,y=292,x=Ra[H[H[e>>2]+20>>2]](e)|0?45136:55639,w=9345,v=662,u=H[H[c+12>>2]+8>>2],Ra[u](z|0,y|0,x|0,w|0,v|0)|0);H[c+284>>2]=2048;H[c+288>>2]=0;H[c+276>>2]=32;H[c+280>>2]=0;F[c+260|0]=1;H[c+268>>2]=0;H[c+272>>2]=64;H[c+264>>2]=c+4;H[d+2412>>2]=c;c=H[33808];e=H[33808];e=(v=c+12|0,w=1,x=Ra[H[H[e>>2]+20>>2]](e)|0?25516:55639,y=9345,z=664,u=H[H[c+12>>2]+8>>2],Ra[u](v|0,w|0,x|0,y|0,z|0)|0);H[l>>2]=e;c=H[d+2288>>2];d:{if(c>>>0>=(H[d+2292>>2]&2147483647)>>>0){KN(f,l);break d}H[H[d+2284>>2]+(c<<2)>>2]=e;H[d+2288>>2]=c+1}c=H[33808];e=Ra[H[H[c>>2]+20>>2]](c)|0?30018:55639;c=Ra[H[H[c+12>>2]+8>>2]](c+12|0,376,e,9345,665)|0;H[c+292>>2]=0;H[c+296>>2]=0;H[c+288>>2]=1536;H[c+280>>2]=32;H[c+284>>2]=0;H[c+268>>2]=c+8;F[c+264|0]=1;H[c+272>>2]=0;H[c+276>>2]=64;H[c+300>>2]=0;H[c+304>>2]=0;H[c+308>>2]=0;H[c+312>>2]=0;H[c+316>>2]=0;H[c+328>>2]=0;H[c+332>>2]=0;H[c+320>>2]=1061158912;H[c+324>>2]=-1;xg(c+296|0,64);H[c+352>>2]=0;H[c+356>>2]=0;H[c+344>>2]=0;H[c+348>>2]=0;H[c+336>>2]=0;H[c+340>>2]=0;H[c+368>>2]=0;H[c+372>>2]=0;H[c+360>>2]=1061158912;H[c+364>>2]=-1;xg(c+336|0,64);H[d+1136>>2]=c;c=H[33808];e=H[33808];c=(z=c+12|0,y=48,x=Ra[H[H[e>>2]+20>>2]](e)|0?29612:55639,w=9345,v=667,u=H[H[c+12>>2]+8>>2],Ra[u](z|0,y|0,x|0,w|0,v|0)|0);H[c>>2]=0;H[c+4>>2]=0;H[c+40>>2]=0;H[c+44>>2]=0;H[c+32>>2]=0;H[c+36>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;H[d+1152>>2]=c;c=H[33808];e=Ra[H[H[c>>2]+4>>2]](c)|0;f=H[b+116>>2];c=H[33808];i=Ra[H[H[c>>2]+20>>2]](c)|0?28078:55639;c=Ra[H[H[c+12>>2]+8>>2]](c+12|0,96,i,7135,144)|0;H[c+12>>2]=0;H[c+16>>2]=0;H[c+8>>2]=f;H[c+4>>2]=e;H[c>>2]=116212;H[c+44>>2]=0;H[c+48>>2]=0;H[c+36>>2]=1061158912;H[c+40>>2]=-1;H[c+20>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+32>>2]=0;ZI(c+12|0,64);H[c+52>>2]=0;e=H[33808];f=H[33808];u=c,v=(x=e+12|0,y=28,z=Ra[H[H[f>>2]+20>>2]](f)|0?33606:55639,A=13721,B=113,w=H[H[e+12>>2]+8>>2],Ra[w](x|0,y|0,z|0,A|0,B|0)|0),H[u+56>>2]=v;e=Oa-16|0;Oa=e;Oa=e+16|0;H[c+92>>2]=0;H[c+84>>2]=0;H[c+88>>2]=0;H[c+76>>2]=0;H[c+80>>2]=0;H[c+68>>2]=0;H[c+72>>2]=0;H[c+60>>2]=0;H[c+64>>2]=0;H[d+4612>>2]=c;c=H[b+120>>2];e=d+2676|0;H[e>>2]=0;H[e+4>>2]=0;H[d+4616>>2]=c;c=d+2684|0;H[c>>2]=0;H[c+4>>2]=0;c=d+2692|0;H[c>>2]=0;H[c+4>>2]=0;H[d+2700>>2]=0;F[d+4621|0]=0;c=H[33808];e=H[33808];c=(v=c+12|0,w=1840,B=Ra[H[H[e>>2]+20>>2]](e)|0?22694:55639,A=9345,z=710,u=H[H[c+12>>2]+8>>2],Ra[u](v|0,w|0,B|0,A|0,z|0)|0);i=H[d+4612>>2];o=H[d+4616>>2];m=AF(c);f=H[33808];n=Ra[H[H[f>>2]+20>>2]](f)|0?33606:55639;e=c+24|0;u=e,z=Ra[H[H[f+12>>2]+8>>2]](f+12|0,28,n,13721,113)|0,H[u>>2]=z;f=Oa-16|0;Oa=f;Oa=f+16|0;S6(e+4|0,0,144);H[e+160>>2]=0;H[e+164>>2]=0;H[e+152>>2]=0;H[e+156>>2]=0;H[e+172>>2]=0;H[e+176>>2]=0;H[e+168>>2]=m;H[c+296>>2]=0;H[c+288>>2]=0;H[c+280>>2]=0;H[c+284>>2]=0;H[c+212>>2]=110736;H[c+204>>2]=0;H[c+208>>2]=0;H[c+216>>2]=0;H[c+220>>2]=0;H[c+224>>2]=0;H[c+228>>2]=0;H[c+232>>2]=0;H[c+236>>2]=0;H[c+240>>2]=0;H[c+244>>2]=0;H[c+248>>2]=0;H[c+252>>2]=0;H[c+256>>2]=0;H[c+260>>2]=0;H[c+264>>2]=0;H[c+268>>2]=0;F[c+269|0]=0;F[c+270|0]=0;F[c+271|0]=0;F[c+272|0]=0;F[c+273|0]=0;F[c+274|0]=0;F[c+275|0]=0;F[c+276|0]=0;f=H[33808];m=Ra[H[H[f>>2]+20>>2]](f)|0?33728:55639;f=Ra[H[H[f+12>>2]+8>>2]](f+12|0,28,m,13871,103)|0;H[c+304>>2]=f;H[f>>2]=0;H[c+340>>2]=0;H[c+344>>2]=0;H[c+336>>2]=c;H[c+328>>2]=0;H[c+332>>2]=0;H[c+312>>2]=256;H[c+316>>2]=0;H[c+308>>2]=c;H[c+620>>2]=0;H[c+320>>2]=8;H[c+324>>2]=0;H[c+912>>2]=0;H[c+640>>2]=0;H[c+632>>2]=0;H[c+636>>2]=69632;H[c+624>>2]=64;H[c+628>>2]=256;H[c+616>>2]=c+356;F[c+612|0]=1;F[c+904|0]=1;H[c+908>>2]=c+648;H[c+940>>2]=0;H[c+916>>2]=64;H[c+920>>2]=256;H[c+924>>2]=0;H[c+928>>2]=32768;H[c+932>>2]=0;H[c+936>>2]=0;H[c+948>>2]=0;H[c+952>>2]=0;H[c+960>>2]=0;H[c+964>>2]=0;H[c+972>>2]=0;H[c+976>>2]=0;H[c+984>>2]=0;H[c+988>>2]=0;f=H[33808];m=H[33808];u=c,z=(B=f+12|0,w=28,v=Ra[H[H[m>>2]+20>>2]](m)|0?33606:55639,y=13721,x=113,A=H[H[f+12>>2]+8>>2],Ra[A](B|0,w|0,v|0,y|0,x|0)|0),H[u+1016>>2]=z;f=Oa-16|0;Oa=f;Oa=f+16|0;H[c+1160>>2]=o;H[c+1156>>2]=g;H[c+1152>>2]=i;H[c+1028>>2]=0;H[c+1020>>2]=0;H[c+1024>>2]=0;S6(c+1164|0,0,648);f=H[b+112>>2];H[c+1832>>2]=h;H[c+1836>>2]=0;F[c+1813|0]=0;F[c+1814|0]=f>>>11&1;F[c+1812|0]=f>>>6&1;S6(H[c+972>>2],0,H[c+976>>2]<<2);S6(H[c+984>>2],0,H[c+988>>2]<<2);H[c+1012>>2]=0;H[c+1004>>2]=0;H[c+1008>>2]=0;H[c+996>>2]=0;H[c+1e3>>2]=0;f=c+1144|0;H[f>>2]=2122317823;H[f+4>>2]=2122317823;f=c+1136|0;H[f>>2]=-25165825;H[f+4>>2]=2122317823;H[c+1128>>2]=-25165825;H[c+1132>>2]=-25165825;S6(c+1032|0,0,96);f=H[b+156>>2];g=H[b+152>>2];H[e+148>>2]=g;H[e+144>>2]=f;f=g>>>0>64?g:64;if(f>>>0>(H[e+12>>2]&2147483647)>>>0){Ex(e+4|0,f)}if(!(H[e+108>>2]&2147483632)){Fx(e+100|0,16)}if(f>>>0>(H[e+48>>2]&2147483647)>>>0){Ex(e+40|0,f)}if(f>>>0>(H[e+60>>2]&2147483647)>>>0){Ex(e+52|0,f)}if(f>>>0>(H[e+72>>2]&2147483647)>>>0){Ex(e- -64|0,f)}if(f>>>0>(H[e+84>>2]&2147483647)>>>0){Ex(e+76|0,f)}if(f>>>0>(H[e+120>>2]&2147483647)>>>0){Ex(e+112|0,f)}Gx(e,g);H[d+976>>2]=c;H[c+296>>2]=d;H[d+1008>>2]=0;c=H[33808];c=Ra[H[H[c+12>>2]+8>>2]](c+12|0,16,20591,6858,71)|0;H[c+12>>2]=0;H[c+4>>2]=0;H[c+8>>2]=0;H[c>>2]=116396;H[d+1008>>2]=c;f=H[b+80>>2];o=H[b+84>>2];i=H[b- -64>>2];m=H[b+68>>2];e:{f:{g:{h:{c=H[b+48>>2];switch(((c|0)==3?2:c)-1|0){case 0:break g;case 1:break h;default:break f}}c=H[33808];e=Ra[H[H[c>>2]+20>>2]](c)|0?42534:55639;e=Ra[H[H[c+12>>2]+8>>2]](c+12|0,40,e,10647,3401)|0;c=e;H[c+8>>2]=0;H[c+12>>2]=0;H[c>>2]=116488;H[c+16>>2]=0;H[c+20>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+32>>2]=0;H[c+36>>2]=0;c=H[33808];f=Ra[H[H[c>>2]+20>>2]](c)|0?42656:55639;c=Ra[H[H[c+12>>2]+8>>2]](c+12|0,388,f,10647,3102)|0;H[c+40>>2]=0;H[c+44>>2]=0;H[c>>2]=0;H[c+4>>2]=0;H[c+132>>2]=0;H[c+136>>2]=0;H[c+104>>2]=0;H[c+96>>2]=2;H[c+100>>2]=0;H[c+88>>2]=0;H[c+92>>2]=0;H[c+80>>2]=0;H[c+84>>2]=0;H[c+72>>2]=0;H[c+76>>2]=0;f=c- -64|0;H[f>>2]=0;H[f+4>>2]=0;H[c+56>>2]=0;H[c+60>>2]=0;H[c+48>>2]=0;H[c+52>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;H[c+140>>2]=0;H[c+144>>2]=0;H[c+148>>2]=0;H[c+152>>2]=0;H[c+156>>2]=0;H[c+160>>2]=0;H[c+164>>2]=0;H[c+168>>2]=0;H[c+172>>2]=0;H[c+176>>2]=0;H[c+180>>2]=0;H[c+184>>2]=0;OT(c+188|0);H[c+232>>2]=0;H[c+224>>2]=1;H[c+228>>2]=0;S6(c+260|0,0,80);j=c+340|0;f=j;H[f>>2]=0;H[f+4>>2]=0;H[f+24>>2]=0;H[f+16>>2]=0;H[f+20>>2]=0;H[f+8>>2]=0;H[f+12>>2]=0;H[c+384>>2]=0;H[c+376>>2]=0;H[c+380>>2]=0;H[c+368>>2]=0;H[c+372>>2]=0;H[e+4>>2]=c;f=i+m|0;if(f){g=H[c+316>>2];if(g){i=H[33808];Ra[H[H[i+12>>2]+12>>2]](i+12|0,g)}H[c+316>>2]=0;i=f<<2;m=(f|0)!=(f&1073741823)?-1:i;if(m){g=H[33808];n=Ra[H[H[g>>2]+20>>2]](g)|0?25718:55639;g=Ra[H[H[g+12>>2]+8>>2]](g+12|0,m,n,10647,2858)|0}else{g=0}g=S6(g,255,i);H[c+320>>2]=f;H[c+316>>2]=g}_G(j,o);if(!(H[e+16>>2]&2147482624)){aK(e+8|0,1024)}if(!(H[e+28>>2]&2147482624)){aK(e+20|0,1024)}c=e;break e}c=H[33808];e=Ra[H[H[c>>2]+20>>2]](c)|0?42332:55639;c=Ra[H[H[c+12>>2]+8>>2]](c+12|0,136,e,8738,66)|0;H[c+32>>2]=0;H[c+92>>2]=0;H[c+96>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c>>2]=116636;H[c+36>>2]=0;H[c+40>>2]=0;H[c+16>>2]=h;H[c+20>>2]=0;e=c- -64|0;H[e>>2]=0;H[e+4>>2]=0;H[c+8>>2]=116732;H[c+76>>2]=0;H[c+80>>2]=0;H[c+56>>2]=h;H[c+60>>2]=0;H[c+48>>2]=116820;n=c+100|0;e=n;H[e>>2]=0;H[e+4>>2]=0;H[c+108>>2]=0;H[c+112>>2]=0;H[c+116>>2]=0;H[c+120>>2]=0;H[c+124>>2]=0;H[c+128>>2]=0;H[c+72>>2]=0;e=H[33808];g=Ra[H[H[e>>2]+20>>2]](e)|0?42454:55639;g=Ra[H[H[e+12>>2]+8>>2]](e+12|0,4224,g,10568,2956)|0;e=g;H[e+12>>2]=0;H[e+16>>2]=0;H[e+8>>2]=-1;H[e>>2]=0;H[e+4>>2]=-1;H[e+20>>2]=0;H[e+24>>2]=0;H[e+28>>2]=0;H[e+32>>2]=0;H[e+36>>2]=0;H[e+40>>2]=0;H[e+60>>2]=0;H[e+52>>2]=0;H[e+56>>2]=0;H[e+44>>2]=0;H[e+48>>2]=0;S6(e- -64|0,0,3112);H[e+4220>>2]=0;e=e+4212|0;H[e>>2]=0;H[e+4>>2]=0;H[g+4204>>2]=0;H[g+4208>>2]=0;S6(g+3176|0,255,1028);H[c+88>>2]=g;e=i+m|0;i:{if(!f){break i}H[g+16>>2]=0;if(f>>>0<=(H[g+20>>2]&2147483647)>>>0){break i}rK(g+12|0,f)}if(e){H[g+28>>2]=0;if(e>>>0>(H[g+32>>2]&2147483647)>>>0){sK(g+24|0,e)}f=(e>>>5|0)+((e&31)!=0)|0;H[g+4220>>2]=f;i=H[g+4216>>2];if(i){f=H[33808];Ra[H[H[f+12>>2]+12>>2]](f+12|0,i);H[g+4216>>2]=0;f=H[g+4220>>2]}f=f<<2;j:{if(!f){f=0;i=0;break j}i=H[33808];f=Ra[H[H[i+12>>2]+8>>2]](i+12|0,f,20591,10568,254)|0;i=H[g+4220>>2]<<2}H[g+4216>>2]=f;S6(f,0,i);S6(H[g+4216>>2],0,H[g+4220>>2]<<2)}_G(g+36|0,o);if(e){g=e<<2;if(g){f=H[33808];j=Ra[H[H[f+12>>2]+8>>2]](f+12|0,g,20591,10568,2977)|0}f=H[c+96>>2];if(f){R6(j,H[c+92>>2],f<<2);f=H[c+96>>2]}else{f=0}if(f>>>0>>0){f=f<<2;S6(f+j|0,255,g-f|0)}f=H[c+92>>2];if(f){g=H[33808];Ra[H[H[g+12>>2]+12>>2]](g+12|0,f)}H[c+96>>2]=e;H[c+92>>2]=j}if(!(H[c+108>>2]&2147482624)){aK(n,1024)}if(!(H[c+120>>2]&2147482624)){aK(c+112|0,1024)}break e}e=0;c=H[33808];f=Ra[H[H[c>>2]+20>>2]](c)|0?31246:55639;c=Ra[H[H[c+12>>2]+8>>2]](c+12|0,440,f,8738,68)|0;H[c+32>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c>>2]=117020;H[c+16>>2]=h;H[c+20>>2]=0;f=c- -64|0;H[f>>2]=0;H[f+4>>2]=0;H[c+8>>2]=116908;H[c+56>>2]=h;H[c+60>>2]=0;H[c+48>>2]=116964;H[c+72>>2]=0;H[c+216>>2]=0;H[c+220>>2]=0;H[c+248>>2]=0;H[c+252>>2]=0;H[c+240>>2]=0;H[c+244>>2]=0;H[c+232>>2]=0;H[c+236>>2]=0;H[c+224>>2]=0;H[c+228>>2]=0;H[c+312>>2]=0;H[c+360>>2]=0;H[c+304>>2]=0;H[c+308>>2]=0;H[c+352>>2]=0;H[c+356>>2]=0;H[c+332>>2]=0;H[c+324>>2]=0;H[c+328>>2]=0;H[c+316>>2]=0;H[c+320>>2]=-1;H[c+288>>2]=117116;H[c+400>>2]=0;H[c+404>>2]=0;H[c+380>>2]=0;H[c+372>>2]=0;H[c+376>>2]=0;H[c+364>>2]=0;H[c+368>>2]=-1;H[c+336>>2]=117116;H[c+420>>2]=0;H[c+424>>2]=0;H[c+412>>2]=0;H[c+416>>2]=-1;H[c+432>>2]=h;H[c+436>>2]=0;H[c+428>>2]=0;H[c+384>>2]=117116;H[c+408>>2]=0;H[c+392>>2]=h;H[c+396>>2]=0;H[c+344>>2]=h;H[c+348>>2]=0;H[c+296>>2]=h;H[c+300>>2]=0;H[c+188>>2]=0;H[c+192>>2]=0;f=(i+m|0)+31&-32;H[c+128>>2]=f;k:{l:{g=f<<3;m:{if(!g){H[c+132>>2]=0;break m}f=H[33808];u=c,z=Ra[H[H[f+12>>2]+8>>2]](f+12|0,g,20591,7350,69)|0,H[u+132>>2]=z;f=H[c+128>>2];g=(f<<3)+15&-16;if(g){break l}}H[c+136>>2]=0;g=0;break k}f=H[33808];j=Ra[H[H[f+12>>2]+8>>2]](f+12|0,g,20591,7350,70)|0;H[c+136>>2]=j;f=H[c+128>>2];g=(f<<3)+15&-16;if(!g){g=0;break k}f=H[33808];g=Ra[H[H[f+12>>2]+8>>2]](f+12|0,g,20591,7350,71)|0;f=H[c+128>>2];j=H[c+136>>2]}H[c+140>>2]=g;n:{o:{if(f){m=H[c+132>>2];f=0;while(1){i=f<<3;n=i+m|0;H[n>>2]=1073741823;H[n+4>>2]=1073741823;n=i+j|0;H[n>>2]=1073741823;H[n+4>>2]=1073741823;i=g+i|0;H[i>>2]=1073741823;H[i+4>>2]=1073741823;f=f+1|0;i=H[c+128>>2];if(f>>>0>>0){continue}break}f=(i<<1)+2|0;H[c+196>>2]=f;j=c+196|0;g=0;i=i+15&-16;if(i){e=H[33808];e=Ra[H[H[e+12>>2]+8>>2]](e+12|0,i,20591,7350,85)|0;f=H[c+196>>2]}H[c+168>>2]=e;i=(f<<2)+15&-16;if(!i){break n}break o}H[c+168>>2]=0;H[c+196>>2]=2;j=c+196|0;i=16}e=H[33808];g=Ra[H[H[e+12>>2]+8>>2]](e+12|0,i,20591,7350,86)|0;f=H[j>>2]}H[c+172>>2]=g;i=0;e=(f<<3)+15&-16;if(e){f=H[33808];i=Ra[H[H[f+12>>2]+8>>2]](f+12|0,e,20591,7350,87)|0;f=H[j>>2]}H[c+176>>2]=i;e=H[33808];u=c,z=Ra[H[H[e+12>>2]+8>>2]](e+12|0,(f<<2)+15&-16,20591,7350,89)|0,H[u+144>>2]=z;e=H[33808];u=c,z=Ra[H[H[e+12>>2]+8>>2]](e+12|0,(H[c+196>>2]<<2)+15&-16,20591,7350,90)|0,H[u+148>>2]=z;e=H[33808];u=c,z=Ra[H[H[e+12>>2]+8>>2]](e+12|0,(H[c+196>>2]<<2)+15&-16,20591,7350,91)|0,H[u+152>>2]=z;e=H[33808];u=c,z=Ra[H[H[e+12>>2]+8>>2]](e+12|0,(H[c+196>>2]<<2)+15&-16,20591,7350,92)|0,H[u+156>>2]=z;e=H[33808];u=c,z=Ra[H[H[e+12>>2]+8>>2]](e+12|0,(H[c+196>>2]<<2)+15&-16,20591,7350,93)|0,H[u+160>>2]=z;e=H[33808];e=Ra[H[H[e+12>>2]+8>>2]](e+12|0,(H[c+196>>2]<<2)+15&-16,20591,7350,94)|0;H[c+164>>2]=e;f=H[c+160>>2];g=H[c+156>>2];i=H[c+144>>2];H[i>>2]=0;H[g>>2]=1073741822;H[i+4>>2]=-1;H[g+4>>2]=1073741823;g=H[c+148>>2];H[g>>2]=0;H[f>>2]=1073741822;H[g+4>>2]=-1;H[f+4>>2]=1073741823;f=H[c+152>>2];H[f>>2]=0;H[e>>2]=1073741822;H[f+4>>2]=-1;H[e+4>>2]=1073741823;i=H[c+196>>2];e=(i<<2)+15&-16;p:{if(!e){e=0;H[c+180>>2]=0;g=0;break p}f=H[33808];e=Ra[H[H[f+12>>2]+8>>2]](f+12|0,e,20591,7350,104)|0;H[c+180>>2]=e;i=H[c+196>>2];f=(i<<2)+15&-16;if(!f){g=0;break p}e=H[33808];g=Ra[H[H[e+12>>2]+8>>2]](e+12|0,f,20591,7350,105)|0;i=H[c+196>>2];e=H[c+180>>2]}H[c+184>>2]=g;f=1;if(i>>>0>1){while(1){i=f-1|0;H[(i<<2)+e>>2]=f;H[(f<<2)+g>>2]=i;i=H[j>>2];f=f+1|0;if(i>>>0>f>>>0){continue}break}}j=e;e=i-1|0;H[j+(e<<2)>>2]=e;H[g>>2]=0;e=o>>>0>64?o:64;H[c+200>>2]=e;f=(e<<2)+15&-16;q:{if(!f){H[c+216>>2]=0;g=0;break q}g=H[33808];u=c,z=Ra[H[H[g+12>>2]+8>>2]](g+12|0,f,20591,4679,103)|0,H[u+216>>2]=z;g=H[33808];g=Ra[H[H[g+12>>2]+8>>2]](g+12|0,f,20591,4679,104)|0}H[c+220>>2]=g;f=0;g=(e<<3)+15&-16;if(g){j=H[33808];g=Ra[H[H[j+12>>2]+8>>2]](j+12|0,g,20591,4679,105)|0}else{g=0}H[c+236>>2]=g;g=e+15&-16;if(g){f=H[33808];f=Ra[H[H[f+12>>2]+8>>2]](f+12|0,g,20591,4679,106)|0}H[c+248>>2]=e;H[c+232>>2]=e;H[c+228>>2]=e;H[c+240>>2]=f;H[c+412>>2]=c;H[c+364>>2]=c;H[c+428>>2]=0;H[c+416>>2]=2;H[c+420>>2]=0;H[c+316>>2]=c;H[c+380>>2]=0;H[c+368>>2]=1;H[c+372>>2]=0;H[c+332>>2]=0;H[c+320>>2]=0;H[c+324>>2]=0;H[c+212>>2]=0;H[c+204>>2]=0;H[c+208>>2]=0;H[c+256>>2]=0;H[c+260>>2]=0;H[c+120>>2]=0;H[c+264>>2]=0;H[c+268>>2]=0;H[c+272>>2]=0;H[c+276>>2]=0;H[c+280>>2]=0}H[d+984>>2]=c;c=H[d+1008>>2];f=Ra[H[H[c>>2]+8>>2]](c,H[b+240>>2])|0;H[l>>2]=f;c=H[33808];e=Ra[H[H[c>>2]+20>>2]](c)|0?21578:55639;c=Ra[H[H[c+12>>2]+8>>2]](c+12|0,20,e,9345,774)|0;H[c+12>>2]=0;H[c+4>>2]=0;H[c+8>>2]=0;H[c>>2]=f;H[d+1140>>2]=c;c=H[33808];c=Ra[H[H[c+12>>2]+8>>2]](c+12|0,16,20591,9345,776)|0;e=H[l>>2];H[c+12>>2]=0;H[c+4>>2]=0;H[c+8>>2]=0;H[c>>2]=e;F[d+1148|0]=0;H[d+1144>>2]=c;g=H[d+2360>>2];c=H[33808];c=Ra[H[H[c+12>>2]+8>>2]](c+12|0,1240,20591,9345,782)|0;e=Oa-16|0;Oa=e;H[c>>2]=0;H[c+4>>2]=0;H[c+68>>2]=0;H[c+72>>2]=0;H[c+56>>2]=0;H[c+60>>2]=0;H[c+48>>2]=0;H[c+52>>2]=0;H[c+40>>2]=0;H[c+44>>2]=0;H[c+32>>2]=0;H[c+36>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;H[c- -64>>2]=2048;H[c+76>>2]=0;H[c+80>>2]=0;H[c+84>>2]=0;H[c+88>>2]=0;i=c+92|0;H[i>>2]=0;H[i+4>>2]=0;H[c+100>>2]=0;H[c+104>>2]=0;H[c+108>>2]=0;H[c+112>>2]=0;H[c+116>>2]=0;H[c+120>>2]=0;H[c+124>>2]=2048;H[c+144>>2]=0;H[c+136>>2]=0;H[c+140>>2]=0;H[c+128>>2]=0;H[c+132>>2]=0;H[c+156>>2]=0;H[c+148>>2]=2048;H[c+152>>2]=0;j=c+168|0;o=c+80|0;m=c+104|0;i=pE(j,o,m,i,h);m=pE(c+640|0,0,m,0,h);H[c+1136>>2]=0;H[c+1176>>2]=0;n=c+1128|0;H[n>>2]=0;H[n+4>>2]=0;n=c+1120|0;H[n>>2]=h;H[n+4>>2]=0;n=c+1168|0;H[n>>2]=0;H[n+4>>2]=0;H[c+1144>>2]=m;H[c+1140>>2]=c;H[c+1112>>2]=115232;m=c+1160|0;H[m>>2]=h;H[m+4>>2]=0;m=c+1208|0;H[m>>2]=0;H[m+4>>2]=0;H[c+1184>>2]=i;H[c+1180>>2]=c;H[c+1152>>2]=115232;i=c+1200|0;H[i>>2]=h;H[i+4>>2]=0;H[c+1232>>2]=h;H[c+1236>>2]=0;H[c+1220>>2]=c;H[c+1192>>2]=115276;H[c+1216>>2]=0;H[e+12>>2]=0;XE(o,1024,e+12|0);i=g&16384;H[c+1224>>2]=i>>>14|0?-1:1e3;Oa=e+16|0;H[d+1e3>>2]=c;c=g&8;e=H[d+976>>2];g=e+1164|0;o=e+24|0;m=H[e+1152>>2];n=H[e+1156>>2];q=I[d+2282|0];r:{if(!H[b+92>>2]){q=(q|0)!=0;i=(i|0)!=0;s=(c|0)!=0;p=L[b+160>>2];t=(H[b+112>>2]&32768)>>>15|0;c=H[33808];c=Ra[H[H[c+12>>2]+8>>2]](c+12|0,608,20591,6281,134)|0;if(c){H[c+4>>2]=0;H[c+8>>2]=0;H[c+180>>2]=g;H[c+164>>2]=f;H[c+104>>2]=32;H[c+84>>2]=-1073741824;F[c+66|0]=s;F[c+65|0]=i;F[c+64|0]=q;L[c+60>>2]=p;H[c+52>>2]=1065353216;H[c+56>>2]=1065353216;H[c+44>>2]=j;H[c+36>>2]=0;H[c+40>>2]=0;H[c+28>>2]=0;H[c+32>>2]=0;H[c+20>>2]=0;H[c+24>>2]=0;H[c+12>>2]=0;H[c+16>>2]=0;H[c+176>>2]=0;H[c+168>>2]=0;H[c+172>>2]=0;H[c+192>>2]=0;H[c+196>>2]=0;H[c>>2]=112984;H[c+200>>2]=0;H[c+204>>2]=0;H[c+208>>2]=0;H[c+212>>2]=0;H[c+216>>2]=0;H[c+220>>2]=0;g=H[33808];j=Ra[H[H[g>>2]+20>>2]](g)|0?33728:55639;g=Ra[H[H[g+12>>2]+8>>2]](g+12|0,28,j,13871,103)|0;H[c+336>>2]=g;H[g>>2]=0;H[c+480>>2]=0;H[c+472>>2]=0;H[c+476>>2]=0;H[c+340>>2]=o;S6(c+344|0,0,120);H[c+528>>2]=0;H[c+520>>2]=0;H[c+524>>2]=0;H[c+512>>2]=0;H[c+516>>2]=0;H[c+504>>2]=0;H[c+508>>2]=0;H[c+496>>2]=0;H[c+500>>2]=0;H[c+600>>2]=h;H[c+604>>2]=0;H[c+588>>2]=m;H[c+584>>2]=n;H[c+580>>2]=e;H[c+576>>2]=0;H[c+540>>2]=d;e=H[33808];e=Ra[H[H[e+12>>2]+8>>2]](e+12|0,16,20591,13792,262)|0;H[e+12>>2]=0;H[e+4>>2]=0;H[e+8>>2]=0;H[e>>2]=f;H[c+4>>2]=e;e=H[33808];e=Ra[H[H[e+12>>2]+8>>2]](e+12|0,16,20591,13792,264)|0;H[e+12>>2]=0;H[e+4>>2]=0;H[e+8>>2]=0;H[e>>2]=f;H[c+8>>2]=e;e=H[33808];e=Ra[H[H[e+12>>2]+8>>2]](e+12|0,16,20591,6281,190)|0;H[e+12>>2]=0;H[e+4>>2]=0;H[e+8>>2]=0;H[e>>2]=f;H[c+464>>2]=e;e=H[33808];e=Ra[H[H[e+12>>2]+8>>2]](e+12|0,16,20591,6281,191)|0;H[e+12>>2]=0;H[e+4>>2]=0;H[e+8>>2]=0;H[e>>2]=f;H[c+300>>2]=2139095039;H[c+292>>2]=-8388609;H[c+296>>2]=33554431;H[c+288>>2]=0;H[c+280>>2]=0;H[c+284>>2]=0;H[c+272>>2]=0;H[c+276>>2]=0;H[c+264>>2]=0;H[c+268>>2]=0;H[c+256>>2]=0;H[c+260>>2]=0;H[c+192>>2]=0;H[c+196>>2]=0;H[c+208>>2]=0;H[c+212>>2]=0;H[c+216>>2]=0;H[c+220>>2]=65535;H[c+240>>2]=0;H[c+244>>2]=0;H[c+248>>2]=0;H[c+252>>2]=2139095039;H[c+200>>2]=0;H[c+204>>2]=-1;H[c+232>>2]=0;H[c+236>>2]=0;H[c+312>>2]=0;H[c+316>>2]=1065353216;H[c+304>>2]=0;H[c+308>>2]=0;H[c+224>>2]=0;H[c+228>>2]=0;H[c+536>>2]=0;H[c+592>>2]=0;H[c+468>>2]=e;G[c+326>>1]=0;G[c+328>>1]=0;G[c+330>>1]=0;G[c+332>>1]=0;H[c+320>>2]=0;H[c+324>>2]=0;e=H[33808];e=Ra[H[H[e+12>>2]+8>>2]](e+12|0,8,20591,7946,174)|0;if(e){F[e+4|0]=t;H[e>>2]=114064}H[c+484>>2]=e;e=H[33808];e=Ra[H[H[e+12>>2]+8>>2]](e+12|0,4,20591,10726,200)|0;if(e){H[e>>2]=114308}H[c+488>>2]=e;e=H[33808];e=Ra[H[H[e+12>>2]+8>>2]](e+12|0,4,20591,10726,200)|0;if(e){H[e>>2]=114308}H[c+492>>2]=e}break r}q=(q|0)!=0;i=(i|0)!=0;s=(c|0)!=0;p=L[b+244>>2];c=H[33808];c=Ra[H[H[c+12>>2]+8>>2]](c+12|0,640,20591,6359,108)|0;if(c){H[c+4>>2]=0;H[c+8>>2]=0;H[c+180>>2]=g;H[c+164>>2]=f;H[c+104>>2]=32;H[c+84>>2]=-1073741824;F[c+66|0]=s;F[c+65|0]=i;F[c+64|0]=q;H[c+60>>2]=2139095039;H[c+52>>2]=1065353216;H[c+56>>2]=1065353216;H[c+44>>2]=j;H[c+36>>2]=0;H[c+40>>2]=0;H[c+28>>2]=0;H[c+32>>2]=0;H[c+20>>2]=0;H[c+24>>2]=0;H[c+12>>2]=0;H[c+16>>2]=0;H[c+176>>2]=0;H[c+168>>2]=0;H[c+172>>2]=0;H[c>>2]=117204;g=H[33808];j=Ra[H[H[g>>2]+20>>2]](g)|0?33728:55639;g=Ra[H[H[g+12>>2]+8>>2]](g+12|0,28,j,13871,103)|0;H[c+368>>2]=g;H[g>>2]=0;H[c+372>>2]=o;S6(c+376|0,0,132);H[c+556>>2]=0;H[c+560>>2]=0;H[c+548>>2]=0;H[c+552>>2]=0;H[c+540>>2]=0;H[c+544>>2]=0;H[c+532>>2]=0;H[c+536>>2]=0;H[c+524>>2]=0;H[c+528>>2]=0;H[c+516>>2]=0;H[c+520>>2]=0;H[c+632>>2]=h;H[c+636>>2]=0;H[c+624>>2]=m;H[c+620>>2]=n;H[c+616>>2]=e;L[c+612>>2]=p;H[c+608>>2]=0;H[c+572>>2]=d;e=H[33808];e=Ra[H[H[e+12>>2]+8>>2]](e+12|0,16,20591,13792,262)|0;H[e+12>>2]=0;H[e+4>>2]=0;H[e+8>>2]=0;H[e>>2]=f;H[c+4>>2]=e;e=H[33808];e=Ra[H[H[e+12>>2]+8>>2]](e+12|0,16,20591,13792,264)|0;H[e+12>>2]=0;H[e+4>>2]=0;H[e+8>>2]=0;H[e>>2]=f;H[c+8>>2]=e;e=H[33808];e=Ra[H[H[e+12>>2]+8>>2]](e+12|0,16,20591,6359,274)|0;H[e+12>>2]=0;H[e+4>>2]=0;H[e+8>>2]=0;H[e>>2]=f;H[c+508>>2]=e;e=H[33808];e=Ra[H[H[e+12>>2]+8>>2]](e+12|0,16,20591,6359,275)|0;H[e+12>>2]=0;H[e+4>>2]=0;H[e+8>>2]=0;H[e>>2]=f;H[c+568>>2]=0;H[c+628>>2]=0;H[c+512>>2]=e;S6(c+192|0,0,76);H[c+316>>2]=0;H[c+308>>2]=0;H[c+312>>2]=0;H[c+300>>2]=0;H[c+304>>2]=0;H[c+292>>2]=0;H[c+296>>2]=0;H[c+284>>2]=0;H[c+288>>2]=0;H[c+276>>2]=0;H[c+280>>2]=0;H[c+268>>2]=1065353216;H[c+272>>2]=0;H[c+360>>2]=2139095039;H[c+352>>2]=0;H[c+356>>2]=33554431;H[c+344>>2]=0;H[c+348>>2]=-8388609;H[c+336>>2]=0;H[c+340>>2]=0;H[c+328>>2]=0;H[c+332>>2]=2139095039;H[c+320>>2]=0;H[c+324>>2]=0}}H[d+1004>>2]=c;e=H[d+976>>2];g=e;j=H[d+1e3>>2]+168|0;c=H[33808];c=Ra[H[H[c+12>>2]+8>>2]](c+12|0,116,20591,5002,604)|0;if(c){H[c+4>>2]=e;H[c+8>>2]=118912;H[c>>2]=118764;S6(c+12|0,0,96);H[c+108>>2]=j;e=H[33808];j=Ra[H[H[e>>2]+20>>2]](e)|0?33606:55639;u=c,z=Ra[H[H[e+12>>2]+8>>2]](e+12|0,28,j,13721,113)|0,H[u+112>>2]=z;e=Oa-16|0;Oa=e;Oa=e+16|0}H[g+1024>>2]=c;c=H[33808];c=Ra[H[H[c+12>>2]+8>>2]](c+12|0,8,20591,9345,805)|0;H[c+4>>2]=d;H[c>>2]=119440;H[d+1016>>2]=c;e=H[33808];e=Ra[H[H[e+12>>2]+8>>2]](e+12|0,8,20591,6674,37)|0;H[e>>2]=123976;H[e+4>>2]=c;H[d+1012>>2]=e;c=H[33808];e=H[33808];c=(z=c+12|0,A=568,x=Ra[H[H[e>>2]+20>>2]](e)|0?30304:55639,y=9345,v=808,u=H[H[c+12>>2]+8>>2],Ra[u](z|0,A|0,x|0,y|0,v|0)|0);j=H[d+984>>2];i=H[d+1140>>2];o=H[d+1144>>2];g=H[b+68>>2]+H[b+64>>2]|0;m=H[b+40>>2];n=H[b+44>>2];e=H[33808];q=Ra[H[H[e>>2]+20>>2]](e)|0?33606:55639;u=c,v=Ra[H[H[e+12>>2]+8>>2]](e+12|0,28,q,13721,113)|0,H[u>>2]=v;e=Oa-16|0;Oa=e;Oa=e+16|0;H[c+32>>2]=0;H[c+72>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=h;H[c+20>>2]=0;e=c- -64|0;H[e>>2]=0;H[e+4>>2]=0;H[c+40>>2]=c;H[c+36>>2]=0;H[c+8>>2]=115600;H[c+56>>2]=h;H[c+60>>2]=0;H[c+104>>2]=0;H[c+108>>2]=0;H[c+80>>2]=55753;H[c+76>>2]=c;H[c+48>>2]=115908;H[c+96>>2]=h;H[c+100>>2]=0;H[c+88>>2]=115524;H[c+124>>2]=0;H[c+128>>2]=0;H[c+116>>2]=0;H[c+120>>2]=0;H[c+112>>2]=0;H[c+160>>2]=0;H[c+164>>2]=0;H[c+148>>2]=0;H[c+152>>2]=0;H[c+136>>2]=0;H[c+140>>2]=0;H[c+168>>2]=H[l>>2];e=H[l>>2];H[c+204>>2]=0;H[c+196>>2]=0;H[c+200>>2]=0;H[c+192>>2]=o;H[c+188>>2]=0;H[c+180>>2]=0;H[c+184>>2]=0;H[c+176>>2]=e;e=H[l>>2];H[c+236>>2]=0;H[c+228>>2]=0;H[c+232>>2]=0;H[c+224>>2]=e;e=H[l>>2];H[c+252>>2]=0;H[c+244>>2]=0;H[c+248>>2]=0;H[c+240>>2]=e;e=H[l>>2];H[c+268>>2]=0;H[c+272>>2]=j;H[c+276>>2]=i;H[c+260>>2]=0;H[c+264>>2]=0;H[c+256>>2]=e;S6(c+280|0,0,85);H[c+376>>2]=0;H[c+380>>2]=0;H[c+368>>2]=0;H[c+372>>2]=-1;F[c+365|0]=1;H[c+384>>2]=0;H[c+388>>2]=0;H[c+392>>2]=0;H[c+396>>2]=0;H[c+400>>2]=0;H[c+404>>2]=0;H[c+408>>2]=0;H[c+412>>2]=0;H[c+416>>2]=0;H[c+420>>2]=0;H[c+424>>2]=0;H[c+436>>2]=0;H[c+440>>2]=0;H[c+428>>2]=1061158912;H[c+432>>2]=-1;lH(c+404|0,64);H[c+460>>2]=0;H[c+464>>2]=0;H[c+452>>2]=0;H[c+456>>2]=0;H[c+444>>2]=0;H[c+448>>2]=0;H[c+476>>2]=0;H[c+480>>2]=0;H[c+468>>2]=1061158912;H[c+472>>2]=-1;lH(c+444|0,64);H[c+500>>2]=0;H[c+504>>2]=0;H[c+492>>2]=0;H[c+496>>2]=-2;H[c+484>>2]=0;H[c+488>>2]=0;H[c+508>>2]=0;H[c+512>>2]=0;H[c+516>>2]=0;H[c+520>>2]=0;H[c+524>>2]=0;H[c+528>>2]=0;H[c+532>>2]=0;H[c+544>>2]=0;H[c+548>>2]=0;H[c+536>>2]=1061158912;H[c+540>>2]=-1;mH(c+512|0,64);H[c+552>>2]=h;H[c+556>>2]=0;e=H[33808];j=H[33808];e=(v=e+12|0,y=28,x=Ra[H[H[j>>2]+20>>2]](j)|0?33728:55639,A=13871,z=103,u=H[H[e+12>>2]+8>>2],Ra[u](v|0,y|0,x|0,A|0,z|0)|0);H[c+560>>2]=e;H[e>>2]=0;iH(c,g?g:1);H[c+208>>2]=0;H[c+212>>2]=0;F[c+217|0]=1;F[c+218|0]=1;F[c+219|0]=1;F[c+220|0]=1;F[c+221|0]=1;F[c+222|0]=1;F[c+223|0]=1;e=(n|0)!=2;F[c+212|0]=e;F[c+214|0]=1;F[c+209|0]=e;F[c+213|0]=(m|0)!=2;F[c+215|0]=1;F[c+216|0]=1;G[c+210>>1]=257;H[d+980>>2]=c;e=H[b+60>>2];s:{if(!e){break s}e=(e<<1)+256>>>5&134217720;if(e>>>0<=(H[c+164>>2]&2147483647)>>>0){break s}g=H[c+168>>2];g=Ra[H[H[g>>2]+8>>2]](g,e<<2,14905,438)|0;j=H[c+160>>2];t:{if(!j){break t}R6(g,j,H[c+164>>2]<<2);if(H[c+164>>2]<0){break t}j=H[c+160>>2];if(!j){break t}i=H[c+168>>2];Ra[H[H[i>>2]+12>>2]](i,j)}j=H[c+164>>2];S6(g+(j<<2)|0,0,e-j<<2);H[c+164>>2]=e;H[c+160>>2]=g}e=H[d+976>>2];c=H[33808];c=Ra[H[H[c+12>>2]+8>>2]](c+12|0,24,20591,4923,186)|0;F[c+20|0]=1;H[c+4>>2]=0;H[c+8>>2]=0;H[c>>2]=f;H[c+12>>2]=0;H[c+16>>2]=0;H[e+1816>>2]=c;H[H[d+976>>2]+1820>>2]=H[d+1144>>2];i=H[H[d+1004>>2]+4>>2];f=H[d+976>>2];o=H[f+1024>>2];p=L[b+172>>2];c=H[33808];c=Ra[H[H[c+12>>2]+8>>2]](c+12|0,336,20591,10811,266)|0;if(c){e=Oa-16|0;Oa=e;g=H[f+1832>>2];j=H[f+1836>>2];H[c+24>>2]=0;H[c- -64>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=g;H[c+12>>2]=j;H[c+56>>2]=0;H[c+60>>2]=0;H[c+32>>2]=11136;H[c>>2]=119212;H[c+48>>2]=g;H[c+52>>2]=j;H[c+96>>2]=0;H[c+100>>2]=0;H[c+72>>2]=19288;H[c+68>>2]=c;H[c+40>>2]=119288;H[c+88>>2]=g;H[c+92>>2]=j;F[c+124|0]=0;H[c+112>>2]=17316;H[c+108>>2]=c;H[c+80>>2]=119364;H[c+104>>2]=0;H[c+28>>2]=c;H[c+144>>2]=0;H[c+148>>2]=0;j=c+136|0;g=j;H[g>>2]=0;H[g+4>>2]=0;H[c+128>>2]=0;H[c+132>>2]=0;g=H[33808];m=Ra[H[H[g>>2]+20>>2]](g)|0?34958:55639;g=Ra[H[H[g+12>>2]+8>>2]](g+12|0,8192,m,16598,210)|0;H[e+12>>2]=0;H[e+8>>2]=g;g=H[c+140>>2];u:{if(g>>>0>=(H[c+144>>2]&2147483647)>>>0){gN(j,e+8|0);break u}j=H[e+12>>2];g=H[c+136>>2]+(g<<3)|0;H[g>>2]=H[e+8>>2];H[g+4>>2]=j;H[c+140>>2]=H[c+140>>2]+1}H[c+152>>2]=0;H[c+156>>2]=0;H[c+160>>2]=0;H[c+164>>2]=0;g=H[33808];j=Ra[H[H[g>>2]+20>>2]](g)|0?35322:55639;g=Ra[H[H[g+12>>2]+8>>2]](g+12|0,1024,j,16598,210)|0;H[e+12>>2]=0;H[e+8>>2]=g;g=H[c+156>>2];v:{if(g>>>0>=(H[c+160>>2]&2147483647)>>>0){hN(c+152|0,e+8|0);break v}j=H[e+12>>2];g=H[c+152>>2]+(g<<3)|0;H[g>>2]=H[e+8>>2];H[g+4>>2]=j;H[c+156>>2]=H[c+156>>2]+1}H[c+168>>2]=0;H[c+172>>2]=0;H[c+176>>2]=0;H[c+180>>2]=0;g=H[33808];j=Ra[H[H[g>>2]+20>>2]](g)|0?35510:55639;g=Ra[H[H[g+12>>2]+8>>2]](g+12|0,13312,j,16598,210)|0;iN(g);H[e+12>>2]=0;H[e+8>>2]=g;g=H[c+172>>2];w:{if(g>>>0>=(H[c+176>>2]&2147483647)>>>0){jN(c+168|0,e+8|0);break w}j=H[e+12>>2];g=H[c+168>>2]+(g<<3)|0;H[g>>2]=H[e+8>>2];H[g+4>>2]=j;H[c+172>>2]=H[c+172>>2]+1}H[c+184>>2]=0;H[c+188>>2]=0;H[c+232>>2]=0;H[c+236>>2]=0;H[c+224>>2]=0;H[c+228>>2]=0;H[c+216>>2]=0;H[c+220>>2]=0;H[c+208>>2]=0;H[c+212>>2]=0;H[c+200>>2]=0;H[c+204>>2]=0;H[c+192>>2]=0;H[c+196>>2]=0;H[c+256>>2]=0;H[c+248>>2]=-1;H[c+252>>2]=0;H[c+240>>2]=0;H[c+244>>2]=1061158912;kN(c+220|0,64);H[c+268>>2]=0;H[c+272>>2]=0;H[c+260>>2]=0;H[c+264>>2]=0;g=H[33808];j=Ra[H[H[g>>2]+20>>2]](g)|0?35140:55639;g=Ra[H[H[g+12>>2]+8>>2]](g+12|0,14336,j,16598,210)|0;H[e+12>>2]=0;H[e+8>>2]=g;g=H[c+264>>2];x:{if(g>>>0>=(H[c+268>>2]&2147483647)>>>0){lN(c+260|0,e+8|0);break x}j=H[e+12>>2];g=H[c+260>>2]+(g<<3)|0;H[g>>2]=H[e+8>>2];H[g+4>>2]=j;H[c+264>>2]=H[c+264>>2]+1}H[c+276>>2]=0;H[c+280>>2]=0;H[c+320>>2]=o;H[c+316>>2]=i;H[c+312>>2]=f;H[c+308>>2]=1;H[c+300>>2]=0;H[c+304>>2]=0;H[c+292>>2]=0;H[c+296>>2]=0;H[c+284>>2]=0;H[c+288>>2]=0;f=H[33808];g=Ra[H[H[f>>2]+20>>2]](f)|0?33606:55639;u=c,z=Ra[H[H[f+12>>2]+8>>2]](f+12|0,28,g,13721,113)|0,H[u+324>>2]=z;f=Oa-16|0;Oa=f;Oa=f+16|0;L[c+328>>2]=p;Oa=e+16|0}H[d+988>>2]=c;c=H[d+1004>>2];H[c+104>>2]=H[b+144>>2];H[c+108>>2]=H[b+148>>2];L[c+88>>2]=L[b+100>>2];L[c+96>>2]=L[b+104>>2];L[c+92>>2]=L[b+108>>2];p=L[H[33794]>>2];L[c+100>>2]=p*O(.02500000037252903);e=H[d+976>>2];L[e+208>>2]=p;L[e+204>>2]=p*O(.009999999776482582);L[c+84>>2]=-L[b+96>>2];c=H[33808];e=Ra[H[H[c>>2]+20>>2]](c)|0?37202:55639;c=Ra[H[H[c+12>>2]+8>>2]](c+12|0,48,e,9345,887)|0;F[c+10|0]=0;F[c+9|0]=0;F[c+8|0]=1;H[c>>2]=0;H[c+4>>2]=16777215;G[c+46>>1]=0;F[c+45|0]=0;H[c+32>>2]=0;H[c+36>>2]=0;H[c+24>>2]=0;H[c+28>>2]=1065353216;H[c+16>>2]=0;H[c+20>>2]=0;F[c+37|0]=0;F[c+38|0]=0;F[c+39|0]=0;F[c+40|0]=0;F[c+41|0]=0;F[c+42|0]=0;F[c+43|0]=0;F[c+44|0]=0;f=H[d+2388>>2];j=H[f+12>>2];y:{z:{i=H[f+8>>2];g=j+N(i,12)|0;e=H[g+4>>2];if(e){H[g+4>>2]=H[e>>2];break z}A:{B:{e=H[g+8>>2];if((e|0)==H[f>>2]){break B}o=H[f+4>>2];H[g+8>>2]=e+1;g=H[j+N(i,12)>>2];if(!g){break B}e=g+N(e,o)|0;break A}e=LN(f)}if(e){break z}e=0;break y}VI(e,d,c);H[e>>2]=123460}H[d+2380>>2]=e;c=H[33808];e=Ra[H[H[c>>2]+20>>2]](c)|0?37086:55639;c=Ra[H[H[c+12>>2]+8>>2]](c+12|0,2008,e,9345,891)|0;H[c+4>>2]=0;H[c+8>>2]=0;H[c>>2]=d;H[c+12>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+32>>2]=0;H[c+36>>2]=0;H[c+40>>2]=0;f=I[b+112|0];e=H[b+164>>2];H[c+60>>2]=0;H[c+56>>2]=e;H[c+52>>2]=e;H[c+44>>2]=0;H[c+48>>2]=0;F[c- -64|0]=f>>>7;f=0;if(e){f=H[33808];f=Ra[H[H[f+12>>2]+8>>2]](f+12|0,e,20591,14814,169)|0}g=h+5584|0;H[c+68>>2]=0;H[c+72>>2]=0;H[c+44>>2]=f;H[c+76>>2]=0;H[c+80>>2]=0;H[c+84>>2]=0;H[c+88>>2]=0;H[c+100>>2]=0;H[c+104>>2]=0;H[c+92>>2]=1061158912;H[c+96>>2]=-1;xg(c+68|0,64);H[c+672>>2]=0;H[c+396>>2]=256;H[c+400>>2]=0;H[c+388>>2]=32;H[c+392>>2]=0;H[c+376>>2]=c+116;F[c+372|0]=1;H[c+380>>2]=0;H[c+384>>2]=64;H[c+964>>2]=0;H[c+692>>2]=0;H[c+684>>2]=0;H[c+688>>2]=640;H[c+676>>2]=64;H[c+680>>2]=32;H[c+668>>2]=c+408;F[c+664|0]=1;H[c+1256>>2]=0;H[c+984>>2]=0;H[c+976>>2]=0;H[c+980>>2]=17408;H[c+968>>2]=64;H[c+972>>2]=256;H[c+960>>2]=c+700;F[c+956|0]=1;H[c+1548>>2]=0;H[c+1276>>2]=0;e=c+1268|0;H[e>>2]=0;H[e+4>>2]=1920;e=c+1260|0;H[e>>2]=64;H[e+4>>2]=32;H[c+1252>>2]=c+992;F[c+1248|0]=1;H[c+1544>>2]=c+1284;H[c+1568>>2]=0;H[c+1840>>2]=0;e=c+1552|0;H[e>>2]=64;H[e+4>>2]=32;e=c+1560|0;H[e>>2]=0;H[e+4>>2]=1024;F[c+1540|0]=1;H[c+1836>>2]=c+1576;H[c+1860>>2]=0;e=c+1844|0;H[e>>2]=64;H[e+4>>2]=32;e=c+1852|0;H[e>>2]=0;H[e+4>>2]=1280;F[c+1832|0]=1;e=H[d+16>>2];f=H[d+20>>2];H[c+1888>>2]=0;j=c+1880|0;H[j>>2]=0;H[j+4>>2]=0;j=c+1872|0;H[j>>2]=e;H[j+4>>2]=f;H[c+1904>>2]=0;H[c+1896>>2]=3271;H[c+1892>>2]=c;H[c+1864>>2]=116104;e=H[33808];f=Ra[H[H[e>>2]+20>>2]](e)|0?33606:55639;u=c,z=Ra[H[H[e+12>>2]+8>>2]](e+12|0,28,f,13721,113)|0,H[u+1908>>2]=z;e=Oa-16|0;Oa=e;Oa=e+16|0;H[c+1916>>2]=0;H[c+1920>>2]=0;H[c+1912>>2]=0;e=c+1924|0;H[e>>2]=0;H[e+4>>2]=0;e=c+1932|0;H[e>>2]=0;H[e+4>>2]=0;e=c+1948|0;H[e>>2]=0;H[e+4>>2]=0;e=c+1940|0;H[e>>2]=1061158912;H[e+4>>2]=-1;lH(c+1916|0,64);e=c+1972|0;H[e>>2]=0;H[e+4>>2]=0;e=c+1964|0;H[e>>2]=0;H[e+4>>2]=0;H[c+1956>>2]=0;H[c+1960>>2]=0;e=c+1988|0;H[e>>2]=0;H[e+4>>2]=0;e=c+1980|0;H[e>>2]=1061158912;H[e+4>>2]=-1;eI(c+1956|0,64);e=H[33808];f=H[33808];u=c,z=(x=e+12|0,y=28,v=Ra[H[H[f>>2]+20>>2]](f)|0?33606:55639,w=13721,B=113,A=H[H[e+12>>2]+8>>2],Ra[A](x|0,y|0,v|0,w|0,B|0)|0),H[u+1996>>2]=z;e=Oa-16|0;Oa=e;Oa=e+16|0;e=H[33808];f=H[33808];u=c,z=(B=e+12|0,w=28,v=Ra[H[H[f>>2]+20>>2]](f)|0?33606:55639,y=13721,x=113,A=H[H[e+12>>2]+8>>2],Ra[A](B|0,w|0,v|0,y|0,x|0)|0),H[u+2e3>>2]=z;e=Oa-16|0;Oa=e;Oa=e+16|0;e=H[33808];f=H[33808];e=(z=e+12|0,A=16,x=Ra[H[H[f>>2]+20>>2]](f)|0?29738:55639,y=9058,v=651,u=H[H[e+12>>2]+8>>2],Ra[u](z|0,A|0,x|0,y|0,v|0)|0);H[e+8>>2]=0;H[e+12>>2]=-1;H[e>>2]=0;H[e+4>>2]=0;H[c+108>>2]=e;e=d+2648|0;H[e>>2]=2147483647;H[e+4>>2]=-1;e=d+2640|0;H[e>>2]=536870911;H[e+4>>2]=1073741823;e=d+2632|0;H[e>>2]=134217727;H[e+4>>2]=268435455;e=d+2624|0;H[e>>2]=33554431;H[e+4>>2]=67108863;e=d+2616|0;H[e>>2]=8388607;H[e+4>>2]=16777215;e=d+2608|0;H[e>>2]=2097151;H[e+4>>2]=4194303;e=d+2600|0;H[e>>2]=524287;H[e+4>>2]=1048575;e=d+2592|0;H[e>>2]=131071;H[e+4>>2]=262143;e=d+2584|0;H[e>>2]=32767;H[e+4>>2]=65535;e=d+2576|0;H[e>>2]=8191;H[e+4>>2]=16383;e=d+2568|0;H[e>>2]=2047;H[e+4>>2]=4095;e=d+2560|0;H[e>>2]=511;H[e+4>>2]=1023;e=d+2552|0;H[e>>2]=127;H[e+4>>2]=255;e=d+2544|0;H[e>>2]=31;H[e+4>>2]=63;e=d+2536|0;H[e>>2]=7;H[e+4>>2]=15;H[d+2528>>2]=1;H[d+2532>>2]=3;H[d+2168>>2]=c;G[d+2280>>1]=257;c=H[b+60>>2];H[d+1020>>2]=H[b+56>>2];H[d+1024>>2]=c;e=H[b+68>>2];c=d+1020|0;H[c+8>>2]=H[b+64>>2];H[c+12>>2]=e;e=H[b+76>>2];H[c+16>>2]=H[b+72>>2];H[c+20>>2]=e;e=H[b+84>>2];H[c+24>>2]=H[b+80>>2];H[c+28>>2]=e;H[d+2348>>2]=H[b+52>>2];L[d+1052>>2]=L[b>>2];L[d+1056>>2]=L[b+4>>2];p=L[b+8>>2];H[d+1064>>2]=1;L[d+1060>>2]=p;H[H[d+1004>>2]+112>>2]=H[b+88>>2];e=H[d+976>>2];c=H[b+112>>2];F[e+1812|0]=c>>>6&1;F[e+1813|0]=(c>>>8^-1)&1;c=H[b+12>>2];if(!(!H[d+2236>>2]|(H[d+2344>>2]|!c))){f=H[d+2204>>2];e=0;while(1){j=H[H[f+(e<<2)>>2]>>2];G[j+148>>1]=J[j+148>>1]|64;e=e+1|0;if(e>>>0>2]){continue}break}e=H[d+976>>2]}H[d+2344>>2]=c;c=H[b+16>>2];H[e+1020>>2]=c;e=H[e+1024>>2];Ra[H[H[e>>2]+88>>2]](e,c);c=H[d+988>>2];H[c+120>>2]=H[b+20>>2];H[c+308>>2]=H[b+168>>2];e=H[b+24>>2];C:{if(e){c=H[b+28>>2];D:{if(!c){f=0;c=0;break D}e=H[33808];f=Ra[H[H[e+12>>2]+8>>2]](e+12|0,c,20591,9345,923)|0;e=H[b+24>>2];c=H[b+28>>2]}H[d+2172>>2]=f;R6(f,e,c);c=H[b+28>>2];break C}H[d+2172>>2]=0;c=0}H[d+2180>>2]=c;H[d+2176>>2]=c;H[d+2184>>2]=H[b+32>>2];H[d+2188>>2]=H[b+36>>2];Oa=l+16|0;H[k+4776>>2]=0;H[k+4768>>2]=0;H[k+4772>>2]=0;d=H[33808];c=Ra[H[H[d>>2]+20>>2]](d)|0?33606:55639;u=k,v=Ra[H[H[d+12>>2]+8>>2]](d+12|0,28,c,13721,113)|0,H[u+4780>>2]=v;d=Oa-16|0;Oa=d;Oa=d+16|0;G[k+4784>>1]=0;yt(k+4788|0);d=k+4832|0;H[d>>2]=0;H[d+4>>2]=0;d=k+4824|0;H[d>>2]=0;H[d+4>>2]=0;H[k+4816>>2]=0;H[k+4820>>2]=0;d=k+4848|0;H[d>>2]=0;H[d+4>>2]=0;d=k+4840|0;H[d>>2]=1061158912;H[d+4>>2]=-1;xg(k+4816|0,64);d=k+4904|0;H[d>>2]=0;H[d+4>>2]=0;d=k+4896|0;H[d>>2]=0;H[d+4>>2]=0;d=k+4888|0;H[d>>2]=0;H[d+4>>2]=0;d=k+4880|0;H[d>>2]=0;H[d+4>>2]=0;d=k+4872|0;H[d>>2]=0;H[d+4>>2]=0;d=k+4864|0;H[d>>2]=0;H[d+4>>2]=0;H[k+4856>>2]=0;H[k+4860>>2]=0;H[k+4928>>2]=0;d=k+4920|0;H[d>>2]=-1;H[d+4>>2]=0;d=k+4912|0;H[d>>2]=0;H[d+4>>2]=1061158912;xg(k+4892|0,64);d=k+4948|0;H[d>>2]=0;H[d+4>>2]=0;d=k+4940|0;H[d>>2]=0;H[d+4>>2]=0;H[k+4932>>2]=0;H[k+4936>>2]=0;d=k+4964|0;H[d>>2]=0;H[d+4>>2]=0;d=k+4956|0;H[d>>2]=1061158912;H[d+4>>2]=-1;xg(k+4932|0,64);d=k+4988|0;H[d>>2]=0;H[d+4>>2]=0;d=k+4980|0;H[d>>2]=0;H[d+4>>2]=0;H[k+4972>>2]=0;H[k+4976>>2]=0;d=k+5004|0;H[d>>2]=0;H[d+4>>2]=0;d=k+4996|0;H[d>>2]=1061158912;H[d+4>>2]=-1;xg(k+4972|0,64);d=k+5028|0;H[d>>2]=0;H[d+4>>2]=0;d=k+5020|0;H[d>>2]=0;H[d+4>>2]=0;H[k+5012>>2]=0;H[k+5016>>2]=0;d=k+5044|0;H[d>>2]=0;H[d+4>>2]=0;d=k+5036|0;H[d>>2]=1061158912;H[d+4>>2]=-1;xg(k+5012|0,64);d=k+5068|0;H[d>>2]=0;H[d+4>>2]=0;d=k+5060|0;H[d>>2]=0;H[d+4>>2]=0;H[k+5052>>2]=0;H[k+5056>>2]=0;d=k+5084|0;H[d>>2]=0;H[d+4>>2]=0;d=k+5076|0;H[d>>2]=1061158912;H[d+4>>2]=-1;xg(k+5052|0,64);d=k+5108|0;H[d>>2]=0;H[d+4>>2]=0;d=k+5100|0;H[d>>2]=0;H[d+4>>2]=0;H[k+5092>>2]=0;H[k+5096>>2]=0;d=k+5124|0;H[d>>2]=0;H[d+4>>2]=0;d=k+5116|0;H[d>>2]=1061158912;H[d+4>>2]=-1;xg(k+5092|0,64);p=L[b+176>>2];H[k+5560>>2]=0;H[k+5548>>2]=0;L[k+5132>>2]=p;S6(k+5280|0,0,124);d=k+5248|0;H[d>>2]=0;H[d+4>>2]=0;d=k+5240|0;H[d>>2]=0;H[d+4>>2]=0;d=k+5232|0;H[d>>2]=0;H[d+4>>2]=0;H[k+5564>>2]=0;f=H[b+124>>2];l=H[b+128>>2];c=H[b+132>>2];d=g;H[d+72>>2]=0;H[d+76>>2]=0;H[d+32>>2]=-1;H[d+36>>2]=0;H[d+16>>2]=0;H[d+20>>2]=0;H[d>>2]=0;H[d+4>>2]=0;H[d+68>>2]=-1;H[d+60>>2]=0;H[d+64>>2]=3;H[d+52>>2]=0;H[d+56>>2]=0;H[d+40>>2]=0;H[d+44>>2]=0;H[d+24>>2]=0;H[d+28>>2]=3;H[d+8>>2]=0;H[d+80>>2]=0;H[d+84>>2]=0;H[d+88>>2]=0;H[d+92>>2]=0;H[d+96>>2]=0;H[d+100>>2]=1061158912;H[d+104>>2]=-1;H[d+108>>2]=0;H[d+112>>2]=0;j=d+76|0;FD(j,64);H[d+120>>2]=k;e=H[33808];i=Ra[H[H[e>>2]+20>>2]](e)|0?33606:55639;u=d,v=Ra[H[H[e+12>>2]+8>>2]](e+12|0,28,i,13721,113)|0,H[u+124>>2]=v;e=Oa-16|0;Oa=e;Oa=e+16|0;H[d+128>>2]=115160;DD(d,f,H[k+32>>2],H[k+36>>2]);e=d+36|0;DD(e,l,H[k+32>>2],H[k+36>>2]);H[d+116>>2]=c;d=H[d>>2];if(!(!d|H[g+28>>2]!=1)){Ra[H[H[d>>2]+68>>2]](d,c)}d=H[g+36>>2];if(!(!d|H[g- -64>>2]!=1)){Ra[H[H[d>>2]+68>>2]](d,c)}d=H[b+68>>2];ED(g,H[b+64>>2]);ED(e,d);H[g+136>>2]=g+68;H[g+132>>2]=H[g+36>>2];d=H[33808];c=Ra[H[H[d>>2]+20>>2]](d)|0?28304:55639;d=Ra[H[H[d+12>>2]+8>>2]](d+12|0,712,c,6950,268)|0;H[d>>2]=114876;HB(d+4|0);H[d+628>>2]=0;H[d+620>>2]=0;H[d+624>>2]=0;c=d+632|0;H[c>>2]=0;H[c+4>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;H[d+664>>2]=0;H[d+668>>2]=0;H[d+656>>2]=0;H[d+660>>2]=0;H[d+648>>2]=0;H[d+652>>2]=0;H[d+680>>2]=0;H[d+684>>2]=0;H[d+672>>2]=1061158912;H[d+676>>2]=-1;$B(d+648|0,64);H[d+704>>2]=0;H[d+708>>2]=0;H[d+696>>2]=0;H[d+700>>2]=0;H[d+688>>2]=0;H[d+692>>2]=0;if(K[c+4>>2]<32){fD(c,32)}gD(d+620|0,32);c=d+688|0;if((H[c+8>>2]&2147483647)>>>0<32){Dv(c,32)}H[c+4>>2]=32;if(!(H[d+708>>2]&2147483616)){aC(d+700|0,32)}H[g+72>>2]=d;if(!(K[g+112>>2]>31|K[g+96>>2]>31)){FD(j,32)}F[g+140|0]=0;H[h+5728>>2]=126368;H[h+5732>>2]=126460;H[h+5768>>2]=0;d=h+5760|0;H[d>>2]=0;H[d+4>>2]=0;H[h+5736>>2]=126064;d=h+5752|0;H[d>>2]=h;H[d+4>>2]=0;d=h+5800|0;H[d>>2]=0;H[d+4>>2]=0;H[h+5776>>2]=17852;H[h+5744>>2]=111048;d=h+5792|0;H[d>>2]=h;H[d+4>>2]=0;H[h+5816>>2]=17898;H[h+5784>>2]=111124;H[h+5808>>2]=0;d=H[b+136>>2];H[h+5812>>2]=h;H[h+5772>>2]=h;H[h+5824>>2]=d;H[h+5828>>2]=110736;H[h>>2]=110116;S6(h+5832|0,0,84);d=h+5924|0;H[d>>2]=0;H[d+4>>2]=0;d=h+5916|0;H[d>>2]=1061158912;H[d+4>>2]=-1;xg(h+5892|0,64);d=h+5956|0;H[d>>2]=0;H[d+4>>2]=0;d=h+5948|0;H[d>>2]=0;H[d+4>>2]=0;d=h+5940|0;H[d>>2]=0;H[d+4>>2]=0;H[h+5932>>2]=0;H[h+5936>>2]=0;H[h+5980>>2]=0;d=h+5972|0;H[d>>2]=-1;H[d+4>>2]=0;d=h+5964|0;H[d>>2]=0;H[d+4>>2]=1061158912;xg(h+5944|0,64);d=h+6e3|0;H[d>>2]=0;H[d+4>>2]=0;d=h+5992|0;H[d>>2]=0;H[d+4>>2]=0;H[h+5984>>2]=0;H[h+5988>>2]=0;d=h+6016|0;H[d>>2]=0;H[d+4>>2]=0;d=h+6008|0;H[d>>2]=1061158912;H[d+4>>2]=-1;xg(h+5984|0,64);H[h+6032>>2]=0;H[h+6024>>2]=0;H[h+6028>>2]=0;L[h+6036>>2]=L[b+180>>2];L[h+6040>>2]=L[b+184>>2];L[h+6044>>2]=L[b+188>>2];L[h+6048>>2]=L[b+192>>2];L[h+6052>>2]=L[b+196>>2];L[h+6056>>2]=L[b+200>>2];d=H[33808];c=Ra[H[H[d>>2]+20>>2]](d)|0?33974:55639;d=Ra[H[H[d+12>>2]+8>>2]](d+12|0,80,c,16454,95)|0;H[h+6060>>2]=d;F[d+76|0]=0;H[d+72>>2]=0;d=H[33808];c=H[33808];d=(v=d+12|0,y=80,x=Ra[H[H[c>>2]+20>>2]](c)|0?33974:55639,A=16454,z=95,u=H[H[d+12>>2]+8>>2],Ra[u](v|0,y|0,x|0,A|0,z|0)|0);H[h+6064>>2]=d;F[d+76|0]=0;H[d+72>>2]=0;d=H[33808];c=H[33808];d=(z=d+12|0,A=80,x=Ra[H[H[c>>2]+20>>2]](c)|0?33974:55639,y=16454,v=95,u=H[H[d+12>>2]+8>>2],Ra[u](z|0,A|0,x|0,y|0,v|0)|0);H[h+6068>>2]=d;F[d+76|0]=0;H[d+72>>2]=0;H[h+6128>>2]=0;H[h+6160>>2]=0;H[h+6192>>2]=0;d=h+6120|0;H[d>>2]=0;H[d+4>>2]=0;d=h+6084|0;H[d>>2]=0;H[d+4>>2]=0;H[h+6076>>2]=1;H[h+6080>>2]=0;d=h+6112|0;H[d>>2]=h;H[d+4>>2]=0;d=h+6152|0;H[d>>2]=0;H[d+4>>2]=0;H[h+6132>>2]=h+6060;H[h+6104>>2]=110832;d=h+6144|0;H[d>>2]=h;H[d+4>>2]=0;d=h+6184|0;H[d>>2]=0;H[d+4>>2]=0;H[h+6164>>2]=h+6064;H[h+6136>>2]=110832;d=h+6176|0;H[d>>2]=h;H[d+4>>2]=0;H[h+6168>>2]=110832;H[h+6196>>2]=h+6068;d=h+6216|0;H[d>>2]=0;H[d+4>>2]=0;H[h+6224>>2]=0;d=h+6208|0;H[d>>2]=h;H[d+4>>2]=0;H[h+6264>>2]=0;d=h+6256|0;H[d>>2]=0;H[d+4>>2]=0;H[h+6232>>2]=11319;d=h+6228|0;H[d>>2]=0;H[h+6200>>2]=111200;c=h+6248|0;H[c>>2]=h;H[c+4>>2]=0;H[h+6304>>2]=0;c=h+6296|0;H[c>>2]=0;H[c+4>>2]=0;H[h+6272>>2]=19249;c=h+6268|0;H[c>>2]=0;H[h+6240>>2]=111276;H[h+6328>>2]=0;e=h+6288|0;H[e>>2]=h;H[e+4>>2]=0;H[h+6332>>2]=0;H[h+6324>>2]=0;F[h+6320|0]=0;H[h+6312>>2]=17196;e=h+6308|0;H[e>>2]=0;H[h+6280>>2]=111352;H[h+6336>>2]=0;H[h+6344>>2]=0;f=Oa-16|0;Oa=f;g=h+6348|0;k=H[33808];k=Ra[H[H[k+12>>2]+8>>2]](k+12|0,8,20591,4845,130)|0;H[g>>2]=k;j=k;k=H[33808];l=H[33808];u=j,v=(x=k+12|0,A=28,z=Ra[H[H[l>>2]+20>>2]](l)|0?33606:55639,w=13721,B=113,y=H[H[k+12>>2]+8>>2],Ra[y](x|0,A|0,z|0,w|0,B|0)|0),H[u>>2]=v;H[H[g>>2]+4>>2]=0;Oa=f+16|0;H[e>>2]=h;H[c>>2]=h;H[d>>2]=h;H[h+6352>>2]=0;d=h+4644|0;c=H[d+4>>2];H[h+6092>>2]=H[d>>2];H[h+6096>>2]=c;f=0;d=Oa-16|0;Oa=d;E:{if((d|0)==-12){break E}while(1){if(!I[f+135312|0]){F[f+135312|0]=1;H[(f<<2)+135440>>2]=0;H[d+12>>2]=f;break E}f=f+1|0;if((f|0)!=128){continue}break}}Oa=d+16|0;H[h+6340>>2]=H[d+12>>2];H[r+12>>2]=h;F:{if(!(Ra[H[H[h>>2]+484>>2]](h)|0)){o5(H[33808],32,6215,277,60634,0);a=0;break F}f=H[b+56>>2];G:{if(!f){f=0;break G}if((H[h+5940>>2]&2147483647)>>>0>=f>>>0){break G}Qo(h+5932|0,f);f=H[b+56>>2]}ON(h+32|0,f,H[b+60>>2],H[b- -64>>2],H[b+68>>2]);H[h+4>>2]=H[b+140>>2];e=H[a+44>>2];H:{if(!e){break H}b=0;while(1){c=H[a+40>>2];while(1){I:{d=b+1|0;b=H[c+(b<<2)>>2];if(b){break I}b=d;if((d|0)!=(e|0)){continue}break H}break}Iq(h,b);e=H[a+44>>2];b=d;if(e>>>0>d>>>0){continue}break}}if(!H[h+1008>>2]){Ra[H[H[h>>2]+4>>2]](h);o5(H[33808],16,6215,294,57837,0);a=0;break F}b=H[a+8>>2];J:{if(b>>>0>=(H[a+12>>2]&2147483647)>>>0){f=0;b=H[a+12>>2]&2147483647;c=b?b<<1:1;K:{if(!c){break K}d=c<<2;if(!d){break K}b=H[33808];h=Ra[H[H[b>>2]+20>>2]](b)|0?52782:55639;f=Ra[H[H[b+12>>2]+8>>2]](b+12|0,d,h,13582,553)|0}d=H[a+8>>2];h=(d<<2)+f|0;if((d|0)>0){e=H[a+4>>2];b=f;while(1){H[b>>2]=H[e>>2];e=e+4|0;b=b+4|0;if(h>>>0>b>>>0){continue}break}}H[h>>2]=H[r+12>>2];L:{if(H[a+12>>2]<0){break L}b=H[a+4>>2];if(!b){break L}d=H[33808];Ra[H[H[d+12>>2]+12>>2]](d+12|0,b);d=H[a+8>>2]}H[a+12>>2]=c;H[a+4>>2]=f;H[a+8>>2]=d+1;break J}H[H[a+4>>2]+(b<<2)>>2]=h;H[a+8>>2]=b+1}a=H[r+12>>2]}Oa=r+16|0;return a|0}function Lo(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,o=0,p=0;H[a>>2]=110116;b=H[a+6020>>2];a:{if(!b){break a}c=b-1|0;Mo(a,H[H[a+5988>>2]+(c<<2)>>2],0);if(!c){break a}if(c&1){c=b-2|0;Ra[H[H[a>>2]+68>>2]](a,H[H[a+5988>>2]+(c<<2)>>2],0)}if((b|0)==2){break a}while(1){Ra[H[H[a>>2]+68>>2]](a,H[(H[a+5988>>2]+(c<<2)|0)-4>>2],0);c=c-2|0;Ra[H[H[a>>2]+68>>2]](a,H[H[a+5988>>2]+(c<<2)>>2],0);if(c){continue}break}}b=H[a+5936>>2];b:{if(!b){break b}c=b;if(c&1){c=b-1|0;Ra[H[H[a>>2]+56>>2]](a,H[H[a+5932>>2]+(c<<2)>>2],0)}if((b|0)==1){break b}while(1){Ra[H[H[a>>2]+56>>2]](a,H[(H[a+5932>>2]+(c<<2)|0)-4>>2],0);c=c-2|0;Ra[H[H[a>>2]+56>>2]](a,H[H[a+5932>>2]+(c<<2)>>2],0);if(c){continue}break}}b=H[a+5980>>2];c:{if(!b){break c}c=b;if(c&1){c=b-1|0;Ra[H[H[a>>2]+40>>2]](a,H[H[a+5948>>2]+(c<<2)>>2],0)}if((b|0)==1){break c}while(1){Ra[H[H[a>>2]+40>>2]](a,H[(H[a+5948>>2]+(c<<2)|0)-4>>2],0);c=c-2|0;Ra[H[H[a>>2]+40>>2]](a,H[H[a+5948>>2]+(c<<2)>>2],0);if(c){continue}break}}m=a+16|0;p=H[(I[a+5580|0]&4?5564:2392)+a>>2]&512;b=H[a+6028>>2];d:{if(!b){break d}c=b;e:{if(!(c&1)){break e}c=b-1|0;d=H[H[a+6024>>2]+(c<<2)>>2];if(!d){break e}Ra[H[H[d>>2]+48>>2]](d)}if((b|0)==1){break d}while(1){b=H[(H[a+6024>>2]+(c<<2)|0)-4>>2];if(b){Ra[H[H[b>>2]+48>>2]](b)}c=c-2|0;b=H[H[a+6024>>2]+(c<<2)>>2];if(b){Ra[H[H[b>>2]+48>>2]](b)}if(c){continue}break}}H[a+6028>>2]=0;o=Oa-16|0;Oa=o;i=m+16|0;H[i+1244>>2]=0;H[i+1088>>2]=H[i+1088>>2]+1;e=H[i+2168>>2];if(e){c=0;k=Oa-16|0;Oa=k;b=H[e+8>>2];if(b){h=e+1916|0;while(1){d=H[H[e+4>>2]+(c<<2)>>2];g=J[d+4>>1];G[d+4>>1]=g-1;f:{if(g>>>0>=2){G[d>>1]=J[d>>1]&65533;break f}g=H[d+16>>2];b=H[g+20>>2];g=H[g+16>>2];f=b>>>0>g>>>0;H[k+12>>2]=f?b:g;H[k+8>>2]=f?g:b;GH(h,k+8|0);b=H[d+16>>2];if(b){H[e+1560>>2]=H[e+1560>>2]-1;H[b>>2]=H[e+1568>>2];H[e+1568>>2]=b;H[d+16>>2]=0}H[e+684>>2]=H[e+684>>2]-1;H[d>>2]=H[e+692>>2];H[e+692>>2]=d;b=H[e+8>>2]}c=c+1|0;if(b>>>0>c>>>0){continue}break}}H[e+8>>2]=0;c=H[e+108>>2];if(c){b=H[c+8>>2];g:{if((b|0)<0|!(b&2147483647)){break g}b=H[c>>2];if(!b){break g}d=H[33808];Ra[H[H[d+12>>2]+12>>2]](d+12|0,b)}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,c)}c=H[e+2e3>>2];if(c){b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,c)}c=H[e+1996>>2];if(c){b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,c)}c=H[e+1956>>2];if(c){b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,c)}c=H[e+1916>>2];if(c){b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,c)}c=H[e+1908>>2];if(c){b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,c)}H[e+1880>>2]=0;H[e+1864>>2]=110900;if(H[e+1852>>2]){d=0;b=0;f=Oa-32|0;Oa=f;H[f+24>>2]=0;H[f+16>>2]=0;H[f+20>>2]=0;h=e+1572|0;c=H[h+288>>2];if(c){while(1){H[f+8>>2]=c;h:{if((b&2147483647)>>>0<=d>>>0){c=0;b=H[f+24>>2]&2147483647;j=b?b<<1:1;i:{if(!j){break i}b=j<<2;if(!b){break i}c=H[33808];d=Ra[H[H[c>>2]+20>>2]](c)|0?28806:55639;c=Ra[H[H[c+12>>2]+8>>2]](c+12|0,b,d,13582,553)|0}d=H[f+20>>2];l=(d<<2)+c|0;if((d|0)>0){g=H[f+16>>2];b=c;while(1){H[b>>2]=H[g>>2];g=g+4|0;b=b+4|0;if(l>>>0>b>>>0){continue}break}}H[l>>2]=H[f+8>>2];j:{if(H[f+24>>2]<0){break j}b=H[f+16>>2];if(!b){break j}d=H[33808];Ra[H[H[d+12>>2]+12>>2]](d+12|0,b);d=H[f+20>>2]}H[f+24>>2]=j;H[f+16>>2]=c;break h}H[H[f+16>>2]+(d<<2)>>2]=c}H[f+20>>2]=d+1;c=H[H[h+288>>2]>>2];H[h+288>>2]=c;if(c){d=H[f+20>>2];b=H[f+24>>2];continue}break}d=H[f+20>>2];b=H[f+16>>2]}else{b=0}c=f+8|0;KI(b,d,c);KI(H[h+264>>2],H[h+268>>2],c);c=H[h+268>>2];if(c){g=H[h+264>>2];l=g+(c<<2)|0;d=H[f+16>>2];while(1){j=H[h+276>>2];k:{if(!j){break k}b=H[g>>2];n=(j<<3)-8|0;if(n&8){c=b}else{l:{if(!((H[f+16>>2]+(H[f+20>>2]<<2)|0)==(d|0)|(b|0)!=H[d>>2])){d=d+4|0;break l}Ra[H[H[b>>2]>>2]](b)|0}c=b+40|0}if(!n){break k}j=b+N(j,40)|0;while(1){m:{if(!((H[f+16>>2]+(H[f+20>>2]<<2)|0)==(d|0)|H[d>>2]!=(c|0))){d=d+4|0;break m}Ra[H[H[c>>2]>>2]](c)|0}b=c+40|0;n:{if(!((H[f+16>>2]+(H[f+20>>2]<<2)|0)==(d|0)|(b|0)!=H[d>>2])){d=d+4|0;break n}Ra[H[H[b>>2]>>2]](b)|0}c=c+80|0;if((j|0)!=(c|0)){continue}break}}g=g+4|0;if((l|0)!=(g|0)){continue}break}}c=H[f+24>>2];o:{if((c|0)<0|!(c&2147483647)){break o}c=H[f+16>>2];if(!c){break o}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,c)}Oa=f+32|0}b=H[e+1840>>2];if(b){c=H[e+1836>>2];b=c+(b<<2)|0;while(1){d=H[c>>2];if(d){g=H[33808];Ra[H[H[g+12>>2]+12>>2]](g+12|0,d)}c=c+4|0;if((b|0)!=(c|0)){continue}break}}c=H[e+1844>>2];p:{if((c|0)<0|!(c&2147483647)){break p}c=H[e+1836>>2];if((c|0)==(e+1576|0)){F[e+1832|0]=0;break p}if(!c){break p}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,c)}if(H[e+1560>>2]){b=0;g=0;f=Oa-32|0;Oa=f;H[f+24>>2]=0;H[f+16>>2]=0;H[f+20>>2]=0;h=e+1280|0;d=H[h+288>>2];if(d){while(1){H[f+8>>2]=d;q:{if((g&2147483647)>>>0<=b>>>0){c=0;b=H[f+24>>2]&2147483647;j=b?b<<1:1;r:{if(!j){break r}b=j<<2;if(!b){break r}c=H[33808];d=Ra[H[H[c>>2]+20>>2]](c)|0?41076:55639;c=Ra[H[H[c+12>>2]+8>>2]](c+12|0,b,d,13582,553)|0}d=H[f+20>>2];l=(d<<2)+c|0;if((d|0)>0){g=H[f+16>>2];b=c;while(1){H[b>>2]=H[g>>2];g=g+4|0;b=b+4|0;if(l>>>0>b>>>0){continue}break}}H[l>>2]=H[f+8>>2];s:{if(H[f+24>>2]<0){break s}b=H[f+16>>2];if(!b){break s}d=H[33808];Ra[H[H[d+12>>2]+12>>2]](d+12|0,b);d=H[f+20>>2]}H[f+24>>2]=j;H[f+16>>2]=c;H[f+20>>2]=d+1;break q}H[H[f+16>>2]+(b<<2)>>2]=d;H[f+20>>2]=b+1}d=H[H[h+288>>2]>>2];H[h+288>>2]=d;if(d){b=H[f+20>>2];g=H[f+24>>2];continue}break}b=H[f+16>>2];g=H[f+20>>2]}else{g=0}c=f+8|0;LI(b,g,c);LI(H[h+264>>2],H[h+268>>2],c);c=H[f+24>>2];t:{if((c|0)<0|!(c&2147483647)){break t}c=H[f+16>>2];if(!c){break t}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,c)}Oa=f+32|0}b=H[e+1548>>2];if(b){c=H[e+1544>>2];b=c+(b<<2)|0;while(1){d=H[c>>2];if(d){g=H[33808];Ra[H[H[g+12>>2]+12>>2]](g+12|0,d)}c=c+4|0;if((b|0)!=(c|0)){continue}break}}c=H[e+1552>>2];u:{if((c|0)<0|!(c&2147483647)){break u}c=H[e+1544>>2];if((c|0)==(e+1284|0)){F[e+1540|0]=0;break u}if(!c){break u}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,c)}if(H[e+1268>>2]){d=0;b=0;f=Oa-32|0;Oa=f;H[f+24>>2]=0;H[f+16>>2]=0;H[f+20>>2]=0;h=e+988|0;c=H[h+288>>2];if(c){while(1){H[f+8>>2]=c;v:{if((b&2147483647)>>>0<=d>>>0){c=0;b=H[f+24>>2]&2147483647;j=b?b<<1:1;w:{if(!j){break w}b=j<<2;if(!b){break w}c=H[33808];d=Ra[H[H[c>>2]+20>>2]](c)|0?32386:55639;c=Ra[H[H[c+12>>2]+8>>2]](c+12|0,b,d,13582,553)|0}d=H[f+20>>2];l=(d<<2)+c|0;if((d|0)>0){g=H[f+16>>2];b=c;while(1){H[b>>2]=H[g>>2];g=g+4|0;b=b+4|0;if(l>>>0>b>>>0){continue}break}}H[l>>2]=H[f+8>>2];x:{if(H[f+24>>2]<0){break x}b=H[f+16>>2];if(!b){break x}d=H[33808];Ra[H[H[d+12>>2]+12>>2]](d+12|0,b);d=H[f+20>>2]}H[f+24>>2]=j;H[f+16>>2]=c;break v}H[H[f+16>>2]+(d<<2)>>2]=c}H[f+20>>2]=d+1;c=H[H[h+288>>2]>>2];H[h+288>>2]=c;if(c){d=H[f+20>>2];b=H[f+24>>2];continue}break}d=H[f+20>>2];b=H[f+16>>2]}else{b=0}c=f+8|0;MI(b,d,c);MI(H[h+264>>2],H[h+268>>2],c);c=H[h+268>>2];if(c){g=H[h+264>>2];l=g+(c<<2)|0;d=H[f+16>>2];while(1){j=H[h+276>>2];y:{if(!j){break y}b=H[g>>2];n=(j<<2)-4|0;if(n&4){c=b}else{z:{if(!((H[f+16>>2]+(H[f+20>>2]<<2)|0)==(d|0)|(b|0)!=H[d>>2])){d=d+4|0;break z}Ra[H[H[b>>2]>>2]](b)|0}c=b+60|0}if(!n){break y}j=b+N(j,60)|0;while(1){A:{if(!((H[f+16>>2]+(H[f+20>>2]<<2)|0)==(d|0)|H[d>>2]!=(c|0))){d=d+4|0;break A}Ra[H[H[c>>2]>>2]](c)|0}b=c+60|0;B:{if(!((H[f+16>>2]+(H[f+20>>2]<<2)|0)==(d|0)|(b|0)!=H[d>>2])){d=d+4|0;break B}Ra[H[H[b>>2]>>2]](b)|0}c=c+120|0;if((j|0)!=(c|0)){continue}break}}g=g+4|0;if((l|0)!=(g|0)){continue}break}}c=H[f+24>>2];C:{if((c|0)<0|!(c&2147483647)){break C}c=H[f+16>>2];if(!c){break C}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,c)}Oa=f+32|0}b=H[e+1256>>2];if(b){c=H[e+1252>>2];b=c+(b<<2)|0;while(1){d=H[c>>2];if(d){g=H[33808];Ra[H[H[g+12>>2]+12>>2]](g+12|0,d)}c=c+4|0;if((b|0)!=(c|0)){continue}break}}c=H[e+1260>>2];D:{if((c|0)<0|!(c&2147483647)){break D}c=H[e+1252>>2];if((c|0)==(e+992|0)){F[e+1248|0]=0;break D}if(!c){break D}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,c)}if(H[e+976>>2]){d=0;b=0;f=Oa-32|0;Oa=f;H[f+24>>2]=0;H[f+16>>2]=0;H[f+20>>2]=0;c=H[e+984>>2];if(c){while(1){H[f+8>>2]=c;E:{if((b&2147483647)>>>0<=d>>>0){c=0;b=H[f+24>>2]&2147483647;h=b?b<<1:1;F:{if(!h){break F}b=h<<2;if(!b){break F}c=H[33808];d=Ra[H[H[c>>2]+20>>2]](c)|0?32518:55639;c=Ra[H[H[c+12>>2]+8>>2]](c+12|0,b,d,13582,553)|0}d=H[f+20>>2];j=(d<<2)+c|0;if((d|0)>0){g=H[f+16>>2];b=c;while(1){H[b>>2]=H[g>>2];g=g+4|0;b=b+4|0;if(j>>>0>b>>>0){continue}break}}H[j>>2]=H[f+8>>2];G:{if(H[f+24>>2]<0){break G}b=H[f+16>>2];if(!b){break G}d=H[33808];Ra[H[H[d+12>>2]+12>>2]](d+12|0,b);d=H[f+20>>2]}H[f+24>>2]=h;H[f+16>>2]=c;break E}H[H[f+16>>2]+(d<<2)>>2]=c}H[f+20>>2]=d+1;c=H[H[e+984>>2]>>2];H[e+984>>2]=c;if(c){d=H[f+20>>2];b=H[f+24>>2];continue}break}d=H[f+20>>2];b=H[f+16>>2]}else{b=0}c=f+8|0;NI(b,d,c);NI(H[e+960>>2],H[e+964>>2],c);c=H[e+964>>2];if(c){g=H[e+960>>2];j=g+(c<<2)|0;d=H[f+16>>2];while(1){h=H[e+972>>2];H:{if(!h){break H}b=H[g>>2];l=(h<<2)-4|0;if(l&4){c=b}else{I:{if(!((H[f+16>>2]+(H[f+20>>2]<<2)|0)==(d|0)|(b|0)!=H[d>>2])){d=d+4|0;break I}Ra[H[H[b>>2]>>2]](b)|0}c=b+68|0}if(!l){break H}h=b+N(h,68)|0;while(1){J:{if(!((H[f+16>>2]+(H[f+20>>2]<<2)|0)==(d|0)|H[d>>2]!=(c|0))){d=d+4|0;break J}Ra[H[H[c>>2]>>2]](c)|0}b=c+68|0;K:{if(!((H[f+16>>2]+(H[f+20>>2]<<2)|0)==(d|0)|(b|0)!=H[d>>2])){d=d+4|0;break K}Ra[H[H[b>>2]>>2]](b)|0}c=c+136|0;if((h|0)!=(c|0)){continue}break}}g=g+4|0;if((j|0)!=(g|0)){continue}break}}c=H[f+24>>2];L:{if((c|0)<0|!(c&2147483647)){break L}c=H[f+16>>2];if(!c){break L}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,c)}Oa=f+32|0}b=H[e+964>>2];if(b){c=H[e+960>>2];b=c+(b<<2)|0;while(1){d=H[c>>2];if(d){g=H[33808];Ra[H[H[g+12>>2]+12>>2]](g+12|0,d)}c=c+4|0;if((b|0)!=(c|0)){continue}break}}c=H[e+968>>2];M:{if((c|0)<0|!(c&2147483647)){break M}c=H[e+960>>2];if((c|0)==(e+700|0)){F[e+956|0]=0;break M}if(!c){break M}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,c)}if(H[e+684>>2]){b=0;d=0;f=Oa-32|0;Oa=f;H[f+24>>2]=0;H[f+16>>2]=0;H[f+20>>2]=0;c=H[e+692>>2];if(c){while(1){H[f+8>>2]=c;N:{if((d&2147483647)>>>0<=b>>>0){c=0;b=H[f+24>>2]&2147483647;h=b?b<<1:1;O:{if(!h){break O}b=h<<2;if(!b){break O}c=H[33808];d=Ra[H[H[c>>2]+20>>2]](c)|0?23420:55639;c=Ra[H[H[c+12>>2]+8>>2]](c+12|0,b,d,13582,553)|0}d=H[f+20>>2];j=(d<<2)+c|0;if((d|0)>0){g=H[f+16>>2];b=c;while(1){H[b>>2]=H[g>>2];g=g+4|0;b=b+4|0;if(j>>>0>b>>>0){continue}break}}H[j>>2]=H[f+8>>2];P:{if(H[f+24>>2]<0){break P}b=H[f+16>>2];if(!b){break P}d=H[33808];Ra[H[H[d+12>>2]+12>>2]](d+12|0,b);d=H[f+20>>2]}H[f+24>>2]=h;H[f+16>>2]=c;H[f+20>>2]=d+1;break N}H[H[f+16>>2]+(b<<2)>>2]=c;H[f+20>>2]=b+1}c=H[H[e+692>>2]>>2];H[e+692>>2]=c;if(c){b=H[f+20>>2];d=H[f+24>>2];continue}break}b=H[f+16>>2];g=H[f+20>>2]}else{g=0}c=f+8|0;OI(b,g,c);OI(H[e+668>>2],H[e+672>>2],c);c=H[f+24>>2];Q:{if((c|0)<0|!(c&2147483647)){break Q}c=H[f+16>>2];if(!c){break Q}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,c)}Oa=f+32|0}b=H[e+672>>2];if(b){c=H[e+668>>2];b=c+(b<<2)|0;while(1){d=H[c>>2];if(d){g=H[33808];Ra[H[H[g+12>>2]+12>>2]](g+12|0,d)}c=c+4|0;if((b|0)!=(c|0)){continue}break}}c=H[e+676>>2];R:{if((c|0)<0|!(c&2147483647)){break R}c=H[e+668>>2];if((c|0)==(e+408|0)){F[e+664|0]=0;break R}if(!c){break R}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,c)}if(H[e+392>>2]){b=0;d=0;f=Oa-32|0;Oa=f;H[f+24>>2]=0;H[f+16>>2]=0;H[f+20>>2]=0;c=H[e+400>>2];if(c){while(1){H[f+8>>2]=c;S:{if((d&2147483647)>>>0<=b>>>0){c=0;b=H[f+24>>2]&2147483647;h=b?b<<1:1;T:{if(!h){break T}b=h<<2;if(!b){break T}c=H[33808];d=Ra[H[H[c>>2]+20>>2]](c)|0?27154:55639;c=Ra[H[H[c+12>>2]+8>>2]](c+12|0,b,d,13582,553)|0}d=H[f+20>>2];j=(d<<2)+c|0;if((d|0)>0){g=H[f+16>>2];b=c;while(1){H[b>>2]=H[g>>2];g=g+4|0;b=b+4|0;if(j>>>0>b>>>0){continue}break}}H[j>>2]=H[f+8>>2];U:{if(H[f+24>>2]<0){break U}b=H[f+16>>2];if(!b){break U}d=H[33808];Ra[H[H[d+12>>2]+12>>2]](d+12|0,b);d=H[f+20>>2]}H[f+24>>2]=h;H[f+16>>2]=c;H[f+20>>2]=d+1;break S}H[H[f+16>>2]+(b<<2)>>2]=c;H[f+20>>2]=b+1}c=H[H[e+400>>2]>>2];H[e+400>>2]=c;if(c){b=H[f+20>>2];d=H[f+24>>2];continue}break}b=H[f+16>>2];g=H[f+20>>2]}else{g=0}c=f+8|0;PI(b,g,c);PI(H[e+376>>2],H[e+380>>2],c);c=H[f+24>>2];V:{if((c|0)<0|!(c&2147483647)){break V}c=H[f+16>>2];if(!c){break V}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,c)}Oa=f+32|0}b=H[e+380>>2];if(b){c=H[e+376>>2];b=c+(b<<2)|0;while(1){d=H[c>>2];if(d){g=H[33808];Ra[H[H[g+12>>2]+12>>2]](g+12|0,d)}c=c+4|0;if((b|0)!=(c|0)){continue}break}}c=H[e+384>>2];W:{if((c|0)<0|!(c&2147483647)){break W}c=H[e+376>>2];if((c|0)==(e+116|0)){F[e+372|0]=0;break W}if(!c){break W}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,c)}c=H[e+68>>2];if(c){b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,c)}c=H[e+44>>2];if(c){b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,c)}c=H[e+40>>2];X:{if((c|0)<0|!(c&2147483647)){break X}c=H[e+32>>2];if(!c){break X}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,c)}c=H[e+24>>2];Y:{if((c|0)<0|!(c&2147483647)){break Y}c=H[e+16>>2];if(!c){break Y}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,c)}c=H[e+12>>2];Z:{if((c|0)<0|!(c&2147483647)){break Z}c=H[e+4>>2];if(!c){break Z}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,c)}Oa=k+16|0;c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,e)}H[i+2168>>2]=0;c=H[i+2172>>2];if(c){b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,c)}H[i+2172>>2]=0;e=H[i+2380>>2];_:{if(!e){break _}f=H[e+44>>2];d=H[i+2388>>2];Ra[H[H[e>>2]>>2]](e)|0;if(I[d+24|0]){MN(H[d+12>>2],H[d+16>>2])}c=0;b=H[d+16>>2]-1|0;$:{if((b|0)<0){break $}j=N(H[d+4>>2],H[d>>2]);h=H[d+12>>2];while(1){g=c+b>>1;k=H[h+N(g,12)>>2];if(!(k>>>0>e>>>0|e>>>0>=j+k>>>0)){c=h+N(g,12)|0;H[e>>2]=H[c+4>>2];H[c+4>>2]=e;if(I[d+24|0]){H[d+8>>2]=g}F[d+24|0]=0;break $}k=e>>>0>k>>>0;c=k?g+1|0:c;b=k?b:g-1|0;if((c|0)<=(b|0)){continue}break}}if(!f){break _}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,f)}NN(i);c=H[i+976>>2];aa:{if(!c){break aa}b=H[c+1028>>2];if(b){Ra[H[H[b>>2]+8>>2]](b);c=H[i+976>>2];H[c+1028>>2]=0}c=H[c+1024>>2];if(!c){break aa}Ra[H[H[c>>2]+8>>2]](c);H[H[i+976>>2]+1024>>2]=0}d=H[i+1136>>2];if(d){c=H[d+336>>2];if(c){b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,c)}c=H[d+296>>2];if(c){b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,c)}if(H[d+284>>2]){c=0;e=0;f=Oa-32|0;Oa=f;H[f+24>>2]=0;H[f+16>>2]=0;H[f+20>>2]=0;b=H[d+292>>2];if(b){while(1){H[f+8>>2]=b;ba:{if((e&2147483647)>>>0<=c>>>0){c=0;b=H[f+24>>2]&2147483647;h=b?b<<1:1;ca:{if(!h){break ca}b=h<<2;if(!b){break ca}c=H[33808];e=Ra[H[H[c>>2]+20>>2]](c)|0?39038:55639;c=Ra[H[H[c+12>>2]+8>>2]](c+12|0,b,e,13582,553)|0}e=H[f+20>>2];k=(e<<2)+c|0;if((e|0)>0){g=H[f+16>>2];b=c;while(1){H[b>>2]=H[g>>2];g=g+4|0;b=b+4|0;if(k>>>0>b>>>0){continue}break}}H[k>>2]=H[f+8>>2];da:{if(H[f+24>>2]<0){break da}b=H[f+16>>2];if(!b){break da}e=H[33808];Ra[H[H[e+12>>2]+12>>2]](e+12|0,b);e=H[f+20>>2]}H[f+24>>2]=h;H[f+16>>2]=c;H[f+20>>2]=e+1;break ba}H[H[f+16>>2]+(c<<2)>>2]=b;H[f+20>>2]=c+1}b=H[H[d+292>>2]>>2];H[d+292>>2]=b;if(b){c=H[f+20>>2];e=H[f+24>>2];continue}break}c=H[f+16>>2];b=H[f+20>>2]}else{b=0}g=c;c=f+8|0;$O(g,b,c);$O(H[d+268>>2],H[d+272>>2],c);c=H[f+24>>2];ea:{if((c|0)<0|!(c&2147483647)){break ea}c=H[f+16>>2];if(!c){break ea}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,c)}Oa=f+32|0}b=H[d+272>>2];if(b){c=H[d+268>>2];b=c+(b<<2)|0;while(1){e=H[c>>2];if(e){g=H[33808];Ra[H[H[g+12>>2]+12>>2]](g+12|0,e)}c=c+4|0;if((b|0)!=(c|0)){continue}break}}c=H[d+276>>2];fa:{if((c|0)<0|!(c&2147483647)){break fa}c=H[d+268>>2];if((c|0)==(d+8|0)){F[d+264|0]=0;break fa}if(!c){break fa}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,c)}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,d)}H[i+1136>>2]=0;c=H[i+1152>>2];if(c){b=H[c+44>>2];ga:{if((b|0)<0|!(b&2147483647)){break ga}b=H[c+36>>2];if(!b){break ga}d=H[33808];Ra[H[H[d+12>>2]+12>>2]](d+12|0,b)}b=H[c+32>>2];ha:{if((b|0)<0|!(b&2147483647)){break ha}b=H[c+24>>2];if(!b){break ha}d=H[33808];Ra[H[H[d+12>>2]+12>>2]](d+12|0,b)}b=H[c+20>>2];ia:{if((b|0)<0|!(b&2147483647)){break ia}b=H[c+12>>2];if(!b){break ia}d=H[33808];Ra[H[H[d+12>>2]+12>>2]](d+12|0,b)}b=H[c+8>>2];ja:{if((b|0)<0|!(b&2147483647)){break ja}b=H[c>>2];if(!b){break ja}d=H[33808];Ra[H[H[d+12>>2]+12>>2]](d+12|0,b)}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,c)}H[i+1152>>2]=0;c=H[i+1140>>2];if(c){b=H[c+12>>2];ka:{if((b|0)<0|!(b&2147483647)){break ka}b=H[c+4>>2];if(!b){break ka}d=H[c>>2];Ra[H[H[d>>2]+12>>2]](d,b)}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,c)}c=0;H[i+1140>>2]=0;b=H[i+2288>>2];if(b){while(1){d=H[i+2284>>2];e=c<<2;g=H[d+e>>2];if(g){b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,g);b=H[i+2288>>2];d=H[i+2284>>2]}H[d+e>>2]=0;c=c+1|0;if(b>>>0>c>>>0){continue}break}}f=H[i+2408>>2];if(f){if(H[f+280>>2]){c=0;e=0;d=Oa-32|0;Oa=d;H[d+24>>2]=0;H[d+16>>2]=0;H[d+20>>2]=0;b=H[f+288>>2];if(b){while(1){H[d+8>>2]=b;la:{if((e&2147483647)>>>0<=c>>>0){c=0;b=H[d+24>>2]&2147483647;h=b?b<<1:1;ma:{if(!h){break ma}b=h<<2;if(!b){break ma}c=H[33808];e=Ra[H[H[c>>2]+20>>2]](c)|0?32248:55639;c=Ra[H[H[c+12>>2]+8>>2]](c+12|0,b,e,13582,553)|0}e=H[d+20>>2];k=(e<<2)+c|0;if((e|0)>0){g=H[d+16>>2];b=c;while(1){H[b>>2]=H[g>>2];g=g+4|0;b=b+4|0;if(k>>>0>b>>>0){continue}break}}H[k>>2]=H[d+8>>2];na:{if(H[d+24>>2]<0){break na}b=H[d+16>>2];if(!b){break na}e=H[33808];Ra[H[H[e+12>>2]+12>>2]](e+12|0,b);e=H[d+20>>2]}H[d+24>>2]=h;H[d+16>>2]=c;H[d+20>>2]=e+1;break la}H[H[d+16>>2]+(c<<2)>>2]=b;H[d+20>>2]=c+1}b=H[H[f+288>>2]>>2];H[f+288>>2]=b;if(b){c=H[d+20>>2];e=H[d+24>>2];continue}break}c=H[d+20>>2];g=H[d+16>>2]}else{g=0}b=c;c=d+8|0;aP(g,b,c);aP(H[f+264>>2],H[f+268>>2],c);c=H[f+268>>2];if(c){e=H[f+264>>2];g=e+(c<<2)|0;c=H[d+16>>2];while(1){h=H[f+276>>2];if(h){b=H[e>>2];h=b+(h<<5)|0;while(1){c=(H[d+16>>2]+(H[d+20>>2]<<2)|0)==(c|0)|H[c>>2]!=(b|0)?c:c+4|0;b=b+32|0;if((h|0)!=(b|0)){continue}break}}e=e+4|0;if((g|0)!=(e|0)){continue}break}}c=H[d+24>>2];oa:{if((c|0)<0|!(c&2147483647)){break oa}c=H[d+16>>2];if(!c){break oa}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,c)}Oa=d+32|0}b=H[f+268>>2];if(b){c=H[f+264>>2];b=c+(b<<2)|0;while(1){d=H[c>>2];if(d){e=H[33808];Ra[H[H[e+12>>2]+12>>2]](e+12|0,d)}c=c+4|0;if((b|0)!=(c|0)){continue}break}}c=H[f+272>>2];pa:{if((c|0)<0|!(c&2147483647)){break pa}c=H[f+264>>2];if((c|0)==(f+4|0)){F[f+260|0]=0;break pa}if(!c){break pa}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,c)}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,f)}f=H[i+2396>>2];if(f){if(H[f+280>>2]){c=0;e=0;d=Oa-32|0;Oa=d;H[d+24>>2]=0;H[d+16>>2]=0;H[d+20>>2]=0;b=H[f+288>>2];if(b){while(1){H[d+8>>2]=b;qa:{if((e&2147483647)>>>0<=c>>>0){c=0;b=H[d+24>>2]&2147483647;h=b?b<<1:1;ra:{if(!h){break ra}b=h<<2;if(!b){break ra}c=H[33808];e=Ra[H[H[c>>2]+20>>2]](c)|0?33358:55639;c=Ra[H[H[c+12>>2]+8>>2]](c+12|0,b,e,13582,553)|0}e=H[d+20>>2];k=(e<<2)+c|0;if((e|0)>0){g=H[d+16>>2];b=c;while(1){H[b>>2]=H[g>>2];g=g+4|0;b=b+4|0;if(k>>>0>b>>>0){continue}break}}H[k>>2]=H[d+8>>2];sa:{if(H[d+24>>2]<0){break sa}b=H[d+16>>2];if(!b){break sa}e=H[33808];Ra[H[H[e+12>>2]+12>>2]](e+12|0,b);e=H[d+20>>2]}H[d+24>>2]=h;H[d+16>>2]=c;H[d+20>>2]=e+1;break qa}H[H[d+16>>2]+(c<<2)>>2]=b;H[d+20>>2]=c+1}b=H[H[f+288>>2]>>2];H[f+288>>2]=b;if(b){c=H[d+20>>2];e=H[d+24>>2];continue}break}c=H[d+20>>2];g=H[d+16>>2]}else{g=0}b=c;c=d+8|0;bP(g,b,c);bP(H[f+264>>2],H[f+268>>2],c);c=H[f+268>>2];if(c){e=H[f+264>>2];g=e+(c<<2)|0;c=H[d+16>>2];while(1){h=H[f+276>>2];if(h){b=H[e>>2];h=b+N(h,80)|0;while(1){ta:{if(!((H[d+16>>2]+(H[d+20>>2]<<2)|0)==(c|0)|H[c>>2]!=(b|0))){c=c+4|0;break ta}RG(b)}b=b+80|0;if((h|0)!=(b|0)){continue}break}}e=e+4|0;if((g|0)!=(e|0)){continue}break}}c=H[d+24>>2];ua:{if((c|0)<0|!(c&2147483647)){break ua}c=H[d+16>>2];if(!c){break ua}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,c)}Oa=d+32|0}b=H[f+268>>2];if(b){c=H[f+264>>2];b=c+(b<<2)|0;while(1){d=H[c>>2];if(d){e=H[33808];Ra[H[H[e+12>>2]+12>>2]](e+12|0,d)}c=c+4|0;if((b|0)!=(c|0)){continue}break}}c=H[f+272>>2];va:{if((c|0)<0|!(c&2147483647)){break va}c=H[f+264>>2];if((c|0)==(f+4|0)){F[f+260|0]=0;break va}if(!c){break va}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,c)}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,f)}f=H[i+2412>>2];if(f){if(H[f+280>>2]){c=0;e=0;d=Oa-32|0;Oa=d;H[d+24>>2]=0;H[d+16>>2]=0;H[d+20>>2]=0;b=H[f+288>>2];if(b){while(1){H[d+8>>2]=b;wa:{if((e&2147483647)>>>0<=c>>>0){c=0;b=H[d+24>>2]&2147483647;h=b?b<<1:1;xa:{if(!h){break xa}b=h<<2;if(!b){break xa}c=H[33808];e=Ra[H[H[c>>2]+20>>2]](c)|0?41318:55639;c=Ra[H[H[c+12>>2]+8>>2]](c+12|0,b,e,13582,553)|0}e=H[d+20>>2];k=(e<<2)+c|0;if((e|0)>0){g=H[d+16>>2];b=c;while(1){H[b>>2]=H[g>>2];g=g+4|0;b=b+4|0;if(k>>>0>b>>>0){continue}break}}H[k>>2]=H[d+8>>2];ya:{if(H[d+24>>2]<0){break ya}b=H[d+16>>2];if(!b){break ya}e=H[33808];Ra[H[H[e+12>>2]+12>>2]](e+12|0,b);e=H[d+20>>2]}H[d+24>>2]=h;H[d+16>>2]=c;H[d+20>>2]=e+1;break wa}H[H[d+16>>2]+(c<<2)>>2]=b;H[d+20>>2]=c+1}b=H[H[f+288>>2]>>2];H[f+288>>2]=b;if(b){c=H[d+20>>2];e=H[d+24>>2];continue}break}c=H[d+16>>2];b=H[d+20>>2]}else{b=0}g=c;c=d+8|0;cP(g,b,c);cP(H[f+264>>2],H[f+268>>2],c);c=H[d+24>>2];za:{if((c|0)<0|!(c&2147483647)){break za}c=H[d+16>>2];if(!c){break za}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,c)}Oa=d+32|0}b=H[f+268>>2];if(b){c=H[f+264>>2];b=c+(b<<2)|0;while(1){d=H[c>>2];if(d){e=H[33808];Ra[H[H[e+12>>2]+12>>2]](e+12|0,d)}c=c+4|0;if((b|0)!=(c|0)){continue}break}}c=H[f+272>>2];Aa:{if((c|0)<0|!(c&2147483647)){break Aa}c=H[f+264>>2];if((c|0)==(f+4|0)){F[f+260|0]=0;break Aa}if(!c){break Aa}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,c)}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,f)}b=H[i+2388>>2];if(b){d=H[b+16>>2];if(d){c=0;while(1){e=H[b+12>>2]+N(c,12)|0;g=H[e>>2];if(g){f=H[33808];Ra[H[H[f+12>>2]+12>>2]](f+12|0,g)}H[e>>2]=0;c=c+1|0;if((d|0)!=(c|0)){continue}break}}c=H[b+20>>2];Ba:{if((c|0)<0|!(c&2147483647)){break Ba}c=H[b+12>>2];if(!c){break Ba}d=H[33808];Ra[H[H[d+12>>2]+12>>2]](d+12|0,c)}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[i+2384>>2];if(b){d=H[b+16>>2];if(d){c=0;while(1){e=H[b+12>>2]+N(c,12)|0;g=H[e>>2];if(g){f=H[33808];Ra[H[H[f+12>>2]+12>>2]](f+12|0,g)}H[e>>2]=0;c=c+1|0;if((d|0)!=(c|0)){continue}break}}c=H[b+20>>2];Ca:{if((c|0)<0|!(c&2147483647)){break Ca}c=H[b+12>>2];if(!c){break Ca}d=H[33808];Ra[H[H[d+12>>2]+12>>2]](d+12|0,c)}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[i+2392>>2];if(b){d=H[b+16>>2];if(d){c=0;while(1){e=H[b+12>>2]+N(c,12)|0;g=H[e>>2];if(g){f=H[33808];Ra[H[H[f+12>>2]+12>>2]](f+12|0,g)}H[e>>2]=0;c=c+1|0;if((d|0)!=(c|0)){continue}break}}c=H[b+20>>2];Da:{if((c|0)<0|!(c&2147483647)){break Da}c=H[b+12>>2];if(!c){break Da}d=H[33808];Ra[H[H[d+12>>2]+12>>2]](d+12|0,c)}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}h=H[i+2400>>2];if(h){if(H[h+280>>2]){e=0;d=0;f=Oa-32|0;Oa=f;H[f+24>>2]=0;H[f+16>>2]=0;H[f+20>>2]=0;c=H[h+288>>2];if(c){while(1){H[f+8>>2]=c;Ea:{if((d&2147483647)>>>0<=e>>>0){dP(f+16|0,f+8|0);break Ea}H[H[f+16>>2]+(e<<2)>>2]=c;H[f+20>>2]=e+1}c=H[H[h+288>>2]>>2];H[h+288>>2]=c;if(c){e=H[f+20>>2];d=H[f+24>>2];continue}break}e=H[f+20>>2];b=H[f+16>>2]}else{b=0}c=f+8|0;eP(b,e,c);eP(H[h+264>>2],H[h+268>>2],c);c=H[h+268>>2];if(c){g=H[h+264>>2];k=g+(c<<2)|0;e=H[f+16>>2];while(1){d=H[h+276>>2];Fa:{if(!d){break Fa}b=H[g>>2];j=(d<<6)+-64|0;if(j&64){c=b}else{Ga:{if(!((H[f+16>>2]+(H[f+20>>2]<<2)|0)==(e|0)|(b|0)!=H[e>>2])){e=e+4|0;break Ga}Ra[H[H[b>>2]>>2]](b)|0}c=b+192|0}if(!j){break Fa}d=b+N(d,192)|0;while(1){Ha:{if(!((H[f+16>>2]+(H[f+20>>2]<<2)|0)==(e|0)|H[e>>2]!=(c|0))){e=e+4|0;break Ha}Ra[H[H[c>>2]>>2]](c)|0}b=c+192|0;Ia:{if(!((H[f+16>>2]+(H[f+20>>2]<<2)|0)==(e|0)|(b|0)!=H[e>>2])){e=e+4|0;break Ia}Ra[H[H[b>>2]>>2]](b)|0}c=c+384|0;if((d|0)!=(c|0)){continue}break}}g=g+4|0;if((k|0)!=(g|0)){continue}break}}c=H[f+24>>2];Ja:{if((c|0)<0|!(c&2147483647)){break Ja}c=H[f+16>>2];if(!c){break Ja}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,c-H[c-4>>2]|0)}Oa=f+32|0}b=H[h+268>>2];if(b){c=H[h+264>>2];d=c+(b<<2)|0;while(1){b=H[c>>2];if(b){e=H[33808];Ra[H[H[e+12>>2]+12>>2]](e+12|0,b-H[b-4>>2]|0)}c=c+4|0;if((d|0)!=(c|0)){continue}break}}c=H[h+272>>2];Ka:{if((c|0)<0|!(c&2147483647)){break Ka}c=H[h+264>>2];if((c|0)==(h+4|0)){F[h+260|0]=0;break Ka}if(!c){break Ka}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,c-H[c-4>>2]|0)}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,h)}h=H[i+2404>>2];if(h){if(H[h+280>>2]){e=0;d=0;f=Oa-32|0;Oa=f;H[f+24>>2]=0;H[f+16>>2]=0;H[f+20>>2]=0;c=H[h+288>>2];if(c){while(1){H[f+8>>2]=c;La:{if((d&2147483647)>>>0<=e>>>0){dP(f+16|0,f+8|0);break La}H[H[f+16>>2]+(e<<2)>>2]=c;H[f+20>>2]=e+1}c=H[H[h+288>>2]>>2];H[h+288>>2]=c;if(c){e=H[f+20>>2];d=H[f+24>>2];continue}break}e=H[f+20>>2];b=H[f+16>>2]}else{b=0}c=f+8|0;eP(b,e,c);eP(H[h+264>>2],H[h+268>>2],c);c=H[h+268>>2];if(c){g=H[h+264>>2];k=g+(c<<2)|0;e=H[f+16>>2];while(1){d=H[h+276>>2];Ma:{if(!d){break Ma}b=H[g>>2];j=(d<<6)+-64|0;if(j&64){c=b}else{Na:{if(!((H[f+16>>2]+(H[f+20>>2]<<2)|0)==(e|0)|(b|0)!=H[e>>2])){e=e+4|0;break Na}Ra[H[H[b>>2]>>2]](b)|0}c=b+704|0}if(!j){break Ma}d=b+N(d,704)|0;while(1){Oa:{if(!((H[f+16>>2]+(H[f+20>>2]<<2)|0)==(e|0)|H[e>>2]!=(c|0))){e=e+4|0;break Oa}Ra[H[H[c>>2]>>2]](c)|0}b=c+704|0;Pa:{if(!((H[f+16>>2]+(H[f+20>>2]<<2)|0)==(e|0)|(b|0)!=H[e>>2])){e=e+4|0;break Pa}Ra[H[H[b>>2]>>2]](b)|0}c=c+1408|0;if((d|0)!=(c|0)){continue}break}}g=g+4|0;if((k|0)!=(g|0)){continue}break}}c=H[f+24>>2];Qa:{if((c|0)<0|!(c&2147483647)){break Qa}c=H[f+16>>2];if(!c){break Qa}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,c-H[c-4>>2]|0)}Oa=f+32|0}b=H[h+268>>2];if(b){c=H[h+264>>2];d=c+(b<<2)|0;while(1){b=H[c>>2];if(b){e=H[33808];Ra[H[H[e+12>>2]+12>>2]](e+12|0,b-H[b-4>>2]|0)}c=c+4|0;if((d|0)!=(c|0)){continue}break}}c=H[h+272>>2];Ra:{if((c|0)<0|!(c&2147483647)){break Ra}c=H[h+264>>2];if((c|0)==(h+4|0)){F[h+260|0]=0;break Ra}if(!c){break Ra}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,c-H[c-4>>2]|0)}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,h)}c=H[i+1192>>2];b=H[c+8>>2];Sa:{Ta:{if((b|0)<0|!(b&2147483647)){break Ta}b=H[c>>2];if(!b){break Ta}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b);c=H[i+1192>>2];if(!c){break Sa}}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,c)}c=H[i+2376>>2];if(c){b=H[c+40>>2];Ua:{if((b|0)<0|!(b&2147483647)){break Ua}b=H[c+32>>2];if(!b){break Ua}d=H[33808];Ra[H[H[d+12>>2]+12>>2]](d+12|0,b)}b=H[c+20>>2];if(!(!b|H[c+24>>2]<0)){d=H[33808];Ra[H[H[d+12>>2]+12>>2]](d+12|0,b)}H[c+20>>2]=0;b=H[c+16>>2];Va:{if((b|0)<0|!(b&2147483647)){break Va}b=H[c+8>>2];if(!b){break Va}d=H[33808];Ra[H[H[d+12>>2]+12>>2]](d+12|0,b)}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,c)}c=H[i+2372>>2];if(c){b=H[c+40>>2];Wa:{if((b|0)<0|!(b&2147483647)){break Wa}b=H[c+32>>2];if(!b){break Wa}d=H[33808];Ra[H[H[d+12>>2]+12>>2]](d+12|0,b)}b=H[c+20>>2];if(!(!b|H[c+24>>2]<0)){d=H[33808];Ra[H[H[d+12>>2]+12>>2]](d+12|0,b)}H[c+20>>2]=0;b=H[c+16>>2];Xa:{if((b|0)<0|!(b&2147483647)){break Xa}b=H[c+8>>2];if(!b){break Xa}d=H[33808];Ra[H[H[d+12>>2]+12>>2]](d+12|0,b)}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,c)}c=H[i+2368>>2];if(c){b=H[c+40>>2];Ya:{if((b|0)<0|!(b&2147483647)){break Ya}b=H[c+32>>2];if(!b){break Ya}d=H[33808];Ra[H[H[d+12>>2]+12>>2]](d+12|0,b)}b=H[c+20>>2];if(!(!b|H[c+24>>2]<0)){d=H[33808];Ra[H[H[d+12>>2]+12>>2]](d+12|0,b)}H[c+20>>2]=0;b=H[c+16>>2];Za:{if((b|0)<0|!(b&2147483647)){break Za}b=H[c+8>>2];if(!b){break Za}d=H[33808];Ra[H[H[d+12>>2]+12>>2]](d+12|0,b)}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,c)}c=H[i+2364>>2];if(c){b=H[c+40>>2];_a:{if((b|0)<0|!(b&2147483647)){break _a}b=H[c+32>>2];if(!b){break _a}d=H[33808];Ra[H[H[d+12>>2]+12>>2]](d+12|0,b)}b=H[c+20>>2];if(!(!b|H[c+24>>2]<0)){d=H[33808];Ra[H[H[d+12>>2]+12>>2]](d+12|0,b)}H[c+20>>2]=0;b=H[c+16>>2];$a:{if((b|0)<0|!(b&2147483647)){break $a}b=H[c+8>>2];if(!b){break $a}d=H[33808];Ra[H[H[d+12>>2]+12>>2]](d+12|0,b)}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,c)}c=H[i+2352>>2];if(c){b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,c)}d=0;ab:{c=H[i+980>>2];if(!H[c+420>>2]){break ab}e=H[c+416>>2];b=H[e>>2];if((b|0)==-1){g=H[c+424>>2];while(1){d=d+1|0;if((g|0)==(d|0)){break ab}b=H[e+(d<<2)>>2];if((b|0)==-1){continue}break}}while(1){e=H[(H[c+408>>2]+N(b,12)|0)+8>>2];if(e){Ra[H[H[e>>2]+4>>2]](e)}b=H[H[c+412>>2]+(b<<2)>>2];if((b|0)!=-1){continue}e=H[c+416>>2];g=H[c+424>>2];while(1){d=d+1|0;if((g|0)==(d|0)){break ab}b=H[e+(d<<2)>>2];if((b|0)==-1){continue}break}continue}}bb:{if(!H[c+460>>2]){break bb}d=0;e=H[c+456>>2];b=H[e>>2];if((b|0)==-1){g=H[c+464>>2];while(1){d=d+1|0;if((g|0)==(d|0)){break bb}b=H[e+(d<<2)>>2];if((b|0)==-1){continue}break}}while(1){e=H[(H[c+448>>2]+N(b,12)|0)+8>>2];if(e){Ra[H[H[e>>2]+4>>2]](e)}b=H[H[c+452>>2]+(b<<2)>>2];if((b|0)!=-1){continue}e=H[c+456>>2];g=H[c+464>>2];while(1){d=d+1|0;if((g|0)==(d|0)){break bb}b=H[e+(d<<2)>>2];if((b|0)==-1){continue}break}continue}}g=H[c+380>>2];if(g){d=0;while(1){e=H[c+376>>2];b=H[c+372>>2];cb:{if((b|0)!=-1){while(1){if((b|0)==(d|0)){break cb}b=H[e+(b<<2)>>2];if((b|0)!=-1){continue}break}}b=H[e+(d<<2)>>2];if(!b){break cb}b=eH(b);e=H[33808];Ra[H[H[e+12>>2]+12>>2]](e+12|0,b)}d=d+1|0;if((g|0)!=(d|0)){continue}break}}d=H[c+560>>2];b=H[d>>2];if(b){H[d>>2]=H[b>>2]}if(b){while(1){d=H[b+48>>2];db:{if((d|0)<0|!(d&2147483647)){break db}d=H[b+40>>2];if(!d){break db}e=H[33808];Ra[H[H[e+12>>2]+12>>2]](e+12|0,d)}d=H[b+36>>2];eb:{if((d|0)<0|!(d&2147483647)){break eb}d=H[b+28>>2];if(!d){break eb}e=H[33808];Ra[H[H[e+12>>2]+12>>2]](e+12|0,d)}d=H[b+24>>2];fb:{if((d|0)<0|!(d&2147483647)){break fb}d=H[b+16>>2];if(!d){break fb}e=H[33808];Ra[H[H[e+12>>2]+12>>2]](e+12|0,d)}d=H[b+12>>2];gb:{if((d|0)<0|!(d&2147483647)){break gb}d=H[b+4>>2];if(!d){break gb}e=H[33808];Ra[H[H[e+12>>2]+12>>2]](e+12|0,d)}d=H[33808];Ra[H[H[d+12>>2]+12>>2]](d+12|0,b);d=H[c+560>>2];b=H[d>>2];if(b){H[d>>2]=H[b>>2]}if(b){continue}break}}b=H[c+560>>2];if(b){d=H[33808];Ra[H[H[d+12>>2]+12>>2]](d+12|0,b)}b=H[c+512>>2];if(b){d=H[33808];Ra[H[H[d+12>>2]+12>>2]](d+12|0,b)}b=H[c+508>>2];hb:{if((b|0)<0|!(b&2147483647)){break hb}b=H[c+500>>2];if(!b){break hb}d=H[33808];Ra[H[H[d+12>>2]+12>>2]](d+12|0,b)}b=H[c+492>>2];ib:{if((b|0)<0|!(b&2147483647)){break ib}b=H[c+484>>2];if(!b){break ib}d=H[33808];Ra[H[H[d+12>>2]+12>>2]](d+12|0,b)}b=H[c+444>>2];if(b){d=H[33808];Ra[H[H[d+12>>2]+12>>2]](d+12|0,b)}b=H[c+404>>2];if(b){d=H[33808];Ra[H[H[d+12>>2]+12>>2]](d+12|0,b)}b=H[c+396>>2];jb:{if((b|0)<0|!(b&2147483647)){break jb}b=H[c+388>>2];if(!b){break jb}d=H[33808];Ra[H[H[d+12>>2]+12>>2]](d+12|0,b)}b=H[c+384>>2];kb:{if((b|0)<0|!(b&2147483647)){break kb}b=H[c+376>>2];if(!b){break kb}d=H[33808];Ra[H[H[d+12>>2]+12>>2]](d+12|0,b)}b=H[c+348>>2];lb:{if((b|0)<0|!(b&2147483647)){break lb}b=H[c+340>>2];if(!b){break lb}d=H[33808];Ra[H[H[d+12>>2]+12>>2]](d+12|0,b)}b=H[c+336>>2];mb:{if((b|0)<0|!(b&2147483647)){break mb}b=H[c+328>>2];if(!b){break mb}d=H[33808];Ra[H[H[d+12>>2]+12>>2]](d+12|0,b)}b=H[c+324>>2];nb:{if((b|0)<0|!(b&2147483647)){break nb}b=H[c+316>>2];if(!b){break nb}d=H[33808];Ra[H[H[d+12>>2]+12>>2]](d+12|0,b)}b=H[c+312>>2];ob:{if((b|0)<0|!(b&2147483647)){break ob}b=H[c+304>>2];if(!b){break ob}d=H[33808];Ra[H[H[d+12>>2]+12>>2]](d+12|0,b)}b=H[c+300>>2];pb:{if((b|0)<0|!(b&2147483647)){break pb}b=H[c+292>>2];if(!b){break pb}d=H[33808];Ra[H[H[d+12>>2]+12>>2]](d+12|0,b)}b=H[c+288>>2];qb:{if((b|0)<0|!(b&2147483647)){break qb}b=H[c+280>>2];if(!b){break qb}d=H[33808];Ra[H[H[d+12>>2]+12>>2]](d+12|0,b)}b=H[c+268>>2];rb:{if((b|0)<0|!(b&2147483647)){break rb}b=H[c+260>>2];if(!b){break rb}d=H[c+256>>2];Ra[H[H[d>>2]+12>>2]](d,b)}b=H[c+252>>2];sb:{if((b|0)<0|!(b&2147483647)){break sb}b=H[c+244>>2];if(!b){break sb}d=H[c+240>>2];Ra[H[H[d>>2]+12>>2]](d,b)}b=H[c+236>>2];tb:{if((b|0)<0|!(b&2147483647)){break tb}b=H[c+228>>2];if(!b){break tb}d=H[c+224>>2];Ra[H[H[d>>2]+12>>2]](d,b)}b=H[c+204>>2];ub:{if((b|0)<0|!(b&2147483647)){break ub}b=H[c+196>>2];if(!b){break ub}d=H[33808];Ra[H[H[d+12>>2]+12>>2]](d+12|0,b)}b=H[c+188>>2];vb:{if((b|0)<0|!(b&2147483647)){break vb}b=H[c+180>>2];if(!b){break vb}d=H[c+176>>2];Ra[H[H[d>>2]+12>>2]](d,b)}b=H[c+160>>2];if(!(!b|H[c+164>>2]<0)){d=H[c+168>>2];Ra[H[H[d>>2]+12>>2]](d,b)}H[c+160>>2]=0;b=H[c+148>>2];if(!(!b|H[c+152>>2]<0)){d=H[33808];Ra[H[H[d+12>>2]+12>>2]](d+12|0,b)}H[c+148>>2]=0;b=H[c+136>>2];if(!(!b|H[c+140>>2]<0)){d=H[33808];Ra[H[H[d+12>>2]+12>>2]](d+12|0,b)}H[c+136>>2]=0;H[c+104>>2]=0;H[c+88>>2]=110900;H[c- -64>>2]=0;H[c+48>>2]=110900;H[c+24>>2]=0;H[c+8>>2]=110900;b=H[c>>2];if(b){d=H[33808];Ra[H[H[d+12>>2]+12>>2]](d+12|0,b)}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,c);c=H[i+984>>2];Ra[H[H[c>>2]+40>>2]](c);c=H[i+1016>>2];Ra[H[H[c>>2]+8>>2]](c)|0;c=H[i+1016>>2];if(c){b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,c)}c=H[i+1012>>2];Ra[H[H[c>>2]>>2]](c)|0;c=H[i+1012>>2];if(c){b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,c)}c=H[i+1004>>2];Ra[H[H[c>>2]>>2]](c);c=H[i+988>>2];b=H[c+324>>2];if(b){d=H[33808];Ra[H[H[d+12>>2]+12>>2]](d+12|0,b)}b=H[c+296>>2];wb:{if((b|0)<0|!(b&2147483647)){break wb}b=H[c+288>>2];if(!b){break wb}d=H[33808];Ra[H[H[d+12>>2]+12>>2]](d+12|0,b)}b=H[c+284>>2];xb:{if((b|0)<0|!(b&2147483647)){break xb}b=H[c+276>>2];if(!b){break xb}d=H[33808];Ra[H[H[d+12>>2]+12>>2]](d+12|0,b)}e=H[c+264>>2];if(e){b=0;while(1){d=H[H[c+260>>2]+(b<<3)>>2];if(d){e=H[33808];Ra[H[H[e+12>>2]+12>>2]](e+12|0,d);e=H[c+264>>2]}b=b+1|0;if(e>>>0>b>>>0){continue}break}}H[c+272>>2]=0;b=H[c+268>>2];yb:{if((b|0)<0|!(b&2147483647)){break yb}b=H[c+260>>2];if(!b){break yb}d=H[33808];Ra[H[H[d+12>>2]+12>>2]](d+12|0,b)}b=H[c+220>>2];if(b){d=H[33808];Ra[H[H[d+12>>2]+12>>2]](d+12|0,b)}b=H[c+216>>2];zb:{if((b|0)<0|!(b&2147483647)){break zb}b=H[c+208>>2];if(!b){break zb}d=H[33808];Ra[H[H[d+12>>2]+12>>2]](d+12|0,b)}b=H[c+204>>2];Ab:{if((b|0)<0|!(b&2147483647)){break Ab}b=H[c+196>>2];if(!b){break Ab}d=H[33808];Ra[H[H[d+12>>2]+12>>2]](d+12|0,b)}b=0;d=H[c+192>>2];Bb:{if((d|0)<0|!(d&2147483647)){break Bb}d=H[c+184>>2];if(!d){break Bb}e=H[33808];Ra[H[H[e+12>>2]+12>>2]](e+12|0,d)}e=H[c+172>>2];if(e){while(1){d=H[H[c+168>>2]+(b<<3)>>2];if(d){e=H[33808];Ra[H[H[e+12>>2]+12>>2]](e+12|0,d);e=H[c+172>>2]}b=b+1|0;if(e>>>0>b>>>0){continue}break}}b=0;H[c+180>>2]=0;d=H[c+176>>2];Cb:{if((d|0)<0|!(d&2147483647)){break Cb}d=H[c+168>>2];if(!d){break Cb}e=H[33808];Ra[H[H[e+12>>2]+12>>2]](e+12|0,d)}e=H[c+156>>2];if(e){while(1){d=H[H[c+152>>2]+(b<<3)>>2];if(d){e=H[33808];Ra[H[H[e+12>>2]+12>>2]](e+12|0,d);e=H[c+156>>2]}b=b+1|0;if(e>>>0>b>>>0){continue}break}}b=0;H[c+164>>2]=0;d=H[c+160>>2];Db:{if((d|0)<0|!(d&2147483647)){break Db}d=H[c+152>>2];if(!d){break Db}e=H[33808];Ra[H[H[e+12>>2]+12>>2]](e+12|0,d)}e=H[c+140>>2];if(e){while(1){d=H[H[c+136>>2]+(b<<3)>>2];if(d){e=H[33808];Ra[H[H[e+12>>2]+12>>2]](e+12|0,d);e=H[c+140>>2]}b=b+1|0;if(e>>>0>b>>>0){continue}break}}H[c+148>>2]=0;b=H[c+144>>2];Eb:{if((b|0)<0|!(b&2147483647)){break Eb}b=H[c+136>>2];if(!b){break Eb}d=H[33808];Ra[H[H[d+12>>2]+12>>2]](d+12|0,b)}H[c+16>>2]=0;H[c+96>>2]=0;H[c+80>>2]=110900;H[c+56>>2]=0;H[c+40>>2]=110900;H[c>>2]=110900;b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,c);b=0;e=Oa-16|0;Oa=e;c=H[i+1e3>>2];H[c+1208>>2]=0;H[c+1192>>2]=110900;H[c+1168>>2]=0;H[c+1152>>2]=110900;H[c+1128>>2]=0;H[c+1112>>2]=110900;YE(c+640|0);YE(c+168|0);d=H[c+152>>2];if(!(!d|H[c+156>>2]<0)){g=H[33808];Ra[H[H[g+12>>2]+12>>2]](g+12|0,d)}H[c+152>>2]=0;d=H[c+132>>2];if(d){while(1){g=H[H[c+128>>2]+(b<<2)>>2];if(g){d=H[33808];Ra[H[H[d+12>>2]+12>>2]](d+12|0,g);d=H[c+132>>2]}b=b+1|0;if(d>>>0>b>>>0){continue}break}}b=0;H[e+4>>2]=0;d=H[c+132>>2];if((d|0)<0){g=H[c+128>>2];d=g+(d<<2)|0;while(1){H[d>>2]=H[e+4>>2];d=d+4|0;if(g>>>0>d>>>0){continue}break}}H[c+132>>2]=0;d=H[c+136>>2];Fb:{if((d|0)<0|!(d&2147483647)){break Fb}d=H[c+128>>2];if(!d){break Fb}g=H[33808];Ra[H[H[g+12>>2]+12>>2]](g+12|0,d)}d=H[c+108>>2];if(d){while(1){g=H[H[c+104>>2]+(b<<2)>>2];if(g){d=H[33808];Ra[H[H[d+12>>2]+12>>2]](d+12|0,g);d=H[c+108>>2]}b=b+1|0;if(d>>>0>b>>>0){continue}break}}H[e+8>>2]=0;b=H[c+108>>2];if((b|0)<0){d=H[c+104>>2];b=d+(b<<2)|0;while(1){H[b>>2]=H[e+8>>2];b=b+4|0;if(d>>>0>b>>>0){continue}break}}H[c+108>>2]=0;b=H[c+112>>2];Gb:{if((b|0)<0|!(b&2147483647)){break Gb}b=H[c+104>>2];if(!b){break Gb}d=H[33808];Ra[H[H[d+12>>2]+12>>2]](d+12|0,b)}b=H[c+100>>2];Hb:{if((b|0)<0|!(b&2147483647)){break Hb}b=H[c+92>>2];if(!b){break Hb}d=H[33808];Ra[H[H[d+12>>2]+12>>2]](d+12|0,b)}b=H[c+88>>2];Ib:{if((b|0)<0|!(b&2147483647)){break Ib}b=H[c+80>>2];if(!b){break Ib}d=H[33808];Ra[H[H[d+12>>2]+12>>2]](d+12|0,b)}b=H[c+76>>2];Jb:{if((b|0)<0|!(b&2147483647)){break Jb}b=H[c+68>>2];if(!b){break Jb}d=H[33808];Ra[H[H[d+12>>2]+12>>2]](d+12|0,b)}d=H[c+48>>2];if(d){b=0;while(1){g=H[H[c+44>>2]+(b<<2)>>2];if(g){d=H[33808];Ra[H[H[d+12>>2]+12>>2]](d+12|0,g);d=H[c+48>>2]}b=b+1|0;if(d>>>0>b>>>0){continue}break}}H[e+12>>2]=0;b=H[c+48>>2];if((b|0)<0){d=H[c+44>>2];b=d+(b<<2)|0;while(1){H[b>>2]=H[e+12>>2];b=b+4|0;if(d>>>0>b>>>0){continue}break}}H[c+48>>2]=0;b=H[c+52>>2];Kb:{if((b|0)<0|!(b&2147483647)){break Kb}b=H[c+44>>2];if(!b){break Kb}d=H[33808];Ra[H[H[d+12>>2]+12>>2]](d+12|0,b)}b=H[c+40>>2];Lb:{if((b|0)<0|!(b&2147483647)){break Lb}b=H[c+32>>2];if(!b){break Lb}d=H[33808];Ra[H[H[d+12>>2]+12>>2]](d+12|0,b)}b=H[c+24>>2];Mb:{if((b|0)<0|!(b&2147483647)){break Mb}b=H[c+16>>2];if(!b){break Mb}d=H[33808];Ra[H[H[d+12>>2]+12>>2]](d+12|0,b)}b=H[c+8>>2];Nb:{if((b|0)<0|!(b&2147483647)){break Nb}c=H[c>>2];if(!c){break Nb}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,c)}Oa=e+16|0;c=H[i+1e3>>2];if(c){b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,c)}c=H[i+4612>>2];if(c){Ra[H[H[c>>2]+40>>2]](c)}d=H[i+976>>2];if(d){e=0;c=H[d+1816>>2];Ob:{if(!c){break Ob}b=H[c+12>>2];Pb:{if((b|0)<0|!(b&2147483647)){break Pb}b=H[c+4>>2];if(!b){break Pb}c=H[c>>2];Ra[H[H[c>>2]+12>>2]](c,b);c=H[d+1816>>2];if(!c){break Ob}}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,c)}H[d+1816>>2]=0;j=d+312|0;wJ(j);c=H[d+1016>>2];if(c){b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,c)}c=H[d+984>>2];if(!(!c|H[d+988>>2]<0)){b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,c)}H[d+984>>2]=0;c=H[d+972>>2];if(!(!c|H[d+976>>2]<0)){b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,c)}H[d+972>>2]=0;c=H[d+960>>2];if(!(!c|H[d+964>>2]<0)){b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,c)}H[d+960>>2]=0;c=H[d+948>>2];if(!(!c|H[d+952>>2]<0)){b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,c)}H[d+948>>2]=0;c=H[d+936>>2];if(!(!c|H[d+940>>2]<0)){b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,c)}H[d+936>>2]=0;if(H[d+924>>2]){c=0;f=Oa-32|0;Oa=f;H[f+24>>2]=0;H[f+16>>2]=0;H[f+20>>2]=0;b=H[d+932>>2];if(b){while(1){H[f+8>>2]=b;Qb:{if((e&2147483647)>>>0<=c>>>0){c=0;b=H[f+24>>2]&2147483647;h=b?b<<1:1;Rb:{if(!h){break Rb}b=h<<2;if(!b){break Rb}c=H[33808];e=Ra[H[H[c>>2]+20>>2]](c)|0?39648:55639;c=Ra[H[H[c+12>>2]+8>>2]](c+12|0,b,e,13582,553)|0}e=H[f+20>>2];k=(e<<2)+c|0;if((e|0)>0){g=H[f+16>>2];b=c;while(1){H[b>>2]=H[g>>2];g=g+4|0;b=b+4|0;if(k>>>0>b>>>0){continue}break}}H[k>>2]=H[f+8>>2];Sb:{if(H[f+24>>2]<0){break Sb}b=H[f+16>>2];if(!b){break Sb}e=H[33808];Ra[H[H[e+12>>2]+12>>2]](e+12|0,b);e=H[f+20>>2]}H[f+24>>2]=h;H[f+16>>2]=c;H[f+20>>2]=e+1;break Qb}H[H[f+16>>2]+(c<<2)>>2]=b;H[f+20>>2]=c+1}b=H[H[d+932>>2]>>2];H[d+932>>2]=b;if(b){c=H[f+20>>2];e=H[f+24>>2];continue}break}c=H[f+16>>2];b=H[f+20>>2]}else{b=0}g=c;c=f+8|0;DJ(g,b,c);DJ(H[d+908>>2],H[d+912>>2],c);c=H[f+24>>2];Tb:{if((c|0)<0|!(c&2147483647)){break Tb}c=H[f+16>>2];if(!c){break Tb}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,c)}Oa=f+32|0}b=H[d+912>>2];if(b){c=H[d+908>>2];b=c+(b<<2)|0;while(1){e=H[c>>2];if(e){g=H[33808];Ra[H[H[g+12>>2]+12>>2]](g+12|0,e)}c=c+4|0;if((b|0)!=(c|0)){continue}break}}c=H[d+916>>2];Ub:{if((c|0)<0|!(c&2147483647)){break Ub}c=H[d+908>>2];if((c|0)==(d+648|0)){F[d+904|0]=0;break Ub}if(!c){break Ub}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,c)}if(H[d+632>>2]){c=0;e=0;f=Oa-32|0;Oa=f;H[f+24>>2]=0;H[f+16>>2]=0;H[f+20>>2]=0;b=H[d+640>>2];if(b){while(1){H[f+8>>2]=b;Vb:{if((e&2147483647)>>>0<=c>>>0){c=0;b=H[f+24>>2]&2147483647;h=b?b<<1:1;Wb:{if(!h){break Wb}b=h<<2;if(!b){break Wb}c=H[33808];e=Ra[H[H[c>>2]+20>>2]](c)|0?39806:55639;c=Ra[H[H[c+12>>2]+8>>2]](c+12|0,b,e,13582,553)|0}e=H[f+20>>2];k=(e<<2)+c|0;if((e|0)>0){g=H[f+16>>2];b=c;while(1){H[b>>2]=H[g>>2];g=g+4|0;b=b+4|0;if(k>>>0>b>>>0){continue}break}}H[k>>2]=H[f+8>>2];Xb:{if(H[f+24>>2]<0){break Xb}b=H[f+16>>2];if(!b){break Xb}e=H[33808];Ra[H[H[e+12>>2]+12>>2]](e+12|0,b);e=H[f+20>>2]}H[f+24>>2]=h;H[f+16>>2]=c;H[f+20>>2]=e+1;break Vb}H[H[f+16>>2]+(c<<2)>>2]=b;H[f+20>>2]=c+1}b=H[H[d+640>>2]>>2];H[d+640>>2]=b;if(b){c=H[f+20>>2];e=H[f+24>>2];continue}break}c=H[f+16>>2];b=H[f+20>>2]}else{b=0}g=c;c=f+8|0;EJ(g,b,c);EJ(H[d+616>>2],H[d+620>>2],c);c=H[f+24>>2];Yb:{if((c|0)<0|!(c&2147483647)){break Yb}c=H[f+16>>2];if(!c){break Yb}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,c)}Oa=f+32|0}b=H[d+620>>2];if(b){c=H[d+616>>2];b=c+(b<<2)|0;while(1){e=H[c>>2];if(e){g=H[33808];Ra[H[H[g+12>>2]+12>>2]](g+12|0,e)}c=c+4|0;if((b|0)!=(c|0)){continue}break}}c=H[d+624>>2];Zb:{if((c|0)<0|!(c&2147483647)){break Zb}c=H[d+616>>2];if((c|0)==(d+356|0)){F[d+612|0]=0;break Zb}if(!c){break Zb}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,c)}wJ(j);c=H[d+340>>2];if(!(!c|H[d+344>>2]<0)){b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,c)}H[d+340>>2]=0;b=H[d+304>>2];c=H[b>>2];if(c){H[b>>2]=H[c>>2]}if(c){while(1){b=H[c+7204>>2];if(!(!b|H[c+7208>>2]<0)){e=H[33808];Ra[H[H[e+12>>2]+12>>2]](e+12|0,b)}H[c+7204>>2]=0;b=H[c+7192>>2];if(!(!b|H[c+7196>>2]<0)){e=H[33808];Ra[H[H[e+12>>2]+12>>2]](e+12|0,b)}H[c+7192>>2]=0;b=H[c+7124>>2];_b:{if((b|0)<0|!(b&2147483647)){break _b}b=H[c+7116>>2];if(!b){break _b}e=H[33808];Ra[H[H[e+12>>2]+12>>2]](e+12|0,b)}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,c-H[c-4>>2]|0);b=H[d+304>>2];c=H[b>>2];if(c){H[b>>2]=H[c>>2]}if(c){continue}break}}c=H[d+304>>2];if(c){b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,c)}No(d+212|0);c=d+24|0;Ix(c);Ix(c);Jx(c);Jx(c);Kx(c);Lx(c);Lx(c);b=H[c+116>>2];if(b){while(1){b=b-1|0;e=H[H[c+112>>2]+(b<<2)>>2];H[c+116>>2]=b;if(e){b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,e);b=H[c+116>>2]}if(b){continue}break}}b=H[c+120>>2];$b:{if((b|0)<0|!(b&2147483647)){break $b}b=H[c+112>>2];if(!b){break $b}e=H[33808];Ra[H[H[e+12>>2]+12>>2]](e+12|0,b)}b=H[c+108>>2];ac:{if((b|0)<0|!(b&2147483647)){break ac}b=H[c+100>>2];if(!b){break ac}e=H[33808];Ra[H[H[e+12>>2]+12>>2]](e+12|0,b)}b=H[c+96>>2];bc:{if((b|0)<0|!(b&2147483647)){break bc}b=H[c+88>>2];if(!b){break bc}e=H[33808];Ra[H[H[e+12>>2]+12>>2]](e+12|0,b)}b=H[c+84>>2];cc:{if((b|0)<0|!(b&2147483647)){break cc}b=H[c+76>>2];if(!b){break cc}e=H[33808];Ra[H[H[e+12>>2]+12>>2]](e+12|0,b)}b=H[c+72>>2];dc:{if((b|0)<0|!(b&2147483647)){break dc}b=H[c+64>>2];if(!b){break dc}e=H[33808];Ra[H[H[e+12>>2]+12>>2]](e+12|0,b)}b=H[c+60>>2];ec:{if((b|0)<0|!(b&2147483647)){break ec}b=H[c+52>>2];if(!b){break ec}e=H[33808];Ra[H[H[e+12>>2]+12>>2]](e+12|0,b)}b=H[c+48>>2];fc:{if((b|0)<0|!(b&2147483647)){break fc}b=H[c+40>>2];if(!b){break fc}e=H[33808];Ra[H[H[e+12>>2]+12>>2]](e+12|0,b)}b=H[c+36>>2];gc:{if((b|0)<0|!(b&2147483647)){break gc}b=H[c+28>>2];if(!b){break gc}e=H[33808];Ra[H[H[e+12>>2]+12>>2]](e+12|0,b)}b=H[c+24>>2];hc:{if((b|0)<0|!(b&2147483647)){break hc}b=H[c+16>>2];if(!b){break hc}e=H[33808];Ra[H[H[e+12>>2]+12>>2]](e+12|0,b)}b=H[c+12>>2];ic:{if((b|0)<0|!(b&2147483647)){break ic}b=H[c+4>>2];if(!b){break ic}e=H[33808];Ra[H[H[e+12>>2]+12>>2]](e+12|0,b)}c=H[c>>2];if(c){b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,c)}c=H[d+12>>2];jc:{if((c|0)<0|!(c&2147483647)){break jc}c=H[d+4>>2];if(!c){break jc}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,c)}c=H[d>>2];if(c){b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,c)}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,d);H[i+976>>2]=0}c=H[i+1144>>2];b=H[c+12>>2];kc:{lc:{if((b|0)<0|!(b&2147483647)){break lc}b=H[c+4>>2];if(!b){break lc}c=H[c>>2];Ra[H[H[c>>2]+12>>2]](c,b);c=H[i+1144>>2];if(!c){break kc}}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,c)}c=H[i+1008>>2];if(c){Ra[H[H[c>>2]>>2]](c)|0;c=H[i+1008>>2];if(c){b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,c)}H[i+1008>>2]=0}Oa=o+16|0;H[m+4884>>2]=0;H[m+4872>>2]=0;H[m+4860>>2]=0;c=H[m+4796>>2];d=H[m+4804>>2]+2|0;if(c>>>0>d>>>0){while(1){c=c-1|0;b=H[H[m+4792>>2]+(c<<2)>>2];H[m+4796>>2]=c;if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b);c=H[m+4796>>2]}if(c>>>0>d>>>0){continue}break}}H[m+4804>>2]=0;H[m+4808>>2]=0;if(p){Ra[H[H[a>>2]+404>>2]](a)}c=H[a+6340>>2];mc:{if(c>>>0>127){break mc}b=c+135312|0;if(!I[b|0]){break mc}F[b|0]=0;H[(c<<2)+135440>>2]=0}c=a+6348|0;b=H[H[c>>2]>>2];if(b){d=H[33808];Ra[H[H[d+12>>2]+12>>2]](d+12|0,b)}c=H[c>>2];if(c){b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,c)}H[a+6296>>2]=0;H[a+6280>>2]=110900;H[a+6256>>2]=0;H[a+6240>>2]=110900;H[a+6216>>2]=0;H[a+6200>>2]=110900;H[a+6184>>2]=0;H[a+6168>>2]=110900;H[a+6152>>2]=0;H[a+6136>>2]=110900;H[a+6120>>2]=0;H[a+6104>>2]=110900;c=H[a+6088>>2];nc:{if((c|0)<0|!(c&2147483647)){break nc}c=H[a+6080>>2];if(!c){break nc}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,c)}c=H[a+6068>>2];if(c){b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,c)}c=H[a+6064>>2];if(c){b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,c)}c=H[a+6060>>2];if(c){b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,c)}c=H[a+6032>>2];oc:{if((c|0)<0|!(c&2147483647)){break oc}c=H[a+6024>>2];if(!c){break oc}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,c)}c=H[a+5984>>2];if(c){b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,c)}c=H[a+5944>>2];if(c){b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,c)}c=H[a+5940>>2];pc:{if((c|0)<0|!(c&2147483647)){break pc}c=H[a+5932>>2];if(!c){break pc}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,c)}c=H[a+5892>>2];if(c){b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,c)}No(a+5828|0);H[a+5800>>2]=0;H[a+5784>>2]=110900;H[a>>2]=109632;H[a+5760>>2]=0;H[a+5744>>2]=110900;GD(a+5584|0);Jo(m);return a|0}function Yx(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=O(d);e=O(e);f=O(f);g=O(g);h=O(h);i=i|0;var j=O(0),k=0,l=0,m=0,n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=0,t=0,u=0,v=0,w=0,x=O(0),y=0,z=O(0),A=0,B=O(0),C=O(0),D=O(0),E=O(0),K=O(0),M=O(0),P=0,Q=0,R=0,S=0,T=O(0),U=0,V=0,X=O(0),Y=O(0),Z=O(0),_=O(0),$=O(0),aa=O(0),ba=O(0),ca=O(0),da=O(0),ea=O(0),fa=O(0),ga=O(0),ha=O(0),ia=O(0),ja=O(0),ka=O(0),la=O(0),ma=O(0),na=O(0),oa=O(0),pa=O(0),qa=O(0),ra=0,sa=0,ta=O(0),ua=O(0),va=O(0),wa=O(0),xa=O(0),ya=O(0),za=O(0),Aa=O(0),Ba=O(0),Ca=0,Da=0,Ea=0,Fa=O(0),Ga=O(0),Ha=O(0),Ia=O(0),Ja=0,Ka=O(0),La=O(0),Ma=O(0),Na=O(0),Pa=O(0),Qa=O(0),Sa=O(0),Ta=O(0),Ua=O(0),Va=O(0),Wa=O(0),Xa=0,Ya=O(0),Za=O(0),_a=O(0),$a=O(0),ab=0,bb=O(0),cb=O(0),db=O(0),eb=O(0),fb=O(0),gb=O(0),hb=O(0),ib=O(0),jb=O(0),kb=O(0),lb=O(0),mb=O(0),nb=O(0),ob=O(0),pb=O(0),qb=O(0),rb=0,sb=0,tb=0,ub=0,vb=O(0),wb=O(0),xb=O(0),yb=O(0),zb=O(0),Ab=0,Bb=0,Cb=0,Db=O(0),Eb=O(0),Fb=O(0),Gb=0,Hb=0,Ib=0,Jb=O(0),Kb=O(0),Lb=O(0),Mb=O(0),Nb=O(0),Ob=O(0),Pb=O(0),Qb=O(0),Rb=O(0),Sb=O(0),Tb=O(0),Ub=O(0),Vb=0,Wb=0,Xb=0,Yb=0,Zb=0,_b=0,$b=0,ac=0,bc=O(0),cc=O(0),dc=O(0),ec=O(0),fc=O(0),gc=O(0),hc=O(0),ic=O(0),jc=O(0),kc=O(0),lc=O(0),mc=O(0),nc=O(0),oc=O(0),pc=O(0),qc=O(0),rc=O(0),sc=O(0),tc=O(0),uc=O(0),vc=O(0),wc=O(0),xc=O(0),yc=O(0),zc=0,Ac=O(0),Bc=O(0),Cc=O(0),Dc=O(0),Ec=O(0),Fc=0,Gc=O(0),Hc=O(0),Ic=O(0),Jc=O(0),Kc=O(0),Lc=O(0),Mc=O(0),Nc=O(0),Oc=O(0),Pc=O(0),Qc=O(0),Rc=O(0),Sc=O(0),Tc=O(0),Uc=O(0),Vc=O(0),Wc=O(0),Xc=O(0),Yc=O(0),Zc=O(0),_c=0,$c=O(0),ad=O(0),bd=O(0),cd=O(0),dd=0,ed=O(0),fd=O(0),gd=O(0),hd=O(0),id=O(0),jd=O(0),kd=O(0),ld=O(0),md=O(0),nd=O(0),od=O(0),pd=O(0),qd=O(0),rd=O(0),sd=O(0),td=O(0),ud=O(0),vd=O(0),wd=O(0),xd=O(0),yd=O(0),zd=O(0),Ad=O(0),Bd=O(0),Cd=O(0),Dd=O(0),Ed=O(0),Fd=O(0),Gd=O(0),Hd=O(0),Id=O(0),Jd=O(0),Kd=O(0),Ld=O(0),Md=O(0),Nd=O(0),Od=O(0),Pd=O(0),Qd=O(0),Rd=O(0),Sd=O(0),Td=O(0),Ud=O(0),Vd=O(0),Wd=O(0),Xd=O(0),Yd=O(0),Zd=O(0),_d=O(0),$d=0,ae=0,be=0,ce=0,de=0,ee=0,fe=0,ge=O(0),he=O(0),ie=O(0),je=O(0),ke=O(0),le=O(0),me=O(0),ne=O(0),oe=O(0),pe=O(0),qe=O(0),re=O(0),se=O(0),te=O(0),ue=O(0),ve=O(0),we=O(0),xe=O(0),ye=O(0),ze=O(0),Ae=O(0),Be=O(0),Ce=O(0),De=O(0),Ee=O(0),Fe=O(0),Ge=O(0),He=O(0),Ie=O(0),Je=O(0),Ke=O(0),Le=O(0),Me=O(0),Ne=O(0),Oe=O(0),Pe=O(0),Qe=O(0),Re=O(0),Se=O(0),Te=O(0),Ue=O(0),Ve=O(0),We=O(0),Xe=O(0),Ye=O(0),Ze=O(0),_e=O(0),$e=O(0),af=O(0),bf=O(0),cf=O(0),df=O(0),ef=O(0),ff=O(0),gf=O(0),hf=O(0),jf=O(0),kf=O(0),lf=O(0),mf=O(0),nf=O(0),of=O(0),pf=O(0),qf=O(0),rf=O(0),sf=O(0),tf=O(0),uf=O(0),vf=O(0),wf=O(0),xf=O(0),yf=O(0),zf=O(0),Af=O(0),Bf=O(0),Cf=O(0),Df=O(0),Ef=O(0),Ff=O(0),Gf=O(0),Hf=O(0),If=O(0),Jf=O(0),Kf=O(0),Lf=O(0),Mf=O(0),Nf=O(0),Of=O(0),Pf=O(0),Qf=O(0),Rf=O(0),Sf=O(0),Tf=0,Uf=O(0),Vf=O(0),Wf=O(0),Xf=O(0),Yf=O(0),Zf=O(0),_f=O(0),$f=O(0),ag=O(0),bg=O(0),cg=O(0),dg=O(0),eg=O(0),fg=O(0),gg=O(0),hg=O(0),ig=O(0),jg=O(0),kg=O(0),lg=O(0),mg=O(0),ng=O(0),og=O(0),pg=O(0),qg=O(0),rg=O(0),sg=O(0),tg=O(0),ug=0,vg=0,wg=0,xg=0,yg=0,zg=0,Ag=0,Bg=0,Cg=O(0),Dg=O(0),Eg=O(0),Fg=O(0),Gg=0,Hg=0,Ig=0,Jg=0,Kg=O(0),Lg=O(0),Mg=O(0),Ng=O(0),Og=0,Pg=O(0),Qg=O(0),Rg=O(0),Sg=O(0),Tg=O(0),Ug=O(0),Vg=O(0),Wg=O(0),Xg=O(0),Yg=O(0),Zg=O(0),_g=O(0),$g=O(0),ah=O(0),bh=O(0),ch=O(0),dh=O(0),eh=O(0),fh=O(0),gh=O(0),hh=O(0),ih=O(0),jh=O(0),kh=O(0),lh=O(0),mh=O(0),nh=O(0),oh=O(0),ph=O(0),qh=O(0),rh=O(0),sh=O(0),th=O(0),uh=O(0),vh=O(0),wh=O(0),xh=O(0),yh=O(0),zh=O(0),Ah=O(0);Ja=Oa-32|0;Oa=Ja;G[H[c+16>>2]+22>>1]=0;G[H[c+192>>2]+22>>1]=0;G[H[c+368>>2]+22>>1]=0;G[H[c+544>>2]+22>>1]=0;H[b+4112>>2]=0;v=b+16|0;H[c+116>>2]=v;u=H[a>>2];k=1;a:{if(I[u+12|0]>64){break a}m=b+4128|0;b:{while(1){F[Ja+31|0]=0;F[Ja+30|0]=0;w=N(V,176)+c|0;q=L[H[w+28>>2]+76>>2];j=L[H[w+32>>2]+76>>2];u=yx(v,u,Ja+31|0,Ja+30|0,Ja+24|0,Ja+20|0,Ja+16|0,Ja+12|0,j>q?q:j);k=1;if(!u){break a}H[w+120>>2]=u;F[w+124|0]=I[Ja+31|0];F[w+125|0]=I[w+125|0]|F[Ja+30|0]&1;L[w>>2]=L[Ja+24>>2]*L[w>>2];L[w+8>>2]=L[Ja+20>>2]*L[w+8>>2];L[w+4>>2]=L[Ja+16>>2]*L[w+4>>2];L[w+12>>2]=L[Ja+12>>2]*L[w+12>>2];V=V+1|0;if((V|0)==4){break b}k=H[b+4112>>2];H[(N(V,176)+c|0)+116>>2]=((k<<6)+b|0)+16;u=H[(V<<2)+a>>2];if(k+I[u+12|0]>>>0<=64){continue}break}k=1;break a}y=Oa-160|0;Oa=y;H[m+7684>>2]=0;H[m+7688>>2]=0;v=m+7296|0;c:{while(1){a=A<<2;w=N(A,176)+c|0;L[a+(y+144|0)>>2]=L[w>>2];L[a+(y+128|0)>>2]=L[w+8>>2];L[a+(y+112|0)>>2]=L[w+4>>2];L[a+(y+96|0)>>2]=L[w+12>>2];H[w+148>>2]=s;d:{if(I[w+125|0]){break d}if(zx(m,H[w+136>>2],I[w+140|0],w+36|0,w- -64|0,g)){break d}u=1;break c}H[w+156>>2]=H[m+7684>>2];u=1;if(!ez(m,H[w+116>>2],H[w+120>>2])){break c}s=H[w+156>>2];G[w+160>>1]=H[m+7684>>2]-s;b=w+36|0;a=w- -64|0;if(fz(m,H[w+116>>2],b,a,s,H[w+148>>2])){break c}gz(m,H[w+116>>2],b,a,g,H[w+148>>2],O(L[w+128>>2]+f));s=H[m+7688>>2];b=s;P=H[w+148>>2];if(b>>>0>P>>>0){while(1){a=b-1|0;if(H[(m+(a<<2)|0)+7424>>2]==65535){if(b>>>0>>0){while(1){k=m+7424|0;u=b<<2;s=u-4|0;H[k+s>>2]=H[k+u>>2];H[s+v>>2]=H[u+v>>2];b=b+1|0;s=H[m+7688>>2];if(b>>>0>>0){continue}break}P=H[w+148>>2]}s=s-1|0;H[m+7688>>2]=s}b=a;if(P>>>0>>0){continue}break}}H[w+152>>2]=s-P;A=A+1|0;if((A|0)!=4){continue}break}A=0;s=0;b=H[c+148>>2];k=H[c+152>>2];e:{if(b>>>0>=k+b>>>0){break e}P=0;if(k-1>>>0>=3){a=k&-4;while(1){u=s;s=m+(b<<2)|0;s=(((u+(H[s+7424>>2]!=65535)|0)+(H[s+7428>>2]!=65535)|0)+(H[s+7432>>2]!=65535)|0)+(H[s+7436>>2]!=65535)|0;b=b+4|0;U=U+4|0;if((a|0)!=(U|0)){continue}break}}a=k&3;if(a){while(1){s=(H[(m+(b<<2)|0)+7424>>2]!=65535)+s|0;b=b+1|0;P=P+1|0;if((a|0)!=(P|0)){continue}break}}a=N(s,104)+15&-16;if(!a){break e}u=0;a=Ra[H[H[i>>2]+4>>2]](i,a)|0;A=(a|0)==-1?0:a;if(!A){break c}}b=H[c+324>>2];v=H[c+328>>2];f:{if(b>>>0>=v+b>>>0){break f}U=0;if(v-1>>>0>=3){a=v&-4;u=0;while(1){k=m+(b<<2)|0;rb=((((H[k+7424>>2]!=65535)+rb|0)+(H[k+7428>>2]!=65535)|0)+(H[k+7432>>2]!=65535)|0)+(H[k+7436>>2]!=65535)|0;b=b+4|0;u=u+4|0;if((a|0)!=(u|0)){continue}break}}a=v&3;if(a){while(1){rb=(H[(m+(b<<2)|0)+7424>>2]!=65535)+rb|0;b=b+1|0;U=U+1|0;if((a|0)!=(U|0)){continue}break}}a=N(rb,104)+15&-16;if(!a){break f}u=0;a=Ra[H[H[i>>2]+4>>2]](i,a)|0;sb=(a|0)==-1?0:a;if(!sb){break c}}V=0;P=0;b=H[c+500>>2];v=H[c+504>>2];g:{if(b>>>0>=v+b>>>0){break g}u=0;if(v-1>>>0>=3){a=v&-4;while(1){k=m+(b<<2)|0;P=((((H[k+7424>>2]!=65535)+P|0)+(H[k+7428>>2]!=65535)|0)+(H[k+7432>>2]!=65535)|0)+(H[k+7436>>2]!=65535)|0;b=b+4|0;Xa=Xa+4|0;if((a|0)!=(Xa|0)){continue}break}}a=v&3;if(a){while(1){P=(H[(m+(b<<2)|0)+7424>>2]!=65535)+P|0;b=b+1|0;u=u+1|0;if((a|0)!=(u|0)){continue}break}}a=N(P,104)+15&-16;if(!a){break g}u=0;a=Ra[H[H[i>>2]+4>>2]](i,a)|0;V=(a|0)==-1?0:a;if(!V){break c}}U=0;b=H[c+676>>2];v=H[c+680>>2];h:{if(b>>>0>=v+b>>>0){break h}Xa=0;if(v-1>>>0>=3){a=v&-4;u=0;while(1){k=m+(b<<2)|0;U=((((H[k+7424>>2]!=65535)+U|0)+(H[k+7428>>2]!=65535)|0)+(H[k+7432>>2]!=65535)|0)+(H[k+7436>>2]!=65535)|0;b=b+4|0;u=u+4|0;if((a|0)!=(u|0)){continue}break}}a=v&3;if(a){while(1){U=(H[(m+(b<<2)|0)+7424>>2]!=65535)+U|0;b=b+1|0;Xa=Xa+1|0;if((a|0)!=(Xa|0)){continue}break}}a=N(U,104)+15&-16;if(!a){break h}u=0;a=Ra[H[H[i>>2]+4>>2]](i,a)|0;t=(a|0)==-1?0:a;if(!t){break c}}Xa=0;H[y+92>>2]=0;Q=y- -64|0;a=m;k=0;b=Oa-256|0;Oa=b;S6(b+128|0,0,128);l=S6(b,0,128);ra=I[c+124|0];Vb=H[c+152>>2];if(Vb){w=H[c+148>>2];b=0;while(1){u=0;m=b+w|0;R=a+N(m,104)|0;if(!(F[R+2817|0]&1)){u=J[R+2818>>1]!=0}S=H[(a+(m<<2)|0)+7296>>2];i:{if(!S){break i}v=b<<2;m=v+(l+128|0)|0;sa=H[m>>2];H[m>>2]=S>>>0>>0?sa:S;k=k+S|0;if(!u){break i}m=l+v|0;u=H[m>>2];v=m;m=J[R+2818>>1]<<1;H[v>>2]=m>>>0>>0?u:m;k=k+m|0}b=b+1|0;if((Vb|0)!=(b|0)){continue}break}}H[Q>>2]=k;sa=1;sa=ra?sa:I[c+300|0]!=0;Wb=H[c+328>>2];j:{if(!Wb){k=0;break j}w=H[c+324>>2];k=0;b=0;while(1){u=0;m=b+w|0;R=a+N(m,104)|0;if(!(F[R+2817|0]&1)){u=J[R+2818>>1]!=0}S=H[(a+(m<<2)|0)+7296>>2];k:{if(!S){break k}v=b<<2;m=v+(l+128|0)|0;ra=H[m>>2];H[m>>2]=S>>>0>>0?ra:S;k=k+S|0;if(!u){break k}m=l+v|0;u=H[m>>2];v=m;m=J[R+2818>>1]<<1;H[v>>2]=m>>>0>>0?u:m;k=k+m|0}b=b+1|0;if((Wb|0)!=(b|0)){continue}break}}H[Q+4>>2]=k;ra=1;ra=sa?ra:I[c+476|0]!=0;Da=H[c+504>>2];l:{if(!Da){k=0;break l}w=H[c+500>>2];k=0;b=0;while(1){u=0;m=b+w|0;R=a+N(m,104)|0;if(!(F[R+2817|0]&1)){u=J[R+2818>>1]!=0}S=H[(a+(m<<2)|0)+7296>>2];m:{if(!S){break m}v=b<<2;m=v+(l+128|0)|0;sa=H[m>>2];H[m>>2]=S>>>0>>0?sa:S;k=k+S|0;if(!u){break m}m=l+v|0;u=H[m>>2];v=m;m=J[R+2818>>1]<<1;H[v>>2]=m>>>0>>0?u:m;k=k+m|0}b=b+1|0;if((Da|0)!=(b|0)){continue}break}}H[Q+8>>2]=k;sa=1;sa=ra?sa:I[c+652|0]!=0;ra=0;k=0;ab=H[c+680>>2];if(ab){w=H[c+676>>2];b=0;while(1){u=0;m=b+w|0;S=a+N(m,104)|0;if(!(F[S+2817|0]&1)){u=J[S+2818>>1]!=0}Ca=H[(a+(m<<2)|0)+7296>>2];n:{if(!Ca){break n}v=b<<2;m=v+(l+128|0)|0;R=H[m>>2];H[m>>2]=R>>>0>Ca>>>0?R:Ca;k=k+Ca|0;if(!u){break n}m=l+v|0;u=H[m>>2];v=m;m=J[S+2818>>1]<<1;H[v>>2]=m>>>0>>0?u:m;k=k+m|0}b=b+1|0;if((ab|0)!=(b|0)){continue}break}}H[Q+12>>2]=k;b=0;u=0;k=Vb>>>0>Wb>>>0?Vb:Wb;k=k>>>0>Da>>>0?k:Da;Da=k>>>0>ab>>>0?k:ab;o:{if(!Da){break o}v=0;w=Da-1|0;if(w>>>0>=3){m=Da&-4;k=0;while(1){R=b;b=v<<2;b=(((R+(H[b+l>>2]!=0)|0)+(H[l+(b|4)>>2]!=0)|0)+(H[l+(b|8)>>2]!=0)|0)+(H[l+(b|12)>>2]!=0)|0;v=v+4|0;k=k+4|0;if((m|0)!=(k|0)){continue}break}}k=Da&3;if(k){while(1){b=(H[l+(v<<2)>>2]!=0)+b|0;v=v+1|0;u=u+1|0;if((k|0)!=(u|0)){continue}break}}ra=b<<7;if(!Da){b=0;u=0;break o}k=0;v=0;u=0;b=0;if(w>>>0>=3){S=Da&-4;Ca=0;while(1){ab=v<<2;R=ab|12;w=ab|8;m=ab|4;u=H[R+l>>2]+(H[w+l>>2]+(H[m+l>>2]+(H[l+ab>>2]+u|0)|0)|0)|0;Q=R;R=l+128|0;b=H[Q+R>>2]+(H[w+R>>2]+(H[m+R>>2]+(H[R+ab>>2]+b|0)|0)|0)|0;v=v+4|0;Ca=Ca+4|0;if((S|0)!=(Ca|0)){continue}break}}w=Da&3;if(!w){break o}while(1){m=v<<2;u=H[m+l>>2]+u|0;b=H[m+(l+128|0)>>2]+b|0;v=v+1|0;k=k+1|0;if((w|0)!=(k|0)){continue}break}}v=160;if(!(H[c+96>>2]==1|H[c+272>>2]==1|H[c+448>>2]==1)){v=H[c+624>>2]==1?160:112}H[y+92>>2]=((N(Da,192)+ra|0)+(sa?b<<4:0)|0)+N(b+u|0,v);Oa=l+256|0;_c=H[y+92>>2];if(_c){u=1;b=_c+16|0;if(b>>>0>16384){break c}u=0;Xa=Ra[H[H[i>>2]>>2]](i,b)|0;if(Xa+1>>>0<2){break c}}F[c+140|0]=s;H[c+136>>2]=A;m=_c>>>4|0;k=H[c+16>>2];p:{if(!A){break p}s=H[c+152>>2];if(!s){break p}b=0;while(1){i=H[c+148>>2]+b|0;if(H[(a+(i<<2)|0)+7424>>2]!=65535){A=R6(A,(a+N(i,104)|0)+2816|0,104)+104|0;s=H[c+152>>2]}b=b+1|0;if(s>>>0>b>>>0){continue}break}}G[c+162>>1]=J[c+162>>1]+J[y+64>>1];G[k+22>>1]=m;H[k+24>>2]=Xa;G[k+20>>1]=H[c+120>>2];H[k+28>>2]=H[c+144>>2];F[c+316|0]=rb;H[c+312>>2]=sb;k=H[c+192>>2];q:{if(!sb){break q}s=H[c+328>>2];if(!s){break q}b=0;while(1){i=H[c+324>>2]+b|0;if(H[(a+(i<<2)|0)+7424>>2]!=65535){sb=R6(sb,(a+N(i,104)|0)+2816|0,104)+104|0;s=H[c+328>>2]}b=b+1|0;if(s>>>0>b>>>0){continue}break}}G[c+338>>1]=J[c+338>>1]+J[y+68>>1];G[k+22>>1]=m;H[k+24>>2]=Xa;G[k+20>>1]=H[c+296>>2];H[k+28>>2]=H[c+320>>2];F[c+492|0]=P;H[c+488>>2]=V;k=H[c+368>>2];r:{if(!V){break r}s=H[c+504>>2];if(!s){break r}b=0;while(1){i=H[c+500>>2]+b|0;if(H[(a+(i<<2)|0)+7424>>2]!=65535){V=R6(V,(a+N(i,104)|0)+2816|0,104)+104|0;s=H[c+504>>2]}b=b+1|0;if(s>>>0>b>>>0){continue}break}}G[c+514>>1]=J[c+514>>1]+J[y+72>>1];G[k+22>>1]=m;H[k+24>>2]=Xa;G[k+20>>1]=H[c+472>>2];H[k+28>>2]=H[c+496>>2];F[c+668|0]=U;H[c+664>>2]=t;k=H[c+544>>2];s:{if(!t){break s}s=H[c+680>>2];if(!s){break s}b=0;while(1){i=H[c+676>>2]+b|0;if(H[(a+(i<<2)|0)+7424>>2]!=65535){t=R6(t,(a+N(i,104)|0)+2816|0,104)+104|0;s=H[c+680>>2]}b=b+1|0;if(s>>>0>b>>>0){continue}break}}G[c+690>>1]=J[c+690>>1]+J[y+76>>1];G[k+22>>1]=m;H[k+24>>2]=Xa;G[k+20>>1]=H[c+648>>2];H[k+28>>2]=H[c+672>>2];b=H[y+156>>2];H[y+56>>2]=H[y+152>>2];H[y+60>>2]=b;b=H[y+148>>2];H[y+48>>2]=H[y+144>>2];H[y+52>>2]=b;b=H[y+124>>2];H[y+40>>2]=H[y+120>>2];H[y+44>>2]=b;b=H[y+116>>2];H[y+32>>2]=H[y+112>>2];H[y+36>>2]=b;b=H[y+140>>2];H[y+24>>2]=H[y+136>>2];H[y+28>>2]=b;b=H[y+132>>2];H[y+16>>2]=H[y+128>>2];H[y+20>>2]=b;b=H[y+108>>2];H[y+8>>2]=H[y+104>>2];H[y+12>>2]=b;b=H[y+100>>2];H[y>>2]=H[y+96>>2];H[y+4>>2]=b;Q=a;t=Xa;sb=0;rb=0;sa=0;ra=0;Vb=0;Wb=0;Da=0;ab=0;Ab=Oa-16|0;Oa=Ab;l=c;Cg=L[l+660>>2];Dg=L[l+484>>2];Eg=L[l+308>>2];Fg=L[l+132>>2];H[Ab+8>>2]=0;H[Ab+12>>2]=0;H[Ab>>2]=0;H[Ab+4>>2]=0;b=1;Ca=1;t:{if(I[l+124|0]){break t}Ca=1;if(I[l+300|0]){break t}Ca=1;if(I[l+476|0]){break t}Ca=I[l+652|0]!=0}c=H[l+96>>2];b=(c|0)!=1?H[l+272>>2]==1:b;a=1;v=1;v=(c|0)!=4?H[l+272>>2]==4:v;a=b?a:H[l+448>>2]==1;$b=1;b=1;b=v?b:H[l+448>>2]==4;$b=a?$b:H[l+624>>2]==1;Fc=1;Fc=b?Fc:H[l+624>>2]==4;u:{Xb=H[l+680>>2];b=H[l+504>>2];c=b>>>0>>0?Xb:b;a=H[l+328>>2];c=a>>>0>>0?c:a;v=H[l+152>>2];Tf=c>>>0>v>>>0?c:v;if(!Tf){break u}Gg=I[l+654|0];Hg=I[l+478|0];Ig=I[l+302|0];Jg=I[l+126|0];Uf=L[l+616>>2];Vf=L[l+612>>2];Wf=L[l+608>>2];Xf=L[l+440>>2];Yf=L[l+436>>2];Zf=L[l+432>>2];_f=L[l+264>>2];$f=L[l+260>>2];ag=L[l+256>>2];bg=L[l+88>>2];cg=L[l+84>>2];dg=L[l+80>>2];eg=L[l+588>>2];fg=L[l+584>>2];gg=L[l+580>>2];hg=L[l+412>>2];ig=L[l+408>>2];jg=L[l+404>>2];kg=L[l+236>>2];lg=L[l+232>>2];mg=L[l+228>>2];ng=L[l+60>>2];og=L[l+56>>2];pg=L[l+52>>2];Kg=L[l+656>>2];Lg=L[l+480>>2];Mg=L[l+304>>2];w=H[l+560>>2];ge=L[w+32>>2];A=H[l+384>>2];he=L[A+32>>2];u=H[l+208>>2];ie=L[u+32>>2];m=H[l+32>>2];je=L[m- -64>>2];ke=L[m+60>>2];le=L[m+56>>2];me=L[m+52>>2];ne=L[m+48>>2];oe=L[m+44>>2];pe=L[m+40>>2];qe=L[m+36>>2];k=H[l+556>>2];re=L[k+32>>2];s=H[l+380>>2];se=L[s+32>>2];i=H[l+204>>2];te=L[i+32>>2];c=H[l+28>>2];ue=L[c- -64>>2];ve=L[c+60>>2];we=L[c+56>>2];xe=L[c+52>>2];ye=L[c+48>>2];ze=L[c+44>>2];Ae=L[c+40>>2];Be=L[c+36>>2];bc=L[w+16>>2];cc=L[A+16>>2];dc=L[u+16>>2];ec=L[m+24>>2];fc=L[m+20>>2];Ce=L[k+16>>2];De=L[s+16>>2];Ee=L[i+16>>2];Fe=L[c+24>>2];Ge=L[c+20>>2];He=L[w- -64>>2];Ie=L[w+60>>2];Je=L[w+56>>2];Ke=L[w+52>>2];Le=L[w+48>>2];Me=L[w+44>>2];Ne=L[w+40>>2];Oe=L[w+36>>2];Pe=L[A- -64>>2];Qe=L[A+60>>2];Re=L[A+56>>2];Se=L[A+52>>2];Te=L[A+48>>2];Ue=L[A+44>>2];Ve=L[A+40>>2];We=L[A+36>>2];Xe=L[u- -64>>2];Ye=L[u+60>>2];Ze=L[u+56>>2];_e=L[u+52>>2];$e=L[u+48>>2];af=L[u+44>>2];bf=L[u+40>>2];cf=L[u+36>>2];df=L[k- -64>>2];ef=L[k+60>>2];ff=L[k+56>>2];gf=L[k+52>>2];hf=L[k+48>>2];jf=L[k+44>>2];kf=L[k+40>>2];lf=L[k+36>>2];mf=L[s- -64>>2];nf=L[s+60>>2];of=L[s+56>>2];pf=L[s+52>>2];qf=L[s+48>>2];rf=L[s+44>>2];sf=L[s+40>>2];tf=L[s+36>>2];uf=L[i- -64>>2];vf=L[i+60>>2];wf=L[i+56>>2];xf=L[i+52>>2];yf=L[i+48>>2];zf=L[i+44>>2];Af=L[i+40>>2];Bf=L[i+36>>2];gc=L[w+24>>2];hc=L[w+20>>2];ic=L[A+24>>2];jc=L[A+20>>2];kc=L[u+24>>2];lc=L[u+20>>2];Cf=L[k+24>>2];Df=L[k+20>>2];Ef=L[s+24>>2];Ff=L[s+20>>2];Gf=L[i+24>>2];Hf=L[i+20>>2];Ng=L[l+128>>2];$c=L[y+12>>2];ad=L[y+8>>2];bd=L[y+4>>2];cd=L[y>>2];If=L[m+32>>2];Jf=L[c+32>>2];mc=L[m+16>>2];Kf=L[c+16>>2];Og=$b?7:8;dd=$b?144:96;g=L[k+68>>2];f=L[w+68>>2];qg=f>2];f=L[A+68>>2];rg=f>2];f=L[u+68>>2];sg=f>2];nc=L[w+8>>2];Pg=O(ed-nc);fd=L[s+8>>2];oc=L[A+8>>2];Qg=O(fd-oc);gd=L[i+8>>2];pc=L[u+8>>2];Rg=O(gd-pc);hd=L[k+4>>2];qc=L[w+4>>2];Sg=O(hd-qc);id=L[s+4>>2];rc=L[A+4>>2];Tg=O(id-rc);jd=L[i+4>>2];sc=L[u+4>>2];Ug=O(jd-sc);kd=L[k>>2];tc=L[w>>2];Vg=O(kd-tc);ld=L[s>>2];uc=L[A>>2];Wg=O(ld-uc);md=L[i>>2];vc=L[u>>2];Xg=O(md-vc);g=L[c+68>>2];f=L[m+68>>2];tg=f>2]*L[m+12>>2]);pd=L[c+8>>2];wc=L[m+8>>2];Yg=O(pd-wc);qd=L[c+4>>2];xc=L[m+4>>2];Zg=O(qd-xc);rd=L[c>>2];yc=L[m>>2];_g=O(rd-yc);Gc=L[l+604>>2];Lf=O(O(Gc*Gc)+O(-.5));Hc=L[l+428>>2];Mf=O(O(Hc*Hc)+O(-.5));Ic=L[l+252>>2];Nf=O(O(Ic*Ic)+O(-.5));Jc=L[l+76>>2];Of=O(O(Jc*Jc)+O(-.5));Kc=L[l+576>>2];Pf=O(O(Kc*Kc)+O(-.5));Lc=L[l+400>>2];Qf=O(O(Lc*Lc)+O(-.5));Mc=L[l+224>>2];Rf=O(O(Mc*Mc)+O(-.5));Nc=L[l+48>>2];Sf=O(O(Nc*Nc)+O(-.5));sd=L[y+32>>2];td=O(L[y+48>>2]*L[c+12>>2]);$g=O(sd*td);ud=O(L[y+28>>2]*L[w+12>>2]);vd=O(L[y+24>>2]*L[A+12>>2]);wd=O(L[y+20>>2]*L[u+12>>2]);xd=L[y+44>>2];yd=O(L[y+60>>2]*L[k+12>>2]);ah=O(xd*yd);zd=L[y+40>>2];Ad=O(L[y+56>>2]*L[s+12>>2]);bh=O(zd*Ad);Bd=L[y+36>>2];Cd=O(L[y+52>>2]*L[i+12>>2]);ch=O(Bd*Cd);Dd=L[l+596>>2];dh=O(-Dd);Ed=L[l+592>>2];eh=O(-Ed);Fd=L[l+600>>2];fh=O(-Fd);Gd=L[l+420>>2];gh=O(-Gd);Hd=L[l+416>>2];hh=O(-Hd);Id=L[l+424>>2];ih=O(-Id);Jd=L[l+244>>2];jh=O(-Jd);Kd=L[l+240>>2];kh=O(-Kd);Ld=L[l+248>>2];lh=O(-Ld);Md=L[l+68>>2];mh=O(-Md);Nd=L[l+72>>2];nh=O(-Nd);Od=L[l+568>>2];oh=O(-Od);Pd=L[l+564>>2];ph=O(-Pd);Qd=L[l+572>>2];qh=O(-Qd);Rd=L[l+392>>2];rh=O(-Rd);Sd=L[l+388>>2];sh=O(-Sd);Td=L[l+396>>2];th=O(-Td);Ud=L[l+216>>2];uh=O(-Ud);Vd=L[l+212>>2];vh=O(-Vd);Wd=L[l+220>>2];wh=O(-Wd);Xd=L[l+40>>2];xh=O(-Xd);Yd=L[l+44>>2];yh=O(-Yd);Zd=L[l+64>>2];zh=O(-Zd);_d=L[l+36>>2];Ah=O(-_d);$d=Q+7424|0;ae=Q+2816|0;be=Q+7556|0;while(1){ub=v>>>0<=tb>>>0;ce=ub?ce:H[l+148>>2]+tb|0;Bb=a>>>0<=tb>>>0;de=Bb?de:H[l+324>>2]+tb|0;Gb=b>>>0<=tb>>>0;ee=Gb?ee:H[l+500>>2]+tb|0;Hb=tb>>>0>=Xb>>>0;fe=Hb?fe:H[l+676>>2]+tb|0;k=0;s=0;s=ub?s:H[(Q+(ce<<2)|0)+7296>>2];k=Bb?k:H[(Q+(de<<2)|0)+7296>>2];c=0;i=0;i=Gb?i:H[(Q+(ee<<2)|0)+7296>>2];w=8;if(!Hb){w=0;c=H[(Q+(fe<<2)|0)+7296>>2]}ug=ce<<2;b=H[ug+$d>>2];Ib=H[l+116>>2]+(J[Q+N(b,44)>>1]<<6)|0;Oc=L[Ib+60>>2];vg=de<<2;a=H[vg+$d>>2];Yb=H[l+292>>2]+(J[Q+N(a,44)>>1]<<6)|0;Pc=L[Yb+60>>2];wg=ee<<2;v=H[wg+$d>>2];Zb=H[l+468>>2]+(J[Q+N(v,44)>>1]<<6)|0;Qc=L[Zb+60>>2];xg=fe<<2;P=H[xg+$d>>2];ac=H[l+644>>2]+(J[Q+N(P,44)>>1]<<6)|0;Rc=L[ac+60>>2];F[t+7|0]=Gg;F[t+6|0]=Hg;F[t+5|0]=Ig;F[t+4|0]=Jg;F[t+3|0]=Ca;m=c>>>0>i>>>0?c:i;m=k>>>0>>0?m:k;Ea=m>>>0>s>>>0?m:s;zc=Ea<<4;S=S6(t+192|0,0,zc);L[t+124>>2]=$c;L[t+120>>2]=ad;L[t+116>>2]=bd;L[t+112>>2]=cd;L[t+108>>2]=xd;L[t+104>>2]=zd;L[t+100>>2]=Bd;L[t+96>>2]=sd;L[t+92>>2]=ud;L[t+88>>2]=vd;L[t+84>>2]=wd;L[t+80>>2]=od;L[t+76>>2]=yd;L[t+72>>2]=Ad;L[t+68>>2]=Cd;L[t+64>>2]=td;F[t+11|0]=c;F[t+10|0]=i;F[t+9|0]=k;F[t+8|0]=s;F[t+1|0]=Ea;H[t+176>>2]=H[l+112>>2];H[t+180>>2]=H[l+288>>2];H[t+184>>2]=H[l+464>>2];c=H[l+640>>2];Ya=O(-Rc);L[t+28>>2]=Ya;Za=O(-Qc);L[t+24>>2]=Za;_a=O(-Pc);L[t+20>>2]=_a;$a=O(-Oc);L[t+16>>2]=$a;H[t+188>>2]=c;ja=L[Ib>>2];ka=L[Yb>>2];la=L[Zb>>2];ma=L[ac>>2];X=L[Ib+4>>2];Y=L[Yb+4>>2];Z=L[Zb+4>>2];aa=L[ac+4>>2];ba=L[Ib+8>>2];ca=L[Yb+8>>2];da=L[Zb+8>>2];T=L[ac+8>>2];L[t+172>>2]=T;L[t+168>>2]=da;L[t+164>>2]=ca;L[t+160>>2]=ba;L[t+156>>2]=aa;L[t+152>>2]=Z;L[t+148>>2]=Y;L[t+144>>2]=X;L[t+140>>2]=ma;L[t+136>>2]=la;L[t+132>>2]=ka;L[t+128>>2]=ja;k=65535;s=65535;v:{if((b|0)==65535){break v}while(1){s=b;b=Q+N(b,44)|0;if(I[b+5|0]){break v}s=65535;b=J[b+2>>1];if((b|0)!=65535){continue}break}}w:{if((a|0)==65535){break w}while(1){k=a;a=Q+N(a,44)|0;if(I[a+5|0]){break w}k=65535;a=J[a+2>>1];if((a|0)!=65535){continue}break}}b=65535;a=65535;x:{if((v|0)==65535){break x}while(1){a=v;c=Q+N(a,44)|0;if(I[c+5|0]){break x}a=65535;v=J[c+2>>1];if((v|0)!=65535){continue}break}}y:{if((P|0)==65535){break y}while(1){b=P;c=Q+N(b,44)|0;if(I[c+5|0]){break y}b=65535;P=J[c+2>>1];if((P|0)!=65535){continue}break}}U=0;z:{if(ub){i=s;A=0;break z}sb=65535;Vb=0;A=1;i=s;if((s|0)==65535){i=65535;break z}while(1){c=Q+N(i,44)|0;if(I[c+5|0]!=(A|0)){sb=s;break z}A=0;i=J[c+2>>1];if((i|0)!=65535){continue}break}i=65535;sb=s}A:{if(Bb){c=k;break A}rb=65535;Wb=0;U=1;c=k;if((c|0)==65535){c=65535;break A}while(1){s=Q+N(c,44)|0;if(I[s+5|0]!=(U|0)){rb=k;break A}U=0;c=J[s+2>>1];if((c|0)!=65535){continue}break}c=65535;rb=k}R=0;B:{if(Gb){m=a;V=0;break B}sa=65535;Da=0;V=1;m=a;if((a|0)==65535){m=65535;break B}while(1){s=Q+N(m,44)|0;if(I[s+5|0]!=(V|0)){sa=a;break B}V=0;m=J[s+2>>1];if((m|0)!=65535){continue}break}m=65535;sa=a}C:{if(Hb){u=b;break C}ra=65535;ab=0;R=1;u=b;if((b|0)==65535){u=65535;break C}while(1){a=Q+N(u,44)|0;if(I[a+5|0]!=(R|0)){ra=b;break C}R=0;u=J[a+2>>1];if((u|0)!=65535){continue}break}u=65535;ra=b}a=1;a=ub?a:!((i|0)!=65535&I[(Q+N(i,44)|0)+5|0]>A>>>0);K=O(qc*aa);p=O(tc*ma);M=O(hd*aa);o=O(kd*ma);x=O(rc*Z);n=O(uc*la);B=O(id*Z);r=O(ld*la);C=O(sc*Y);q=O(vc*ka);z=O(jd*Y);j=O(md*ka);D=O(xc*X);g=O(yc*ja);E=O(qd*X);f=O(rd*ja);s=ub|Bb<<1;b=Gb<<2;D:{if(!((c|0)==65535|Bb)){v=0;if(I[(Q+N(c,44)|0)+5|0]>U>>>0){break D}}v=2}K=O(p+K);p=O(nc*T);M=O(o+M);o=O(ed*T);x=O(n+x);n=O(oc*da);B=O(r+B);r=O(fd*da);C=O(q+C);q=O(pc*ca);z=O(j+z);j=O(gd*ca);D=O(g+D);g=O(wc*ba);E=O(f+E);f=O(pd*ba);b=b|s;E:{if(!((m|0)==65535|Gb)){k=0;if(I[(Q+N(m,44)|0)+5|0]>V>>>0){break E}}k=4}p=O(p+K);o=O(o+M);n=O(n+x);r=O(r+B);q=O(q+C);j=O(j+z);g=O(g+D);f=O(f+E);w=b|w;F:{if(!((u|0)==65535|Hb)){s=0;if(I[(Q+N(u,44)|0)+5|0]>R>>>0){break F}}s=8}b=S+zc|0;ta=O(o-p);ua=O(r-n);va=O(j-q);wa=O(f-g);if((w|0)!=15){Hb=N(Ea,dd)+b|0;S=s|(k|(a|v));Cb=0;while(1){_b=H[l+644>>2]+(J[Q+N(ra,44)>>1]+ab<<6)|0;ea=L[_b+16>>2];j=O(ea-gg);fa=L[_b+20>>2];g=O(fa-fg);n=O(O(aa*j)-O(ma*g));q=O(-n);na=L[_b+24>>2];f=O(na-eg);r=O(O(ma*f)-O(T*j));j=O(-r);g=O(O(T*g)-O(aa*f));f=O(-g);nb=(n>q?n:q)>2]+(J[Q+N(sa,44)>>1]+Da<<6)|0;oa=L[Ea+16>>2];q=O(oa-jg);K=L[Ea+20>>2];j=O(K-ig);o=O(O(Z*q)-O(la*j));r=O(-o);M=L[Ea+24>>2];g=O(M-hg);n=O(O(la*g)-O(da*q));q=O(-n);j=O(O(da*j)-O(Z*g));g=O(-j);qb=(o>r?o:r)q?n:q)>2]+(J[Q+N(rb,44)>>1]+Wb<<6)|0;x=L[P+16>>2];r=O(x-mg);B=L[P+20>>2];q=O(B-lg);p=O(O(Y*r)-O(ka*q));n=O(-p);C=L[P+24>>2];j=O(C-kg);o=O(O(ka*j)-O(ca*r));r=O(-o);q=O(O(ca*q)-O(Y*j));j=O(-q);Ha=(nr?o:r)>2]+(J[Q+N(sb,44)>>1]+Vb<<6)|0;z=L[w+16>>2];o=O(z-pg);n=L[w+20>>2];r=O(n-og);$=O(O(X*o)-O(ja*r));p=O(-$);q=L[w+24>>2];j=O(q-ng);D=O(O(ja*j)-O(ba*o));o=O(-D);E=O(O(ba*r)-O(X*j));j=O(-E);p=(p<$?$:p)>2])+O(O(aa*L[_b+36>>2])+O(T*L[_b+40>>2])));E=O(O(la*L[Ea+32>>2])+O(O(Z*L[Ea+36>>2])+O(da*L[Ea+40>>2])));p=O(O(ka*L[P+32>>2])+O(O(Y*L[P+36>>2])+O(ca*L[P+40>>2])));o=O(O(ja*L[w+32>>2])+O(O(X*L[w+36>>2])+O(ba*L[w+40>>2])));_=O(ea-Wf);Fa=O(oa-Zf);Ga=O(x-ag);Ha=O(z-dg);x=O(na-Uf);$=O(M-Xf);ea=O(C-_f);Ia=O(q-bg);z=O(fa-Vf);fa=O(K-Yf);na=O(B-$f);oa=O(n-cg);n=L[_b+12>>2];r=L[Ea+12>>2];q=L[P+12>>2];j=L[w+12>>2];G:{if($b){K=O(O(aa*_)-O(ma*z));B=O(-K);M=O(O(ma*x)-O(T*_));C=O(-M);x=O(O(T*z)-O(aa*x));z=O(-x);Ba=(Bz?x:z)>2]=_;K=O(O(Z*Fa)-O(la*fa));B=O(-K);M=O(O(la*$)-O(da*Fa));C=O(-M);x=O(O(da*fa)-O(Z*$));z=O(-x);ia=(Bz?x:z)>2]=$;K=O(O(Y*Ga)-O(ka*na));B=O(-K);M=O(O(ka*ea)-O(ca*Ga));C=O(-M);x=O(O(ca*na)-O(Y*ea));z=O(-x);pb=(Bz?x:z)>2]=ea;K=O(O(X*Ha)-O(ja*oa));B=O(-K);M=O(O(ja*Ia)-O(ba*Ha));C=O(-M);x=O(O(ba*oa)-O(X*Ia));z=O(-x);Ga=(Bz?x:z)>2]=fa;na=O(O(Ke*Ba)+O(O(Le*ga)+O(Me*ha)));L[b+124>>2]=na;oa=O(O(Se*ia)+O(O(Te*nb)+O(Ue*ob)));L[b+120>>2]=oa;K=O(O(_e*pb)+O(O($e*qb)+O(af*Fa)));L[b+116>>2]=K;M=O(O(me*Ga)+O(O(ne*Ha)+O(oe*Ia)));L[b+112>>2]=M;x=O(O(Ne*Ba)+O(O(Oe*ga)+O(ge*ha)));L[b+108>>2]=x;B=O(O(Ve*ia)+O(O(We*nb)+O(he*ob)));L[b+104>>2]=B;C=O(O(bf*pb)+O(O(cf*qb)+O(ie*Fa)));L[b+100>>2]=C;z=O(O(pe*Ga)+O(O(qe*Ha)+O(If*Ia)));L[b+96>>2]=z;f=O(f+O(ud+O($c*O(O(x*x)+O(O(na*na)+O(_*_))))));g=O(g+O(vd+O(ad*O(O(B*B)+O(O(oa*oa)+O($*$))))));pa=O(pa+O(wd+O(bd*O(O(C*C)+O(O(K*K)+O(ea*ea))))));qa=O(qa+O(od+O(cd*O(O(z*z)+O(O(M*M)+O(fa*fa))))));xa=O(xa-O(O(gc*Ba)+O(O(hc*ga)+O(bc*ha))));ya=O(ya-O(O(ic*ia)+O(O(jc*nb)+O(cc*ob))));za=O(za-O(O(kc*pb)+O(O(lc*qb)+O(dc*Fa))));Aa=O(Aa-O(O(ec*Ga)+O(O(fc*Ha)+O(mc*Ia))));break G}if(!Fc){break G}xa=O(xa-O(O(gc*O(O(aa*_)-O(ma*z)))+O(O(hc*O(O(ma*x)-O(T*_)))+O(bc*O(O(T*z)-O(aa*x))))));ya=O(ya-O(O(ic*O(O(Z*Fa)-O(la*fa)))+O(O(jc*O(O(la*$)-O(da*Fa)))+O(cc*O(O(da*fa)-O(Z*$))))));za=O(za-O(O(kc*O(O(Y*Ga)-O(ka*na)))+O(O(lc*O(O(ka*ea)-O(ca*Ga)))+O(dc*O(O(ca*na)-O(Y*ea))))));Aa=O(Aa-O(O(ec*O(O(X*Ha)-O(ja*oa)))+O(O(fc*O(O(ja*Ia)-O(ba*Ha)))+O(mc*O(O(ba*oa)-O(X*Ia))))))}L[b+44>>2]=Cc;L[b+40>>2]=vb;L[b+36>>2]=yb;L[b+32>>2]=Ma;L[b+28>>2]=Bc;L[b+24>>2]=Ec;L[b+20>>2]=xb;L[b+16>>2]=La;L[b+12>>2]=Ac;L[b+8>>2]=Dc;L[b+4>>2]=wb;L[b>>2]=Ka;x=f>O(0)?O(O(1)/f):O(0);L[b+60>>2]=x;B=g>O(0)?O(O(1)/g):O(0);L[b+56>>2]=B;C=pa>O(0)?O(O(1)/pa):O(0);L[b+52>>2]=C;z=qa>O(0)?O(O(1)/qa):O(0);L[b+48>>2]=z;g=O(n-Kg);v=Rc>O(0)&e>xa&O(-xa)>O(g*d);f=O(nd*g);f=O(x*O(-(f>2]=O((v?O(O(xa*Ya)*x):O(0))+n)-O(O(xa-D)*x);g=O(r-Lg);k=Qc>O(0)&e>ya&O(-ya)>O(g*d);f=O(nd*g);f=O(B*O(-(f>2]=O((k?O(O(ya*Za)*B):O(0))+r)-O(O(ya-E)*B);g=O(q-Mg);s=Pc>O(0)&e>za&O(-za)>O(g*d);f=O(nd*g);f=O(C*O(-(f>2]=O((s?O(O(za*_a)*C):O(0))+q)-O(O(za-p)*C);g=O(j-Ng);a=Oc>O(0)&e>Aa&O(-Aa)>O(g*d);f=O(nd*g);f=O(z*O(-(f>2]=O((a?O(O(Aa*$a)*z):O(0))+f)-O(O(Aa-o)*z);L[b+76>>2]=v?n:n>2]=k?r:r>2]=s?q:q>2]=a?f:f>2];g=L[P+28>>2];f=L[Ea+28>>2];a=(Cb<<4)+Hb|0;L[a+12>>2]=L[_b+28>>2];L[a+8>>2]=f;L[a+4>>2]=g;L[a>>2]=j}H:{if(S&1){w=i;P=A;A=S;break H}P=A+1|0;w=65535;k=0;a=i;I:{if((a|0)==65535){break I}while(1){v=Q+N(a,44)|0;s=I[v+5|0];if((s|0)==(P|0)){P=0;a=J[v+2>>1];if((a|0)!=65535){continue}break I}break}if((a|0)==65535){break I}k=s>>>0>P>>>0;w=a}Vb=A;sb=i;A=k^1|S}J:{if(S&2){a=c;k=U;break J}k=U+1|0;i=2;a=c;K:{if((c|0)==65535){a=65535;break K}L:{while(1){v=Q+N(a,44)|0;s=I[v+5|0];if((s|0)!=(k|0)){break L}k=0;a=J[v+2>>1];if((a|0)!=65535){continue}break}a=65535;break K}if((a|0)==65535){a=65535;break K}i=(k>>>0>=s>>>0)<<1}A=i|A;Wb=U;rb=c}M:{if(S&4){v=m;s=V;break M}s=V+1|0;U=4;v=m;N:{if((m|0)==65535){v=65535;break N}O:{while(1){i=Q+N(v,44)|0;c=I[i+5|0];if((c|0)!=(s|0)){break O}s=0;v=J[i+2>>1];if((v|0)!=65535){continue}break}v=65535;break N}if((v|0)==65535){v=65535;break N}U=(c>>>0<=s>>>0)<<2}A=A|U;Da=V;sa=m}b=b+dd|0;Cb=Cb+1|0;Ea=(S|0)!=15;if(!(S&8)){i=R+1|0;V=8;c=u;P:{if((c|0)==65535){c=65535;break P}Q:{while(1){ra=Q+N(c,44)|0;m=I[ra+5|0];if((m|0)!=(i|0)){break Q}i=0;c=J[ra+2>>1];if((c|0)!=65535){continue}break}c=65535;break P}if((c|0)==65535){c=65535;break P}V=(i>>>0>=m>>>0)<<3}ab=R;ra=u;R=i;u=c;A=A|V}S=A;A=P;i=w;U=k;c=a;V=s;m=v;if(Ea){continue}break}}Hb=N(fe,104)+ae|0;w=J[Hb+2>>1];Ea=N(ee,104)+ae|0;v=J[Ea+2>>1];S=N(de,104)+ae|0;A=J[S+2>>1];R=N(ce,104)+ae|0;m=J[R+2>>1];i=0;i=ub?i:F[Ib+48|0]&1?0:m;u=0;u=Bb?u:F[Yb+48|0]&1?0:A;Cb=0;D=L[Ib+44>>2];E=L[Yb+44>>2];p=L[Zb+44>>2];o=L[ac+44>>2];n=L[Ib+56>>2];s=I[Ib+48|0];r=L[Yb+56>>2];c=I[Yb+48|0];g=L[Zb+56>>2];a=I[Zb+48|0];f=L[ac+56>>2];k=I[ac+48|0];b=(Ca?zc:0)+b|0;Cb=Gb?Cb:F[Zb+48|0]&1?0:v;F[t+14|0]=Cb<<1;F[t+13|0]=u<<1;F[t+12|0]=i<<1;F[t|0]=Og;q=(k&4)>>>2|0?(w|0)==2?O(.5):O(1):O(1);L[t+60>>2]=f*q;j=(a&4)>>>2|0?(v|0)==2?O(.5):O(1):O(1);L[t+56>>2]=g*j;g=(c&4)>>>2|0?(A|0)==2?O(.5):O(1):O(1);L[t+52>>2]=r*g;f=(s&4)>>>2|0?(m|0)==2?O(.5):O(1):O(1);L[t+48>>2]=n*f;L[t+44>>2]=o*q;L[t+40>>2]=p*j;L[t+36>>2]=E*g;L[t+32>>2]=D*f;ub=tb>>>0>>0?k&1?0:w:0;F[t+15|0]=ub<<1;a=ub>>>0>Cb>>>0?ub:Cb;a=a>>>0>u>>>0?a:u;Bb=a>>>0>i>>>0?a:i;F[t+2|0]=Bb<<1;R:{if(!Bb){t=b;break R}m=H[l+664>>2];k=H[l+488>>2];s=H[l+312>>2];c=H[l+136>>2];a=H[Ab+12>>2];H[b+8>>2]=H[Ab+8>>2];H[b+12>>2]=a;a=H[Ab+4>>2];H[b>>2]=H[Ab>>2];H[b+4>>2]=a;H[b+16>>2]=c+N(yg,104);H[b+20>>2]=s+N(zg,104);H[b+24>>2]=k+N(Ag,104);H[b+28>>2]=m+N(Bg,104);xa=O(1);f=O(_g-O(ja*wa));j=O(Zg-O(X*wa));g=O(Yg-O(ba*wa));c=O(O(f*f)+O(O(j*j)+O(g*g)))>O(9999999747378752e-20);n=f;f=O(-ja);a=(f>2]=Na;f=O(Xg-O(ka*va));j=O(Ug-O(Y*va));g=O(Rg-O(ca*va));c=O(O(f*f)+O(O(j*j)+O(g*g)))>O(9999999747378752e-20);n=f;f=O(-ka);a=(f>2]=Pa;f=O(Wg-O(la*ua));j=O(Tg-O(Z*ua));g=O(Qg-O(da*ua));c=O(O(f*f)+O(O(j*j)+O(g*g)))>O(9999999747378752e-20);n=f;f=O(-la);a=(f>2]=Qa;f=O(Vg-O(ma*ta));r=O(Sg-O(aa*ta));j=O(Pg-O(T*ta));c=O(O(f*f)+O(O(r*r)+O(j*j)))>O(9999999747378752e-20);g=f;f=O(-ma);a=(f>2]=Sa;Ta=O(B*C);L[b+64>>2]=Ta;Ua=O(D*E);L[b+68>>2]=Ua;Va=O(o*n);L[b+72>>2]=Va;Wa=O(f*j);L[b+76>>2]=Wa;f=O(x*C);L[b+96>>2]=f;g=O(z*E);L[b+100>>2]=g;pa=O(p*n);L[b+104>>2]=pa;qa=O(q*j);L[b+108>>2]=qa;bb=O(O(ma*Wa)-O(aa*Sa));L[b+124>>2]=bb;cb=O(O(la*Va)-O(Z*Qa));L[b+120>>2]=cb;db=O(O(ka*Ua)-O(Y*Pa));L[b+116>>2]=db;eb=O(O(ja*Ta)-O(X*Na));L[b+112>>2]=eb;fb=O(O(T*Sa)-O(ma*qa));L[b+92>>2]=fb;gb=O(O(da*Qa)-O(la*pa));L[b+88>>2]=gb;hb=O(O(ca*Pa)-O(ka*g));L[b+84>>2]=hb;ib=O(O(ba*Na)-O(ja*f));L[b+80>>2]=ib;jb=O(O(aa*qa)-O(T*Wa));L[b+60>>2]=jb;kb=O(O(Z*pa)-O(da*Va));L[b+56>>2]=kb;lb=O(O(Y*g)-O(ca*Ua));L[b+52>>2]=lb;mb=O(O(X*f)-O(ba*Ta));L[b+48>>2]=mb;a=0;c=b+128|0;b=I[t+2|0]<<4;t=S6(c,0,b)+b|0;m=Ib+32|0;P=0;k=0;s=0;c=0;ya=O(1);za=O(1);Aa=O(1);while(1){U=a>>>0>>0;P=U?a:P;b=Hb+N(P,12)|0;T=L[b+72>>2];ta=L[b- -64>>2];ua=L[b+68>>2];na=O(O(Fd*T)+O(O(Ed*ta)+O(Dd*ua)));D=O(Fd*na);va=L[b+48>>2];wa=L[b+40>>2];vb=L[b+44>>2];oa=O(O(Qd*va)+O(O(Pd*wa)+O(Od*vb)));j=O(Qd*oa);V=a>>>0>>0;k=V?a:k;b=Ea+N(k,12)|0;Ba=L[b+72>>2];ga=L[b- -64>>2];ha=L[b+68>>2];K=O(O(Id*Ba)+O(O(Hd*ga)+O(Gd*ha)));E=O(Id*K);ia=L[b+48>>2];wb=L[b+40>>2];xb=L[b+44>>2];M=O(O(Td*ia)+O(O(Sd*wb)+O(Rd*xb)));p=O(Td*M);w=a>>>0>>0;s=w?a:s;b=S+N(s,12)|0;yb=L[b+72>>2];Ka=L[b- -64>>2];La=L[b+68>>2];x=O(O(Ld*yb)+O(O(Kd*Ka)+O(Jd*La)));o=O(Ld*x);Ma=L[b+48>>2];_=L[b+40>>2];$=L[b+44>>2];B=O(O(Wd*Ma)+O(O(Vd*_)+O(Ud*$)));n=O(Wd*B);v=a>>>0>>0;c=v?a:c;b=R+N(c,12)|0;Ya=L[b+72>>2];Za=L[b- -64>>2];_a=L[b+68>>2];C=O(O(Nd*Ya)+O(O(Zd*Za)+O(Md*_a)));r=O(Nd*C);$a=L[b+48>>2];ea=L[b+40>>2];fa=L[b+44>>2];z=O(O(Yd*$a)+O(O(_d*ea)+O(Xd*fa)));q=O(Yd*z);Gb=J[(be+xg|0)+(P<<1)>>1];Xb=J[(be+wg|0)+(k<<1)>>1];zc=J[(be+vg|0)+(s<<1)>>1];b=m;A=J[(be+ug|0)+(c<<1)>>1];if((A|0)!=65535){b=(H[l+116>>2]+(A<<6)|0)+32|0}nb=L[b+8>>2];ob=L[b+4>>2];pb=L[b>>2];b=m;xa=U?xa:O(0);ya=V?ya:O(0);za=w?za:O(0);Aa=v?Aa:O(0);b=(zc|0)!=65535?(H[l+292>>2]+(zc<<6)|0)+32|0:b;qb=L[b+8>>2];Fa=L[b+4>>2];Ga=L[b>>2];b=m;qa=O(qa*xa);pa=O(pa*ya);g=O(g*za);f=O(f*Aa);Wa=O(Wa*xa);Va=O(Va*ya);Ua=O(Ua*za);Ta=O(Ta*Aa);Sa=O(Sa*xa);Qa=O(Qa*ya);Pa=O(Pa*za);Na=O(Na*Aa);b=(Xb|0)!=65535?(H[l+468>>2]+(Xb<<6)|0)+32|0:b;Ha=L[b+8>>2];Ia=L[b+4>>2];Oc=L[b>>2];b=m;j=O(O(O(Kc*O(O(Pd*vb)+O(wa*oh)))+O(Pf*va))+j);Sc=O(j+j);j=O(O(O(Gc*O(O(Ed*ua)+O(ta*dh)))+O(Lf*T))+D);Jb=O(j+j);Pc=O(O(eg+Sc)-O(Uf+Jb));j=O(O(O(Lc*O(O(Sd*xb)+O(wb*rh)))+O(Qf*ia))+p);Tc=O(j+j);j=O(O(O(Hc*O(O(Hd*ha)+O(ga*gh)))+O(Mf*Ba))+E);Kb=O(j+j);Qc=O(O(hg+Tc)-O(Xf+Kb));j=O(O(O(Mc*O(O(Vd*$)+O(_*uh)))+O(Rf*Ma))+n);Uc=O(j+j);j=O(O(O(Ic*O(O(Kd*La)+O(Ka*jh)))+O(Nf*yb))+o);Lb=O(j+j);Rc=O(O(kg+Uc)-O(_f+Lb));j=O(O(O(Nc*O(O(_d*fa)+O(ea*xh)))+O(Sf*$a))+q);Vc=O(j+j);j=O(O(O(Jc*O(O(Zd*_a)+O(Za*mh)))+O(Of*Ya))+r);Mb=O(j+j);Ac=O(O(ng+Vc)-O(bg+Mb));j=O(O(Od*oa)+O(O(Pf*vb)+O(Kc*O(O(Qd*wa)+O(va*ph)))));Wc=O(j+j);j=O(O(Dd*na)+O(O(Lf*ua)+O(Gc*O(O(Fd*ta)+O(T*eh)))));Nb=O(j+j);Bc=O(O(fg+Wc)-O(Vf+Nb));j=O(O(Rd*M)+O(O(Qf*xb)+O(Lc*O(O(Td*wb)+O(ia*sh)))));Xc=O(j+j);j=O(O(Gd*K)+O(O(Mf*ha)+O(Hc*O(O(Id*ga)+O(Ba*hh)))));Ob=O(j+j);Cc=O(O(ig+Xc)-O(Yf+Ob));j=O(O(Ud*B)+O(O(Rf*$)+O(Mc*O(O(Wd*_)+O(Ma*vh)))));Yc=O(j+j);j=O(O(Jd*x)+O(O(Nf*La)+O(Ic*O(O(Ld*Ka)+O(yb*kh)))));Pb=O(j+j);Dc=O(O(lg+Yc)-O($f+Pb));j=O(O(Xd*z)+O(O(Sf*fa)+O(Nc*O(O(Yd*ea)+O($a*Ah)))));Zc=O(j+j);j=O(O(Md*C)+O(O(Of*_a)+O(Jc*O(O(Nd*Za)+O(Ya*zh)))));Qb=O(j+j);Ec=O(O(og+Zc)-O(cg+Qb));j=O(O(Pd*oa)+O(O(Pf*wa)+O(Kc*O(O(Od*va)+O(vb*qh)))));ja=O(j+j);j=O(O(Ed*na)+O(O(Lf*ta)+O(Gc*O(O(Dd*T)+O(ua*fh)))));Rb=O(j+j);vb=O(O(gg+ja)-O(Wf+Rb));j=O(O(Sd*M)+O(O(Qf*wb)+O(Lc*O(O(Rd*ia)+O(xb*th)))));ka=O(j+j);j=O(O(Hd*K)+O(O(Mf*ga)+O(Hc*O(O(Gd*Ba)+O(ha*ih)))));Sb=O(j+j);wb=O(O(jg+ka)-O(Zf+Sb));j=O(O(Vd*B)+O(O(Rf*_)+O(Mc*O(O(Ud*Ma)+O($*wh)))));la=O(j+j);j=O(O(Kd*x)+O(O(Nf*Ka)+O(Ic*O(O(Jd*yb)+O(La*lh)))));Tb=O(j+j);xb=O(O(mg+la)-O(ag+Tb));j=O(O(_d*z)+O(O(Sf*ea)+O(Nc*O(O(Xd*$a)+O(fa*yh)))));ma=O(j+j);j=O(O(Zd*C)+O(O(Of*Za)+O(Jc*O(O(Md*Ya)+O(_a*nh)))));Ub=O(j+j);yb=O(O(pg+ma)-O(dg+Ub));bb=O(bb*xa);cb=O(cb*ya);db=O(db*za);eb=O(eb*Aa);fb=O(fb*xa);gb=O(gb*ya);hb=O(hb*za);ib=O(ib*Aa);jb=O(jb*xa);kb=O(kb*ya);lb=O(lb*za);mb=O(mb*Aa);p=O(O(Wa*ja)-O(Sa*Wc));r=O(-p);o=O(O(Sa*Sc)-O(qa*ja));q=O(-o);n=O(O(qa*Wc)-O(Wa*Sc));j=O(-n);Ka=(rq?o:q)q?o:q)q?o:q)q?o:q)>2]+(Gb<<6)|0)+32|0:b;Ka=L[b+8>>2];La=L[b+4>>2];Ma=L[b>>2];S:{if($b){p=O(O(Wa*Rb)-O(Sa*Nb));r=O(-p);o=O(O(Sa*Jb)-O(qa*Rb));q=O(-o);n=O(O(qa*Nb)-O(Wa*Jb));j=O(-n);ba=(rq?o:q)>2]=x;p=O(O(Va*Sb)-O(Qa*Ob));r=O(-p);o=O(O(Qa*Kb)-O(pa*Sb));q=O(-o);n=O(O(pa*Ob)-O(Va*Kb));j=O(-n);T=(rq?o:q)>2]=B;p=O(O(Ua*Tb)-O(Pa*Pb));r=O(-p);o=O(O(Pa*Lb)-O(g*Tb));q=O(-o);n=O(O(g*Pb)-O(Ua*Lb));j=O(-n);va=(rq?o:q)>2]=C;p=O(O(Ta*Ub)-O(Na*Qb));r=O(-p);o=O(O(Na*Mb)-O(f*Ub));q=O(-o);n=O(O(f*Qb)-O(Ta*Mb));j=O(-n);ga=(rq?o:q)>2]=z;D=O(O(Ke*ba)+O(O(Le*ca)+O(Me*da)));L[t+124>>2]=D;E=O(O(Se*T)+O(O(Te*ta)+O(Ue*ua)));L[t+120>>2]=E;p=O(O(_e*va)+O(O($e*wa)+O(af*Ba)));L[t+116>>2]=p;o=O(O(me*ga)+O(O(ne*ha)+O(oe*ia)));L[t+112>>2]=o;n=O(O(Ne*ba)+O(O(Oe*ca)+O(ge*da)));L[t+108>>2]=n;r=O(O(Ve*T)+O(O(We*ta)+O(he*ua)));L[t+104>>2]=r;q=O(O(bf*va)+O(O(cf*wa)+O(ie*Ba)));L[t+100>>2]=q;j=O(O(pe*ga)+O(O(qe*ha)+O(If*ia)));L[t+96>>2]=j;X=O(X+O(ud+O($c*O(O(x*x)+O(O(D*D)+O(n*n))))));Y=O(Y+O(vd+O(ad*O(O(B*B)+O(O(E*E)+O(r*r))))));Z=O(Z+O(wd+O(bd*O(O(C*C)+O(O(p*p)+O(q*q))))));aa=O(aa+O(od+O(cd*O(O(z*z)+O(O(o*o)+O(j*j))))));zb=O(zb-O(O(gc*ba)+O(O(hc*ca)+O(O(O(nc*qa)+O(O(qc*Wa)+O(tc*Sa)))+O(bc*da)))));Db=O(Db-O(O(ic*T)+O(O(jc*ta)+O(O(O(oc*pa)+O(O(rc*Va)+O(uc*Qa)))+O(cc*ua)))));Eb=O(Eb-O(O(kc*va)+O(O(lc*wa)+O(O(O(pc*g)+O(O(sc*Ua)+O(vc*Pa)))+O(dc*Ba)))));Fb=O(Fb-O(O(ec*ga)+O(O(fc*ha)+O(O(O(wc*f)+O(O(xc*Ta)+O(yc*Na)))+O(mc*ia)))));break S}if(!Fc){break S}zb=O(zb-O(O(gc*O(O(Wa*Rb)-O(Sa*Nb)))+O(O(hc*O(O(Sa*Jb)-O(qa*Rb)))+O(O(O(nc*qa)+O(O(qc*Wa)+O(tc*Sa)))+O(bc*O(O(qa*Nb)-O(Wa*Jb)))))));Db=O(Db-O(O(ic*O(O(Va*Sb)-O(Qa*Ob)))+O(O(jc*O(O(Qa*Kb)-O(pa*Sb)))+O(O(O(oc*pa)+O(O(rc*Va)+O(uc*Qa)))+O(cc*O(O(pa*Ob)-O(Va*Kb)))))));Eb=O(Eb-O(O(kc*O(O(Ua*Tb)-O(Pa*Pb)))+O(O(lc*O(O(Pa*Lb)-O(g*Tb)))+O(O(O(pc*g)+O(O(sc*Ua)+O(vc*Pa)))+O(dc*O(O(g*Pb)-O(Ua*Lb)))))));Fb=O(Fb-O(O(ec*O(O(Ta*Ub)-O(Na*Qb)))+O(O(fc*O(O(Na*Mb)-O(f*Ub)))+O(O(O(wc*f)+O(O(xc*Ta)+O(yc*Na)))+O(mc*O(O(f*Qb)-O(Ta*Mb)))))))}b=t+dd|0;L[t+44>>2]=_;L[t+40>>2]=Za;L[t+36>>2]=ea;L[t+32>>2]=oa;L[t+28>>2]=$;L[t+24>>2]=_a;L[t+20>>2]=fa;L[t+16>>2]=K;L[t+12>>2]=Ya;L[t+8>>2]=$a;L[t+4>>2]=na;L[t>>2]=M;D=O(xa*(X>O(0)?O(O(.800000011920929)/X):O(0)));L[t+76>>2]=D;E=O(ya*(Y>O(0)?O(O(.800000011920929)/Y):O(0)));L[t+72>>2]=E;p=O(za*(Z>O(0)?O(O(.800000011920929)/Z):O(0)));L[t+68>>2]=p;o=O(Aa*(aa>O(0)?O(O(.800000011920929)/aa):O(0)));L[t+64>>2]=o;n=O(O(O(qa*Ka)+O(O(Sa*Ma)+O(Wa*La)))-zb);L[t+92>>2]=D*O(-n);r=O(O(O(pa*Ha)+O(O(Qa*Oc)+O(Va*Ia)))-Db);L[t+88>>2]=E*O(-r);q=O(O(O(g*qb)+O(O(Pa*Ga)+O(Ua*Fa)))-Eb);L[t+84>>2]=p*O(-q);j=O(O(O(f*nb)+O(O(Na*pb)+O(Ta*ob)))-Fb);L[t+80>>2]=o*O(-j);L[t+60>>2]=O(O(O(O(qa*Pc)+O(O(Sa*vb)+O(Wa*Bc)))*d)-n)*D;L[t+56>>2]=O(O(O(O(pa*Qc)+O(O(Qa*wb)+O(Va*Cc)))*d)-r)*E;L[t+52>>2]=O(O(O(O(g*Rc)+O(O(Pa*xb)+O(Ua*Dc)))*d)-q)*p;L[t+48>>2]=O(O(O(O(f*Ac)+O(O(Na*yb)+O(Ta*Ec)))*d)-j)*o;p=O(O(fb*ja)-O(jb*Wc));r=O(-p);o=O(O(jb*Sc)-O(bb*ja));q=O(-o);n=O(O(bb*Wc)-O(fb*Sc));j=O(-n);ga=(rq?o:q)q?o:q)q?o:q)q?o:q)q?o:q)>2]=x;p=O(O(gb*Sb)-O(kb*Ob));r=O(-p);o=O(O(kb*Kb)-O(cb*Sb));q=O(-o);n=O(O(cb*Ob)-O(gb*Kb));j=O(-n);T=(rq?o:q)>2]=B;p=O(O(hb*Tb)-O(lb*Pb));r=O(-p);o=O(O(lb*Lb)-O(db*Tb));q=O(-o);n=O(O(db*Pb)-O(hb*Lb));j=O(-n);va=(rq?o:q)>2]=C;p=O(O(ib*Ub)-O(mb*Qb));r=O(-p);o=O(O(mb*Mb)-O(eb*Ub));q=O(-o);n=O(O(eb*Qb)-O(ib*Mb));j=O(-n);ga=(rq?o:q)>2]=z;D=O(O(Ke*ba)+O(O(Le*ca)+O(Me*da)));L[b+124>>2]=D;E=O(O(Se*T)+O(O(Te*ta)+O(Ue*ua)));L[b+120>>2]=E;p=O(O(_e*va)+O(O($e*wa)+O(af*Ba)));L[b+116>>2]=p;o=O(O(me*ga)+O(O(ne*ha)+O(oe*ia)));L[b+112>>2]=o;n=O(O(Ne*ba)+O(O(Oe*ca)+O(ge*da)));L[b+108>>2]=n;r=O(O(Ve*T)+O(O(We*ta)+O(he*ua)));L[b+104>>2]=r;q=O(O(bf*va)+O(O(cf*wa)+O(ie*Ba)));L[b+100>>2]=q;j=O(O(pe*ga)+O(O(qe*ha)+O(If*ia)));L[b+96>>2]=j;Db=O(Db+O(ud+O($c*O(O(x*x)+O(O(D*D)+O(n*n))))));Eb=O(Eb+O(vd+O(ad*O(O(B*B)+O(O(E*E)+O(r*r))))));Fb=O(Fb+O(wd+O(bd*O(O(C*C)+O(O(p*p)+O(q*q))))));aa=O(aa+O(od+O(cd*O(O(z*z)+O(O(o*o)+O(j*j))))));zb=O(zb-O(O(gc*ba)+O(O(hc*ca)+O(O(O(nc*bb)+O(O(qc*fb)+O(tc*jb)))+O(bc*da)))));X=O(X-O(O(ic*T)+O(O(jc*ta)+O(O(O(oc*cb)+O(O(rc*gb)+O(uc*kb)))+O(cc*ua)))));Y=O(Y-O(O(kc*va)+O(O(lc*wa)+O(O(O(pc*db)+O(O(sc*hb)+O(vc*lb)))+O(dc*Ba)))));Z=O(Z-O(O(ec*ga)+O(O(fc*ha)+O(O(O(wc*eb)+O(O(xc*ib)+O(yc*mb)))+O(mc*ia)))));break T}if(!Fc){break T}zb=O(zb-O(O(gc*O(O(fb*Rb)-O(jb*Nb)))+O(O(hc*O(O(jb*Jb)-O(bb*Rb)))+O(O(O(nc*bb)+O(O(qc*fb)+O(tc*jb)))+O(bc*O(O(bb*Nb)-O(fb*Jb)))))));X=O(X-O(O(ic*O(O(gb*Sb)-O(kb*Ob)))+O(O(jc*O(O(kb*Kb)-O(cb*Sb)))+O(O(O(oc*cb)+O(O(rc*gb)+O(uc*kb)))+O(cc*O(O(cb*Ob)-O(gb*Kb)))))));Y=O(Y-O(O(kc*O(O(hb*Tb)-O(lb*Pb)))+O(O(lc*O(O(lb*Lb)-O(db*Tb)))+O(O(O(pc*db)+O(O(sc*hb)+O(vc*lb)))+O(dc*O(O(db*Pb)-O(hb*Lb)))))));Z=O(Z-O(O(ec*O(O(ib*Ub)-O(mb*Qb)))+O(O(fc*O(O(mb*Mb)-O(eb*Ub)))+O(O(O(wc*eb)+O(O(xc*ib)+O(yc*mb)))+O(mc*O(O(eb*Qb)-O(ib*Mb)))))))}t=b+dd|0;L[b+44>>2]=_;L[b+40>>2]=Za;L[b+36>>2]=ea;L[b+32>>2]=oa;L[b+28>>2]=$;L[b+24>>2]=_a;L[b+20>>2]=fa;L[b+16>>2]=K;L[b+12>>2]=Ya;L[b+8>>2]=$a;L[b+4>>2]=na;L[b>>2]=M;D=O(xa*(Db>O(0)?O(O(.800000011920929)/Db):O(0)));L[b+76>>2]=D;E=O(ya*(Eb>O(0)?O(O(.800000011920929)/Eb):O(0)));L[b+72>>2]=E;p=O(za*(Fb>O(0)?O(O(.800000011920929)/Fb):O(0)));L[b+68>>2]=p;o=O(Aa*(aa>O(0)?O(O(.800000011920929)/aa):O(0)));L[b+64>>2]=o;n=O(O(O(bb*Ka)+O(O(jb*Ma)+O(fb*La)))-zb);L[b+92>>2]=D*O(-n);r=O(O(O(cb*Ha)+O(O(kb*Oc)+O(gb*Ia)))-X);L[b+88>>2]=E*O(-r);q=O(O(O(db*qb)+O(O(lb*Ga)+O(hb*Fa)))-Y);L[b+84>>2]=p*O(-q);j=O(O(O(eb*nb)+O(O(mb*pb)+O(ib*ob)))-Z);L[b+80>>2]=o*O(-j);L[b+60>>2]=O(O(O(O(bb*Pc)+O(O(jb*vb)+O(fb*Bc)))*d)-n)*D;L[b+56>>2]=O(O(O(O(cb*Qc)+O(O(kb*wb)+O(gb*Cc)))*d)-r)*E;L[b+52>>2]=O(O(O(O(db*Rc)+O(O(lb*xb)+O(hb*Dc)))*d)-q)*p;L[b+48>>2]=O(O(O(O(eb*Ac)+O(O(mb*yb)+O(ib*Ec)))*d)-j)*o;a=a+1|0;if((Bb|0)!=(a|0)){continue}break}Bg=Bg+1|0;Ag=Ag+1|0;zg=zg+1|0;yg=yg+1|0}tb=tb+1|0;if((Tf|0)==(tb|0)){break u}Xb=H[l+680>>2];b=H[l+504>>2];a=H[l+328>>2];v=H[l+152>>2];continue}}Oa=Ab+16|0;H[Xa+_c>>2]=0;u=2}Oa=y+160|0;k=u}Oa=Ja+32|0;return k|0}function Ju(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,k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=0,s=0,t=0,u=O(0),v=0,w=O(0),x=0,y=O(0),z=0,A=O(0),B=O(0),C=0,D=O(0),E=0,G=0,J=0,K=0,M=O(0),P=O(0),Q=0,S=O(0),T=O(0),U=O(0),V=O(0),X=O(0),Y=O(0),Z=O(0),_=O(0),$=0,aa=O(0),ba=O(0),ca=O(0),da=O(0),ea=O(0),fa=O(0),ga=O(0),ha=O(0),ia=O(0),ja=O(0),ka=O(0),la=O(0);h=Oa-944|0;Oa=h;z=H[f>>2];r=a;Z=L[a+8>>2];V=L[a+12>>2];_=L[a+4>>2];H[h+812>>2]=0;L[h+808>>2]=V;L[h+804>>2]=Z;L[h+800>>2]=_;A=L[b+8>>2];w=L[b+12>>2];D=L[b+4>>2];H[h+796>>2]=0;L[h+792>>2]=w;L[h+788>>2]=A;L[h+784>>2]=D;L[h+768>>2]=L[e>>2];q=L[c+20>>2];p=L[c+24>>2];P=L[c>>2];M=L[c+4>>2];B=L[c+8>>2];y=L[c+12>>2];l=L[c+16>>2];H[h+764>>2]=0;L[h+760>>2]=p;L[h+756>>2]=q;L[h+752>>2]=l;L[h+748>>2]=y;L[h+744>>2]=B;L[h+740>>2]=M;L[h+736>>2]=P;n=L[d+20>>2];o=L[d+24>>2];T=L[d>>2];U=L[d+4>>2];S=L[d+8>>2];X=L[d+12>>2];k=L[d+16>>2];H[h+732>>2]=0;L[h+728>>2]=o;L[h+724>>2]=n;L[h+720>>2]=k;L[h+716>>2]=X;L[h+712>>2]=S;L[h+708>>2]=U;L[h+704>>2]=T;H[h+700>>2]=0;m=O(-T);u=O(l-k);q=O(q-n);l=O(p-o);n=O(O(O(m*u)-O(q*U))-O(S*l));o=O(O(X*X)+O(-.5));k=O(O(O(o*q)+O(X*O(O(T*l)-O(S*u))))-O(U*n));L[h+692>>2]=k+k;k=O(O(O(X*O(O(U*u)-O(T*q)))+O(o*l))-O(S*n));L[h+696>>2]=k+k;k=O(O(O(o*u)+O(X*O(O(S*q)-O(U*l))))-O(T*n));L[h+688>>2]=k+k;l=O(O(O(P*U)-O(T*M))+O(O(B*X)-O(y*S)));L[h+680>>2]=l;k=O(O(O(M*S)-O(U*B))+O(O(P*X)-O(y*T)));L[h+672>>2]=k;Y=O(O(O(B*T)-O(S*P))+O(O(M*X)-O(y*U)));L[h+676>>2]=Y;B=O(O(y*X)-O(O(O(m*P)-O(M*U))-O(S*B)));L[h+684>>2]=B;H[h+652>>2]=0;y=O(k+k);n=O(O(1)-O(k*y));u=O(Y+Y);q=O(Y*u);m=O(n-q);L[h+648>>2]=m;o=O(l*u);k=O(B*y);S=O(o-k);L[h+644>>2]=S;H[h+636>>2]=0;T=O(o+k);L[h+632>>2]=T;o=O(l+l);p=O(l*o);P=O(n-p);L[h+628>>2]=P;c=H[h+700>>2];H[h+664>>2]=H[h+696>>2];H[h+668>>2]=c;l=O(l*y);k=O(B*u);M=O(l+k);L[h+640>>2]=M;n=O(Y*y);o=O(B*o);B=O(n-o);L[h+624>>2]=B;H[h+620>>2]=0;k=O(l-k);L[h+616>>2]=k;y=O(n+o);L[h+612>>2]=y;o=O(O(O(1)-q)-p);L[h+608>>2]=o;c=H[h+692>>2];H[h+656>>2]=H[h+688>>2];H[h+660>>2]=c;f=I[z+64|0];ia=L[e+8>>2];u=O(ia*O(.05000000074505806));d=H[b+40>>2];l=O(D*L[d+52>>2]);n=O(A*L[d+56>>2]);l=l<=n?l:n;n=O(w*L[d+60>>2]);n=O((l<=n?l:n)*O(.25));q=n>u?u:n;e=H[a+40>>2];w=L[e+52>>2];l=O(_*w);D=L[e+56>>2];n=O(Z*D);p=l<=n?l:n;n=L[e+60>>2];l=O(V*n);l=O((l>=p?p:l)*O(.25));l=l>u?u:l;l=l>q?q:l;L[h+592>>2]=l;if(f){n=O(l*O(.800000011920929));D=O(n*n);a=f;while(1){Q=H[z+76>>2];a=a-1|0;s=Q+N(a,48)|0;A=L[s+24>>2];u=L[s+40>>2];w=L[s+8>>2];p=O(m*w);n=L[s>>2];m=L[s+4>>2];k=O(L[h+664>>2]+O(p+O(O(k*n)+O(m*T))));q=O(L[h+656>>2]+O(O(M*w)+O(O(o*n)+O(m*B))));p=L[s+16>>2];l=L[s+32>>2];n=O(L[h+660>>2]+O(O(S*w)+O(O(y*n)+O(m*P))));o=L[s+20>>2];m=L[s+36>>2];w=O(O(u*O(k-A))+O(O(O(q-p)*l)+O(O(n-o)*m)));k=O(A-O(k-O(u*w)));u=O(k*k);k=O(p-O(q-O(l*w)));p=O(k*k);k=O(o-O(n-O(m*w)));a:{if(D>2];H[s>>2]=H[Q>>2];H[s+4>>2]=c;c=H[Q+44>>2];H[s+40>>2]=H[Q+40>>2];H[s+44>>2]=c;c=H[Q+36>>2];H[s+32>>2]=H[Q+32>>2];H[s+36>>2]=c;c=H[Q+28>>2];H[s+24>>2]=H[Q+24>>2];H[s+28>>2]=c;c=H[Q+20>>2];H[s+16>>2]=H[Q+16>>2];H[s+20>>2]=c;c=H[Q+12>>2];H[s+8>>2]=H[Q+8>>2];H[s+12>>2]=c;break a}L[s+44>>2]=w}if(a){m=L[h+648>>2];T=L[h+632>>2];k=L[h+616>>2];S=L[h+644>>2];P=L[h+628>>2];y=L[h+612>>2];M=L[h+640>>2];B=L[h+624>>2];o=L[h+608>>2];continue}break}D=L[e+56>>2];Q=I[z+64|0];w=L[e+52>>2];n=L[e+60>>2]}u=L[h+792>>2];q=L[h+784>>2];p=L[h+788>>2];l=L[h+808>>2];k=O(n*l);P=O(k*k);m=L[h+800>>2];k=O(w*m);y=O(k*k);o=L[h+804>>2];k=O(D*o);L[h+576>>2]=W(O(P+O(y+O(k*k))));k=O(n*u);n=O(k*k);k=O(w*q);q=O(k*k);k=O(D*p);L[h+560>>2]=W(O(n+O(q+O(k*k))));b:{c:{if((f|0)==(Q|0)){if(!V$(z,h+672|0,h+736|0,h+704|0,h+592|0,h+576|0,h+560|0)){break c}}a=H[h+748>>2];H[h+216>>2]=H[h+744>>2];H[h+220>>2]=a;a=H[h+716>>2];H[h+376>>2]=H[h+712>>2];H[h+380>>2]=a;a=H[h+700>>2];H[z+24>>2]=H[h+696>>2];H[z+28>>2]=a;a=H[h+740>>2];H[h+208>>2]=H[h+736>>2];H[h+212>>2]=a;a=H[h+708>>2];H[h+368>>2]=H[h+704>>2];H[h+372>>2]=a;a=H[h+692>>2];H[z+16>>2]=H[h+688>>2];H[z+20>>2]=a;a=H[h+684>>2];H[z+8>>2]=H[h+680>>2];H[z+12>>2]=a;a=H[h+676>>2];H[z>>2]=H[h+672>>2];H[z+4>>2]=a;a=H[h+220>>2];H[z+40>>2]=H[h+216>>2];H[z+44>>2]=a;a=H[h+212>>2];H[z+32>>2]=H[h+208>>2];H[z+36>>2]=a;a=H[h+372>>2];H[z+48>>2]=H[h+368>>2];H[z+52>>2]=a;a=H[h+380>>2];H[z+56>>2]=H[h+376>>2];H[z+60>>2]=a;a=0;c=0;d:{if(L[r+4>>2]!=O(1)){break d}c=0;if(L[r+8>>2]!=O(1)){break d}c=L[r+12>>2]==O(1)}a=L[b+4>>2]!=O(1)|L[b+8>>2]!=O(1)?a:L[b+12>>2]==O(1);K=h+656|0;x=H[r+16>>2];s=H[r+20>>2];Q=H[r+28>>2];H[h+552>>2]=H[r+24>>2];H[h+556>>2]=Q;H[h+544>>2]=x;H[h+548>>2]=s;s=H[b+16>>2];Q=H[b+20>>2];r=H[b+28>>2];H[h+536>>2]=H[b+24>>2];H[h+540>>2]=r;H[h+528>>2]=s;H[h+532>>2]=Q;k=L[e+32>>2];r=H[e+28>>2];b=H[e+24>>2];F[h+400|0]=0;H[h+396>>2]=0;H[h+368>>2]=b;H[h+372>>2]=r;H[h+512>>2]=e;H[h+380>>2]=0;L[h+376>>2]=k;H[h+520>>2]=H[e+40>>2]+N(I[e+39|0],20);F[h+524|0]=I[e+38|0];m=O(L[e+52>>2]*m);k=O(L[e+56>>2]*o);m=k>=m?m:k;k=O(L[e+60>>2]*l);k=k>=m?m:k;L[h+392>>2]=k*O(.02500000037252903);L[h+388>>2]=k*O(.05000000074505806);L[h+384>>2]=k*O(.10000000149011612);CU(h+800|0,h+544|0,h+416|0,h+464|0,h+368|0,c);H[h+516>>2]=H[e+44>>2];k=L[d+32>>2];e=H[d+28>>2];b=H[d+24>>2];F[h+240|0]=0;H[h+236>>2]=0;H[h+208>>2]=b;H[h+212>>2]=e;H[h+352>>2]=d;H[h+220>>2]=0;L[h+216>>2]=k;H[h+360>>2]=H[d+40>>2]+N(I[d+39|0],20);F[h+364|0]=I[d+38|0];m=O(L[d+52>>2]*L[h+784>>2]);k=O(L[d+56>>2]*L[h+788>>2]);m=k>=m?m:k;k=O(L[d+60>>2]*L[h+792>>2]);k=k>=m?m:k;L[h+232>>2]=k*O(.02500000037252903);L[h+228>>2]=k*O(.05000000074505806);L[h+224>>2]=k*O(.10000000149011612);CU(h+784|0,h+528|0,h+256|0,h+304|0,h+208|0,a);H[h+356>>2]=H[d+44>>2];H[h+168>>2]=0;H[h+172>>2]=0;H[h+160>>2]=0;H[h+164>>2]=0;H[h+152>>2]=0;H[h+156>>2]=0;H[h+144>>2]=0;H[h+148>>2]=0;H[h+136>>2]=0;H[h+140>>2]=0;H[h+128>>2]=0;H[h+132>>2]=0;H[h+192>>2]=0;if(c){b=H[h+596>>2];H[h+816>>2]=H[h+592>>2];H[h+820>>2]=b;b=H[h+604>>2];H[h+824>>2]=H[h+600>>2];H[h+828>>2]=b;b=H[h+780>>2];H[h+840>>2]=H[h+776>>2];H[h+844>>2]=b;b=H[h+772>>2];H[h+832>>2]=H[h+768>>2];H[h+836>>2]=b;b=H[h+628>>2];H[h+896>>2]=H[h+624>>2];H[h+900>>2]=b;b=H[h+620>>2];H[h+888>>2]=H[h+616>>2];H[h+892>>2]=b;b=H[h+636>>2];H[h+904>>2]=H[h+632>>2];H[h+908>>2]=b;b=H[h+644>>2];H[h+912>>2]=H[h+640>>2];H[h+916>>2]=b;b=H[h+652>>2];H[h+920>>2]=H[h+648>>2];H[h+924>>2]=b;b=H[h+660>>2];H[h+928>>2]=H[h+656>>2];H[h+932>>2]=b;b=H[h+668>>2];H[h+936>>2]=H[h+664>>2];H[h+940>>2]=b;b=H[h+612>>2];H[h+880>>2]=H[h+608>>2];H[h+884>>2]=b;o=L[h+884>>2];L[h+884>>2]=L[h+896>>2];H[h+864>>2]=129368;H[h+872>>2]=h+608;H[h+868>>2]=h+368;m=L[h+888>>2];k=L[h+904>>2];L[h+896>>2]=o;L[h+888>>2]=L[h+912>>2];L[h+904>>2]=L[h+916>>2];L[h+916>>2]=k;L[h+912>>2]=m;if(a){H[h+856>>2]=129228;H[h+860>>2]=h+208;C=z+67|0;E=z+71|0;j=h+128|0;i=Oa-320|0;Oa=i;Q=h+856|0;v=H[Q+4>>2];m=L[v+20>>2];G=h+864|0;$=H[G+4>>2];k=L[$+20>>2];P=L[h+832>>2];r=I[$+32|0];M=L[$+16>>2];e=I[v+32|0];B=L[v+16>>2];H[i+28>>2]=0;Z=O((k>m?m:k)*O(.10000000149011612));e:{f:{g:{h:{i:{j:{d=I[z+66|0];if(d){K=H[G+8>>2];b=0;while(1){a=t<<2;c=I[t+C|0];H[a+(i+48|0)>>2]=c;s=a+(i+32|0)|0;a=I[t+E|0];H[s>>2]=a;c=H[$+152>>2]+N(c,12)|0;U=L[c+8>>2];Y=L[c>>2];V=L[c+4>>2];a=H[v+152>>2]+N(a,12)|0;_=L[a>>2];S=L[a+4>>2];T=L[a+8>>2];y=L[K+48>>2];A=L[K+32>>2];w=L[K>>2];D=L[K+16>>2];u=L[K+52>>2];q=L[K+36>>2];p=L[K+4>>2];l=L[K+20>>2];n=L[K+56>>2];o=L[K+40>>2];m=L[K+8>>2];k=L[K+24>>2];a=b;c=a<<4;x=c+(i+128|0)|0;H[x+12>>2]=0;s=c+(i- -64|0)|0;H[s+12>>2]=0;L[s+8>>2]=T;L[s+4>>2]=S;L[s>>2]=_;c=c+(i+192|0)|0;H[c+12>>2]=0;o=O(n+O(O(o*U)+O(O(m*Y)+O(V*k))));L[x+8>>2]=o;m=O(u+O(O(q*U)+O(O(p*Y)+O(V*l))));L[x+4>>2]=m;k=O(y+O(O(A*U)+O(O(w*Y)+O(V*D))));L[x>>2]=k;o=O(o-T);L[c+8>>2]=o;m=O(m-S);L[c+4>>2]=m;k=O(k-_);L[c>>2]=k;b=a+1|0;t=t+1|0;if((d|0)!=(t|0)){continue}break}H[i+28>>2]=b;k:{l:{switch(a-1|0){case 0:n=L[i+200>>2];q=O(L[i+216>>2]-n);o=L[i+192>>2];p=O(L[i+208>>2]-o);m=L[i+196>>2];l=O(L[i+212>>2]-m);k=O(O(q*q)+O(O(p*p)+O(l*l)));if(!(k<=O(1.1920928955078125e-7))){break k}H[i+28>>2]=1;a=H[i+196>>2];H[i+304>>2]=H[i+192>>2];H[i+308>>2]=a;a=H[i+204>>2];H[i+312>>2]=H[i+200>>2];H[i+316>>2]=a;break i;case 1:_W(i+304|0,i+192|0,i+128|0,i- -64|0,i+48|0,i+32|0,i+28|0);break i;case 2:break l;default:break j}}DZ(i+304|0,i+192|0,i+128|0,i- -64|0,i+48|0,i+32|0,i+28|0);break i}H[i+316>>2]=0;k=O(R(O(O(O(O(O(-o)*p)-O(l*m))-O(n*q))/k),O(1)));k=k>O(0)?k:O(0);L[i+312>>2]=n+O(q*k);L[i+308>>2]=m+O(l*k);L[i+304>>2]=o+O(p*k);break i}o=L[K+8>>2];m=L[K>>2];k=L[K+4>>2];H[i+268>>2]=0;a=O(O(o*o)+O(O(m*m)+O(k*k)))>O(0);n=a?o:O(0);L[i+264>>2]=n;o=a?k:O(0);L[i+260>>2]=o;m=a?m:O(1);L[i+256>>2]=m;k=O(O(1)/O(W(O(O(n*n)+O(O(m*m)+O(o*o))))));aa=O(n*k);ba=O(o*k);ca=O(m*k);k=O(3.4028234663852886e38);w=O(0);break h}H[i+316>>2]=0;L[i+312>>2]=o;L[i+308>>2]=m;L[i+304>>2]=k}a=H[i+308>>2];H[i+256>>2]=H[i+304>>2];H[i+260>>2]=a;a=H[i+316>>2];H[i+264>>2]=H[i+312>>2];H[i+268>>2]=a;n=L[i+264>>2];m=L[i+256>>2];o=L[i+260>>2];k=O(W(O(O(n*n)+O(O(m*m)+O(o*o)))));if(!(Z>2]}_=O(P+O((r?M:O(0))+(e?B:O(0))));while(1){H[i+280>>2]=H[i+296>>2];a=H[i+292>>2];H[i+272>>2]=H[i+288>>2];H[i+276>>2]=a;c=H[G+8>>2];b=H[G+4>>2];a=H[i+28>>2];M=L[G+48>>2];B=L[G+16>>2];y=L[G+32>>2];A=L[G+52>>2];D=L[G+20>>2];u=L[G+36>>2];q=L[G+56>>2];p=L[G+24>>2];l=L[G+40>>2];H[i+316>>2]=0;P=p;p=O(-m);L[i+312>>2]=O(O(P*p)-O(l*o))-O(q*n);L[i+308>>2]=O(O(D*p)-O(u*o))-O(A*n);L[i+304>>2]=O(O(B*p)-O(y*o))-O(M*n);d=(i+48|0)+(a<<2)|0;a=EU(b,i+304|0);H[d>>2]=a;S=L[c+52>>2];T=L[c+20>>2];P=L[c+36>>2];M=L[c+56>>2];a=H[b+152>>2]+N(a,12)|0;X=L[a>>2];y=L[c+24>>2];U=L[a+4>>2];A=L[c+40>>2];Y=L[a+8>>2];B=L[c+48>>2];D=L[c+32>>2];u=L[c>>2];q=L[c+16>>2];p=L[c+4>>2];l=L[c+8>>2];c=(i+32|0)+(H[i+28>>2]<<2)|0;b=H[Q+4>>2];a=EU(b,i+256|0);H[c>>2]=a;y=O(M+O(O(A*Y)+O(O(l*X)+O(U*y))));a=H[b+152>>2]+N(a,12)|0;A=L[a+8>>2];V=O(y-A);D=O(B+O(O(D*Y)+O(O(u*X)+O(U*q))));u=L[a>>2];M=O(D-u);q=O(S+O(O(P*Y)+O(O(p*X)+O(U*T))));p=L[a+4>>2];B=O(q-p);l=O(O(aa*V)+O(O(ca*M)+O(ba*B)));if(l>_){x=0;if(!C){break e}s=H[i+28>>2];F[z+66|0]=s;if(!s){break e}b=0;if((s|0)!=1){d=s&-2;while(1){a=b<<2;c=i+48|0;F[b+C|0]=H[a+c>>2];e=a;a=i+32|0;F[b+E|0]=H[e+a>>2];r=b|1;e=r<<2;F[r+C|0]=H[c+e>>2];F[r+E|0]=H[a+e>>2];b=b+2|0;J=J+2|0;if((d|0)!=(J|0)){continue}break}}if(!(s&1)){break e}a=b<<2;F[b+C|0]=H[a+(i+48|0)>>2];F[b+E|0]=H[a+(i+32|0)>>2];break e}r=H[i+28>>2];if(l>O(k*O(.9997749924659729))){m:{if(!C){break m}F[z+66|0]=r;if(!r){break m}t=0;if((r|0)!=1){c=r&-2;while(1){a=t<<2;b=i+48|0;F[t+C|0]=H[a+b>>2];d=a;a=i+32|0;F[t+E|0]=H[d+a>>2];e=t|1;d=e<<2;F[e+C|0]=H[b+d>>2];F[e+E|0]=H[a+d>>2];t=t+2|0;J=J+2|0;if((c|0)!=(J|0)){continue}break}}if(!(r&1)){break m}a=t<<2;F[t+C|0]=H[a+(i+48|0)>>2];F[t+E|0]=H[a+(i+32|0)>>2]}L[j+32>>2]=ca;H[j+44>>2]=0;L[j+40>>2]=aa;L[j+36>>2]=ba;FU(i+192|0,i+128|0,i- -64|0,i+256|0,i+304|0,i,r);a=H[i+308>>2];H[j>>2]=H[i+304>>2];H[j+4>>2]=a;a=H[i+316>>2];H[j+8>>2]=H[i+312>>2];H[j+12>>2]=a;a=H[i+4>>2];H[j+16>>2]=H[i>>2];H[j+20>>2]=a;a=H[i+12>>2];H[j+24>>2]=H[i+8>>2];H[j+28>>2]=a;a=H[i+292>>2];H[j+68>>2]=H[i+288>>2];H[j+72>>2]=a;H[j+76>>2]=H[i+296>>2];L[j+64>>2]=k;x=2;break e}a=r<<4;b=a+(i+128|0)|0;H[b+12>>2]=0;L[b+8>>2]=y;L[b+4>>2]=q;L[b>>2]=D;b=a+(i- -64|0)|0;H[b+12>>2]=0;L[b+8>>2]=A;L[b+4>>2]=p;L[b>>2]=u;a=a+(i+192|0)|0;H[a+12>>2]=0;L[a+8>>2]=V;L[a+4>>2]=B;L[a>>2]=M;H[i+28>>2]=r+1;n:{o:{switch(r-1|0){case 0:u=L[i+200>>2];y=O(L[i+216>>2]-u);q=L[i+192>>2];A=O(L[i+208>>2]-q);p=L[i+196>>2];D=O(L[i+212>>2]-p);l=O(O(y*y)+O(O(A*A)+O(D*D)));if(l<=O(1.1920928955078125e-7)){H[i+28>>2]=1;a=H[i+196>>2];H[i+304>>2]=H[i+192>>2];H[i+308>>2]=a;a=H[i+204>>2];H[i+312>>2]=H[i+200>>2];H[i+316>>2]=a;break n}H[i+316>>2]=0;l=O(R(O(O(O(O(O(-q)*A)-O(D*p))-O(u*y))/l),O(1)));l=l>O(0)?l:O(0);L[i+312>>2]=u+O(y*l);L[i+308>>2]=p+O(D*l);L[i+304>>2]=q+O(A*l);break n;case 1:_W(i+304|0,i+192|0,i+128|0,i- -64|0,i+48|0,i+32|0,i+28|0);break n;case 2:DZ(i+304|0,i+192|0,i+128|0,i- -64|0,i+48|0,i+32|0,i+28|0);break n;default:break o}}H[i+316>>2]=0;L[i+312>>2]=V;L[i+308>>2]=B;L[i+304>>2]=M}a=H[i+308>>2];H[i+256>>2]=H[i+304>>2];H[i+260>>2]=a;a=H[i+316>>2];H[i+264>>2]=H[i+312>>2];H[i+268>>2]=a;q=L[i+264>>2];p=L[i+256>>2];l=L[i+260>>2];u=O(W(O(O(q*q)+O(O(p*p)+O(l*l)))));D=O(O(1)/u);aa=O(q*D);ba=O(l*D);ca=O(p*D);if(!(!(u>Z)|!(k>u))){w=L[i+268>>2];n=q;o=l;m=p;k=u;continue}break}t=H[i+28>>2];if(!(k>u)){p:{if(!C){break p}s=t-1|0;F[z+66|0]=s;if(!s){break p}b=0;if((t|0)!=2){d=s&-2;while(1){a=b<<2;c=i+48|0;F[b+C|0]=H[a+c>>2];e=a;a=i+32|0;F[b+E|0]=H[e+a>>2];r=b|1;e=r<<2;F[r+C|0]=H[c+e>>2];F[r+E|0]=H[a+e>>2];b=b+2|0;J=J+2|0;if((d|0)!=(J|0)){continue}break}}if(!(s&1)){break p}a=b<<2;F[b+C|0]=H[a+(i+48|0)>>2];F[b+E|0]=H[a+(i+32|0)>>2]}H[i+296>>2]=H[i+280>>2];a=H[i+276>>2];H[i+288>>2]=H[i+272>>2];H[i+292>>2]=a;L[i+268>>2]=w;L[i+256>>2]=m;L[i+260>>2]=o;L[i+264>>2]=n;FU(i+192|0,i+128|0,i- -64|0,i+256|0,i+304|0,i,t);H[j+60>>2]=0;L[j+56>>2]=aa;L[j+52>>2]=ba;L[j+48>>2]=ca;H[j+44>>2]=0;p=n;n=O(O(1)/k);L[j+40>>2]=p*n;L[j+36>>2]=o*n;L[j+32>>2]=m*n;a=H[i+308>>2];H[j>>2]=H[i+304>>2];H[j+4>>2]=a;a=H[i+316>>2];H[j+8>>2]=H[i+312>>2];H[j+12>>2]=a;a=H[i+4>>2];H[j+16>>2]=H[i>>2];H[j+20>>2]=a;a=H[i+12>>2];H[j+24>>2]=H[i+8>>2];H[j+28>>2]=a;L[j+64>>2]=k;a=H[i+276>>2];H[j+68>>2]=H[i+272>>2];H[j+72>>2]=a;H[j+76>>2]=H[i+280>>2];x=4;break e}if(C){break f}x=5;break e}t=H[i+28>>2]}F[z+66|0]=t;x=5;if(!t){break e}b=0;if((t|0)!=1){d=t&-2;while(1){a=b<<2;c=i+48|0;F[b+C|0]=H[a+c>>2];e=a;a=i+32|0;F[b+E|0]=H[e+a>>2];r=b|1;e=r<<2;F[r+C|0]=H[c+e>>2];F[r+E|0]=H[a+e>>2];b=b+2|0;J=J+2|0;if((d|0)!=(J|0)){continue}break}}if(!(t&1)){break e}a=b<<2;F[b+C|0]=H[a+(i+48|0)>>2];F[b+E|0]=H[a+(i+32|0)>>2]}Oa=i+320|0;a=H[h+828>>2];H[h+24>>2]=H[h+824>>2];H[h+28>>2]=a;a=H[h+820>>2];H[h+16>>2]=H[h+816>>2];H[h+20>>2]=a;a=H[h+836>>2];H[h>>2]=H[h+832>>2];H[h+4>>2]=a;a=H[h+844>>2];H[h+8>>2]=H[h+840>>2];H[h+12>>2]=a;a=t0(G,Q,h+736|0,h+704|0,h+608|0,x,j,z,g,f,h+16|0,h,1,1,ia);break b}H[h+856>>2]=126016;H[h+860>>2]=h+208;t=z+67|0;C=z+71|0;j=h+128|0;b=0;i=Oa-320|0;Oa=i;Q=h+856|0;G=H[Q+4>>2];m=L[G+20>>2];E=h+864|0;$=H[E+4>>2];k=L[$+20>>2];ba=L[h+832>>2];r=I[$+32|0];ca=L[$+16>>2];e=I[G+32|0];X=L[G+16>>2];H[i+28>>2]=0;ja=O((k>m?m:k)*O(.10000000149011612));q:{r:{s:{t:{u:{v:{d=I[z+66|0];if(d){v=H[E+8>>2];while(1){a=J<<2;c=I[t+J|0];H[a+(i+48|0)>>2]=c;s=a+(i+32|0)|0;a=I[C+J|0];H[s>>2]=a;c=H[$+152>>2]+N(c,12)|0;ga=L[c+8>>2];da=L[c>>2];ea=L[c+4>>2];a=H[G+152>>2]+N(a,12)|0;fa=L[a+8>>2];ha=L[a>>2];aa=L[a+4>>2];U=L[v+48>>2];Y=L[v+32>>2];Z=L[v>>2];V=L[v+16>>2];_=L[v+52>>2];S=L[v+36>>2];T=L[v+4>>2];P=L[v+20>>2];M=L[v+56>>2];B=L[v+40>>2];y=L[v+8>>2];A=L[v+24>>2];w=L[G+80>>2];D=L[G+48>>2];u=L[G+64>>2];q=L[G+84>>2];l=L[G+52>>2];n=L[G+68>>2];o=L[G+88>>2];m=L[G+56>>2];k=L[G+72>>2];a=b;c=a<<4;x=c+(i+128|0)|0;H[x+12>>2]=0;s=c+(i- -64|0)|0;H[s+12>>2]=0;c=c+(i+192|0)|0;H[c+12>>2]=0;p=O(O(o*fa)+O(O(m*ha)+O(aa*k)));L[s+8>>2]=p;l=O(O(q*fa)+O(O(l*ha)+O(aa*n)));L[s+4>>2]=l;n=O(O(w*fa)+O(O(D*ha)+O(aa*u)));L[s>>2]=n;o=O(M+O(O(B*ga)+O(O(y*da)+O(ea*A))));L[x+8>>2]=o;m=O(_+O(O(S*ga)+O(O(T*da)+O(ea*P))));L[x+4>>2]=m;k=O(U+O(O(Y*ga)+O(O(Z*da)+O(ea*V))));L[x>>2]=k;o=O(o-p);L[c+8>>2]=o;m=O(m-l);L[c+4>>2]=m;k=O(k-n);L[c>>2]=k;b=a+1|0;J=J+1|0;if((d|0)!=(J|0)){continue}break}H[i+28>>2]=b;w:{x:{switch(a-1|0){case 0:n=L[i+200>>2];q=O(L[i+216>>2]-n);o=L[i+192>>2];p=O(L[i+208>>2]-o);m=L[i+196>>2];l=O(L[i+212>>2]-m);k=O(O(q*q)+O(O(p*p)+O(l*l)));if(!(k<=O(1.1920928955078125e-7))){break w}H[i+28>>2]=1;a=H[i+196>>2];H[i+304>>2]=H[i+192>>2];H[i+308>>2]=a;a=H[i+204>>2];H[i+312>>2]=H[i+200>>2];H[i+316>>2]=a;break u;case 1:_W(i+304|0,i+192|0,i+128|0,i- -64|0,i+48|0,i+32|0,i+28|0);break u;case 2:break x;default:break v}}DZ(i+304|0,i+192|0,i+128|0,i- -64|0,i+48|0,i+32|0,i+28|0);break u}H[i+316>>2]=0;k=O(R(O(O(O(O(O(-o)*p)-O(l*m))-O(n*q))/k),O(1)));k=k>O(0)?k:O(0);L[i+312>>2]=n+O(q*k);L[i+308>>2]=m+O(l*k);L[i+304>>2]=o+O(p*k);break u}o=L[K+8>>2];m=L[K>>2];k=L[K+4>>2];H[i+268>>2]=0;a=O(O(o*o)+O(O(m*m)+O(k*k)))>O(0);n=a?o:O(0);L[i+264>>2]=n;o=a?k:O(0);L[i+260>>2]=o;m=a?m:O(1);L[i+256>>2]=m;k=O(O(1)/O(W(O(O(n*n)+O(O(m*m)+O(o*o))))));ka=O(n*k);la=O(o*k);ga=O(m*k);k=O(3.4028234663852886e38);D=O(0);break t}H[i+316>>2]=0;L[i+312>>2]=o;L[i+308>>2]=m;L[i+304>>2]=k}a=H[i+308>>2];H[i+256>>2]=H[i+304>>2];H[i+260>>2]=a;a=H[i+316>>2];H[i+264>>2]=H[i+312>>2];H[i+268>>2]=a;n=L[i+264>>2];m=L[i+256>>2];o=L[i+260>>2];k=O(W(O(O(n*n)+O(O(m*m)+O(o*o)))));if(!(ja>2]}ha=O(ba+O((r?ca:O(0))+(e?X:O(0))));while(1){H[i+280>>2]=H[i+296>>2];a=H[i+292>>2];H[i+272>>2]=H[i+288>>2];H[i+276>>2]=a;d=H[E+8>>2];b=H[E+4>>2];a=H[i+28>>2];M=L[E+48>>2];B=L[E+16>>2];y=L[E+32>>2];A=L[E+52>>2];w=L[E+20>>2];u=L[E+36>>2];q=L[E+56>>2];p=L[E+24>>2];l=L[E+40>>2];H[i+316>>2]=0;P=p;p=O(-m);L[i+312>>2]=O(O(P*p)-O(l*o))-O(q*n);L[i+308>>2]=O(O(w*p)-O(u*o))-O(A*n);L[i+304>>2]=O(O(B*p)-O(y*o))-O(M*n);e=(i+48|0)+(a<<2)|0;c=i+304|0;a=EU(b,c);H[e>>2]=a;aa=L[d+52>>2];ba=L[d+20>>2];ca=L[d+36>>2];X=L[d+56>>2];a=H[b+152>>2]+N(a,12)|0;da=L[a>>2];U=L[d+24>>2];ea=L[a+4>>2];Y=L[d+40>>2];fa=L[a+8>>2];Z=L[d+48>>2];V=L[d+32>>2];_=L[d>>2];S=L[d+16>>2];T=L[d+4>>2];P=L[d+8>>2];a=H[i+28>>2];d=H[Q+4>>2];M=L[d+56>>2];B=L[d+52>>2];y=L[d+72>>2];b=d- -64|0;A=L[b>>2];w=L[d+68>>2];u=L[d+88>>2];q=L[d+80>>2];p=L[d+84>>2];l=L[d+48>>2];H[i+316>>2]=0;L[i+312>>2]=O(u*n)+O(O(q*m)+O(o*p));L[i+308>>2]=O(y*n)+O(O(A*m)+O(o*w));L[i+304>>2]=O(M*n)+O(O(l*m)+O(o*B));e=(i+32|0)+(a<<2)|0;a=EU(d,c);H[e>>2]=a;y=O(X+O(O(Y*fa)+O(O(P*da)+O(ea*U))));a=H[d+152>>2]+N(a,12)|0;B=L[a+8>>2];p=L[a>>2];l=L[a+4>>2];A=O(O(L[d+88>>2]*B)+O(O(L[d+56>>2]*p)+O(l*L[d+72>>2])));P=O(y-A);w=O(Z+O(O(V*fa)+O(O(_*da)+O(ea*S))));u=O(O(L[d+80>>2]*B)+O(O(L[d+48>>2]*p)+O(l*L[b>>2])));M=O(w-u);q=O(aa+O(O(ca*fa)+O(O(T*da)+O(ea*ba))));p=O(O(L[d+84>>2]*B)+O(O(L[d+52>>2]*p)+O(l*L[d+68>>2])));B=O(q-p);l=O(O(ka*P)+O(O(ga*M)+O(la*B)));if(l>ha){b=0;if(!t){break q}s=H[i+28>>2];F[z+66|0]=s;if(!s){break q}v=0;if((s|0)!=1){d=s&-2;J=0;while(1){a=v<<2;c=i+48|0;F[t+v|0]=H[a+c>>2];e=a;a=i+32|0;F[v+C|0]=H[e+a>>2];r=v|1;e=r<<2;F[t+r|0]=H[c+e>>2];F[r+C|0]=H[a+e>>2];v=v+2|0;J=J+2|0;if((d|0)!=(J|0)){continue}break}}if(!(s&1)){break q}a=v<<2;F[t+v|0]=H[a+(i+48|0)>>2];F[v+C|0]=H[a+(i+32|0)>>2];break q}r=H[i+28>>2];if(l>O(k*O(.9997749924659729))){y:{if(!t){break y}F[z+66|0]=r;if(!r){break y}x=0;if((r|0)!=1){c=r&-2;s=0;while(1){a=x<<2;b=i+48|0;F[t+x|0]=H[a+b>>2];d=a;a=i+32|0;F[x+C|0]=H[d+a>>2];e=x|1;d=e<<2;F[e+t|0]=H[b+d>>2];F[e+C|0]=H[a+d>>2];x=x+2|0;s=s+2|0;if((c|0)!=(s|0)){continue}break}}if(!(r&1)){break y}a=x<<2;F[t+x|0]=H[a+(i+48|0)>>2];F[x+C|0]=H[a+(i+32|0)>>2]}L[j+32>>2]=ga;H[j+44>>2]=0;L[j+40>>2]=ka;L[j+36>>2]=la;FU(i+192|0,i+128|0,i- -64|0,i+256|0,i+304|0,i,r);a=H[i+308>>2];H[j>>2]=H[i+304>>2];H[j+4>>2]=a;a=H[i+316>>2];H[j+8>>2]=H[i+312>>2];H[j+12>>2]=a;a=H[i+4>>2];H[j+16>>2]=H[i>>2];H[j+20>>2]=a;a=H[i+12>>2];H[j+24>>2]=H[i+8>>2];H[j+28>>2]=a;a=H[i+292>>2];H[j+68>>2]=H[i+288>>2];H[j+72>>2]=a;H[j+76>>2]=H[i+296>>2];L[j+64>>2]=k;b=2;break q}a=r<<4;b=a+(i+128|0)|0;H[b+12>>2]=0;L[b+8>>2]=y;L[b+4>>2]=q;L[b>>2]=w;b=a+(i- -64|0)|0;H[b+12>>2]=0;L[b+8>>2]=A;L[b+4>>2]=p;L[b>>2]=u;a=a+(i+192|0)|0;H[a+12>>2]=0;L[a+8>>2]=P;L[a+4>>2]=B;L[a>>2]=M;H[i+28>>2]=r+1;z:{A:{switch(r-1|0){case 0:u=L[i+200>>2];y=O(L[i+216>>2]-u);q=L[i+192>>2];A=O(L[i+208>>2]-q);p=L[i+196>>2];w=O(L[i+212>>2]-p);l=O(O(y*y)+O(O(A*A)+O(w*w)));if(l<=O(1.1920928955078125e-7)){H[i+28>>2]=1;a=H[i+196>>2];H[i+304>>2]=H[i+192>>2];H[i+308>>2]=a;a=H[i+204>>2];H[i+312>>2]=H[i+200>>2];H[i+316>>2]=a;break z}H[i+316>>2]=0;l=O(R(O(O(O(O(O(-q)*A)-O(w*p))-O(u*y))/l),O(1)));l=l>O(0)?l:O(0);L[i+312>>2]=u+O(y*l);L[i+308>>2]=p+O(w*l);L[i+304>>2]=q+O(A*l);break z;case 1:_W(i+304|0,i+192|0,i+128|0,i- -64|0,i+48|0,i+32|0,i+28|0);break z;case 2:DZ(i+304|0,i+192|0,i+128|0,i- -64|0,i+48|0,i+32|0,i+28|0);break z;default:break A}}H[i+316>>2]=0;L[i+312>>2]=P;L[i+308>>2]=B;L[i+304>>2]=M}a=H[i+308>>2];H[i+256>>2]=H[i+304>>2];H[i+260>>2]=a;a=H[i+316>>2];H[i+264>>2]=H[i+312>>2];H[i+268>>2]=a;q=L[i+264>>2];p=L[i+256>>2];l=L[i+260>>2];u=O(W(O(O(q*q)+O(O(p*p)+O(l*l)))));w=O(O(1)/u);ka=O(q*w);la=O(l*w);ga=O(p*w);if(!(!(u>ja)|!(k>u))){D=L[i+268>>2];n=q;o=l;m=p;k=u;continue}break}x=H[i+28>>2];if(!(k>u)){B:{if(!t){break B}r=x-1|0;F[z+66|0]=r;if(!r){break B}v=0;if((x|0)!=2){c=r&-2;s=0;while(1){a=v<<2;b=i+48|0;F[t+v|0]=H[a+b>>2];d=a;a=i+32|0;F[v+C|0]=H[d+a>>2];e=v|1;d=e<<2;F[e+t|0]=H[b+d>>2];F[e+C|0]=H[a+d>>2];v=v+2|0;s=s+2|0;if((c|0)!=(s|0)){continue}break}}if(!(r&1)){break B}a=v<<2;F[t+v|0]=H[a+(i+48|0)>>2];F[v+C|0]=H[a+(i+32|0)>>2]}H[i+296>>2]=H[i+280>>2];a=H[i+276>>2];H[i+288>>2]=H[i+272>>2];H[i+292>>2]=a;L[i+268>>2]=D;L[i+256>>2]=m;L[i+260>>2]=o;L[i+264>>2]=n;FU(i+192|0,i+128|0,i- -64|0,i+256|0,i+304|0,i,x);H[j+60>>2]=0;L[j+56>>2]=ka;L[j+52>>2]=la;L[j+48>>2]=ga;H[j+44>>2]=0;p=n;n=O(O(1)/k);L[j+40>>2]=p*n;L[j+36>>2]=o*n;L[j+32>>2]=m*n;a=H[i+308>>2];H[j>>2]=H[i+304>>2];H[j+4>>2]=a;a=H[i+316>>2];H[j+8>>2]=H[i+312>>2];H[j+12>>2]=a;a=H[i+4>>2];H[j+16>>2]=H[i>>2];H[j+20>>2]=a;a=H[i+12>>2];H[j+24>>2]=H[i+8>>2];H[j+28>>2]=a;L[j+64>>2]=k;a=H[i+276>>2];H[j+68>>2]=H[i+272>>2];H[j+72>>2]=a;H[j+76>>2]=H[i+280>>2];b=4;break q}if(t){break r}b=5;break q}x=H[i+28>>2]}F[z+66|0]=x;b=5;if(!x){break q}v=0;if((x|0)!=1){d=x&-2;J=0;while(1){a=v<<2;c=i+48|0;F[t+v|0]=H[a+c>>2];e=a;a=i+32|0;F[v+C|0]=H[e+a>>2];r=v|1;e=r<<2;F[t+r|0]=H[c+e>>2];F[r+C|0]=H[a+e>>2];v=v+2|0;J=J+2|0;if((d|0)!=(J|0)){continue}break}}if(!(x&1)){break q}a=v<<2;F[t+v|0]=H[a+(i+48|0)>>2];F[v+C|0]=H[a+(i+32|0)>>2]}Oa=i+320|0;a=H[h+828>>2];H[h+56>>2]=H[h+824>>2];H[h+60>>2]=a;a=H[h+820>>2];H[h+48>>2]=H[h+816>>2];H[h+52>>2]=a;a=H[h+836>>2];H[h+32>>2]=H[h+832>>2];H[h+36>>2]=a;a=H[h+844>>2];H[h+40>>2]=H[h+840>>2];H[h+44>>2]=a;a=t0(E,Q,h+736|0,h+704|0,h+608|0,b,j,z,g,f,h+48|0,h+32|0,1,0,ia);break b}b=H[h+596>>2];H[h+816>>2]=H[h+592>>2];H[h+820>>2]=b;b=H[h+604>>2];H[h+824>>2]=H[h+600>>2];H[h+828>>2]=b;b=H[h+780>>2];H[h+840>>2]=H[h+776>>2];H[h+844>>2]=b;b=H[h+772>>2];H[h+832>>2]=H[h+768>>2];H[h+836>>2]=b;b=H[h+628>>2];H[h+896>>2]=H[h+624>>2];H[h+900>>2]=b;b=H[h+620>>2];H[h+888>>2]=H[h+616>>2];H[h+892>>2]=b;b=H[h+636>>2];H[h+904>>2]=H[h+632>>2];H[h+908>>2]=b;b=H[h+644>>2];H[h+912>>2]=H[h+640>>2];H[h+916>>2]=b;b=H[h+652>>2];H[h+920>>2]=H[h+648>>2];H[h+924>>2]=b;b=H[h+660>>2];H[h+928>>2]=H[h+656>>2];H[h+932>>2]=b;b=H[h+668>>2];H[h+936>>2]=H[h+664>>2];H[h+940>>2]=b;b=H[h+612>>2];H[h+880>>2]=H[h+608>>2];H[h+884>>2]=b;o=L[h+884>>2];L[h+884>>2]=L[h+896>>2];H[h+864>>2]=126316;H[h+872>>2]=h+608;H[h+868>>2]=h+368;m=L[h+888>>2];k=L[h+904>>2];L[h+896>>2]=o;L[h+888>>2]=L[h+912>>2];L[h+904>>2]=L[h+916>>2];L[h+916>>2]=k;L[h+912>>2]=m;if(a){H[h+856>>2]=129228;H[h+860>>2]=h+208;C=z+67|0;E=z+71|0;t=h+128|0;j=Oa-320|0;Oa=j;Q=h+856|0;v=H[Q+4>>2];m=L[v+20>>2];$=h+864|0;G=H[$+4>>2];k=L[G+20>>2];ca=L[h+832>>2];r=I[G+32|0];X=L[G+16>>2];e=I[v+32|0];U=L[v+16>>2];H[j+44>>2]=0;ja=O((k>m?m:k)*O(.10000000149011612));C:{D:{E:{F:{G:{H:{d=I[z+66|0];if(d){K=H[$+8>>2];b=0;while(1){a=J<<2;c=I[C+J|0];H[a+(j- -64|0)>>2]=c;i=a+(j+48|0)|0;a=I[E+J|0];H[i>>2]=a;c=H[G+152>>2]+N(c,12)|0;da=L[c+8>>2];ea=L[c>>2];fa=L[c+4>>2];a=H[v+152>>2]+N(a,12)|0;ha=L[a>>2];aa=L[a+4>>2];ba=L[a+8>>2];Y=L[K+48>>2];Z=L[K+32>>2];V=L[K>>2];_=L[K+16>>2];S=L[K+52>>2];T=L[K+36>>2];P=L[K+4>>2];M=L[K+20>>2];B=L[K+56>>2];y=L[K+40>>2];A=L[G+88>>2];w=L[G+56>>2];D=L[G+72>>2];u=L[K+8>>2];q=L[G+80>>2];p=L[G+48>>2];l=L[G+64>>2];n=L[K+24>>2];o=L[G+84>>2];m=L[G+52>>2];k=L[G+68>>2];a=b;c=a<<4;x=c+(j+144|0)|0;H[x+12>>2]=0;s=c+(j+80|0)|0;H[s+12>>2]=0;L[s+8>>2]=ba;L[s+4>>2]=aa;L[s>>2]=ha;c=c+(j+208|0)|0;H[c+12>>2]=0;D=O(O(A*da)+O(O(w*ea)+O(fa*D)));l=O(O(q*da)+O(O(p*ea)+O(fa*l)));k=O(O(o*da)+O(O(m*ea)+O(fa*k)));o=O(B+O(O(y*D)+O(O(u*l)+O(n*k))));L[x+8>>2]=o;m=O(S+O(O(T*D)+O(O(P*l)+O(k*M))));L[x+4>>2]=m;k=O(Y+O(O(Z*D)+O(O(V*l)+O(k*_))));L[x>>2]=k;o=O(o-ba);L[c+8>>2]=o;m=O(m-aa);L[c+4>>2]=m;k=O(k-ha);L[c>>2]=k;b=a+1|0;J=J+1|0;if((d|0)!=(J|0)){continue}break}H[j+44>>2]=b;I:{J:{switch(a-1|0){case 0:n=L[j+216>>2];q=O(L[j+232>>2]-n);o=L[j+208>>2];p=O(L[j+224>>2]-o);m=L[j+212>>2];l=O(L[j+228>>2]-m);k=O(O(q*q)+O(O(p*p)+O(l*l)));if(!(k<=O(1.1920928955078125e-7))){break I}H[j+44>>2]=1;a=H[j+212>>2];H[j+16>>2]=H[j+208>>2];H[j+20>>2]=a;a=H[j+220>>2];H[j+24>>2]=H[j+216>>2];H[j+28>>2]=a;break G;case 1:_W(j+16|0,j+208|0,j+144|0,j+80|0,j- -64|0,j+48|0,j+44|0);break G;case 2:break J;default:break H}}DZ(j+16|0,j+208|0,j+144|0,j+80|0,j- -64|0,j+48|0,j+44|0);break G}H[j+28>>2]=0;k=O(R(O(O(O(O(O(-o)*p)-O(l*m))-O(n*q))/k),O(1)));k=k>O(0)?k:O(0);L[j+24>>2]=n+O(q*k);L[j+20>>2]=m+O(l*k);L[j+16>>2]=o+O(p*k);break G}o=L[K+8>>2];m=L[K>>2];k=L[K+4>>2];H[j+284>>2]=0;a=O(O(o*o)+O(O(m*m)+O(k*k)))>O(0);n=a?o:O(0);L[j+280>>2]=n;o=a?k:O(0);L[j+276>>2]=o;m=a?m:O(1);L[j+272>>2]=m;k=O(O(1)/O(W(O(O(n*n)+O(O(m*m)+O(o*o))))));Z=O(n*k);w=O(o*k);V=O(m*k);k=O(3.4028234663852886e38);D=O(0);break F}H[j+28>>2]=0;L[j+24>>2]=o;L[j+20>>2]=m;L[j+16>>2]=k}a=H[j+20>>2];H[j+272>>2]=H[j+16>>2];H[j+276>>2]=a;a=H[j+28>>2];H[j+280>>2]=H[j+24>>2];H[j+284>>2]=a;n=L[j+280>>2];m=L[j+272>>2];o=L[j+276>>2];k=O(W(O(O(n*n)+O(O(m*m)+O(o*o)))));if(!(ja>2]}y=O(ca+O((r?X:O(0))+(e?U:O(0))));while(1){H[j+296>>2]=H[j+312>>2];a=H[j+308>>2];H[j+288>>2]=H[j+304>>2];H[j+292>>2]=a;H[j+12>>2]=0;L[j+8>>2]=-n;L[j+4>>2]=-o;L[j>>2]=-m;SV(j+16|0,$,j,(j- -64|0)+(H[j+44>>2]<<2)|0);A=L[j+28>>2];_=L[j+24>>2];S=L[j+16>>2];T=L[j+20>>2];c=(j+48|0)+(H[j+44>>2]<<2)|0;b=H[Q+4>>2];a=EU(b,j+272|0);H[c>>2]=a;a=H[b+152>>2]+N(a,12)|0;u=L[a+8>>2];P=O(_-u);q=L[a>>2];M=O(S-q);p=L[a+4>>2];B=O(T-p);l=O(O(Z*P)+O(O(V*M)+O(w*B)));if(l>y){x=0;if(!C){break C}s=H[j+44>>2];F[z+66|0]=s;if(!s){break C}b=0;if((s|0)!=1){d=s&-2;J=0;while(1){a=b<<2;c=j- -64|0;F[b+C|0]=H[a+c>>2];e=a;a=j+48|0;F[b+E|0]=H[e+a>>2];r=b|1;e=r<<2;F[r+C|0]=H[c+e>>2];F[r+E|0]=H[a+e>>2];b=b+2|0;J=J+2|0;if((d|0)!=(J|0)){continue}break}}if(!(s&1)){break C}a=b<<2;F[b+C|0]=H[a+(j- -64|0)>>2];F[b+E|0]=H[a+(j+48|0)>>2];break C}r=H[j+44>>2];if(l>O(k*O(.9997749924659729))){K:{if(!C){break K}F[z+66|0]=r;if(!r){break K}v=0;if((r|0)!=1){c=r&-2;x=0;while(1){a=v<<2;b=j- -64|0;F[v+C|0]=H[a+b>>2];d=a;a=j+48|0;F[v+E|0]=H[d+a>>2];e=v|1;d=e<<2;F[e+C|0]=H[b+d>>2];F[e+E|0]=H[a+d>>2];v=v+2|0;x=x+2|0;if((c|0)!=(x|0)){continue}break}}if(!(r&1)){break K}a=v<<2;F[v+C|0]=H[a+(j- -64|0)>>2];F[v+E|0]=H[a+(j+48|0)>>2]}L[t+32>>2]=V;H[t+44>>2]=0;L[t+40>>2]=Z;L[t+36>>2]=w;FU(j+208|0,j+144|0,j+80|0,j+272|0,j+16|0,j,r);a=H[j+20>>2];H[t>>2]=H[j+16>>2];H[t+4>>2]=a;a=H[j+28>>2];H[t+8>>2]=H[j+24>>2];H[t+12>>2]=a;a=H[j+4>>2];H[t+16>>2]=H[j>>2];H[t+20>>2]=a;a=H[j+12>>2];H[t+24>>2]=H[j+8>>2];H[t+28>>2]=a;a=H[j+308>>2];H[t+68>>2]=H[j+304>>2];H[t+72>>2]=a;H[t+76>>2]=H[j+312>>2];L[t+64>>2]=k;x=2;break C}a=r<<4;b=a+(j+144|0)|0;L[b+12>>2]=A;L[b+8>>2]=_;L[b+4>>2]=T;L[b>>2]=S;b=a+(j+80|0)|0;H[b+12>>2]=0;L[b+8>>2]=u;L[b+4>>2]=p;L[b>>2]=q;a=a+(j+208|0)|0;H[a+12>>2]=0;L[a+8>>2]=P;L[a+4>>2]=B;L[a>>2]=M;H[j+44>>2]=r+1;L:{M:{switch(r-1|0){case 0:u=L[j+216>>2];B=O(L[j+232>>2]-u);q=L[j+208>>2];A=O(L[j+224>>2]-q);p=L[j+212>>2];w=O(L[j+228>>2]-p);l=O(O(B*B)+O(O(A*A)+O(w*w)));if(l<=O(1.1920928955078125e-7)){H[j+44>>2]=1;a=H[j+212>>2];H[j+16>>2]=H[j+208>>2];H[j+20>>2]=a;a=H[j+220>>2];H[j+24>>2]=H[j+216>>2];H[j+28>>2]=a;break L}H[j+28>>2]=0;l=O(R(O(O(O(O(O(-q)*A)-O(w*p))-O(u*B))/l),O(1)));l=l>O(0)?l:O(0);L[j+24>>2]=u+O(B*l);L[j+20>>2]=p+O(w*l);L[j+16>>2]=q+O(A*l);break L;case 1:_W(j+16|0,j+208|0,j+144|0,j+80|0,j- -64|0,j+48|0,j+44|0);break L;case 2:DZ(j+16|0,j+208|0,j+144|0,j+80|0,j- -64|0,j+48|0,j+44|0);break L;default:break M}}H[j+28>>2]=0;L[j+24>>2]=P;L[j+20>>2]=B;L[j+16>>2]=M}a=H[j+20>>2];H[j+272>>2]=H[j+16>>2];H[j+276>>2]=a;a=H[j+28>>2];H[j+280>>2]=H[j+24>>2];H[j+284>>2]=a;q=L[j+280>>2];p=L[j+272>>2];l=L[j+276>>2];u=O(W(O(O(q*q)+O(O(p*p)+O(l*l)))));A=O(O(1)/u);Z=O(q*A);w=O(l*A);V=O(p*A);if(!(!(u>ja)|!(k>u))){D=L[j+284>>2];n=q;o=l;m=p;k=u;continue}break}v=H[j+44>>2];if(!(k>u)){N:{if(!C){break N}s=v-1|0;F[z+66|0]=s;if(!s){break N}b=0;if((v|0)!=2){d=s&-2;x=0;while(1){a=b<<2;c=j- -64|0;F[b+C|0]=H[a+c>>2];e=a;a=j+48|0;F[b+E|0]=H[e+a>>2];r=b|1;e=r<<2;F[r+C|0]=H[c+e>>2];F[r+E|0]=H[a+e>>2];b=b+2|0;x=x+2|0;if((d|0)!=(x|0)){continue}break}}if(!(s&1)){break N}a=b<<2;F[b+C|0]=H[a+(j- -64|0)>>2];F[b+E|0]=H[a+(j+48|0)>>2]}H[j+312>>2]=H[j+296>>2];a=H[j+292>>2];H[j+304>>2]=H[j+288>>2];H[j+308>>2]=a;L[j+284>>2]=D;L[j+272>>2]=m;L[j+276>>2]=o;L[j+280>>2]=n;FU(j+208|0,j+144|0,j+80|0,j+272|0,j+16|0,j,v);H[t+60>>2]=0;L[t+56>>2]=Z;L[t+52>>2]=w;L[t+48>>2]=V;H[t+44>>2]=0;p=n;n=O(O(1)/k);L[t+40>>2]=p*n;L[t+36>>2]=o*n;L[t+32>>2]=m*n;a=H[j+20>>2];H[t>>2]=H[j+16>>2];H[t+4>>2]=a;a=H[j+28>>2];H[t+8>>2]=H[j+24>>2];H[t+12>>2]=a;a=H[j+4>>2];H[t+16>>2]=H[j>>2];H[t+20>>2]=a;a=H[j+12>>2];H[t+24>>2]=H[j+8>>2];H[t+28>>2]=a;L[t+64>>2]=k;a=H[j+292>>2];H[t+68>>2]=H[j+288>>2];H[t+72>>2]=a;H[t+76>>2]=H[j+296>>2];x=4;break C}if(C){break D}x=5;break C}v=H[j+44>>2]}F[z+66|0]=v;x=5;if(!v){break C}b=0;if((v|0)!=1){d=v&-2;J=0;while(1){a=b<<2;c=j- -64|0;F[b+C|0]=H[a+c>>2];e=a;a=j+48|0;F[b+E|0]=H[e+a>>2];r=b|1;e=r<<2;F[r+C|0]=H[c+e>>2];F[r+E|0]=H[a+e>>2];b=b+2|0;J=J+2|0;if((d|0)!=(J|0)){continue}break}}if(!(v&1)){break C}a=b<<2;F[b+C|0]=H[a+(j- -64|0)>>2];F[b+E|0]=H[a+(j+48|0)>>2]}Oa=j+320|0;a=H[h+828>>2];H[h+88>>2]=H[h+824>>2];H[h+92>>2]=a;a=H[h+820>>2];H[h+80>>2]=H[h+816>>2];H[h+84>>2]=a;a=H[h+836>>2];H[h+64>>2]=H[h+832>>2];H[h+68>>2]=a;a=H[h+844>>2];H[h+72>>2]=H[h+840>>2];H[h+76>>2]=a;a=t0($,Q,h+736|0,h+704|0,h+608|0,x,t,z,g,f,h+80|0,h- -64|0,0,1,ia);break b}H[h+856>>2]=126016;H[h+860>>2]=h+208;e=h+864|0;d=h+856|0;c=h+128|0;b=KW(e,d,K,h+832|0,1,z+67|0,z+71|0,z+66|0,c);a=H[h+828>>2];H[h+120>>2]=H[h+824>>2];H[h+124>>2]=a;a=H[h+820>>2];H[h+112>>2]=H[h+816>>2];H[h+116>>2]=a;a=H[h+836>>2];H[h+96>>2]=H[h+832>>2];H[h+100>>2]=a;a=H[h+844>>2];H[h+104>>2]=H[h+840>>2];H[h+108>>2]=a;a=t0(e,d,h+736|0,h+704|0,h+608|0,b,c,z,g,f,h+112|0,h+96|0,0,0,ia);break b}d=I[z+64|0];a=0;if(!d){break b}a=1;e=H[z+76>>2];l=L[e+32>>2];p=l;n=L[e+36>>2];m=n;o=L[e+40>>2];k=o;O:{if((d|0)==1){break O}b=d-1|0;c=b&1;k=o;m=n;p=l;if((d|0)!=2){b=b&-2;d=0;while(1){f=e+N(a,48)|0;p=O(O(p+L[f+32>>2])+L[f+80>>2]);k=O(O(k+L[f+40>>2])+L[f+88>>2]);m=O(O(m+L[f+36>>2])+L[f+84>>2]);a=a+2|0;d=d+2|0;if((b|0)!=(d|0)){continue}break}}if(!c){break O}a=e+N(a,48)|0;p=O(p+L[a+32>>2]);k=O(k+L[a+40>>2]);m=O(m+L[a+36>>2])}H[h+380>>2]=0;A=L[h+712>>2];a=O(O(k*k)+O(O(p*p)+O(m*m)))>O(1.1920928955078125e-7);w=a?k:o;D=L[h+704>>2];u=a?p:l;q=L[h+708>>2];p=a?m:n;l=O(O(A*w)+O(O(D*u)+O(q*p)));y=L[h+716>>2];n=O(O(y*y)+O(-.5));k=O(O(A*l)+O(O(y*O(O(D*p)-O(u*q)))+O(w*n)));o=O(k+k);k=O(O(D*l)+O(O(y*O(O(q*w)-O(p*A)))+O(u*n)));m=O(k+k);k=O(O(q*l)+O(O(y*O(O(A*u)-O(w*D)))+O(p*n)));k=O(k+k);n=O(O(1)/O(W(O(O(o*o)+O(O(m*m)+O(k*k))))));L[h+376>>2]=o*n;L[h+372>>2]=k*n;L[h+368>>2]=m*n;X0(z,g,h+368|0,h+704|0,h+768|0);a=1}Oa=h+944|0;return a|0}function rR(a,b,c,d,e,f,g,h){var i=0,j=0,k=O(0),l=0,m=O(0),n=O(0),o=O(0),p=0,q=0,r=O(0),s=O(0),t=O(0),u=0,v=O(0),w=0,x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=0,D=0,E=0,Q=O(0),R=0,S=O(0),T=O(0),U=O(0),V=0,X=O(0),Y=0,Z=O(0),_=0,$=0,aa=0,ba=O(0),ca=O(0),da=0,ea=0,fa=0,ga=O(0),ha=O(0),ia=O(0),ja=O(0),ka=0,la=0,ma=0,na=0,oa=0,pa=O(0),qa=0,ra=0,sa=O(0),ta=O(0),ua=O(0),va=O(0),wa=O(0),xa=O(0),ya=0,za=0,Aa=O(0),Ba=O(0),Ca=O(0),Da=O(0),Ea=O(0),Fa=O(0),Ga=O(0),Ha=O(0),Ia=O(0),Ja=O(0),Ka=O(0),La=0,Ma=0,Na=0,Pa=0,Qa=0;i=Oa-2960|0;Oa=i;w=H[a>>2];ma=M[b+32>>3];qa=M[b+24>>3];na=M[b>>3];ea=M[b+8>>3];da=M[b+16>>3];fa=M[b+40>>3];M[i+1736>>3]=(da+fa)*.5;M[i+1728>>3]=(ea+ma)*.5;M[i+1720>>3]=(na+qa)*.5;b=I[f+8|0];j=I[f+9|0]?b|2:b;q=H[f+4>>2];if(q){b=I[f+10|0]?j|4:j;j=I[f+11|0]?b|8:b}n=O(fa);L[i+1716>>2]=n;B=O(ma);L[i+1712>>2]=B;y=O(qa);L[i+1708>>2]=y;t=O(ea);L[i+1700>>2]=t;r=O(na);L[i+1696>>2]=r;s=O(O(B-t)*O(.5));m=O(da);L[i+1704>>2]=m;k=O(n-m);z=O(O(r+y)*O(.5));o=O(O(m+n)*O(.5));l=i+1696|0;b=i+96|0;while(1){H[b+64>>2]=0;H[b+68>>2]=0;H[b+48>>2]=0;H[b+52>>2]=0;H[b+32>>2]=0;H[b+36>>2]=0;H[b+16>>2]=0;H[b+20>>2]=0;H[b+8>>2]=-1;H[b>>2]=0;H[b+4>>2]=0;H[b+72>>2]=-1;H[b+56>>2]=-1;H[b+40>>2]=-1;H[b+24>>2]=-1;b=b+80|0;if((l|0)!=(b|0)){continue}break}n=O(k*O(.5));m=O(O(y-r)*O(.5));k=O(O(t+B)*O(.5));b=H[f>>2];a:{if(b){H[i+72>>2]=H[b>>2];H[i+76>>2]=H[b+4>>2];H[i+80>>2]=H[b+8>>2];H[i+84>>2]=H[b+12>>2];break a}H[i+80>>2]=0;H[i+84>>2]=0;H[i+72>>2]=0;H[i+76>>2]=0}H[i+44>>2]=-1;H[i+60>>2]=100;H[i+64>>2]=0;f=0;F[i+52|0]=0;H[i+36>>2]=0;H[i+40>>2]=0;H[i+32>>2]=124172;G[i+88>>1]=j|32;H[i+56>>2]=i+96;L[i+2924>>2]=n;L[i+2920>>2]=s;L[i+2916>>2]=m;H[i+2912>>2]=3;L[i+1880>>2]=o;L[i+1876>>2]=k;L[i+1872>>2]=z;H[i+1864>>2]=0;H[i+1868>>2]=1065353216;H[i+1856>>2]=0;H[i+1860>>2]=0;Ra[H[H[w>>2]+356>>2]](w,i+2912|0,i+1856|0,i+32|0,i+72|0,q)|0;La=H[i+64>>2]+I[i+52|0]|0;if(La){ya=i+1840|0;za=i+1828|0;Ma=i+1768|0;Na=i+1756|0;Pa=i+40|0;Qa=i+32|4;_=i+1728|0;$=i+1736|0;while(1){j=H[i+56>>2]+(f<<4)|0;b=K[i+64>>2]>f>>>0;E=H[(b?j+4|0:Pa)>>2];b:{if(!E){break b}q=H[(b?j:Qa)>>2];if(!q){break b}l=H[a+8>>2];c:{if(!H[l+36>>2]){break c}b=(E<<15^-1)+E|0;b=N(b>>>10^b,9);b=b>>>6^b;b=(b<<11^-1)+b|0;j=H[H[l+12>>2]+((H[l+20>>2]-1&(b>>>16^b))<<2)>>2];if((j|0)==-1){break c}w=H[l+8>>2];l=H[l+4>>2];while(1){b=j<<2;if(H[b+l>>2]==(E|0)){break b}j=H[b+w>>2];if((j|0)!=-1){continue}break}}Ra[H[H[E>>2]+156>>2]](i+1856|0,E);if(I[i+1856|0]&4){break b}Ra[H[H[q>>2]+76>>2]](i+1856|0,q);Ra[H[H[E>>2]+80>>2]](i+2912|0,E);y=L[i+1868>>2];o=L[i+2924>>2];n=L[i+2912>>2];t=L[i+1856>>2];r=L[i+1860>>2];m=L[i+2916>>2];s=L[i+1864>>2];k=L[i+2920>>2];L[i+12>>2]=O(O(O(y*o)-O(n*t))-O(r*m))-O(s*k);L[i+8>>2]=O(O(t*m)+O(O(y*k)+O(s*o)))-O(n*r);L[i+4>>2]=O(O(s*n)+O(O(y*m)+O(r*o)))-O(k*t);L[i>>2]=O(O(r*k)+O(O(y*n)+O(t*o)))-O(m*s);k=L[i+2936>>2];z=O(k+k);k=L[i+2928>>2];o=O(k+k);k=L[i+2932>>2];n=O(k+k);m=O(O(s*z)+O(O(t*o)+O(r*n)));k=O(O(y*y)+O(-.5));L[i+24>>2]=L[i+1880>>2]+O(O(s*m)+O(O(z*k)+O(y*O(O(t*n)-O(o*r)))));L[i+20>>2]=L[i+1876>>2]+O(O(r*m)+O(O(n*k)+O(y*O(O(s*o)-O(z*t)))));L[i+16>>2]=L[i+1872>>2]+O(O(t*m)+O(O(o*k)+O(y*O(O(r*z)-O(n*s)))));d:{e:{switch(Ra[H[H[E>>2]+32>>2]](E)|0){case 0:H[i+1856>>2]=0;H[i+1860>>2]=0;Ra[H[H[E>>2]+48>>2]](E,i+1856|0)|0;o=L[i+24>>2];n=L[i+20>>2];m=L[i+16>>2];k=L[i+1860>>2];j=H[e+4>>2];l=j+13|0;b=H[e+8>>2]&2147483647;f:{if(l>>>0<=b>>>0){break f}p=b;b=b?b<<1:2;b=b>>>0>l>>>0?b:l;if(p>>>0>=b>>>0){break f}Dv(e,b);j=H[e+4>>2]}H[e+4>>2]=l;j=H[e>>2]+(j<<2)|0;H[j+8>>2]=q;H[j+4>>2]=E;H[j>>2]=4;b=H[i+1724>>2];H[j+12>>2]=H[i+1720>>2];H[j+16>>2]=b;b=H[_+4>>2];H[j+20>>2]=H[_>>2];H[j+24>>2]=b;b=H[$+4>>2];H[j+28>>2]=H[$>>2];H[j+32>>2]=b;L[j+48>>2]=k;L[j+36>>2]=+m-M[i+1720>>3];L[j+40>>2]=+n-M[_>>3];L[j+44>>2]=+o-M[$>>3];break b;case 2:H[i+1860>>2]=0;H[i+1864>>2]=0;H[i+1856>>2]=2;Ra[H[H[E>>2]+52>>2]](E,i+1856|0)|0;y=L[i+1864>>2];t=L[i>>2];z=O(t+t);m=L[i+8>>2];k=L[i+4>>2];o=L[i+12>>2];n=O(o+o);r=O(y*O(O(z*m)-O(k*n)));s=O(y*O(O(m*n)+O(z*k)));z=O(y*O(O(t*z)+O(O(o*n)+O(-1))));k=L[i+1860>>2];o=L[i+24>>2];n=L[i+20>>2];m=L[i+16>>2];j=H[e+4>>2];l=j+16|0;b=H[e+8>>2]&2147483647;g:{if(l>>>0<=b>>>0){break g}p=b;b=b?b<<1:2;b=b>>>0>l>>>0?b:l;if(p>>>0>=b>>>0){break g}Dv(e,b);j=H[e+4>>2]}H[e+4>>2]=l;j=H[e>>2]+(j<<2)|0;H[j+8>>2]=q;H[j+4>>2]=E;H[j>>2]=5;b=H[i+1724>>2];H[j+12>>2]=H[i+1720>>2];H[j+16>>2]=b;b=H[_+4>>2];H[j+20>>2]=H[_>>2];H[j+24>>2]=b;b=H[$+4>>2];H[j+28>>2]=H[$>>2];H[j+32>>2]=b;L[j+60>>2]=k;da=M[i+1720>>3];L[j+36>>2]=+O(m+z)-da;fa=M[_>>3];L[j+40>>2]=+O(n+s)-fa;ea=M[$>>3];L[j+52>>2]=+O(n-s)-fa;L[j+48>>2]=+O(m-z)-da;L[j+56>>2]=+O(o-r)-ea;L[j+44>>2]=+O(r+o)-ea;break b;case 3:j=0;H[i+1756>>2]=0;H[i+1748>>2]=0;H[i+1752>>2]=0;H[i+1744>>2]=3;Ra[H[H[E>>2]+44>>2]](E,i+1744|0)|0;o=L[i+1748>>2];m=L[i+1752>>2];k=L[i+1756>>2];L[i+1948>>2]=k;L[i+1944>>2]=m;B=O(-o);L[i+1940>>2]=B;L[i+1936>>2]=k;L[i+1932>>2]=m;L[i+1928>>2]=o;L[i+1924>>2]=k;n=O(-m);L[i+1920>>2]=n;L[i+1916>>2]=o;L[i+1912>>2]=k;L[i+1908>>2]=n;L[i+1904>>2]=B;k=O(-k);L[i+1900>>2]=k;L[i+1896>>2]=m;L[i+1892>>2]=B;L[i+1888>>2]=k;L[i+1884>>2]=m;L[i+1880>>2]=o;L[i+1876>>2]=k;L[i+1872>>2]=n;L[i+1868>>2]=o;L[i+1864>>2]=k;L[i+1860>>2]=n;L[i+1856>>2]=B;Q=L[i+12>>2];U=O(O(Q*Q)+O(-.5));S=L[i+4>>2];t=O(-S);T=L[i>>2];r=O(-T);X=L[i+8>>2];s=O(-X);y=O(M[i+1736>>3]);x=O(M[i+1728>>3]);A=O(M[i+1720>>3]);z=L[i+24>>2];o=L[i+20>>2];m=L[i+16>>2];while(1){b=(i+1856|0)+N(j,12)|0;v=O(k+k);B=O(B+B);n=O(n+n);k=O(O(X*v)+O(O(T*B)+O(S*n)));L[b+8>>2]=O(z+O(O(X*k)+O(O(v*U)+O(Q*O(O(T*n)+O(B*t))))))-y;L[b+4>>2]=O(o+O(O(S*k)+O(O(n*U)+O(Q*O(O(X*B)+O(v*r))))))-x;L[b>>2]=O(m+O(O(T*k)+O(O(B*U)+O(Q*O(O(S*v)+O(n*s))))))-A;j=j+1|0;if((j|0)==8){break d}b=(i+1856|0)+N(j,12)|0;k=L[b+8>>2];n=L[b+4>>2];B=L[b>>2];continue};case 5:H[i+1848>>2]=0;H[i+1852>>2]=0;H[i+1844>>2]=1065353216;H[i+1836>>2]=0;H[i+1840>>2]=0;H[i+1828>>2]=1065353216;H[i+1832>>2]=0;H[i+1820>>2]=1065353216;H[i+1824>>2]=1065353216;H[i+1816>>2]=5;V=i+1816|0;Ra[H[H[E>>2]+64>>2]](E,V)|0;H[i+2896>>2]=3;s=L[i+1716>>2];z=L[i+1704>>2];L[i+2908>>2]=O(s-z)*O(.5);o=L[i+1712>>2];n=L[i+1700>>2];L[i+2904>>2]=O(o-n)*O(.5);m=L[i+1708>>2];k=L[i+1696>>2];L[i+2900>>2]=O(m-k)*O(.5);L[i+1808>>2]=O(s+z)*O(.5);L[i+1804>>2]=O(o+n)*O(.5);L[i+1800>>2]=O(m+k)*O(.5);H[i+1792>>2]=0;H[i+1796>>2]=1065353216;H[i+1784>>2]=0;H[i+1788>>2]=0;C=i+1856|0;b=C;H[b+1028>>2]=0;H[b+1032>>2]=256;H[b>>2]=b+4;D=Oa-16|0;Oa=D;p=i+2896|0;w=i+1784|0;l=k_(p,w,V,i,H[b>>2],H[b+1032>>2],D+15|0);h:{if(!I[D+15|0]){break h}l=0;b=H[V+36>>2];j=Ra[H[H[b>>2]+40>>2]](b)|0;if(!j){break h}l=H[C>>2];b=H[C+1032>>2];i:{if(b>>>0>=j>>>0){j=b;break i}if(!(!l|(C+4|0)==(l|0))){b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,l)}l=j<<2;if(l){b=H[33808]+12|0;l=Ra[H[H[b>>2]+8>>2]](b,l,20591,5276,72)|0}else{l=0}H[C+1032>>2]=j;H[C>>2]=l}l=k_(p,w,V,i,l,j,D+15|0)}H[C+1028>>2]=l;Oa=D+16|0;w=l;ea=M[i+1736>>3];da=M[i+1728>>3];fa=M[i+1720>>3];j=H[e+4>>2];l=j+11|0;b=H[e+8>>2]&2147483647;j:{if(l>>>0<=b>>>0){break j}p=b;b=b?b<<1:2;b=b>>>0>l>>>0?b:l;if(p>>>0>=b>>>0){break j}Dv(e,b);j=H[e+4>>2]}v=O(ea);x=O(da);A=O(fa);H[e+4>>2]=l;R=H[e>>2]+(j<<2)|0;H[R+8>>2]=q;H[R+4>>2]=E;H[R>>2]=2;b=H[i+1724>>2];H[R+12>>2]=H[i+1720>>2];H[R+16>>2]=b;b=H[_+4>>2];H[R+20>>2]=H[_>>2];H[R+24>>2]=b;b=H[$+4>>2];H[R+28>>2]=H[$>>2];H[R+32>>2]=b;H[R+36>>2]=w;j=H[c+4>>2];H[R+40>>2]=j;b=I[g+56|0];D=H[i+1856>>2];k:{l:{if(L[g+32>>2]!=O(0)){if(!b){b=0;l=0;if(!w){break l}while(1){j=H[D+(l<<2)>>2];H[i+1744>>2]=j;q=j;j=i+2912|0;i_(i+1816|0,i,q,j);L[i+2912>>2]=L[i+2912>>2]-A;L[i+2916>>2]=L[i+2916>>2]-x;L[i+2920>>2]=L[i+2920>>2]-v;L[i+2924>>2]=L[i+2924>>2]-A;L[i+2928>>2]=L[i+2928>>2]-x;L[i+2932>>2]=L[i+2932>>2]-v;L[i+2936>>2]=L[i+2936>>2]-A;L[i+2940>>2]=L[i+2940>>2]-x;L[i+2944>>2]=L[i+2944>>2]-v;j=sR(g,j,c,d);b=j+b|0;if(!j){q=H[c+4>>2];j=q;V=j+2|0;p=H[c+8>>2]&2147483647;m:{if(V>>>0<=p>>>0){break m}j=q;u=p;p=p?p<<1:2;p=p>>>0>V>>>0?p:V;if(u>>>0>=p>>>0){break m}tR(c,p);j=H[c+4>>2]}H[c+4>>2]=q+1;j=H[c>>2]+N(j,36)|0;L[j>>2]=L[i+2912>>2];L[j+4>>2]=L[i+2916>>2];L[j+8>>2]=L[i+2920>>2];L[j+12>>2]=L[i+2924>>2];L[j+16>>2]=L[i+2928>>2];L[j+20>>2]=L[i+2932>>2];L[j+24>>2]=L[i+2936>>2];L[j+28>>2]=L[i+2940>>2];L[j+32>>2]=L[i+2944>>2];j=H[d+4>>2];n:{if(j>>>0>=(H[d+8>>2]&2147483647)>>>0){qm(d,i+1744|0);break n}H[H[d>>2]+(j<<2)>>2]=H[i+1744>>2];H[d+4>>2]=H[d+4>>2]+1}b=b+1|0}l=l+1|0;if((w|0)!=(l|0)){continue}break}break l}b=0;if(!w){break l}m=O(L[i+1808>>2]-v);k=L[i+2908>>2];B=O(m+k);o=O(m-k);y=O(O(B-o)*O(.5));m=O(L[i+1804>>2]-x);k=L[i+2904>>2];t=O(m+k);r=O(m-k);s=O(O(t-r)*O(.5));n=O(L[i+1800>>2]-A);k=L[i+2900>>2];m=O(n+k);k=O(n-k);z=O(O(m-k)*O(.5));o=O(O(o+B)*O(.5));n=O(O(r+t)*O(.5));m=O(O(k+m)*O(.5));j=0;while(1){q=H[D+(j<<2)>>2];l=i+1744|0;i_(i+1816|0,i,q,l);L[i+1744>>2]=L[i+1744>>2]-A;L[i+1748>>2]=L[i+1748>>2]-x;L[i+1752>>2]=L[i+1752>>2]-v;L[i+1756>>2]=L[i+1756>>2]-A;L[i+1760>>2]=L[i+1760>>2]-x;L[i+1764>>2]=L[i+1764>>2]-v;L[i+1768>>2]=L[i+1768>>2]-A;L[i+1772>>2]=L[i+1772>>2]-x;L[i+1776>>2]=L[i+1776>>2]-v;l=sR(g,l,c,d);b=l+b|0;if(!l){k=L[g+52>>2];G[i+2956>>1]=0;L[i+2952>>2]=k;L[i+2948>>2]=y;L[i+2944>>2]=s;L[i+2940>>2]=z;L[i+2936>>2]=o;L[i+2932>>2]=n;L[i+2928>>2]=m;H[i+2924>>2]=d;H[i+2920>>2]=c;H[i+2916>>2]=q;H[i+2912>>2]=0;uR(i+2912|0,i+1744|0,Na,Ma);l=H[i+2912>>2];G[h>>1]=J[h>>1]+J[i+2956>>1];b=b+l|0}j=j+1|0;if((w|0)!=(j|0)){continue}break}break l}if(!b){l=j+w|0;q=l+1|0;b=H[c+8>>2]&2147483647;o:{if(q>>>0<=b>>>0){break o}p=b;b=b?b<<1:2;b=b>>>0>q>>>0?b:q;if(p>>>0>=b>>>0){break o}tR(c,b);j=H[c+4>>2]}H[c+4>>2]=l;if(!w){break k}b=H[c>>2]+N(j,36)|0;j=0;while(1){l=H[D+(j<<2)>>2];H[i+2912>>2]=l;i_(i+1816|0,i,l,b);L[b>>2]=L[b>>2]-A;L[b+4>>2]=L[b+4>>2]-x;L[b+8>>2]=L[b+8>>2]-v;L[b+12>>2]=L[b+12>>2]-A;L[b+16>>2]=L[b+16>>2]-x;L[b+20>>2]=L[b+20>>2]-v;L[b+24>>2]=L[b+24>>2]-A;L[b+28>>2]=L[b+28>>2]-x;L[b+32>>2]=L[b+32>>2]-v;l=H[d+4>>2];p:{if(l>>>0>=(H[d+8>>2]&2147483647)>>>0){qm(d,i+2912|0);break p}H[H[d>>2]+(l<<2)>>2]=H[i+2912>>2];H[d+4>>2]=H[d+4>>2]+1}b=b+36|0;j=j+1|0;if((w|0)!=(j|0)){continue}break}break k}j=0;if(!w){b=0;break l}m=O(L[i+1808>>2]-v);k=L[i+2908>>2];B=O(m+k);o=O(m-k);y=O(O(B-o)*O(.5));m=O(L[i+1804>>2]-x);k=L[i+2904>>2];t=O(m+k);r=O(m-k);s=O(O(t-r)*O(.5));n=O(L[i+1800>>2]-A);k=L[i+2900>>2];m=O(n+k);k=O(n-k);z=O(O(m-k)*O(.5));o=O(O(o+B)*O(.5));n=O(O(r+t)*O(.5));m=O(O(k+m)*O(.5));b=0;while(1){q=H[D+(j<<2)>>2];l=i+1744|0;i_(i+1816|0,i,q,l);L[i+1744>>2]=L[i+1744>>2]-A;L[i+1748>>2]=L[i+1748>>2]-x;L[i+1752>>2]=L[i+1752>>2]-v;L[i+1756>>2]=L[i+1756>>2]-A;L[i+1760>>2]=L[i+1760>>2]-x;L[i+1764>>2]=L[i+1764>>2]-v;L[i+1768>>2]=L[i+1768>>2]-A;L[i+1772>>2]=L[i+1772>>2]-x;L[i+1776>>2]=L[i+1776>>2]-v;k=L[g+52>>2];G[i+2956>>1]=0;L[i+2952>>2]=k;L[i+2948>>2]=y;L[i+2944>>2]=s;L[i+2940>>2]=z;L[i+2936>>2]=o;L[i+2932>>2]=n;L[i+2928>>2]=m;H[i+2924>>2]=d;H[i+2920>>2]=c;H[i+2916>>2]=q;H[i+2912>>2]=0;uR(i+2912|0,l,Na,Ma);l=H[i+2912>>2];G[h>>1]=J[h>>1]+J[i+2956>>1];b=b+l|0;j=j+1|0;if((w|0)!=(j|0)){continue}break}}H[R+36>>2]=b}h5(C);break b;case 6:H[i+1800>>2]=1065353216;H[i+1804>>2]=0;H[i+1792>>2]=1065353216;H[i+1796>>2]=1065353216;H[i+1784>>2]=6;H[i+1788>>2]=0;D=i+1784|0;Ra[H[H[E>>2]+68>>2]](E,D)|0;H[i+2896>>2]=3;s=L[i+1716>>2];z=L[i+1704>>2];L[i+2908>>2]=O(s-z)*O(.5);o=L[i+1712>>2];n=L[i+1700>>2];L[i+2904>>2]=O(o-n)*O(.5);m=L[i+1708>>2];k=L[i+1696>>2];L[i+2900>>2]=O(m-k)*O(.5);L[i+1768>>2]=O(s+z)*O(.5);L[i+1764>>2]=O(o+n)*O(.5);L[i+1760>>2]=O(m+k)*O(.5);H[i+1752>>2]=0;H[i+1756>>2]=1065353216;H[i+1744>>2]=0;H[i+1748>>2]=0;R=i+1856|0;b=R;H[b+1028>>2]=0;H[b+1032>>2]=256;H[b>>2]=b+4;C=Oa-16|0;Oa=C;F[C+15|0]=1;V=i+2896|0;p=i+1744|0;l=l_(V,p,D,i,H[b>>2],H[b+1032>>2],C+15|0);q:{if(!I[C+15|0]){break q}l=0;b=H[D+4>>2];j=Ra[H[H[b>>2]+32>>2]](b)|0;b=H[D+4>>2];w=N(j,Ra[H[H[b>>2]+36>>2]](b)|0);j=w<<1;if(!j){break q}l=H[R>>2];b=H[R+1032>>2];r:{if(b>>>0>=j>>>0){j=b;break r}if(!(!l|(R+4|0)==(l|0))){b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,l)}l=w<<3;if(l){b=H[33808]+12|0;l=Ra[H[H[b>>2]+8>>2]](b,l,20591,5276,102)|0}else{l=0}H[R+1032>>2]=j;H[R>>2]=l}l=l_(V,p,D,i,l,j,C+15|0)}H[R+1028>>2]=l;Oa=C+16|0;w=l;ea=M[i+1736>>3];da=M[i+1728>>3];fa=M[i+1720>>3];j=H[e+4>>2];l=j+11|0;b=H[e+8>>2]&2147483647;s:{if(l>>>0<=b>>>0){break s}p=b;b=b?b<<1:2;b=b>>>0>l>>>0?b:l;if(p>>>0>=b>>>0){break s}Dv(e,b);j=H[e+4>>2]}v=O(ea);x=O(da);A=O(fa);H[e+4>>2]=l;C=H[e>>2]+(j<<2)|0;H[C+8>>2]=q;H[C+4>>2]=E;H[C>>2]=2;b=H[i+1724>>2];H[C+12>>2]=H[i+1720>>2];H[C+16>>2]=b;b=H[_+4>>2];H[C+20>>2]=H[_>>2];H[C+24>>2]=b;b=H[$+4>>2];H[C+28>>2]=H[$>>2];H[C+32>>2]=b;H[C+36>>2]=w;j=H[c+4>>2];H[C+40>>2]=j;b=I[g+56|0];D=H[i+1856>>2];t:{u:{if(L[g+32>>2]!=O(0)){if(!b){b=0;l=0;if(!w){break u}while(1){j=H[D+(l<<2)>>2];H[i+1816>>2]=j;q=j;j=i+2912|0;j_(i+1784|0,i,q,j);L[i+2912>>2]=L[i+2912>>2]-A;L[i+2916>>2]=L[i+2916>>2]-x;L[i+2920>>2]=L[i+2920>>2]-v;L[i+2924>>2]=L[i+2924>>2]-A;L[i+2928>>2]=L[i+2928>>2]-x;L[i+2932>>2]=L[i+2932>>2]-v;L[i+2936>>2]=L[i+2936>>2]-A;L[i+2940>>2]=L[i+2940>>2]-x;L[i+2944>>2]=L[i+2944>>2]-v;j=sR(g,j,c,d);b=j+b|0;if(!j){q=H[c+4>>2];j=q;V=j+2|0;p=H[c+8>>2]&2147483647;v:{if(V>>>0<=p>>>0){break v}j=q;u=p;p=p?p<<1:2;p=p>>>0>V>>>0?p:V;if(u>>>0>=p>>>0){break v}tR(c,p);j=H[c+4>>2]}H[c+4>>2]=q+1;j=H[c>>2]+N(j,36)|0;L[j>>2]=L[i+2912>>2];L[j+4>>2]=L[i+2916>>2];L[j+8>>2]=L[i+2920>>2];L[j+12>>2]=L[i+2924>>2];L[j+16>>2]=L[i+2928>>2];L[j+20>>2]=L[i+2932>>2];L[j+24>>2]=L[i+2936>>2];L[j+28>>2]=L[i+2940>>2];L[j+32>>2]=L[i+2944>>2];j=H[d+4>>2];w:{if(j>>>0>=(H[d+8>>2]&2147483647)>>>0){qm(d,i+1816|0);break w}H[H[d>>2]+(j<<2)>>2]=H[i+1816>>2];H[d+4>>2]=H[d+4>>2]+1}b=b+1|0}l=l+1|0;if((w|0)!=(l|0)){continue}break}break u}b=0;if(!w){break u}m=O(L[i+1768>>2]-v);k=L[i+2908>>2];B=O(m+k);o=O(m-k);y=O(O(B-o)*O(.5));m=O(L[i+1764>>2]-x);k=L[i+2904>>2];t=O(m+k);r=O(m-k);s=O(O(t-r)*O(.5));n=O(L[i+1760>>2]-A);k=L[i+2900>>2];m=O(n+k);k=O(n-k);z=O(O(m-k)*O(.5));o=O(O(o+B)*O(.5));n=O(O(r+t)*O(.5));m=O(O(k+m)*O(.5));j=0;while(1){q=H[D+(j<<2)>>2];l=i+1816|0;j_(i+1784|0,i,q,l);L[i+1816>>2]=L[i+1816>>2]-A;L[i+1820>>2]=L[i+1820>>2]-x;L[i+1824>>2]=L[i+1824>>2]-v;L[i+1828>>2]=L[i+1828>>2]-A;L[i+1832>>2]=L[i+1832>>2]-x;L[i+1836>>2]=L[i+1836>>2]-v;L[i+1840>>2]=L[i+1840>>2]-A;L[i+1844>>2]=L[i+1844>>2]-x;L[i+1848>>2]=L[i+1848>>2]-v;l=sR(g,l,c,d);b=l+b|0;if(!l){k=L[g+52>>2];G[i+2956>>1]=0;L[i+2952>>2]=k;L[i+2948>>2]=y;L[i+2944>>2]=s;L[i+2940>>2]=z;L[i+2936>>2]=o;L[i+2932>>2]=n;L[i+2928>>2]=m;H[i+2924>>2]=d;H[i+2920>>2]=c;H[i+2916>>2]=q;H[i+2912>>2]=0;uR(i+2912|0,i+1816|0,za,ya);l=H[i+2912>>2];G[h>>1]=J[h>>1]+J[i+2956>>1];b=b+l|0}j=j+1|0;if((w|0)!=(j|0)){continue}break}break u}if(!b){l=j+w|0;q=l+1|0;b=H[c+8>>2]&2147483647;x:{if(q>>>0<=b>>>0){break x}p=b;b=b?b<<1:2;b=b>>>0>q>>>0?b:q;if(p>>>0>=b>>>0){break x}tR(c,b);j=H[c+4>>2]}H[c+4>>2]=l;if(!w){break t}b=H[c>>2]+N(j,36)|0;j=0;while(1){l=H[D+(j<<2)>>2];H[i+2912>>2]=l;j_(i+1784|0,i,l,b);L[b>>2]=L[b>>2]-A;L[b+4>>2]=L[b+4>>2]-x;L[b+8>>2]=L[b+8>>2]-v;L[b+12>>2]=L[b+12>>2]-A;L[b+16>>2]=L[b+16>>2]-x;L[b+20>>2]=L[b+20>>2]-v;L[b+24>>2]=L[b+24>>2]-A;L[b+28>>2]=L[b+28>>2]-x;L[b+32>>2]=L[b+32>>2]-v;l=H[d+4>>2];y:{if(l>>>0>=(H[d+8>>2]&2147483647)>>>0){qm(d,i+2912|0);break y}H[H[d>>2]+(l<<2)>>2]=H[i+2912>>2];H[d+4>>2]=H[d+4>>2]+1}b=b+36|0;j=j+1|0;if((w|0)!=(j|0)){continue}break}break t}j=0;if(!w){b=0;break u}m=O(L[i+1768>>2]-v);k=L[i+2908>>2];B=O(m+k);o=O(m-k);y=O(O(B-o)*O(.5));m=O(L[i+1764>>2]-x);k=L[i+2904>>2];t=O(m+k);r=O(m-k);s=O(O(t-r)*O(.5));n=O(L[i+1760>>2]-A);k=L[i+2900>>2];m=O(n+k);k=O(n-k);z=O(O(m-k)*O(.5));o=O(O(o+B)*O(.5));n=O(O(r+t)*O(.5));m=O(O(k+m)*O(.5));b=0;while(1){q=H[D+(j<<2)>>2];l=i+1816|0;j_(i+1784|0,i,q,l);L[i+1816>>2]=L[i+1816>>2]-A;L[i+1820>>2]=L[i+1820>>2]-x;L[i+1824>>2]=L[i+1824>>2]-v;L[i+1828>>2]=L[i+1828>>2]-A;L[i+1832>>2]=L[i+1832>>2]-x;L[i+1836>>2]=L[i+1836>>2]-v;L[i+1840>>2]=L[i+1840>>2]-A;L[i+1844>>2]=L[i+1844>>2]-x;L[i+1848>>2]=L[i+1848>>2]-v;k=L[g+52>>2];G[i+2956>>1]=0;L[i+2952>>2]=k;L[i+2948>>2]=y;L[i+2944>>2]=s;L[i+2940>>2]=z;L[i+2936>>2]=o;L[i+2932>>2]=n;L[i+2928>>2]=m;H[i+2924>>2]=d;H[i+2920>>2]=c;H[i+2916>>2]=q;H[i+2912>>2]=0;uR(i+2912|0,l,za,ya);l=H[i+2912>>2];G[h>>1]=J[h>>1]+J[i+2956>>1];b=b+l|0;j=j+1|0;if((w|0)!=(j|0)){continue}break}}H[C+36>>2]=b}h5(R);break b;case 4:w=i+1720|0;ka=i+1696|0;b=0;Y=0;p=0;u=Oa-144|0;Oa=u;j=u- -64|0;H[j>>2]=0;H[j+4>>2]=1065353216;H[u+56>>2]=0;H[u+60>>2]=0;H[u+48>>2]=1065353216;H[u+52>>2]=1065353216;F[u+79|0]=0;F[u+77|0]=0;F[u+78|0]=0;F[u+76|0]=1;H[u+72>>2]=0;H[u+40>>2]=4;H[u+44>>2]=1065353216;Ra[H[H[E>>2]+60>>2]](E,u+40|0)|0;aa=H[u+72>>2];la=Ra[H[H[aa>>2]+36>>2]](aa)|0;oa=Ra[H[H[aa>>2]+32>>2]](aa)|0;z:{A:{B:{if(la){D=la&1;j=-2;if((la|0)==1){break A}V=la&-2;while(1){l=u+80|0;Ra[H[H[aa>>2]+40>>2]](aa,b,l)|0;j=J[u+96>>1];Ra[H[H[aa>>2]+40>>2]](aa,b|1,l)|0;b=b+2|0;Y=(J[u+96>>1]+(j+Y|0)|0)-4|0;p=p+2|0;if((V|0)!=(p|0)){continue}break}break B}j=u+128|0;break z}j=Y-2|0}if(D){Ra[H[H[aa>>2]+40>>2]](aa,b,u+80|0)|0;Y=j+J[u+96>>1]|0}j=u-(N(Y,12)+15&-16)|0;Oa=j;if(!la){break z}ra=0;b=j;while(1){Ra[H[H[aa>>2]+40>>2]](aa,ra,u+80|0)|0;R=J[u+96>>1];C=R-2|0;if(C){D=I[oa|0];p=0;while(1){l=p+1|0;V=I[((l>>>0)%(R>>>0)|0)+oa|0];H[b+8>>2]=I[((p+2>>>0)%(R>>>0)|0)+oa|0];H[b+4>>2]=V;H[b>>2]=D;b=b+12|0;p=l;if((l|0)!=(C|0)){continue}break}}oa=R+oa|0;ra=ra+1|0;if((la|0)!=(ra|0)){continue}break}}ba=L[i>>2];ga=O(ba+ba);pa=L[i+8>>2];A=O(ga*pa);ha=L[i+4>>2];U=O(ha+ha);S=L[i+12>>2];B=O(U*S);Aa=O(A-B);x=L[u+56>>2];Q=O(x+x);o=L[u+64>>2];y=O(Q*o);v=L[u+60>>2];n=O(v+v);m=L[u+68>>2];r=O(n*m);ia=O(y+r);T=L[u+44>>2];s=O(v*n);k=O(o+o);t=O(o*k);sa=O(O(O(1)-s)-t);Ba=O(T*sa);z=O(n*o);o=O(Q*m);ja=O(z-o);n=O(Q*v);m=O(k*m);ta=O(n+m);X=L[u+48>>2];Ca=O(ta*X);k=O(O(1)-O(x*Q));Z=O(k-s);ua=O(y-r);v=L[u+52>>2];ca=O(ua*v);x=O(O(O(ia*Ba)+O(ja*Ca))+O(Z*ca));r=O(U*pa);s=O(ga*S);Da=O(r+s);va=O(n-m);Ea=O(T*va);wa=O(k-t);Fa=O(wa*X);xa=O(z+o);Ga=O(xa*v);y=O(O(O(ia*Ea)+O(ja*Fa))+O(Z*Ga));Q=O(O(Aa*x)+O(Da*y));z=O(O(1)-O(ba*ga));o=O(ha*U);Ha=O(z-o);Ia=O(T*ia);Ja=O(ja*X);Ka=O(Z*v);t=O(O(O(ia*Ia)+O(ja*Ja))+O(Z*Ka));U=O(Ha*t);n=O(ga*ha);k=O(pa+pa);m=O(k*S);ga=O(n+m);k=O(pa*k);ha=O(z-k);S=O(O(ga*x)+O(ha*y));ia=O(r-s);T=O(ia*t);ja=O(O(O(1)-o)-k);Z=O(n-m);X=O(O(ja*x)+O(Z*y));ba=O(A+B);v=O(ba*t);n=O(O(O(va*Ba)+O(wa*Ca))+O(xa*ca));m=O(O(O(va*Ea)+O(wa*Fa))+O(xa*Ga));x=O(O(Aa*n)+O(Da*m));k=O(O(O(va*Ia)+O(wa*Ja))+O(xa*Ka));A=O(Ha*k);B=O(O(ga*n)+O(ha*m));y=O(ia*k);t=O(O(ja*n)+O(Z*m));r=O(ba*k);ca=O(O(O(sa*Ba)+O(ta*Ca))+O(ua*ca));m=O(O(O(sa*Ea)+O(ta*Fa))+O(ua*Ga));s=O(O(Aa*ca)+O(Da*m));k=O(O(O(sa*Ia)+O(ta*Ja))+O(ua*Ka));z=O(Ha*k);o=O(O(ga*ca)+O(ha*m));n=O(ia*k);m=O(O(ja*ca)+O(Z*m));k=O(ba*k);ma=M[w>>3];qa=+L[i+16>>2]-ma;na=M[w+16>>3];ea=+L[i+24>>2]-na;da=M[w+8>>3];fa=+L[i+20>>2]-da;b=H[e+4>>2];p=b+11|0;l=H[e+8>>2]&2147483647;C:{if(p>>>0<=l>>>0){break C}C=l;l=l?l<<1:2;l=l>>>0>p>>>0?l:p;if(C>>>0>=l>>>0){break C}Dv(e,l);b=H[e+4>>2]}Z=O(U+Q);ba=O(T+S);ca=O(v+X);Q=O(A+x);U=O(y+B);S=O(r+t);T=O(z+s);X=O(n+o);v=O(k+m);x=O(qa);A=O(ea);B=O(fa);H[e+4>>2]=p;C=H[e>>2]+(b<<2)|0;H[C+8>>2]=q;H[C+4>>2]=E;H[C>>2]=2;b=H[w+4>>2];H[C+12>>2]=H[w>>2];H[C+16>>2]=b;b=H[w+12>>2];H[C+20>>2]=H[w+8>>2];H[C+24>>2]=b;b=H[w+20>>2];H[C+28>>2]=H[w+16>>2];H[C+32>>2]=b;H[C+40>>2]=H[c+4>>2];D=Ra[H[H[aa>>2]+28>>2]](aa)|0;D:{if(I[g+56|0]){b=0;if(Y){m=L[ka+12>>2];k=L[ka>>2];n=O(O(m-k)*O(.5));k=O(O(O(m+k)*O(.5))-O(ma));m=O(n+k);k=O(k-n);y=O(O(m-k)*O(.5));t=O(O(k+m)*O(.5));n=L[ka+20>>2];k=L[ka+8>>2];m=O(O(n-k)*O(.5));k=O(O(O(n+k)*O(.5))-O(na));r=O(m+k);s=O(k-m);z=O(O(r-s)*O(.5));m=L[ka+16>>2];k=L[ka+4>>2];n=O(O(m-k)*O(.5));k=O(O(O(m+k)*O(.5))-O(da));m=O(n+k);k=O(k-n);o=O(O(m-k)*O(.5));n=O(O(s+r)*O(.5));m=O(O(k+m)*O(.5));p=u+24|0;w=u+12|0;while(1){q=H[j+8>>2];l=H[j+4>>2];V=D+N(H[j>>2],12)|0;r=L[V>>2];s=L[V+4>>2];k=L[V+8>>2];L[u+8>>2]=O(O(O(T*r)+O(Q*s))+O(Z*k))+A;L[u+4>>2]=O(O(O(X*r)+O(U*s))+O(ba*k))+B;L[u>>2]=O(O(O(v*r)+O(S*s))+O(ca*k))+x;l=D+N(l,12)|0;r=L[l>>2];s=L[l+4>>2];k=L[l+8>>2];L[u+20>>2]=O(O(O(T*r)+O(Q*s))+O(Z*k))+A;L[u+16>>2]=O(O(O(X*r)+O(U*s))+O(ba*k))+B;L[u+12>>2]=O(O(O(v*r)+O(S*s))+O(ca*k))+x;l=D+N(q,12)|0;r=L[l>>2];s=L[l+4>>2];k=L[l+8>>2];L[u+32>>2]=O(O(O(T*r)+O(Q*s))+O(Z*k))+A;L[u+28>>2]=O(O(O(X*r)+O(U*s))+O(ba*k))+B;L[u+24>>2]=O(O(O(v*r)+O(S*s))+O(ca*k))+x;k=L[g+52>>2];G[u+124>>1]=0;L[u+120>>2]=k;L[u+116>>2]=z;L[u+112>>2]=o;L[u+108>>2]=y;L[u+104>>2]=n;L[u+100>>2]=m;L[u+96>>2]=t;H[u+92>>2]=d;H[u+88>>2]=c;H[u+80>>2]=0;H[u+84>>2]=-1;uR(u+80|0,u,w,p);l=H[u+80>>2];G[h>>1]=J[h>>1]+J[u+124>>1];j=j+12|0;b=b+l|0;Y=Y-1|0;if(Y){continue}break}}H[C+36>>2]=b;break D}p=H[c+4>>2];l=Y+p|0;q=l+1|0;b=H[c+8>>2]&2147483647;E:{if(q>>>0<=b>>>0){break E}w=b;b=b?b<<1:2;b=b>>>0>q>>>0?b:q;if(w>>>0>=b>>>0){break E}tR(c,b);p=H[c+4>>2]}H[c+4>>2]=l;b=H[c>>2];H[C+36>>2]=Y;if(!Y){break D}b=b+N(p,36)|0;while(1){q=H[j+8>>2];l=H[j+4>>2];w=D+N(H[j>>2],12)|0;n=L[w>>2];m=L[w+4>>2];k=L[w+8>>2];L[b+8>>2]=O(O(O(T*n)+O(Q*m))+O(Z*k))+A;L[b+4>>2]=O(O(O(X*n)+O(U*m))+O(ba*k))+B;L[b>>2]=O(O(O(v*n)+O(S*m))+O(ca*k))+x;l=D+N(l,12)|0;n=L[l>>2];m=L[l+4>>2];k=L[l+8>>2];L[b+20>>2]=O(O(O(T*n)+O(Q*m))+O(Z*k))+A;L[b+16>>2]=O(O(O(X*n)+O(U*m))+O(ba*k))+B;L[b+12>>2]=O(O(O(v*n)+O(S*m))+O(ca*k))+x;l=D+N(q,12)|0;n=L[l>>2];m=L[l+4>>2];k=L[l+8>>2];L[b+32>>2]=O(O(O(T*n)+O(Q*m))+O(Z*k))+A;L[b+28>>2]=O(O(O(X*n)+O(U*m))+O(ba*k))+B;L[b+24>>2]=O(O(O(v*n)+O(S*m))+O(ca*k))+x;H[u+80>>2]=-1;Y=Y-1|0;l=H[d+4>>2];F:{if(l>>>0>=(H[d+8>>2]&2147483647)>>>0){qm(d,u+80|0);break F}H[H[d>>2]+(l<<2)>>2]=-1;H[d+4>>2]=H[d+4>>2]+1}j=j+12|0;b=b+36|0;if(Y){continue}break}}Oa=u+144|0;break b;case 1:break e;default:break b}}y=L[i+8>>2];t=L[i>>2];s=L[i+4>>2];n=O(s*O(0));z=O(O(y*O(0))+O(O(t+t)+n));r=L[i+12>>2];o=O(O(r*r)+O(-.5));k=O(o*O(0));m=O(O(y*z)+O(k+O(r*O(O(t*O(0))-O(s+s)))));A=O(O(t*z)+O(O(o+o)+O(r*O(n+O(y*O(-0))))));t=O(O(s*z)+O(k+O(r*O(O(y+y)+O(t*O(-0))))));s=O(O(0)-O(O(L[i+24>>2]*m)+O(O(L[i+16>>2]*A)+O(L[i+20>>2]*t))));k=O(L[i+1708>>2]-L[i+1696>>2]);n=O(k*k);k=O(L[i+1712>>2]-L[i+1700>>2]);z=O(n+O(k*k));k=O(L[i+1716>>2]-L[i+1704>>2]);o=O(k*k);Q=O(M[i+1736>>3]);U=O(M[i+1728>>3]);S=O(M[i+1720>>3]);G:{if(O(P(t))<=O(.9998999834060669)){y=O(0);n=m;r=O(-A);B=r;k=O(W(O(O(A*A)+O(O(m*m)+O(0)))));if(k>O(0)){k=O(O(1)/k);B=O(k*r);y=O(k*O(0));n=O(m*k)}k=O(O(m*n)+O(B*r));x=O(t*B);v=O(n*O(-t));break G}x=O(0);v=O(-t);n=O(1);k=O(W(O(O(t*t)+O(O(m*m)+O(0)))));H:{if(!(k>O(0))){y=O(0);k=m;break H}k=O(O(1)/k);v=O(k*v);y=O(0);x=O(k*O(0));k=O(m*k)}B=O(0)}o=O(o+z);s=O(O(O(Q*m)+O(O(S*A)+O(t*U)))+s);j=H[e+4>>2];l=j+11|0;b=H[e+8>>2]&2147483647;I:{if(l>>>0<=b>>>0){break I}p=b;b=b?b<<1:2;b=b>>>0>l>>>0?b:l;if(p>>>0>=b>>>0){break I}Dv(e,b);j=H[e+4>>2]}T=O(W(o));z=O(m*s);o=O(t*s);m=O(A*s);H[e+4>>2]=l;j=H[e>>2]+(j<<2)|0;H[j+8>>2]=q;H[j+4>>2]=E;H[j>>2]=2;b=H[i+1724>>2];H[j+12>>2]=H[i+1720>>2];H[j+16>>2]=b;b=H[_+4>>2];H[j+20>>2]=H[_>>2];H[j+24>>2]=b;b=H[$+4>>2];H[j+28>>2]=H[$>>2];H[j+32>>2]=b;H[j+36>>2]=2;b=H[c+4>>2];H[j+40>>2]=b;l=b+2|0;q=b+3|0;j=H[c+8>>2]&2147483647;J:{if(q>>>0<=j>>>0){break J}p=j;j=j?j<<1:2;j=j>>>0>q>>>0?j:q;if(p>>>0>=j>>>0){break J}tR(c,j);b=H[c+4>>2]}t=O(Q-z);r=O(T*B);s=O(U-o);z=O(T*y);o=O(S-m);m=O(T*n);H[c+4>>2]=l;q=H[c>>2];H[i+1856>>2]=0;l=N(b,36);b=H[d+4>>2];K:{if(b>>>0>=(H[d+8>>2]&2147483647)>>>0){qm(d,i+1856|0);j=H[d+4>>2];break K}H[H[d>>2]+(b<<2)>>2]=0;j=H[d+4>>2]+1|0;H[d+4>>2]=j}A=O(t+r);B=O(s+z);y=O(o+m);t=O(t-r);r=O(s-z);m=O(o-m);X=O(T*v);v=O(T*k);x=O(T*x);b=l+q|0;H[i+1856>>2]=1;L:{if((H[d+8>>2]&2147483647)>>>0<=j>>>0){qm(d,i+1856|0);break L}H[H[d>>2]+(j<<2)>>2]=1;H[d+4>>2]=H[d+4>>2]+1}s=O(O(x+m)-S);L[b>>2]=s;z=O(O(A-X)-Q);L[b+32>>2]=z;o=O(O(B-v)-U);L[b+28>>2]=o;n=O(O(y-x)-S);L[b+24>>2]=n;L[b+20>>2]=O(t-X)-Q;L[b+16>>2]=O(r-v)-U;L[b+12>>2]=O(m-x)-S;m=O(O(X+t)-Q);L[b+8>>2]=m;k=O(O(v+r)-U);L[b+4>>2]=k;L[b+68>>2]=O(X+A)-Q;L[b- -64>>2]=O(v+B)-U;L[b+60>>2]=O(x+y)-S;L[b+56>>2]=z;L[b+52>>2]=o;L[b+48>>2]=n;L[b+44>>2]=m;L[b+40>>2]=k;L[b+36>>2]=s;break b}j=H[e+4>>2];l=j+11|0;b=H[e+8>>2]&2147483647;M:{if(l>>>0<=b>>>0){break M}p=b;b=b?b<<1:2;b=b>>>0>l>>>0?b:l;if(p>>>0>=b>>>0){break M}Dv(e,b);j=H[e+4>>2]}H[e+4>>2]=l;p=H[e>>2]+(j<<2)|0;H[p+8>>2]=q;H[p+4>>2]=E;H[p>>2]=2;b=H[i+1724>>2];H[p+12>>2]=H[i+1720>>2];H[p+16>>2]=b;b=H[_+4>>2];H[p+20>>2]=H[_>>2];H[p+24>>2]=b;b=H[$+4>>2];H[p+28>>2]=H[$>>2];H[p+32>>2]=b;b=H[c+4>>2];H[p+40>>2]=b;if(I[g+56|0]){n=L[i+1716>>2];k=L[i+1704>>2];m=O(O(n-k)*O(.5));k=O(O(O(n+k)*O(.5))-y);B=O(m+k);o=O(k-m);y=O(O(B-o)*O(.5));n=L[i+1712>>2];k=L[i+1700>>2];m=O(O(n-k)*O(.5));k=O(O(O(n+k)*O(.5))-x);t=O(m+k);r=O(k-m);s=O(O(t-r)*O(.5));m=L[i+1708>>2];k=L[i+1696>>2];n=O(O(m-k)*O(.5));k=O(O(O(m+k)*O(.5))-A);m=O(n+k);k=O(k-n);z=O(O(m-k)*O(.5));o=O(O(o+B)*O(.5));n=O(O(r+t)*O(.5));m=O(O(k+m)*O(.5));j=0;b=0;while(1){q=i+1856|0;w=N(b,12)+85952|0;l=q+N(H[w>>2],12)|0;L[i+1816>>2]=L[l>>2];L[i+1820>>2]=L[l+4>>2];L[i+1824>>2]=L[l+8>>2];l=q+N(H[w+4>>2],12)|0;L[i+1828>>2]=L[l>>2];L[i+1832>>2]=L[l+4>>2];L[i+1836>>2]=L[l+8>>2];l=q+N(H[w+8>>2],12)|0;L[i+1840>>2]=L[l>>2];L[i+1844>>2]=L[l+4>>2];L[i+1848>>2]=L[l+8>>2];k=L[g+52>>2];G[i+2956>>1]=0;L[i+2952>>2]=k;L[i+2948>>2]=y;L[i+2944>>2]=s;L[i+2940>>2]=z;L[i+2936>>2]=o;L[i+2932>>2]=n;L[i+2928>>2]=m;H[i+2924>>2]=d;H[i+2920>>2]=c;H[i+2912>>2]=0;H[i+2916>>2]=-1;uR(i+2912|0,i+1816|0,za,ya);l=H[i+2912>>2];G[h>>1]=J[h>>1]+J[i+2956>>1];j=j+l|0;b=b+1|0;if((b|0)!=12){continue}break}H[p+36>>2]=j;break b}H[p+36>>2]=12;l=b+12|0;q=b+13|0;j=H[c+8>>2]&2147483647;N:{if(q>>>0<=j>>>0){break N}p=j;j=j?j<<1:2;j=j>>>0>q>>>0?j:q;if(p>>>0>=j>>>0){break N}tR(c,j);b=H[c+4>>2]}H[c+4>>2]=l;l=H[c>>2]+N(b,36)|0;j=0;while(1){p=l+N(j,36)|0;q=i+1856|0;w=N(j,12)+85952|0;b=q+N(H[w>>2],12)|0;L[p>>2]=L[b>>2];L[p+4>>2]=L[b+4>>2];L[p+8>>2]=L[b+8>>2];b=q+N(H[w+4>>2],12)|0;L[p+12>>2]=L[b>>2];L[p+16>>2]=L[b+4>>2];L[p+20>>2]=L[b+8>>2];b=q+N(H[w+8>>2],12)|0;L[p+24>>2]=L[b>>2];L[p+28>>2]=L[b+4>>2];L[p+32>>2]=L[b+8>>2];H[i+2912>>2]=-1;b=H[d+4>>2];O:{if(b>>>0>=(H[d+8>>2]&2147483647)>>>0){qm(d,i+2912|0);break O}H[H[d>>2]+(b<<2)>>2]=-1;H[d+4>>2]=H[d+4>>2]+1}j=j+1|0;if((j|0)!=12){continue}break}}f=f+1|0;if((La|0)!=(f|0)){continue}break}}Oa=i+2960|0}function Wx(a,b,c,d,e,f,g,h){var i=O(0),j=O(0),k=0,l=0,m=O(0),n=0,o=0,p=0,q=0,r=0,s=0,t=O(0),u=0,v=0,w=0,x=O(0),y=0,z=0,A=O(0),B=O(0),C=O(0),D=0,E=O(0),K=O(0),M=O(0),P=0,Q=O(0),R=O(0),S=0,T=0,U=O(0),V=O(0),X=O(0),Y=O(0),Z=0,_=0,$=O(0),aa=O(0),ba=O(0),ca=O(0),da=O(0),ea=O(0),fa=O(0),ga=O(0),ha=O(0),ia=O(0),ja=0,ka=O(0),la=O(0),ma=O(0),na=O(0),oa=O(0),pa=O(0),qa=O(0),ra=O(0),sa=O(0),ta=O(0),ua=O(0),va=O(0),wa=O(0),xa=O(0),ya=O(0),za=0,Aa=O(0),Ba=O(0),Ca=0,Da=O(0),Ea=O(0),Fa=O(0),Ga=O(0),Ha=0,Ia=0,Ja=O(0),Ka=O(0),La=O(0),Ma=O(0),Na=O(0),Pa=O(0),Qa=O(0),Sa=O(0),Ta=O(0),Ua=O(0),Va=O(0),Wa=O(0),Xa=O(0),Ya=O(0),Za=O(0),_a=O(0),$a=0,ab=O(0),bb=O(0),cb=O(0),db=O(0),eb=O(0),fb=O(0),gb=O(0),hb=O(0),ib=O(0),jb=O(0),kb=O(0),lb=O(0),mb=O(0),nb=O(0),ob=O(0),pb=0,qb=0,rb=0,sb=0,tb=0,ub=0,vb=0,wb=O(0),xb=O(0),yb=O(0),zb=O(0),Ab=O(0),Bb=0,Cb=O(0),Db=O(0),Eb=O(0),Fb=O(0),Gb=O(0),Hb=O(0),Ib=O(0),Jb=O(0),Kb=O(0),Lb=O(0),Mb=O(0),Nb=O(0),Ob=O(0),Pb=O(0),Qb=O(0),Rb=O(0),Sb=O(0),Tb=O(0),Ub=O(0),Vb=O(0),Wb=O(0),Xb=O(0),Yb=O(0),Zb=O(0),_b=0,$b=O(0),ac=O(0),bc=O(0),cc=O(0),dc=O(0),ec=O(0),fc=O(0),gc=O(0),hc=O(0),ic=O(0),jc=O(0),kc=O(0),lc=O(0),mc=O(0),nc=O(0),oc=O(0),pc=O(0),qc=O(0),rc=O(0),sc=O(0),tc=O(0),uc=O(0),vc=O(0),wc=O(0),xc=O(0),yc=O(0),zc=O(0),Ac=O(0),Bc=0,Cc=0,Dc=0,Ec=0,Fc=O(0),Gc=O(0),Hc=O(0),Ic=O(0),Jc=O(0),Kc=O(0),Lc=O(0),Mc=O(0),Nc=O(0),Oc=O(0),Pc=O(0),Qc=O(0),Rc=O(0),Sc=O(0),Tc=O(0),Uc=O(0),Vc=O(0),Wc=O(0),Xc=O(0),Yc=O(0),Zc=O(0),_c=O(0),$c=O(0),ad=O(0),bd=O(0),cd=O(0),dd=O(0),ed=O(0),fd=O(0),gd=O(0),hd=O(0),id=O(0),jd=O(0),kd=O(0),ld=O(0),md=O(0),nd=O(0),od=O(0),pd=O(0),qd=O(0),rd=O(0),sd=O(0),td=O(0),ud=O(0),vd=O(0),wd=O(0),xd=O(0),yd=O(0),zd=O(0),Ad=O(0),Bd=O(0),Cd=O(0),Dd=O(0),Ed=O(0),Fd=O(0),Gd=O(0),Hd=O(0),Id=O(0),Jd=O(0),Kd=O(0),Ld=O(0),Md=O(0),Nd=O(0),Od=O(0),Pd=O(0),Qd=O(0),Rd=O(0),Sd=O(0),Td=O(0),Ud=O(0),Vd=O(0),Wd=O(0),Xd=O(0),Yd=O(0),Zd=O(0),_d=O(0),$d=O(0),ae=O(0),be=O(0),ce=O(0),de=O(0),ee=O(0),fe=O(0),ge=O(0),he=O(0),ie=O(0),je=O(0),ke=O(0),le=O(0),me=O(0),ne=O(0),oe=O(0),pe=O(0),qe=O(0),re=O(0),se=O(0),te=O(0),ue=O(0),ve=O(0),we=O(0),xe=O(0),ye=O(0),ze=O(0),Ae=O(0),Be=O(0),Ce=O(0),De=O(0),Ee=O(0),Fe=O(0),Ge=O(0),He=O(0),Ie=O(0),Je=O(0),Ke=O(0),Le=O(0),Me=O(0),Ne=O(0),Oe=O(0),Pe=O(0),Qe=O(0),Re=O(0),Se=O(0),Te=O(0),Ue=O(0),Ve=O(0),We=0,Xe=O(0),Ye=O(0),Ze=O(0),_e=O(0),$e=O(0),af=O(0),bf=O(0),cf=O(0),df=O(0),ef=O(0),ff=O(0),gf=O(0),hf=O(0),jf=O(0),kf=O(0),lf=O(0),mf=O(0),nf=O(0),of=O(0),pf=O(0),qf=O(0),rf=O(0),sf=O(0),tf=O(0),uf=O(0),vf=O(0),wf=O(0),xf=O(0),yf=O(0),zf=O(0),Af=O(0),Bf=O(0),Cf=0,Df=0,Ef=0,Ff=O(0),Gf=O(0),Hf=O(0),If=O(0),Jf=0,Kf=O(0),Lf=0,Mf=0,Nf=0,Of=0,Pf=O(0),Qf=O(0),Rf=O(0),Sf=O(0),Tf=O(0),Uf=O(0),Vf=O(0),Wf=O(0),Xf=O(0),Yf=O(0),Zf=O(0),_f=0,$f=0,ag=0;q=Oa-208|0;Oa=q;G[H[c+16>>2]+22>>1]=0;G[H[c+192>>2]+22>>1]=0;G[H[c+368>>2]+22>>1]=0;G[H[c+544>>2]+22>>1]=0;H[b+4112>>2]=0;l=b+11812|0;H[l>>2]=0;H[l+4>>2]=0;r=b+16|0;H[c+116>>2]=r;p=H[a>>2];n=1;a:{if(I[p+12|0]>64){break a}l=(h|0)==1?1:2;s=c+116|0;D=b+4128|0;b:{while(1){c:{ja=p;n=y<<2;v=n+(q+96|0)|0;p=n+(q+80|0)|0;u=n+(q- -64|0)|0;n=n+(q+48|0)|0;z=N(y,176)+c|0;j=L[H[z+28>>2]+76>>2];i=L[H[z+32>>2]+76>>2];w=yx(r,ja,q+176|0,q+144|0,v,p,u,n,i>j?j:i);if(w){H[z+120>>2]=w;F[z+124|0]=I[q+176|0];H[z+148>>2]=H[b+11816>>2];H[z+156>>2]=H[b+11812>>2];ez(D,H[s>>2],w);if(!fz(D,H[s>>2],z+36|0,z- -64|0,H[z+156>>2],H[z+148>>2])){break c}}n=1;break a}G[z+160>>1]=H[b+11812>>2]-H[z+156>>2];H[z+152>>2]=H[b+11816>>2]-H[z+148>>2];L[v>>2]=L[z>>2]*L[v>>2];L[p>>2]=L[z+8>>2]*L[p>>2];L[u>>2]=L[z+4>>2]*L[u>>2];L[n>>2]=L[z+12>>2]*L[n>>2];y=y+1|0;if((y|0)==4){break b}n=N(y,176)+c|0;Z=w+Z|0;H[n+116>>2]=((Z<<6)+b|0)+16;s=n+116|0;p=H[(y<<2)+a>>2];if(I[p+12|0]+Z>>>0<=64){continue}break}n=1;break a}H[q+44>>2]=0;H[q+12>>2]=0;Ca=l;r=0;n=0;s=0;l=Oa-256|0;Oa=l;S6(l+128|0,0,128);o=S6(l,0,128);k=c;ja=H[c+152>>2];if(ja){p=H[k+148>>2];while(1){c=n+p|0;w=H[(D+(c<<2)|0)+7296>>2];d:{if(!w){break d}u=I[(D+N(c,104)|0)+2817|0];l=n<<2;c=l+(o+128|0)|0;v=H[c>>2];H[c>>2]=v>>>0>w>>>0?v:w;r=r+w|0;if(u&1){break d}c=l+o|0;l=H[c>>2];u=c;c=N(w,Ca);H[u>>2]=c>>>0>>0?l:c;r=c+r|0}n=n+1|0;if((ja|0)!=(n|0)){continue}break}}H[q+16>>2]=r;z=H[k+328>>2];if(z){u=H[k+324>>2];n=0;while(1){c=n+u|0;v=H[(D+(c<<2)|0)+7296>>2];e:{if(!v){break e}r=I[(D+N(c,104)|0)+2817|0];l=n<<2;c=l+(o+128|0)|0;p=H[c>>2];H[c>>2]=p>>>0>v>>>0?p:v;s=s+v|0;if(r&1){break e}c=l+o|0;l=H[c>>2];p=c;c=N(v,Ca);H[p>>2]=c>>>0>>0?l:c;s=c+s|0}n=n+1|0;if((z|0)!=(n|0)){continue}break}}H[q+20>>2]=s;s=0;r=0;w=H[k+504>>2];if(w){p=H[k+500>>2];n=0;while(1){c=n+p|0;P=H[(D+(c<<2)|0)+7296>>2];f:{if(!P){break f}u=I[(D+N(c,104)|0)+2817|0];l=n<<2;c=l+(o+128|0)|0;v=H[c>>2];H[c>>2]=v>>>0>P>>>0?v:P;r=r+P|0;if(u&1){break f}c=l+o|0;l=H[c>>2];u=c;c=N(P,Ca);H[u>>2]=c>>>0>>0?l:c;r=c+r|0}n=n+1|0;if((w|0)!=(n|0)){continue}break}}H[q+24>>2]=r;v=H[k+680>>2];if(v){u=H[k+676>>2];n=0;while(1){c=n+u|0;P=H[(D+(c<<2)|0)+7296>>2];g:{if(!P){break g}r=I[(D+N(c,104)|0)+2817|0];l=n<<2;c=l+(o+128|0)|0;p=H[c>>2];H[c>>2]=p>>>0>P>>>0?p:P;s=s+P|0;if(r&1){break g}c=l+o|0;l=H[c>>2];p=c;c=N(P,Ca);H[p>>2]=c>>>0>>0?l:c;s=c+s|0}n=n+1|0;if((v|0)!=(n|0)){continue}break}}H[q+28>>2]=s;c=z>>>0>>0?ja:z;c=c>>>0>w>>>0?c:w;z=c>>>0>v>>>0?c:v;h:{if(!z){c=0;s=0;break h}r=0;l=0;s=0;c=0;if(z-1>>>0>=3){v=z&-4;D=0;while(1){w=l<<2;p=w|12;u=w|8;n=w|4;s=H[p+o>>2]+(H[u+o>>2]+(H[n+o>>2]+(H[o+w>>2]+s|0)|0)|0)|0;ja=p;p=o+128|0;c=H[ja+p>>2]+(H[p+u>>2]+(H[n+p>>2]+(H[p+w>>2]+c|0)|0)|0)|0;l=l+4|0;D=D+4|0;if((v|0)!=(D|0)){continue}break}}u=z&3;if(!u){break h}while(1){n=l<<2;s=H[n+o>>2]+s|0;c=H[n+(o+128|0)>>2]+c|0;l=l+1|0;r=r+1|0;if((u|0)!=(r|0)){continue}break}}H[q+12>>2]=c;H[q+44>>2]=N(c+s|0,(H[k+624>>2]|(H[k+448>>2]|(H[k+272>>2]|H[k+96>>2])))&1?192:144)+(z<<8);Oa=o+256|0;l=H[q+44>>2];if(l){c=l+16|0;n=1;if(c>>>0>16384){break a}Ha=Ra[H[H[g>>2]>>2]](g,c)|0;n=0;if(Ha+1>>>0<2){break a}}r=H[k+16>>2];H[r+24>>2]=Ha;G[k+162>>1]=J[k+162>>1]+J[q+16>>1];n=l>>>4|0;G[r+22>>1]=n;g=H[a>>2];c=H[g+8>>2];G[r+20>>1]=I[g+12|0];H[r+28>>2]=c;l=H[k+192>>2];H[l+24>>2]=Ha;G[k+338>>1]=J[k+338>>1]+J[q+20>>1];G[l+22>>1]=n;g=H[a+4>>2];c=H[g+8>>2];G[l+20>>1]=I[g+12|0];H[l+28>>2]=c;l=H[k+368>>2];H[l+24>>2]=Ha;G[k+514>>1]=J[k+514>>1]+J[q+24>>1];G[l+22>>1]=n;g=H[a+8>>2];c=H[g+8>>2];G[l+20>>1]=I[g+12|0];H[l+28>>2]=c;g=H[k+544>>2];H[g+24>>2]=Ha;G[k+690>>1]=J[k+690>>1]+J[q+28>>1];G[g+22>>1]=n;c=H[a+12>>2];a=H[c+8>>2];G[g+20>>1]=I[c+12|0];H[g+28>>2]=a;i:{c=H[k+680>>2];p=H[k+504>>2];a=c>>>0>p>>>0?c:p;s=H[k+328>>2];a=a>>>0>s>>>0?a:s;S=H[k+152>>2];_b=a>>>0>S>>>0?a:S;if(!_b){break i}af=L[k+616>>2];bf=L[k+612>>2];cf=L[k+608>>2];df=L[k+440>>2];ef=L[k+436>>2];ff=L[k+432>>2];gf=L[k+264>>2];hf=L[k+260>>2];jf=L[k+256>>2];kf=L[k+88>>2];lf=L[k+84>>2];mf=L[k+80>>2];nf=L[k+588>>2];of=L[k+584>>2];pf=L[k+580>>2];qf=L[k+412>>2];rf=L[k+408>>2];sf=L[k+404>>2];tf=L[k+236>>2];uf=L[k+232>>2];vf=L[k+228>>2];wf=L[k+60>>2];xf=L[k+56>>2];yf=L[k+52>>2];zf=L[k+656>>2];Af=L[k+480>>2];Bf=L[k+304>>2];Cf=I[k+654|0];Df=I[k+478|0];Ef=I[k+302|0];Ff=L[k+660>>2];Gf=L[k+484>>2];Hf=L[k+308>>2];w=H[k+560>>2];Kc=L[w+32>>2];v=H[k+384>>2];Lc=L[v+32>>2];u=H[k+208>>2];Mc=L[u+32>>2];r=H[k+556>>2];Nc=L[r+32>>2];n=H[k+380>>2];Oc=L[n+32>>2];l=H[k+204>>2];Pc=L[l+32>>2];Qc=L[w+16>>2];Rc=L[v+16>>2];Sc=L[u+16>>2];Tc=L[r+16>>2];Uc=L[n+16>>2];Vc=L[l+16>>2];Wc=L[w- -64>>2];Xc=L[w+60>>2];Yc=L[w+56>>2];Zc=L[w+52>>2];_c=L[w+48>>2];$c=L[w+44>>2];ad=L[w+40>>2];bd=L[w+36>>2];cd=L[v- -64>>2];dd=L[v+60>>2];ed=L[v+56>>2];fd=L[v+52>>2];gd=L[v+48>>2];hd=L[v+44>>2];id=L[v+40>>2];jd=L[v+36>>2];kd=L[u- -64>>2];ld=L[u+60>>2];md=L[u+56>>2];nd=L[u+52>>2];od=L[u+48>>2];pd=L[u+44>>2];qd=L[u+40>>2];rd=L[u+36>>2];g=H[k+32>>2];sd=L[g- -64>>2];td=L[g+60>>2];ud=L[g+56>>2];vd=L[g+52>>2];wd=L[g+48>>2];xd=L[g+44>>2];yd=L[g+40>>2];zd=L[g+36>>2];Ad=L[r- -64>>2];Bd=L[r+60>>2];Cd=L[r+56>>2];Dd=L[r+52>>2];Ed=L[r+48>>2];Fd=L[r+44>>2];Gd=L[r+40>>2];Hd=L[r+36>>2];Id=L[n- -64>>2];Jd=L[n+60>>2];Kd=L[n+56>>2];Ld=L[n+52>>2];Md=L[n+48>>2];Nd=L[n+44>>2];Od=L[n+40>>2];Pd=L[n+36>>2];Qd=L[l- -64>>2];Rd=L[l+60>>2];Sd=L[l+56>>2];Td=L[l+52>>2];Ud=L[l+48>>2];Vd=L[l+44>>2];Wd=L[l+40>>2];Xd=L[l+36>>2];a=H[k+28>>2];Yd=L[a- -64>>2];Zd=L[a+60>>2];_d=L[a+56>>2];$d=L[a+52>>2];ae=L[a+48>>2];be=L[a+44>>2];ce=L[a+40>>2];de=L[a+36>>2];ee=L[w+24>>2];fe=L[w+20>>2];ge=L[v+24>>2];he=L[v+20>>2];ie=L[u+24>>2];je=L[u+20>>2];ke=L[g+24>>2];le=L[g+20>>2];me=L[r+24>>2];ne=L[r+20>>2];oe=L[n+24>>2];pe=L[n+20>>2];qe=L[l+24>>2];re=L[l+20>>2];se=L[a+24>>2];te=L[a+20>>2];If=L[k+128>>2];Jf=I[k+126|0];Kf=L[k+132>>2];ue=L[g+32>>2];ve=L[a+32>>2];we=L[g+16>>2];xe=L[a+16>>2];ye=L[q+60>>2];ze=L[q+56>>2];Ae=L[q+52>>2];Be=L[q+48>>2];Ce=L[q+76>>2];De=L[q+72>>2];Ee=L[q+68>>2];Fe=L[q+64>>2];j=L[r+68>>2];i=L[w+68>>2];Ge=i>2];i=L[v+68>>2];He=i>2];i=L[u+68>>2];Ie=i>2]|(H[k+448>>2]|(H[k+272>>2]|H[k+96>>2])))&1;Lf=pb?13:14;Mf=pb?7:8;Nf=pb?192:144;$b=L[r+8>>2];ac=L[w+8>>2];Je=O($b-ac);bc=L[n+8>>2];cc=L[v+8>>2];Ke=O(bc-cc);dc=L[l+8>>2];ec=L[u+8>>2];Le=O(dc-ec);fc=L[r+4>>2];gc=L[w+4>>2];Me=O(fc-gc);hc=L[n+4>>2];ic=L[v+4>>2];Ne=O(hc-ic);jc=L[l+4>>2];kc=L[u+4>>2];Oe=O(jc-kc);lc=L[r>>2];mc=L[w>>2];Pe=O(lc-mc);nc=L[n>>2];oc=L[v>>2];Qe=O(nc-oc);pc=L[l>>2];qc=L[u>>2];Re=O(pc-qc);j=L[a+68>>2];i=L[g+68>>2];Se=i>2]*L[w+12>>2]);sc=O(L[q+88>>2]*L[v+12>>2]);tc=O(L[q+84>>2]*L[u+12>>2]);uc=O(L[q+80>>2]*L[g+12>>2]);xb=O(L[q+108>>2]*L[r+12>>2]);yb=O(L[q+104>>2]*L[n+12>>2]);zb=O(L[q+100>>2]*L[l+12>>2]);Ab=O(L[q+96>>2]*L[a+12>>2]);vc=L[a+8>>2];wc=L[g+8>>2];Te=O(vc-wc);xc=L[a+4>>2];yc=L[g+4>>2];Ue=O(xc-yc);zc=L[a>>2];Ac=L[g>>2];Ve=O(zc-Ac);We=pb?176:128;y=(N(_b,160)+N(We,H[q+12>>2])|0)+Ha|0;Bb=b+11552|0;Ia=b+4128|0;o=Ha;while(1){qb=S>>>0<=za>>>0;Bc=qb?Bc:H[k+148>>2]+za|0;rb=s>>>0<=za>>>0;Cc=rb?Cc:H[k+324>>2]+za|0;$a=p>>>0<=za>>>0;Dc=$a?Dc:H[k+500>>2]+za|0;sb=c>>>0<=za>>>0;Ec=sb?Ec:H[k+676>>2]+za|0;_=0;Z=0;Z=qb?Z:H[((Bc<<2)+b|0)+11424>>2];_=rb?_:H[((Cc<<2)+b|0)+11424>>2];T=0;a=0;a=$a?a:H[((Dc<<2)+b|0)+11424>>2];vb=8;c=H[(Ec<<2)+Bb>>2];w=H[k+644>>2]+(J[N(c,44)+Ia>>1]<<6)|0;t=L[w+44>>2];p=H[(Dc<<2)+Bb>>2];v=H[k+468>>2]+(J[N(p,44)+Ia>>1]<<6)|0;m=L[v+44>>2];s=H[(Cc<<2)+Bb>>2];u=H[k+292>>2]+(J[N(s,44)+Ia>>1]<<6)|0;j=L[u+44>>2];S=H[(Bc<<2)+Bb>>2];r=H[k+116>>2]+(J[N(S,44)+Ia>>1]<<6)|0;i=L[r+44>>2];Fc=L[r+60>>2];Gc=L[u+60>>2];Hc=L[v+60>>2];Ic=L[w+60>>2];if(!sb){vb=0;T=H[((Ec<<2)+b|0)+11424>>2]}F[o+7|0]=T;F[o+6|0]=a;F[o+5|0]=_;F[o+4|0]=Z;G[o+2>>1]=y-o;L[o+140>>2]=ye;L[o+136>>2]=ze;L[o+132>>2]=Ae;L[o+128>>2]=Be;L[o+124>>2]=Ce;L[o+120>>2]=De;L[o+116>>2]=Ee;L[o+112>>2]=Fe;L[o+108>>2]=rc;L[o+104>>2]=sc;L[o+100>>2]=tc;L[o+96>>2]=uc;L[o+92>>2]=xb;L[o+88>>2]=yb;L[o+84>>2]=zb;L[o+80>>2]=Ab;g=a>>>0>>0?T:a;g=g>>>0>_>>>0?g:_;tb=g>>>0>Z>>>0?g:Z;F[o+1|0]=tb;L[o+28>>2]=Ic;L[o+24>>2]=Hc;L[o+20>>2]=Gc;L[o+16>>2]=Fc;F[o+11|0]=Cf;F[o+10|0]=Df;F[o+9|0]=Ef;F[o+8|0]=Jf;F[o|0]=Mf;H[o+144>>2]=H[k+112>>2];H[o+148>>2]=H[k+288>>2];H[o+152>>2]=H[k+464>>2];H[o+156>>2]=H[k+640>>2];L[y+92>>2]=ye;L[y+88>>2]=ze;L[y+84>>2]=Ae;L[y+80>>2]=Be;L[y+76>>2]=Ce;L[y+72>>2]=De;L[y+68>>2]=Ee;L[y+64>>2]=Fe;L[y+60>>2]=rc;L[y+56>>2]=sc;L[y+52>>2]=tc;L[y+48>>2]=uc;L[y+44>>2]=xb;L[y+40>>2]=yb;L[y+36>>2]=zb;L[y+32>>2]=Ab;n=N(T,Ca);F[y+10|0]=n;l=N(a,Ca);F[y+9|0]=l;h=N(_,Ca);F[y+8|0]=h;g=N(Z,Ca);F[y+7|0]=g;F[y+6|0]=T;F[y+5|0]=a;F[y+4|0]=_;F[y+3|0]=Z;F[y+1|0]=tb;L[y+16>>2]=i;L[y+20>>2]=j;L[y+24>>2]=m;L[y+28>>2]=t;F[y|0]=Lf;H[y+12>>2]=Of;a=l>>>0>>0?n:l;a=a>>>0>h>>>0?a:h;F[y+2|0]=a>>>0>g>>>0?a:g;U=L[r>>2];V=L[u>>2];X=L[v>>2];Y=L[w>>2];ba=L[r+4>>2];ca=L[u+4>>2];da=L[v+4>>2];ea=L[w+4>>2];fa=L[r+8>>2];ga=L[u+8>>2];ha=L[v+8>>2];ia=L[w+8>>2];L[o+76>>2]=ia;L[o+72>>2]=ha;L[o+68>>2]=ga;L[o+64>>2]=fa;L[o+60>>2]=ea;L[o+56>>2]=da;L[o+52>>2]=ca;L[o+48>>2]=ba;L[o+44>>2]=Y;L[o+40>>2]=X;L[o+36>>2]=V;L[o+32>>2]=U;t=O(O(Je*ia)+O(O(Pe*Y)+O(Me*ea)));j=O(Je-O(ia*t));i=O(-Y);g=(iO(.10000000149011612);j=a?j:g?ea:O(0);xa=a?m:g?O(0):O(-ea);i=a?i:g?O(-ia):Y;ka=O(O(1)/O(W(O(O(xa*xa)+O(O(i*i)+O(j*j))))));ya=O(j*ka);Q=O(i*ka);L[q+204>>2]=O(ea*ya)-O(ia*Q);t=O(O(Ke*ha)+O(O(Qe*X)+O(Ne*da)));j=O(Ke-O(ha*t));i=O(-X);g=(iO(.10000000149011612);j=a?j:g?da:O(0);R=a?m:g?O(0):O(-da);i=a?i:g?O(-ha):X;C=O(O(1)/O(W(O(O(R*R)+O(O(i*i)+O(j*j))))));E=O(j*C);$=O(i*C);L[q+200>>2]=O(da*E)-O(ha*$);t=O(O(Le*ga)+O(O(Re*V)+O(Oe*ca)));j=O(Le-O(ga*t));i=O(-V);g=(iO(.10000000149011612);j=a?j:g?ca:O(0);aa=a?m:g?O(0):O(-ca);i=a?i:g?O(-ga):V;B=O(O(1)/O(W(O(O(aa*aa)+O(O(i*i)+O(j*j))))));K=O(j*B);M=O(i*B);L[q+196>>2]=O(ca*K)-O(ga*M);j=O(O(Te*fa)+O(O(Ve*U)+O(Ue*ba)));t=O(Te-O(fa*j));i=O(-U);g=(iO(.10000000149011612);i=a?t:g?ba:O(0);Jc=i;m=a?m:g?O(0):O(-ba);j=a?j:g?O(-fa):U;i=O(O(1)/O(W(O(O(m*m)+O(O(j*j)+O(i*i))))));x=O(Jc*i);A=O(j*i);L[q+192>>2]=O(ba*x)-O(fa*A);t=O(xa*ka);L[q+188>>2]=t;m=O(m*i);L[q+176>>2]=m;j=O(aa*B);L[q+180>>2]=j;i=O(R*C);L[q+184>>2]=i;L[q+172>>2]=O(ia*t)-O(Y*ya);L[q+168>>2]=O(ha*i)-O(X*E);L[q+164>>2]=O(ga*j)-O(V*K);L[q+160>>2]=O(fa*m)-O(U*x);L[q+156>>2]=Q;L[q+152>>2]=$;L[q+148>>2]=M;L[q+144>>2]=A;L[q+140>>2]=O(Y*Q)-O(ea*t);L[q+136>>2]=O(X*$)-O(da*i);L[q+132>>2]=O(V*M)-O(ca*j);L[q+128>>2]=O(U*A)-O(ba*m);L[q+124>>2]=ya;L[q+120>>2]=E;L[q+116>>2]=K;L[q+112>>2]=x;ja=65535;z=65535;j:{if((S|0)==65535){break j}while(1){z=S;a=N(z,44)+b|0;if(I[a+4133|0]){break j}z=65535;S=J[a+4130>>1];if((S|0)!=65535){continue}break}}k:{if((s|0)==65535){break k}while(1){ja=s;a=N(s,44)+b|0;if(I[a+4133|0]){break k}ja=65535;s=J[a+4130>>1];if((s|0)!=65535){continue}break}}w=65535;v=65535;l:{if((p|0)==65535){break l}while(1){v=p;a=N(p,44)+b|0;if(I[a+4133|0]){break l}v=65535;p=J[a+4130>>1];if((p|0)!=65535){continue}break}}m:{if((c|0)==65535){break m}while(1){w=c;a=N(c,44)+b|0;if(I[a+4133|0]){break m}w=65535;c=J[a+4130>>1];if((c|0)!=65535){continue}break}}a=65535;D=1;r=1;l=65535;c=z;n:{if((c|0)==65535){break n}while(1){l=c;c=N(c,44)+b|0;if(I[c+4133|0]!=(r|0)){break n}l=65535;r=0;c=J[c+4130>>1];if((c|0)!=65535){continue}break}}c=ja;o:{if((c|0)==65535){break o}while(1){a=c;c=N(c,44)+b|0;if(I[c+4133|0]!=(D|0)){break o}a=65535;D=0;c=J[c+4130>>1];if((c|0)!=65535){continue}break}}u=65535;ub=1;P=1;n=65535;c=v;p:{if((c|0)==65535){break p}while(1){n=c;c=N(c,44)+b|0;if(I[c+4133|0]!=(P|0)){break p}n=65535;P=0;c=J[c+4130>>1];if((c|0)!=65535){continue}break}}c=w;q:{if((c|0)==65535){break q}while(1){u=c;c=N(c,44)+b|0;if(I[c+4133|0]!=(ub|0)){break q}u=65535;ub=0;c=J[c+4130>>1];if((c|0)!=65535){continue}break}}S=1;S=qb?S:!((l|0)!=65535&I[(N(l,44)+b|0)+4133|0]>r>>>0);h=qb|rb<<1;g=$a<<2;r:{if(!((a|0)==65535|rb)){p=0;if(I[(N(a,44)+b|0)+4133|0]>D>>>0){break r}}p=2}c=tb<<4;g=g|h;s:{if(!((n|0)==65535|$a)){h=0;if(I[(N(n,44)+b|0)+4133|0]>P>>>0){break s}}h=4}c=c+y|0;s=g|vb;t:{if(!((u|0)==65535|sb)){g=0;if(I[(N(u,44)+b|0)+4133|0]>ub>>>0){break t}}g=8}y=c+96|0;c=o+160|0;u:{if((s|0)==15){o=c;break u}Pf=O(O(ac*ia)+O(O(mc*Y)+O(gc*ea)));Qf=O(O(cc*ha)+O(O(oc*X)+O(ic*da)));Rf=O(O(ec*ga)+O(O(qc*V)+O(kc*ca)));Sf=O(O(wc*fa)+O(O(Ac*U)+O(yc*ba)));Tf=O(O($b*ia)+O(O(lc*Y)+O(fc*ea)));Uf=O(O(bc*ha)+O(O(nc*X)+O(hc*da)));Vf=O(O(dc*ga)+O(O(pc*V)+O(jc*ca)));Wf=O(O(vc*fa)+O(O(zc*U)+O(xc*ba)));t=O(O(ia*ia)+O(O(Y*Y)+O(ea*ea)));Xe=O(rc*t);m=O(O(ha*ha)+O(O(X*X)+O(da*da)));Ye=O(sc*m);j=O(O(ga*ga)+O(O(V*V)+O(ca*ca)));Ze=O(tc*j);i=O(O(fa*fa)+O(O(U*U)+O(ba*ba)));_e=O(uc*i);Xf=O(xb*t);Yf=O(yb*m);Zf=O(zb*j);Jc=O(Ab*i);h=g|(h|(p|S));_f=H[k+644>>2];$f=H[k+468>>2];ag=H[k+292>>2];qb=H[k+116>>2];S=0;$a=0;sb=0;tb=0;vb=0;while(1){o=_f+(J[N(w,44)+Ia>>1]+vb<<6)|0;E=L[o+16>>2];x=O(E-pf);m=O(-x);$=L[o+20>>2];A=O($-of);j=O(-A);aa=L[o+24>>2];t=O(aa-nf);i=O(-t);Cb=(m>1]+tb<<6)|0;B=L[s+16>>2];x=O(B-sf);m=O(-x);K=L[s+20>>2];A=O(K-rf);j=O(-A);M=L[s+24>>2];t=O(M-qf);i=O(-t);Fb=(m>1]+sb<<6)+ag|0;x=L[p+16>>2];Q=O(x-vf);m=O(-Q);A=L[p+20>>2];R=O(A-uf);j=O(-R);t=L[p+24>>2];C=O(t-tf);i=O(-C);Ib=(m>1]+$a<<6)+qb|0;m=L[g+16>>2];xa=O(m-yf);Q=O(-xa);j=L[g+20>>2];ka=O(j-xf);R=O(-ka);i=L[g+24>>2];ya=O(i-wf);C=O(-ya);Lb=(QE?C:E)>2];ab=L[o+36>>2];bb=L[o+40>>2];Aa=O(O(Y*$e)+O(O(ea*ab)+O(ia*bb)));cb=L[s+32>>2];db=L[s+36>>2];eb=L[s+40>>2];Ba=O(O(X*cb)+O(O(da*db)+O(ha*eb)));fb=L[p+32>>2];gb=L[p+36>>2];xa=L[p+40>>2];ka=O(O(V*fb)+O(O(ca*gb)+O(ga*xa)));ya=L[g+32>>2];Q=L[g+36>>2];R=L[g+40>>2];C=O(O(U*ya)+O(O(ba*Q)+O(fa*R)));E=L[o+28>>2];$=L[s+28>>2];aa=L[p+28>>2];B=L[g+28>>2];i=L[o+12>>2];K=L[s+12>>2];M=L[p+12>>2];x=L[g+12>>2];if(pb){pa=O(O(ea*Ob)-O(Y*Wb));qa=O(O(Y*Sb)-O(ia*Ob));ra=O(O(ia*Wb)-O(ea*Sb));hb=O(O(Wc*pa)+O(O(Xc*qa)+O(Yc*ra)));L[c+172>>2]=hb;sa=O(O(da*Pb)-O(X*Xb));ta=O(O(X*Tb)-O(ha*Pb));ua=O(O(ha*Xb)-O(da*Tb));ib=O(O(cd*sa)+O(O(dd*ta)+O(ed*ua)));L[c+168>>2]=ib;va=O(O(ca*Qb)-O(V*Yb));wa=O(O(V*Ub)-O(ga*Qb));Da=O(O(ga*Yb)-O(ca*Ub));jb=O(O(kd*va)+O(O(ld*wa)+O(md*Da)));L[c+164>>2]=jb;Ea=O(O(ba*Rb)-O(U*Zb));Fa=O(O(U*Vb)-O(fa*Rb));Ga=O(O(fa*Zb)-O(ba*Vb));kb=O(O(sd*Ea)+O(O(td*Fa)+O(ud*Ga)));L[c+160>>2]=kb;lb=O(O(Zc*pa)+O(O(_c*qa)+O($c*ra)));L[c+156>>2]=lb;mb=O(O(fd*sa)+O(O(gd*ta)+O(hd*ua)));L[c+152>>2]=mb;nb=O(O(nd*va)+O(O(od*wa)+O(pd*Da)));L[c+148>>2]=nb;ob=O(O(vd*Ea)+O(O(wd*Fa)+O(xd*Ga)));L[c+144>>2]=ob;A=O(O(ad*pa)+O(O(bd*qa)+O(Kc*ra)));L[c+140>>2]=A;t=O(O(id*sa)+O(O(jd*ta)+O(Lc*ua)));L[c+136>>2]=t;m=O(O(qd*va)+O(O(rd*wa)+O(Mc*Da)));L[c+132>>2]=m;j=O(O(yd*Ea)+O(O(zd*Fa)+O(ue*Ga)));L[c+128>>2]=j;Sa=O(Sa+O(Ye+O(O(ib*ib)+O(O(mb*mb)+O(t*t)))));Wa=O(Wa+O(Ze+O(O(jb*jb)+O(O(nb*nb)+O(m*m)))));_a=O(_a+O(_e+O(O(kb*kb)+O(O(ob*ob)+O(j*j)))));la=O(la-O(Pf+O(O(ee*pa)+O(O(fe*qa)+O(Qc*ra)))));ma=O(ma-O(Qf+O(O(ge*sa)+O(O(he*ta)+O(Rc*ua)))));na=O(na-O(Rf+O(O(ie*va)+O(O(je*wa)+O(Sc*Da)))));Ma=O(Ma+O(Xe+O(O(hb*hb)+O(O(lb*lb)+O(A*A)))));oa=O(oa-O(Sf+O(O(ke*Ea)+O(O(le*Fa)+O(we*Ga)))))}o=c+We|0;L[c+44>>2]=Ja;L[c+40>>2]=Na;L[c+36>>2]=Ta;L[c+32>>2]=Xa;L[c+28>>2]=Ka;L[c+24>>2]=Pa;L[c+20>>2]=Ua;L[c+16>>2]=Ya;L[c+12>>2]=La;L[c+8>>2]=Qa;L[c+4>>2]=Va;L[c>>2]=Za;H[c+48>>2]=0;H[c+52>>2]=0;H[c+56>>2]=0;H[c+60>>2]=0;A=Ma>O(0)?O(O(1)/Ma):O(0);L[c+76>>2]=A;t=Sa>O(0)?O(O(1)/Sa):O(0);L[c+72>>2]=t;m=Wa>O(0)?O(O(1)/Wa):O(0);L[c+68>>2]=m;j=_a>O(0)?O(O(1)/_a):O(0);L[c+64>>2]=j;L[c+112>>2]=B;L[c+116>>2]=aa;L[c+120>>2]=$;L[c+124>>2]=E;B=O(i-zf);i=O(wb*B);i=O((iO(0)&e>la&A>O(B*d);L[c+108>>2]=B<=Ff?T?O(0):i:i;K=O(K-Af);i=O(wb*K);i=O((iO(0)&e>ma&t>O(K*d);L[c+104>>2]=K<=Gf?s?O(0):i:i;M=O(M-Bf);i=O(wb*M);i=O((iO(0)&e>na&m>O(M*d);L[c+100>>2]=M<=Hf?p?O(0):i:i;x=O(x-If);i=O(wb*x);j=O((iO(0)&e>oa&i>O(x*d);L[c+96>>2]=x<=Kf?g?O(0):j:j;L[c+80>>2]=O(C+(g?O(Fc*i):O(0)))-oa;L[c+84>>2]=O(ka+(p?O(Gc*m):O(0)))-na;L[c+88>>2]=O(Ba+(s?O(Hc*t):O(0)))-ma;L[c+92>>2]=O(Aa+(T?O(Ic*A):O(0)))-la;_=0;c=y;while(1){g=S<<4;s=g+(q+144|0)|0;la=L[s+12>>2];p=g+(q+176|0)|0;ma=L[p+12>>2];E=O(O(Cb*la)-O(Db*ma));g=g+(q+112|0)|0;na=L[g+12>>2];$=O(O(Eb*ma)-O(Cb*na));aa=O(O(Db*na)-O(Eb*la));hb=O(O(Ad*E)+O(O(Bd*$)+O(Cd*aa)));ib=O(O(Dd*E)+O(O(Ed*$)+O(Fd*aa)));jb=O(O(Gd*E)+O(O(Hd*$)+O(Nc*aa)));Da=O(xb+O(O(hb*hb)+O(O(ib*ib)+O(jb*jb))));oa=L[s+8>>2];pa=L[p+8>>2];B=O(O(Fb*oa)-O(Gb*pa));qa=L[g+8>>2];K=O(O(Hb*pa)-O(Fb*qa));M=O(O(Gb*qa)-O(Hb*oa));kb=O(O(Id*B)+O(O(Jd*K)+O(Kd*M)));lb=O(O(Ld*B)+O(O(Md*K)+O(Nd*M)));mb=O(O(Od*B)+O(O(Pd*K)+O(Oc*M)));Ea=O(yb+O(O(kb*kb)+O(O(lb*lb)+O(mb*mb))));ra=L[s+4>>2];sa=L[p+4>>2];x=O(O(Ib*ra)-O(Jb*sa));ta=L[g+4>>2];A=O(O(Kb*sa)-O(Ib*ta));t=O(O(Jb*ta)-O(Kb*ra));nb=O(O(Qd*x)+O(O(Rd*A)+O(Sd*t)));ob=O(O(Td*x)+O(O(Ud*A)+O(Vd*t)));Aa=O(O(Wd*x)+O(O(Xd*A)+O(Pc*t)));Fa=O(zb+O(O(nb*nb)+O(O(ob*ob)+O(Aa*Aa))));ua=L[s>>2];va=L[p>>2];m=O(O(Lb*ua)-O(Mb*va));wa=L[g>>2];j=O(O(Nb*va)-O(Lb*wa));i=O(O(Mb*wa)-O(Nb*ua));Ba=O(O(Yd*m)+O(O(Zd*j)+O(_d*i)));ka=O(O($d*m)+O(O(ae*j)+O(be*i)));C=O(O(ce*m)+O(O(de*j)+O(ve*i)));Ga=O(Ab+O(O(Ba*Ba)+O(O(ka*ka)+O(C*C))));Ma=O(O(O(lc*ma)+O(O(fc*la)+O($b*na)))+O(O(me*E)+O(O(ne*$)+O(Tc*aa))));Sa=O(O(O(nc*pa)+O(O(hc*oa)+O(bc*qa)))+O(O(oe*B)+O(O(pe*K)+O(Uc*M))));Wa=O(O(O(pc*sa)+O(O(jc*ra)+O(dc*ta)))+O(O(qe*x)+O(O(re*A)+O(Vc*t))));_a=O(O(O(zc*va)+O(O(xc*ua)+O(vc*wa)))+O(O(se*m)+O(O(te*j)+O(xe*i))));if(pb){Ja=O(O(Ob*la)-O(Wb*ma));Ka=O(O(Sb*ma)-O(Ob*na));La=O(O(Wb*na)-O(Sb*la));E=O(O(Wc*Ja)+O(O(Xc*Ka)+O(Yc*La)));L[c+188>>2]=E;Na=O(O(Pb*oa)-O(Xb*pa));Pa=O(O(Tb*pa)-O(Pb*qa));Qa=O(O(Xb*qa)-O(Tb*oa));$=O(O(cd*Na)+O(O(dd*Pa)+O(ed*Qa)));L[c+184>>2]=$;Ta=O(O(Qb*ra)-O(Yb*sa));Ua=O(O(Ub*sa)-O(Qb*ta));Va=O(O(Yb*ta)-O(Ub*ra));aa=O(O(kd*Ta)+O(O(ld*Ua)+O(md*Va)));L[c+180>>2]=aa;Xa=O(O(Rb*ua)-O(Zb*va));Ya=O(O(Vb*va)-O(Rb*wa));Za=O(O(Zb*wa)-O(Vb*ua));B=O(O(sd*Xa)+O(O(td*Ya)+O(ud*Za)));L[c+176>>2]=B;K=O(O(Zc*Ja)+O(O(_c*Ka)+O($c*La)));L[c+172>>2]=K;M=O(O(fd*Na)+O(O(gd*Pa)+O(hd*Qa)));L[c+168>>2]=M;x=O(O(nd*Ta)+O(O(od*Ua)+O(pd*Va)));L[c+164>>2]=x;A=O(O(vd*Xa)+O(O(wd*Ya)+O(xd*Za)));L[c+160>>2]=A;t=O(O(ad*Ja)+O(O(bd*Ka)+O(Kc*La)));L[c+156>>2]=t;m=O(O(id*Na)+O(O(jd*Pa)+O(Lc*Qa)));L[c+152>>2]=m;j=O(O(qd*Ta)+O(O(rd*Ua)+O(Mc*Va)));L[c+148>>2]=j;i=O(O(yd*Xa)+O(O(zd*Ya)+O(ue*Za)));L[c+144>>2]=i;Da=O(Da+O(Xe+O(O(E*E)+O(O(K*K)+O(t*t)))));Ea=O(Ea+O(Ye+O(O($*$)+O(O(M*M)+O(m*m)))));Fa=O(Fa+O(Ze+O(O(aa*aa)+O(O(x*x)+O(j*j)))));Sa=O(Sa-O(O(O(oc*pa)+O(O(ic*oa)+O(cc*qa)))+O(O(ge*Na)+O(O(he*Pa)+O(Rc*Qa)))));Wa=O(Wa-O(O(O(qc*sa)+O(O(kc*ra)+O(ec*ta)))+O(O(ie*Ta)+O(O(je*Ua)+O(Sc*Va)))));_a=O(_a-O(O(O(Ac*va)+O(O(yc*ua)+O(wc*wa)))+O(O(ke*Xa)+O(O(le*Ya)+O(we*Za)))));Ma=O(Ma-O(O(O(mc*ma)+O(O(gc*la)+O(ac*na)))+O(O(ee*Ja)+O(O(fe*Ka)+O(Qc*La)))));Ga=O(Ga+O(_e+O(O(B*B)+O(O(A*A)+O(i*i)))))}S=1-S|0;H[c+96>>2]=0;H[c+100>>2]=0;L[c+92>>2]=hb;L[c+88>>2]=kb;L[c+84>>2]=nb;L[c+80>>2]=Ba;L[c+76>>2]=ib;L[c+72>>2]=lb;L[c+68>>2]=ob;L[c+64>>2]=ka;L[c+60>>2]=jb;L[c+56>>2]=mb;L[c+52>>2]=Aa;L[c+48>>2]=C;H[c+104>>2]=0;H[c+108>>2]=0;L[c+124>>2]=-(Da>O(0)?O(O(1)/Da):O(0));L[c+120>>2]=-(Ea>O(0)?O(O(1)/Ea):O(0));L[c+116>>2]=-(Fa>O(0)?O(O(1)/Fa):O(0));L[c+112>>2]=-(Ga>O(0)?O(O(1)/Ga):O(0));L[c+140>>2]=O(O(O($e*ma)+O(ab*la))+O(bb*na))-Ma;L[c+136>>2]=O(O(O(cb*pa)+O(db*oa))+O(eb*qa))-Sa;L[c+132>>2]=O(O(O(fb*sa)+O(gb*ra))+O(xa*ta))-Wa;L[c+128>>2]=O(O(O(ya*va)+O(Q*ua))+O(R*wa))-_a;L[c+44>>2]=na;L[c+40>>2]=qa;L[c+36>>2]=ta;L[c+32>>2]=wa;L[c+28>>2]=la;L[c+24>>2]=oa;L[c+20>>2]=ra;L[c+16>>2]=ua;L[c+12>>2]=ma;L[c+8>>2]=pa;L[c+4>>2]=sa;L[c>>2]=va;y=c+Nf|0;c=y;_=_+1|0;if((Ca|0)!=(_|0)){continue}break}v:{if(h&1){g=l;_=r;r=h;break v}_=r+1|0;g=65535;s=0;c=l;w:{if((c|0)==65535){break w}while(1){p=N(c,44)+b|0;g=I[p+4133|0];if((g|0)==(_|0)){g=65535;_=0;c=J[p+4130>>1];if((c|0)!=65535){continue}break w}break}s=(c|0)!=65535&g>>>0>_>>>0;g=c}z=l;$a=r;r=s^1|h}x:{if(h&2){p=a;Z=D;break x}Z=D+1|0;T=2;p=a;y:{if((a|0)==65535){p=65535;break y}z:{while(1){l=N(p,44)+b|0;c=I[l+4133|0];if((c|0)!=(Z|0)){break z}Z=0;p=J[l+4130>>1];if((p|0)!=65535){continue}break}p=65535;break y}if((p|0)==65535){p=65535;break y}T=(c>>>0<=Z>>>0)<<1}r=r|T;ja=a;sb=D}A:{if(h&4){s=n;T=P;break A}T=P+1|0;l=4;s=n;B:{if((n|0)==65535){s=65535;break B}C:{while(1){c=N(s,44)+b|0;a=I[c+4133|0];if((a|0)!=(T|0)){break C}T=0;s=J[c+4130>>1];if((s|0)!=65535){continue}break}s=65535;break B}if((s|0)==65535){s=65535;break B}l=(a>>>0<=T>>>0)<<2}r=l|r;v=n;tb=P}rb=(h|0)!=15;if(h&8){h=r}else{a=ub+1|0;D=8;c=u;D:{if((c|0)==65535){c=65535;break D}E:{while(1){l=N(c,44)+b|0;h=I[l+4133|0];if((h|0)!=(a|0)){break E}a=0;c=J[l+4130>>1];if((c|0)!=65535){continue}break}c=65535;break D}if((c|0)==65535){c=65535;break D}D=(a>>>0>=h>>>0)<<3}w=u;vb=ub;ub=a;u=c;h=r|D}c=o;r=_;l=g;D=Z;a=p;P=T;n=s;if(rb){continue}break}}za=za+1|0;if((_b|0)==(za|0)){break i}c=H[k+680>>2];p=H[k+504>>2];s=H[k+328>>2];S=H[k+152>>2];continue}}a=H[q+44>>2]+Ha|0;H[a>>2]=0;H[a+4>>2]=-1;n=2}Oa=q+208|0;return n}function Jl(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;H[a>>2]=106596;b=H[a+476>>2];if(b){Ra[H[H[b>>2]+16>>2]](b)}b=H[a+3932>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}if(H[a+3920>>2]){c=0;e=Oa-32|0;Oa=e;H[e+24>>2]=0;H[e+16>>2]=0;H[e+20>>2]=0;g=a+3640|0;b=H[g+288>>2];if(b){while(1){H[e+8>>2]=b;a:{if((c&2147483647)>>>0<=d>>>0){b=0;c=H[e+24>>2]&2147483647;h=c?c<<1:1;b:{if(!h){break b}c=h<<2;if(!c){break b}b=H[33808];d=Ra[H[H[b>>2]+20>>2]](b)|0?36304:55639;b=Ra[H[H[b+12>>2]+8>>2]](b+12|0,c,d,13582,553)|0}d=H[e+20>>2];i=(d<<2)+b|0;if((d|0)>0){f=H[e+16>>2];c=b;while(1){H[c>>2]=H[f>>2];f=f+4|0;c=c+4|0;if(i>>>0>c>>>0){continue}break}}H[i>>2]=H[e+8>>2];c:{if(H[e+24>>2]<0){break c}c=H[e+16>>2];if(!c){break c}d=H[33808];Ra[H[H[d+12>>2]+12>>2]](d+12|0,c);d=H[e+20>>2]}H[e+24>>2]=h;H[e+16>>2]=b;break a}H[H[e+16>>2]+(d<<2)>>2]=b}H[e+20>>2]=d+1;b=H[H[g+288>>2]>>2];H[g+288>>2]=b;if(b){d=H[e+20>>2];c=H[e+24>>2];continue}break}d=H[e+20>>2];c=H[e+16>>2]}else{c=0}b=e+8|0;cm(c,d,b);cm(H[g+264>>2],H[g+268>>2],b);b=H[g+268>>2];if(b){f=H[g+264>>2];i=f+(b<<2)|0;d=H[e+16>>2];while(1){h=H[g+276>>2];d:{if(!h){break d}c=H[f>>2];j=(h<<4)-16|0;if(j&16){b=c}else{e:{if(!((H[e+16>>2]+(H[e+20>>2]<<2)|0)==(d|0)|(c|0)!=H[d>>2])){d=d+4|0;break e}Ra[H[H[c>>2]+12>>2]](c)|0}b=c+400|0}if(!j){break d}h=c+N(h,400)|0;while(1){f:{if(!((H[e+16>>2]+(H[e+20>>2]<<2)|0)==(d|0)|H[d>>2]!=(b|0))){d=d+4|0;break f}Ra[H[H[b>>2]+12>>2]](b)|0}c=b+400|0;g:{if(!((H[e+16>>2]+(H[e+20>>2]<<2)|0)==(d|0)|(c|0)!=H[d>>2])){d=d+4|0;break g}Ra[H[H[c>>2]+12>>2]](c)|0}b=b+800|0;if((h|0)!=(b|0)){continue}break}}f=f+4|0;if((i|0)!=(f|0)){continue}break}}b=H[e+24>>2];h:{if((b|0)<0|!(b&2147483647)){break h}b=H[e+16>>2];if(!b){break h}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}Oa=e+32|0}c=H[a+3908>>2];if(c){b=H[a+3904>>2];c=b+(c<<2)|0;while(1){d=H[b>>2];if(d){f=H[33808];Ra[H[H[f+12>>2]+12>>2]](f+12|0,d)}b=b+4|0;if((c|0)!=(b|0)){continue}break}}b=H[a+3912>>2];i:{if((b|0)<0|!(b&2147483647)){break i}b=H[a+3904>>2];if((b|0)==(a+3644|0)){F[a+3900|0]=0;break i}if(!b){break i}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+3636>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}if(H[a+3624>>2]){d=0;c=0;e=Oa-32|0;Oa=e;H[e+24>>2]=0;H[e+16>>2]=0;H[e+20>>2]=0;g=a+3344|0;b=H[g+288>>2];if(b){while(1){H[e+8>>2]=b;j:{if((c&2147483647)>>>0<=d>>>0){b=0;c=H[e+24>>2]&2147483647;h=c?c<<1:1;k:{if(!h){break k}c=h<<2;if(!c){break k}b=H[33808];d=Ra[H[H[b>>2]+20>>2]](b)|0?23760:55639;b=Ra[H[H[b+12>>2]+8>>2]](b+12|0,c,d,13582,553)|0}d=H[e+20>>2];i=(d<<2)+b|0;if((d|0)>0){f=H[e+16>>2];c=b;while(1){H[c>>2]=H[f>>2];f=f+4|0;c=c+4|0;if(i>>>0>c>>>0){continue}break}}H[i>>2]=H[e+8>>2];l:{if(H[e+24>>2]<0){break l}c=H[e+16>>2];if(!c){break l}d=H[33808];Ra[H[H[d+12>>2]+12>>2]](d+12|0,c);d=H[e+20>>2]}H[e+24>>2]=h;H[e+16>>2]=b;break j}H[H[e+16>>2]+(d<<2)>>2]=b}H[e+20>>2]=d+1;b=H[H[g+288>>2]>>2];H[g+288>>2]=b;if(b){d=H[e+20>>2];c=H[e+24>>2];continue}break}d=H[e+20>>2];c=H[e+16>>2]}else{c=0}b=e+8|0;dm(c,d,b);dm(H[g+264>>2],H[g+268>>2],b);b=H[g+268>>2];if(b){f=H[g+264>>2];i=f+(b<<2)|0;d=H[e+16>>2];while(1){h=H[g+276>>2];m:{if(!h){break m}c=H[f>>2];j=(h<<4)-16|0;if(j&16){b=c}else{n:{if(!((H[e+16>>2]+(H[e+20>>2]<<2)|0)==(d|0)|(c|0)!=H[d>>2])){d=d+4|0;break n}Ra[H[H[c>>2]+12>>2]](c)|0}b=c+400|0}if(!j){break m}h=c+N(h,400)|0;while(1){o:{if(!((H[e+16>>2]+(H[e+20>>2]<<2)|0)==(d|0)|H[d>>2]!=(b|0))){d=d+4|0;break o}Ra[H[H[b>>2]+12>>2]](b)|0}c=b+400|0;p:{if(!((H[e+16>>2]+(H[e+20>>2]<<2)|0)==(d|0)|(c|0)!=H[d>>2])){d=d+4|0;break p}Ra[H[H[c>>2]+12>>2]](c)|0}b=b+800|0;if((h|0)!=(b|0)){continue}break}}f=f+4|0;if((i|0)!=(f|0)){continue}break}}b=H[e+24>>2];q:{if((b|0)<0|!(b&2147483647)){break q}b=H[e+16>>2];if(!b){break q}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}Oa=e+32|0}c=H[a+3612>>2];if(c){b=H[a+3608>>2];c=b+(c<<2)|0;while(1){d=H[b>>2];if(d){f=H[33808];Ra[H[H[f+12>>2]+12>>2]](f+12|0,d)}b=b+4|0;if((c|0)!=(b|0)){continue}break}}b=H[a+3616>>2];r:{if((b|0)<0|!(b&2147483647)){break r}b=H[a+3608>>2];if((b|0)==(a+3348|0)){F[a+3604|0]=0;break r}if(!b){break r}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+3340>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}if(H[a+3328>>2]){d=0;c=0;e=Oa-32|0;Oa=e;H[e+24>>2]=0;H[e+16>>2]=0;H[e+20>>2]=0;g=a+3048|0;b=H[g+288>>2];if(b){while(1){H[e+8>>2]=b;s:{if((c&2147483647)>>>0<=d>>>0){b=0;c=H[e+24>>2]&2147483647;h=c?c<<1:1;t:{if(!h){break t}c=h<<2;if(!c){break t}b=H[33808];d=Ra[H[H[b>>2]+20>>2]](b)|0?34594:55639;b=Ra[H[H[b+12>>2]+8>>2]](b+12|0,c,d,13582,553)|0}d=H[e+20>>2];i=(d<<2)+b|0;if((d|0)>0){f=H[e+16>>2];c=b;while(1){H[c>>2]=H[f>>2];f=f+4|0;c=c+4|0;if(i>>>0>c>>>0){continue}break}}H[i>>2]=H[e+8>>2];u:{if(H[e+24>>2]<0){break u}c=H[e+16>>2];if(!c){break u}d=H[33808];Ra[H[H[d+12>>2]+12>>2]](d+12|0,c);d=H[e+20>>2]}H[e+24>>2]=h;H[e+16>>2]=b;break s}H[H[e+16>>2]+(d<<2)>>2]=b}H[e+20>>2]=d+1;b=H[H[g+288>>2]>>2];H[g+288>>2]=b;if(b){d=H[e+20>>2];c=H[e+24>>2];continue}break}d=H[e+20>>2];c=H[e+16>>2]}else{c=0}b=e+8|0;em(c,d,b);em(H[g+264>>2],H[g+268>>2],b);b=H[g+268>>2];if(b){f=H[g+264>>2];i=f+(b<<2)|0;d=H[e+16>>2];while(1){h=H[g+276>>2];v:{if(!h){break v}c=H[f>>2];j=(h<<7)-128|0;if(j&128){b=c}else{w:{if(!((H[e+16>>2]+(H[e+20>>2]<<2)|0)==(d|0)|(c|0)!=H[d>>2])){d=d+4|0;break w}Ra[H[H[c>>2]+12>>2]](c)|0}b=c+384|0}if(!j){break v}h=c+N(h,384)|0;while(1){x:{if(!((H[e+16>>2]+(H[e+20>>2]<<2)|0)==(d|0)|H[d>>2]!=(b|0))){d=d+4|0;break x}Ra[H[H[b>>2]+12>>2]](b)|0}c=b+384|0;y:{if(!((H[e+16>>2]+(H[e+20>>2]<<2)|0)==(d|0)|(c|0)!=H[d>>2])){d=d+4|0;break y}Ra[H[H[c>>2]+12>>2]](c)|0}b=b+768|0;if((h|0)!=(b|0)){continue}break}}f=f+4|0;if((i|0)!=(f|0)){continue}break}}b=H[e+24>>2];z:{if((b|0)<0|!(b&2147483647)){break z}b=H[e+16>>2];if(!b){break z}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}Oa=e+32|0}c=H[a+3316>>2];if(c){b=H[a+3312>>2];c=b+(c<<2)|0;while(1){d=H[b>>2];if(d){f=H[33808];Ra[H[H[f+12>>2]+12>>2]](f+12|0,d)}b=b+4|0;if((c|0)!=(b|0)){continue}break}}b=H[a+3320>>2];A:{if((b|0)<0|!(b&2147483647)){break A}b=H[a+3312>>2];if((b|0)==(a+3052|0)){F[a+3308|0]=0;break A}if(!b){break A}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+3044>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}if(H[a+3032>>2]){d=0;c=0;e=Oa-32|0;Oa=e;H[e+24>>2]=0;H[e+16>>2]=0;H[e+20>>2]=0;g=a+2752|0;b=H[g+288>>2];if(b){while(1){H[e+8>>2]=b;B:{if((c&2147483647)>>>0<=d>>>0){b=0;c=H[e+24>>2]&2147483647;h=c?c<<1:1;C:{if(!h){break C}c=h<<2;if(!c){break C}b=H[33808];d=Ra[H[H[b>>2]+20>>2]](b)|0?36464:55639;b=Ra[H[H[b+12>>2]+8>>2]](b+12|0,c,d,13582,553)|0}d=H[e+20>>2];i=(d<<2)+b|0;if((d|0)>0){f=H[e+16>>2];c=b;while(1){H[c>>2]=H[f>>2];f=f+4|0;c=c+4|0;if(i>>>0>c>>>0){continue}break}}H[i>>2]=H[e+8>>2];D:{if(H[e+24>>2]<0){break D}c=H[e+16>>2];if(!c){break D}d=H[33808];Ra[H[H[d+12>>2]+12>>2]](d+12|0,c);d=H[e+20>>2]}H[e+24>>2]=h;H[e+16>>2]=b;break B}H[H[e+16>>2]+(d<<2)>>2]=b}H[e+20>>2]=d+1;b=H[H[g+288>>2]>>2];H[g+288>>2]=b;if(b){d=H[e+20>>2];c=H[e+24>>2];continue}break}d=H[e+20>>2];c=H[e+16>>2]}else{c=0}b=e+8|0;fm(c,d,b);fm(H[g+264>>2],H[g+268>>2],b);b=H[g+268>>2];if(b){f=H[g+264>>2];i=f+(b<<2)|0;d=H[e+16>>2];while(1){h=H[g+276>>2];E:{if(!h){break E}c=H[f>>2];j=(h<<2)-4|0;if(j&4){b=c}else{F:{if(!((H[e+16>>2]+(H[e+20>>2]<<2)|0)==(d|0)|(c|0)!=H[d>>2])){d=d+4|0;break F}Ra[H[H[c>>2]+12>>2]](c)|0}b=c+132|0}if(!j){break E}h=c+N(h,132)|0;while(1){G:{if(!((H[e+16>>2]+(H[e+20>>2]<<2)|0)==(d|0)|H[d>>2]!=(b|0))){d=d+4|0;break G}Ra[H[H[b>>2]+12>>2]](b)|0}c=b+132|0;H:{if(!((H[e+16>>2]+(H[e+20>>2]<<2)|0)==(d|0)|(c|0)!=H[d>>2])){d=d+4|0;break H}Ra[H[H[c>>2]+12>>2]](c)|0}b=b+264|0;if((h|0)!=(b|0)){continue}break}}f=f+4|0;if((i|0)!=(f|0)){continue}break}}b=H[e+24>>2];I:{if((b|0)<0|!(b&2147483647)){break I}b=H[e+16>>2];if(!b){break I}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}Oa=e+32|0}c=H[a+3020>>2];if(c){b=H[a+3016>>2];c=b+(c<<2)|0;while(1){d=H[b>>2];if(d){f=H[33808];Ra[H[H[f+12>>2]+12>>2]](f+12|0,d)}b=b+4|0;if((c|0)!=(b|0)){continue}break}}b=H[a+3024>>2];J:{if((b|0)<0|!(b&2147483647)){break J}b=H[a+3016>>2];if((b|0)==(a+2756|0)){F[a+3012|0]=0;break J}if(!b){break J}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+2748>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}if(H[a+2736>>2]){d=0;c=0;e=Oa-32|0;Oa=e;H[e+24>>2]=0;H[e+16>>2]=0;H[e+20>>2]=0;g=a+2456|0;b=H[g+288>>2];if(b){while(1){H[e+8>>2]=b;K:{if((c&2147483647)>>>0<=d>>>0){b=0;c=H[e+24>>2]&2147483647;h=c?c<<1:1;L:{if(!h){break L}c=h<<2;if(!c){break L}b=H[33808];d=Ra[H[H[b>>2]+20>>2]](b)|0?32646:55639;b=Ra[H[H[b+12>>2]+8>>2]](b+12|0,c,d,13582,553)|0}d=H[e+20>>2];i=(d<<2)+b|0;if((d|0)>0){f=H[e+16>>2];c=b;while(1){H[c>>2]=H[f>>2];f=f+4|0;c=c+4|0;if(i>>>0>c>>>0){continue}break}}H[i>>2]=H[e+8>>2];M:{if(H[e+24>>2]<0){break M}c=H[e+16>>2];if(!c){break M}d=H[33808];Ra[H[H[d+12>>2]+12>>2]](d+12|0,c);d=H[e+20>>2]}H[e+24>>2]=h;H[e+16>>2]=b;break K}H[H[e+16>>2]+(d<<2)>>2]=b}H[e+20>>2]=d+1;b=H[H[g+288>>2]>>2];H[g+288>>2]=b;if(b){d=H[e+20>>2];c=H[e+24>>2];continue}break}d=H[e+20>>2];c=H[e+16>>2]}else{c=0}b=e+8|0;gm(c,d,b);gm(H[g+264>>2],H[g+268>>2],b);b=H[g+268>>2];if(b){f=H[g+264>>2];i=f+(b<<2)|0;d=H[e+16>>2];while(1){h=H[g+276>>2];N:{if(!h){break N}c=H[f>>2];j=(h<<3)-8|0;if(j&8){b=c}else{O:{if(!((H[e+16>>2]+(H[e+20>>2]<<2)|0)==(d|0)|(c|0)!=H[d>>2])){d=d+4|0;break O}Ra[H[H[c>>2]+12>>2]](c)|0}b=c+120|0}if(!j){break N}h=c+N(h,120)|0;while(1){P:{if(!((H[e+16>>2]+(H[e+20>>2]<<2)|0)==(d|0)|H[d>>2]!=(b|0))){d=d+4|0;break P}Ra[H[H[b>>2]+12>>2]](b)|0}c=b+120|0;Q:{if(!((H[e+16>>2]+(H[e+20>>2]<<2)|0)==(d|0)|(c|0)!=H[d>>2])){d=d+4|0;break Q}Ra[H[H[c>>2]+12>>2]](c)|0}b=b+240|0;if((h|0)!=(b|0)){continue}break}}f=f+4|0;if((i|0)!=(f|0)){continue}break}}b=H[e+24>>2];R:{if((b|0)<0|!(b&2147483647)){break R}b=H[e+16>>2];if(!b){break R}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}Oa=e+32|0}c=H[a+2724>>2];if(c){b=H[a+2720>>2];c=b+(c<<2)|0;while(1){d=H[b>>2];if(d){f=H[33808];Ra[H[H[f+12>>2]+12>>2]](f+12|0,d)}b=b+4|0;if((c|0)!=(b|0)){continue}break}}b=H[a+2728>>2];S:{if((b|0)<0|!(b&2147483647)){break S}b=H[a+2720>>2];if((b|0)==(a+2460|0)){F[a+2716|0]=0;break S}if(!b){break S}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+2452>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}if(H[a+2440>>2]){d=0;c=0;e=Oa-32|0;Oa=e;H[e+24>>2]=0;H[e+16>>2]=0;H[e+20>>2]=0;g=a+2160|0;b=H[g+288>>2];if(b){while(1){H[e+8>>2]=b;T:{if((c&2147483647)>>>0<=d>>>0){b=0;c=H[e+24>>2]&2147483647;h=c?c<<1:1;U:{if(!h){break U}c=h<<2;if(!c){break U}b=H[33808];d=Ra[H[H[b>>2]+20>>2]](b)|0?34486:55639;b=Ra[H[H[b+12>>2]+8>>2]](b+12|0,c,d,13582,553)|0}d=H[e+20>>2];i=(d<<2)+b|0;if((d|0)>0){f=H[e+16>>2];c=b;while(1){H[c>>2]=H[f>>2];f=f+4|0;c=c+4|0;if(i>>>0>c>>>0){continue}break}}H[i>>2]=H[e+8>>2];V:{if(H[e+24>>2]<0){break V}c=H[e+16>>2];if(!c){break V}d=H[33808];Ra[H[H[d+12>>2]+12>>2]](d+12|0,c);d=H[e+20>>2]}H[e+24>>2]=h;H[e+16>>2]=b;break T}H[H[e+16>>2]+(d<<2)>>2]=b}H[e+20>>2]=d+1;b=H[H[g+288>>2]>>2];H[g+288>>2]=b;if(b){d=H[e+20>>2];c=H[e+24>>2];continue}break}d=H[e+20>>2];c=H[e+16>>2]}else{c=0}b=e+8|0;hm(c,d,b);hm(H[g+264>>2],H[g+268>>2],b);b=H[g+268>>2];if(b){f=H[g+264>>2];h=f+(b<<2)|0;d=H[e+16>>2];while(1){b=H[g+276>>2];W:{if(!b){break W}c=H[f>>2];i=b<<6;j=i+-64|0;if(j&64){b=c}else{X:{if(!((H[e+16>>2]+(H[e+20>>2]<<2)|0)==(d|0)|(c|0)!=H[d>>2])){d=d+4|0;break X}Ra[H[H[c>>2]+12>>2]](c)|0}b=c- -64|0}if(!j){break W}i=c+i|0;while(1){Y:{if(!((H[e+16>>2]+(H[e+20>>2]<<2)|0)==(d|0)|H[d>>2]!=(b|0))){d=d+4|0;break Y}Ra[H[H[b>>2]+12>>2]](b)|0}c=b- -64|0;Z:{if(!((H[e+16>>2]+(H[e+20>>2]<<2)|0)==(d|0)|(c|0)!=H[d>>2])){d=d+4|0;break Z}Ra[H[H[c>>2]+12>>2]](c)|0}b=b+128|0;if((i|0)!=(b|0)){continue}break}}f=f+4|0;if((h|0)!=(f|0)){continue}break}}b=H[e+24>>2];_:{if((b|0)<0|!(b&2147483647)){break _}b=H[e+16>>2];if(!b){break _}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}Oa=e+32|0}c=H[a+2428>>2];if(c){b=H[a+2424>>2];c=b+(c<<2)|0;while(1){d=H[b>>2];if(d){f=H[33808];Ra[H[H[f+12>>2]+12>>2]](f+12|0,d)}b=b+4|0;if((c|0)!=(b|0)){continue}break}}b=H[a+2432>>2];$:{if((b|0)<0|!(b&2147483647)){break $}b=H[a+2424>>2];if((b|0)==(a+2164|0)){F[a+2420|0]=0;break $}if(!b){break $}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+2156>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}if(H[a+2144>>2]){d=0;c=0;e=Oa-32|0;Oa=e;H[e+24>>2]=0;H[e+16>>2]=0;H[e+20>>2]=0;g=a+1864|0;b=H[g+288>>2];if(b){while(1){H[e+8>>2]=b;aa:{if((c&2147483647)>>>0<=d>>>0){b=0;c=H[e+24>>2]&2147483647;h=c?c<<1:1;ba:{if(!h){break ba}c=h<<2;if(!c){break ba}b=H[33808];d=Ra[H[H[b>>2]+20>>2]](b)|0?24764:55639;b=Ra[H[H[b+12>>2]+8>>2]](b+12|0,c,d,13582,553)|0}d=H[e+20>>2];i=(d<<2)+b|0;if((d|0)>0){f=H[e+16>>2];c=b;while(1){H[c>>2]=H[f>>2];f=f+4|0;c=c+4|0;if(i>>>0>c>>>0){continue}break}}H[i>>2]=H[e+8>>2];ca:{if(H[e+24>>2]<0){break ca}c=H[e+16>>2];if(!c){break ca}d=H[33808];Ra[H[H[d+12>>2]+12>>2]](d+12|0,c);d=H[e+20>>2]}H[e+24>>2]=h;H[e+16>>2]=b;break aa}H[H[e+16>>2]+(d<<2)>>2]=b}H[e+20>>2]=d+1;b=H[H[g+288>>2]>>2];H[g+288>>2]=b;if(b){d=H[e+20>>2];c=H[e+24>>2];continue}break}d=H[e+20>>2];c=H[e+16>>2]}else{c=0}b=e+8|0;im(c,d,b);im(H[g+264>>2],H[g+268>>2],b);b=H[g+268>>2];if(b){f=H[g+264>>2];i=f+(b<<2)|0;d=H[e+16>>2];while(1){h=H[g+276>>2];da:{if(!h){break da}c=H[f>>2];j=(h<<2)-4|0;if(j&4){b=c}else{ea:{if(!((H[e+16>>2]+(H[e+20>>2]<<2)|0)==(d|0)|(c|0)!=H[d>>2])){d=d+4|0;break ea}Ra[H[H[c>>2]+12>>2]](c)|0}b=c+124|0}if(!j){break da}h=c+N(h,124)|0;while(1){fa:{if(!((H[e+16>>2]+(H[e+20>>2]<<2)|0)==(d|0)|H[d>>2]!=(b|0))){d=d+4|0;break fa}Ra[H[H[b>>2]+12>>2]](b)|0}c=b+124|0;ga:{if(!((H[e+16>>2]+(H[e+20>>2]<<2)|0)==(d|0)|(c|0)!=H[d>>2])){d=d+4|0;break ga}Ra[H[H[c>>2]+12>>2]](c)|0}b=b+248|0;if((h|0)!=(b|0)){continue}break}}f=f+4|0;if((i|0)!=(f|0)){continue}break}}b=H[e+24>>2];ha:{if((b|0)<0|!(b&2147483647)){break ha}b=H[e+16>>2];if(!b){break ha}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}Oa=e+32|0}c=H[a+2132>>2];if(c){b=H[a+2128>>2];c=b+(c<<2)|0;while(1){d=H[b>>2];if(d){f=H[33808];Ra[H[H[f+12>>2]+12>>2]](f+12|0,d)}b=b+4|0;if((c|0)!=(b|0)){continue}break}}b=H[a+2136>>2];ia:{if((b|0)<0|!(b&2147483647)){break ia}b=H[a+2128>>2];if((b|0)==(a+1868|0)){F[a+2124|0]=0;break ia}if(!b){break ia}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+1860>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}if(H[a+1848>>2]){d=0;c=0;e=Oa-32|0;Oa=e;H[e+24>>2]=0;H[e+16>>2]=0;H[e+20>>2]=0;g=a+1568|0;b=H[g+288>>2];if(b){while(1){H[e+8>>2]=b;ja:{if((c&2147483647)>>>0<=d>>>0){b=0;c=H[e+24>>2]&2147483647;h=c?c<<1:1;ka:{if(!h){break ka}c=h<<2;if(!c){break ka}b=H[33808];d=Ra[H[H[b>>2]+20>>2]](b)|0?36614:55639;b=Ra[H[H[b+12>>2]+8>>2]](b+12|0,c,d,13582,553)|0}d=H[e+20>>2];i=(d<<2)+b|0;if((d|0)>0){f=H[e+16>>2];c=b;while(1){H[c>>2]=H[f>>2];f=f+4|0;c=c+4|0;if(i>>>0>c>>>0){continue}break}}H[i>>2]=H[e+8>>2];la:{if(H[e+24>>2]<0){break la}c=H[e+16>>2];if(!c){break la}d=H[33808];Ra[H[H[d+12>>2]+12>>2]](d+12|0,c);d=H[e+20>>2]}H[e+24>>2]=h;H[e+16>>2]=b;break ja}H[H[e+16>>2]+(d<<2)>>2]=b}H[e+20>>2]=d+1;b=H[H[g+288>>2]>>2];H[g+288>>2]=b;if(b){d=H[e+20>>2];c=H[e+24>>2];continue}break}d=H[e+20>>2];c=H[e+16>>2]}else{c=0}b=e+8|0;jm(c,d,b);jm(H[g+264>>2],H[g+268>>2],b);b=H[g+268>>2];if(b){f=H[g+264>>2];i=f+(b<<2)|0;d=H[e+16>>2];while(1){h=H[g+276>>2];ma:{if(!h){break ma}c=H[f>>2];j=(h<<2)-4|0;if(j&4){b=c}else{na:{if(!((H[e+16>>2]+(H[e+20>>2]<<2)|0)==(d|0)|(c|0)!=H[d>>2])){d=d+4|0;break na}Ra[H[H[c>>2]+12>>2]](c)|0}b=c+44|0}if(!j){break ma}h=c+N(h,44)|0;while(1){oa:{if(!((H[e+16>>2]+(H[e+20>>2]<<2)|0)==(d|0)|H[d>>2]!=(b|0))){d=d+4|0;break oa}Ra[H[H[b>>2]+12>>2]](b)|0}c=b+44|0;pa:{if(!((H[e+16>>2]+(H[e+20>>2]<<2)|0)==(d|0)|(c|0)!=H[d>>2])){d=d+4|0;break pa}Ra[H[H[c>>2]+12>>2]](c)|0}b=b+88|0;if((h|0)!=(b|0)){continue}break}}f=f+4|0;if((i|0)!=(f|0)){continue}break}}b=H[e+24>>2];qa:{if((b|0)<0|!(b&2147483647)){break qa}b=H[e+16>>2];if(!b){break qa}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}Oa=e+32|0}c=H[a+1836>>2];if(c){b=H[a+1832>>2];c=b+(c<<2)|0;while(1){d=H[b>>2];if(d){f=H[33808];Ra[H[H[f+12>>2]+12>>2]](f+12|0,d)}b=b+4|0;if((c|0)!=(b|0)){continue}break}}b=H[a+1840>>2];ra:{if((b|0)<0|!(b&2147483647)){break ra}b=H[a+1832>>2];if((b|0)==(a+1572|0)){F[a+1828|0]=0;break ra}if(!b){break ra}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+1564>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}if(H[a+1552>>2]){d=0;c=0;e=Oa-32|0;Oa=e;H[e+24>>2]=0;H[e+16>>2]=0;H[e+20>>2]=0;g=a+1272|0;b=H[g+288>>2];if(b){while(1){H[e+8>>2]=b;sa:{if((c&2147483647)>>>0<=d>>>0){b=0;c=H[e+24>>2]&2147483647;h=c?c<<1:1;ta:{if(!h){break ta}c=h<<2;if(!c){break ta}b=H[33808];d=Ra[H[H[b>>2]+20>>2]](b)|0?37318:55639;b=Ra[H[H[b+12>>2]+8>>2]](b+12|0,c,d,13582,553)|0}d=H[e+20>>2];i=(d<<2)+b|0;if((d|0)>0){f=H[e+16>>2];c=b;while(1){H[c>>2]=H[f>>2];f=f+4|0;c=c+4|0;if(i>>>0>c>>>0){continue}break}}H[i>>2]=H[e+8>>2];ua:{if(H[e+24>>2]<0){break ua}c=H[e+16>>2];if(!c){break ua}d=H[33808];Ra[H[H[d+12>>2]+12>>2]](d+12|0,c);d=H[e+20>>2]}H[e+24>>2]=h;H[e+16>>2]=b;break sa}H[H[e+16>>2]+(d<<2)>>2]=b}H[e+20>>2]=d+1;b=H[H[g+288>>2]>>2];H[g+288>>2]=b;if(b){d=H[e+20>>2];c=H[e+24>>2];continue}break}d=H[e+20>>2];c=H[e+16>>2]}else{c=0}b=e+8|0;km(c,d,b);km(H[g+264>>2],H[g+268>>2],b);b=H[g+268>>2];if(b){f=H[g+264>>2];i=f+(b<<2)|0;d=H[e+16>>2];while(1){h=H[g+276>>2];va:{if(!h){break va}c=H[f>>2];j=(h<<4)-16|0;if(j&16){b=c}else{wa:{if(!((H[e+16>>2]+(H[e+20>>2]<<2)|0)==(d|0)|(c|0)!=H[d>>2])){d=d+4|0;break wa}Ra[H[H[c>>2]+12>>2]](c)|0}b=c+208|0}if(!j){break va}h=c+N(h,208)|0;while(1){xa:{if(!((H[e+16>>2]+(H[e+20>>2]<<2)|0)==(d|0)|H[d>>2]!=(b|0))){d=d+4|0;break xa}Ra[H[H[b>>2]+12>>2]](b)|0}c=b+208|0;ya:{if(!((H[e+16>>2]+(H[e+20>>2]<<2)|0)==(d|0)|(c|0)!=H[d>>2])){d=d+4|0;break ya}Ra[H[H[c>>2]+12>>2]](c)|0}b=b+416|0;if((h|0)!=(b|0)){continue}break}}f=f+4|0;if((i|0)!=(f|0)){continue}break}}b=H[e+24>>2];za:{if((b|0)<0|!(b&2147483647)){break za}b=H[e+16>>2];if(!b){break za}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}Oa=e+32|0}c=H[a+1540>>2];if(c){b=H[a+1536>>2];c=b+(c<<2)|0;while(1){d=H[b>>2];if(d){f=H[33808];Ra[H[H[f+12>>2]+12>>2]](f+12|0,d)}b=b+4|0;if((c|0)!=(b|0)){continue}break}}b=H[a+1544>>2];Aa:{if((b|0)<0|!(b&2147483647)){break Aa}b=H[a+1536>>2];if((b|0)==(a+1276|0)){F[a+1532|0]=0;break Aa}if(!b){break Aa}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+1268>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}if(H[a+1256>>2]){d=0;c=0;e=Oa-32|0;Oa=e;H[e+24>>2]=0;H[e+16>>2]=0;H[e+20>>2]=0;g=a+976|0;b=H[g+288>>2];if(b){while(1){H[e+8>>2]=b;Ba:{if((c&2147483647)>>>0<=d>>>0){b=0;c=H[e+24>>2]&2147483647;h=c?c<<1:1;Ca:{if(!h){break Ca}c=h<<2;if(!c){break Ca}b=H[33808];d=Ra[H[H[b>>2]+20>>2]](b)|0?40352:55639;b=Ra[H[H[b+12>>2]+8>>2]](b+12|0,c,d,13582,553)|0}d=H[e+20>>2];i=(d<<2)+b|0;if((d|0)>0){f=H[e+16>>2];c=b;while(1){H[c>>2]=H[f>>2];f=f+4|0;c=c+4|0;if(i>>>0>c>>>0){continue}break}}H[i>>2]=H[e+8>>2];Da:{if(H[e+24>>2]<0){break Da}c=H[e+16>>2];if(!c){break Da}d=H[33808];Ra[H[H[d+12>>2]+12>>2]](d+12|0,c);d=H[e+20>>2]}H[e+24>>2]=h;H[e+16>>2]=b;break Ba}H[H[e+16>>2]+(d<<2)>>2]=b}H[e+20>>2]=d+1;b=H[H[g+288>>2]>>2];H[g+288>>2]=b;if(b){d=H[e+20>>2];c=H[e+24>>2];continue}break}d=H[e+20>>2];c=H[e+16>>2]}else{c=0}b=e+8|0;lm(c,d,b);lm(H[g+264>>2],H[g+268>>2],b);b=H[g+268>>2];if(b){f=H[g+264>>2];i=f+(b<<2)|0;d=H[e+16>>2];while(1){h=H[g+276>>2];Ea:{if(!h){break Ea}c=H[f>>2];j=(h<<4)-16|0;if(j&16){b=c}else{Fa:{if(!((H[e+16>>2]+(H[e+20>>2]<<2)|0)==(d|0)|(c|0)!=H[d>>2])){d=d+4|0;break Fa}Ra[H[H[c>>2]+12>>2]](c)|0}b=c+112|0}if(!j){break Ea}h=c+N(h,112)|0;while(1){Ga:{if(!((H[e+16>>2]+(H[e+20>>2]<<2)|0)==(d|0)|H[d>>2]!=(b|0))){d=d+4|0;break Ga}Ra[H[H[b>>2]+12>>2]](b)|0}c=b+112|0;Ha:{if(!((H[e+16>>2]+(H[e+20>>2]<<2)|0)==(d|0)|(c|0)!=H[d>>2])){d=d+4|0;break Ha}Ra[H[H[c>>2]+12>>2]](c)|0}b=b+224|0;if((h|0)!=(b|0)){continue}break}}f=f+4|0;if((i|0)!=(f|0)){continue}break}}b=H[e+24>>2];Ia:{if((b|0)<0|!(b&2147483647)){break Ia}b=H[e+16>>2];if(!b){break Ia}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}Oa=e+32|0}c=H[a+1244>>2];if(c){b=H[a+1240>>2];c=b+(c<<2)|0;while(1){d=H[b>>2];if(d){f=H[33808];Ra[H[H[f+12>>2]+12>>2]](f+12|0,d)}b=b+4|0;if((c|0)!=(b|0)){continue}break}}b=H[a+1248>>2];Ja:{if((b|0)<0|!(b&2147483647)){break Ja}b=H[a+1240>>2];if((b|0)==(a+980|0)){F[a+1236|0]=0;break Ja}if(!b){break Ja}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+972>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}if(H[a+960>>2]){d=0;c=0;f=Oa-32|0;Oa=f;H[f+24>>2]=0;H[f+16>>2]=0;H[f+20>>2]=0;b=H[a+968>>2];if(b){while(1){H[f+8>>2]=b;Ka:{if((c&2147483647)>>>0<=d>>>0){b=0;c=H[f+24>>2]&2147483647;g=c?c<<1:1;La:{if(!g){break La}c=g<<2;if(!c){break La}b=H[33808];d=Ra[H[H[b>>2]+20>>2]](b)|0?40466:55639;b=Ra[H[H[b+12>>2]+8>>2]](b+12|0,c,d,13582,553)|0}d=H[f+20>>2];h=(d<<2)+b|0;if((d|0)>0){e=H[f+16>>2];c=b;while(1){H[c>>2]=H[e>>2];e=e+4|0;c=c+4|0;if(h>>>0>c>>>0){continue}break}}H[h>>2]=H[f+8>>2];Ma:{if(H[f+24>>2]<0){break Ma}c=H[f+16>>2];if(!c){break Ma}d=H[33808];Ra[H[H[d+12>>2]+12>>2]](d+12|0,c);d=H[f+20>>2]}H[f+24>>2]=g;H[f+16>>2]=b;break Ka}H[H[f+16>>2]+(d<<2)>>2]=b}H[f+20>>2]=d+1;b=H[H[a+968>>2]>>2];H[a+968>>2]=b;if(b){d=H[f+20>>2];c=H[f+24>>2];continue}break}d=H[f+20>>2];c=H[f+16>>2]}else{c=0}b=f+8|0;mm(c,d,b);mm(H[a+944>>2],H[a+948>>2],b);b=H[a+948>>2];if(b){e=H[a+944>>2];h=e+(b<<2)|0;d=H[f+16>>2];while(1){g=H[a+956>>2];Na:{if(!g){break Na}c=H[e>>2];i=(g<<6)+-64|0;if(i&64){b=c}else{Oa:{if(!((H[f+16>>2]+(H[f+20>>2]<<2)|0)==(d|0)|(c|0)!=H[d>>2])){d=d+4|0;break Oa}Ra[H[H[c>>2]+12>>2]](c)|0}b=c+320|0}if(!i){break Na}g=c+N(g,320)|0;while(1){Pa:{if(!((H[f+16>>2]+(H[f+20>>2]<<2)|0)==(d|0)|H[d>>2]!=(b|0))){d=d+4|0;break Pa}Ra[H[H[b>>2]+12>>2]](b)|0}c=b+320|0;Qa:{if(!((H[f+16>>2]+(H[f+20>>2]<<2)|0)==(d|0)|(c|0)!=H[d>>2])){d=d+4|0;break Qa}Ra[H[H[c>>2]+12>>2]](c)|0}b=b+640|0;if((g|0)!=(b|0)){continue}break}}e=e+4|0;if((h|0)!=(e|0)){continue}break}}b=H[f+24>>2];Ra:{if((b|0)<0|!(b&2147483647)){break Ra}b=H[f+16>>2];if(!b){break Ra}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}Oa=f+32|0}c=H[a+948>>2];if(c){b=H[a+944>>2];c=b+(c<<2)|0;while(1){d=H[b>>2];if(d){f=H[33808];Ra[H[H[f+12>>2]+12>>2]](f+12|0,d)}b=b+4|0;if((c|0)!=(b|0)){continue}break}}b=H[a+952>>2];Sa:{if((b|0)<0|!(b&2147483647)){break Sa}b=H[a+944>>2];if((b|0)==(a+684|0)){F[a+940|0]=0;break Sa}if(!b){break Sa}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+640>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+600>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+560>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+520>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+480>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+472>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}if(H[a+460>>2]){b=0;d=0;f=Oa-32|0;Oa=f;H[f+24>>2]=0;H[f+16>>2]=0;H[f+20>>2]=0;c=H[a+468>>2];if(c){while(1){H[f+8>>2]=c;Ta:{if((d&2147483647)>>>0<=b>>>0){b=0;c=H[f+24>>2]&2147483647;g=c?c<<1:1;Ua:{if(!g){break Ua}c=g<<2;if(!c){break Ua}b=H[33808];d=Ra[H[H[b>>2]+20>>2]](b)|0?21696:55639;b=Ra[H[H[b+12>>2]+8>>2]](b+12|0,c,d,13582,553)|0}d=H[f+20>>2];h=(d<<2)+b|0;if((d|0)>0){e=H[f+16>>2];c=b;while(1){H[c>>2]=H[e>>2];e=e+4|0;c=c+4|0;if(h>>>0>c>>>0){continue}break}}H[h>>2]=H[f+8>>2];Va:{if(H[f+24>>2]<0){break Va}c=H[f+16>>2];if(!c){break Va}d=H[33808];Ra[H[H[d+12>>2]+12>>2]](d+12|0,c);d=H[f+20>>2]}H[f+24>>2]=g;H[f+16>>2]=b;H[f+20>>2]=d+1;break Ta}H[H[f+16>>2]+(b<<2)>>2]=c;H[f+20>>2]=b+1}c=H[H[a+468>>2]>>2];H[a+468>>2]=c;if(c){b=H[f+20>>2];d=H[f+24>>2];continue}break}b=H[f+20>>2];d=H[f+16>>2]}else{d=0}c=b;b=f+8|0;nm(d,c,b);nm(H[a+444>>2],H[a+448>>2],b);b=H[a+448>>2];if(b){d=H[a+444>>2];g=d+(b<<2)|0;b=H[f+16>>2];while(1){e=H[a+456>>2];if(e){c=H[d>>2];h=c+N(e,48)|0;while(1){Wa:{if(!((H[f+16>>2]+(H[f+20>>2]<<2)|0)==(b|0)|H[b>>2]!=(c|0))){b=b+4|0;break Wa}e=H[c+44>>2];if((e|0)<0|!(e&2147483647)){break Wa}e=H[c+36>>2];if((e|0)==(c|0)){F[c+32|0]=0;break Wa}if(!e){break Wa}i=H[33808]+12|0;Ra[H[H[i>>2]+12>>2]](i,e)}c=c+48|0;if((h|0)!=(c|0)){continue}break}}d=d+4|0;if((g|0)!=(d|0)){continue}break}}b=H[f+24>>2];Xa:{if((b|0)<0|!(b&2147483647)){break Xa}b=H[f+16>>2];if(!b){break Xa}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}Oa=f+32|0}c=H[a+448>>2];if(c){b=H[a+444>>2];c=b+(c<<2)|0;while(1){d=H[b>>2];if(d){f=H[33808];Ra[H[H[f+12>>2]+12>>2]](f+12|0,d)}b=b+4|0;if((c|0)!=(b|0)){continue}break}}b=H[a+452>>2];Ya:{if((b|0)<0|!(b&2147483647)){break Ya}b=H[a+444>>2];if((b|0)==(a+184|0)){F[a+440|0]=0;iU(a);return a|0}if(!b){break Ya}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}iU(a);return a|0}function qA(a,b,c,d,e,f,g,h,i){var j=0,k=O(0),l=O(0),m=O(0),n=O(0),o=0,p=O(0),q=0,r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=0,A=0,B=O(0),C=0,D=O(0),E=O(0),K=0,M=0,Q=O(0),R=O(0),T=O(0),U=0,V=0,X=0,Y=O(0),Z=0,_=O(0),$=O(0),aa=O(0),ba=0,ca=0,da=O(0),ea=O(0),fa=O(0),ga=O(0),ha=O(0),ia=O(0),ja=O(0),ka=0,la=O(0),ma=0,na=O(0),oa=O(0),pa=O(0),qa=O(0),ra=O(0),sa=0,ta=0,ua=O(0),va=O(0),wa=O(0),xa=O(0),ya=O(0),za=0,Aa=O(0),Ba=O(0),Ca=O(0),Da=O(0),Ea=O(0),Fa=O(0),Ga=O(0),Ha=O(0),Ia=O(0),Ja=0,Ka=O(0),La=O(0),Ma=O(0),Na=0,Pa=O(0),Qa=0,Sa=O(0),Ta=O(0),Ua=O(0),Va=O(0),Wa=O(0),Xa=O(0),Ya=O(0),Za=O(0),_a=O(0),$a=O(0),ab=O(0),bb=O(0),cb=O(0),db=O(0),eb=O(0),fb=O(0),gb=0,hb=O(0),ib=O(0),jb=O(0),kb=O(0),lb=O(0),mb=O(0),nb=O(0),ob=O(0),pb=O(0),qb=O(0),rb=O(0),sb=O(0),tb=O(0),ub=O(0),vb=O(0),wb=O(0),xb=O(0),yb=O(0),zb=O(0),Ab=O(0),Bb=O(0),Cb=O(0),Db=O(0),Eb=O(0),Fb=O(0),Gb=O(0),Hb=O(0),Ib=O(0),Jb=O(0),Kb=O(0),Lb=O(0),Mb=O(0),Nb=0,Ob=O(0),Pb=O(0),Qb=O(0),Rb=O(0),Sb=0,Tb=0;Z=Oa-32|0;Oa=Z;H[c+4112>>2]=0;H[Z+28>>2]=1065353216;H[Z+24>>2]=1065353216;H[Z+20>>2]=1065353216;H[Z+16>>2]=1065353216;ba=c+16|0;a:{if(H[a+100>>2]!=8){k=O(0);if(I[H[a+20>>2]+62|0]){break a}}k=L[a+4>>2]}L[a+4>>2]=k;b:{if(H[a+104>>2]!=8){k=O(0);if(I[H[a+24>>2]+62|0]){break b}}k=L[a+12>>2]}L[a+12>>2]=k;F[Z+15|0]=0;F[Z+14|0]=0;Sb=a,Tb=yx(ba,b,Z+15|0,Z+14|0,Z+28|0,Z+24|0,Z+20|0,Z+16|0,L[a+160>>2]),H[Sb+116>>2]=Tb;H[a+112>>2]=ba;F[a+121|0]=I[a+121|0]|F[Z+14|0]&1;F[a+120|0]=I[Z+15|0];L[a>>2]=L[Z+28>>2]*L[a>>2];L[a+8>>2]=L[Z+24>>2]*L[a+8>>2];L[a+4>>2]=L[Z+20>>2]*L[a+4>>2];L[a+12>>2]=L[Z+16>>2]*L[a+12>>2];C=Oa-32|0;Oa=C;z=c+4128|0;b=z;H[b+7684>>2]=0;H[b+7688>>2]=0;ka=I[a+121|0];sa=I[a+122|0];b=H[a+100>>2];V=H[a+104>>2];A=H[a+16>>2];G[A+22>>1]=0;c=H[a+116>>2];c:{if(!c){F[a+136|0]=0;H[a+132>>2]=0;H[A+24>>2]=0;break c}if(!ka){zx(z,H[a+132>>2],I[a+136|0],a+44|0,a+72|0,h);c=H[a+116>>2]}ca=(b|V)&8;ez(z,H[a+112>>2],c);X=a+44|0;U=a+72|0;fz(z,H[a+112>>2],X,U,0,0);gz(z,H[a+112>>2],X,U,h,0,O(L[a+124>>2]+g));ba=H[z+7688>>2];d:{if(ba){j=ca?7:6;ta=ca?112:48;g=L[a+164>>2];h=L[a+168>>2];g=g>h?g:h;c=0;while(1){b=z+(c<<2)|0;K=H[b+7424>>2]!=65535;b=H[b+7296>>2];e:{if(!b){break e}M=((N(b,ta)+M|0)+((b<<2)+12&-16)|0)+80|0;b=z+N(c,104)|0;if(F[b+2817|0]&1){break e}b=J[b+2818>>1];M=((b<<1|(b|0)==1&g>O(0))<>2]>>2]](i,ta+16|0)|0;c=(b|0)==-1?0:b}b=!ta;M=N(o,104)+15&-16;j=1;f:{if(!M){break f}if(!(c|!ta)){c=0;b=0;j=0;break f}i=Ra[H[H[i>>2]+4>>2]](i,M)|0;ba=(i|0)==-1?0:i;j=0}i=(c|0)!=0|b;if(!i){F[a+136|0]=0;H[a+132>>2]=0;G[A+22>>1]=0;H[A+24>>2]=0;break c}F[a+136|0]=0;H[a+132>>2]=0;G[A+22>>1]=0;H[A+24>>2]=0;if((j|(ba|0)!=0)!=1){break c}i=b?0:i?c:0;break d}H[A+24>>2]=0;ba=0;i=0}H[a+132>>2]=ba;H[A+24>>2]=i;F[a+136|0]=o;G[A+22>>1]=ta>>>4;b=H[a+140>>2];H[A+28>>2]=b;o=0;G[A+20>>1]=b?J[a+116>>1]:0;g:{if(!ba){break g}j=H[z+7688>>2];if(!j){break g}c=ba;while(1){if(H[(z+(o<<2)|0)+7296>>2]){b=z+N(o,104)|0;F[c|0]=I[b+2816|0];F[c+1|0]=I[b+2817|0];G[c+2>>1]=J[b+2818>>1];L[c+16>>2]=L[b+2832>>2];L[c+20>>2]=L[b+2836>>2];L[c+24>>2]=L[b+2840>>2];L[c+28>>2]=L[b+2844>>2];L[c+32>>2]=L[b+2848>>2];L[c+36>>2]=L[b+2852>>2];L[c+40>>2]=L[b+2856>>2];L[c+44>>2]=L[b+2860>>2];L[c+48>>2]=L[b+2864>>2];L[c+52>>2]=L[b+2868>>2];L[c+56>>2]=L[b+2872>>2];L[c+60>>2]=L[b+2876>>2];L[c+64>>2]=L[b+2880>>2];L[c+68>>2]=L[b+2884>>2];L[c+72>>2]=L[b+2888>>2];L[c+76>>2]=L[b+2892>>2];L[c+80>>2]=L[b+2896>>2];L[c+84>>2]=L[b+2900>>2];L[c+88>>2]=L[b+2904>>2];L[c+92>>2]=L[b+2908>>2];L[c+96>>2]=L[b+2912>>2];L[c+100>>2]=L[b+2916>>2];L[c+4>>2]=L[b+2820>>2];L[c+8>>2]=L[b+2824>>2];L[c+12>>2]=L[b+2828>>2];c=c+104|0}o=o+1|0;if((j|0)!=(o|0)){continue}break}}if(!i){break c}h:{if(ca){b=H[a+20>>2];c=H[a+28>>2];j=H[a+36>>2];G[C+28>>1]=J[A+8>>1];H[C+24>>2]=j;H[C+20>>2]=c;H[C+16>>2]=b;b=H[a+24>>2];c=H[a+32>>2];j=H[a+40>>2];G[C+12>>1]=J[A+10>>1];H[C+8>>2]=j;H[C+4>>2]=c;H[C>>2]=b;A=H[a+112>>2];b=i;ua=L[a>>2];va=L[a+4>>2];wa=L[a+8>>2];xa=L[a+12>>2];Ma=L[a+124>>2];Ca=L[a+164>>2];ya=L[a+168>>2];M=0;ka=0;j=Oa-272|0;Oa=j;o=C+16|0;c=J[o+12>>1];if((c|0)==65535){Na=I[H[o>>2]+62|0]!=0}a=J[C+12>>1];za=(a|0)==65535?I[H[C>>2]+62|0]!=0:za;r=d;p=e;u=f;i:{if((c|0)==65535){d=L[H[o+8>>2]+28>>2];break i}a=H[o>>2];d=O(Ra[H[H[a>>2]+124>>2]](a,c));a=J[C+12>>1]}a=a&65535;if((a|0)==65535){e=L[H[C+8>>2]+28>>2]}else{c=H[C>>2];e=O(Ra[H[H[c>>2]+124>>2]](c,a))}a=J[o+12>>1];j:{if((a|0)==65535){a=H[o+8>>2];f=L[a+24>>2];g=L[a+8>>2];c=H[a+16>>2];q=H[a+20>>2];V=H[a+4>>2];a=H[a>>2];H[j+124>>2]=0;L[j+120>>2]=f;H[j+108>>2]=0;H[j+96>>2]=a;H[j+100>>2]=V;H[j+112>>2]=c;H[j+116>>2]=q;L[j+104>>2]=g;break j}c=H[o>>2];Ra[H[H[c>>2]+116>>2]](j+96|0,c,a)}a=J[C+12>>1];k:{if((a|0)==65535){a=H[C+8>>2];f=L[a+24>>2];g=L[a+8>>2];c=H[a+16>>2];q=H[a+20>>2];V=H[a+4>>2];a=H[a>>2];H[j+92>>2]=0;L[j+88>>2]=f;H[j+76>>2]=0;H[j+64>>2]=a;H[j+68>>2]=V;H[j+80>>2]=c;H[j+84>>2]=q;L[j+72>>2]=g;break k}c=H[C>>2];Ra[H[H[c>>2]+116>>2]](j- -64|0,c,a)}L[j+48>>2]=ua;L[j+32>>2]=wa;L[j+16>>2]=va;L[j>>2]=xa;c=H[z+7688>>2];if(c){gb=Ca>O(0)|ya>O(0);Pa=d>e?d:e;la=O(r*O(.800000011920929));Q=O(-la);Da=L[U+24>>2];Ea=L[U+20>>2];Fa=L[X+24>>2];Ga=L[X+20>>2];Ha=L[U+16>>2];Ia=L[X+16>>2];while(1){a=z+(M<<2)|0;sa=H[a+7296>>2];if(sa){d=O(1);ca=a+7424|0;a=A+(J[z+N(H[ca>>2],44)>>1]<<6)|0;c=I[a+48|0];d=c&4?O(O(1)/O(J[(z+N(M,104)|0)+2818>>1])):d;ha=L[a+60>>2];e=L[a+44>>2];f=L[a+56>>2];F[b+2|0]=sa;a=0;K=c&1;a=K?a:I[(z+N(M,104)|0)+2818|0]<<1;c=b+80|0;L[b+28>>2]=wa;L[b+24>>2]=ua;L[b+20>>2]=d*f;L[b+16>>2]=d*e;G[b>>1]=3;F[b+3|0]=a;L[b+8>>2]=xa;L[b+4>>2]=va;q=H[ca>>2];V=J[z+N(q,44)>>1];a=A+(V<<6)|0;v=L[a>>2];x=L[a+4>>2];w=L[a+8>>2];L[b+44>>2]=Pa;L[b+40>>2]=w;L[b+36>>2]=x;L[b+32>>2]=v;$=O(-v);da=O(-x);_=O(-w);g=O(0);n=O(0);d=O(0);if((q|0)!=65535){while(1){Qa=z+N(q,44)|0;ma=I[Qa+5|0];l:{if(!ma){a=c;break l}Ja=A+((V&65535)<<6)|0;V=0;while(1){q=Ja+(V<<6)|0;e=L[q+16>>2];f=O(e-Ha);h=L[q+20>>2];s=O(h-Ea);ja=O(O(f*x)-O(v*s));n=L[q+24>>2];t=O(n-Da);ea=O(O(t*v)-O(w*f));f=L[q+12>>2];h=O(h-Ga);k=O(n-Fa);R=O(O(h*w)-O(x*k));n=R;e=O(e-Ia);T=O(O(k*v)-O(w*e));l=T;Y=O(O(e*x)-O(v*h));m=Y;if(J[o+12>>1]==65535){a=H[o+4>>2];m=O(O(L[a+60>>2]*Y)+O(O(L[a+36>>2]*R)+O(T*L[a+48>>2])));l=O(O(L[a+56>>2]*Y)+O(O(L[a+32>>2]*R)+O(T*L[a+44>>2])));n=O(O(L[a+52>>2]*Y)+O(O(L[a+28>>2]*R)+O(T*L[a+40>>2])))}fa=O(f-Ma);H[j+204>>2]=0;L[j+200>>2]=m;L[j+196>>2]=l;L[j+192>>2]=n;H[j+188>>2]=0;L[j+184>>2]=w;L[j+180>>2]=x;L[j+176>>2]=v;h=O(-ja);k=O(-ea);t=O(O(s*w)-O(x*t));s=O(-t);m:{if(J[C+12>>1]!=65535){f=k;e=h;break m}a=H[C+4>>2];e=O(O(L[a+60>>2]*h)+O(O(L[a+36>>2]*s)+O(L[a+48>>2]*k)));f=O(O(L[a+56>>2]*h)+O(O(L[a+32>>2]*s)+O(L[a+44>>2]*k)));s=O(O(L[a+52>>2]*h)+O(O(L[a+28>>2]*s)+O(L[a+40>>2]*k)))}H[j+172>>2]=0;H[j+156>>2]=0;L[j+152>>2]=_;L[j+148>>2]=da;L[j+144>>2]=$;L[j+160>>2]=s;L[j+164>>2]=f;L[j+168>>2]=e;pA(j+128|0,o,j+176|0,j+240|0,j+48|0,j+16|0,C,j+144|0,j+208|0,j+32|0,j);k=L[q+40>>2];D=L[q+36>>2];E=L[q+32>>2];y=L[j+104>>2];B=L[j+120>>2];Ka=L[j+72>>2];na=L[j+88>>2];oa=L[j+96>>2];La=L[j+112>>2];Sa=L[j+64>>2];Ta=L[j+80>>2];Ua=L[j+100>>2];Va=L[j+116>>2];Wa=L[j+68>>2];Xa=L[j+84>>2];h=L[j+128>>2];L[c+36>>2]=Q;L[c+24>>2]=-e;L[c+20>>2]=-f;L[c+16>>2]=-s;L[c+12>>2]=fa;L[c+8>>2]=m;L[c+4>>2]=l;L[c>>2]=n;e=h>O(1.1920928955078125e-7)?O(O(1)/O(h+O(9999999747378752e-20))):O(0);L[c+28>>2]=e;n=O(O(v*oa)+O(R*La));l=O(O(v*Sa)+O(t*Ta));m=O(O(x*Ua)+O(T*Va));s=O(O(x*Wa)+O(ea*Xa));R=O(O(w*y)+O(Y*B));T=O(O(w*Ka)+O(ja*na));f=O(O(O(n-l)+O(m-s))+O(R-T));h=O(-f);h=O((za?O(O(l+s)+T):O(-0))+O(O(O(O(k*w)+O(O(E*v)+O(x*D)))+(ha>O(0)?fO(fa*p)?O(ha*h):O(0):O(0):O(0)))-(Na?O(O(n+m)+R):O(0))));L[c+32>>2]=h;a=H[j+244>>2];H[c+48>>2]=H[j+240>>2];H[c+52>>2]=a;a=H[j+252>>2];H[c+56>>2]=H[j+248>>2];H[c+60>>2]=a;a=H[j+260>>2];H[c+80>>2]=H[j+256>>2];H[c+84>>2]=a;a=H[j+268>>2];H[c+88>>2]=H[j+264>>2];H[c+92>>2]=a;a=H[j+212>>2];H[c+64>>2]=H[j+208>>2];H[c+68>>2]=a;a=H[j+220>>2];H[c+72>>2]=H[j+216>>2];H[c+76>>2]=a;a=H[j+228>>2];H[c+96>>2]=H[j+224>>2];H[c+100>>2]=a;a=H[j+236>>2];H[c+104>>2]=H[j+232>>2];H[c+108>>2]=a;e=O(O(e*O(h-O(la*fa)))-O(f*e));g=O(g+(e>O(0)?e:O(0)));e=L[q+12>>2];d=d>1];if((q|0)!=65535){V=J[z+N(q,44)>>1];c=a;continue}break}n=d;c=a}L[b+52>>2]=g/O(sa>>>0);a=sa<<2;c=S6(c,0,a);H[b+56>>2]=0;a=c+(a+12&-16)|0;n:{if(K){break n}d=L[j+72>>2];e=L[j+104>>2];f=L[j+64>>2];g=L[j+96>>2];h=L[j+68>>2];k=L[j+100>>2];H[b+60>>2]=N(ka,104)+ba;V=z+N(M,104)|0;sa=V+2818|0;if(!J[sa>>1]){break n}ja=K?O(0):r;e=O(e-d);f=O(g-f);g=O(k-h);d=O(O(w*e)+O(O(v*f)+O(x*g)));e=O(e-O(w*d));f=O(f-O(v*d));d=O(g-O(x*d));c=O(O(e*e)+O(O(f*f)+O(d*d)))>O(9999999747378752e-20);g=v;q=O(P(v))>2];a=V+N(q,12)|0;d=L[a+2888>>2];f=O(d+d);g=L[U>>2];d=L[a+2880>>2];h=O(d+d);d=L[a+2884>>2];k=O(d+d);l=L[U+4>>2];m=O(O(e*f)+O(O(g*h)+O(k*l)));d=L[U+12>>2];_=O(O(d*d)+O(-.5));Y=O(O(g*m)+O(O(h*_)+O(d*O(O(l*f)-O(k*e)))));da=O(O(l*m)+O(O(k*_)+O(d*O(O(e*h)-O(f*g)))));na=O(O(Y*v)-O(s*da));_=O(O(e*m)+O(O(f*_)+O(d*O(O(g*k)-O(h*l)))));oa=O(O(_*s)-O(w*Y));La=O(O(da*w)-O(v*_));f=L[X+8>>2];d=L[a+2864>>2];g=O(d+d);h=L[X>>2];d=L[a+2856>>2];k=O(d+d);d=L[a+2860>>2];l=O(d+d);m=L[X+4>>2];$=O(O(f*g)+O(O(h*k)+O(l*m)));e=L[X+12>>2];ea=O(O(e*e)+O(-.5));fa=O(O(h*$)+O(O(k*ea)+O(e*O(O(m*g)-O(l*f)))));ha=O(O(m*$)+O(O(l*ea)+O(e*O(O(f*k)-O(g*h)))));d=O(O(fa*v)-O(s*ha));$=O(O(f*$)+O(O(g*ea)+O(e*O(O(h*l)-O(k*m)))));g=O(O($*s)-O(w*fa));l=O(O(ha*w)-O(v*$));o:{if(J[o+12>>1]!=65535){f=g;e=d;break o}a=H[o+4>>2];e=O(O(L[a+60>>2]*d)+O(O(L[a+36>>2]*l)+O(g*L[a+48>>2])));f=O(O(L[a+56>>2]*d)+O(O(L[a+32>>2]*l)+O(g*L[a+44>>2])));l=O(O(L[a+52>>2]*d)+O(O(L[a+28>>2]*l)+O(g*L[a+40>>2])))}H[j+204>>2]=0;L[j+200>>2]=e;L[j+196>>2]=f;L[j+192>>2]=l;H[j+188>>2]=0;L[j+184>>2]=w;L[j+180>>2]=v;L[j+176>>2]=s;h=O(-na);k=O(-oa);m=O(-La);p:{if(J[C+12>>1]!=65535){d=k;g=h;break p}a=H[C+4>>2];g=O(O(L[a+60>>2]*h)+O(O(L[a+36>>2]*m)+O(L[a+48>>2]*k)));d=O(O(L[a+56>>2]*h)+O(O(L[a+32>>2]*m)+O(L[a+44>>2]*k)));m=O(O(L[a+52>>2]*h)+O(O(L[a+28>>2]*m)+O(L[a+40>>2]*k)))}H[j+172>>2]=0;L[j+168>>2]=g;L[j+164>>2]=d;L[j+160>>2]=m;H[j+156>>2]=0;L[j+152>>2]=y;L[j+148>>2]=B;L[j+144>>2]=Ka;pA(j+128|0,o,j+176|0,j+240|0,j+48|0,j+16|0,C,j+144|0,j+208|0,j+32|0,j);k=L[j+128>>2];K=k>O(1.1920928955078125e-7);a=A+(J[z+N(H[ca>>2],44)>>1]<<6)|0;h=O(O(L[a+40>>2]*w)+O(O(L[a+32>>2]*s)+O(v*L[a+36>>2])));h=Na?O(h-O(O(O(O(L[j+96>>2]*s)+O(L[j+112>>2]*l))+O(O(L[j+100>>2]*v)+O(L[j+116>>2]*f)))+O(O(L[j+104>>2]*w)+O(L[j+120>>2]*e)))):h;h=za?O(h-O(O(O(O(L[j+80>>2]*m)-O(s*L[j+64>>2]))+O(O(L[j+84>>2]*d)-O(v*L[j+68>>2])))+O(O(L[j+88>>2]*g)-O(w*L[j+72>>2])))):h;L[c+8>>2]=w;L[c+4>>2]=v;L[c>>2]=s;ea=O(O(Fa+$)-O(Da+_));na=O(O(Ia+fa)-O(Ha+Y));oa=O(O(Ga+ha)-O(Ea+da));L[c+12>>2]=O(ea*w)+O(O(na*s)+O(v*oa));a=H[j+192>>2];Qa=H[j+196>>2];d=L[j+200>>2];L[c+28>>2]=h;L[c+24>>2]=d;H[c+16>>2]=a;H[c+20>>2]=Qa;d=L[j+160>>2];e=L[j+164>>2];f=L[j+168>>2];H[c+52>>2]=0;L[c+44>>2]=K?O(O(.800000011920929)/O(k+O(9999999747378752e-20))):O(0);L[c+48>>2]=ja;L[c+40>>2]=-f;L[c+36>>2]=-e;L[c+32>>2]=-d;a=H[j+252>>2];H[c+72>>2]=H[j+248>>2];H[c+76>>2]=a;a=H[j+244>>2];H[c+64>>2]=H[j+240>>2];H[c+68>>2]=a;a=H[j+220>>2];H[c+88>>2]=H[j+216>>2];H[c+92>>2]=a;a=H[j+212>>2];H[c+80>>2]=H[j+208>>2];H[c+84>>2]=a;a=H[j+268>>2];H[c+104>>2]=H[j+264>>2];H[c+108>>2]=a;a=H[j+260>>2];H[c+96>>2]=H[j+256>>2];H[c+100>>2]=a;a=H[j+236>>2];H[c+120>>2]=H[j+232>>2];H[c+124>>2]=a;a=H[j+228>>2];H[c+112>>2]=H[j+224>>2];H[c+116>>2]=a;h=O(O(Y*T)+O(x*O(-da)));k=O(O(_*x)+O(R*O(-Y)));m=O(O(da*R)+O(T*O(-_)));d=O(O(fa*T)+O(x*O(-ha)));f=O(O($*x)+O(R*O(-fa)));l=O(O(ha*R)+O(T*O(-$)));q:{if(J[o+12>>1]!=65535){e=f;g=d;break q}a=H[o+4>>2];g=O(O(L[a+60>>2]*d)+O(O(L[a+36>>2]*l)+O(f*L[a+48>>2])));e=O(O(L[a+56>>2]*d)+O(O(L[a+32>>2]*l)+O(f*L[a+44>>2])));l=O(O(L[a+52>>2]*d)+O(O(L[a+28>>2]*l)+O(f*L[a+40>>2])))}H[j+204>>2]=0;L[j+200>>2]=g;L[j+196>>2]=e;L[j+192>>2]=l;H[j+188>>2]=0;L[j+184>>2]=R;L[j+180>>2]=T;L[j+176>>2]=x;f=O(-h);k=O(-k);m=O(-m);r:{if(J[C+12>>1]!=65535){d=k;h=f;break r}a=H[C+4>>2];h=O(O(L[a+60>>2]*f)+O(O(L[a+36>>2]*m)+O(L[a+48>>2]*k)));d=O(O(L[a+56>>2]*f)+O(O(L[a+32>>2]*m)+O(L[a+44>>2]*k)));m=O(O(L[a+52>>2]*f)+O(O(L[a+28>>2]*m)+O(L[a+40>>2]*k)))}H[j+172>>2]=0;L[j+168>>2]=h;L[j+164>>2]=d;L[j+160>>2]=m;H[j+156>>2]=0;L[j+152>>2]=t;L[j+148>>2]=D;L[j+144>>2]=E;pA(j+128|0,o,j+176|0,j+240|0,j+48|0,j+16|0,C,j+144|0,j+208|0,j+32|0,j);k=L[j+128>>2];K=k>O(1.1920928955078125e-7);a=A+(J[z+N(H[ca>>2],44)>>1]<<6)|0;f=O(O(L[a+40>>2]*R)+O(O(L[a+32>>2]*x)+O(T*L[a+36>>2])));f=Na?O(f-O(O(O(O(L[j+96>>2]*x)+O(L[j+112>>2]*l))+O(O(L[j+100>>2]*T)+O(L[j+116>>2]*e)))+O(O(L[j+104>>2]*R)+O(L[j+120>>2]*g)))):f;f=za?O(f-O(O(O(O(L[j+80>>2]*m)-O(x*L[j+64>>2]))+O(O(L[j+84>>2]*d)-O(T*L[j+68>>2])))+O(O(L[j+88>>2]*h)-O(R*L[j+72>>2])))):f;a=c+256|0;H[c+180>>2]=0;L[c+172>>2]=K?O(O(.800000011920929)/O(k+O(9999999747378752e-20))):O(0);L[c+156>>2]=f;L[c+152>>2]=g;L[c+148>>2]=e;L[c+144>>2]=l;L[c+136>>2]=R;L[c+132>>2]=T;L[c+128>>2]=x;L[c+176>>2]=ja;L[c+168>>2]=-h;L[c+164>>2]=-d;L[c+160>>2]=-m;L[c+140>>2]=O(ea*R)+O(O(na*x)+O(T*oa));K=H[j+244>>2];H[c+192>>2]=H[j+240>>2];H[c+196>>2]=K;K=H[j+252>>2];H[c+200>>2]=H[j+248>>2];H[c+204>>2]=K;K=H[j+212>>2];H[c+208>>2]=H[j+208>>2];H[c+212>>2]=K;K=H[j+220>>2];H[c+216>>2]=H[j+216>>2];H[c+220>>2]=K;K=H[j+260>>2];H[c+224>>2]=H[j+256>>2];H[c+228>>2]=K;K=H[j+268>>2];H[c+232>>2]=H[j+264>>2];H[c+236>>2]=K;K=H[j+228>>2];H[c+240>>2]=H[j+224>>2];H[c+244>>2]=K;K=H[j+236>>2];H[c+248>>2]=H[j+232>>2];H[c+252>>2]=K;q=q+1|0;K=J[sa>>1];if(q>>>0>>0){continue}break}if(!(gb&(K|0)==1)){break n}F[b+3|0]=I[b+3|0]+1;d=L[X>>2];e=L[V+2908>>2];f=L[X+12>>2];g=L[V+2912>>2];h=L[V+2916>>2];k=L[X+8>>2];l=L[V+2904>>2];m=L[X+4>>2];v=O(O(O(d*e)+O(O(f*g)+O(h*k)))-O(l*m));x=L[U+8>>2];w=O(O(O(k*l)+O(O(f*e)+O(h*m)))-O(g*d));s=L[U+4>>2];R=O(O(O(O(f*h)-O(l*d))-O(m*e))-O(k*g));T=L[U+12>>2];Y=L[U>>2];g=O(O(O(m*g)+O(O(f*l)+O(h*d)))-O(e*k));d=O(O(v*x)+O(O(w*s)+O(O(R*T)+O(Y*g))));a=A+(J[z+N(H[ca>>2],44)>>1]<<6)|0;k=L[a+8>>2];f=O(O(O(Y*w)+O(O(O(R*x)-O(T*v))-O(g*s)))*k);l=L[a>>2];e=O(O(O(s*v)+O(O(O(R*Y)-O(T*g))-O(w*x)))*l);m=L[a+4>>2];s=O(O(O(x*g)+O(O(O(R*s)-O(T*w))-O(v*Y)))*m);h=O(W(O(O(d*d)+O(O(f*f)+O(O(e*e)+O(s*s))))));if(h!=O(0)){g=O(O(1)/h);d=O(d*g);s=O(s*g);f=O(f*g);e=O(e*g)}n=O(W(O(O(S(O(-n),O(0)))*Ca)));q=n=O(0)?O(O(O(d*O(0))+O(O(f*k)+O(O(e*l)+O(m*s))))/d):O(0));s:{if(J[o+12>>1]==65535){d=L[b+32>>2];a=H[o+4>>2];e=L[b+36>>2];f=L[b+40>>2];h=O(O(O(d*L[a+36>>2])+O(e*L[a+48>>2]))+O(f*L[a+60>>2]));l=O(O(O(d*L[a+28>>2])+O(e*L[a+40>>2]))+O(f*L[a+52>>2]));g=O(O(O(d*L[a+32>>2])+O(e*L[a+44>>2]))+O(f*L[a+56>>2]));break s}d=L[b+32>>2];l=d;f=L[b+40>>2];h=f;e=L[b+36>>2];g=e}m=q?ya:n;H[j+248>>2]=0;H[j+252>>2]=0;H[j+240>>2]=0;H[j+244>>2]=0;H[j+268>>2]=0;L[j+264>>2]=h;L[j+260>>2]=g;L[j+256>>2]=l;e=O(-e);t:{if(J[C+12>>1]!=65535){h=O(-f);n=O(-d);break t}a=H[C+4>>2];h=O(O(O(L[a+48>>2]*e)-O(d*L[a+36>>2]))-O(f*L[a+60>>2]));n=O(O(O(L[a+40>>2]*e)-O(d*L[a+28>>2]))-O(f*L[a+52>>2]));e=O(O(O(L[a+44>>2]*e)-O(d*L[a+32>>2]))-O(f*L[a+56>>2]))}a=c+384|0;H[j+216>>2]=0;H[j+220>>2]=0;H[j+208>>2]=0;H[j+212>>2]=0;H[j+236>>2]=0;L[j+232>>2]=h;L[j+228>>2]=e;L[j+224>>2]=n;d=oA(o,j+240|0,j+176|0,ua,va,C,j+208|0,j+144|0,wa,xa);L[c+268>>2]=-k;H[c+264>>2]=0;H[c+256>>2]=0;H[c+260>>2]=0;b=H[j+256>>2];q=H[j+260>>2];e=L[j+264>>2];H[c+284>>2]=0;L[c+280>>2]=e;H[c+272>>2]=b;H[c+276>>2]=q;e=L[j+224>>2];f=L[j+228>>2];g=L[j+232>>2];L[c+312>>2]=m;H[c+308>>2]=0;L[c+304>>2]=ja;L[c+300>>2]=d>O(1.1920928955078125e-7)?O(O(.800000011920929)/O(d+O(9999999747378752e-20))):O(0);L[c+296>>2]=-g;L[c+292>>2]=-f;L[c+288>>2]=-e;b=H[j+176>>2];q=H[j+180>>2];d=L[j+184>>2];H[c+332>>2]=0;L[c+328>>2]=d;H[c+320>>2]=b;H[c+324>>2]=q;b=H[j+144>>2];q=H[j+148>>2];d=L[j+152>>2];H[c+348>>2]=0;L[c+344>>2]=d;H[c+336>>2]=b;H[c+340>>2]=q;b=H[j+192>>2];q=H[j+196>>2];d=L[j+200>>2];H[c+364>>2]=0;L[c+360>>2]=d;H[c+352>>2]=b;H[c+356>>2]=q;b=H[j+160>>2];q=H[j+164>>2];d=L[j+168>>2];H[c+380>>2]=0;L[c+376>>2]=d;H[c+368>>2]=b;H[c+372>>2]=q}ka=ka+1|0;c=H[z+7688>>2];b=a}M=M+1|0;if(M>>>0>>0){continue}break}}Oa=j+272|0;break h}c=H[z+7688>>2];if(!c){break h}K=(V|0)==4|(V|0)==2?5:1;lb=L[a+68>>2];mb=L[a+96>>2];Ab=O(lb-mb);nb=L[a- -64>>2];ob=L[a+92>>2];Bb=O(nb-ob);pb=L[a+60>>2];qb=L[a+88>>2];Cb=O(pb-qb);rb=L[a+164>>2];hb=L[a+168>>2];gb=rb>O(0)|hb>O(0);Ka=ka?O(0):d;b=H[a+36>>2];g=L[b+28>>2];o=H[a+40>>2];h=L[o+28>>2];Db=g>h?g:h;Eb=O(d*O(-.800000011920929));w=L[a+84>>2];na=O(O(w*w)+O(-.5));s=L[a+56>>2];oa=O(O(s*s)+O(-.5));La=O(L[a>>2]*L[b+32>>2]);V=I[H[a+24>>2]+62|0];Fb=L[a+124>>2];v=L[a+12>>2];x=L[a+4>>2];j=H[a+112>>2];Qa=H[a+108>>2];Sa=L[b+8>>2];Ta=L[o+8>>2];sb=O(Sa-Ta);Ua=L[b+4>>2];Va=L[o+4>>2];tb=O(Ua-Va);Wa=L[b>>2];Xa=L[o>>2];ub=O(Wa-Xa);ib=O(L[o+32>>2]*O(-L[a+8>>2]));Gb=O(-ib);A=H[a+32>>2];R=L[A+60>>2];T=L[A+56>>2];Y=L[A+52>>2];da=L[A+48>>2];_=L[A+44>>2];fa=L[A+40>>2];ha=L[A+36>>2];$=L[A+32>>2];X=H[a+28>>2];ua=L[X+60>>2];va=L[X+56>>2];wa=L[X+52>>2];xa=L[X+48>>2];ya=L[X+44>>2];ja=L[X+40>>2];Ca=L[X+36>>2];Da=L[X+32>>2];Ea=L[o+24>>2];Fa=L[o+20>>2];Ga=L[b+24>>2];Ha=L[b+20>>2];ab=L[a+76>>2];Hb=O(-ab);bb=L[a+72>>2];Ib=O(-bb);cb=L[a+80>>2];Jb=O(-cb);db=L[a+48>>2];Kb=O(-db);eb=L[a+44>>2];Lb=O(-eb);fb=L[a+52>>2];Mb=O(-fb);Ia=L[A+28>>2];ea=L[X+28>>2];Ma=L[o+16>>2];Pa=L[b+16>>2];ca=I[H[a+20>>2]+62|0];a=i;while(1){ka=z+(q<<2)|0;M=H[ka+7296>>2];if(M){za=ka+7424|0;b=H[za>>2];o=J[z+N(b,44)>>1];U=j+(o<<6)|0;Q=L[U+60>>2];L[a+48>>2]=Gb;L[a+12>>2]=La;H[a+64>>2]=Qa;F[a+1|0]=sa;g=L[U>>2];h=L[U+4>>2];k=L[U+8>>2];L[a+44>>2]=Db;L[a+40>>2]=k;L[a+36>>2]=h;L[a+32>>2]=g;d=O(O(k*k)+O(O(g*g)+O(h*h)));Aa=O(ib*d);Ba=O(La*d);c=a+80|0;la=O(3.4028234663852886e38);u:{if((b|0)==65535){break u}pa=O(O(Ta*k)+O(O(Xa*g)+O(Va*h)));qa=O(O(Sa*k)+O(O(Wa*g)+O(Ua*h)));while(1){ma=z+N(b,44)|0;Ja=I[ma+5|0];if(Ja){Nb=j+((o&65535)<<6)|0;o=0;while(1){b=(o<<6)+Nb|0;aa=L[b+40>>2];ra=L[b+36>>2];ga=L[b+32>>2];u=L[b+20>>2];l=L[b+24>>2];m=L[b+16>>2];d=L[b+12>>2];L[c+36>>2]=Eb;d=O(d-Fb);L[c+12>>2]=d;p=O(m-qb);r=O(u-ob);n=O(O(p*h)-O(g*r));t=O(l-mb);r=O(O(r*k)-O(h*t));p=O(O(t*g)-O(k*p));t=O(O(R*n)+O(O(ha*r)+O(da*p)));L[c+24>>2]=t;D=O(O(T*n)+O(O($*r)+O(_*p)));L[c+20>>2]=D;E=O(O(Y*n)+O(O(Ia*r)+O(fa*p)));L[c+16>>2]=E;m=O(m-pb);y=O(u-nb);u=O(O(m*h)-O(g*y));B=O(y*k);y=O(l-lb);l=O(B-O(h*y));m=O(O(y*g)-O(k*m));y=O(O(ua*u)+O(O(Ca*l)+O(xa*m)));L[c+8>>2]=y;B=O(O(va*u)+O(O(Da*l)+O(ya*m)));L[c+4>>2]=B;ia=O(O(wa*u)+O(O(ea*l)+O(ja*m)));L[c>>2]=ia;t=O(O(Ba+O(x*O(O(y*y)+O(O(ia*ia)+O(B*B)))))+O(O(v*O(O(t*t)+O(O(E*E)+O(D*D))))-Aa));L[c+28>>2]=t>O(0)?O(O(1)/t):O(0);u=O(qa+O(O(u*Ga)+O(O(l*Pa)+O(Ha*m))));r=O(pa+O(O(n*Ea)+O(O(r*Ma)+O(Fa*p))));p=O(u-r);n=O(-p);L[c+32>>2]=(V?r:O(-0))+O(O(O(O(k*aa)+O(O(g*ga)+O(h*ra)))+(Q>O(0)?f>p?n>O(d*e)?O(Q*n):O(0):O(0):O(0)))-(ca?u:O(0)));la=d>1];if((b|0)==65535){break u}o=J[z+N(b,44)>>1];continue}}b=M<<2;o=S6(c,0,b);ma=b+12&-16;d=L[U+56>>2];n=L[U+44>>2];v:{w:{x:{if(F[U+48|0]&1){F[a+2|0]=M;break x}b=J[(z+N(q,104)|0)+2818>>1];F[a+2|0]=M;if(b){break w}}M=0;c=0;break v}M=b<<1;c=1}b=o+ma|0;L[a+28>>2]=ib;L[a+24>>2]=La;L[a+20>>2]=d;L[a+16>>2]=n;F[a|0]=K;F[a+3|0]=M;H[a+56>>2]=0;L[a+8>>2]=v;L[a+4>>2]=x;y:{if(!c){break y}H[a+60>>2]=N(Na,104)+ba;M=z+N(q,104)|0;ma=M+2818|0;Ja=J[ma>>1];if(!Ja){break y}d=O(O(k*sb)+O(O(g*ub)+O(tb*h)));n=O(tb-O(h*d));c=O(P(g))O(9999999747378752e-20);n=o?n:c?O(-k):g;p=o?r:c?h:O(0);d=o?d:c?O(0):O(-h);u=O(O(1)/O(W(O(O(p*p)+O(O(d*d)+O(n*n))))));n=O(n*u);r=O(d*u);d=O(O(g*n)-O(r*h));l=d;t=O(d*d);p=O(p*u);d=O(O(h*p)-O(n*k));m=O(O(k*r)-O(p*g));Q=O(O(1)/O(W(O(t+O(O(d*d)+O(m*m))))));u=O(l*Q);l=O(d*Q);m=O(m*Q);Ob=O(O(Ta*u)+O(O(Xa*l)+O(Va*m)));Pb=O(O(Sa*u)+O(O(Wa*l)+O(Ua*m)));Qb=O(O(Ta*p)+O(O(Xa*r)+O(Va*n)));Rb=O(O(Sa*p)+O(O(Wa*r)+O(Ua*n)));vb=I[U+48|0]&4?(Ja|0)==2?O(.5):O(1):O(1);o=0;while(1){c=b;b=M+N(o,12)|0;d=L[b+2884>>2];D=L[b+2864>>2];E=L[b+2856>>2];y=L[b+2860>>2];B=O(O(fb*D)+O(O(eb*E)+O(db*y)));Q=O(O(eb*B)+O(O(oa*E)+O(s*O(O(db*D)+O(y*Mb)))));Q=O(Q+Q);t=O(O(db*B)+O(O(oa*y)+O(s*O(O(fb*E)+O(D*Lb)))));t=O(t+t);ia=O(O(Q*n)-O(r*t));D=O(O(O(s*O(O(eb*y)+O(E*Kb)))+O(oa*D))+O(fb*B));D=O(D+D);pa=O(O(t*p)-O(n*D));qa=O(O(D*r)-O(p*Q));Ya=O(O(ua*ia)+O(O(Ca*pa)+O(xa*qa)));Za=O(O(wa*ia)+O(O(ea*pa)+O(ja*qa)));_a=O(O(va*ia)+O(O(Da*pa)+O(ya*qa)));B=L[b+2888>>2];aa=L[b+2880>>2];ga=O(O(cb*B)+O(O(bb*aa)+O(ab*d)));E=O(O(bb*ga)+O(O(na*aa)+O(w*O(O(ab*B)+O(d*Jb)))));E=O(E+E);y=O(O(ab*ga)+O(O(na*d)+O(w*O(O(cb*aa)+O(B*Ib)))));y=O(y+y);ra=O(O(E*n)-O(r*y));d=O(O(O(w*O(O(bb*d)+O(aa*Hb)))+O(na*B))+O(cb*ga));B=O(d+d);aa=O(O(y*p)-O(n*B));ga=O(O(B*r)-O(p*E));$a=O(O(R*ra)+O(O(ha*aa)+O(da*ga)));jb=O(O(Y*ra)+O(O(Ia*aa)+O(fa*ga)));kb=O(O(T*ra)+O(O($*aa)+O(_*ga)));wb=O(O(Ba+O(x*O(O(Ya*Ya)+O(O(Za*Za)+O(_a*_a)))))+O(O(v*O(O($a*$a)+O(O(jb*jb)+O(kb*kb))))-Aa));U=wb>O(0);b=J[(ka+(o<<1)|0)+7556>>1];if((b|0)==65535){b=J[z+N(H[za>>2],44)>>1]}b=((b&65535)<<6)+j|0;xb=L[b+40>>2];yb=L[b+32>>2];zb=L[b+36>>2];d=O(O(xb*p)+O(O(yb*r)+O(n*zb)));d=ca?O(d-O(Rb+O(O(ia*Ga)+O(O(pa*Pa)+O(Ha*qa))))):d;L[c+56>>2]=vb;H[c+52>>2]=0;L[c+44>>2]=U?O(O(.800000011920929)/wb):O(0);L[c+40>>2]=$a;L[c+36>>2]=kb;L[c+32>>2]=jb;if(V){d=O(O(Qb+O(O(ra*Ea)+O(O(aa*Ma)+O(Fa*ga))))+d)}L[c+28>>2]=d;L[c+24>>2]=Ya;L[c+20>>2]=_a;L[c+16>>2]=Za;L[c+8>>2]=p;L[c+4>>2]=n;L[c>>2]=r;L[c+48>>2]=Ka;Ya=O(Ab+O(D-B));Za=O(Cb+O(Q-E));_a=O(Bb+O(t-y));L[c+12>>2]=O(Ya*p)+O(O(Za*r)+O(n*_a));ia=O(O(Q*m)+O(l*O(-t)));t=O(O(t*u)+O(m*O(-D)));Q=O(O(D*l)+O(u*O(-Q)));pa=O(O(ua*ia)+O(O(Ca*t)+O(xa*Q)));qa=O(O(wa*ia)+O(O(ea*t)+O(ja*Q)));aa=O(O(va*ia)+O(O(Da*t)+O(ya*Q)));D=O(O(E*m)+O(l*O(-y)));y=O(O(y*u)+O(m*O(-B)));E=O(O(B*l)+O(u*O(-E)));B=O(O(R*D)+O(O(ha*y)+O(da*E)));ra=O(O(Y*D)+O(O(Ia*y)+O(fa*E)));ga=O(O(T*D)+O(O($*y)+O(_*E)));$a=O(O(Ba+O(x*O(O(pa*pa)+O(O(qa*qa)+O(aa*aa)))))+O(O(v*O(O(B*B)+O(O(ra*ra)+O(ga*ga))))-Aa));U=$a>O(0);d=O(O(xb*u)+O(O(yb*l)+O(m*zb)));d=ca?O(d-O(Pb+O(O(ia*Ga)+O(O(t*Pa)+O(Ha*Q))))):d;b=c+128|0;L[c+120>>2]=vb;H[c+116>>2]=0;L[c+108>>2]=U?O(O(.800000011920929)/$a):O(0);L[c+104>>2]=B;L[c+100>>2]=ga;L[c+96>>2]=ra;if(V){d=O(O(Ob+O(O(D*Ea)+O(O(y*Ma)+O(Fa*E))))+d)}L[c+92>>2]=d;L[c+88>>2]=pa;L[c+84>>2]=aa;L[c+80>>2]=qa;L[c+72>>2]=u;L[c+68>>2]=m;L[c+64>>2]=l;L[c+112>>2]=Ka;L[c+76>>2]=O(Ya*u)+O(O(Za*l)+O(m*_a));o=o+1|0;U=J[ma>>1];if(o>>>0>>0){continue}break}if(!(gb&(U|0)==1)){break y}F[a+3|0]=I[a+3|0]+1;d=L[X>>2];n=L[M+2908>>2];r=L[X+12>>2];p=L[M+2912>>2];u=L[M+2916>>2];l=L[X+8>>2];m=L[M+2904>>2];Q=L[X+4>>2];t=O(O(O(d*n)+O(O(r*p)+O(u*l)))-O(m*Q));D=L[A+8>>2];E=O(O(O(l*m)+O(O(r*n)+O(u*Q)))-O(p*d));y=L[A+4>>2];B=O(O(O(O(r*u)-O(m*d))-O(Q*n))-O(l*p));Aa=L[A+12>>2];Ba=L[A>>2];p=O(O(O(Q*p)+O(O(r*m)+O(u*d)))-O(n*l));n=O(O(t*D)+O(O(E*y)+O(O(B*Aa)+O(Ba*p))));a=j+(J[z+N(H[za>>2],44)>>1]<<6)|0;m=L[a+8>>2];d=O(O(O(Ba*E)+O(O(O(B*D)-O(Aa*t))-O(p*y)))*m);Q=L[a>>2];r=O(O(O(y*t)+O(O(O(B*Ba)-O(Aa*p))-O(E*D)))*Q);l=O(O(D*p)+O(O(O(B*y)-O(Aa*E))-O(t*Ba)));t=L[a+4>>2];p=O(l*t);l=O(W(O(O(n*n)+O(O(d*d)+O(O(r*r)+O(p*p))))));if(l!=O(0)){u=O(O(1)/l);n=O(n*u);r=O(r*u);p=O(p*u);d=O(d*u)}m=P5(O(l+O(-9.999999974752427e-7))>=O(0)?O(O(O(n*O(0))+O(O(d*m)+O(O(r*Q)+O(t*p))))/n):O(0));b=c+192|0;d=O(W(O(rb*O(S(O(-la),O(0))))));L[c+184>>2]=d>2]=0;L[c+176>>2]=Ka;d=O(O(ua*k)+O(O(Ca*g)+O(xa*h)));n=O(O(wa*k)+O(O(ea*g)+O(ja*h)));r=O(O(va*k)+O(O(Da*g)+O(ya*h)));p=O(O(R*k)+O(O(ha*g)+O(da*h)));u=O(O(Y*k)+O(O(Ia*g)+O(fa*h)));l=O(O(T*k)+O(O($*g)+O(_*h)));la=O(O(x*O(O(d*d)+O(O(n*n)+O(r*r))))+O(v*O(O(p*p)+O(O(u*u)+O(l*l)))));L[c+172>>2]=la>O(0)?O(O(.800000011920929)/la):O(0);L[c+168>>2]=p;L[c+164>>2]=l;L[c+160>>2]=u;L[c+156>>2]=V?O(O(k*Ea)+O(O(g*Ma)+O(Fa*h))):ca?O(O(k*Ga)+O(O(g*Pa)+O(Ha*h))):O(0);L[c+152>>2]=d;L[c+148>>2]=r;L[c+144>>2]=n;H[c+136>>2]=0;H[c+128>>2]=0;H[c+132>>2]=0;L[c+140>>2]=-m}Na=Na+1|0;c=H[z+7688>>2];a=b}q=q+1|0;if(q>>>0>>0){continue}break}}H[i+ta>>2]=0}Oa=C+32|0;Oa=Z+32|0}function mv(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=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=0,w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=0,D=0,E=O(0),K=O(0),M=0,P=0,Q=O(0),R=O(0),S=O(0),T=0,U=O(0),V=O(0),W=O(0),X=O(0),Y=O(0),Z=O(0),_=O(0),$=O(0),aa=O(0),ba=O(0),ca=O(0),da=0,ea=0,fa=0,ga=O(0),ha=O(0),ia=O(0),ja=O(0),ka=O(0),la=O(0),ma=O(0),na=0,oa=O(0),pa=O(0),qa=O(0),ra=O(0),sa=O(0),ta=O(0),ua=O(0),va=O(0),wa=O(0),xa=O(0),ya=O(0),za=O(0),Aa=O(0),Ba=O(0),Ca=O(0),Da=O(0),Ea=O(0),Fa=O(0),Ga=O(0),Ha=O(0),Ia=O(0),Ja=0,Ka=0,La=O(0),Ma=O(0);M=Oa-320|0;Oa=M;h=N(b,240)+f|0;n=N(b,272)+f|0;Ja=N(b,144)+f|0;o=Oa-32|0;Oa=o;ea=b<<5;k=((ea+N(b,80)|0)+((b<<2)+60&524224)|0)+128|0;D=S6(a,0,k);j=k+ea|0;G[D+18>>1]=j;G[D+6>>1]=k;G[D+4>>1]=b;G[D+16>>1]=(j+N(b,160)|0)+144;a:{if(b>>>0<2){break a}j=b-1|0;l=j&3;i=1;if(b-2>>>0>=3){k=j&-4;v=D- -64|0;while(1){F[i+v|0]=H[((i<<5)+c|0)+24>>2];j=i+1|0;F[j+v|0]=H[((j<<5)+c|0)+24>>2];j=i+2|0;F[j+v|0]=H[((j<<5)+c|0)+24>>2];j=i+3|0;F[j+v|0]=H[((j<<5)+c|0)+24>>2];i=i+4|0;C=C+4|0;if((k|0)!=(C|0)){continue}break}}if(!l){break a}C=0;while(1){F[(i+D|0)- -64|0]=H[((i<<5)+c|0)+24>>2];i=i+1|0;C=C+1|0;if((l|0)!=(C|0)){continue}break}}H[o+16>>2]=0;H[o+20>>2]=0;H[o+24>>2]=0;H[o+28>>2]=0;H[o>>2]=0;H[o+4>>2]=0;H[D+32>>2]=0;H[D+36>>2]=0;H[o+8>>2]=0;H[o+12>>2]=0;H[D+40>>2]=0;H[D+44>>2]=0;j=H[o+20>>2];H[D+48>>2]=H[o+16>>2];H[D+52>>2]=j;j=H[o+28>>2];H[D+56>>2]=H[o+24>>2];H[D+60>>2]=j;m=S6(f,0,N(b,144));b:{if(!b){break b}i=J[D+4>>1];P=H[c+16>>2];L[h>>2]=L[P>>2];L[h+4>>2]=L[P+4>>2];L[h+8>>2]=L[P+8>>2];L[h+12>>2]=L[P+12>>2];L[h+16>>2]=L[P+16>>2];L[h+20>>2]=L[P+20>>2];L[h+24>>2]=L[P+24>>2];H[n+8>>2]=0;H[n+12>>2]=1065353216;H[n>>2]=0;H[n+4>>2]=0;s=L[P+72>>2];p=L[P+88>>2];v=H[P+80>>2];l=H[P+84>>2];k=H[P+68>>2];j=H[P+64>>2];H[D+156>>2]=0;L[D+152>>2]=p;H[D+140>>2]=0;L[D+136>>2]=s;H[D+128>>2]=j;H[D+132>>2]=k;H[D+144>>2]=v;H[D+148>>2]=l;Ka=D+128|0;da=ea+(Ka+ea|0)|0;j=da;H[j+24>>2]=0;H[j+28>>2]=0;H[j+16>>2]=0;H[j+20>>2]=0;H[j+8>>2]=0;H[j+12>>2]=0;H[j>>2]=0;H[j+4>>2]=0;Xu(m,P,P);j=i<<5;ea=(((j+Ka|0)+j|0)+j|0)+(i<<4)|0;L[ea>>2]=L[P+76>>2];C=1;if((b|0)==1){break b}while(1){k=h+N(C,28)|0;T=C<<5;P=T+c|0;j=H[P+16>>2];L[k>>2]=L[j>>2];L[k+4>>2]=L[j+4>>2];L[k+8>>2]=L[j+8>>2];L[k+12>>2]=L[j+12>>2];L[k+16>>2]=L[j+16>>2];L[k+20>>2]=L[j+20>>2];L[k+24>>2]=L[j+24>>2];k=n+(C<<4)|0;H[k+8>>2]=0;H[k+12>>2]=1065353216;H[k>>2]=0;H[k+4>>2]=0;i=H[j+80>>2];v=H[j+84>>2];l=H[j+68>>2];k=H[j+64>>2];s=L[j+72>>2];p=L[j+88>>2];fa=T+Ka|0;H[fa+28>>2]=0;L[fa+24>>2]=p;H[fa+12>>2]=0;L[fa+8>>2]=s;H[fa>>2]=k;H[fa+4>>2]=l;H[fa+16>>2]=i;H[fa+20>>2]=v;k=T+da|0;H[k+24>>2]=0;H[k+28>>2]=0;H[k+16>>2]=0;H[k+20>>2]=0;H[k+8>>2]=0;H[k+12>>2]=0;H[k>>2]=0;H[k+4>>2]=0;Xu(m+N(C,144)|0,j,j);L[ea+(C<<2)>>2]=L[j+76>>2];k=h+N(H[P+24>>2],28)|0;E=L[k+20>>2];s=L[k+24>>2];l=H[P+20>>2];w=L[l+20>>2];q=L[l+24>>2];p=L[k+16>>2];x=L[l+16>>2];v=Ja+N(C,84)|0;z=L[k+12>>2];t=L[l+12>>2];y=L[l>>2];A=L[k>>2];B=L[k+4>>2];K=L[l+4>>2];r=L[k+8>>2];u=L[l+8>>2];U=O(O(O(O(z*t)-O(y*A))-O(B*K))-O(r*u));L[v+12>>2]=U;W=O(O(O(A*K)+O(O(z*u)+O(r*t)))-O(y*B));L[v+8>>2]=W;X=O(O(O(r*y)+O(O(z*K)+O(B*t)))-O(u*A));L[v+4>>2]=X;Y=O(O(O(B*u)+O(O(z*y)+O(A*t)))-O(K*r));L[v>>2]=Y;ca=s;t=O(q+q);u=O(x+x);q=O(w+w);x=O(O(r*t)+O(O(A*u)+O(B*q)));s=O(O(z*z)+O(-.5));y=O(ca+O(O(r*x)+O(O(t*s)+O(z*O(O(A*q)-O(u*B))))));L[v+24>>2]=y;K=O(E+O(O(B*x)+O(O(q*s)+O(z*O(O(r*u)-O(t*A))))));L[v+20>>2]=K;u=O(p+O(O(A*x)+O(O(u*s)+O(z*O(O(B*t)-O(q*r))))));L[v+16>>2]=u;E=L[j+20>>2];s=L[j+24>>2];w=L[l+48>>2];q=L[l+44>>2];x=L[l+52>>2];p=L[j+16>>2];Z=L[j+12>>2];A=L[l+40>>2];B=L[l+28>>2];R=L[j>>2];S=L[j+4>>2];r=L[l+32>>2];V=L[j+8>>2];t=L[l+36>>2];_=O(O(O(O(Z*A)-O(B*R))-O(S*r))-O(V*t));L[v+40>>2]=_;Q=O(O(O(R*r)+O(O(Z*t)+O(V*A)))-O(B*S));L[v+36>>2]=Q;z=O(O(O(V*B)+O(O(Z*r)+O(S*A)))-O(t*R));L[v+32>>2]=z;A=O(O(O(S*t)+O(O(Z*B)+O(R*A)))-O(r*V));L[v+28>>2]=A;ca=s;B=O(x+x);r=O(q+q);t=O(w+w);x=O(O(V*B)+O(O(R*r)+O(S*t)));s=O(O(Z*Z)+O(-.5));w=O(ca+O(O(V*x)+O(O(B*s)+O(Z*O(O(R*t)-O(r*S))))));L[v+52>>2]=w;q=O(E+O(O(S*x)+O(O(t*s)+O(Z*O(O(V*r)-O(B*R))))));L[v+48>>2]=q;p=O(p+O(O(R*x)+O(O(r*s)+O(Z*O(O(S*B)-O(t*V))))));L[v+44>>2]=p;t=O(O(W*Q)+O(O(X*z)+O(O(U*_)+O(Y*A))));L[v+68>>2]=t;x=O(O(A*X)+O(O(O(U*Q)-O(_*W))-O(Y*z)));L[v- -64>>2]=x;E=O(O(Q*Y)+O(O(O(U*z)-O(_*X))-O(W*A)));L[v+60>>2]=E;s=O(O(z*W)+O(O(O(U*A)-O(_*Y))-O(X*Q)));L[v+56>>2]=s;p=O(p-u);r=O(p+p);p=O(q-K);u=O(p+p);p=O(w-y);w=O(p+p);q=O(O(O(O(-Y)*r)-O(u*X))-O(W*w));p=O(O(U*U)+O(-.5));L[v+80>>2]=O(O(w*p)+O(U*O(O(X*r)-O(Y*u))))-O(W*q);L[v+76>>2]=O(O(u*p)+O(U*O(O(Y*w)-O(W*r))))-O(X*q);L[v+72>>2]=O(O(r*p)+O(U*O(O(W*u)-O(X*w))))-O(Y*q);if(t>2]=-t;L[v+64>>2]=-x;L[v+60>>2]=-E;L[v+56>>2]=-s;L[v+40>>2]=-_;L[v+36>>2]=-Q;L[v+32>>2]=-z;L[v+28>>2]=-A}C=C+1|0;if((C|0)!=(b|0)){continue}break}}C=1;if(b>>>0>1){n=D+J[D+6>>1]|0;while(1){j=h+N(I[(D+C|0)- -64|0],28)|0;w=L[j+20>>2];q=L[j+24>>2];x=L[j+16>>2];k=h+N(C,28)|0;y=L[k+16>>2];j=Ja+N(C,84)|0;E=L[j+44>>2];s=L[j+48>>2];K=L[k+20>>2];p=L[j+52>>2];u=L[k+24>>2];j=n+(C<<5)|0;H[j+28>>2]=0;L[j+24>>2]=p-u;L[j+20>>2]=s-K;L[j+16>>2]=E-y;H[j+12>>2]=0;L[j>>2]=y-x;L[j+8>>2]=u-q;L[j+4>>2]=K-w;C=C+1|0;if((C|0)!=(b|0)){continue}break}}Oa=o+32|0;S6(J[a+18>>1]+a|0,0,N(b,160)+144|0);l=J[a+6>>1];k=J[a+16>>1];ea=J[a+4>>1];j=H[c>>2];n=H[c+4>>2];o=J[a+18>>1]+a|0;H[o+296>>2]=1;H[o+300>>2]=0;H[o+288>>2]=j;H[o+292>>2]=n;da=1;if(ea>>>0>1){v=((a+k|0)+N(ea,400)|0)+(ea<<5)|0;l=a+l|0;k=o+144|0;while(1){n=da<<5;i=n+c|0;o=H[i+4>>2];j=k+N(da,160)|0;H[j+144>>2]=H[i>>2];H[j+148>>2]=o;o=H[i+12>>2];H[j+152>>2]=H[i+8>>2];H[j+156>>2]=o;o=l+n|0;u=L[o+24>>2];w=L[o+16>>2];q=L[o+20>>2];o=v+N(da,96)|0;H[o+92>>2]=0;H[o+84>>2]=0;H[o+88>>2]=1065353216;H[o+76>>2]=0;H[o+80>>2]=0;H[o+60>>2]=0;H[o+52>>2]=1065353216;H[o+56>>2]=0;H[o+44>>2]=0;H[o+48>>2]=0;H[o+28>>2]=0;H[o+20>>2]=0;H[o+24>>2]=0;H[o+12>>2]=0;H[o+16>>2]=1065353216;x=O(w*O(0));s=O(q*O(-0));L[o+72>>2]=O(x+s)+O(0);p=O(u*O(0));L[o+68>>2]=O(p-w)+O(0);E=O(u*O(-0));L[o+64>>2]=O(q+E)+O(0);L[o+40>>2]=O(w+s)+O(0);s=O(w*O(-0));L[o+36>>2]=O(p+s)+O(0);p=O(q*O(0));L[o+32>>2]=O(p-u)+O(0);L[o+8>>2]=O(x-q)+O(0);L[o+4>>2]=O(s+u)+O(0);L[o>>2]=O(p+E)+O(0);da=da+1|0;if((ea|0)!=(da|0)){continue}break}}H[M+64>>2]=0;D=N(b,336);o=N(b,288)+f|0;c:{if(b>>>0<2){break c}d=O(O(1)/d);c=b-1|0;n=c&7;i=1;if(b-2>>>0>=7){c=c&-8;while(1){j=(M- -64|0)+(i<<2)|0;L[j>>2]=d;L[j+28>>2]=d;L[j+24>>2]=d;L[j+20>>2]=d;L[j+16>>2]=d;L[j+12>>2]=d;L[j+8>>2]=d;L[j+4>>2]=d;i=i+8|0;na=na+8|0;if((c|0)!=(na|0)){continue}break}}if(!n){break c}c=0;while(1){L[(M- -64|0)+(i<<2)>>2]=d;i=i+1|0;c=c+1|0;if((n|0)!=(c|0)){continue}break}}fa=S6(o,0,N(b,48));H[M+56>>2]=D;H[M+24>>2]=D;H[M+52>>2]=g;H[M+48>>2]=f;c=H[M+52>>2];H[M+16>>2]=H[M+48>>2];H[M+20>>2]=c;o=a;ea=M- -64|0;l=ea;c=Oa-1936|0;Oa=c;Ja=e&65535;if(Ja){d:{if(b>>>0<2){break d}e=b-1|0;na=e&3;a=1;if(b-2>>>0>=3){j=e&-4;e=0;while(1){k=c+912|0;L[k+(a<<4)>>2]=L[l+(a<<2)>>2];n=a+1|0;L[k+(n<<4)>>2]=L[l+(n<<2)>>2];n=a+2|0;L[k+(n<<4)>>2]=L[l+(n<<2)>>2];n=a+3|0;L[k+(n<<4)>>2]=L[l+(n<<2)>>2];a=a+4|0;e=e+4|0;if((j|0)!=(e|0)){continue}break}}if(!na){break d}e=0;while(1){L[(c+912|0)+(a<<4)>>2]=L[l+(a<<2)>>2];a=a+1|0;e=e+1|0;if((na|0)!=(e|0)){continue}break}}i=H[M+24>>2];Ka=N(b,144);T=i+Ka|0;H[M+24>>2]=T+Ka;a=J[o+4>>1];v=(o+J[o+16>>1]|0)+N(a,400)|0;l=a<<5;P=H[M+16>>2];k=J[o+6>>1];e:{if(!b){break e}e=0;a=0;if(b-1>>>0>=3){na=b&-4;h=o- -64|0;da=0;while(1){m=c+400|0;n=m+(a<<3)|0;H[n>>2]=I[a+h|0];H[n+4>>2]=0;j=a|1;n=m+(j<<3)|0;H[n>>2]=I[h+j|0];H[n+4>>2]=0;j=a|2;n=m+(j<<3)|0;H[n>>2]=I[h+j|0];H[n+4>>2]=0;j=a|3;n=m+(j<<3)|0;H[n>>2]=I[h+j|0];H[n+4>>2]=0;a=a+4|0;da=da+4|0;if((na|0)!=(da|0)){continue}break}}j=b&3;if(!j){break e}while(1){n=(c+400|0)+(a<<3)|0;H[n>>2]=I[(a+o|0)- -64|0];H[n+4>>2]=0;a=a+1|0;e=e+1|0;if((j|0)!=(e|0)){continue}break}}da=l+v|0;na=i+P|0;i=P+T|0;v=k+o|0;j=b>>>0>1;while(1){P=R6(na,f,Ka);Ja=Ja-1|0;a=b;f:{if(!j){break f}while(1){e=a-1|0;k=(c+912|0)+(e<<4)|0;n=H[k+4>>2];H[c+32>>2]=H[k>>2];H[c+36>>2]=n;n=H[k+12>>2];H[c+40>>2]=H[k+8>>2];H[c+44>>2]=n;n=N(e,144);fv(c+256|0,n+P|0,da+N(e,96)|0,(fa+N(a,48)|0)-48|0,c+32|0);l=P+N(H[(c+400|0)+(e<<3)>>2],144)|0;ya=L[l+96>>2];za=L[l+100>>2];Aa=L[l+104>>2];Ba=L[l+112>>2];Ca=L[l+116>>2];Da=L[l+120>>2];Ea=L[l+128>>2];Fa=L[l+132>>2];Ga=L[l+136>>2];Ha=L[l+20>>2];Ia=L[l+24>>2];U=L[l+36>>2];W=L[l+40>>2];X=L[l+52>>2];Y=L[l+56>>2];a=l- -64|0;Z=L[a>>2];R=L[l+68>>2];S=L[l+72>>2];V=L[l+80>>2];_=L[l+84>>2];Q=L[l+88>>2];k=v+(e<<5)|0;$=L[k>>2];z=L[l>>2];A=L[l+4>>2];B=L[l+8>>2];r=L[l+16>>2];t=L[l+32>>2];y=L[l+48>>2];aa=L[k+4>>2];ba=L[k+8>>2];K=L[c+352>>2];u=L[c+356>>2];w=L[c+360>>2];q=L[c+368>>2];x=L[c+372>>2];E=L[c+376>>2];s=L[c+384>>2];p=L[c+388>>2];d=L[c+392>>2];La=L[c+308>>2];Ma=L[c+312>>2];wa=L[c+320>>2];xa=L[c+324>>2];ca=L[c+292>>2];ga=L[c+328>>2];oa=L[c+296>>2];ha=L[c+336>>2];ia=L[c+340>>2];pa=L[c+276>>2];ja=L[c+344>>2];qa=L[c+280>>2];ra=L[c+256>>2];sa=L[c+260>>2];ta=L[c+264>>2];ka=L[c+304>>2];ua=L[c+288>>2];va=L[c+272>>2];H[l+140>>2]=0;H[l+124>>2]=0;H[l+108>>2]=0;H[l+92>>2]=0;H[l+76>>2]=0;H[l+60>>2]=0;la=O(O(aa*ua)-O(ba*va));L[l+48>>2]=y+O(ka+la);H[l+44>>2]=0;L[l+32>>2]=ua+t;H[l+28>>2]=0;L[l+16>>2]=va+r;H[l+12>>2]=0;L[l+8>>2]=ta+B;L[l+4>>2]=sa+A;L[l>>2]=ra+z;ma=O(O($*qa)-O(aa*ta));L[l+88>>2]=Q+O(ja+ma);Q=O(O($*pa)-O(aa*sa));L[l+84>>2]=_+O(ia+Q);z=O(O($*va)-O(aa*ra));L[l+80>>2]=V+O(ha+z);A=O(O(ba*ta)-O($*oa));L[l+72>>2]=S+O(ga+A);B=O(O(ba*sa)-O($*ca));L[l+68>>2]=R+O(xa+B);r=O(O(ba*ra)-O($*ua));L[a>>2]=Z+O(wa+r);t=O(O(aa*oa)-O(ba*qa));L[l+56>>2]=Y+O(Ma+t);y=O(O(aa*ca)-O(ba*pa));L[l+52>>2]=X+O(La+y);L[l+40>>2]=oa+W;L[l+36>>2]=ca+U;L[l+24>>2]=qa+Ia;L[l+20>>2]=pa+Ha;ca=d;d=O(O(O(O($*ia)+O(ja*O(0)))-O(aa*ha))+O(O(O(ma*O(0))+O(O($*Q)-O(aa*z)))*O(.5)));L[l+136>>2]=Ga+O(ca+O(d+d));d=O(O(O(O(ba*ha)+O(O(ia*O(0))-O($*ja)))+O(O(O(O(ba*z)+O(Q*O(0)))-O($*ma))*O(.5)))+O(O(O(O($*xa)+O(ga*O(0)))-O(aa*wa))+O(O(O(A*O(0))+O(O($*B)-O(aa*r)))*O(.5))));L[l+132>>2]=Fa+O(p+d);p=O(O(O(O(ha*O(0))+O(O(aa*ja)-O(ba*ia)))+O(O(O(aa*ma)+O(O(z*O(0))-O(ba*Q)))*O(.5)))+O(O(O(O($*La)+O(Ma*O(0)))-O(aa*ka))+O(O(O(t*O(0))+O(O($*y)-O(aa*la)))*O(.5))));L[l+128>>2]=Ea+O(s+p);L[l+120>>2]=Da+O(E+d);d=O(O(O(ba*wa)+O(O(xa*O(0))-O($*ga)))+O(O(O(O(ba*r)+O(B*O(0)))-O($*A))*O(.5)));L[l+116>>2]=Ca+O(x+O(d+d));d=O(O(O(O(ba*ka)+O(O(La*O(0))-O($*Ma)))+O(O(O(O(ba*la)+O(y*O(0)))-O($*t))*O(.5)))+O(O(O(wa*O(0))+O(O(aa*ga)-O(ba*xa)))+O(O(O(aa*A)+O(O(r*O(0))-O(ba*B)))*O(.5))));L[l+112>>2]=Ba+O(q+d);L[l+104>>2]=Aa+O(w+p);L[l+100>>2]=za+O(u+d);d=O(O(O(ka*O(0))+O(O(aa*Ma)-O(ba*La)))+O(O(O(aa*t)+O(O(la*O(0))-O(ba*y)))*O(.5)));L[l+96>>2]=ya+O(K+O(d+d));a=H[c+268>>2];k=i+n|0;H[k+8>>2]=H[c+264>>2];H[k+12>>2]=a;a=H[c+260>>2];H[k>>2]=H[c+256>>2];H[k+4>>2]=a;a=H[c+284>>2];H[k+24>>2]=H[c+280>>2];H[k+28>>2]=a;a=H[c+276>>2];H[k+16>>2]=H[c+272>>2];H[k+20>>2]=a;a=H[c+300>>2];H[k+40>>2]=H[c+296>>2];H[k+44>>2]=a;a=H[c+292>>2];H[k+32>>2]=H[c+288>>2];H[k+36>>2]=a;a=H[c+316>>2];H[k+56>>2]=H[c+312>>2];H[k+60>>2]=a;a=H[c+308>>2];H[k+48>>2]=H[c+304>>2];H[k+52>>2]=a;a=H[c+332>>2];H[k+72>>2]=H[c+328>>2];H[k+76>>2]=a;a=H[c+324>>2];n=k- -64|0;H[n>>2]=H[c+320>>2];H[n+4>>2]=a;a=H[c+340>>2];H[k+80>>2]=H[c+336>>2];H[k+84>>2]=a;a=H[c+348>>2];H[k+88>>2]=H[c+344>>2];H[k+92>>2]=a;a=H[c+356>>2];H[k+96>>2]=H[c+352>>2];H[k+100>>2]=a;a=H[c+364>>2];H[k+104>>2]=H[c+360>>2];H[k+108>>2]=a;a=H[c+380>>2];H[k+120>>2]=H[c+376>>2];H[k+124>>2]=a;a=H[c+372>>2];H[k+112>>2]=H[c+368>>2];H[k+116>>2]=a;a=H[c+396>>2];H[k+136>>2]=H[c+392>>2];H[k+140>>2]=a;a=H[c+388>>2];H[k+128>>2]=H[c+384>>2];H[k+132>>2]=a;a=e;if(a>>>0>1){continue}break}C=1;if(b>>>0<=1){break f}while(1){a=v+(C<<5)|0;p=L[a+8>>2];d=L[a>>2];L[c+100>>2]=-L[a+4>>2];L[c+96>>2]=-d;H[c+108>>2]=0;L[c+104>>2]=-p;a=H[c+100>>2];H[c+16>>2]=H[c+96>>2];H[c+20>>2]=a;a=H[c+108>>2];H[c+24>>2]=H[c+104>>2];H[c+28>>2]=a;n=c+112|0;gv(n,c+16|0,P+N(H[(c+400|0)+(C<<3)>>2],144)|0);e=N(C,144);a=e+i|0;wa=L[a>>2];xa=L[a+4>>2];ga=L[a+8>>2];ha=L[a+16>>2];ia=L[a+20>>2];ja=L[a+24>>2];ka=L[a+32>>2];ca=L[a+36>>2];oa=L[a+40>>2];pa=L[a+48>>2];qa=L[a+52>>2];ra=L[a+56>>2];sa=L[a- -64>>2];ta=L[a+68>>2];ua=L[a+72>>2];va=L[a+80>>2];la=L[a+84>>2];ma=L[a+88>>2];ya=L[a+96>>2];za=L[a+100>>2];Aa=L[a+104>>2];Ba=L[a+112>>2];Ca=L[a+116>>2];Da=L[a+120>>2];Ea=L[a+128>>2];Fa=L[a+132>>2];Ga=L[a+136>>2];Ha=L[c+112>>2];Ia=L[c+116>>2];U=L[c+120>>2];W=L[c+128>>2];X=L[c+132>>2];Y=L[c+136>>2];Z=L[c+144>>2];R=L[c+148>>2];S=L[c+152>>2];V=L[c+160>>2];_=L[c+164>>2];Q=L[c+168>>2];z=L[c+176>>2];A=L[c+180>>2];B=L[c+184>>2];r=L[c+192>>2];t=L[c+196>>2];y=L[c+200>>2];K=L[c+208>>2];u=L[c+212>>2];w=L[c+216>>2];q=L[c+224>>2];x=L[c+228>>2];E=L[c+232>>2];s=L[c+240>>2];p=L[c+244>>2];d=L[c+248>>2];H[c+396>>2]=0;H[c+380>>2]=0;H[c+364>>2]=0;H[c+348>>2]=0;H[c+332>>2]=0;H[c+316>>2]=0;H[c+300>>2]=0;H[c+284>>2]=0;H[c+268>>2]=0;L[c+392>>2]=d-Ga;L[c+388>>2]=p-Fa;L[c+384>>2]=s-Ea;L[c+376>>2]=E-Da;L[c+372>>2]=x-Ca;L[c+368>>2]=q-Ba;L[c+360>>2]=w-Aa;L[c+356>>2]=u-za;L[c+352>>2]=K-ya;L[c+344>>2]=y-ma;L[c+340>>2]=t-la;L[c+336>>2]=r-va;L[c+328>>2]=B-ua;L[c+324>>2]=A-ta;L[c+320>>2]=z-sa;L[c+312>>2]=Q-ra;L[c+308>>2]=_-qa;L[c+304>>2]=V-pa;L[c+296>>2]=S-oa;L[c+292>>2]=R-ca;L[c+288>>2]=Z-ka;L[c+280>>2]=Y-ja;L[c+276>>2]=X-ia;L[c+272>>2]=W-ha;L[c+264>>2]=U-ga;L[c+260>>2]=Ia-xa;L[c+256>>2]=Ha-wa;k=(c+912|0)+(C<<4)|0;a=H[k+4>>2];H[c>>2]=H[k>>2];H[c+4>>2]=a;a=H[k+12>>2];H[c+8>>2]=H[k+8>>2];H[c+12>>2]=a;l=n;n=c+256|0;a=da+N(C,96)|0;T=fa+N(C,48)|0;fv(l,n,a,T,c);h=Oa-720|0;Oa=h;m=e+P|0;e=a;a=h+624|0;Mu(h+384|0,m,e,a);H[h+380>>2]=0;H[h+364>>2]=0;K=L[h+400>>2];u=L[h+420>>2];t=L[h+416>>2];w=L[h+404>>2];x=O(O(K*u)-O(t*w));p=L[h+392>>2];q=L[h+424>>2];d=L[h+408>>2];E=O(O(w*q)-O(u*d));y=L[h+384>>2];s=O(O(d*t)-O(q*K));d=L[h+388>>2];r=O(O(1)/O(O(x*p)+O(O(E*y)+O(s*d))));L[h+376>>2]=O(O(y*w)-O(K*d))*r;d=O(O(O(t*d)-O(y*u))*r);L[h+372>>2]=d;L[h+360>>2]=d;L[h+356>>2]=O(O(q*y)-O(p*t))*r;H[h+348>>2]=0;p=O(x*r);L[h+368>>2]=p;d=O(s*r);L[h+352>>2]=d;L[h+344>>2]=p;L[h+340>>2]=d;L[h+336>>2]=E*r;wa=L[n+20>>2];xa=L[m+20>>2];ga=L[n+24>>2];ha=L[m+24>>2];ia=L[n+36>>2];ja=L[m+36>>2];ka=L[n+40>>2];ca=L[m+40>>2];oa=L[n+52>>2];pa=L[m+52>>2];qa=L[n+56>>2];ra=L[m+56>>2];sa=L[n- -64>>2];l=m- -64|0;ta=L[l>>2];ua=L[n+68>>2];va=L[m+68>>2];la=L[n+72>>2];ma=L[m+72>>2];ya=L[n+80>>2];za=L[m+80>>2];Aa=L[n+84>>2];Ba=L[m+84>>2];Ca=L[n+88>>2];Da=L[m+88>>2];Ea=L[n+100>>2];Fa=L[m+100>>2];Ga=L[n+104>>2];Ha=L[m+104>>2];Ia=L[n+112>>2];U=L[m+112>>2];W=L[n+116>>2];X=L[m+116>>2];Y=L[n+120>>2];Z=L[m+120>>2];R=L[n+128>>2];S=L[m+128>>2];V=L[n+132>>2];_=L[m+132>>2];Q=L[n+136>>2];z=L[m+136>>2];A=L[n>>2];B=L[m>>2];r=L[n+4>>2];t=L[m+4>>2];y=L[n+8>>2];K=L[m+8>>2];u=L[n+16>>2];w=L[m+16>>2];q=L[n+32>>2];x=L[m+32>>2];E=L[n+48>>2];s=L[m+48>>2];p=L[n+96>>2];d=L[m+96>>2];H[h+332>>2]=0;H[h+316>>2]=0;H[h+300>>2]=0;H[h+284>>2]=0;H[h+268>>2]=0;H[h+252>>2]=0;H[h+236>>2]=0;H[h+220>>2]=0;L[h+328>>2]=z+Q;L[h+324>>2]=_+V;L[h+320>>2]=S+R;L[h+312>>2]=Z+Y;L[h+308>>2]=X+W;L[h+304>>2]=U+Ia;L[h+296>>2]=Ha+Ga;L[h+292>>2]=Fa+Ea;L[h+280>>2]=Da+Ca;L[h+276>>2]=Ba+Aa;L[h+272>>2]=za+ya;L[h+264>>2]=ma+la;L[h+260>>2]=va+ua;L[h+256>>2]=ta+sa;L[h+248>>2]=ra+qa;L[h+244>>2]=pa+oa;L[h+232>>2]=ca+ka;L[h+228>>2]=ja+ia;L[h+216>>2]=ha+ga;L[h+212>>2]=xa+wa;H[h+204>>2]=0;L[h+288>>2]=d+p;L[h+240>>2]=s+E;L[h+224>>2]=x+q;L[h+208>>2]=w+u;L[h+200>>2]=K+y;L[h+196>>2]=t+r;L[h+192>>2]=B+A;k=h+48|0;n=h+192|0;e=h+528|0;Nu(k,n,h+336|0,a,e);a=H[h+76>>2];H[h+216>>2]=H[h+72>>2];H[h+220>>2]=a;a=H[h+92>>2];H[h+232>>2]=H[h+88>>2];H[h+236>>2]=a;a=H[h+108>>2];H[h+248>>2]=H[h+104>>2];H[h+252>>2]=a;a=H[h+124>>2];H[h+264>>2]=H[h+120>>2];H[h+268>>2]=a;a=H[h+116>>2];H[h+256>>2]=H[h+112>>2];H[h+260>>2]=a;a=H[h+60>>2];H[h+200>>2]=H[h+56>>2];H[h+204>>2]=a;a=H[h+52>>2];H[h+192>>2]=H[h+48>>2];H[h+196>>2]=a;a=H[h+68>>2];H[h+208>>2]=H[h+64>>2];H[h+212>>2]=a;a=H[h+84>>2];H[h+224>>2]=H[h+80>>2];H[h+228>>2]=a;a=H[h+100>>2];H[h+240>>2]=H[h+96>>2];H[h+244>>2]=a;a=H[h+140>>2];H[h+280>>2]=H[h+136>>2];H[h+284>>2]=a;a=H[h+132>>2];H[h+272>>2]=H[h+128>>2];H[h+276>>2]=a;a=H[h+156>>2];H[h+296>>2]=H[h+152>>2];H[h+300>>2]=a;a=H[h+172>>2];H[h+312>>2]=H[h+168>>2];H[h+316>>2]=a;a=H[h+164>>2];H[h+304>>2]=H[h+160>>2];H[h+308>>2]=a;a=H[h+180>>2];H[h+320>>2]=H[h+176>>2];H[h+324>>2]=a;a=H[h+188>>2];H[h+328>>2]=H[h+184>>2];H[h+332>>2]=a;a=H[h+148>>2];H[h+288>>2]=H[h+144>>2];H[h+292>>2]=a;Lu(k,n);Mu(h,k,e,h+432|0);V=L[h+20>>2];_=L[h+356>>2];Q=L[h+36>>2];z=L[h+372>>2];A=L[h+24>>2];B=L[h+360>>2];r=L[h+40>>2];t=L[h+376>>2];y=L[h+8>>2];x=L[h+344>>2];K=L[h>>2];u=L[h+336>>2];w=L[h+4>>2];q=L[h+340>>2];E=L[h+32>>2];s=L[h+368>>2];p=L[h+16>>2];d=L[h+352>>2];H[c+92>>2]=0;H[c+76>>2]=0;H[c+60>>2]=0;S=O(d+p);Q=O(z+Q);R=O(s+E);z=O(_+V);p=O(O(S*Q)-O(R*z));x=O(x+y);y=O(t+r);d=O(B+A);E=O(O(z*y)-O(Q*d));u=O(u+K);q=O(q+w);s=O(O(d*R)-O(y*S));w=O(O(1)/O(O(p*x)+O(O(E*u)+O(q*s))));L[c+88>>2]=O(O(u*z)-O(S*q))*w;d=O(O(O(R*q)-O(u*Q))*w);L[c+84>>2]=d;p=O(p*w);L[c+80>>2]=p;L[c+72>>2]=d;L[c+68>>2]=O(O(y*u)-O(x*R))*w;d=O(s*w);L[c+64>>2]=d;L[c+56>>2]=p;L[c+52>>2]=d;L[c+48>>2]=E*w;Oa=h+720|0;a=H[c+92>>2];H[T+40>>2]=H[c+88>>2];H[T+44>>2]=a;a=H[c+84>>2];H[T+32>>2]=H[c+80>>2];H[T+36>>2]=a;a=H[c+76>>2];H[T+24>>2]=H[c+72>>2];H[T+28>>2]=a;e=c- -64|0;a=H[e+4>>2];H[T+16>>2]=H[e>>2];H[T+20>>2]=a;a=H[c+60>>2];H[T+8>>2]=H[c+56>>2];H[T+12>>2]=a;a=H[c+52>>2];H[T>>2]=H[c+48>>2];H[T+4>>2]=a;wa=L[m>>2];xa=L[m+4>>2];ga=L[m+8>>2];ha=L[m+16>>2];ia=L[m+20>>2];ja=L[m+24>>2];ka=L[m+32>>2];ca=L[m+36>>2];oa=L[m+40>>2];pa=L[m+48>>2];qa=L[m+52>>2];ra=L[m+56>>2];sa=L[l>>2];ta=L[m+68>>2];ua=L[m+72>>2];va=L[m+80>>2];la=L[m+84>>2];ma=L[m+88>>2];ya=L[m+96>>2];za=L[m+100>>2];Aa=L[m+104>>2];Ba=L[m+112>>2];Ca=L[m+116>>2];Da=L[m+120>>2];Ea=L[m+128>>2];Fa=L[m+132>>2];Ga=L[m+136>>2];Ha=L[c+112>>2];Ia=L[c+116>>2];U=L[c+120>>2];W=L[c+128>>2];X=L[c+132>>2];Y=L[c+136>>2];Z=L[c+144>>2];R=L[c+148>>2];S=L[c+152>>2];V=L[c+160>>2];_=L[c+164>>2];Q=L[c+168>>2];z=L[c+176>>2];A=L[c+180>>2];B=L[c+184>>2];r=L[c+192>>2];t=L[c+196>>2];y=L[c+200>>2];K=L[c+208>>2];u=L[c+212>>2];w=L[c+216>>2];q=L[c+224>>2];x=L[c+228>>2];E=L[c+232>>2];s=L[c+240>>2];p=L[c+244>>2];d=L[c+248>>2];H[m+140>>2]=0;H[m+124>>2]=0;H[m+108>>2]=0;H[m+92>>2]=0;H[m+76>>2]=0;H[m+60>>2]=0;H[m+44>>2]=0;H[m+28>>2]=0;H[m+12>>2]=0;L[m+136>>2]=Ga+d;L[m+132>>2]=Fa+p;L[m+128>>2]=Ea+s;L[m+120>>2]=Da+E;L[m+116>>2]=Ca+x;L[m+112>>2]=Ba+q;L[m+104>>2]=Aa+w;L[m+100>>2]=za+u;L[m+96>>2]=ya+K;L[m+88>>2]=ma+y;L[m+84>>2]=la+t;L[m+80>>2]=va+r;L[m+72>>2]=ua+B;L[m+68>>2]=ta+A;L[l>>2]=sa+z;L[m+56>>2]=ra+Q;L[m+52>>2]=qa+_;L[m+48>>2]=pa+V;L[m+40>>2]=oa+S;L[m+36>>2]=ca+R;L[m+32>>2]=ka+Z;L[m+24>>2]=ja+Y;L[m+20>>2]=ia+X;L[m+16>>2]=ha+W;L[m+8>>2]=ga+U;L[m+4>>2]=xa+Ia;L[m>>2]=wa+Ha;C=C+1|0;if((C|0)!=(b|0)){continue}break}}if(Ja){continue}break}}Oa=c+1936|0;H[M+40>>2]=D;H[M+8>>2]=D;H[M+36>>2]=g;H[M+32>>2]=f;a=H[M+36>>2];H[M>>2]=H[M+32>>2];H[M+4>>2]=a;i=Oa-512|0;Oa=i;n=J[o+18>>1];e=J[o+6>>1];c=J[o+16>>1];b=H[M+8>>2];j=J[o+4>>1];a=N(j,144);H[M+8>>2]=b+a;l=R6(b+H[M>>2]|0,f,a);g=J[o+4>>1]-1|0;if(g){k=((c+o|0)+N(j,400)|0)+(j<<5)|0;na=e+o|0;j=(n+o|0)+144|0;while(1){n=l+N(g,144)|0;f=i+416|0;Mu(i+368|0,n,k+N(g,96)|0,f);q=L[ea+(g<<2)>>2];a=fa+N(g,48)|0;t=O(O(q*L[a>>2])+L[i+368>>2]);K=O(O(q*L[a+16>>2])+L[i+384>>2]);u=O(O(q*L[a+36>>2])+L[i+404>>2]);y=O(O(q*L[a+32>>2])+L[i+400>>2]);s=O(O(q*L[a+20>>2])+L[i+388>>2]);p=O(O(K*u)-O(y*s));x=O(O(q*L[a+8>>2])+L[i+376>>2]);w=O(O(q*L[a+40>>2])+L[i+408>>2]);d=O(O(q*L[a+24>>2])+L[i+392>>2]);E=O(O(s*w)-O(u*d));q=O(O(q*L[a+4>>2])+L[i+372>>2]);d=O(O(d*y)-O(w*K));r=O(O(1)/O(O(p*x)+O(O(E*t)+O(q*d))));L[i+360>>2]=O(O(t*s)-O(K*q))*r;s=O(p*r);L[i+352>>2]=s;p=O(O(O(y*q)-O(t*u))*r);L[i+344>>2]=p;d=O(d*r);L[i+336>>2]=d;H[i+332>>2]=0;L[i+328>>2]=s;H[i+364>>2]=0;H[i+348>>2]=0;L[i+356>>2]=p;L[i+340>>2]=O(O(w*t)-O(x*y))*r;L[i+324>>2]=d;L[i+320>>2]=E*r;a=H[i+332>>2];v=j+N(g,160)|0;b=v;H[b+104>>2]=H[i+328>>2];H[b+108>>2]=a;a=H[i+324>>2];H[b+96>>2]=H[i+320>>2];H[b+100>>2]=a;a=H[i+364>>2];H[b+136>>2]=H[i+360>>2];H[b+140>>2]=a;a=H[i+356>>2];H[b+128>>2]=H[i+352>>2];H[b+132>>2]=a;a=H[i+348>>2];H[b+120>>2]=H[i+344>>2];H[b+124>>2]=a;a=H[i+340>>2];H[b+112>>2]=H[i+336>>2];H[b+116>>2]=a;e=(g+o|0)- -64|0;c=I[e|0];b=na+(g<<5)|0;a=H[b+12>>2];H[i+168>>2]=H[b+8>>2];H[i+172>>2]=a;a=H[b+4>>2];H[i+160>>2]=H[b>>2];H[i+164>>2]=a;b=i+16|0;Nu(b,n,i+320|0,f,v);a=H[i+172>>2];H[i+8>>2]=H[i+168>>2];H[i+12>>2]=a;a=H[i+164>>2];H[i>>2]=H[i+160>>2];H[i+4>>2]=a;gv(i+176|0,i,b);a=l+N(c,144)|0;ga=L[a+20>>2];ha=L[a+24>>2];ia=L[a+36>>2];ja=L[a+40>>2];ka=L[a+52>>2];ca=L[a+56>>2];oa=L[a- -64>>2];pa=L[a+68>>2];qa=L[a+72>>2];ra=L[a+80>>2];sa=L[a+84>>2];ta=L[a+88>>2];ua=L[a+100>>2];va=L[a+104>>2];la=L[a+112>>2];ma=L[a+116>>2];ya=L[a+120>>2];za=L[a+128>>2];Aa=L[a+132>>2];Ba=L[a+136>>2];Ca=L[a>>2];Da=L[a+4>>2];Ea=L[a+8>>2];Fa=L[a+16>>2];Ga=L[a+32>>2];Ha=L[a+48>>2];Ia=L[i+196>>2];U=L[i+200>>2];W=L[i+212>>2];X=L[i+216>>2];Y=L[i+228>>2];Z=L[i+232>>2];R=L[i+240>>2];S=L[i+244>>2];V=L[i+248>>2];_=L[i+256>>2];Q=L[i+260>>2];z=L[i+264>>2];A=L[i+276>>2];B=L[i+280>>2];r=L[i+288>>2];t=L[i+292>>2];y=L[i+296>>2];K=L[i+304>>2];u=L[i+308>>2];w=L[i+312>>2];q=L[i+176>>2];x=L[i+180>>2];E=L[i+184>>2];s=L[i+192>>2];p=L[i+208>>2];d=L[i+224>>2];b=l+N(I[e|0],144)|0;L[b+96>>2]=L[a+96>>2]+L[i+272>>2];L[b+48>>2]=Ha+d;L[b+32>>2]=Ga+p;L[b+16>>2]=Fa+s;H[b+12>>2]=0;L[b+8>>2]=Ea+E;L[b+4>>2]=Da+x;L[b>>2]=Ca+q;H[b+140>>2]=0;L[b+136>>2]=Ba+w;L[b+132>>2]=Aa+u;L[b+128>>2]=za+K;H[b+124>>2]=0;L[b+120>>2]=ya+y;L[b+116>>2]=ma+t;L[b+112>>2]=la+r;H[b+108>>2]=0;L[b+104>>2]=va+B;L[b+100>>2]=ua+A;H[b+92>>2]=0;L[b+88>>2]=ta+z;L[b+84>>2]=sa+Q;L[b+80>>2]=ra+_;H[b+76>>2]=0;L[b+72>>2]=qa+V;L[b+68>>2]=pa+S;L[b- -64>>2]=oa+R;H[b+60>>2]=0;L[b+56>>2]=ca+Z;L[b+52>>2]=ka+Y;H[b+44>>2]=0;L[b+40>>2]=ja+X;L[b+36>>2]=ia+W;H[b+28>>2]=0;L[b+24>>2]=ha+U;L[b+20>>2]=ga+Ia;g=g-1|0;if(g){continue}break}}Lu(i+176|0,l);a=H[i+180>>2];b=o+J[o+18>>1]|0;H[b>>2]=H[i+176>>2];H[b+4>>2]=a;a=H[i+188>>2];H[b+8>>2]=H[i+184>>2];H[b+12>>2]=a;a=H[i+196>>2];H[b+16>>2]=H[i+192>>2];H[b+20>>2]=a;a=H[i+204>>2];H[b+24>>2]=H[i+200>>2];H[b+28>>2]=a;a=H[i+212>>2];H[b+32>>2]=H[i+208>>2];H[b+36>>2]=a;a=H[i+220>>2];H[b+40>>2]=H[i+216>>2];H[b+44>>2]=a;a=H[i+228>>2];H[b+48>>2]=H[i+224>>2];H[b+52>>2]=a;a=H[i+236>>2];H[b+56>>2]=H[i+232>>2];H[b+60>>2]=a;a=H[i+244>>2];H[b+64>>2]=H[i+240>>2];H[b+68>>2]=a;a=H[i+252>>2];H[b+72>>2]=H[i+248>>2];H[b+76>>2]=a;a=H[i+260>>2];H[b+80>>2]=H[i+256>>2];H[b+84>>2]=a;a=H[i+268>>2];H[b+88>>2]=H[i+264>>2];H[b+92>>2]=a;a=H[i+276>>2];H[b+96>>2]=H[i+272>>2];H[b+100>>2]=a;a=H[i+284>>2];H[b+104>>2]=H[i+280>>2];H[b+108>>2]=a;a=H[i+300>>2];H[b+120>>2]=H[i+296>>2];H[b+124>>2]=a;a=H[i+292>>2];H[b+112>>2]=H[i+288>>2];H[b+116>>2]=a;a=H[i+316>>2];H[b+136>>2]=H[i+312>>2];H[b+140>>2]=a;a=H[i+308>>2];H[b+128>>2]=H[i+304>>2];H[b+132>>2]=a;Oa=i+512|0;Oa=M+320|0}function OX(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=e|0;f=f|0;g=O(g);h=h|0;i=i|0;j=j|0;k=k|0;l=O(l);var m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=0,u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=0,A=O(0),B=O(0),C=0,D=O(0),E=O(0),G=O(0),J=0,K=O(0),M=O(0),P=O(0),Q=O(0),S=O(0),T=O(0),U=O(0),V=O(0),X=O(0),Y=O(0),Z=O(0),_=0,$=O(0),aa=O(0),ba=O(0),ca=0,da=0,ea=0,fa=O(0),ga=O(0),ha=O(0),ia=O(0),ja=O(0),ka=O(0),la=O(0),ma=O(0),na=O(0),oa=O(0),pa=O(0),qa=O(0),ra=O(0),sa=O(0),ta=O(0),ua=O(0),va=O(0),wa=O(0),xa=O(0),ya=O(0),za=O(0),Aa=O(0),Ba=O(0),Ca=O(0),Da=O(0),Ea=O(0),Fa=O(0),Ga=O(0),Ha=O(0),Ia=O(0),Ja=O(0),Ka=0,La=O(0),Ma=O(0),Na=O(0),Pa=O(0),Qa=O(0),Ra=0,Sa=O(0),Ta=O(0),Ua=O(0),Va=O(0),Wa=O(0),Xa=0,Ya=0;b=Oa-416|0;Oa=b;F[b+32|0]=0;H[b+24>>2]=0;H[b+28>>2]=0;H[b+16>>2]=0;H[b+20>>2]=0;H[b+8>>2]=0;H[b+12>>2]=0;H[b>>2]=0;H[b+4>>2]=0;j=H[a+40>>2];l=L[a+8>>2];n=L[a+12>>2];o=L[a+4>>2];H[b+188>>2]=0;L[b+184>>2]=n;L[b+180>>2]=l;L[b+176>>2]=o;z=H[a+16>>2];_=H[a+20>>2];t=H[a+28>>2];H[b+344>>2]=H[a+24>>2];H[b+348>>2]=t;H[b+336>>2]=z;H[b+340>>2]=_;H[b+144>>2]=j;H[b+152>>2]=H[j+40>>2]+N(I[j+39|0],20);F[b+156|0]=I[j+38|0];m=O(o*L[j+52>>2]);p=O(l*L[j+56>>2]);m=m<=p?m:p;p=O(n*L[j+60>>2]);m=m<=p?m:p;L[b+24>>2]=m*O(.02500000037252903);L[b+16>>2]=m*O(.10000000149011612);L[b+20>>2]=m*O(.05000000074505806);z=b+176|0;a=b+336|0;CU(z,a,b+48|0,b+96|0,b,o==O(1)&l==O(1)&n==O(1));H[b+148>>2]=H[j+44>>2];H[b+408>>2]=0;H[b+412>>2]=0;H[b+400>>2]=0;H[b+404>>2]=0;Ha=L[e+20>>2];r=L[f+20>>2];Ia=L[e+24>>2];s=L[f+24>>2];l=L[d+8>>2];n=L[d>>2];o=L[d+4>>2];m=L[d+12>>2];V=L[c+12>>2];$=L[c>>2];Ja=L[e+16>>2];v=L[f+16>>2];P=L[c+4>>2];Q=L[c+8>>2];H[b+396>>2]=0;H[b+380>>2]=0;H[b+364>>2]=0;Ea=O(-$);p=O(v-Ja);q=O(r-Ha);w=O(s-Ia);u=O(O(O(Ea*p)-O(q*P))-O(Q*w));fa=O(O(V*V)+O(-.5));A=O(O(O(V*O(O(P*p)-O($*q)))+O(fa*w))-O(Q*u));L[b+392>>2]=A+A;A=O(O(O(fa*q)+O(V*O(O($*w)-O(Q*p))))-O(P*u));L[b+388>>2]=A+A;t=b+384|0;p=O(O(O(fa*p)+O(V*O(O(Q*q)-O(P*w))))-O($*u));L[t>>2]=p+p;q=O(O(O(o*Q)-O(P*l))+O(O(n*V)-O(m*$)));p=O(q+q);w=O(O(O(l*$)-O(Q*n))+O(O(o*V)-O(m*P)));u=O(w+w);A=O(O(1)-O(q*p));X=O(w*u);L[b+376>>2]=A-X;q=O(O(O(n*P)-O($*o))+O(O(l*V)-O(m*Q)));D=O(q*u);l=O(O(m*V)-O(O(O(Ea*n)-O(o*P))-O(Q*l)));n=O(l*p);L[b+372>>2]=D-n;o=O(q*p);m=O(l*u);L[b+368>>2]=o+m;L[b+360>>2]=D+n;n=O(q+q);q=O(q*n);L[b+356>>2]=A-q;p=O(w*p);l=O(l*n);L[b+352>>2]=p-l;H[b+348>>2]=0;L[b+344>>2]=o-m;L[b+340>>2]=p+l;L[b+336>>2]=O(O(1)-X)-q;o=L[c+20>>2];m=L[d+20>>2];l=L[c+24>>2];n=L[d+24>>2];p=L[c+16>>2];q=L[d+16>>2];H[b+332>>2]=0;Na=O(n-s);l=O(O(l-Ia)-Na);Pa=O(q-v);n=O(O(p-Ja)-Pa);Qa=O(m-r);o=O(O(o-Ha)-Qa);m=O(O(Q*l)+O(O($*n)+O(P*o)));p=O(O(O(fa*l)-O(V*O(O($*o)-O(P*n))))+O(Q*m));L[b+328>>2]=p+p;p=O(O(P*m)+O(O(fa*o)-O(V*O(O(Q*n)-O(l*$)))));L[b+324>>2]=p+p;l=O(O($*m)+O(O(fa*n)-O(V*O(O(P*l)-O(o*Q)))));L[b+320>>2]=l+l;H[b+256>>2]=0;H[b+176>>2]=127220;H[b+180>>2]=k;H[b+184>>2]=a;a=H[b+356>>2];H[b+208>>2]=H[b+352>>2];H[b+212>>2]=a;a=H[b+364>>2];H[b+216>>2]=H[b+360>>2];H[b+220>>2]=a;a=H[b+348>>2];H[b+200>>2]=H[b+344>>2];H[b+204>>2]=a;a=H[b+372>>2];H[b+224>>2]=H[b+368>>2];H[b+228>>2]=a;a=H[b+380>>2];H[b+232>>2]=H[b+376>>2];H[b+236>>2]=a;a=H[t+4>>2];H[b+240>>2]=H[t>>2];H[b+244>>2]=a;a=H[b+396>>2];H[b+248>>2]=H[b+392>>2];H[b+252>>2]=a;a=H[b+340>>2];H[b+192>>2]=H[b+336>>2];H[b+196>>2]=a;l=L[b+196>>2];L[b+196>>2]=L[b+208>>2];n=L[b+216>>2];o=L[b+200>>2];L[b+200>>2]=L[b+224>>2];L[b+216>>2]=L[b+228>>2];L[b+224>>2]=o;L[b+228>>2]=n;L[b+208>>2]=l;H[b+168>>2]=126016;H[b+172>>2]=b;Fa=O(3.4028234663852886e38);j=Oa-288|0;Oa=j;S=O(g+O(0));a=Oa-272|0;Oa=a;H[a+248>>2]=0;H[a+252>>2]=0;H[a+240>>2]=0;H[a+244>>2]=0;B=L[b+408>>2];x=L[b+404>>2];y=L[b+400>>2];ga=L[b+328>>2];E=L[b+324>>2];T=L[b+320>>2];H[a+224>>2]=1;c=H[z+8>>2];Y=L[c+52>>2];K=L[c+36>>2];U=L[c+20>>2];G=L[c+56>>2];aa=L[c+40>>2];Z=L[c+24>>2];d=H[z+4>>2];q=L[d+72>>2];w=L[d- -64>>2];u=L[d+68>>2];r=L[d+56>>2];s=L[d+52>>2];v=L[d+88>>2];M=L[z+56>>2];ba=L[z+24>>2];ha=L[z+40>>2];A=L[d+80>>2];ja=L[z+48>>2];la=L[z+32>>2];X=L[d+84>>2];na=L[z+52>>2];ka=L[z+20>>2];oa=L[z+36>>2];pa=L[c+48>>2];qa=L[c+32>>2];ra=L[c>>2];sa=L[c+16>>2];ta=L[c+4>>2];ua=L[c+8>>2];D=L[d+48>>2];ma=L[z+16>>2];g=L[t+8>>2];l=L[t>>2];n=L[t+4>>2];Ka=b+168|0;e=Ka;c=H[e+4>>2];p=L[c+56>>2];va=L[c+52>>2];wa=L[c+72>>2];k=c- -64|0;xa=L[k>>2];ya=L[c+68>>2];o=L[c+88>>2];za=L[c+80>>2];Aa=L[c+84>>2];Ba=L[c+48>>2];f=0;H[a+172>>2]=0;ia=o;d=O(O(g*g)+O(O(l*l)+O(n*n)))>O(1.1920928955078125e-7);g=d?g:O(0);l=d?l:O(1);o=d?n:O(0);m=O(O(1)/O(W(O(O(g*g)+O(O(l*l)+O(o*o))))));g=O(g*m);n=O(l*m);l=O(o*m);L[a+168>>2]=O(ia*g)+O(O(za*n)+O(Aa*l));L[a+164>>2]=O(wa*g)+O(O(xa*n)+O(l*ya));L[a+160>>2]=O(p*g)+O(O(Ba*n)+O(l*va));d=EU(c,a+160|0);va=L[k>>2];wa=L[c+80>>2];xa=L[c+84>>2];ya=L[c+52>>2];za=L[c+68>>2];Aa=L[c+88>>2];d=H[c+152>>2]+N(d,12)|0;o=L[d+8>>2];Ba=L[c+56>>2];m=L[d>>2];La=L[c+72>>2];p=L[d+4>>2];Ca=L[c+48>>2];H[a+180>>2]=0;H[a+184>>2]=0;H[a+188>>2]=0;H[a+192>>2]=0;H[a+196>>2]=0;H[a+200>>2]=0;H[a+204>>2]=0;H[a+208>>2]=0;H[a+212>>2]=0;H[a+216>>2]=0;H[a+220>>2]=0;H[a+172>>2]=0;H[a+176>>2]=0;Da=G;ia=q;n=O(-n);q=O(O(O(ba*n)-O(ha*l))-O(M*g));G=O(O(O(ma*n)-O(la*l))-O(ja*g));g=O(O(O(ka*n)-O(oa*l))-O(na*g));l=O(O(ia*q)+O(O(w*G)+O(u*g)));n=O(O(v*q)+O(O(A*G)+O(g*X)));c=l>n;g=O(O(r*q)+O(O(D*G)+O(g*s)));d=!(g>l)|!(g>n);g=d?c?ia:v:r;l=d?c?w:A:D;n=d?c?u:X:s;w=O(Da+O(O(aa*g)+O(O(ua*l)+O(Z*n))));u=O(O(Aa*o)+O(O(Ba*m)+O(p*La)));r=O(w-u);L[a+168>>2]=r;v=O(Y+O(O(K*g)+O(O(ta*l)+O(n*U))));A=O(O(xa*o)+O(O(ya*m)+O(p*za)));s=O(v-A);L[a+164>>2]=s;g=O(pa+O(O(qa*g)+O(O(ra*l)+O(n*sa))));l=O(O(wa*o)+O(O(Ca*m)+O(p*va)));q=O(g-l);L[a+160>>2]=q;H[a+116>>2]=0;H[a+120>>2]=0;H[a+124>>2]=0;H[a+128>>2]=0;H[a+132>>2]=0;H[a+136>>2]=0;H[a+140>>2]=0;H[a+144>>2]=0;H[a+148>>2]=0;H[a+152>>2]=0;H[a+156>>2]=0;H[a+108>>2]=0;H[a+112>>2]=0;L[a+104>>2]=w;L[a+100>>2]=v;L[a+96>>2]=g;H[a+52>>2]=0;H[a+56>>2]=0;H[a+60>>2]=0;H[a+64>>2]=0;H[a+68>>2]=0;H[a+72>>2]=0;H[a+76>>2]=0;H[a+80>>2]=0;H[a+84>>2]=0;H[a+88>>2]=0;H[a+92>>2]=0;H[a+44>>2]=0;H[a+48>>2]=0;L[a+40>>2]=u;L[a+36>>2]=A;L[a+32>>2]=l;g=O(-r);l=O(-s);n=O(-q);v=O(O(r*r)+O(O(q*q)+O(s*s)));o=L[H[e+4>>2]+24>>2];o=O((ola)){o=n;m=l;p=g;D=O(0);w=q;u=s;X=r;break b}Y=O(o+S);na=O(Y*Y);G=O(O(T*O(0))+y);S=O(O(E*O(0))+x);A=O(O(ga*O(0))+B);D=O(0);p=g;m=l;o=n;while(1){w=q;u=s;X=r;c=H[z+8>>2];ja=L[c+56>>2];ka=L[c+40>>2];oa=L[c+24>>2];ha=L[c+52>>2];pa=L[c+36>>2];qa=L[c+20>>2];d=H[z+4>>2];r=L[d+72>>2];s=L[d- -64>>2];y=L[d+68>>2];E=L[d+56>>2];T=L[d+52>>2];K=L[d+88>>2];U=L[d+80>>2];aa=L[d+84>>2];ra=L[c+8>>2];M=L[c+48>>2];ba=L[c+32>>2];sa=L[c>>2];ta=L[c+16>>2];ua=L[c+4>>2];Z=L[d+48>>2];ma=L[z+56>>2];va=L[z+24>>2];wa=L[z+40>>2];xa=L[z+48>>2];ya=L[z+16>>2];za=L[z+32>>2];Aa=L[z+52>>2];Ba=L[z+20>>2];La=L[z+36>>2];c=H[e+4>>2];Ca=L[c+52>>2];Ma=L[c+56>>2];Sa=L[c+72>>2];k=c- -64|0;Ta=L[k>>2];Ua=L[c+68>>2];Va=L[c+88>>2];q=L[c+80>>2];B=L[c+84>>2];Wa=L[c+48>>2];H[a+268>>2]=0;ia=q;x=O(O(1)/O(W(O(O(g*g)+O(O(n*n)+O(l*l))))));q=O(n*x);ga=O(-q);Da=B;B=O(l*x);x=O(g*x);L[a+264>>2]=O(O(ia*ga)-O(Da*B))-O(Va*x);L[a+260>>2]=O(O(Ta*ga)-O(Ua*B))-O(Sa*x);L[a+256>>2]=O(O(Wa*ga)-O(Ca*B))-O(Ma*x);_=EU(c,a+256|0);Da=M;Ca=ba;ia=r;Ma=K;r=O(O(ma*x)+O(O(va*q)+O(B*wa)));M=O(O(xa*x)+O(O(ya*q)+O(B*za)));ba=O(O(Aa*x)+O(O(Ba*q)+O(B*La)));ma=O(O(ia*r)+O(O(s*M)+O(y*ba)));K=O(O(K*r)+O(O(U*M)+O(ba*aa)));d=ma>K;r=O(O(E*r)+O(O(Z*M)+O(ba*T)));f=!(r>ma)|!(r>K);r=f?d?ia:Ma:E;s=f?d?s:U:Z;y=f?d?y:aa:T;K=O(Da+O(O(Ca*r)+O(O(sa*s)+O(ta*y))));d=H[c+152>>2]+N(_,12)|0;U=L[d+8>>2];aa=L[d>>2];Z=L[d+4>>2];M=O(G+O(O(L[c+80>>2]*U)+O(O(L[c+48>>2]*aa)+O(Z*L[k>>2]))));E=O(K-M);ba=O(ha+O(O(pa*r)+O(O(ua*s)+O(y*qa))));ha=O(S+O(O(L[c+84>>2]*U)+O(O(L[c+52>>2]*aa)+O(Z*L[c+68>>2]))));T=O(ba-ha);ja=O(ja+O(O(ka*r)+O(O(ra*s)+O(y*oa))));U=O(A+O(O(L[c+88>>2]*U)+O(O(L[c+56>>2]*aa)+O(Z*L[c+72>>2]))));y=O(ja-U);r=O(O(O(O(q*O(-E))-O(B*T))-O(x*y))-Y);if(r>O(0)){c=0;s=L[b+328>>2];aa=L[b+320>>2];Z=L[b+324>>2];ka=O(O(x*s)+O(O(q*aa)+O(B*Z)));if(ka>=O(0)){break a}q=D;D=O(q-O(r/ka));if(D>q){if(D>O(1)){break a}p=L[b+408>>2];m=L[b+404>>2];o=L[b+400>>2];H[a+76>>2]=0;H[a+60>>2]=0;H[a+44>>2]=0;q=O(o+O(aa*D));o=O(q-G);v=O(o+L[a+64>>2]);L[a+64>>2]=v;r=O(m+O(Z*D));m=O(r-S);G=O(m+L[a+68>>2]);L[a+68>>2]=G;s=O(p+O(s*D));p=O(s-A);A=O(p+L[a+72>>2]);L[a+72>>2]=A;S=O(o+L[a+48>>2]);L[a+48>>2]=S;y=O(m+L[a+52>>2]);L[a+52>>2]=y;E=O(p+L[a+56>>2]);L[a+56>>2]=E;o=O(o+L[a+32>>2]);L[a+32>>2]=o;m=O(m+L[a+36>>2]);L[a+36>>2]=m;p=O(p+L[a+40>>2]);L[a+40>>2]=p;T=L[a+96>>2];U=L[a+100>>2];aa=L[a+104>>2];H[a+172>>2]=0;L[a+168>>2]=aa-p;L[a+164>>2]=U-m;L[a+160>>2]=T-o;o=L[a+112>>2];m=L[a+116>>2];p=L[a+120>>2];H[a+188>>2]=0;L[a+184>>2]=p-E;L[a+180>>2]=m-y;L[a+176>>2]=o-S;o=L[a+128>>2];m=L[a+132>>2];p=L[a+136>>2];H[a+204>>2]=0;L[a+200>>2]=p-A;L[a+196>>2]=m-G;L[a+192>>2]=o-v;c=H[e+4>>2];p=L[c+56>>2];v=L[c+52>>2];A=L[c+72>>2];f=c- -64|0;G=L[f>>2];S=L[c+68>>2];o=L[c+88>>2];m=L[c+80>>2];y=L[c+84>>2];E=L[c+48>>2];H[a+268>>2]=0;M=o;o=O(-x);x=O(m*ga);m=O(-B);L[a+264>>2]=O(M*o)+O(x+O(y*m));L[a+260>>2]=O(A*o)+O(O(G*ga)+O(S*m));L[a+256>>2]=O(p*o)+O(O(E*ga)+O(v*m));d=EU(c,a+256|0);d=H[c+152>>2]+N(d,12)|0;o=L[d+8>>2];m=L[d>>2];p=L[d+4>>2];U=O(s+O(O(L[c+88>>2]*o)+O(O(L[c+56>>2]*m)+O(p*L[c+72>>2]))));y=O(ja-U);ha=O(r+O(O(L[c+84>>2]*o)+O(O(L[c+52>>2]*m)+O(p*L[c+68>>2]))));T=O(ba-ha);M=O(q+O(O(L[c+80>>2]*o)+O(O(L[c+48>>2]*m)+O(p*L[f>>2]))));E=O(K-M);o=n;m=l;p=g;G=q;S=r;A=s;g=O(3.4028234663852886e38)}else{g=v}}else{g=v}B=g;d=H[a+224>>2];f=d<<4;c=f+(a+96|0)|0;H[c+12>>2]=0;L[c+8>>2]=ja;L[c+4>>2]=ba;L[c>>2]=K;c=f+(a+32|0)|0;H[c+12>>2]=0;L[c+8>>2]=U;L[c+4>>2]=ha;L[c>>2]=M;c=f+(a+160|0)|0;H[c+12>>2]=0;L[c+8>>2]=y;L[c+4>>2]=T;L[c>>2]=E;H[a+224>>2]=d+1;c:{d:{switch(d-1|0){case 0:q=L[a+168>>2];g=O(L[a+184>>2]-q);r=L[a+160>>2];l=O(L[a+176>>2]-r);s=L[a+164>>2];n=O(L[a+180>>2]-s);v=O(O(g*g)+O(O(l*l)+O(n*n)));if(v<=O(1.1920928955078125e-7)){H[a+224>>2]=1;c=H[a+164>>2];H[a+256>>2]=H[a+160>>2];H[a+260>>2]=c;c=H[a+172>>2];H[a+264>>2]=H[a+168>>2];H[a+268>>2]=c;break c}x=g;g=O(R(O(O(O(O(O(-r)*l)-O(n*s))-O(q*g))/v),O(1)));g=g>O(0)?g:O(0);L[a+264>>2]=q+O(x*g);L[a+260>>2]=s+O(n*g);L[a+256>>2]=r+O(l*g);break c;case 1:GU(a+256|0,a+160|0,a+96|0,a+32|0,a+224|0);break c;case 2:BZ(a+256|0,a+160|0,a+96|0,a+32|0,a+224|0);break c;default:break d}}L[a+264>>2]=y;L[a+260>>2]=T;L[a+256>>2]=E}r=L[a+264>>2];g=O(-r);s=L[a+260>>2];l=O(-s);q=L[a+256>>2];n=O(-q);v=O(O(r*r)+O(O(q*q)+O(s*s)));if(na>2]+32|0];G=O(0);y=O(0);d=!(v>la)|f;g=d?p:g;n=d?o:n;l=d?m:l;o=O(W(O(O(g*g)+O(O(n*n)+O(l*l)))));if(!(o<=O(1.1920928955078125e-7))){m=g;g=O(O(1)/o);Ga=O(m*g);y=O(n*g);G=O(l*g)}H[j+268>>2]=0;L[j+264>>2]=-Ga;L[j+260>>2]=-G;L[j+256>>2]=-y;L[j+240>>2]=D;H[j+252>>2]=H[a+236>>2];d=H[a+232>>2];H[j+244>>2]=H[a+228>>2];H[j+248>>2]=d;H[a+268>>2]=0;L[a+264>>2]=f?X:r;L[a+260>>2]=f?u:s;L[a+256>>2]=f?w:q;d=H[a+252>>2];f=H[a+248>>2];H[a+24>>2]=f;H[a+28>>2]=d;e=H[a+244>>2];k=H[a+240>>2];H[a+16>>2]=k;H[a+20>>2]=e;H[a+8>>2]=f;H[a+12>>2]=d;H[a>>2]=k;H[a+4>>2]=e;FU(a+160|0,a+96|0,a+32|0,a+256|0,a+16|0,a,H[a+224>>2]);g=L[H[z+4>>2]+16>>2];l=L[a+16>>2];n=L[a+20>>2];o=L[a+24>>2];H[j+284>>2]=0;L[j+280>>2]=o+(c?O(Ga*g):O(-0));L[j+276>>2]=n+(c?O(G*g):O(-0));L[j+272>>2]=l+(c?O(y*g):O(-0));c=1}Oa=a+272|0;a=c;if(c){c=H[j+244>>2];H[b+304>>2]=H[j+240>>2];H[b+308>>2]=c;c=H[j+252>>2];H[b+312>>2]=H[j+248>>2];H[b+316>>2]=c;if(L[j+240>>2]==O(0)){d=H[z+4>>2];e=H[Ka+4>>2];L[j+224>>2]=O(L[d+16>>2]+L[e+16>>2])*O(100);F[j+215|0]=0;H[j+168>>2]=0;H[j+172>>2]=0;H[j+160>>2]=0;H[j+164>>2]=0;H[j+152>>2]=0;H[j+156>>2]=0;H[j+144>>2]=0;H[j+148>>2]=0;H[j+136>>2]=0;H[j+140>>2]=0;H[j+128>>2]=0;H[j+132>>2]=0;H[j+192>>2]=0;c=H[z+8>>2];H[j+56>>2]=c;H[j+48>>2]=127220;H[j+52>>2]=d;d=H[c+12>>2];H[j+72>>2]=H[c+8>>2];H[j+76>>2]=d;d=H[c+20>>2];H[j+80>>2]=H[c+16>>2];H[j+84>>2]=d;d=H[c+28>>2];H[j+88>>2]=H[c+24>>2];H[j+92>>2]=d;d=H[c+36>>2];H[j+96>>2]=H[c+32>>2];H[j+100>>2]=d;d=H[c+44>>2];H[j+104>>2]=H[c+40>>2];H[j+108>>2]=d;d=H[c+52>>2];H[j+112>>2]=H[c+48>>2];H[j+116>>2]=d;d=H[c+60>>2];H[j+120>>2]=H[c+56>>2];H[j+124>>2]=d;d=H[c+4>>2];H[j+64>>2]=H[c>>2];H[j+68>>2]=d;g=L[j+68>>2];L[j+68>>2]=L[j+80>>2];l=L[j+88>>2];n=L[j+72>>2];L[j+72>>2]=L[j+96>>2];L[j+80>>2]=g;L[j+96>>2]=n;L[j+88>>2]=L[j+100>>2];L[j+100>>2]=l;H[j+40>>2]=126016;H[j+44>>2]=e;k=j+220|0;_=j+216|0;c=0;f=Oa-320|0;Oa=f;e=H[j+44>>2];g=L[e+20>>2];ea=H[j+52>>2];l=L[ea+20>>2];r=L[j+224>>2];Xa=I[ea+32|0];s=L[ea+16>>2];Ya=I[e+32|0];X=L[e+16>>2];H[f+28>>2]=0;G=O((g>2];while(1){d=C<<2;ca=I[k+C|0];H[d+(f+48|0)>>2]=ca;J=d+(f+32|0)|0;d=I[C+_|0];H[J>>2]=d;d=H[e+152>>2]+N(d,12)|0;g=L[d+8>>2];l=L[d>>2];n=L[d+4>>2];d=ea+(ca<<4)|0;o=L[d+56>>2];m=L[d+48>>2];p=L[d+52>>2];q=L[e+80>>2];w=L[e+48>>2];u=L[e+64>>2];v=L[e+84>>2];A=L[e+52>>2];D=L[e+68>>2];S=L[e+88>>2];B=L[e+56>>2];x=L[e+72>>2];y=L[t+48>>2];ga=L[t+32>>2];E=L[t>>2];T=L[t+16>>2];Y=L[t+52>>2];K=L[t+36>>2];U=L[t+4>>2];aa=L[t+20>>2];Z=L[t+56>>2];M=L[t+40>>2];ba=L[t+8>>2];ha=L[t+24>>2];d=c;J=c<<4;ca=J+(f+128|0)|0;H[ca+12>>2]=0;da=J+(f- -64|0)|0;H[da+12>>2]=0;J=J+(f+192|0)|0;H[J+12>>2]=0;Z=O(Z+O(O(M*o)+O(O(ba*m)+O(p*ha))));L[ca+8>>2]=Z;Y=O(Y+O(O(K*o)+O(O(U*m)+O(p*aa))));L[ca+4>>2]=Y;o=O(y+O(O(ga*o)+O(O(E*m)+O(p*T))));L[ca>>2]=o;m=O(O(S*g)+O(O(B*l)+O(n*x)));L[da+8>>2]=m;p=O(O(v*g)+O(O(A*l)+O(n*D)));L[da+4>>2]=p;g=O(O(q*g)+O(O(w*l)+O(n*u)));L[da>>2]=g;l=O(Z-m);L[J+8>>2]=l;n=O(Y-p);L[J+4>>2]=n;g=O(o-g);L[J>>2]=g;c=c+1|0;H[f+28>>2]=c;C=C+1|0;if((Ra|0)!=(C|0)){continue}break}k:{l:{switch(d-1|0){case 0:o=L[f+200>>2];g=O(L[f+216>>2]-o);m=L[f+192>>2];l=O(L[f+208>>2]-m);p=L[f+196>>2];n=O(L[f+212>>2]-p);q=O(O(g*g)+O(O(l*l)+O(n*n)));if(!(q<=O(1.1920928955078125e-7))){break k}H[f+28>>2]=1;c=H[f+196>>2];H[f+304>>2]=H[f+192>>2];H[f+308>>2]=c;c=H[f+204>>2];H[f+312>>2]=H[f+200>>2];H[f+316>>2]=c;break i;case 1:_W(f+304|0,f+192|0,f+128|0,f- -64|0,f+48|0,f+32|0,f+28|0);break i;case 2:break l;default:break j}}DZ(f+304|0,f+192|0,f+128|0,f- -64|0,f+48|0,f+32|0,f+28|0);break i}H[f+316>>2]=0;u=g;g=O(R(O(O(O(O(O(-m)*l)-O(n*p))-O(o*g))/q),O(1)));g=g>O(0)?g:O(0);L[f+312>>2]=o+O(u*g);L[f+308>>2]=p+O(n*g);L[f+304>>2]=m+O(l*g);break i}g=L[t+8>>2];n=L[t>>2];l=L[t+4>>2];H[f+268>>2]=0;c=O(O(g*g)+O(O(n*n)+O(l*l)))>O(0);g=c?g:O(0);L[f+264>>2]=g;l=c?l:O(0);L[f+260>>2]=l;n=c?n:O(1);L[f+256>>2]=n;o=O(O(1)/O(W(O(O(g*g)+O(O(n*n)+O(l*l))))));q=O(g*o);w=O(l*o);u=O(n*o);o=O(3.4028234663852886e38);A=O(0);break h}H[f+316>>2]=0;L[f+312>>2]=l;L[f+308>>2]=n;L[f+304>>2]=g}c=H[f+308>>2];H[f+256>>2]=H[f+304>>2];H[f+260>>2]=c;c=H[f+316>>2];H[f+264>>2]=H[f+312>>2];H[f+268>>2]=c;g=L[f+264>>2];n=L[f+256>>2];l=L[f+260>>2];o=O(W(O(O(g*g)+O(O(n*n)+O(l*l)))));if(!(G>2]}v=Xa?s:O(0);X=Ya?X:O(0);D=O(v+X);ga=O(r+D);while(1){H[f+280>>2]=H[f+296>>2];c=H[f+292>>2];H[f+272>>2]=H[f+288>>2];H[f+276>>2]=c;c=H[j+56>>2];t=H[f+28>>2]<<2;d=H[j+52>>2];s=L[d+72>>2];m=O(-n);p=O(O(O(L[j+72>>2]*m)-O(L[j+88>>2]*l))-O(L[j+104>>2]*g));S=L[d- -64>>2];r=O(O(O(L[j+64>>2]*m)-O(L[j+80>>2]*l))-O(L[j+96>>2]*g));m=O(O(O(L[j+68>>2]*m)-O(L[j+84>>2]*l))-O(L[j+100>>2]*g));B=L[d+68>>2];x=O(O(s*p)+O(O(S*r)+O(m*B)));y=L[d+88>>2];E=L[d+80>>2];T=L[d+84>>2];Y=O(O(y*p)+O(O(E*r)+O(m*T)));e=x>Y;K=x;x=L[d+56>>2];M=O(x*p);p=L[d+48>>2];ba=O(p*r);r=L[d+52>>2];m=O(M+O(ba+O(m*r)));d=!(KY);H[t+(f+48|0)>>2]=d?e?1:2:0;m=L[c+56>>2];Y=L[c+40>>2];K=L[c+24>>2];U=L[c+52>>2];aa=L[c+36>>2];Z=L[c+20>>2];M=L[c+8>>2];ba=L[c+48>>2];ha=L[c+32>>2];ja=L[c>>2];Ga=L[c+16>>2];la=L[c+4>>2];c=H[j+44>>2];na=L[c+56>>2];ka=L[c+52>>2];oa=L[c+72>>2];C=c- -64|0;pa=L[C>>2];qa=L[c+68>>2];ra=L[c+88>>2];sa=L[c+80>>2];ta=L[c+84>>2];ua=L[c+48>>2];H[f+316>>2]=0;L[f+312>>2]=O(ra*g)+O(O(sa*n)+O(l*ta));L[f+308>>2]=O(oa*g)+O(O(pa*n)+O(l*qa));L[f+304>>2]=O(na*g)+O(O(ua*n)+O(l*ka));J=t+(f+32|0)|0;t=EU(c,f+304|0);H[J>>2]=t;ia=m;m=d?e?s:y:x;p=d?e?S:E:p;r=d?e?B:T:r;E=O(ia+O(O(Y*m)+O(O(M*p)+O(K*r))));d=H[c+152>>2]+N(t,12)|0;s=L[d+8>>2];S=L[d>>2];B=L[d+4>>2];T=O(O(L[c+88>>2]*s)+O(O(L[c+56>>2]*S)+O(B*L[c+72>>2])));x=O(E-T);Y=O(ba+O(O(ha*m)+O(O(ja*p)+O(r*Ga))));K=O(O(L[c+80>>2]*s)+O(O(L[c+48>>2]*S)+O(B*L[C>>2])));y=O(Y-K);p=O(U+O(O(aa*m)+O(O(la*p)+O(r*Z))));r=O(O(L[c+84>>2]*s)+O(O(L[c+52>>2]*S)+O(B*L[c+68>>2])));m=O(p-r);s=O(O(q*x)+O(O(u*y)+O(w*m)));if(s>ga){c=0;if(!k){break e}e=H[f+28>>2];F[j+215|0]=e;if(!e){break e}d=0;if((e|0)!=1){ca=e&-2;C=0;while(1){t=d<<2;da=f+48|0;F[d+k|0]=H[t+da>>2];J=f+32|0;F[d+_|0]=H[J+t>>2];t=d|1;ea=t<<2;F[k+t|0]=H[ea+da>>2];F[t+_|0]=H[ea+J>>2];d=d+2|0;C=C+2|0;if((ca|0)!=(C|0)){continue}break}}if(!(e&1)){break e}e=d<<2;F[d+k|0]=H[e+(f+48|0)>>2];F[d+_|0]=H[e+(f+32|0)>>2];break e}c=H[f+28>>2];if(s>O(o*O(.9997749924659729))){m:{if(!k){break m}F[j+215|0]=c;if(!c){break m}e=0;if((c|0)!=1){ea=c&-2;t=0;while(1){d=e<<2;ca=f+48|0;F[e+k|0]=H[d+ca>>2];da=f+32|0;F[e+_|0]=H[da+d>>2];d=e|1;C=d<<2;F[d+k|0]=H[C+ca>>2];F[d+_|0]=H[C+da>>2];e=e+2|0;t=t+2|0;if((ea|0)!=(t|0)){continue}break}}if(!(c&1)){break m}d=e<<2;F[e+k|0]=H[d+(f+48|0)>>2];F[e+_|0]=H[d+(f+32|0)>>2]}L[j+160>>2]=u;H[j+172>>2]=0;L[j+168>>2]=q;L[j+164>>2]=w;FU(f+192|0,f+128|0,f- -64|0,f+256|0,f+304|0,f,c);g=L[f+304>>2];l=L[f+308>>2];n=L[f+312>>2];H[j+140>>2]=0;L[j+136>>2]=n-O(v*q);L[j+132>>2]=l-O(v*w);L[j+128>>2]=g-O(v*u);g=L[f>>2];l=L[f+4>>2];n=L[f+8>>2];H[j+156>>2]=0;L[j+152>>2]=n+O(X*q);L[j+148>>2]=l+O(X*w);L[j+144>>2]=g+O(X*u);L[j+192>>2]=o-D;c=2;break e}e=c<<4;d=e+(f+128|0)|0;H[d+12>>2]=0;L[d+8>>2]=E;L[d+4>>2]=p;L[d>>2]=Y;d=e+(f- -64|0)|0;H[d+12>>2]=0;L[d+8>>2]=T;L[d+4>>2]=r;L[d>>2]=K;d=e+(f+192|0)|0;H[d+12>>2]=0;L[d+8>>2]=x;L[d+4>>2]=m;L[d>>2]=y;H[f+28>>2]=c+1;n:{o:{switch(c-1|0){case 0:w=L[f+200>>2];m=O(L[f+216>>2]-w);u=L[f+192>>2];p=O(L[f+208>>2]-u);r=L[f+196>>2];q=O(L[f+212>>2]-r);s=O(O(m*m)+O(O(p*p)+O(q*q)));if(s<=O(1.1920928955078125e-7)){H[f+28>>2]=1;c=H[f+196>>2];H[f+304>>2]=H[f+192>>2];H[f+308>>2]=c;c=H[f+204>>2];H[f+312>>2]=H[f+200>>2];H[f+316>>2]=c;break n}H[f+316>>2]=0;B=m;m=O(R(O(O(O(O(O(-u)*p)-O(q*r))-O(w*m))/s),O(1)));m=m>O(0)?m:O(0);L[f+312>>2]=w+O(B*m);L[f+308>>2]=r+O(q*m);L[f+304>>2]=u+O(p*m);break n;case 1:_W(f+304|0,f+192|0,f+128|0,f- -64|0,f+48|0,f+32|0,f+28|0);break n;case 2:DZ(f+304|0,f+192|0,f+128|0,f- -64|0,f+48|0,f+32|0,f+28|0);break n;default:break o}}H[f+316>>2]=0;L[f+312>>2]=x;L[f+308>>2]=m;L[f+304>>2]=y}c=H[f+308>>2];H[f+256>>2]=H[f+304>>2];H[f+260>>2]=c;c=H[f+316>>2];H[f+264>>2]=H[f+312>>2];H[f+268>>2]=c;p=L[f+264>>2];r=L[f+256>>2];s=L[f+260>>2];m=O(W(O(O(p*p)+O(O(r*r)+O(s*s)))));u=O(O(1)/m);q=O(p*u);w=O(s*u);u=O(r*u);if(!(!(m>G)|!(m>2];g=p;l=s;n=r;o=m;continue}break}e=H[f+28>>2];if(!(m>2];J=f+32|0;F[d+_|0]=H[J+C>>2];C=d|1;ea=C<<2;F[k+C|0]=H[ea+da>>2];F[C+_|0]=H[ea+J>>2];d=d+2|0;t=t+2|0;if((ca|0)!=(t|0)){continue}break}}if(!(c&1)){break p}c=d<<2;F[d+k|0]=H[c+(f+48|0)>>2];F[d+_|0]=H[c+(f+32|0)>>2]}H[f+296>>2]=H[f+280>>2];c=H[f+276>>2];H[f+288>>2]=H[f+272>>2];H[f+292>>2]=c;L[f+268>>2]=A;L[f+256>>2]=n;L[f+260>>2]=l;L[f+264>>2]=g;FU(f+192|0,f+128|0,f- -64|0,f+256|0,f+304|0,f,e);H[j+188>>2]=0;L[j+184>>2]=q;L[j+180>>2]=w;L[j+176>>2]=u;H[j+172>>2]=0;m=g;g=O(O(1)/o);m=O(m*g);L[j+168>>2]=m;l=O(l*g);L[j+164>>2]=l;g=O(n*g);L[j+160>>2]=g;n=L[f+304>>2];p=L[f+308>>2];q=L[f+312>>2];H[j+140>>2]=0;L[j+136>>2]=q-O(v*m);L[j+132>>2]=p-O(v*l);L[j+128>>2]=n-O(v*g);n=L[f>>2];p=L[f+4>>2];q=L[f+8>>2];L[j+192>>2]=o-D;H[j+156>>2]=0;L[j+152>>2]=q+O(X*m);L[j+148>>2]=p+O(X*l);L[j+144>>2]=n+O(X*g);c=2;if(o<=D){break e}c=4;break e}if(k){break f}c=5;break e}e=H[f+28>>2]}F[j+215|0]=e;c=5;if(!e){break e}d=0;if((e|0)!=1){ca=e&-2;C=0;while(1){t=d<<2;da=f+48|0;F[d+k|0]=H[t+da>>2];J=f+32|0;F[d+_|0]=H[J+t>>2];t=d|1;ea=t<<2;F[k+t|0]=H[ea+da>>2];F[t+_|0]=H[ea+J>>2];d=d+2|0;C=C+2|0;if((ca|0)!=(C|0)){continue}break}}if(!(e&1)){break e}e=d<<2;F[d+k|0]=H[e+(f+48|0)>>2];F[d+_|0]=H[e+(f+32|0)>>2]}Oa=f+320|0;q:{r:{if(c-5|0){break r}H[j+16>>2]=1065353216;c=H[j+28>>2];H[j+8>>2]=H[j+24>>2];H[j+12>>2]=c;c=H[j+20>>2];H[j>>2]=H[j+16>>2];H[j+4>>2]=c;if(wZ(z,Ka,j+220|0,j+216|0,I[j+215|0],0,j,j+128|0)-5>>>0<=1){break r}H[j+280>>2]=0;H[j+284>>2]=0;H[j+272>>2]=0;H[j+276>>2]=0;g=L[b+328>>2];l=L[b+320>>2];n=L[b+324>>2];H[j+268>>2]=0;o=O(O(1)/O(W(O(O(g*g)+O(O(l*l)+O(n*n))))));L[j+264>>2]=o*O(-g);L[j+260>>2]=o*O(-n);L[j+256>>2]=o*O(-l);g=O(0);break q}c=H[j+140>>2];H[j+280>>2]=H[j+136>>2];H[j+284>>2]=c;c=H[j+132>>2];H[j+272>>2]=H[j+128>>2];H[j+276>>2]=c;c=H[j+164>>2];H[j+256>>2]=H[j+160>>2];H[j+260>>2]=c;c=H[j+172>>2];H[j+264>>2]=H[j+168>>2];H[j+268>>2]=c;g=L[j+192>>2]}L[b+304>>2]=g>2];H[b+288>>2]=H[j+272>>2];H[b+292>>2]=c;c=H[j+284>>2];H[b+296>>2]=H[j+280>>2];H[b+300>>2]=c;c=H[j+260>>2];H[b+272>>2]=H[j+256>>2];H[b+276>>2]=c;c=H[j+268>>2];H[b+280>>2]=H[j+264>>2];H[b+284>>2]=c}Oa=j+288|0;if(a){Fa=L[b+304>>2];g=L[b+296>>2];l=L[b+288>>2];n=L[b+292>>2];o=L[b+280>>2];m=L[b+272>>2];p=L[b+276>>2];q=O(O(Q*o)+O(O($*m)+O(P*p)));w=O(-P);u=O(O(O(V*O(O($*p)+O(m*w)))+O(fa*o))+O(Q*q));L[h+8>>2]=u+u;u=O(O(P*q)+O(O(fa*p)+O(V*O(O(Q*m)+O(o*Ea)))));L[h+4>>2]=u+u;r=p;p=O(-Q);o=O(O($*q)+O(O(fa*m)+O(V*O(O(P*o)+O(r*p)))));L[h>>2]=o+o;o=Fa>O(0)?Fa:O(0);m=O(O(Q*g)+O(O($*l)+O(P*n)));q=O(O(O(V*O(O($*n)+O(l*w)))+O(fa*g))+O(Q*m));L[i+8>>2]=O(Na*o)+O(Ia+O(q+q));q=O(O(P*m)+O(O(fa*n)+O(V*O(O(Q*l)+O(g*Ea)))));L[i+4>>2]=O(Qa*o)+O(Ha+O(q+q));g=O(O($*m)+O(O(fa*l)+O(V*O(O(P*g)+O(n*p)))));L[i>>2]=O(Pa*o)+O(Ja+O(g+g))}Oa=b+416|0;return O(Fa)}function HX(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=e|0;f=f|0;g=O(g);h=h|0;i=i|0;j=O(j);k=k|0;l=O(l);var m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=0,t=O(0),u=O(0),v=O(0),w=O(0),x=0,y=0,z=O(0),A=O(0),B=0,C=0,D=O(0),E=O(0),G=O(0),J=O(0),K=0,M=O(0),P=O(0),Q=O(0),S=O(0),T=O(0),U=O(0),V=O(0),X=O(0),Y=O(0),Z=O(0),_=0,$=0,aa=O(0),ba=O(0),ca=O(0),da=O(0),ea=O(0),fa=O(0),ga=O(0),ha=0,ia=O(0),ja=O(0),ka=O(0),la=O(0),ma=O(0),na=O(0),oa=O(0),pa=O(0),qa=O(0),ra=O(0),sa=O(0),ta=O(0),ua=O(0),va=O(0),wa=O(0),xa=O(0),ya=O(0),za=O(0),Aa=O(0),Ba=O(0),Ca=O(0),Da=O(0),Ea=O(0),Fa=O(0),Ga=O(0),Ha=0,Ia=O(0),Ja=O(0),Ka=O(0),La=O(0),Ma=0,Na=O(0),Pa=O(0),Qa=O(0),Ra=O(0),Sa=O(0),Ta=O(0),Ua=0,Va=0;k=Oa-512|0;Oa=k;b=H[b>>2];y=H[a>>2];H[k+168>>2]=0;H[k+172>>2]=0;H[k+160>>2]=0;H[k+164>>2]=0;H[k+188>>2]=4;j=L[y+4>>2];l=L[y+8>>2];H[k+236>>2]=0;H[k+220>>2]=0;n=O(l*O(0));L[k+216>>2]=n;L[k+212>>2]=n;n=O(-n);L[k+232>>2]=n;L[k+228>>2]=n;L[k+240>>2]=j;L[k+208>>2]=l;F[k+192|0]=1;L[k+184>>2]=j;L[k+180>>2]=j;L[k+176>>2]=j;L[k+224>>2]=-l;F[k+32|0]=0;H[k+24>>2]=0;H[k+28>>2]=0;H[k+16>>2]=0;H[k+20>>2]=0;H[k+8>>2]=0;H[k+12>>2]=0;H[k>>2]=0;H[k+4>>2]=0;a=H[b+40>>2];j=L[b+4>>2];l=L[b+8>>2];n=L[b+12>>2];H[k+284>>2]=0;L[k+280>>2]=n;L[k+276>>2]=l;L[k+272>>2]=j;x=H[b+16>>2];$=H[b+20>>2];s=H[b+28>>2];H[k+440>>2]=H[b+24>>2];H[k+444>>2]=s;H[k+432>>2]=x;H[k+436>>2]=$;H[k+144>>2]=a;H[k+152>>2]=H[a+40>>2]+N(I[a+39|0],20);F[k+156|0]=I[a+38|0];m=O(j*L[a+52>>2]);o=O(l*L[a+56>>2]);m=m<=o?m:o;o=O(n*L[a+60>>2]);m=m<=o?m:o;L[k+24>>2]=m*O(.02500000037252903);L[k+16>>2]=m*O(.10000000149011612);L[k+20>>2]=m*O(.05000000074505806);x=k+272|0;b=k+432|0;CU(x,b,k+48|0,k+96|0,k,j==O(1)&l==O(1)&n==O(1));H[k+148>>2]=H[a+44>>2];S=L[y+4>>2];H[k+504>>2]=0;H[k+508>>2]=0;H[k+496>>2]=0;H[k+500>>2]=0;Aa=L[f+20>>2];q=L[e+20>>2];Ba=L[f+24>>2];r=L[e+24>>2];j=L[c+8>>2];l=L[c>>2];n=L[c+4>>2];m=L[c+12>>2];T=L[d+12>>2];Y=L[d>>2];Ca=L[f+16>>2];u=L[e+16>>2];P=L[d+4>>2];Q=L[d+8>>2];H[k+492>>2]=0;H[k+476>>2]=0;H[k+460>>2]=0;xa=O(-Y);o=O(u-Ca);p=O(q-Aa);v=O(r-Ba);t=O(O(O(xa*o)-O(p*P))-O(Q*v));da=O(O(T*T)+O(-.5));D=O(O(O(T*O(O(P*o)-O(Y*p)))+O(da*v))-O(Q*t));L[k+488>>2]=D+D;D=O(O(O(da*p)+O(T*O(O(Y*v)-O(Q*o))))-O(P*t));L[k+484>>2]=D+D;s=k+480|0;o=O(O(O(da*o)+O(T*O(O(Q*p)-O(P*v))))-O(Y*t));L[s>>2]=o+o;p=O(O(O(n*Q)-O(P*j))+O(O(l*T)-O(m*Y)));o=O(p+p);v=O(O(O(j*Y)-O(Q*l))+O(O(n*T)-O(m*P)));t=O(v+v);D=O(O(1)-O(p*o));G=O(v*t);L[k+472>>2]=D-G;p=O(O(O(l*P)-O(Y*n))+O(O(j*T)-O(m*Q)));M=O(p*t);j=O(O(m*T)-O(O(O(xa*l)-O(n*P))-O(Q*j)));l=O(j*o);L[k+468>>2]=M-l;n=O(p*o);m=O(j*t);L[k+464>>2]=n+m;L[k+456>>2]=M+l;l=O(p+p);p=O(p*l);L[k+452>>2]=D-p;o=O(v*o);j=O(j*l);L[k+448>>2]=o-j;H[k+444>>2]=0;L[k+440>>2]=n-m;L[k+436>>2]=o+j;L[k+432>>2]=O(O(1)-G)-p;n=L[d+20>>2];m=L[c+20>>2];j=L[d+24>>2];l=L[c+24>>2];o=L[d+16>>2];p=L[c+16>>2];H[k+428>>2]=0;Ja=O(l-r);j=O(O(j-Ba)-Ja);Ka=O(p-u);l=O(O(o-Ca)-Ka);La=O(m-q);n=O(O(n-Aa)-La);m=O(O(Q*j)+O(O(Y*l)+O(P*n)));o=O(O(O(da*j)-O(T*O(O(Y*n)-O(P*l))))+O(Q*m));L[k+424>>2]=o+o;o=O(O(P*m)+O(O(da*n)-O(T*O(O(Q*l)-O(j*Y)))));L[k+420>>2]=o+o;j=O(O(Y*m)+O(O(da*l)-O(T*O(O(P*j)-O(n*Q)))));L[k+416>>2]=j+j;H[k+352>>2]=0;H[k+272>>2]=127172;H[k+280>>2]=b;H[k+276>>2]=k+160;a=H[k+452>>2];H[k+304>>2]=H[k+448>>2];H[k+308>>2]=a;a=H[k+460>>2];H[k+312>>2]=H[k+456>>2];H[k+316>>2]=a;a=H[k+444>>2];H[k+296>>2]=H[k+440>>2];H[k+300>>2]=a;a=H[k+468>>2];H[k+320>>2]=H[k+464>>2];H[k+324>>2]=a;a=H[k+476>>2];H[k+328>>2]=H[k+472>>2];H[k+332>>2]=a;a=H[s+4>>2];H[k+336>>2]=H[s>>2];H[k+340>>2]=a;a=H[k+492>>2];H[k+344>>2]=H[k+488>>2];H[k+348>>2]=a;a=H[k+436>>2];H[k+288>>2]=H[k+432>>2];H[k+292>>2]=a;j=L[k+292>>2];L[k+292>>2]=L[k+304>>2];l=L[k+312>>2];n=L[k+296>>2];L[k+296>>2]=L[k+320>>2];L[k+312>>2]=L[k+324>>2];L[k+320>>2]=n;L[k+324>>2]=l;L[k+304>>2]=j;H[k+264>>2]=126016;H[k+268>>2]=k;ya=O(3.4028234663852886e38);e=Oa-288|0;Oa=e;S=O(O(S+g)+O(0));a=Oa-272|0;Oa=a;H[a+248>>2]=0;H[a+252>>2]=0;H[a+240>>2]=0;H[a+244>>2]=0;D=L[k+504>>2];G=L[k+500>>2];M=L[k+496>>2];A=L[k+424>>2];U=L[k+420>>2];E=L[k+416>>2];H[a+224>>2]=1;b=H[x+8>>2];w=L[b+52>>2];ea=L[b+36>>2];V=L[b+20>>2];X=L[b+56>>2];fa=L[b+40>>2];aa=L[b+24>>2];c=H[x+4>>2];p=L[c+56>>2];v=L[c+52>>2];t=L[c+72>>2];z=L[x+56>>2];J=L[x+24>>2];Z=L[x+40>>2];ba=L[x+48>>2];ca=L[x+32>>2];q=L[c+68>>2];ga=L[x+52>>2];ia=L[x+20>>2];la=L[x+36>>2];ma=L[b+48>>2];ka=L[b+32>>2];na=L[b>>2];Da=L[b+16>>2];Ea=L[b+4>>2];Fa=L[b+8>>2];r=L[c+48>>2];u=L[c+64>>2];Ga=L[x+16>>2];g=L[s+8>>2];j=L[s>>2];l=L[s+4>>2];Ha=k+264|0;d=Ha;b=H[d+4>>2];o=L[b+56>>2];oa=L[b+52>>2];pa=L[b+72>>2];y=b- -64|0;qa=L[y>>2];ra=L[b+68>>2];n=L[b+88>>2];sa=L[b+80>>2];ta=L[b+84>>2];ua=L[b+48>>2];f=0;H[a+172>>2]=0;ja=n;c=O(O(g*g)+O(O(j*j)+O(l*l)))>O(1.1920928955078125e-7);g=c?g:O(0);j=c?j:O(1);n=c?l:O(0);m=O(O(1)/O(W(O(O(g*g)+O(O(j*j)+O(n*n))))));g=O(g*m);l=O(j*m);j=O(n*m);L[a+168>>2]=O(ja*g)+O(O(sa*l)+O(ta*j));L[a+164>>2]=O(pa*g)+O(O(qa*l)+O(j*ra));L[a+160>>2]=O(o*g)+O(O(ua*l)+O(j*oa));c=EU(b,a+160|0);oa=L[y>>2];pa=L[b+80>>2];qa=L[b+84>>2];ra=L[b+52>>2];sa=L[b+68>>2];ta=L[b+88>>2];c=H[b+152>>2]+N(c,12)|0;n=L[c+8>>2];ua=L[b+56>>2];m=L[c>>2];Ia=L[b+72>>2];o=L[c+4>>2];va=L[b+48>>2];H[a+180>>2]=0;H[a+184>>2]=0;H[a+188>>2]=0;H[a+192>>2]=0;H[a+196>>2]=0;H[a+200>>2]=0;H[a+204>>2]=0;H[a+208>>2]=0;H[a+212>>2]=0;H[a+216>>2]=0;H[a+220>>2]=0;H[a+172>>2]=0;H[a+176>>2]=0;wa=X;ja=p;l=O(-l);p=O(O(O(J*l)-O(Z*j))-O(z*g));X=O(O(O(Ga*l)-O(ca*j))-O(ba*g));g=O(O(O(ia*l)-O(la*j))-O(ga*g));b=O(O(ja*p)+O(O(r*X)+O(v*g)))>O(O(t*p)+O(O(u*X)+O(g*q)));g=b?ja:t;j=b?r:u;l=b?v:q;v=O(wa+O(O(fa*g)+O(O(Fa*j)+O(aa*l))));t=O(O(ta*n)+O(O(ua*m)+O(o*Ia)));q=O(v-t);L[a+168>>2]=q;u=O(w+O(O(ea*g)+O(O(Ea*j)+O(l*V))));w=O(O(qa*n)+O(O(ra*m)+O(o*sa)));r=O(u-w);L[a+164>>2]=r;g=O(ma+O(O(ka*g)+O(O(na*j)+O(l*Da))));j=O(O(pa*n)+O(O(va*m)+O(o*oa)));p=O(g-j);L[a+160>>2]=p;H[a+116>>2]=0;H[a+120>>2]=0;H[a+124>>2]=0;H[a+128>>2]=0;H[a+132>>2]=0;H[a+136>>2]=0;H[a+140>>2]=0;H[a+144>>2]=0;H[a+148>>2]=0;H[a+152>>2]=0;H[a+156>>2]=0;H[a+108>>2]=0;H[a+112>>2]=0;L[a+104>>2]=v;L[a+100>>2]=u;L[a+96>>2]=g;H[a+52>>2]=0;H[a+56>>2]=0;H[a+60>>2]=0;H[a+64>>2]=0;H[a+68>>2]=0;H[a+72>>2]=0;H[a+76>>2]=0;H[a+80>>2]=0;H[a+84>>2]=0;H[a+88>>2]=0;H[a+92>>2]=0;H[a+44>>2]=0;H[a+48>>2]=0;L[a+40>>2]=t;L[a+36>>2]=w;L[a+32>>2]=j;g=O(-q);j=O(-r);l=O(-p);u=O(O(q*q)+O(O(p*p)+O(r*r)));n=L[H[d+4>>2]+24>>2];n=O((nla)){n=l;m=j;o=g;G=O(0);v=p;t=r;D=q;break b}fa=O(n+S);ma=O(fa*fa);M=O(O(E*O(0))+M);U=O(O(U*O(0))+G);S=O(O(A*O(0))+D);G=O(0);o=g;m=j;n=l;while(1){v=p;t=r;D=q;b=H[x+8>>2];ia=L[b+56>>2];ka=L[b+40>>2];na=L[b+24>>2];ca=L[b+52>>2];ga=L[b+36>>2];Da=L[b+20>>2];c=H[x+4>>2];q=L[c+56>>2];r=L[c+52>>2];w=L[c+72>>2];V=L[c+68>>2];Ea=L[b+8>>2];z=L[b+48>>2];J=L[b+32>>2];Z=L[b>>2];ba=L[b+16>>2];Fa=L[b+4>>2];X=L[c+48>>2];Ga=L[x+56>>2];oa=L[x+24>>2];pa=L[x+40>>2];aa=L[c+64>>2];qa=L[x+48>>2];ra=L[x+16>>2];sa=L[x+32>>2];ta=L[x+52>>2];ua=L[x+20>>2];Ia=L[x+36>>2];b=H[d+4>>2];va=L[b+52>>2];Na=L[b+56>>2];Pa=L[b+72>>2];f=b- -64|0;Qa=L[f>>2];Ra=L[b+68>>2];Sa=L[b+88>>2];p=L[b+80>>2];A=L[b+84>>2];Ta=L[b+48>>2];H[a+268>>2]=0;ja=p;E=O(O(1)/O(W(O(O(g*g)+O(O(l*l)+O(j*j))))));p=O(l*E);ea=O(-p);wa=A;A=O(j*E);E=O(g*E);L[a+264>>2]=O(O(ja*ea)-O(wa*A))-O(Sa*E);L[a+260>>2]=O(O(Qa*ea)-O(Ra*A))-O(Pa*E);L[a+256>>2]=O(O(Ta*ea)-O(va*A))-O(Na*E);y=EU(b,a+256|0);wa=z;va=J;ja=q;q=O(O(Ga*E)+O(O(oa*p)+O(A*pa)));z=O(O(qa*E)+O(O(ra*p)+O(A*sa)));J=O(O(ta*E)+O(O(ua*p)+O(A*Ia)));c=O(O(ja*q)+O(O(X*z)+O(r*J)))>O(O(w*q)+O(O(aa*z)+O(J*V)));q=c?ja:w;w=c?X:aa;r=c?r:V;aa=O(wa+O(O(va*q)+O(O(Z*w)+O(ba*r))));c=H[b+152>>2]+N(y,12)|0;z=L[c+8>>2];J=L[c>>2];Z=L[c+4>>2];ba=O(M+O(O(L[b+80>>2]*z)+O(O(L[b+48>>2]*J)+O(Z*L[f>>2]))));V=O(aa-ba);ca=O(ca+O(O(ga*q)+O(O(Fa*w)+O(r*Da))));ga=O(U+O(O(L[b+84>>2]*z)+O(O(L[b+52>>2]*J)+O(Z*L[b+68>>2]))));X=O(ca-ga);ia=O(ia+O(O(ka*q)+O(O(Ea*w)+O(r*na))));z=O(S+O(O(L[b+88>>2]*z)+O(O(L[b+56>>2]*J)+O(Z*L[b+72>>2]))));w=O(ia-z);q=O(O(O(O(p*O(-V))-O(A*X))-O(E*w))-fa);if(q>O(0)){c=0;r=L[k+424>>2];J=L[k+416>>2];Z=L[k+420>>2];ka=O(O(E*r)+O(O(p*J)+O(A*Z)));if(ka>=O(0)){break a}p=G;G=O(p-O(q/ka));if(G>p){if(G>O(1)){break a}o=L[k+504>>2];m=L[k+500>>2];n=L[k+496>>2];H[a+76>>2]=0;H[a+60>>2]=0;H[a+44>>2]=0;p=O(n+O(J*G));n=O(p-M);u=O(n+L[a+64>>2]);L[a+64>>2]=u;q=O(m+O(Z*G));m=O(q-U);M=O(m+L[a+68>>2]);L[a+68>>2]=M;r=O(o+O(r*G));o=O(r-S);S=O(o+L[a+72>>2]);L[a+72>>2]=S;U=O(n+L[a+48>>2]);L[a+48>>2]=U;w=O(m+L[a+52>>2]);L[a+52>>2]=w;V=O(o+L[a+56>>2]);L[a+56>>2]=V;n=O(n+L[a+32>>2]);L[a+32>>2]=n;m=O(m+L[a+36>>2]);L[a+36>>2]=m;o=O(o+L[a+40>>2]);L[a+40>>2]=o;X=L[a+96>>2];z=L[a+100>>2];J=L[a+104>>2];H[a+172>>2]=0;L[a+168>>2]=J-o;L[a+164>>2]=z-m;L[a+160>>2]=X-n;n=L[a+112>>2];m=L[a+116>>2];o=L[a+120>>2];H[a+188>>2]=0;L[a+184>>2]=o-V;L[a+180>>2]=m-w;L[a+176>>2]=n-U;n=L[a+128>>2];m=L[a+132>>2];o=L[a+136>>2];H[a+204>>2]=0;L[a+200>>2]=o-S;L[a+196>>2]=m-M;L[a+192>>2]=n-u;b=H[d+4>>2];o=L[b+56>>2];u=L[b+52>>2];S=L[b+72>>2];f=b- -64|0;M=L[f>>2];U=L[b+68>>2];n=L[b+88>>2];m=L[b+80>>2];w=L[b+84>>2];V=L[b+48>>2];H[a+268>>2]=0;z=n;n=O(-E);J=O(m*ea);m=O(-A);L[a+264>>2]=O(z*n)+O(J+O(w*m));L[a+260>>2]=O(S*n)+O(O(M*ea)+O(U*m));L[a+256>>2]=O(o*n)+O(O(V*ea)+O(u*m));c=EU(b,a+256|0);c=H[b+152>>2]+N(c,12)|0;n=L[c+8>>2];m=L[c>>2];o=L[c+4>>2];z=O(r+O(O(L[b+88>>2]*n)+O(O(L[b+56>>2]*m)+O(o*L[b+72>>2]))));w=O(ia-z);ga=O(q+O(O(L[b+84>>2]*n)+O(O(L[b+52>>2]*m)+O(o*L[b+68>>2]))));X=O(ca-ga);ba=O(p+O(O(L[b+80>>2]*n)+O(O(L[b+48>>2]*m)+O(o*L[f>>2]))));V=O(aa-ba);n=l;m=j;o=g;M=p;U=q;S=r;g=O(3.4028234663852886e38)}else{g=u}}else{g=u}A=g;c=H[a+224>>2];f=c<<4;b=f+(a+96|0)|0;H[b+12>>2]=0;L[b+8>>2]=ia;L[b+4>>2]=ca;L[b>>2]=aa;b=f+(a+32|0)|0;H[b+12>>2]=0;L[b+8>>2]=z;L[b+4>>2]=ga;L[b>>2]=ba;b=f+(a+160|0)|0;H[b+12>>2]=0;L[b+8>>2]=w;L[b+4>>2]=X;L[b>>2]=V;H[a+224>>2]=c+1;c:{d:{switch(c-1|0){case 0:p=L[a+168>>2];g=O(L[a+184>>2]-p);q=L[a+160>>2];j=O(L[a+176>>2]-q);r=L[a+164>>2];l=O(L[a+180>>2]-r);u=O(O(g*g)+O(O(j*j)+O(l*l)));if(u<=O(1.1920928955078125e-7)){H[a+224>>2]=1;b=H[a+164>>2];H[a+256>>2]=H[a+160>>2];H[a+260>>2]=b;b=H[a+172>>2];H[a+264>>2]=H[a+168>>2];H[a+268>>2]=b;break c}z=g;g=O(R(O(O(O(O(O(-q)*j)-O(l*r))-O(p*g))/u),O(1)));g=g>O(0)?g:O(0);L[a+264>>2]=p+O(z*g);L[a+260>>2]=r+O(l*g);L[a+256>>2]=q+O(j*g);break c;case 1:GU(a+256|0,a+160|0,a+96|0,a+32|0,a+224|0);break c;case 2:BZ(a+256|0,a+160|0,a+96|0,a+32|0,a+224|0);break c;default:break d}}L[a+264>>2]=w;L[a+260>>2]=X;L[a+256>>2]=V}q=L[a+264>>2];g=O(-q);r=L[a+260>>2];j=O(-r);p=L[a+256>>2];l=O(-p);u=O(O(q*q)+O(O(p*p)+O(r*r)));if(ma>2]+32|0];M=O(0);w=O(0);c=!(u>la)|f;g=c?o:g;l=c?n:l;j=c?m:j;n=O(W(O(O(g*g)+O(O(l*l)+O(j*j)))));if(!(n<=O(1.1920928955078125e-7))){m=g;g=O(O(1)/n);za=O(m*g);w=O(l*g);M=O(j*g)}H[e+268>>2]=0;L[e+264>>2]=-za;L[e+260>>2]=-M;L[e+256>>2]=-w;L[e+240>>2]=G;H[e+252>>2]=H[a+236>>2];c=H[a+232>>2];H[e+244>>2]=H[a+228>>2];H[e+248>>2]=c;H[a+268>>2]=0;L[a+264>>2]=f?D:q;L[a+260>>2]=f?t:r;L[a+256>>2]=f?v:p;c=H[a+252>>2];f=H[a+248>>2];H[a+24>>2]=f;H[a+28>>2]=c;d=H[a+244>>2];y=H[a+240>>2];H[a+16>>2]=y;H[a+20>>2]=d;H[a+8>>2]=f;H[a+12>>2]=c;H[a>>2]=y;H[a+4>>2]=d;FU(a+160|0,a+96|0,a+32|0,a+256|0,a+16|0,a,H[a+224>>2]);g=L[H[x+4>>2]+16>>2];j=L[a+16>>2];l=L[a+20>>2];n=L[a+24>>2];H[e+284>>2]=0;L[e+280>>2]=n+(b?O(za*g):O(-0));L[e+276>>2]=l+(b?O(M*g):O(-0));L[e+272>>2]=j+(b?O(w*g):O(-0));c=1}Oa=a+272|0;a=c;if(a){b=H[e+244>>2];H[k+400>>2]=H[e+240>>2];H[k+404>>2]=b;b=H[e+252>>2];H[k+408>>2]=H[e+248>>2];H[k+412>>2]=b;if(L[e+240>>2]==O(0)){c=H[x+4>>2];d=H[Ha+4>>2];L[e+224>>2]=O(L[c+16>>2]+L[d+16>>2])*O(100);F[e+215|0]=0;H[e+168>>2]=0;H[e+172>>2]=0;H[e+160>>2]=0;H[e+164>>2]=0;H[e+152>>2]=0;H[e+156>>2]=0;H[e+144>>2]=0;H[e+148>>2]=0;H[e+136>>2]=0;H[e+140>>2]=0;H[e+128>>2]=0;H[e+132>>2]=0;H[e+192>>2]=0;b=H[x+8>>2];H[e+56>>2]=b;H[e+48>>2]=127172;H[e+52>>2]=c;c=H[b+12>>2];H[e+72>>2]=H[b+8>>2];H[e+76>>2]=c;c=H[b+20>>2];H[e+80>>2]=H[b+16>>2];H[e+84>>2]=c;c=H[b+28>>2];H[e+88>>2]=H[b+24>>2];H[e+92>>2]=c;c=H[b+36>>2];H[e+96>>2]=H[b+32>>2];H[e+100>>2]=c;c=H[b+44>>2];H[e+104>>2]=H[b+40>>2];H[e+108>>2]=c;c=H[b+52>>2];H[e+112>>2]=H[b+48>>2];H[e+116>>2]=c;c=H[b+60>>2];H[e+120>>2]=H[b+56>>2];H[e+124>>2]=c;c=H[b+4>>2];H[e+64>>2]=H[b>>2];H[e+68>>2]=c;g=L[e+68>>2];L[e+68>>2]=L[e+80>>2];j=L[e+88>>2];l=L[e+72>>2];L[e+72>>2]=L[e+96>>2];L[e+80>>2]=g;L[e+96>>2]=l;L[e+88>>2]=L[e+100>>2];L[e+100>>2]=j;H[e+40>>2]=126016;H[e+44>>2]=d;y=e+220|0;$=e+216|0;d=Oa-320|0;Oa=d;f=H[e+44>>2];g=L[f+20>>2];b=H[e+52>>2];j=L[b+20>>2];q=L[e+224>>2];ha=I[b+32|0];r=L[b+16>>2];Ua=I[f+32|0];D=L[f+16>>2];H[d+28>>2]=0;M=O((g>2];b=0;while(1){c=B<<2;K=I[y+B|0];H[c+(d+48|0)>>2]=K;C=c+(d+32|0)|0;c=I[B+$|0];H[C>>2]=c;c=H[f+152>>2]+N(c,12)|0;g=L[c+8>>2];j=L[c>>2];l=L[c+4>>2];c=(1-K<<4)+Va|0;n=L[c+8>>2];m=L[c>>2];o=L[c+4>>2];p=L[f+80>>2];v=L[f+48>>2];t=L[f+64>>2];u=L[f+84>>2];S=L[f+52>>2];G=L[f+68>>2];U=L[f+88>>2];A=L[f+56>>2];E=L[f+72>>2];w=L[s+48>>2];ea=L[s+32>>2];V=L[s>>2];X=L[s+16>>2];fa=L[s+52>>2];aa=L[s+36>>2];z=L[s+4>>2];J=L[s+20>>2];Z=L[s+56>>2];ba=L[s+40>>2];ca=L[s+8>>2];ga=L[s+24>>2];c=b;C=b<<4;K=C+(d+128|0)|0;H[K+12>>2]=0;_=C+(d- -64|0)|0;H[_+12>>2]=0;C=C+(d+192|0)|0;H[C+12>>2]=0;Z=O(Z+O(O(ba*n)+O(O(ca*m)+O(o*ga))));L[K+8>>2]=Z;fa=O(fa+O(O(aa*n)+O(O(z*m)+O(o*J))));L[K+4>>2]=fa;n=O(w+O(O(ea*n)+O(O(V*m)+O(o*X))));L[K>>2]=n;m=O(O(U*g)+O(O(A*j)+O(l*E)));L[_+8>>2]=m;o=O(O(u*g)+O(O(S*j)+O(l*G)));L[_+4>>2]=o;g=O(O(p*g)+O(O(v*j)+O(l*t)));L[_>>2]=g;j=O(Z-m);L[C+8>>2]=j;l=O(fa-o);L[C+4>>2]=l;g=O(n-g);L[C>>2]=g;b=b+1|0;H[d+28>>2]=b;B=B+1|0;if((Ma|0)!=(B|0)){continue}break}k:{l:{switch(c-1|0){case 0:n=L[d+200>>2];g=O(L[d+216>>2]-n);m=L[d+192>>2];j=O(L[d+208>>2]-m);o=L[d+196>>2];l=O(L[d+212>>2]-o);p=O(O(g*g)+O(O(j*j)+O(l*l)));if(!(p<=O(1.1920928955078125e-7))){break k}H[d+28>>2]=1;b=H[d+196>>2];H[d+304>>2]=H[d+192>>2];H[d+308>>2]=b;b=H[d+204>>2];H[d+312>>2]=H[d+200>>2];H[d+316>>2]=b;break i;case 1:_W(d+304|0,d+192|0,d+128|0,d- -64|0,d+48|0,d+32|0,d+28|0);break i;case 2:break l;default:break j}}DZ(d+304|0,d+192|0,d+128|0,d- -64|0,d+48|0,d+32|0,d+28|0);break i}H[d+316>>2]=0;t=g;g=O(R(O(O(O(O(O(-m)*j)-O(l*o))-O(n*g))/p),O(1)));g=g>O(0)?g:O(0);L[d+312>>2]=n+O(t*g);L[d+308>>2]=o+O(l*g);L[d+304>>2]=m+O(j*g);break i}g=L[s+8>>2];l=L[s>>2];j=L[s+4>>2];H[d+268>>2]=0;b=O(O(g*g)+O(O(l*l)+O(j*j)))>O(0);g=b?g:O(0);L[d+264>>2]=g;j=b?j:O(0);L[d+260>>2]=j;l=b?l:O(1);L[d+256>>2]=l;n=O(O(1)/O(W(O(O(g*g)+O(O(l*l)+O(j*j))))));p=O(g*n);v=O(j*n);t=O(l*n);n=O(3.4028234663852886e38);S=O(0);break h}H[d+316>>2]=0;L[d+312>>2]=j;L[d+308>>2]=l;L[d+304>>2]=g}b=H[d+308>>2];H[d+256>>2]=H[d+304>>2];H[d+260>>2]=b;b=H[d+316>>2];H[d+264>>2]=H[d+312>>2];H[d+268>>2]=b;g=L[d+264>>2];l=L[d+256>>2];j=L[d+260>>2];n=O(W(O(O(g*g)+O(O(l*l)+O(j*j)))));if(!(M>2]}u=ha?r:O(0);D=Ua?D:O(0);G=O(u+D);ea=O(q+G);while(1){H[d+280>>2]=H[d+296>>2];b=H[d+292>>2];H[d+272>>2]=H[d+288>>2];H[d+276>>2]=b;b=H[e+56>>2];s=H[d+28>>2]<<2;c=H[e+52>>2];B=c+56|0;m=O(-l);o=O(O(O(L[e+72>>2]*m)-O(L[e+88>>2]*j))-O(L[e+104>>2]*g));q=O(O(O(L[e+64>>2]*m)-O(L[e+80>>2]*j))-O(L[e+96>>2]*g));m=O(O(O(L[e+68>>2]*m)-O(L[e+84>>2]*j))-O(L[e+100>>2]*g));K=c+52|0;_=c+72|0;C=c+68|0;f=O(O(L[B>>2]*o)+O(O(L[c+48>>2]*q)+O(m*L[K>>2])))>O(O(L[_>>2]*o)+O(O(L[c+64>>2]*q)+O(m*L[C>>2])));H[s+(d+48|0)>>2]=f;m=L[(f?B:_)>>2];o=L[(f?c+48|0:c- -64|0)>>2];q=L[(f?K:C)>>2];r=L[b+56>>2];U=L[b+40>>2];A=L[b+24>>2];V=L[b+52>>2];X=L[b+36>>2];fa=L[b+20>>2];E=L[b+8>>2];w=L[b+48>>2];aa=L[b+32>>2];z=L[b>>2];J=L[b+16>>2];Z=L[b+4>>2];b=H[e+44>>2];ba=L[b+56>>2];ca=L[b+52>>2];ga=L[b+72>>2];f=b- -64|0;ia=L[f>>2];za=L[b+68>>2];la=L[b+88>>2];ma=L[b+80>>2];ka=L[b+84>>2];na=L[b+48>>2];H[d+316>>2]=0;L[d+312>>2]=O(la*g)+O(O(ma*l)+O(j*ka));L[d+308>>2]=O(ga*g)+O(O(ia*l)+O(j*za));L[d+304>>2]=O(ba*g)+O(O(na*l)+O(j*ca));c=EU(b,d+304|0);H[s+(d+32|0)>>2]=c;ba=O(r+O(O(U*m)+O(O(E*o)+O(q*A))));c=H[b+152>>2]+N(c,12)|0;r=L[c+8>>2];U=L[c>>2];A=L[c+4>>2];ca=O(O(L[b+88>>2]*r)+O(O(L[b+56>>2]*U)+O(A*L[b+72>>2])));E=O(ba-ca);aa=O(w+O(O(aa*m)+O(O(z*o)+O(q*J))));z=O(O(L[b+80>>2]*r)+O(O(L[b+48>>2]*U)+O(A*L[f>>2])));w=O(aa-z);o=O(V+O(O(X*m)+O(O(Z*o)+O(q*fa))));q=O(O(L[b+84>>2]*r)+O(O(L[b+52>>2]*U)+O(A*L[b+68>>2])));m=O(o-q);r=O(O(p*E)+O(O(t*w)+O(v*m)));if(r>ea){b=0;if(!y){break e}f=H[d+28>>2];F[e+215|0]=f;if(!f){break e}c=0;if((f|0)!=1){_=f&-2;B=0;while(1){s=c<<2;C=d+48|0;F[c+y|0]=H[s+C>>2];ha=d+32|0;F[c+$|0]=H[ha+s>>2];s=c|1;K=s<<2;F[s+y|0]=H[K+C>>2];F[s+$|0]=H[K+ha>>2];c=c+2|0;B=B+2|0;if((_|0)!=(B|0)){continue}break}}if(!(f&1)){break e}f=c<<2;F[c+y|0]=H[f+(d+48|0)>>2];F[c+$|0]=H[f+(d+32|0)>>2];break e}b=H[d+28>>2];if(r>O(n*O(.9997749924659729))){m:{if(!y){break m}F[e+215|0]=b;if(!b){break m}f=0;if((b|0)!=1){K=b&-2;s=0;while(1){c=f<<2;_=d+48|0;F[f+y|0]=H[c+_>>2];C=d+32|0;F[f+$|0]=H[C+c>>2];c=f|1;B=c<<2;F[c+y|0]=H[B+_>>2];F[c+$|0]=H[B+C>>2];f=f+2|0;s=s+2|0;if((K|0)!=(s|0)){continue}break}}if(!(b&1)){break m}c=f<<2;F[f+y|0]=H[c+(d+48|0)>>2];F[f+$|0]=H[c+(d+32|0)>>2]}L[e+160>>2]=t;H[e+172>>2]=0;L[e+168>>2]=p;L[e+164>>2]=v;FU(d+192|0,d+128|0,d- -64|0,d+256|0,d+304|0,d,b);g=L[d+304>>2];j=L[d+308>>2];l=L[d+312>>2];H[e+140>>2]=0;L[e+136>>2]=l-O(u*p);L[e+132>>2]=j-O(u*v);L[e+128>>2]=g-O(u*t);g=L[d>>2];j=L[d+4>>2];l=L[d+8>>2];H[e+156>>2]=0;L[e+152>>2]=l+O(D*p);L[e+148>>2]=j+O(D*v);L[e+144>>2]=g+O(D*t);L[e+192>>2]=n-G;b=2;break e}f=b<<4;c=f+(d+128|0)|0;H[c+12>>2]=0;L[c+8>>2]=ba;L[c+4>>2]=o;L[c>>2]=aa;c=f+(d- -64|0)|0;H[c+12>>2]=0;L[c+8>>2]=ca;L[c+4>>2]=q;L[c>>2]=z;c=f+(d+192|0)|0;H[c+12>>2]=0;L[c+8>>2]=E;L[c+4>>2]=m;L[c>>2]=w;H[d+28>>2]=b+1;n:{o:{switch(b-1|0){case 0:v=L[d+200>>2];m=O(L[d+216>>2]-v);t=L[d+192>>2];o=O(L[d+208>>2]-t);q=L[d+196>>2];p=O(L[d+212>>2]-q);r=O(O(m*m)+O(O(o*o)+O(p*p)));if(r<=O(1.1920928955078125e-7)){H[d+28>>2]=1;b=H[d+196>>2];H[d+304>>2]=H[d+192>>2];H[d+308>>2]=b;b=H[d+204>>2];H[d+312>>2]=H[d+200>>2];H[d+316>>2]=b;break n}H[d+316>>2]=0;A=m;m=O(R(O(O(O(O(O(-t)*o)-O(p*q))-O(v*m))/r),O(1)));m=m>O(0)?m:O(0);L[d+312>>2]=v+O(A*m);L[d+308>>2]=q+O(p*m);L[d+304>>2]=t+O(o*m);break n;case 1:_W(d+304|0,d+192|0,d+128|0,d- -64|0,d+48|0,d+32|0,d+28|0);break n;case 2:DZ(d+304|0,d+192|0,d+128|0,d- -64|0,d+48|0,d+32|0,d+28|0);break n;default:break o}}H[d+316>>2]=0;L[d+312>>2]=E;L[d+308>>2]=m;L[d+304>>2]=w}b=H[d+308>>2];H[d+256>>2]=H[d+304>>2];H[d+260>>2]=b;b=H[d+316>>2];H[d+264>>2]=H[d+312>>2];H[d+268>>2]=b;o=L[d+264>>2];q=L[d+256>>2];r=L[d+260>>2];m=O(W(O(O(o*o)+O(O(q*q)+O(r*r)))));t=O(O(1)/m);p=O(o*t);v=O(r*t);t=O(q*t);if(!(!(m>M)|!(n>m))){S=L[d+268>>2];g=o;j=r;l=q;n=m;continue}break}f=H[d+28>>2];if(!(n>m)){p:{if(!y){break p}b=f-1|0;F[e+215|0]=b;if(!b){break p}c=0;if((f|0)!=2){_=b&-2;s=0;while(1){B=c<<2;C=d+48|0;F[c+y|0]=H[B+C>>2];ha=d+32|0;F[c+$|0]=H[ha+B>>2];B=c|1;K=B<<2;F[y+B|0]=H[K+C>>2];F[B+$|0]=H[K+ha>>2];c=c+2|0;s=s+2|0;if((_|0)!=(s|0)){continue}break}}if(!(b&1)){break p}b=c<<2;F[c+y|0]=H[b+(d+48|0)>>2];F[c+$|0]=H[b+(d+32|0)>>2]}H[d+296>>2]=H[d+280>>2];b=H[d+276>>2];H[d+288>>2]=H[d+272>>2];H[d+292>>2]=b;L[d+268>>2]=S;L[d+256>>2]=l;L[d+260>>2]=j;L[d+264>>2]=g;FU(d+192|0,d+128|0,d- -64|0,d+256|0,d+304|0,d,f);H[e+188>>2]=0;L[e+184>>2]=p;L[e+180>>2]=v;L[e+176>>2]=t;H[e+172>>2]=0;p=g;g=O(O(1)/n);m=O(p*g);L[e+168>>2]=m;j=O(j*g);L[e+164>>2]=j;g=O(l*g);L[e+160>>2]=g;l=L[d+304>>2];o=L[d+308>>2];p=L[d+312>>2];H[e+140>>2]=0;L[e+136>>2]=p-O(u*m);L[e+132>>2]=o-O(u*j);L[e+128>>2]=l-O(u*g);l=L[d>>2];o=L[d+4>>2];p=L[d+8>>2];L[e+192>>2]=n-G;H[e+156>>2]=0;L[e+152>>2]=p+O(D*m);L[e+148>>2]=o+O(D*j);L[e+144>>2]=l+O(D*g);b=2;if(n<=G){break e}b=4;break e}if(y){break f}b=5;break e}f=H[d+28>>2]}F[e+215|0]=f;b=5;if(!f){break e}c=0;if((f|0)!=1){_=f&-2;B=0;while(1){s=c<<2;C=d+48|0;F[c+y|0]=H[s+C>>2];ha=d+32|0;F[c+$|0]=H[ha+s>>2];s=c|1;K=s<<2;F[s+y|0]=H[K+C>>2];F[s+$|0]=H[K+ha>>2];c=c+2|0;B=B+2|0;if((_|0)!=(B|0)){continue}break}}if(!(f&1)){break e}f=c<<2;F[c+y|0]=H[f+(d+48|0)>>2];F[c+$|0]=H[f+(d+32|0)>>2]}Oa=d+320|0;q:{r:{if(b-5|0){break r}H[e+16>>2]=1065353216;b=H[e+28>>2];H[e+8>>2]=H[e+24>>2];H[e+12>>2]=b;b=H[e+20>>2];H[e>>2]=H[e+16>>2];H[e+4>>2]=b;if(wZ(x,Ha,e+220|0,e+216|0,I[e+215|0],0,e,e+128|0)-5>>>0<=1){break r}H[e+280>>2]=0;H[e+284>>2]=0;H[e+272>>2]=0;H[e+276>>2]=0;g=L[k+424>>2];j=L[k+416>>2];l=L[k+420>>2];H[e+268>>2]=0;n=O(O(1)/O(W(O(O(g*g)+O(O(j*j)+O(l*l))))));L[e+264>>2]=n*O(-g);L[e+260>>2]=n*O(-l);L[e+256>>2]=n*O(-j);g=O(0);break q}b=H[e+140>>2];H[e+280>>2]=H[e+136>>2];H[e+284>>2]=b;b=H[e+132>>2];H[e+272>>2]=H[e+128>>2];H[e+276>>2]=b;b=H[e+164>>2];H[e+256>>2]=H[e+160>>2];H[e+260>>2]=b;b=H[e+172>>2];H[e+264>>2]=H[e+168>>2];H[e+268>>2]=b;g=L[e+192>>2]}L[k+400>>2]=g>2];H[k+384>>2]=H[e+272>>2];H[k+388>>2]=b;b=H[e+284>>2];H[k+392>>2]=H[e+280>>2];H[k+396>>2]=b;b=H[e+260>>2];H[k+368>>2]=H[e+256>>2];H[k+372>>2]=b;b=H[e+268>>2];H[k+376>>2]=H[e+264>>2];H[k+380>>2]=b}Oa=e+288|0;if(a){ya=L[k+400>>2];g=L[k+392>>2];j=L[k+384>>2];l=L[k+388>>2];n=L[k+376>>2];m=L[k+368>>2];o=L[k+372>>2];p=O(O(Q*n)+O(O(Y*m)+O(P*o)));v=O(-P);t=O(O(O(T*O(O(Y*o)+O(m*v)))+O(da*n))+O(Q*p));L[h+8>>2]=t+t;t=O(O(P*p)+O(O(da*o)+O(T*O(O(Q*m)+O(n*xa)))));L[h+4>>2]=t+t;q=o;o=O(-Q);n=O(O(Y*p)+O(O(da*m)+O(T*O(O(P*n)+O(q*o)))));L[h>>2]=n+n;n=ya>O(0)?ya:O(0);m=O(O(Q*g)+O(O(Y*j)+O(P*l)));p=O(O(O(T*O(O(Y*l)+O(j*v)))+O(da*g))+O(Q*m));L[i+8>>2]=O(Ja*n)+O(Ba+O(p+p));p=O(O(P*m)+O(O(da*l)+O(T*O(O(Q*j)+O(g*xa)))));L[i+4>>2]=O(La*n)+O(Aa+O(p+p));g=O(O(Y*m)+O(O(da*j)+O(T*O(O(P*g)+O(l*o)))));L[i>>2]=O(Ka*n)+O(Ca+O(g+g))}Oa=k+512|0;return O(ya)}function rt(a,b,c,d){var e=0,f=O(0),g=O(0),h=O(0),i=0,j=0,k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=0,q=O(0),r=0,s=O(0),t=O(0),u=0,v=0,w=0,x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=0,D=O(0),E=O(0),K=O(0),M=O(0),P=0,Q=O(0),R=O(0),S=O(0),T=O(0),U=O(0),V=O(0),X=O(0),Y=O(0),Z=0,_=O(0),$=0,aa=O(0),ba=O(0),ca=O(0),da=O(0),ea=O(0),fa=O(0),ga=O(0),ha=O(0),ia=O(0),ja=O(0),ka=0,la=0,ma=0,na=O(0),oa=O(0),pa=O(0),qa=O(0),ra=O(0),sa=O(0),ta=0,ua=O(0),va=0,wa=O(0),xa=O(0),ya=0,za=0,Aa=0,Ba=0,Ca=0,Da=0;e=Oa-336|0;Oa=e;f=O(Ra[H[H[c>>2]+280>>2]](c,0));a:{if(f==O(0)){break a}j=H[a>>2];la=J[a+4>>1];if(la>>>0>=2){ta=O(Ra[H[H[c>>2]+280>>2]](c,14))!=O(0)}P=I[c+5580|0]&64?c+5272|0:H[c+1008>>2]+1128|0;wa=O(Ra[H[H[c>>2]+280>>2]](c,11));ua=O(Ra[H[H[c>>2]+280>>2]](c,12));xa=O(Ra[H[H[c>>2]+280>>2]](c,16));g=O(Ra[H[H[c>>2]+280>>2]](c,15));h=L[P+12>>2];l=L[P>>2];k=O(Ra[H[H[c>>2]+280>>2]](c,13));Ra[H[H[d>>2]+76>>2]](e- -64|0,d);if(!la){break a}Aa=(la|0)==1?a:j;ya=ua!=O(0);za=ya|g!=O(0)|xa!=O(0);ma=h>2];d=H[c+40>>2];p=H[c+36>>2];a=p&4?d:c+80|0;n=L[a+24>>2];t=L[a+20>>2];s=L[a+16>>2];f=L[e+76>>2];k=L[a+12>>2];m=L[a>>2];g=L[e+64>>2];h=L[e+68>>2];q=L[a+4>>2];l=L[e+72>>2];o=L[a+8>>2];L[e+44>>2]=O(O(O(f*k)-O(m*g))-O(h*q))-O(l*o);L[e+40>>2]=O(O(g*q)+O(O(f*o)+O(l*k)))-O(m*h);L[e+36>>2]=O(O(l*m)+O(O(f*q)+O(h*k)))-O(o*g);L[e+32>>2]=O(O(h*o)+O(O(f*m)+O(g*k)))-O(q*l);k=O(n+n);m=O(s+s);q=O(t+t);o=O(O(l*k)+O(O(g*m)+O(h*q)));n=O(O(f*f)+O(-.5));L[e+56>>2]=L[e+88>>2]+O(O(l*o)+O(O(k*n)+O(f*O(O(g*q)-O(m*h)))));L[e+52>>2]=L[e+84>>2]+O(O(h*o)+O(O(q*n)+O(f*O(O(l*m)-O(k*g)))));L[e+48>>2]=L[e+80>>2]+O(O(g*o)+O(O(m*n)+O(f*O(O(h*k)-O(q*l)))));j=p&1?d- -64|0:c+116|0;a=I[(p&64?d+52|0:c+112|0)|0]&8;b:{if((a>>>3&wa!=O(0)|Ba)==1){aU(e+8|0,j,e+32|0,O(1));break b}H[e+24>>2]=-25165825;H[e+28>>2]=-25165825;H[e+16>>2]=2122317823;H[e+20>>2]=-25165825;H[e+8>>2]=2122317823;H[e+12>>2]=2122317823}c:{if(!a){break c}if(wa!=O(0)){H[b+4>>2]=-256;H[e+272>>2]=1065353216;H[Z+8>>2]=0;H[Z+12>>2]=0;H[Z>>2]=0;H[Z+4>>2]=0;H[e+292>>2]=1065353216;H[e+304>>2]=0;H[e+308>>2]=0;H[e+296>>2]=0;H[e+300>>2]=0;H[e+312>>2]=1065353216;H[e+324>>2]=0;H[e+328>>2]=0;H[e+316>>2]=0;H[e+320>>2]=0;H[e+332>>2]=1065353216;a=UT(b,e+272|0);c=H[e+12>>2];H[e+160>>2]=H[e+8>>2];H[e+164>>2]=c;c=H[e+20>>2];H[e+168>>2]=H[e+16>>2];H[e+172>>2]=c;F[e+184|0]=1;c=H[e+28>>2];H[e+176>>2]=H[e+24>>2];H[e+180>>2]=c;XT(a,e+160|0)}if(oa!=O(0)){H[e+332>>2]=1065353216;L[e+328>>2]=L[e+56>>2];a=H[e+52>>2];H[e+320>>2]=H[e+48>>2];H[e+324>>2]=a;H[e+316>>2]=0;H[e+300>>2]=0;H[e+284>>2]=0;g=L[e+36>>2];l=O(g+g);f=L[e+40>>2];q=O(l*f);k=L[e+32>>2];h=O(k+k);m=L[e+44>>2];o=O(h*m);L[e+308>>2]=q-o;n=O(h*f);t=O(l*m);L[e+304>>2]=n+t;L[e+296>>2]=q+o;q=O(h*g);s=m;m=O(f+f);o=O(s*m);L[e+288>>2]=q-o;L[e+280>>2]=n-t;L[e+276>>2]=q+o;h=O(O(1)-O(k*h));g=O(g*l);L[e+312>>2]=h-g;f=O(f*m);L[e+292>>2]=h-f;L[e+272>>2]=O(O(1)-g)-f;a=UT(b,e+272|0);H[e+180>>2]=207;H[e+172>>2]=13565952;H[e+176>>2]=52992;L[e+168>>2]=oa;L[e+164>>2]=oa;L[e+160>>2]=oa;ZT(a,e+160|0)}if(!za){break c}if(!ma){if(L[e+8>>2]>L[P+12>>2]|L[P>>2]>L[e+20>>2]|(L[e+12>>2]>L[P+16>>2]|L[P+4>>2]>L[e+24>>2])){break c}if(L[e+16>>2]>L[P+20>>2]|L[P+8>>2]>L[e+28>>2]){break c}}a=H[j>>2];if(!ya&(a|0)!=5){break c}d:{switch(a|0){case 0:H[b+4>>2]=-65281;a=VT(b,e+32|0);L[e+276>>2]=L[j+4>>2];H[e+272>>2]=100;c=a;a=e+272|0;_T(c,a);H[e+332>>2]=1065353216;L[e+328>>2]=L[e+56>>2];c=H[e+52>>2];H[e+320>>2]=H[e+48>>2];H[e+324>>2]=c;H[e+284>>2]=0;H[e+316>>2]=0;l=L[e+32>>2];g=O(l+l);f=L[e+40>>2];q=O(g*f);h=L[e+36>>2];k=O(h+h);m=L[e+44>>2];o=O(k*m);L[e+280>>2]=q-o;n=O(g*h);t=O(f+f);s=O(m*t);L[e+276>>2]=n+s;x=O(k*f);m=O(g*m);L[e+312>>2]=x+m;L[e+304>>2]=n-s;h=O(h*k);f=O(f*t);L[e+272>>2]=O(O(1)-h)-f;g=O(O(1)-O(l*g));L[e+308>>2]=g-f;H[e+300>>2]=-2147483648;L[e+296>>2]=-O(g-h);L[e+292>>2]=-O(x-m);L[e+288>>2]=-O(q+o);c=UT(b,a);L[e+164>>2]=L[j+4>>2];H[e+160>>2]=100;d=c;c=e+160|0;_T(d,c);f=L[e+308>>2];g=L[e+304>>2];d=H[e+276>>2];H[e+304>>2]=H[e+272>>2];H[e+308>>2]=d;h=L[e+316>>2];l=L[e+312>>2];d=H[e+284>>2];H[e+312>>2]=H[e+280>>2];H[e+316>>2]=d;L[e+272>>2]=-g;L[e+276>>2]=-f;L[e+280>>2]=-l;L[e+284>>2]=-h;a=UT(b,a);L[e+164>>2]=L[j+4>>2];H[e+160>>2]=100;_T(a,c);break c;case 3:H[b+4>>2]=-65281;a=VT(b,e+32|0);f=L[j+8>>2];g=L[j+12>>2];h=L[j+4>>2];F[e+296|0]=1;L[e+292>>2]=g;L[e+288>>2]=f;L[e+284>>2]=h;L[e+280>>2]=-g;L[e+276>>2]=-f;L[e+272>>2]=-h;XT(a,e+272|0);break c;case 1:H[e+332>>2]=1065353216;L[e+328>>2]=L[e+56>>2];a=H[e+52>>2];H[e+320>>2]=H[e+48>>2];H[e+324>>2]=a;H[e+316>>2]=0;H[e+300>>2]=-2147483648;l=L[e+32>>2];g=O(l+l);f=L[e+40>>2];q=O(g*f);h=L[e+36>>2];k=O(h+h);m=L[e+44>>2];o=O(k*m);L[e+312>>2]=q-o;n=O(g*h);t=O(f+f);s=O(m*t);L[e+308>>2]=n+s;h=O(h*k);t=O(f*t);L[e+304>>2]=O(O(1)-h)-t;f=O(k*f);k=O(g*m);L[e+292>>2]=-O(f-k);L[e+288>>2]=-O(q+o);g=O(O(1)-O(l*g));L[e+296>>2]=-O(g-h);H[e+284>>2]=-2147483648;L[e+280>>2]=-O(f+k);L[e+276>>2]=-O(g-t);L[e+272>>2]=-O(n-s);Ca=UT(b,e+272|0),Da=-65281,H[Ca+4>>2]=Da;H[e+160>>2]=100;H[e+164>>2]=1082130432;a=e+160|0;_T(b,a);H[e+160>>2]=100;H[e+164>>2]=1098907648;_T(b,a);H[e+160>>2]=100;H[e+164>>2]=1108344832;_T(b,a);H[e+160>>2]=100;H[e+164>>2]=1115684864;_T(b,a);H[e+160>>2]=100;H[e+164>>2]=1120403456;_T(b,a);H[e+160>>2]=100;H[e+164>>2]=1125122048;_T(b,a);H[e+160>>2]=100;H[e+164>>2]=1128529920;_T(b,a);H[e+160>>2]=100;H[e+164>>2]=1132462080;_T(b,a);H[e+160>>2]=100;H[e+164>>2]=1134690304;_T(b,a);break c;case 2:H[b+4>>2]=-65281;q=L[j+8>>2];o=L[j+4>>2];H[e+332>>2]=1065353216;L[e+328>>2]=L[e+56>>2];a=H[e+52>>2];H[e+320>>2]=H[e+48>>2];H[e+324>>2]=a;H[e+316>>2]=0;H[e+300>>2]=0;H[e+284>>2]=0;g=L[e+36>>2];l=O(g+g);f=L[e+40>>2];n=O(l*f);k=L[e+32>>2];h=O(k+k);m=L[e+44>>2];t=O(h*m);L[e+308>>2]=n-t;s=O(h*f);x=O(l*m);L[e+304>>2]=s+x;L[e+296>>2]=n+t;n=O(h*g);y=m;m=O(f+f);t=O(y*m);L[e+288>>2]=n-t;L[e+280>>2]=s-x;L[e+276>>2]=n+t;h=O(O(1)-O(k*h));g=O(g*l);L[e+312>>2]=h-g;f=O(f*m);L[e+292>>2]=h-f;L[e+272>>2]=O(O(1)-g)-f;$T(b,o,q,e+272|0);break c;case 4:p=H[j+32>>2];a=I[p+54|0];c=J[p+52>>1];d=H[p+56>>2];r=I[p+55|0];l=L[j+12>>2];k=L[j+8>>2];f=L[j+24>>2];h=L[j+16>>2];m=L[j+28>>2];g=L[j+20>>2];q=L[j+4>>2];H[e+316>>2]=0;H[e+300>>2]=0;H[e+284>>2]=0;o=O(h+h);V=O(f*o);y=O(g+g);D=O(m*y);n=O(V+D);t=O(q*n);E=O(y*f);X=O(o*m);s=O(E-X);x=O(s*k);S=O(O(1)-O(h*o));Y=O(g*y);y=O(S-Y);B=O(y*l);Q=L[e+32>>2];A=O(Q+Q);h=L[e+40>>2];ca=O(A*h);z=L[e+36>>2];T=O(z+z);K=L[e+44>>2];da=O(T*K);R=O(ca-da);ea=O(O(1)-O(Q*A));fa=O(z*T);Q=O(ea-fa);U=O(O(O(n*t)+O(s*x))+O(y*B));M=O(f+f);ga=O(f*M);f=O(O(O(1)-Y)-ga);Y=O(q*f);ha=O(o*g);M=O(M*m);g=O(ha+M);o=O(k*g);m=O(V-D);V=O(l*m);D=O(O(O(n*Y)+O(s*o))+O(y*V));ia=O(T*h);ja=O(A*K);T=O(ia+ja);_=n;n=q;q=O(ha-M);n=O(n*q);M=s;s=k;k=O(S-ga);s=O(s*k);S=y;y=l;l=O(E+X);y=O(y*l);E=O(O(O(_*n)+O(M*s))+O(S*y));L[e+312>>2]=O(Q*U)+O(O(R*D)+O(T*E));X=O(ia-ja);S=O(A*z);z=O(h+h);M=O(K*z);A=O(S+M);K=O(h*z);h=O(ea-K);L[e+308>>2]=O(X*U)+O(O(A*D)+O(h*E));z=O(ca+da);_=O(z*U);K=O(O(O(1)-fa)-K);U=O(S-M);L[e+304>>2]=_+O(O(K*D)+O(U*E));D=O(O(O(q*t)+O(k*x))+O(l*B));E=O(O(O(q*Y)+O(k*o))+O(l*V));l=O(O(O(q*n)+O(k*s))+O(l*y));L[e+296>>2]=O(Q*D)+O(O(R*E)+O(T*l));L[e+292>>2]=O(X*D)+O(O(A*E)+O(h*l));L[e+288>>2]=O(z*D)+O(O(K*E)+O(U*l));l=O(O(O(f*t)+O(g*x))+O(m*B));k=O(O(O(f*Y)+O(g*o))+O(m*V));f=O(O(O(f*n)+O(g*s))+O(m*y));L[e+280>>2]=O(Q*l)+O(O(R*k)+O(T*f));L[e+276>>2]=O(X*l)+O(O(A*k)+O(h*f));L[e+272>>2]=O(z*l)+O(O(K*k)+O(U*f));L[e+320>>2]=L[e+48>>2];L[e+324>>2]=L[e+52>>2];f=L[e+56>>2];H[e+332>>2]=1065353216;L[e+328>>2]=f;Ca=UT(b,e+272|0),Da=-65281,H[Ca+4>>2]=Da;if(!r){break c}i=0;w=d+N(r,20)|0;d=c&32767;d=(((w+N(a,12)|0)+(d<<1)|0)+N(a,3)|0)+(c<<16>>16>=0?0:d<<2)|0;while(1){a=1;c=w+N(I[d|0],12)|0;h=L[c>>2];q=L[e+272>>2];m=L[c+4>>2];o=L[e+288>>2];n=L[c+8>>2];t=L[e+304>>2];s=L[e+320>>2];f=O(O(O(O(h*q)+O(m*o))+O(n*t))+s);l=f;x=L[e+276>>2];y=L[e+292>>2];B=L[e+308>>2];A=L[e+324>>2];g=O(O(O(O(h*x)+O(m*y))+O(n*B))+A);k=g;z=L[e+280>>2];R=L[e+296>>2];_=n;n=L[e+312>>2];Q=L[e+328>>2];h=O(O(O(O(h*z)+O(m*R))+O(_*n))+Q);m=h;u=I[(H[p+56>>2]+N(i,20)|0)+18|0];if(u>>>0>1){while(1){c=w+N(I[a+d|0],12)|0;l=L[c>>2];m=O(z*l);z=L[c+4>>2];k=n;n=L[c+8>>2];m=O(Q+O(O(m+O(R*z))+O(k*n)));k=O(A+O(O(O(x*l)+O(y*z))+O(B*n)));l=O(s+O(O(O(q*l)+O(o*z))+O(t*n)));c=H[b+100>>2];j=H[c+20>>2];v=j+1|0;C=H[c+24>>2]&2147483647;e:{if(v>>>0<=C>>>0){break e}$=C;C=C?C<<1:2;C=v>>>0>>0?C:v;if($>>>0>=C>>>0){break e}Cj(c+16|0,C);j=H[c+20>>2]}H[c+20>>2]=v;c=H[c+16>>2]+(j<<5)|0;L[c+16>>2]=l;L[c+8>>2]=h;L[c+4>>2]=g;L[c>>2]=f;L[c+24>>2]=m;L[c+20>>2]=k;j=H[b+4>>2];H[c+12>>2]=j;H[c+28>>2]=j;a=a+1|0;if((u|0)==(a|0)){a=w+N(I[d|0],12)|0;f=L[a>>2];q=L[a+4>>2];o=L[a+8>>2];h=O(O(O(O(f*L[e+280>>2])+O(q*L[e+296>>2]))+O(o*L[e+312>>2]))+L[e+328>>2]);g=O(O(O(O(f*L[e+276>>2])+O(q*L[e+292>>2]))+O(o*L[e+308>>2]))+L[e+324>>2]);f=O(O(O(O(f*L[e+272>>2])+O(q*L[e+288>>2]))+O(o*L[e+304>>2]))+L[e+320>>2])}else{Q=L[e+328>>2];A=L[e+324>>2];s=L[e+320>>2];n=L[e+312>>2];B=L[e+308>>2];t=L[e+304>>2];R=L[e+296>>2];y=L[e+292>>2];o=L[e+288>>2];z=L[e+280>>2];x=L[e+276>>2];q=L[e+272>>2];h=m;g=k;f=l;continue}break}}a=H[b+100>>2];j=H[a+20>>2];c=j+1|0;v=H[a+24>>2]&2147483647;f:{if(c>>>0<=v>>>0){break f}C=v;v=v?v<<1:2;v=c>>>0>>0?v:c;if(C>>>0>=v>>>0){break f}Cj(a+16|0,v);j=H[a+20>>2]}H[a+20>>2]=c;a=H[a+16>>2]+(j<<5)|0;L[a+16>>2]=f;L[a+8>>2]=m;L[a+4>>2]=k;L[a>>2]=l;L[a+24>>2]=h;L[a+20>>2]=g;c=H[b+4>>2];H[a+12>>2]=c;H[a+28>>2]=c;d=d+u|0;i=i+1|0;if((r|0)!=(i|0)){continue}break};break c;case 6:i=H[j+4>>2];H[e+272>>2]=1065353216;H[Z+8>>2]=0;H[Z+12>>2]=0;H[Z>>2]=0;H[Z+4>>2]=0;H[e+292>>2]=1065353216;H[e+304>>2]=0;H[e+308>>2]=0;H[e+296>>2]=0;H[e+300>>2]=0;H[e+312>>2]=1065353216;H[e+324>>2]=0;H[e+328>>2]=0;H[e+316>>2]=0;H[e+320>>2]=0;H[e+332>>2]=1065353216;a=H[i+44>>2];c=H[i+40>>2];Ca=UT(b,e+272|0),Da=-65281,H[Ca+4>>2]=Da;a=N(a,c);C=a<<1;if(!ma){f=L[P>>2];g=L[P+12>>2];h=L[P+4>>2];l=L[P+16>>2];k=L[P+8>>2];m=L[P+20>>2];H[e+232>>2]=0;H[e+236>>2]=1065353216;H[e+224>>2]=0;H[e+228>>2]=0;L[e+248>>2]=O(m+k)*O(.5);L[e+244>>2]=O(l+h)*O(.5);L[e+240>>2]=O(g+f)*O(.5);L[e+108>>2]=O(m-k)*O(.5);L[e+104>>2]=O(l-h)*O(.5);L[e+100>>2]=O(g-f)*O(.5);H[e+96>>2]=3;a=a<<3;if(a){c=H[33808]+12|0;d=Ra[H[H[c>>2]+8>>2]](c,a,20591,7202,680)|0}else{d=0}F[e+136|0]=0;p=l_(e+96|0,e+224|0,j,e+32|0,d,C,e+136|0);a=H[b+100>>2];c=H[a+20>>2];r=c+N(p,3)|0;i=H[a+24>>2]&2147483647;g:{if(r>>>0<=i>>>0){break g}v=i;i=i?i<<1:2;i=i>>>0>r>>>0?i:r;if(v>>>0>=i>>>0){break g}Cj(a+16|0,i);c=H[a+20>>2]}H[a+20>>2]=r;h:{if(p){c=H[a+16>>2]+(c<<5)|0;a=0;while(1){j_(j,e+32|0,H[d+(a<<2)>>2],e+160|0);f=L[e+168>>2];r=H[e+172>>2];i=H[e+176>>2];g=L[e+180>>2];w=H[e+164>>2];v=H[e+160>>2];H[c+12>>2]=-65281;H[c>>2]=v;H[c+4>>2]=w;H[c+28>>2]=-65281;L[c+24>>2]=g;H[c+16>>2]=r;H[c+20>>2]=i;L[c+8>>2]=f;r=H[e+172>>2];i=H[e+176>>2];f=L[e+192>>2];g=L[e+188>>2];h=L[e+184>>2];L[c+40>>2]=L[e+180>>2];H[c+44>>2]=-65281;L[c+48>>2]=h;L[c+52>>2]=g;L[c+56>>2]=f;H[c+60>>2]=-65281;H[c+32>>2]=r;H[c+36>>2]=i;l=L[e+168>>2];r=H[e+160>>2];i=H[e+164>>2];L[c+68>>2]=g;L[c+72>>2]=f;H[c+76>>2]=-65281;H[c+80>>2]=r;H[c+84>>2]=i;H[c+92>>2]=-65281;L[c+88>>2]=l;L[c+64>>2]=h;c=c+96|0;a=a+1|0;if((p|0)!=(a|0)){continue}break}break h}if(!d){break c}}a=H[33808]+12|0;Ra[H[H[a>>2]+12>>2]](a,d);break c}c=N(a,12);if(c){d=H[33808]+12|0;r=Ra[H[H[d>>2]+8>>2]](d,c,20591,7202,705)|0}else{r=0}i:{if(a){f=L[e+44>>2];g=O(O(f*f)+O(-.5));h=L[e+36>>2];t=O(-h);l=L[e+32>>2];s=O(-l);k=L[e+40>>2];x=O(-k);y=L[j+16>>2];B=L[j+8>>2];A=L[j+12>>2];p=H[i+60>>2];d=H[i+44>>2];c=0;while(1){z=L[e+48>>2];R=L[e+52>>2];j=r+N(c,12)|0;w=(c>>>0)/(d>>>0)|0;m=O(y*O(c-N(w,d)>>>0));m=O(m+m);q=O(A*O(w>>>0));q=O(q+q);o=O(B*O(G[p+(c<<2)>>1]));o=O(o+o);n=O(O(k*m)+O(O(l*q)+O(h*o)));L[j+8>>2]=L[e+56>>2]+O(O(k*n)+O(O(m*g)+O(f*O(O(l*o)+O(q*t)))));L[j+4>>2]=R+O(O(h*n)+O(O(o*g)+O(f*O(O(k*q)+O(m*s)))));L[j>>2]=z+O(O(l*n)+O(O(q*g)+O(f*O(O(h*m)+O(o*x)))));c=c+1|0;if((a|0)!=(c|0)){continue}break}c=0;if(!C){break i}while(1){a=c>>>1|0;w=H[i+44>>2];d=(a>>>0)/(w>>>0)|0;j:{if(d>>>0>=H[i+40>>2]-1>>>0|w-1>>>0<=a-N(d,w)>>>0){break j}d=H[i+60>>2]+(a<<2)|0;p=c&1;if((I[(p?d+3|0:d+2|0)|0]&127)==127){break j}k:{if(F[d+2|0]<0){if(!p){d=a;p=w+a|0;a=p+1|0;break k}p=a+1|0;d=w+p|0;break k}j=a+1|0;if(!p){d=j;p=a;a=a+w|0;break k}d=a+w|0;p=j+w|0;a=j}w=H[b+100>>2];j=H[w+20>>2];v=j+3|0;u=H[w+24>>2]&2147483647;l:{if(v>>>0<=u>>>0){break l}$=u;u=u?u<<1:2;u=v>>>0>>0?u:v;if($>>>0>=u>>>0){break l}Cj(w+16|0,u);j=H[w+20>>2]}H[w+20>>2]=v;p=r+N(p,12)|0;f=L[p>>2];v=r+N(d,12)|0;g=L[v+8>>2];u=H[v>>2];ka=H[v+4>>2];d=H[w+16>>2]+(j<<5)|0;j=H[p+8>>2];H[d+4>>2]=H[p+4>>2];H[d+8>>2]=j;H[d+12>>2]=-65281;H[d+16>>2]=u;H[d+20>>2]=ka;H[d+28>>2]=-65281;L[d+24>>2]=g;L[d>>2]=f;j=H[v+4>>2];w=H[v+8>>2];a=r+N(a,12)|0;u=H[a+4>>2];ka=H[a>>2];f=L[a+8>>2];L[d+32>>2]=L[v>>2];L[d+56>>2]=f;H[d+60>>2]=-65281;H[d+48>>2]=ka;H[d+52>>2]=u;H[d+44>>2]=-65281;H[d+36>>2]=j;H[d+40>>2]=w;j=H[a+4>>2];w=H[a+8>>2];v=H[p+4>>2];u=H[p>>2];f=L[p+8>>2];L[d+64>>2]=L[a>>2];L[d+88>>2]=f;H[d+92>>2]=-65281;H[d+80>>2]=u;H[d+84>>2]=v;H[d+76>>2]=-65281;H[d+68>>2]=j;H[d+72>>2]=w}c=c+1|0;if((C|0)!=(c|0)){continue}break}}if(!r){break c}}a=H[33808]+12|0;Ra[H[H[a>>2]+12>>2]](a,r);break c;case 5:break d;default:break c}}p=H[j+36>>2];H[e+272>>2]=1065353216;H[Z+8>>2]=0;H[Z+12>>2]=0;H[Z>>2]=0;H[Z+4>>2]=0;H[e+292>>2]=1065353216;H[e+304>>2]=0;H[e+308>>2]=0;H[e+296>>2]=0;H[e+300>>2]=0;H[e+312>>2]=1065353216;H[e+324>>2]=0;H[e+328>>2]=0;H[e+316>>2]=0;H[e+320>>2]=0;H[e+332>>2]=1065353216;g=L[j+16>>2];h=O(g+g);f=L[j+24>>2];V=O(h*f);l=L[j+20>>2];n=O(l+l);B=L[j+28>>2];D=O(n*B);k=O(V+D);A=L[j+4>>2];m=O(k*A);E=O(n*f);X=O(h*B);q=O(E-X);z=L[j+8>>2];o=O(q*z);S=O(O(1)-O(g*h));Y=O(l*n);n=O(S-Y);R=L[j+12>>2];t=O(n*R);Q=L[e+32>>2];s=O(Q+Q);g=L[e+40>>2];ca=O(s*g);x=L[e+36>>2];T=O(x+x);K=L[e+44>>2];da=O(T*K);y=O(ca-da);ea=O(O(1)-O(Q*s));fa=O(x*T);Q=O(ea-fa);U=O(O(O(k*m)+O(q*o))+O(n*t));M=O(f+f);ga=O(f*M);f=O(O(O(1)-Y)-ga);Y=O(A*f);ha=O(h*l);M=O(M*B);h=O(ha+M);B=O(h*z);l=O(V-D);V=O(l*R);D=O(O(O(k*Y)+O(q*B))+O(n*V));ia=O(T*g);ja=O(s*K);T=O(ia+ja);_=k;k=O(ha-M);A=O(A*k);M=q;q=O(S-ga);z=O(q*z);S=n;n=O(E+X);R=O(n*R);E=O(O(O(_*A)+O(M*z))+O(S*R));L[e+256>>2]=O(Q*U)+O(O(y*D)+O(T*E));X=O(ia-ja);S=O(s*x);x=O(g+g);M=O(K*x);s=O(S+M);K=O(g*x);g=O(ea-K);L[e+252>>2]=O(X*U)+O(O(s*D)+O(g*E));x=O(ca+da);_=O(x*U);K=O(O(O(1)-fa)-K);U=O(S-M);L[e+248>>2]=_+O(O(K*D)+O(U*E));D=O(O(O(k*m)+O(q*o))+O(n*t));E=O(O(O(k*Y)+O(q*B))+O(n*V));k=O(O(O(k*A)+O(q*z))+O(n*R));L[e+244>>2]=O(Q*D)+O(O(y*E)+O(T*k));L[e+240>>2]=O(X*D)+O(O(s*E)+O(g*k));L[e+236>>2]=O(x*D)+O(O(K*E)+O(U*k));k=O(O(O(f*m)+O(h*o))+O(l*t));m=O(O(O(f*Y)+O(h*B))+O(l*V));f=O(O(O(f*A)+O(h*z))+O(l*R));L[e+232>>2]=O(Q*k)+O(O(y*m)+O(T*f));L[e+228>>2]=O(X*k)+O(O(s*m)+O(g*f));L[e+224>>2]=O(x*k)+O(O(K*m)+O(U*f));L[e+260>>2]=L[e+48>>2];L[e+264>>2]=L[e+52>>2];L[e+268>>2]=L[e+56>>2];v=I[p+64|0]&2;w=H[p+28>>2];C=H[p+24>>2];d=H[p+20>>2];m:{if(!ma){c=j+4|0;f=L[P>>2];g=L[P+12>>2];h=L[P+4>>2];l=L[P+16>>2];k=L[P+8>>2];m=L[P+20>>2];H[e+192>>2]=1065353216;H[e+184>>2]=0;H[e+188>>2]=0;H[e+176>>2]=1065353216;H[e+180>>2]=0;H[e+168>>2]=0;H[e+172>>2]=0;H[e+160>>2]=1065353216;H[e+164>>2]=0;L[e+216>>2]=O(m-k)*O(.5);L[e+212>>2]=O(l-h)*O(.5);L[e+208>>2]=O(g-f)*O(.5);L[e+204>>2]=O(m+k)*O(.5);L[e+200>>2]=O(l+h)*O(.5);L[e+196>>2]=O(g+f)*O(.5);a=d<<2;if(a){j=H[33808]+12|0;a=Ra[H[H[j>>2]+8>>2]](j,a,20591,7202,602)|0}else{a=0}H[e+144>>2]=d;H[e+136>>2]=a;H[e+140>>2]=0;F[e+156|0]=0;H[e+148>>2]=0;H[e+152>>2]=0;Ra[H[(J[p+4>>1]<<2)+111812>>2]](e+160|0,p,e+32|0,c,e+136|0)|0;d=H[e+140>>2];if(ua==O(0)){break m}Ca=UT(b,e+272|0),Da=-65281,H[Ca+4>>2]=Da;c=H[b+100>>2];r=H[c+20>>2];j=r+N(d,3)|0;i=H[c+24>>2]&2147483647;n:{if(j>>>0<=i>>>0){break n}u=i;i=i?i<<1:2;i=j>>>0>>0?i:j;if(u>>>0>=i>>>0){break n}Cj(c+16|0,i);r=H[c+20>>2]}H[c+20>>2]=j;if(!d){break m}c=H[c+16>>2]+(r<<5)|0;j=0;while(1){st(H[(j<<2)+a>>2],e+96|0,C,w,e+224|0,(v|0)!=0);f=L[e+96>>2];g=L[e+100>>2];h=L[e+104>>2];l=L[e+108>>2];k=L[e+112>>2];m=L[e+116>>2];H[c+28>>2]=-65281;L[c+24>>2]=m;L[c+20>>2]=k;L[c+16>>2]=l;H[c+12>>2]=-65281;L[c+8>>2]=h;L[c+4>>2]=g;L[c>>2]=f;q=L[e+120>>2];o=L[e+124>>2];n=L[e+128>>2];H[c+92>>2]=-65281;L[c+88>>2]=h;L[c+84>>2]=g;L[c+80>>2]=f;H[c+76>>2]=-65281;L[c+72>>2]=n;L[c+68>>2]=o;L[c+64>>2]=q;H[c+60>>2]=-65281;L[c+56>>2]=n;L[c+52>>2]=o;L[c+48>>2]=q;H[c+44>>2]=-65281;L[c+40>>2]=m;L[c+36>>2]=k;L[c+32>>2]=l;c=c+96|0;j=j+1|0;if((j|0)!=(d|0)){continue}break}break m}if(ua!=O(0)){j=H[p+16>>2];Ca=UT(b,e+272|0),Da=-65281,H[Ca+4>>2]=Da;c=0;a=0;r=N(j,12);if(r){a=H[33808]+12|0;a=Ra[H[H[a>>2]+8>>2]](a,r,20591,7202,632)|0}if(j){while(1){l=L[e+260>>2];k=L[e+248>>2];m=L[e+224>>2];q=L[e+236>>2];o=L[e+264>>2];n=L[e+252>>2];t=L[e+228>>2];s=L[e+240>>2];i=N(c,12);r=i+a|0;i=i+C|0;f=L[i>>2];g=L[i+4>>2];h=L[i+8>>2];L[r+8>>2]=O(O(O(f*L[e+232>>2])+O(g*L[e+244>>2]))+O(h*L[e+256>>2]))+L[e+268>>2];L[r+4>>2]=o+O(O(O(f*t)+O(g*s))+O(h*n));L[r>>2]=l+O(O(O(f*m)+O(g*q))+O(h*k));c=c+1|0;if((j|0)!=(c|0)){continue}break}}c=H[b+100>>2];r=H[c+20>>2];j=r+N(d,3)|0;i=H[c+24>>2]&2147483647;o:{if(j>>>0<=i>>>0){break o}u=i;i=i?i<<1:2;i=j>>>0>>0?i:j;if(u>>>0>=i>>>0){break o}Cj(c+16|0,i);r=H[c+20>>2]}H[c+20>>2]=j;p:{if(d){c=H[c+16>>2]+(r<<5)|0;j=0;while(1){r=N(j,3);q:{if(!v){u=w+(r<<2)|0;r=H[u>>2];i=H[u+8>>2];u=H[u+4>>2];break q}u=w+(r<<1)|0;r=J[u>>1];i=J[u+4>>1];u=J[u+2>>1]}u=N(u,12)+a|0;f=L[u>>2];g=L[u+4>>2];h=L[u+8>>2];i=N(i,12)+a|0;l=L[i>>2];k=L[i+4>>2];m=L[i+8>>2];r=N(r,12)+a|0;q=L[r>>2];o=L[r+4>>2];n=L[r+8>>2];H[c+92>>2]=-65281;L[c+88>>2]=n;L[c+84>>2]=o;L[c+80>>2]=q;H[c+76>>2]=-65281;L[c+72>>2]=m;L[c+68>>2]=k;L[c+64>>2]=l;H[c+60>>2]=-65281;L[c+56>>2]=m;L[c+52>>2]=k;L[c+48>>2]=l;H[c+44>>2]=-65281;L[c+40>>2]=h;L[c+36>>2]=g;L[c+32>>2]=f;H[c+28>>2]=-65281;L[c+24>>2]=h;L[c+20>>2]=g;L[c+16>>2]=f;H[c+12>>2]=-65281;L[c+8>>2]=n;L[c+4>>2]=o;L[c>>2]=q;c=c+96|0;j=j+1|0;if((j|0)!=(d|0)){continue}break}break p}if(a){break p}a=0;d=0;break m}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,a)}a=0}r:{if(na==O(0)){break r}Ca=UT(b,e+272|0),Da=-2004353024,H[Ca+4>>2]=Da;c=0;if(!d){break r}while(1){st(a?H[(c<<2)+a>>2]:c,e+160|0,C,w,e+224|0,(v|0)!=0);g=O(0);f=L[e+168>>2];t=L[e+180>>2];s=L[e+192>>2];l=O(O(O(f+t)+s)*O(.3333333432674408));k=L[e+164>>2];x=L[e+176>>2];y=L[e+188>>2];m=O(O(O(k+x)+y)*O(.3333333432674408));o=L[e+160>>2];B=L[e+172>>2];A=L[e+184>>2];n=O(O(O(o+B)+A)*O(.3333333432674408));h=O(0);q=O(0);B=O(o-B);y=O(k-y);o=O(o-A);x=O(k-x);k=O(O(B*y)-O(o*x));s=O(f-s);t=O(f-t);f=O(O(x*s)-O(y*t));o=O(O(t*o)-O(s*B));t=O(O(k*k)+O(O(f*f)+O(o*o)));if(t>O(0)){g=O(O(1)/O(W(t)));q=O(k*g);h=O(o*g);g=O(f*g)}L[e+104>>2]=l;f=O(na*q);L[e+116>>2]=l+f;L[e+100>>2]=m;h=O(na*h);L[e+112>>2]=m+h;L[e+96>>2]=n;g=O(na*g);L[e+108>>2]=n+g;L[e+120>>2]=O(W(O(O(f*f)+O(O(g*g)+O(h*h)))))*O(.15000000596046448);YT(b,e+96|0);c=c+1|0;if((d|0)!=(c|0)){continue}break}}s:{if(xa==O(0)){break s}v=H[p+56>>2];if(!v){break s}C=H[p+28>>2];u=H[p+24>>2];H[b+4>>2]=-256;if(!d){break s}ka=I[p+64|0]&2;j=0;while(1){c=j;c=a?H[(c<<2)+a>>2]:c;st(c,e+160|0,u,C,e+224|0,(ka|0)!=0);w=I[c+v|0];if(w&8){c=H[b+100>>2];p=H[c+20>>2];r=p+1|0;i=H[c+24>>2]&2147483647;t:{if(r>>>0<=i>>>0){break t}$=i;i=i?i<<1:2;i=i>>>0>r>>>0?i:r;if($>>>0>=i>>>0){break t}Cj(c+16|0,i);p=H[c+20>>2]}H[c+20>>2]=r;c=H[c+16>>2]+(p<<5)|0;L[c>>2]=L[e+160>>2];L[c+4>>2]=L[e+164>>2];L[c+8>>2]=L[e+168>>2];L[c+16>>2]=L[e+172>>2];L[c+20>>2]=L[e+176>>2];L[c+24>>2]=L[e+180>>2];p=H[b+4>>2];H[c+12>>2]=p;H[c+28>>2]=p}if(w&16){c=H[b+100>>2];p=H[c+20>>2];r=p+1|0;i=H[c+24>>2]&2147483647;u:{if(r>>>0<=i>>>0){break u}$=i;i=i?i<<1:2;i=i>>>0>r>>>0?i:r;if($>>>0>=i>>>0){break u}Cj(c+16|0,i);p=H[c+20>>2]}H[c+20>>2]=r;c=H[c+16>>2]+(p<<5)|0;L[c>>2]=L[e+172>>2];L[c+4>>2]=L[e+176>>2];L[c+8>>2]=L[e+180>>2];L[c+16>>2]=L[e+184>>2];L[c+20>>2]=L[e+188>>2];L[c+24>>2]=L[e+192>>2];p=H[b+4>>2];H[c+12>>2]=p;H[c+28>>2]=p}if(w&32){p=H[b+100>>2];c=H[p+20>>2];r=c+1|0;i=H[p+24>>2]&2147483647;v:{if(r>>>0<=i>>>0){break v}$=i;i=i?i<<1:2;i=i>>>0>r>>>0?i:r;if($>>>0>=i>>>0){break v}Cj(p+16|0,i);c=H[p+20>>2]}H[p+20>>2]=r;c=H[p+16>>2]+(c<<5)|0;L[c>>2]=L[e+160>>2];L[c+4>>2]=L[e+164>>2];L[c+8>>2]=L[e+168>>2];L[c+16>>2]=L[e+184>>2];L[c+20>>2]=L[e+188>>2];L[c+24>>2]=L[e+192>>2];p=H[b+4>>2];H[c+12>>2]=p;H[c+28>>2]=p}j=j+1|0;if((j|0)!=(d|0)){continue}break}}if(!a){break c}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,a)}if(ta){f=L[e+28>>2];qa=f>2];ra=f>2];aa=f>2];pa=f>pa?pa:f;f=L[e+12>>2];sa=f>sa?sa:f;f=L[e+8>>2];ba=f>ba?ba:f}va=va+1|0;if((va|0)!=(la|0)){continue}break}if(!ta|ba>aa){break a}H[b+4>>2]=-65281;H[e+284>>2]=0;H[e+288>>2]=0;H[e+296>>2]=0;H[e+300>>2]=0;H[e+292>>2]=1065353216;H[e+304>>2]=0;H[e+308>>2]=0;H[e+316>>2]=0;H[e+320>>2]=0;H[e+312>>2]=1065353216;H[e+324>>2]=0;H[e+328>>2]=0;H[e+332>>2]=1065353216;H[e+276>>2]=0;H[e+280>>2]=0;H[e+272>>2]=1065353216;a=UT(b,e+272|0);L[e+180>>2]=qa;L[e+176>>2]=ra;F[e+184|0]=1;L[e+172>>2]=aa;L[e+168>>2]=pa;L[e+164>>2]=sa;L[e+160>>2]=ba;XT(a,e+160|0)}Oa=e+336|0}function cx(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,k=0,l=0,m=0,n=0,o=O(0),p=0,q=O(0),r=O(0),s=O(0),t=0,u=O(0),v=0,w=0,x=0,y=O(0),z=O(0),A=O(0),B=O(0),C=0,D=0,E=O(0),M=O(0),Q=O(0),R=0,S=O(0),T=O(0),U=0,V=0,X=O(0),Y=O(0),Z=O(0),_=O(0),$=O(0),aa=O(0),ba=0,ca=0,da=0,ea=0,fa=0,ga=O(0),ha=O(0),ia=O(0),ja=0,ka=0,la=O(0),ma=O(0),na=0,oa=0,pa=0,qa=0,ra=O(0),sa=O(0),ta=O(0),ua=O(0),va=O(0),wa=O(0),xa=O(0),ya=O(0),za=O(0),Aa=O(0),Ba=0,Ca=O(0),Da=0,Ea=0,Fa=0,Ga=0,Ha=0,Ia=0,Ja=0,Ka=O(0),La=O(0),Ma=O(0),Na=O(0),Pa=O(0),Qa=O(0),Sa=O(0),Ta=0,Ua=0,Va=0;w=Oa-560|0;Oa=w;ea=H[a+468>>2];Aa=L[a+464>>2];n=H[a+448>>2];i=w;H[i+488>>2]=0;H[i+492>>2]=0;H[i+496>>2]=0;H[i+500>>2]=0;H[i+504>>2]=0;H[i+512>>2]=0;H[i+516>>2]=0;H[i+520>>2]=0;H[i+524>>2]=0;H[i+528>>2]=0;H[i+536>>2]=0;H[i+540>>2]=0;H[i+532>>2]=112932;H[i+544>>2]=0;H[i+548>>2]=0;H[i+552>>2]=0;H[i+556>>2]=0;H[i+484>>2]=112932;H[i+480>>2]=112888;H[i+508>>2]=112932;V=1;da=H[d+52>>2];Ba=n<<5;qa=Gw(da,Ba,1);D=Gw(da,Ba,1);ba=Gw(da,c<<3,1);Ha=H[d+40>>2];Da=H[d+44>>2];H[i+472>>2]=0;H[i+476>>2]=0;H[i+464>>2]=0;H[i+468>>2]=0;H[i+456>>2]=0;H[i+460>>2]=0;H[i+448>>2]=0;H[i+452>>2]=0;oa=i+336|0;S6(oa,0,112);H[i+436>>2]=0;H[i+428>>2]=1065353216;H[i+420>>2]=0;H[i+404>>2]=-8388609;H[i+412>>2]=2139095039;H[i+332>>2]=D;H[i+328>>2]=qa;F[i+296|0]=0;fa=Gw(da,c<<5,1);Ia=Gw(da,(H[a+448>>2]<<5)-1|0,1);H[i+240>>2]=a;H[i+236>>2]=0;Ja=i+480|0;l=H[i+240>>2];L[l+464>>2]=Aa;n=Oa-48|0;Oa=n;H[l+660>>2]=0;S6(H[l+408>>2],0,H[l+412>>2]<<2);Ea=H[l+448>>2]<<5;S6(H[l+312>>2],0,Ea);S6(H[l+168>>2],0,H[l+468>>2]<<2);F[l+489|0]=0;k=l+112|0;tw(l,k,0);i=n;H[i+36>>2]=0;H[i+40>>2]=0;H[i+28>>2]=0;H[i+32>>2]=0;H[i+20>>2]=0;H[i+24>>2]=0;H[i>>2]=H[l+228>>2];H[i+4>>2]=H[l+240>>2];H[i+8>>2]=H[l+252>>2];H[i+12>>2]=H[l+264>>2];H[i+28>>2]=H[l+144>>2];H[i+24>>2]=H[l+156>>2];H[i+36>>2]=H[l+180>>2];H[i+32>>2]=H[l+192>>2];H[i+16>>2]=H[l+480>>2];xw(k);zw(k,i);uw(k);vw(k,g,i);if(K[k+336>>2]>=2){R6(H[l+276>>2],H[l+264>>2],H[l+448>>2]<<5)}Hw(l,k);i=Oa-176|0;Oa=i;x=H[k+224>>2];C=H[k+336>>2];U=H[k+332>>2];a:{if(!(F[H[k+364>>2]]&1)){p=i+160|0;while(1){H[i+168>>2]=0;H[i+172>>2]=0;H[p>>2]=0;H[p+4>>2]=0;H[i+152>>2]=0;H[i+156>>2]=0;H[i+144>>2]=0;H[i+148>>2]=0;j=m<<2;H[(m>>>0<3?j+(i+144|0)|0:(j+p|0)-12|0)>>2]=1065353216;E=L[k+472>>2];X=L[k+448>>2];Y=L[k+460>>2];T=L[k+476>>2];Z=L[k+452>>2];ga=L[k+464>>2];ha=L[k+480>>2];ia=L[k+456>>2];la=L[k+468>>2];M=L[k+420>>2];y=L[k+412>>2];B=L[k+416>>2];ma=L[k+508>>2];ra=L[k+484>>2];sa=L[k+496>>2];Q=L[k+432>>2];S=L[k+424>>2];_=L[k+428>>2];ta=L[k+512>>2];ua=L[k+488>>2];va=L[k+500>>2];s=L[i+168>>2];$=L[k+444>>2];o=L[p>>2];aa=L[k+436>>2];A=L[k+440>>2];wa=L[k+516>>2];xa=L[k+492>>2];ya=L[k+504>>2];u=L[i+164>>2];q=L[i+152>>2];r=L[i+144>>2];z=L[i+148>>2];j=x+(m<<5)|0;H[j+28>>2]=0;H[j+12>>2]=0;L[j+24>>2]=O(O($*s)+O(O(aa*o)+O(A*u)))+O(O(O(r*xa)+O(z*ya))+O(q*wa));L[j+20>>2]=O(O(Q*s)+O(O(S*o)+O(_*u)))+O(O(O(r*ua)+O(z*va))+O(q*ta));L[j+16>>2]=O(O(M*s)+O(O(y*o)+O(B*u)))+O(O(O(r*ra)+O(z*sa))+O(q*ma));L[j+8>>2]=O(O(O(r*M)+O(z*Q))+O(q*$))+O(O(O(o*ia)+O(u*la))+O(s*ha));L[j+4>>2]=O(O(O(r*B)+O(z*_))+O(q*A))+O(O(O(o*Z)+O(u*ga))+O(s*T));L[j>>2]=O(O(O(r*y)+O(z*S))+O(q*aa))+O(O(O(o*X)+O(u*Y))+O(s*E));m=m+1|0;if((m|0)!=6){continue}break}break a}S6(x,0,192)}m=1;if(C>>>0>1){v=i+160|0;while(1){j=H[k+340>>2]+N(m,160)|0;L[i+128>>2]=L[j+120>>2];L[i+132>>2]=L[j+124>>2];L[i+136>>2]=L[j+128>>2];na=U+(m<<5)|0;p=0;while(1){H[i+168>>2]=0;H[i+172>>2]=0;H[v>>2]=0;H[v+4>>2]=0;H[i+152>>2]=0;H[i+156>>2]=0;H[i+144>>2]=0;H[i+148>>2]=0;j=p<<2;H[(p>>>0<3?j+(i+144|0)|0:(j+v|0)-12|0)>>2]=1065353216;H[i+124>>2]=0;H[i+108>>2]=0;L[i+120>>2]=-L[i+168>>2];L[i+116>>2]=-L[i+164>>2];L[i+112>>2]=-L[v>>2];L[i+104>>2]=-L[i+152>>2];L[i+100>>2]=-L[i+148>>2];L[i+96>>2]=-L[i+144>>2];ja=i+128|0;R=N(m,76);ka=i+96|0;gw(i- -64|0,H[k+284>>2]+N(m,96)|0,ja,R+H[k+272>>2]|0,ka);j=x+N(H[na+24>>2],192)|0;M=L[j+164>>2];y=L[j+132>>2];B=L[j+100>>2];Q=L[j+68>>2];S=L[j+36>>2];_=L[j+4>>2];$=L[j+168>>2];aa=L[j+136>>2];A=L[j+104>>2];E=L[j+72>>2];X=L[j+40>>2];Y=L[j+8>>2];T=L[j+176>>2];Z=L[j+144>>2];ga=L[j+112>>2];ha=L[j+80>>2];ia=L[j+48>>2];la=L[j+16>>2];ma=L[j+180>>2];ra=L[j+148>>2];sa=L[j+116>>2];ta=L[j+84>>2];ua=L[j+20>>2];va=L[j+52>>2];wa=L[j+184>>2];xa=L[j+152>>2];ya=L[j+120>>2];Ca=L[j+88>>2];za=L[j+24>>2];Ka=L[j+56>>2];La=L[j+160>>2];Ma=L[j+128>>2];Na=L[j+96>>2];Pa=L[j+64>>2];Qa=L[j>>2];Sa=L[j+32>>2];s=L[i+88>>2];o=L[i+84>>2];u=L[i+80>>2];q=L[i+72>>2];r=L[i+64>>2];z=L[i+68>>2];H[i+60>>2]=0;H[i+44>>2]=0;L[i+32>>2]=-O(O(O(O(O(O(Qa*r)+O(Sa*z))+O(Pa*q))+O(Na*u))+O(Ma*o))+O(La*s));L[i+56>>2]=-O(O(O(O(O(O(za*r)+O(Ka*z))+O(Ca*q))+O(ya*u))+O(xa*o))+O(wa*s));L[i+52>>2]=-O(O(O(O(O(O(ua*r)+O(va*z))+O(ta*q))+O(sa*u))+O(ra*o))+O(ma*s));L[i+48>>2]=-O(O(O(O(O(O(la*r)+O(ia*z))+O(ha*q))+O(ga*u))+O(Z*o))+O(T*s));L[i+40>>2]=-O(O(O(O(O(O(Y*r)+O(X*z))+O(E*q))+O(A*u))+O(aa*o))+O($*s));L[i+36>>2]=-O(O(O(O(O(O(_*r)+O(S*z))+O(Q*q))+O(B*u))+O(y*o))+O(M*s));cw(i,ja,H[k+236>>2]+N(m,112)|0,H[k+248>>2]+N(m,36)|0,R+H[k+272>>2]|0,ka,i+32|0);j=(x+N(m,192)|0)+(p<<5)|0;L[j>>2]=L[i>>2];L[j+4>>2]=L[i+4>>2];s=L[i+8>>2];H[j+12>>2]=0;L[j+8>>2]=s;L[j+16>>2]=L[i+16>>2];L[j+20>>2]=L[i+20>>2];s=L[i+24>>2];H[j+28>>2]=0;L[j+24>>2]=s;p=p+1|0;if((p|0)!=6){continue}break}m=m+1|0;if((C|0)!=(m|0)){continue}break}}Oa=i+176|0;p=0;i=0;na=H[n+12>>2];ja=H[n>>2];x=S6(qa,0,H[k+336>>2]<<5);U=H[k+336>>2];b:{if(!U){break b}R=H[k+332>>2];s=L[k+352>>2];while(1){C=i<<5;m=H[(C+R|0)+16>>2];o=L[m+124>>2];z=o==O(0)?O(0):O(O(1)/o);j=x+C|0;ga=O(O(1)/L[m+112>>2]);ha=O(O(1)/L[m+120>>2]);ia=O(O(1)/L[m+116>>2]);v=C+ja|0;_=L[v+16>>2];M=L[v+8>>2];y=L[v+4>>2];B=L[v>>2];$=L[v+24>>2];aa=L[v+20>>2];o=L[m+104>>2];r=L[m+108>>2];if(o>O(0)|r>O(0)){p=C+na|0;u=L[p+8>>2];q=L[p+4>>2];o=O(s*o);o=o>2]=O(O(z*O(_*o))-O(o*O(s*L[p>>2])))+L[j>>2];L[j+4>>2]=O(O(z*O(aa*o))-O(o*O(s*q)))+L[j+4>>2];L[j+8>>2]=O(O(z*O($*o))-O(o*O(s*u)))+L[j+8>>2];la=L[p+24>>2];ma=L[p+20>>2];o=L[m+8>>2];A=O(M+M);u=L[m>>2];E=O(B+B);X=O(y+y);q=L[m+4>>2];Y=O(O(o*A)+O(O(u*E)+O(X*q)));r=O(s*r);Q=r>2];S=O(O(r*r)+O(-.5));T=O(ha*O(Q*O(O(o*Y)+O(O(A*S)-O(r*O(O(u*X)-O(E*q)))))));T=O(T+T);Z=O(ga*O(Q*O(O(u*Y)+O(O(E*S)-O(r*O(O(q*A)-O(X*o)))))));Z=O(Z+Z);A=O(ia*O(Q*O(O(q*Y)+O(O(X*S)-O(r*O(O(o*E)-O(A*u)))))));A=O(A+A);E=O(O(o*T)+O(O(u*Z)+O(q*A)));L[j+16>>2]=L[j+16>>2]+O(O(O(u*E)+O(O(Z*S)+O(r*O(O(q*T)-O(A*o)))))-O(Q*O(s*L[p+16>>2])));L[j+20>>2]=L[j+20>>2]+O(O(O(q*E)+O(O(A*S)+O(r*O(O(o*Z)-O(T*u)))))-O(Q*O(s*ma)));L[j+24>>2]=L[j+24>>2]+O(O(O(o*E)+O(O(T*S)+O(r*O(O(u*A)-O(Z*q)))))-O(Q*O(s*la)));p=1}c:{d:{r=O(O(M*M)+O(O(B*B)+O(y*y)));A=L[m+96>>2];v=r>A;X=O(O($*$)+O(O(_*_)+O(aa*aa)));Y=L[m+100>>2];if(v|X>Y){if(v){o=L[m+8>>2];Q=O(M+M);u=L[m>>2];B=O(B+B);y=O(y+y);q=L[m+4>>2];S=O(O(o*Q)+O(O(u*B)+O(y*q)));T=O(O(1)-O(O(W(A))/O(W(r))));r=L[m+12>>2];M=O(O(r*r)+O(-.5));A=O(T*O(ha*O(O(o*S)+O(O(Q*M)-O(r*O(O(u*y)-O(B*q)))))));A=O(A+A);E=O(T*O(ga*O(O(u*S)+O(O(B*M)-O(r*O(O(q*Q)-O(y*o)))))));E=O(E+E);y=O(T*O(ia*O(O(q*S)+O(O(y*M)-O(r*O(O(o*B)-O(Q*u)))))));y=O(y+y);B=O(O(o*A)+O(O(u*E)+O(q*y)));L[j+16>>2]=L[j+16>>2]+O(O(u*B)+O(O(E*M)+O(r*O(O(q*A)-O(y*o)))));L[j+20>>2]=L[j+20>>2]+O(O(q*B)+O(O(y*M)+O(r*O(O(o*E)-O(A*u)))));L[j+24>>2]=L[j+24>>2]+O(O(o*B)+O(O(A*M)+O(r*O(O(u*y)-O(E*q)))));p=1}if(X>Y){break d}}i=i+1|0;if((U|0)!=(i|0)){continue}if(p){break c}break b}o=O(O(1)-O(O(W(Y))/O(W(X))));L[j>>2]=O(O(z*_)*o)+L[j>>2];L[j+4>>2]=O(O(z*aa)*o)+L[j+4>>2];L[j+8>>2]=O(O(z*$)*o)+L[j+8>>2];p=1;i=i+1|0;if((U|0)!=(i|0)){continue}}break}p=Oa-32|0;Oa=p;i=H[l+448>>2]-1|0;if(i){m=H[l+444>>2];while(1){j=i<<5;gw(p,H[l+396>>2]+N(i,96)|0,(H[l+452>>2]+N(i,160)|0)+120|0,H[l+384>>2]+N(i,76)|0,j+x|0);j=x+(H[(j+m|0)+24>>2]<<5)|0;L[j>>2]=L[p>>2]+L[j>>2];L[j+4>>2]=L[p+4>>2]+L[j+4>>2];L[j+8>>2]=L[p+8>>2]+L[j+8>>2];L[j+16>>2]=L[p+16>>2]+L[j+16>>2];L[j+20>>2]=L[p+20>>2]+L[j+20>>2];L[j+24>>2]=L[p+24>>2]+L[j+24>>2];i=i-1|0;if(i){continue}break}}v=Oa-32|0;Oa=v;U=H[l+168>>2];na=H[l+456>>2];ja=H[l+444>>2];j=H[l+228>>2];e:{if(F[H[l+476>>2]]&1){H[D>>2]=0;H[D+4>>2]=0;H[D+24>>2]=0;H[D+16>>2]=0;H[D+20>>2]=0;H[D+8>>2]=0;H[D+12>>2]=0;break e}X=L[l+560>>2];Y=L[l+572>>2];T=L[l+584>>2];Z=L[l+564>>2];ga=L[l+576>>2];ha=L[l+588>>2];ia=L[l+568>>2];la=L[l+580>>2];ma=L[l+592>>2];ra=L[l+620>>2];sa=L[l+608>>2];ta=L[l+596>>2];M=L[l+524>>2];y=L[l+528>>2];B=L[l+532>>2];ua=L[l+624>>2];va=L[l+612>>2];wa=L[l+600>>2];Q=L[l+536>>2];S=L[l+540>>2];_=L[l+544>>2];xa=L[l+628>>2];q=L[l+616>>2];ya=L[l+604>>2];$=L[l+548>>2];aa=L[l+552>>2];r=L[x+20>>2];A=L[l+556>>2];s=L[x+24>>2];o=L[x+8>>2];Ca=L[x+4>>2];u=L[x>>2];z=L[x+16>>2];H[D+12>>2]=0;E=O(-z);za=q;q=O(-Ca);L[D+24>>2]=O(O(O($*E)-O(aa*r))-O(A*s))+O(O(O(za*q)-O(u*ya))-O(o*xa));L[D+20>>2]=O(O(O(Q*E)-O(S*r))-O(_*s))+O(O(O(va*q)-O(u*wa))-O(o*ua));L[D+16>>2]=O(O(O(M*E)-O(y*r))-O(B*s))+O(O(O(sa*q)-O(u*ta))-O(o*ra));r=O(-r);B=O(O(O(O(_*q)-O(u*B))-O(o*A))+O(O(O(la*r)-O(z*ia))-O(s*ma)));L[D+8>>2]=B;y=O(O(O(O(S*q)-O(u*y))-O(o*aa))+O(O(O(ga*r)-O(z*Z))-O(s*ha)));L[D+4>>2]=y;s=O(O(O(O(Q*q)-O(u*M))-O(o*$))+O(O(O(Y*r)-O(z*X))-O(s*T)));L[D>>2]=s;L[j>>2]=s+L[j>>2];L[j+4>>2]=y+L[j+4>>2];L[j+8>>2]=B+L[j+8>>2];L[j+16>>2]=L[D+16>>2]+L[j+16>>2];L[j+20>>2]=L[D+20>>2]+L[j+20>>2];L[j+24>>2]=L[D+24>>2]+L[j+24>>2]}H[D+28>>2]=0;i=1;R=H[l+448>>2];if(R>>>0>1){while(1){C=i<<5;aw(v,(H[l+452>>2]+N(i,160)|0)+120|0,H[l+348>>2]+N(i,112)|0,H[l+360>>2]+N(i,36)|0,H[l+384>>2]+N(i,76)|0,C+x|0,U+(H[(na+N(i,80)|0)+72>>2]<<2)|0,(H[(C+ja|0)+24>>2]<<5)+D|0);m=D+C|0;u=L[v>>2];L[m>>2]=u;q=L[v+4>>2];L[m+4>>2]=q;s=L[v+8>>2];H[m+12>>2]=0;L[m+8>>2]=s;r=L[v+16>>2];L[m+16>>2]=r;z=L[v+20>>2];L[m+20>>2]=z;o=L[v+24>>2];H[m+28>>2]=0;L[m+24>>2]=o;m=j+C|0;L[m>>2]=u+L[m>>2];L[m+4>>2]=q+L[m+4>>2];L[m+8>>2]=s+L[m+8>>2];L[m+16>>2]=r+L[m+16>>2];L[m+20>>2]=z+L[m+20>>2];L[m+24>>2]=o+L[m+24>>2];i=i+1|0;if((R|0)!=(i|0)){continue}break}}Oa=v+32|0;Oa=p+32|0;U=H[k+336>>2];if(U>>>0<2){break b}na=H[k+344>>2];p=H[k+44>>2];x=H[k+56>>2];m=1;while(1){i=na+N(m,80)|0;v=I[i+76|0];f:{if(!v){break f}C=H[i+72>>2];j=0;if((v|0)!=1){ja=v&254;i=0;while(1){R=j+C<<2;ka=R+p|0;R=x+R|0;L[ka>>2]=L[R>>2]+L[ka>>2];H[R>>2]=0;R=C+(j|1)<<2;ka=R+p|0;R=x+R|0;L[ka>>2]=L[R>>2]+L[ka>>2];H[R>>2]=0;j=j+2|0;i=i+2|0;if((ja|0)!=(i|0)){continue}break}}if(!(v&1)){break f}i=j+C<<2;j=i+p|0;i=i+x|0;L[j>>2]=L[i>>2]+L[j>>2];H[i>>2]=0}m=m+1|0;if((U|0)!=(m|0)){continue}break}}ww(k,n);Iw(l+112|0,n);Jw(l,k,n);if(K[l+448>>2]>=2){H[n+12>>2]=H[l+276>>2];Ow(k,n);j=H[n+12>>2];m=H[k+336>>2]-1|0;if(m>>>0>1){while(1){x=m<<5;p=x+j|0;M=L[p+24>>2];y=L[p+20>>2];i=H[k+340>>2]+N(m,160)|0;u=L[i+120>>2];B=L[p+16>>2];q=L[i+124>>2];r=L[i+128>>2];s=L[p+8>>2];o=L[p+4>>2];i=j+(H[(x+H[k+332>>2]|0)+24>>2]<<5)|0;z=L[p>>2];L[i>>2]=z+L[i>>2];L[i+4>>2]=o+L[i+4>>2];L[i+8>>2]=s+L[i+8>>2];L[i+16>>2]=O(B+O(O(q*s)-O(o*r)))+L[i+16>>2];L[i+20>>2]=O(y+O(O(r*z)-O(s*u)))+L[i+20>>2];L[i+24>>2]=O(M+O(O(u*o)-O(z*q)))+L[i+24>>2];m=m-1|0;if(m>>>0>1){continue}break}}H[j>>2]=0;H[j+4>>2]=0;H[j+24>>2]=0;H[j+28>>2]=0;H[j+16>>2]=0;H[j+20>>2]=0;H[j+8>>2]=0;H[j+12>>2]=0}F[l+488|0]=1;S6(H[l+264>>2],0,Ea);F[l+12|0]=0;H[l+4>>2]=0;H[l+8>>2]=0;k=H[l+448>>2];if(k){m=H[l+508>>2];p=H[l+324>>2];x=H[l+496>>2];v=H[l+444>>2];while(1){C=N(ca,28);j=C+x|0;i=H[(v+(ca<<5)|0)+16>>2];L[j>>2]=L[i>>2];L[j+4>>2]=L[i+4>>2];L[j+8>>2]=L[i+8>>2];L[j+12>>2]=L[i+12>>2];L[j+16>>2]=L[i+16>>2];L[j+20>>2]=L[i+20>>2];L[j+24>>2]=L[i+24>>2];j=p+C|0;L[j>>2]=L[i>>2];L[j+4>>2]=L[i+4>>2];L[j+8>>2]=L[i+8>>2];L[j+12>>2]=L[i+12>>2];L[j+16>>2]=L[i+16>>2];L[j+20>>2]=L[i+20>>2];L[j+24>>2]=L[i+24>>2];i=m+(ca<<4)|0;H[i+8>>2]=0;H[i+12>>2]=1065353216;H[i>>2]=0;H[i+4>>2]=0;ca=ca+1|0;if((k|0)!=(ca|0)){continue}break}}Oa=n+48|0;m=H[l+444>>2];x=H[l+448>>2];v=F[H[l+476>>2]]&1;H[w+236>>2]=0;k=l+112|0;H[k+180>>2]=0;s=L[k+352>>2];p=H[k+356>>2];if(p>>>0>(H[k+184>>2]&2147483647)>>>0){i=0;g:{if(!p){break g}n=N(p,176);if(!n){break g}i=H[33808];j=Ra[H[H[i>>2]+20>>2]](i)|0?24876:55639;i=Ra[H[H[i+12>>2]+8>>2]](i+12|0,n,j,13582,553)|0}n=H[k+180>>2];if((n|0)>0){ca=N(n,176)+i|0;j=H[k+176>>2];n=i;while(1){L[n>>2]=L[j>>2];L[n+4>>2]=L[j+4>>2];L[n+8>>2]=L[j+8>>2];L[n+12>>2]=L[j+12>>2];L[n+16>>2]=L[j+16>>2];L[n+20>>2]=L[j+20>>2];L[n+24>>2]=L[j+24>>2];L[n+28>>2]=L[j+28>>2];L[n+32>>2]=L[j+32>>2];L[n+36>>2]=L[j+36>>2];L[n+40>>2]=L[j+40>>2];L[n+44>>2]=L[j+44>>2];L[n+48>>2]=L[j+48>>2];L[n+52>>2]=L[j+52>>2];L[n+56>>2]=L[j+56>>2];L[n+60>>2]=L[j+60>>2];L[n- -64>>2]=L[j- -64>>2];L[n+68>>2]=L[j+68>>2];L[n+72>>2]=L[j+72>>2];L[n+76>>2]=L[j+76>>2];L[n+80>>2]=L[j+80>>2];L[n+84>>2]=L[j+84>>2];L[n+88>>2]=L[j+88>>2];L[n+92>>2]=L[j+92>>2];R6(n+96|0,j+96|0,80);j=j+176|0;n=n+176|0;if(ca>>>0>n>>>0){continue}break}}h:{if(H[k+184>>2]<0){break h}n=H[k+176>>2];if(!n){break h}j=H[33808];Ra[H[H[j+12>>2]+12>>2]](j+12|0,n)}H[k+184>>2]=p;H[k+176>>2]=i}H[k+192>>2]=0;p=H[k+360>>2];if(p>>>0>(H[k+196>>2]&2147483647)>>>0){i=0;i:{if(!p){break i}n=N(p,80);if(!n){break i}i=H[33808];j=Ra[H[H[i>>2]+20>>2]](i)|0?26286:55639;i=Ra[H[H[i+12>>2]+8>>2]](i+12|0,n,j,13582,553)|0}n=H[k+192>>2];if((n|0)>0){ca=N(n,80)+i|0;j=H[k+188>>2];n=i;while(1){L[n>>2]=L[j>>2];L[n+4>>2]=L[j+4>>2];L[n+8>>2]=L[j+8>>2];L[n+12>>2]=L[j+12>>2];L[n+16>>2]=L[j+16>>2];L[n+20>>2]=L[j+20>>2];L[n+24>>2]=L[j+24>>2];L[n+28>>2]=L[j+28>>2];L[n+32>>2]=L[j+32>>2];L[n+36>>2]=L[j+36>>2];L[n+40>>2]=L[j+40>>2];L[n+44>>2]=L[j+44>>2];L[n+48>>2]=L[j+48>>2];L[n+52>>2]=L[j+52>>2];L[n+56>>2]=L[j+56>>2];C=H[j+64>>2];H[n+60>>2]=H[j+60>>2];H[n+64>>2]=C;C=H[j+72>>2];H[n+68>>2]=H[j+68>>2];H[n+72>>2]=C;H[n+76>>2]=H[j+76>>2];j=j+80|0;n=n+80|0;if(ca>>>0>n>>>0){continue}break}}j:{if(H[k+196>>2]<0){break j}n=H[k+188>>2];if(!n){break j}j=H[33808];Ra[H[H[j+12>>2]+12>>2]](j+12|0,n)}H[k+196>>2]=p;H[k+188>>2]=i}i=H[m>>2];n=H[m+4>>2];if(i|n){o=O(O(1)/s);u=I[H[k+364>>2]]&2?s:O(1);while(1){j=i;Bv(l,m,x,v,k,qa,s,s,o,O(1),O(9999999747378752e-20),0,(Ta=f7(i),Ua=f7(n)+32|0,Va=i,Va?Ta:Ua),u);i=i&i-1;n=n&n-!j;if(i|n){continue}break}}H[w+228>>2]=0;H[w+232>>2]=0;H[w+220>>2]=0;H[w+224>>2]=0;H[w+212>>2]=0;H[w+216>>2]=0;H[w+192>>2]=H[a+228>>2];H[w+196>>2]=H[a+240>>2];H[w+200>>2]=H[a+252>>2];H[w+204>>2]=H[a+264>>2];H[w+220>>2]=H[a+144>>2];H[w+216>>2]=H[a+156>>2];H[w+228>>2]=H[a+180>>2];H[w+224>>2]=H[a+192>>2];H[w+208>>2]=H[a+480>>2];n=b;i=w+32|0;m=w+448|0;b=Oa-1088|0;Oa=b;if(c){o=L[a+464>>2];u=O(O(1)/o);while(1){p=n+N(pa,12)|0;j=H[p+8>>2];l=(pa<<5)+fa|0;H[i+16>>2]=l;L[i+120>>2]=L[j>>2];L[i+124>>2]=L[j+4>>2];H[i+132>>2]=H[H[a+20>>2]+168>>2]+(H[j+40>>2]<<5);k=J[j+10>>1];F[i+139|0]=k>>>9&1;x=k&255;F[i+137|0]=x>>>7;F[i+136|0]=k>>>8&1;F[i+138|0]=x>>>5&1;L[i+128>>2]=L[j+44>>2];S6(b+128|0,0,960);H[b+1068>>2]=2139095039;H[b+1052>>2]=-8388609;H[b+988>>2]=2139095039;H[b+972>>2]=-8388609;H[b+908>>2]=2139095039;H[b+892>>2]=-8388609;H[b+828>>2]=2139095039;H[b+812>>2]=-8388609;H[b+748>>2]=2139095039;H[b+732>>2]=-8388609;H[b+668>>2]=2139095039;H[b+652>>2]=-8388609;H[b+588>>2]=2139095039;H[b+572>>2]=-8388609;H[b+508>>2]=2139095039;H[b+492>>2]=-8388609;H[b+428>>2]=2139095039;H[b+412>>2]=-8388609;H[b+348>>2]=2139095039;H[b+332>>2]=-8388609;H[b+268>>2]=2139095039;H[b+252>>2]=-8388609;H[b+188>>2]=2139095039;H[b+172>>2]=-8388609;H[i+4>>2]=1065353216;H[i+8>>2]=1065353216;H[i+12>>2]=1065353216;H[i>>2]=1065353216;k:{if(H[j+24>>2]){k=H[j+32>>2];L[b+96>>2]=L[k>>2];L[b+100>>2]=L[k+4>>2];L[b+104>>2]=L[k+8>>2];L[b+108>>2]=L[k+12>>2];L[b+112>>2]=L[k+16>>2];L[b+116>>2]=L[k+20>>2];q=L[k+24>>2];break k}H[b+112>>2]=0;H[b+116>>2]=0;H[b+104>>2]=0;H[b+108>>2]=1065353216;H[b+96>>2]=0;H[b+100>>2]=0;q=O(0)}L[b+120>>2]=q;l:{if(H[j+28>>2]){k=H[j+36>>2];L[b+64>>2]=L[k>>2];L[b+68>>2]=L[k+4>>2];L[b+72>>2]=L[k+8>>2];L[b+76>>2]=L[k+12>>2];L[b+80>>2]=L[k+16>>2];L[b+84>>2]=L[k+20>>2];q=L[k+24>>2];break l}H[b+80>>2]=0;H[b+84>>2]=0;H[b+72>>2]=0;H[b+76>>2]=1065353216;H[b+64>>2]=0;H[b+68>>2]=0;q=O(0)}L[b+88>>2]=q;H[b+56>>2]=0;H[b+48>>2]=0;H[b+52>>2]=0;k=b+128|0;j=Ra[H[j+12>>2]](k,b+48|0,12,b,H[j+20>>2],b+96|0,b- -64|0,(J[j+10>>1]&512)>>>9|0,b+32|0,b+16|0)|0;L[i+140>>2]=L[b+48>>2];L[i+144>>2]=L[b+52>>2];L[i+148>>2]=L[b+56>>2];L[i+36>>2]=L[b+96>>2];L[i+40>>2]=L[b+100>>2];L[i+44>>2]=L[b+104>>2];L[i+48>>2]=L[b+108>>2];L[i+52>>2]=L[b+112>>2];L[i+56>>2]=L[b+116>>2];L[i+60>>2]=L[b+120>>2];L[i+64>>2]=L[b+64>>2];L[i+68>>2]=L[b+68>>2];L[i+72>>2]=L[b+72>>2];L[i+76>>2]=L[b+76>>2];L[i+80>>2]=L[b+80>>2];L[i+84>>2]=L[b+84>>2];s=L[b+88>>2];H[i+116>>2]=j;L[i+88>>2]=s;H[i+112>>2]=k;k=H[p>>2];j=H[p+4>>2];m:{n:{if(!((k|0)==-2147483648|(j|0)==-2147483648)){G[l+10>>1]=j;G[l+8>>1]=k;H[l>>2]=a;H[l+4>>2]=a;k=8;j=8;break n}if((k|0)==-2147483648){G[l+10>>1]=j;G[l+8>>1]=65535;H[l>>2]=m;H[l+4>>2]=a;k=2;j=8;break n}if((j|0)!=-2147483648){break m}G[l+10>>1]=65535;G[l+8>>1]=k;H[l>>2]=a;H[l+4>>2]=m;k=8;j=2}H[i+96>>2]=j;H[i+92>>2]=k}H[i+20>>2]=H[l>>2];j=H[l+4>>2];H[i+32>>2]=oa;H[i+28>>2]=oa;H[i+24>>2]=j;vx(i,Ja,o,u,qa);pa=pa+1|0;if((pa|0)!=(c|0)){continue}break}}Oa=b+1088|0;o:{if(!c){break o}if(c-1>>>0>=7){i=c&-8;while(1){b=t<<2;H[b+ba>>2]=2139095039;H[(b|4)+ba>>2]=2139095039;H[(b|8)+ba>>2]=2139095039;H[(b|12)+ba>>2]=2139095039;H[(b|16)+ba>>2]=2139095039;H[(b|20)+ba>>2]=2139095039;H[(b|24)+ba>>2]=2139095039;H[(b|28)+ba>>2]=2139095039;t=t+8|0;Fa=Fa+8|0;if((i|0)!=(Fa|0)){continue}break}}i=c&7;if(!i){break o}b=0;while(1){H[(t<<2)+ba>>2]=2139095039;t=t+1|0;b=b+1|0;if((i|0)!=(b|0)){continue}break}}if(h){l=a+112|0;s=O(O(1)/Aa);v=ea<<2;ca=ea&-4;p=ea&3;C=ea&-2;pa=ea&1;x=ea-1|0;p:{q:{while(1){b=0;r:{s:{if(!c){break s}while(1){i=0;k=H[((b<<5)+fa|0)+24>>2];j=I[k+1|0];t:{if(!j){break t}t=k+48|0;if(j-1>>>0>=7){k=j&248;while(1){H[t+88>>2]=0;H[t+1208>>2]=0;H[t+1048>>2]=0;H[t+888>>2]=0;H[t+728>>2]=0;H[t+568>>2]=0;H[t+408>>2]=0;H[t+248>>2]=0;t=t+1280|0;i=i+8|0;if((k|0)!=(i|0)){continue}break}}j=j&7;if(!j){break t}i=0;while(1){H[t+88>>2]=0;t=t+160|0;i=i+1|0;if((j|0)!=(i|0)){continue}break}}b=b+1|0;if((c|0)!=(b|0)){continue}break}t=0;b=0;if(!c){break s}while(1){xz((b<<5)+fa|0,w+296|0);b=b+1|0;if((c|0)!=(b|0)){continue}break}while(1){xz((t<<5)+fa|0,w+296|0);b=0;t=t+1|0;if((t|0)!=(c|0)){continue}break}t=0;while(1){xz((t<<5)+fa|0,w+296|0);t=t+1|0;if((t|0)!=(c|0)){continue}break}while(1){xz((b<<5)+fa|0,w+296|0);b=b+1|0;if((c|0)!=(b|0)){continue}break}b=0;if(c){break r}}Av(a,D);break q}while(1){i=0;k=H[((b<<5)+fa|0)+24>>2];u:{if(!k){break u}m=I[k+1|0];if(!m){break u}j=I[k|0]==4?160:96;t=k+48|0;if(m-1>>>0>=3){V=m&252;while(1){L[t+12>>2]=L[t+28>>2];k=j+t|0;L[k+12>>2]=L[k+28>>2];k=j+k|0;L[k+12>>2]=L[k+28>>2];k=j+k|0;L[k+12>>2]=L[k+28>>2];t=j+k|0;i=i+4|0;if((V|0)!=(i|0)){continue}break}}k=m&3;if(!k){break u}i=0;while(1){L[t+12>>2]=L[t+28>>2];t=j+t|0;i=i+1|0;if((k|0)!=(i|0)){continue}break}}b=b+1|0;if((c|0)!=(b|0)){continue}break}Av(a,D);b=0;if(!c){break p}while(1){i=(b<<5)+fa|0;xz(i,w+296|0);mz(i);b=b+1|0;if((c|0)!=(b|0)){continue}break}if(!c){break q}i=H[H[a+20>>2]+168>>2]+(H[H[n+8>>2]+40>>2]<<5)|0;b=0;t=1;while(1){j=b<<2;o=O(s*L[i+8>>2]);q=O(o*o);o=O(s*L[i>>2]);za=O(o*o);o=O(s*L[i+4>>2]);o=O(Aa*O(W(O(q+O(za+O(o*o))))));L[j+Da>>2]=o;j=j+ba|0;u=L[j>>2];L[j>>2]=o;t=O(P(O(u-o)))>O(9999999747378752e-21)?0:t;b=b+1|0;if((c|0)!=(b|0)){continue}break}oa=t&1;if(oa){break q}i=0;j=S6(H[d+24>>2],0,v);if(c){while(1){v:{if(!ea){break v}k=(i<<2)+Da|0;t=(N(i,ea)<<2)+Ha|0;b=0;V=0;if(x){while(1){m=b<<2;U=m+j|0;L[U>>2]=O(L[m+t>>2]*L[k>>2])+L[U>>2];m=m|4;U=m+j|0;L[U>>2]=O(L[m+t>>2]*L[k>>2])+L[U>>2];b=b+2|0;V=V+2|0;if((C|0)!=(V|0)){continue}break}}if(!pa){break v}b=b<<2;m=b+j|0;L[m>>2]=O(L[b+t>>2]*L[k>>2])+L[m>>2]}i=i+1|0;if((i|0)!=(c|0)){continue}break}}w:{if(!ea){break w}i=0;b=0;t=0;if(x>>>0>=3){while(1){k=b<<2;m=k+j|0;L[m>>2]=L[f+k>>2]-L[m>>2];m=k|4;V=m+j|0;L[V>>2]=L[f+m>>2]-L[V>>2];m=k|8;V=m+j|0;L[V>>2]=L[f+m>>2]-L[V>>2];k=k|12;m=k+j|0;L[m>>2]=L[f+k>>2]-L[m>>2];b=b+4|0;t=t+4|0;if((ca|0)!=(t|0)){continue}break}}if(!p){break w}while(1){k=b<<2;t=k+j|0;L[t>>2]=L[f+k>>2]-L[t>>2];b=b+1|0;i=i+1|0;if((p|0)!=(i|0)){continue}break}}F[w+24|0]=119;Ra[H[H[a>>2]+36>>2]](a,e,w+24|0)|0;F[w+16|0]=8;Ra[H[H[a>>2]+36>>2]](a,d,w+16|0)|0;S6(H[a+312>>2],0,H[a+448>>2]<<5);S6(H[a+168>>2],0,H[a+468>>2]<<2);F[a+489|0]=0;b=w+192|0;zw(l,b);vw(l,g,b);Iw(l,b);Jw(a,l,b);S6(H[a+264>>2],0,Ba);Ga=Ga+1|0;if(Ga>>>0>>0){continue}break}b=!oa;break p}b=0}V=!b}Lw(da,Ia);Lw(da,ba);Lw(da,qa);Lw(da,D);Lw(da,fa);c=0;b=w+480|0;d=1-H[b+76>>2]|0;H[b+76>>2]=d;f=H[b+16>>2];if(f){while(1){d=H[H[b+12>>2]+(c<<2)>>2];if(d){f=H[33808];Ra[H[H[f+12>>2]+12>>2]](f+12|0,d);f=H[b+16>>2]}c=c+1|0;if(f>>>0>c>>>0){continue}break}d=H[b+76>>2]}c=0;H[b+16>>2]=0;H[b+24>>2]=0;H[b+8>>2]=0;f=b+N(d,24)|0;d=H[f+40>>2];if(d){while(1){g=H[H[f+36>>2]+(c<<2)>>2];if(g){d=H[33808];Ra[H[H[d+12>>2]+12>>2]](d+12|0,g);d=H[f+40>>2]}c=c+1|0;if(d>>>0>c>>>0){continue}break}}H[f+40>>2]=0;H[f+48>>2]=0;H[f+32>>2]=0;F[w+8|0]=119;Ra[H[H[a>>2]+36>>2]](a,e,w+8|0)|0;dx(b);Oa=w+560|0;return V|0}function Gu(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=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),G=O(0),J=O(0),K=O(0),M=O(0),Q=O(0),R=O(0),S=O(0),T=O(0),U=O(0),V=O(0),X=O(0),Y=O(0),Z=O(0),_=O(0),$=O(0),aa=O(0),ba=O(0),ca=O(0),da=O(0),ea=O(0),fa=O(0),ga=O(0),ha=O(0),ia=O(0),ja=O(0),ka=O(0),la=O(0),ma=O(0),na=O(0),oa=O(0),pa=O(0),qa=O(0),ra=O(0),sa=O(0),ta=O(0),ua=O(0),va=O(0),wa=O(0),xa=O(0),ya=0,za=0,Aa=0;h=Oa-912|0;Oa=h;f=H[f>>2];L[h+720>>2]=L[e>>2];s=L[a+8>>2];x=L[a+12>>2];z=L[a+4>>2];a=0;H[h+716>>2]=0;L[h+712>>2]=x;L[h+708>>2]=s;L[h+704>>2]=z;B=L[b+8>>2];C=L[b+12>>2];A=L[b+4>>2];H[h+700>>2]=0;L[h+696>>2]=C;L[h+692>>2]=B;L[h+688>>2]=A;n=L[c+20>>2];q=L[c+24>>2];l=L[c>>2];p=L[c+4>>2];t=L[c+8>>2];r=L[c+12>>2];o=L[c+16>>2];H[h+684>>2]=0;L[h+680>>2]=q;L[h+676>>2]=n;L[h+672>>2]=o;L[h+668>>2]=r;L[h+664>>2]=t;L[h+660>>2]=p;L[h+656>>2]=l;w=L[d+20>>2];v=L[d+24>>2];m=L[d>>2];j=L[d+4>>2];k=L[d+8>>2];i=L[d+12>>2];u=L[d+16>>2];H[h+652>>2]=0;L[h+648>>2]=v;L[h+644>>2]=w;L[h+640>>2]=u;L[h+636>>2]=i;L[h+632>>2]=k;L[h+628>>2]=j;L[h+624>>2]=m;H[h+620>>2]=0;D=O(-m);o=O(o-u);n=O(n-w);q=O(q-v);w=O(O(O(D*o)-O(n*j))-O(k*q));v=O(O(i*i)+O(-.5));u=O(O(O(v*n)+O(i*O(O(m*q)-O(k*o))))-O(j*w));L[h+612>>2]=u+u;u=O(O(O(i*O(O(j*o)-O(m*n)))+O(v*q))-O(k*w));L[h+616>>2]=u+u;o=O(O(O(v*o)+O(i*O(O(k*n)-O(j*q))))-O(m*w));L[h+608>>2]=o+o;o=O(O(O(l*j)-O(m*p))+O(O(t*i)-O(r*k)));L[h+600>>2]=o;q=O(O(O(p*k)-O(j*t))+O(O(l*i)-O(r*m)));L[h+592>>2]=q;n=O(O(O(t*m)-O(k*l))+O(O(p*i)-O(r*j)));L[h+596>>2]=n;j=O(O(r*i)-O(O(O(D*l)-O(p*j))-O(k*t)));L[h+604>>2]=j;H[h+572>>2]=0;k=O(q+q);p=O(O(1)-O(q*k));t=O(n+n);w=O(n*t);i=O(p-w);L[h+568>>2]=i;l=O(o*t);r=O(j*k);m=O(l-r);L[h+564>>2]=m;H[h+556>>2]=0;l=O(l+r);L[h+552>>2]=l;r=O(o+o);v=O(o*r);p=O(p-v);L[h+548>>2]=p;b=H[h+620>>2];H[h+584>>2]=H[h+616>>2];H[h+588>>2]=b;o=O(o*k);u=O(j*t);q=O(o+u);L[h+560>>2]=q;k=O(n*k);r=O(j*r);t=O(k-r);L[h+544>>2]=t;H[h+540>>2]=0;j=O(o-u);L[h+536>>2]=j;r=O(k+r);L[h+532>>2]=r;o=O(O(O(1)-w)-v);L[h+528>>2]=o;b=H[h+612>>2];H[h+576>>2]=H[h+608>>2];H[h+580>>2]=b;sa=L[e+8>>2];k=O(sa*O(.15000000596046448));n=B>=A?A:B;n=O((n<=C?n:C)*O(.15000000596046448));n=k=z?z:s;s=O((s<=x?s:x)*O(.15000000596046448));k=kn?n:k;L[h+512>>2]=k;b=I[f+64|0];if(b){k=O(k*O(.800000011920929));s=O(k*k);a=b;while(1){d=H[f+76>>2];a=a-1|0;c=d+N(a,48)|0;k=L[c+24>>2];x=L[c+40>>2];qa=i;i=L[c+8>>2];ra=j;j=L[c>>2];n=L[c+4>>2];l=O(L[h+584>>2]+O(O(qa*i)+O(O(ra*j)+O(n*l))));t=O(L[h+576>>2]+O(O(q*i)+O(O(o*j)+O(n*t))));o=L[c+16>>2];q=L[c+32>>2];j=O(L[h+580>>2]+O(O(m*i)+O(O(r*j)+O(n*p))));m=L[c+20>>2];p=L[c+36>>2];i=O(O(x*O(l-k))+O(O(O(t-o)*q)+O(O(j-m)*p)));k=O(k-O(l-O(x*i)));l=O(k*k);k=O(o-O(t-O(q*i)));j=O(m-O(j-O(p*i)));a:{if(s>2];H[c>>2]=H[d>>2];H[c+4>>2]=e;e=H[d+44>>2];H[c+40>>2]=H[d+40>>2];H[c+44>>2]=e;e=H[d+36>>2];H[c+32>>2]=H[d+32>>2];H[c+36>>2]=e;e=H[d+28>>2];H[c+24>>2]=H[d+24>>2];H[c+28>>2]=e;e=H[d+20>>2];H[c+16>>2]=H[d+16>>2];H[c+20>>2]=e;e=H[d+12>>2];H[c+8>>2]=H[d+8>>2];H[c+12>>2]=e;break a}L[c+44>>2]=i}if(a){i=L[h+568>>2];l=L[h+552>>2];j=L[h+536>>2];m=L[h+564>>2];p=L[h+548>>2];r=L[h+532>>2];q=L[h+560>>2];t=L[h+544>>2];o=L[h+528>>2];continue}break}a=I[f+64|0]}j=L[h+712>>2];z=L[h+704>>2];B=L[h+708>>2];L[h+496>>2]=W(O(O(j*j)+O(O(z*z)+O(B*B))));C=L[h+696>>2];k=L[h+688>>2];i=L[h+692>>2];L[h+480>>2]=W(O(O(C*C)+O(O(k*k)+O(i*i))));b:{c:{d:{if((a|0)==(b|0)){if(!V$(f,h+592|0,h+656|0,h+624|0,h+512|0,h+496|0,h+480|0)){break d}}a=H[h+668>>2];H[h+120>>2]=H[h+664>>2];H[h+124>>2]=a;a=H[h+636>>2];H[h+200>>2]=H[h+632>>2];H[h+204>>2]=a;a=H[h+620>>2];H[f+24>>2]=H[h+616>>2];H[f+28>>2]=a;a=H[h+660>>2];H[h+112>>2]=H[h+656>>2];H[h+116>>2]=a;a=H[h+628>>2];H[h+192>>2]=H[h+624>>2];H[h+196>>2]=a;a=H[h+612>>2];H[f+16>>2]=H[h+608>>2];H[f+20>>2]=a;a=H[h+604>>2];H[f+8>>2]=H[h+600>>2];H[f+12>>2]=a;a=H[h+596>>2];H[f>>2]=H[h+592>>2];H[f+4>>2]=a;a=H[h+124>>2];H[f+40>>2]=H[h+120>>2];H[f+44>>2]=a;a=H[h+116>>2];H[f+32>>2]=H[h+112>>2];H[f+36>>2]=a;a=H[h+196>>2];H[f+48>>2]=H[h+192>>2];H[f+52>>2]=a;a=H[h+204>>2];H[f+56>>2]=H[h+200>>2];H[f+60>>2]=a;a=H[h+684>>2];H[h+472>>2]=H[h+680>>2];H[h+476>>2]=a;H[h+460>>2]=0;H[h+444>>2]=0;a=H[h+676>>2];H[h+464>>2]=H[h+672>>2];H[h+468>>2]=a;l=L[h+660>>2];o=O(l+l);m=L[h+664>>2];r=O(o*m);n=L[h+656>>2];p=O(n+n);q=L[h+668>>2];s=O(p*q);t=O(r-s);L[h+452>>2]=t;r=O(r+s);L[h+440>>2]=r;s=O(O(1)-O(n*p));A=O(l*o);n=O(s-A);L[h+456>>2]=n;w=O(m+m);v=O(m*w);s=O(s-v);L[h+436>>2]=s;H[h+428>>2]=0;m=O(p*m);u=O(o*q);x=O(m+u);L[h+448>>2]=x;l=O(p*l);p=O(w*q);o=O(l-p);L[h+432>>2]=o;m=O(m-u);L[h+424>>2]=m;l=O(l+p);L[h+420>>2]=l;p=O(O(O(1)-A)-v);L[h+416>>2]=p;a=H[h+652>>2];H[h+408>>2]=H[h+648>>2];H[h+412>>2]=a;H[h+396>>2]=0;H[h+380>>2]=0;a=H[h+644>>2];H[h+400>>2]=H[h+640>>2];H[h+404>>2]=a;D=L[h+628>>2];E=O(D+D);u=L[h+632>>2];q=O(E*u);w=L[h+624>>2];J=O(w+w);G=L[h+636>>2];v=O(J*G);A=O(q-v);L[h+388>>2]=A;q=O(q+v);L[h+376>>2]=q;v=O(O(1)-O(w*J));y=O(D*E);w=O(v-y);L[h+392>>2]=w;Q=O(u+u);M=O(u*Q);v=O(v-M);L[h+372>>2]=v;H[h+364>>2]=0;K=O(J*u);E=O(E*G);u=O(K+E);L[h+384>>2]=u;R=O(J*D);G=O(Q*G);D=O(R-G);L[h+368>>2]=D;J=O(K-E);L[h+360>>2]=J;E=O(R+G);L[h+356>>2]=E;G=O(O(O(1)-y)-M);L[h+352>>2]=G;H[h+348>>2]=0;L[h+272>>2]=z;L[h+896>>2]=B;L[h+880>>2]=j;L[h+864>>2]=k;L[h+848>>2]=i;L[h+832>>2]=C;da=O(O(m*J)+O(O(p*G)+O(l*E)));Q=O(-da);ea=O(O(m*q)+O(O(p*D)+O(l*v)));M=O(-ea);fa=O(O(m*w)+O(O(p*u)+O(l*A)));K=O(-fa);y=L[h+720>>2];ga=O((Q>2];S=L[h+472>>2];K=O(R-S);Z=L[h+400>>2];_=L[h+464>>2];$=O(Z-_);aa=L[h+404>>2];ba=L[h+468>>2];ca=O(aa-ba);Q=O(O(m*K)+O(O(p*$)+O(l*ca)));ta=O(y+O(O(z+O(O(k*ga)+O(O(i*ha)+O(C*ia))))-O(P(Q))));e:{if(taO(O(O(O(B*V)+O(j*ma))+O(O(C*ha)+O(i*ia)))+y)|(O(P(O(O(ka*K)-O(oa*M))))>O(O(O(O(B*X)+O(j*T))+O(O(k*ia)+O(C*ga)))+y)|O(P(O(O(la*K)-O(pa*M))))>O(O(O(O(B*Y)+O(j*U))+O(O(k*ha)+O(i*ga)))+y))){break e}if(O(P(O(O(na*Q)-O(da*K))))>O(O(O(O(z*V)+O(j*ga))+O(O(i*U)+O(C*T)))+y)|O(P(O(O(oa*Q)-O(ea*K))))>O(O(O(O(z*X)+O(j*ha))+O(O(k*U)+O(C*ma)))+y)|(O(P(O(O(pa*Q)-O(fa*K))))>O(O(O(O(z*Y)+O(j*ia))+O(O(k*T)+O(i*ma)))+y)|O(P(O(O(da*M)-O(ja*Q))))>O(O(O(O(z*ma)+O(B*ga))+O(O(i*Y)+O(C*X)))+y))){break e}if(O(P(O(O(ea*M)-O(ka*Q))))>O(O(O(O(z*T)+O(B*ha))+O(O(k*Y)+O(C*V)))+y)|O(P(O(O(fa*M)-O(la*Q))))>O(O(O(O(z*U)+O(B*ia))+O(O(k*X)+O(i*V)))+y)){break e}H[h+248>>2]=0;H[h+252>>2]=0;H[h+216>>2]=0;H[h+220>>2]=0;H[h+224>>2]=0;H[h+228>>2]=0;H[h+240>>2]=0;H[h+244>>2]=0;H[h+196>>2]=0;H[h+200>>2]=0;H[h+204>>2]=0;H[h+208>>2]=0;b=ta>ua;y=b?ua:ta;a=y>$;f:{g:{h:{i:{j:{k:{l:{m:{b=a?2:b;y=a?$:y;a=y>ca;b=a?3:b;y=a?ca:y;a=y>va;switch(((a?va:y)>ra?5:a?4: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 e}}n:{if(Q<=O(0)){L[h+228>>2]=l;H[h+220>>2]=0;H[h+236>>2]=0;L[h+216>>2]=r;L[h+212>>2]=s;L[h+208>>2]=o;H[h+204>>2]=0;L[h+200>>2]=-n;L[h+196>>2]=-t;L[h+192>>2]=-x;k=O(ba-O(z*l));L[h+232>>2]=m;i=O(S-O(z*m));L[h+224>>2]=p;j=O(_-O(z*p));break n}q=O(-l);L[h+228>>2]=q;H[h+220>>2]=0;H[h+236>>2]=0;L[h+216>>2]=r;L[h+212>>2]=s;L[h+208>>2]=o;H[h+204>>2]=0;L[h+200>>2]=n;L[h+196>>2]=t;L[h+192>>2]=x;t=O(-m);L[h+232>>2]=t;r=O(-p);L[h+224>>2]=r;i=O(O(z*m)+S);k=O(O(z*l)+ba);j=O(O(z*p)+_);p=r;l=q;m=t}H[h+252>>2]=0;L[h+248>>2]=i;L[h+244>>2]=k;L[h+240>>2]=j;a=h+32|0;W$(a,h+192|0,h+352|0);H[h+748>>2]=0;i=O(O(L[h+200>>2]*m)+O(O(L[h+192>>2]*p)+O(l*L[h+196>>2])));L[h+736>>2]=i;j=O(O(L[h+216>>2]*m)+O(O(L[h+208>>2]*p)+O(l*L[h+212>>2])));L[h+740>>2]=j;k=O(O(L[h+232>>2]*m)+O(O(L[h+224>>2]*p)+O(l*L[h+228>>2])));L[h+744>>2]=k;H[h+812>>2]=0;L[h+808>>2]=-k;L[h+804>>2]=-j;L[h+800>>2]=-i;b=h+112|0;c=h+816|0;X$(b,c,h+800|0,a,h+688|0);Y$(h+880|0,h+896|0,b,c,h+736|0,g,h+348|0,h+720|0);break f}o:{if(M<=O(0)){L[h+228>>2]=s;H[h+220>>2]=0;H[h+236>>2]=0;H[h+204>>2]=0;L[h+200>>2]=m;L[h+196>>2]=l;L[h+192>>2]=p;L[h+216>>2]=-n;L[h+212>>2]=-t;L[h+208>>2]=-x;k=O(ba-O(B*s));L[h+232>>2]=r;i=O(S-O(B*r));L[h+224>>2]=o;j=O(_-O(B*o));break o}q=O(-s);L[h+228>>2]=q;H[h+220>>2]=0;H[h+236>>2]=0;L[h+216>>2]=n;L[h+212>>2]=t;L[h+208>>2]=x;H[h+204>>2]=0;L[h+200>>2]=m;L[h+196>>2]=l;L[h+192>>2]=p;m=O(-r);L[h+232>>2]=m;l=O(-o);L[h+224>>2]=l;i=O(O(B*r)+S);k=O(O(B*s)+ba);j=O(O(B*o)+_);o=l;s=q;r=m}H[h+252>>2]=0;L[h+248>>2]=i;L[h+244>>2]=k;L[h+240>>2]=j;a=h+32|0;W$(a,h+192|0,h+352|0);H[h+748>>2]=0;i=O(O(L[h+200>>2]*r)+O(O(L[h+192>>2]*o)+O(s*L[h+196>>2])));L[h+736>>2]=i;j=O(O(L[h+216>>2]*r)+O(O(L[h+208>>2]*o)+O(s*L[h+212>>2])));L[h+740>>2]=j;k=O(O(L[h+232>>2]*r)+O(O(L[h+224>>2]*o)+O(s*L[h+228>>2])));L[h+744>>2]=k;H[h+812>>2]=0;L[h+808>>2]=-k;L[h+804>>2]=-j;L[h+800>>2]=-i;b=h+112|0;c=h+816|0;X$(b,c,h+800|0,a,h+688|0);Y$(h+272|0,h+880|0,b,c,h+736|0,g,h+348|0,h+720|0);break f}p:{if(K<=O(0)){L[h+228>>2]=t;H[h+220>>2]=0;H[h+236>>2]=0;L[h+216>>2]=r;L[h+212>>2]=s;L[h+208>>2]=o;H[h+204>>2]=0;L[h+200>>2]=m;L[h+196>>2]=l;L[h+192>>2]=p;k=O(ba-O(j*t));L[h+232>>2]=n;i=O(S-O(j*n));L[h+224>>2]=x;j=O(_-O(j*x));break p}q=O(-t);L[h+228>>2]=q;H[h+220>>2]=0;H[h+236>>2]=0;H[h+204>>2]=0;L[h+200>>2]=m;L[h+196>>2]=l;L[h+192>>2]=p;m=O(-n);L[h+232>>2]=m;l=O(-x);L[h+224>>2]=l;L[h+216>>2]=-r;L[h+212>>2]=-s;L[h+208>>2]=-o;i=O(O(j*n)+S);k=O(O(j*t)+ba);j=O(O(j*x)+_);x=l;t=q;n=m}H[h+252>>2]=0;L[h+248>>2]=i;L[h+244>>2]=k;L[h+240>>2]=j;a=h+32|0;W$(a,h+192|0,h+352|0);H[h+748>>2]=0;i=O(O(L[h+200>>2]*n)+O(O(L[h+192>>2]*x)+O(t*L[h+196>>2])));L[h+736>>2]=i;j=O(O(L[h+216>>2]*n)+O(O(L[h+208>>2]*x)+O(t*L[h+212>>2])));L[h+740>>2]=j;k=O(O(L[h+232>>2]*n)+O(O(L[h+224>>2]*x)+O(t*L[h+228>>2])));L[h+744>>2]=k;H[h+812>>2]=0;L[h+808>>2]=-k;L[h+804>>2]=-j;L[h+800>>2]=-i;b=h+112|0;c=h+816|0;X$(b,c,h+800|0,a,h+688|0);Y$(h+272|0,h+896|0,b,c,h+736|0,g,h+348|0,h+720|0);break f}q:{if(wa<=O(0)){L[h+228>>2]=-E;H[h+220>>2]=0;H[h+236>>2]=0;L[h+216>>2]=q;L[h+212>>2]=v;L[h+208>>2]=D;H[h+204>>2]=0;L[h+200>>2]=w;L[h+196>>2]=A;L[h+192>>2]=u;L[h+232>>2]=-J;L[h+224>>2]=-G;i=O(O(k*J)+R);j=O(O(k*E)+aa);k=O(O(k*G)+Z);break q}L[h+228>>2]=E;H[h+220>>2]=0;H[h+236>>2]=0;L[h+216>>2]=q;L[h+212>>2]=v;L[h+208>>2]=D;H[h+204>>2]=0;L[h+200>>2]=-w;L[h+196>>2]=-A;L[h+192>>2]=-u;j=O(aa-O(k*E));L[h+232>>2]=J;i=O(R-O(k*J));L[h+224>>2]=G;k=O(Z-O(k*G));E=O(-E);J=O(-J);G=O(-G)}H[h+252>>2]=0;L[h+248>>2]=i;L[h+244>>2]=j;L[h+240>>2]=k;a=h+32|0;W$(a,h+192|0,h+416|0);H[h+748>>2]=0;L[h+744>>2]=O(L[h+232>>2]*J)+O(O(L[h+224>>2]*G)+O(E*L[h+228>>2]));L[h+740>>2]=O(L[h+216>>2]*J)+O(O(L[h+208>>2]*G)+O(E*L[h+212>>2]));L[h+736>>2]=O(L[h+200>>2]*J)+O(O(L[h+192>>2]*G)+O(E*L[h+196>>2]));b=h+112|0;c=h+816|0;d=h+736|0;X$(b,c,d,a,h+704|0);Y$(h+832|0,h+848|0,b,c,d,g,h+348|0,h+720|0);break g}r:{if(xa<=O(0)){L[h+228>>2]=-v;H[h+220>>2]=0;H[h+236>>2]=0;L[h+216>>2]=w;L[h+212>>2]=A;L[h+208>>2]=u;H[h+204>>2]=0;L[h+200>>2]=J;L[h+196>>2]=E;L[h+192>>2]=G;L[h+232>>2]=-q;L[h+224>>2]=-D;k=O(O(i*q)+R);j=O(O(i*v)+aa);i=O(O(i*D)+Z);break r}L[h+228>>2]=v;H[h+220>>2]=0;H[h+236>>2]=0;H[h+204>>2]=0;L[h+200>>2]=J;L[h+196>>2]=E;L[h+192>>2]=G;L[h+216>>2]=-w;L[h+212>>2]=-A;L[h+208>>2]=-u;j=O(aa-O(i*v));L[h+232>>2]=q;k=O(R-O(i*q));L[h+224>>2]=D;i=O(Z-O(i*D));v=O(-v);q=O(-q);D=O(-D)}H[h+252>>2]=0;L[h+248>>2]=k;L[h+244>>2]=j;L[h+240>>2]=i;a=h+32|0;W$(a,h+192|0,h+416|0);H[h+748>>2]=0;L[h+744>>2]=O(L[h+232>>2]*q)+O(O(L[h+224>>2]*D)+O(v*L[h+228>>2]));L[h+740>>2]=O(L[h+216>>2]*q)+O(O(L[h+208>>2]*D)+O(v*L[h+212>>2]));L[h+736>>2]=O(L[h+200>>2]*q)+O(O(L[h+192>>2]*D)+O(v*L[h+196>>2]));b=h+112|0;c=h+816|0;d=h+736|0;X$(b,c,d,a,h+704|0);Y$(h+864|0,h+832|0,b,c,d,g,h+348|0,h+720|0);break g}s:{if(qa<=O(0)){L[h+228>>2]=-A;H[h+220>>2]=0;H[h+236>>2]=0;H[h+204>>2]=0;L[h+200>>2]=J;L[h+196>>2]=E;L[h+192>>2]=G;L[h+232>>2]=-w;L[h+224>>2]=-u;L[h+216>>2]=-q;L[h+212>>2]=-v;L[h+208>>2]=-D;k=O(O(C*w)+R);i=O(O(C*A)+aa);j=O(O(C*u)+Z);break s}L[h+228>>2]=A;H[h+220>>2]=0;H[h+236>>2]=0;L[h+216>>2]=q;L[h+212>>2]=v;L[h+208>>2]=D;H[h+204>>2]=0;L[h+200>>2]=J;L[h+196>>2]=E;L[h+192>>2]=G;i=O(aa-O(C*A));L[h+232>>2]=w;k=O(R-O(C*w));L[h+224>>2]=u;j=O(Z-O(C*u));A=O(-A);w=O(-w);u=O(-u)}H[h+252>>2]=0;L[h+248>>2]=k;L[h+244>>2]=i;L[h+240>>2]=j;a=h+32|0;W$(a,h+192|0,h+416|0);H[h+748>>2]=0;L[h+744>>2]=O(L[h+232>>2]*w)+O(O(L[h+224>>2]*u)+O(A*L[h+228>>2]));L[h+740>>2]=O(L[h+216>>2]*w)+O(O(L[h+208>>2]*u)+O(A*L[h+212>>2]));L[h+736>>2]=O(L[h+200>>2]*w)+O(O(L[h+192>>2]*u)+O(A*L[h+196>>2]));b=h+112|0;c=h+816|0;d=h+736|0;X$(b,c,d,a,h+704|0);Y$(h+864|0,h+848|0,b,c,d,g,h+348|0,h+720|0)}c=H[h+348>>2];if(!c){break f}a=0;while(1){b=N(a,48)+g|0;d=H[b+20>>2];H[h+32>>2]=H[b+16>>2];H[h+36>>2]=d;d=H[b+4>>2];H[b+16>>2]=H[b>>2];H[b+20>>2]=d;d=H[b+28>>2];H[h+40>>2]=H[b+24>>2];H[h+44>>2]=d;d=H[b+12>>2];H[b+24>>2]=H[b+8>>2];H[b+28>>2]=d;d=H[h+36>>2];H[b>>2]=H[h+32>>2];H[b+4>>2]=d;d=H[h+44>>2];H[b+8>>2]=H[h+40>>2];H[b+12>>2]=d;a=a+1|0;if((c|0)!=(a|0)){continue}break}}a=h+192|0;W$(h+32|0,h+352|0,a);W$(h+736|0,h+416|0,a);t:{c=H[h+348>>2];if(!c){break t}m=L[h+72>>2];i=L[g+40>>2];l=L[h+40>>2];j=L[g+32>>2];k=L[g+36>>2];p=L[h+56>>2];t=O(O(m*i)+O(O(l*j)+O(k*p)));r=L[h+68>>2];o=L[h+36>>2];n=L[h+52>>2];s=O(O(r*i)+O(O(o*j)+O(k*n)));x=L[h+64>>2];q=L[h+32>>2];z=L[h+48>>2];B=O(O(x*i)+O(O(q*j)+O(k*z)));C=L[h+88>>2];A=L[h+84>>2];w=L[h+776>>2];v=L[h+760>>2];u=L[h+772>>2];D=L[h+756>>2];J=L[h+792>>2];E=L[h+788>>2];a=0;G=L[h+80>>2];y=L[h+744>>2];Q=L[h+740>>2];M=L[h+768>>2];K=L[h+752>>2];R=L[h+736>>2];S=L[h+784>>2];while(1){b=N(a,48)+g|0;H[b+12>>2]=0;L[b+32>>2]=B;L[b+40>>2]=t;L[b+36>>2]=s;H[b+28>>2]=0;i=L[b+8>>2];j=L[b>>2];k=L[b+4>>2];L[b+8>>2]=J+O(O(w*i)+O(O(y*j)+O(v*k)));L[b+4>>2]=E+O(O(u*i)+O(O(Q*j)+O(D*k)));L[b>>2]=S+O(O(M*i)+O(O(R*j)+O(K*k)));i=L[b+24>>2];j=L[b+16>>2];k=L[b+20>>2];L[b+16>>2]=G+O(O(x*i)+O(O(q*j)+O(z*k)));L[b+20>>2]=A+O(O(r*i)+O(O(o*j)+O(n*k)));L[b+24>>2]=C+O(O(m*i)+O(O(l*j)+O(p*k)));a=a+1|0;if((c|0)!=(a|0)){continue}break}if(!c){break t}Z0(f,g,c,sa);a=H[f+76>>2];i=L[a+40>>2];j=L[a+36>>2];k=L[a+32>>2];H[h+204>>2]=0;m=O(O(i*L[h+392>>2])+O(O(k*L[h+360>>2])+O(j*L[h+376>>2])));l=O(O(i*L[h+384>>2])+O(O(k*L[h+352>>2])+O(j*L[h+368>>2])));j=O(O(i*L[h+388>>2])+O(O(k*L[h+356>>2])+O(j*L[h+372>>2])));i=O(O(1)/O(W(O(O(m*m)+O(O(l*l)+O(j*j))))));L[h+200>>2]=m*i;L[h+196>>2]=j*i;L[h+192>>2]=l*i;b=0;a=0;u:{if(!I[f+64|0]){break u}while(1){b=H[f+76>>2]+N(a,48)|0;i=L[b+24>>2];j=L[b+20>>2];k=L[b+16>>2];m=L[b+44>>2];l=L[h+400>>2];p=L[h+384>>2];t=L[h+368>>2];r=L[h+352>>2];o=L[h+404>>2];n=L[h+388>>2];s=L[h+372>>2];x=L[h+356>>2];q=L[h+408>>2];z=L[h+392>>2];B=L[h+376>>2];C=L[h+360>>2];c=H[h+196>>2];d=H[h+192>>2];A=L[h+200>>2];b=(a<<6)+g|0;H[b+28>>2]=0;L[b+8>>2]=A;H[b>>2]=d;H[b+4>>2]=c;H[b+52>>2]=-1;L[b+12>>2]=m;L[b+24>>2]=q+O(O(z*i)+O(O(C*k)+O(j*B)));L[b+20>>2]=o+O(O(n*i)+O(O(x*k)+O(j*s)));L[b+16>>2]=l+O(O(p*i)+O(O(r*k)+O(j*t)));b=a+1|0;if(a>>>0>62){break u}a=b;if(a>>>0>2]=b;break c}a=H[h+716>>2];H[h+792>>2]=H[h+712>>2];H[h+796>>2]=a;F[h+768|0]=0;H[h+764>>2]=3;H[h+736>>2]=0;H[h+740>>2]=0;H[h+744>>2]=0;H[h+748>>2]=0;a=H[h+708>>2];H[h+784>>2]=H[h+704>>2];H[h+788>>2]=a;i=L[h+704>>2];j=L[h+708>>2];i=i<=j?i:j;j=L[h+712>>2];i=i<=j?i:j;j=O(i*O(.05000000074505806));L[h+760>>2]=j;L[h+756>>2]=j;L[h+752>>2]=i*O(.15000000596046448);F[h+304|0]=0;H[h+300>>2]=3;H[h+272>>2]=0;H[h+276>>2]=0;H[h+280>>2]=0;H[h+284>>2]=0;a=H[h+700>>2];H[h+328>>2]=H[h+696>>2];H[h+332>>2]=a;a=H[h+692>>2];H[h+320>>2]=H[h+688>>2];H[h+324>>2]=a;i=L[h+688>>2];j=L[h+692>>2];i=i<=j?i:j;j=L[h+696>>2];i=i<=j?i:j;j=O(i*O(.05000000074505806));L[h+296>>2]=j;L[h+292>>2]=j;L[h+288>>2]=i*O(.15000000596046448);F[f+66|0]=0;a=H[h+548>>2];H[h+224>>2]=H[h+544>>2];H[h+228>>2]=a;a=H[h+540>>2];H[h+216>>2]=H[h+536>>2];H[h+220>>2]=a;a=H[h+556>>2];H[h+232>>2]=H[h+552>>2];H[h+236>>2]=a;a=H[h+564>>2];H[h+240>>2]=H[h+560>>2];H[h+244>>2]=a;a=H[h+572>>2];H[h+248>>2]=H[h+568>>2];H[h+252>>2]=a;a=H[h+580>>2];H[h+256>>2]=H[h+576>>2];H[h+260>>2]=a;a=H[h+588>>2];H[h+264>>2]=H[h+584>>2];H[h+268>>2]=a;a=H[h+532>>2];H[h+208>>2]=H[h+528>>2];H[h+212>>2]=a;i=L[h+212>>2];L[h+212>>2]=L[h+224>>2];H[h+192>>2]=126268;H[h+200>>2]=h+528;H[h+196>>2]=h+736;j=L[h+216>>2];k=L[h+232>>2];L[h+224>>2]=i;L[h+216>>2]=L[h+240>>2];L[h+232>>2]=L[h+244>>2];L[h+244>>2]=k;L[h+240>>2]=j;H[h+832>>2]=126608;H[h+836>>2]=h+272;H[h+152>>2]=0;H[h+156>>2]=0;H[h+144>>2]=0;H[h+148>>2]=0;H[h+136>>2]=0;H[h+140>>2]=0;H[h+128>>2]=0;H[h+132>>2]=0;H[h+120>>2]=0;H[h+124>>2]=0;H[h+112>>2]=0;H[h+116>>2]=0;H[h+176>>2]=0;b=f+67|0;c=f+71|0;a=SW(h+192|0,h+832|0,h+576|0,h+720|0,1,b,c,f+66|0,h+112|0);if((a|0)==5){d=H[h+548>>2];a=h- -64|0;H[a>>2]=H[h+544>>2];H[a+4>>2]=d;d=H[h+540>>2];H[h+56>>2]=H[h+536>>2];H[h+60>>2]=d;d=H[h+556>>2];H[h+72>>2]=H[h+552>>2];H[h+76>>2]=d;d=H[h+564>>2];H[h+80>>2]=H[h+560>>2];H[h+84>>2]=d;d=H[h+572>>2];H[h+88>>2]=H[h+568>>2];H[h+92>>2]=d;d=H[h+580>>2];H[h+96>>2]=H[h+576>>2];H[h+100>>2]=d;d=H[h+588>>2];H[h+104>>2]=H[h+584>>2];H[h+108>>2]=d;d=H[h+532>>2];H[h+48>>2]=H[h+528>>2];H[h+52>>2]=d;i=L[h+52>>2];L[h+52>>2]=L[a>>2];H[h+32>>2]=126268;H[h+40>>2]=h+528;H[h+36>>2]=h+736;j=L[h+56>>2];k=L[h+72>>2];L[a>>2]=i;L[h+56>>2]=L[h+80>>2];L[h+72>>2]=L[h+84>>2];L[h+84>>2]=k;L[h+80>>2]=j;H[h+896>>2]=126608;H[h+900>>2]=h+272;a=I[f+66|0];L[h+16>>2]=sa;d=H[h+28>>2];H[h+8>>2]=H[h+24>>2];H[h+12>>2]=d;d=H[h+20>>2];H[h>>2]=H[h+16>>2];H[h+4>>2]=d;a=wZ(h+32|0,h+896|0,b,c,a,1,h,h+112|0)}v:{switch(a-2|0){case 0:case 3:L[h+32>>2]=L[h+512>>2]*O(.05000000074505806);H[h+908>>2]=0;i=O(L[h+120>>2]-L[h+584>>2]);j=O(L[h+112>>2]-L[h+576>>2]);k=O(L[h+116>>2]-L[h+580>>2]);L[h+904>>2]=O(L[h+568>>2]*i)+O(O(L[h+560>>2]*j)+O(k*L[h+564>>2]));L[h+900>>2]=O(L[h+552>>2]*i)+O(O(L[h+544>>2]*j)+O(k*L[h+548>>2]));L[h+896>>2]=O(L[h+536>>2]*i)+O(O(L[h+528>>2]*j)+O(k*L[h+532>>2]));b=H[h+140>>2];H[h+888>>2]=H[h+136>>2];H[h+892>>2]=b;b=H[h+132>>2];H[h+880>>2]=H[h+128>>2];H[h+884>>2]=b;L[h+876>>2]=L[h+176>>2];L[h+872>>2]=L[h+152>>2];b=H[h+148>>2];H[h+864>>2]=H[h+144>>2];H[h+868>>2]=b;za=h,Aa=$0(f,h+896|0,h+880|0,h+864|0,h+32|0)+H[h+348>>2]|0,H[za+348>>2]=Aa;H[h+860>>2]=0;i=L[h+636>>2];j=O(O(i*i)+O(-.5));k=L[h+632>>2];m=L[h+152>>2];l=L[h+624>>2];p=L[h+144>>2];t=L[h+628>>2];r=L[h+148>>2];o=O(O(k*m)+O(O(l*p)+O(t*r)));n=O(O(O(i*O(O(l*r)-O(p*t)))+O(j*m))+O(k*o));n=O(n+n);s=O(O(l*o)+O(O(p*j)+O(i*O(O(t*m)-O(r*k)))));s=O(s+s);i=O(O(t*o)+O(O(j*r)+O(i*O(O(k*p)-O(m*l)))));j=O(i+i);i=O(O(1)/O(W(O(O(n*n)+O(O(s*s)+O(j*j))))));L[h+856>>2]=n*i;L[h+852>>2]=j*i;L[h+848>>2]=s*i;X0(f,g,h+848|0,h+624|0,h+720|0);break;default:break v}}if((a|0)==5^(a|0)==2){break c}}a=0;break b}b=I[f+64|0];a=0;if(!b){break b}a=1;c=H[f+76>>2];m=L[c+32>>2];k=m;l=L[c+36>>2];i=l;p=L[c+40>>2];j=p;w:{if((b|0)==1){break w}d=b-1|0;e=d&1;j=p;i=l;k=m;if((b|0)!=2){ya=d&-2;d=0;while(1){b=c+N(a,48)|0;k=O(O(k+L[b+32>>2])+L[b+80>>2]);j=O(O(j+L[b+40>>2])+L[b+88>>2]);i=O(O(i+L[b+36>>2])+L[b+84>>2]);a=a+2|0;d=d+2|0;if((ya|0)!=(d|0)){continue}break}}if(!e){break w}a=c+N(a,48)|0;k=O(k+L[a+32>>2]);j=O(j+L[a+40>>2]);i=O(i+L[a+36>>2])}H[h+204>>2]=0;t=L[h+632>>2];a=O(O(j*j)+O(O(k*k)+O(i*i)))>O(1.1920928955078125e-7);j=a?j:p;p=L[h+624>>2];k=a?k:m;m=L[h+628>>2];l=a?i:l;r=O(O(t*j)+O(O(p*k)+O(m*l)));i=L[h+636>>2];o=O(O(i*i)+O(-.5));n=O(O(t*r)+O(O(i*O(O(p*l)-O(k*m)))+O(j*o)));n=O(n+n);s=O(O(p*r)+O(O(i*O(O(m*j)-O(l*t)))+O(k*o)));s=O(s+s);i=O(O(m*r)+O(O(i*O(O(t*k)-O(j*p)))+O(l*o)));j=O(i+i);i=O(O(1)/O(W(O(O(n*n)+O(O(s*s)+O(j*j))))));L[h+200>>2]=n*i;L[h+196>>2]=j*i;L[h+192>>2]=s*i;X0(f,g,h+192|0,h+624|0,h+720|0)}a=1}Oa=h+912|0;return a|0}function xx(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=O(d);e=O(e);f=O(f);g=O(g);h=O(h);i=i|0;j=j|0;var k=0,l=O(0),m=0,n=O(0),o=O(0),p=0,q=O(0),r=0,s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=0,z=O(0),A=0,B=O(0),C=0,D=O(0),E=O(0),K=O(0),M=0,Q=O(0),R=O(0),S=0,T=O(0),U=O(0),V=O(0),X=O(0),Y=0,Z=0,_=O(0),$=O(0),aa=O(0),ba=0,ca=O(0),da=O(0),ea=O(0),fa=0,ga=0,ha=O(0),ia=O(0),ja=O(0),ka=0,la=0,ma=0,na=O(0),oa=O(0),pa=O(0),qa=O(0),ra=O(0),sa=O(0),ta=O(0),ua=O(0),va=O(0),wa=O(0),xa=O(0),ya=O(0),za=O(0),Aa=O(0),Ba=O(0),Ca=O(0),Da=O(0),Ea=O(0),Fa=O(0),Ga=0,Ha=O(0),Ia=O(0),Ja=O(0),Ka=O(0),La=O(0),Ma=O(0),Na=O(0),Pa=O(0),Qa=O(0),Sa=O(0),Ta=O(0),Ua=O(0),Va=O(0),Wa=O(0),Xa=O(0),Ya=O(0),Za=O(0),_a=O(0),$a=O(0),ab=O(0),bb=0,cb=O(0),db=O(0),eb=O(0),fb=O(0),gb=O(0),hb=O(0),ib=0,jb=O(0),kb=O(0),lb=O(0),mb=O(0),nb=O(0),ob=O(0),pb=O(0),qb=O(0),rb=O(0),sb=O(0),tb=O(0),ub=O(0),vb=O(0),wb=O(0),xb=O(0),yb=O(0),zb=O(0),Ab=O(0),Bb=O(0),Cb=O(0),Db=O(0),Eb=O(0),Fb=O(0),Gb=O(0),Hb=O(0),Ib=0,Jb=0;Y=Oa-32|0;Oa=Y;H[c+4112>>2]=0;H[Y+28>>2]=1065353216;H[Y+24>>2]=1065353216;H[Y+20>>2]=1065353216;H[Y+16>>2]=1065353216;F[Y+15|0]=0;F[Y+14|0]=0;k=c+16|0;n=L[H[a+28>>2]+76>>2];l=L[H[a+32>>2]+76>>2];Ib=a,Jb=yx(k,b,Y+15|0,Y+14|0,Y+28|0,Y+24|0,Y+20|0,Y+16|0,l>n?n:l),H[Ib+120>>2]=Jb;H[a+116>>2]=k;F[a+125|0]=I[a+125|0]|F[Y+14|0]&1;F[a+124|0]=I[Y+15|0];L[a>>2]=L[Y+28>>2]*L[a>>2];L[a+8>>2]=L[Y+24>>2]*L[a+8>>2];L[a+4>>2]=L[Y+20>>2]*L[a+4>>2];L[a+12>>2]=L[Y+16>>2]*L[a+12>>2];C=Oa-32|0;Oa=C;A=c+4128|0;b=A;H[b+7684>>2]=0;H[b+7688>>2]=0;c=I[a+125|0];Ga=I[a+126|0];k=H[a+92>>2];ka=H[a+96>>2];p=H[a+16>>2];G[p+22>>1]=0;b=H[a+120>>2];a:{if(!b){F[a+140|0]=0;H[a+136>>2]=0;H[p+24>>2]=0;ib=1;break a}if(!c){zx(A,H[a+136>>2],I[a+140|0],a+36|0,a- -64|0,g);b=H[a+120>>2]}la=(k|ka)&8;ez(A,H[a+116>>2],b);Z=a+36|0;fa=a- -64|0;fz(A,H[a+116>>2],Z,fa,0,0);gz(A,H[a+116>>2],Z,fa,g,0,O(L[a+128>>2]+f));c=H[A+7688>>2];b:{if(!c){b=0;H[p+24>>2]=0;c=0;i=0;break b}k=la?112:48;c:{if(!la){b=0;while(1){M=A+(m<<2)|0;S=H[M+7424>>2]!=65535;M=H[M+7296>>2];d:{if(!M){break d}y=((N(k,M)+y|0)+((M<<2)+12&-16)|0)- -64|0;M=A+N(m,104)|0;if(F[M+2817|0]&1){break d}y=(J[M+2818>>1]<<7)+y|0}b=b+S|0;m=m+1|0;if((c|0)!=(m|0)){continue}break}break c}b=0;while(1){M=A+(m<<2)|0;S=H[M+7424>>2]!=65535;M=H[M+7296>>2];e:{if(!M){break e}y=((N(k,M)+y|0)+((M<<2)+12&-16)|0)- -64|0;M=A+N(m,104)|0;if(F[M+2817|0]&1){break e}y=(J[M+2818>>1]<<8)+y|0}b=b+S|0;m=m+1|0;if((c|0)!=(m|0)){continue}break}}c=0;m=0;M=y+15&-16;if(M){k=Ra[H[H[i>>2]>>2]](i,M+16|0)|0;m=(k|0)==-1?0:k}y=!M;S=N(b,104)+15&-16;k=1;f:{if(!S){break f}if(!(m|!M)){m=0;y=0;k=0;break f}c=Ra[H[H[i>>2]+4>>2]](i,S)|0;c=(c|0)==-1?0:c;k=0}i=(m|0)!=0|y;if(!i){F[a+140|0]=0;H[a+136>>2]=0;G[p+22>>1]=0;H[p+24>>2]=0;break a}F[a+140|0]=0;H[a+136>>2]=0;G[p+22>>1]=0;H[p+24>>2]=0;if(!(k|(c|0)!=0)){break a}i=y?0:i?m:0}H[a+136>>2]=c;H[p+24>>2]=i;F[a+140|0]=b;G[p+22>>1]=M>>>4;b=H[a+144>>2];H[p+28>>2]=b;m=0;G[p+20>>1]=b?J[a+120>>1]:0;g:{if(!c){break g}y=H[A+7688>>2];if(!y){break g}b=c;while(1){if(H[(A+(m<<2)|0)+7296>>2]){k=A+N(m,104)|0;F[b|0]=I[k+2816|0];F[b+1|0]=I[k+2817|0];G[b+2>>1]=J[k+2818>>1];L[b+16>>2]=L[k+2832>>2];L[b+20>>2]=L[k+2836>>2];L[b+24>>2]=L[k+2840>>2];L[b+28>>2]=L[k+2844>>2];L[b+32>>2]=L[k+2848>>2];L[b+36>>2]=L[k+2852>>2];L[b+40>>2]=L[k+2856>>2];L[b+44>>2]=L[k+2860>>2];L[b+48>>2]=L[k+2864>>2];L[b+52>>2]=L[k+2868>>2];L[b+56>>2]=L[k+2872>>2];L[b+60>>2]=L[k+2876>>2];L[b+64>>2]=L[k+2880>>2];L[b+68>>2]=L[k+2884>>2];L[b+72>>2]=L[k+2888>>2];L[b+76>>2]=L[k+2892>>2];L[b+80>>2]=L[k+2896>>2];L[b+84>>2]=L[k+2900>>2];L[b+88>>2]=L[k+2904>>2];L[b+92>>2]=L[k+2908>>2];L[b+96>>2]=L[k+2912>>2];L[b+100>>2]=L[k+2916>>2];L[b+4>>2]=L[k+2820>>2];L[b+8>>2]=L[k+2824>>2];L[b+12>>2]=L[k+2828>>2];b=b+104|0}m=m+1|0;if((y|0)!=(m|0)){continue}break}}ib=1;if(!i){break a}k=H[a+32>>2];m=H[a+28>>2];h:{if(la){b=H[a+20>>2];G[C+24>>1]=J[p+8>>1];H[C+20>>2]=m;H[C+16>>2]=b;b=H[a+24>>2];G[C+8>>1]=J[p+10>>1];H[C+4>>2]=k;H[C>>2]=b;ka=H[a+116>>2];b=i;Ba=L[a>>2];Ca=L[a+4>>2];Da=L[a+8>>2];Ea=L[a+12>>2];h=L[a+128>>2];y=0;la=0;k=Oa-400|0;Oa=k;L[k+352>>2]=L[a+132>>2];m=C+16|0;a=J[m+8>>1];i:{if((a|0)==65535){f=L[H[m+4>>2]+68>>2];break i}r=H[m>>2];f=O(Ra[H[H[r>>2]+124>>2]](r,a))}a=J[C+8>>1];if((a|0)==65535){g=L[H[C+4>>2]+68>>2]}else{r=H[C>>2];g=O(Ra[H[H[r>>2]+124>>2]](r,a))}L[k+336>>2]=f>g?f:g;f=L[Z+24>>2];a=H[Z+20>>2];r=H[Z+16>>2];H[k+332>>2]=0;L[k+328>>2]=f;H[k+320>>2]=r;H[k+324>>2]=a;f=L[fa+24>>2];a=H[fa+20>>2];r=H[fa+16>>2];H[k+316>>2]=0;L[k+312>>2]=f;H[k+304>>2]=r;H[k+308>>2]=a;a=J[m+8>>1];j:{if((a|0)==65535){a=H[m+4>>2];f=L[a+24>>2];g=L[a+8>>2];r=H[a+16>>2];p=H[a+20>>2];S=H[a>>2];a=H[a+4>>2];H[k+300>>2]=0;L[k+296>>2]=f;H[k+284>>2]=0;H[k+272>>2]=S;H[k+276>>2]=a;H[k+288>>2]=r;H[k+292>>2]=p;L[k+280>>2]=g;break j}r=H[m>>2];Ra[H[H[r>>2]+116>>2]](k+272|0,r,a)}a=J[C+8>>1];k:{if((a|0)==65535){a=H[C+4>>2];f=L[a+24>>2];g=L[a+8>>2];r=H[a+16>>2];p=H[a+20>>2];S=H[a>>2];a=H[a+4>>2];H[k+268>>2]=0;L[k+264>>2]=f;H[k+252>>2]=0;H[k+240>>2]=S;H[k+244>>2]=a;H[k+256>>2]=r;H[k+260>>2]=p;L[k+248>>2]=g;break k}r=H[C>>2];Ra[H[H[r>>2]+116>>2]](k+240|0,r,a)}L[k+224>>2]=Ba;L[k+208>>2]=Da;L[k+192>>2]=Ca;L[k+176>>2]=Ea;L[k+160>>2]=h;L[k+144>>2]=d;L[k+128>>2]=e;L[k+112>>2]=d*O(.800000011920929);a=H[A+7688>>2];if(a){while(1){r=A+(y<<2)|0;S=H[r+7296>>2];if(S){d=O(1);Ga=r+7424|0;a=ka+(J[A+N(H[Ga>>2],44)>>1]<<6)|0;r=I[a+48|0];d=r&4?J[(A+N(y,104)|0)+2818>>1]==2?O(.5):O(1):d;e=L[a+60>>2];f=L[a+44>>2];g=L[a+56>>2];F[b+2|0]=S;a=0;ga=r&1;a=ga?a:I[(A+N(y,104)|0)+2818|0]<<1;r=b- -64|0;G[b>>1]=3;F[b+3|0]=a;L[k+96>>2]=e;L[b+28>>2]=Da;L[b+24>>2]=Ba;L[b+20>>2]=d*g;L[b+16>>2]=d*f;L[b+8>>2]=Ea;L[b+4>>2]=Ca;a=H[Ga>>2];p=J[A+N(a,44)>>1];ma=ka+(p<<6)|0;g=L[ma>>2];h=L[ma+4>>2];e=L[ma+8>>2];H[k+92>>2]=0;L[k+88>>2]=e;L[k+84>>2]=h;L[k+80>>2]=g;d=O(0);if((a|0)!=65535){while(1){ma=A+N(a,44)|0;ba=I[ma+5|0];if(ba){p=ka+(p<<6)|0;a=0;while(1){Ax(k- -64|0,m,C,k+224|0,k+208|0,k+192|0,k+176|0,k+320|0,k+304|0,k+80|0,k+144|0,k+112|0,k+160|0,k+336|0,k+96|0,k+128|0,p+(a<<6)|0,r,k+352|0,j,k+272|0,k+240|0);r=r+112|0;d=O(d+L[k+64>>2]);a=a+1|0;if((ba|0)!=(a|0)){continue}break}}a=J[ma+2>>1];if((a|0)==65535){h=L[k+84>>2];g=L[k+80>>2];e=L[k+88>>2]}else{p=J[A+N(a,44)>>1];continue}break}}L[b+40>>2]=e;L[b+36>>2]=h;L[b+32>>2]=g;L[b+44>>2]=d/O(S>>>0);a=S<<2;r=S6(r,0,a);H[b+52>>2]=0;a=r+(a+12&-16)|0;l:{if(ga){b=a;break l}f=L[k+88>>2];g=L[k+248>>2];h=L[k+280>>2];d=L[k+80>>2];n=L[k+240>>2];l=L[k+272>>2];e=L[k+84>>2];o=L[k+244>>2];q=L[k+276>>2];H[b+56>>2]=N(la,104)+c;S=A+N(y,104)|0;ma=S+2818|0;if(!J[ma>>1]){b=a;break l}h=O(h-g);n=O(l-n);l=O(q-o);g=O(O(f*h)+O(O(d*n)+O(l*e)));h=O(h-O(f*g));n=O(n-O(d*g));g=O(l-O(e*g));b=O(O(h*h)+O(O(n*n)+O(g*g)))>O(9999999747378752e-20);r=O(P(d))>2];a=S+N(r,12)|0;d=L[a+2888>>2];f=O(d+d);g=L[fa>>2];d=L[a+2880>>2];h=O(d+d);d=L[a+2884>>2];D=O(d+d);E=L[fa+4>>2];$=O(O(e*f)+O(O(g*h)+O(D*E)));d=L[fa+12>>2];w=O(O(d*d)+O(-.5));t=O(O(g*$)+O(O(h*w)+O(d*O(O(E*f)-O(D*e)))));z=O(O(E*$)+O(O(D*w)+O(d*O(O(e*h)-O(f*g)))));na=O(O(t*n)-O(l*z));x=O(O(e*$)+O(O(f*w)+O(d*O(O(g*D)-O(h*E)))));ha=O(O(x*l)-O(o*t));e=L[Z+8>>2];d=L[a+2864>>2];f=O(d+d);g=L[Z>>2];d=L[a+2856>>2];h=O(d+d);D=L[Z+4>>2];d=L[a+2860>>2];E=O(d+d);w=O(O(e*f)+O(O(g*h)+O(D*E)));d=L[Z+12>>2];R=O(O(d*d)+O(-.5));s=O(O(D*w)+O(O(E*R)+O(d*O(O(e*h)-O(f*g)))));v=O(O(e*w)+O(O(f*R)+O(d*O(O(g*E)-O(h*D)))));ca=O(O(s*o)-O(n*v));$=ca;da=O(O(g*w)+O(O(h*R)+O(d*O(O(D*f)-O(E*e)))));ia=O(O(v*l)-O(o*da));D=ia;ja=O(O(da*n)-O(l*s));E=ja;ga=J[m+8>>1];ba=(ga|0)!=65535;if(!ba){a=H[m+4>>2];E=O(O(L[a- -64>>2]*ja)+O(O(L[a+40>>2]*ca)+O(ia*L[a+52>>2])));$=O(O(L[a+56>>2]*ja)+O(O(L[a+32>>2]*ca)+O(ia*L[a+44>>2])));D=O(O(L[a+60>>2]*ja)+O(O(L[a+36>>2]*ca)+O(ia*L[a+48>>2])))}a=b;f=O(-na);g=O(-ha);Na=O(O(z*o)-O(n*x));h=O(-Na);p=J[C+8>>1];m:{if((p|0)!=65535){d=g;e=f;break m}b=H[C+4>>2];e=O(O(L[b- -64>>2]*f)+O(O(L[b+40>>2]*h)+O(L[b+52>>2]*g)));d=O(O(L[b+60>>2]*f)+O(O(L[b+36>>2]*h)+O(L[b+48>>2]*g)));h=O(O(L[b+56>>2]*f)+O(O(L[b+32>>2]*h)+O(L[b+44>>2]*g)))}T=L[k+312>>2];qa=L[k+328>>2];ra=L[k+308>>2];ea=L[k+324>>2];sa=L[k+304>>2];ta=L[k+320>>2];n:{if(!ba){R=L[H[m+4>>2]+12>>2];H[k+44>>2]=0;H[k+60>>2]=0;f=L[k+192>>2];g=O(E*f);L[k+56>>2]=g;w=O(D*f);L[k+52>>2]=w;f=O($*f);L[k+48>>2]=f;R=O(R*L[k+224>>2]);oa=O(o*R);L[k+40>>2]=oa;pa=O(n*R);L[k+36>>2]=pa;R=O(l*R);L[k+32>>2]=R;break n}b=H[m>>2];H[k+396>>2]=0;f=L[k+192>>2];L[k+392>>2]=E*f;L[k+388>>2]=D*f;L[k+384>>2]=$*f;H[k+380>>2]=0;f=L[k+224>>2];L[k+376>>2]=o*f;L[k+372>>2]=n*f;L[k+368>>2]=l*f;Ra[H[H[b>>2]+108>>2]](b,ga,j,k+368|0,k+32|0);p=J[C+8>>1];g=L[k+56>>2];w=L[k+52>>2];f=L[k+48>>2];oa=L[k+40>>2];pa=L[k+36>>2];R=L[k+32>>2]}ua=O(x+T);va=O(v+qa);wa=O(z+ra);xa=O(s+ea);ya=O(sa+t);za=O(da+ta);o:{if((p|0)==65535){ea=L[H[C+4>>2]+12>>2];H[k+12>>2]=0;H[k+28>>2]=0;T=L[k+176>>2];qa=O(e*T);L[k+24>>2]=qa;ra=O(d*T);L[k+20>>2]=ra;T=O(h*T);L[k+16>>2]=T;ea=O(ea*L[k+208>>2]);sa=O(ea*Ka);L[k+8>>2]=sa;ta=O(ea*La);L[k+4>>2]=ta;ea=O(ea*Ma);L[k>>2]=ea;break o}b=H[C>>2];H[k+396>>2]=0;T=L[k+176>>2];L[k+392>>2]=e*T;L[k+388>>2]=d*T;L[k+384>>2]=h*T;H[k+380>>2]=0;T=L[k+208>>2];L[k+376>>2]=T*Ka;L[k+372>>2]=T*La;L[k+368>>2]=T*Ma;Ra[H[H[b>>2]+108>>2]](b,p,j,k+368|0,k);qa=L[k+24>>2];ra=L[k+20>>2];T=L[k+16>>2];sa=L[k+8>>2];ta=L[k+4>>2];ea=L[k>>2]}ua=O(va-ua);va=O(xa-wa);wa=O(za-ya);xa=O(-s);ya=O(-da);za=O(-v);f=O(O(O(O(E*g)+O(o*oa))+O(O(e*qa)-O(o*sa)))+O(O(O(O(D*w)+O(n*pa))+O(O(d*ra)-O(n*ta)))+O(O(O($*f)+O(l*R))+O(O(h*T)-O(l*ea)))));g=f>O(9999999747378752e-21)?O(O(.800000011920929)/f):O(0);b=ka+(J[A+N(H[Ga>>2],44)>>1]<<6)|0;f=O(O(L[b+40>>2]*o)+O(O(L[b+32>>2]*l)+O(n*L[b+36>>2])));p:{if(J[m+8>>1]==65535){b=H[m+4>>2];f=O(f-O(O(O(O(l*L[b>>2])+O(ca*L[b+16>>2]))+O(O(n*L[b+4>>2])+O(ia*L[b+20>>2])))+O(O(o*L[b+8>>2])+O(ja*L[b+24>>2]))));break p}if(J[C+8>>1]!=65535){break p}b=H[C+4>>2];f=O(f+O(O(O(O(l*L[b>>2])+O(Na*L[b+16>>2]))+O(O(n*L[b+4>>2])+O(ha*L[b+20>>2])))+O(O(o*L[b+8>>2])+O(na*L[b+24>>2]))))}L[a+28>>2]=g;L[a+24>>2]=E;L[a+20>>2]=D;L[a+16>>2]=$;H[a+12>>2]=0;L[a+8>>2]=o;L[a+4>>2]=n;L[a>>2]=l;g=L[k+144>>2];L[a+40>>2]=-e;L[a+36>>2]=-d;L[a+32>>2]=-h;L[a+44>>2]=g*O(O(o*ua)+O(O(l*wa)+O(n*va)));b=H[k+44>>2];H[a+72>>2]=H[k+40>>2];H[a+76>>2]=b;b=H[k+36>>2];H[a+64>>2]=H[k+32>>2];H[a+68>>2]=b;b=H[k+60>>2];H[a+88>>2]=H[k+56>>2];H[a+92>>2]=b;b=H[k+52>>2];H[a+80>>2]=H[k+48>>2];H[a+84>>2]=b;b=H[k+12>>2];H[a+104>>2]=H[k+8>>2];H[a+108>>2]=b;b=H[k+4>>2];H[a+96>>2]=H[k>>2];H[a+100>>2]=b;b=H[k+24>>2];p=H[k+28>>2];ga=H[k+16>>2];ba=H[k+20>>2];L[a+48>>2]=f;H[a+120>>2]=b;H[a+124>>2]=p;H[a+112>>2]=ga;H[a+116>>2]=ba;ca=O(O(s*q)+O(u*za));D=ca;v=O(O(v*_)+O(q*ya));E=v;da=O(O(da*u)+O(_*xa));s=da;ga=J[m+8>>1];ba=(ga|0)!=65535;if(!ba){b=H[m+4>>2];s=O(O(L[b- -64>>2]*da)+O(O(L[b+40>>2]*ca)+O(v*L[b+52>>2])));E=O(O(L[b+60>>2]*da)+O(O(L[b+36>>2]*ca)+O(v*L[b+48>>2])));D=O(O(L[b+56>>2]*da)+O(O(L[b+32>>2]*ca)+O(v*L[b+44>>2])))}oa=O(O(t*u)+O(_*O(-z)));f=O(-oa);pa=O(O(x*_)+O(q*O(-t)));g=O(-pa);T=O(O(z*q)+O(u*O(-x)));h=O(-T);p=J[C+8>>1];q:{if((p|0)!=65535){d=g;e=f;break q}b=H[C+4>>2];e=O(O(L[b- -64>>2]*f)+O(O(L[b+40>>2]*h)+O(L[b+52>>2]*g)));d=O(O(L[b+60>>2]*f)+O(O(L[b+36>>2]*h)+O(L[b+48>>2]*g)));h=O(O(L[b+56>>2]*f)+O(O(L[b+32>>2]*h)+O(L[b+44>>2]*g)))}r:{if(!ba){w=L[H[m+4>>2]+12>>2];H[k+44>>2]=0;H[k+60>>2]=0;g=L[k+192>>2];f=O(s*g);L[k+56>>2]=f;$=O(E*g);L[k+52>>2]=$;g=O(D*g);L[k+48>>2]=g;w=O(w*L[k+224>>2]);t=O(q*w);L[k+40>>2]=t;z=O(u*w);L[k+36>>2]=z;x=O(_*w);L[k+32>>2]=x;break r}b=H[m>>2];H[k+396>>2]=0;f=L[k+192>>2];L[k+392>>2]=s*f;L[k+388>>2]=E*f;L[k+384>>2]=D*f;H[k+380>>2]=0;f=L[k+224>>2];L[k+376>>2]=q*f;L[k+372>>2]=u*f;L[k+368>>2]=_*f;Ra[H[H[b>>2]+108>>2]](b,ga,j,k+368|0,k+32|0);p=J[C+8>>1];f=L[k+56>>2];$=L[k+52>>2];g=L[k+48>>2];t=L[k+40>>2];z=L[k+36>>2];x=L[k+32>>2]}s:{if((p|0)==65535){R=L[H[C+4>>2]+12>>2];H[k+12>>2]=0;H[k+28>>2]=0;w=L[k+176>>2];ia=O(e*w);L[k+24>>2]=ia;ja=O(d*w);L[k+20>>2]=ja;na=O(h*w);L[k+16>>2]=na;ha=O(R*L[k+208>>2]);w=O(ha*Ha);L[k+8>>2]=w;R=O(ha*Ia);L[k+4>>2]=R;ha=O(ha*Ja);L[k>>2]=ha;break s}b=H[C>>2];H[k+396>>2]=0;w=L[k+176>>2];L[k+392>>2]=e*w;L[k+388>>2]=d*w;L[k+384>>2]=h*w;H[k+380>>2]=0;w=L[k+208>>2];L[k+376>>2]=w*Ha;L[k+372>>2]=w*Ia;L[k+368>>2]=w*Ja;Ra[H[H[b>>2]+108>>2]](b,p,j,k+368|0,k);ia=L[k+24>>2];ja=L[k+20>>2];na=L[k+16>>2];w=L[k+8>>2];R=L[k+4>>2];ha=L[k>>2]}f=O(O(O(O(s*f)+O(q*t))+O(O(e*ia)-O(q*w)))+O(O(O(O(E*$)+O(u*z))+O(O(d*ja)-O(u*R)))+O(O(O(D*g)+O(_*x))+O(O(h*na)-O(_*ha)))));g=f>O(9999999747378752e-21)?O(O(.800000011920929)/f):O(0);b=ka+(J[A+N(H[Ga>>2],44)>>1]<<6)|0;f=O(O(L[b+40>>2]*q)+O(O(L[b+32>>2]*_)+O(u*L[b+36>>2])));t:{if(J[m+8>>1]==65535){b=H[m+4>>2];f=O(f-O(O(O(O(_*L[b>>2])+O(ca*L[b+16>>2]))+O(O(u*L[b+4>>2])+O(v*L[b+20>>2])))+O(O(q*L[b+8>>2])+O(da*L[b+24>>2]))));break t}if(J[C+8>>1]!=65535){break t}b=H[C+4>>2];f=O(f+O(O(O(O(_*L[b>>2])+O(T*L[b+16>>2]))+O(O(u*L[b+4>>2])+O(pa*L[b+20>>2])))+O(O(q*L[b+8>>2])+O(oa*L[b+24>>2]))))}b=a+256|0;L[a+156>>2]=g;L[a+152>>2]=s;L[a+148>>2]=E;L[a+144>>2]=D;H[a+140>>2]=0;L[a+136>>2]=q;L[a+132>>2]=u;L[a+128>>2]=_;g=L[k+144>>2];L[a+168>>2]=-e;L[a+164>>2]=-d;L[a+160>>2]=-h;L[a+172>>2]=g*O(O(q*ua)+O(O(_*wa)+O(u*va)));p=H[k+44>>2];H[a+200>>2]=H[k+40>>2];H[a+204>>2]=p;p=H[k+36>>2];H[a+192>>2]=H[k+32>>2];H[a+196>>2]=p;p=H[k+60>>2];H[a+216>>2]=H[k+56>>2];H[a+220>>2]=p;p=H[k+52>>2];H[a+208>>2]=H[k+48>>2];H[a+212>>2]=p;p=H[k+12>>2];H[a+232>>2]=H[k+8>>2];H[a+236>>2]=p;p=H[k+4>>2];H[a+224>>2]=H[k>>2];H[a+228>>2]=p;p=H[k+24>>2];ga=H[k+28>>2];ba=H[k+16>>2];bb=H[k+20>>2];L[a+176>>2]=f;H[a+248>>2]=p;H[a+252>>2]=ga;H[a+240>>2]=ba;H[a+244>>2]=bb;r=r+1|0;if(r>>>0>1]){continue}break}}la=la+1|0;a=H[A+7688>>2]}y=y+1|0;if(y>>>0>>0){continue}break}}Oa=k+400|0;break h}b=H[A+7688>>2];if(!b){break h}ma=(ka|0)==4|(ka|0)==2?5:1;f=L[m+68>>2];g=L[k+68>>2];jb=f>g?f:g;ub=O(d*O(.800000011920929));_=O(L[a>>2]*L[m+12>>2]);D=L[a+76>>2];ca=O(O(D*D)+O(-.5));E=L[a+48>>2];da=O(O(E*E)+O(-.5));kb=L[a+88>>2];lb=L[a+84>>2];mb=L[a+80>>2];nb=L[a+60>>2];ob=L[a+56>>2];pb=L[a+52>>2];vb=L[a+132>>2];wb=L[a+128>>2];$=L[a+12>>2];w=L[a+4>>2];j=H[a+116>>2];ga=H[a+112>>2];ia=L[m+8>>2];ja=L[k+8>>2];qb=O(ia-ja);Ba=L[m+4>>2];Ca=L[k+4>>2];rb=O(Ba-Ca);Da=L[m>>2];Ea=L[k>>2];sb=O(Da-Ea);Ha=L[k- -64>>2];Ia=L[k+60>>2];Ja=L[k+56>>2];Ka=L[k+52>>2];La=L[k+48>>2];Ma=L[k+44>>2];na=L[k+40>>2];ha=L[k+36>>2];oa=L[m- -64>>2];pa=L[m+60>>2];T=L[m+56>>2];qa=L[m+52>>2];ra=L[m+48>>2];ea=L[m+44>>2];sa=L[m+40>>2];ta=L[m+36>>2];ua=L[k+24>>2];va=L[k+20>>2];wa=L[m+24>>2];Na=L[m+20>>2];R=O(L[k+12>>2]*O(-L[a+8>>2]));xb=O(-R);xa=L[a+68>>2];yb=O(-xa);ya=L[a+64>>2];zb=O(-ya);za=L[a+72>>2];Ab=O(-za);Ya=L[a+40>>2];Bb=O(-Ya);Za=L[a+36>>2];Cb=O(-Za);_a=L[a+44>>2];Db=O(-_a);cb=L[k+32>>2];db=L[m+32>>2];eb=L[k+16>>2];fb=L[m+16>>2];p=0;a=i;while(1){ka=A+(r<<2)|0;fa=H[ka+7296>>2];if(fa){la=ka+7424|0;Z=j+(J[A+N(H[la>>2],44)>>1]<<6)|0;z=L[Z+60>>2];L[a+48>>2]=xb;L[a+12>>2]=_;H[a+60>>2]=ga;F[a+1|0]=Ga;g=L[Z>>2];n=L[Z+4>>2];l=L[Z+8>>2];H[a+44>>2]=0;L[a+40>>2]=l;L[a+36>>2]=n;L[a+32>>2]=g;b=a- -64|0;y=H[la>>2];if((y|0)!=65535){aa=O(O(O(O(Da*g)-O(Ea*g))+O(O(Ba*n)-O(Ca*n)))+O(O(ia*l)-O(ja*l)));f=O(O(l*l)+O(O(g*g)+O(n*n)));Q=O(R*f);Aa=O(_*f);while(1){y=A+N(y,44)|0;ba=I[y+5|0];if(ba){bb=j+(J[y>>1]<<6)|0;m=0;while(1){k=(m<<6)+bb|0;Fa=L[k+40>>2];$a=L[k+36>>2];ab=L[k+32>>2];Xa=L[k+12>>2];u=L[k+16>>2];q=O(u-pb);s=L[k+20>>2];o=O(s-ob);f=O(O(q*n)-O(g*o));x=O(-f);t=L[k+24>>2];B=O(t-nb);o=O(O(o*l)-O(n*B));v=O(-o);q=O(O(B*g)-O(l*q));B=O(-q);K=O(u-mb);s=O(s-lb);u=O(O(K*n)-O(g*s));V=O(-u);t=O(t-kb);s=O(O(s*l)-O(n*t));X=O(-s);t=O(O(t*g)-O(l*K));K=O(-t);f=(f>x?f:x)v?o:v)B?q:B)V?u:V)X?s:X)K?t:K)O(0)?O(O(1)/U):O(0);L[b+32>>2]=U;f=O(O(aa+O(O(f*wa)+O(O(o*fb)+O(Na*q))))-O(O(u*ua)+O(O(s*eb)+O(va*t))));q=O(-f);o=O(Xa-wb);S=z>O(0)&e>f&q>O(o*d);q=O(U*O(O(O(O(l*Fa)+O(O(g*ab)+O(n*$a)))+(S?O(z*q):O(0)))-f));f=O(ub*o);f=O((f>2]=q-f;L[b+40>>2]=q+(S?O(0):O(-(f>O(0)?f:O(0))));f=L[k+28>>2];H[b+28>>2]=0;L[b+24>>2]=V;L[b+20>>2]=K;L[b+16>>2]=X;H[b+12>>2]=0;L[b+8>>2]=x;L[b+4>>2]=B;L[b>>2]=v;L[b+44>>2]=f;b=b+48|0;m=m+1|0;if((ba|0)!=(m|0)){continue}break}}y=J[y+2>>1];if((y|0)!=65535){continue}break}}k=b;b=fa<<2;y=S6(k,0,b);f=O(1);S=b+12&-16;b=I[Z+48|0];f=b&4?J[(A+N(r,104)|0)+2818>>1]==2?O(.5):O(1):f;o=O(f*L[Z+56>>2]);f=O(f*L[Z+44>>2]);u:{v:{w:{if(b&1){F[a+2|0]=fa;break w}b=J[(A+N(r,104)|0)+2818>>1];F[a+2|0]=fa;if(b){break v}}m=0;k=0;break u}m=1;k=b<<1}b=y+S|0;L[a+28>>2]=R;L[a+24>>2]=_;L[a+20>>2]=o;L[a+16>>2]=f;F[a|0]=ma;F[a+3|0]=k;H[a+52>>2]=0;L[a+8>>2]=$;L[a+4>>2]=w;x:{if(!m){a=b;break x}H[a+56>>2]=N(p,104)+c;y=A+N(r,104)|0;Z=y+2818|0;if(!J[Z>>1]){a=b;break x}f=O(O(l*qb)+O(O(g*sb)+O(rb*n)));o=O(rb-O(n*f));a=O(P(g))O(9999999747378752e-20);o=k?o:a?O(-l):g;u=k?q:a?n:O(0);q=k?f:a?O(0):O(-n);s=O(O(1)/O(W(O(O(u*u)+O(O(q*q)+O(o*o))))));f=O(o*s);o=O(q*s);q=O(O(g*f)-O(o*n));v=n;n=O(u*s);u=O(O(v*n)-O(f*l));g=O(O(l*o)-O(n*g));Eb=O(O(q*ja)+O(O(u*Ea)+O(Ca*g)));Fb=O(O(q*ia)+O(O(u*Da)+O(Ba*g)));Gb=O(O(n*ja)+O(O(o*Ea)+O(Ca*f)));Hb=O(O(n*ia)+O(O(o*Da)+O(Ba*f)));m=0;while(1){a=y+N(m,12)|0;l=L[a+2860>>2];v=L[a+2864>>2];B=L[a+2856>>2];V=O(O(_a*v)+O(O(Za*B)+O(Ya*l)));X=L[a+2888>>2];K=L[a+2880>>2];U=L[a+2884>>2];aa=O(O(za*X)+O(O(ya*K)+O(xa*U)));s=O(O(O(E*O(O(Za*l)+O(B*Bb)))+O(da*v))+O(_a*V));s=O(s+s);t=O(O(O(D*O(O(ya*U)+O(K*yb)))+O(ca*X))+O(za*aa));t=O(t+t);z=O(O(nb+s)-O(kb+t));x=O(-z);Aa=(xFa?Q:Fa)V?B:V)>1];if((a|0)==65535){a=J[A+N(H[la>>2],44)>>1]}a=((a&65535)<<6)+j|0;Fa=L[a+40>>2];$a=L[a+36>>2];ab=L[a+32>>2];L[b+108>>2]=O(O(q*Aa)+O(O(u*B)+O(g*Q)))*d;H[b+76>>2]=0;L[b+72>>2]=q;L[b+68>>2]=g;L[b+64>>2]=u;L[b+44>>2]=O(O(n*Aa)+O(O(o*B)+O(f*Q)))*d;H[b+12>>2]=0;L[b+8>>2]=n;L[b+4>>2]=f;L[b>>2]=o;B=O(O(v*g)-O(u*x));K=O(-B);V=O(O(x*q)-O(g*t));U=O(-V);X=O(O(t*u)-O(q*v));aa=O(-X);B=(B>K?B:K)U?V:U)aa?X:aa)>2]=Aa;Xa=O(O(Ia*B)+O(O(ha*V)+O(La*X)));L[b+100>>2]=Xa;gb=O(O(Ja*B)+O(O(cb*V)+O(Ma*X)));L[b+96>>2]=gb;K=O(O(l*g)-O(u*z));Q=O(-K);U=O(O(z*q)-O(g*s));Pa=O(-U);aa=O(O(s*u)-O(q*l));Qa=O(-aa);K=(QPa?U:Pa)Qa?aa:Qa)>2]=Pa;Qa=O(O(pa*K)+O(O(ta*U)+O(ra*aa)));L[b+84>>2]=Qa;hb=O(O(T*K)+O(O(db*U)+O(ea*aa)));L[b+80>>2]=hb;Q=O(O(v*f)-O(o*x));Sa=O(-Q);x=O(O(x*n)-O(f*t));Ta=O(-x);t=O(O(t*o)-O(n*v));Ua=O(-t);v=(Q>Sa?Q:Sa)Ta?x:Ta)Ua?t:Ua)>2]=Sa;Ta=O(O(Ia*v)+O(O(ha*x)+O(La*t)));L[b+36>>2]=Ta;Ua=O(O(Ja*v)+O(O(cb*x)+O(Ma*t)));L[b+32>>2]=Ua;Q=O(O(l*f)-O(o*z));Va=O(-Q);z=O(O(z*n)-O(f*s));Wa=O(-z);l=O(O(s*o)-O(n*l));tb=O(-l);s=(Q>Va?Q:Va)Wa?z:Wa)tb?l:tb)>2]=Q;Va=O(O(pa*s)+O(O(ta*z)+O(ra*l)));L[b+20>>2]=Va;Wa=O(O(T*s)+O(O(db*z)+O(ea*l)));L[b+16>>2]=Wa;L[b+112>>2]=O(O(Fa*q)+O(O(ab*u)+O(g*$a)))-O(O(Fb+O(O(K*wa)+O(O(U*fb)+O(Na*aa))))-O(Eb+O(O(B*ua)+O(O(V*eb)+O(va*X)))));L[b+48>>2]=O(O(Fa*n)+O(O(ab*o)+O(f*$a)))-O(O(Hb+O(O(s*wa)+O(O(z*fb)+O(Na*l))))-O(Gb+O(O(v*ua)+O(O(x*eb)+O(va*t)))));l=O(O(_+O(w*O(O(Pa*Pa)+O(O(hb*hb)+O(Qa*Qa)))))+O(O($*O(O(Aa*Aa)+O(O(gb*gb)+O(Xa*Xa))))-R));L[b+92>>2]=l>O(0)?O(O(.800000011920929)/l):O(0);l=O(O(_+O(w*O(O(Q*Q)+O(O(Wa*Wa)+O(Va*Va)))))+O(O($*O(O(Sa*Sa)+O(O(Ua*Ua)+O(Ta*Ta))))-R));L[b+28>>2]=l>O(0)?O(O(.800000011920929)/l):O(0);a=b+128|0;b=a;m=m+1|0;if(m>>>0>1]){continue}break}}p=p+1|0;b=H[A+7688>>2]}r=r+1|0;if(r>>>0>>0){continue}break}}H[i+M>>2]=0}Oa=C+32|0;Oa=Y+32|0;return ib|0}function sL(a,b,c){var d=0,e=O(0),f=O(0),g=O(0),h=0,i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=0,C=0,D=0,E=0,F=O(0),G=O(0),I=O(0),J=O(0),M=O(0),N=O(0),P=O(0),Q=O(0),R=0,S=0,T=0,U=O(0),V=O(0),W=O(0),X=O(0),Y=O(0),Z=O(0),_=O(0),$=O(0),aa=O(0),ba=O(0),ca=O(0),da=O(0),ea=O(0),fa=O(0),ga=O(0),ha=O(0),ia=O(0),ja=O(0),ka=O(0),la=O(0),ma=O(0),na=O(0),oa=O(0),pa=O(0),qa=O(0),ra=O(0),sa=O(0),ta=O(0),ua=O(0),va=O(0),wa=O(0),xa=O(0),ya=O(0),za=O(0),Aa=O(0),Ba=O(0),Ca=O(0),Da=O(0),Ea=O(0),Fa=O(0),Ga=O(0),Ha=O(0),Ia=O(0),Ja=O(0),Ka=O(0),La=O(0),Ma=O(0),Na=O(0),Pa=O(0),Qa=O(0),Ra=O(0),Sa=O(0),Ta=O(0),Ua=O(0),Va=O(0),Wa=O(0),Xa=O(0),Ya=O(0),Za=O(0),_a=O(0),$a=O(0),ab=O(0),bb=O(0),cb=O(0),db=O(0),eb=O(0),fb=O(0),gb=O(0),hb=O(0),ib=O(0),jb=O(0),kb=O(0),lb=O(0),mb=O(0),nb=O(0),ob=O(0),pb=O(0),qb=O(0),rb=O(0),sb=O(0),tb=O(0),ub=O(0),vb=O(0),wb=O(0),xb=O(0),yb=O(0),zb=O(0),Ab=O(0),Bb=O(0),Cb=O(0),Db=O(0),Eb=O(0),Fb=O(0),Gb=O(0),Hb=O(0),Ib=O(0),Jb=O(0),Kb=O(0),Lb=O(0),Mb=O(0),Nb=O(0),Ob=O(0),Pb=O(0),Qb=O(0),Rb=O(0),Sb=O(0),Tb=O(0),Ub=O(0),Vb=O(0),Wb=O(0),Xb=O(0),Yb=O(0),Zb=O(0),_b=O(0),$b=O(0),ac=O(0),bc=O(0),cc=O(0),dc=O(0),ec=O(0),fc=O(0),gc=O(0),hc=O(0),ic=O(0),jc=O(0),kc=O(0),lc=O(0),mc=O(0),nc=O(0),oc=O(0),pc=O(0),qc=O(0),rc=O(0),sc=O(0),tc=O(0),uc=O(0),vc=O(0),wc=O(0),xc=O(0),yc=O(0),zc=O(0),Ac=O(0),Bc=O(0),Cc=O(0),Dc=O(0),Ec=O(0),Fc=O(0),Gc=O(0),Hc=O(0),Ic=O(0),Jc=O(0),Kc=O(0),Lc=O(0),Mc=O(0),Nc=O(0),Oc=O(0),Pc=O(0),Qc=O(0),Rc=O(0),Sc=O(0),Tc=O(0),Uc=O(0),Vc=O(0),Wc=O(0),Xc=O(0),Yc=O(0),Zc=O(0),_c=O(0),$c=O(0),ad=O(0),bd=O(0),cd=O(0),dd=O(0),ed=O(0),fd=O(0),gd=O(0),hd=O(0),id=O(0),jd=O(0),kd=O(0),ld=O(0),md=O(0),nd=O(0),od=O(0),pd=O(0),qd=O(0),rd=O(0),sd=O(0),td=O(0),ud=O(0),vd=O(0),wd=O(0),xd=O(0),yd=O(0),zd=O(0),Ad=O(0),Bd=O(0),Cd=O(0),Dd=O(0),Ed=O(0),Fd=O(0),Gd=O(0),Hd=O(0),Id=O(0),Jd=O(0),Kd=O(0),Ld=O(0),Md=O(0),Nd=O(0),Od=O(0),Pd=O(0),Qd=O(0),Rd=O(0),Sd=O(0),Td=O(0),Ud=O(0),Vd=O(0),Wd=O(0),Xd=O(0),Yd=O(0),Zd=O(0),_d=O(0),$d=O(0),ae=O(0),be=O(0),ce=O(0),de=O(0),ee=O(0),fe=O(0),ge=O(0),he=O(0),ie=O(0),je=O(0),ke=O(0),le=O(0),me=O(0),ne=O(0),oe=O(0),pe=O(0),qe=O(0),re=O(0),se=O(0),te=O(0),ue=O(0),ve=O(0),we=O(0),xe=O(0),ye=O(0),ze=O(0),Ae=O(0),Be=O(0),Ce=O(0),De=O(0),Ee=O(0),Fe=O(0),Ge=O(0),He=O(0),Ie=O(0),Je=O(0),Ke=O(0),Le=O(0),Me=O(0),Ne=O(0),Oe=O(0),Pe=O(0),Qe=O(0),Re=O(0),Se=O(0),Te=O(0),Ue=O(0),Ve=O(0),We=O(0),Xe=O(0),Ye=O(0),Ze=O(0),_e=O(0),$e=O(0),af=O(0),bf=O(0),cf=O(0),df=O(0),ef=O(0),ff=O(0),gf=O(0),hf=O(0),jf=O(0),kf=O(0),lf=O(0),mf=O(0),nf=O(0),of=O(0),pf=O(0),qf=O(0),rf=O(0),sf=O(0),tf=O(0),uf=O(0),vf=O(0),wf=O(0),xf=O(0),yf=O(0),zf=O(0),Af=O(0),Bf=O(0),Cf=O(0),Df=O(0),Ef=O(0),Ff=O(0),Gf=O(0),Hf=O(0),If=O(0),Jf=O(0),Kf=O(0),Lf=O(0),Mf=O(0),Nf=O(0),Of=O(0),Pf=O(0),Qf=O(0),Rf=O(0),Sf=O(0),Tf=O(0),Uf=O(0),Vf=O(0),Wf=O(0),Xf=O(0),Yf=O(0),Zf=O(0),_f=O(0),$f=O(0),ag=O(0),bg=O(0),cg=O(0),dg=O(0),eg=O(0),fg=O(0),gg=O(0),hg=O(0),ig=O(0),jg=O(0),kg=O(0),lg=O(0),mg=O(0),ng=O(0),og=O(0),pg=O(0),qg=O(0),rg=O(0),sg=O(0),tg=O(0),ug=O(0),vg=O(0),wg=O(0),xg=O(0),yg=O(0),zg=O(0),Ag=O(0),Bg=O(0),Cg=O(0),Dg=O(0),Eg=O(0);h=Oa-224|0;Oa=h;d=H[a+24>>2];if(d){n=H[a+100>>2];Wa=L[n+16>>2];o=H[a+96>>2];Xa=L[o+24>>2];ya=L[o+20>>2];Ya=L[n+8>>2];za=L[n+4>>2];Za=L[n>>2];p=H[a+68>>2];_a=L[p+16>>2];q=H[a+64>>2];$a=L[q+24>>2];Aa=L[q+20>>2];ab=L[p+8>>2];Ba=L[p+4>>2];bb=L[p>>2];r=H[a+36>>2];cb=L[r+16>>2];s=H[a+32>>2];db=L[s+24>>2];Ca=L[s+20>>2];eb=L[r+8>>2];Da=L[r+4>>2];fb=L[r>>2];t=H[a+4>>2];gb=L[t+24>>2];Ea=L[t+20>>2];u=H[a>>2];hb=L[u+24>>2];Fa=L[u+20>>2];B=(H[a+16>>2]<<6)+b|0;Ud=L[B+28>>2];C=(H[a+12>>2]<<6)+b|0;Vd=L[C+28>>2];ib=L[n+24>>2];Ga=L[n+20>>2];jb=L[p+24>>2];Ha=L[p+20>>2];kb=L[r+24>>2];Ia=L[r+20>>2];D=(H[a+112>>2]<<6)+b|0;Wd=L[D+28>>2];E=(H[a+80>>2]<<6)+b|0;Xd=L[E+28>>2];R=(H[a+48>>2]<<6)+b|0;Yd=L[R+28>>2];Zd=L[B+60>>2];_d=L[B+56>>2];$d=L[B+52>>2];ae=L[B+48>>2];be=L[B+44>>2];ce=L[B+40>>2];de=L[B+36>>2];ee=L[B+32>>2];S=(H[a+108>>2]<<6)+b|0;fe=L[S+28>>2];T=(H[a+76>>2]<<6)+b|0;ge=L[T+28>>2];a=(H[a+44>>2]<<6)+b|0;he=L[a+28>>2];ie=L[C+60>>2];je=L[C+56>>2];ke=L[C+52>>2];le=L[C+48>>2];me=L[C+44>>2];ne=L[C+40>>2];oe=L[C+36>>2];pe=L[C+32>>2];qe=L[D+60>>2];re=L[D+56>>2];se=L[D+52>>2];te=L[D+48>>2];ue=L[D+44>>2];ve=L[D+40>>2];we=L[D+36>>2];xe=L[D+32>>2];ye=L[E+60>>2];ze=L[E+56>>2];Ae=L[E+52>>2];Be=L[E+48>>2];Ce=L[E+44>>2];De=L[E+40>>2];Ee=L[E+36>>2];Fe=L[E+32>>2];Ge=L[R+60>>2];He=L[R+56>>2];Ie=L[R+52>>2];Je=L[R+48>>2];Ke=L[R+44>>2];Le=L[R+40>>2];Me=L[R+36>>2];Ne=L[R+32>>2];Oe=L[S+60>>2];Pe=L[S+56>>2];Qe=L[S+52>>2];Re=L[S+48>>2];Se=L[S+44>>2];Te=L[S+40>>2];Ue=L[S+36>>2];Ve=L[S+32>>2];We=L[T+60>>2];Xe=L[T+56>>2];Ye=L[T+52>>2];Ze=L[T+48>>2];_e=L[T+44>>2];$e=L[T+40>>2];af=L[T+36>>2];bf=L[T+32>>2];cf=L[a+60>>2];df=L[a+56>>2];ef=L[a+52>>2];ff=L[a+48>>2];gf=L[a+44>>2];hf=L[a+40>>2];jf=L[a+36>>2];kf=L[a+32>>2];ga=L[u+52>>2];U=L[s+52>>2];ha=L[q+52>>2];V=L[o+52>>2];ia=L[u+56>>2];ja=L[s+56>>2];W=L[q+56>>2];ka=L[o+56>>2];X=L[r+48>>2];la=L[p+48>>2];ma=L[n+48>>2];Y=L[t+52>>2];na=L[r+52>>2];oa=L[p+52>>2];Z=L[n+52>>2];pa=L[t+56>>2];qa=L[r+56>>2];ra=L[p+56>>2];e=L[n+56>>2];lb=L[u+36>>2];mb=L[u+40>>2];nb=L[t+36>>2];ob=L[t+40>>2];pb=L[s+36>>2];qb=L[s+40>>2];rb=L[r+32>>2];sb=L[r+36>>2];tb=L[r+40>>2];ub=L[q+36>>2];vb=L[q+40>>2];wb=L[p+32>>2];xb=L[p+36>>2];yb=L[p+40>>2];zb=L[o+36>>2];Ab=L[o+40>>2];Bb=L[n+32>>2];Cb=L[n+36>>2];Db=L[n+40>>2];f=L[D+12>>2];g=L[E+12>>2];sa=L[R+12>>2];ta=L[B+12>>2];ua=L[D+8>>2];_=L[E+8>>2];va=L[R+8>>2];wa=L[B+8>>2];i=L[B>>2];ea=L[R>>2];$=L[E>>2];F=L[D>>2];aa=L[B+4>>2];ba=L[R+4>>2];G=L[E+4>>2];fa=L[D+4>>2];k=L[C+12>>2];z=L[a+12>>2];P=L[T+12>>2];Q=L[S+12>>2];A=L[C+8>>2];ca=L[a+8>>2];I=L[T+8>>2];v=L[S+8>>2];J=L[C+4>>2];l=L[a+4>>2];w=L[T+4>>2];da=L[S+4>>2];M=L[C>>2];x=L[a>>2];N=L[T>>2];sc=L[d+108>>2];tc=L[d+104>>2];uc=L[d+100>>2];vc=L[d+96>>2];wc=L[d+92>>2];xc=L[d+88>>2];yc=L[d+84>>2];zc=L[d+80>>2];Eb=L[o+16>>2];Fb=L[o+8>>2];Ja=L[o+4>>2];Gb=L[o>>2];Hb=L[q+16>>2];Ib=L[q+8>>2];Ka=L[q+4>>2];Jb=L[q>>2];Kb=L[s+16>>2];Lb=L[s+8>>2];La=L[s+4>>2];Mb=L[s>>2];Nb=L[t+16>>2];Ob=L[u+16>>2];Pb=L[t+8>>2];Ma=L[t+4>>2];Qb=L[t>>2];Rb=L[u+8>>2];Na=L[u+4>>2];Sb=L[u>>2];m=L[u+48>>2];y=L[s+48>>2];Pa=L[q+48>>2];Qa=L[o+48>>2];Ra=L[t+48>>2];Tb=L[u+32>>2];Ub=L[t+32>>2];Vb=L[s+32>>2];Wb=L[q+32>>2];Xb=L[o+32>>2];L[h+220>>2]=L[S>>2];L[h+216>>2]=N;L[h+212>>2]=x;L[h+208>>2]=M;L[h+204>>2]=da;L[h+200>>2]=w;L[h+196>>2]=l;L[h+192>>2]=J;L[h+188>>2]=v;L[h+184>>2]=I;L[h+180>>2]=ca;L[h+176>>2]=A;L[h+172>>2]=Q;L[h+168>>2]=P;L[h+164>>2]=z;L[h+160>>2]=k;L[h+140>>2]=fa;L[h+136>>2]=G;L[h+132>>2]=ba;L[h+128>>2]=aa;L[h+156>>2]=F;L[h+152>>2]=$;L[h+148>>2]=ea;L[h+144>>2]=i;L[h+112>>2]=wa;L[h+116>>2]=va;L[h+120>>2]=_;L[h+124>>2]=ua;L[h+96>>2]=ta;L[h+100>>2]=sa;L[h+104>>2]=g;L[h+108>>2]=f;tL(h+208|0,h+192|0,h+176|0,h+160|0,d+160|0,d+176|0,d+192|0,h+80|0,h- -64|0,h+48|0);tL(h+144|0,h+128|0,h+112|0,h+96|0,d+208|0,d+224|0,d+240|0,h+32|0,h+16|0,h);if(H[d+4>>2]){lf=O(L[d+636>>2]+O(O(O(Xb*L[d+300>>2])+O(O(zb*L[d+348>>2])+O(Ab*L[d+396>>2])))-O(O(Bb*L[d+444>>2])+O(O(Cb*L[d+492>>2])+O(Db*L[d+540>>2])))));mf=O(L[d+632>>2]+O(O(O(Wb*L[d+296>>2])+O(O(ub*L[d+344>>2])+O(vb*L[d+392>>2])))-O(O(wb*L[d+440>>2])+O(O(xb*L[d+488>>2])+O(yb*L[d+536>>2])))));nf=O(L[d+628>>2]+O(O(O(Vb*L[d+292>>2])+O(O(pb*L[d+340>>2])+O(qb*L[d+388>>2])))-O(O(rb*L[d+436>>2])+O(O(sb*L[d+484>>2])+O(tb*L[d+532>>2])))));of=O(L[d+624>>2]+O(O(O(Tb*L[d+288>>2])+O(O(lb*L[d+336>>2])+O(mb*L[d+384>>2])))-O(O(Ub*L[d+432>>2])+O(O(nb*L[d+480>>2])+O(ob*L[d+528>>2])))));pf=O(L[d+620>>2]+O(O(O(Xb*L[d+284>>2])+O(O(zb*L[d+332>>2])+O(Ab*L[d+380>>2])))-O(O(Bb*L[d+428>>2])+O(O(Cb*L[d+476>>2])+O(Db*L[d+524>>2])))));qf=O(L[d+616>>2]+O(O(O(Wb*L[d+280>>2])+O(O(ub*L[d+328>>2])+O(vb*L[d+376>>2])))-O(O(wb*L[d+424>>2])+O(O(xb*L[d+472>>2])+O(yb*L[d+520>>2])))));rf=O(L[d+612>>2]+O(O(O(Vb*L[d+276>>2])+O(O(pb*L[d+324>>2])+O(qb*L[d+372>>2])))-O(O(rb*L[d+420>>2])+O(O(sb*L[d+468>>2])+O(tb*L[d+516>>2])))));sf=O(L[d+608>>2]+O(O(O(Tb*L[d+272>>2])+O(O(lb*L[d+320>>2])+O(mb*L[d+368>>2])))-O(O(Ub*L[d+416>>2])+O(O(nb*L[d+464>>2])+O(ob*L[d+512>>2])))));tf=O(L[d+604>>2]+O(O(O(Xb*L[d+268>>2])+O(O(zb*L[d+316>>2])+O(Ab*L[d+364>>2])))-O(O(Bb*L[d+412>>2])+O(O(Cb*L[d+460>>2])+O(Db*L[d+508>>2])))));uf=O(L[d+600>>2]+O(O(O(Wb*L[d+264>>2])+O(O(ub*L[d+312>>2])+O(vb*L[d+360>>2])))-O(O(wb*L[d+408>>2])+O(O(xb*L[d+456>>2])+O(yb*L[d+504>>2])))));vf=O(L[d+596>>2]+O(O(O(Vb*L[d+260>>2])+O(O(pb*L[d+308>>2])+O(qb*L[d+356>>2])))-O(O(rb*L[d+404>>2])+O(O(sb*L[d+452>>2])+O(tb*L[d+500>>2])))));wf=O(L[d+592>>2]+O(O(O(Tb*L[d+256>>2])+O(O(lb*L[d+304>>2])+O(mb*L[d+352>>2])))-O(O(Ub*L[d+400>>2])+O(O(nb*L[d+448>>2])+O(ob*L[d+496>>2])))));Yb=L[h+12>>2];xf=O(O(e+Yb)-L[d+252>>2]);Zb=L[h+8>>2];yf=O(O(ra+Zb)-L[d+248>>2]);_b=L[h+4>>2];zf=O(O(qa+_b)-L[d+244>>2]);$b=L[h>>2];Af=O(O(pa+$b)-L[d+240>>2]);ac=L[h+28>>2];Bf=O(O(Z+ac)-L[d+236>>2]);bc=L[h+24>>2];Cf=O(O(oa+bc)-L[d+232>>2]);cc=L[h+20>>2];Df=O(O(na+cc)-L[d+228>>2]);dc=L[h+16>>2];Ef=O(O(Y+dc)-L[d+224>>2]);ec=L[h+44>>2];Ff=O(O(ma+ec)-L[d+220>>2]);fc=L[h+40>>2];Gf=O(O(la+fc)-L[d+216>>2]);gc=L[h+36>>2];Hf=O(O(X+gc)-L[d+212>>2]);i=Ra;Ra=L[h+32>>2];If=O(O(i+Ra)-L[d+208>>2]);hc=L[h+60>>2];Jf=O(O(ka+hc)-L[d+204>>2]);ic=L[h+56>>2];Kf=O(O(W+ic)-L[d+200>>2]);jc=L[h+52>>2];Lf=O(O(ja+jc)-L[d+196>>2]);kc=L[h+48>>2];Mf=O(O(ia+kc)-L[d+192>>2]);lc=L[h+76>>2];Nf=O(O(V+lc)-L[d+188>>2]);mc=L[h+72>>2];Of=O(O(ha+mc)-L[d+184>>2]);nc=L[h+68>>2];Pf=O(O(U+nc)-L[d+180>>2]);oc=L[h+64>>2];Qf=O(O(ga+oc)-L[d+176>>2]);i=Qa;Qa=L[h+92>>2];Rf=O(O(i+Qa)-L[d+172>>2]);pc=L[h+88>>2];Sf=O(O(Pa+pc)-L[d+168>>2]);qc=L[h+84>>2];Tf=O(O(y+qc)-L[d+164>>2]);rc=L[h+80>>2];Uf=O(O(m+rc)-L[d+160>>2]);Ac=L[d+76>>2];Bc=L[d+72>>2];Cc=L[d+68>>2];Dc=L[d+64>>2];Ec=L[d+60>>2];Fc=L[d+56>>2];Gc=L[d+52>>2];Hc=L[d+48>>2];a=d+640|0;b=0;while(1){Vf=L[a+160>>2];Wf=L[a+144>>2];Xf=L[a+224>>2];ga=L[a+80>>2];Yf=L[a+208>>2];U=L[a+96>>2];M=L[a+276>>2];x=L[a+292>>2];Ic=L[a+308>>2];Zf=L[a+244>>2];_f=L[a+180>>2];da=L[a+324>>2];$f=L[a+116>>2];N=L[a+260>>2];ag=L[a+52>>2];bg=L[a+340>>2];B=H[a+356>>2];cg=L[a+164>>2];dg=L[a+132>>2];ha=L[a+20>>2];eg=L[a+148>>2];V=L[a+36>>2];fg=L[a+228>>2];gg=L[a+196>>2];ia=L[a+84>>2];hg=L[a+212>>2];ja=L[a+68>>2];W=L[a+100>>2];I=L[a+280>>2];v=L[a+296>>2];Jc=L[a+312>>2];ig=L[a+248>>2];jg=L[a+184>>2];ca=L[a+328>>2];kg=L[a+120>>2];J=L[a+264>>2];lg=L[a+56>>2];mg=L[a+344>>2];C=H[a+360>>2];z=L[a+168>>2];P=L[a+136>>2];ka=L[a+24>>2];Q=L[a+152>>2];X=L[a+40>>2];A=L[a+232>>2];ng=L[a+200>>2];la=L[a+88>>2];og=L[a+216>>2];ma=L[a+72>>2];Y=L[a+104>>2];Kc=L[a+272>>2];Lc=L[a+288>>2];Mc=L[a+304>>2];pg=L[a+240>>2];qg=L[a+176>>2];Pa=L[a+320>>2];rg=L[a+112>>2];Nc=L[a+256>>2];sg=L[a+48>>2];tg=L[a+336>>2];D=H[a+352>>2];ug=L[d+544>>2];xa=L[d+256>>2];Oc=L[d+304>>2];Pc=L[d+352>>2];Qc=L[d+400>>2];Rc=L[d+448>>2];Sc=L[d+496>>2];vg=L[d+560>>2];Tc=L[d+272>>2];Uc=L[d+320>>2];Vc=L[d+368>>2];Wc=L[d+416>>2];Xc=L[d+464>>2];Yc=L[d+512>>2];wg=L[d+576>>2];Zc=L[d+288>>2];_c=L[d+336>>2];$c=L[d+384>>2];xg=L[a+128>>2];na=L[a+16>>2];oa=L[a>>2];Z=L[a+32>>2];ad=L[d+432>>2];bd=L[d+480>>2];cd=L[d+528>>2];yg=L[a+192>>2];pa=L[a+64>>2];zg=L[d+548>>2];m=L[d+260>>2];y=L[d+308>>2];Sa=L[d+356>>2];dd=L[d+404>>2];ed=L[d+452>>2];fd=L[d+500>>2];Ag=L[d+564>>2];gd=L[d+276>>2];hd=L[d+324>>2];id=L[d+372>>2];jd=L[d+420>>2];kd=L[d+468>>2];ld=L[d+516>>2];Bg=L[d+580>>2];md=L[d+292>>2];nd=L[d+340>>2];od=L[d+388>>2];qa=L[a+4>>2];pd=L[d+436>>2];qd=L[d+484>>2];rd=L[d+532>>2];Cg=L[d+552>>2];fa=L[d+264>>2];l=L[d+312>>2];w=L[d+360>>2];Ta=L[d+408>>2];sd=L[d+456>>2];td=L[d+504>>2];Dg=L[d+568>>2];ud=L[d+280>>2];vd=L[d+328>>2];wd=L[d+376>>2];xd=L[d+424>>2];yd=L[d+472>>2];zd=L[d+520>>2];Eg=L[d+584>>2];Ad=L[d+296>>2];Bd=L[d+344>>2];Cd=L[d+392>>2];ra=L[a+8>>2];Dd=L[d+440>>2];Ed=L[d+488>>2];Fd=L[d+536>>2];sa=L[a+44>>2];ta=L[a+28>>2];e=O(L[a+140>>2]+O(O(lc*sa)-O(hc*ta)));ua=L[a+12>>2];f=O(L[a+156>>2]+O(O(hc*ua)-O(Qa*sa)));g=O(O(O(Qa*ta)-O(lc*ua))+L[a+172>>2]);i=O(O(O(fe*e)+O(Ve*f))+O(Ue*g));ea=L[d+268>>2];$=O(O(O(Te*e)+O(Se*f))+O(Re*g));k=L[d+316>>2];F=O(O(O(Qe*e)+O(Pe*f))+O(Oe*g));Ua=L[d+364>>2];_=L[a+108>>2];va=L[a+92>>2];e=O(L[a+204>>2]+O(O(ac*_)-O(Yb*va)));wa=L[a+76>>2];f=O(L[a+220>>2]+O(O(Yb*wa)-O(ec*_)));g=O(O(O(ec*va)-O(ac*wa))+L[a+236>>2]);aa=O(O(O(Wd*e)+O(xe*f))+O(we*g));Va=L[d+412>>2];ba=O(O(O(ve*e)+O(ue*f))+O(te*g));Gd=L[d+460>>2];G=O(O(O(se*e)+O(re*f))+O(qe*g));Hd=L[d+508>>2];e=O(L[d+556>>2]*O(O(i*ea)+O(O($*k)+O(O(F*Ua)+O(O(aa*Va)+O(O(ba*Gd)+O(G*Hd)))))));Id=L[d+284>>2];Jd=L[d+332>>2];Kd=L[d+380>>2];Ld=L[d+428>>2];Md=L[d+476>>2];Nd=L[d+524>>2];f=O(L[d+572>>2]*O(O(i*Id)+O(O($*Jd)+O(O(F*Kd)+O(O(aa*Ld)+O(O(ba*Md)+O(G*Nd)))))));Od=L[d+300>>2];Pd=L[d+348>>2];Qd=L[d+396>>2];Rd=L[d+444>>2];Sd=L[d+492>>2];Td=L[d+540>>2];g=O(L[d+588>>2]*O(O(i*Od)+O(O($*Pd)+O(O(F*Qd)+O(O(aa*Rd)+O(O(ba*Sd)+O(G*Td)))))));j=i;E=H[a+364>>2];i=E&16?O(1):O(0);ea=O(j-O(i*O(O(ea*e)+O(O(Id*f)+O(Od*g)))));$=O($-O(i*O(O(k*e)+O(O(Jd*f)+O(Pd*g)))));F=O(F-O(i*O(O(Ua*e)+O(O(Kd*f)+O(Qd*g)))));aa=O(aa-O(i*O(O(Va*e)+O(O(Ld*f)+O(Rd*g)))));ba=O(ba-O(i*O(O(Gd*e)+O(O(Md*f)+O(Sd*g)))));G=O(G-O(i*O(O(Hd*e)+O(O(Nd*f)+O(Td*g)))));k=O(O(O(Ec*O(O(O(ta*ta)+O(sa*sa))+O(ua*ua)))+O(wc*O(O(ea*ea)+O(O($*$)+O(F*F)))))+O(O(Ac*O(O(O(va*va)+O(_*_))+O(wa*wa)))+O(sc*O(O(aa*aa)+O(O(ba*ba)+O(G*G))))));k=k>O(0)?O(O(1)/k):O(0);i=O(O(O(O(O(O(Nf*ta)+O(Jf*sa))+O(Rf*ua))-O(O(O(Bf*va)+O(xf*_))+O(Ff*wa)))+O(L[a+60>>2]-O(i*O(O(tf*e)+O(O(pf*f)+O(lf*g))))))+O(L[a+348>>2]*O(O(O(Xb*ea)+O(O(zb*$)+O(Ab*F)))-O(O(Bb*aa)+O(O(Cb*ba)+O(Db*G))))));g=L[a+268>>2];f=O(O(i-O(g*c))*L[a+124>>2]);e=L[a+332>>2];f=e>f?f:e;e=E&64?O(-3.4028234663852886e38):O(-e);Ua=L[a+316>>2];e=O(O(O(O(O(O(O(O(Ja*ta)+O(Fb*sa))+O(Gb*ua))-O(O(O(za*va)+O(Ya*_))+O(Za*wa)))+O(O(O(Eb*ea)+O(O(ya*$)+O(Xa*F)))-O(O(Wa*aa)+O(O(Ga*ba)+O(ib*G)))))*O(L[a+188>>2]*k))+O(k*O(g+(e>2]*Ua));f=L[a+300>>2];e=e>2];Va=e>f?e:f;L[a+316>>2]=Va;e=O(P+O(O(mc*X)-O(ic*ka)));f=O(Q+O(O(ic*ra)-O(pc*X)));g=O(z+O(O(pc*ka)-O(mc*ra)));i=O(O(O(ge*e)+O(bf*f))+O(af*g));k=O(O(O($e*e)+O(_e*f))+O(Ze*g));z=O(O(O(Ye*e)+O(Xe*f))+O(We*g));e=O(ng+O(O(bc*Y)-O(Zb*la)));f=O(og+O(O(Zb*ma)-O(fc*Y)));g=O(A+O(O(fc*la)-O(bc*ma)));P=O(O(O(Xd*e)+O(Fe*f))+O(Ee*g));Q=O(O(O(De*e)+O(Ce*f))+O(Be*g));A=O(O(O(Ae*e)+O(ze*f))+O(ye*g));e=O(Cg*O(O(i*fa)+O(O(l*k)+O(O(w*z)+O(O(Ta*P)+O(O(sd*Q)+O(td*A)))))));j=i;f=C&16?O(1):O(0);g=O(Dg*O(O(i*ud)+O(O(k*vd)+O(O(z*wd)+O(O(P*xd)+O(O(Q*yd)+O(A*zd)))))));i=O(Eg*O(O(i*Ad)+O(O(k*Bd)+O(O(z*Cd)+O(O(P*Dd)+O(O(Q*Ed)+O(A*Fd)))))));fa=O(j-O(f*O(O(fa*e)+O(O(ud*g)+O(Ad*i)))));k=O(k-O(f*O(O(l*e)+O(O(vd*g)+O(Bd*i)))));z=O(z-O(f*O(O(w*e)+O(O(wd*g)+O(Cd*i)))));P=O(P-O(f*O(O(Ta*e)+O(O(xd*g)+O(Dd*i)))));Q=O(Q-O(f*O(O(sd*e)+O(O(yd*g)+O(Ed*i)))));A=O(A-O(f*O(O(td*e)+O(O(zd*g)+O(Fd*i)))));l=O(O(O(Fc*O(O(O(ka*ka)+O(X*X))+O(ra*ra)))+O(xc*O(O(fa*fa)+O(O(k*k)+O(z*z)))))+O(O(Bc*O(O(O(la*la)+O(Y*Y))+O(ma*ma)))+O(tc*O(O(P*P)+O(O(Q*Q)+O(A*A))))));l=l>O(0)?O(O(1)/l):O(0);e=O(kg*O(O(O(O(O(O(O(Of*ka)+O(Kf*X))+O(Sf*ra))-O(O(O(Cf*la)+O(yf*Y))+O(Gf*ma)))+O(lg-O(f*O(O(uf*e)+O(O(qf*g)+O(mf*i))))))+O(mg*O(O(O(Wb*fa)+O(O(ub*k)+O(vb*z)))-O(O(wb*P)+O(O(xb*Q)+O(yb*A))))))-O(J*c)));e=ef?e:f))))+O(ig*Jc));e=eI?e:I;L[a+312>>2]=Ta;e=O(dg+O(O(nc*V)-O(jc*ha)));f=O(eg+O(O(jc*qa)-O(qc*V)));g=O(cg+O(O(qc*ha)-O(nc*qa)));i=O(O(O(he*e)+O(kf*f))+O(jf*g));I=O(O(O(hf*e)+O(gf*f))+O(ff*g));v=O(O(O(ef*e)+O(df*f))+O(cf*g));e=O(gg+O(O(cc*W)-O(_b*ia)));f=O(hg+O(O(_b*ja)-O(gc*W)));g=O(fg+O(O(gc*ia)-O(cc*ja)));J=O(O(O(Yd*e)+O(Ne*f))+O(Me*g));l=O(O(O(Le*e)+O(Ke*f))+O(Je*g));w=O(O(O(Ie*e)+O(He*f))+O(Ge*g));e=O(zg*O(O(i*m)+O(O(y*I)+O(O(Sa*v)+O(O(dd*J)+O(O(ed*l)+O(fd*w)))))));j=i;f=B&16?O(1):O(0);g=O(Ag*O(O(i*gd)+O(O(I*hd)+O(O(v*id)+O(O(J*jd)+O(O(l*kd)+O(w*ld)))))));i=O(Bg*O(O(i*md)+O(O(I*nd)+O(O(v*od)+O(O(J*pd)+O(O(l*qd)+O(w*rd)))))));ca=O(j-O(f*O(O(m*e)+O(O(gd*g)+O(md*i)))));I=O(I-O(f*O(O(y*e)+O(O(hd*g)+O(nd*i)))));v=O(v-O(f*O(O(Sa*e)+O(O(id*g)+O(od*i)))));J=O(J-O(f*O(O(dd*e)+O(O(jd*g)+O(pd*i)))));l=O(l-O(f*O(O(ed*e)+O(O(kd*g)+O(qd*i)))));w=O(w-O(f*O(O(fd*e)+O(O(ld*g)+O(rd*i)))));m=O(O(O(Gc*O(O(O(ha*ha)+O(V*V))+O(qa*qa)))+O(yc*O(O(ca*ca)+O(O(I*I)+O(v*v)))))+O(O(Cc*O(O(O(ia*ia)+O(W*W))+O(ja*ja)))+O(uc*O(O(J*J)+O(O(l*l)+O(w*w))))));m=m>O(0)?O(O(1)/m):O(0);e=O($f*O(O(O(O(O(O(O(Pf*ha)+O(Lf*V))+O(Tf*qa))-O(O(O(Df*ia)+O(zf*W))+O(Hf*ja)))+O(ag-O(f*O(O(vf*e)+O(O(rf*g)+O(nf*i))))))+O(bg*O(O(O(Vb*ca)+O(O(pb*I)+O(qb*v)))-O(O(rb*J)+O(O(sb*l)+O(tb*w))))))-O(N*c)));e=ef?e:f))))+O(Zf*Ic));e=eM?e:M;L[a+308>>2]=Sa;e=O(xg+O(O(oc*Z)-O(kc*na)));f=O(Wf+O(O(kc*oa)-O(rc*Z)));g=O(Vf+O(O(rc*na)-O(oc*oa)));i=O(O(O(Vd*e)+O(pe*f))+O(oe*g));M=O(O(O(ne*e)+O(me*f))+O(le*g));x=O(O(O(ke*e)+O(je*f))+O(ie*g));e=O(yg+O(O(dc*U)-O($b*ga)));f=O(Yf+O(O($b*pa)-O(Ra*U)));g=O(Xf+O(O(Ra*ga)-O(dc*pa)));N=O(O(O(Ud*e)+O(ee*f))+O(de*g));m=O(O(O(ce*e)+O(be*f))+O(ae*g));y=O(O(O($d*e)+O(_d*f))+O(Zd*g));e=O(ug*O(O(i*xa)+O(O(Oc*M)+O(O(Pc*x)+O(O(Qc*N)+O(O(Rc*m)+O(Sc*y)))))));j=i;f=D&16?O(1):O(0);g=O(vg*O(O(i*Tc)+O(O(M*Uc)+O(O(x*Vc)+O(O(N*Wc)+O(O(m*Xc)+O(y*Yc)))))));i=O(wg*O(O(i*Zc)+O(O(M*_c)+O(O(x*$c)+O(O(N*ad)+O(O(m*bd)+O(y*cd)))))));da=O(j-O(f*O(O(xa*e)+O(O(Tc*g)+O(Zc*i)))));M=O(M-O(f*O(O(Oc*e)+O(O(Uc*g)+O(_c*i)))));x=O(x-O(f*O(O(Pc*e)+O(O(Vc*g)+O($c*i)))));N=O(N-O(f*O(O(Qc*e)+O(O(Wc*g)+O(ad*i)))));m=O(m-O(f*O(O(Rc*e)+O(O(Xc*g)+O(bd*i)))));y=O(y-O(f*O(O(Sc*e)+O(O(Yc*g)+O(cd*i)))));xa=O(O(O(Hc*O(O(O(na*na)+O(Z*Z))+O(oa*oa)))+O(zc*O(O(da*da)+O(O(M*M)+O(x*x)))))+O(O(Dc*O(O(O(ga*ga)+O(U*U))+O(pa*pa)))+O(vc*O(O(N*N)+O(O(m*m)+O(y*y))))));xa=xa>O(0)?O(O(1)/xa):O(0);e=O(rg*O(O(O(O(O(O(O(Qf*na)+O(Mf*Z))+O(Uf*oa))-O(O(O(Ef*ga)+O(Af*U))+O(If*pa)))+O(sg-O(f*O(O(wf*e)+O(O(sf*g)+O(of*i))))))+O(tg*O(O(O(Tb*da)+O(O(lb*M)+O(mb*x)))-O(O(Ub*N)+O(O(nb*m)+O(ob*y))))))-O(Nc*c)));e=ef?e:f))))+O(pg*Mc));e=eKc?e:Kc;L[a+304>>2]=i;j=G;e=O(Va-Ua);G=O(sc*e);ib=O(ib-O(j*G));j=A;f=O(Ta-Jc);A=O(tc*f);jb=O(jb-O(j*A));j=w;g=O(Sa-Ic);w=O(uc*g);kb=O(kb-O(j*w));j=y;i=O(i-Mc);y=O(vc*i);gb=O(gb-O(j*y));j=F;F=O(wc*e);Xa=O(Xa+O(j*F));j=z;z=O(xc*f);$a=O($a+O(j*z));j=v;v=O(yc*g);db=O(db+O(j*v));j=x;x=O(zc*i);hb=O(hb+O(j*x));j=_;_=O(Ac*e);Ya=O(Ya-O(j*_));j=Y;Y=O(Bc*f);ab=O(ab-O(j*Y));j=W;W=O(Cc*g);eb=O(eb-O(j*W));j=U;U=O(Dc*i);Pb=O(Pb-O(j*U));e=O(Ec*e);Fb=O(Fb+O(sa*e));j=X;X=O(Fc*f);Ib=O(Ib+O(j*X));j=V;V=O(Gc*g);Lb=O(Lb+O(j*V));j=Z;Z=O(Hc*i);Rb=O(Rb+O(j*Z));Ga=O(Ga-O(ba*G));Ha=O(Ha-O(Q*A));Ia=O(Ia-O(l*w));Ea=O(Ea-O(m*y));ya=O(ya+O($*F));Aa=O(Aa+O(k*z));Ca=O(Ca+O(I*v));Fa=O(Fa+O(M*x));za=O(za-O(va*_));Ba=O(Ba-O(la*Y));Da=O(Da-O(ia*W));Ma=O(Ma-O(ga*U));Ja=O(Ja+O(ta*e));Ka=O(Ka+O(ka*X));La=O(La+O(ha*V));Na=O(Na+O(na*Z));Wa=O(Wa-O(aa*G));_a=O(_a-O(P*A));cb=O(cb-O(J*w));Nb=O(Nb-O(N*y));Eb=O(Eb+O(ea*F));Hb=O(Hb+O(fa*z));Kb=O(Kb+O(ca*v));Ob=O(Ob+O(da*x));Za=O(Za-O(wa*_));bb=O(bb-O(ma*Y));fb=O(fb-O(ja*W));Qb=O(Qb-O(pa*U));Gb=O(Gb+O(ua*e));Jb=O(Jb+O(ra*X));Mb=O(Mb+O(qa*V));Sb=O(Sb+O(oa*Z));a=a+368|0;b=b+1|0;if(b>>>0>2]){continue}break}}L[u+28>>2]=Fa;L[u+16>>2]=Ob;L[u+12>>2]=Na;L[u+8>>2]=Rb;L[u+4>>2]=Na;L[u>>2]=Sb;L[u+24>>2]=hb;L[u+20>>2]=Fa;L[s+28>>2]=Ca;L[s+24>>2]=db;L[s+20>>2]=Ca;L[s+16>>2]=Kb;L[s+12>>2]=La;L[s+8>>2]=Lb;L[s+4>>2]=La;L[s>>2]=Mb;L[q+28>>2]=Aa;L[q+24>>2]=$a;L[q+20>>2]=Aa;L[q+16>>2]=Hb;L[q+12>>2]=Ka;L[q+8>>2]=Ib;L[q+4>>2]=Ka;L[q>>2]=Jb;L[o+28>>2]=ya;L[o+24>>2]=Xa;L[o+20>>2]=ya;L[o+16>>2]=Eb;L[o+12>>2]=Ja;L[o+8>>2]=Fb;L[o+4>>2]=Ja;L[o>>2]=Gb;L[t+28>>2]=Ea;L[t+24>>2]=gb;L[t+20>>2]=Ea;L[t+16>>2]=Nb;L[t+12>>2]=Ma;L[t+8>>2]=Pb;L[t+4>>2]=Ma;L[t>>2]=Qb;L[r+28>>2]=Ia;L[r+24>>2]=kb;L[r+20>>2]=Ia;L[r+16>>2]=cb;L[r+12>>2]=Da;L[r+8>>2]=eb;L[r+4>>2]=Da;L[r>>2]=fb;L[p+28>>2]=Ha;L[p+24>>2]=jb;L[p+20>>2]=Ha;L[p+16>>2]=_a;L[p+12>>2]=Ba;L[p+8>>2]=ab;L[p+4>>2]=Ba;L[p>>2]=bb;L[n+28>>2]=Ga;L[n+24>>2]=ib;L[n+20>>2]=Ga;L[n+16>>2]=Wa;L[n+12>>2]=za;L[n+8>>2]=Ya;L[n+4>>2]=za;L[n>>2]=Za}Oa=h+224|0}function ab(){var a=0,b=0;Pa=137632;_(97504,17050,4,0);$(97504,54554,2);aa(97520,97532,97548,0,67051,2,67054,0,67054,0,3754,67056,1);a=o6(8);H[a>>2]=44;H[a+4>>2]=1;ba(97520,17062,4,97568,67059,3,a|0,0);a=o6(8);H[a>>2]=0;H[a+4>>2]=1;ba(97520,18393,2,97584,67065,4,a|0,0);aa(97592,97604,97620,97520,67051,8,67051,7,67051,6,3783,67056,5);a=o6(8);H[a>>2]=84;H[a+4>>2]=1;ba(97592,18501,3,97636,67158,9,a|0,0);a=o6(8);H[a>>2]=88;H[a+4>>2]=1;ba(97592,18513,4,97664,67059,10,a|0,0);a=o6(8);H[a>>2]=76;H[a+4>>2]=1;ba(97592,18076,2,97680,67185,11,a|0,0);a=o6(8);H[a>>2]=80;H[a+4>>2]=1;ba(97592,18062,4,97696,67059,12,a|0,0);aa(97712,97724,97740,97592,67051,16,67051,15,67051,14,20607,67056,13);aa(97756,97768,97784,97592,67051,20,67051,19,67051,18,1413,67056,17);a=o6(8);H[a>>2]=148;H[a+4>>2]=1;ba(97756,16879,3,97800,67333,21,a|0,0);a=o6(8);H[a>>2]=140;H[a+4>>2]=1;ba(97756,16897,3,97800,67333,21,a|0,0);a=o6(8);H[a>>2]=168;H[a+4>>2]=1;ba(97756,1098,4,97824,67059,22,a|0,0);a=o6(8);H[a>>2]=164;H[a+4>>2]=1;ba(97756,1117,2,97848,67185,23,a|0,0);a=o6(8);H[a>>2]=160;H[a+4>>2]=1;ba(97756,1136,4,97824,67059,22,a|0,0);a=o6(8);H[a>>2]=156;H[a+4>>2]=1;ba(97756,1154,2,97848,67185,23,a|0,0);a=o6(8);H[a>>2]=172;H[a+4>>2]=1;ba(97756,1076,3,97800,67333,21,a|0,0);a=o6(8);H[a>>2]=228;H[a+4>>2]=1;ba(97756,1172,3,97800,67333,21,a|0,0);a=o6(8);H[a>>2]=116;H[a+4>>2]=1;ba(97756,3076,3,97800,67333,21,a|0,0);a=o6(4);H[a>>2]=24;ba(97756,18026,3,97856,67354,25,a|0,0);a=o6(8);H[a>>2]=112;H[a+4>>2]=1;ba(97756,18044,2,97868,67185,26,a|0,0);a=o6(8);H[a>>2]=128;H[a+4>>2]=1;ba(97756,3885,3,97876,67354,27,a|0,0);a=o6(8);H[a>>2]=132;H[a+4>>2]=1;ba(97756,3911,2,97848,67185,23,a|0,0);a=o6(4);H[a>>2]=28;ba(97756,17239,3,97856,67354,25,a|0,0);a=o6(4);H[a>>2]=29;ba(97756,19279,3,97856,67354,25,a|0,0);a=o6(8);H[a>>2]=208;H[a+4>>2]=1;ba(97756,16973,4,97888,67059,30,a|0,0);a=o6(4);H[a>>2]=31;ba(97756,3406,3,97912,67158,32,a|0,0);a=o6(4);H[a>>2]=33;ba(97756,20821,3,97924,67390,34,a|0,0);aa(97936,97948,97964,97756,67051,38,67051,37,67051,36,20639,67056,35);a=o6(8);H[a>>2]=260;H[a+4>>2]=1;ba(97936,19499,3,97980,67333,39,a|0,0);a=o6(8);H[a>>2]=304;H[a+4>>2]=1;ba(97936,2774,4,98e3,67059,40,a|0,0);a=o6(8);H[a>>2]=296;H[a+4>>2]=1;ba(97936,11191,2,98016,67065,41,a|0,0);a=o6(8);H[a>>2]=256;H[a+4>>2]=1;ba(97936,16914,2,98024,67185,42,a|0,0);a=o6(8);H[a>>2]=300;H[a+4>>2]=1;ba(97936,11180,2,98016,67065,41,a|0,0);a=o6(4);H[a>>2]=43;ba(97936,2645,4,98032,67059,44,a|0,0);a=o6(4);H[a>>2]=45;ba(97936,3459,3,98056,67354,46,a|0,0);_(97904,16957,4,0);$(97904,54985,1);$(97904,54658,2);$(97904,54965,4);$(97904,54768,8);$(97904,54588,16);$(97904,54941,32);$(97904,54880,64);$(97904,54636,128);_(98068,19131,4,0);$(98068,54928,1);$(98068,54621,2);$(98068,54582,0);_(98076,19221,4,0);$(98076,54858,0);$(98076,54822,1);_(98084,17099,4,0);$(98084,54698,1);$(98084,54738,2);$(98084,54752,4);aa(98092,98100,98116,0,67051,48,67054,0,67054,0,4317,67056,47);a=o6(8);H[a>>2]=16;H[a+4>>2]=1;ba(98092,4261,3,98132,67158,49,a|0,0);a=o6(8);H[a>>2]=0;H[a+4>>2]=1;ba(98092,18393,2,98176,67065,50,a|0,0);aa(98168,98184,98200,0,67051,52,67054,0,67054,0,20518,67056,51);a=o6(4);H[a>>2]=44;b=o6(4);H[b>>2]=44;ca(98168,2405,97120,67834,54,a|0,97120,67333,53,b|0);a=o6(4);H[a>>2]=48;b=o6(4);H[b>>2]=48;ca(98168,2544,97120,67834,54,a|0,97120,67333,53,b|0);a=o6(4);H[a>>2]=52;b=o6(4);H[b>>2]=52;ca(98168,2530,97120,67834,54,a|0,97120,67333,53,b|0);a=o6(4);H[a>>2]=56;b=o6(4);H[b>>2]=56;ca(98168,2589,97120,67834,54,a|0,97120,67333,53,b|0);a=o6(4);H[a>>2]=60;b=o6(4);H[b>>2]=60;ca(98168,2620,97120,67834,54,a|0,97120,67333,53,b|0);a=o6(4);H[a>>2]=64;b=o6(4);H[b>>2]=64;ca(98168,1056,97120,67834,54,a|0,97120,67333,53,b|0);a=o6(4);H[a>>2]=68;b=o6(4);H[b>>2]=68;ca(98168,17173,97120,67834,54,a|0,97120,67333,53,b|0);a=o6(4);H[a>>2]=72;b=o6(4);H[b>>2]=72;ca(98168,13418,97120,67834,54,a|0,97120,67333,53,b|0);a=o6(4);H[a>>2]=55;ba(98168,19202,3,98216,67158,56,a|0,0);a=o6(4);H[a>>2]=57;ba(98168,11993,3,98228,67158,58,a|0,0);a=o6(4);H[a>>2]=92;b=o6(4);H[b>>2]=92;ca(98168,4188,96956,67185,60,a|0,96956,67354,59,b|0);aa(98268,98280,98296,98168,67051,64,67051,63,67051,62,20535,67056,61);da(98268,1,98312,67051,66,65);a=o6(4);H[a>>2]=104;b=o6(4);H[b>>2]=104;ca(98268,2732,97120,67834,68,a|0,97120,67333,67,b|0);a=o6(4);H[a>>2]=108;b=o6(4);H[b>>2]=108;ca(98268,2513,97120,67834,68,a|0,97120,67333,67,b|0);a=o6(4);H[a>>2]=112;b=o6(4);H[b>>2]=112;ca(98268,19118,98068,67185,70,a|0,98068,67354,69,b|0);aa(98340,98352,98368,98168,67051,74,67051,73,67051,72,20498,67056,71);da(98340,1,98384,67051,76,75);a=o6(4);H[a>>2]=112;b=o6(4);H[b>>2]=112;ca(98340,2343,97120,67834,78,a|0,97120,67333,77,b|0);a=o6(4);H[a>>2]=104;b=o6(4);H[b>>2]=104;ca(98340,2564,97120,67834,78,a|0,97120,67333,77,b|0);a=o6(4);H[a>>2]=108;b=o6(4);H[b>>2]=108;ca(98340,2310,97120,67834,78,a|0,97120,67333,77,b|0);aa(98144,98152,98412,0,67051,80,67054,0,67054,0,4213,67056,79);a=o6(4);H[a>>2]=81;ba(98144,18393,2,98428,67065,82,a|0,0);a=o6(4);H[a>>2]=83;ba(98144,17191,5,98448,68104,84,a|0,0);a=o6(8);H[a>>2]=12;H[a+4>>2]=1;ba(98144,11408,3,98468,67158,85,a|0,0);a=o6(8);H[a>>2]=16;H[a+4>>2]=1;ba(98144,11420,2,98488,67185,86,a|0,0);a=o6(8);H[a>>2]=32;H[a+4>>2]=1;ba(98144,2631,3,98496,67333,87,a|0,0);a=o6(4);H[a>>2]=88;ba(98144,19202,3,98508,67354,89,a|0,0);a=o6(8);H[a>>2]=52;H[a+4>>2]=1;ba(98144,2603,3,98496,67333,87,a|0,0);a=o6(8);H[a>>2]=60;H[a+4>>2]=1;ba(98144,11508,3,98520,67354,90,a|0,0);a=o6(8);H[a>>2]=68;H[a+4>>2]=1;ba(98144,2416,3,98496,67333,87,a|0,0);a=o6(4);H[a>>2]=91;ba(98144,2739,3,98532,67333,92,a|0,0);a=o6(4);H[a>>2]=93;ba(98144,2520,3,98532,67333,92,a|0,0);a=o6(4);H[a>>2]=94;ba(98144,2575,3,98532,67333,92,a|0,0);a=o6(4);H[a>>2]=95;ba(98144,2325,3,98532,67333,92,a|0,0);a=o6(4);H[a>>2]=96;ba(98144,2361,3,98532,67333,92,a|0,0);a=o6(4);H[a>>2]=97;ba(98144,54912,3,98544,67354,98,a|0,0);a=o6(8);H[a>>2]=28;H[a+4>>2]=1;ba(98144,3762,2,98556,67185,99,a|0,0);aa(98564,98576,98592,0,67051,101,67054,0,67054,0,2054,67056,100);a=o6(8);H[a>>2]=24;H[a+4>>2]=1;ba(98564,3084,4,98608,67059,102,a|0,0);a=o6(4);H[a>>2]=103;ba(98564,18013,5,98624,68190,104,a|0,0);a=o6(8);H[a>>2]=52;H[a+4>>2]=1;ba(98564,19265,4,98656,68197,105,a|0,0);a=o6(4);H[a>>2]=106;ba(98564,17032,4,98672,67059,107,a|0,0);a=o6(8);H[a>>2]=72;H[a+4>>2]=1;ba(98564,56030,3,98688,67333,108,a|0,0);a=o6(8);H[a>>2]=80;H[a+4>>2]=1;ba(98564,56047,3,98688,67333,108,a|0,0);a=o6(8);H[a>>2]=88;H[a+4>>2]=1;ba(98564,55895,3,98688,67333,108,a|0,0);a=o6(8);H[a>>2]=96;H[a+4>>2]=1;ba(98564,55912,3,98688,67333,108,a|0,0);a=o6(8);H[a>>2]=0;H[a+4>>2]=1;ba(98564,18393,2,98700,67065,109,a|0,0);aa(98708,98720,98736,98564,67051,113,67051,112,67051,111,2192,67056,110);aa(98752,98764,98780,98564,67051,117,67051,116,67051,115,2120,67056,114);a=o6(8);H[a>>2]=120;H[a+4>>2]=1;ba(98752,19065,2,98796,67834,118,a|0,0);a=o6(8);H[a>>2]=124;H[a+4>>2]=1;ba(98752,1064,2,98796,67834,118,a|0,0);a=o6(4);H[a>>2]=119;ba(98752,2449,5,98816,68356,120,a|0,0);a=o6(4);H[a>>2]=121;ba(98752,2392,6,98848,68363,122,a|0,0);a=o6(8);H[a>>2]=136;H[a+4>>2]=1;ba(98752,1200,4,98880,68371,123,a|0,0);a=o6(8);H[a>>2]=144;H[a+4>>2]=1;ba(98752,2430,3,98896,67333,124,a|0,0);a=o6(8);H[a>>2]=152;H[a+4>>2]=1;ba(98752,11281,3,98896,67333,124,a|0,0);a=o6(4);H[a>>2]=125;ba(98752,16990,4,98912,68371,126,a|0,0);aa(98928,98940,98956,98564,67051,130,67051,129,67051,128,2156,67056,127);a=o6(8);H[a>>2]=124;H[a+4>>2]=1;ba(98928,19386,3,98972,67333,131,a|0,0);a=o6(8);H[a>>2]=132;H[a+4>>2]=1;ba(98928,19345,3,98972,67333,131,a|0,0);a=o6(8);H[a>>2]=140;H[a+4>>2]=1;ba(98928,19401,3,98972,67333,131,a|0,0);a=o6(8);H[a>>2]=148;H[a+4>>2]=1;ba(98928,2948,3,98972,67333,131,a|0,0);a=o6(8);H[a>>2]=156;H[a+4>>2]=1;ba(98928,16868,3,98972,67333,131,a|0,0);a=o6(4);H[a>>2]=132;ba(98928,17011,4,98992,68371,133,a|0,0);ea(97840,55787,68458,135,67056,134);a=o6(4);H[a>>2]=0;b=o6(4);H[b>>2]=0;fa(97840,1910,97120,67834,137,a|0,97120,67333,136,b|0);a=o6(4);H[a>>2]=4;b=o6(4);H[b>>2]=4;fa(97840,1423,97120,67834,137,a|0,97120,67333,136,b|0);a=o6(4);H[a>>2]=8;b=o6(4);H[b>>2]=8;fa(97840,1024,97120,67834,137,a|0,97120,67333,136,b|0);ga(97840);aa(99040,99064,99080,0,67051,153,67054,0,67054,0,3741,67056,152);da(99040,1,99096,67051,155,154);a=o6(8);H[a+4>>2]=0;H[a>>2]=156;ba(99040,13408,3,99100,67354,157,a|0,0);a=o6(8);H[a+4>>2]=0;H[a>>2]=158;ba(99040,17184,4,99120,67059,159,a|0,0);a=o6(8);H[a+4>>2]=0;H[a>>2]=160;ba(99040,17186,2,99136,67185,161,a|0,0);a=o6(4);H[a>>2]=162;ba(99040,2660,3,99144,67158,163,a|0,0);a=o6(4);H[a>>2]=164;ba(99040,2641,4,99168,68735,165,a|0,0);ea(98048,2710,68458,139,67056,138);a=o6(4);H[a>>2]=0;b=o6(4);H[b>>2]=0;fa(98048,1910,97120,67834,141,a|0,97120,67333,140,b|0);a=o6(4);H[a>>2]=4;b=o6(4);H[b>>2]=4;fa(98048,1423,97120,67834,141,a|0,97120,67333,140,b|0);a=o6(4);H[a>>2]=8;b=o6(4);H[b>>2]=8;fa(98048,1024,97120,67834,141,a|0,97120,67333,140,b|0);a=o6(4);H[a>>2]=12;b=o6(4);H[b>>2]=12;fa(98048,1912,97120,67834,141,a|0,97120,67333,140,b|0);ga(98048);ea(97688,11792,68458,143,67056,142);a=o6(4);H[a>>2]=16;b=o6(4);H[b>>2]=16;fa(97688,11674,97840,67185,145,a|0,97840,67354,144,b|0);a=o6(4);H[a>>2]=0;b=o6(4);H[b>>2]=0;fa(97688,11552,98048,67185,147,a|0,98048,67354,146,b|0);ga(97688);ea(98480,55794,68458,149,67056,148);a=o6(4);H[a>>2]=0;b=o6(4);H[b>>2]=0;fa(98480,1910,97132,68741,151,a|0,97132,68745,150,b|0);a=o6(4);H[a>>2]=8;b=o6(4);H[b>>2]=8;fa(98480,1423,97132,68741,151,a|0,97132,68745,150,b|0);a=o6(4);H[a>>2]=16;b=o6(4);H[b>>2]=16;fa(98480,1024,97132,68741,151,a|0,97132,68745,150,b|0);ga(98480);_(99184,54571,4,0);$(99184,1045,0);ha(20571,4,99200,68735,168,167);ha(17147,3,99272,67158,170,169);ha(17125,4,99296,67059,172,171);ha(4384,2,99312,67185,174,173);ha(4375,3,99320,67354,176,175);aa(99332,99340,99356,0,67051,178,67054,0,67054,0,2035,67056,177);a=o6(4);H[a>>2]=0;b=o6(4);H[b>>2]=0;ca(99332,11399,97840,67185,180,a|0,97840,67354,179,b|0);a=o6(4);H[a>>2]=16;b=o6(4);H[b>>2]=16;ca(99332,11959,97840,67185,180,a|0,97840,67354,179,b|0);a=o6(4);H[a>>2]=32;b=o6(4);H[b>>2]=32;ca(99332,18090,97840,67185,180,a|0,97840,67354,179,b|0);a=o6(4);H[a>>2]=12;b=o6(4);H[b>>2]=12;ca(99332,11604,97120,67834,182,a|0,97120,67333,181,b|0);aa(99396,99420,99436,0,67051,301,67054,0,67054,0,2029,67056,300);da(99396,1,99452,67051,303,302);a=o6(8);H[a+4>>2]=0;H[a>>2]=304;ba(99396,13408,3,99456,67354,305,a|0,0);a=o6(8);H[a+4>>2]=0;H[a>>2]=306;ba(99396,17184,4,99472,67059,307,a|0,0);a=o6(8);H[a+4>>2]=0;H[a>>2]=308;ba(99396,17186,2,99488,67185,309,a|0,0);a=o6(4);H[a>>2]=310;ba(99396,2660,3,99496,67158,311,a|0,0);a=o6(4);H[a>>2]=312;ba(99396,2641,4,99520,68735,313,a|0,0);aa(99536,99544,99560,0,67051,184,67054,0,67054,0,4105,67056,183);da(99536,2,99576,67185,186,185);a=o6(4);H[a>>2]=4;b=o6(4);H[b>>2]=4;ca(99536,20476,97040,67185,188,a|0,97040,67354,187,b|0);a=o6(4);H[a>>2]=8;b=o6(4);H[b>>2]=8;ca(99536,20467,97040,67185,188,a|0,97040,67354,187,b|0);a=o6(4);H[a>>2]=12;b=o6(4);H[b>>2]=12;ca(99536,1976,96980,67185,190,a|0,96980,67354,189,b|0);a=o6(8);H[a+4>>2]=0;H[a>>2]=191;ba(99536,2901,2,99608,67185,192,a|0,0);aa(99248,99256,99616,0,67051,194,67054,0,67054,0,13301,67056,193);aa(99672,99684,99700,99248,67051,198,67051,197,67051,196,4126,67056,195);a=o6(4);H[a>>2]=199;ba(99672,11451,2,99716,67065,200,a|0,0);ia(99248,2382,2,99724,67185,202,201);ia(99248,19444,3,99836,67158,204,203);aa(99216,99224,99880,0,67051,206,67054,0,67054,0,20559,67056,205);da(99216,2,99896,67185,208,207);a=o6(4);H[a>>2]=0;b=o6(4);H[b>>2]=0;ca(99216,1026,97840,67185,210,a|0,97840,67354,209,b|0);aa(99904,99912,99928,0,67051,212,67054,0,67054,0,18966,67056,211);a=o6(8);H[a>>2]=240;H[a+4>>2]=1;ba(99904,1034,3,99944,67354,213,a|0,0);a=o6(8);H[a>>2]=44;H[a+4>>2]=1;ba(99904,3796,4,99968,67059,214,a|0,0);a=o6(8);H[a>>2]=56;H[a+4>>2]=1;ba(99904,3771,4,100016,67059,215,a|0,0);a=o6(4);H[a>>2]=216;ba(99904,2888,3,100032,67158,217,a|0,0);a=o6(4);H[a>>2]=218;ba(99904,17440,4,100048,68371,219,a|0,0);a=o6(4);H[a>>2]=220;ba(99904,19039,8,100064,70144,221,a|0,0);a=o6(4);H[a>>2]=222;ba(99904,19053,9,100224,70196,223,a|0,0);a=o6(4);H[a>>2]=224;ba(99904,1402,7,100288,70230,225,a|0,0);a=o6(4);H[a>>2]=226;ba(99904,4337,2,100328,67185,227,a|0,0);a=o6(8);H[a>>2]=8;H[a+4>>2]=1;ba(99904,18393,2,100336,67065,228,a|0,0);aa(100116,100344,100360,0,67051,230,67054,0,67054,0,2499,67056,229);a=o6(4);H[a>>2]=16;b=o6(4);H[b>>2]=16;ca(100116,11399,97840,67185,232,a|0,97840,67354,231,b|0);a=o6(4);H[a>>2]=28;b=o6(4);H[b>>2]=28;ca(100116,11959,97840,67185,232,a|0,97840,67354,231,b|0);a=o6(4);H[a>>2]=40;b=o6(4);H[b>>2]=40;ca(100116,19336,97120,67834,234,a|0,97120,67333,233,b|0);aa(100128,100376,100392,100116,67051,238,67051,237,67051,236,2462,67056,235);da(100128,1,100408,67051,240,239);a=o6(4);H[a>>2]=241;ba(100128,18492,2,100412,67185,242,a|0,0);a=o6(4);H[a>>2]=243;ba(100128,3762,2,100436,67185,244,a|0,0);a=o6(4);H[a>>2]=245;ba(100128,19374,2,100444,67834,246,a|0,0);a=o6(4);H[a>>2]=247;ba(100128,11966,2,100452,67185,248,a|0,0);a=o6(4);H[a>>2]=249;ba(100128,11420,2,100452,67185,248,a|0,0);a=o6(4);H[a>>2]=250;ba(100128,1742,2,100460,67185,251,a|0,0);aa(100268,100468,100484,100116,67051,255,67051,254,67051,253,2475,67056,252);da(100268,1,100500,67051,257,256);a=o6(4);H[a>>2]=258;ba(100268,18492,2,100504,67185,259,a|0,0);a=o6(4);H[a>>2]=260;ba(100268,3762,2,100512,67185,261,a|0,0);a=o6(4);H[a>>2]=262;ba(100268,19374,2,100520,67834,263,a|0,0);a=o6(4);H[a>>2]=264;ba(100268,11966,2,100528,67185,265,a|0,0);a=o6(4);H[a>>2]=266;ba(100268,11420,2,100528,67185,265,a|0,0);a=o6(4);H[a>>2]=267;ba(100268,1742,2,100536,67185,268,a|0,0);aa(100140,100544,100560,0,67051,270,67054,0,67054,0,20774,67056,269);da(100140,1,100576,67051,272,271);a=o6(4);H[a>>2]=16;b=o6(4);H[b>>2]=16;ca(100140,3387,100580,67185,274,a|0,100580,67354,273,b|0);aa(100580,100588,100604,0,67051,276,67054,0,67054,0,3393,67056,275);da(100580,2,100620,67185,278,277);_(100628,16945,4,0);$(100628,54977,1);$(100628,54996,2);$(100628,54727,4);$(100628,54715,8);$(100628,54627,16);$(100628,54812,32);aa(100148,100636,100652,0,67051,280,67054,0,67054,0,13386,67056,279);aa(100188,100200,100668,100148,67051,284,67051,283,67051,282,4159,67056,281);a=o6(4);H[a>>2]=285;ba(100188,11451,2,100684,67065,286,a|0,0);ia(100148,2382,2,100692,67185,288,287);ia(100148,19444,3,99836,67158,204,289);aa(100316,100788,100804,0,67051,291,67054,0,67054,0,2486,67056,290);da(100316,1,100820,67051,293,292);a=o6(4);H[a>>2]=294;ba(100316,18492,2,100824,67185,295,a|0,0);a=o6(4);H[a>>2]=296;ba(100316,3762,2,100832,67185,297,a|0,0);a=o6(4);H[a>>2]=298;ba(100316,1742,2,100840,67185,299,a|0,0);ha(18994,4,100848,68735,315,314);aa(98240,98252,100880,0,67051,317,67054,0,67054,0,11982,67056,316);a=o6(8);H[a>>2]=0;H[a+4>>2]=1;ba(98240,18393,2,100896,67065,318,a|0,0);a=o6(8);H[a>>2]=32;H[a+4>>2]=1;ba(98240,11489,3,100904,67333,319,a|0,0);a=o6(8);H[a>>2]=40;H[a+4>>2]=1;ba(98240,11471,3,100904,67333,319,a|0,0);a=o6(8);H[a>>2]=48;H[a+4>>2]=1;ba(98240,11304,3,100904,67333,319,a|0,0);a=o6(4);H[a>>2]=320;ba(98240,19179,3,100916,67354,321,a|0,0);a=o6(4);H[a>>2]=322;ba(98240,19153,3,100916,67354,321,a|0,0);aa(100952,100976,100992,0,67051,386,67054,0,67054,0,11976,67056,385);da(100952,1,101008,67051,388,387);a=o6(8);H[a+4>>2]=0;H[a>>2]=389;ba(100952,13408,3,101012,67354,390,a|0,0);a=o6(8);H[a+4>>2]=0;H[a>>2]=391;ba(100952,17184,4,101024,67059,392,a|0,0);a=o6(8);H[a+4>>2]=0;H[a>>2]=393;ba(100952,17186,2,101040,67185,394,a|0,0);a=o6(4);H[a>>2]=395;ba(100952,2660,3,101048,67158,396,a|0,0);a=o6(4);H[a>>2]=397;ba(100952,2641,4,101072,68735,398,a|0,0);aa(97648,100420,101088,0,67051,324,67054,0,67054,0,18484,67056,323);a=o6(4);H[a>>2]=325;ba(97648,18393,2,101104,67065,326,a|0,0);a=o6(4);H[a>>2]=327;ba(97648,18076,2,101112,67185,328,a|0,0);a=o6(8);H[a>>2]=116;H[a+4>>2]=1;ba(97648,2603,3,101120,67333,329,a|0,0);a=o6(8);H[a>>2]=152;H[a+4>>2]=1;ba(97648,3424,3,101132,67354,330,a|0,0);a=o6(8);H[a>>2]=76;H[a+4>>2]=1;ba(97648,18013,3,101152,67354,331,a|0,0);a=o6(8);H[a>>2]=36;H[a+4>>2]=1;ba(97648,1242,3,101164,67354,332,a|0,0);a=o6(4);H[a>>2]=333;ba(97648,11993,3,101176,67354,334,a|0,0);a=o6(4);H[a>>2]=335;ba(97648,54912,3,101188,67354,336,a|0,0);a=o6(4);H[a>>2]=337;ba(97648,54920,2,101200,67185,338,a|0,0);aa(101144,101208,101224,0,67051,340,67054,0,67054,0,3484,67056,339);da(101144,2,101240,67185,342,341);aa(100260,101248,101264,0,67051,344,67054,0,67054,0,1231,67056,343);a=o6(4);H[a>>2]=345;ba(100260,19360,4,101280,68735,346,a|0,0);aa(101296,101308,101324,100260,67051,350,67051,349,67051,348,1217,67056,347);da(101296,1,101340,67051,352,351);da(101296,4,101344,71359,354,353);a=o6(4);H[a>>2]=4;b=o6(4);H[b>>2]=4;ca(101296,2876,97840,67185,356,a|0,97840,67354,355,b|0);aa(101360,101372,101388,100260,67051,360,67051,359,67051,358,1254,67056,357);da(101360,1,101404,67051,362,361);da(101360,2,101408,71449,364,363);a=o6(4);H[a>>2]=4;b=o6(4);H[b>>2]=4;ca(101360,2732,97120,67834,366,a|0,97120,67333,365,b|0);aa(101416,101428,101444,100260,67051,370,67051,369,67051,368,1287,67056,367);da(101416,3,101460,71540,372,371);a=o6(4);H[a>>2]=4;b=o6(4);H[b>>2]=4;ca(101416,2732,97120,67834,374,a|0,97120,67333,373,b|0);a=o6(4);H[a>>2]=8;b=o6(4);H[b>>2]=8;ca(101416,2564,97120,67834,374,a|0,97120,67333,373,b|0);aa(101472,101484,101500,100260,67051,378,67051,377,67051,376,1271,67056,375);da(101472,1,101516,67051,380,379);aa(100872,101520,101536,0,67051,382,67054,0,67054,0,18986,67056,381);da(100872,5,101552,71663,384,383);ja(54789,97028,67174656);aa(101580,101592,101608,0,67051,400,67054,0,67054,0,19438,67056,399);a=o6(8);H[a>>2]=16;H[a+4>>2]=1;ba(101580,2675,4,101632,68735,401,a|0,0);ha(11699,4,101664,68735,403,402);ha(3352,3,101720,67158,405,404);ha(3369,1,99812,67056,407,406);ha(17823,3,101732,67158,409,408);ha(3695,6,101792,72043,411,410);aa(101704,101832,101848,0,67051,413,67054,0,67054,0,13327,67056,412);aa(101864,101876,101892,101704,67051,417,67051,416,67051,415,3866,67056,414);da(101864,1,101908,67051,419,418);aa(99240,101936,101952,0,67051,421,67054,0,67054,0,19081,67056,420);da(99240,1,101968,67051,423,422);a=o6(4);H[a>>2]=4;b=o6(4);H[b>>2]=4;ca(99240,20246,97120,67834,425,a|0,97120,67333,424,b|0);a=o6(4);H[a>>2]=0;b=o6(4);H[b>>2]=0;ca(99240,13431,97120,67834,425,a|0,97120,67333,424,b|0);aa(101680,101688,101972,0,67051,427,67054,0,67054,0,11686,67056,426);a=o6(8);H[a>>2]=0;H[a+4>>2]=1;ba(101680,18393,2,101988,67065,428,a|0,0);aa(100864,101816,101996,0,67051,430,67054,0,67054,0,3685,67056,429);a=o6(8);H[a>>2]=8;H[a+4>>2]=1;ba(100864,18393,2,102012,67065,431,a|0,0);a=o6(8);H[a>>2]=20;H[a+4>>2]=1;ba(100864,19099,2,102020,67185,432,a|0,0);a=o6(8);H[a>>2]=72;H[a+4>>2]=1;ba(100864,18974,3,102028,67158,433,a|0,0);a=o6(8);H[a+4>>2]=0;H[a>>2]=434;ba(100864,18525,6,102048,72043,435,a|0,0);a=o6(8);H[a>>2]=120;H[a+4>>2]=1;ba(100864,12005,5,102080,72309,436,a|0,0);a=o6(8);H[a>>2]=88;H[a+4>>2]=1;ba(100864,20654,3,102100,67158,437,a|0,0);a=o6(8);H[a>>2]=84;H[a+4>>2]=1;ba(100864,20621,3,102112,67158,438,a|0,0);a=o6(4);H[a>>2]=439;ba(100864,2205,8,102128,72316,440,a|0,0);a=o6(4);H[a>>2]=441;ba(100864,2136,8,102160,72316,442,a|0,0);a=o6(4);H[a>>2]=443;ba(100864,2099,8,102192,72316,444,a|0,0);a=o6(4);H[a>>2]=445;ba(100864,2172,8,102256,72316,446,a|0,0);a=o6(4);H[a>>2]=447;ba(100864,2239,8,102288,72316,448,a|0,0);a=o6(4);H[a>>2]=449;ba(100864,2270,8,102352,72316,450,a|0,0);aa(101712,102412,102428,0,67051,452,67054,0,67054,0,13347,67056,451);aa(130432,102444,102460,101712,67051,456,67051,455,67051,454,13363,67056,453);da(130432,1,102476,67051,458,457);aa(101744,102480,102496,0,67051,460,67054,0,67054,0,4278,67056,459);aa(99984,102512,99996,0,67051,462,67054,0,67054,0,18451,67056,461);aa(102528,102536,102552,0,67051,464,67054,0,67054,0,12881,67056,463);aa(101752,101764,102568,101744,67051,468,67051,467,67051,466,4294,67056,465);aa(100768,102584,102600,0,67051,470,67054,0,67054,0,20792,67056,469);aa(102616,102624,102640,0,67051,472,67054,0,67054,0,3433,67056,471);aa(102656,102664,102680,0,67051,474,67054,0,67054,0,3445,67056,473);_(102696,17075,4,0);_(102704,17086,4,0);S6(134032,1,1024);H[33766]=0;H[33767]=0;H[33764]=0;H[33765]=0;L5();H[34012]=135280;H[33994]=42}function cY(a,b,c,d){var e=0,f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=0,m=O(0),n=O(0),o=O(0),p=0,q=0,r=O(0),s=0,t=O(0),u=0,v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),F=O(0),G=O(0),I=O(0),J=O(0),K=O(0),M=O(0),N=O(0),Q=O(0),R=O(0),T=O(0),U=O(0),V=O(0),X=O(0),Y=O(0),Z=O(0),_=O(0),$=O(0),aa=0,ba=0,ca=O(0),da=0,ea=0,fa=0,ga=O(0);l=Oa-128|0;Oa=l;aa=c+12|0;ba=c+24|0;a:{if(!d_(a+56|0,a+72|0,c,aa,ba)){break a}i=L[c+16>>2];k=L[c>>2];h=L[c+12>>2];f=L[c+4>>2];g=L[c+8>>2];L[l+48>>2]=L[c+20>>2]-g;L[l+44>>2]=i-f;L[l+40>>2]=h-k;i=L[c+28>>2];h=L[c+24>>2];L[l+32>>2]=L[c+32>>2]-g;L[l+28>>2]=i-f;L[l+24>>2]=h-k;p=H[a+52>>2];k=L[p+16>>2];f=L[p>>2];i=L[p+12>>2];h=L[p+4>>2];L[l+120>>2]=L[p+20>>2]-L[p+8>>2];L[l+116>>2]=k-h;L[l+112>>2]=i-f;q=l+40|0;s=l+24|0;da=l+60|0;ea=l+56|0;fa=l+52|0;e=Oa-128|0;Oa=e;u=l+112|0;r=L[u+8>>2];t=L[u>>2];m=L[u+4>>2];x=O(O(r*r)+O(O(t*t)+O(m*m)));b:{if(x>2]=0}k=L[c>>2];i=L[q>>2];f=L[c+4>>2];h=L[q+4>>2];g=L[c+8>>2];L[e+120>>2]=L[q+8>>2]+g;L[e+116>>2]=h+f;L[e+112>>2]=i+k;i=L[s>>2];h=L[s+4>>2];L[e+104>>2]=g+L[s+8>>2];L[e+100>>2]=f+h;L[e+96>>2]=k+i;qZ(e+72|0,p,c,e+112|0,e+96|0,e+32|0,e+16|0);if(ea){L[ea>>2]=L[e+32>>2]}if(fa){L[fa>>2]=L[e+16>>2]}k=O(L[e+80>>2]-L[p+8>>2]);f=O(k*k);k=O(L[e+72>>2]-L[p>>2]);h=O(k*k);k=O(L[e+76>>2]-L[p+4>>2]);k=O(f+O(h+O(k*k)));break b}k=L[q>>2];j=L[s+4>>2];n=L[s>>2];i=L[q+4>>2];f=O(O(k*j)-O(n*i));o=L[s+8>>2];h=L[q+8>>2];g=O(O(i*o)-O(j*h));y=O(O(h*n)-O(o*k));v=O(O(f*r)+O(O(g*t)+O(m*y)));c:{if(O(v*v)>=O(O(x*O(9.999999974752427e-7))*O(O(f*f)+O(O(g*g)+O(y*y))))){f=O(O(r*o)+O(O(t*n)+O(m*j)));w=O(O(r*h)+O(O(t*k)+O(m*i)));y=O(O(h*o)+O(O(k*n)+O(i*j)));Y=O(O(f*w)-O(y*x));E=O(O(h*h)+O(O(k*k)+O(i*i)));F=O(O(o*o)+O(O(n*n)+O(j*j)));Z=O(O(E*F)-O(y*y));v=O(O(w*F)-O(f*y));M=O(O(E*f)-O(w*y));g=O(O(O(x*Z)-O(v*w))-O(f*M));g=g==O(0)?O(0):O(O(1)/g);G=L[c+8>>2];X=L[p+8>>2];A=O(G-X);I=L[c>>2];Q=L[p>>2];B=O(I-Q);J=L[c+4>>2];$=L[p+4>>2];C=O(J-$);R=O(O(A*o)+O(O(B*n)+O(C*j)));T=O(g*O(-R));D=O(O(A*r)+O(O(B*t)+O(m*C)));U=O(D*g);z=O(-f);K=O(O(x*F)+O(f*z));N=O(O(A*h)+O(O(B*k)+O(C*i)));f=O(g*O(-N));g=O(O(Y*T)+O(O(v*U)+O(K*f)));L[e+64>>2]=g;v=O(O(M*T)+O(O(Z*U)+O(v*f)));L[e+68>>2]=v;K=w;w=O(-w);f=O(O(O(O(x*E)+O(K*w))*T)+O(O(M*U)+O(Y*f)));L[e+60>>2]=f;if(v>2]=0;d:{if(!(f>2]=0;if(!(f>2]=L[e+56>>2];L[e+64>>2]=L[e+52>>2];H[e+60>>2]=0;k=f}f=L[c>>2];h=L[q>>2];i=L[c+4>>2];g=L[q+4>>2];j=L[c+8>>2];L[e+120>>2]=L[q+8>>2]+j;L[e+116>>2]=g+i;L[e+112>>2]=h+f;h=L[s>>2];g=L[s+4>>2];L[e+104>>2]=j+L[s+8>>2];L[e+100>>2]=i+g;L[e+96>>2]=f+h;qZ(e+72|0,p,c,e+112|0,e+96|0,e+32|0,e+16|0);i=L[e+32>>2];L[e+52>>2]=i;h=L[e+16>>2];L[e+48>>2]=h;f=L[p+8>>2];g=L[p>>2];j=L[p+4>>2];H[e+56>>2]=0;f=O(L[e+80>>2]-f);n=O(f*f);f=O(L[e+72>>2]-g);g=O(f*f);f=O(L[e+76>>2]-j);f=O(n+O(g+O(f*f)));if(!(f>2]=i;H[e+68>>2]=0;L[e+60>>2]=h;k=f;break c}if(f>2]=0;f=vZ(p,c,q,s,e+52|0,e+48|0);H[e+56>>2]=0;if(!(f>2]=0;L[e+64>>2]=L[e+52>>2];L[e+60>>2]=L[e+48>>2];k=f;break c}k=vZ(p,c,q,s,e- -64|0,e+60|0);H[e+68>>2]=0;break c}e:{if(g>2]=0;f=L[q>>2];h=L[c>>2];i=L[q+4>>2];g=L[c+4>>2];j=L[q+8>>2];L[e+120>>2]=L[c+8>>2]+j;L[e+116>>2]=g+i;L[e+112>>2]=h+f;h=L[s>>2];g=L[s+4>>2];L[e+104>>2]=L[s+8>>2]-j;L[e+100>>2]=g-i;L[e+96>>2]=h-f;f=uZ(p,u,e+112|0,e+96|0,e+56|0,e+48|0);i=L[e+48>>2];h=O(O(1)-i);L[e+52>>2]=h;if(!(f>2]=L[e+56>>2];L[e+64>>2]=h;L[e+60>>2]=i;k=f;break e}if(f>2]=0;f=L[q>>2];h=L[c>>2];i=L[q+4>>2];g=L[c+4>>2];j=L[q+8>>2];L[e+120>>2]=L[c+8>>2]+j;L[e+116>>2]=g+i;L[e+112>>2]=h+f;h=L[s>>2];g=L[s+4>>2];L[e+104>>2]=L[s+8>>2]-j;L[e+100>>2]=g-i;L[e+96>>2]=h-f;f=uZ(p,u,e+112|0,e+96|0,e+56|0,e+48|0);i=L[e+48>>2];h=O(O(1)-i);L[e+52>>2]=h;if(!(f>2]=L[e+56>>2];L[e+64>>2]=h;L[e+60>>2]=i;k=f;break e}L[e+120>>2]=G+h;L[e+116>>2]=J+i;L[e+112>>2]=I+k;L[e+104>>2]=o-h;L[e+100>>2]=j-i;L[e+96>>2]=n-k;k=uZ(p,u,e+112|0,e+96|0,e+68|0,e+60|0);L[e+64>>2]=O(1)-L[e+60>>2]}f=L[c>>2];h=L[q>>2];i=L[c+4>>2];g=L[q+4>>2];j=L[c+8>>2];L[e+120>>2]=L[q+8>>2]+j;L[e+116>>2]=g+i;L[e+112>>2]=h+f;h=L[s>>2];g=L[s+4>>2];L[e+104>>2]=j+L[s+8>>2];L[e+100>>2]=i+g;L[e+96>>2]=f+h;qZ(e+72|0,p,c,e+112|0,e+96|0,e+32|0,e+16|0);i=L[e+32>>2];L[e+52>>2]=i;h=L[e+16>>2];L[e+48>>2]=h;f=O(L[e+80>>2]-L[p+8>>2]);j=O(f*f);f=O(L[e+72>>2]-L[p>>2]);g=O(f*f);f=O(L[e+76>>2]-L[p+4>>2]);f=O(j+O(g+O(f*f)));if(!(f>2]=i;H[e+68>>2]=0;L[e+60>>2]=h;k=f;break c}M=O(g+f);if(v<=O(1)){if(M<=O(1)){if(g>2]=0;if(!(f>2]=0;if(!(f>2]=L[e+56>>2];L[e+64>>2]=L[e+52>>2];H[e+60>>2]=0;k=f;break c}if(f>2]=0;break c}k=O(-D);k=O(O(O(A*A)+O(O(B*B)+O(C*C)))+O(O(f*O(O(R+R)+O(O(F*f)+O(O(z*v)+O(y*g)))))+O(O(v*O(O(k+k)+O(O(z*f)+O(O(x*v)+O(g*w)))))+O(g*O(O(N+N)+O(O(y*f)+O(O(w*v)+O(E*g))))))));break c}if(g>2]=0;f=L[q>>2];h=L[c>>2];i=L[q+4>>2];g=L[c+4>>2];j=L[q+8>>2];L[e+120>>2]=L[c+8>>2]+j;L[e+116>>2]=g+i;L[e+112>>2]=h+f;h=L[s>>2];g=L[s+4>>2];L[e+104>>2]=L[s+8>>2]-j;L[e+100>>2]=g-i;L[e+96>>2]=h-f;f=uZ(p,u,e+112|0,e+96|0,e+56|0,e+48|0);i=L[e+48>>2];h=O(O(1)-i);L[e+52>>2]=h;if(!(f>2]=L[e+56>>2];L[e+64>>2]=h;L[e+60>>2]=i;k=f;break c}if(f>2]=0;f=L[q>>2];h=L[c>>2];i=L[q+4>>2];g=L[c+4>>2];j=L[q+8>>2];L[e+120>>2]=L[c+8>>2]+j;L[e+116>>2]=g+i;L[e+112>>2]=h+f;h=L[s>>2];g=L[s+4>>2];L[e+104>>2]=L[s+8>>2]-j;L[e+100>>2]=g-i;L[e+96>>2]=h-f;f=uZ(p,u,e+112|0,e+96|0,e+56|0,e+48|0);i=L[e+48>>2];h=O(O(1)-i);L[e+52>>2]=h;if(!(f>2]=L[e+56>>2];L[e+64>>2]=h;L[e+60>>2]=i;k=f;break c}L[e+120>>2]=G+h;L[e+116>>2]=J+i;L[e+112>>2]=I+k;L[e+104>>2]=o-h;L[e+100>>2]=j-i;L[e+96>>2]=n-k;k=uZ(p,u,e+112|0,e+96|0,e+68|0,e+60|0);L[e+64>>2]=O(1)-L[e+60>>2];break c}if(M<=O(1)){if(g>2]=0;f:{if(!(f>2]=0;if(!(f>2]=L[e+56>>2];L[e+64>>2]=L[e+52>>2];H[e+60>>2]=0;k=f}f=L[u>>2];i=L[p>>2];h=L[u+4>>2];g=L[p+4>>2];L[e+120>>2]=L[p+8>>2]+L[u+8>>2];L[e+116>>2]=g+h;L[e+112>>2]=i+f;f=vZ(e+112|0,c,q,s,e+52|0,e+48|0);H[e+56>>2]=1065353216;if(!(f>2]=1065353216;L[e+64>>2]=L[e+52>>2];L[e+60>>2]=L[e+48>>2];k=f;break c}if(f>2]=0;f=L[u>>2];i=L[p>>2];h=L[u+4>>2];g=L[p+4>>2];L[e+120>>2]=L[p+8>>2]+L[u+8>>2];L[e+116>>2]=g+h;L[e+112>>2]=i+f;f=vZ(e+112|0,c,q,s,e+52|0,e+48|0);H[e+56>>2]=1065353216;if(!(f>2]=1065353216;L[e+64>>2]=L[e+52>>2];L[e+60>>2]=L[e+48>>2];k=f;break c}L[e+120>>2]=r+X;L[e+116>>2]=m+$;L[e+112>>2]=t+Q;k=vZ(e+112|0,c,q,s,e- -64|0,e+60|0);H[e+68>>2]=1065353216;break c}g:{if(g>2]=0;f=L[q>>2];h=L[c>>2];i=L[q+4>>2];g=L[c+4>>2];j=L[q+8>>2];L[e+120>>2]=L[c+8>>2]+j;L[e+116>>2]=g+i;L[e+112>>2]=h+f;h=L[s>>2];g=L[s+4>>2];L[e+104>>2]=L[s+8>>2]-j;L[e+100>>2]=g-i;L[e+96>>2]=h-f;f=uZ(p,u,e+112|0,e+96|0,e+56|0,e+48|0);i=L[e+48>>2];h=O(O(1)-i);L[e+52>>2]=h;if(!(f>2]=L[e+56>>2];L[e+64>>2]=h;L[e+60>>2]=i;k=f;break g}if(f>2]=0;f=L[q>>2];h=L[c>>2];i=L[q+4>>2];g=L[c+4>>2];j=L[q+8>>2];L[e+120>>2]=L[c+8>>2]+j;L[e+116>>2]=g+i;L[e+112>>2]=h+f;h=L[s>>2];g=L[s+4>>2];L[e+104>>2]=L[s+8>>2]-j;L[e+100>>2]=g-i;L[e+96>>2]=h-f;f=uZ(p,u,e+112|0,e+96|0,e+56|0,e+48|0);i=L[e+48>>2];h=O(O(1)-i);L[e+52>>2]=h;if(!(f>2]=L[e+56>>2];L[e+64>>2]=h;L[e+60>>2]=i;k=f;break g}L[e+120>>2]=G+h;L[e+116>>2]=J+i;L[e+112>>2]=I+k;L[e+104>>2]=o-h;L[e+100>>2]=j-i;L[e+96>>2]=n-k;k=uZ(p,u,e+112|0,e+96|0,e+68|0,e+60|0);L[e+64>>2]=O(1)-L[e+60>>2]}f=L[u>>2];i=L[p>>2];h=L[u+4>>2];g=L[p+4>>2];L[e+40>>2]=L[p+8>>2]+L[u+8>>2];L[e+36>>2]=g+h;L[e+32>>2]=i+f;f=L[c>>2];h=L[q>>2];i=L[c+4>>2];g=L[q+4>>2];j=L[c+8>>2];L[e+120>>2]=L[q+8>>2]+j;L[e+116>>2]=g+i;L[e+112>>2]=h+f;h=L[s>>2];g=L[s+4>>2];L[e+104>>2]=j+L[s+8>>2];L[e+100>>2]=i+g;L[e+96>>2]=f+h;qZ(e+72|0,e+32|0,c,e+112|0,e+96|0,e+16|0,e);i=L[e+16>>2];L[e+52>>2]=i;h=L[e>>2];L[e+48>>2]=h;H[e+56>>2]=1065353216;f=O(L[e+80>>2]-L[e+40>>2]);j=O(f*f);f=O(L[e+72>>2]-L[e+32>>2]);g=O(f*f);f=O(L[e+76>>2]-L[e+36>>2]);f=O(j+O(g+O(f*f)));if(!(f>2]=i;H[e+68>>2]=1065353216;L[e+60>>2]=h;k=f;break c}k=uZ(p,u,c,q,e+68|0,e- -64|0);H[e+60>>2]=0;f=uZ(p,u,c,s,e+56|0,e+48|0);H[e+52>>2]=0;if(f>2]=L[e+56>>2];H[e+64>>2]=0;L[e+60>>2]=L[e+48>>2];k=f}f=L[q>>2];h=L[c>>2];i=L[q+4>>2];g=L[c+4>>2];j=L[q+8>>2];L[e+40>>2]=L[c+8>>2]+j;L[e+36>>2]=g+i;L[e+32>>2]=h+f;h=L[s>>2];g=L[s+4>>2];L[e+24>>2]=L[s+8>>2]-j;L[e+20>>2]=g-i;L[e+16>>2]=h-f;f=uZ(p,u,e+32|0,e+16|0,e+56|0,e+48|0);i=L[e+48>>2];h=O(O(1)-i);L[e+52>>2]=h;if(f>2]=L[e+56>>2];L[e+64>>2]=h;L[e+60>>2]=i;k=f}f=L[c>>2];h=L[q>>2];i=L[c+4>>2];g=L[q+4>>2];j=L[c+8>>2];L[e+120>>2]=L[q+8>>2]+j;L[e+116>>2]=g+i;L[e+112>>2]=h+f;h=L[s>>2];g=L[s+4>>2];L[e+104>>2]=j+L[s+8>>2];L[e+100>>2]=i+g;L[e+96>>2]=f+h;qZ(e+72|0,p,c,e+112|0,e+96|0,e,e+92|0);j=L[e>>2];L[e+52>>2]=j;n=L[e+92>>2];L[e+48>>2]=n;i=L[p+8>>2];h=L[p>>2];g=L[p+4>>2];H[e+56>>2]=0;f=O(L[e+80>>2]-i);m=O(f*f);f=O(L[e+72>>2]-h);o=O(f*f);f=O(L[e+76>>2]-g);f=O(m+O(o+O(f*f)));if(f>2]=j;H[e+68>>2]=0;L[e+60>>2]=n;k=f}f=L[u>>2];j=L[u+4>>2];L[e+8>>2]=i+L[u+8>>2];L[e+4>>2]=g+j;L[e>>2]=h+f;f=L[c>>2];h=L[q>>2];i=L[c+4>>2];g=L[q+4>>2];j=L[c+8>>2];L[e+120>>2]=L[q+8>>2]+j;L[e+116>>2]=g+i;L[e+112>>2]=h+f;h=L[s>>2];g=L[s+4>>2];L[e+104>>2]=j+L[s+8>>2];L[e+100>>2]=i+g;L[e+96>>2]=f+h;qZ(e+72|0,e,c,e+112|0,e+96|0,e+92|0,e+88|0);i=L[e+92>>2];L[e+52>>2]=i;h=L[e+88>>2];L[e+48>>2]=h;H[e+56>>2]=1065353216;f=O(L[e+80>>2]-L[e+8>>2]);j=O(f*f);f=O(L[e+72>>2]-L[e>>2]);g=O(f*f);f=O(L[e+76>>2]-L[e+4>>2]);f=O(j+O(g+O(f*f)));if(!(f>2]=i;H[e+68>>2]=1065353216;L[e+60>>2]=h;k=f}if(da){L[da>>2]=L[e+68>>2]}if(ea){L[ea>>2]=L[e+64>>2]}if(fa){L[fa>>2]=L[e+60>>2]}k=O(S(k,O(0)))}Oa=e+128|0;x=L[a+88>>2];if(k>=O(x*x)){break a}f=L[l+40>>2];h=L[l+28>>2];j=L[l+24>>2];g=L[l+44>>2];i=O(O(f*h)-O(j*g));n=L[l+32>>2];m=h;h=L[l+48>>2];g=O(O(g*n)-O(m*h));j=O(O(h*j)-O(n*f));y=L[c+8>>2];v=L[c>>2];w=L[c+4>>2];if(O(O(i*L[a- -64>>2])+O(O(g*L[a+56>>2])+O(j*L[a+60>>2])))O(10000001111620804e-22)){k=L[l+52>>2];h:{i:{j:{k:{l:{m:{f=L[l+56>>2];if(f==O(0)){if(k==O(0)){break m}if(k!=O(1)){break j}d=!(d&48);break h}if(f==O(1)){if(k==O(0)){break l}d=0;break h}if(k==O(0)){break k}e=1;if(!(O(f+k)>=O(.9998999834060669))){break i}d=!(d&16);break h}d=!(d&40);break h}d=!(d&24);break h}d=!(d&8);break h}e=!(d&32)}d=e}n:{if(d){k=O(0);f=O(0);h=O(0);n=O(O(i*i)+O(O(g*g)+O(j*j)));if(n>O(0)){f=O(O(1)/O(W(n)));h=O(i*f);k=O(g*f);f=O(j*f)}L[l+72>>2]=h;L[l+68>>2]=f;L[l+64>>2]=k;d=H[a+52>>2];k=L[d+20>>2];f=L[d+16>>2];i=L[d+12>>2];break n}h=L[l+56>>2];g=L[l+52>>2];j=O(O(O(1)-h)-g);d=H[a+52>>2];i=L[d+8>>2];f=L[l+60>>2];k=L[d+20>>2];n=O(O(i+O(f*O(k-i)))-O(O(g*L[c+32>>2])+O(O(j*L[c+8>>2])+O(h*L[c+20>>2]))));o=L[d>>2];i=L[d+12>>2];o=O(O(o+O(f*O(i-o)))-O(O(g*L[c+24>>2])+O(O(j*L[c>>2])+O(h*L[c+12>>2]))));r=L[d+4>>2];m=f;f=L[d+16>>2];h=O(O(r+O(m*O(f-r)))-O(O(g*L[c+28>>2])+O(O(j*L[c+4>>2])+O(h*L[c+16>>2]))));g=O(W(O(O(n*n)+O(O(o*o)+O(h*h)))));if(g==O(0)){break a}g=O(O(1)/g);L[l+72>>2]=n*g;L[l+68>>2]=h*g;L[l+64>>2]=o*g}m=L[a+92>>2];h=L[a+96>>2];e=H[a>>2];g=L[d>>2];L[l+112>>2]=g;j=L[d+4>>2];L[l+116>>2]=j;n=L[d+8>>2];L[l+120>>2]=n;L[l+100>>2]=f;L[l+96>>2]=i;L[l+104>>2]=k;o=O(k-n);r=O(i-g);t=O(f-j);x=O(W(O(O(o*o)+O(O(r*r)+O(t*t)))));if(x>O(0)){w=n;n=O(O(.009999999776482582)/x);o=O(o*n);L[l+120>>2]=w-o;w=j;j=O(t*n);L[l+116>>2]=w-j;t=g;g=O(r*n);L[l+112>>2]=t-g;L[l+104>>2]=k+o;L[l+100>>2]=f+j;L[l+96>>2]=i+g}k=O(h+m);o:{if(!$Z(c,aa,l- -64|0,l+112|0,l+96|0,l+8|0,l+80|0)){break o}C=L[l+8>>2];if(!(C>2];if(d>>>0>63){break o}r=L[a+36>>2];t=L[a+32>>2];m=L[a+28>>2];x=L[a+24>>2];y=L[a+20>>2];v=L[a+16>>2];w=L[a+12>>2];A=L[a+8>>2];B=L[a+4>>2];f=L[l+72>>2];i=L[l+68>>2];g=L[l+64>>2];j=L[l+88>>2];n=L[l+84>>2];o=L[l+80>>2];E=L[a+40>>2];F=L[a+44>>2];G=L[a+48>>2];H[e+4096>>2]=d+1;d=e+(d<<6)|0;H[d+52>>2]=b;L[d+12>>2]=C-h;L[d+8>>2]=O(O(w*g)+O(x*i))+O(r*f);L[d+4>>2]=O(O(A*g)+O(y*i))+O(t*f);L[d>>2]=O(O(B*g)+O(v*i))+O(m*f);L[d+24>>2]=G+O(O(O(o*w)+O(n*x))+O(j*r));L[d+20>>2]=F+O(O(O(o*A)+O(n*y))+O(j*t));L[d+16>>2]=E+O(O(O(o*B)+O(n*v))+O(j*m))}p:{if(!$Z(aa,ba,l- -64|0,l+112|0,l+96|0,l+8|0,l+80|0)){break p}C=L[l+8>>2];if(!(C>2];if(d>>>0>63){break p}r=L[a+36>>2];t=L[a+32>>2];m=L[a+28>>2];x=L[a+24>>2];y=L[a+20>>2];v=L[a+16>>2];w=L[a+12>>2];A=L[a+8>>2];B=L[a+4>>2];f=L[l+72>>2];i=L[l+68>>2];g=L[l+64>>2];j=L[l+88>>2];n=L[l+84>>2];o=L[l+80>>2];E=L[a+40>>2];F=L[a+44>>2];G=L[a+48>>2];H[e+4096>>2]=d+1;d=e+(d<<6)|0;H[d+52>>2]=b;L[d+12>>2]=C-h;L[d+8>>2]=O(O(w*g)+O(x*i))+O(r*f);L[d+4>>2]=O(O(A*g)+O(y*i))+O(t*f);L[d>>2]=O(O(B*g)+O(v*i))+O(m*f);L[d+24>>2]=G+O(O(O(o*w)+O(n*x))+O(j*r));L[d+20>>2]=F+O(O(O(o*A)+O(n*y))+O(j*t));L[d+16>>2]=E+O(O(O(o*B)+O(n*v))+O(j*m))}p=a+4|0;q:{if(!$Z(ba,c,l- -64|0,l+112|0,l+96|0,l+8|0,l+80|0)){break q}B=L[l+8>>2];if(!(B>2];if(d>>>0>63){break q}o=L[a+36>>2];r=L[a+32>>2];t=L[a+28>>2];m=L[a+24>>2];x=L[a+20>>2];y=L[a+16>>2];v=L[a+12>>2];w=L[a+8>>2];A=L[a+4>>2];k=L[l+72>>2];f=L[l+68>>2];i=L[l+64>>2];g=L[l+88>>2];j=L[l+84>>2];n=L[l+80>>2];C=L[a+40>>2];E=L[a+44>>2];F=L[a+48>>2];H[e+4096>>2]=d+1;d=e+(d<<6)|0;H[d+52>>2]=b;L[d+12>>2]=B-h;L[d+8>>2]=O(O(v*i)+O(m*f))+O(o*k);L[d+4>>2]=O(O(w*i)+O(x*f))+O(r*k);L[d>>2]=O(O(A*i)+O(y*f))+O(t*k);L[d+24>>2]=F+O(O(O(n*v)+O(j*m))+O(g*o));L[d+20>>2]=E+O(O(O(n*w)+O(j*x))+O(g*r));L[d+16>>2]=C+O(O(O(n*A)+O(j*y))+O(g*t))}dY(p,H[a>>2],H[a+52>>2],L[a+96>>2],c,l- -64|0,b,L[a+92>>2]);break a}f=O(0);e=H[a+52>>2];i=O(0);k=O(0);R=L[c+12>>2];h=O(v-R);A=L[c+28>>2];j=O(w-A);B=L[c+24>>2];r=O(v-B);T=L[c+16>>2];g=O(w-T);n=O(O(h*j)-O(r*g));C=L[c+32>>2];t=O(y-C);m=j;U=L[c+20>>2];j=O(y-U);o=O(O(g*t)-O(m*j));r=O(O(j*r)-O(t*h));t=O(O(n*n)+O(O(o*o)+O(r*r)));if(t>O(0)){f=O(O(1)/O(W(t)));k=O(n*f);i=O(r*f);f=O(o*f)}E=L[e+8>>2];F=L[e>>2];G=L[e+4>>2];t=O(O(E*k)+O(O(F*f)+O(i*G)));I=L[e+20>>2];J=L[e+12>>2];M=L[e+16>>2];m=O(O(I*k)+O(O(J*f)+O(i*M)));e=t>m;z=O(x+(e?t:m));n=O(O(y*k)+O(O(v*f)+O(w*i)));o=O(O(U*k)+O(O(R*f)+O(T*i)));N=nN?N:r;if(zo?n:o;n=n>r?n:r;o=O((e?m:t)-x);if(nO(0)){n=O(O(1)/O(W(ga)));t=O(N*n);r=O(Z*n);o=O(Y*n)}n=e?m:z;X=O(-r);Q=O(-o);$=O(-t);r:{if(!(d&8)){break r}m=O(O(o*g)+O(h*X));D=O(O(r*j)+O(g*$));z=O(O(t*h)+O(j*Q));if(!(O(P(m))>O(9.999999974752427e-7)?1:O(P(D))>O(9.999999974752427e-7)|O(P(z))>O(9.999999974752427e-7))){break r}g=O(0);j=O(0);h=O(0);K=O(O(m*m)+O(O(D*D)+O(z*z)));if(K>O(0)){g=O(O(1)/O(W(K)));h=O(m*g);j=O(z*g);g=O(D*g)}K=O(O(E*h)+O(O(F*g)+O(G*j)));_=O(O(I*h)+O(O(J*g)+O(M*j)));e=K>_;ca=O(x+(e?K:_));m=O(O(y*h)+O(O(v*g)+O(w*j)));z=O(O(U*h)+O(O(R*g)+O(T*j)));V=mV?V:D;if(caz?m:z;m=m>D?m:D;z=O((e?_:K)-x);if(mD?D:m;if(!(mO(9.999999974752427e-7)?1:O(P(D))>O(9.999999974752427e-7)|O(P(z))>O(9.999999974752427e-7))){break s}g=O(0);j=O(0);h=O(0);K=O(O(m*m)+O(O(D*D)+O(z*z)));if(K>O(0)){g=O(O(1)/O(W(K)));h=O(m*g);j=O(z*g);g=O(D*g)}K=O(O(E*h)+O(O(F*g)+O(G*j)));_=O(O(I*h)+O(O(J*g)+O(M*j)));e=K>_;ca=O(x+(e?K:_));m=O(O(y*h)+O(O(v*g)+O(w*j)));z=O(O(U*h)+O(O(R*g)+O(T*j)));V=mV?V:D;if(caz?m:z;m=m>D?m:D;z=O((e?_:K)-x);if(mD?D:m;if(!(mO(9.999999974752427e-7)?1:O(P(j))>O(9.999999974752427e-7)|O(P(g))>O(9.999999974752427e-7))){break t}o=O(0);r=O(0);t=O(0);m=O(O(h*h)+O(O(j*j)+O(g*g)));if(m>O(0)){o=h;h=O(O(1)/O(W(m)));t=O(o*h);r=O(g*h);o=O(j*h)}m=O(O(E*t)+O(O(F*o)+O(G*r)));z=O(O(I*t)+O(O(J*o)+O(M*r)));d=m>z;X=O(x+(d?m:z));h=O(O(y*t)+O(O(v*o)+O(w*r)));g=O(O(U*t)+O(O(R*o)+O(T*r)));Q=g>h?h:g;j=O(O(C*t)+O(O(B*o)+O(A*r)));Q=j>Q?Q:j;if(Xj?h:j;g=O((d?z:m)-x);if(hj?j:h)>2]=k;i=d?O(-i):i;L[l+12>>2]=i;f=d?O(-f):f;L[l+8>>2]=f;h=L[a+96>>2];d=H[a>>2];L[l+120>>2]=E;L[l+116>>2]=G;L[l+112>>2]=F;L[l+104>>2]=I;L[l+100>>2]=M;L[l+96>>2]=J;g=O(W(ga));if(g>O(0)){g=O(O(.009999999776482582)/g);j=O(N*g);L[l+120>>2]=E-j;n=O(Z*g);L[l+116>>2]=G-n;g=O(Y*g);L[l+112>>2]=F-g;L[l+104>>2]=I+j;L[l+100>>2]=M+n;L[l+96>>2]=J+g}o=O(-k);L[l+72>>2]=o;r=O(-i);L[l+68>>2]=r;t=O(-f);L[l+64>>2]=t;u:{if(!$Z(c,aa,l- -64|0,l+112|0,l+96|0,l+92|0,l+80|0)){break u}e=H[d+4096>>2];if(e>>>0>63){break u}m=L[a+36>>2];x=L[a+32>>2];y=L[a+28>>2];v=L[a+24>>2];w=L[a+20>>2];A=L[a+16>>2];B=L[a+12>>2];C=L[a+8>>2];E=L[a+4>>2];g=L[l+88>>2];j=L[l+84>>2];n=L[l+80>>2];F=L[a+40>>2];G=L[a+44>>2];I=L[a+48>>2];J=L[l+92>>2];H[d+4096>>2]=e+1;e=d+(e<<6)|0;H[e+52>>2]=b;L[e+12>>2]=-O(h+J);L[e+8>>2]=O(O(f*B)+O(i*v))+O(k*m);L[e+4>>2]=O(O(f*C)+O(i*w))+O(k*x);L[e>>2]=O(O(f*E)+O(i*A))+O(k*y);L[e+24>>2]=I+O(O(O(n*B)+O(j*v))+O(g*m));L[e+20>>2]=G+O(O(O(n*C)+O(j*w))+O(g*x));L[e+16>>2]=F+O(O(O(n*E)+O(j*A))+O(g*y))}L[l+72>>2]=o;L[l+68>>2]=r;L[l+64>>2]=t;v:{if(!$Z(aa,ba,l- -64|0,l+112|0,l+96|0,l+92|0,l+80|0)){break v}e=H[d+4096>>2];if(e>>>0>63){break v}m=L[a+36>>2];x=L[a+32>>2];y=L[a+28>>2];v=L[a+24>>2];w=L[a+20>>2];A=L[a+16>>2];B=L[a+12>>2];C=L[a+8>>2];E=L[a+4>>2];g=L[l+88>>2];j=L[l+84>>2];n=L[l+80>>2];F=L[a+40>>2];G=L[a+44>>2];I=L[a+48>>2];J=L[l+92>>2];H[d+4096>>2]=e+1;e=d+(e<<6)|0;H[e+52>>2]=b;L[e+12>>2]=-O(h+J);L[e+8>>2]=O(O(f*B)+O(i*v))+O(k*m);L[e+4>>2]=O(O(f*C)+O(i*w))+O(k*x);L[e>>2]=O(O(f*E)+O(i*A))+O(k*y);L[e+24>>2]=I+O(O(O(n*B)+O(j*v))+O(g*m));L[e+20>>2]=G+O(O(O(n*C)+O(j*w))+O(g*x));L[e+16>>2]=F+O(O(O(n*E)+O(j*A))+O(g*y))}p=a+4|0;L[l+72>>2]=o;L[l+68>>2]=r;L[l+64>>2]=t;w:{if(!$Z(ba,c,l- -64|0,l+112|0,l+96|0,l+92|0,l+80|0)){break w}e=H[d+4096>>2];if(e>>>0>63){break w}o=L[a+36>>2];r=L[a+32>>2];t=L[a+28>>2];m=L[a+24>>2];x=L[a+20>>2];y=L[a+16>>2];v=L[a+12>>2];w=L[a+8>>2];A=L[a+4>>2];g=L[l+88>>2];j=L[l+84>>2];n=L[l+80>>2];B=L[a+40>>2];C=L[a+44>>2];E=L[a+48>>2];F=L[l+92>>2];H[d+4096>>2]=e+1;d=d+(e<<6)|0;H[d+52>>2]=b;L[d+12>>2]=-O(h+F);L[d+8>>2]=O(O(f*v)+O(i*m))+O(k*o);L[d+4>>2]=O(O(f*w)+O(i*x))+O(k*r);L[d>>2]=O(O(f*A)+O(i*y))+O(k*t);L[d+24>>2]=E+O(O(O(n*v)+O(j*m))+O(g*o));L[d+20>>2]=C+O(O(O(n*w)+O(j*x))+O(g*r));L[d+16>>2]=B+O(O(O(n*A)+O(j*y))+O(g*t))}dY(p,H[a>>2],H[a+52>>2],L[a+96>>2],c,l+8|0,b,L[a+92>>2])}Oa=l+128|0}function kS(a,b,c,d,e,f,g,h,i){var j=0,k=0,l=0,m=0,n=0,o=O(0),p=O(0),q=O(0),r=O(0),s=0,t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=0,B=0,C=0,D=O(0),E=O(0),Q=0,R=O(0),S=O(0),T=O(0),U=0,V=0,W=O(0),X=0,Y=0,Z=0,_=0,$=0,aa=O(0),ba=0,ca=0,da=O(0),ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0;j=Oa-272|0;Oa=j;l=H[b+520>>2];if(I[l+140|0]){l=H[b+520>>2]}M[b+488>>3]=M[b+488>>3]+ +f;ba=H[l+12>>2];ca=H[l+16>>2];H[b+92>>2]=ca;H[b+88>>2]=ba;H[b+328>>2]=H[b+8>>2];L[b+332>>2]=L[b+12>>2];k=H[b+20>>2];H[b+336>>2]=H[b+16>>2];H[b+340>>2]=k;k=H[b+28>>2];H[b+344>>2]=H[b+24>>2];H[b+348>>2]=k;k=H[b+36>>2];H[b+352>>2]=H[b+32>>2];H[b+356>>2]=k;k=I[b+65|0]|I[b+66|0]<<8|(I[b+67|0]<<16|I[b+68|0]<<24);m=I[b+61|0]|I[b+62|0]<<8|(I[b+63|0]<<16|I[b+64|0]<<24);F[b+381|0]=m;F[b+382|0]=m>>>8;F[b+383|0]=m>>>16;F[b+384|0]=m>>>24;F[b+385|0]=k;F[b+386|0]=k>>>8;F[b+387|0]=k>>>16;F[b+388|0]=k>>>24;k=H[b+60>>2];H[b+376>>2]=H[b+56>>2];H[b+380>>2]=k;k=H[b+52>>2];H[b+368>>2]=H[b+48>>2];H[b+372>>2]=k;k=H[b+44>>2];H[b+360>>2]=H[b+40>>2];H[b+364>>2]=k;H[b+412>>2]=H[b+412>>2]|128;f=L[l+132>>2];L[b+380>>2]=f*f;F[b+384|0]=I[l+136|0];F[b+386|0]=I[l+137|0];F[b+387|0]=I[l+138|0];k=I[l+139|0];H[b+404>>2]=0;H[b+408>>2]=0;F[b+388|0]=k;f=L[b+472>>2];o=L[b+468>>2];p=L[d>>2];q=L[d+4>>2];L[j+264>>2]=L[d+8>>2]+L[b+476>>2];L[j+260>>2]=q+f;L[j+256>>2]=p+o;H[b+476>>2]=0;H[b+468>>2]=0;H[b+472>>2]=0;X=b+252|0;d=H[X>>2];a:{if(!d){break a}k=b+240|0;if(!H[k>>2]){break a}b:{c:{d=Ra[H[H[d>>2]+92>>2]](d)|0;if(!d){break c}l=0;while(1){d:{H[j+152>>2]=0;m=H[X>>2];Ra[H[H[m>>2]+96>>2]](m,j+152|0,1,l)|0;if(H[k>>2]==H[j+152>>2]){break d}l=l+1|0;if((d|0)!=(l|0)){continue}break c}break}d=H[b+252>>2];if((Ra[H[H[d>>2]+28>>2]](d)|0)==H[b+480>>2]){break b}e:{if(!I[b+244|0]){break e}d=H[k>>2];if(!d){break e}dT(H[b+248>>2],d)}H[b+240>>2]=0;f:{if(!I[b+256|0]){break f}d=H[X>>2];if(!d){break f}dT(H[b+260>>2],d)}H[X>>2]=0;break a}g:{if(!I[b+256|0]){break g}d=H[X>>2];if(!d){break g}dT(H[b+260>>2],d)}H[b+252>>2]=0;h:{if(!I[b+244|0]){break h}d=H[k>>2];if(!d){break h}dT(H[b+248>>2],d)}H[k>>2]=0;break a}d=H[k>>2];Ra[H[H[d>>2]+156>>2]](j+152|0,d);if(!(I[j+152|0]&2)){i:{if(!I[b+244|0]){break i}d=H[k>>2];if(!d){break i}dT(H[b+248>>2],d)}H[b+240>>2]=0;j:{if(!I[b+256|0]){break j}d=H[X>>2];if(!d){break j}dT(H[b+260>>2],d)}H[X>>2]=0;break a}d=0;l=0;m=H[g>>2];if(m){l=H[m+12>>2];n=H[m+4>>2];Q=H[m>>2];d=H[m+8>>2]}G[j+168>>1]=6;H[j+164>>2]=l;H[j+160>>2]=d;H[j+156>>2]=n;H[j+152>>2]=Q;G[j+32>>1]=0;d=H[g+4>>2];if(!d){break a}if(Ra[H[H[d>>2]>>2]](d,j+152|0,H[b+240>>2],H[b+252>>2],j+32|0)|0){break a}fS(k);fS(X)}d=H[b+240>>2];l=H[b+264>>2];if(!(d|(l|0)!=-1)){l=0;n=0;Q=0;d=Oa-256|0;Oa=d;m=J[g+8>>1];k:{if(!(m&2)){break k}H[d+208>>2]=124616;H[d+212>>2]=H[b+520>>2]+80;H[d+216>>2]=H[g+4>>2];G[d+220>>1]=m;k=H[g>>2];if(k){Q=H[k+8>>2];n=H[k+4>>2];Y=H[k>>2];l=H[k+12>>2]}G[d+200>>1]=m&8|6;H[d+196>>2]=l;H[d+192>>2]=Q;H[d+188>>2]=n;H[d+184>>2]=Y;z=O(Ra[H[H[b>>2]+8>>2]](b));A=M[b+440>>3];B=M[b+432>>3];L[d+176>>2]=M[b+448>>3];L[d+172>>2]=A;L[d+168>>2]=B;_=d+100|0;k=_;H[k>>2]=0;H[k+4>>2]=0;$=d+96|0;G[$>>1]=0;H[d+92>>2]=-1;l=d+108|0;k=l;H[k>>2]=0;H[k+4>>2]=0;n=d+116|0;k=n;H[k>>2]=0;H[k+4>>2]=0;H[d+132>>2]=0;s=d+124|0;k=s;H[k>>2]=2139095039;H[k+4>>2]=0;H[d+84>>2]=0;H[d+88>>2]=0;H[d+160>>2]=0;H[d+152>>2]=0;H[d+156>>2]=0;F[d+148|0]=0;H[d+80>>2]=111468;k=H[b+480>>2];f=L[b+28>>2];o=L[b+32>>2];p=L[b+36>>2];G[d+72>>1]=0;L[d+16>>2]=-p;L[d+12>>2]=-o;L[d+8>>2]=-f;aa=O(z+O(0));if(Ra[H[H[k>>2]+348>>2]](k,d+168|0,d+8|0,aa,d+80|0,d+72|0,d+184|0,d+208|0,0)|0){m=d+80|4;Q=m;k=H[d+152>>2];m=H[d+160>>2];Y=m?k:Q;V=H[Y+4>>2];H[Q>>2]=H[Y>>2];H[Q+4>>2]=V;H[Q+8>>2]=H[Y+8>>2];G[d+96>>1]=J[(m?k+12|0:$)>>1];L[d+100>>2]=L[(m?k+16|0:_)>>2];Q=d+104|0;L[Q>>2]=L[(m?k+20|0:Q)>>2];L[l>>2]=L[(m?k+24|0:l)>>2];l=d+112|0;L[l>>2]=L[(m?k+28|0:l)>>2];L[n>>2]=L[(m?k+32|0:n)>>2];l=d+120|0;L[l>>2]=L[(m?k+36|0:l)>>2];L[d+124>>2]=L[(m?k+40|0:s)>>2];l=k+44|0;k=d+128|0;m=m?l:k;H[k+16>>2]=H[m+16>>2];l=H[m+12>>2];H[k+8>>2]=H[m+8>>2];H[k+12>>2]=l;l=H[m+4>>2];H[k>>2]=H[m>>2];H[k+4>>2]=l;k=H[d+88>>2];l:{if(!I[b+244|0]){break l}m=H[b+240>>2];if((m|0)==(k|0)){break l}if(m){dT(H[b+248>>2],m)}if(!k){break l}cT(H[b+248>>2],k)}H[b+240>>2]=k;k=H[d+84>>2];m:{if(!I[b+256|0]){break m}m=H[b+252>>2];if((m|0)==(k|0)){break m}if(m){dT(H[b+260>>2],m)}if(!k){break m}cT(H[b+260>>2],k)}H[b+252>>2]=k;k=H[d+88>>2];m=H[d+84>>2];Ra[H[H[m>>2]+76>>2]](d+8|0,m);Ra[H[H[k>>2]+80>>2]](d+224|0,k);D=L[d+32>>2];da=L[d+28>>2];w=L[d+248>>2];R=L[d+244>>2];t=L[d+232>>2];u=L[d+224>>2];r=L[d+228>>2];v=L[d+236>>2];E=L[d+24>>2];o=L[d+8>>2];y=L[d+240>>2];f=L[d+20>>2];p=L[d+12>>2];q=L[d+16>>2];S=L[b+28>>2];W=L[b+32>>2];x=O(z-L[d+124>>2]);L[b+300>>2]=O(0)-O(x*L[b+36>>2]);L[b+296>>2]=O(0)-O(x*W);L[b+292>>2]=O(0)-O(S*x);x=O(O(O(o*r)+O(O(f*t)+O(q*v)))-O(u*p));w=O(w+w);y=O(y+y);R=O(R+R);W=O(O(q*w)+O(O(o*y)+O(p*R)));T=O(O(f*f)+O(-.5));D=O(O(0)-O(D+O(O(q*W)+O(O(w*T)+O(f*O(O(o*R)-O(y*p)))))));D=O(D+D);S=O(O(O(p*t)+O(O(f*u)+O(o*v)))-O(r*q));E=O(O(0)-O(E+O(O(o*W)+O(O(y*T)+O(f*O(O(p*w)-O(R*q)))))));E=O(E+E);w=O(O(0)-O(da+O(O(p*W)+O(O(R*T)+O(f*O(O(q*y)-O(w*o)))))));w=O(w+w);y=O(O(O(q*u)+O(O(f*r)+O(p*v)))-O(t*o));R=O(O(x*D)+O(O(S*E)+O(w*y)));f=O(O(O(O(f*v)-O(u*o))-O(p*r))-O(q*t));o=O(O(f*f)+O(-.5));L[b+288>>2]=O(x*R)+O(O(D*o)-O(f*O(O(S*w)-O(E*y))));L[b+284>>2]=O(y*R)+O(O(w*o)-O(f*O(O(x*E)-O(D*S))));L[b+280>>2]=O(S*R)+O(O(E*o)-O(f*O(O(y*D)-O(w*x))));k=H[b+480>>2];ga=b,ha=(Ra[H[H[k>>2]+32>>2]](k)|0)-1|0,H[ga+484>>2]=ha}if(!h){break k}H[d+32>>2]=0;H[d+36>>2]=0;H[d+40>>2]=0;H[d+44>>2]=0;H[d+24>>2]=0;H[d+28>>2]=0;G[d+20>>1]=0;H[d+16>>2]=-1;H[d+8>>2]=0;H[d+12>>2]=0;H[d+56>>2]=0;H[d+48>>2]=2139095039;H[d+52>>2]=0;f=L[b+28>>2];o=L[b+32>>2];L[d+232>>2]=-L[b+36>>2];L[d+228>>2]=-o;L[d+224>>2]=-f;k=DT(h,d+8|0,d+168|0,d+224|0,aa,d+4|0);if(!k){break k}f=L[d+48>>2];if(!(f>2])){break k}H[b+264>>2]=H[d+4>>2];o=L[b+28>>2];p=L[b+32>>2];f=O(z-f);L[b+324>>2]=O(0)-O(f*L[b+36>>2]);L[b+320>>2]=O(0)-O(f*p);L[b+316>>2]=O(0)-O(f*o);o=L[k+40>>2];f=O(O(0)-O(M[k+24>>3]));p=O(f+f);q=L[k+32>>2];f=O(O(0)-O(M[k+8>>3]));t=O(f+f);f=O(O(0)-O(M[k+16>>3]));u=O(f+f);r=L[k+36>>2];v=O(O(o*p)+O(O(q*t)+O(u*r)));f=L[k+44>>2];z=O(O(f*f)+O(-.5));L[b+312>>2]=O(o*v)+O(O(p*z)-O(f*O(O(q*u)-O(t*r))));L[b+308>>2]=O(r*v)+O(O(u*z)-O(f*O(O(o*t)-O(p*q))));L[b+304>>2]=O(q*v)+O(O(t*z)-O(f*O(O(r*p)-O(u*o))))}Oa=d+256|0;l=H[b+264>>2];d=H[b+240>>2]}n:{if(!(!d&(l|0)==-1)){f=O(0);l=0;t=O(0);u=O(0);k=Oa+-64|0;Oa=k;o:{p:{q:{r:{if(H[b+240>>2]){d=H[b+252>>2];p=O(1);if(J[d+4>>1]==6){break q}m=H[b+480>>2];m=Ra[H[H[m>>2]+32>>2]](m)|0;if((m|0)==H[b+484>>2]){break p}H[b+484>>2]=m;A=M[b+496>>3];B=M[b+488>>3];M[b+496>>3]=B;m=H[b+76>>2];if(m){Ra[H[H[m>>2]>>2]](k+32|0,m,H[b+240>>2],H[b+252>>2]);l=I[k+32|0]}else{l=0}A=B-A;m=H[b+240>>2];Ra[H[H[d>>2]+76>>2]](k+32|0,d);Ra[H[H[m>>2]+80>>2]](k,m);o=L[k+40>>2];f=L[k+24>>2];v=O(f+f);p=L[k+32>>2];f=L[k+16>>2];z=O(f+f);f=L[k+20>>2];x=O(f+f);q=L[k+36>>2];w=O(O(o*v)+O(O(p*z)+O(x*q)));f=L[k+44>>2];aa=O(O(f*f)+O(-.5));t=L[k+4>>2];u=L[k+8>>2];r=L[k+12>>2];y=L[k>>2];R=O(O(O(p*t)+O(O(f*u)+O(o*r)))-O(y*q));D=L[b+288>>2];D=O(D+D);S=O(O(O(q*u)+O(O(f*y)+O(p*r)))-O(t*o));E=L[b+280>>2];E=O(E+E);W=O(O(O(o*y)+O(O(f*t)+O(q*r)))-O(u*p));T=L[b+284>>2];T=O(T+T);da=O(O(R*D)+O(O(S*E)+O(W*T)));r=O(O(O(O(f*r)-O(y*p))-O(q*t))-O(o*u));y=O(O(r*r)+O(-.5));t=O(O(O(L[k+56>>2]+O(O(o*w)+O(O(v*aa)+O(f*O(O(p*x)-O(z*q))))))+O(O(R*da)+O(O(D*y)+O(r*O(O(S*T)-O(E*W))))))-L[b+300>>2]);u=O(O(O(L[k+52>>2]+O(O(q*w)+O(O(x*aa)+O(f*O(O(o*z)-O(v*p))))))+O(O(W*da)+O(O(T*y)+O(r*O(O(R*E)-O(D*S))))))-L[b+296>>2]);f=O(O(O(L[k+48>>2]+O(O(p*w)+O(O(z*aa)+O(f*O(O(q*v)-O(x*o))))))+O(O(S*da)+O(O(E*y)+O(r*O(O(W*D)-O(T*R))))))-L[b+292>>2]);break r}A=M[b+496>>3];B=M[b+488>>3];M[b+496>>3]=B;d=Ra[H[H[h>>2]+36>>2]](h,H[b+264>>2])|0;m=H[b+76>>2];if(m){Ra[H[H[m>>2]+8>>2]](k+32|0,m,d);l=I[k+32|0]}else{l=1}A=B-A;o=L[d+40>>2];f=L[b+312>>2];p=O(f+f);q=L[d+32>>2];f=L[b+304>>2];r=O(f+f);f=L[b+308>>2];v=O(f+f);z=L[d+36>>2];x=O(O(o*p)+O(O(q*r)+O(v*z)));f=L[d+44>>2];w=O(O(f*f)+O(-.5));t=O(O(O(O(o*x)+O(O(p*w)+O(f*O(O(q*v)-O(r*z)))))+O(M[d+24>>3]))-L[b+324>>2]);u=O(O(O(O(z*x)+O(O(v*w)+O(f*O(O(o*r)-O(p*q)))))+O(M[d+16>>3]))-L[b+320>>2]);f=O(O(O(O(q*x)+O(O(r*w)+O(f*O(O(z*p)-O(v*o)))))+O(M[d+8>>3]))-L[b+316>>2])}if(l&4){break p}p=O(O(1)/O(A))}s:{if(!(O(P(f))>O(9.999999974752427e-7)|O(P(u))>O(9.999999974752427e-7)|O(P(t))>O(9.999999974752427e-7))){d=0;F[b+513|0]=0;break s}F[b+513|0]=1;q=L[b+36>>2];v=L[b+28>>2];r=L[b+32>>2];o=O(O(t*q)+O(O(f*v)+O(u*r)));q=O(q*o);r=O(r*o);v=O(v*o);t:{if(o>O(0)){M[c+8>>3]=M[c+8>>3]+ +v;M[c+16>>3]=M[c+16>>3]+ +r;M[c+24>>3]=M[c+24>>3]+ +q;break t}L[j+256>>2]=v+L[j+256>>2];L[j+260>>2]=r+L[j+260>>2];L[j+264>>2]=q+L[j+264>>2]}d=1;if(!(l&1)){break s}L[j+256>>2]=O(f-v)+L[j+256>>2];L[j+260>>2]=O(u-r)+L[j+260>>2];L[j+264>>2]=O(t-q)+L[j+264>>2]}L[b+464>>2]=t*p;L[b+460>>2]=u*p;L[b+456>>2]=f*p;break o}d=I[b+513|0]!=0}Oa=k- -64|0;break n}H[b+456>>2]=0;H[b+460>>2]=0;F[b+513|0]=0;H[b+464>>2]=0;d=0}k=d;m=H[b+520>>2];Q=m+56|0;Y=m+44|0;_=m+32|0;$=m+20|0;n=Ra[H[H[m>>2]+8>>2]](m)|0;V=H[H[b+520>>2]+68>>2];if(n){d=0;while(1){l=H[V+(d<<2)>>2];u:{if((l|0)==(b|0)){break u}s=H[g+12>>2];if(s){if(!(ha=s,ia=Ra[H[H[b>>2]+16>>2]](b)|0,ja=Ra[H[H[l>>2]+16>>2]](l)|0,ga=H[H[s>>2]+8>>2],Ra[ga](ha|0,ia|0,ja|0)|0)){break u}}v:{switch(H[l+4>>2]){case 0:NS(l-8|0,j+152|0);l=H[m+36>>2];w:{if(l>>>0>=(H[m+40>>2]&2147483647)>>>0){lS(_,j+152|0);break w}s=H[j+156>>2];l=H[m+32>>2]+N(l,56)|0;H[l>>2]=H[j+152>>2];H[l+4>>2]=s;s=H[j+172>>2];H[l+16>>2]=H[j+168>>2];H[l+20>>2]=s;s=H[j+164>>2];H[l+8>>2]=H[j+160>>2];H[l+12>>2]=s;L[l+24>>2]=L[j+176>>2];L[l+28>>2]=L[j+180>>2];L[l+32>>2]=L[j+184>>2];L[l+36>>2]=L[j+188>>2];L[l+40>>2]=L[j+192>>2];L[l+44>>2]=L[j+196>>2];L[l+48>>2]=L[j+200>>2];H[m+36>>2]=H[m+36>>2]+1}s=d<<16;H[j+32>>2]=s;l=H[m+24>>2];if(l>>>0>=(H[m+28>>2]&2147483647)>>>0){mS($,j+32|0);break u}H[H[m+20>>2]+(l<<2)>>2]=s;H[m+24>>2]=l+1;break u;case 1:break v;default:break u}}IR(l-8|0,j+152|0);l=H[m+60>>2];x:{if(l>>>0>=(H[m+64>>2]&2147483647)>>>0){nS(Q,j+152|0);break x}s=H[j+156>>2];l=H[m+56>>2]+N(l,56)|0;H[l>>2]=H[j+152>>2];H[l+4>>2]=s;s=H[j+204>>2];H[l+48>>2]=H[j+200>>2];H[l+52>>2]=s;s=H[j+196>>2];H[l+40>>2]=H[j+192>>2];H[l+44>>2]=s;s=H[j+188>>2];H[l+32>>2]=H[j+184>>2];H[l+36>>2]=s;s=H[j+180>>2];H[l+24>>2]=H[j+176>>2];H[l+28>>2]=s;s=H[j+172>>2];H[l+16>>2]=H[j+168>>2];H[l+20>>2]=s;s=H[j+164>>2];H[l+8>>2]=H[j+160>>2];H[l+12>>2]=s;H[m+60>>2]=H[m+60>>2]+1}s=d<<16;H[j+32>>2]=s;l=H[m+48>>2];if(l>>>0>=(H[m+52>>2]&2147483647)>>>0){mS(Y,j+32|0);break u}H[H[m+44>>2]+(l<<2)>>2]=s;H[m+48>>2]=l+1}d=d+1|0;if((n|0)!=(d|0)){continue}break}}s=0;d=0;if(h){ca=!ba|!(ca&4);C=H[h+8>>2];if(C){l=0;while(1){d=H[h+4>>2]+N(l,72)|0;n=H[d+36>>2];H[j+48>>2]=H[d+32>>2];H[j+52>>2]=n;n=H[d+28>>2];H[j+40>>2]=H[d+24>>2];H[j+44>>2]=n;n=H[d+20>>2];H[j+32>>2]=H[d+16>>2];H[j+36>>2]=n;L[j+56>>2]=L[d+56>>2];L[j+60>>2]=L[d+60>>2];V=d- -64|0;L[j+64>>2]=L[V>>2];L[j+68>>2]=L[d+40>>2];L[j+72>>2]=L[d+44>>2];L[j+76>>2]=L[d+48>>2];L[j+80>>2]=L[d+52>>2];n=H[m+36>>2];y:{if(n>>>0>=(H[m+40>>2]&2147483647)>>>0){lS(_,j+32|0);break y}U=H[j+36>>2];n=H[m+32>>2]+N(n,56)|0;H[n>>2]=H[j+32>>2];H[n+4>>2]=U;U=H[j+52>>2];H[n+16>>2]=H[j+48>>2];H[n+20>>2]=U;U=H[j+44>>2];H[n+8>>2]=H[j+40>>2];H[n+12>>2]=U;L[n+24>>2]=L[j+56>>2];L[n+28>>2]=L[j+60>>2];L[n+32>>2]=L[j+64>>2];L[n+36>>2]=L[j+68>>2];L[n+40>>2]=L[j+72>>2];L[n+44>>2]=L[j+76>>2];L[n+48>>2]=L[j+80>>2];H[m+36>>2]=H[m+36>>2]+1}U=l<<16|1;H[j+152>>2]=U;n=H[m+24>>2];z:{if(n>>>0>=(H[m+28>>2]&2147483647)>>>0){mS($,j+152|0);break z}H[H[m+20>>2]+(n<<2)>>2]=U;H[m+24>>2]=n+1}if(!ca){H[j+176>>2]=0;H[j+180>>2]=0;H[j+168>>2]=0;H[j+172>>2]=0;H[j+160>>2]=0;H[j+164>>2]=0;H[j+184>>2]=0;H[j+188>>2]=1065353216;H[j+152>>2]=0;H[j+156>>2]=0;H[j+200>>2]=0;H[j+204>>2]=0;H[j+192>>2]=0;H[j+196>>2]=0;H[j+208>>2]=1065353216;H[j+220>>2]=0;H[j+224>>2]=0;H[j+212>>2]=0;H[j+216>>2]=0;H[j+228>>2]=1065353216;H[j+240>>2]=0;H[j+244>>2]=0;H[j+232>>2]=0;H[j+236>>2]=0;H[j+252>>2]=ba;H[j+248>>2]=1065353216;n=j+152|0;H[n+4>>2]=-16711681;A=M[d+24>>3];B=M[d+32>>3];Z=M[d+16>>3];L[j+96>>2]=L[d+40>>2];L[j+100>>2]=L[d+44>>2];L[j+104>>2]=L[d+48>>2];f=L[d+52>>2];L[j+120>>2]=B;L[j+116>>2]=A;L[j+112>>2]=Z;L[j+108>>2]=f;U=j+96|0;VT(n,U);f=L[d+56>>2];o=L[d+60>>2];L[j+104>>2]=-L[V>>2];L[j+100>>2]=-o;L[j+96>>2]=-f;L[j+108>>2]=L[d+56>>2];L[j+112>>2]=L[d+60>>2];f=L[V>>2];F[j+120|0]=1;L[j+116>>2]=f;XT(n,U)}l=l+1|0;if((C|0)!=(l|0)){continue}break}}V=H[h+20>>2];if(V){l=0;while(1){d=H[h+16>>2]+(l<<6)|0;A=M[d+16>>3];B=M[d+24>>3];f=L[d+40>>2];o=O(f+f);u=L[d+48>>2];r=L[d+44>>2];p=L[d+52>>2];q=O(p+p);t=L[d+56>>2];Z=+O(O(O(o*u)-O(r*q))*t);M[j+112>>3]=M[d+32>>3]-Z;ea=B;B=+O(t*O(O(u*q)+O(o*r)));M[j+104>>3]=ea-B;ea=A;A=+O(t*O(O(f*o)+O(O(p*q)+O(-1))));M[j+96>>3]=ea-A;ea=M[d+16>>3];fa=M[d+24>>3];M[j+136>>3]=M[d+32>>3]+Z;M[j+128>>3]=fa+B;M[j+120>>3]=ea+A;L[j+144>>2]=L[d+60>>2];n=H[m+60>>2];A:{if(n>>>0>=(H[m+64>>2]&2147483647)>>>0){nS(Q,j+96|0);break A}C=H[j+100>>2];n=H[m+56>>2]+N(n,56)|0;H[n>>2]=H[j+96>>2];H[n+4>>2]=C;C=H[j+148>>2];H[n+48>>2]=H[j+144>>2];H[n+52>>2]=C;C=H[j+140>>2];H[n+40>>2]=H[j+136>>2];H[n+44>>2]=C;C=H[j+132>>2];H[n+32>>2]=H[j+128>>2];H[n+36>>2]=C;C=H[j+124>>2];H[n+24>>2]=H[j+120>>2];H[n+28>>2]=C;C=H[j+116>>2];H[n+16>>2]=H[j+112>>2];H[n+20>>2]=C;C=H[j+108>>2];H[n+8>>2]=H[j+104>>2];H[n+12>>2]=C;H[m+60>>2]=H[m+60>>2]+1}C=l<<16|2;H[j+152>>2]=C;n=H[m+48>>2];B:{if(n>>>0>=(H[m+52>>2]&2147483647)>>>0){mS(Y,j+152|0);break B}H[H[m+44>>2]+(n<<2)>>2]=C;H[m+48>>2]=n+1}if(!ca){H[j+176>>2]=0;H[j+180>>2]=0;H[j+168>>2]=0;H[j+172>>2]=0;H[j+160>>2]=0;H[j+164>>2]=0;H[j+184>>2]=0;H[j+188>>2]=1065353216;H[j+152>>2]=0;H[j+156>>2]=0;H[j+200>>2]=0;H[j+204>>2]=0;H[j+192>>2]=0;H[j+196>>2]=0;H[j+208>>2]=1065353216;H[j+220>>2]=0;H[j+224>>2]=0;H[j+212>>2]=0;H[j+216>>2]=0;H[j+228>>2]=1065353216;H[j+240>>2]=0;H[j+244>>2]=0;H[j+232>>2]=0;H[j+236>>2]=0;H[j+252>>2]=ba;H[j+248>>2]=1065353216;n=j+152|0;H[n+4>>2]=-16711681;r=L[d+56>>2];v=L[d+60>>2];f=L[d+48>>2];o=L[d+44>>2];p=L[d+52>>2];q=L[d+40>>2];A=M[d+16>>3];B=M[d+24>>3];Z=M[d+32>>3];H[j+92>>2]=1065353216;H[j+76>>2]=0;H[j+60>>2]=0;H[j+44>>2]=0;L[j+88>>2]=Z;L[j+84>>2]=B;L[j+80>>2]=A;u=O(o+o);z=O(f*u);t=O(q+q);x=O(p*t);L[j+68>>2]=z-x;w=O(t*f);y=O(u*p);L[j+64>>2]=w+y;L[j+56>>2]=z+x;z=O(t*o);x=p;p=O(f+f);x=O(x*p);L[j+48>>2]=z-x;L[j+40>>2]=w-y;L[j+36>>2]=z+x;q=O(O(1)-O(q*t));o=O(o*u);L[j+72>>2]=q-o;f=O(f*p);L[j+52>>2]=q-f;L[j+32>>2]=O(O(1)-o)-f;$T(n,v,r,j+32|0)}l=l+1|0;if((V|0)!=(l|0)){continue}break}}d=h}l=H[m+36>>2];H[j+32>>2]=l;h=b+88|0;if(l){s=H[_>>2];l=H[$>>2]}else{l=0}H[j+40>>2]=l;H[j+36>>2]=s;m=H[m+60>>2];H[j+44>>2]=m;C:{if(!m){m=0;l=0;break C}m=H[Q>>2];l=H[Y>>2]}H[j+52>>2]=l;H[j+48>>2]=m;H[j+100>>2]=d;H[j+96>>2]=b;d=H[b+480>>2];H[j+20>>2]=ba;H[j+16>>2]=d;H[j+24>>2]=H[b+520>>2]+80;H[b+412>>2]=H[b+412>>2]&-3;H[j+12>>2]=0;H[j+8>>2]=0;A=M[c+24>>3];B=M[c+16>>3];Z=M[c+8>>3];jS(j+152|0,h,j+16|0,j+96|0,c,j+256|0,j+32|0,e,g,i,k,j+12|0,j+8|0);l=I[j+152|0];F[a|0]=l;d=H[b+412>>2];if(d&1){H[b+412>>2]=d|2;M[c+24>>3]=A;M[c+16>>3]=B;M[c+8>>3]=Z;f=L[j+256>>2];D:{if(H[b+8>>2]==1){o=L[b+36>>2];q=L[b+28>>2];p=L[b+32>>2];f=O(O(o*L[j+264>>2])+O(O(f*q)+O(L[j+260>>2]*p)));o=O(o*f);p=O(p*f);f=O(q*f);break D}o=L[j+264>>2];p=L[j+260>>2]}L[j+160>>2]=o;L[j+156>>2]=p;L[j+152>>2]=f;jS(j,h,j+16|0,j+96|0,c,j+152|0,j+32|0,e,g,i,k,j+12|0,j+8|0);l=I[j|0];F[a|0]=l;H[b+412>>2]=H[b+412>>2]&-3}a=H[j+12>>2];E:{if(!I[b+256|0]){break E}d=H[X>>2];if((d|0)==(a|0)){break E}if(d){dT(H[b+260>>2],d)}if(!a){break E}cT(H[b+260>>2],a)}H[b+252>>2]=a;a=H[j+8>>2];F:{if(!I[b+244|0]){break F}d=H[b+240>>2];if((d|0)==(a|0)){break F}if(d){dT(H[b+248>>2],d)}if(!a){break F}cT(H[b+248>>2],a)}F[b+512|0]=l;H[b+240>>2]=a;a=H[c+12>>2];H[b+432>>2]=H[c+8>>2];H[b+436>>2]=a;a=H[c+20>>2];H[b+440>>2]=H[c+16>>2];H[b+444>>2]=a;a=H[c+28>>2];H[b+448>>2]=H[c+24>>2];H[b+452>>2]=a;a=H[b+424>>2];G:{if(!a){break G}e=O(A-M[c+24>>3]);f=O(e*e);e=O(Z-M[c+8>>3]);p=O(e*e);e=O(B-M[c+16>>3]);if(O(f+O(p+O(e*e)))==O(0)){break G}c=j+152|0;Ra[H[H[a>>2]+76>>2]](c,a);A=M[b+440>>3];B=M[b+432>>3];L[j+176>>2]=M[b+448>>3];L[j+172>>2]=A;L[j+168>>2]=B;L[j+152>>2]=L[b+12>>2];L[j+156>>2]=L[b+16>>2];L[j+160>>2]=L[b+20>>2];L[j+164>>2]=L[b+24>>2];a=H[b+424>>2];Ra[H[H[a>>2]+248>>2]](a,c)}g=Oa+-64|0;Oa=g;h=H[b+520>>2];a=H[h+28>>2]&2147483647;H:{if(!a){break H}if(K[h+24>>2]>a>>>1>>>0){H[h+24>>2]=0;break H}H[g+8>>2]=0;a=h+20|0;gT(a,g+8|0);hT(a,H[h+24>>2])}a=H[h+40>>2]&2147483647;I:{if(!a){break I}if(K[h+36>>2]>a>>>1>>>0){H[h+36>>2]=0;break I}b=h+32|0;a=H[b+4>>2];if((a|0)<0){c=H[b>>2];d=c+N(a,56)|0;while(1){a=H[g+12>>2];H[d>>2]=H[g+8>>2];H[d+4>>2]=a;a=H[g+28>>2];H[d+16>>2]=H[g+24>>2];H[d+20>>2]=a;a=H[g+20>>2];H[d+8>>2]=H[g+16>>2];H[d+12>>2]=a;L[d+24>>2]=L[g+32>>2];L[d+28>>2]=L[g+36>>2];L[d+32>>2]=L[g+40>>2];L[d+36>>2]=L[g+44>>2];L[d+40>>2]=L[g+48>>2];L[d+44>>2]=L[g+52>>2];L[d+48>>2]=L[g+56>>2];d=d+56|0;if(c>>>0>d>>>0){continue}break}}H[b+4>>2]=0;c=0;i=H[h+36>>2];J:{if(!i){break J}d=N(i,56);if(!d){break J}a=H[33808];c=a+12|0;c=(ja=c,ia=d,ha=Ra[H[H[a>>2]+20>>2]](a)|0?21816:55639,ka=13582,la=553,ga=H[H[c>>2]+8>>2],Ra[ga](ja|0,ia|0,ha|0,ka|0,la|0)|0)}a=H[b+4>>2];if((a|0)>0){k=N(a,56)+c|0;d=H[b>>2];a=c;while(1){m=H[d+4>>2];H[a>>2]=H[d>>2];H[a+4>>2]=m;m=H[d+20>>2];H[a+16>>2]=H[d+16>>2];H[a+20>>2]=m;m=H[d+12>>2];H[a+8>>2]=H[d+8>>2];H[a+12>>2]=m;L[a+24>>2]=L[d+24>>2];L[a+28>>2]=L[d+28>>2];L[a+32>>2]=L[d+32>>2];L[a+36>>2]=L[d+36>>2];L[a+40>>2]=L[d+40>>2];L[a+44>>2]=L[d+44>>2];L[a+48>>2]=L[d+48>>2];d=d+56|0;a=a+56|0;if(k>>>0>a>>>0){continue}break}}K:{if(H[b+8>>2]<0){break K}a=H[b>>2];if(!a){break K}d=H[33808]+12|0;Ra[H[H[d>>2]+12>>2]](d,a)}H[b+8>>2]=i;H[b>>2]=c}a=H[h+52>>2]&2147483647;L:{if(!a){break L}if(K[h+48>>2]>a>>>1>>>0){H[h+48>>2]=0;break L}H[g+8>>2]=0;a=h+44|0;gT(a,g+8|0);hT(a,H[h+48>>2])}a=H[h- -64>>2]&2147483647;M:{if(!a){break M}if(K[h+60>>2]>a>>>1>>>0){H[h+60>>2]=0;break M}H[g+56>>2]=0;H[g+60>>2]=0;H[g+48>>2]=0;H[g+52>>2]=0;H[g+40>>2]=0;H[g+44>>2]=0;H[g+32>>2]=0;H[g+36>>2]=0;H[g+24>>2]=0;H[g+28>>2]=0;H[g+16>>2]=0;H[g+20>>2]=0;H[g+8>>2]=0;H[g+12>>2]=0;b=h+56|0;a=H[b+4>>2];if((a|0)<0){c=H[b>>2];d=c+N(a,56)|0;while(1){a=H[g+12>>2];H[d>>2]=H[g+8>>2];H[d+4>>2]=a;a=H[g+60>>2];H[d+48>>2]=H[g+56>>2];H[d+52>>2]=a;a=H[g+52>>2];H[d+40>>2]=H[g+48>>2];H[d+44>>2]=a;a=H[g+44>>2];H[d+32>>2]=H[g+40>>2];H[d+36>>2]=a;a=H[g+36>>2];H[d+24>>2]=H[g+32>>2];H[d+28>>2]=a;a=H[g+28>>2];H[d+16>>2]=H[g+24>>2];H[d+20>>2]=a;a=H[g+20>>2];H[d+8>>2]=H[g+16>>2];H[d+12>>2]=a;d=d+56|0;if(c>>>0>d>>>0){continue}break}}H[b+4>>2]=0;c=0;h=H[h+60>>2];N:{if(!h){break N}d=N(h,56);if(!d){break N}a=H[33808];c=a+12|0;c=(la=c,ka=d,ha=Ra[H[H[a>>2]+20>>2]](a)|0?37754:55639,ia=13582,ja=553,ga=H[H[c>>2]+8>>2],Ra[ga](la|0,ka|0,ha|0,ia|0,ja|0)|0)}a=H[b+4>>2];if((a|0)>0){i=N(a,56)+c|0;d=H[b>>2];a=c;while(1){k=H[d+4>>2];H[a>>2]=H[d>>2];H[a+4>>2]=k;k=H[d+52>>2];H[a+48>>2]=H[d+48>>2];H[a+52>>2]=k;k=H[d+44>>2];H[a+40>>2]=H[d+40>>2];H[a+44>>2]=k;k=H[d+36>>2];H[a+32>>2]=H[d+32>>2];H[a+36>>2]=k;k=H[d+28>>2];H[a+24>>2]=H[d+24>>2];H[a+28>>2]=k;k=H[d+20>>2];H[a+16>>2]=H[d+16>>2];H[a+20>>2]=k;k=H[d+12>>2];H[a+8>>2]=H[d+8>>2];H[a+12>>2]=k;d=d+56|0;a=a+56|0;if(i>>>0>a>>>0){continue}break}}O:{if(H[b+8>>2]<0){break O}a=H[b>>2];if(!a){break O}d=H[33808]+12|0;Ra[H[H[d>>2]+12>>2]](d,a)}H[b+8>>2]=h;H[b>>2]=c}Oa=g- -64|0;Oa=j+272|0}function UE(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,L=0,M=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0;n=Oa+-64|0;Oa=n;e=H[a+20>>2]+31>>>5|0;f=H[a+388>>2];a:{if(e>>>0<=(f&2147483647)>>>0){e=H[a+384>>2];break a}l=H[a+384>>2];if(!(!l|(f|0)<0)){f=H[33808];Ra[H[H[f+12>>2]+12>>2]](f+12|0,l)}H[a+388>>2]=e;l=H[33808];e=Ra[H[H[l+12>>2]+8>>2]](l+12|0,e<<2,20591,14969,461)|0;H[a+384>>2]=e;f=H[a+388>>2]}S6(e,0,f<<2);if(K[a+368>>2]<=1023){e=H[33808];l=Ra[H[H[e>>2]+20>>2]](e)|0?25396:55639;e=Ra[H[H[e+12>>2]+8>>2]](e+12|0,8192,l,15676,219)|0;l=H[a+364>>2];b:{if(!l){break b}R6(e,l,H[a+360>>2]<<3);l=H[a+364>>2];if(!l){break b}f=H[33808];Ra[H[H[f+12>>2]+12>>2]](f+12|0,l)}H[a+368>>2]=1024;H[a+364>>2]=e}if(!(H[a+404>>2]&2147482624)){Dv(a+396|0,1024)}if(!(H[a+416>>2]&2147482624)){Dv(a+408|0,1024)}f=H[a+20>>2];if(f>>>0>(H[a+380>>2]&2147483647)>>>0){l=0;c:{if(!f){break c}g=f<<4;if(!g){break c}e=H[33808];l=e+12|0;l=(R=l,S=g,T=Ra[H[H[e>>2]+20>>2]](e)|0?36180:55639,U=13582,V=553,Q=H[H[l>>2]+8>>2],Ra[Q](R|0,S|0,T|0,U|0,V|0)|0)}e=H[a+376>>2];if((e|0)>0){i=(e<<4)+l|0;g=H[a+372>>2];e=l;while(1){k=H[g+4>>2];H[e>>2]=H[g>>2];H[e+4>>2]=k;k=H[g+12>>2];H[e+8>>2]=H[g+8>>2];H[e+12>>2]=k;g=g+16|0;e=e+16|0;if(i>>>0>e>>>0){continue}break}}d:{if(H[a+380>>2]<0){break d}e=H[a+372>>2];if(!e){break d}g=H[33808]+12|0;Ra[H[H[g>>2]+12>>2]](g,e)}H[a+380>>2]=f;H[a+372>>2]=l}f=0;e=H[a+340>>2];e:{if(!e){e=0;break e}j=H[a+88>>2];p=H[a+100>>2];i=H[a+204>>2];o=H[a+16>>2];m=H[a+448>>2];k=H[a+40>>2];v=H[a+336>>2];while(1){g=H[v+(f<<2)>>2];l=H[a+60>>2];h=(g>>>0)/(l>>>0)|0;q=H[k+(h<<2)>>2]+(g-N(h,l)<<4)|0;s=J[q+4>>1];if((s&10)==2){f:{if((s&33)!=1){break f}r=H[m>>2];h=g<<1;e=h|1;l=H[m+20>>2];w=(e>>>0)/(l>>>0)|0;e=H[H[r+(w<<2)>>2]+(e-N(l,w)<<2)>>2]>>>7|0;w=(h>>>0)/(l>>>0)|0;l=H[H[r+(w<<2)>>2]+(h-N(l,w)<<2)>>2]>>>7|0;h=(l|0)==33554431;g:{if(!(h|(e|0)==33554431)){h=i+(e<<2)|0;e=i+(l<<2)|0;l=H[(H[e>>2]==-1?h:e)>>2];break g}if(!h){e=o+N(l,24)|0;if(I[e+4|0]&4){break f}l=H[i+(l<<2)>>2];G[e+6>>1]=J[e+6>>1]-1;e=p+(l<<2)|0;H[e>>2]=H[e>>2]-1;break g}if((e|0)==33554431){break f}h=o+N(e,24)|0;if(I[h+4|0]&4){break f}l=H[i+(e<<2)>>2];G[h+6>>1]=J[h+6>>1]-1;e=p+(l<<2)|0;H[e>>2]=H[e>>2]-1}if((l|0)==-1){break f}h=H[a+60>>2];e=(g>>>0)/(h>>>0)|0;e=H[k+(e<<2)>>2]+(g-N(e,h)<<4)|0;r=H[e+12>>2];g=H[e+8>>2];h:{if((g|0)!=-1){w=(g>>>0)/(h>>>0)|0;h=(H[k+(w<<2)>>2]+(g-N(h,w)<<4)|0)+12|0;break h}h=((j+N(l,44)|0)+(H[e>>2]<<2)|0)+28|0}H[h>>2]=r;h=H[e+8>>2];g=H[e+12>>2];i:{if((g|0)!=-1){r=H[a+60>>2];w=(g>>>0)/(r>>>0)|0;H[(H[k+(w<<2)>>2]+(g-N(r,w)<<4)|0)+8>>2]=h;g=H[e>>2];break i}g=H[e>>2];H[((j+N(l,44)|0)+(g<<2)|0)+20>>2]=h}l=(j+N(l,44)|0)+(g<<2)|0;H[l+36>>2]=H[l+36>>2]-1;H[e+12>>2]=-1;H[e+8>>2]=-1}G[q+4>>1]=s&65534;e=H[a+340>>2]}f=f+1|0;if(f>>>0>>0){continue}break}}if(c){g=H[a+312>>2];e=g&2147483647;j:{if(!e){break j}f=H[a+308>>2];l=0;while(1){p=H[f+(l<<2)>>2];if(!p){l=l+1|0;if((e|0)!=(l|0)){continue}break j}break}w=a+408|0;B=a+396|0;M=a+240|0;O=a+100|0;P=a+88|0;while(1){k=f7(p);f=k|l<<5;p=p-1&p;k:{if(p){break k}e=l+1|0;i=g&2147483647;e=e>>>0>i>>>0?e:i;j=H[a+308>>2];while(1){l=l+1|0;if(i>>>0<=l>>>0){p=0;l=e;break k}p=H[j+(l<<2)>>2];if(!p){continue}break}}if((f|0)==-1){break j}H[a+376>>2]=0;H[a+360>>2]=0;e=f&33554431;C=N(e,24);s=C+H[a+16>>2]|0;l:{if(I[s+4|0]&12|H[H[a+384>>2]+(e>>>3&4194300)>>2]>>>k&1){break l}v=e<<2;o=H[v+H[a+204>>2]>>2];A=N(o,44);y=H[A+H[a+88>>2]>>2];if((e|0)==(y>>>7|0)){break l}h=0;j=Oa-32|0;Oa=j;D=f<<7;i=D;u=i>>>7|0;z=u<<2;m:{if(K[z+H[a+192>>2]>>2]<=4294967167){g=1;e=i;k=Oa-16|0;Oa=k;x=y>>>7|0;t=a+372|0;f=H[a+376>>2];m=H[a+384>>2];n:{while(1){q=e>>>7|0;E=1<>>12<<2;if(E&H[L+m>>2]){h=H[a+204>>2];r=H[h+(q<<2)>>2]!=-1;break n}r=(q|0)==(x|0);if(!r){m=H[a+376>>2];H[k+4>>2]=m;H[k>>2]=e;H[k+8>>2]=m-1;H[k+12>>2]=h;o:{if(m>>>0>=(H[a+380>>2]&2147483647)>>>0){SE(t,k);break o}e=H[a+372>>2]+(m<<4)|0;m=H[k+4>>2];H[e>>2]=H[k>>2];H[e+4>>2]=m;m=H[k+12>>2];H[e+8>>2]=H[k+8>>2];H[e+12>>2]=m;H[a+376>>2]=H[a+376>>2]+1}h=h+1|0;e=q<<2;H[e+H[a+204>>2]>>2]=-1;m=H[a+384>>2];q=L+m|0;H[q>>2]=H[q>>2]|E;e=H[e+H[a+192>>2]>>2];if(e>>>0<4294967168){continue}}break}h=H[a+204>>2]}q=H[a+376>>2];if(f>>>0>>0){x=H[a+372>>2];e=f;while(1){H[(H[x+(e<<4)>>2]>>>5&134217724)+h>>2]=o;e=e+1|0;q=H[a+376>>2];if(e>>>0>>0){continue}break}}if(!r){if(f>>>0>>0){h=H[t>>2];e=f;while(1){q=H[h+(e<<4)>>2];t=(q>>>10&4194300)+m|0;x=H[t>>2];Q=t,V=j7(-2,q>>>7|0)&x,H[Q>>2]=V;e=e+1|0;if(e>>>0>2]){continue}break}}H[a+376>>2]=f}Oa=k+16|0;if(r){break m}}H[z+H[a+204>>2]>>2]=-1;e=H[a+376>>2];H[j+24>>2]=33554431;H[j+28>>2]=0;H[j+20>>2]=e;H[j+16>>2]=i;q=a+372|0;p:{if(e>>>0>=(H[a+380>>2]&2147483647)>>>0){e=SE(q,j+16|0);break p}f=H[j+20>>2];e=H[a+372>>2]+(e<<4)|0;H[e>>2]=H[j+16>>2];H[e+4>>2]=f;f=H[j+28>>2];H[e+8>>2]=H[j+24>>2];H[e+12>>2]=f;e=H[a+376>>2];H[a+376>>2]=e+1;e=H[a+372>>2]+(e<<4)|0}f=H[a+384>>2]+(i>>>10&4194300)|0;H[f>>2]=H[f>>2]|1<>2]=H[H[a+180>>2]+(u<<2)>>2];H[j+8>>2]=e;r=a+360|0;TE(r,j+8|0);y=y>>>7|0;k=H[a+360>>2];while(1){h=k-1|0;H[a+360>>2]=h;k=H[a+364>>2];e=k+(h<<3)|0;u=H[e>>2];i=H[e+4>>2];m=H[k>>2];q:{if(h>>>0<2){e=0;break q}g=0;e=0;f=(h|0)!=2?K[k+20>>2]>2]?2:1:1;if(K[((f<<3)+k|0)+4>>2]>i>>>0){break q}while(1){g=(g<<3)+k|0;e=f;f=(e<<3)+k|0;k=H[f+4>>2];H[g>>2]=H[f>>2];H[g+4>>2]=k;k=H[a+364>>2];t=e<<1;f=t|1;if(f>>>0>=h>>>0){break q}g=e;t=t+2|0;f=f+(t>>>0>>0&K[((t<<3)+k|0)+4>>2]>2])|0;if(i>>>0>=K[((f<<3)+k|0)+4>>2]){continue}break}}e=(e<<3)+k|0;H[e>>2]=u;H[e+4>>2]=i;k=H[H[a+16>>2]+N(H[m>>2]>>>7|0,24)>>2];if((k|0)!=-1){while(1){h=H[a+84>>2];u=(k>>>0)/(h>>>0)|0;t=H[H[a+64>>2]+(u<<2)>>2];f=k^1;g=H[a+448>>2];i=H[g+20>>2];e=(f>>>0)/(i>>>0)|0;f=H[H[H[g>>2]+(e<<2)>>2]+(f-N(e,i)<<2)>>2];e=f>>>7|0;r:{if((e|0)==33554431|I[(H[a+16>>2]+N(e,24)|0)+4|0]&4){break r}if((e|0)==(y|0)){k=H[m+4>>2];e=0;while(1){g=1;i=H[a+372>>2]+(k<<4)|0;e=e+1|0;H[H[a+180>>2]+(H[i>>2]>>>5&134217724)>>2]=e;H[H[a+204>>2]+(H[i>>2]>>>5&134217724)>>2]=o;H[H[a+192>>2]+(H[i>>2]>>>5&134217724)>>2]=f;f=H[i>>2];k=H[i+8>>2];if((k|0)!=33554431){continue}break}break m}i=1<>>12<<2;if(i&H[z+H[a+384>>2]>>2]){i=H[a+204>>2];if(H[i+(e<<2)>>2]==-1){break r}h=H[a+180>>2];e=H[h+(e<<2)>>2];m=H[m+4>>2];while(1){g=1;k=H[a+372>>2]+(m<<4)|0;e=e+1|0;H[(H[k>>2]>>>5&134217724)+h>>2]=e;H[(H[k>>2]>>>5&134217724)+i>>2]=o;H[H[a+192>>2]+(H[k>>2]>>>5&134217724)>>2]=f;m=H[k+8>>2];if((m|0)==33554431){break m}i=H[a+204>>2];h=H[a+180>>2];f=H[k>>2];continue}}x=H[m+12>>2];g=H[a+376>>2];H[j+24>>2]=H[m+4>>2];H[j+20>>2]=g;H[j+16>>2]=f;H[j+28>>2]=x+1;s:{if(g>>>0>=(H[a+380>>2]&2147483647)>>>0){f=SE(q,j+16|0);break s}x=H[j+20>>2];f=H[a+372>>2]+(g<<4)|0;H[f>>2]=H[j+16>>2];H[f+4>>2]=x;g=H[j+28>>2];H[f+8>>2]=H[j+24>>2];H[f+12>>2]=g;f=H[a+376>>2];H[a+376>>2]=f+1;f=H[a+372>>2]+(f<<4)|0}e=e<<2;H[j+20>>2]=H[e+H[a+180>>2]>>2];H[j+16>>2]=f;TE(r,j+16|0);f=z+H[a+384>>2]|0;H[f>>2]=i|H[f>>2];H[e+H[a+204>>2]>>2]=-1}k=H[t+(k-N(h,u)<<3)>>2];if((k|0)!=-1){continue}break}}k=H[r>>2];if(k){continue}break}g=0}Oa=j+32|0;if(g){g=H[a+376>>2];if(!g){break l}h=H[a+192>>2];k=H[a+180>>2];j=H[a+204>>2];i=H[a+372>>2];f=0;while(1){e=i+(f<<4)|0;m=H[e>>2]>>>7<<2;if(H[m+j>>2]==-1){H[k+m>>2]=H[k+(H[i+(H[e+8>>2]<<4)>>2]>>>5&134217724)>>2]+1;H[h+(H[e>>2]>>>5&134217724)>>2]=H[i+(H[e+8>>2]<<4)>>2];H[j+(H[e>>2]>>>5&134217724)>>2]=o;g=H[a+376>>2]}f=f+1|0;if(g>>>0>f>>>0){continue}break}break l}i=0;H[a+412>>2]=0;H[a+400>>2]=0;e=H[a+88>>2];H[n+56>>2]=0;H[n+60>>2]=0;g=e+A|0;t:{if(!H[a+376>>2]){f=0;e=0;break t}m=g+4|0;k=0;while(1){f=H[a+16>>2];e=f+N(H[H[a+372>>2]+(k<<4)>>2]>>>7|0,24)|0;j=H[e+8>>2]>>>7|0;H[((j|0)==33554431?m:(N(j,24)+f|0)+12|0)>>2]=H[e+12>>2];j=H[e+12>>2]>>>7|0;if((j|0)!=33554431){H[(f+N(j,24)|0)+8>>2]=H[e+8>>2]}f=(n+56|0)+(I[e+5|0]<<2)|0;H[f>>2]=H[f>>2]+1;H[e+8>>2]=-128;H[e+12>>2]=-128;q=J[e+6>>1];f=H[e>>2];if((f|0)!=-1){e=H[a+40>>2];while(1){h=H[a+84>>2];r=(f>>>0)/(h>>>0)|0;y=H[H[a+64>>2]+(r<<2)>>2];j=f>>>1|0;H[n+8>>2]=j;r=f-N(h,r)|0;h=H[a+60>>2];u=(j>>>0)/(h>>>0)|0;t=H[(u<<2)+e>>2];u:{v:{if(!(f&1)){break v}A=f&-2;z=H[a+448>>2];x=H[z+20>>2];f=(A>>>0)/(x>>>0)|0;f=H[H[H[z>>2]+(f<<2)>>2]+(A-N(f,x)<<2)>>2]>>>7|0;if((f|0)==33554431){break v}if(!(I[(H[a+16>>2]+N(f,24)|0)+4|0]&4)){break u}}f=N(H[t+(j-N(h,u)<<4)>>2],12)+a|0;h=f+396|0;u=H[f+400>>2];w:{if(u>>>0>=(H[f+404>>2]&2147483647)>>>0){qm(h,n+8|0);e=H[a+40>>2];break w}H[H[h>>2]+(u<<2)>>2]=j;H[f+400>>2]=H[f+400>>2]+1}j=H[n+8>>2];f=H[a+60>>2];h=(j>>>0)/(f>>>0)|0;j=H[(h<<2)+e>>2]+(j-N(f,h)<<4)|0;u=H[j+12>>2];h=H[j+8>>2];x:{if((h|0)!=-1){t=(h>>>0)/(f>>>0)|0;f=(H[(t<<2)+e>>2]+(h-N(f,t)<<4)|0)+12|0;break x}f=(g+(H[j>>2]<<2)|0)+28|0}H[f>>2]=u;h=H[j+8>>2];f=H[j+12>>2];y:{if((f|0)!=-1){u=H[a+60>>2];t=(f>>>0)/(u>>>0)|0;H[(H[(t<<2)+e>>2]+(f-N(t,u)<<4)|0)+8>>2]=h;f=H[j>>2];break y}f=H[j>>2];H[(g+(f<<2)|0)+20>>2]=h}f=g+(f<<2)|0;H[f+36>>2]=H[f+36>>2]-1;H[j+12>>2]=-1;H[j+8>>2]=-1}f=H[y+(r<<3)>>2];if((f|0)!=-1){continue}break}}i=i+q|0;k=k+1|0;if(k>>>0>2]){continue}break}f=H[n+60>>2];e=H[n+56>>2]}k=H[a+100>>2]+(o<<2)|0;H[k>>2]=H[k>>2]-i;H[g+8>>2]=H[g+8>>2]-e;H[g+12>>2]=H[g+12>>2]-f;e=H[a+4>>2];z:{if(e){f=e-1|0;e=H[H[a>>2]+(f<<2)>>2];H[a+4>>2]=f;f=e+1|0;break z}e=H[a+12>>2];f=e+1|0;H[a+12>>2]=f}H[n+52>>2]=e;e=H[a+92>>2];H[n+8>>2]=-128;H[n+12>>2]=-128;H[n+32>>2]=-1;H[n+36>>2]=-1;H[n+40>>2]=-1;H[n+24>>2]=-1;H[n+28>>2]=-1;H[n+16>>2]=0;H[n+20>>2]=0;H[n+44>>2]=0;H[n+48>>2]=0;e=e>>>0>f>>>0?e:f;f=n+8|0;xE(P,e,f);e=H[a+104>>2];g=H[n+52>>2];H[n+8>>2]=0;g=g+1|0;gy(O,e>>>0>g>>>0?e:g,f);k=H[a+88>>2];e=H[n+52>>2];g=H[a+216>>2];A:{if(!(H[g+(o>>>3&536870908)>>2]>>>o&1)){f=e+32>>>5|0;if(f>>>0>(H[a+220>>2]&2147483647)>>>0){g=H[33808];g=Ra[H[H[g+12>>2]+8>>2]](g+12|0,f<<2,20591,14969,438)|0;j=H[a+216>>2];B:{if(!j){break B}R6(g,j,H[a+220>>2]<<2);if(H[a+220>>2]<0){break B}j=H[a+216>>2];if(!j){break B}h=H[33808];Ra[H[H[h+12>>2]+12>>2]](h+12|0,j)}j=H[a+220>>2];S6((j<<2)+g|0,0,f-j<<2);H[a+220>>2]=f;H[a+216>>2]=g}f=(e>>>3&536870908)+g|0;g=H[f>>2];Q=f,V=j7(-2,e)&g,H[Q>>2]=V;break A}f=H[a+244>>2];H[(k+N(e,44)|0)+16>>2]=f;C:{if(f>>>0>=(H[a+248>>2]&2147483647)>>>0){qm(M,n+52|0);break C}H[H[a+240>>2]+(f<<2)>>2]=H[n+52>>2];H[a+244>>2]=H[a+244>>2]+1}j=H[n+52>>2];f=j+32>>>5|0;D:{if(f>>>0<=(H[a+220>>2]&2147483647)>>>0){g=H[a+216>>2];break D}g=H[33808];g=Ra[H[H[g+12>>2]+8>>2]](g+12|0,f<<2,20591,14969,438)|0;h=H[a+216>>2];E:{if(!h){break E}R6(g,h,H[a+220>>2]<<2);if(H[a+220>>2]<0){break E}h=H[a+216>>2];if(!h){break E}o=H[33808];Ra[H[H[o+12>>2]+12>>2]](o+12|0,h)}h=H[a+220>>2];S6((h<<2)+g|0,0,f-h<<2);H[a+220>>2]=f;H[a+216>>2]=g}f=(j>>>3&536870908)+g|0;H[f>>2]=H[f>>2]|1<>2]=D;o=H[a+180>>2];H[o+v>>2]=0;m=H[a+204>>2];H[m+v>>2]=H[n+52>>2];f=H[a+16>>2];H[(f+C|0)+12>>2]=-128;q=H[a+192>>2];H[v+q>>2]=-128;H[n+56>>2]=0;H[n+60>>2]=0;e=1;H[(n+56|0)+(I[s+5|0]<<2)>>2]=1;k=H[a+372>>2];if(K[a+376>>2]>1){while(1){j=k+(e<<4)|0;h=H[j>>2];v=h>>>7|0;r=f+N(v,24)|0;y=H[j-16>>2];H[r+12>>2]=y;H[(f+N(y>>>7|0,24)|0)+8>>2]=h;h=(n+56|0)+(I[r+5|0]<<2)|0;H[h>>2]=H[h>>2]+1;h=v<<2;H[h+m>>2]=H[n+52>>2];H[h+o>>2]=H[j+12>>2];H[h+q>>2]=H[k+(H[j+8>>2]<<4)>>2];e=e+1|0;if(e>>>0>2]){continue}break}}e=H[n+56>>2];H[g+8>>2]=e;j=H[n+60>>2];H[g+12>>2]=j;k=H[(k+(H[a+376>>2]<<4)|0)-16>>2];H[(f+N(k>>>7|0,24)|0)+8>>2]=-128;H[g+4>>2]=k;H[H[a+100>>2]+(H[n+52>>2]<<2)>>2]=i;H[g+12>>2]=j;H[g+8>>2]=e;i=H[a+400>>2];if(i){H[n+8>>2]=-1;F:{if(i>>>0>=(H[a+404>>2]&2147483647)>>>0){qm(B,n+8|0);e=H[B>>2];break F}e=H[a+396>>2];H[e+(i<<2)>>2]=-1;H[a+400>>2]=H[a+400>>2]+1}j=H[a+40>>2];f=H[e>>2];k=H[a+60>>2];h=(f>>>0)/(k>>>0)|0;H[(H[j+(h<<2)>>2]+(f-N(h,k)<<4)|0)+8>>2]=H[e+4>>2];f=1;if(i>>>0>1){while(1){h=(f<<2)+e|0;o=H[h>>2];m=(o>>>0)/(k>>>0)|0;o=H[j+(m<<2)>>2]+(o-N(k,m)<<4)|0;f=f+1|0;H[o+8>>2]=H[(f<<2)+e>>2];H[o+12>>2]=H[h-4>>2];if((f|0)!=(i|0)){continue}break}}H[g+20>>2]=H[e>>2];e=H[((i<<2)+e|0)-4>>2];H[g+36>>2]=i;H[g+28>>2]=e}i=H[a+412>>2];if(!i){break l}H[n+8>>2]=-1;G:{if(i>>>0>=(H[a+416>>2]&2147483647)>>>0){qm(w,n+8|0);e=H[w>>2];break G}e=H[a+408>>2];H[e+(i<<2)>>2]=-1;H[a+412>>2]=H[a+412>>2]+1}j=H[a+40>>2];f=H[e>>2];k=H[a+60>>2];h=(f>>>0)/(k>>>0)|0;H[(H[j+(h<<2)>>2]+(f-N(h,k)<<4)|0)+8>>2]=H[e+4>>2];f=1;if(i>>>0>=2){while(1){h=(f<<2)+e|0;o=H[h>>2];m=(o>>>0)/(k>>>0)|0;o=H[j+(m<<2)>>2]+(o-N(k,m)<<4)|0;f=f+1|0;H[o+8>>2]=H[(f<<2)+e>>2];H[o+12>>2]=H[h-4>>2];if((f|0)!=(i|0)){continue}break}}H[g+24>>2]=H[e>>2];e=H[((i<<2)+e|0)-4>>2];H[g+40>>2]=i;H[g+32>>2]=e}F[s+4|0]=I[s+4|0]&239;g=H[a+312>>2];if(p){continue}break}}S6(H[a+308>>2],0,g<<2);e=H[a+340>>2]}if(e){g=0;while(1){f=H[H[a+336>>2]+(g<<2)>>2];l=H[a+60>>2];i=(f>>>0)/(l>>>0)|0;i=H[H[a+40>>2]+(i<<2)>>2]+(f-N(i,l)<<4)|0;l=J[i+4>>1];if(l&2){e=H[a+444>>2];H:{if(!e){H[n+8>>2]=0;break H}h=f<<2;j=H[h+H[e>>2]>>2];H[n+8>>2]=j;if(!j){break H}e=H[a+452>>2];k=H[e+4>>2];I:{if(k>>>0>=(H[e+8>>2]&2147483647)>>>0){kF(e,n+8|0);l=J[i+4>>1];break I}H[H[e>>2]+(k<<2)>>2]=j;H[e+4>>2]=k+1}H[h+H[H[a+444>>2]>>2]>>2]=0}if(l&4){NE(a,f);e=(H[i>>2]<<2)+a|0;H[e+172>>2]=H[e+172>>2]-1}H[i>>2]=0;G[i+4>>1]=16;H[i+8>>2]=-1;H[i+12>>2]=-1;l=f+32>>>5|0;J:{if(l>>>0<=(H[a+232>>2]&2147483647)>>>0){e=H[a+228>>2];break J}e=H[33808];e=Ra[H[H[e+12>>2]+8>>2]](e+12|0,l<<2,20591,14969,438)|0;i=H[a+228>>2];K:{if(!i){break K}R6(e,i,H[a+232>>2]<<2);if(H[a+232>>2]<0){break K}i=H[a+228>>2];if(!i){break K}k=H[33808];Ra[H[H[k+12>>2]+12>>2]](k+12|0,i)}i=H[a+232>>2];S6((i<<2)+e|0,0,l-i<<2);H[a+232>>2]=l;H[a+228>>2]=e}e=(f>>>3&536870908)+e|0;l=H[e>>2];Q=e,V=j7(-2,f)&l,H[Q>>2]=V;e=H[a+340>>2]}g=g+1|0;if(g>>>0>>0){continue}break}}l=0;H[a+340>>2]=0;k=a+140|0;if(H[b+4>>2]){while(1){i=H[a+16>>2];o=H[H[b>>2]+(l<<2)>>2];j=o>>>7|0;h=j<<2;p=h+H[a+204>>2]|0;f=H[p>>2];L:{if((f|0)==-1){break L}g=i+N(j,24)|0;m=H[g+8>>2];e=H[a+88>>2]+N(f,44)|0;H[(m>>>0<4294967168?(i+N(m>>>7|0,24)|0)+12|0:e+4|0)>>2]=H[g+12>>2];m=H[g+12>>2];H[(m>>>0<4294967168?(i+N(m>>>7|0,24)|0)+8|0:e)>>2]=H[g+8>>2];m=(e+8|0)+(I[g+5|0]<<2)|0;H[m>>2]=H[m>>2]-1;H[g+8>>2]=-128;H[g+12>>2]=-128;H[p>>2]=-1;if(H[e+8>>2]!=(0-H[e+12>>2]|0)){break L}H[n+8>>2]=f;M:{if((f|0)==H[a+12>>2]){H[a+12>>2]=f-1;break M}p=H[a+4>>2];if(p>>>0>=(H[a+8>>2]&2147483647)>>>0){qm(a,n+8|0);break M}H[H[a>>2]+(p<<2)>>2]=f;H[a+4>>2]=H[a+4>>2]+1}p=H[e+16>>2];if((p|0)!=-1){m=H[a+240>>2];s=H[(m+(H[a+244>>2]<<2)|0)-4>>2];H[(H[a+88>>2]+N(s,44)|0)+16>>2]=p;H[m+(H[e+16>>2]<<2)>>2]=s;H[a+244>>2]=H[a+244>>2]-1;H[e+16>>2]=-1;p=H[a+100>>2]+(f<<2)|0;H[p>>2]=H[p>>2]-J[g+6>>1]}g=H[a+216>>2]+(f>>>3&536870908)|0;p=H[g>>2];Q=g,V=j7(-2,f)&p,H[Q>>2]=V;H[e+4>>2]=-128;H[e>>2]=-128;H[e+16>>2]=-1}e=h;h=H[a+28>>2];g=e+h|0;e=H[g>>2];f=N(j,24);i=f+i|0;N:{O:{if(I[i+4|0]&4){if(H[(f+H[a+16>>2]|0)+16>>2]|(e|0)==33554431){break N}f=H[a+136>>2];j=k;break O}if((e|0)==33554431){break N}f=I[(f+H[a+16>>2]|0)+5|0];j=N(f,12)+a|0;p=(f<<2)+a|0;m=H[p+252>>2];P:{if(m>>>0<=e>>>0){f=H[j+112>>2];break P}f=H[j+112>>2];m=H[(f+(m<<2)|0)-4>>2];s=h+(m>>>5&134217724)|0;H[g>>2]=H[s>>2];H[s>>2]=e;H[(e<<2)+f>>2]=m;H[(H[g>>2]<<2)+f>>2]=o;H[p+252>>2]=H[p+252>>2]-1;e=H[g>>2]}j=j+116|0}p=H[((H[j>>2]<<2)+f|0)-4>>2];H[h+(p>>>5&134217724)>>2]=e;H[(H[g>>2]<<2)+f>>2]=p;H[j>>2]=H[j>>2]-1;H[g>>2]=33554431}H[i>>2]=-1;F[i+4|0]=8;H[i+16>>2]=0;H[i+20>>2]=0;G[i+6>>1]=0;l=l+1|0;if(l>>>0>2]){continue}break}}Q:{if(!c){break Q}l=H[a+216>>2];b=H[a+240>>2];f=0;R:{if(!H[a+244>>2]){e=0;break R}while(1){c=H[(f<<2)+b>>2];e=(c>>>3&536870908)+l|0;g=H[e>>2];Q=e,V=j7(-2,c)&g,H[Q>>2]=V;e=H[a+244>>2];f=f+1|0;if(e>>>0>f>>>0){continue}break}}c=H[a+140>>2];if(c){g=H[a+28>>2];j=H[a+16>>2];e=H[a+136>>2];while(1){S:{c=c-1|0;i=H[e+(c<<2)>>2]>>>7|0;f=j+N(i,24)|0;h=I[f+4|0];T:{if(h&1){if(!d){break T}F[f+4|0]=h&253;if(H[f+16>>2]){break T}f=g+(i<<2)|0;i=H[f>>2];if((i|0)==33554431){break T}h=H[(e+(H[k>>2]<<2)|0)-4>>2];H[g+(h>>>5&134217724)>>2]=i;H[e+(H[f>>2]<<2)>>2]=h;H[k>>2]=H[k>>2]-1;H[f>>2]=33554431;if(!c){break S}continue}l=H[a+216>>2];f=H[f>>2];if((f|0)==-1){break T}h=H[a+204>>2];p=H[a+64>>2];o=H[a+448>>2];m=H[o>>2];while(1){s=H[a+84>>2];i=(f>>>0)/(s>>>0)|0;s=f-N(i,s)|0;i=H[p+(i<<2)>>2];f=f^1;v=H[o+20>>2];q=(f>>>0)/(v>>>0)|0;f=H[H[m+(q<<2)>>2]+(f-N(q,v)<<2)>>2]>>>7|0;U:{if((f|0)==33554431){break U}f=H[h+(f<<2)>>2];if((f|0)==-1){break U}v=(f>>>3&536870908)+l|0;H[v>>2]=H[v>>2]|1<>2];if((f|0)!=-1){continue}break}}if(c){continue}}break}e=H[a+244>>2]}if(!e){break Q}while(1){d=H[a+88>>2];e=e-1|0;b=H[(e<<2)+b>>2];l=l+(b>>>3&536870908)|0;c=H[l>>2];f=l;l=1<>2]=l|c;V:{if(c&l){break V}f=H[d+N(b,44)>>2]>>>7|0;if((f|0)!=33554431){c=H[a+16>>2];while(1){d=c+N(f,24)|0;if(!(F[d+4|0]&1)){break V}f=H[d+8>>2]>>>7|0;if((f|0)!=33554431){continue}break}}l=Oa-16|0;Oa=l;d=H[a+88>>2];m=N(b,44);c=H[d+m>>2];H[l+8>>2]=c;f=c>>>7|0;if((f|0)!=33554431){while(1){s=H[a+16>>2]+N(f,24)|0;d=N(I[s+5|0],12)+a|0;f=d+260|0;g=H[d+264>>2];W:{if(g>>>0>=(H[d+268>>2]&2147483647)>>>0){_E(f,l+8|0);break W}H[H[f>>2]+(g<<2)>>2]=c;H[d+264>>2]=H[d+264>>2]+1}k=Oa-16|0;Oa=k;j=H[a+16>>2];v=H[l+8>>2];f=v>>>7|0;q=j+N(f,24)|0;p=I[q+4|0];X:{if(!(p&2)){break X}Y:{Z:{if(p&4){if(H[(j+N(f,24)|0)+16>>2]){break Y}i=H[a+28>>2];c=i+(f<<2)|0;g=H[c>>2];if((g|0)==33554431){break Y}d=H[a+136>>2];h=a+140|0;break Z}h=I[(j+N(f,24)|0)+5|0];d=N(h,12)+a|0;i=H[a+28>>2];c=i+(f<<2)|0;g=H[c>>2];o=(h<<2)+a|0;r=H[o+252>>2];_:{if(g>>>0>=r>>>0){d=H[d+112>>2];break _}d=H[d+112>>2];r=H[(d+(r<<2)|0)-4>>2];w=(r>>>5&134217724)+i|0;H[c>>2]=H[w>>2];H[w>>2]=g;H[(g<<2)+d>>2]=r;H[(H[c>>2]<<2)+d>>2]=v;H[o+252>>2]=H[o+252>>2]-1;g=H[c>>2]}h=(N(h,12)+a|0)+116|0}o=H[((H[h>>2]<<2)+d|0)-4>>2];H[i+(o>>>5&134217724)>>2]=g;H[(H[c>>2]<<2)+d>>2]=o;H[h>>2]=H[h>>2]-1;H[c>>2]=33554431}F[q+4|0]=p&221;c=H[j+N(f,24)>>2];if((c|0)==-1){break X}while(1){f=H[a+84>>2];d=(c>>>0)/(f>>>0)|0;f=c-N(d,f)|0;g=H[H[a+64>>2]+(d<<2)>>2];i=c^1;j=H[a+448>>2];h=H[j+20>>2];d=(i>>>0)/(h>>>0)|0;d=H[H[H[j>>2]+(d<<2)>>2]+(i-N(d,h)<<2)>>2]>>>7|0;$:{if(I[(H[a+16>>2]+N(d,24)|0)+4|0]&2?(d|0)!=33554431:0){break $}c=c>>>1|0;H[k+12>>2]=c;d=H[a+60>>2];i=(c>>>0)/(d>>>0)|0;d=H[H[a+40>>2]+(i<<2)>>2]+(c-N(d,i)<<4)|0;i=J[d+4>>1];if(!(i&4)){break $}G[d+4>>1]=i&65531;i=(H[d>>2]<<2)+a|0;H[i+172>>2]=H[i+172>>2]-1;NE(a,c);c=N(H[d>>2],12)+a|0;d=c+420|0;i=H[c+424>>2];if(i>>>0>=(H[c+428>>2]&2147483647)>>>0){qm(d,k+12|0);break $}H[H[d>>2]+(i<<2)>>2]=H[k+12>>2];H[c+424>>2]=H[c+424>>2]+1}c=H[g+(f<<3)>>2];if((c|0)!=-1){continue}break}}Oa=k+16|0;c=H[s+8>>2];H[l+8>>2]=c;f=c>>>7|0;if((f|0)!=33554431){continue}break}d=H[a+88>>2]}f=H[a+240>>2];g=H[(f+(H[a+244>>2]<<2)|0)-4>>2];c=d+m|0;H[(N(g,44)+d|0)+16>>2]=H[c+16>>2];H[f+(H[c+16>>2]<<2)>>2]=g;H[a+244>>2]=H[a+244>>2]-1;H[c+16>>2]=-1;c=H[a+216>>2]+(b>>>3&536870908)|0;d=H[c>>2];Q=c,V=j7(-2,b)&d,H[Q>>2]=V;Oa=l+16|0}if(!e){break Q}l=H[a+216>>2];b=H[a+240>>2];continue}}g=H[a+40>>2];f=H[a+60>>2];b=H[a+288>>2];if(b){c=H[a+284>>2];e=0;while(1){d=H[c+(e<<2)>>2];l=(d>>>0)/(f>>>0)|0;d=H[(l<<2)+g>>2]+(d-N(f,l)<<4)|0;G[d+4>>1]=J[d+4>>1]&65527;e=e+1|0;if((b|0)!=(e|0)){continue}break}g=H[a+40>>2];f=H[a+60>>2]}e=0;H[a+288>>2]=0;b=H[a+300>>2];if(b){c=H[a+296>>2];while(1){d=H[c+(e<<2)>>2];l=(d>>>0)/(f>>>0)|0;d=H[(l<<2)+g>>2]+(d-N(f,l)<<4)|0;G[d+4>>1]=J[d+4>>1]&65527;e=e+1|0;if((b|0)!=(e|0)){continue}break}}H[a+300>>2]=0;Oa=n- -64|0}function MX(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=e|0;f=f|0;g=O(g);h=h|0;i=i|0;j=j|0;k=k|0;l=O(l);var m=0,n=0,o=0,p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=0,y=O(0),z=O(0),A=O(0),B=0,C=O(0),D=O(0),E=O(0),G=O(0),J=O(0),K=O(0),M=O(0),N=O(0),P=O(0),Q=0,S=O(0),T=0,U=O(0),V=O(0),X=O(0),Y=O(0),Z=O(0),_=0,$=O(0),aa=O(0),ba=O(0),ca=0,da=O(0),ea=O(0),fa=0,ga=O(0),ha=O(0),ia=O(0),ja=O(0),ka=O(0),la=O(0),ma=O(0),na=O(0),oa=O(0),pa=O(0),qa=0,ra=O(0),sa=O(0),ta=O(0),ua=0,va=0,wa=O(0),xa=O(0),ya=O(0),za=O(0),Aa=O(0),Ba=O(0),Ca=O(0),Da=O(0),Ea=O(0),Fa=O(0),Ga=O(0),Ha=O(0),Ia=O(0),Ja=O(0),Ka=O(0),La=O(0),Ma=O(0),Na=O(0);b=Oa-352|0;Oa=b;H[b+8>>2]=0;H[b+12>>2]=0;H[b>>2]=0;H[b+4>>2]=0;H[b+28>>2]=4;q=L[a+8>>2];E=L[a+4>>2];H[b+76>>2]=0;H[b+60>>2]=0;l=O(q*O(0));L[b+56>>2]=l;L[b+52>>2]=l;l=O(-l);L[b+72>>2]=l;L[b+68>>2]=l;L[b+80>>2]=E;L[b+48>>2]=q;F[b+32|0]=1;L[b+24>>2]=E;L[b+20>>2]=E;L[b+16>>2]=E;L[b+64>>2]=-q;H[b+344>>2]=0;H[b+348>>2]=0;H[b+336>>2]=0;H[b+340>>2]=0;wa=L[e+20>>2];v=L[f+20>>2];xa=L[e+24>>2];s=L[f+24>>2];G=L[d+8>>2];N=L[d>>2];z=L[d+4>>2];A=L[d+12>>2];X=L[c+12>>2];Z=L[c>>2];ya=L[e+16>>2];w=L[f+16>>2];U=L[c+4>>2];V=L[c+8>>2];H[b+332>>2]=0;H[b+316>>2]=0;H[b+300>>2]=0;sa=O(-Z);t=O(w-ya);p=O(v-wa);r=O(s-xa);q=O(O(O(sa*t)-O(p*U))-O(V*r));da=O(O(X*X)+O(-.5));l=O(O(O(X*O(O(U*t)-O(Z*p)))+O(da*r))-O(V*q));L[b+328>>2]=l+l;l=O(O(O(da*p)+O(X*O(O(Z*r)-O(V*t))))-O(U*q));L[b+324>>2]=l+l;B=b+320|0;l=O(O(O(da*t)+O(X*O(O(V*p)-O(U*r))))-O(Z*q));L[B>>2]=l+l;l=O(O(O(z*V)-O(U*G))+O(O(N*X)-O(A*Z)));u=O(l+l);J=O(O(O(G*Z)-O(V*N))+O(O(z*X)-O(A*U)));p=O(J+J);r=O(O(1)-O(l*u));y=O(J*p);L[b+312>>2]=r-y;C=O(O(O(N*U)-O(Z*z))+O(O(G*X)-O(A*V)));q=O(C*p);A=O(O(A*X)-O(O(O(sa*N)-O(z*U))-O(V*G)));l=O(A*u);L[b+308>>2]=q-l;t=O(C*u);p=O(A*p);L[b+304>>2]=t+p;L[b+296>>2]=q+l;q=r;l=O(C+C);r=O(C*l);L[b+292>>2]=q-r;q=O(J*u);l=O(A*l);L[b+288>>2]=q-l;H[b+284>>2]=0;L[b+280>>2]=t-p;L[b+276>>2]=q+l;L[b+272>>2]=O(O(1)-y)-r;y=L[c+20>>2];t=L[d+20>>2];p=L[c+24>>2];r=L[d+24>>2];q=L[c+16>>2];l=L[d+16>>2];H[b+268>>2]=0;Ba=O(r-s);A=O(O(p-xa)-Ba);Ca=O(l-w);p=O(O(q-ya)-Ca);Da=O(t-v);r=O(O(y-wa)-Da);q=O(O(V*A)+O(O(Z*p)+O(U*r)));l=O(O(O(da*A)-O(X*O(O(Z*r)-O(U*p))))+O(V*q));L[b+264>>2]=l+l;l=O(O(U*q)+O(O(da*r)-O(X*O(O(V*p)-O(A*Z)))));L[b+260>>2]=l+l;l=O(O(Z*q)+O(O(da*p)-O(X*O(O(U*A)-O(r*V)))));L[b+256>>2]=l+l;H[b+192>>2]=0;H[b+112>>2]=127220;H[b+116>>2]=k;H[b+120>>2]=b+272;a=H[b+292>>2];H[b+144>>2]=H[b+288>>2];H[b+148>>2]=a;a=H[b+300>>2];H[b+152>>2]=H[b+296>>2];H[b+156>>2]=a;a=H[b+284>>2];H[b+136>>2]=H[b+280>>2];H[b+140>>2]=a;a=H[b+308>>2];H[b+160>>2]=H[b+304>>2];H[b+164>>2]=a;a=H[b+316>>2];H[b+168>>2]=H[b+312>>2];H[b+172>>2]=a;a=H[B+4>>2];H[b+176>>2]=H[B>>2];H[b+180>>2]=a;a=H[b+332>>2];H[b+184>>2]=H[b+328>>2];H[b+188>>2]=a;a=H[b+276>>2];H[b+128>>2]=H[b+272>>2];H[b+132>>2]=a;r=L[b+132>>2];L[b+132>>2]=L[b+144>>2];q=L[b+152>>2];l=L[b+136>>2];L[b+136>>2]=L[b+160>>2];L[b+152>>2]=L[b+164>>2];L[b+160>>2]=l;L[b+164>>2]=q;L[b+144>>2]=r;H[b+104>>2]=125948;H[b+108>>2]=b;ta=O(3.4028234663852886e38);o=Oa-288|0;Oa=o;ea=O(E+g);m=Oa-272|0;Oa=m;H[m+264>>2]=0;H[m+268>>2]=0;H[m+256>>2]=0;H[m+260>>2]=0;ga=L[b+344>>2];$=L[b+340>>2];ka=L[b+336>>2];la=L[b+264>>2];Y=L[b+260>>2];K=L[b+256>>2];H[m+240>>2]=1;ua=b+112|0;x=ua;d=H[x+8>>2];D=L[d+52>>2];S=L[d+36>>2];M=L[d+20>>2];j=b+104|0;a=H[j+4>>2];Ea=L[a+56>>2];Fa=L[a+52>>2];Ga=L[a+72>>2];Ha=L[a+68>>2];E=L[d+56>>2];G=L[d+40>>2];N=L[d+24>>2];c=H[x+4>>2];P=L[c+72>>2];Ia=L[c- -64>>2];Ja=L[c+68>>2];Ka=L[c+56>>2];ha=L[c+52>>2];oa=L[c+88>>2];z=L[x+56>>2];u=L[x+24>>2];C=L[x+40>>2];ma=L[c+80>>2];v=L[x+48>>2];s=L[x+32>>2];na=L[c+84>>2];t=L[x+52>>2];p=L[x+20>>2];l=L[x+36>>2];J=L[d+48>>2];w=L[d+32>>2];A=L[d>>2];y=L[d+16>>2];r=L[d+4>>2];aa=L[a+48>>2];ba=L[a+64>>2];q=L[d+8>>2];ia=L[c+48>>2];g=L[x+16>>2];za=L[B+8>>2];ja=L[B>>2];pa=L[B+4>>2];H[m+196>>2]=0;H[m+200>>2]=0;H[m+204>>2]=0;H[m+208>>2]=0;H[m+212>>2]=0;H[m+216>>2]=0;H[m+220>>2]=0;H[m+224>>2]=0;H[m+228>>2]=0;H[m+232>>2]=0;f=0;H[m+236>>2]=0;H[m+188>>2]=0;H[m+192>>2]=0;Ma=E;Na=G;La=P;Aa=u;a=O(O(za*za)+O(O(ja*ja)+O(pa*pa)))>O(1.1920928955078125e-7);u=a?ja:O(1);ja=a?za:O(0);P=a?pa:O(0);E=O(O(1)/O(W(O(O(ja*ja)+O(O(u*u)+O(P*P))))));G=O(u*E);u=O(-G);P=O(P*E);pa=z;z=O(ja*E);C=O(O(O(Aa*u)-O(C*P))-O(pa*z));s=O(O(O(g*u)-O(s*P))-O(v*z));p=O(O(O(p*u)-O(l*P))-O(t*z));g=O(O(La*C)+O(O(Ia*s)+O(Ja*p)));l=O(O(oa*C)+O(O(ma*s)+O(p*na)));c=g>l;t=g;g=O(O(Ka*C)+O(O(ia*s)+O(p*ha)));a=!(tl);C=a?c?La:oa:Ka;l=a?c?Ia:ma:ia;g=a?c?Ja:na:ha;t=O(Ma+O(O(Na*C)+O(O(q*l)+O(N*g))));a=O(O(Ea*z)+O(O(aa*G)+O(P*Fa)))>O(O(Ga*z)+O(O(ba*G)+O(P*Ha)));p=a?Ea:Ga;v=O(t-p);L[m+184>>2]=v;r=O(D+O(O(S*C)+O(O(r*l)+O(g*M))));q=a?Fa:Ha;s=O(r-q);L[m+180>>2]=s;l=O(J+O(O(w*C)+O(O(A*l)+O(g*y))));g=a?aa:ba;u=O(l-g);L[m+176>>2]=u;H[m+132>>2]=0;H[m+136>>2]=0;H[m+140>>2]=0;H[m+144>>2]=0;H[m+148>>2]=0;H[m+152>>2]=0;H[m+156>>2]=0;H[m+160>>2]=0;H[m+164>>2]=0;H[m+168>>2]=0;H[m+172>>2]=0;H[m+124>>2]=0;H[m+128>>2]=0;L[m+120>>2]=t;L[m+116>>2]=r;L[m+112>>2]=l;H[m+68>>2]=0;H[m+72>>2]=0;H[m+76>>2]=0;H[m+80>>2]=0;H[m+84>>2]=0;H[m+88>>2]=0;H[m+92>>2]=0;H[m+96>>2]=0;H[m+100>>2]=0;H[m+104>>2]=0;H[m+108>>2]=0;H[m+60>>2]=0;H[m+64>>2]=0;L[m+56>>2]=p;L[m+52>>2]=q;L[m+48>>2]=g;g=O(-v);l=O(-s);r=O(-u);w=O(O(v*v)+O(O(u*u)+O(s*s)));a:{b:{if(!(w>O(0))){q=r;t=l;p=g;E=O(0);C=u;J=s;y=v;break b}ia=O(ea+O(0));ja=O(ia*ia);G=O(O(K*O(0))+ka);N=O(O(Y*O(0))+$);A=O(O(la*O(0))+ga);E=O(0);p=g;t=l;q=r;while(1){C=u;J=s;y=v;s=O(O(1)/O(W(O(O(g*g)+O(O(r*r)+O(l*l))))));oa=O(r*s);a=H[x+4>>2];P=L[a+72>>2];ma=O(g*s);na=O(l*s);M=O(O(L[x+56>>2]*ma)+O(O(oa*L[x+24>>2])+O(na*L[x+40>>2])));ea=L[a- -64>>2];z=O(O(L[x+48>>2]*ma)+O(O(oa*L[x+16>>2])+O(na*L[x+32>>2])));u=O(O(L[x+52>>2]*ma)+O(O(oa*L[x+20>>2])+O(na*L[x+36>>2])));ga=L[a+68>>2];s=O(O(P*M)+O(O(ea*z)+O(u*ga)));$=L[a+88>>2];ka=L[a+80>>2];la=L[a+84>>2];v=O(O($*M)+O(O(ka*z)+O(u*la)));d=s>v;pa=s;Y=L[a+56>>2];K=L[a+48>>2];D=L[a+52>>2];s=O(O(Y*M)+O(O(K*z)+O(u*D)));c=!(pav);a=H[j+4>>2];S=L[a+48>>2];s=O(-oa);M=L[a+52>>2];z=L[a+56>>2];Aa=O(O(O(S*s)-O(M*na))-O(z*ma));u=L[a+64>>2];v=L[a+68>>2];pa=O(O(u*s)-O(v*na));s=L[a+72>>2];a=Aa>O(pa-O(s*ma));e=H[x+8>>2];$=c?d?P:$:Y;Y=c?d?ea:ka:K;D=c?d?ga:la:D;P=O(L[e+48>>2]+O(O(L[e+32>>2]*$)+O(O(L[e>>2]*Y)+O(D*L[e+16>>2]))));ka=a?S:u;ea=O(G+ka);aa=O(P-ea);ga=O(L[e+52>>2]+O(O(L[e+36>>2]*$)+O(O(L[e+4>>2]*Y)+O(D*L[e+20>>2]))));la=a?M:v;K=O(N+la);ba=O(ga-K);$=O(L[e+56>>2]+O(O(L[e+40>>2]*$)+O(O(L[e+8>>2]*Y)+O(D*L[e+24>>2]))));Y=a?z:s;D=O(A+Y);ha=O($-D);S=O(O(O(O(oa*O(-aa))-O(na*ba))-O(ma*ha))-ia);if(S>O(0)){M=L[b+264>>2];z=L[b+256>>2];u=L[b+260>>2];v=O(O(ma*M)+O(O(oa*z)+O(na*u)));if(v>=O(0)){break a}s=E;E=O(s-O(S/v));if(E>s){if(E>O(1)){break a}t=L[b+344>>2];p=L[b+340>>2];q=L[b+336>>2];H[m+92>>2]=0;H[m+76>>2]=0;H[m+60>>2]=0;v=O(q+O(z*E));z=O(v-G);K=O(z+L[m+80>>2]);L[m+80>>2]=K;s=O(p+O(u*E));p=O(s-N);D=O(p+L[m+84>>2]);L[m+84>>2]=D;w=O(t+O(M*E));q=O(w-A);S=O(q+L[m+88>>2]);L[m+88>>2]=S;M=O(z+L[m+64>>2]);L[m+64>>2]=M;G=O(p+L[m+68>>2]);L[m+68>>2]=G;N=O(q+L[m+72>>2]);L[m+72>>2]=N;z=O(z+L[m+48>>2]);L[m+48>>2]=z;u=O(p+L[m+52>>2]);L[m+52>>2]=u;A=O(q+L[m+56>>2]);L[m+56>>2]=A;t=L[m+112>>2];p=L[m+116>>2];q=L[m+120>>2];H[m+188>>2]=0;L[m+184>>2]=q-A;L[m+180>>2]=p-u;L[m+176>>2]=t-z;t=L[m+128>>2];p=L[m+132>>2];q=L[m+136>>2];H[m+204>>2]=0;L[m+200>>2]=q-N;L[m+196>>2]=p-G;L[m+192>>2]=t-M;t=L[m+144>>2];p=L[m+148>>2];q=L[m+152>>2];H[m+220>>2]=0;L[m+216>>2]=q-S;L[m+212>>2]=p-D;L[m+208>>2]=t-K;D=O(Y+w);ha=O($-D);K=O(la+s);ba=O(ga-K);ea=O(ka+v);aa=O(P-ea);q=r;t=l;p=g;G=v;N=s;A=w;w=O(3.4028234663852886e38)}}z=w;c=H[m+240>>2];a=c<<4;d=a+(m+112|0)|0;H[d+12>>2]=0;L[d+8>>2]=$;L[d+4>>2]=ga;L[d>>2]=P;d=a+(m+48|0)|0;H[d+12>>2]=0;L[d+8>>2]=D;L[d+4>>2]=K;L[d>>2]=ea;a=a+(m+176|0)|0;H[a+12>>2]=0;L[a+8>>2]=ha;L[a+4>>2]=ba;L[a>>2]=aa;H[m+240>>2]=c+1;c:{d:{switch(c-1|0){case 0:w=L[m+184>>2];u=O(L[m+200>>2]-w);r=L[m+176>>2];v=O(L[m+192>>2]-r);l=L[m+180>>2];s=O(L[m+196>>2]-l);g=O(O(u*u)+O(O(v*v)+O(s*s)));if(g<=O(1.1920928955078125e-7)){H[m+240>>2]=1;a=H[m+180>>2];H[m+32>>2]=H[m+176>>2];H[m+36>>2]=a;a=H[m+188>>2];H[m+40>>2]=H[m+184>>2];H[m+44>>2]=a;break c}g=O(R(O(O(O(O(O(-r)*v)-O(s*l))-O(w*u))/g),O(1)));g=g>O(0)?g:O(0);L[m+40>>2]=w+O(u*g);L[m+36>>2]=l+O(s*g);L[m+32>>2]=r+O(v*g);break c;case 1:GU(m+32|0,m+176|0,m+112|0,m+48|0,m+240|0);break c;case 2:BZ(m+32|0,m+176|0,m+112|0,m+48|0,m+240|0);break c;default:break d}}L[m+40>>2]=ha;L[m+36>>2]=ba;L[m+32>>2]=aa}v=L[m+40>>2];g=O(-v);s=L[m+36>>2];l=O(-s);u=L[m+32>>2];r=O(-u);w=O(O(v*v)+O(O(u*u)+O(s*s)));if(ja>2]+32|0];ha=O(0);G=O(0);a=!(w>O(0))|f;p=a?p:g;q=a?q:r;l=a?t:l;g=O(W(O(O(p*p)+O(O(q*q)+O(l*l)))));if(!(g<=O(1.1920928955078125e-7))){g=O(O(1)/g);ra=O(p*g);ha=O(l*g);G=O(q*g)}H[o+268>>2]=0;L[o+264>>2]=-ra;L[o+260>>2]=-ha;L[o+256>>2]=-G;L[o+240>>2]=E;H[o+252>>2]=H[m+252>>2];a=H[m+248>>2];H[o+244>>2]=H[m+244>>2];H[o+248>>2]=a;H[m+44>>2]=0;L[m+40>>2]=f?y:v;L[m+36>>2]=f?J:s;L[m+32>>2]=f?C:u;e=H[m+268>>2];c=H[m+264>>2];H[m+24>>2]=c;H[m+28>>2]=e;d=H[m+260>>2];a=H[m+256>>2];H[m+16>>2]=a;H[m+20>>2]=d;H[m+8>>2]=c;H[m+12>>2]=e;H[m>>2]=a;H[m+4>>2]=d;FU(m+176|0,m+112|0,m+48|0,m+32|0,m+16|0,m,H[m+240>>2]);r=L[H[x+4>>2]+16>>2];q=L[m+16>>2];l=L[m+20>>2];g=L[m+24>>2];H[o+284>>2]=0;L[o+280>>2]=g+(k?O(ra*r):O(-0));L[o+276>>2]=l+(k?O(ha*r):O(-0));L[o+272>>2]=q+(k?O(G*r):O(-0));f=1}Oa=m+272|0;if(f){a=H[o+244>>2];H[b+240>>2]=H[o+240>>2];H[b+244>>2]=a;a=H[o+252>>2];H[b+248>>2]=H[o+248>>2];H[b+252>>2]=a;if(L[o+240>>2]==O(0)){a=H[ua+4>>2];c=H[j+4>>2];L[o+224>>2]=O(L[a+16>>2]+L[c+16>>2])*O(100);F[o+215|0]=0;H[o+168>>2]=0;H[o+172>>2]=0;H[o+160>>2]=0;H[o+164>>2]=0;H[o+152>>2]=0;H[o+156>>2]=0;H[o+144>>2]=0;H[o+148>>2]=0;H[o+136>>2]=0;H[o+140>>2]=0;H[o+128>>2]=0;H[o+132>>2]=0;H[o+192>>2]=0;d=H[ua+8>>2];H[o+56>>2]=d;H[o+48>>2]=127220;H[o+52>>2]=a;a=H[d+12>>2];H[o+72>>2]=H[d+8>>2];H[o+76>>2]=a;a=H[d+20>>2];H[o+80>>2]=H[d+16>>2];H[o+84>>2]=a;a=H[d+28>>2];H[o+88>>2]=H[d+24>>2];H[o+92>>2]=a;a=H[d+36>>2];H[o+96>>2]=H[d+32>>2];H[o+100>>2]=a;a=H[d+44>>2];H[o+104>>2]=H[d+40>>2];H[o+108>>2]=a;a=H[d+52>>2];H[o+112>>2]=H[d+48>>2];H[o+116>>2]=a;a=H[d+60>>2];H[o+120>>2]=H[d+56>>2];H[o+124>>2]=a;a=H[d+4>>2];H[o+64>>2]=H[d>>2];H[o+68>>2]=a;q=L[o+68>>2];L[o+68>>2]=L[o+80>>2];l=L[o+88>>2];g=L[o+72>>2];L[o+72>>2]=L[o+96>>2];L[o+80>>2]=q;L[o+96>>2]=g;L[o+88>>2]=L[o+100>>2];L[o+100>>2]=l;H[o+40>>2]=125948;H[o+44>>2]=c;_=o+220|0;ca=o+216|0;n=Oa-320|0;Oa=n;a=H[o+44>>2];l=L[a+20>>2];va=H[o+52>>2];g=L[va+20>>2];G=L[o+224>>2];Q=I[va+32|0];N=L[va+16>>2];m=I[a+32|0];z=L[a+16>>2];H[n+44>>2]=0;ra=O((g>l?l:g)*O(.10000000149011612));e:{f:{g:{h:{i:{j:{x=I[o+215|0];if(x){e=a+48|0;fa=H[o+56>>2];a=0;k=0;while(1){c=k<<2;d=I[k+_|0];H[c+(n- -64|0)>>2]=d;qa=c+(n+48|0)|0;c=I[k+ca|0];H[qa>>2]=c;d=va+(d<<4)|0;K=L[d+56>>2];D=L[d+48>>2];S=L[d+52>>2];c=(1-c<<4)+e|0;M=L[c>>2];E=L[c+4>>2];u=L[c+8>>2];C=L[c+12>>2];J=L[fa+48>>2];v=L[fa+32>>2];s=L[fa>>2];w=L[fa+16>>2];A=L[fa+52>>2];y=L[fa+36>>2];t=L[fa+4>>2];p=L[fa+20>>2];r=L[fa+56>>2];q=L[fa+40>>2];l=L[fa+8>>2];g=L[fa+24>>2];c=a;d=a<<4;T=d+(n+144|0)|0;H[T+12>>2]=0;B=d+(n+80|0)|0;L[B+12>>2]=C;L[B+8>>2]=u;L[B+4>>2]=E;L[B>>2]=M;d=d+(n+208|0)|0;H[d+12>>2]=0;q=O(r+O(O(q*K)+O(O(l*D)+O(S*g))));L[T+8>>2]=q;l=O(A+O(O(y*K)+O(O(t*D)+O(S*p))));L[T+4>>2]=l;g=O(J+O(O(v*K)+O(O(s*D)+O(S*w))));L[T>>2]=g;q=O(q-u);L[d+8>>2]=q;l=O(l-E);L[d+4>>2]=l;g=O(g-M);L[d>>2]=g;a=a+1|0;H[n+44>>2]=a;k=k+1|0;if((x|0)!=(k|0)){continue}break}k:{l:{switch(c-1|0){case 0:r=L[n+216>>2];y=O(L[n+232>>2]-r);q=L[n+208>>2];t=O(L[n+224>>2]-q);l=L[n+212>>2];p=O(L[n+228>>2]-l);g=O(O(y*y)+O(O(t*t)+O(p*p)));if(!(g<=O(1.1920928955078125e-7))){break k}H[n+44>>2]=1;a=H[n+212>>2];H[n+16>>2]=H[n+208>>2];H[n+20>>2]=a;a=H[n+220>>2];H[n+24>>2]=H[n+216>>2];H[n+28>>2]=a;break i;case 1:_W(n+16|0,n+208|0,n+144|0,n+80|0,n- -64|0,n+48|0,n+44|0);break i;case 2:break l;default:break j}}DZ(n+16|0,n+208|0,n+144|0,n+80|0,n- -64|0,n+48|0,n+44|0);break i}H[n+28>>2]=0;g=O(R(O(O(O(O(O(-q)*t)-O(p*l))-O(r*y))/g),O(1)));g=g>O(0)?g:O(0);L[n+24>>2]=r+O(y*g);L[n+20>>2]=l+O(p*g);L[n+16>>2]=q+O(t*g);break i}g=L[B+8>>2];q=L[B>>2];l=L[B+4>>2];H[n+284>>2]=0;a=O(O(g*g)+O(O(q*q)+O(l*l)))>O(0);g=a?g:O(0);L[n+280>>2]=g;l=a?l:O(0);L[n+276>>2]=l;r=a?q:O(1);L[n+272>>2]=r;q=O(O(1)/O(W(O(O(g*g)+O(O(r*r)+O(l*l))))));u=O(g*q);C=O(l*q);J=O(r*q);q=O(3.4028234663852886e38);A=O(0);break h}H[n+28>>2]=0;L[n+24>>2]=q;L[n+20>>2]=l;L[n+16>>2]=g}a=H[n+20>>2];H[n+272>>2]=H[n+16>>2];H[n+276>>2]=a;a=H[n+28>>2];H[n+280>>2]=H[n+24>>2];H[n+284>>2]=a;g=L[n+280>>2];r=L[n+272>>2];l=L[n+276>>2];q=O(W(O(O(g*g)+O(O(r*r)+O(l*l)))));if(!(ra>2]}aa=Q?N:O(0);ba=m?z:O(0);ia=O(aa+ba);ja=O(G+ia);while(1){H[n+296>>2]=H[n+312>>2];a=H[n+308>>2];H[n+288>>2]=H[n+304>>2];H[n+292>>2]=a;d=H[o+56>>2];T=H[n+44>>2];a=T<<2;c=H[o+52>>2];P=L[c+72>>2];p=O(-r);s=O(O(O(L[o+72>>2]*p)-O(L[o+88>>2]*l))-O(L[o+104>>2]*g));ea=L[c- -64>>2];w=O(O(O(L[o+64>>2]*p)-O(L[o+80>>2]*l))-O(L[o+96>>2]*g));y=O(O(O(L[o+68>>2]*p)-O(L[o+84>>2]*l))-O(L[o+100>>2]*g));ga=L[c+68>>2];p=O(O(P*s)+O(O(ea*w)+O(y*ga)));$=L[c+88>>2];ka=L[c+80>>2];la=L[c+84>>2];t=O(O($*s)+O(O(ka*w)+O(y*la)));m=p>t;v=p;Y=L[c+56>>2];K=L[c+48>>2];D=L[c+52>>2];p=O(O(Y*s)+O(O(K*w)+O(y*D)));x=!(vt);H[a+(n- -64|0)>>2]=x?m?1:2:0;S=L[d+56>>2];M=L[d+40>>2];z=L[d+24>>2];E=L[d+52>>2];G=L[d+36>>2];N=L[d+20>>2];v=L[d+8>>2];s=L[d+48>>2];w=L[d+32>>2];y=L[d>>2];t=L[d+16>>2];p=L[d+4>>2];qa=a+(n+48|0)|0;Q=H[o+44>>2];e=Q+56|0;d=Q+52|0;c=Q+72|0;a=Q+68|0;k=O(O(L[e>>2]*g)+O(O(L[Q+48>>2]*r)+O(l*L[d>>2])))>O(O(L[c>>2]*g)+O(O(L[Q+64>>2]*r)+O(l*L[a>>2])));H[qa>>2]=k;Y=x?m?P:$:Y;K=x?m?ea:ka:K;D=x?m?ga:la:D;z=O(S+O(O(M*Y)+O(O(v*K)+O(z*D))));v=L[(k?e:c)>>2];S=O(z-v);s=O(s+O(O(w*Y)+O(O(y*K)+O(D*t))));w=L[(k?Q+48|0:Q- -64|0)>>2];M=O(s-w);y=O(E+O(O(G*Y)+O(O(p*K)+O(D*N))));t=L[(k?d:a)>>2];N=O(y-t);p=O(O(u*S)+O(O(J*M)+O(C*N)));if(p>ja){Q=0;if(!_){break e}F[o+215|0]=T;if(!T){break e}c=0;if((T|0)!=1){e=T&-2;B=0;while(1){a=c<<2;d=n- -64|0;F[c+_|0]=H[a+d>>2];k=a;a=n+48|0;F[c+ca|0]=H[k+a>>2];x=c|1;k=x<<2;F[x+_|0]=H[d+k>>2];F[x+ca|0]=H[a+k>>2];c=c+2|0;B=B+2|0;if((e|0)!=(B|0)){continue}break}}if(!(T&1)){break e}a=c<<2;F[c+_|0]=H[a+(n- -64|0)>>2];F[c+ca|0]=H[a+(n+48|0)>>2];break e}if(p>O(q*O(.9997749924659729))){m:{if(!_){break m}F[o+215|0]=T;if(!T){break m}c=0;if((T|0)!=1){e=T&-2;B=0;while(1){a=c<<2;d=n- -64|0;F[c+_|0]=H[a+d>>2];k=a;a=n+48|0;F[c+ca|0]=H[k+a>>2];x=c|1;k=x<<2;F[x+_|0]=H[d+k>>2];F[x+ca|0]=H[a+k>>2];c=c+2|0;B=B+2|0;if((e|0)!=(B|0)){continue}break}}if(!(T&1)){break m}a=c<<2;F[c+_|0]=H[a+(n- -64|0)>>2];F[c+ca|0]=H[a+(n+48|0)>>2]}L[o+160>>2]=J;H[o+172>>2]=0;L[o+168>>2]=u;L[o+164>>2]=C;FU(n+208|0,n+144|0,n+80|0,n+272|0,n+16|0,n,T);r=L[n+16>>2];l=L[n+20>>2];g=L[n+24>>2];H[o+140>>2]=0;L[o+136>>2]=g-O(aa*u);L[o+132>>2]=l-O(aa*C);L[o+128>>2]=r-O(aa*J);r=L[n>>2];l=L[n+4>>2];g=L[n+8>>2];H[o+156>>2]=0;L[o+152>>2]=g+O(ba*u);L[o+148>>2]=l+O(ba*C);L[o+144>>2]=r+O(ba*J);L[o+192>>2]=q-ia;Q=2;break e}a=T<<4;c=a+(n+144|0)|0;H[c+12>>2]=0;L[c+8>>2]=z;L[c+4>>2]=y;L[c>>2]=s;c=a+(n+80|0)|0;H[c+12>>2]=0;L[c+8>>2]=v;L[c+4>>2]=t;L[c>>2]=w;a=a+(n+208|0)|0;H[a+12>>2]=0;L[a+8>>2]=S;L[a+4>>2]=N;L[a>>2]=M;H[n+44>>2]=T+1;n:{o:{switch(T-1|0){case 0:w=L[n+216>>2];J=O(L[n+232>>2]-w);y=L[n+208>>2];v=O(L[n+224>>2]-y);t=L[n+212>>2];s=O(L[n+228>>2]-t);p=O(O(J*J)+O(O(v*v)+O(s*s)));if(p<=O(1.1920928955078125e-7)){H[n+44>>2]=1;a=H[n+212>>2];H[n+16>>2]=H[n+208>>2];H[n+20>>2]=a;a=H[n+220>>2];H[n+24>>2]=H[n+216>>2];H[n+28>>2]=a;break n}H[n+28>>2]=0;p=O(R(O(O(O(O(O(-y)*v)-O(s*t))-O(w*J))/p),O(1)));p=p>O(0)?p:O(0);L[n+24>>2]=w+O(J*p);L[n+20>>2]=t+O(s*p);L[n+16>>2]=y+O(v*p);break n;case 1:_W(n+16|0,n+208|0,n+144|0,n+80|0,n- -64|0,n+48|0,n+44|0);break n;case 2:DZ(n+16|0,n+208|0,n+144|0,n+80|0,n- -64|0,n+48|0,n+44|0);break n;default:break o}}H[n+28>>2]=0;L[n+24>>2]=S;L[n+20>>2]=N;L[n+16>>2]=M}a=H[n+20>>2];H[n+272>>2]=H[n+16>>2];H[n+276>>2]=a;a=H[n+28>>2];H[n+280>>2]=H[n+24>>2];H[n+284>>2]=a;y=L[n+280>>2];t=L[n+272>>2];p=L[n+276>>2];w=O(W(O(O(y*y)+O(O(t*t)+O(p*p)))));s=O(O(1)/w);u=O(y*s);C=O(p*s);J=O(t*s);if(!(!(w>ra)|!(q>w))){A=L[n+284>>2];g=y;l=p;r=t;q=w;continue}break}k=H[n+44>>2];if(!(q>w)){p:{if(!_){break p}B=k-1|0;F[o+215|0]=B;if(!B){break p}c=0;if((k|0)!=2){x=B&-2;a=0;while(1){d=c<<2;e=n- -64|0;F[c+_|0]=H[d+e>>2];qa=d;d=n+48|0;F[c+ca|0]=H[qa+d>>2];Q=c|1;m=Q<<2;F[Q+_|0]=H[e+m>>2];F[Q+ca|0]=H[d+m>>2];c=c+2|0;a=a+2|0;if((x|0)!=(a|0)){continue}break}}if(!(B&1)){break p}a=c<<2;F[c+_|0]=H[a+(n- -64|0)>>2];F[c+ca|0]=H[a+(n+48|0)>>2]}H[n+312>>2]=H[n+296>>2];a=H[n+292>>2];H[n+304>>2]=H[n+288>>2];H[n+308>>2]=a;L[n+284>>2]=A;L[n+272>>2]=r;L[n+276>>2]=l;L[n+280>>2]=g;FU(n+208|0,n+144|0,n+80|0,n+272|0,n+16|0,n,k);H[o+188>>2]=0;L[o+184>>2]=u;L[o+180>>2]=C;L[o+176>>2]=J;H[o+172>>2]=0;p=g;g=O(O(1)/q);y=O(p*g);L[o+168>>2]=y;t=O(l*g);L[o+164>>2]=t;p=O(r*g);L[o+160>>2]=p;r=L[n+16>>2];l=L[n+20>>2];g=L[n+24>>2];H[o+140>>2]=0;L[o+136>>2]=g-O(aa*y);L[o+132>>2]=l-O(aa*t);L[o+128>>2]=r-O(aa*p);r=L[n>>2];l=L[n+4>>2];g=L[n+8>>2];L[o+192>>2]=q-ia;H[o+156>>2]=0;L[o+152>>2]=g+O(ba*y);L[o+148>>2]=l+O(ba*t);L[o+144>>2]=r+O(ba*p);Q=2;if(q<=ia){break e}Q=4;break e}if(_){break f}Q=5;break e}k=H[n+44>>2]}F[o+215|0]=k;Q=5;if(!k){break e}c=0;if((k|0)!=1){e=k&-2;B=0;while(1){a=c<<2;d=n- -64|0;F[c+_|0]=H[a+d>>2];qa=a;a=n+48|0;F[c+ca|0]=H[qa+a>>2];m=c|1;x=m<<2;F[m+_|0]=H[d+x>>2];F[m+ca|0]=H[a+x>>2];c=c+2|0;B=B+2|0;if((e|0)!=(B|0)){continue}break}}if(!(k&1)){break e}a=c<<2;F[c+_|0]=H[a+(n- -64|0)>>2];F[c+ca|0]=H[a+(n+48|0)>>2]}Oa=n+320|0;q:{r:{if(Q-5|0){break r}H[o+16>>2]=1065353216;a=H[o+28>>2];H[o+8>>2]=H[o+24>>2];H[o+12>>2]=a;a=H[o+20>>2];H[o>>2]=H[o+16>>2];H[o+4>>2]=a;if(wZ(ua,j,o+220|0,o+216|0,I[o+215|0],0,o,o+128|0)-5>>>0<=1){break r}H[o+280>>2]=0;H[o+284>>2]=0;H[o+272>>2]=0;H[o+276>>2]=0;r=L[b+264>>2];q=L[b+256>>2];l=L[b+260>>2];H[o+268>>2]=0;g=O(O(1)/O(W(O(O(r*r)+O(O(q*q)+O(l*l))))));L[o+264>>2]=g*O(-r);L[o+260>>2]=g*O(-l);L[o+256>>2]=g*O(-q);g=O(0);break q}a=H[o+140>>2];H[o+280>>2]=H[o+136>>2];H[o+284>>2]=a;a=H[o+132>>2];H[o+272>>2]=H[o+128>>2];H[o+276>>2]=a;a=H[o+164>>2];H[o+256>>2]=H[o+160>>2];H[o+260>>2]=a;a=H[o+172>>2];H[o+264>>2]=H[o+168>>2];H[o+268>>2]=a;g=L[o+192>>2]}L[b+240>>2]=g>2];H[b+224>>2]=H[o+272>>2];H[b+228>>2]=a;a=H[o+284>>2];H[b+232>>2]=H[o+280>>2];H[b+236>>2]=a;a=H[o+260>>2];H[b+208>>2]=H[o+256>>2];H[b+212>>2]=a;a=H[o+268>>2];H[b+216>>2]=H[o+264>>2];H[b+220>>2]=a}Oa=o+288|0;if(f){ta=L[b+240>>2];w=L[b+232>>2];A=L[b+224>>2];y=L[b+228>>2];t=L[b+216>>2];p=L[b+208>>2];r=L[b+212>>2];l=O(O(V*t)+O(O(Z*p)+O(U*r)));q=O(-U);g=O(O(O(X*O(O(Z*r)+O(p*q)))+O(da*t))+O(V*l));L[h+8>>2]=g+g;g=O(O(U*l)+O(O(da*r)+O(X*O(O(V*p)+O(t*sa)))));L[h+4>>2]=g+g;g=O(Z*l);l=O(-V);g=O(g+O(O(da*p)+O(X*O(O(U*t)+O(r*l)))));L[h>>2]=g+g;r=ta>O(0)?ta:O(0);g=O(O(X*O(O(Z*y)+O(A*q)))+O(da*w));q=O(O(V*w)+O(O(Z*A)+O(U*y)));g=O(g+O(V*q));L[i+8>>2]=O(Ba*r)+O(xa+O(g+g));g=O(O(U*q)+O(O(da*y)+O(X*O(O(V*A)+O(w*sa)))));L[i+4>>2]=O(Da*r)+O(wa+O(g+g));g=O(O(Z*q)+O(O(da*A)+O(X*O(O(U*w)+O(y*l)))));L[i>>2]=O(Ca*r)+O(ya+O(g+g))}Oa=b+352|0;return O(ta)}function FX(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=e|0;f=f|0;g=O(g);h=h|0;i=i|0;j=O(j);k=k|0;l=O(l);var m=0,n=0,o=0,p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=0,v=O(0),w=O(0),x=O(0),y=0,z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),G=0,J=O(0),K=O(0),M=O(0),N=O(0),P=O(0),Q=O(0),S=O(0),T=O(0),U=O(0),V=O(0),X=O(0),Y=0,Z=0,_=O(0),$=O(0),aa=0,ba=O(0),ca=0,da=O(0),ea=O(0),fa=O(0),ga=O(0),ha=O(0),ia=O(0),ja=O(0),ka=O(0),la=O(0),ma=O(0),na=O(0),oa=O(0),pa=O(0),qa=O(0),ra=0,sa=O(0),ta=0,ua=O(0),va=O(0),wa=O(0),xa=0,ya=O(0),za=O(0),Aa=O(0),Ba=O(0),Ca=O(0),Da=O(0),Ea=O(0),Fa=O(0),Ga=O(0),Ha=O(0),Ia=O(0),Ja=O(0);k=Oa-448|0;Oa=k;b=H[b>>2];a=H[a>>2];H[k+104>>2]=0;H[k+108>>2]=0;H[k+96>>2]=0;H[k+100>>2]=0;H[k+124>>2]=4;q=L[a+4>>2];l=L[a+8>>2];H[k+172>>2]=0;H[k+156>>2]=0;j=O(l*O(0));L[k+152>>2]=j;L[k+148>>2]=j;j=O(-j);L[k+168>>2]=j;L[k+164>>2]=j;L[k+176>>2]=q;L[k+144>>2]=l;F[k+128|0]=1;L[k+120>>2]=q;L[k+116>>2]=q;L[k+112>>2]=q;L[k+160>>2]=-l;H[k+8>>2]=0;H[k+12>>2]=0;H[k>>2]=0;H[k+4>>2]=0;H[k+28>>2]=4;q=L[b+4>>2];l=L[b+8>>2];H[k+76>>2]=0;H[k+60>>2]=0;j=O(l*O(0));L[k+56>>2]=j;L[k+52>>2]=j;j=O(-j);L[k+72>>2]=j;L[k+68>>2]=j;L[k+80>>2]=q;L[k+48>>2]=l;F[k+32|0]=1;L[k+24>>2]=q;L[k+20>>2]=q;L[k+16>>2]=q;L[k+64>>2]=-l;w=L[b+4>>2];J=L[a+4>>2];H[k+440>>2]=0;H[k+444>>2]=0;H[k+432>>2]=0;H[k+436>>2]=0;ua=L[f+20>>2];U=L[e+20>>2];va=L[f+24>>2];D=L[e+24>>2];C=L[c+8>>2];A=L[c>>2];B=L[c+4>>2];r=L[c+12>>2];S=L[d+12>>2];V=L[d>>2];wa=L[f+16>>2];v=L[e+16>>2];N=L[d+4>>2];P=L[d+8>>2];H[k+428>>2]=0;H[k+412>>2]=0;H[k+396>>2]=0;pa=O(-V);s=O(v-wa);p=O(U-ua);q=O(D-va);l=O(O(O(pa*s)-O(p*N))-O(P*q));ba=O(O(S*S)+O(-.5));j=O(O(O(S*O(O(N*s)-O(V*p)))+O(ba*q))-O(P*l));L[k+424>>2]=j+j;j=O(O(O(ba*p)+O(S*O(O(V*q)-O(P*s))))-O(N*l));L[k+420>>2]=j+j;y=k+416|0;j=O(O(O(ba*s)+O(S*O(O(P*p)-O(N*q))))-O(V*l));L[y>>2]=j+j;j=O(O(O(B*P)-O(N*C))+O(O(A*S)-O(r*V)));K=O(j+j);t=O(O(O(C*V)-O(P*A))+O(O(B*S)-O(r*N)));p=O(t+t);q=O(O(1)-O(j*K));x=O(t*p);L[k+408>>2]=q-x;z=O(O(O(A*N)-O(V*B))+O(O(C*S)-O(r*P)));l=O(z*p);r=O(O(r*S)-O(O(O(pa*A)-O(B*N))-O(P*C)));j=O(r*K);L[k+404>>2]=l-j;s=O(z*K);p=O(r*p);L[k+400>>2]=s+p;L[k+392>>2]=l+j;l=q;j=O(z+z);q=O(z*j);L[k+388>>2]=l-q;l=O(t*K);j=O(r*j);L[k+384>>2]=l-j;H[k+380>>2]=0;L[k+376>>2]=s-p;L[k+372>>2]=l+j;L[k+368>>2]=O(O(1)-x)-q;x=L[d+20>>2];s=L[c+20>>2];p=L[d+24>>2];q=L[c+24>>2];l=L[d+16>>2];j=L[c+16>>2];H[k+364>>2]=0;za=O(q-D);r=O(O(p-va)-za);Aa=O(j-v);p=O(O(l-wa)-Aa);Ba=O(s-U);q=O(O(x-ua)-Ba);l=O(O(P*r)+O(O(V*p)+O(N*q)));j=O(O(O(ba*r)-O(S*O(O(V*q)-O(N*p))))+O(P*l));L[k+360>>2]=j+j;j=O(O(N*l)+O(O(ba*q)-O(S*O(O(P*p)-O(r*V)))));L[k+356>>2]=j+j;j=O(O(V*l)+O(O(ba*p)-O(S*O(O(N*r)-O(q*P)))));L[k+352>>2]=j+j;H[k+288>>2]=0;H[k+208>>2]=127172;H[k+216>>2]=k+368;H[k+212>>2]=k+96;a=H[k+388>>2];H[k+240>>2]=H[k+384>>2];H[k+244>>2]=a;a=H[k+396>>2];H[k+248>>2]=H[k+392>>2];H[k+252>>2]=a;a=H[k+380>>2];H[k+232>>2]=H[k+376>>2];H[k+236>>2]=a;a=H[k+404>>2];H[k+256>>2]=H[k+400>>2];H[k+260>>2]=a;a=H[k+412>>2];H[k+264>>2]=H[k+408>>2];H[k+268>>2]=a;a=H[y+4>>2];H[k+272>>2]=H[y>>2];H[k+276>>2]=a;a=H[k+428>>2];H[k+280>>2]=H[k+424>>2];H[k+284>>2]=a;a=H[k+372>>2];H[k+224>>2]=H[k+368>>2];H[k+228>>2]=a;q=L[k+228>>2];L[k+228>>2]=L[k+240>>2];l=L[k+248>>2];j=L[k+232>>2];L[k+232>>2]=L[k+256>>2];L[k+248>>2]=L[k+260>>2];L[k+256>>2]=j;L[k+260>>2]=l;L[k+240>>2]=q;H[k+200>>2]=125948;H[k+204>>2]=k;qa=O(3.4028234663852886e38);o=Oa-288|0;Oa=o;da=O(w+O(J+g));m=Oa-272|0;Oa=m;H[m+264>>2]=0;H[m+268>>2]=0;H[m+256>>2]=0;H[m+260>>2]=0;$=L[k+440>>2];X=L[k+436>>2];ea=L[k+432>>2];fa=L[k+360>>2];Q=L[k+356>>2];_=L[k+352>>2];H[m+240>>2]=1;ra=k+208|0;u=ra;d=H[u+8>>2];E=L[d+52>>2];M=L[d+36>>2];C=L[d+20>>2];xa=k+200|0;b=xa;c=H[b+4>>2];Ca=L[c+56>>2];Da=L[c+52>>2];Ea=L[c+72>>2];Fa=L[c+68>>2];A=L[d+56>>2];B=L[d+40>>2];K=L[d+24>>2];a=H[u+4>>2];T=L[a+56>>2];ga=L[a+52>>2];ka=L[a+72>>2];z=L[u+56>>2];t=L[u+24>>2];l=L[u+40>>2];v=L[u+48>>2];j=L[u+32>>2];ia=L[a+68>>2];r=L[u+52>>2];s=L[u+20>>2];p=L[u+36>>2];U=L[d+48>>2];D=L[d+32>>2];w=L[d>>2];J=L[d+16>>2];x=L[d+4>>2];ja=L[c+48>>2];la=L[c+64>>2];q=L[d+8>>2];ma=L[a+48>>2];na=L[a+64>>2];g=L[u+16>>2];oa=L[y+8>>2];ha=L[y>>2];ya=L[y+4>>2];H[m+196>>2]=0;H[m+200>>2]=0;H[m+204>>2]=0;H[m+208>>2]=0;H[m+212>>2]=0;H[m+216>>2]=0;H[m+220>>2]=0;H[m+224>>2]=0;H[m+228>>2]=0;H[m+232>>2]=0;e=0;H[m+236>>2]=0;H[m+188>>2]=0;H[m+192>>2]=0;Ha=A;Ia=B;sa=T;Ja=t;a=O(O(oa*oa)+O(O(ha*ha)+O(ya*ya)))>O(1.1920928955078125e-7);t=a?ha:O(1);ha=a?oa:O(0);T=a?ya:O(0);A=O(O(1)/O(W(O(O(ha*ha)+O(O(t*t)+O(T*T))))));B=O(t*A);t=O(-B);T=O(T*A);oa=z;z=O(ha*A);l=O(O(O(Ja*t)-O(l*T))-O(oa*z));j=O(O(O(g*t)-O(j*T))-O(v*z));g=O(O(O(s*t)-O(p*T))-O(r*z));a=O(O(sa*l)+O(O(ma*j)+O(ga*g)))>O(O(ka*l)+O(O(na*j)+O(g*ia)));t=a?sa:ka;j=a?ma:na;g=a?ga:ia;s=O(Ha+O(O(Ia*t)+O(O(q*j)+O(K*g))));a=O(O(Ca*z)+O(O(ja*B)+O(T*Da)))>O(O(Ea*z)+O(O(la*B)+O(T*Fa)));p=a?Ca:Ea;v=O(s-p);L[m+184>>2]=v;q=O(E+O(O(M*t)+O(O(x*j)+O(g*C))));l=a?Da:Fa;r=O(q-l);L[m+180>>2]=r;j=O(U+O(O(D*t)+O(O(w*j)+O(g*J))));g=a?ja:la;t=O(j-g);L[m+176>>2]=t;H[m+132>>2]=0;H[m+136>>2]=0;H[m+140>>2]=0;H[m+144>>2]=0;H[m+148>>2]=0;H[m+152>>2]=0;H[m+156>>2]=0;H[m+160>>2]=0;H[m+164>>2]=0;H[m+168>>2]=0;H[m+172>>2]=0;H[m+124>>2]=0;H[m+128>>2]=0;L[m+120>>2]=s;L[m+116>>2]=q;L[m+112>>2]=j;H[m+68>>2]=0;H[m+72>>2]=0;H[m+76>>2]=0;H[m+80>>2]=0;H[m+84>>2]=0;H[m+88>>2]=0;H[m+92>>2]=0;H[m+96>>2]=0;H[m+100>>2]=0;H[m+104>>2]=0;H[m+108>>2]=0;H[m+60>>2]=0;H[m+64>>2]=0;L[m+56>>2]=p;L[m+52>>2]=l;L[m+48>>2]=g;g=O(-v);j=O(-r);l=O(-t);w=O(O(v*v)+O(O(t*t)+O(r*r)));a:{b:{if(!(w>O(0))){q=l;s=j;p=g;A=O(0);U=t;D=r;x=v;break b}na=O(da+O(0));da=O(na*na);B=O(O(_*O(0))+ea);K=O(O(Q*O(0))+X);J=O(O(fa*O(0))+$);A=O(0);p=g;s=j;q=l;while(1){U=t;D=r;x=v;r=O(O(1)/O(W(O(O(g*g)+O(O(l*l)+O(j*j))))));ka=O(l*r);a=H[u+4>>2];X=L[a+56>>2];ia=O(g*r);ja=O(j*r);t=O(O(L[u+56>>2]*ia)+O(O(ka*L[u+24>>2])+O(ja*L[u+40>>2])));ea=L[a+48>>2];v=O(O(L[u+48>>2]*ia)+O(O(ka*L[u+16>>2])+O(ja*L[u+32>>2])));r=O(O(L[u+52>>2]*ia)+O(O(ka*L[u+20>>2])+O(ja*L[u+36>>2])));fa=L[a+52>>2];Q=L[a+72>>2];_=L[a+64>>2];E=L[a+68>>2];c=O(O(X*t)+O(O(ea*v)+O(r*fa)))>O(O(Q*t)+O(O(_*v)+O(r*E)));a=H[b+4>>2];M=L[a+48>>2];r=O(-ka);C=L[a+52>>2];z=L[a+56>>2];T=O(O(O(M*r)-O(C*ja))-O(z*ia));t=L[a+64>>2];v=L[a+68>>2];sa=O(O(t*r)-O(v*ja));r=L[a+72>>2];a=T>O(sa-O(r*ia));d=H[u+8>>2];X=c?X:Q;Q=c?ea:_;E=c?fa:E;ha=O(L[d+48>>2]+O(O(L[d+32>>2]*X)+O(O(L[d>>2]*Q)+O(E*L[d+16>>2]))));ea=a?M:t;T=O(B+ea);la=O(ha-T);$=O(L[d+52>>2]+O(O(L[d+36>>2]*X)+O(O(L[d+4>>2]*Q)+O(E*L[d+20>>2]))));fa=a?C:v;_=O(K+fa);ma=O($-_);X=O(L[d+56>>2]+O(O(L[d+40>>2]*X)+O(O(L[d+8>>2]*Q)+O(E*L[d+24>>2]))));Q=a?z:r;E=O(J+Q);ga=O(X-E);M=O(O(O(O(ka*O(-la))-O(ja*ma))-O(ia*ga))-na);if(M>O(0)){C=L[k+360>>2];z=L[k+352>>2];t=L[k+356>>2];v=O(O(ia*C)+O(O(ka*z)+O(ja*t)));if(v>=O(0)){break a}r=A;A=O(r-O(M/v));if(A>r){if(A>O(1)){break a}s=L[k+440>>2];p=L[k+436>>2];q=L[k+432>>2];H[m+92>>2]=0;H[m+76>>2]=0;H[m+60>>2]=0;v=O(q+O(z*A));z=O(v-B);_=O(z+L[m+80>>2]);L[m+80>>2]=_;r=O(p+O(t*A));p=O(r-K);E=O(p+L[m+84>>2]);L[m+84>>2]=E;w=O(s+O(C*A));q=O(w-J);M=O(q+L[m+88>>2]);L[m+88>>2]=M;C=O(z+L[m+64>>2]);L[m+64>>2]=C;B=O(p+L[m+68>>2]);L[m+68>>2]=B;K=O(q+L[m+72>>2]);L[m+72>>2]=K;z=O(z+L[m+48>>2]);L[m+48>>2]=z;t=O(p+L[m+52>>2]);L[m+52>>2]=t;J=O(q+L[m+56>>2]);L[m+56>>2]=J;s=L[m+112>>2];p=L[m+116>>2];q=L[m+120>>2];H[m+188>>2]=0;L[m+184>>2]=q-J;L[m+180>>2]=p-t;L[m+176>>2]=s-z;s=L[m+128>>2];p=L[m+132>>2];q=L[m+136>>2];H[m+204>>2]=0;L[m+200>>2]=q-K;L[m+196>>2]=p-B;L[m+192>>2]=s-C;s=L[m+144>>2];p=L[m+148>>2];q=L[m+152>>2];H[m+220>>2]=0;L[m+216>>2]=q-M;L[m+212>>2]=p-E;L[m+208>>2]=s-_;E=O(Q+w);ga=O(X-E);_=O(fa+r);ma=O($-_);T=O(ea+v);la=O(ha-T);q=l;s=j;p=g;B=v;K=r;J=w;w=O(3.4028234663852886e38)}}z=w;c=H[m+240>>2];a=c<<4;d=a+(m+112|0)|0;H[d+12>>2]=0;L[d+8>>2]=X;L[d+4>>2]=$;L[d>>2]=ha;d=a+(m+48|0)|0;H[d+12>>2]=0;L[d+8>>2]=E;L[d+4>>2]=_;L[d>>2]=T;a=a+(m+176|0)|0;H[a+12>>2]=0;L[a+8>>2]=ga;L[a+4>>2]=ma;L[a>>2]=la;H[m+240>>2]=c+1;c:{d:{switch(c-1|0){case 0:w=L[m+184>>2];t=O(L[m+200>>2]-w);l=L[m+176>>2];v=O(L[m+192>>2]-l);j=L[m+180>>2];r=O(L[m+196>>2]-j);g=O(O(t*t)+O(O(v*v)+O(r*r)));if(g<=O(1.1920928955078125e-7)){H[m+240>>2]=1;a=H[m+180>>2];H[m+32>>2]=H[m+176>>2];H[m+36>>2]=a;a=H[m+188>>2];H[m+40>>2]=H[m+184>>2];H[m+44>>2]=a;break c}g=O(R(O(O(O(O(O(-l)*v)-O(r*j))-O(w*t))/g),O(1)));g=g>O(0)?g:O(0);L[m+40>>2]=w+O(t*g);L[m+36>>2]=j+O(r*g);L[m+32>>2]=l+O(v*g);break c;case 1:GU(m+32|0,m+176|0,m+112|0,m+48|0,m+240|0);break c;case 2:BZ(m+32|0,m+176|0,m+112|0,m+48|0,m+240|0);break c;default:break d}}L[m+40>>2]=ga;L[m+36>>2]=ma;L[m+32>>2]=la}v=L[m+40>>2];g=O(-v);r=L[m+36>>2];j=O(-r);t=L[m+32>>2];l=O(-t);w=O(O(v*v)+O(O(t*t)+O(r*r)));if(da>2]+32|0];ga=O(0);B=O(0);a=!(w>O(0))|e;p=a?p:g;l=a?q:l;j=a?s:j;g=O(W(O(O(p*p)+O(O(l*l)+O(j*j)))));if(!(g<=O(1.1920928955078125e-7))){g=O(O(1)/g);Ga=O(p*g);ga=O(j*g);B=O(l*g)}H[o+268>>2]=0;L[o+264>>2]=-Ga;L[o+260>>2]=-ga;L[o+256>>2]=-B;L[o+240>>2]=A;H[o+252>>2]=H[m+252>>2];a=H[m+248>>2];H[o+244>>2]=H[m+244>>2];H[o+248>>2]=a;H[m+44>>2]=0;L[m+40>>2]=e?x:v;L[m+36>>2]=e?D:r;L[m+32>>2]=e?U:t;d=H[m+268>>2];b=H[m+264>>2];H[m+24>>2]=b;H[m+28>>2]=d;c=H[m+260>>2];a=H[m+256>>2];H[m+16>>2]=a;H[m+20>>2]=c;H[m+8>>2]=b;H[m+12>>2]=d;H[m>>2]=a;H[m+4>>2]=c;FU(m+176|0,m+112|0,m+48|0,m+32|0,m+16|0,m,H[m+240>>2]);q=L[H[u+4>>2]+16>>2];l=L[m+16>>2];j=L[m+20>>2];g=L[m+24>>2];H[o+284>>2]=0;L[o+280>>2]=g+(f?O(Ga*q):O(-0));L[o+276>>2]=j+(f?O(ga*q):O(-0));L[o+272>>2]=l+(f?O(B*q):O(-0));e=1}Oa=m+272|0;if(e){a=H[o+244>>2];H[k+336>>2]=H[o+240>>2];H[k+340>>2]=a;a=H[o+252>>2];H[k+344>>2]=H[o+248>>2];H[k+348>>2]=a;if(L[o+240>>2]==O(0)){a=H[ra+4>>2];b=H[xa+4>>2];L[o+224>>2]=O(L[a+16>>2]+L[b+16>>2])*O(100);F[o+215|0]=0;H[o+168>>2]=0;H[o+172>>2]=0;H[o+160>>2]=0;H[o+164>>2]=0;H[o+152>>2]=0;H[o+156>>2]=0;H[o+144>>2]=0;H[o+148>>2]=0;H[o+136>>2]=0;H[o+140>>2]=0;H[o+128>>2]=0;H[o+132>>2]=0;H[o+192>>2]=0;c=H[ra+8>>2];H[o+56>>2]=c;H[o+48>>2]=127172;H[o+52>>2]=a;a=H[c+12>>2];H[o+72>>2]=H[c+8>>2];H[o+76>>2]=a;a=H[c+20>>2];H[o+80>>2]=H[c+16>>2];H[o+84>>2]=a;a=H[c+28>>2];H[o+88>>2]=H[c+24>>2];H[o+92>>2]=a;a=H[c+36>>2];H[o+96>>2]=H[c+32>>2];H[o+100>>2]=a;a=H[c+44>>2];H[o+104>>2]=H[c+40>>2];H[o+108>>2]=a;a=H[c+52>>2];H[o+112>>2]=H[c+48>>2];H[o+116>>2]=a;a=H[c+60>>2];H[o+120>>2]=H[c+56>>2];H[o+124>>2]=a;a=H[c+4>>2];H[o+64>>2]=H[c>>2];H[o+68>>2]=a;l=L[o+68>>2];L[o+68>>2]=L[o+80>>2];j=L[o+88>>2];g=L[o+72>>2];L[o+72>>2]=L[o+96>>2];L[o+80>>2]=l;L[o+96>>2]=g;L[o+88>>2]=L[o+100>>2];L[o+100>>2]=j;H[o+40>>2]=125948;H[o+44>>2]=b;Y=o+220|0;aa=o+216|0;n=Oa-320|0;Oa=n;b=H[o+44>>2];j=L[b+20>>2];a=H[o+52>>2];g=L[a+20>>2];B=L[o+224>>2];Z=I[a+32|0];K=L[a+16>>2];m=I[b+32|0];z=L[b+16>>2];H[n+44>>2]=0;_=O((g>j?j:g)*O(.10000000149011612));e:{f:{g:{h:{i:{j:{u=I[o+215|0];if(u){y=b+48|0;d=a+48|0;ca=H[o+56>>2];a=0;f=0;while(1){b=f<<2;c=I[f+Y|0];H[b+(n- -64|0)>>2]=c;G=b+(n+48|0)|0;b=I[f+aa|0];H[G>>2]=b;c=(1-c<<4)+d|0;Q=L[c+8>>2];E=L[c>>2];M=L[c+4>>2];b=(1-b<<4)+y|0;C=L[b>>2];A=L[b+4>>2];t=L[b+8>>2];U=L[b+12>>2];D=L[ca+48>>2];v=L[ca+32>>2];r=L[ca>>2];w=L[ca+16>>2];J=L[ca+52>>2];x=L[ca+36>>2];s=L[ca+4>>2];p=L[ca+20>>2];q=L[ca+56>>2];l=L[ca+40>>2];j=L[ca+8>>2];g=L[ca+24>>2];b=a;c=a<<4;ta=c+(n+144|0)|0;H[ta+12>>2]=0;G=c+(n+80|0)|0;L[G+12>>2]=U;L[G+8>>2]=t;L[G+4>>2]=A;L[G>>2]=C;c=c+(n+208|0)|0;H[c+12>>2]=0;l=O(q+O(O(l*Q)+O(O(j*E)+O(M*g))));L[ta+8>>2]=l;j=O(J+O(O(x*Q)+O(O(s*E)+O(M*p))));L[ta+4>>2]=j;g=O(D+O(O(v*Q)+O(O(r*E)+O(M*w))));L[ta>>2]=g;l=O(l-t);L[c+8>>2]=l;j=O(j-A);L[c+4>>2]=j;g=O(g-C);L[c>>2]=g;a=a+1|0;H[n+44>>2]=a;f=f+1|0;if((u|0)!=(f|0)){continue}break}k:{l:{switch(b-1|0){case 0:q=L[n+216>>2];x=O(L[n+232>>2]-q);l=L[n+208>>2];s=O(L[n+224>>2]-l);j=L[n+212>>2];p=O(L[n+228>>2]-j);g=O(O(x*x)+O(O(s*s)+O(p*p)));if(!(g<=O(1.1920928955078125e-7))){break k}H[n+44>>2]=1;a=H[n+212>>2];H[n+16>>2]=H[n+208>>2];H[n+20>>2]=a;a=H[n+220>>2];H[n+24>>2]=H[n+216>>2];H[n+28>>2]=a;break i;case 1:_W(n+16|0,n+208|0,n+144|0,n+80|0,n- -64|0,n+48|0,n+44|0);break i;case 2:break l;default:break j}}DZ(n+16|0,n+208|0,n+144|0,n+80|0,n- -64|0,n+48|0,n+44|0);break i}H[n+28>>2]=0;g=O(R(O(O(O(O(O(-l)*s)-O(p*j))-O(q*x))/g),O(1)));g=g>O(0)?g:O(0);L[n+24>>2]=q+O(x*g);L[n+20>>2]=j+O(p*g);L[n+16>>2]=l+O(s*g);break i}g=L[y+8>>2];l=L[y>>2];j=L[y+4>>2];H[n+284>>2]=0;a=O(O(g*g)+O(O(l*l)+O(j*j)))>O(0);g=a?g:O(0);L[n+280>>2]=g;j=a?j:O(0);L[n+276>>2]=j;l=a?l:O(1);L[n+272>>2]=l;q=O(O(1)/O(W(O(O(g*g)+O(O(l*l)+O(j*j))))));t=O(g*q);U=O(j*q);D=O(l*q);q=O(3.4028234663852886e38);J=O(0);break h}H[n+28>>2]=0;L[n+24>>2]=l;L[n+20>>2]=j;L[n+16>>2]=g}a=H[n+20>>2];H[n+272>>2]=H[n+16>>2];H[n+276>>2]=a;a=H[n+28>>2];H[n+280>>2]=H[n+24>>2];H[n+284>>2]=a;g=L[n+280>>2];l=L[n+272>>2];j=L[n+276>>2];q=O(W(O(O(g*g)+O(O(l*l)+O(j*j)))));if(!(_>2]}$=Z?K:O(0);da=m?z:O(0);X=O($+da);E=O(B+X);while(1){H[n+296>>2]=H[n+312>>2];a=H[n+308>>2];H[n+288>>2]=H[n+304>>2];H[n+292>>2]=a;m=H[o+56>>2];G=H[n+44>>2];f=G<<2;u=H[o+52>>2];d=u+56|0;p=O(-l);x=O(O(O(L[o+72>>2]*p)-O(L[o+88>>2]*j))-O(L[o+104>>2]*g));s=O(O(O(L[o+64>>2]*p)-O(L[o+80>>2]*j))-O(L[o+96>>2]*g));p=O(O(O(L[o+68>>2]*p)-O(L[o+84>>2]*j))-O(L[o+100>>2]*g));c=u+52|0;b=u+72|0;a=u+68|0;y=O(O(L[d>>2]*x)+O(O(L[u+48>>2]*s)+O(p*L[c>>2])))>O(O(L[b>>2]*x)+O(O(L[u+64>>2]*s)+O(p*L[a>>2])));H[f+(n- -64|0)>>2]=y;ea=L[(y?d:b)>>2];fa=L[(y?u+48|0:u- -64|0)>>2];Q=L[(y?c:a)>>2];M=L[m+56>>2];C=L[m+40>>2];z=L[m+24>>2];A=L[m+52>>2];B=L[m+36>>2];K=L[m+20>>2];v=L[m+8>>2];r=L[m+48>>2];w=L[m+32>>2];x=L[m>>2];s=L[m+16>>2];p=L[m+4>>2];u=f+(n+48|0)|0;y=H[o+44>>2];d=y+56|0;c=y+52|0;b=y+72|0;a=y+68|0;f=O(O(L[d>>2]*g)+O(O(L[y+48>>2]*l)+O(j*L[c>>2])))>O(O(L[b>>2]*g)+O(O(L[y+64>>2]*l)+O(j*L[a>>2])));H[u>>2]=f;z=O(M+O(O(C*ea)+O(O(v*fa)+O(Q*z))));v=L[(f?d:b)>>2];M=O(z-v);r=O(r+O(O(w*ea)+O(O(x*fa)+O(Q*s))));w=L[(f?y+48|0:y- -64|0)>>2];C=O(r-w);x=O(A+O(O(B*ea)+O(O(p*fa)+O(Q*K))));s=L[(f?c:a)>>2];K=O(x-s);p=O(O(t*M)+O(O(D*C)+O(U*K)));if(p>E){a=0;if(!Y){break e}F[o+215|0]=G;if(!G){break e}b=0;if((G|0)!=1){f=G&-2;Z=0;while(1){c=b<<2;d=n- -64|0;F[b+Y|0]=H[c+d>>2];u=c;c=n+48|0;F[b+aa|0]=H[u+c>>2];u=b|1;y=u<<2;F[u+Y|0]=H[d+y>>2];F[u+aa|0]=H[c+y>>2];b=b+2|0;Z=Z+2|0;if((f|0)!=(Z|0)){continue}break}}if(!(G&1)){break e}c=b<<2;F[b+Y|0]=H[c+(n- -64|0)>>2];F[b+aa|0]=H[c+(n+48|0)>>2];break e}if(p>O(q*O(.9997749924659729))){m:{if(!Y){break m}F[o+215|0]=G;if(!G){break m}b=0;if((G|0)!=1){d=G&-2;Z=0;while(1){a=b<<2;c=n- -64|0;F[b+Y|0]=H[a+c>>2];f=a;a=n+48|0;F[b+aa|0]=H[f+a>>2];y=b|1;f=y<<2;F[y+Y|0]=H[c+f>>2];F[y+aa|0]=H[a+f>>2];b=b+2|0;Z=Z+2|0;if((d|0)!=(Z|0)){continue}break}}if(!(G&1)){break m}a=b<<2;F[b+Y|0]=H[a+(n- -64|0)>>2];F[b+aa|0]=H[a+(n+48|0)>>2]}L[o+160>>2]=D;H[o+172>>2]=0;L[o+168>>2]=t;L[o+164>>2]=U;FU(n+208|0,n+144|0,n+80|0,n+272|0,n+16|0,n,G);l=L[n+16>>2];j=L[n+20>>2];g=L[n+24>>2];H[o+140>>2]=0;L[o+136>>2]=g-O($*t);L[o+132>>2]=j-O($*U);L[o+128>>2]=l-O($*D);l=L[n>>2];j=L[n+4>>2];g=L[n+8>>2];H[o+156>>2]=0;L[o+152>>2]=g+O(da*t);L[o+148>>2]=j+O(da*U);L[o+144>>2]=l+O(da*D);L[o+192>>2]=q-X;a=2;break e}a=G<<4;b=a+(n+144|0)|0;H[b+12>>2]=0;L[b+8>>2]=z;L[b+4>>2]=x;L[b>>2]=r;b=a+(n+80|0)|0;H[b+12>>2]=0;L[b+8>>2]=v;L[b+4>>2]=s;L[b>>2]=w;a=a+(n+208|0)|0;H[a+12>>2]=0;L[a+8>>2]=M;L[a+4>>2]=K;L[a>>2]=C;H[n+44>>2]=G+1;n:{o:{switch(G-1|0){case 0:w=L[n+216>>2];D=O(L[n+232>>2]-w);x=L[n+208>>2];v=O(L[n+224>>2]-x);s=L[n+212>>2];r=O(L[n+228>>2]-s);p=O(O(D*D)+O(O(v*v)+O(r*r)));if(p<=O(1.1920928955078125e-7)){H[n+44>>2]=1;a=H[n+212>>2];H[n+16>>2]=H[n+208>>2];H[n+20>>2]=a;a=H[n+220>>2];H[n+24>>2]=H[n+216>>2];H[n+28>>2]=a;break n}H[n+28>>2]=0;p=O(R(O(O(O(O(O(-x)*v)-O(r*s))-O(w*D))/p),O(1)));p=p>O(0)?p:O(0);L[n+24>>2]=w+O(D*p);L[n+20>>2]=s+O(r*p);L[n+16>>2]=x+O(v*p);break n;case 1:_W(n+16|0,n+208|0,n+144|0,n+80|0,n- -64|0,n+48|0,n+44|0);break n;case 2:DZ(n+16|0,n+208|0,n+144|0,n+80|0,n- -64|0,n+48|0,n+44|0);break n;default:break o}}H[n+28>>2]=0;L[n+24>>2]=M;L[n+20>>2]=K;L[n+16>>2]=C}a=H[n+20>>2];H[n+272>>2]=H[n+16>>2];H[n+276>>2]=a;a=H[n+28>>2];H[n+280>>2]=H[n+24>>2];H[n+284>>2]=a;x=L[n+280>>2];s=L[n+272>>2];p=L[n+276>>2];w=O(W(O(O(x*x)+O(O(s*s)+O(p*p)))));r=O(O(1)/w);t=O(x*r);U=O(p*r);D=O(s*r);if(!(!(w>_)|!(q>w))){J=L[n+284>>2];g=x;j=p;l=s;q=w;continue}break}f=H[n+44>>2];if(!(q>w)){p:{if(!Y){break p}m=f-1|0;F[o+215|0]=m;if(!m){break p}b=0;if((f|0)!=2){d=m&-2;Z=0;while(1){a=b<<2;c=n- -64|0;F[b+Y|0]=H[a+c>>2];u=a;a=n+48|0;F[b+aa|0]=H[u+a>>2];u=b|1;y=u<<2;F[u+Y|0]=H[c+y>>2];F[u+aa|0]=H[a+y>>2];b=b+2|0;Z=Z+2|0;if((d|0)!=(Z|0)){continue}break}}if(!(m&1)){break p}a=b<<2;F[b+Y|0]=H[a+(n- -64|0)>>2];F[b+aa|0]=H[a+(n+48|0)>>2]}H[n+312>>2]=H[n+296>>2];a=H[n+292>>2];H[n+304>>2]=H[n+288>>2];H[n+308>>2]=a;L[n+284>>2]=J;L[n+272>>2]=l;L[n+276>>2]=j;L[n+280>>2]=g;FU(n+208|0,n+144|0,n+80|0,n+272|0,n+16|0,n,f);H[o+188>>2]=0;L[o+184>>2]=t;L[o+180>>2]=U;L[o+176>>2]=D;H[o+172>>2]=0;p=g;g=O(O(1)/q);x=O(p*g);L[o+168>>2]=x;s=O(j*g);L[o+164>>2]=s;p=O(l*g);L[o+160>>2]=p;l=L[n+16>>2];j=L[n+20>>2];g=L[n+24>>2];H[o+140>>2]=0;L[o+136>>2]=g-O($*x);L[o+132>>2]=j-O($*s);L[o+128>>2]=l-O($*p);l=L[n>>2];j=L[n+4>>2];g=L[n+8>>2];L[o+192>>2]=q-X;H[o+156>>2]=0;L[o+152>>2]=g+O(da*x);L[o+148>>2]=j+O(da*s);L[o+144>>2]=l+O(da*p);a=2;if(q<=X){break e}a=4;break e}if(Y){break f}a=5;break e}f=H[n+44>>2]}F[o+215|0]=f;a=5;if(!f){break e}b=0;if((f|0)!=1){y=f&-2;Z=0;while(1){c=b<<2;d=n- -64|0;F[b+Y|0]=H[c+d>>2];u=c;c=n+48|0;F[b+aa|0]=H[u+c>>2];m=b|1;u=m<<2;F[m+Y|0]=H[d+u>>2];F[m+aa|0]=H[c+u>>2];b=b+2|0;Z=Z+2|0;if((y|0)!=(Z|0)){continue}break}}if(!(f&1)){break e}c=b<<2;F[b+Y|0]=H[c+(n- -64|0)>>2];F[b+aa|0]=H[c+(n+48|0)>>2]}Oa=n+320|0;q:{r:{if(a-5|0){break r}H[o+16>>2]=1065353216;a=H[o+28>>2];H[o+8>>2]=H[o+24>>2];H[o+12>>2]=a;a=H[o+20>>2];H[o>>2]=H[o+16>>2];H[o+4>>2]=a;if(wZ(ra,xa,o+220|0,o+216|0,I[o+215|0],0,o,o+128|0)-5>>>0<=1){break r}H[o+280>>2]=0;H[o+284>>2]=0;H[o+272>>2]=0;H[o+276>>2]=0;q=L[k+360>>2];l=L[k+352>>2];j=L[k+356>>2];H[o+268>>2]=0;g=O(O(1)/O(W(O(O(q*q)+O(O(l*l)+O(j*j))))));L[o+264>>2]=g*O(-q);L[o+260>>2]=g*O(-j);L[o+256>>2]=g*O(-l);g=O(0);break q}a=H[o+140>>2];H[o+280>>2]=H[o+136>>2];H[o+284>>2]=a;a=H[o+132>>2];H[o+272>>2]=H[o+128>>2];H[o+276>>2]=a;a=H[o+164>>2];H[o+256>>2]=H[o+160>>2];H[o+260>>2]=a;a=H[o+172>>2];H[o+264>>2]=H[o+168>>2];H[o+268>>2]=a;g=L[o+192>>2]}L[k+336>>2]=g>2];H[k+320>>2]=H[o+272>>2];H[k+324>>2]=a;a=H[o+284>>2];H[k+328>>2]=H[o+280>>2];H[k+332>>2]=a;a=H[o+260>>2];H[k+304>>2]=H[o+256>>2];H[k+308>>2]=a;a=H[o+268>>2];H[k+312>>2]=H[o+264>>2];H[k+316>>2]=a}Oa=o+288|0;if(e){qa=L[k+336>>2];w=L[k+328>>2];J=L[k+320>>2];x=L[k+324>>2];s=L[k+312>>2];p=L[k+304>>2];q=L[k+308>>2];j=O(O(P*s)+O(O(V*p)+O(N*q)));l=O(-N);g=O(O(O(S*O(O(V*q)+O(p*l)))+O(ba*s))+O(P*j));L[h+8>>2]=g+g;g=O(O(N*j)+O(O(ba*q)+O(S*O(O(P*p)+O(s*pa)))));L[h+4>>2]=g+g;g=O(V*j);j=O(-P);g=O(g+O(O(ba*p)+O(S*O(O(N*s)+O(q*j)))));L[h>>2]=g+g;q=qa>O(0)?qa:O(0);g=O(O(S*O(O(V*x)+O(J*l)))+O(ba*w));l=O(O(P*w)+O(O(V*J)+O(N*x)));g=O(g+O(P*l));L[i+8>>2]=O(za*q)+O(va+O(g+g));g=O(O(N*l)+O(O(ba*x)+O(S*O(O(P*J)+O(w*pa)))));L[i+4>>2]=O(Ba*q)+O(ua+O(g+g));g=O(O(V*l)+O(O(ba*J)+O(S*O(O(N*w)+O(x*j)))));L[i>>2]=O(Aa*q)+O(wa+O(g+g))}Oa=k+448|0;return O(qa)}function NX(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=e|0;f=f|0;g=O(g);h=h|0;i=i|0;j=j|0;k=k|0;l=O(l);var m=0,n=0,o=0,p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=0,w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=0,C=O(0),D=O(0),E=O(0),G=O(0),J=O(0),K=O(0),M=O(0),N=O(0),P=O(0),Q=O(0),S=O(0),T=O(0),U=0,V=O(0),X=O(0),Y=O(0),Z=O(0),_=O(0),$=O(0),aa=0,ba=O(0),ca=O(0),da=0,ea=0,fa=O(0),ga=O(0),ha=O(0),ia=O(0),ja=O(0),ka=O(0),la=O(0),ma=O(0),na=O(0),oa=0,pa=O(0),qa=O(0),ra=0,sa=0,ta=O(0),ua=O(0),va=0,wa=O(0),xa=0,ya=0,za=O(0),Aa=O(0),Ba=O(0),Ca=O(0),Da=O(0),Ea=O(0),Fa=O(0),Ga=O(0),Ha=O(0),Ia=O(0),Ja=O(0),Ka=O(0),La=O(0),Ma=O(0);b=Oa-320|0;Oa=b;F[b+32|0]=0;H[b+28>>2]=3;H[b+8>>2]=0;H[b+12>>2]=0;H[b>>2]=0;H[b+4>>2]=0;r=L[a+8>>2];q=L[a+12>>2];l=L[a+4>>2];H[b+60>>2]=0;L[b+56>>2]=q;L[b+52>>2]=r;L[b+48>>2]=l;l=l<=r?l:r;l=l<=q?l:q;L[b+24>>2]=l*O(.05000000074505806);L[b+20>>2]=l*O(.004999999888241291);L[b+16>>2]=l*O(.009999999776482582);H[b+312>>2]=0;H[b+316>>2]=0;H[b+304>>2]=0;H[b+308>>2]=0;za=L[e+20>>2];w=L[f+20>>2];Aa=L[e+24>>2];s=L[f+24>>2];C=L[d+8>>2];J=L[d>>2];z=L[d+4>>2];A=L[d+12>>2];S=L[c+12>>2];T=L[c>>2];Ba=L[e+16>>2];y=L[f+16>>2];N=L[c+4>>2];P=L[c+8>>2];H[b+300>>2]=0;H[b+284>>2]=0;H[b+268>>2]=0;ta=O(-T);t=O(y-Ba);p=O(w-za);r=O(s-Aa);q=O(O(O(ta*t)-O(p*N))-O(P*r));ba=O(O(S*S)+O(-.5));l=O(O(O(S*O(O(N*t)-O(T*p)))+O(ba*r))-O(P*q));L[b+296>>2]=l+l;l=O(O(O(ba*p)+O(S*O(O(T*r)-O(P*t))))-O(N*q));L[b+292>>2]=l+l;B=b+288|0;l=O(O(O(ba*t)+O(S*O(O(P*p)-O(N*r))))-O(T*q));L[B>>2]=l+l;l=O(O(O(z*P)-O(N*C))+O(O(J*S)-O(A*T)));u=O(l+l);D=O(O(O(C*T)-O(P*J))+O(O(z*S)-O(A*N)));p=O(D+D);r=O(O(1)-O(l*u));x=O(D*p);L[b+280>>2]=r-x;K=O(O(O(J*N)-O(T*z))+O(O(C*S)-O(A*P)));q=O(K*p);A=O(O(A*S)-O(O(O(ta*J)-O(z*N))-O(P*C)));l=O(A*u);L[b+276>>2]=q-l;t=O(K*u);p=O(A*p);L[b+272>>2]=t+p;L[b+264>>2]=q+l;q=r;l=O(K+K);r=O(K*l);L[b+260>>2]=q-r;q=O(D*u);l=O(A*l);L[b+256>>2]=q-l;H[b+252>>2]=0;L[b+248>>2]=t-p;L[b+244>>2]=q+l;L[b+240>>2]=O(O(1)-x)-r;x=L[c+20>>2];t=L[d+20>>2];p=L[c+24>>2];r=L[d+24>>2];q=L[c+16>>2];l=L[d+16>>2];H[b+236>>2]=0;Ea=O(r-s);A=O(O(p-Aa)-Ea);Fa=O(l-y);p=O(O(q-Ba)-Fa);Ga=O(t-w);r=O(O(x-za)-Ga);q=O(O(P*A)+O(O(T*p)+O(N*r)));l=O(O(O(ba*A)-O(S*O(O(T*r)-O(N*p))))+O(P*q));L[b+232>>2]=l+l;l=O(O(N*q)+O(O(ba*r)-O(S*O(O(P*p)-O(A*T)))));L[b+228>>2]=l+l;l=O(O(T*q)+O(O(ba*p)-O(S*O(O(N*A)-O(r*P)))));L[b+224>>2]=l+l;H[b+160>>2]=0;H[b+80>>2]=127220;H[b+84>>2]=k;H[b+88>>2]=b+240;a=H[b+260>>2];H[b+112>>2]=H[b+256>>2];H[b+116>>2]=a;a=H[b+268>>2];H[b+120>>2]=H[b+264>>2];H[b+124>>2]=a;a=H[b+252>>2];H[b+104>>2]=H[b+248>>2];H[b+108>>2]=a;a=H[b+276>>2];H[b+128>>2]=H[b+272>>2];H[b+132>>2]=a;a=H[b+284>>2];H[b+136>>2]=H[b+280>>2];H[b+140>>2]=a;a=H[B+4>>2];H[b+144>>2]=H[B>>2];H[b+148>>2]=a;a=H[b+300>>2];H[b+152>>2]=H[b+296>>2];H[b+156>>2]=a;a=H[b+244>>2];H[b+96>>2]=H[b+240>>2];H[b+100>>2]=a;r=L[b+100>>2];L[b+100>>2]=L[b+112>>2];q=L[b+120>>2];l=L[b+104>>2];L[b+104>>2]=L[b+128>>2];L[b+120>>2]=L[b+132>>2];L[b+128>>2]=l;L[b+132>>2]=q;L[b+112>>2]=r;H[b+72>>2]=126608;H[b+76>>2]=b;ua=O(3.4028234663852886e38);o=Oa-288|0;Oa=o;ha=O(g+O(0));m=Oa-272|0;Oa=m;H[m+264>>2]=0;H[m+268>>2]=0;H[m+256>>2]=0;H[m+260>>2]=0;na=L[b+312>>2];ca=L[b+308>>2];ia=L[b+304>>2];ja=L[b+232>>2];_=L[b+228>>2];E=L[b+224>>2];H[m+240>>2]=1;j=b+72|0;d=H[j+4>>2];Ha=L[d+52>>2];va=b+80|0;v=va;c=H[v+8>>2];G=L[c+52>>2];M=L[c+36>>2];X=L[c+20>>2];Ia=L[d+56>>2];Q=L[c+56>>2];C=L[c+40>>2];J=L[c+24>>2];a=H[v+4>>2];V=L[a+72>>2];Ja=L[a- -64>>2];fa=L[a+68>>2];ka=L[a+56>>2];la=L[a+52>>2];ma=L[a+88>>2];z=L[v+56>>2];x=L[v+24>>2];u=L[v+40>>2];pa=L[a+80>>2];w=L[v+48>>2];s=L[v+32>>2];Y=L[a+84>>2];t=L[v+52>>2];p=L[v+20>>2];l=L[v+36>>2];$=L[d+48>>2];K=L[c+48>>2];D=L[c+32>>2];y=L[c>>2];A=L[c+16>>2];r=L[c+4>>2];q=L[c+8>>2];ga=L[a+48>>2];g=L[v+16>>2];Ca=L[B+8>>2];Z=L[B>>2];qa=L[B+4>>2];H[m+196>>2]=0;H[m+200>>2]=0;H[m+204>>2]=0;H[m+208>>2]=0;H[m+212>>2]=0;H[m+216>>2]=0;H[m+220>>2]=0;H[m+224>>2]=0;H[m+228>>2]=0;H[m+232>>2]=0;f=0;H[m+236>>2]=0;H[m+188>>2]=0;H[m+192>>2]=0;La=Q;Ma=C;Ka=V;Da=x;a=O(O(Ca*Ca)+O(O(Z*Z)+O(qa*qa)))>O(1.1920928955078125e-7);x=a?Z:O(1);Z=a?Ca:O(0);V=a?qa:O(0);Q=O(O(1)/O(W(O(O(Z*Z)+O(O(x*x)+O(V*V))))));x=O(x*Q);C=O(-x);V=O(V*Q);qa=z;z=O(Z*Q);u=O(O(O(Da*C)-O(u*V))-O(qa*z));s=O(O(O(g*C)-O(s*V))-O(w*z));p=O(O(O(p*C)-O(l*V))-O(t*z));g=O(O(Ka*u)+O(O(Ja*s)+O(fa*p)));l=O(O(ma*u)+O(O(pa*s)+O(p*Y)));c=g>l;t=g;g=O(O(ka*u)+O(O(ga*s)+O(p*la)));a=!(tl);u=a?c?Ka:ma:ka;l=a?c?Ja:pa:ga;g=a?c?fa:Y:la;t=O(La+O(O(Ma*u)+O(O(q*l)+O(J*g))));p=z>O(0)?Ia:O(-Ia);w=O(t-p);L[m+184>>2]=w;r=O(G+O(O(M*u)+O(O(r*l)+O(g*X))));q=V>O(0)?Ha:O(-Ha);s=O(r-q);L[m+180>>2]=s;l=O(K+O(O(D*u)+O(O(y*l)+O(g*A))));g=x>O(0)?$:O(-$);u=O(l-g);L[m+176>>2]=u;H[m+132>>2]=0;H[m+136>>2]=0;H[m+140>>2]=0;H[m+144>>2]=0;H[m+148>>2]=0;H[m+152>>2]=0;H[m+156>>2]=0;H[m+160>>2]=0;H[m+164>>2]=0;H[m+168>>2]=0;H[m+172>>2]=0;H[m+124>>2]=0;H[m+128>>2]=0;L[m+120>>2]=t;L[m+116>>2]=r;L[m+112>>2]=l;H[m+68>>2]=0;H[m+72>>2]=0;H[m+76>>2]=0;H[m+80>>2]=0;H[m+84>>2]=0;H[m+88>>2]=0;H[m+92>>2]=0;H[m+96>>2]=0;H[m+100>>2]=0;H[m+104>>2]=0;H[m+108>>2]=0;H[m+60>>2]=0;H[m+64>>2]=0;L[m+56>>2]=p;L[m+52>>2]=q;L[m+48>>2]=g;g=O(-w);l=O(-s);r=O(-u);y=O(O(w*w)+O(O(u*u)+O(s*s)));q=L[d+24>>2];q=O((qV)){q=r;t=l;p=g;Q=O(0);K=u;D=s;x=w;break b}$=O(q+ha);ha=O($*$);C=O(O(E*O(0))+ia);J=O(O(_*O(0))+ca);A=O(O(ja*O(0))+na);Q=O(0);p=g;t=l;q=r;while(1){K=u;D=s;x=w;s=O(O(1)/O(W(O(O(g*g)+O(O(r*r)+O(l*l))))));ka=O(r*s);a=H[v+4>>2];ia=L[a+72>>2];la=O(g*s);ma=O(l*s);u=O(O(L[v+56>>2]*la)+O(O(ka*L[v+24>>2])+O(ma*L[v+40>>2])));ja=L[a- -64>>2];ca=O(O(L[v+48>>2]*la)+O(O(ka*L[v+16>>2])+O(ma*L[v+32>>2])));w=O(O(L[v+52>>2]*la)+O(O(ka*L[v+20>>2])+O(ma*L[v+36>>2])));_=L[a+68>>2];s=O(O(ia*u)+O(O(ja*ca)+O(w*_)));E=L[a+88>>2];G=L[a+80>>2];M=L[a+84>>2];X=O(O(E*u)+O(O(G*ca)+O(w*M)));c=s>X;qa=s;z=L[a+56>>2];Da=O(z*u);u=L[a+48>>2];s=w;w=L[a+52>>2];s=O(Da+O(O(u*ca)+O(s*w)));a=!(qaX);d=H[v+8>>2];z=a?c?ia:E:z;u=a?c?ja:G:u;w=a?c?_:M:w;ga=O(L[d+48>>2]+O(O(L[d+32>>2]*z)+O(O(L[d>>2]*u)+O(w*L[d+16>>2]))));a=H[j+4>>2];s=L[a+48>>2];ia=ka>2]+O(O(L[d+36>>2]*z)+O(O(L[d+4>>2]*u)+O(w*L[d+20>>2]))));s=L[a+52>>2];ja=ma>2]+O(O(L[d+40>>2]*z)+O(O(L[d+8>>2]*u)+O(w*L[d+24>>2]))));s=L[a+56>>2];_=laO(0)){X=L[b+232>>2];z=L[b+224>>2];u=L[b+228>>2];w=O(O(la*X)+O(O(ka*z)+O(ma*u)));if(w>=O(0)){break a}s=Q;Q=O(s-O(M/w));if(Q>s){if(Q>O(1)){break a}t=L[b+312>>2];p=L[b+308>>2];q=L[b+304>>2];H[m+92>>2]=0;H[m+76>>2]=0;H[m+60>>2]=0;w=O(q+O(z*Q));z=O(w-C);E=O(z+L[m+80>>2]);L[m+80>>2]=E;s=O(p+O(u*Q));p=O(s-J);G=O(p+L[m+84>>2]);L[m+84>>2]=G;y=O(t+O(X*Q));q=O(y-A);M=O(q+L[m+88>>2]);L[m+88>>2]=M;X=O(z+L[m+64>>2]);L[m+64>>2]=X;C=O(p+L[m+68>>2]);L[m+68>>2]=C;J=O(q+L[m+72>>2]);L[m+72>>2]=J;z=O(z+L[m+48>>2]);L[m+48>>2]=z;u=O(p+L[m+52>>2]);L[m+52>>2]=u;A=O(q+L[m+56>>2]);L[m+56>>2]=A;t=L[m+112>>2];p=L[m+116>>2];q=L[m+120>>2];H[m+188>>2]=0;L[m+184>>2]=q-A;L[m+180>>2]=p-u;L[m+176>>2]=t-z;t=L[m+128>>2];p=L[m+132>>2];q=L[m+136>>2];H[m+204>>2]=0;L[m+200>>2]=q-J;L[m+196>>2]=p-C;L[m+192>>2]=t-X;t=L[m+144>>2];p=L[m+148>>2];q=L[m+152>>2];H[m+220>>2]=0;L[m+216>>2]=q-M;L[m+212>>2]=p-G;L[m+208>>2]=t-E;G=O(_+y);fa=O(ca-G);E=O(ja+s);Y=O(na-E);Z=O(ia+w);pa=O(ga-Z);q=r;t=l;p=g;C=w;J=s;A=y;y=O(3.4028234663852886e38)}}z=y;c=H[m+240>>2];a=c<<4;d=a+(m+112|0)|0;H[d+12>>2]=0;L[d+8>>2]=ca;L[d+4>>2]=na;L[d>>2]=ga;d=a+(m+48|0)|0;H[d+12>>2]=0;L[d+8>>2]=G;L[d+4>>2]=E;L[d>>2]=Z;a=a+(m+176|0)|0;H[a+12>>2]=0;L[a+8>>2]=fa;L[a+4>>2]=Y;L[a>>2]=pa;H[m+240>>2]=c+1;c:{d:{switch(c-1|0){case 0:y=L[m+184>>2];u=O(L[m+200>>2]-y);r=L[m+176>>2];w=O(L[m+192>>2]-r);l=L[m+180>>2];s=O(L[m+196>>2]-l);g=O(O(u*u)+O(O(w*w)+O(s*s)));if(g<=O(1.1920928955078125e-7)){H[m+240>>2]=1;a=H[m+180>>2];H[m+32>>2]=H[m+176>>2];H[m+36>>2]=a;a=H[m+188>>2];H[m+40>>2]=H[m+184>>2];H[m+44>>2]=a;break c}g=O(R(O(O(O(O(O(-r)*w)-O(s*l))-O(y*u))/g),O(1)));g=g>O(0)?g:O(0);L[m+40>>2]=y+O(u*g);L[m+36>>2]=l+O(s*g);L[m+32>>2]=r+O(w*g);break c;case 1:GU(m+32|0,m+176|0,m+112|0,m+48|0,m+240|0);break c;case 2:BZ(m+32|0,m+176|0,m+112|0,m+48|0,m+240|0);break c;default:break d}}L[m+40>>2]=fa;L[m+36>>2]=Y;L[m+32>>2]=pa}w=L[m+40>>2];g=O(-w);s=L[m+36>>2];l=O(-s);u=L[m+32>>2];r=O(-u);y=O(O(w*w)+O(O(u*u)+O(s*s)));if(ha>2]+32|0];fa=O(0);C=O(0);a=!(y>V)|f;p=a?p:g;q=a?q:r;l=a?t:l;g=O(W(O(O(p*p)+O(O(q*q)+O(l*l)))));if(!(g<=O(1.1920928955078125e-7))){g=O(O(1)/g);wa=O(p*g);fa=O(l*g);C=O(q*g)}H[o+268>>2]=0;L[o+264>>2]=-wa;L[o+260>>2]=-fa;L[o+256>>2]=-C;L[o+240>>2]=Q;H[o+252>>2]=H[m+252>>2];a=H[m+248>>2];H[o+244>>2]=H[m+244>>2];H[o+248>>2]=a;H[m+44>>2]=0;L[m+40>>2]=f?x:w;L[m+36>>2]=f?D:s;L[m+32>>2]=f?K:u;e=H[m+268>>2];c=H[m+264>>2];H[m+24>>2]=c;H[m+28>>2]=e;d=H[m+260>>2];a=H[m+256>>2];H[m+16>>2]=a;H[m+20>>2]=d;H[m+8>>2]=c;H[m+12>>2]=e;H[m>>2]=a;H[m+4>>2]=d;FU(m+176|0,m+112|0,m+48|0,m+32|0,m+16|0,m,H[m+240>>2]);r=L[H[v+4>>2]+16>>2];q=L[m+16>>2];l=L[m+20>>2];g=L[m+24>>2];H[o+284>>2]=0;L[o+280>>2]=g+(k?O(wa*r):O(-0));L[o+276>>2]=l+(k?O(fa*r):O(-0));L[o+272>>2]=q+(k?O(C*r):O(-0));f=1}Oa=m+272|0;if(f){a=H[o+244>>2];H[b+208>>2]=H[o+240>>2];H[b+212>>2]=a;a=H[o+252>>2];H[b+216>>2]=H[o+248>>2];H[b+220>>2]=a;if(L[o+240>>2]==O(0)){a=H[va+4>>2];c=H[j+4>>2];L[o+224>>2]=O(L[a+16>>2]+L[c+16>>2])*O(100);F[o+215|0]=0;H[o+168>>2]=0;H[o+172>>2]=0;H[o+160>>2]=0;H[o+164>>2]=0;H[o+152>>2]=0;H[o+156>>2]=0;H[o+144>>2]=0;H[o+148>>2]=0;H[o+136>>2]=0;H[o+140>>2]=0;H[o+128>>2]=0;H[o+132>>2]=0;H[o+192>>2]=0;d=H[va+8>>2];H[o+56>>2]=d;H[o+48>>2]=127220;H[o+52>>2]=a;a=H[d+12>>2];H[o+72>>2]=H[d+8>>2];H[o+76>>2]=a;a=H[d+20>>2];H[o+80>>2]=H[d+16>>2];H[o+84>>2]=a;a=H[d+28>>2];H[o+88>>2]=H[d+24>>2];H[o+92>>2]=a;a=H[d+36>>2];H[o+96>>2]=H[d+32>>2];H[o+100>>2]=a;a=H[d+44>>2];H[o+104>>2]=H[d+40>>2];H[o+108>>2]=a;a=H[d+52>>2];H[o+112>>2]=H[d+48>>2];H[o+116>>2]=a;a=H[d+60>>2];H[o+120>>2]=H[d+56>>2];H[o+124>>2]=a;a=H[d+4>>2];H[o+64>>2]=H[d>>2];H[o+68>>2]=a;q=L[o+68>>2];L[o+68>>2]=L[o+80>>2];l=L[o+88>>2];g=L[o+72>>2];L[o+72>>2]=L[o+96>>2];L[o+80>>2]=q;L[o+96>>2]=g;L[o+88>>2]=L[o+100>>2];L[o+100>>2]=l;H[o+40>>2]=126608;H[o+44>>2]=c;U=o+220|0;aa=o+216|0;n=Oa-320|0;Oa=n;ra=H[o+44>>2];l=L[ra+20>>2];xa=H[o+52>>2];g=L[xa+20>>2];Q=L[o+224>>2];da=I[xa+32|0];C=L[xa+16>>2];m=I[ra+32|0];J=L[ra+16>>2];H[n+44>>2]=0;Z=O((g>l?l:g)*O(.10000000149011612));e:{f:{g:{h:{i:{j:{v=I[o+215|0];if(v){ea=H[o+56>>2];a=0;k=0;while(1){c=k<<2;d=I[k+U|0];H[c+(n- -64|0)>>2]=d;e=c+(n+48|0)|0;c=I[k+aa|0];H[e>>2]=c;d=xa+(d<<4)|0;E=L[d+56>>2];G=L[d+48>>2];M=L[d+52>>2];c=(c<<4)+88320|0;B=H[c>>2];e=H[c+4>>2];d=H[c+8>>2];z=L[ea+48>>2];u=L[ea+32>>2];K=L[ea>>2];D=L[ea+16>>2];w=L[ea+52>>2];s=L[ea+36>>2];y=L[ea+4>>2];A=L[ea+20>>2];x=L[ea+56>>2];q=L[ea+40>>2];l=L[ea+8>>2];g=L[ea+24>>2];X=L[ra+48>>2];p=L[ra+52>>2];r=L[ra+56>>2];c=a;oa=a<<4;ya=oa+(n+144|0)|0;H[ya+12>>2]=0;sa=oa+(n+80|0)|0;H[sa+12>>2]=0;oa=oa+(n+208|0)|0;H[oa+12>>2]=0;t=d?r:O(-r);L[sa+8>>2]=t;p=e?p:O(-p);L[sa+4>>2]=p;r=B?X:O(-X);L[sa>>2]=r;q=O(x+O(O(q*E)+O(O(l*G)+O(M*g))));L[ya+8>>2]=q;l=O(w+O(O(s*E)+O(O(y*G)+O(M*A))));L[ya+4>>2]=l;g=O(z+O(O(u*E)+O(O(K*G)+O(M*D))));L[ya>>2]=g;q=O(q-t);L[oa+8>>2]=q;l=O(l-p);L[oa+4>>2]=l;g=O(g-r);L[oa>>2]=g;a=a+1|0;H[n+44>>2]=a;k=k+1|0;if((v|0)!=(k|0)){continue}break}k:{l:{switch(c-1|0){case 0:r=L[n+216>>2];x=O(L[n+232>>2]-r);q=L[n+208>>2];t=O(L[n+224>>2]-q);l=L[n+212>>2];p=O(L[n+228>>2]-l);g=O(O(x*x)+O(O(t*t)+O(p*p)));if(!(g<=O(1.1920928955078125e-7))){break k}H[n+44>>2]=1;a=H[n+212>>2];H[n+16>>2]=H[n+208>>2];H[n+20>>2]=a;a=H[n+220>>2];H[n+24>>2]=H[n+216>>2];H[n+28>>2]=a;break i;case 1:_W(n+16|0,n+208|0,n+144|0,n+80|0,n- -64|0,n+48|0,n+44|0);break i;case 2:break l;default:break j}}DZ(n+16|0,n+208|0,n+144|0,n+80|0,n- -64|0,n+48|0,n+44|0);break i}H[n+28>>2]=0;g=O(R(O(O(O(O(O(-q)*t)-O(p*l))-O(r*x))/g),O(1)));g=g>O(0)?g:O(0);L[n+24>>2]=r+O(x*g);L[n+20>>2]=l+O(p*g);L[n+16>>2]=q+O(t*g);break i}g=L[B+8>>2];q=L[B>>2];l=L[B+4>>2];H[n+284>>2]=0;a=O(O(g*g)+O(O(q*q)+O(l*l)))>O(0);g=a?g:O(0);L[n+280>>2]=g;l=a?l:O(0);L[n+276>>2]=l;r=a?q:O(1);L[n+272>>2]=r;q=O(O(1)/O(W(O(O(g*g)+O(O(r*r)+O(l*l))))));u=O(g*q);K=O(l*q);D=O(r*q);q=O(3.4028234663852886e38);A=O(0);break h}H[n+28>>2]=0;L[n+24>>2]=q;L[n+20>>2]=l;L[n+16>>2]=g}a=H[n+20>>2];H[n+272>>2]=H[n+16>>2];H[n+276>>2]=a;a=H[n+28>>2];H[n+280>>2]=H[n+24>>2];H[n+284>>2]=a;g=L[n+280>>2];r=L[n+272>>2];l=L[n+276>>2];q=O(W(O(O(g*g)+O(O(r*r)+O(l*l)))));if(!(Z>2]}Y=da?C:O(0);$=m?J:O(0);ga=O(Y+$);wa=O(Q+ga);while(1){H[n+296>>2]=H[n+312>>2];a=H[n+308>>2];H[n+288>>2]=H[n+304>>2];H[n+292>>2]=a;d=H[o+56>>2];v=H[n+44>>2];a=v<<2;c=H[o+52>>2];na=L[c+72>>2];p=O(-r);s=O(O(O(L[o+72>>2]*p)-O(L[o+88>>2]*l))-O(L[o+104>>2]*g));ca=L[c- -64>>2];y=O(O(O(L[o+64>>2]*p)-O(L[o+80>>2]*l))-O(L[o+96>>2]*g));x=O(O(O(L[o+68>>2]*p)-O(L[o+84>>2]*l))-O(L[o+100>>2]*g));V=L[c+68>>2];p=O(O(na*s)+O(O(ca*y)+O(x*V)));ha=L[c+88>>2];ia=L[c+80>>2];ja=L[c+84>>2];t=O(O(ha*s)+O(O(ia*y)+O(x*ja)));B=p>t;w=p;_=L[c+56>>2];E=L[c+48>>2];G=L[c+52>>2];p=O(O(_*s)+O(O(E*y)+O(x*G)));k=!(wt);H[a+(n- -64|0)>>2]=k?B?1:2:0;M=L[d+56>>2];z=L[d+40>>2];w=L[d+24>>2];X=L[d+52>>2];Q=L[d+36>>2];C=L[d+20>>2];p=L[d+8>>2];J=L[d+48>>2];s=L[d+32>>2];y=L[d>>2];x=L[d+16>>2];e=H[o+44>>2];t=L[d+4>>2];sa=a+(n+48|0)|0;c=r>O(0);d=l>O(0);a=g>O(0);H[sa>>2]=c|d<<1|a<<2;ha=k?B?na:ha:_;_=k?B?ca:ia:E;E=k?B?V:ja:G;z=O(M+O(O(z*ha)+O(O(p*_)+O(w*E))));p=L[e+56>>2];w=a?p:O(-p);G=O(z-w);s=O(J+O(O(s*ha)+O(O(y*_)+O(E*x))));p=L[e+48>>2];y=c?p:O(-p);M=O(s-y);x=O(X+O(O(Q*ha)+O(O(t*_)+O(E*C))));p=L[e+52>>2];t=d?p:O(-p);J=O(x-t);p=O(O(u*G)+O(O(D*M)+O(K*J)));if(p>wa){da=0;if(!U){break e}F[o+215|0]=v;if(!v){break e}a=0;if((v|0)!=1){e=v&-2;m=0;while(1){c=a<<2;d=n- -64|0;F[a+U|0]=H[c+d>>2];k=c;c=n+48|0;F[a+aa|0]=H[k+c>>2];B=a|1;k=B<<2;F[B+U|0]=H[d+k>>2];F[B+aa|0]=H[c+k>>2];a=a+2|0;m=m+2|0;if((e|0)!=(m|0)){continue}break}}if(!(v&1)){break e}c=a<<2;F[a+U|0]=H[c+(n- -64|0)>>2];F[a+aa|0]=H[c+(n+48|0)>>2];break e}if(p>O(q*O(.9997749924659729))){m:{if(!U){break m}F[o+215|0]=v;if(!v){break m}a=0;if((v|0)!=1){e=v&-2;m=0;while(1){c=a<<2;d=n- -64|0;F[a+U|0]=H[c+d>>2];k=c;c=n+48|0;F[a+aa|0]=H[k+c>>2];B=a|1;k=B<<2;F[B+U|0]=H[d+k>>2];F[B+aa|0]=H[c+k>>2];a=a+2|0;m=m+2|0;if((e|0)!=(m|0)){continue}break}}if(!(v&1)){break m}c=a<<2;F[a+U|0]=H[c+(n- -64|0)>>2];F[a+aa|0]=H[c+(n+48|0)>>2]}L[o+160>>2]=D;H[o+172>>2]=0;L[o+168>>2]=u;L[o+164>>2]=K;FU(n+208|0,n+144|0,n+80|0,n+272|0,n+16|0,n,v);r=L[n+16>>2];l=L[n+20>>2];g=L[n+24>>2];H[o+140>>2]=0;L[o+136>>2]=g-O(Y*u);L[o+132>>2]=l-O(Y*K);L[o+128>>2]=r-O(Y*D);r=L[n>>2];l=L[n+4>>2];g=L[n+8>>2];H[o+156>>2]=0;L[o+152>>2]=g+O($*u);L[o+148>>2]=l+O($*K);L[o+144>>2]=r+O($*D);L[o+192>>2]=q-ga;da=2;break e}a=v<<4;c=a+(n+144|0)|0;H[c+12>>2]=0;L[c+8>>2]=z;L[c+4>>2]=x;L[c>>2]=s;c=a+(n+80|0)|0;H[c+12>>2]=0;L[c+8>>2]=w;L[c+4>>2]=t;L[c>>2]=y;a=a+(n+208|0)|0;H[a+12>>2]=0;L[a+8>>2]=G;L[a+4>>2]=J;L[a>>2]=M;H[n+44>>2]=v+1;n:{o:{switch(v-1|0){case 0:y=L[n+216>>2];D=O(L[n+232>>2]-y);x=L[n+208>>2];w=O(L[n+224>>2]-x);t=L[n+212>>2];s=O(L[n+228>>2]-t);p=O(O(D*D)+O(O(w*w)+O(s*s)));if(p<=O(1.1920928955078125e-7)){H[n+44>>2]=1;a=H[n+212>>2];H[n+16>>2]=H[n+208>>2];H[n+20>>2]=a;a=H[n+220>>2];H[n+24>>2]=H[n+216>>2];H[n+28>>2]=a;break n}H[n+28>>2]=0;p=O(R(O(O(O(O(O(-x)*w)-O(s*t))-O(y*D))/p),O(1)));p=p>O(0)?p:O(0);L[n+24>>2]=y+O(D*p);L[n+20>>2]=t+O(s*p);L[n+16>>2]=x+O(w*p);break n;case 1:_W(n+16|0,n+208|0,n+144|0,n+80|0,n- -64|0,n+48|0,n+44|0);break n;case 2:DZ(n+16|0,n+208|0,n+144|0,n+80|0,n- -64|0,n+48|0,n+44|0);break n;default:break o}}H[n+28>>2]=0;L[n+24>>2]=G;L[n+20>>2]=J;L[n+16>>2]=M}a=H[n+20>>2];H[n+272>>2]=H[n+16>>2];H[n+276>>2]=a;a=H[n+28>>2];H[n+280>>2]=H[n+24>>2];H[n+284>>2]=a;x=L[n+280>>2];t=L[n+272>>2];p=L[n+276>>2];y=O(W(O(O(x*x)+O(O(t*t)+O(p*p)))));s=O(O(1)/y);u=O(x*s);K=O(p*s);D=O(t*s);if(!(!(y>Z)|!(q>y))){A=L[n+284>>2];g=x;l=p;r=t;q=y;continue}break}k=H[n+44>>2];if(!(q>y)){p:{if(!U){break p}m=k-1|0;F[o+215|0]=m;if(!m){break p}a=0;if((k|0)!=2){e=m&-2;da=0;while(1){c=a<<2;d=n- -64|0;F[a+U|0]=H[c+d>>2];v=c;c=n+48|0;F[a+aa|0]=H[v+c>>2];v=a|1;B=v<<2;F[v+U|0]=H[d+B>>2];F[v+aa|0]=H[c+B>>2];a=a+2|0;da=da+2|0;if((e|0)!=(da|0)){continue}break}}if(!(m&1)){break p}c=a<<2;F[a+U|0]=H[c+(n- -64|0)>>2];F[a+aa|0]=H[c+(n+48|0)>>2]}H[n+312>>2]=H[n+296>>2];a=H[n+292>>2];H[n+304>>2]=H[n+288>>2];H[n+308>>2]=a;L[n+284>>2]=A;L[n+272>>2]=r;L[n+276>>2]=l;L[n+280>>2]=g;FU(n+208|0,n+144|0,n+80|0,n+272|0,n+16|0,n,k);H[o+188>>2]=0;L[o+184>>2]=u;L[o+180>>2]=K;L[o+176>>2]=D;H[o+172>>2]=0;p=g;g=O(O(1)/q);x=O(p*g);L[o+168>>2]=x;t=O(l*g);L[o+164>>2]=t;p=O(r*g);L[o+160>>2]=p;r=L[n+16>>2];l=L[n+20>>2];g=L[n+24>>2];H[o+140>>2]=0;L[o+136>>2]=g-O(Y*x);L[o+132>>2]=l-O(Y*t);L[o+128>>2]=r-O(Y*p);r=L[n>>2];l=L[n+4>>2];g=L[n+8>>2];L[o+192>>2]=q-ga;H[o+156>>2]=0;L[o+152>>2]=g+O($*x);L[o+148>>2]=l+O($*t);L[o+144>>2]=r+O($*p);da=2;if(q<=ga){break e}da=4;break e}if(U){break f}da=5;break e}k=H[n+44>>2]}F[o+215|0]=k;da=5;if(!k){break e}a=0;if((k|0)!=1){e=k&-2;m=0;while(1){c=a<<2;d=n- -64|0;F[a+U|0]=H[c+d>>2];v=c;c=n+48|0;F[a+aa|0]=H[v+c>>2];v=a|1;B=v<<2;F[v+U|0]=H[d+B>>2];F[v+aa|0]=H[c+B>>2];a=a+2|0;m=m+2|0;if((e|0)!=(m|0)){continue}break}}if(!(k&1)){break e}c=a<<2;F[a+U|0]=H[c+(n- -64|0)>>2];F[a+aa|0]=H[c+(n+48|0)>>2]}Oa=n+320|0;q:{r:{if(da-5|0){break r}H[o+16>>2]=1065353216;a=H[o+28>>2];H[o+8>>2]=H[o+24>>2];H[o+12>>2]=a;a=H[o+20>>2];H[o>>2]=H[o+16>>2];H[o+4>>2]=a;if(wZ(va,j,o+220|0,o+216|0,I[o+215|0],0,o,o+128|0)-5>>>0<=1){break r}H[o+280>>2]=0;H[o+284>>2]=0;H[o+272>>2]=0;H[o+276>>2]=0;r=L[b+232>>2];q=L[b+224>>2];l=L[b+228>>2];H[o+268>>2]=0;g=O(O(1)/O(W(O(O(r*r)+O(O(q*q)+O(l*l))))));L[o+264>>2]=g*O(-r);L[o+260>>2]=g*O(-l);L[o+256>>2]=g*O(-q);g=O(0);break q}a=H[o+140>>2];H[o+280>>2]=H[o+136>>2];H[o+284>>2]=a;a=H[o+132>>2];H[o+272>>2]=H[o+128>>2];H[o+276>>2]=a;a=H[o+164>>2];H[o+256>>2]=H[o+160>>2];H[o+260>>2]=a;a=H[o+172>>2];H[o+264>>2]=H[o+168>>2];H[o+268>>2]=a;g=L[o+192>>2]}L[b+208>>2]=g>2];H[b+192>>2]=H[o+272>>2];H[b+196>>2]=a;a=H[o+284>>2];H[b+200>>2]=H[o+280>>2];H[b+204>>2]=a;a=H[o+260>>2];H[b+176>>2]=H[o+256>>2];H[b+180>>2]=a;a=H[o+268>>2];H[b+184>>2]=H[o+264>>2];H[b+188>>2]=a}Oa=o+288|0;if(f){ua=L[b+208>>2];y=L[b+200>>2];A=L[b+192>>2];x=L[b+196>>2];t=L[b+184>>2];p=L[b+176>>2];r=L[b+180>>2];l=O(O(P*t)+O(O(T*p)+O(N*r)));q=O(-N);g=O(O(O(S*O(O(T*r)+O(p*q)))+O(ba*t))+O(P*l));L[h+8>>2]=g+g;g=O(O(N*l)+O(O(ba*r)+O(S*O(O(P*p)+O(t*ta)))));L[h+4>>2]=g+g;g=O(T*l);l=O(-P);g=O(g+O(O(ba*p)+O(S*O(O(N*t)+O(r*l)))));L[h>>2]=g+g;r=ua>O(0)?ua:O(0);g=O(O(S*O(O(T*x)+O(A*q)))+O(ba*y));q=O(O(P*y)+O(O(T*A)+O(N*x)));g=O(g+O(P*q));L[i+8>>2]=O(Ea*r)+O(Aa+O(g+g));g=O(O(N*q)+O(O(ba*x)+O(S*O(O(P*A)+O(y*ta)))));L[i+4>>2]=O(Ga*r)+O(za+O(g+g));g=O(O(T*q)+O(O(ba*A)+O(S*O(O(N*y)+O(x*l)))));L[i>>2]=O(Fa*r)+O(Ba+O(g+g))}Oa=b+320|0;return O(ua)}function GX(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=e|0;f=f|0;g=O(g);h=h|0;i=i|0;j=O(j);k=k|0;l=O(l);var m=0,n=0,o=0,p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=0,v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=0,B=O(0),C=O(0),D=O(0),E=O(0),G=O(0),J=O(0),K=O(0),M=O(0),N=O(0),P=O(0),Q=O(0),S=O(0),T=0,U=O(0),V=O(0),X=0,Y=0,Z=O(0),_=O(0),$=0,aa=O(0),ba=O(0),ca=0,da=O(0),ea=O(0),fa=O(0),ga=O(0),ha=O(0),ia=O(0),ja=0,ka=O(0),la=O(0),ma=O(0),na=O(0),oa=O(0),pa=O(0),qa=0,ra=O(0),sa=O(0),ta=0,ua=O(0),va=0,wa=0,xa=O(0),ya=O(0),za=O(0),Aa=0,Ba=O(0),Ca=O(0),Da=O(0),Ea=O(0),Fa=O(0),Ga=O(0),Ha=O(0),Ia=O(0),Ja=O(0);k=Oa-416|0;Oa=k;b=H[b>>2];a=H[a>>2];H[k+72>>2]=0;H[k+76>>2]=0;H[k+64>>2]=0;H[k+68>>2]=0;H[k+92>>2]=4;q=L[a+4>>2];l=L[a+8>>2];H[k+140>>2]=0;H[k+124>>2]=0;j=O(l*O(0));L[k+120>>2]=j;L[k+116>>2]=j;j=O(-j);L[k+136>>2]=j;L[k+132>>2]=j;L[k+144>>2]=q;L[k+112>>2]=l;F[k+96|0]=1;L[k+88>>2]=q;L[k+84>>2]=q;L[k+80>>2]=q;L[k+128>>2]=-l;F[k+32|0]=0;H[k+28>>2]=3;H[k+8>>2]=0;H[k+12>>2]=0;H[k>>2]=0;H[k+4>>2]=0;q=L[b+4>>2];j=L[b+8>>2];l=L[b+12>>2];H[k+60>>2]=0;L[k+56>>2]=l;L[k+52>>2]=j;L[k+48>>2]=q;j=j>=q?q:j;j=j<=l?j:l;L[k+24>>2]=j*O(.05000000074505806);L[k+20>>2]=j*O(.004999999888241291);L[k+16>>2]=j*O(.009999999776482582);D=L[a+4>>2];H[k+408>>2]=0;H[k+412>>2]=0;H[k+400>>2]=0;H[k+404>>2]=0;xa=L[f+20>>2];C=L[e+20>>2];ya=L[f+24>>2];v=L[e+24>>2];z=L[c+8>>2];B=L[c>>2];E=L[c+4>>2];t=L[c+12>>2];P=L[d+12>>2];U=L[d>>2];za=L[f+16>>2];r=L[e+16>>2];J=L[d+4>>2];K=L[d+8>>2];H[k+396>>2]=0;H[k+380>>2]=0;H[k+364>>2]=0;ra=O(-U);s=O(r-za);p=O(C-xa);q=O(v-ya);l=O(O(O(ra*s)-O(p*J))-O(K*q));aa=O(O(P*P)+O(-.5));j=O(O(O(P*O(O(J*s)-O(U*p)))+O(aa*q))-O(K*l));L[k+392>>2]=j+j;j=O(O(O(aa*p)+O(P*O(O(U*q)-O(K*s))))-O(J*l));L[k+388>>2]=j+j;A=k+384|0;j=O(O(O(aa*s)+O(P*O(O(K*p)-O(J*q))))-O(U*l));L[A>>2]=j+j;j=O(O(O(E*K)-O(J*z))+O(O(B*P)-O(t*U)));y=O(j+j);M=O(O(O(z*U)-O(K*B))+O(O(E*P)-O(t*J)));p=O(M+M);q=O(O(1)-O(j*y));w=O(M*p);L[k+376>>2]=q-w;x=O(O(O(B*J)-O(U*E))+O(O(z*P)-O(t*K)));l=O(x*p);t=O(O(t*P)-O(O(O(ra*B)-O(E*J))-O(K*z)));j=O(t*y);L[k+372>>2]=l-j;s=O(x*y);p=O(t*p);L[k+368>>2]=s+p;L[k+360>>2]=l+j;l=q;j=O(x+x);q=O(x*j);L[k+356>>2]=l-q;l=O(M*y);j=O(t*j);L[k+352>>2]=l-j;H[k+348>>2]=0;L[k+344>>2]=s-p;L[k+340>>2]=l+j;L[k+336>>2]=O(O(1)-w)-q;w=L[d+20>>2];s=L[c+20>>2];p=L[d+24>>2];q=L[c+24>>2];l=L[d+16>>2];j=L[c+16>>2];H[k+332>>2]=0;Fa=O(q-v);t=O(O(p-ya)-Fa);Ga=O(j-r);p=O(O(l-za)-Ga);Ha=O(s-C);q=O(O(w-xa)-Ha);l=O(O(K*t)+O(O(U*p)+O(J*q)));j=O(O(O(aa*t)-O(P*O(O(U*q)-O(J*p))))+O(K*l));L[k+328>>2]=j+j;j=O(O(J*l)+O(O(aa*q)-O(P*O(O(K*p)-O(t*U)))));L[k+324>>2]=j+j;j=O(O(U*l)+O(O(aa*p)-O(P*O(O(J*t)-O(q*K)))));L[k+320>>2]=j+j;H[k+256>>2]=0;H[k+176>>2]=127172;H[k+184>>2]=k+336;H[k+180>>2]=k- -64;a=H[k+356>>2];H[k+208>>2]=H[k+352>>2];H[k+212>>2]=a;a=H[k+364>>2];H[k+216>>2]=H[k+360>>2];H[k+220>>2]=a;a=H[k+348>>2];H[k+200>>2]=H[k+344>>2];H[k+204>>2]=a;a=H[k+372>>2];H[k+224>>2]=H[k+368>>2];H[k+228>>2]=a;a=H[k+380>>2];H[k+232>>2]=H[k+376>>2];H[k+236>>2]=a;a=H[A+4>>2];H[k+240>>2]=H[A>>2];H[k+244>>2]=a;a=H[k+396>>2];H[k+248>>2]=H[k+392>>2];H[k+252>>2]=a;a=H[k+340>>2];H[k+192>>2]=H[k+336>>2];H[k+196>>2]=a;q=L[k+196>>2];L[k+196>>2]=L[k+208>>2];l=L[k+216>>2];j=L[k+200>>2];L[k+200>>2]=L[k+224>>2];L[k+216>>2]=L[k+228>>2];L[k+224>>2]=j;L[k+228>>2]=l;L[k+208>>2]=q;H[k+168>>2]=126608;H[k+172>>2]=k;sa=O(3.4028234663852886e38);o=Oa-288|0;Oa=o;ka=O(O(D+g)+O(0));m=Oa-272|0;Oa=m;H[m+264>>2]=0;H[m+268>>2]=0;H[m+256>>2]=0;H[m+260>>2]=0;Z=L[k+408>>2];_=L[k+404>>2];ha=L[k+400>>2];ia=L[k+328>>2];la=L[k+324>>2];V=L[k+320>>2];H[m+240>>2]=1;Aa=k+168|0;b=Aa;c=H[b+4>>2];da=L[c+52>>2];ta=k+176|0;u=ta;d=H[u+8>>2];Q=L[d+52>>2];G=L[d+36>>2];N=L[d+20>>2];ea=L[c+56>>2];z=L[d+56>>2];B=L[d+40>>2];E=L[d+24>>2];a=H[u+4>>2];S=L[a+56>>2];fa=L[a+52>>2];ga=L[a+72>>2];y=L[u+56>>2];w=L[u+24>>2];l=L[u+40>>2];v=L[u+48>>2];j=L[u+32>>2];ma=L[a+68>>2];r=L[u+52>>2];s=L[u+20>>2];p=L[u+36>>2];na=L[c+48>>2];x=L[d+48>>2];M=L[d+32>>2];C=L[d>>2];t=L[d+16>>2];D=L[d+4>>2];q=L[d+8>>2];oa=L[a+48>>2];pa=L[a+64>>2];g=L[u+16>>2];Ba=L[A+8>>2];ba=L[A>>2];Ca=L[A+4>>2];H[m+196>>2]=0;H[m+200>>2]=0;H[m+204>>2]=0;H[m+208>>2]=0;H[m+212>>2]=0;H[m+216>>2]=0;H[m+220>>2]=0;H[m+224>>2]=0;H[m+228>>2]=0;H[m+232>>2]=0;e=0;H[m+236>>2]=0;H[m+188>>2]=0;H[m+192>>2]=0;Da=z;Ea=B;ua=S;Ja=w;a=O(O(Ba*Ba)+O(O(ba*ba)+O(Ca*Ca)))>O(1.1920928955078125e-7);w=a?ba:O(1);ba=a?Ba:O(0);S=a?Ca:O(0);z=O(O(1)/O(W(O(O(ba*ba)+O(O(w*w)+O(S*S))))));w=O(w*z);B=O(-w);S=O(S*z);z=O(ba*z);l=O(O(O(Ja*B)-O(l*S))-O(y*z));j=O(O(O(g*B)-O(j*S))-O(v*z));g=O(O(O(s*B)-O(p*S))-O(r*z));a=O(O(ua*l)+O(O(oa*j)+O(fa*g)))>O(O(ga*l)+O(O(pa*j)+O(g*ma)));y=a?ua:ga;j=a?oa:pa;g=a?fa:ma;s=O(Da+O(O(Ea*y)+O(O(q*j)+O(E*g))));p=z>O(0)?ea:O(-ea);v=O(s-p);L[m+184>>2]=v;q=O(Q+O(O(G*y)+O(O(D*j)+O(g*N))));l=S>O(0)?da:O(-da);r=O(q-l);L[m+180>>2]=r;j=O(x+O(O(M*y)+O(O(C*j)+O(g*t))));g=w>O(0)?na:O(-na);x=O(j-g);L[m+176>>2]=x;H[m+132>>2]=0;H[m+136>>2]=0;H[m+140>>2]=0;H[m+144>>2]=0;H[m+148>>2]=0;H[m+152>>2]=0;H[m+156>>2]=0;H[m+160>>2]=0;H[m+164>>2]=0;H[m+168>>2]=0;H[m+172>>2]=0;H[m+124>>2]=0;H[m+128>>2]=0;L[m+120>>2]=s;L[m+116>>2]=q;L[m+112>>2]=j;H[m+68>>2]=0;H[m+72>>2]=0;H[m+76>>2]=0;H[m+80>>2]=0;H[m+84>>2]=0;H[m+88>>2]=0;H[m+92>>2]=0;H[m+96>>2]=0;H[m+100>>2]=0;H[m+104>>2]=0;H[m+108>>2]=0;H[m+60>>2]=0;H[m+64>>2]=0;L[m+56>>2]=p;L[m+52>>2]=l;L[m+48>>2]=g;g=O(-v);j=O(-r);l=O(-x);t=O(O(v*v)+O(O(x*x)+O(r*r)));q=L[c+24>>2];q=O((qS)){q=l;s=j;p=g;z=O(0);M=x;C=r;w=v;break b}oa=O(q+ka);ka=O(oa*oa);B=O(O(V*O(0))+ha);E=O(O(la*O(0))+_);D=O(O(ia*O(0))+Z);z=O(0);p=g;s=j;q=l;while(1){M=x;C=r;w=v;r=O(O(1)/O(W(O(O(g*g)+O(O(l*l)+O(j*j))))));ea=O(l*r);a=H[u+4>>2];Q=L[a+56>>2];fa=O(g*r);ga=O(j*r);v=O(O(L[u+56>>2]*fa)+O(O(ea*L[u+24>>2])+O(ga*L[u+40>>2])));G=L[a+48>>2];N=O(O(L[u+48>>2]*fa)+O(O(ea*L[u+16>>2])+O(ga*L[u+32>>2])));r=O(O(L[u+52>>2]*fa)+O(O(ea*L[u+20>>2])+O(ga*L[u+36>>2])));y=L[a+52>>2];Da=O(O(Q*v)+O(O(G*N)+O(r*y)));x=L[a+72>>2];Ea=O(x*v);v=L[a+64>>2];ua=r;r=L[a+68>>2];a=Da>O(Ea+O(O(v*N)+O(ua*r)));c=H[u+8>>2];N=a?Q:x;x=a?G:v;v=a?y:r;pa=O(L[c+48>>2]+O(O(L[c+32>>2]*N)+O(O(L[c>>2]*x)+O(v*L[c+16>>2]))));a=H[b+4>>2];r=L[a+48>>2];ha=ea>2]+O(O(L[c+36>>2]*N)+O(O(L[c+4>>2]*x)+O(v*L[c+20>>2]))));r=L[a+52>>2];ia=ga>2]+O(O(L[c+40>>2]*N)+O(O(L[c+8>>2]*x)+O(v*L[c+24>>2]))));r=L[a+56>>2];la=faO(0)){N=L[k+328>>2];y=L[k+320>>2];x=L[k+324>>2];v=O(O(fa*N)+O(O(ea*y)+O(ga*x)));if(v>=O(0)){break a}r=z;z=O(r-O(G/v));if(z>r){if(z>O(1)){break a}s=L[k+408>>2];p=L[k+404>>2];q=L[k+400>>2];H[m+92>>2]=0;H[m+76>>2]=0;H[m+60>>2]=0;v=O(q+O(y*z));y=O(v-B);V=O(y+L[m+80>>2]);L[m+80>>2]=V;r=O(p+O(x*z));p=O(r-E);Q=O(p+L[m+84>>2]);L[m+84>>2]=Q;t=O(s+O(N*z));q=O(t-D);G=O(q+L[m+88>>2]);L[m+88>>2]=G;N=O(y+L[m+64>>2]);L[m+64>>2]=N;B=O(p+L[m+68>>2]);L[m+68>>2]=B;E=O(q+L[m+72>>2]);L[m+72>>2]=E;y=O(y+L[m+48>>2]);L[m+48>>2]=y;x=O(p+L[m+52>>2]);L[m+52>>2]=x;D=O(q+L[m+56>>2]);L[m+56>>2]=D;s=L[m+112>>2];p=L[m+116>>2];q=L[m+120>>2];H[m+188>>2]=0;L[m+184>>2]=q-D;L[m+180>>2]=p-x;L[m+176>>2]=s-y;s=L[m+128>>2];p=L[m+132>>2];q=L[m+136>>2];H[m+204>>2]=0;L[m+200>>2]=q-E;L[m+196>>2]=p-B;L[m+192>>2]=s-N;s=L[m+144>>2];p=L[m+148>>2];q=L[m+152>>2];H[m+220>>2]=0;L[m+216>>2]=q-G;L[m+212>>2]=p-Q;L[m+208>>2]=s-V;Q=O(la+t);da=O(_-Q);V=O(ia+r);na=O(Z-V);ba=O(ha+v);ma=O(pa-ba);q=l;s=j;p=g;B=v;E=r;D=t;t=O(3.4028234663852886e38)}}y=t;c=H[m+240>>2];a=c<<4;d=a+(m+112|0)|0;H[d+12>>2]=0;L[d+8>>2]=_;L[d+4>>2]=Z;L[d>>2]=pa;d=a+(m+48|0)|0;H[d+12>>2]=0;L[d+8>>2]=Q;L[d+4>>2]=V;L[d>>2]=ba;a=a+(m+176|0)|0;H[a+12>>2]=0;L[a+8>>2]=da;L[a+4>>2]=na;L[a>>2]=ma;H[m+240>>2]=c+1;c:{d:{switch(c-1|0){case 0:t=L[m+184>>2];x=O(L[m+200>>2]-t);l=L[m+176>>2];v=O(L[m+192>>2]-l);j=L[m+180>>2];r=O(L[m+196>>2]-j);g=O(O(x*x)+O(O(v*v)+O(r*r)));if(g<=O(1.1920928955078125e-7)){H[m+240>>2]=1;a=H[m+180>>2];H[m+32>>2]=H[m+176>>2];H[m+36>>2]=a;a=H[m+188>>2];H[m+40>>2]=H[m+184>>2];H[m+44>>2]=a;break c}g=O(R(O(O(O(O(O(-l)*v)-O(r*j))-O(t*x))/g),O(1)));g=g>O(0)?g:O(0);L[m+40>>2]=t+O(x*g);L[m+36>>2]=j+O(r*g);L[m+32>>2]=l+O(v*g);break c;case 1:GU(m+32|0,m+176|0,m+112|0,m+48|0,m+240|0);break c;case 2:BZ(m+32|0,m+176|0,m+112|0,m+48|0,m+240|0);break c;default:break d}}L[m+40>>2]=da;L[m+36>>2]=na;L[m+32>>2]=ma}v=L[m+40>>2];g=O(-v);r=L[m+36>>2];j=O(-r);x=L[m+32>>2];l=O(-x);t=O(O(v*v)+O(O(x*x)+O(r*r)));if(ka>2]+32|0];da=O(0);B=O(0);a=!(t>S)|e;p=a?p:g;l=a?q:l;j=a?s:j;g=O(W(O(O(p*p)+O(O(l*l)+O(j*j)))));if(!(g<=O(1.1920928955078125e-7))){g=O(O(1)/g);Ia=O(p*g);da=O(j*g);B=O(l*g)}H[o+268>>2]=0;L[o+264>>2]=-Ia;L[o+260>>2]=-da;L[o+256>>2]=-B;L[o+240>>2]=z;H[o+252>>2]=H[m+252>>2];a=H[m+248>>2];H[o+244>>2]=H[m+244>>2];H[o+248>>2]=a;H[m+44>>2]=0;L[m+40>>2]=e?w:v;L[m+36>>2]=e?C:r;L[m+32>>2]=e?M:x;d=H[m+268>>2];b=H[m+264>>2];H[m+24>>2]=b;H[m+28>>2]=d;c=H[m+260>>2];a=H[m+256>>2];H[m+16>>2]=a;H[m+20>>2]=c;H[m+8>>2]=b;H[m+12>>2]=d;H[m>>2]=a;H[m+4>>2]=c;FU(m+176|0,m+112|0,m+48|0,m+32|0,m+16|0,m,H[m+240>>2]);q=L[H[u+4>>2]+16>>2];l=L[m+16>>2];j=L[m+20>>2];g=L[m+24>>2];H[o+284>>2]=0;L[o+280>>2]=g+(f?O(Ia*q):O(-0));L[o+276>>2]=j+(f?O(da*q):O(-0));L[o+272>>2]=l+(f?O(B*q):O(-0));e=1}Oa=m+272|0;if(e){a=H[o+244>>2];H[k+304>>2]=H[o+240>>2];H[k+308>>2]=a;a=H[o+252>>2];H[k+312>>2]=H[o+248>>2];H[k+316>>2]=a;if(L[o+240>>2]==O(0)){a=H[ta+4>>2];b=H[Aa+4>>2];L[o+224>>2]=O(L[a+16>>2]+L[b+16>>2])*O(100);F[o+215|0]=0;H[o+168>>2]=0;H[o+172>>2]=0;H[o+160>>2]=0;H[o+164>>2]=0;H[o+152>>2]=0;H[o+156>>2]=0;H[o+144>>2]=0;H[o+148>>2]=0;H[o+136>>2]=0;H[o+140>>2]=0;H[o+128>>2]=0;H[o+132>>2]=0;H[o+192>>2]=0;c=H[ta+8>>2];H[o+56>>2]=c;H[o+48>>2]=127172;H[o+52>>2]=a;a=H[c+12>>2];H[o+72>>2]=H[c+8>>2];H[o+76>>2]=a;a=H[c+20>>2];H[o+80>>2]=H[c+16>>2];H[o+84>>2]=a;a=H[c+28>>2];H[o+88>>2]=H[c+24>>2];H[o+92>>2]=a;a=H[c+36>>2];H[o+96>>2]=H[c+32>>2];H[o+100>>2]=a;a=H[c+44>>2];H[o+104>>2]=H[c+40>>2];H[o+108>>2]=a;a=H[c+52>>2];H[o+112>>2]=H[c+48>>2];H[o+116>>2]=a;a=H[c+60>>2];H[o+120>>2]=H[c+56>>2];H[o+124>>2]=a;a=H[c+4>>2];H[o+64>>2]=H[c>>2];H[o+68>>2]=a;l=L[o+68>>2];L[o+68>>2]=L[o+80>>2];j=L[o+88>>2];g=L[o+72>>2];L[o+72>>2]=L[o+96>>2];L[o+80>>2]=l;L[o+96>>2]=g;L[o+88>>2]=L[o+100>>2];L[o+100>>2]=j;H[o+40>>2]=126608;H[o+44>>2]=b;X=o+220|0;$=o+216|0;n=Oa-320|0;Oa=n;qa=H[o+44>>2];j=L[qa+20>>2];a=H[o+52>>2];g=L[a+20>>2];z=L[o+224>>2];Y=I[a+32|0];B=L[a+16>>2];T=I[qa+32|0];E=L[qa+16>>2];H[n+44>>2]=0;la=O((g>j?j:g)*O(.10000000149011612));e:{f:{g:{h:{i:{j:{m=I[o+215|0];if(m){u=a+48|0;ca=H[o+56>>2];a=0;f=0;while(1){b=f<<2;c=I[f+X|0];H[b+(n- -64|0)>>2]=c;d=b+(n+48|0)|0;b=I[f+$|0];H[d>>2]=b;c=(1-c<<4)+u|0;V=L[c+8>>2];Q=L[c>>2];G=L[c+4>>2];b=(b<<4)+88320|0;A=H[b>>2];d=H[b+4>>2];c=H[b+8>>2];y=L[ca+48>>2];x=L[ca+32>>2];M=L[ca>>2];C=L[ca+16>>2];v=L[ca+52>>2];r=L[ca+36>>2];t=L[ca+4>>2];D=L[ca+20>>2];w=L[ca+56>>2];l=L[ca+40>>2];j=L[ca+8>>2];g=L[ca+24>>2];N=L[qa+48>>2];p=L[qa+52>>2];q=L[qa+56>>2];b=a;ja=a<<4;va=ja+(n+144|0)|0;H[va+12>>2]=0;wa=ja+(n+80|0)|0;H[wa+12>>2]=0;ja=ja+(n+208|0)|0;H[ja+12>>2]=0;s=c?q:O(-q);L[wa+8>>2]=s;p=d?p:O(-p);L[wa+4>>2]=p;q=A?N:O(-N);L[wa>>2]=q;l=O(w+O(O(l*V)+O(O(j*Q)+O(G*g))));L[va+8>>2]=l;j=O(v+O(O(r*V)+O(O(t*Q)+O(G*D))));L[va+4>>2]=j;g=O(y+O(O(x*V)+O(O(M*Q)+O(G*C))));L[va>>2]=g;l=O(l-s);L[ja+8>>2]=l;j=O(j-p);L[ja+4>>2]=j;g=O(g-q);L[ja>>2]=g;a=a+1|0;H[n+44>>2]=a;f=f+1|0;if((m|0)!=(f|0)){continue}break}k:{l:{switch(b-1|0){case 0:q=L[n+216>>2];w=O(L[n+232>>2]-q);l=L[n+208>>2];s=O(L[n+224>>2]-l);j=L[n+212>>2];p=O(L[n+228>>2]-j);g=O(O(w*w)+O(O(s*s)+O(p*p)));if(!(g<=O(1.1920928955078125e-7))){break k}H[n+44>>2]=1;a=H[n+212>>2];H[n+16>>2]=H[n+208>>2];H[n+20>>2]=a;a=H[n+220>>2];H[n+24>>2]=H[n+216>>2];H[n+28>>2]=a;break i;case 1:_W(n+16|0,n+208|0,n+144|0,n+80|0,n- -64|0,n+48|0,n+44|0);break i;case 2:break l;default:break j}}DZ(n+16|0,n+208|0,n+144|0,n+80|0,n- -64|0,n+48|0,n+44|0);break i}H[n+28>>2]=0;g=O(R(O(O(O(O(O(-l)*s)-O(p*j))-O(q*w))/g),O(1)));g=g>O(0)?g:O(0);L[n+24>>2]=q+O(w*g);L[n+20>>2]=j+O(p*g);L[n+16>>2]=l+O(s*g);break i}g=L[A+8>>2];l=L[A>>2];j=L[A+4>>2];H[n+284>>2]=0;a=O(O(g*g)+O(O(l*l)+O(j*j)))>O(0);g=a?g:O(0);L[n+280>>2]=g;j=a?j:O(0);L[n+276>>2]=j;l=a?l:O(1);L[n+272>>2]=l;q=O(O(1)/O(W(O(O(g*g)+O(O(l*l)+O(j*j))))));x=O(g*q);M=O(j*q);C=O(l*q);q=O(3.4028234663852886e38);D=O(0);break h}H[n+28>>2]=0;L[n+24>>2]=l;L[n+20>>2]=j;L[n+16>>2]=g}a=H[n+20>>2];H[n+272>>2]=H[n+16>>2];H[n+276>>2]=a;a=H[n+28>>2];H[n+280>>2]=H[n+24>>2];H[n+284>>2]=a;g=L[n+280>>2];l=L[n+272>>2];j=L[n+276>>2];q=O(W(O(O(g*g)+O(O(l*l)+O(j*j)))));if(!(la>2]}Z=Y?B:O(0);_=T?E:O(0);S=O(Z+_);Q=O(z+S);while(1){H[n+296>>2]=H[n+312>>2];a=H[n+308>>2];H[n+288>>2]=H[n+304>>2];H[n+292>>2]=a;m=H[o+56>>2];Y=H[n+44>>2];f=Y<<2;u=H[o+52>>2];d=u+56|0;p=O(-l);w=O(O(O(L[o+72>>2]*p)-O(L[o+88>>2]*j))-O(L[o+104>>2]*g));s=O(O(O(L[o+64>>2]*p)-O(L[o+80>>2]*j))-O(L[o+96>>2]*g));p=O(O(O(L[o+68>>2]*p)-O(L[o+84>>2]*j))-O(L[o+100>>2]*g));c=u+52|0;b=u+72|0;a=u+68|0;A=O(O(L[d>>2]*w)+O(O(L[u+48>>2]*s)+O(p*L[c>>2])))>O(O(L[b>>2]*w)+O(O(L[u+64>>2]*s)+O(p*L[a>>2])));H[f+(n- -64|0)>>2]=A;ka=L[(A?d:b)>>2];ha=L[(A?u+48|0:u- -64|0)>>2];ia=L[(A?c:a)>>2];G=L[m+56>>2];y=L[m+40>>2];v=L[m+24>>2];N=L[m+52>>2];z=L[m+36>>2];B=L[m+20>>2];p=L[m+8>>2];E=L[m+48>>2];r=L[m+32>>2];t=L[m>>2];w=L[m+16>>2];d=H[o+44>>2];s=L[m+4>>2];b=l>O(0);c=j>O(0);a=g>O(0);H[f+(n+48|0)>>2]=b|c<<1|a<<2;y=O(G+O(O(y*ka)+O(O(p*ha)+O(ia*v))));p=L[d+56>>2];v=a?p:O(-p);V=O(y-v);r=O(E+O(O(r*ka)+O(O(t*ha)+O(ia*w))));p=L[d+48>>2];t=b?p:O(-p);G=O(r-t);w=O(N+O(O(z*ka)+O(O(s*ha)+O(ia*B))));p=L[d+52>>2];s=c?p:O(-p);E=O(w-s);p=O(O(x*V)+O(O(C*G)+O(M*E)));if(p>Q){a=0;if(!X){break e}F[o+215|0]=Y;if(!Y){break e}b=0;if((Y|0)!=1){f=Y&-2;T=0;while(1){c=b<<2;d=n- -64|0;F[b+X|0]=H[c+d>>2];u=c;c=n+48|0;F[b+$|0]=H[u+c>>2];u=b|1;A=u<<2;F[u+X|0]=H[d+A>>2];F[u+$|0]=H[c+A>>2];b=b+2|0;T=T+2|0;if((f|0)!=(T|0)){continue}break}}if(!(Y&1)){break e}c=b<<2;F[b+X|0]=H[c+(n- -64|0)>>2];F[b+$|0]=H[c+(n+48|0)>>2];break e}if(p>O(q*O(.9997749924659729))){m:{if(!X){break m}F[o+215|0]=Y;if(!Y){break m}b=0;if((Y|0)!=1){d=Y&-2;T=0;while(1){a=b<<2;c=n- -64|0;F[b+X|0]=H[a+c>>2];f=a;a=n+48|0;F[b+$|0]=H[f+a>>2];A=b|1;f=A<<2;F[A+X|0]=H[c+f>>2];F[A+$|0]=H[a+f>>2];b=b+2|0;T=T+2|0;if((d|0)!=(T|0)){continue}break}}if(!(Y&1)){break m}a=b<<2;F[b+X|0]=H[a+(n- -64|0)>>2];F[b+$|0]=H[a+(n+48|0)>>2]}L[o+160>>2]=C;H[o+172>>2]=0;L[o+168>>2]=x;L[o+164>>2]=M;FU(n+208|0,n+144|0,n+80|0,n+272|0,n+16|0,n,Y);l=L[n+16>>2];j=L[n+20>>2];g=L[n+24>>2];H[o+140>>2]=0;L[o+136>>2]=g-O(Z*x);L[o+132>>2]=j-O(Z*M);L[o+128>>2]=l-O(Z*C);l=L[n>>2];j=L[n+4>>2];g=L[n+8>>2];H[o+156>>2]=0;L[o+152>>2]=g+O(_*x);L[o+148>>2]=j+O(_*M);L[o+144>>2]=l+O(_*C);L[o+192>>2]=q-S;a=2;break e}a=Y<<4;b=a+(n+144|0)|0;H[b+12>>2]=0;L[b+8>>2]=y;L[b+4>>2]=w;L[b>>2]=r;b=a+(n+80|0)|0;H[b+12>>2]=0;L[b+8>>2]=v;L[b+4>>2]=s;L[b>>2]=t;a=a+(n+208|0)|0;H[a+12>>2]=0;L[a+8>>2]=V;L[a+4>>2]=E;L[a>>2]=G;H[n+44>>2]=Y+1;n:{o:{switch(Y-1|0){case 0:t=L[n+216>>2];C=O(L[n+232>>2]-t);w=L[n+208>>2];v=O(L[n+224>>2]-w);s=L[n+212>>2];r=O(L[n+228>>2]-s);p=O(O(C*C)+O(O(v*v)+O(r*r)));if(p<=O(1.1920928955078125e-7)){H[n+44>>2]=1;a=H[n+212>>2];H[n+16>>2]=H[n+208>>2];H[n+20>>2]=a;a=H[n+220>>2];H[n+24>>2]=H[n+216>>2];H[n+28>>2]=a;break n}H[n+28>>2]=0;p=O(R(O(O(O(O(O(-w)*v)-O(r*s))-O(t*C))/p),O(1)));p=p>O(0)?p:O(0);L[n+24>>2]=t+O(C*p);L[n+20>>2]=s+O(r*p);L[n+16>>2]=w+O(v*p);break n;case 1:_W(n+16|0,n+208|0,n+144|0,n+80|0,n- -64|0,n+48|0,n+44|0);break n;case 2:DZ(n+16|0,n+208|0,n+144|0,n+80|0,n- -64|0,n+48|0,n+44|0);break n;default:break o}}H[n+28>>2]=0;L[n+24>>2]=V;L[n+20>>2]=E;L[n+16>>2]=G}a=H[n+20>>2];H[n+272>>2]=H[n+16>>2];H[n+276>>2]=a;a=H[n+28>>2];H[n+280>>2]=H[n+24>>2];H[n+284>>2]=a;w=L[n+280>>2];s=L[n+272>>2];p=L[n+276>>2];t=O(W(O(O(w*w)+O(O(s*s)+O(p*p)))));r=O(O(1)/t);x=O(w*r);M=O(p*r);C=O(s*r);if(!(!(t>la)|!(q>t))){D=L[n+284>>2];g=w;j=p;l=s;q=t;continue}break}f=H[n+44>>2];if(!(q>t)){p:{if(!X){break p}T=f-1|0;F[o+215|0]=T;if(!T){break p}b=0;if((f|0)!=2){A=T&-2;a=0;while(1){c=b<<2;d=n- -64|0;F[b+X|0]=H[c+d>>2];u=c;c=n+48|0;F[b+$|0]=H[u+c>>2];m=b|1;u=m<<2;F[m+X|0]=H[d+u>>2];F[m+$|0]=H[c+u>>2];b=b+2|0;a=a+2|0;if((A|0)!=(a|0)){continue}break}}if(!(T&1)){break p}a=b<<2;F[b+X|0]=H[a+(n- -64|0)>>2];F[b+$|0]=H[a+(n+48|0)>>2]}H[n+312>>2]=H[n+296>>2];a=H[n+292>>2];H[n+304>>2]=H[n+288>>2];H[n+308>>2]=a;L[n+284>>2]=D;L[n+272>>2]=l;L[n+276>>2]=j;L[n+280>>2]=g;FU(n+208|0,n+144|0,n+80|0,n+272|0,n+16|0,n,f);H[o+188>>2]=0;L[o+184>>2]=x;L[o+180>>2]=M;L[o+176>>2]=C;H[o+172>>2]=0;r=g;g=O(O(1)/q);w=O(r*g);L[o+168>>2]=w;s=O(j*g);L[o+164>>2]=s;p=O(l*g);L[o+160>>2]=p;l=L[n+16>>2];j=L[n+20>>2];g=L[n+24>>2];H[o+140>>2]=0;L[o+136>>2]=g-O(Z*w);L[o+132>>2]=j-O(Z*s);L[o+128>>2]=l-O(Z*p);l=L[n>>2];j=L[n+4>>2];g=L[n+8>>2];L[o+192>>2]=q-S;H[o+156>>2]=0;L[o+152>>2]=g+O(_*w);L[o+148>>2]=j+O(_*s);L[o+144>>2]=l+O(_*p);a=2;if(q<=S){break e}a=4;break e}if(X){break f}a=5;break e}f=H[n+44>>2]}F[o+215|0]=f;a=5;if(!f){break e}b=0;if((f|0)!=1){A=f&-2;T=0;while(1){c=b<<2;d=n- -64|0;F[b+X|0]=H[c+d>>2];u=c;c=n+48|0;F[b+$|0]=H[u+c>>2];m=b|1;u=m<<2;F[m+X|0]=H[d+u>>2];F[m+$|0]=H[c+u>>2];b=b+2|0;T=T+2|0;if((A|0)!=(T|0)){continue}break}}if(!(f&1)){break e}c=b<<2;F[b+X|0]=H[c+(n- -64|0)>>2];F[b+$|0]=H[c+(n+48|0)>>2]}Oa=n+320|0;q:{r:{if(a-5|0){break r}H[o+16>>2]=1065353216;a=H[o+28>>2];H[o+8>>2]=H[o+24>>2];H[o+12>>2]=a;a=H[o+20>>2];H[o>>2]=H[o+16>>2];H[o+4>>2]=a;if(wZ(ta,Aa,o+220|0,o+216|0,I[o+215|0],0,o,o+128|0)-5>>>0<=1){break r}H[o+280>>2]=0;H[o+284>>2]=0;H[o+272>>2]=0;H[o+276>>2]=0;q=L[k+328>>2];l=L[k+320>>2];j=L[k+324>>2];H[o+268>>2]=0;g=O(O(1)/O(W(O(O(q*q)+O(O(l*l)+O(j*j))))));L[o+264>>2]=g*O(-q);L[o+260>>2]=g*O(-j);L[o+256>>2]=g*O(-l);g=O(0);break q}a=H[o+140>>2];H[o+280>>2]=H[o+136>>2];H[o+284>>2]=a;a=H[o+132>>2];H[o+272>>2]=H[o+128>>2];H[o+276>>2]=a;a=H[o+164>>2];H[o+256>>2]=H[o+160>>2];H[o+260>>2]=a;a=H[o+172>>2];H[o+264>>2]=H[o+168>>2];H[o+268>>2]=a;g=L[o+192>>2]}L[k+304>>2]=g>2];H[k+288>>2]=H[o+272>>2];H[k+292>>2]=a;a=H[o+284>>2];H[k+296>>2]=H[o+280>>2];H[k+300>>2]=a;a=H[o+260>>2];H[k+272>>2]=H[o+256>>2];H[k+276>>2]=a;a=H[o+268>>2];H[k+280>>2]=H[o+264>>2];H[k+284>>2]=a}Oa=o+288|0;if(e){sa=L[k+304>>2];t=L[k+296>>2];D=L[k+288>>2];w=L[k+292>>2];s=L[k+280>>2];p=L[k+272>>2];q=L[k+276>>2];j=O(O(K*s)+O(O(U*p)+O(J*q)));l=O(-J);g=O(O(O(P*O(O(U*q)+O(p*l)))+O(aa*s))+O(K*j));L[h+8>>2]=g+g;g=O(O(J*j)+O(O(aa*q)+O(P*O(O(K*p)+O(s*ra)))));L[h+4>>2]=g+g;g=O(U*j);j=O(-K);g=O(g+O(O(aa*p)+O(P*O(O(J*s)+O(q*j)))));L[h>>2]=g+g;q=sa>O(0)?sa:O(0);g=O(O(P*O(O(U*w)+O(D*l)))+O(aa*t));l=O(O(K*t)+O(O(U*D)+O(J*w)));g=O(g+O(K*l));L[i+8>>2]=O(Fa*q)+O(ya+O(g+g));g=O(O(J*l)+O(O(aa*w)+O(P*O(O(K*D)+O(t*ra)))));L[i+4>>2]=O(Ha*q)+O(xa+O(g+g));g=O(O(U*l)+O(O(aa*D)+O(P*O(O(J*t)+O(w*j)))));L[i>>2]=O(Ga*q)+O(za+O(g+g))}Oa=k+416|0;return O(sa)}function Dy(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,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=O(0),z=O(0),A=0,B=0,C=0,D=0,E=0,M=0;q=Oa-32|0;Oa=q;c=H[a+28>>2];e=H[c+336>>2];b=H[e>>2];if(b){H[e>>2]=H[b>>2]}if(!b){b=H[33808];e=b+12|0;e=(B=e,C=12195,D=Ra[H[H[b>>2]+20>>2]](b)|0?23054:55639,E=16202,M=82,A=H[H[e>>2]+8>>2],Ra[A](B|0,C|0,D|0,E|0,M|0)|0);b=e+19&-16;H[b-4>>2]=b-e;b=lA(b,H[c+340>>2])}c=H[a+32>>2];H[c>>2]=b;H[b+12112>>2]=0;H[b+12116>>2]=0;H[b+12092>>2]=0;H[b+11968>>2]=0;H[b+12128>>2]=0;H[b+11956>>2]=0;H[b+11868>>2]=0;H[b+11872>>2]=0;e=b+11876|0;H[e>>2]=0;H[e+4>>2]=0;e=b+11884|0;H[e>>2]=0;H[e+4>>2]=0;H[b+12140>>2]=H[b+11976>>2];e=H[a+68>>2];H[b+11952>>2]=e;H[b+11960>>2]=H[a+72>>2];H[b+12132>>2]=e;H[b+11972>>2]=H[a+76>>2];H[b+11964>>2]=H[a+80>>2];H[b+11940>>2]=H[a+84>>2];H[b+11928>>2]=H[a+88>>2];H[b+11932>>2]=H[a+36>>2];H[b+11936>>2]=H[a+40>>2];H[b+11944>>2]=H[a+60>>2];H[b+11948>>2]=H[a- -64>>2];e=0;mA(b,H[H[a+28>>2]+112>>2]?H[c+12>>2]:0,H[c+8>>2]&2147483647);h=H[a+52>>2];c=H[a+100>>2];f=H[b+11948>>2];m=H[b+11944>>2];g=H[b+11932>>2];k=H[b+11928>>2];j=H[a+56>>2];if(j){o=H[b+11936>>2];while(1){b=H[H[c+256>>2]+N(H[h+(d<<2)>>2],44)>>2];if(b>>>0<=4294967167){while(1){l=b>>>7|0;b=H[c+184>>2]+N(l,24)|0;a:{if(I[b+5|0]==1){H[o+(e<<2)>>2]=H[b+20>>2];e=e+1|0;break a}H[f+(i<<2)>>2]=l;i=i+1|0}b=H[b+8>>2];if(b>>>0<4294967168){continue}break}}d=d+1|0;if((j|0)!=(d|0)){continue}break}}if(I[a+116|0]){Ey(f,i)}if(i){b=0;while(1){d=b<<2;o=H[d+f>>2]&33554431;e=H[(H[c+184>>2]+N(o,24)|0)+20>>2];H[d+g>>2]=e;H[d+k>>2]=H[e+36>>2];H[m+(H[H[c+196>>2]+(o<<2)>>2]<<2)>>2]=b;b=b+1|0;if((i|0)!=(b|0)){continue}break}}l=H[a+48>>2];i=0;if(j){e=0;while(1){b=H[(H[c+256>>2]+N(H[h+(e<<2)>>2],44)|0)+20>>2];if((b|0)!=-1){while(1){f=H[c+228>>2];d=(b>>>0)/(f>>>0)|0;o=b-N(d,f)|0;n=H[H[c+208>>2]+(d<<2)>>2];f=H[a+100>>2];g=H[f+148>>2];d=(b>>>0)/(g>>>0)|0;k=H[H[H[f+128>>2]+(d<<2)>>2]+(b-N(d,g)<<2)>>2];b:{if(!k){break b}d=H[c+616>>2];f=H[d>>2];g=b<<1;s=g|1;b=H[d+20>>2];d=(s>>>0)/(b>>>0)|0;d=H[H[f+(d<<2)>>2]+(s-N(b,d)<<2)>>2];s=(g>>>0)/(b>>>0)|0;f=H[H[f+(s<<2)>>2]+(g-N(b,s)<<2)>>2];b=l+(i<<4)|0;H[b+12>>2]=k;g=f>>>7|0;k=H[c+184>>2]+N(g,24)|0;c:{if(I[k+5|0]==1){g=H[k+20>>2];Ra[H[H[g>>2]+188>>2]](g,f>>>1&63,b,b+8|0);break c}if(I[k+4|0]&4){F[b+8|0]=1;H[b>>2]=H[H[c+196>>2]+(g<<2)>>2];break c}F[b+8|0]=0;H[b>>2]=H[m+(H[H[c+196>>2]+(g<<2)>>2]<<2)>>2]}i=i+1|0;if(d>>>0>=4294967168){F[b+9|0]=3;break b}f=d>>>7|0;g=H[c+184>>2]+N(f,24)|0;if(I[g+5|0]==1){f=H[g+20>>2];Ra[H[H[f>>2]+188>>2]](f,d>>>1&63,b+4|0,b+9|0);break b}if(I[g+4|0]&4){F[b+9|0]=1;H[b+4>>2]=H[H[c+196>>2]+(f<<2)>>2];break b}F[b+9|0]=0;H[b+4>>2]=H[m+(H[H[c+196>>2]+(f<<2)>>2]<<2)>>2]}b=H[(n+(o<<4)|0)+8>>2];if((b|0)!=-1){continue}break}}e=e+1|0;if((j|0)!=(e|0)){continue}break}}if(I[a+116|0]){d=0;m=0;o=0;s=32;g=Oa-32|0;Oa=g;F[g+12|0]=0;e=g-128|0;Oa=e;H[g+8>>2]=e;j=i-1|0;d:{if((j|0)<=0){break d}while(1){e:{if((d|0)>=(j|0)){break e}while(1){if(j-d>>>0<=4){while(1){f=d;d=d+1|0;c=d;b=f;while(1){h=c;c=H[(l+(c<<4)|0)+12>>2];k=H[c+56>>2];n=H[(l+(b<<4)|0)+12>>2];p=H[n+56>>2];if(!(k>>>0>=p>>>0&((k|0)!=(p|0)|K[c+60>>2]>=K[n+60>>2]))){b=h}c=h+1|0;if((h|0)<(j|0)){continue}break}if((b|0)!=(f|0)){b=l+(b<<4)|0;c=H[b+12>>2];H[g+24>>2]=H[b+8>>2];H[g+28>>2]=c;c=H[b+4>>2];H[g+16>>2]=H[b>>2];H[g+20>>2]=c;c=l+(f<<4)|0;f=H[c+12>>2];H[b+8>>2]=H[c+8>>2];H[b+12>>2]=f;f=H[c+4>>2];H[b>>2]=H[c>>2];H[b+4>>2]=f;b=H[g+28>>2];H[c+8>>2]=H[g+24>>2];H[c+12>>2]=b;b=H[g+20>>2];H[c>>2]=H[g+16>>2];H[c+4>>2]=b}if((d|0)!=(j|0)){continue}break e}}f=l+((d+j|0)/2<<4)|0;k=H[f+12>>2];c=H[k+56>>2];h=l+(d<<4)|0;p=H[h+12>>2];b=H[p+56>>2];f:{if(c>>>0>=b>>>0){if((b|0)!=(c|0)){c=b;break f}if(K[k+60>>2]>=K[p+60>>2]){break f}}b=H[h+12>>2];H[g+24>>2]=H[h+8>>2];H[g+28>>2]=b;b=H[h+4>>2];H[g+16>>2]=H[h>>2];H[g+20>>2]=b;b=H[f+12>>2];H[h+8>>2]=H[f+8>>2];H[h+12>>2]=b;b=H[f+4>>2];H[h>>2]=H[f>>2];H[h+4>>2]=b;b=H[g+28>>2];H[f+8>>2]=H[g+24>>2];H[f+12>>2]=b;b=H[g+20>>2];H[f>>2]=H[g+16>>2];H[f+4>>2]=b;p=H[h+12>>2];c=H[p+56>>2]}k=l+(j<<4)|0;n=H[k+12>>2];b=H[n+56>>2];g:{if(b>>>0>=c>>>0){if((b|0)!=(c|0)){c=b;break g}if(K[n+60>>2]>=K[p+60>>2]){break g}}b=H[h+12>>2];H[g+24>>2]=H[h+8>>2];H[g+28>>2]=b;b=H[h+4>>2];H[g+16>>2]=H[h>>2];H[g+20>>2]=b;b=H[k+12>>2];H[h+8>>2]=H[k+8>>2];H[h+12>>2]=b;b=H[k+4>>2];H[h>>2]=H[k>>2];H[h+4>>2]=b;b=H[g+28>>2];H[k+8>>2]=H[g+24>>2];H[k+12>>2]=b;b=H[g+20>>2];H[k>>2]=H[g+16>>2];H[k+4>>2]=b;n=H[k+12>>2];c=H[n+56>>2]}b=H[f+12>>2];h=H[b+56>>2];if(!(h>>>0<=c>>>0&((c|0)!=(h|0)|K[n+60>>2]>=K[b+60>>2]))){b=H[f+12>>2];H[g+24>>2]=H[f+8>>2];H[g+28>>2]=b;b=H[f+4>>2];H[g+16>>2]=H[f>>2];H[g+20>>2]=b;b=H[k+12>>2];H[f+8>>2]=H[k+8>>2];H[f+12>>2]=b;b=H[k+4>>2];H[f>>2]=H[k>>2];H[f+4>>2]=b;b=H[g+28>>2];H[k+8>>2]=H[g+24>>2];H[k+12>>2]=b;b=H[g+20>>2];H[k>>2]=H[g+16>>2];H[k+4>>2]=b}b=H[f+12>>2];H[g+24>>2]=H[f+8>>2];H[g+28>>2]=b;b=H[f+4>>2];H[g+16>>2]=H[f>>2];H[g+20>>2]=b;b=j-1|0;k=l+(b<<4)|0;c=k;h=H[c+4>>2];H[f>>2]=H[c>>2];H[f+4>>2]=h;h=H[c+12>>2];H[f+8>>2]=H[c+8>>2];H[f+12>>2]=h;c=H[g+28>>2];H[k+8>>2]=H[g+24>>2];H[k+12>>2]=c;c=H[g+20>>2];H[k>>2]=H[g+16>>2];H[k+4>>2]=c;c=d;while(1){t=H[k+12>>2];p=H[t+56>>2];while(1){f=c;c=c+1|0;h=l+(c<<4)|0;n=H[h+12>>2];r=H[n+56>>2];if(r>>>0

>>0|(p|0)==(r|0)&K[n+60>>2]>2]){continue}break}while(1){b=b-1|0;n=l+(b<<4)|0;r=H[n+12>>2];u=H[r+56>>2];if(u>>>0>p>>>0|(p|0)==(u|0)&K[t+60>>2]>2]){continue}break}if((b|0)>(c|0)){f=H[h+12>>2];H[g+24>>2]=H[h+8>>2];H[g+28>>2]=f;f=H[h+4>>2];H[g+16>>2]=H[h>>2];H[g+20>>2]=f;f=H[n+12>>2];H[h+8>>2]=H[n+8>>2];H[h+12>>2]=f;f=H[n+4>>2];H[h>>2]=H[n>>2];H[h+4>>2]=f;f=H[g+28>>2];H[n+8>>2]=H[g+24>>2];H[n+12>>2]=f;f=H[g+20>>2];H[n>>2]=H[g+16>>2];H[n+4>>2]=f;continue}break}b=H[h+12>>2];H[g+24>>2]=H[h+8>>2];H[g+28>>2]=b;b=H[h+4>>2];H[g+16>>2]=H[h>>2];H[g+20>>2]=b;b=H[k+12>>2];H[h+8>>2]=H[k+8>>2];H[h+12>>2]=b;b=H[k+4>>2];H[h>>2]=H[k>>2];H[h+4>>2]=b;b=H[g+28>>2];H[k+8>>2]=H[g+24>>2];H[k+12>>2]=b;b=H[g+20>>2];H[k>>2]=H[g+16>>2];H[k+4>>2]=b;h:{if((c-d|0)<(j-c|0)){i:{if(s-1>>>0>m>>>0){b=e;break i}c=s<<3;if(c){b=H[33808];h=Ra[H[H[b>>2]+20>>2]](b)|0?29476:55639;b=Ra[H[H[b+12>>2]+8>>2]](b+12|0,c,h,14160,155)|0}else{b=0}c=R6(b,e,m<<2);if(!(!o|!e)){h=H[33808];Ra[H[H[h+12>>2]+12>>2]](h+12|0,e)}s=s<<1;o=1;e=c}b=(m<<2)+b|0;H[b>>2]=d;H[b+4>>2]=f;d=f+2|0;break h}h=f+2|0;j:{if(s-1>>>0>m>>>0){b=e;break j}c=s<<3;if(c){b=H[33808];k=Ra[H[H[b>>2]+20>>2]](b)|0?29476:55639;b=Ra[H[H[b+12>>2]+8>>2]](b+12|0,c,k,14160,155)|0}else{b=0}c=R6(b,e,m<<2);if(!(!o|!e)){k=H[33808];Ra[H[H[k+12>>2]+12>>2]](k+12|0,e)}s=s<<1;o=1;e=c}b=(m<<2)+b|0;H[b>>2]=h;H[b+4>>2]=j;j=f}m=m+2|0;if((d|0)<(j|0)){continue}break}}if(m){b=m-2|0;d=H[(b<<2)+e>>2];j=H[((m<<2)+e|0)-4>>2];m=b;continue}break}if(!o|!e){break d}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,e)}if(I[g+12|0]){H5(H[g+8>>2])}Oa=g+32|0}H[H[a+32>>2]+12>>2]=i;Oa=q+32|0;b=H[a+28>>2];c=b;y=L[b+52>>2];e=H[a+32>>2];d=H[e>>2];g=H[d+11928>>2];k=H[a+36>>2];o=H[d+11948>>2];f=H[a+92>>2];j=H[b+440>>2]+(f<<5)|0;l=H[b+452>>2]+N(f,112)|0;n=d+12112|0;s=d+12116|0;f=H[a+20>>2];i=0;m=H[e+4>>2];b=m+255|0;if(b>>>0>255){h=b>>>8|0;e=h;while(1){b=h-i|0;b=b>>>0<64?b:64;p=yq(H[c+584>>2],N(b,88));if(b){t=e>>>0<64?e:64;d=0;while(1){q=H[c+600>>2];r=H[c+604>>2];b=p+N(d,88)|0;H[b+24>>2]=0;H[b+16>>2]=0;H[b+8>>2]=q;H[b+12>>2]=r;q=d+i<<8;H[b+68>>2]=q;H[b+64>>2]=s;H[b+60>>2]=n;H[b+56>>2]=m;L[b+52>>2]=y;H[b+48>>2]=l;H[b+44>>2]=j;H[b+40>>2]=o;H[b+36>>2]=k;H[b+32>>2]=g;H[b+28>>2]=c;H[b>>2]=113088;q=m-q|0;H[b+72>>2]=q>>>0<256?q:256;L[b+76>>2]=L[c+68>>2];L[b+80>>2]=L[c+72>>2];z=L[c+76>>2];H[b+24>>2]=1;L[b+84>>2]=z;H[b+20>>2]=f;Ra[H[H[f>>2]+16>>2]](f);H[b+16>>2]=H[H[b+20>>2]+16>>2];Ra[H[H[b>>2]+20>>2]](b);d=d+1|0;if((t|0)!=(d|0)){continue}break}}e=e+-64|0;i=i- -64|0;if(h>>>0>i>>>0){continue}break}}S6(j,0,m<<5);m=0;k=Oa-32|0;Oa=k;h=a;g=H[H[a+32>>2]>>2];d=H[g+12132>>2];n=H[a+56>>2];if(n){s=H[h+52>>2];f=H[h+100>>2];while(1){b=H[(H[f+256>>2]+N(H[s+(m<<2)>>2],44)|0)+24>>2];if((b|0)!=-1){while(1){a=H[h+100>>2];e=H[a+148>>2];c=(b>>>0)/(e>>>0)|0;p=H[H[H[a+128>>2]+(c<<2)>>2]+(b-N(c,e)<<2)>>2];e=H[f+228>>2];c=(b>>>0)/(e>>>0)|0;t=N(c,e);q=H[H[f+208>>2]+(c<<2)>>2];j=H[h+92>>2];o=H[h+104>>2];e=H[h+28>>2];c=b<<1;l=H[a+616>>2];r=H[l+20>>2];i=(c>>>0)/(r>>>0)|0;i=H[H[H[l>>2]+(i<<2)>>2]+(c-N(i,r)<<2)>>2];k:{if(i>>>0>=4294967168){H[d+12>>2]=0;G[d+8>>1]=65535;H[d>>2]=e+192;break k}r=i>>>7|0;l=H[a+184>>2]+N(r,24)|0;if(I[l+5|0]==1){l=H[l+20>>2];i=i>>>1&63;Ra[H[H[l>>2]+188>>2]](l,i,k+24|0,k+16|0);if(I[k+16|0]==2){H[d>>2]=l;G[d+8>>1]=i;break k}H[d+12>>2]=0;H[d>>2]=e+192;G[d+8>>1]=65535;break k}i=H[H[a+196>>2]+(r<<2)>>2];i=I[l+4|0]&4?i:j+H[o+(i<<2)>>2]|0;l=H[e+440>>2];H[d+12>>2]=i+1;G[d+8>>1]=65535;H[d>>2]=l+(i<<5)}l=b-t|0;c=c|1;i=H[a+616>>2];t=H[i+20>>2];b=(c>>>0)/(t>>>0)|0;b=H[H[H[i>>2]+(b<<2)>>2]+(c-N(b,t)<<2)>>2];l:{if(b>>>0>=4294967168){H[d+16>>2]=0;G[d+10>>1]=65535;H[d+4>>2]=e+192;break l}c=b>>>7|0;i=H[a+184>>2]+N(c,24)|0;if(I[i+5|0]==1){a=H[i+20>>2];b=b>>>1&63;Ra[H[H[a>>2]+188>>2]](a,b,k+24|0,k+16|0);if(I[k+16|0]==2){H[d+4>>2]=a;G[d+10>>1]=b;break l}H[d+16>>2]=0;H[d+4>>2]=e+192;G[d+10>>1]=65535;break l}c=H[H[a+196>>2]+(c<<2)>>2];a=H[e+440>>2];c=I[i+4|0]&4?c:j+H[o+(c<<2)>>2]|0;H[d+16>>2]=c+1;G[d+10>>1]=65535;H[d+4>>2]=a+(c<<5)}G[d+22>>1]=2;H[d+24>>2]=p;d=d+32|0;b=H[(q+(l<<4)|0)+8>>2];if((b|0)!=-1){continue}break}}m=m+1|0;if((n|0)!=(m|0)){continue}break}a=H[g+12132>>2]}else{a=d}Fy(a,d-a>>5);H[g+12016>>2]=0;c=H[h+32>>2];b=H[c+12>>2];if(b>>>0>(H[g+12020>>2]&2147483647)>>>0){Gy(g+12012|0,b);c=H[h+32>>2];b=H[c+12>>2]}H[g+12016>>2]=b;H[g+12028>>2]=0;o=g+12024|0;if((H[g+12032>>2]&2147483647)>>>0>>0){Gy(o,b);c=H[h+32>>2];b=H[c+12>>2]}H[g+12028>>2]=b;H[g+12004>>2]=0;m:{if(!b){break m}s=H[g+12012>>2];H[g+12040>>2]=0;a=H[H[h+28>>2]+532>>2];H[k+28>>2]=0;H[k+24>>2]=a;j=g+12036|0;a=(a+H[c+4>>2]|0)+1|0;if(a>>>0>(H[g+12044>>2]&2147483647)>>>0){Dv(j,a)}H[g+12040>>2]=a;b=0;p=a<<2;S6(H[g+12036>>2],0,p);a=H[h+48>>2];f=0;l=H[h+32>>2];c=H[l+12>>2];if(c){f=c;c=0;while(1){e=(c<<4)+a|0;i=I[e+8|0];if(!((i|0)==2|I[e+9|0]==2)){e=H[j>>2]+(H[(k+24|0)+(i<<2)>>2]+H[e>>2]<<2)|0;H[e>>2]=H[e>>2]+1;f=H[l+12>>2]}c=c+1|0;if(f>>>0>c>>>0){continue}break}}c=H[g+12040>>2];if(c){f=c&3;e=H[j>>2];m=0;if(c-1>>>0>=3){t=c&-4;i=0;while(1){n=e+(c<<2)|0;q=n-4|0;r=H[q>>2];H[q>>2]=b;q=n-8|0;u=H[q>>2];b=b+r|0;H[q>>2]=b;n=n-12|0;q=H[n>>2];b=b+u|0;H[n>>2]=b;c=c-4|0;n=e+(c<<2)|0;r=H[n>>2];b=b+q|0;H[n>>2]=b;b=b+r|0;i=i+4|0;if((t|0)!=(i|0)){continue}break}}if(f){while(1){c=c-1|0;i=e+(c<<2)|0;n=H[i>>2];H[i>>2]=b;b=b+n|0;m=m+1|0;if((f|0)!=(m|0)){continue}break}}f=H[l+12>>2]}n:{if(!f){break n}c=0;while(1){a=(c<<4)+a|0;e=I[a+8|0];o:{if(!((e|0)==2|I[a+9|0]==2)){f=H[j>>2]+(H[(k+24|0)+(e<<2)>>2]+H[a>>2]<<2)|0;e=H[f>>2];H[f>>2]=e+1;break o}e=b;b=b+1|0}H[H[o>>2]+(e<<2)>>2]=a;c=c+1|0;if(c>>>0>=K[H[h+32>>2]+12>>2]){break n}a=H[h+48>>2];continue}}b=0;S6(H[j>>2],0,p);e=0;i=H[h+32>>2];a=H[i+12>>2];if(a){f=H[h+48>>2];m=H[o>>2];c=0;e=a;while(1){l=H[m+(c<<2)>>2];a=I[l+9|0];if(!((a|0)==2|I[(f+(c<<4)|0)+8|0]==2)){a=H[j>>2]+(((a|0)!=3?H[(k+24|0)+(a<<2)>>2]+H[l+4>>2]|0:0)<<2)|0;H[a>>2]=H[a>>2]+1;e=H[i+12>>2]}c=c+1|0;if(e>>>0>c>>>0){continue}break}}c=H[g+12040>>2];if(c){e=c&3;a=H[j>>2];f=0;if(c-1>>>0>=3){n=c&-4;m=0;while(1){l=a+(c<<2)|0;p=l-4|0;t=H[p>>2];H[p>>2]=b;p=l-8|0;q=H[p>>2];b=b+t|0;H[p>>2]=b;l=l-12|0;p=H[l>>2];b=b+q|0;H[l>>2]=b;c=c-4|0;l=a+(c<<2)|0;t=H[l>>2];b=b+p|0;H[l>>2]=b;b=b+t|0;m=m+4|0;if((n|0)!=(m|0)){continue}break}}if(e){while(1){c=c-1|0;m=a+(c<<2)|0;l=H[m>>2];H[m>>2]=b;b=b+l|0;f=f+1|0;if((e|0)!=(f|0)){continue}break}}e=H[i+12>>2]}a=b;if(e){c=0;while(1){e=H[H[o>>2]+(c<<2)>>2];f=I[e+9|0];p:{if(!((f|0)==2|I[(H[h+48>>2]+(c<<4)|0)+8|0]==2)){i=H[j>>2]+(((f|0)!=3?H[(k+24|0)+(f<<2)>>2]+H[e+4>>2]|0:0)<<2)|0;f=H[i>>2];H[i>>2]=f+1;break p}f=a;a=a+1|0}H[s+(f<<2)>>2]=e;c=c+1|0;if(c>>>0>2]+12>>2]){continue}break}}t=g+12e3|0;l=s+(b<<2)|0;i=0;f=0;n=0;o=32;p=Oa-16|0;Oa=p;F[p+12|0]=0;c=p-128|0;Oa=c;H[p+8>>2]=c;m=(a-b|0)-1|0;q:{if((m|0)<=0){break q}while(1){r:{if((i|0)>=(m|0)){break r}while(1){if(m-i>>>0<=4){while(1){b=i;i=b+1|0;a=i;e=b;while(1){e=K[H[H[l+(a<<2)>>2]+12>>2]+48>>2]>2]+12>>2]+48>>2]?a:e;j=(a|0)<(m|0);a=a+1|0;if(j){continue}break}if((b|0)!=(e|0)){a=l+(e<<2)|0;e=H[a>>2];j=a;a=l+(b<<2)|0;H[j>>2]=H[a>>2];H[a>>2]=e}if((i|0)!=(m|0)){continue}break r}}q=l+(i<<2)|0;a=H[q>>2];r=H[H[a+12>>2]+48>>2];b=l+((i+m|0)/2<<2)|0;j=H[b>>2];s:{if(r>>>0<=K[H[j+12>>2]+48>>2]){e=a;break s}H[q>>2]=j;H[b>>2]=a;e=H[q>>2];r=H[H[e+12>>2]+48>>2];j=a}v=r;r=l+(m<<2)|0;a=H[r>>2];u=H[H[a+12>>2]+48>>2];t:{if(v>>>0<=u>>>0){e=a;break t}H[q>>2]=a;H[r>>2]=e;u=H[H[e+12>>2]+48>>2];j=H[b>>2]}if(K[H[j+12>>2]+48>>2]>u>>>0){H[b>>2]=e;H[r>>2]=j;j=H[b>>2]}e=m-1|0;q=l+(e<<2)|0;H[b>>2]=H[q>>2];H[q>>2]=j;a=i;while(1){r=H[H[j+12>>2]+48>>2];while(1){b=a;a=b+1|0;u=l+(a<<2)|0;v=H[u>>2];if(r>>>0>K[H[v+12>>2]+48>>2]){continue}break}while(1){e=e-1|0;w=l+(e<<2)|0;x=H[w>>2];if(r>>>0>2]+48>>2]){continue}break}if((a|0)<(e|0)){H[u>>2]=x;H[w>>2]=v;j=H[q>>2];continue}break}H[u>>2]=j;H[q>>2]=v;u:{if((a-i|0)<(m-a|0)){v:{if(o-1>>>0>f>>>0){a=c;break v}e=o<<3;if(e){a=H[33808];j=Ra[H[H[a>>2]+20>>2]](a)|0?49918:55639;a=Ra[H[H[a+12>>2]+8>>2]](a+12|0,e,j,14160,155)|0}else{a=0}e=R6(a,c,f<<2);if(!(!n|!c)){j=H[33808];Ra[H[H[j+12>>2]+12>>2]](j+12|0,c)}o=o<<1;n=1;c=e}a=(f<<2)+a|0;H[a>>2]=i;H[a+4>>2]=b;i=b+2|0;break u}j=b+2|0;w:{if(o-1>>>0>f>>>0){a=c;break w}e=o<<3;if(e){a=H[33808];q=Ra[H[H[a>>2]+20>>2]](a)|0?49918:55639;a=Ra[H[H[a+12>>2]+8>>2]](a+12|0,e,q,14160,155)|0}else{a=0}e=R6(a,c,f<<2);if(!(!n|!c)){n=H[33808];Ra[H[H[n+12>>2]+12>>2]](n+12|0,c)}o=o<<1;n=1;c=e}a=(f<<2)+a|0;H[a>>2]=j;H[a+4>>2]=m;m=b}f=f+2|0;if((i|0)<(m|0)){continue}break}}if(f){a=f-2|0;i=H[(a<<2)+c>>2];m=H[((f<<2)+c|0)-4>>2];f=a;continue}break}if(!n|!c){break q}a=H[33808];Ra[H[H[a+12>>2]+12>>2]](a+12|0,c)}if(I[p+12|0]){H5(H[p+8>>2])}Oa=p+16|0;H[g+12136>>2]=d;if(!(H[g+12008>>2]&2147482624)){Hy(t,1024)}H[g+12004>>2]=0;b=H[h+28>>2];a=H[s>>2];c=H[h+92>>2];H[k+28>>2]=0;H[k+24>>2]=c;c=I[a+8|0];x:{if((c|0)==2){H[d>>2]=H[a>>2]&-64;G[d+8>>1]=J[a>>1]&63;break x}G[d+8>>1]=65535;H[d>>2]=(c|0)==3?b+192|0:H[b+440>>2]+(H[(k+24|0)+(c<<2)>>2]+H[a>>2]<<5)|0;c=I[a+8|0];if((c|0)!=3){c=(H[a>>2]+H[(k+24|0)+(c<<2)>>2]|0)+1|0}else{c=0}H[d+12>>2]=c}c=I[a+9|0];y:{if((c|0)==2){H[d+4>>2]=H[a+4>>2]&-64;G[d+10>>1]=J[a+4>>1]&63;break y}G[d+10>>1]=65535;H[d+4>>2]=(c|0)==3?b+192|0:H[b+440>>2]+(H[(k+24|0)+(c<<2)>>2]+H[a+4>>2]<<5)|0;b=I[a+9|0];if((b|0)!=3){a=(H[a+4>>2]+H[(k+24|0)+(b<<2)>>2]|0)+1|0}else{a=0}H[d+16>>2]=a}b=H[H[s>>2]+12>>2];a=1;G[d+22>>1]=1;H[d+24>>2]=b;b=H[h+112>>2];c=H[H[H[s>>2]+12>>2]+68>>2];c=H[b+32>>2]+(H[b+((c&7)<<2)>>2]+(c>>>3|0)<<4)|0;e=I[c+12|0];i=0;b=H[H[h+32>>2]+12>>2];z:{if(b>>>0<=1){f=0;break z}f=0;while(1){n=s+(a<<2)|0;j=H[n>>2];o=H[h+28>>2];b=H[h+92>>2];H[k+28>>2]=0;H[k+24>>2]=b;b=d+32|0;m=I[j+8|0];A:{if((m|0)==2){m=H[j>>2]&-64;H[d+32>>2]=m;G[d+40>>1]=J[j>>1]&63;break A}G[d+40>>1]=65535;m=(m|0)==3?o+192|0:H[o+440>>2]+(H[(k+24|0)+(m<<2)>>2]+H[j>>2]<<5)|0;H[b>>2]=m;l=I[j+8|0];if((l|0)!=3){r=(H[j>>2]+H[(k+24|0)+(l<<2)>>2]|0)+1|0}else{r=0}H[d+44>>2]=r}l=I[j+9|0];B:{if((l|0)==2){H[d+36>>2]=H[j+4>>2]&-64;G[d+42>>1]=J[j+4>>1]&63;break B}G[d+42>>1]=65535;H[d+36>>2]=(l|0)==3?o+192|0:H[o+440>>2]+(H[(k+24|0)+(l<<2)>>2]+H[j+4>>2]<<5)|0;o=I[j+9|0];if((o|0)!=3){j=(H[j+4>>2]+H[(k+24|0)+(o<<2)>>2]|0)+1|0}else{j=0}H[d+48>>2]=j}l=H[h+112>>2];o=H[H[n>>2]+12>>2];j=H[o+68>>2];n=H[l+((j&7)<<2)>>2];l=H[l+32>>2];G[d+54>>1]=1;H[d+56>>2]=o;n=n+(j>>>3|0)<<4;j=n+l|0;if(!e){c=H[b+4>>2];H[d>>2]=H[b>>2];H[d+4>>2]=c;c=H[b+28>>2];H[d+24>>2]=H[b+24>>2];H[d+28>>2]=c;c=H[b+20>>2];H[d+16>>2]=H[b+16>>2];H[d+20>>2]=c;c=H[b+12>>2];H[d+8>>2]=H[b+8>>2];H[d+12>>2]=c;m=H[b>>2];i=a;c=j}C:{D:{if(H[d>>2]!=(m|0)|H[d+4>>2]!=H[d+36>>2]|(J[d+8>>1]!=65535|J[d+10>>1]!=65535)){break D}if(F[o+8|0]&1|I[(l+n|0)+12|0]+e>>>0>64){break D}m=e;break C}E:{if(e){m=0;l=a-i|0;if(l>>>0<2){break E}f=f+1|0;d=H[g+12004>>2];o=H[g+12008>>2]&2147483647;if(d>>>0>=o>>>0){Hy(t,o?o<<1:1);d=H[g+12004>>2]}H[g+12004>>2]=d+1;d=H[g+12e3>>2]+N(d,36)|0;G[d+6>>1]=e;G[d+4>>1]=l;H[d>>2]=i;e=H[H[s+(i<<2)>>2]+12>>2];H[d+12>>2]=c;H[d+8>>2]=e+16;H[d+16>>2]=H[c>>2];H[d+20>>2]=H[c+4>>2];F[d+24|0]=I[c+12|0];F[d+25|0]=I[c+13|0];H[d+28>>2]=H[c+8>>2];F[d+26|0]=I[c+14|0];break E}c=H[b+4>>2];H[d>>2]=H[b>>2];H[d+4>>2]=c;c=H[b+28>>2];H[d+24>>2]=H[b+24>>2];H[d+28>>2]=c;c=H[b+20>>2];H[d+16>>2]=H[b+16>>2];H[d+20>>2]=c;c=H[b+12>>2];H[d+8>>2]=H[b+8>>2];H[d+12>>2]=c;m=0;i=a;c=j;break C}i=a;c=j;d=b}e=I[j+12|0]+m|0;a=a+1|0;b=H[H[h+32>>2]+12>>2];if(a>>>0>>0){continue}break}}if(e){d=d+32|0;m=b-i|0;if(m>>>0>=2){b=H[g+12004>>2];a=H[g+12008>>2]&2147483647;if(b>>>0>=a>>>0){Hy(t,a?a<<1:1);b=H[g+12004>>2]}H[g+12004>>2]=b+1;a=H[g+12e3>>2]+N(b,36)|0;G[a+6>>1]=e;G[a+4>>1]=m;H[a>>2]=i;b=H[H[s+(i<<2)>>2]+12>>2];H[a+12>>2]=c;H[a+8>>2]=b+16;H[a+16>>2]=H[c>>2];H[a+20>>2]=H[c+4>>2];F[a+24|0]=I[c+12|0];F[a+25|0]=I[c+13|0];H[a+28>>2]=H[c+8>>2];F[a+26|0]=I[c+14|0];f=f+1|0}}if(!f){break m}c=0;while(1){a=yq(H[H[h+28>>2]+584>>2],112);e=H[h+92>>2];i=H[h+108>>2];m=H[h+112>>2];b=H[h+28>>2];j=H[b+600>>2];o=H[b+604>>2];H[a+24>>2]=0;H[a+16>>2]=0;H[a+20>>2]=0;H[a+8>>2]=j;H[a+12>>2]=o;H[a+32>>2]=g;H[a+28>>2]=b;H[a>>2]=113300;b=H[h+40>>2];H[a+36>>2]=H[h+36>>2];H[a+40>>2]=b;b=H[h+48>>2];H[a+44>>2]=H[h+44>>2];H[a+48>>2]=b;b=H[h+56>>2];H[a+52>>2]=H[h+52>>2];H[a+56>>2]=b;b=H[h+64>>2];H[a+60>>2]=H[h+60>>2];H[a+64>>2]=b;b=H[h+72>>2];H[a+68>>2]=H[h+68>>2];H[a+72>>2]=b;b=H[h+80>>2];H[a+76>>2]=H[h+76>>2];H[a+80>>2]=b;b=H[h+88>>2];H[a+84>>2]=H[h+84>>2];H[a+88>>2]=b;H[a+104>>2]=i;H[a+108>>2]=m;b=f-c|0;H[a+100>>2]=b>>>0<8?b:8;H[a+96>>2]=c;H[a+92>>2]=e;b=H[h+20>>2];H[a+20>>2]=b;H[a+24>>2]=1;if(b){Ra[H[H[b>>2]+16>>2]](b);H[a+16>>2]=H[H[a+20>>2]+16>>2];b=H[a>>2]}else{b=113300}Ra[H[b+20>>2]](a);c=c+8|0;if(f>>>0>c>>>0){continue}break}}H[g+12132>>2]=d;H[g+11956>>2]=d-H[g+11952>>2]>>5;Oa=k+32|0;b=0;a=H[h+32>>2];if(H[a+8>>2]&2147483647){d=H[a>>2];e=H[d+12144>>2];while(1){a=yq(H[H[h+28>>2]+584>>2],56);f=H[H[h+32>>2]+8>>2];i=H[h+40>>2];c=H[h+28>>2];m=H[c+600>>2];j=H[c+604>>2];H[a+24>>2]=0;H[a+16>>2]=0;H[a+20>>2]=0;H[a+8>>2]=m;H[a+12>>2]=j;H[a+48>>2]=b<<6;H[a+44>>2]=c;H[a+36>>2]=e+N(b,52);H[a+32>>2]=i+(b<<2);H[a+28>>2]=d;H[a>>2]=113356;c=(f&2147483647)-b|0;H[a+40>>2]=c>>>0<32?c:32;c=H[h+20>>2];H[a+20>>2]=c;H[a+24>>2]=1;if(c){Ra[H[H[c>>2]+16>>2]](c);H[a+16>>2]=H[H[a+20>>2]+16>>2];c=H[a>>2]}else{c=113356}Ra[H[c+20>>2]](a);b=b+32|0;if(b>>>0<(H[H[h+32>>2]+8>>2]&2147483647)>>>0){continue}break}}}function cz(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,o=0,p=0,q=0,r=O(0),s=O(0),t=0,u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=0,B=O(0),C=O(0),D=O(0),E=0,M=0,P=O(0),Q=O(0),R=O(0),S=O(0),T=O(0),U=O(0),V=O(0),W=O(0),X=O(0),Y=O(0),Z=O(0),_=O(0),$=O(0),aa=O(0),ba=O(0),ca=O(0),da=0,ea=0,fa=O(0),ga=O(0),ha=O(0),ia=O(0),ja=O(0),ka=O(0),la=O(0),ma=O(0),na=O(0),oa=O(0),pa=0,qa=0,ra=O(0),sa=O(0),ta=O(0),ua=O(0),va=O(0),wa=O(0),xa=O(0),ya=O(0),za=O(0),Aa=O(0),Ba=O(0),Ca=O(0),Da=O(0),Ea=O(0),Fa=0,Ga=O(0),Ha=O(0),Ia=O(0),Ja=O(0),Ka=0,La=O(0),Ma=O(0),Na=O(0),Pa=O(0),Qa=O(0),Sa=O(0),Ta=O(0),Ua=O(0),Va=O(0),Wa=O(0),Xa=O(0),Ya=O(0),Za=O(0),_a=O(0),$a=O(0),ab=O(0),bb=0,cb=0,db=0,eb=O(0),fb=O(0),gb=O(0),hb=O(0),ib=O(0),jb=O(0),kb=O(0),lb=O(0),mb=O(0),nb=O(0),ob=O(0),pb=O(0),qb=0,rb=0,sb=0,tb=O(0),ub=O(0),vb=O(0),wb=O(0),xb=O(0),yb=O(0),zb=O(0),Ab=O(0),Bb=O(0),Cb=O(0),Db=O(0),Eb=O(0),Fb=O(0),Gb=O(0),Hb=O(0),Ib=O(0),Jb=O(0),Kb=O(0),Lb=O(0),Mb=O(0),Nb=O(0),Ob=O(0),Pb=O(0),Qb=O(0),Rb=O(0),Sb=O(0),Tb=O(0),Ub=O(0),Vb=O(0),Wb=O(0),Xb=O(0),Yb=O(0),Zb=O(0),_b=O(0),$b=O(0),ac=O(0),bc=O(0),cc=O(0),dc=O(0),ec=O(0),fc=O(0),gc=O(0),hc=O(0),ic=O(0),jc=O(0),kc=O(0),lc=O(0),mc=O(0),nc=O(0),oc=0,pc=0,qc=0,rc=0,sc=O(0),tc=O(0),uc=O(0),vc=O(0),wc=O(0),xc=O(0),yc=O(0),zc=O(0),Ac=O(0),Bc=O(0),Cc=O(0),Dc=O(0);h=Oa-864|0;Oa=h;t=H[a+44>>2];z=L[t+56>>2];r=L[t+60>>2];pa=H[a+48>>2];Fa=H[a+56>>2];da=H[a+52>>2];ea=H[a+36>>2];c=H[a+40>>2];qb=H[c+11964>>2];qa=H[c+11960>>2];Ga=L[t+92>>2];s=L[t+52>>2];Ha=L[t+88>>2];Ia=L[t+84>>2];Ja=L[t+100>>2];b=H[t+112>>2];a=H[t+336>>2];p=H[a>>2];if(p){H[a>>2]=H[p>>2]}if(!p){a=H[33808];p=Ra[H[H[a>>2]+20>>2]](a)|0?23054:55639;p=Ra[H[H[a+12>>2]+8>>2]](a+12|0,12195,p,16202,82)|0;a=p+19&-16;H[a-4>>2]=a-p;p=lA(a,H[t+340>>2])}H[p+12052>>2]=0;a=p+11856|0;H[a>>2]=0;H[a+4>>2]=0;a=H[c+12128>>2];if(a>>>0>(H[p+12056>>2]&2147483647)>>>0){Cv(p+12048|0,a);a=H[c+12128>>2]}H[p+12052>>2]=a;Ka=H[p+12048>>2];H[h+860>>2]=0;H[h+856>>2]=0;H[h+852>>2]=0;H[h+848>>2]=1065353216;H[h+844>>2]=0;H[h+840>>2]=0;H[h+836>>2]=0;H[h+832>>2]=p+12088;H[h+828>>2]=p+11824;H[h+824>>2]=p+11852;H[h+820>>2]=c+11836;H[h+816>>2]=113028;if(da>>>0>>0){z=r>2];while(1){a:{b:{c:{E=(da<<3)+qb|0;j=H[E>>2];switch(J[((j<<5)+qa|0)+22>>1]-1|0){case 1:break b;case 0:break c;default:break a}}g=J[E+4>>1];if(!g){break a}o=H[pa+32>>2];b=0;while(1){a=b<<2;f=(b+j<<5)+qa|0;e=H[f+24>>2];H[a+(h+16|0)>>2]=e;c=a+(h+48|0)|0;a=H[e+68>>2];m=o+(H[((a&7)<<2)+pa>>2]+(a>>>3|0)<<4)|0;H[c>>2]=m;c=ea;c=J[f+8>>1]==65535?N(H[f+12>>2],112)+c|0:c;d=(h+112|0)+N(b,176)|0;l=J[f+10>>1]!=65535;H[d+32>>2]=l?ea:N(H[f+16>>2],112)+ea|0;H[d+28>>2]=c;c=H[e+16>>2];i=I[c+28|0];a=H[e+20>>2];if(a){i=I[a+28|0]|i}L[d+36>>2]=L[c>>2];L[d+40>>2]=L[c+4>>2];L[d+44>>2]=L[c+8>>2];L[d+48>>2]=L[c+12>>2];L[d+52>>2]=L[c+16>>2];L[d+56>>2]=L[c+20>>2];L[d+60>>2]=L[c+24>>2];L[d+64>>2]=L[(a?a:h+860|0)>>2];L[d+68>>2]=L[(a?a+4|0:h+856|0)>>2];L[d+72>>2]=L[(a?a+8|0:h+852|0)>>2];L[d+76>>2]=L[(a?a+12|0:h+848|0)>>2];L[d+80>>2]=L[(a?a+16|0:h+844|0)>>2];L[d+84>>2]=L[(a?a+20|0:h+840|0)>>2];L[d+88>>2]=L[(a?a+24|0:h+836|0)>>2];H[d+112>>2]=H[e+12>>2];a=H[m+8>>2];H[d+16>>2]=f;H[d+144>>2]=a;H[d+20>>2]=H[f>>2];H[d+24>>2]=H[f+4>>2];a=J[e+40>>1];F[d+125|0]=a>>>2&1;F[d+126|0]=a>>>8&1;H[d+92>>2]=a&8?8:1;d:{if(a&16){if(!l){H[d+96>>2]=2;break d}H[d+96>>2]=8;break d}H[d+96>>2]=a&1024?4:a&64?1:2}a=I[e+44|0];r=I[e+45|0]?O(1):O(0);L[d+12>>2]=r;u=a?O(1):O(0);L[d>>2]=u;L[d+4>>2]=u;L[d+8>>2]=r;L[d+128>>2]=L[e+52>>2];H[d+136>>2]=H[e+36>>2];a=I[e+42|0];L[d+132>>2]=i&32?tb:O(3.4028234663852886e38);F[d+140|0]=a;b=b+1|0;if((g|0)!=(b|0)){continue}break}e:{f:{if((g|0)!=4){break f}if((Ra[H[sb>>2]](h+48|0,p,h+112|0,z,Ia,Ha,Ja,Ga,h+816|0)|0)!=2){break f}c=J[E+4>>1];break e}a=0;if(!J[E+4>>1]){break a}while(1){c=(H[E>>2]+a<<5)+qa|0;b=H[H[c+24>>2]+68>>2];b=H[pa+32>>2]+(H[((b&7)<<2)+pa>>2]+(b>>>3|0)<<4)|0;Ra[H[rb>>2]]((h+112|0)+N(a,176)|0,b,p,z,Ia,Ha,Ja,Ga,h+816|0,Ka)|0;G[c+20>>1]=I[b+12|0];H[c+28>>2]=H[b+8>>2];a=a+1|0;c=J[E+4>>1];if(a>>>0>>0){continue}break}}c=c&65535;if(!c){break a}a=0;if((c|0)!=1){e=c&65534;d=0;while(1){f=h+16|0;g=H[f+(a<<2)>>2];i=h+112|0;b=i+N(a,176)|0;H[g+36>>2]=H[b+136>>2];F[g+42|0]=I[b+140|0];g=J[b+162>>1];b=a|1;f=H[f+(b<<2)>>2];b=i+N(b,176)|0;H[f+36>>2]=H[b+136>>2];F[f+42|0]=I[b+140|0];M=J[b+162>>1]+(g+M|0)|0;a=a+2|0;d=d+2|0;if((e|0)!=(d|0)){continue}break}}if(!(c&1)){break a}c=H[(h+16|0)+(a<<2)>>2];a=(h+112|0)+N(a,176)|0;H[c+36>>2]=H[a+136>>2];F[c+42|0]=I[a+140|0];M=J[a+162>>1]+M|0;break a}b=0;H[h+40>>2]=0;H[h+32>>2]=0;H[h+36>>2]=0;H[h+24>>2]=0;H[h+28>>2]=1065353216;H[h+16>>2]=0;H[h+20>>2]=0;o=J[E+4>>1];if(!o){break a}m=H[t+168>>2];while(1){d=h+16|0;f=d;g=(b+j<<5)+qa|0;e=H[g+24>>2];a=H[e+24>>2];if(a){f=H[a+36>>2]}a=H[e+28>>2];if(a){d=H[a+36>>2]}i=0;a=0;a=J[g+8>>1]==65535?H[g+12>>2]:a;l=J[e+8>>1];q=H[e+20>>2];k=H[e+12>>2];n=H[g+4>>2];A=H[g>>2];i=J[g+10>>1]==65535?H[g+16>>2]:i;c=(h+48|0)+(b<<4)|0;H[c+12>>2]=l;H[c+8>>2]=q;H[c+4>>2]=k;H[c>>2]=e;c=(h+112|0)+N(b,160)|0;H[c+16>>2]=g;L[c+36>>2]=L[f>>2];L[c+40>>2]=L[f+4>>2];L[c+44>>2]=L[f+8>>2];L[c+48>>2]=L[f+12>>2];L[c+52>>2]=L[f+16>>2];L[c+56>>2]=L[f+20>>2];L[c+60>>2]=L[f+24>>2];L[c+64>>2]=L[d>>2];L[c+68>>2]=L[d+4>>2];L[c+72>>2]=L[d+8>>2];L[c+76>>2]=L[d+12>>2];L[c+80>>2]=L[d+16>>2];L[c+84>>2]=L[d+20>>2];r=L[d+24>>2];H[c+32>>2]=N(i,112)+ea;H[c+28>>2]=N(a,112)+ea;L[c+88>>2]=r;H[c+24>>2]=n;H[c+20>>2]=A;L[c+120>>2]=L[e>>2];L[c+124>>2]=L[e+4>>2];H[c+132>>2]=m+(H[e+40>>2]<<5);a=J[e+10>>1];F[c+139|0]=a>>>9&1;d=a&255;F[c+137|0]=d>>>7;F[c+136|0]=a>>>8&1;F[c+138|0]=d>>>5&1;L[c+128>>2]=L[e+44>>2];b=b+1|0;if((o|0)!=(b|0)){continue}break}if((o|0)==4){c=h+112|0;q=h+816|0;e=0;d=Oa-3872|0;Oa=d;H[h+12>>2]=0;a=1;b=H[h+52>>2];g:{if(!b){break g}f=d+32|0;S6(f,0,960);H[d+972>>2]=2139095039;H[d+956>>2]=-8388609;H[d+892>>2]=2139095039;H[d+876>>2]=-8388609;H[d+812>>2]=2139095039;H[d+796>>2]=-8388609;H[d+732>>2]=2139095039;H[d+716>>2]=-8388609;H[d+652>>2]=2139095039;H[d+636>>2]=-8388609;H[d+572>>2]=2139095039;H[d+556>>2]=-8388609;H[d+492>>2]=2139095039;H[d+476>>2]=-8388609;H[d+412>>2]=2139095039;H[d+396>>2]=-8388609;H[d+332>>2]=2139095039;H[d+316>>2]=-8388609;H[d+252>>2]=2139095039;H[d+236>>2]=-8388609;H[d+172>>2]=2139095039;H[d+156>>2]=-8388609;H[d+92>>2]=2139095039;H[d+76>>2]=-8388609;H[c+4>>2]=1065353216;H[c+8>>2]=1065353216;H[c+12>>2]=1065353216;H[c+148>>2]=0;H[c+140>>2]=0;H[c+144>>2]=0;H[c>>2]=1065353216;f=Ra[b|0](f,c+140|0,12,c,H[h+56>>2],c+36|0,c- -64|0,I[c+139|0],d+16|0,d)|0;if(!f){break g}H[c+116>>2]=f;H[c+112>>2]=d+32;g=H[h+68>>2];if(!g){break g}j=c+160|0;i=(d+32|0)+N(f,80)|0;S6(d+992|0,0,960);h:{if(f>>>0>12){break h}b=12-f|0;o=f&3;if(o){while(1){m=i+N(b,80)|0;H[m+60>>2]=2139095039;H[m+44>>2]=-8388609;b=b+1|0;e=e+1|0;if((o|0)!=(e|0)){continue}break}}if(f-1>>>0<3){break h}while(1){e=i+N(b,80)|0;H[e+60>>2]=2139095039;H[e+44>>2]=-8388609;H[e+140>>2]=2139095039;H[e+124>>2]=-8388609;H[e+204>>2]=-8388609;H[e+220>>2]=2139095039;H[e+284>>2]=-8388609;H[e+300>>2]=2139095039;b=b+4|0;if((b|0)!=12){continue}break}}H[c+160>>2]=1065353216;H[c+164>>2]=1065353216;H[c+168>>2]=1065353216;H[c+172>>2]=1065353216;H[c+308>>2]=0;b=c+300|0;H[b>>2]=0;H[b+4>>2]=0;g=Ra[g|0](i,b,12,j,H[h+72>>2],c+196|0,c+224|0,I[c+299|0],d+16|0,d)|0;if(!g){break g}H[c+276>>2]=g;H[c+272>>2]=i;i=H[h+84>>2];if(!i){break g}o=c+320|0;m=f+g|0;j=(d+32|0)+N(m,80)|0;b=12-g|0;S6(j+N(b,80)|0,0,960);i:{if(g>>>0>12){break i}l=g&3;if(l){e=0;while(1){k=j+N(b,80)|0;H[k+60>>2]=2139095039;H[k+44>>2]=-8388609;b=b+1|0;e=e+1|0;if((l|0)!=(e|0)){continue}break}}if(g-1>>>0<3){break i}while(1){e=j+N(b,80)|0;H[e+60>>2]=2139095039;H[e+44>>2]=-8388609;H[e+140>>2]=2139095039;H[e+124>>2]=-8388609;H[e+204>>2]=-8388609;H[e+220>>2]=2139095039;H[e+284>>2]=-8388609;H[e+300>>2]=2139095039;b=b+4|0;if((b|0)!=12){continue}break}}H[c+320>>2]=1065353216;H[c+324>>2]=1065353216;H[c+328>>2]=1065353216;H[c+332>>2]=1065353216;H[c+468>>2]=0;b=c+460|0;H[b>>2]=0;H[b+4>>2]=0;i=Ra[i|0](j,b,12,o,H[h+88>>2],c+356|0,c+384|0,I[c+459|0],d+16|0,d)|0;if(!i){break g}H[c+436>>2]=i;H[c+432>>2]=j;o=H[h+100>>2];if(!o){break g}l=c+480|0;j=(d+32|0)+N(i+m|0,80)|0;b=12-i|0;S6(j+N(b,80)|0,0,960);j:{if(i>>>0>12){break j}m=i&3;if(m){e=0;while(1){k=j+N(b,80)|0;H[k+60>>2]=2139095039;H[k+44>>2]=-8388609;b=b+1|0;e=e+1|0;if((m|0)!=(e|0)){continue}break}}if(i-1>>>0<3){break j}while(1){e=j+N(b,80)|0;H[e+60>>2]=2139095039;H[e+44>>2]=-8388609;H[e+140>>2]=2139095039;H[e+124>>2]=-8388609;H[e+204>>2]=-8388609;H[e+220>>2]=2139095039;H[e+284>>2]=-8388609;H[e+300>>2]=2139095039;b=b+4|0;if((b|0)!=12){continue}break}}H[c+480>>2]=1065353216;H[c+484>>2]=1065353216;H[c+488>>2]=1065353216;H[c+492>>2]=1065353216;H[c+628>>2]=0;b=c+620|0;H[b>>2]=0;H[b+4>>2]=0;b=Ra[o|0](j,b,12,l,H[h+104>>2],c+516|0,c+544|0,I[c+619|0],d+16|0,d)|0;if(!b){break g}H[c+596>>2]=b;H[c+592>>2]=j;e=Oa-1744|0;Oa=e;H[e+1736>>2]=0;H[e+1740>>2]=0;H[e+1728>>2]=0;H[e+1732>>2]=0;j=e+1536|0;l=e+768|0;a=H[c+28>>2];o=H[c+32>>2];tx(j,H[c+112>>2],l,e,H[c+116>>2],a+32|0,o+32|0,L[a+12>>2],L[o+12>>2],c,I[c+136|0],I[c+137|0],1);o=H[c+116>>2];a=o<<4;k=a+l|0;n=a+e|0;a=H[c+188>>2];m=H[c+192>>2];tx(j+(o<<2)|0,H[c+272>>2],k,n,H[c+276>>2],a+32|0,m+32|0,L[a+12>>2],L[m+12>>2],c+160|0,I[c+296|0],I[c+297|0],1);a=H[c+276>>2]+o|0;m=a<<4;n=l+m|0;A=e+m|0;m=H[c+348>>2];k=H[c+352>>2];tx(j+(a<<2)|0,H[c+432>>2],n,A,H[c+436>>2],m+32|0,k+32|0,L[m+12>>2],L[k+12>>2],c+320|0,I[c+456|0],I[c+457|0],1);m=H[c+436>>2]+a|0;k=m<<4;n=j+(m<<2)|0;A=k+l|0;j=H[c+508>>2];l=H[c+512>>2];tx(n,H[c+592>>2],A,e+k|0,H[c+596>>2],j+32|0,l+32|0,L[j+12>>2],L[l+12>>2],c+480|0,I[c+616|0],I[c+617|0],1);j=H[c+596>>2];f=f>>>0>g>>>0?f:g;f=f>>>0>i>>>0?f:i;A=b>>>0>>0?f:b;f=N(A,368);b=Ra[H[H[q>>2]>>2]](q,f+176|0)|0;k:{if(b+1>>>0<=1){a=H[c+16>>2];G[a+22>>1]=0;H[a+24>>2]=0;H[a+28>>2]=H[c+132>>2];a=H[c+176>>2];G[a+22>>1]=0;H[a+24>>2]=0;H[a+28>>2]=H[c+292>>2];a=H[c+336>>2];G[a+22>>1]=0;H[a+24>>2]=0;H[a+28>>2]=H[c+452>>2];a=H[c+496>>2];G[a+22>>1]=0;H[a+24>>2]=0;H[a+28>>2]=H[c+612>>2];a=0;break k}H[h+12>>2]=j+m;g=H[c+16>>2];f=f+160>>>4|0;G[g+22>>1]=f;H[g+24>>2]=b;H[g+28>>2]=H[c+132>>2];g=H[c+176>>2];G[g+22>>1]=f;H[g+24>>2]=b;H[g+28>>2]=H[c+292>>2];g=H[c+336>>2];G[g+22>>1]=f;H[g+24>>2]=b;H[g+28>>2]=H[c+452>>2];g=H[c+496>>2];G[g+22>>1]=f;H[g+24>>2]=b;H[g+28>>2]=H[c+612>>2];f=H[c+512>>2];ub=L[f+24>>2];vb=L[f+20>>2];g=H[c+508>>2];wb=L[g+24>>2];xb=L[g+20>>2];i=H[c+352>>2];yb=L[i+24>>2];zb=L[i+20>>2];j=H[c+348>>2];Ab=L[j+24>>2];Bb=L[j+20>>2];l=H[c+192>>2];Cb=L[l+24>>2];Db=L[l+20>>2];q=H[c+188>>2];Eb=L[q+24>>2];Fb=L[q+20>>2];k=H[c+32>>2];Gb=L[k+24>>2];Hb=L[k+20>>2];n=H[c+28>>2];Ib=L[n+24>>2];Jb=L[n+20>>2];r=L[c+280>>2];u=L[c+284>>2];B=L[c+440>>2];C=L[c+444>>2];D=L[c+600>>2];W=L[c+604>>2];Z=L[c+168>>2];_=L[c+328>>2];$=L[c+488>>2];La=L[c+164>>2];Ma=L[c+324>>2];Na=L[c+484>>2];Pa=L[c+172>>2];Qa=L[c+332>>2];Sa=L[c+492>>2];aa=L[c+300>>2];ba=L[c+460>>2];v=L[c+620>>2];w=L[c+144>>2];x=L[c+304>>2];y=L[c+464>>2];P=L[c+624>>2];Q=L[c+148>>2];R=L[c+308>>2];S=L[c+468>>2];Kb=L[f+16>>2];Lb=L[g+16>>2];Mb=L[f+8>>2];Nb=L[f+4>>2];Ob=L[f>>2];Pb=L[g+8>>2];Qb=L[g+4>>2];Rb=L[g>>2];Sb=L[i+16>>2];Tb=L[j+16>>2];Ub=L[i+8>>2];Vb=L[i+4>>2];Wb=L[i>>2];Xb=L[j+8>>2];Yb=L[j+4>>2];Zb=L[j>>2];_b=L[l+16>>2];$b=L[q+16>>2];ac=L[l+8>>2];bc=L[l+4>>2];cc=L[l>>2];dc=L[q+8>>2];ec=L[q+4>>2];fc=L[q>>2];gc=L[k+16>>2];hc=L[n+16>>2];ic=L[k+8>>2];jc=L[k+4>>2];kc=L[k>>2];lc=L[n+8>>2];mc=L[n+4>>2];nc=L[n>>2];X=L[c+120>>2];Y=L[c+124>>2];T=L[c>>2];U=L[n+12>>2];V=L[c+160>>2];ca=L[q+12>>2];fa=L[c+320>>2];ga=L[j+12>>2];ha=L[c+480>>2];ia=L[g+12>>2];ja=L[c+8>>2];ka=L[k+12>>2];la=L[l+12>>2];ma=L[i+12>>2];na=L[f+12>>2];Ta=L[c+4>>2];Ua=L[c+12>>2];oa=L[c+140>>2];L[b+156>>2]=L[c+628>>2];L[b+152>>2]=S;L[b+148>>2]=R;L[b+144>>2]=Q;L[b+140>>2]=P;L[b+136>>2]=y;L[b+132>>2]=x;L[b+128>>2]=w;L[b+124>>2]=v;L[b+120>>2]=ba;L[b+116>>2]=aa;L[b+112>>2]=oa;L[b+108>>2]=Sa;L[b+104>>2]=Qa;L[b+100>>2]=Pa;L[b+96>>2]=Ua;L[b+92>>2]=Na;L[b+88>>2]=Ma;L[b+84>>2]=La;L[b+80>>2]=Ta;Va=O($*na);L[b+76>>2]=Va;Wa=O(_*ma);L[b+72>>2]=Wa;Xa=O(Z*la);L[b+68>>2]=Xa;Ya=O(ja*ka);L[b+64>>2]=Ya;Za=O(ha*ia);L[b+60>>2]=Za;_a=O(fa*ga);L[b+56>>2]=_a;$a=O(V*ca);L[b+52>>2]=$a;ab=O(T*U);L[b+48>>2]=ab;F[b+15|0]=D!=O(3.4028234663852886e38)|W!=O(3.4028234663852886e38);F[b+14|0]=B!=O(3.4028234663852886e38)|C!=O(3.4028234663852886e38);F[b+13|0]=r!=O(3.4028234663852886e38)|u!=O(3.4028234663852886e38);F[b+12|0]=X!=O(3.4028234663852886e38)|Y!=O(3.4028234663852886e38);L[b+16>>2]=X*s;H[b+4>>2]=A;L[b+20>>2]=r*s;L[b+24>>2]=B*s;L[b+28>>2]=D*s;L[b+32>>2]=Y*s;L[b+36>>2]=u*s;L[b+40>>2]=C*s;L[b+44>>2]=W*s;F[b|0]=9;f=H[c+116>>2];F[b+8|0]=f;g=H[c+276>>2];F[b+9|0]=g;i=H[c+436>>2];F[b+10|0]=i;j=H[c+596>>2];F[b+11|0]=j;b=b+160|0;if(A){r=s>2];v=O(1);w=O(1);j=H[g+(q<<2)>>2];w=I[j+76|0]&32?I[c+138|0]?r:O(1):w;g=H[(e+1536|0)+(a<<2)>>2];v=I[f+76|0]&32?I[c+298|0]?r:O(1):v;i=H[(e+1536|0)+(m<<2)>>2];x=O(1);y=O(1);y=I[g+76|0]&32?I[c+458|0]?r:O(1):y;n=m<<4;k=n+e|0;fa=L[k+8>>2];ga=L[k+4>>2];ha=L[k>>2];bb=a<<4;k=e+bb|0;ia=L[k+8>>2];ja=L[k+4>>2];ka=L[k>>2];cb=o<<4;k=e+cb|0;la=L[k+8>>2];ma=L[k+4>>2];na=L[k>>2];db=q<<4;k=e+db|0;oa=L[k+8>>2];ra=L[k+4>>2];sa=L[k>>2];k=e+768|0;n=k+n|0;ta=L[n+8>>2];ua=L[n+4>>2];va=L[n>>2];n=k+bb|0;wa=L[n+8>>2];xa=L[n+4>>2];ya=L[n>>2];n=k+cb|0;za=L[n+8>>2];Aa=L[n+4>>2];Ba=L[n>>2];k=k+db|0;Ca=L[k+8>>2];Da=L[k+4>>2];Ea=L[k>>2];eb=L[j+20>>2];fb=L[f+20>>2];gb=L[g+20>>2];hb=L[i+20>>2];ib=L[j+24>>2];jb=L[f+24>>2];kb=L[g+24>>2];lb=L[i+24>>2];u=L[j>>2];B=L[f>>2];C=L[g>>2];D=L[i>>2];W=L[j+4>>2];X=L[f+4>>2];Y=L[g+4>>2];Z=L[i+4>>2];_=L[j+8>>2];$=L[f+8>>2];aa=L[g+8>>2];ba=L[i+8>>2];mb=L[j+16>>2];nb=L[f+16>>2];ob=L[g+16>>2];pb=L[i+16>>2];P=L[j+44>>2];Q=L[f+44>>2];R=L[g+44>>2];S=L[i+44>>2];T=L[j+60>>2];U=L[f+60>>2];V=L[g+60>>2];x=I[i+76|0]&32?I[c+618|0]?r:O(1):x;L[b+236>>2]=x*L[i+60>>2];L[b+232>>2]=y*V;L[b+228>>2]=v*U;L[b+224>>2]=w*T;L[b+220>>2]=x*S;L[b+216>>2]=y*R;L[b+212>>2]=v*Q;L[b+208>>2]=w*P;L[b+140>>2]=lb;L[b+136>>2]=kb;L[b+132>>2]=jb;L[b+128>>2]=ib;L[b+124>>2]=hb;L[b+120>>2]=gb;L[b+116>>2]=fb;L[b+112>>2]=eb;L[b+108>>2]=pb;L[b+104>>2]=ob;L[b+100>>2]=nb;L[b+96>>2]=mb;L[b+92>>2]=ta;L[b+88>>2]=wa;L[b+84>>2]=za;L[b+80>>2]=Ca;L[b+76>>2]=ua;L[b+72>>2]=xa;L[b+68>>2]=Aa;L[b+64>>2]=Da;L[b+60>>2]=va;L[b+56>>2]=ya;L[b+52>>2]=Ba;L[b+48>>2]=Ea;L[b+44>>2]=ba;L[b+40>>2]=aa;L[b+36>>2]=$;L[b+32>>2]=_;L[b+28>>2]=Z;L[b+24>>2]=Y;L[b+20>>2]=X;L[b+16>>2]=W;L[b+12>>2]=D;L[b+8>>2]=C;L[b+4>>2]=B;L[b>>2]=u;k=H[e+1740>>2];H[b+248>>2]=H[e+1736>>2];H[b+252>>2]=k;k=H[e+1732>>2];H[b+240>>2]=H[e+1728>>2];H[b+244>>2]=k;H[b+256>>2]=0;H[b+260>>2]=0;H[b+264>>2]=0;H[b+268>>2]=0;sc=L[j+56>>2];tc=L[j+52>>2];uc=L[f+56>>2];vc=L[f+52>>2];wc=L[g+56>>2];xc=L[g+52>>2];yc=L[i+56>>2];zc=L[i+52>>2];v=L[j+36>>2];w=L[f+36>>2];x=L[g+36>>2];y=L[i+36>>2];P=L[j+40>>2];Q=L[f+40>>2];R=L[g+40>>2];S=L[i+40>>2];Ac=L[j+48>>2];Bc=L[f+48>>2];Cc=L[g+48>>2];Dc=L[i+48>>2];T=L[j+32>>2];U=L[f+32>>2];V=L[g+32>>2];ca=L[i+32>>2];L[b+364>>2]=fa;L[b+360>>2]=ia;L[b+356>>2]=la;L[b+352>>2]=oa;L[b+348>>2]=ga;L[b+344>>2]=ja;L[b+340>>2]=ma;L[b+336>>2]=ra;L[b+332>>2]=ha;L[b+328>>2]=ka;L[b+324>>2]=na;L[b+320>>2]=sa;L[b+316>>2]=S;L[b+312>>2]=R;L[b+308>>2]=Q;L[b+304>>2]=P;L[b+300>>2]=y;L[b+296>>2]=x;L[b+292>>2]=w;L[b+288>>2]=v;L[b+284>>2]=ca;L[b+280>>2]=V;L[b+276>>2]=U;L[b+272>>2]=T;Zx(b+144|0,b+160|0,b+176|0,b+192|0,j,O(O(O(Ta*O(O(Ca*Ca)+O(O(Ea*Ea)+O(Da*Da))))+O(ab*O(O(_*_)+O(O(u*u)+O(W*W)))))+O(O(Ua*O(O(oa*oa)+O(O(sa*sa)+O(ra*ra))))+O(Ya*O(O(P*P)+O(O(T*T)+O(v*v)))))),L[c+128>>2],s,z,H[c+28>>2],H[c+32>>2],K[c+116>>2]<=l>>>0);Zx(b+148|0,b+164|0,b+180|0,b+196|0,f,O(O(O(La*O(O(za*za)+O(O(Ba*Ba)+O(Aa*Aa))))+O($a*O(O($*$)+O(O(B*B)+O(X*X)))))+O(O(Pa*O(O(la*la)+O(O(na*na)+O(ma*ma))))+O(Xa*O(O(Q*Q)+O(O(U*U)+O(w*w)))))),L[c+288>>2],s,z,H[c+188>>2],H[c+192>>2],K[c+276>>2]<=l>>>0);Zx(b+152|0,b+168|0,b+184|0,b+200|0,g,O(O(O(Ma*O(O(wa*wa)+O(O(ya*ya)+O(xa*xa))))+O(_a*O(O(aa*aa)+O(O(C*C)+O(Y*Y)))))+O(O(Qa*O(O(ia*ia)+O(O(ka*ka)+O(ja*ja))))+O(Wa*O(O(R*R)+O(O(V*V)+O(x*x)))))),L[c+448>>2],s,z,H[c+348>>2],H[c+352>>2],K[c+436>>2]<=l>>>0);Zx(b+156|0,b+172|0,b+188|0,b+204|0,i,O(O(O(Na*O(O(ta*ta)+O(O(va*va)+O(ua*ua))))+O(Za*O(O(ba*ba)+O(O(D*D)+O(Z*Z)))))+O(O(Sa*O(O(fa*fa)+O(O(ha*ha)+O(ga*ga))))+O(Va*O(O(S*S)+O(O(ca*ca)+O(y*y)))))),L[c+608>>2],s,z,H[c+508>>2],H[c+512>>2],K[c+596>>2]<=l>>>0);D=O(O(O(O(O(Pb*ba)+O(O(Rb*D)+O(Qb*Z)))+O(O(wb*lb)+O(O(Lb*pb)+O(xb*hb))))-O(O(O(Mb*S)+O(O(Ob*ca)+O(Nb*y)))+O(O(ub*yc)+O(O(Kb*Dc)+O(vb*zc)))))*L[b+188>>2]);L[b+172>>2]=D+L[b+172>>2];C=O(O(O(O(O(Xb*aa)+O(O(Zb*C)+O(Yb*Y)))+O(O(Ab*kb)+O(O(Tb*ob)+O(Bb*gb))))-O(O(O(Ub*R)+O(O(Wb*V)+O(Vb*x)))+O(O(yb*wc)+O(O(Sb*Cc)+O(zb*xc)))))*L[b+184>>2]);L[b+168>>2]=C+L[b+168>>2];B=O(O(O(O(O(dc*$)+O(O(fc*B)+O(ec*X)))+O(O(Eb*jb)+O(O($b*nb)+O(Fb*fb))))-O(O(O(ac*Q)+O(O(cc*U)+O(bc*w)))+O(O(Cb*uc)+O(O(_b*Bc)+O(Db*vc)))))*L[b+180>>2]);L[b+164>>2]=B+L[b+164>>2];L[b+156>>2]=D+L[b+156>>2];L[b+152>>2]=C+L[b+152>>2];L[b+148>>2]=B+L[b+148>>2];u=O(O(O(O(O(lc*_)+O(O(nc*u)+O(mc*W)))+O(O(Ib*ib)+O(O(hc*mb)+O(Jb*eb))))-O(O(O(ic*P)+O(O(kc*T)+O(jc*v)))+O(O(Gb*sc)+O(O(gc*Ac)+O(Hb*tc)))))*L[b+176>>2]);L[b+144>>2]=u+L[b+144>>2];L[b+160>>2]=u+L[b+160>>2];if(I[j+76|0]&16){H[b+256>>2]=H[b+256>>2]|2}if(I[f+76|0]&16){H[b+260>>2]=H[b+260>>2]|2}if(I[g+76|0]&16){H[b+264>>2]=H[b+264>>2]|2}if(I[i+76|0]&16){H[b+268>>2]=H[b+268>>2]|2}b=b+368|0;m=((m|0)!=(rc|0))+m|0;a=((a|0)!=(qc|0))+a|0;o=((o|0)!=(pc|0))+o|0;q=((q|0)!=(oc|0))+q|0;l=l+1|0;if((A|0)!=(l|0)){continue}break}}H[b>>2]=0;H[b+4>>2]=0;a=2}Oa=e+1744|0}Oa=d+3872|0;M=H[h+12>>2]+M|0;if((a|0)==2){break a}}a=0;if(!J[E+4>>1]){break a}while(1){M=wx((h+48|0)+(a<<4)|0,(h+112|0)+N(a,160)|0,h+816|0,s,z,Ka)+M|0;a=a+1|0;if(a>>>0>1]){continue}break}}da=da+1|0;if((Fa|0)!=(da|0)){continue}break}}a=p+12168|0;H[a>>2]=H[a>>2]+M;a=H[t+336>>2];H[p>>2]=H[a>>2];H[a>>2]=p;Oa=h+864|0}function Jo(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,o=0;b=H[a+5092>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+5052>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+5012>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+4972>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+4932>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+4892>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+4888>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=H[a+4880>>2];if(!b){break a}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+4876>>2];b:{if((b|0)<0|!(b&2147483647)){break b}b=H[a+4868>>2];if(!b){break b}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+4864>>2];c:{if((b|0)<0|!(b&2147483647)){break c}b=H[a+4856>>2];if(!b){break c}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+4816>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}Ko(a+4788|0);b=H[a+4780>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+4776>>2];d:{if((b|0)<0|!(b&2147483647)){break d}b=H[a+4768>>2];if(!b){break d}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}c=a+16|0;a=H[c+4736>>2];if(!(!a|H[c+4740>>2]<0)){b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,a)}H[c+4736>>2]=0;a=H[c+4724>>2];if(!(!a|H[c+4728>>2]<0)){b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,a)}H[c+4724>>2]=0;a=H[c+4720>>2];e:{if((a|0)<0|!(a&2147483647)){break e}a=H[c+4712>>2];if(!a){break e}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,a)}a=H[c+4704>>2];f:{if((a|0)<0|!(a&2147483647)){break f}a=H[c+4696>>2];if(!a){break f}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,a)}a=H[c+4692>>2];g:{if((a|0)<0|!(a&2147483647)){break g}a=H[c+4684>>2];if(!a){break g}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,a)}a=H[c+4680>>2];h:{if((a|0)<0|!(a&2147483647)){break h}a=H[c+4672>>2];if(!a){break h}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,a)}a=H[c+4632>>2];if(a){b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,a)}Ko(c+4584|0);H[c+4560>>2]=0;H[c+4544>>2]=110900;H[c+4520>>2]=0;H[c+4504>>2]=110900;H[c+4480>>2]=0;H[c+4464>>2]=110900;H[c+4440>>2]=0;H[c+4424>>2]=110900;H[c+4400>>2]=0;H[c+4384>>2]=110900;H[c+4360>>2]=0;H[c+4344>>2]=110900;H[c+4320>>2]=0;H[c+4304>>2]=110900;H[c+4280>>2]=0;H[c+4264>>2]=110900;H[c+4160>>2]=110940;a=H[c+4256>>2];if(a){b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,a)}a=H[c+4248>>2];i:{if((a|0)<0|!(a&2147483647)){break i}a=H[c+4240>>2];if((a|0)==(c+4220|0)){F[c+4236|0]=0;break i}if(!a){break i}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,a)}a=H[c+4216>>2];j:{if((a|0)<0|!(a&2147483647)){break j}a=H[c+4208>>2];if((a|0)==(c+4188|0)){F[c+4204|0]=0;break j}if(!a){break j}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,a)}H[c+4136>>2]=0;H[c+4120>>2]=110900;H[c+4096>>2]=0;H[c+4080>>2]=110900;H[c+4056>>2]=0;H[c+4040>>2]=110900;H[c+4016>>2]=0;H[c+4e3>>2]=110900;H[c+3976>>2]=0;H[c+3960>>2]=110900;H[c+3936>>2]=0;H[c+3920>>2]=110900;H[c+3896>>2]=0;H[c+3880>>2]=110900;H[c+3856>>2]=0;H[c+3840>>2]=110900;H[c+3816>>2]=0;H[c+3800>>2]=110900;H[c+3776>>2]=0;H[c+3760>>2]=110900;H[c+3736>>2]=0;H[c+3720>>2]=110900;H[c+3680>>2]=110900;H[c+3696>>2]=0;H[c+3640>>2]=110900;H[c+3656>>2]=0;H[c+3600>>2]=110900;H[c+3616>>2]=0;H[c+3560>>2]=110900;H[c+3576>>2]=0;H[c+3520>>2]=110900;H[c+3536>>2]=0;H[c+3480>>2]=110900;H[c+3496>>2]=0;H[c+3456>>2]=0;H[c+3440>>2]=110900;H[c+3400>>2]=110900;H[c+3416>>2]=0;H[c+3376>>2]=0;H[c+3360>>2]=110900;H[c+3320>>2]=110900;H[c+3336>>2]=0;H[c+3280>>2]=110900;H[c+3296>>2]=0;H[c+3240>>2]=110900;H[c+3256>>2]=0;H[c+3200>>2]=110900;H[c+3216>>2]=0;H[c+3160>>2]=110900;H[c+3176>>2]=0;H[c+3120>>2]=110900;H[c+3136>>2]=0;H[c+3080>>2]=110900;H[c+3096>>2]=0;b=H[c+3064>>2];if((b|0)>0){a=H[c+3060>>2];b=a+N(b,40)|0;while(1){Ra[H[H[a>>2]>>2]](a)|0;a=a+40|0;if(b>>>0>a>>>0){continue}break}}a=H[c+3068>>2];k:{if((a|0)<0|!(a&2147483647)){break k}a=H[c+3060>>2];if(!a){break k}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,a)}b=H[c+3052>>2];if((b|0)>0){a=H[c+3048>>2];b=a+N(b,40)|0;while(1){Ra[H[H[a>>2]>>2]](a)|0;a=a+40|0;if(b>>>0>a>>>0){continue}break}}a=H[c+3056>>2];l:{if((a|0)<0|!(a&2147483647)){break l}a=H[c+3048>>2];if(!a){break l}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,a)}b=H[c+3040>>2];if((b|0)>0){a=H[c+3036>>2];b=a+N(b,40)|0;while(1){Ra[H[H[a>>2]>>2]](a)|0;a=a+40|0;if(b>>>0>a>>>0){continue}break}}a=H[c+3044>>2];m:{if((a|0)<0|!(a&2147483647)){break m}a=H[c+3036>>2];if(!a){break m}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,a)}b=H[c+3028>>2];if((b|0)>0){a=H[c+3024>>2];b=a+N(b,40)|0;while(1){Ra[H[H[a>>2]>>2]](a)|0;a=a+40|0;if(b>>>0>a>>>0){continue}break}}a=H[c+3032>>2];n:{if((a|0)<0|!(a&2147483647)){break n}a=H[c+3024>>2];if(!a){break n}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,a)}b=H[c+3016>>2];if((b|0)>0){a=H[c+3012>>2];b=a+N(b,40)|0;while(1){Ra[H[H[a>>2]>>2]](a)|0;a=a+40|0;if(b>>>0>a>>>0){continue}break}}a=H[c+3020>>2];o:{if((a|0)<0|!(a&2147483647)){break o}a=H[c+3012>>2];if(!a){break o}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,a)}b=H[c+3004>>2];if((b|0)>0){a=H[c+3e3>>2];b=a+N(b,40)|0;while(1){Ra[H[H[a>>2]>>2]](a)|0;a=a+40|0;if(b>>>0>a>>>0){continue}break}}a=H[c+3008>>2];p:{if((a|0)<0|!(a&2147483647)){break p}a=H[c+3e3>>2];if(!a){break p}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,a)}H[c+2976>>2]=0;H[c+2960>>2]=110900;H[c+2856>>2]=110940;a=H[c+2952>>2];if(a){b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,a)}a=H[c+2944>>2];q:{if((a|0)<0|!(a&2147483647)){break q}a=H[c+2936>>2];if((a|0)==(c+2916|0)){F[c+2932|0]=0;break q}if(!a){break q}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,a)}a=H[c+2912>>2];r:{if((a|0)<0|!(a&2147483647)){break r}a=H[c+2904>>2];if((a|0)==(c+2884|0)){F[c+2900|0]=0;break r}if(!a){break r}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,a)}H[c+2752>>2]=110940;a=H[c+2848>>2];if(a){b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,a)}a=H[c+2840>>2];s:{if((a|0)<0|!(a&2147483647)){break s}a=H[c+2832>>2];if((a|0)==(c+2812|0)){F[c+2828|0]=0;break s}if(!a){break s}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,a)}a=H[c+2808>>2];t:{if((a|0)<0|!(a&2147483647)){break t}a=H[c+2800>>2];if((a|0)==(c+2780|0)){F[c+2796|0]=0;break t}if(!a){break t}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,a)}H[c+2728>>2]=0;H[c+2712>>2]=110900;a=H[c+2516>>2];if(!(!a|H[c+2520>>2]<0)){b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,a)}H[c+2516>>2]=0;a=H[c+2512>>2];u:{if((a|0)<0|!(a&2147483647)){break u}a=H[c+2504>>2];if(!a){break u}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,a)}a=H[c+2500>>2];v:{if((a|0)<0|!(a&2147483647)){break v}a=H[c+2492>>2];if(!a){break v}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,a)}a=H[c+2488>>2];w:{if((a|0)<0|!(a&2147483647)){break w}a=H[c+2480>>2];if(!a){break w}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,a)}a=H[c+2476>>2];x:{if((a|0)<0|!(a&2147483647)){break x}a=H[c+2468>>2];if(!a){break x}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,a)}a=H[c+2464>>2];y:{if((a|0)<0|!(a&2147483647)){break y}a=H[c+2456>>2];if(!a){break y}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,a)}a=H[c+2444>>2];if(!(!a|H[c+2448>>2]<0)){b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,a)}H[c+2444>>2]=0;a=H[c+2432>>2];if(!(!a|H[c+2436>>2]<0)){b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,a)}H[c+2432>>2]=0;a=H[c+2428>>2];z:{if((a|0)<0|!(a&2147483647)){break z}a=H[c+2420>>2];if(!a){break z}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,a)}a=H[c+2340>>2];A:{if((a|0)<0|!(a&2147483647)){break A}a=H[c+2332>>2];if(!a){break A}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,a)}a=H[c+2328>>2];B:{if((a|0)<0|!(a&2147483647)){break B}a=H[c+2320>>2];if(!a){break B}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,a)}a=H[c+2316>>2];C:{if((a|0)<0|!(a&2147483647)){break C}a=H[c+2308>>2];if(!a){break C}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,a)}a=H[c+2304>>2];D:{if((a|0)<0|!(a&2147483647)){break D}a=H[c+2296>>2];if(!a){break D}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,a)}a=H[c+2292>>2];E:{if((a|0)<0|!(a&2147483647)){break E}a=H[c+2284>>2];if(!a){break E}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,a)}a=H[c+2240>>2];if(a){b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,a)}a=H[c+2200>>2];if(a){b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,a)}if(H[c+2156>>2]){a=0;d=Oa-32|0;Oa=d;H[d+24>>2]=0;H[d+16>>2]=0;H[d+20>>2]=0;f=c+1876|0;b=H[f+288>>2];if(b){while(1){H[d+8>>2]=b;F:{if((e&2147483647)>>>0<=a>>>0){a=0;b=H[d+24>>2]&2147483647;h=b?b<<1:1;G:{if(!h){break G}b=h<<2;if(!b){break G}a=H[33808];e=a+12|0;a=(k=e,l=b,m=Ra[H[H[a>>2]+20>>2]](a)|0?46352:55639,n=13582,o=553,j=H[H[e>>2]+8>>2],Ra[j](k|0,l|0,m|0,n|0,o|0)|0)}e=H[d+20>>2];i=(e<<2)+a|0;if((e|0)>0){g=H[d+16>>2];b=a;while(1){H[b>>2]=H[g>>2];g=g+4|0;b=b+4|0;if(i>>>0>b>>>0){continue}break}}H[i>>2]=H[d+8>>2];H:{if(H[d+24>>2]<0){break H}b=H[d+16>>2];if(!b){break H}e=H[33808]+12|0;Ra[H[H[e>>2]+12>>2]](e,b);e=H[d+20>>2]}H[d+24>>2]=h;H[d+16>>2]=a;H[d+20>>2]=e+1;break F}H[H[d+16>>2]+(a<<2)>>2]=b;H[d+20>>2]=a+1}b=H[H[f+288>>2]>>2];H[f+288>>2]=b;if(b){a=H[d+20>>2];e=H[d+24>>2];continue}break}a=H[d+16>>2];b=H[d+20>>2]}else{b=0}e=a;a=d+8|0;Pr(e,b,a);Pr(H[f+264>>2],H[f+268>>2],a);a=H[d+24>>2];I:{if((a|0)<0|!(a&2147483647)){break I}a=H[d+16>>2];if(!a){break I}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,a)}Oa=d+32|0}b=H[c+2144>>2];if(b){a=H[c+2140>>2];b=a+(b<<2)|0;while(1){e=H[a>>2];if(e){d=H[33808];Ra[H[H[d+12>>2]+12>>2]](d+12|0,e)}a=a+4|0;if((b|0)!=(a|0)){continue}break}}a=H[c+2148>>2];J:{if((a|0)<0|!(a&2147483647)){break J}a=H[c+2140>>2];if((a|0)==(c+1880|0)){F[c+2136|0]=0;break J}if(!a){break J}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,a)}if(H[c+1864>>2]){a=0;e=0;d=Oa-32|0;Oa=d;H[d+24>>2]=0;H[d+16>>2]=0;H[d+20>>2]=0;f=c+1584|0;b=H[f+288>>2];if(b){while(1){H[d+8>>2]=b;K:{if((e&2147483647)>>>0<=a>>>0){a=0;b=H[d+24>>2]&2147483647;h=b?b<<1:1;L:{if(!h){break L}b=h<<2;if(!b){break L}a=H[33808];e=a+12|0;a=(o=e,n=b,m=Ra[H[H[a>>2]+20>>2]](a)|0?45722:55639,l=13582,k=553,j=H[H[e>>2]+8>>2],Ra[j](o|0,n|0,m|0,l|0,k|0)|0)}e=H[d+20>>2];i=(e<<2)+a|0;if((e|0)>0){g=H[d+16>>2];b=a;while(1){H[b>>2]=H[g>>2];g=g+4|0;b=b+4|0;if(i>>>0>b>>>0){continue}break}}H[i>>2]=H[d+8>>2];M:{if(H[d+24>>2]<0){break M}b=H[d+16>>2];if(!b){break M}e=H[33808]+12|0;Ra[H[H[e>>2]+12>>2]](e,b);e=H[d+20>>2]}H[d+24>>2]=h;H[d+16>>2]=a;H[d+20>>2]=e+1;break K}H[H[d+16>>2]+(a<<2)>>2]=b;H[d+20>>2]=a+1}b=H[H[f+288>>2]>>2];H[f+288>>2]=b;if(b){a=H[d+20>>2];e=H[d+24>>2];continue}break}a=H[d+16>>2];b=H[d+20>>2]}else{b=0}e=a;a=d+8|0;Qr(e,b,a);Qr(H[f+264>>2],H[f+268>>2],a);a=H[d+24>>2];N:{if((a|0)<0|!(a&2147483647)){break N}a=H[d+16>>2];if(!a){break N}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,a)}Oa=d+32|0}b=H[c+1852>>2];if(b){a=H[c+1848>>2];b=a+(b<<2)|0;while(1){e=H[a>>2];if(e){d=H[33808];Ra[H[H[d+12>>2]+12>>2]](d+12|0,e)}a=a+4|0;if((b|0)!=(a|0)){continue}break}}a=H[c+1856>>2];O:{if((a|0)<0|!(a&2147483647)){break O}a=H[c+1848>>2];if((a|0)==(c+1588|0)){F[c+1844|0]=0;break O}if(!a){break O}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,a)}if(H[c+1572>>2]){a=0;e=0;d=Oa-32|0;Oa=d;H[d+24>>2]=0;H[d+16>>2]=0;H[d+20>>2]=0;f=c+1292|0;b=H[f+288>>2];if(b){while(1){H[d+8>>2]=b;P:{if((e&2147483647)>>>0<=a>>>0){a=0;b=H[d+24>>2]&2147483647;h=b?b<<1:1;Q:{if(!h){break Q}b=h<<2;if(!b){break Q}a=H[33808];e=a+12|0;a=(k=e,l=b,m=Ra[H[H[a>>2]+20>>2]](a)|0?45420:55639,n=13582,o=553,j=H[H[e>>2]+8>>2],Ra[j](k|0,l|0,m|0,n|0,o|0)|0)}e=H[d+20>>2];i=(e<<2)+a|0;if((e|0)>0){g=H[d+16>>2];b=a;while(1){H[b>>2]=H[g>>2];g=g+4|0;b=b+4|0;if(i>>>0>b>>>0){continue}break}}H[i>>2]=H[d+8>>2];R:{if(H[d+24>>2]<0){break R}b=H[d+16>>2];if(!b){break R}e=H[33808]+12|0;Ra[H[H[e>>2]+12>>2]](e,b);e=H[d+20>>2]}H[d+24>>2]=h;H[d+16>>2]=a;H[d+20>>2]=e+1;break P}H[H[d+16>>2]+(a<<2)>>2]=b;H[d+20>>2]=a+1}b=H[H[f+288>>2]>>2];H[f+288>>2]=b;if(b){a=H[d+20>>2];e=H[d+24>>2];continue}break}a=H[d+16>>2];b=H[d+20>>2]}else{b=0}e=a;a=d+8|0;Rr(e,b,a);Rr(H[f+264>>2],H[f+268>>2],a);a=H[d+24>>2];S:{if((a|0)<0|!(a&2147483647)){break S}a=H[d+16>>2];if(!a){break S}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,a)}Oa=d+32|0}b=H[c+1560>>2];if(b){a=H[c+1556>>2];b=a+(b<<2)|0;while(1){e=H[a>>2];if(e){d=H[33808];Ra[H[H[d+12>>2]+12>>2]](d+12|0,e)}a=a+4|0;if((b|0)!=(a|0)){continue}break}}a=H[c+1564>>2];T:{if((a|0)<0|!(a&2147483647)){break T}a=H[c+1556>>2];if((a|0)==(c+1296|0)){F[c+1552|0]=0;break T}if(!a){break T}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,a)}a=H[c+1252>>2];if(a){b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,a)}a=H[c+1248>>2];U:{if((a|0)<0|!(a&2147483647)){break U}a=H[c+1240>>2];if(!a){break U}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,a)}a=H[c+1200>>2];if(a){b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,a)}a=H[c+1188>>2];V:{if((a|0)<0|!(a&2147483647)){break V}a=H[c+1180>>2];if(!a){break V}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,a)}a=H[c+1176>>2];W:{if((a|0)<0|!(a&2147483647)){break W}a=H[c+1168>>2];if(!a){break W}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,a)}a=H[c+1164>>2];X:{if((a|0)<0|!(a&2147483647)){break X}a=H[c+1156>>2];if(!a){break X}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,a)}a=H[c+1096>>2];if(a){b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,a)}a=H[c+1076>>2];Y:{if((a|0)<0|!(a&2147483647)){break Y}a=H[c+1068>>2];if(!a){break Y}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,a)}if(H[c+964>>2]){a=0;e=0;d=Oa-32|0;Oa=d;H[d+24>>2]=0;H[d+16>>2]=0;H[d+20>>2]=0;b=H[c+972>>2];if(b){while(1){H[d+8>>2]=b;Z:{if((e&2147483647)>>>0<=a>>>0){a=0;b=H[d+24>>2]&2147483647;f=b?b<<1:1;_:{if(!f){break _}b=f<<2;if(!b){break _}a=H[33808];e=a+12|0;a=(o=e,n=b,m=Ra[H[H[a>>2]+20>>2]](a)|0?47172:55639,l=13582,k=553,j=H[H[e>>2]+8>>2],Ra[j](o|0,n|0,m|0,l|0,k|0)|0)}e=H[d+20>>2];h=(e<<2)+a|0;if((e|0)>0){g=H[d+16>>2];b=a;while(1){H[b>>2]=H[g>>2];g=g+4|0;b=b+4|0;if(h>>>0>b>>>0){continue}break}}H[h>>2]=H[d+8>>2];$:{if(H[d+24>>2]<0){break $}b=H[d+16>>2];if(!b){break $}e=H[33808]+12|0;Ra[H[H[e>>2]+12>>2]](e,b);e=H[d+20>>2]}H[d+24>>2]=f;H[d+16>>2]=a;H[d+20>>2]=e+1;break Z}H[H[d+16>>2]+(a<<2)>>2]=b;H[d+20>>2]=a+1}b=H[H[c+972>>2]>>2];H[c+972>>2]=b;if(b){a=H[d+20>>2];e=H[d+24>>2];continue}break}a=H[d+16>>2];b=H[d+20>>2]}else{b=0}e=a;a=d+8|0;Sr(e,b,a);Sr(H[c+948>>2],H[c+952>>2],a);a=H[d+24>>2];aa:{if((a|0)<0|!(a&2147483647)){break aa}a=H[d+16>>2];if(!a){break aa}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,a)}Oa=d+32|0}b=H[c+952>>2];if(b){a=H[c+948>>2];b=a+(b<<2)|0;while(1){e=H[a>>2];if(e){d=H[33808];Ra[H[H[d+12>>2]+12>>2]](d+12|0,e)}a=a+4|0;if((b|0)!=(a|0)){continue}break}}a=H[c+956>>2];ba:{if((a|0)<0|!(a&2147483647)){break ba}a=H[c+948>>2];if((a|0)==(c+688|0)){F[c+944|0]=0;break ba}if(!a){break ba}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,a)}if(H[c+672>>2]){a=0;e=0;d=Oa-32|0;Oa=d;H[d+24>>2]=0;H[d+16>>2]=0;H[d+20>>2]=0;b=H[c+680>>2];if(b){while(1){H[d+8>>2]=b;ca:{if((e&2147483647)>>>0<=a>>>0){a=0;b=H[d+24>>2]&2147483647;f=b?b<<1:1;da:{if(!f){break da}b=f<<2;if(!b){break da}a=H[33808];e=a+12|0;a=(k=e,l=b,m=Ra[H[H[a>>2]+20>>2]](a)|0?46046:55639,n=13582,o=553,j=H[H[e>>2]+8>>2],Ra[j](k|0,l|0,m|0,n|0,o|0)|0)}e=H[d+20>>2];h=(e<<2)+a|0;if((e|0)>0){g=H[d+16>>2];b=a;while(1){H[b>>2]=H[g>>2];g=g+4|0;b=b+4|0;if(h>>>0>b>>>0){continue}break}}H[h>>2]=H[d+8>>2];ea:{if(H[d+24>>2]<0){break ea}b=H[d+16>>2];if(!b){break ea}e=H[33808]+12|0;Ra[H[H[e>>2]+12>>2]](e,b);e=H[d+20>>2]}H[d+24>>2]=f;H[d+16>>2]=a;H[d+20>>2]=e+1;break ca}H[H[d+16>>2]+(a<<2)>>2]=b;H[d+20>>2]=a+1}b=H[H[c+680>>2]>>2];H[c+680>>2]=b;if(b){a=H[d+20>>2];e=H[d+24>>2];continue}break}a=H[d+16>>2];b=H[d+20>>2]}else{b=0}e=a;a=d+8|0;Tr(e,b,a);Tr(H[c+656>>2],H[c+660>>2],a);a=H[d+24>>2];fa:{if((a|0)<0|!(a&2147483647)){break fa}a=H[d+16>>2];if(!a){break fa}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,a)}Oa=d+32|0}b=H[c+660>>2];if(b){a=H[c+656>>2];b=a+(b<<2)|0;while(1){e=H[a>>2];if(e){d=H[33808];Ra[H[H[d+12>>2]+12>>2]](d+12|0,e)}a=a+4|0;if((b|0)!=(a|0)){continue}break}}a=H[c+664>>2];ga:{if((a|0)<0|!(a&2147483647)){break ga}a=H[c+656>>2];if((a|0)==(c+396|0)){F[c+652|0]=0;break ga}if(!a){break ga}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,a)}if(H[c+380>>2]){a=0;e=0;d=Oa-32|0;Oa=d;H[d+24>>2]=0;H[d+16>>2]=0;H[d+20>>2]=0;b=H[c+388>>2];if(b){while(1){H[d+8>>2]=b;ha:{if((e&2147483647)>>>0<=a>>>0){a=0;b=H[d+24>>2]&2147483647;f=b?b<<1:1;ia:{if(!f){break ia}b=f<<2;if(!b){break ia}a=H[33808];e=a+12|0;a=(o=e,n=b,m=Ra[H[H[a>>2]+20>>2]](a)|0?45580:55639,l=13582,k=553,j=H[H[e>>2]+8>>2],Ra[j](o|0,n|0,m|0,l|0,k|0)|0)}e=H[d+20>>2];h=(e<<2)+a|0;if((e|0)>0){g=H[d+16>>2];b=a;while(1){H[b>>2]=H[g>>2];g=g+4|0;b=b+4|0;if(h>>>0>b>>>0){continue}break}}H[h>>2]=H[d+8>>2];ja:{if(H[d+24>>2]<0){break ja}b=H[d+16>>2];if(!b){break ja}e=H[33808]+12|0;Ra[H[H[e>>2]+12>>2]](e,b);e=H[d+20>>2]}H[d+24>>2]=f;H[d+16>>2]=a;H[d+20>>2]=e+1;break ha}H[H[d+16>>2]+(a<<2)>>2]=b;H[d+20>>2]=a+1}b=H[H[c+388>>2]>>2];H[c+388>>2]=b;if(b){a=H[d+20>>2];e=H[d+24>>2];continue}break}a=H[d+16>>2];b=H[d+20>>2]}else{b=0}e=a;a=d+8|0;Ur(e,b,a);Ur(H[c+364>>2],H[c+368>>2],a);a=H[d+24>>2];ka:{if((a|0)<0|!(a&2147483647)){break ka}a=H[d+16>>2];if(!a){break ka}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,a)}Oa=d+32|0}b=H[c+368>>2];if(b){a=H[c+364>>2];b=a+(b<<2)|0;while(1){e=H[a>>2];if(e){d=H[33808];Ra[H[H[d+12>>2]+12>>2]](d+12|0,e)}a=a+4|0;if((b|0)!=(a|0)){continue}break}}a=H[c+372>>2];la:{if((a|0)<0|!(a&2147483647)){break la}a=H[c+364>>2];if((a|0)==(c+104|0)){F[c+360|0]=0;break la}if(!a){break la}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,a)}a=H[c+84>>2];ma:{if((a|0)<0|!(a&2147483647)){break ma}a=H[c+76>>2];if(!a){break ma}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,a)}a=H[c+72>>2];na:{if((a|0)<0|!(a&2147483647)){break na}a=H[c- -64>>2];if(!a){break na}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,a)}a=H[c+60>>2];oa:{if((a|0)<0|!(a&2147483647)){break oa}a=H[c+52>>2];if(!a){break oa}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,a)}a=H[c+48>>2];pa:{if((a|0)<0|!(a&2147483647)){break pa}a=H[c+40>>2];if(!a){break pa}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,a)}a=H[c+32>>2];qa:{if((a|0)<0|!(a&2147483647)){break qa}a=H[c+24>>2];if(!a){break qa}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,a)}a=H[c>>2];if(a){b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,a-H[a-4>>2]|0)}}function DK(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,v=O(0),w=0,x=0,y=0,z=0,A=O(0),B=0,C=0,D=0,E=0,M=0,P=0,Q=0,R=0,S=O(0),T=O(0),U=O(0),V=O(0),W=O(0),X=O(0),Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0;f=H[a+96>>2];c=H[b+40>>2];if(f>>>0>>0){e=c<<2;if(e){d=H[33808];d=Ra[H[H[d+12>>2]+8>>2]](d+12|0,e,20591,10568,2977)|0;f=H[a+96>>2]}if(f){R6(d,H[a+92>>2],f<<2);t=H[a+96>>2]}if(c>>>0>t>>>0){f=t<<2;S6(f+d|0,255,e-f|0)}e=H[a+92>>2];if(e){f=H[33808];Ra[H[H[f+12>>2]+12>>2]](f+12|0,e)}H[a+96>>2]=c;H[a+92>>2]=d}H[a+124>>2]=H[b+28>>2];H[a+128>>2]=H[b+32>>2];o=H[b+16>>2];a:{if(!o){break a}f=H[b+20>>2];if(!f){break a}d=H[a+92>>2];while(1){j=0;e=H[a+88>>2];h=H[e+12>>2];b:{c:{d:{e:{m=H[e+24>>2];k=H[o>>2]<<2;l=H[k+d>>2];g=l>>>2|0;d=m+N(g,12)|0;i=J[d+4>>1];switch(i|0){case 1:break d;case 0:break b;default:break e}}c=H[(e+N(i,12)|0)+92>>2]+(H[d+8>>2]<<2)|0;break c}c=d+8|0}while(1){n=c+(j<<2)|0;oK(H[(h+N(J[n+2>>1],40)|0)+28>>2],J[n>>1]);j=j+1|0;if((i|0)!=(j|0)){continue}break}if(i>>>0<2){break b}c=H[(m+N(g,12)|0)+8>>2];j=H[(e+N(i,12)|0)+92>>2]+(c<<2)|0;i=(e+(i<<2)|0)+3176|0;H[j>>2]=H[i>>2];H[i>>2]=c}j=0;G[d+4>>1]=0;G[d+6>>1]=J[d+6>>1]|4;H[d+8>>2]=H[e+4>>2];c=l>>>7|0;f:{if(c>>>0>2]){i=g&31;d=H[e+76>>2];break f}d=H[33808];i=g&31;h=(g+128>>>5|0)+((i|0)!=0)|0;d=Ra[H[H[d+12>>2]+8>>2]](d+12|0,h<<2,20591,10568,274)|0;l=H[e+80>>2];if(l){R6(d,H[e+76>>2],l<<2);j=H[e+80>>2]}l=h-j|0;if(l){S6((j<<2)+d|0,0,l<<2)}j=H[e+76>>2];if(j){l=H[33808];Ra[H[H[l+12>>2]+12>>2]](l+12|0,j)}H[e+80>>2]=h;H[e+76>>2]=d}d=(c<<2)+d|0;H[d>>2]=H[d>>2]|1<>2]=g;g:{if(c>>>0>2]){j=g&31;d=H[e+84>>2];break g}i=0;d=H[33808];j=g&31;h=(g+128>>>5|0)+((j|0)!=0)|0;d=Ra[H[H[d+12>>2]+8>>2]](d+12|0,h<<2,20591,10568,274)|0;l=H[e+88>>2];if(l){R6(d,H[e+84>>2],l<<2);i=H[e+88>>2]}l=h-i|0;if(l){S6((i<<2)+d|0,0,l<<2)}i=H[e+84>>2];if(i){l=H[33808];Ra[H[H[l+12>>2]+12>>2]](l+12|0,i)}H[e+88>>2]=h;H[e+84>>2]=d}d=(c<<2)+d|0;H[d>>2]=H[d>>2]|1<>>0>2]){j=g&31;d=H[e+4216>>2];break h}i=0;d=H[33808];j=g&31;g=(g+128>>>5|0)+((j|0)!=0)|0;d=Ra[H[H[d+12>>2]+8>>2]](d+12|0,g<<2,20591,10568,274)|0;h=H[e+4220>>2];if(h){R6(d,H[e+4216>>2],h<<2);i=H[e+4220>>2]}h=g-i|0;if(h){S6((i<<2)+d|0,0,h<<2)}i=H[e+4216>>2];if(i){h=H[33808];Ra[H[H[h+12>>2]+12>>2]](h+12|0,i)}H[e+4220>>2]=g;H[e+4216>>2]=d}c=(c<<2)+d|0;d=H[c>>2];$=c,aa=j7(-2,j)&d,H[$>>2]=aa;d=H[a+92>>2];H[k+d>>2]=-1;o=o+4|0;f=f-1|0;if(f){continue}break}}j=Oa+-64|0;Oa=j;o=H[b>>2];i:{if(!o){break i}t=H[b+4>>2];if(!t){break i}z=H[b+28>>2];x=H[b+24>>2];while(1){r=H[o>>2];c=x+N(r,24)|0;S=L[c+16>>2];T=L[c+20>>2];U=L[c+24>>2];V=L[c>>2];W=L[c+4>>2];X=L[c+8>>2];A=L[c+12>>2];w=r<<2;v=L[w+H[b+36>>2]>>2];L[j+60>>2]=A-v;L[j+56>>2]=X-v;L[j+52>>2]=W-v;L[j+48>>2]=V-v;L[j+44>>2]=v+U;L[j+40>>2]=v+T;L[j+36>>2]=v+S;L[j+32>>2]=v+A;H[j+8>>2]=j+48;c=H[j+8>>2];H[j+8>>2]=j+32;d=H[j+8>>2];e=H[c>>2];H[j+8>>2]=((e|0)>=0?e|-2147483648:e^-1)-16>>>1&2147483640;e=H[c+4>>2];H[j+12>>2]=((e|0)>=0?e|-2147483648:e^-1)-16>>>1&2147483640;c=H[c+8>>2];H[j+16>>2]=((c|0)>=0?c|-2147483648:c^-1)-16>>>1&2147483640;c=H[d>>2];H[j+20>>2]=((c|0)>=0?c|-2147483648:c^-1)+16>>>1&2147483640|2;c=H[d+4>>2];H[j+24>>2]=((c|0)>=0?c|-2147483648:c^-1)+16>>>1&2147483640|2;c=H[d+8>>2];H[j+28>>2]=((c|0)>=0?c|-2147483648:c^-1)+16>>>1&2147483640|2;i=j+8|0;q=!H[w+z>>2];l=Oa-1040|0;Oa=l;h=1;g=H[a+88>>2];d=H[g+4>>2];j:{if((d|0)!=-1){k=H[g+24>>2]+N(d,12)|0;H[g+4>>2]=H[k+8>>2];e=(J[k+6>>1]>>>1^-1)&1;break j}d=H[g+28>>2];c=d;e=c+1|0;f=H[g+32>>2]&2147483647;k:{if(e>>>0<=f>>>0){break k}c=d;p=f;f=f?f<<1:2;f=e>>>0>>0?f:e;if(p>>>0>=f>>>0){break k}sK(g+24|0,f);c=H[g+28>>2]}H[g+28>>2]=e;k=H[g+24>>2]+N(c,12)|0;e=0}u=q|e<<1|d<<2;l:{m:{n:{o:{p:{q:{p=H[g>>2];if(!p){break q}s=H[g+12>>2];f=0;c=0;while(1){m=s+N(f,40)|0;y=H[m+16>>2];B=H[i>>2];r:{if(y>>>0>>0){break r}R=H[i+12>>2];C=H[m+4>>2];if(R>>>0>>0){break r}D=H[m+20>>2];E=H[i+4>>2];if(D>>>0>>0){break r}M=H[i+16>>2];P=H[m+8>>2];if(M>>>0

>>0){break r}Q=H[i+8>>2];Y=H[m+24>>2];if(Q>>>0>Y>>>0){break r}Z=H[i+20>>2];_=H[m+12>>2];if(Z>>>0<_>>>0){break r}n=0;h=(B>>>0>>0|E>>>0

>>0?n:y>>>0>=R>>>0&Q>>>0>=_>>>0&D>>>0>=M>>>0&Y>>>0>=Z>>>0)&h;m=H[m+28>>2];if(H[m+64>>2]==65535){o5(H[33808],32,10568,2355,56579,0);break r}m=nK(m,i,u,q);n=l+(c<<2)|0;G[n+2>>1]=f;G[n>>1]=m;c=c+1|0}f=f+1|0;if((p|0)!=(f|0)){continue}break}switch(c|0){case 1:break o;case 0:break q;default:break p}}G[k+4>>1]=0;c=1;m=e<<1;break m}i=g+N(c,12)|0;m=i+92|0;n=(g+(c<<2)|0)+3176|0;f=H[n>>2];s:{if((f|0)!=-1){H[k+8>>2]=f;f=H[m>>2]+(f<<2)|0;H[n>>2]=H[f>>2];break s}f=H[i+96>>2];H[k+8>>2]=f;n=(c&1073741823)+f|0;p=H[i+100>>2]&2147483647;t:{if(n>>>0<=p>>>0){break t}s=p;p=p?p<<1:2;p=n>>>0

>>0?p:n;if(s>>>0>=p>>>0){break t}Dv(m,p);f=H[i+96>>2]}m=H[m>>2];H[i+96>>2]=n;f=m+(f<<2)|0}R6(f,l,c<<2);break n}H[k+8>>2]=H[l>>2]}G[k+4>>1]=c;m=e<<1;c=0;if(!(h&1)){break m}c=H[g+4220>>2];n=d>>>5|0;u:{if(c>>>0>n>>>0){h=d&31;f=H[g+4216>>2];break u}i=0;f=0;h=d&31;e=(d+128>>>5|0)+((h|0)!=0)|0;if(e){c=H[33808];f=Ra[H[H[c+12>>2]+8>>2]](c+12|0,e<<2,20591,10568,274)|0;c=H[g+4220>>2]}if(c){R6(f,H[g+4216>>2],c<<2);i=H[g+4220>>2]}c=e-i|0;if(c){S6((i<<2)+f|0,0,c<<2)}c=H[g+4216>>2];if(c){i=H[33808];Ra[H[H[i+12>>2]+12>>2]](i+12|0,c)}H[g+4220>>2]=e;H[g+4216>>2]=f}c=(n<<2)+f|0;e=H[c>>2];$=c,aa=j7(-2,h)&e,H[$>>2]=aa;break l}i=H[g+4220>>2];p=d>>>5|0;v:{if(i>>>0>p>>>0){n=d&31;f=H[g+4216>>2];break v}h=0;f=0;n=d&31;e=(d+128>>>5|0)+((n|0)!=0)|0;if(e){f=H[33808];f=Ra[H[H[f+12>>2]+8>>2]](f+12|0,e<<2,20591,10568,274)|0;i=H[g+4220>>2]}if(i){R6(f,H[g+4216>>2],i<<2);h=H[g+4220>>2]}i=e-h|0;if(i){S6((h<<2)+f|0,0,i<<2)}i=H[g+4216>>2];if(i){h=H[33808];Ra[H[H[h+12>>2]+12>>2]](h+12|0,i)}H[g+4220>>2]=e;H[g+4216>>2]=f}e=(p<<2)+f|0;H[e>>2]=H[e>>2]|1<>2]=u;H[l+1036>>2]=r;c=H[g+4208>>2];if(c>>>0>=(H[g+4212>>2]&2147483647)>>>0){qm(g+4204|0,l+1036|0);break l}H[H[g+4204>>2]+(c<<2)>>2]=r;H[g+4208>>2]=H[g+4208>>2]+1}if(!q){c=H[g+80>>2];e=d>>>5|0;w:{if(c>>>0>e>>>0){h=d&31;f=H[g+76>>2];break w}i=0;f=0;h=d&31;d=(d+128>>>5|0)+((h|0)!=0)|0;if(d){c=H[33808];f=Ra[H[H[c+12>>2]+8>>2]](c+12|0,d<<2,20591,10568,274)|0;c=H[g+80>>2]}if(c){R6(f,H[g+76>>2],c<<2);i=H[g+80>>2]}c=d-i|0;if(c){S6((i<<2)+f|0,0,c<<2)}c=H[g+76>>2];if(c){i=H[33808];Ra[H[H[i+12>>2]+12>>2]](i+12|0,c)}H[g+80>>2]=d;H[g+76>>2]=f}c=(e<<2)+f|0;H[c>>2]=H[c>>2]|1<>2]=r;G[k+6>>1]=m;Oa=l+1040|0;H[w+H[a+92>>2]>>2]=u;o=o+4|0;t=t-1|0;if(t){continue}break}}Oa=j- -64|0;i=Oa+-64|0;Oa=i;o=H[b+8>>2];x:{if(!o){break x}t=H[b+12>>2];if(!t){break x}R=H[b+24>>2];while(1){d=H[o>>2];c=R+N(d,24)|0;S=L[c+16>>2];T=L[c+20>>2];U=L[c+24>>2];V=L[c>>2];W=L[c+4>>2];X=L[c+8>>2];A=L[c+12>>2];f=d<<2;v=L[f+H[b+36>>2]>>2];L[i+60>>2]=A-v;L[i+56>>2]=X-v;L[i+52>>2]=W-v;L[i+48>>2]=V-v;L[i+44>>2]=v+U;L[i+40>>2]=v+T;L[i+36>>2]=v+S;L[i+32>>2]=v+A;H[i+8>>2]=i+48;c=H[i+8>>2];H[i+8>>2]=i+32;d=H[i+8>>2];e=H[c>>2];H[i+8>>2]=((e|0)>=0?e|-2147483648:e^-1)-16>>>1&2147483640;e=H[c+4>>2];H[i+12>>2]=((e|0)>=0?e|-2147483648:e^-1)-16>>>1&2147483640;c=H[c+8>>2];H[i+16>>2]=((c|0)>=0?c|-2147483648:c^-1)-16>>>1&2147483640;c=H[d>>2];H[i+20>>2]=((c|0)>=0?c|-2147483648:c^-1)+16>>>1&2147483640|2;c=H[d+4>>2];H[i+24>>2]=((c|0)>=0?c|-2147483648:c^-1)+16>>>1&2147483640|2;c=H[d+8>>2];H[i+28>>2]=((c|0)>=0?c|-2147483648:c^-1)+16>>>1&2147483640|2;j=i+8|0;d=0;l=Oa-2080|0;Oa=l;u=H[f+H[a+92>>2]>>2];k=u>>>2|0;f=H[a+88>>2];r=H[f+24>>2];n=H[f+12>>2];e=H[f>>2];q=u>>>7|0;y:{if(q>>>0>2]){c=k&31;g=H[f+76>>2];break y}g=H[33808];c=k&31;h=(k+128>>>5|0)+((c|0)!=0)|0;g=Ra[H[H[g+12>>2]+8>>2]](g+12|0,h<<2,20591,10568,274)|0;m=H[f+80>>2];if(m){R6(g,H[f+76>>2],m<<2);d=H[f+80>>2]}m=h-d|0;if(m){S6((d<<2)+g|0,0,m<<2)}d=H[f+76>>2];if(d){m=H[33808];Ra[H[H[m+12>>2]+12>>2]](m+12|0,d)}H[f+80>>2]=h;H[f+76>>2]=g}z=1;d=(q<<2)+g|0;H[d>>2]=H[d>>2]|1<>1];if((m|0)!=1){break A}d=J[p+10>>1];c=n+N(d,40)|0;if(H[c+32>>2]|K[c+4>>2]>K[j>>2]){break A}c=n+N(d,40)|0;if(K[c+8>>2]>K[j+4>>2]|K[c+12>>2]>K[j+8>>2]){break A}c=n+N(d,40)|0;if(K[c+16>>2]>2]|K[c+20>>2]>2]|K[(n+N(d,40)|0)+24>>2]>2]){break A}B:{if(q>>>0>2]){c=k&31;g=H[f+4216>>2];break B}h=0;g=H[33808];c=k&31;e=(k+128>>>5|0)+((c|0)!=0)|0;g=Ra[H[H[g+12>>2]+8>>2]](g+12|0,e<<2,20591,10568,274)|0;k=H[f+4220>>2];if(k){R6(g,H[f+4216>>2],k<<2);h=H[f+4220>>2]}k=e-h|0;if(k){S6((h<<2)+g|0,0,k<<2)}h=H[f+4216>>2];if(h){k=H[33808];Ra[H[H[k+12>>2]+12>>2]](k+12|0,h)}H[f+4220>>2]=e;H[f+4216>>2]=g}e=(q<<2)+g|0;f=H[e>>2];$=e,aa=j7(-2,c)&f,H[$>>2]=aa;pK(H[(n+N(d,40)|0)+28>>2],j,J[p+8>>1]);break z}g=0;C:{if(!e){d=0;break C}h=H[j+20>>2];w=H[j+8>>2];x=H[j+16>>2];s=H[j+4>>2];y=H[j+12>>2];B=H[j>>2];d=0;while(1){c=n+N(g,40)|0;C=H[c+16>>2];D:{if(C>>>0>>0){break D}D=H[c+4>>2];if(D>>>0>y>>>0){break D}E=H[c+20>>2];if(E>>>0>>0){break D}M=H[c+8>>2];if(M>>>0>x>>>0){break D}P=H[c+24>>2];if(P>>>0>>0){break D}Q=H[c+12>>2];if(Q>>>0>h>>>0){break D}c=0;H[(l+1040|0)+(d<<2)>>2]=g;d=d+1|0;z=z&(B>>>0>>0|s>>>0>>0?c:y>>>0<=C>>>0&w>>>0>=Q>>>0&x>>>0<=E>>>0&h>>>0<=P>>>0)}g=g+1|0;if((e|0)!=(g|0)){continue}break}}E:{F:{if((m|0)==1){x=(r+N(k,12)|0)+8|0;break F}x=H[(f+N(m,12)|0)+92>>2]+(H[(r+N(k,12)|0)+8>>2]<<2)|0;if(m){break F}h=0;break E}s=0;h=0;while(1){g=(s<<2)+x|0;w=J[g+2>>1];c=0;G:{H:{if(!d){break H}c=1;I:{if((w|0)==H[l+1040>>2]){c=d-1|0;H[l+1040>>2]=H[(l+1040|0)+(c<<2)>>2];break I}while(1){e=c;if((d|0)==(c|0)){c=d;break H}c=e+1|0;y=(l+1040|0)+(e<<2)|0;if((w|0)!=H[y>>2]){continue}break}c=d-1|0;H[y>>2]=H[(l+1040|0)+(c<<2)>>2];if(d>>>0<=e>>>0){break H}}pK(H[(n+N(w,40)|0)+28>>2],j,J[g>>1]);H[l+(h<<2)>>2]=J[g>>1]|J[g+2>>1]<<16;h=h+1|0;break G}oK(H[(n+N(w,40)|0)+28>>2],J[g>>1])}d=c;s=s+1|0;if((m|0)!=(s|0)){continue}break}}if(d){c=u&1;g=0;while(1){e=H[(l+1040|0)+(g<<2)>>2];w=nK(H[(n+N(e,40)|0)+28>>2],j,u,c);s=l+(h<<2)|0;G[s+2>>1]=e;G[s>>1]=w;h=h+1|0;g=g+1|0;if((g|0)!=(d|0)){continue}break}}J:{K:{L:{M:{N:{if((h|0)==(m|0)){if(!m){break N}R6(x,l,m<<2);break M}if(m>>>0>=2){c=H[(r+N(k,12)|0)+8>>2];d=(f+(m<<2)|0)+3176|0;H[H[(f+N(m,12)|0)+92>>2]+(c<<2)>>2]=H[d>>2];H[d>>2]=c}O:{switch(h|0){default:d=f+N(h,12)|0;e=d+92|0;g=(f+(h<<2)|0)+3176|0;c=H[g>>2];P:{if((c|0)!=-1){H[(r+N(k,12)|0)+8>>2]=c;c=H[e>>2]+(c<<2)|0;H[g>>2]=H[c>>2];break P}c=H[d+96>>2];H[(r+N(k,12)|0)+8>>2]=c;g=(h&1073741823)+c|0;j=H[d+100>>2]&2147483647;Q:{if(g>>>0<=j>>>0){break Q}s=j;j=j?j<<1:2;j=g>>>0>>0?j:g;if(s>>>0>=j>>>0){break Q}Dv(e,j);c=H[d+96>>2]}e=H[e>>2];H[d+96>>2]=g;c=e+(c<<2)|0}R6(c,l,h<<2);break N;case 0:break M;case 1:break O}}H[(r+N(k,12)|0)+8>>2]=H[l>>2]}G[p+4>>1]=h;break L}G[p+4>>1]=h;if(!m|h){break L}c=r+N(k,12)|0;H[c+8>>2]=u;c=H[c>>2];H[l+2076>>2]=c;d=H[f+4208>>2];if(d>>>0<(H[f+4212>>2]&2147483647)>>>0){break K}qm(f+4204|0,l+2076|0);break J}if(!((h|0)!=0&z)){break J}R:{if(q>>>0>2]){c=k&31;g=H[f+4216>>2];break R}d=0;g=H[33808];c=k&31;e=(k+128>>>5|0)+((c|0)!=0)|0;g=Ra[H[H[g+12>>2]+8>>2]](g+12|0,e<<2,20591,10568,274)|0;h=H[f+4220>>2];if(h){R6(g,H[f+4216>>2],h<<2);d=H[f+4220>>2]}h=e-d|0;if(h){S6((d<<2)+g|0,0,h<<2)}d=H[f+4216>>2];if(d){h=H[33808];Ra[H[H[h+12>>2]+12>>2]](h+12|0,d)}H[f+4220>>2]=e;H[f+4216>>2]=g}d=(q<<2)+g|0;e=H[d>>2];$=d,aa=j7(-2,c)&e,H[$>>2]=aa;break z}H[H[f+4204>>2]+(d<<2)>>2]=c;H[f+4208>>2]=H[f+4208>>2]+1}S:{if(q>>>0>2]){c=k&31;g=H[f+4216>>2];break S}d=0;g=H[33808];c=k&31;e=(k+128>>>5|0)+((c|0)!=0)|0;g=Ra[H[H[g+12>>2]+8>>2]](g+12|0,e<<2,20591,10568,274)|0;h=H[f+4220>>2];if(h){R6(g,H[f+4216>>2],h<<2);d=H[f+4220>>2]}h=e-d|0;if(h){S6((d<<2)+g|0,0,h<<2)}d=H[f+4216>>2];if(d){h=H[33808];Ra[H[H[h+12>>2]+12>>2]](h+12|0,d)}H[f+4220>>2]=e;H[f+4216>>2]=g}d=(q<<2)+g|0;H[d>>2]=H[d>>2]|1<>2];z=H[a>>2];if(z){x=H[a+12>>2];a=0;while(1){e=H[(x+N(a,40)|0)+28>>2];T:{if(!e){break T}b=I[e+168|0];if(!(b?1:H[e+116>>2])){break T}if(b){i=0;j=0;h=0;n=0;l=Oa-8240|0;Oa=l;F[e+168|0]=0;g=H[e+84>>2];U:{if(!g){b=H[e+124>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}H[e+124>>2]=0;H[e+128>>2]=0;break U}d=l+48|0;b=g<<4;if(b>>>0>=8193){c=H[33808];d=Ra[H[H[c+12>>2]+8>>2]](c+12|0,b,20591,10568,743)|0}t=(g<<2)+d|0;q=N(g,12)+d|0;u=(g<<3)+d|0;b=H[e+96>>2];f=H[e+124>>2];c=0;while(1){k=c>>>5|0;V:{if(!(k>>>0>=K[e+128>>2]|!(H[f+(k<<2)>>2]>>>c&1))){k=i<<2;H[k+d>>2]=H[b+N(c,24)>>2];H[k+u>>2]=c;i=i+1|0;break V}k=j<<2;H[k+t>>2]=H[b+N(c,24)>>2];H[k+q>>2]=c;j=j+1|0}c=c+1|0;if((g|0)!=(c|0)){continue}break}s=OT(l+8|0);r=H[ST(i>>>0<1024?e+132|0:s,d,i)+8>>2];f=H[e+80>>2];b=f<<1;if(b){c=H[33808];n=Ra[H[H[c+12>>2]+8>>2]](c+12|0,b,20591,10568,791)|0;f=H[e+80>>2]}k=-1;c=H[33808];p=(aa=c+12|0,ba=(ca=-1,da=g7(f+2|0,0,24,0),ea=Qa,ea?ca:da),ca=Ra[H[H[c>>2]+20>>2]](c)|0?42994:55639,da=10568,ea=793,$=H[H[c+12>>2]+8>>2],Ra[$](aa|0,ba|0,ca|0,da|0,ea|0)|0);b=p+N(g,24)|0;H[b>>2]=-1;H[b+24>>2]=-1;o=-1;o=i?H[(H[r>>2]<<2)+d>>2]:o;k=j?H[t>>2]:k;y=g>>>0>1?g:1;c=0;g=0;while(1){W:{if(k>>>0>o>>>0){f=H[u+(H[r+(g<<2)>>2]<<2)>>2];o=-1;g=g+1|0;if(i>>>0<=g>>>0){break W}o=H[(H[r+(g<<2)>>2]<<2)+d>>2];break W}f=H[q+(h<<2)>>2];k=-1;h=h+1|0;if(h>>>0>>0){k=H[t+(h<<2)>>2]}}w=J[H[e+104>>2]+(f<<1)>>1];b=H[e+96>>2]+N(f,24)|0;f=H[b+4>>2];m=p+N(c,24)|0;H[m>>2]=H[b>>2];H[m+4>>2]=f;f=H[b+20>>2];H[m+16>>2]=H[b+16>>2];H[m+20>>2]=f;f=H[b+12>>2];H[m+8>>2]=H[b+8>>2];H[m+12>>2]=f;G[(c<<1)+n>>1]=w;H[H[e+76>>2]+(w<<3)>>2]=c;c=c+1|0;if((y|0)!=(c|0)){continue}break}if((l+48|0)!=(d|0)){b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,d)}b=H[e+96>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}H[e+96>>2]=p;b=H[e+104>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}H[e+104>>2]=n;b=H[e+124>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}H[e+124>>2]=0;H[e+128>>2]=0;PT(s)}Oa=l+8240|0;F[e+169|0]=1;H[e+120>>2]=0;H[e+116>>2]=H[e+92>>2]}b=e+176|0;d=0;i=0;k=0;f=H[e+116>>2];H[e+116>>2]=0;if((f|0)!=H[e+120>>2]){F[e+169|0]=1}X:{Y:{c=H[e+92>>2];if(!c){break Y}h=H[e+112>>2];g=H[e+100>>2];Z:{if(!f){break Z}if(f-1>>>0>=3){j=f&-4;while(1){H[h+(d<<2)>>2]=H[g+N(d,24)>>2];o=d|1;H[h+(o<<2)>>2]=H[g+N(o,24)>>2];o=d|2;H[h+(o<<2)>>2]=H[g+N(o,24)>>2];o=d|3;H[h+(o<<2)>>2]=H[g+N(o,24)>>2];d=d+4|0;k=k+4|0;if((j|0)!=(k|0)){continue}break}}k=f&3;if(!k){break Z}while(1){H[h+(d<<2)>>2]=H[g+N(d,24)>>2];d=d+1|0;i=i+1|0;if((k|0)!=(i|0)){continue}break}}o=I[e+169|0];j=c-f|0;_:{if(!o|!j){break _}i=0;d=0;if(c+(f^-1)>>>0>=3){c=j&-4;k=0;while(1){l=d+f|0;H[h+(l<<2)>>2]=H[g+N(l,24)>>2];l=f+(d|1)|0;H[h+(l<<2)>>2]=H[g+N(l,24)>>2];l=f+(d|2)|0;H[h+(l<<2)>>2]=H[g+N(l,24)>>2];l=f+(d|3)|0;H[h+(l<<2)>>2]=H[g+N(l,24)>>2];d=d+4|0;k=k+4|0;if((c|0)!=(k|0)){continue}break}}c=j&3;if(!c){break _}while(1){k=d+f|0;H[h+(k<<2)>>2]=H[g+N(k,24)>>2];d=d+1|0;i=i+1|0;if((c|0)!=(i|0)){continue}break}}H[e+116>>2]=f;if(!f){break Y}H[e+120>>2]=f;$:{if(j){if(o){l=H[ST(e+132|0,h+(f<<2)|0,j)+8>>2];if(j>>>0>K[b+12800>>2]){c=H[b+12808>>2];d=b+12288|0;if(!((c|0)==(d|0)|!c)){i=H[33808];Ra[H[H[i+12>>2]+12>>2]](i+12|0,c);H[b+12808>>2]=0}c=H[b+12812>>2];if(!((c|0)==(b|0)|!c)){i=H[33808];Ra[H[H[i+12>>2]+12>>2]](i+12|0,c);H[b+12812>>2]=0}c=j+2|0;aa:{if(c>>>0<=256){H[b+12808>>2]=d;H[b+12812>>2]=b;break aa}d=($=-1,ea=g7(c,0,24,0),da=Qa,da?$:ea);if(d){c=H[33808];i=Ra[H[H[c>>2]+20>>2]](c)|0?42994:55639;c=Ra[H[H[c+12>>2]+8>>2]](c+12|0,d,i,10568,1260)|0}else{c=0}H[b+12812>>2]=c;c=j<<1;if(c){d=H[33808];c=Ra[H[H[d+12>>2]+8>>2]](d+12|0,c,20591,10568,1261)|0}else{c=0}H[b+12808>>2]=c}H[b+12800>>2]=j}k=H[b+12808>>2];i=H[b+12812>>2];d=0;while(1){m=f+H[l+(d<<2)>>2]|0;c=g+N(m,24)|0;n=H[c+4>>2];o=N(d,24)+i|0;H[o>>2]=H[c>>2];H[o+4>>2]=n;n=H[c+20>>2];H[o+16>>2]=H[c+16>>2];H[o+20>>2]=n;n=H[c+12>>2];H[o+8>>2]=H[c+8>>2];H[o+12>>2]=n;G[(d<<1)+k>>1]=J[H[e+108>>2]+(m<<1)>>1];d=d+1|0;if((j|0)!=(d|0)){continue}break}c=N(j,24)+i|0;H[c>>2]=-1;H[c+24>>2]=-1;F[e+169|0]=0;break $}k=H[b+12808>>2];i=H[b+12812>>2];break $}F[e+169|0]=1;i=0;k=0}l=H[ST(e+132|0,h,f)+8>>2];d=H[b+12816>>2];ba:{if(f>>>0<=K[b+12804>>2]){c=d;break ba}c=b+6144|0;if(!(!d|(d|0)==(c|0))){h=H[33808];Ra[H[H[h+12>>2]+12>>2]](h+12|0,d);H[b+12816>>2]=0}d=f+2|0;ca:{if(d>>>0<=256){break ca}d=($=-1,ea=g7(d,0,24,0),da=Qa,da?$:ea);if(!d){c=0;break ca}c=H[33808];h=Ra[H[H[c>>2]+20>>2]](c)|0?42994:55639;c=Ra[H[H[c+12>>2]+8>>2]](c+12|0,d,h,10568,1277)|0}H[b+12816>>2]=c;H[b+12804>>2]=f}b=f>>>0>1?f:1;t=b&1;o=H[e+144>>2];d=0;if(f>>>0>=2){r=b&-2;m=0;while(1){n=H[l+(d<<2)>>2];h=g+N(n,24)|0;q=H[h+4>>2];b=N(d,24)+c|0;H[b>>2]=H[h>>2];H[b+4>>2]=q;q=H[h+20>>2];H[b+16>>2]=H[h+16>>2];H[b+20>>2]=q;q=H[h+12>>2];H[b+8>>2]=H[h+8>>2];H[b+12>>2]=q;G[o+(d<<1)>>1]=J[H[e+108>>2]+(n<<1)>>1];n=d|1;b=N(n,24)+c|0;q=H[l+(n<<2)>>2];h=g+N(q,24)|0;u=H[h+4>>2];H[b>>2]=H[h>>2];H[b+4>>2]=u;u=H[h+20>>2];H[b+16>>2]=H[h+16>>2];H[b+20>>2]=u;u=H[h+12>>2];H[b+8>>2]=H[h+8>>2];H[b+12>>2]=u;G[o+(n<<1)>>1]=J[H[e+108>>2]+(q<<1)>>1];d=d+2|0;m=m+2|0;if((r|0)!=(m|0)){continue}break}}if(t){h=H[l+(d<<2)>>2];g=g+N(h,24)|0;l=H[g+4>>2];b=N(d,24)+c|0;H[b>>2]=H[g>>2];H[b+4>>2]=l;l=H[g+20>>2];H[b+16>>2]=H[g+16>>2];H[b+20>>2]=l;l=H[g+12>>2];H[b+8>>2]=H[g+8>>2];H[b+12>>2]=l;G[o+(d<<1)>>1]=J[H[e+108>>2]+(h<<1)>>1]}b=N(f,24)+c|0;H[b>>2]=-1;H[b+24>>2]=-1;F[e+28|0]=1;H[e+24>>2]=j;H[e+20>>2]=f;H[e+16>>2]=k;H[e+12>>2]=o;H[e+8>>2]=i;H[e+4>>2]=c;H[e>>2]=H[e+76>>2];break X}F[e+169|0]=1;H[e+120>>2]=0;F[e+28|0]=0}f=0;b=H[e+116>>2];da:{if(!b){break da}c=H[e+84>>2];if(!c){break da}H[e+40>>2]=c;H[e+36>>2]=b;H[e+32>>2]=H[e+76>>2];H[e+48>>2]=H[e+96>>2];H[e+52>>2]=H[e+104>>2];H[e+44>>2]=H[e+12992>>2];H[e+56>>2]=H[e+144>>2];f=1}F[e+60|0]=f}a=a+1|0;if((z|0)!=(a|0)){continue}break}}}function AQ(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=O(0),m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=O(0),u=0,v=0,w=0,x=0,y=0,z=O(0),A=0,B=0,C=O(0),D=0,E=0,M=O(0),P=O(0),Q=0,R=0,S=O(0),T=O(0),U=O(0),V=O(0),W=O(0),X=O(0),Y=O(0),Z=O(0),_=O(0),$=O(0),aa=O(0),ba=O(0);A=H[a+20>>2];p=H[a+28>>2];H[p+1092>>2]=H[p+1092>>2]+1;u=H[H[p+988>>2]+128>>2]+1|0;q=Oa-48|0;Oa=q;b=H[p+976>>2];a=b+1796|0;w=H[p+980>>2];H[a>>2]=(H[a>>2]+H[w+332>>2]|0)+H[w+344>>2];a:{if(u){a=H[b+1024>>2];Ra[H[H[a>>2]+84>>2]](q+8|0,a);j=H[p+2360>>2]&8;m=H[w+332>>2];if(m){g=H[w+328>>2];while(1){i=H[g>>2];h=H[g+4>>2];o=lI(H[p+2168>>2],i,h);H[g+8>>2]=o;m=m-1|0;if(o){b:{c:{d:{c=I[o+24|0];switch(c|0){case 2:break c;case 0:break d;default:break b}}pI(H[p+2168>>2],o,4,0,q+8|0,(j|0)!=0);b=H[H[o+4>>2]+40>>2];a=H[H[b+976>>2]+1024>>2];Ra[H[H[a>>2]+36>>2]](a,H[o+56>>2]);xJ(H[b+976>>2],H[o+56>>2]);H[o+56>>2]=0;KQ(o);c=I[o+24|0]}r=H[o+12>>2];n=p+N(c,12)|0;b=H[n+56>>2]-1|0;H[n+56>>2]=b;a=H[n+52>>2];f=r<<2;H[a+f>>2]=H[a+(b<<2)>>2];H[o+12>>2]=-1;if(b>>>0>r>>>0){H[H[f+H[n+52>>2]>>2]+8>>2]=r}b=p+(c<<2)|0;a=H[b+88>>2];e:{if(a>>>0<=r>>>0){break e}k=a-1|0;H[b+88>>2]=k;if(k>>>0>=K[n+56>>2]){break e}b=H[n+52>>2];a=b+f|0;c=H[a>>2];f=a;a=b;b=k<<2;a=H[a+b>>2];H[f>>2]=a;H[b+H[n+52>>2]>>2]=c;H[c+8>>2]=k;H[a+8>>2]=r}kI(H[p+2168>>2],o)}mI(H[p+2168>>2],i,h,u,o,q+8|0,(j|0)!=0)}g=g+12|0;if(m){continue}break}}g=H[w+344>>2];if(g){c=H[w+340>>2];while(1){H[c+8>>2]=0;mI(H[p+2168>>2],H[c>>2],H[c+4>>2],u,0,q+8|0,(j|0)!=0);c=c+12|0;g=g-1|0;if(g){continue}break}}iO(p);a=H[w+272>>2];Ra[H[H[a>>2]+80>>2]](a);a=H[w+272>>2];Ra[H[H[a>>2]+68>>2]](a);break a}iO(p)}Oa=q+48|0;AJ(H[p+976>>2]);l=L[p+1080>>2];w=H[p+1e3>>2];a=H[p+992>>2];d=Oa-112|0;Oa=d;e=H[p+988>>2];F[e+124|0]=(H[p+2360>>2]&4)>>>2;H[H[e+316>>2]+8>>2]=0;b=H[e+312>>2];S6(H[b+972>>2],0,H[b+976>>2]<<2);S6(H[b+984>>2],0,H[b+988>>2]<<2);H[b+1012>>2]=0;H[b+1004>>2]=0;H[b+1008>>2]=0;H[b+996>>2]=0;H[b+1e3>>2]=0;f:{g:{h:{i:{if(!H[e+128>>2]){vN(e);if(!H[e+128>>2]){break i}}if(!H[e+132>>2]){break h}}if(a){break g}}H[e+132>>2]=0;uN(e);break f}H[e+132>>2]=0;h=H[e+312>>2];b=H[h+304>>2];a=H[b>>2];if(a){H[b>>2]=H[a>>2]}if(!a){b=H[33808];a=Ra[H[H[b>>2]+20>>2]](b)|0?22930:55639;a=Ra[H[H[b+12>>2]+8>>2]](b+12|0,7251,a,16202,82)|0;b=a+19&-16;H[b-4>>2]=b-a;a=uJ(b,H[h+308>>2])}H[e+300>>2]=a;L[a+7152>>2]=l;H[e+272>>2]=0;H[H[e+260>>2]+4>>2]=0;H[e+212>>2]=0;H[e+280>>2]=0;H[e+164>>2]=0;H[H[e+152>>2]+4>>2]=0;j:{h=H[e+312>>2];i=H[h+952>>2]&2147483647;k:{if(!i){break k}g=H[h+948>>2];a=0;while(1){b=H[g+(a<<2)>>2];if(!b){a=a+1|0;if((i|0)!=(a|0)){continue}break k}break}m=f7(b)|a<<5;c=b&b-1;l:{if(c){break l}b=a+1|0;b=b>>>0>i>>>0?b:i;while(1){a=a+1|0;if(i>>>0<=a>>>0){c=0;a=b;break l}c=H[g+(a<<2)>>2];if(!c){continue}break}}if((m|0)==-1){break k}n=e+152|0;B=e+260|0;q=e+136|0;r=e+220|0;u=e+168|0;g=h;while(1){m:{n:{x=H[H[g+332>>2]+(m>>>H[g+320>>2]<<2)>>2]+N(H[g+312>>2]-1&m,80)|0;o:{if(!(I[x+8|0]&2)){break o}i=J[x+40>>1];if(!(i&4096)|(i&24)==24){break o}R=H[x+16>>2];if(!((i&80?I[H[x+20>>2]+156|0]:0)?1:I[R+156|0])){break o}y=H[x+4>>2];m=H[x+28>>2];p=H[x+24>>2];o=H[x+20>>2];v=H[x>>2];p:{q:{r:{if(!H[e+256>>2]){g=0;break r}k=H[e+228>>2];f=H[e+224>>2];s=0;g=H[e+232>>2];i=H[e+240>>2]-1|0;b=R+(R<<15^-1)|0;b=N(b>>>10^b,9);b=b>>>6^b;b=(b<<11^-1)+b|0;j=N(b>>>16^b^1016421269,1000007);b=p+(p<<15^-1)|0;b=N(b>>>10^b,9);b=b>>>6^b;b=(b<<11^-1)+b|0;j=H[g+((i&(j^(b>>>16^b)))<<2)>>2];s:{if((j|0)==-1){break s}while(1){s=f+N(j,12)|0;if((R|0)==H[s>>2]&(p|0)==H[s+4>>2]){break s}j=H[k+(j<<2)>>2];if((j|0)!=-1){continue}break}s=0}b=o+(o<<15^-1)|0;b=N(b>>>10^b,9);b=b>>>6^b;b=(b<<11^-1)+b|0;j=N(b>>>16^b^1016421269,1000007);b=m+(m<<15^-1)|0;b=N(b>>>10^b,9);b=b>>>6^b;b=(b<<11^-1)+b|0;j=H[g+((i&(j^(b>>>16^b)))<<2)>>2];t:{if((j|0)!=-1){while(1){E=f+N(j,12)|0;if((o|0)==H[E>>2]&(m|0)==H[E+4>>2]){break t}j=H[k+(j<<2)>>2];if((j|0)!=-1){continue}break}}E=0}g=0;j=0;j=s?H[s+8>>2]:j;g=E?H[E+8>>2]:g;if(j){break q}}j=wN(u);H[d+108>>2]=p;H[d+104>>2]=R;i=xN(r,d+104|0,d+72|0);if(!I[d+72|0]){H[i>>2]=H[d+104>>2];b=H[d+108>>2];H[i+8>>2]=j;H[i+4>>2]=b}H[j+92>>2]=p;H[j+96>>2]=R;b=p+36|0;H[j>>2]=b;mN(d+72|0,j,v);u:{if(v){nN(d+40|0,j,v);C=L[d+52>>2];S=L[d+48>>2];M=L[d+44>>2];T=L[d+40>>2];t=L[d+64>>2];U=L[d+96>>2];P=L[d+60>>2];V=L[d+92>>2];l=L[d+56>>2];z=L[d+88>>2];break u}T=L[d+72>>2];L[d+40>>2]=T;M=L[d+76>>2];L[d+44>>2]=M;S=L[d+80>>2];L[d+48>>2]=S;C=L[d+84>>2];L[d+52>>2]=C;l=L[d+88>>2];L[d+56>>2]=l;t=L[d+96>>2];U=t;P=L[d+92>>2];V=P;z=l}X=dU(d+24|0,d+8|0,b,d+72|0);Y=L[d+24>>2];Z=L[d+28>>2];U=O(U-t);L[j+84>>2]=L[d+32>>2]-U;V=O(V-P);L[j+80>>2]=Z-V;_=O(z-l);L[j+76>>2]=Y-_;L[j+64>>2]=L[d+8>>2];L[j+68>>2]=L[d+12>>2];z=L[d+16>>2];L[j+32>>2]=t;L[j+28>>2]=P;L[j+24>>2]=l;L[j+20>>2]=C;L[j+16>>2]=S;L[j+12>>2]=M;L[j+8>>2]=T;L[j+4>>2]=X;L[j+72>>2]=z;L[j+36>>2]=L[d+72>>2];L[j+40>>2]=L[d+76>>2];L[j+44>>2]=L[d+80>>2];L[j+48>>2]=L[d+84>>2];L[j+52>>2]=L[d+88>>2];L[j+56>>2]=L[d+92>>2];l=L[d+96>>2];H[j+88>>2]=0;L[j+60>>2]=l;f=H[x- -64>>2]<<1;i=H[w+616>>2];b=H[i+20>>2];k=(f>>>0)/(b>>>0)|0;H[j+100>>2]=H[H[H[i>>2]+(k<<2)>>2]+(f-N(b,k)<<2)>>2];break p}U=O(L[j+60>>2]-L[j+32>>2]);V=O(L[j+56>>2]-L[j+28>>2]);_=O(L[j+52>>2]-L[j+24>>2]);X=L[j+4>>2]}v:{if(!g){g=wN(u);H[g+92>>2]=m;H[g+96>>2]=o;i=m+36|0;H[g>>2]=i;H[d+4>>2]=m;H[d>>2]=o;f=xN(r,d,d+72|0);if(!I[d+72|0]){H[f>>2]=H[d>>2];b=H[d+4>>2];H[f+8>>2]=g;H[f+4>>2]=b}mN(d+72|0,g,y);w:{if(y){nN(d+40|0,g,y);T=L[d+52>>2];$=L[d+48>>2];aa=L[d+44>>2];ba=L[d+40>>2];t=L[d+64>>2];W=L[d+96>>2];M=L[d+60>>2];C=L[d+92>>2];l=L[d+56>>2];z=L[d+88>>2];break w}ba=L[d+72>>2];L[d+40>>2]=ba;aa=L[d+76>>2];L[d+44>>2]=aa;$=L[d+80>>2];L[d+48>>2]=$;T=L[d+84>>2];L[d+52>>2]=T;l=L[d+88>>2];L[d+56>>2]=l;t=L[d+96>>2];W=t;M=L[d+92>>2];C=M;z=l}P=dU(d+24|0,d+8|0,i,d+72|0);Y=L[d+24>>2];Z=L[d+28>>2];W=O(W-t);L[g+84>>2]=L[d+32>>2]-W;C=O(C-M);L[g+80>>2]=Z-C;S=O(z-l);L[g+76>>2]=Y-S;L[g+64>>2]=L[d+8>>2];L[g+68>>2]=L[d+12>>2];z=L[d+16>>2];L[g+32>>2]=t;L[g+28>>2]=M;L[g+24>>2]=l;L[g+20>>2]=T;L[g+16>>2]=$;L[g+12>>2]=aa;L[g+8>>2]=ba;L[g+4>>2]=P;L[g+72>>2]=z;L[g+36>>2]=L[d+72>>2];L[g+40>>2]=L[d+76>>2];L[g+44>>2]=L[d+80>>2];L[g+48>>2]=L[d+84>>2];L[g+52>>2]=L[d+88>>2];L[g+56>>2]=L[d+92>>2];l=L[d+96>>2];H[g+88>>2]=0;L[g+60>>2]=l;f=H[x- -64>>2]<<1|1;i=H[w+616>>2];b=H[i+20>>2];k=(f>>>0)/(b>>>0)|0;H[g+100>>2]=H[H[H[i>>2]+(k<<2)>>2]+(f-N(b,k)<<2)>>2];break v}W=O(L[g+60>>2]-L[g+32>>2]);C=O(L[g+56>>2]-L[g+28>>2]);S=O(L[g+52>>2]-L[g+24>>2]);P=L[g+4>>2]}if(v){f=H[v+32>>2];x:{if(f){b=H[f+52>>2];break x}f=yN(q);H[v+32>>2]=f;i=H[e+148>>2];b=H[(H[e+136>>2]+(i<<3)|0)+4>>2];H[f+40>>2]=v;H[f+44>>2]=0;H[f+48>>2]=0;H[f+36>>2]=1065353216;H[f+52>>2]=0;F[f+35|0]=0;G[f+32>>1]=(b+(i<<7)|0)-1;b=0}F[f+34|0]=0;H[f+52>>2]=b+1}y:{z:{A:{if(y){f=H[y+32>>2];B:{if(f){b=H[f+52>>2];break B}f=yN(q);H[y+32>>2]=f;i=H[e+148>>2];b=H[(H[e+136>>2]+(i<<3)|0)+4>>2];H[f+40>>2]=y;H[f+44>>2]=0;H[f+48>>2]=0;H[f+36>>2]=1065353216;H[f+52>>2]=0;F[f+35|0]=0;G[f+32>>1]=(b+(i<<7)|0)-1;b=0}F[f+34|0]=0;H[f+52>>2]=b+1;C:{if(!v|L[H[v+36>>2]+124>>2]==O(0)|L[H[y+36>>2]+124>>2]==O(0)){break C}f=H[H[v+32>>2]+44>>2];if(f){b=H[y+32>>2];while(1){if((b|0)==H[f>>2]){break C}f=H[f+4>>2];if(f){continue}break}}k=zN(n);f=zN(n);i=H[y+32>>2];H[k>>2]=i;b=H[v+32>>2];H[f>>2]=b;H[k+4>>2]=H[b+44>>2];H[b+44>>2]=k;H[f+4>>2]=H[i+44>>2];H[i+44>>2]=f}E=v+36|0;if(L[H[v+36>>2]+124>>2]==O(0)){break A}s=1;break y}E=v+36|0;s=0;if(L[H[v+36>>2]+124>>2]==O(0)){break z}break y}if(!y){s=1;break z}s=1;if(L[H[y+36>>2]+124>>2]!=O(0)){break y}}D=D+1|0}k=Oa-16|0;Oa=k;b=H[B>>2];f=H[B+12>>2];i=H[(b+(f<<3)|0)+4>>2];if((i|0)==128){f=f+1|0;if((f|0)==H[B+4>>2]){i=H[33808];b=Ra[H[H[i>>2]+20>>2]](i)|0?35140:55639;b=Ra[H[H[i+12>>2]+8>>2]](i+12|0,14336,b,16598,260)|0;H[k+12>>2]=0;H[k+8>>2]=b;b=H[B+4>>2];D:{if(b>>>0>=(H[B+8>>2]&2147483647)>>>0){lN(B,k+8|0);break D}i=H[B>>2]+(b<<3)|0;b=H[k+12>>2];H[i>>2]=H[k+8>>2];H[i+4>>2]=b;H[B+4>>2]=H[B+4>>2]+1}f=H[B+12>>2]+1|0;b=H[B>>2]}H[B+12>>2]=f;H[((f<<3)+b|0)+4>>2]=0;i=0}b=(f<<3)+b|0;H[b+4>>2]=i+1;Oa=k+16|0;k=H[b>>2]+N(i,112)|0;H[k+12>>2]=g;H[k+8>>2]=j;H[k+4>>2]=y;H[k>>2]=v;j=1;j=I[R+28|0]&8?j:(I[o+28|0]&8)>>>3|0;H[k+28>>2]=2139095039;F[k+108|0]=j;i=H[H[x+24>>2]+36>>2];H[k+60>>2]=i;f=H[H[x+28>>2]+36>>2];H[k+72>>2]=-1;F[k+68|0]=0;H[k+56>>2]=-1;H[k+52>>2]=x;H[k+64>>2]=f;b=I[x+8|0];H[k+96>>2]=0;F[k+69|0]=b&1;t=O(3.4028234663852886e38);l=O(3.4028234663852886e38);b=H[E>>2];if(I[b+28|0]&64){l=L[b+128>>2]}E:{if(!s){break E}b=H[y+36>>2];if(!(I[b+28|0]&64)){break E}t=L[b+128>>2]}L[k+100>>2]=l>2];b=(f|0)>(i|0);b=((g+N(b?i:f,28)|0)+((b?f:i)<<2)|0)+1360|0;H[b>>2]=H[b>>2]+1;if(Q){break n}l=O(U-W);t=O(l*l);l=O(_-S);z=O(l*l);l=O(V-C);t=O(t+O(z+O(l*l)));z=O(X+P);l=L[e+328>>2];l=l>z?z:l;Q=t>=O(l*l)}if(c){break m}if(!Q){break k}break j}Q=1;if(!c){break j}}m=f7(c)|a<<5;c=c-1&c;F:{if(c){break F}b=a+1|0;i=H[h+952>>2]&2147483647;b=b>>>0>i>>>0?b:i;while(1){a=a+1|0;if(i>>>0<=a>>>0){c=0;a=b;break F}c=H[H[h+948>>2]+(a<<2)>>2];if(!c){continue}break}}if((m|0)!=-1){continue}break}if(Q){break j}}uN(e);b=H[e+300>>2];a=H[H[e+312>>2]+304>>2];H[b>>2]=H[a>>2];H[a>>2]=b;break f}a=H[e+272>>2];k=H[(H[e+260>>2]+(a<<3)|0)+4>>2]+(a<<7)|0;G:{H:{if(k>>>0>(H[e+284>>2]&2147483647)>>>0){a=0;I:{if(!k){break I}b=k<<2;if(!b){break I}h=H[33808];a=Ra[H[H[h>>2]+20>>2]](h)|0?49276:55639;a=Ra[H[H[h+12>>2]+8>>2]](h+12|0,b,a,13582,553)|0}b=H[e+280>>2];if((b|0)>0){b=(b<<2)+a|0;g=H[e+276>>2];c=a;while(1){H[c>>2]=H[g>>2];g=g+4|0;c=c+4|0;if(b>>>0>c>>>0){continue}break}}J:{if(H[e+284>>2]<0){break J}h=H[e+276>>2];if(!h){break J}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,h)}H[e+284>>2]=k;H[e+276>>2]=a;break H}if(!k){break G}}a=0;while(1){b=H[H[e+260>>2]+(a>>>4&268435448)>>2]+N(a&127,112)|0;H[d+72>>2]=b;h=H[e+280>>2];K:{if(h>>>0>=(H[e+284>>2]&2147483647)>>>0){c=0;b=H[e+284>>2]&2147483647;i=b?b<<1:1;L:{if(!i){break L}h=i<<2;if(!h){break L}c=H[33808];b=Ra[H[H[c>>2]+20>>2]](c)|0?49276:55639;c=Ra[H[H[c+12>>2]+8>>2]](c+12|0,h,b,13582,553)|0}f=H[e+280>>2];b=(f<<2)+c|0;if((f|0)>0){j=H[e+276>>2];g=c;while(1){H[g>>2]=H[j>>2];j=j+4|0;g=g+4|0;if(b>>>0>g>>>0){continue}break}}H[b>>2]=H[d+72>>2];M:{if(H[e+284>>2]<0){break M}h=H[e+276>>2];if(!h){break M}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,h);f=H[e+280>>2]}H[e+284>>2]=i;H[e+276>>2]=c;H[e+280>>2]=f+1;break K}H[H[e+276>>2]+(h<<2)>>2]=b;H[e+280>>2]=h+1}a=a+1|0;if((k|0)!=(a|0)){continue}break}}a=k|k>>>1;a=a>>>2|a;a=a>>>4|a;a=a>>>8|a;a=(a>>>16|a)+1|0;b=H[e+316>>2];if(a>>>0>(H[b+12>>2]&2147483647)>>>0){oy(b,a)}a=H[e+136>>2];b=H[e+148>>2];n=H[(a+(b<<3)|0)+4>>2]+(b<<7)|0;if(n){h=0;while(1){c=H[a+(h>>>4&268435448)>>2]+((h&127)<<6)|0;b=H[H[c+40>>2]+36>>2];L[c>>2]=L[b+64>>2];L[c+4>>2]=L[b+68>>2];L[c+8>>2]=L[b+72>>2];L[c+16>>2]=L[b+80>>2];L[c+20>>2]=L[b+84>>2];L[c+24>>2]=L[b+88>>2];h=h+1|0;if((n|0)!=(h|0)){continue}break}}H[d+80>>2]=0;H[d+72>>2]=0;H[d+76>>2]=0;H[d+40>>2]=0;gy(d+72|0,n,d+40|0);H[d+48>>2]=0;H[d+40>>2]=0;H[d+44>>2]=0;if(n){h=0;N:{if(!n){break N}b=n<<2;if(!b){break N}h=H[33808];a=Ra[H[H[h>>2]+20>>2]](h)|0?47992:55639;h=Ra[H[H[h+12>>2]+8>>2]](h+12|0,b,a,13582,553)|0}a=H[d+44>>2];if((a|0)>0){b=(a<<2)+h|0;c=H[d+40>>2];a=h;while(1){H[a>>2]=H[c>>2];c=c+4|0;a=a+4|0;if(b>>>0>a>>>0){continue}break}}O:{if(H[d+48>>2]<0){break O}b=H[d+40>>2];if(!b){break O}a=H[33808];Ra[H[H[a+12>>2]+12>>2]](a+12|0,b)}H[d+48>>2]=n;H[d+40>>2]=h}H[d+44>>2]=n;H[e+200>>2]=0;q=e+196|0;a=n+1|0;if(a>>>0>(H[e+204>>2]&2147483647)>>>0){Cq(q,a)}H[e+200>>2]=a;P:{if(!n){f=0;break P}c=H[d+72>>2];j=0;h=0;if(n-1>>>0>=7){a=n&-8;m=0;while(1){b=h<<2;H[b+c>>2]=65535;H[c+(b|4)>>2]=65535;H[c+(b|8)>>2]=65535;H[c+(b|12)>>2]=65535;H[c+(b|16)>>2]=65535;H[c+(b|20)>>2]=65535;H[c+(b|24)>>2]=65535;H[c+(b|28)>>2]=65535;h=h+8|0;m=m+8|0;if((a|0)!=(m|0)){continue}break}}a=n&7;if(a){while(1){H[c+(h<<2)>>2]=65535;h=h+1|0;j=j+1|0;if((a|0)!=(j|0)){continue}break}}f=0;if(!n){break P}h=0;while(1){c=H[d+72>>2]+(h<<2)|0;Q:{if(H[c>>2]!=65535){break Q}b=H[H[e+136>>2]+(h>>>4&268435448)>>2];a=(h&127)<<6;g=b+a|0;if(L[H[H[g+40>>2]+36>>2]+124>>2]==O(0)|!H[(a+b|0)+52>>2]){break Q}H[c>>2]=f;H[H[d+40>>2]>>2]=g;m=0;c=1;while(1){a=H[g+44>>2];c=c-1|0;g=H[(H[d+40>>2]+((c>>>0>1?c:1)<<2)|0)-4>>2];if(a){while(1){i=H[a>>2];b=H[d+72>>2]+(J[i+32>>1]<<2)|0;if(H[b>>2]==65535){H[b>>2]=f;H[H[d+40>>2]+(c<<2)>>2]=i;m=m+1|0;g=H[a>>2];c=c+1|0}a=H[a+4>>2];if(a){continue}break}}if(c){continue}break}G[H[q>>2]+(f<<1)>>1]=m+1;f=f+1|0}h=h+1|0;if((n|0)!=(h|0)){continue}break}}r=f+D|0;R:{if(r>>>0<=f>>>0){break R}h=H[q>>2];a=f;b=D&7;if(b){c=0;while(1){G[h+(a<<1)>>1]=1;a=a+1|0;c=c+1|0;if((b|0)!=(c|0)){continue}break}}if(D-1>>>0<7){break R}while(1){b=h+(a<<1)|0;G[b>>1]=1;G[b+2>>1]=1;G[b+4>>1]=1;G[b+6>>1]=1;G[b+8>>1]=1;G[b+10>>1]=1;G[b+12>>1]=1;G[b+14>>1]=1;a=a+8|0;if((r|0)!=(a|0)){continue}break}}h=0;H[e+292>>2]=0;H[d+24>>2]=0;gy(e+288|0,r,d+24|0);i=H[e+280>>2];if(i){g=H[e+288>>2];b=H[e+276>>2];u=H[d+72>>2];while(1){j=H[b+(h<<2)>>2];c=H[j>>2];a=-1;S:{if(!c){break S}a=-1;if(L[H[c+36>>2]+124>>2]==O(0)){break S}a=H[u+(J[H[c+32>>2]+32>>1]<<2)>>2]}c=-1;k=H[j+4>>2];if(!(!k|L[H[k+36>>2]+124>>2]==O(0))){c=H[u+(J[H[k+32>>2]+32>>1]<<2)>>2]}a=a>>>0>>0?a:c;c=(a|0)==-1;a=c?f:a;H[j+56>>2]=a;a=g+(a<<2)|0;H[a>>2]=H[a>>2]+1;f=c+f|0;h=h+1|0;if((i|0)!=(h|0)){continue}break}}i=r+1|0;if(i>>>0>=r>>>0){g=H[q>>2];c=0;h=0;a=0;while(1){c=g+(c<<1)|0;b=J[c>>1];G[c>>1]=a;a=a+b|0;h=h+1|0;c=h&65535;if(i>>>0>c>>>0){continue}break}}a=0;H[e+188>>2]=0;if(n>>>0>(H[e+192>>2]&2147483647)>>>0){h=0;T:{if(!n){break T}c=n<<2;if(!c){break T}h=H[33808];b=Ra[H[H[h>>2]+20>>2]](h)|0?48116:55639;h=Ra[H[H[h+12>>2]+8>>2]](h+12|0,c,b,13582,553)|0}b=H[e+188>>2];if((b|0)>0){b=(b<<2)+h|0;g=H[e+184>>2];c=h;while(1){H[c>>2]=H[g>>2];g=g+4|0;c=c+4|0;if(b>>>0>c>>>0){continue}break}}U:{if(H[e+192>>2]<0){break U}c=H[e+184>>2];if(!c){break U}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,c)}H[e+192>>2]=n;H[e+184>>2]=h}H[e+188>>2]=n;c=H[e+136>>2];b=H[e+148>>2];i=b<<3;g=b<<7;if(H[(c+i|0)+4>>2]!=(0-g|0)){while(1){h=H[(a>>>4&268435448)+c>>2]+((a&127)<<6)|0;b=H[H[d+72>>2]+(J[h+32>>1]<<2)>>2];if((b|0)!=65535){b=H[e+196>>2]+(b<<1)|0;c=J[b>>1];G[b>>1]=c+1;H[H[e+184>>2]+(c<<2)>>2]=h;c=H[e+136>>2]}a=a+1|0;if(a>>>0>2]>>>0){continue}break}}H[e+100>>2]=A;H[e+104>>2]=1;if(A){Ra[H[H[A>>2]+16>>2]](A);H[e+96>>2]=H[H[e+100>>2]+16>>2]}Q=e+80|0;H[e+60>>2]=Q;H[e- -64>>2]=1;Ra[H[H[e+80>>2]+16>>2]](Q);H[e+56>>2]=H[H[e+60>>2]+16>>2];H[e+24>>2]=1;w=e+40|0;H[e+20>>2]=w;Ra[H[H[e+40>>2]+16>>2]](w);H[e+16>>2]=H[H[e+20>>2]+16>>2];o=H[e+276>>2];a=H[e+280>>2];c=0;g=0;s=0;m=32;A=Oa-16|0;Oa=A;F[A+12|0]=0;h=A-128|0;Oa=h;H[A+8>>2]=h;f=a-1|0;V:{if((f|0)<=0){break V}while(1){W:{if((c|0)>=(f|0)){break W}while(1){if(f-c>>>0<=4){while(1){i=c;c=c+1|0;b=c;a=i;while(1){a=K[H[o+(b<<2)>>2]+56>>2]>2]+56>>2]?b:a;k=(b|0)<(f|0);b=b+1|0;if(k){continue}break}if((a|0)!=(i|0)){a=o+(a<<2)|0;b=H[a>>2];j=a;a=o+(i<<2)|0;H[j>>2]=H[a>>2];H[a>>2]=b}if((c|0)!=(f|0)){continue}break W}}r=o+(c<<2)|0;i=H[r>>2];a=H[i+56>>2];q=o+((c+f|0)/2<<2)|0;j=H[q>>2];X:{if(a>>>0<=K[j+56>>2]){b=i;break X}H[r>>2]=j;H[q>>2]=i;b=H[r>>2];a=H[b+56>>2];j=i}u=o+(f<<2)|0;k=H[u>>2];i=H[k+56>>2];Y:{if(i>>>0>=a>>>0){a=i;b=k;break Y}H[r>>2]=k;H[u>>2]=b;j=H[q>>2]}if(K[j+56>>2]>a>>>0){H[q>>2]=b;H[u>>2]=j;j=H[q>>2]}a=f-1|0;D=o+(a<<2)|0;H[q>>2]=H[D>>2];H[D>>2]=j;b=c;while(1){n=H[j+56>>2];while(1){i=b;b=b+1|0;q=o+(b<<2)|0;r=H[q>>2];if(n>>>0>K[r+56>>2]){continue}break}while(1){a=a-1|0;u=o+(a<<2)|0;k=H[u>>2];if(n>>>0>2]){continue}break}if((a|0)>(b|0)){H[q>>2]=k;H[u>>2]=r;j=H[D>>2];continue}break}H[q>>2]=j;H[D>>2]=r;Z:{if((b-c|0)<(f-b|0)){_:{if(m-1>>>0>g>>>0){b=h;break _}b=m<<3;if(b){k=H[33808];a=Ra[H[H[k>>2]+20>>2]](k)|0?49276:55639;b=Ra[H[H[k+12>>2]+8>>2]](k+12|0,b,a,14160,155)|0}else{b=0}a=R6(b,h,g<<2);if(!(!s|!h)){k=H[33808];Ra[H[H[k+12>>2]+12>>2]](k+12|0,h)}m=m<<1;s=1;h=a}a=(g<<2)+b|0;H[a>>2]=c;H[a+4>>2]=i;c=i+2|0;break Z}j=i+2|0;$:{if(m-1>>>0>g>>>0){b=h;break $}b=m<<3;if(b){k=H[33808];a=Ra[H[H[k>>2]+20>>2]](k)|0?49276:55639;b=Ra[H[H[k+12>>2]+8>>2]](k+12|0,b,a,14160,155)|0}else{b=0}a=R6(b,h,g<<2);if(!(!s|!h)){k=H[33808];Ra[H[H[k+12>>2]+12>>2]](k+12|0,h)}m=m<<1;s=1;h=a}a=(g<<2)+b|0;H[a>>2]=j;H[a+4>>2]=f;f=i}g=g+2|0;if((c|0)<(f|0)){continue}break}}if(g){a=g-2|0;c=H[(a<<2)+h>>2];f=H[((g<<2)+h|0)-4>>2];g=a;continue}break}if(!s|!h){break V}a=H[33808];Ra[H[H[a+12>>2]+12>>2]](a+12|0,h)}if(I[A+12|0]){H5(H[A+8>>2])}Oa=A+16|0;i=H[e+280>>2];a=H[H[e+312>>2]+1152>>2];a=Ra[H[H[a>>2]+4>>2]](a)|0;a=Ra[H[H[a>>2]+4>>2]](a)|0;a=a>>>0>1?a:1;H[e+304>>2]=a>>>0>i>>>0?1:(i>>>0)/(a>>>0)|0;if(i){c=0;while(1){f=yq(H[H[e+312>>2]+1156>>2],40);h=H[e+304>>2];b=H[e+276>>2];l=L[e+328>>2];g=H[e+312>>2];a=H[g+1836>>2];H[f+8>>2]=H[g+1832>>2];H[f+12>>2]=a;H[f+24>>2]=0;L[f+36>>2]=l;H[f+28>>2]=b+(c<<2);H[f>>2]=119100;a=c+h|0;H[f+32>>2]=(a>>>0>i>>>0?i:a)-c;a=H[g+1152>>2];H[f+20>>2]=e;H[f+24>>2]=1;H[f+16>>2]=a;Ra[H[H[e>>2]+16>>2]](e);Ra[H[H[f>>2]+20>>2]](f);c=H[e+304>>2]+c|0;if(i>>>0>c>>>0){continue}break}}a=H[e+16>>2];Ra[H[H[a>>2]+72>>2]](a,e);a=H[e+56>>2];Ra[H[H[a>>2]+72>>2]](a,w);a=H[e+96>>2];Ra[H[H[a>>2]+72>>2]](a,Q);a=H[d+48>>2];aa:{if((a|0)<0|!(a&2147483647)){break aa}b=H[d+40>>2];if(!b){break aa}a=H[33808];Ra[H[H[a+12>>2]+12>>2]](a+12|0,b)}a=H[d+80>>2];if((a|0)<0|!(a&2147483647)){break f}b=H[d+72>>2];if(!b){break f}a=H[33808];Ra[H[H[a+12>>2]+12>>2]](a+12|0,b)}Oa=d+112|0}function qq(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=O(0),m=0,n=0,o=0,p=0,q=0;o=Oa-16|0;Oa=o;k=a+32|0;c=H[k+2168>>2];H[c+60>>2]=-1;H[c+48>>2]=0;fI(c,0);c=H[k+36>>2];if(c){e=H[k+24>>2];while(1){c=c-1|0;g=H[e+(c<<2)>>2];F[H[g+176>>2]+28|0]=0;g=H[g>>2];d=J[g+148>>1];a:{if(d&1024){G[g+148>>1]=d&64511;H[H[g+44>>2]+156>>2]=0;if(!H[g+160>>2]){eF(H[H[g+40>>2]+1e3>>2],H[g+144>>2])}fF(H[H[g+40>>2]+1e3>>2],H[g+144>>2]);if(K[g+152>>2]>4294967293){break a}TN(H[g+40>>2],g);cG(g);break a}if(d&512){G[g+148>>1]=d&63999|1024;break a}if(d&2048){break a}G[g+148>>1]=d&65019|512}if(c){continue}break}}if(!I[k+2282|0]){Lx(H[k+976>>2]+24|0);Lx(H[k+976>>2]+24|0)}d=0;n=Oa-16|0;Oa=n;e=a+16|0;F[e+4785|0]=0;j=Oa-16|0;Oa=j;f=e+16|0;if(H[e+5560>>2]){while(1){RO(f);c=H[e+5560>>2]-1|0;H[e+5560>>2]=c;if(c){continue}break}}c=H[e+5564>>2];if(c){if(c&1){H[e+1080>>2]=1;L[e+1068>>2]=L[e+5532>>2];i=e+5536|0;h=H[i+4>>2];g=e+1072|0;H[g>>2]=H[i>>2];H[g+4>>2]=h}if(c&2){L[H[f+1004>>2]+84>>2]=-L[e+5544>>2];c=H[e+5564>>2]}if(c&4){H[e+2376>>2]=H[e+5548>>2]}if(c&8){while(1){c=e+(b<<2)|0;if(H[c+5280>>2]){i=1<>>0>>0;if(H[(e+((m?b:c)<<2)|0)+5280>>2]>>>(m?c:b)&1){F[j+8|0]=(H[h>>2]&1<>>c;F[j+9|0]=(i&H[(e+(c<<2)|0)+5404>>2])>>>b;OO(f,b&255,c&255,j+8|0)}c=c+1|0;if((c|0)!=32){continue}break}}else{g=b+1|0}b=g;if((b|0)!=31){continue}break}S6(e+5280|0,0,124);c=H[e+5564>>2]}if(c&16){H[H[f+1004>>2]+104>>2]=H[e+5552>>2];c=H[e+5564>>2]}if(c&128){H[H[f+1004>>2]+108>>2]=H[e+5556>>2];c=H[e+5564>>2]}if(c&32){c=e+5232|0;if(I[c|0]){l=L[e+5136>>2];F[f+2660|0]=1;L[H[f+976>>2]+1032>>2]=l;L[f+2656>>2]=l}if(I[e+5233|0]){l=L[e+5140>>2];F[f+2660|0]=1;L[H[f+976>>2]+1036>>2]=l}if(I[e+5234|0]){l=L[e+5144>>2];F[f+2660|0]=1;L[H[f+976>>2]+1040>>2]=l}if(I[e+5235|0]){l=L[e+5148>>2];F[f+2660|0]=1;L[H[f+976>>2]+1044>>2]=l}if(I[e+5236|0]){l=L[e+5152>>2];F[f+2660|0]=1;L[H[f+976>>2]+1048>>2]=l}if(I[e+5237|0]){l=L[e+5156>>2];F[f+2660|0]=1;L[H[f+976>>2]+1052>>2]=l}if(I[e+5238|0]){l=L[e+5160>>2];F[f+2660|0]=1;L[H[f+976>>2]+1056>>2]=l}if(I[e+5239|0]){l=L[e+5164>>2];F[f+2660|0]=1;L[H[f+976>>2]+1060>>2]=l}if(I[e+5240|0]){l=L[e+5168>>2];F[f+2660|0]=1;L[H[f+976>>2]+1064>>2]=l}if(I[e+5241|0]){l=L[e+5172>>2];F[f+2660|0]=1;L[H[f+976>>2]+1068>>2]=l}if(I[e+5242|0]){l=L[e+5176>>2];F[f+2660|0]=1;L[H[f+976>>2]+1072>>2]=l}if(I[e+5243|0]){l=L[e+5180>>2];F[f+2660|0]=1;L[H[f+976>>2]+1076>>2]=l}if(I[e+5244|0]){l=L[e+5184>>2];F[f+2660|0]=1;L[H[f+976>>2]+1080>>2]=l}if(I[e+5245|0]){l=L[e+5188>>2];F[f+2660|0]=1;L[H[f+976>>2]+1084>>2]=l}if(I[e+5246|0]){l=L[e+5192>>2];F[f+2660|0]=1;L[H[f+976>>2]+1088>>2]=l}if(I[e+5247|0]){l=L[e+5196>>2];F[f+2660|0]=1;L[H[f+976>>2]+1092>>2]=l}if(I[e+5248|0]){l=L[e+5200>>2];F[f+2660|0]=1;L[H[f+976>>2]+1096>>2]=l}if(I[e+5249|0]){l=L[e+5204>>2];F[f+2660|0]=1;L[H[f+976>>2]+1100>>2]=l}if(I[e+5250|0]){l=L[e+5208>>2];F[f+2660|0]=1;L[H[f+976>>2]+1104>>2]=l}if(I[e+5251|0]){l=L[e+5212>>2];F[f+2660|0]=1;L[H[f+976>>2]+1108>>2]=l}if(I[e+5252|0]){l=L[e+5216>>2];F[f+2660|0]=1;L[H[f+976>>2]+1112>>2]=l}if(I[e+5253|0]){l=L[e+5220>>2];F[f+2660|0]=1;L[H[f+976>>2]+1116>>2]=l}if(I[e+5254|0]){l=L[e+5224>>2];F[f+2660|0]=1;L[H[f+976>>2]+1120>>2]=l}if(I[e+5255|0]){l=L[e+5228>>2];F[f+2660|0]=1;L[H[f+976>>2]+1124>>2]=l}H[c>>2]=0;H[c+4>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;c=H[e+5564>>2]}if(c&64){QO(f,e+5256|0)}H[e+5564>>2]=0}Oa=j+16|0;g=e+16|0;b:{if(!H[e+5128>>2]){break b}while(1){c=H[H[e+5096>>2]+(d<<2)>>2];b=H[c+4>>2];c:{d:{if((b&-1073741824)==1073741824){p=c,q=TO(g,H[c+12>>2],I[c+24|0]),H[p+16>>2]=q;break d}if(!(b&268435456)){break c}}Ut(c,e)}c=H[e+5128>>2];d=d+1|0;if(c>>>0>d>>>0){continue}break}if(!c){break b}i=H[e+5096>>2];d=0;while(1){h=i+(d<<2)|0;b=H[h>>2];f=H[b+4>>2];j=f&268435455;e:{if((f>>>30|0)-1>>>0<=1){H[b+4>>2]=j|-2147483648;break e}H[b>>2]=0;H[b+4>>2]=j}if(f&536870912){Vl(H[h>>2]);c=H[e+5128>>2]}d=d+1|0;if(d>>>0>>0){continue}break}b=H[e+5112>>2];if(!b|!c){break b}S6(H[e+5104>>2],255,b<<2);c=0;f=H[e+5100>>2];b=H[e+5108>>2];j=b-1|0;if(j){d=0;if(b-2>>>0>=3){i=j&-4;b=0;while(1){h=c|1;H[f+(c<<2)>>2]=h;m=f+(h<<2)|0;h=c|2;H[m>>2]=h;m=f+(h<<2)|0;h=c|3;H[m>>2]=h;c=c+4|0;H[f+(h<<2)>>2]=c;b=b+4|0;if((i|0)!=(b|0)){continue}break}}b=j&3;if(b){while(1){h=f+(c<<2)|0;c=c+1|0;H[h>>2]=c;d=d+1|0;if((b|0)!=(d|0)){continue}break}}b=H[e+5108>>2]-1|0}else{b=0}H[f+(b<<2)>>2]=-1;H[e+5128>>2]=0;H[e+5120>>2]=0}c=0;H[e+4884>>2]=0;f:{if(!H[e+4928>>2]){break f}h=H[e+4896>>2];while(1){b=H[h+(c<<2)>>2];d=H[b+4>>2];g:{if((d&-1073741824)==1073741824){Ct(g,b,0);break g}if(!(d&268435456)){break g}f=Oa-16|0;Oa=f;i=H[b+4>>2];h:{if(!(i&1)){break h}d=H[b+8>>2];if(!d){d=Tt(H[b>>2],i>>>24&15);H[b+8>>2]=d}d=I[d|0]&8;j=I[b+24|0]&8;if(!(d|!j)){if((H[b+4>>2]&-1073741824)!=-2147483648){break h}m=H[b>>2];j=$n(b,f+12|0);d=0;JO(m+16|0,b+H[((H[b+4>>2]>>>22&60)+76348|0)+12>>2]|0,H[f+12>>2],j,0);if(!j){break h}while(1){m=H[H[f+12>>2]+(d<<2)>>2]+16|0;H[m>>2]=H[m>>2]+1;d=d+1|0;if((j|0)!=(d|0)){continue}break}break h}if(!d|j){break h}zt(H[b>>2],b,0)}Yt(b);i:{if(!(i&64)){break i}d=H[b+8>>2];if(!d){d=Tt(H[b>>2],I[b+7|0]&15);H[b+8>>2]=d}if(!(I[b+4|0]&64)){break i}lR(b+16|0,d+96|0)}H[b+8>>2]=0;H[b+4>>2]=I[b+7|0]<<24;Oa=f+16|0}c=c+1|0;d=H[e+4928>>2];if(c>>>0>>0){continue}break}if(!d){break f}i=H[e+4896>>2];c=0;while(1){h=i+(c<<2)|0;b=H[h>>2];f=H[b+4>>2];j=f&268435455;j:{if((f>>>30|0)-1>>>0<=1){H[b+4>>2]=j|-2147483648;break j}H[b>>2]=0;H[b+4>>2]=j}if(f&536870912){Vl(H[h>>2]);d=H[e+4928>>2]}c=c+1|0;if(d>>>0>c>>>0){continue}break}c=H[e+4912>>2];if(!c|!d){break f}S6(H[e+4904>>2],255,c<<2);c=0;f=H[e+4900>>2];b=H[e+4908>>2];j=b-1|0;if(j){d=0;if(b-2>>>0>=3){i=j&-4;b=0;while(1){h=c|1;H[f+(c<<2)>>2]=h;m=f+(h<<2)|0;h=c|2;H[m>>2]=h;m=f+(h<<2)|0;h=c|3;H[m>>2]=h;c=c+4|0;H[f+(h<<2)>>2]=c;b=b+4|0;if((i|0)!=(b|0)){continue}break}}b=j&3;if(b){while(1){h=f+(c<<2)|0;c=c+1|0;H[h>>2]=c;d=d+1|0;if((b|0)!=(d|0)){continue}break}}b=H[e+4908>>2]-1|0}else{b=0}H[f+(b<<2)>>2]=-1;H[e+4928>>2]=0;H[e+4920>>2]=0}c=H[e+44>>2];if(c){d=H[e+40>>2];while(1){c=c-1|0;b=H[d>>2];b=b-H[(I[b+9|0]<<2)+76348>>2]|0;if(!(I[b+7|0]&16)){Vt(b)}d=d+4|0;if(c){continue}break}}b=H[e+2252>>2];if(b){d=H[e+2220>>2];c=0;while(1){f=H[d+(c<<2)>>2];f=f-H[(I[f+9|0]<<2)+76348>>2]|0;if(!(I[f+7|0]&16)){Vt(f)}c=c+1|0;if((b|0)!=(c|0)){continue}break}}k:{if(!H[e+4968>>2]){break k}f=H[e+4936>>2];c=0;while(1){b=H[f+(c<<2)>>2];d=H[b+4>>2];l:{if((d&-1073741824)==1073741824){Et(g,b,0,0);break l}if(!(d&268435456)){break l}Vt(b)}c=c+1|0;d=H[e+4968>>2];if(c>>>0>>0){continue}break}if(!d){break k}i=H[e+4936>>2];c=0;while(1){h=i+(c<<2)|0;b=H[h>>2];f=H[b+4>>2];j=f&268435455;m:{if((f>>>30|0)-1>>>0<=1){H[b+4>>2]=j|-2147483648;break m}H[b>>2]=0;H[b+4>>2]=j}if(f&536870912){Vl(H[h>>2]);d=H[e+4968>>2]}c=c+1|0;if(d>>>0>c>>>0){continue}break}c=H[e+4952>>2];if(!c|!d){break k}S6(H[e+4944>>2],255,c<<2);c=0;f=H[e+4940>>2];b=H[e+4948>>2];j=b-1|0;if(j){d=0;if(b-2>>>0>=3){i=j&-4;b=0;while(1){h=c|1;H[f+(c<<2)>>2]=h;m=f+(h<<2)|0;h=c|2;H[m>>2]=h;m=f+(h<<2)|0;h=c|3;H[m>>2]=h;c=c+4|0;H[f+(h<<2)>>2]=c;b=b+4|0;if((i|0)!=(b|0)){continue}break}}b=j&3;if(b){while(1){h=f+(c<<2)|0;c=c+1|0;H[h>>2]=c;d=d+1|0;if((b|0)!=(d|0)){continue}break}}b=H[e+4948>>2]-1|0}else{b=0}H[f+(b<<2)>>2]=-1;H[e+4968>>2]=0;H[e+4960>>2]=0}c=0;H[e+4872>>2]=0;d=H[e+4852>>2];n:{if(!d){break n}while(1){b=H[H[e+4820>>2]+(c<<2)>>2];if(I[b+7|0]&16){au(b);d=H[e+4852>>2]}c=c+1|0;if(d>>>0>c>>>0){continue}break}if(!d){break n}i=H[e+4820>>2];c=0;while(1){h=i+(c<<2)|0;b=H[h>>2];f=H[b+4>>2];j=f&268435455;o:{if((f>>>30|0)-1>>>0<=1){H[b+4>>2]=j|-2147483648;break o}H[b>>2]=0;H[b+4>>2]=j}if(f&536870912){Vl(H[h>>2]);d=H[e+4852>>2]}c=c+1|0;if(d>>>0>c>>>0){continue}break}c=H[e+4836>>2];if(!c|!d){break n}S6(H[e+4828>>2],255,c<<2);c=0;f=H[e+4824>>2];b=H[e+4832>>2];j=b-1|0;if(j){d=0;if(b-2>>>0>=3){i=j&-4;b=0;while(1){h=c|1;H[f+(c<<2)>>2]=h;m=f+(h<<2)|0;h=c|2;H[m>>2]=h;m=f+(h<<2)|0;h=c|3;H[m>>2]=h;c=c+4|0;H[f+(h<<2)>>2]=c;b=b+4|0;if((i|0)!=(b|0)){continue}break}}b=j&3;if(b){while(1){h=f+(c<<2)|0;c=c+1|0;H[h>>2]=c;d=d+1|0;if((b|0)!=(d|0)){continue}break}}b=H[e+4832>>2]-1|0}else{b=0}H[f+(b<<2)>>2]=-1;H[e+4852>>2]=0;H[e+4844>>2]=0}c=0;H[e+4860>>2]=0;b=H[g+1100>>2];d=H[g+1132>>2];if(d){while(1){f=H[b+(c<<2)>>2];if(!(I[f-5|0]&16)){Wt(f-12|0)}c=c+1|0;if((d|0)!=(c|0)){continue}break}}f=Oa-16|0;Oa=f;j=e+4972|0;if(H[j+36>>2]){d=e+16|0;h=H[j+4>>2];c=0;while(1){b=H[h+(c<<2)>>2];i=H[b+4>>2];p:{if((i&-1073741824)==1073741824){Hf(b,f+12|0,f+8|0);m=b+12|0;b=H[f+12>>2];if(b){b=b+H[((H[b+4>>2]>>>22&60)+76348|0)+12>>2]|0}else{b=0}i=H[f+8>>2];if(i){i=i+H[((H[i+4>>2]>>>22&60)+76348|0)+12>>2]|0}else{i=0}kO(d,m,b,i);break p}if(!(i&268435456)){break p}Wt(b)}c=c+1|0;if(c>>>0>2]){continue}break}}Oa=f+16|0;d=H[e+5008>>2];q:{if(!d){break q}i=H[e+4976>>2];c=0;while(1){h=i+(c<<2)|0;b=H[h>>2];f=H[b+4>>2];j=f&268435455;r:{if((f>>>30|0)-1>>>0<=1){H[b+4>>2]=j|-2147483648;break r}H[b>>2]=0;H[b+4>>2]=j}if(f&536870912){Vl(H[h>>2]);d=H[e+5008>>2]}c=c+1|0;if(d>>>0>c>>>0){continue}break}c=H[e+4992>>2];if(!c|!d){break q}S6(H[e+4984>>2],255,c<<2);c=0;f=H[e+4980>>2];b=H[e+4988>>2];j=b-1|0;if(j){d=0;if(b-2>>>0>=3){i=j&-4;b=0;while(1){h=c|1;H[f+(c<<2)>>2]=h;m=f+(h<<2)|0;h=c|2;H[m>>2]=h;m=f+(h<<2)|0;h=c|3;H[m>>2]=h;c=c+4|0;H[f+(h<<2)>>2]=c;b=b+4|0;if((i|0)!=(b|0)){continue}break}}b=j&3;if(b){while(1){h=f+(c<<2)|0;c=c+1|0;H[h>>2]=c;d=d+1|0;if((b|0)!=(d|0)){continue}break}}b=H[e+4988>>2]-1|0}else{b=0}H[f+(b<<2)>>2]=-1;H[e+5008>>2]=0;H[e+5e3>>2]=0}b=H[g+1204>>2];d=H[g+1236>>2];if(d){c=0;while(1){f=H[b+(c<<2)>>2];if(!(I[f-5|0]&16)){Xt(f-12|0)}c=c+1|0;if((d|0)!=(c|0)){continue}break}}s:{if(!H[e+5048>>2]){break s}f=H[e+5016>>2];c=0;while(1){b=H[f+(c<<2)>>2];d=H[b+4>>2];t:{if((d&-1073741824)==1073741824){d=b+12|0;if(H[b+88>>2]){b=H[H[b+84>>2]>>2];b=b?b+48|0:0}else{b=0}mO(g,d,b+16|0);break t}if(!(d&268435456)){break t}Xt(b)}c=c+1|0;d=H[e+5048>>2];if(c>>>0>>0){continue}break}if(!d){break s}j=H[e+5016>>2];c=0;while(1){i=j+(c<<2)|0;b=H[i>>2];g=H[b+4>>2];f=g&268435455;u:{if((g>>>30|0)-1>>>0<=1){H[b+4>>2]=f|-2147483648;break u}H[b>>2]=0;H[b+4>>2]=f}if(g&536870912){Vl(H[i>>2]);d=H[e+5048>>2]}c=c+1|0;if(d>>>0>c>>>0){continue}break}c=H[e+5032>>2];if(!c|!d){break s}S6(H[e+5024>>2],255,c<<2);c=0;g=H[e+5020>>2];b=H[e+5028>>2];f=b-1|0;if(f){d=0;if(b-2>>>0>=3){j=f&-4;b=0;while(1){i=c|1;H[g+(c<<2)>>2]=i;h=g+(i<<2)|0;i=c|2;H[h>>2]=i;h=g+(i<<2)|0;i=c|3;H[h>>2]=i;c=c+4|0;H[g+(i<<2)>>2]=c;b=b+4|0;if((j|0)!=(b|0)){continue}break}}b=f&3;if(b){while(1){f=g+(c<<2)|0;c=c+1|0;H[f>>2]=c;d=d+1|0;if((b|0)!=(d|0)){continue}break}}f=H[e+5028>>2]-1|0}else{f=0}H[g+(f<<2)>>2]=-1;H[e+5048>>2]=0;H[e+5040>>2]=0}v:{if(!H[e+5088>>2]){break v}f=H[e+5056>>2];c=0;while(1){g=H[f+(c<<2)>>2];b=H[g+4>>2];w:{if((b&-1073741824)==1073741824){b=H[g+388>>2];H[n+12>>2]=H[g+384>>2]+48;H[n+8>>2]=b+48;oO(g+12|0,H[n+12>>2]+16|0,H[n+8>>2]+16|0);break w}if(!(b&268435456)){break w}b=H[g+4>>2];x:{if(!(b&16777215)){break x}d=H[g+8>>2];if(!d){d=Tt(H[g>>2],b>>>24&15);H[g+8>>2]=d;b=H[g+4>>2]}if(b&1){bE(g+12|0,d);b=H[g+4>>2]}if(b&2){cE(g+12|0,d+28|0);b=H[g+4>>2]}if(b&4){L[g+288>>2]=L[d+56>>2];L[g+292>>2]=L[d+60>>2];L[g+296>>2]=L[d+64>>2];L[g+300>>2]=L[d+68>>2];b=H[g+4>>2]}if(b&8){L[g+304>>2]=L[d+72>>2];L[g+308>>2]=L[d+76>>2];L[g+312>>2]=L[d+80>>2];b=H[g+4>>2]}if(b&16){L[g+316>>2]=L[d+84>>2];b=H[g+4>>2]}if(b&32){L[g+320>>2]=L[d+88>>2];b=H[g+4>>2]}if(b&64){L[g+264>>2]=L[d+92>>2];b=H[g+4>>2]}if(b&256){L[g+324>>2]=L[d+100>>2];b=H[g+4>>2]}if(b&512){L[g+328>>2]=L[d+104>>2];b=H[g+4>>2]}if(b&1024){gE(g+12|0,L[d+108>>2]);b=H[g+4>>2]}if(b&2048){F[g+344|0]=I[d+112|0];b=H[g+4>>2]}if(b&16384){iE(g+12|0,L[d+124>>2]);b=H[g+4>>2]}if(b&32768){F[g+345|0]=I[d+128|0];b=H[g+4>>2]}if(b&4096){L[g+336>>2]=L[d+116>>2];b=H[g+4>>2]}if(b&8192){L[g+340>>2]=L[d+120>>2];b=H[g+4>>2]}if(b&524288){dE(g+12|0,H[d+136>>2]);b=H[g+4>>2]}if(b&65536){F[g+346|0]=H[d+132>>2];b=H[g+4>>2]}if(b&131072){fE(g+12|0,L[d+140>>2],L[d+144>>2]);b=H[g+4>>2]}if(b&262144){hE(g+12|0,L[d+148>>2],L[d+152>>2]);b=H[g+4>>2]}if(b&8388608){b=g+12|0;eE(b,0,H[d+348>>2]);eE(b,1,H[d+352>>2]);eE(b,2,H[d+356>>2]);eE(b,3,H[d+360>>2]);eE(b,4,H[d+364>>2]);eE(b,5,H[d+368>>2]);b=H[g+4>>2]}if(b&1048576){b=g+12|0;lE(b,0,L[d+156>>2],L[d+160>>2]);lE(b,1,L[d+164>>2],L[d+168>>2]);lE(b,2,L[d+172>>2],L[d+176>>2]);lE(b,3,L[d+180>>2],L[d+184>>2]);lE(b,4,L[d+188>>2],L[d+192>>2]);lE(b,5,L[d+196>>2],L[d+200>>2]);b=H[g+4>>2]}if(b&2097152){b=g+12|0;mE(b,0,L[d+204>>2],L[d+208>>2],L[d+212>>2],H[d+216>>2]);mE(b,1,L[d+220>>2],L[d+224>>2],L[d+228>>2],H[d+232>>2]);mE(b,2,L[d+236>>2],L[d+240>>2],L[d+244>>2],H[d+248>>2]);mE(b,3,L[d+252>>2],L[d+256>>2],L[d+260>>2],H[d+264>>2]);mE(b,4,L[d+268>>2],L[d+272>>2],L[d+276>>2],H[d+280>>2]);mE(b,5,L[d+284>>2],L[d+288>>2],L[d+292>>2],H[d+296>>2]);b=H[g+4>>2]}if(!(b&4194304)){break x}b=g+12|0;jE(b,0,L[d+300>>2]);kE(b,0,L[d+324>>2]);jE(b,1,L[d+304>>2]);kE(b,1,L[d+328>>2]);jE(b,2,L[d+308>>2]);kE(b,2,L[d+332>>2]);jE(b,3,L[d+312>>2]);kE(b,3,L[d+336>>2]);jE(b,4,L[d+316>>2]);kE(b,4,L[d+340>>2]);jE(b,5,L[d+320>>2]);kE(b,5,L[d+344>>2]);b=H[g+4>>2]}H[g+8>>2]=0;H[g+4>>2]=b&-16777216}c=c+1|0;d=H[e+5088>>2];if(c>>>0>>0){continue}break}if(!d){break v}j=H[e+5056>>2];c=0;while(1){i=j+(c<<2)|0;b=H[i>>2];g=H[b+4>>2];f=g&268435455;y:{if((g>>>30|0)-1>>>0<=1){H[b+4>>2]=f|-2147483648;break y}H[b>>2]=0;H[b+4>>2]=f}if(g&536870912){Vl(H[i>>2]);d=H[e+5088>>2]}c=c+1|0;if(d>>>0>c>>>0){continue}break}c=H[e+5072>>2];if(!c|!d){break v}S6(H[e+5064>>2],255,c<<2);c=0;b=H[e+5060>>2];d=H[e+5068>>2];g=d-1|0;if(g){f=0;if(d-2>>>0>=3){j=g&-4;d=0;while(1){i=c|1;H[b+(c<<2)>>2]=i;h=b+(i<<2)|0;i=c|2;H[h>>2]=i;h=b+(i<<2)|0;i=c|3;H[h>>2]=i;c=c+4|0;H[b+(i<<2)>>2]=c;d=d+4|0;if((j|0)!=(d|0)){continue}break}}g=g&3;if(g){while(1){d=b+(c<<2)|0;c=c+1|0;H[d>>2]=c;f=f+1|0;if((g|0)!=(f|0)){continue}break}}f=H[e+5068>>2]-1|0}else{f=0}H[b+(f<<2)>>2]=-1;H[e+5088>>2]=0;H[e+5080>>2]=0}c=H[e+4796>>2];g=H[e+4804>>2]+2|0;if(c>>>0>g>>>0){while(1){c=c-1|0;b=H[H[e+4792>>2]+(c<<2)>>2];H[e+4796>>2]=c;if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b);c=H[e+4796>>2]}if(c>>>0>g>>>0){continue}break}}H[e+4804>>2]=0;H[e+4808>>2]=0;Oa=n+16|0;H[o+8>>2]=111008;BO(k,a+5712|0,o+8|0);c=a+5584|0;b=H[a+72>>2];g=0;d=H[a+76>>2];if(d){while(1){e=H[c+72>>2];f=b+(g<<2)|0;Ra[H[H[e>>2]+8>>2]](e,H[H[H[f>>2]>>2]+48>>2],H[f>>2]+16|0);g=g+1|0;if((d|0)!=(g|0)){continue}break}}H[c+68>>2]=H[c+68>>2]+1;LD(c,H[a+5824>>2]);if(!I[k+2281|0]){c=H[k+2236>>2];if(c){g=k+2200|0;e=H[k+2204>>2];f=H[k+1e3>>2];while(1){c=c-1|0;d=e+(c<<2)|0;b=H[H[d>>2]>>2];n=J[b+148>>1];z:{if(n&128){G[b+148>>1]=n&65503;Pf(g,d);break z}if(!(I[(H[f+184>>2]+N(H[b+144>>2]>>>7|0,24)|0)+4|0]&2)){break z}Pf(g,d);qG(b)}if(c){continue}break}}F[k+2281|0]=1}if(!I[k+2280|0]){c=H[k+2276>>2];if(c){b=k+2240|0;g=H[k+2244>>2];while(1){c=c-1|0;d=g+(c<<2)|0;if(I[H[H[d>>2]>>2]+148|0]&64){Pf(b,d)}if(c){continue}break}}F[k+2280|0]=1}A:{if(!H[k+2344>>2]){break A}d=H[k+2276>>2];e=H[k+2236>>2];c=e>>>0>>0?d:e;if(!c){break A}c=c<<2;if(!c){break A}b=H[33808];b=Ra[H[H[b+12>>2]+8>>2]](b+12|0,c,20591,9345,4567)|0;if(!b){break A}B:{if(!e){break B}n=H[k+2204>>2];g=0;c=0;while(1){f=H[n+(c<<2)>>2];if(I[f+8|0]&4){H[b+(g<<2)>>2]=f+H[((I[f+9|0]<<2)+135180|0)+40>>2];g=g+1|0}c=c+1|0;if((e|0)!=(c|0)){continue}break}if(!g){break B}c=H[k+2344>>2];Ra[H[H[c>>2]+8>>2]](c,b,g)}C:{if(!d){break C}f=H[k+2244>>2];c=0;g=0;while(1){e=H[f+(c<<2)>>2];if(I[e+8|0]&4){H[b+(g<<2)>>2]=e+H[((I[e+9|0]<<2)+135180|0)+40>>2];g=g+1|0}c=c+1|0;if((d|0)!=(c|0)){continue}break}if(!g){break C}c=H[k+2344>>2];Ra[H[H[c>>2]+4>>2]](c,b,g)}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}hO(k);NN(k);c=H[(I[a+5580|0]&4?5564:2392)+a>>2]&1;D:{if(!(!c|!I[a+6355|0])){b=0;d=Oa-16|0;Oa=d;g=H[k+28>>2];if(I[k+2361|0]&16){c=H[k+36>>2];g=g-c|0;c=H[k+24>>2]+(c<<2)|0}else{c=H[k+24>>2]}H[k+2312>>2]=0;H[k+2300>>2]=0;if(g){n=k+2308|0;j=k+2296|0;while(1){f=c+(b<<2)|0;e=H[f>>2];e=H[((I[e+9|0]<<2)+135180|0)+40>>2]+e|0;E:{if(!(G[H[H[f>>2]>>2]+92>>1]&1)){H[d+12>>2]=e;f=H[k+2300>>2];if(f>>>0>=(H[k+2304>>2]&2147483647)>>>0){Ml(j,d+12|0);break E}H[H[k+2296>>2]+(f<<2)>>2]=e;H[k+2300>>2]=f+1;break E}H[d+8>>2]=e;f=H[k+2312>>2];if(f>>>0>=(H[k+2316>>2]&2147483647)>>>0){Ml(n,d+8|0);break E}H[H[k+2308>>2]+(f<<2)>>2]=e;H[k+2312>>2]=f+1}b=b+1|0;if((b|0)!=(g|0)){continue}break}}Oa=d+16|0;break D}if(!c){break D}g=Oa-16|0;Oa=g;c=H[k+28>>2];if(I[k+2361|0]&16){b=H[k+36>>2];c=c-b|0;b=H[k+24>>2]+(b<<2)|0}else{b=H[k+24>>2]}d=0;H[k+2300>>2]=0;if(c){f=k+2296|0;while(1){e=b+(d<<2)|0;F:{if(G[H[H[e>>2]>>2]+92>>1]&1){break F}e=H[e>>2];n=H[((I[e+9|0]<<2)+135180|0)+40>>2]+e|0;H[g+12>>2]=n;e=H[k+2300>>2];if(e>>>0>=(H[k+2304>>2]&2147483647)>>>0){Ml(f,g+12|0);break F}H[H[k+2296>>2]+(e<<2)>>2]=n;H[k+2300>>2]=e+1}d=d+1|0;if((d|0)!=(c|0)){continue}break}}Oa=g+16|0}rq(a+5828|0,H[k+976>>2]+212|0);if(I[a+6320|0]){c=H[a+6092>>2];Ra[H[H[c>>2]+16>>2]](c)}H[a+4656>>2]=0;F[H[a+6060>>2]+76|0]=0;F[H[a+6064>>2]+76|0]=0;Oa=o+16|0}function eN(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=O(0),l=0,m=O(0),n=0,o=O(0),p=0,q=0,r=O(0),s=O(0),t=0,u=0,v=0,w=O(0),x=O(0),y=O(0),z=O(0),A=0,B=0,C=0,D=O(0),E=O(0),M=0,Q=0,R=O(0),S=O(0),T=O(0),U=O(0),V=O(0),W=O(0),X=O(0),Y=O(0),Z=0,_=O(0),$=0,aa=0,ba=O(0),ca=0,da=0,ea=0,fa=O(0),ga=O(0),ha=O(0),ia=O(0),ja=O(0),ka=0,la=0,ma=0,na=O(0),oa=0,pa=O(0),qa=O(0),ra=O(0),sa=0,ta=0,ua=O(0),va=O(0),wa=O(0),xa=O(0),ya=O(0),za=O(0),Aa=O(0),Ba=O(0),Ca=O(0),Da=0,Ea=0,Fa=0,Ga=0,Ha=O(0),Ia=0,Ja=0,Ka=O(0),La=O(0),Ma=O(0),Na=O(0),Pa=O(0),Qa=O(0),Sa=O(0),Ta=O(0),Ua=O(0),Va=O(0),Wa=O(0),Xa=O(0),Ya=O(0),Za=O(0),_a=O(0),$a=O(0),ab=O(0),bb=0,cb=0;g=H[a+48>>2];b=H[g+304>>2];e=H[b>>2];if(e){H[b>>2]=H[e>>2]}if(!e){b=H[33808];h=Ra[H[H[b>>2]+20>>2]](b)|0?22930:55639;h=Ra[H[H[b+12>>2]+8>>2]](b+12|0,7251,h,16202,82)|0;b=h+19&-16;H[b-4>>2]=b-h;e=uJ(b,H[g+308>>2])}L[e+7152>>2]=L[a+44>>2];b=H[a+48>>2];g=I[b+1812|0];F[e+7136|0]=g;F[e+7139|0]=I[b+1814|0];F[e+7137|0]=I[b+1813|0];H[e+7128>>2]=H[b+1816>>2];H[e+7132>>2]=H[H[b+1820>>2]+4>>2];a:{if(g){n=Oa-32|0;Oa=n;Ia=H[a+28>>2];ka=H[a+40>>2];H[n+28>>2]=0;H[n+24>>2]=0;H[n+20>>2]=H[e+7164>>2];b=ka<<2;F[n+12|0]=b>>>0>1024;b:{if(b>>>0>=1025){bb=n,cb=G5(b,5002,407),H[bb+8>>2]=cb;break b}b=n-(b+15&-16)|0;Oa=b;H[n+8>>2]=b}c:{if(!ka){break c}while(1){C=oa;oa=C+1|0;da=Ia+(C<<2)|0;A=H[da>>2];d:{if(!A){break d}t=H[a+32>>2]+(C<<4)|0;F[t+15|0]=I[t+13|0];Da=I[t+14|0];B=H[a+36>>2]+(C<<3)|0;M=0;Q=0;u=0;ea=Oa-256|0;Oa=ea;g=J[A+40>>1];e:{if(!(g&512)){break e}i=H[A+60>>2];la=H[H[e+7128>>2]+4>>2];j=H[A+56>>2];b=I[A+47|0];h=I[A+46|0];d=I[t+14|0];if(!(d&32|g&128|(!(g&32?F[(la+(j<<5)|0)+28|0]&1:1)|!(H[(la+(i<<5)|0)+28>>2]&1)&(g&64)!=0))){if(I[t+12|0]){H[e+7148>>2]=H[e+7148>>2]+1}yM(t,B,e,0,(b>>>0>>0?h:b)>>>0>4);break e}F[t+14|0]=d&223;g=H[e+7132>>2];L[e+7104>>2]=L[g+(j<<2)>>2]+L[g+(i<<2)>>2];c=H[A+28>>2];g=H[A+24>>2];Ea=b>>>0>=h>>>0;f:{if(Ea){Z=h;h=b;$=j;j=i;i=g;g=c;break f}Z=b;$=i;i=c}p=e+4640|0;b=I[B+7|0];g:{if(b&2){c=H[B>>2];h:{i:{j:{if(c){b=H[c+32>>2];d=H[c+4>>2];H[p>>2]=H[c>>2];H[p+4>>2]=d;d=H[c+28>>2];H[p+24>>2]=H[c+24>>2];H[p+28>>2]=d;d=H[c+20>>2];H[p+16>>2]=H[c+16>>2];H[p+20>>2]=d;d=H[c+12>>2];H[p+8>>2]=H[c+8>>2];H[p+12>>2]=d;if(!b){break j}f=c+48|0;while(1){F[(p+u|0)+56|0]=u;q=p+N(u,400)|0;l=H[f>>2];H[q+448>>2]=l;v=f+16|0;f=0;if(l){while(1){d=v+N(f,48)|0;M=H[d+4>>2];Q=H[d>>2];y=L[d+8>>2];c=q+(f<<6)|0;H[c+76>>2]=0;L[c+72>>2]=y;aa=c- -64|0;H[aa>>2]=Q;H[aa+4>>2]=M;M=H[d+16>>2];Q=H[d+20>>2];y=L[d+24>>2];H[c+92>>2]=0;L[c+88>>2]=y;H[c+80>>2]=M;H[c+84>>2]=Q;M=H[d+32>>2];Q=H[d+36>>2];aa=H[d+44>>2];H[c+104>>2]=H[d+40>>2];H[c+108>>2]=aa;H[c+96>>2]=M;H[c+100>>2]=Q;H[c+112>>2]=H[d+12>>2];f=f+1|0;if(f>>>0>2]){continue}break}}f=v+N(l,48)|0;u=u+1|0;if((u|0)!=(b|0)){continue}break}F[p+62|0]=b;if(b>>>0<=5){break i}break h}H[p+16>>2]=2139095039;H[p+20>>2]=2139095039;H[p+8>>2]=0;H[p+12>>2]=1065353216;H[p>>2]=0;H[p+4>>2]=0;H[p+24>>2]=2139095039;H[p+28>>2]=0}b=0;F[p+62|0]=0}f=b;c=6-b&7;if(c){M=0;while(1){F[(f+p|0)+56|0]=f;f=f+1|0;M=M+1|0;if((c|0)!=(M|0)){continue}break}}if(b+1>>>0<=6){break h}b=p+56|0;while(1){c=f+7|0;F[c+b|0]=c;c=f+6|0;F[c+b|0]=c;c=f+5|0;F[c+b|0]=c;c=f+4|0;F[c+b|0]=c;c=f+3|0;F[c+b|0]=c;c=f+2|0;F[c+b|0]=c;c=f+1|0;F[c+b|0]=c;F[b+f|0]=f;f=f+8|0;if((f|0)!=6){continue}break}}H[B>>2]=p;F[B+7|0]=I[B+7|0]|3;M=1;break g}if(!(b&1)){break g}b=0;f=H[B>>2];c=f+127|0;b=c>>>0<127?1:b;d=c;c=b>>>6|0;b=(b&63)<<26|d>>>6;q=f>>>6|0;d=q;Ja=b-d|0;aa=c-(b>>>0>>0)|0;l=1-d|0;d=b;v=l+b|0;Fa=0-(q>>>0>1)|0;b=c+Fa|0;c=v;d=d>>>0>c>>>0?b+1|0:b;b=0;ma=b;Ga=c&7;k:{if(!(b|Ga)){b=f;break k}b=f;while(1){v=c;c=c-1|0;d=d-!v|0;b=b- -64|0;v=Q+1|0;u=v?u:u+1|0;Q=v;if((Ga|0)!=(v|0)|(u|0)!=(ma|0)){continue}break}}if(!aa&Ja>>>0>=7|aa){while(1){b=b+512|0;d=d-(c>>>0<8)|0;c=c-8|0;if(d|c){continue}break}}b=0;c=f+255|0;b=c>>>0<255?1:b;u=b>>>6|0;b=(b&63)<<26|c>>>6;v=b-q|0;q=u-(b>>>0>>0)|0;d=u+Fa|0;b=b+l|0;d=b>>>0>>0?d+1|0:d;c=b;b=0;l=b;aa=c&7;if(b|aa){Q=0;u=0;while(1){b=c;c=b-1|0;d=d-!b|0;f=f- -64|0;b=u;u=Q+1|0;b=u?b:b+1|0;Q=u;u=b;if((aa|0)!=(Q|0)|(l|0)!=(b|0)){continue}break}}if(!q&v>>>0<7){break g}while(1){f=f+512|0;d=d-(c>>>0<8)|0;c=c-8|0;if(d|c){continue}break}}c=h<<2;b=N(Z,28);d=c+(b+e|0)|0;H[d+108>>2]=H[d+108>>2]+1;H[e+4624>>2]=0;F[t+7|0]=0;F[t+8|0]=0;F[t+9|0]=0;F[t+10|0]=0;F[t+11|0]=0;F[t+12|0]=0;F[t+13|0]=0;F[t+14|0]=0;H[t>>2]=0;H[t+4>>2]=0;Ra[H[c+(b+112048|0)>>2]](i+36|0,g+36|0,la+($<<5)|0,la+(j<<5)|0,e+7104|0,B,e+528|0,e+4|0)|0;b=H[c+(b+118560|0)>>2];if(b){Ra[b|0](i,g,e,ea)|0}l:{if(Ea){break l}g=H[e+4624>>2];if(!g){break l}f=0;while(1){b=(f<<6)+e|0;L[b+536>>2]=-L[b+536>>2];L[b+532>>2]=-L[b+532>>2];L[b+528>>2]=-L[b+528>>2];b=ea+(f<<2)|0;bb=b,cb=j7(H[b>>2],16),H[bb>>2]=cb;f=f+1|0;if((g|0)!=(f|0)){continue}break}}if(M){b=e+4702|0;q=(N(I[e+4703|0],48)+(I[b|0]<<4)|0)+48|0;g=tJ(e+512|0,q);Z=I[b|0];H[g+32>>2]=Z;b=H[p+4>>2];H[g>>2]=H[p>>2];H[g+4>>2]=b;b=H[p+12>>2];H[g+8>>2]=H[p+8>>2];H[g+12>>2]=b;b=H[p+20>>2];H[g+16>>2]=H[p+16>>2];H[g+20>>2]=b;b=H[p+28>>2];H[g+24>>2]=H[p+24>>2];H[g+28>>2]=b;if(Z){f=g+48|0;$=e+4640|0;i=0;while(1){l=N(I[(i+$|0)+56|0],400);d=H[(l+$|0)+448>>2];H[f>>2]=d;u=f+16|0;j=0;if(d){while(1){c=(e+l|0)+(j<<6)|0;b=c+4704|0;f=H[b+4>>2];v=H[b>>2];b=u+N(j,48)|0;L[b+8>>2]=L[c+4712>>2];H[b>>2]=v;H[b+4>>2]=f;f=c+4720|0;v=H[f+4>>2];f=H[f>>2];y=L[c+4728>>2];H[b+28>>2]=0;L[b+24>>2]=y;H[b+16>>2]=f;H[b+20>>2]=v;f=c+4744|0;v=H[f+4>>2];H[b+40>>2]=H[f>>2];H[b+44>>2]=v;f=c+4736|0;v=H[f+4>>2];H[b+32>>2]=H[f>>2];H[b+36>>2]=v;H[b+12>>2]=H[c+4752>>2];j=j+1|0;if((d|0)!=(j|0)){continue}break}}f=u+N(d,48)|0;i=i+1|0;if((Z|0)!=(i|0)){continue}break}}H[B>>2]=g;G[B+4>>1]=q;F[B+7|0]=I[B+7|0]|3}zM(J[A+40>>1],t,e,ea,h>>>0>4)}Oa=ea+256|0;c=Da&2;g=I[t+14|0]&2;h=I[t+13|0];m:{if(!(!h|!(J[A+40>>1]&128))){H[H[n+8>>2]+(ca<<2)>>2]=C;ca=ca+1|0;break m}b=H[n+20>>2];H[n+20>>2]=b>>>0>>0?h:b;f=I[t+15|0];if((h|0)==(f|0)){break m}i=H[H[da>>2]+48>>2];b=i+32>>>5|0;n:{if(b>>>0<=(H[e+7208>>2]&2147483647)>>>0){j=H[e+7204>>2];break n}h=H[33808]+12|0;j=Ra[H[H[h>>2]+8>>2]](h,b<<2,20591,14969,438)|0;h=H[e+7204>>2];o:{if(!h){break o}R6(j,h,H[e+7208>>2]<<2);if(H[e+7208>>2]<0){break o}h=H[e+7204>>2];if(!h){break o}d=H[33808]+12|0;Ra[H[H[d>>2]+12>>2]](d,h)}h=H[e+7208>>2];S6((h<<2)+j|0,0,b-h<<2);H[e+7208>>2]=b;H[e+7204>>2]=j;h=I[t+13|0];f=I[t+15|0]}b=(i>>>3&536870908)+j|0;H[b>>2]=H[b>>2]|1<>>0>>0){H[n+24>>2]=H[n+24>>2]+1;break m}H[n+28>>2]=H[n+28>>2]+1}if((c|0)!=(g|0)){F[A+43|0]=I[t+14|0]|I[A+43|0]&64;h=H[H[da>>2]+48>>2];b=h+32>>>5|0;p:{if(b>>>0<=(H[e+7196>>2]&2147483647)>>>0){j=H[e+7192>>2];break p}i=H[33808]+12|0;j=Ra[H[H[i>>2]+8>>2]](i,b<<2,20591,14969,438)|0;i=H[e+7192>>2];q:{if(!i){break q}R6(j,i,H[e+7196>>2]<<2);if(H[e+7196>>2]<0){break q}i=H[e+7192>>2];if(!i){break q}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,i)}i=H[e+7196>>2];S6((i<<2)+j|0,0,b-i<<2);H[e+7196>>2]=b;H[e+7192>>2]=j}b=(h>>>3&536870908)+j|0;H[b>>2]=H[b>>2]|1<>2],ca,e,n+24|0,n+28|0,n+20|0)}break a}n=Oa-32|0;Oa=n;la=H[a+28>>2];t=H[a+40>>2];H[n+28>>2]=0;H[n+24>>2]=0;H[n+20>>2]=H[e+7164>>2];b=t<<2;F[n+12|0]=b>>>0>1024;r:{if(b>>>0>=1025){bb=n,cb=G5(b,5002,407),H[bb+8>>2]=cb;break r}b=n-(b+15&-16)|0;Oa=b;H[n+8>>2]=b}s:{if(!t){break s}while(1){u=oa;oa=u+1|0;M=la+(u<<2)|0;C=H[M>>2];t:{if(!C){break t}q=H[a+32>>2]+(u<<4)|0;F[q+15|0]=I[q+13|0];Q=I[q+14|0];f=H[a+36>>2]+(u<<3)|0;v=Oa-256|0;Oa=v;i=J[C+40>>1];u:{if(!(i&512)){break u}c=H[C+60>>2];j=H[H[e+7128>>2]+4>>2];b=H[C+56>>2];g=I[C+47|0];h=I[C+46|0];if(!(I[q+14|0]&32|i&128|(!(i&32?F[(j+(b<<5)|0)+28|0]&1:1)|!(H[(j+(c<<5)|0)+28>>2]&1)&(i&64)!=0))){i=g>>>0>>0?h:g;b=I[e+7137|0]?I[i+(N(g>>>0>h>>>0?h:g,7)+80432|0)|0]!=0:0;if(I[q+12|0]){H[e+7148>>2]=H[e+7148>>2]+1}yM(q,f,e,b,i>>>0>4);break u}i=H[e+7132>>2];L[e+7104>>2]=L[i+(b<<2)>>2]+L[i+(c<<2)>>2];d=H[C+28>>2];i=H[C+24>>2];ka=g>>>0>=h>>>0;v:{if(ka){Z=h;h=g;g=b;b=c;$=i;i=d;break v}Z=g;g=c;$=d}d=h<<2;c=N(Z,28);l=d+(c+e|0)|0;H[l+108>>2]=H[l+108>>2]+1;H[e+4624>>2]=0;F[q+7|0]=0;F[q+8|0]=0;F[q+9|0]=0;F[q+10|0]=0;F[q+11|0]=0;F[q+12|0]=0;F[q+13|0]=0;F[q+14|0]=0;H[q>>2]=0;H[q+4>>2]=0;l=H[d+(c+111840|0)>>2];b=j+(b<<5)|0;c=j+(g<<5)|0;w:{if(!(!I[e+7137|0]|!I[(N(Z,7)+80432|0)+h|0])){B=$+36|0;da=i+36|0;j=0;x:{y:{d=H[f>>2];if(!d){H[e+4624>>2]=0;G[f+4>>1]=0;H[f>>2]=0;g=e+528|0;break y}H[e+4624>>2]=0;A=H[d+60>>2];j=I[d+59|0];ea=I[d+58|0];p=J[d+56>>1];T=L[d+12>>2];V=L[d+8>>2];W=L[d+4>>2];X=L[d>>2];R=L[d+32>>2];U=L[d+28>>2];ha=L[d+52>>2];na=L[d+24>>2];S=L[d+36>>2];pa=L[d+44>>2];qa=L[d+16>>2];Ba=L[d+48>>2];Ca=L[d+20>>2];y=L[d+40>>2];G[f+4>>1]=0;H[f>>2]=0;g=e+528|0;r=L[b>>2];Y=O(-r);k=O(L[c+16>>2]-L[b+16>>2]);s=O(k+k);k=O(L[c+20>>2]-L[b+20>>2]);w=O(k+k);m=L[b+4>>2];o=L[b+8>>2];k=O(L[c+24>>2]-L[b+24>>2]);D=O(k+k);z=O(O(O(Y*s)-O(w*m))-O(o*D));ua=O(-U);k=O(qa-pa);fa=O(k+k);k=O(Ca-Ba);_=O(k+k);k=O(na-ha);x=O(k+k);E=O(O(O(ua*fa)-O(_*R))-O(S*x));k=L[b+12>>2];ga=O(O(k*k)+O(-.5));ba=O(O(y*y)+O(-.5));ia=O(P(O(O(O(O(s*ga)+O(k*O(O(o*w)-O(m*D))))-O(r*z))-O(O(O(fa*ba)+O(y*O(O(S*_)-O(R*x))))-O(U*E)))));va=O(P(O(O(O(O(w*ga)+O(k*O(O(r*D)-O(o*s))))-O(m*z))-O(O(O(_*ba)+O(y*O(O(U*x)-O(S*fa))))-O(R*E)))));ia=ia>va?ia:va;s=O(P(O(O(O(O(D*ga)+O(k*O(O(m*s)-O(r*w))))-O(o*z))-O(O(O(x*ba)+O(y*O(O(R*fa)-O(U*_))))-O(S*E)))));if(!(O(L[e+7112>>2]*O(.009999999776482582))>(s>2];_=O(-m);w=L[c+8>>2];D=L[c>>2];z=L[c+12>>2];fa=O(-R);x=O(P(O(O(O(s*o)+O(O(_*w)+O(O(k*D)+O(z*Y))))-O(O(W*S)+O(O(fa*V)+O(O(y*X)+O(T*ua)))))));E=O(-o);ra=O(O(w*r)+O(O(E*D)+O(O(k*s)+O(z*_))));_=O(-S);ga=O(P(O(ra-O(O(V*U)+O(O(_*X)+O(O(y*W)+O(T*fa)))))));x=x>ga?x:ga;E=O(P(O(O(O(D*m)+O(O(Y*s)+O(O(k*w)+O(z*E))))-O(O(X*R)+O(O(ua*W)+O(O(y*V)+O(T*_)))))));x=x>E?x:E;k=O(P(O(O(O(o*w)+O(O(m*s)+O(O(k*z)+O(r*D))))-O(O(S*V)+O(O(R*W)+O(O(y*T)+O(X*U)))))));if(!((k>1]=l&-16;ma=f;f=tJ(e+512|0,l&65520);f=(f|0)==-1?0:f;H[ma>>2]=f;d=d- -64|0;H[e+4624>>2]=p;if(p){o=L[c+4>>2];D=O(o+o);k=L[c+8>>2];s=O(D*k);z=L[c>>2];r=O(z+z);m=L[c+12>>2];w=O(r*m);ga=O(s-w);x=O(r*k);E=O(D*m);ia=O(x+E);va=O(s+w);s=O(r*o);wa=O(k+k);m=O(wa*m);Ka=O(s-m);La=O(x-E);Ma=O(s+m);s=L[b+4>>2];x=O(s+s);m=L[b+8>>2];xa=O(x*m);E=L[b>>2];w=O(E+E);Y=L[b+12>>2];ja=O(w*Y);Na=O(xa-ja);ya=O(w*m);za=O(x*Y);Pa=O(ya+za);xa=O(xa+ja);ja=O(w*s);Aa=O(m+m);Y=O(Aa*Y);Qa=O(ja-Y);ya=O(ya-za);Y=O(ja+Y);r=O(O(1)-O(z*r));o=O(o*D);ja=O(r-o);k=O(k*wa);wa=O(r-k);za=O(O(O(1)-o)-k);k=O(O(1)-O(E*w));o=O(s*x);Sa=O(k-o);ra=k;k=O(m*Aa);Aa=O(ra-k);Ta=O(O(O(1)-o)-k);k=O(O(T*T)+O(-.5));Ua=O(-W);Va=O(-X);Wa=O(-V);Xa=L[c+24>>2];Ya=L[c+20>>2];Za=L[c+16>>2];_a=L[b+24>>2];$a=L[b+20>>2];ab=L[b+16>>2];b=d;c=0;B=0;while(1){da=!B|!(j&255);l=(da?12:0)+b|0;ra=L[l+12>>2];s=L[l+4>>2];w=L[l+8>>2];D=L[l>>2];c=da?b:c;L[g>>2]=L[c>>2];L[g+4>>2]=L[c+4>>2];L[g+8>>2]=L[c+8>>2];m=O(w-na);m=O(m+m);o=O(D-qa);o=O(o+o);r=O(s-Ca);r=O(r+r);z=O(O(V*m)+O(O(X*o)+O(W*r)));x=O(O(V*z)+O(O(m*k)-O(T*O(O(X*r)+O(o*Ua)))));E=O(O(X*z)+O(O(o*k)-O(T*O(O(W*m)+O(r*Wa)))));z=O(O(W*z)+O(O(r*k)-O(T*O(O(V*o)+O(m*Va)))));Ha=O(Xa+O(O(ja*x)+O(O(La*E)+O(va*z))));m=O(w-ha);m=O(m+m);o=O(D-pa);o=O(o+o);r=O(s-Ba);r=O(r+r);s=O(O(S*m)+O(O(U*o)+O(R*r)));w=O(O(S*s)+O(O(m*ba)-O(y*O(O(U*r)+O(o*fa)))));D=O(O(U*s)+O(O(o*ba)-O(y*O(O(R*m)+O(r*_)))));m=O(O(R*s)+O(O(r*ba)-O(y*O(O(S*o)+O(m*ua)))));o=O(_a+O(O(Sa*w)+O(O(ya*D)+O(xa*m))));L[g+24>>2]=O(Ha+o)*O(.5);r=O(Ya+O(O(ga*x)+O(O(Ma*E)+O(wa*z))));s=O($a+O(O(Na*w)+O(O(Y*D)+O(Aa*m))));L[g+20>>2]=O(r+s)*O(.5);z=O(Za+O(O(ia*x)+O(O(za*E)+O(Ka*z))));m=O(ab+O(O(Pa*w)+O(O(Ta*D)+O(Qa*m))));L[g+16>>2]=O(z+m)*O(.5);L[g+12>>2]=ra+O(O(O(Ha-o)*L[c+8>>2])+O(O(O(z-m)*L[c>>2])+O(L[c+4>>2]*O(r-s))));z:{if(!ea){b=l+16|0;ma=-1;break z}b=l+20|0;ma=H[l+16>>2]}H[g+52>>2]=ma;g=g- -64|0;B=B+1|0;if((p|0)!=(B|0)){continue}break}}c=1;if(!f){break x}H[f+60>>2]=A;F[f+59|0]=j;F[f+58|0]=ea;G[f+56>>1]=p;L[f+52>>2]=ha;L[f+48>>2]=Ba;L[f+44>>2]=pa;L[f+40>>2]=y;L[f+36>>2]=S;L[f+32>>2]=R;L[f+28>>2]=U;L[f+24>>2]=na;L[f+20>>2]=Ca;L[f+16>>2]=qa;L[f+12>>2]=T;L[f+8>>2]=V;L[f+4>>2]=W;L[f>>2]=X;R6(f- -64|0,d,A);break x}Ra[l|0](B,da,c,b,e+7104|0,f,g,e+4|0)|0;y=L[b+24>>2];R=L[b+20>>2];S=L[c+24>>2];T=L[c+20>>2];U=L[b+16>>2];V=L[b+12>>2];W=L[b+8>>2];X=L[b+4>>2];k=L[b>>2];m=L[c+16>>2];o=L[c+12>>2];r=L[c+8>>2];ba=L[c+4>>2];ha=L[c>>2];A:{B:{l=H[e+4624>>2];if(l){A=H[e+580>>2];p=(A|0)!=-1;g=1;b=0;C:{D:{if((l|0)==1){break D}na=L[e+528>>2];E:{if(na!=L[e+592>>2]){b=1;break E}pa=L[e+536>>2];qa=L[e+532>>2];b=1;while(1){c=(g<<6)+e|0;if(qa!=L[c+532>>2]|pa!=L[c+536>>2]){break E}g=g+1|0;b=l>>>0>g>>>0;if((g|0)==(l|0)){break D}if(na==L[((g<<6)+e|0)+528>>2]){continue}break}}j=N(l,(A|0)!=-1?32:28);g=0;break C}j=N(l,p?20:16)+12|0;g=1}d=j+79&65520;G[f+4>>1]=d;c=0;B=e+512|0;d=tJ(B,d);d=(d|0)==-1?0:d;H[f>>2]=d;if(d){H[d+60>>2]=j;F[d+59|0]=g;F[d+58|0]=p;G[d+56>>1]=l;L[d+52>>2]=y;L[d+48>>2]=R;L[d+44>>2]=U;L[d+40>>2]=V;L[d+36>>2]=W;L[d+32>>2]=X;L[d+28>>2]=k;L[d+24>>2]=S;L[d+20>>2]=T;L[d+16>>2]=m;L[d+12>>2]=o;L[d+8>>2]=r;L[d+4>>2]=ba;L[d>>2]=ha;f=l>>>0>1?l:1;g=d- -64|0;if((A|0)!=-1){while(1){if((!c|b)&1){d=(c<<6)+e|0;j=H[d+528>>2];l=H[d+532>>2];L[g+8>>2]=L[d+536>>2];H[g>>2]=j;H[g+4>>2]=l;g=g+12|0}d=(c<<6)+e|0;j=H[d+544>>2];l=H[d+548>>2];L[g+8>>2]=L[d+552>>2];H[g>>2]=j;H[g+4>>2]=l;L[g+12>>2]=L[d+540>>2];H[g+16>>2]=H[d+580>>2];g=g+20|0;c=c+1|0;if((f|0)!=(c|0)){continue}break}c=0;break x}while(1){if((!c|b)&1){d=(c<<6)+e|0;j=H[d+528>>2];l=H[d+532>>2];L[g+8>>2]=L[d+536>>2];H[g>>2]=j;H[g+4>>2]=l;g=g+12|0}d=(c<<6)+e|0;j=H[d+544>>2];l=H[d+548>>2];L[g+8>>2]=L[d+552>>2];H[g>>2]=j;H[g+4>>2]=l;L[g+12>>2]=L[d+540>>2];g=g+16|0;c=c+1|0;if((f|0)!=(c|0)){continue}break}c=0;break x}G[f+4>>1]=64;b=tJ(B,64);H[f>>2]=b;F:{switch(b+1|0){case 1:break x;case 0:break B;default:break F}}H[b+60>>2]=0;F[b+59|0]=g;F[b+58|0]=p;G[b+56>>1]=0;L[b+52>>2]=y;L[b+48>>2]=R;L[b+44>>2]=U;L[b+40>>2]=V;L[b+36>>2]=W;L[b+32>>2]=X;L[b+28>>2]=k;L[b+24>>2]=S;L[b+20>>2]=T;L[b+16>>2]=m;L[b+12>>2]=o;L[b+8>>2]=r;L[b+4>>2]=ba;L[b>>2]=ha;break x}G[f+4>>1]=64;b=tJ(e+512|0,64);H[f>>2]=b;c=0;switch(b+1|0){case 1:break x;case 0:break B;default:break A}}H[f>>2]=0;break x}H[b+60>>2]=0;F[b+59|0]=j;F[b+58|0]=0;G[b+56>>1]=0;L[b+52>>2]=y;L[b+48>>2]=R;L[b+44>>2]=U;L[b+40>>2]=V;L[b+36>>2]=W;L[b+32>>2]=X;L[b+28>>2]=k;L[b+24>>2]=S;L[b+20>>2]=T;L[b+16>>2]=m;L[b+12>>2]=o;L[b+8>>2]=r;L[b+4>>2]=ba;L[b>>2]=ha}if(!c){break w}H[e+7144>>2]=H[e+7144>>2]+1;break w}Ra[l|0]($+36|0,i+36|0,c,b,e+7104|0,f,e+528|0,e+4|0)|0}b=H[(N(Z,28)+118560|0)+(h<<2)>>2];if(b){Ra[b|0]($,i,e,v)|0}G:{if(ka){break G}g=H[e+4624>>2];if(!g){break G}i=0;while(1){b=(i<<6)+e|0;L[b+536>>2]=-L[b+536>>2];L[b+532>>2]=-L[b+532>>2];L[b+528>>2]=-L[b+528>>2];b=v+(i<<2)|0;bb=b,cb=j7(H[b>>2],16),H[bb>>2]=cb;i=i+1|0;if((g|0)!=(i|0)){continue}break}}zM(J[C+40>>1],q,e,v,h>>>0>4)}Oa=v+256|0;c=Q&2;g=I[q+14|0]&2;h=I[q+13|0];H:{if(!(!h|!(J[C+40>>1]&128))){H[H[n+8>>2]+(ca<<2)>>2]=u;ca=ca+1|0;break H}b=H[n+20>>2];H[n+20>>2]=b>>>0>>0?h:b;f=I[q+15|0];if((h|0)==(f|0)){break H}i=H[H[M>>2]+48>>2];b=i+32>>>5|0;I:{if(b>>>0<=(H[e+7208>>2]&2147483647)>>>0){j=H[e+7204>>2];break I}h=H[33808]+12|0;j=Ra[H[H[h>>2]+8>>2]](h,b<<2,20591,14969,438)|0;h=H[e+7204>>2];J:{if(!h){break J}R6(j,h,H[e+7208>>2]<<2);if(H[e+7208>>2]<0){break J}h=H[e+7204>>2];if(!h){break J}d=H[33808]+12|0;Ra[H[H[d>>2]+12>>2]](d,h)}h=H[e+7208>>2];S6((h<<2)+j|0,0,b-h<<2);H[e+7208>>2]=b;H[e+7204>>2]=j;h=I[q+13|0];f=I[q+15|0]}b=(i>>>3&536870908)+j|0;H[b>>2]=H[b>>2]|1<>>0>>0){H[n+24>>2]=H[n+24>>2]+1;break H}H[n+28>>2]=H[n+28>>2]+1}if((c|0)!=(g|0)){F[C+43|0]=I[q+14|0]|I[C+43|0]&64;h=H[H[M>>2]+48>>2];b=h+32>>>5|0;K:{if(b>>>0<=(H[e+7196>>2]&2147483647)>>>0){j=H[e+7192>>2];break K}i=H[33808]+12|0;j=Ra[H[H[i>>2]+8>>2]](i,b<<2,20591,14969,438)|0;i=H[e+7192>>2];L:{if(!i){break L}R6(j,i,H[e+7196>>2]<<2);if(H[e+7196>>2]<0){break L}i=H[e+7192>>2];if(!i){break L}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,i)}i=H[e+7196>>2];S6((i<<2)+j|0,0,b-i<<2);H[e+7196>>2]=b;H[e+7192>>2]=j}b=(h>>>3&536870908)+j|0;H[b>>2]=H[b>>2]|1<>2],ca,e,n+24|0,n+28|0,n+20|0)}}H[e+7216>>2]=H[e+7216>>2]+sa;H[e+7220>>2]=H[e+7220>>2]+ta;H[e+7224>>2]=H[e+7224>>2]+H[n+24>>2];H[e+7228>>2]=H[e+7228>>2]+H[n+28>>2];H[e+7164>>2]=H[n+20>>2];if(I[n+12|0]){H5(H[n+8>>2])}Oa=n+32|0;a=H[H[a+48>>2]+304>>2];H[e>>2]=H[a>>2];H[a>>2]=e}function yu(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,k=O(0),l=0,m=O(0),n=O(0),o=O(0),p=O(0),q=0,r=O(0),s=0,t=0,u=O(0),v=0,w=0,x=O(0),y=O(0),z=O(0),A=O(0),B=0,C=0,D=O(0),E=O(0),G=O(0),K=O(0),M=O(0),P=0,Q=O(0),R=O(0),S=O(0),T=O(0),U=O(0),V=O(0),X=0,Y=O(0),Z=0,_=O(0),$=O(0),aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0;i=Oa-11312|0;Oa=i;r=L[d+20>>2];p=L[d+24>>2];u=L[c+20>>2];n=L[c+24>>2];s=H[f>>2];y=L[d>>2];M=L[d+4>>2];z=L[d+8>>2];K=L[d+12>>2];m=L[d+16>>2];D=L[c>>2];x=L[c+4>>2];E=L[c+8>>2];o=L[c+12>>2];k=L[c+16>>2];Y=L[a+4>>2];L[i+11296>>2]=Y;_=L[e>>2];H[i+11276>>2]=0;L[i+11272>>2]=n;L[i+11268>>2]=u;L[i+11264>>2]=k;L[i+11260>>2]=o;L[i+11256>>2]=E;L[i+11252>>2]=x;L[i+11248>>2]=D;H[i+11244>>2]=0;L[i+11240>>2]=p;L[i+11236>>2]=r;L[i+11232>>2]=m;L[i+11228>>2]=K;L[i+11224>>2]=z;L[i+11220>>2]=M;L[i+11216>>2]=y;R=O(O(O(E*y)-O(z*D))+O(O(x*K)-O(o*M)));T=O(O(O(x*z)-O(M*E))+O(O(D*K)-O(o*y)));G=O(O(O(D*M)-O(y*x))+O(O(E*K)-O(o*z)));A=O(-y);U=O(O(o*K)-O(O(O(D*A)-O(x*M))-O(z*E)));S=O(k-m);Q=O(u-r);r=O(n-p);p=O(O(O(A*S)-O(Q*M))-O(z*r));u=O(O(K*K)+O(-.5));k=O(O(O(u*S)+O(K*O(O(z*Q)-O(M*r))))-O(y*p));D=O(k+k);x=O(D-L[s+16>>2]);n=O(-x);k=O(O(O(u*Q)+O(K*O(O(y*r)-O(z*S))))-O(M*p));E=O(k+k);o=O(E-L[s+20>>2]);m=O(-o);k=O(O(O(K*O(O(M*S)-O(y*Q)))+O(u*r))-O(z*p));r=O(k+k);p=O(r-L[s+24>>2]);u=O(-p);n=nm?o:m;m=k<=n?n:k;k=(p>u?p:u)>=O(0)?n:O(0);a:{if(O(O(U*L[s+12>>2])+O(O(G*L[s+8>>2])+O(O(T*L[s>>2])+O(R*L[s+4>>2]))))>2];u=L[d+20>>2];n=L[c+20>>2];m=L[d+24>>2];k=L[c+24>>2];Q=L[d+8>>2];x=L[d+4>>2];z=L[d+12>>2];a=i+11200|0;H[a>>2]=0;H[a+4>>2]=1065353216;a=i+11192|0;H[a>>2]=0;H[a+4>>2]=0;a=i+11184|0;H[a>>2]=0;H[a+4>>2]=1065353216;a=i+11176|0;H[a>>2]=0;H[a+4>>2]=0;a=i+11168|0;H[a>>2]=1065353216;H[a+4>>2]=1065353216;a=i+11152|0;H[a>>2]=1065353216;H[a+4>>2]=0;F[i+11208|0]=0;H[i+11160>>2]=0;H[i+11164>>2]=0;H[i+11144>>2]=0;H[i+11148>>2]=0;H[i+11136>>2]=1065353216;H[i+11140>>2]=0;k=O(k-m);o=O(k+k);p=O(S+S);k=O(n-u);n=O(k+k);m=O(O(Q*o)+O(O(y*p)+O(x*n)));k=O(O(z*z)+O(-.5));$=O(O(Q*m)+O(O(o*k)-O(z*O(O(y*n)-O(p*x)))));K=O(O(x*m)+O(O(n*k)-O(z*O(O(Q*p)+O(o*A)))));M=O(O(y*m)+O(O(p*k)-O(z*O(O(x*o)-O(n*Q)))));Q=O(1);ba=L[b+4>>2]==O(1)&L[b+8>>2]==O(1)&L[b+12>>2]==O(1);if(!ba){yW(i+11136|0,b+4|0,b+16|0)}L[s+24>>2]=r;L[s+20>>2]=E;L[s+16>>2]=D;L[s+12>>2]=U;L[s+8>>2]=G;L[s+4>>2]=R;L[s>>2]=T;F[s+62|0]=0;H[s+28>>2]=0;F[i+11120|0]=1;H[i+11128>>2]=0;H[i+11132>>2]=1088;ca=i+6768|0;H[i+11124>>2]=ca;b=H[aa+56>>2];H[i+1012>>2]=0;L[i+3200>>2]=_;H[i+3040>>2]=2139095039;da=i+3008|0;H[i+3032>>2]=da;a=i+3024|0;H[a>>2]=0;H[a+4>>2]=0;H[i+2976>>2]=2139095039;ea=i+2944|0;H[i+2968>>2]=ea;a=i+2960|0;H[a>>2]=0;H[a+4>>2]=0;H[i+2912>>2]=2139095039;fa=i+2880|0;H[i+2904>>2]=fa;a=i+2896|0;H[a>>2]=0;H[a+4>>2]=0;H[i+2848>>2]=2139095039;ga=i+2816|0;H[i+2840>>2]=ga;a=i+2832|0;H[a>>2]=0;H[a+4>>2]=0;H[i+2784>>2]=2139095039;ha=i+2752|0;H[i+2776>>2]=ha;a=i+2768|0;H[a>>2]=0;H[a+4>>2]=0;H[i+2720>>2]=2139095039;ia=i+2688|0;H[i+2712>>2]=ia;a=i+2704|0;H[a>>2]=0;H[a+4>>2]=0;H[i+2656>>2]=2139095039;ja=i+2624|0;H[i+2648>>2]=ja;a=i+2640|0;H[a>>2]=0;H[a+4>>2]=0;H[i+2592>>2]=2139095039;ka=i+2560|0;H[i+2584>>2]=ka;a=i+2576|0;H[a>>2]=0;H[a+4>>2]=0;H[i+2528>>2]=2139095039;la=i+2496|0;H[i+2520>>2]=la;a=i+2512|0;H[a>>2]=0;H[a+4>>2]=0;H[i+2464>>2]=2139095039;ma=i+2432|0;H[i+2456>>2]=ma;a=i+2448|0;H[a>>2]=0;H[a+4>>2]=0;H[i+2400>>2]=2139095039;na=i+2368|0;H[i+2392>>2]=na;a=i+2384|0;H[a>>2]=0;H[a+4>>2]=0;H[i+2336>>2]=2139095039;oa=i+2304|0;H[i+2328>>2]=oa;a=i+2320|0;H[a>>2]=0;H[a+4>>2]=0;H[i+2272>>2]=2139095039;pa=i+2240|0;H[i+2264>>2]=pa;a=i+2256|0;H[a>>2]=0;H[a+4>>2]=0;H[i+2208>>2]=2139095039;qa=i+2176|0;H[i+2200>>2]=qa;a=i+2192|0;H[a>>2]=0;H[a+4>>2]=0;H[i+2144>>2]=2139095039;ra=i+2112|0;H[i+2136>>2]=ra;a=i+2128|0;H[a>>2]=0;H[a+4>>2]=0;H[i+2080>>2]=2139095039;sa=i+2048|0;H[i+2072>>2]=sa;a=i+2064|0;H[a>>2]=0;H[a+4>>2]=0;H[i+2016>>2]=2139095039;ta=i+1984|0;H[i+2008>>2]=ta;a=i+2e3|0;H[a>>2]=0;H[a+4>>2]=0;H[i+1952>>2]=2139095039;t=i+1920|0;H[i+1944>>2]=t;a=i+1936|0;H[a>>2]=0;H[a+4>>2]=0;H[i+1888>>2]=2139095039;j=i+1856|0;H[i+1880>>2]=j;a=i+1872|0;H[a>>2]=0;H[a+4>>2]=0;H[i+1824>>2]=2139095039;w=i+1792|0;H[i+1816>>2]=w;a=i+1808|0;H[a>>2]=0;H[a+4>>2]=0;H[i+1760>>2]=2139095039;B=i+1728|0;H[i+1752>>2]=B;a=i+1744|0;H[a>>2]=0;H[a+4>>2]=0;H[i+1696>>2]=2139095039;X=i+1664|0;H[i+1688>>2]=X;a=i+1680|0;H[a>>2]=0;H[a+4>>2]=0;H[i+1632>>2]=2139095039;Z=i+1600|0;H[i+1624>>2]=Z;a=i+1616|0;H[a>>2]=0;H[a+4>>2]=0;H[i+1568>>2]=2139095039;P=i+1536|0;H[i+1560>>2]=P;a=i+1552|0;H[a>>2]=0;H[a+4>>2]=0;H[i+1504>>2]=2139095039;v=i+1472|0;H[i+1496>>2]=v;a=i+1488|0;H[a>>2]=0;H[a+4>>2]=0;H[i+1440>>2]=2139095039;C=i+1408|0;H[i+1432>>2]=C;a=i+1424|0;H[a>>2]=0;H[a+4>>2]=0;H[i+1376>>2]=2139095039;l=i+1344|0;H[i+1368>>2]=l;a=i+1360|0;H[a>>2]=0;H[a+4>>2]=0;H[i+1312>>2]=2139095039;f=i+1280|0;H[i+1304>>2]=f;a=i+1296|0;H[a>>2]=0;H[a+4>>2]=0;H[i+1248>>2]=2139095039;e=i+1216|0;H[i+1240>>2]=e;a=i+1232|0;H[a>>2]=0;H[a+4>>2]=0;H[i+1184>>2]=2139095039;d=i+1152|0;H[i+1176>>2]=d;a=i+1168|0;H[a>>2]=0;H[a+4>>2]=0;H[i+1120>>2]=2139095039;c=i+1088|0;H[i+1112>>2]=c;a=i+1104|0;H[a>>2]=0;H[a+4>>2]=0;H[i+1056>>2]=2139095039;q=i+1024|0;H[i+1048>>2]=q;a=i+1040|0;H[a>>2]=0;H[a+4>>2]=0;F[i+160|0]=ba;H[i+156>>2]=b;H[i+148>>2]=2;H[i+144>>2]=129468;H[i+152>>2]=i+11136;E=O(Y*O(.0010000000474974513));L[i+3216>>2]=E;H[i+3240>>2]=s;H[i+3244>>2]=g;H[i+4640>>2]=0;H[i+3212>>2]=H[i+11292>>2];a=H[i+11288>>2];b=i+3204|0;H[b>>2]=H[i+11284>>2];H[b+4>>2]=a;H[i+3232>>2]=i+11248;H[i+3236>>2]=i+11216;S6(i+4512|0,255,128);H[i+4648>>2]=h;H[i+3356>>2]=0;a=i+3348|0;H[a>>2]=0;H[a+4>>2]=0;H[i+4644>>2]=ca;R=L[i+11224>>2];T=L[i+11216>>2];U=L[i+11220>>2];S=L[i+11228>>2];y=L[i+11256>>2];G=L[i+11252>>2];o=L[i+11232>>2];r=L[i+11264>>2];A=L[i+11248>>2];p=L[i+11236>>2];n=L[i+11268>>2];V=L[i+11260>>2];m=L[i+11240>>2];k=L[i+11272>>2];H[i+3340>>2]=0;H[i+3324>>2]=0;H[i+3308>>2]=0;H[i+3292>>2]=0;H[i+3344>>2]=g;H[i+3192>>2]=ea;H[i+3188>>2]=fa;H[i+3184>>2]=ga;H[i+3180>>2]=ha;H[i+3176>>2]=ia;H[i+3172>>2]=ja;H[i+3168>>2]=ka;H[i+3164>>2]=la;H[i+3160>>2]=ma;H[i+3156>>2]=na;H[i+3152>>2]=oa;H[i+3148>>2]=pa;H[i+3144>>2]=qa;H[i+3140>>2]=ra;H[i+3136>>2]=sa;H[i+3132>>2]=ta;H[i+3128>>2]=t;H[i+3124>>2]=j;H[i+3120>>2]=w;H[i+3116>>2]=B;H[i+3112>>2]=X;H[i+3108>>2]=Z;H[i+3104>>2]=P;H[i+3100>>2]=v;H[i+3096>>2]=C;H[i+3092>>2]=l;H[i+3088>>2]=f;H[i+3084>>2]=e;H[i+3080>>2]=d;H[i+3076>>2]=c;H[i+3072>>2]=q;H[i+3196>>2]=da;u=O(-A);o=O(o-r);r=O(p-n);p=O(m-k);n=O(O(O(u*o)-O(r*G))-O(y*p));m=O(O(V*V)+O(-.5));k=O(O(O(V*O(O(G*o)-O(A*r)))+O(m*p))-O(y*n));L[i+3336>>2]=k+k;k=O(O(O(m*r)+O(V*O(O(A*p)-O(y*o))))-O(G*n));L[i+3332>>2]=k+k;k=O(O(O(m*o)+O(V*O(O(y*r)-O(G*p))))-O(A*n));L[i+3328>>2]=k+k;k=O(O(O(y*U)-O(G*R))+O(O(V*T)-O(A*S)));z=O(k+k);D=O(O(O(A*R)-O(y*T))+O(O(V*U)-O(G*S)));x=O(D+D);n=O(O(1)-O(k*z));r=O(D*x);L[i+3320>>2]=n-r;A=O(O(O(G*T)-O(A*U))+O(O(V*R)-O(y*S)));m=O(A*x);o=O(O(V*S)-O(O(O(u*T)-O(U*G))-O(y*R)));k=O(o*z);L[i+3316>>2]=m-k;p=O(A*z);u=O(o*x);L[i+3312>>2]=p+u;L[i+3304>>2]=m+k;m=n;k=O(A+A);n=O(A*k);L[i+3300>>2]=m-n;m=O(D*z);k=O(o*k);L[i+3296>>2]=m-k;L[i+3288>>2]=p-u;L[i+3284>>2]=m+k;L[i+3280>>2]=O(O(1)-r)-n;L[i+4656>>2]=M;L[i+3264>>2]=E*E;L[i+4660>>2]=K;L[i+4664>>2]=$;H[i+4668>>2]=0;H[i+3248>>2]=1065286107;H[i+6756>>2]=i+4704;a=i+6760|0;H[a>>2]=0;H[a+4>>2]=64;F[i+6752|0]=1;a=H[i+11300>>2];b=i+4672|0;H[b>>2]=H[i+11296>>2];H[b+4>>2]=a;a=H[i+11308>>2];b=i+4680|0;H[b>>2]=H[i+11304>>2];H[b+4>>2]=a;k=O(_+L[i+11296>>2]);L[i+4688>>2]=k*k;L[i+136>>2]=$;L[i+132>>2]=K;L[i+128>>2]=M;k=O(Y+_);L[i+120>>2]=k;L[i+116>>2]=k;L[i+112>>2]=k;H[i+104>>2]=1065353216;H[i+88>>2]=1065353216;H[i+92>>2]=0;H[i+96>>2]=0;H[i+100>>2]=0;H[i+80>>2]=0;H[i+84>>2]=0;H[i+72>>2]=1065353216;H[i+76>>2]=0;A=O(0);n=k;D=O(0);x=O(0);E=O(1);o=O(0);r=O(0);p=O(0);u=O(1);if(ba){m=k}else{aY(i+11136|0,i+128|0,i+112|0,i+72|0);n=L[i+112>>2];$=L[i+136>>2];K=L[i+132>>2];M=L[i+128>>2];Q=L[i+104>>2];A=L[i+100>>2];D=L[i+96>>2];x=L[i+92>>2];E=L[i+88>>2];o=L[i+84>>2];r=L[i+80>>2];p=L[i+76>>2];u=L[i+72>>2];k=L[i+116>>2];m=L[i+120>>2]}L[i+56>>2]=m;L[i+52>>2]=k;L[i+44>>2]=$;L[i+40>>2]=K;L[i+32>>2]=Q;L[i+28>>2]=A;L[i+20>>2]=x;L[i+16>>2]=E;L[i+48>>2]=n;L[i+36>>2]=M;L[i+24>>2]=D;L[i+12>>2]=o;L[i+8>>2]=r;L[i+4>>2]=p;L[i>>2]=u;Ra[H[(J[aa+4>>1]<<2)+129492>>2]](aa,i,i+144|0,1,1);h=H[i+1012>>2];if(h){a=i+164|0;c=i+740|0;d=i+932|0;e=i+996|0;b=i+1024|0;while(1){k0(b,a,H[d>>2],I[e|0],c);e=e+1|0;d=d+4|0;c=c+12|0;a=a+36|0;h=h-1|0;if(h){continue}break}H[i+1012>>2]=0}c=0;e=0;v=0;X=0;t=Oa+-64|0;Oa=t;b:{Z=H[q+5736>>2];if(!Z){break b}B=H[q+5732>>2];P=32;j=Oa-48|0;Oa=j;F[j+12|0]=0;b=j-128|0;Oa=b;H[j+8>>2]=b;h=Z-1|0;c:{if((h|0)<=0){break c}while(1){d:{if((c|0)>=(h|0)){break d}while(1){if(h-c>>>0<=4){while(1){d=c;c=d+1|0;a=c;f=d;while(1){f=L[B+(a<<5)>>2]>=L[B+(f<<5)>>2]?f:a;l=(a|0)<(h|0);a=a+1|0;if(l){continue}break}if((d|0)!=(f|0)){f=B+(f<<5)|0;a=H[f+28>>2];H[j+40>>2]=H[f+24>>2];H[j+44>>2]=a;a=H[f+20>>2];H[j+32>>2]=H[f+16>>2];H[j+36>>2]=a;a=H[f+4>>2];H[j+16>>2]=H[f>>2];H[j+20>>2]=a;a=H[f+12>>2];H[j+24>>2]=H[f+8>>2];H[j+28>>2]=a;a=B+(d<<5)|0;H[f+16>>2]=H[a+16>>2];d=H[a+12>>2];H[f+8>>2]=H[a+8>>2];H[f+12>>2]=d;d=H[a+4>>2];H[f>>2]=H[a>>2];H[f+4>>2]=d;H[a+16>>2]=H[j+32>>2];d=H[j+20>>2];H[a>>2]=H[j+16>>2];H[a+4>>2]=d;d=H[j+28>>2];H[a+8>>2]=H[j+24>>2];H[a+12>>2]=d}if((c|0)!=(h|0)){continue}break d}}a=B+(c<<5)|0;k=L[a>>2];l=B+((c+h|0)/2<<5)|0;if(!(k<=L[l>>2])){d=H[a+28>>2];H[j+40>>2]=H[a+24>>2];H[j+44>>2]=d;d=H[a+20>>2];H[j+32>>2]=H[a+16>>2];H[j+36>>2]=d;d=H[a+4>>2];H[j+16>>2]=H[a>>2];H[j+20>>2]=d;d=H[a+12>>2];H[j+24>>2]=H[a+8>>2];H[j+28>>2]=d;H[a+16>>2]=H[l+16>>2];d=H[l+12>>2];H[a+8>>2]=H[l+8>>2];H[a+12>>2]=d;d=H[l+4>>2];H[a>>2]=H[l>>2];H[a+4>>2]=d;H[l+16>>2]=H[j+32>>2];d=H[j+20>>2];H[l>>2]=H[j+16>>2];H[l+4>>2]=d;d=H[j+28>>2];H[l+8>>2]=H[j+24>>2];H[l+12>>2]=d;k=L[a>>2]}m=k;f=B+(h<<5)|0;k=L[f>>2];if(!(m<=k)){d=H[a+28>>2];H[j+40>>2]=H[a+24>>2];H[j+44>>2]=d;d=H[a+20>>2];H[j+32>>2]=H[a+16>>2];H[j+36>>2]=d;d=H[a+4>>2];H[j+16>>2]=H[a>>2];H[j+20>>2]=d;d=H[a+12>>2];H[j+24>>2]=H[a+8>>2];H[j+28>>2]=d;H[a+16>>2]=H[f+16>>2];d=H[f+12>>2];H[a+8>>2]=H[f+8>>2];H[a+12>>2]=d;d=H[f+4>>2];H[a>>2]=H[f>>2];H[a+4>>2]=d;H[f+16>>2]=H[j+32>>2];a=H[j+20>>2];H[f>>2]=H[j+16>>2];H[f+4>>2]=a;a=H[j+28>>2];H[f+8>>2]=H[j+24>>2];H[f+12>>2]=a;k=L[f>>2]}if(!(k>=L[l>>2])){a=H[l+28>>2];H[j+40>>2]=H[l+24>>2];H[j+44>>2]=a;a=H[l+20>>2];H[j+32>>2]=H[l+16>>2];H[j+36>>2]=a;a=H[l+4>>2];H[j+16>>2]=H[l>>2];H[j+20>>2]=a;a=H[l+12>>2];H[j+24>>2]=H[l+8>>2];H[j+28>>2]=a;H[l+16>>2]=H[f+16>>2];a=H[f+12>>2];H[l+8>>2]=H[f+8>>2];H[l+12>>2]=a;a=H[f+4>>2];H[l>>2]=H[f>>2];H[l+4>>2]=a;H[f+16>>2]=H[j+32>>2];a=H[j+20>>2];H[f>>2]=H[j+16>>2];H[f+4>>2]=a;a=H[j+28>>2];H[f+8>>2]=H[j+24>>2];H[f+12>>2]=a}a=H[l+20>>2];H[j+32>>2]=H[l+16>>2];H[j+36>>2]=a;a=H[l+28>>2];H[j+40>>2]=H[l+24>>2];H[j+44>>2]=a;a=H[l+4>>2];H[j+16>>2]=H[l>>2];H[j+20>>2]=a;f=h-1|0;w=B+(f<<5)|0;d=w;a=H[d+4>>2];H[l>>2]=H[d>>2];H[l+4>>2]=a;a=H[l+12>>2];H[j+24>>2]=H[l+8>>2];H[j+28>>2]=a;H[l+16>>2]=H[d+16>>2];a=H[d+12>>2];H[l+8>>2]=H[d+8>>2];H[l+12>>2]=a;H[d+16>>2]=H[j+32>>2];a=H[j+20>>2];H[d>>2]=H[j+16>>2];H[d+4>>2]=a;a=H[j+28>>2];H[d+8>>2]=H[j+24>>2];H[d+12>>2]=a;a=c;while(1){k=L[w>>2];while(1){l=a;a=a+1|0;d=B+(a<<5)|0;if(!(k<=L[d>>2])){continue}break}while(1){f=f-1|0;C=B+(f<<5)|0;if(!(k>=L[C>>2])){continue}break}if((a|0)<(f|0)){l=H[d+28>>2];H[j+40>>2]=H[d+24>>2];H[j+44>>2]=l;l=H[d+20>>2];H[j+32>>2]=H[d+16>>2];H[j+36>>2]=l;l=H[d+4>>2];H[j+16>>2]=H[d>>2];H[j+20>>2]=l;l=H[d+12>>2];H[j+24>>2]=H[d+8>>2];H[j+28>>2]=l;H[d+16>>2]=H[C+16>>2];l=H[C+12>>2];H[d+8>>2]=H[C+8>>2];H[d+12>>2]=l;l=H[C+4>>2];H[d>>2]=H[C>>2];H[d+4>>2]=l;H[C+16>>2]=H[j+32>>2];d=H[j+20>>2];H[C>>2]=H[j+16>>2];H[C+4>>2]=d;d=H[j+28>>2];H[C+8>>2]=H[j+24>>2];H[C+12>>2]=d;continue}break}f=H[d+28>>2];H[j+40>>2]=H[d+24>>2];H[j+44>>2]=f;f=H[d+20>>2];H[j+32>>2]=H[d+16>>2];H[j+36>>2]=f;f=H[d+4>>2];H[j+16>>2]=H[d>>2];H[j+20>>2]=f;f=H[d+12>>2];H[j+24>>2]=H[d+8>>2];H[j+28>>2]=f;H[d+16>>2]=H[w+16>>2];f=H[w+12>>2];H[d+8>>2]=H[w+8>>2];H[d+12>>2]=f;f=H[w+4>>2];H[d>>2]=H[w>>2];H[d+4>>2]=f;H[w+16>>2]=H[j+32>>2];d=H[j+20>>2];H[w>>2]=H[j+16>>2];H[w+4>>2]=d;d=H[j+28>>2];H[w+8>>2]=H[j+24>>2];H[w+12>>2]=d;e:{if((a-c|0)<(h-a|0)){f:{if(P-1>>>0>e>>>0){a=b;break f}d=P<<3;if(d){f=H[33808];a=f+12|0;a=(va=a,wa=d,xa=Ra[H[H[f>>2]+20>>2]](f)|0?38102:55639,ya=14160,za=155,ua=H[H[a>>2]+8>>2],Ra[ua](va|0,wa|0,xa|0,ya|0,za|0)|0)}else{a=0}d=R6(a,b,e<<2);if(!(!v|!b)){f=H[33808]+12|0;Ra[H[H[f>>2]+12>>2]](f,b)}P=P<<1;v=1;b=d}a=(e<<2)+a|0;H[a>>2]=c;H[a+4>>2]=l;c=l+2|0;break e}C=l+2|0;g:{if(P-1>>>0>e>>>0){a=b;break g}d=P<<3;if(d){f=H[33808];a=f+12|0;a=(za=a,ya=d,xa=Ra[H[H[f>>2]+20>>2]](f)|0?38102:55639,wa=14160,va=155,ua=H[H[a>>2]+8>>2],Ra[ua](za|0,ya|0,xa|0,wa|0,va|0)|0)}else{a=0}d=R6(a,b,e<<2);if(!(!v|!b)){f=H[33808]+12|0;Ra[H[H[f>>2]+12>>2]](f,b)}P=P<<1;v=1;b=d}a=(e<<2)+a|0;H[a>>2]=C;H[a+4>>2]=h;h=l}e=e+2|0;if((c|0)<(h|0)){continue}break}}if(e){a=e-2|0;c=H[(a<<2)+b>>2];h=H[((e<<2)+b|0)-4>>2];e=a;continue}break}if(!v|!b){break c}a=H[33808]+12|0;Ra[H[H[a>>2]+12>>2]](a,b)}if(I[j+12|0]){H5(H[j+8>>2])}Oa=j+48|0;a=H[q+3616>>2];if((a|0)==128){break b}C=H[H[q+3620>>2]+4356>>2];j=q+2336|0;while(1){h:{if((a|0)==128){break h}h=C+N(H[(H[q+5732>>2]+(X<<5)|0)+16>>2],60)|0;l=I[h+56|0];w=H[h+44>>2];B=H[h+36>>2];v=H[h+40>>2];b=B>>>0>>0;c=b?v:B;e=b?B:v;b=c|e<<16;b=(b<<15^-1)+b|0;b=N(b>>>10^b,9);b=b>>>6^b;b=(b<<11^-1)+b|0;d=(((b>>>16^b)&127)+q|0)+3488|0;b=I[d|0];i:{if((b|0)!=255){while(1){d=(b<<3)+q|0;f=1;if(!((e|0)!=H[d+2336>>2]|(c|0)!=H[d+2340>>2])){break i}d=(b+q|0)+3360|0;b=I[d|0];if((b|0)!=255){continue}break}}F[d|0]=a;F[(a+j|0)+1024|0]=255;a=H[q+3616>>2];H[q+3616>>2]=a+1;b=j+(a<<3)|0;H[b>>2]=e;H[b+4>>2]=c;a=H[q+3616>>2];f=0}e=f;if((a|0)==128){break h}b=w>>>0>v>>>0;f=b?v:w;c=b?w:v;b=f<<16|c;b=(b<<15^-1)+b|0;b=N(b>>>10^b,9);b=b>>>6^b;b=(b<<11^-1)+b|0;d=(((b>>>16^b)&127)+q|0)+3488|0;b=I[d|0];j:{if((b|0)!=255){while(1){d=(b<<3)+q|0;v=1;if(!((f|0)!=H[d+2336>>2]|(c|0)!=H[d+2340>>2])){break j}d=(b+q|0)+3360|0;b=I[d|0];if((b|0)!=255){continue}break}}F[d|0]=a;F[(a+j|0)+1024|0]=255;a=H[q+3616>>2];H[q+3616>>2]=a+1;b=j+(a<<3)|0;H[b>>2]=f;H[b+4>>2]=c;a=H[q+3616>>2];v=0}c=v;P=0;k:{if((a|0)==128){break k}b=w>>>0>>0;v=b?w:B;f=b?B:w;b=v<<16|f;b=(b<<15^-1)+b|0;b=N(b>>>10^b,9);b=b>>>6^b;b=(b<<11^-1)+b|0;d=(((b>>>16^b)&127)+q|0)+3488|0;b=I[d|0];if((b|0)!=255){while(1){d=(b<<3)+q|0;if((v|0)==H[d+2336>>2]&(f|0)==H[d+2340>>2]){break k}d=(b+q|0)+3360|0;b=I[d|0];if((b|0)!=255){continue}break}}F[d|0]=a;F[(a+j|0)+1024|0]=255;P=1;a=H[q+3616>>2];H[q+3616>>2]=a+1;b=j+(a<<3)|0;H[b>>2]=v;H[b+4>>2]=f}if(!((l|0)!=0&P)|(c|e)){break h}b=H[h+4>>2];a=H[h>>2];k=L[h+8>>2];H[t+60>>2]=0;L[t+56>>2]=k;H[t+48>>2]=a;H[t+52>>2]=b;b=H[h+16>>2];a=H[h+12>>2];k=L[h+20>>2];H[t+44>>2]=0;L[t+40>>2]=k;H[t+32>>2]=a;H[t+36>>2]=b;L[t+16>>2]=W(L[h+24>>2]);b=H[h+48>>2];a=H[t+20>>2];H[t>>2]=H[t+16>>2];H[t+4>>2]=a;a=H[t+28>>2];H[t+8>>2]=H[t+24>>2];H[t+12>>2]=a;l0(q,t+48|0,t+32|0,t,b)}X=X+1|0;if((Z|0)==(X|0)){break b}a=H[q+3616>>2];continue}}Oa=t- -64|0;e0(q,1,0);H[i+144>>2]=129468;a=H[i+6764>>2];l:{if((a|0)<0|!(a&2147483647)){break l}b=H[i+6756>>2];if((b|0)==(i+4704|0)|!b){break l}a=H[33808];Ra[H[H[a+12>>2]+12>>2]](a+12|0,b)}a=H[i+11132>>2];if((a|0)<0|!(a&2147483647)){break a}b=H[i+11124>>2];if((b|0)==(i+6768|0)|!b){break a}a=H[33808];Ra[H[H[a+12>>2]+12>>2]](a+12|0,b);break a}a=0;H[i+204>>2]=0;L[i+200>>2]=r;L[i+196>>2]=E;H[i+188>>2]=0;H[i+172>>2]=0;n=O(R+R);m=O(G*n);o=O(T+T);k=O(U*o);L[i+180>>2]=m-k;L[i+168>>2]=m+k;k=O(O(1)-O(T*o));r=O(R*n);L[i+184>>2]=k-r;m=k;k=O(G+G);p=O(G*k);L[i+164>>2]=m-p;L[i+192>>2]=D;H[i+156>>2]=0;u=O(G*o);n=O(U*n);L[i+176>>2]=u+n;m=O(R*o);k=O(U*k);L[i+160>>2]=m-k;L[i+152>>2]=u-n;L[i+148>>2]=m+k;L[i+144>>2]=O(O(1)-r)-p;L[i+11136>>2]=Y*O(.05000000074505806);L[i>>2]=Y+_;if(!I[s+62|0]){break a}while(1){d=a+s|0;e=I[d+56|0];b=N(e,400)+s|0;f1(i+6768|0,b- -64|0,i+144|0,i+11136|0);m:{if(!H[b+448>>2]){b=I[s+62|0]-1|0;F[s+62|0]=b;c=(b&255)+s|0;b=I[c+56|0];F[c+56|0]=e;F[d+56|0]=b;a=a-1|0;break m}L[((e<<2)+s|0)+32>>2]=L[i+6768>>2]}a=a+1|0;if(a>>>0>2]!=O(1)){break a}k=0;if(L[c+8>>2]!=O(1)){break a}k=L[c+12>>2]==O(1)}j=L[a+4>>2]!=O(1)|L[a+8>>2]!=O(1)?j:L[a+12>>2]==O(1);Q=c+4|0;K=H[a+36>>2];y=H[c+32>>2];H[l+768>>2]=0;H[l+772>>2]=1065353216;H[l+760>>2]=0;H[l+764>>2]=0;H[l+752>>2]=0;H[l+756>>2]=1065353216;H[l+744>>2]=0;H[l+748>>2]=0;H[l+736>>2]=1065353216;H[l+740>>2]=1065353216;H[l+720>>2]=1065353216;H[l+724>>2]=0;F[l+776|0]=0;H[l+728>>2]=0;H[l+732>>2]=0;H[l+712>>2]=0;H[l+716>>2]=0;H[l+704>>2]=1065353216;H[l+708>>2]=0;if(!k){yW(l+704|0,Q,c+16|0)}H[l+688>>2]=0;H[l+692>>2]=1065353216;H[l+680>>2]=0;H[l+684>>2]=0;H[l+672>>2]=0;H[l+676>>2]=1065353216;H[l+664>>2]=0;H[l+668>>2]=0;H[l+656>>2]=1065353216;H[l+660>>2]=1065353216;H[l+640>>2]=1065353216;H[l+644>>2]=0;F[l+696|0]=0;H[l+648>>2]=0;H[l+652>>2]=0;H[l+632>>2]=0;H[l+636>>2]=0;H[l+624>>2]=1065353216;H[l+628>>2]=0;if(!j){yW(l+624|0,a+4|0,a+16|0)}m=L[y+16>>2];p=L[l+712>>2];q=L[y+20>>2];s=L[l+724>>2];n=L[y+24>>2];t=L[l+736>>2];u=O(O(O(m*p)+O(q*s))+O(n*t));M=p;p=L[y+28>>2];X=s;s=L[y+32>>2];Y=t;t=L[y+36>>2];v=O(O(O(P(O(M*p)))+O(P(O(X*s))))+O(P(O(Y*t))));L[l+620>>2]=u+v;o=L[l+708>>2];r=L[l+720>>2];w=L[l+732>>2];z=O(O(O(m*o)+O(q*r))+O(n*w));o=O(O(O(P(O(o*p)))+O(P(O(r*s))))+O(P(O(w*t))));L[l+616>>2]=z+o;M=m;m=L[l+704>>2];X=q;q=L[l+716>>2];Y=n;n=L[l+728>>2];r=O(O(O(M*m)+O(X*q))+O(Y*n));m=O(O(O(P(O(m*p)))+O(P(O(q*s))))+O(P(O(n*t))));L[l+612>>2]=r+m;L[l+608>>2]=u-v;L[l+604>>2]=z-o;L[l+600>>2]=r-m;q=L[d+4>>2];p=O(q+q);m=L[d+8>>2];u=O(p*m);s=L[d>>2];n=O(s+s);t=L[d+12>>2];v=O(n*t);L[l+60>>2]=u-v;L[l+52>>2]=u+v;s=O(O(1)-O(s*n));u=O(q*p);L[l- -64>>2]=s-u;M=s;s=O(m+m);v=O(m*s);L[l+48>>2]=M-v;m=O(n*m);p=O(p*t);L[l+56>>2]=m+p;q=O(n*q);n=O(s*t);L[l+44>>2]=q-n;L[l+40>>2]=m-p;L[l+36>>2]=q+n;L[l+32>>2]=O(O(1)-u)-v;L[l+68>>2]=L[d+16>>2];L[l+72>>2]=L[d+20>>2];L[l+76>>2]=L[d+24>>2];q=L[b+4>>2];p=O(q+q);m=L[b+8>>2];u=O(p*m);s=L[b>>2];n=O(s+s);t=L[b+12>>2];v=O(n*t);L[l+516>>2]=u-v;L[l+508>>2]=u+v;s=O(O(1)-O(s*n));u=O(q*p);L[l+520>>2]=s-u;M=s;s=O(m+m);v=O(m*s);L[l+504>>2]=M-v;m=O(n*m);p=O(p*t);L[l+512>>2]=m+p;q=O(n*q);n=O(s*t);L[l+500>>2]=q-n;L[l+496>>2]=m-p;L[l+492>>2]=q+n;L[l+488>>2]=O(O(1)-u)-v;L[l+524>>2]=L[b+16>>2];L[l+528>>2]=L[b+20>>2];L[l+532>>2]=L[b+24>>2];cZ(l+536|0,l+600|0,O(0),l+32|0,l+488|0,l+624|0,j);L[l+588>>2]=L[l+588>>2]+i;L[l+592>>2]=L[l+592>>2]+i;L[l+584>>2]=L[l+584>>2]+i;q=L[b+8>>2];o=L[e+8>>2];n=O(o+o);p=L[b>>2];r=L[e>>2];s=O(r+r);w=L[e+4>>2];t=O(w+w);u=L[b+4>>2];v=O(O(q*n)+O(O(p*s)+O(t*u)));m=L[b+12>>2];z=O(O(m*m)+O(-.5));C=O(O(O(p*v)+O(O(s*z)-O(m*O(O(u*n)-O(t*q)))))*f);E=O(O(O(u*v)+O(O(t*z)-O(m*O(O(q*s)-O(n*p)))))*f);n=O(O(O(q*v)+O(O(n*z)-O(m*O(O(p*t)-O(s*u)))))*f);m=O(O(O(L[l+668>>2]*C)+O(E*L[l+680>>2]))+O(n*L[l+692>>2]));L[l+496>>2]=m;q=O(O(O(L[l+664>>2]*C)+O(E*L[l+676>>2]))+O(n*L[l+688>>2]));L[l+492>>2]=q;n=O(O(O(L[l+660>>2]*C)+O(E*L[l+672>>2]))+O(n*L[l+684>>2]));L[l+488>>2]=n;z=O(W(O(O(m*m)+O(O(n*n)+O(q*q)))));if(z>O(0)){s=m;m=O(O(1)/z);L[l+496>>2]=s*m;L[l+492>>2]=q*m;L[l+488>>2]=n*m}D=I[a+32|0];x=J[h>>1];G[l+8>>1]=x;L[l+24>>2]=-o;L[l+20>>2]=-w;L[l+16>>2]=-r;B=Oa-32|0;Oa=B;A=I[l+696|0];k=l+32|0;H[k+4>>2]=2;T=J[l+8>>1];L[k+16>>2]=j?O(1):O(z/f);F[k+12|0]=A;G[k+10>>1]=0;G[k+8>>1]=T;H[k+64>>2]=0;H[k+68>>2]=0;H[k>>2]=128640;H[k+72>>2]=0;H[k+76>>2]=0;H[k+80>>2]=0;H[k+84>>2]=0;H[k+88>>2]=0;H[k+92>>2]=0;F[k+96|0]=0;H[k+272>>2]=0;H[k+276>>2]=0;H[k+280>>2]=0;H[k+284>>2]=0;H[k+228>>2]=0;H[k+232>>2]=0;H[k+236>>2]=0;H[k+240>>2]=0;H[k+248>>2]=0;H[k+252>>2]=0;H[k+256>>2]=0;H[k+260>>2]=0;H[k+224>>2]=1065353216;H[k+244>>2]=1065353216;H[k+264>>2]=1065353216;H[k+268>>2]=0;H[k+312>>2]=0;H[k+316>>2]=0;H[k+304>>2]=0;H[k+308>>2]=0;H[k+320>>2]=l+624;H[k+288>>2]=0;H[k+292>>2]=0;H[k+296>>2]=0;H[k+300>>2]=1065353216;H[k+324>>2]=0;H[k+328>>2]=0;G[k+336>>1]=0;H[k+340>>2]=0;H[k+344>>2]=0;H[k+348>>2]=0;H[k+352>>2]=0;H[k+356>>2]=0;H[k+360>>2]=0;L[k+416>>2]=L[l+16>>2];L[k+420>>2]=L[l+20>>2];m=L[l+24>>2];j=D&2;D=x&128;Ea=(j|D)!=0;F[k+445|0]=Ea;x=(x&64)>>>6|0;F[k+444|0]=x;L[k+440>>2]=i;L[k+424>>2]=m;L[k+364>>2]=f;H[k+332>>2]=-1;q=L[b+8>>2];m=L[l+24>>2];n=O(m+m);p=L[b>>2];m=L[l+16>>2];s=O(m+m);m=L[l+20>>2];t=O(m+m);u=L[b+4>>2];v=O(O(q*n)+O(O(p*s)+O(t*u)));m=L[b+12>>2];o=O(O(m*m)+O(-.5));L[k+436>>2]=O(q*v)+O(O(n*o)-O(m*O(O(p*t)-O(s*u))));L[k+432>>2]=O(u*v)+O(O(t*o)-O(m*O(O(q*s)-O(n*p))));L[k+428>>2]=O(p*v)+O(O(s*o)-O(m*O(O(u*n)-O(t*q))));w=L[b+20>>2];E=L[b+24>>2];s=L[d+20>>2];C=L[d+24>>2];ha=L[l+20>>2];_=L[l+16>>2];fa=L[l+24>>2];t=L[b+8>>2];u=L[b>>2];v=L[b+4>>2];o=L[b+12>>2];R=L[b+16>>2];p=L[d>>2];m=L[d+4>>2];q=L[d+8>>2];n=L[d+12>>2];r=L[d+16>>2];H[k+412>>2]=0;H[k+316>>2]=0;L[k+312>>2]=C;L[k+308>>2]=s;L[k+304>>2]=r;L[k+300>>2]=n;L[k+296>>2]=q;L[k+292>>2]=m;L[k+288>>2]=p;H[k+284>>2]=0;H[k+268>>2]=0;H[k+252>>2]=0;H[k+236>>2]=0;U=O(-p);r=O(R-r);w=O(w-s);C=O(E-C);E=O(O(O(U*r)-O(w*m))-O(q*C));s=O(O(n*n)+O(-.5));R=O(O(O(n*O(O(m*r)-O(p*w)))+O(s*C))-O(q*E));L[k+280>>2]=R+R;R=O(O(O(s*w)+O(n*O(O(p*C)-O(q*r))))-O(m*E));L[k+276>>2]=R+R;r=O(O(O(s*r)+O(n*O(O(q*w)-O(m*C))))-O(p*E));L[k+272>>2]=r+r;w=O(O(O(v*q)-O(m*t))+O(O(u*n)-O(o*p)));r=O(w+w);C=O(O(O(t*p)-O(q*u))+O(O(v*n)-O(o*m)));E=O(C+C);R=O(O(1)-O(w*r));$=O(C*E);L[k+264>>2]=R-$;w=O(O(O(u*m)-O(p*v))+O(O(t*n)-O(o*q)));aa=O(w*E);t=O(O(o*n)-O(O(O(U*u)-O(v*m))-O(q*t)));u=O(t*r);L[k+260>>2]=aa-u;v=O(w*r);o=O(t*E);L[k+256>>2]=v+o;L[k+248>>2]=aa+u;u=O(w+w);w=O(w*u);L[k+244>>2]=R-w;r=O(C*r);t=O(t*u);L[k+240>>2]=r-t;L[k+232>>2]=v-o;L[k+228>>2]=r+t;L[k+224>>2]=O(O(1)-$)-w;t=O(O(-fa)*f);u=O(O(-_)*f);v=O(O(-ha)*f);o=O(O(q*t)+O(O(p*u)+O(m*v)));r=O(O(q*o)+O(O(t*s)-O(n*O(O(p*v)-O(u*m)))));L[k+408>>2]=r+r;r=O(O(m*o)+O(O(v*s)-O(n*O(O(q*u)-O(t*p)))));L[k+404>>2]=r+r;m=O(O(p*o)+O(O(u*s)-O(n*O(O(m*t)-O(v*q)))));L[k+400>>2]=m+m;L[k+384>>2]=f;f=L[Q>>2];m=L[Q+4>>2];q=L[Q+8>>2];H[B+28>>2]=0;L[B+24>>2]=q;L[B+20>>2]=m;L[B+16>>2]=f;A=H[Q+12>>2];T=H[Q+16>>2];S=H[Q+24>>2];H[B+8>>2]=H[Q+20>>2];H[B+12>>2]=S;H[B>>2]=A;H[B+4>>2]=T;Q=H[y+56>>2];A=I[y+55|0];n=O(f*L[y+68>>2]);p=O(m*L[y+72>>2]);n=n<=p?n:p;p=O(q*L[y+76>>2]);n=n<=p?n:p;L[k+84>>2]=n*O(.05000000074505806);L[k+88>>2]=n*O(.02500000037252903);L[k+80>>2]=n*O(.10000000149011612);CU(B+16|0,B,k+112|0,k+160|0,k- -64|0,f==O(1)&m==O(1)&q==O(1));H[k+216>>2]=Q+N(A,20);Q=I[y+54|0];H[k+64>>2]=0;H[k+68>>2]=0;F[k+220|0]=Q;H[k+72>>2]=0;H[k+76>>2]=0;Q=H[y+60>>2];H[k+208>>2]=y+16;H[k+212>>2]=Q;Oa=B+32|0;Ra[H[(J[K+4>>1]<<2)+128704>>2]](K,l+536|0,l+488|0,z,k,x);h=(J[h>>1]&512)>>>9|0;y=D>>>7|0;B=j>>>1|0;Fa=I[k+10|0];b:{if(!Fa){break b}if(I[k+11|0]){c:{d:{e:{if(!h){G[g+12>>1]=1026;break e}Q=b;p=O(0);m=O(0);q=O(0);n=O(0);s=O(0);t=O(0);fa=O(0);R=O(0);U=O(0);j=Oa-6096|0;Oa=j;na=H[a+36>>2];Ga=H[na+56>>2];K=H[c+32>>2];H[j+1980>>2]=0;u=O(1);f=L[c+8>>2];o=L[c+4>>2];y=0;f:{if(o!=O(1)){break f}y=0;if(f!=O(1)){break f}y=L[c+12>>2]==O(1)}b=j+1968|0;H[b>>2]=0;H[b+4>>2]=1065353216;b=j+1960|0;H[b>>2]=0;H[b+4>>2]=0;b=j+1952|0;H[b>>2]=0;H[b+4>>2]=1065353216;b=j+1944|0;H[b>>2]=0;H[b+4>>2]=0;b=j+1936|0;H[b>>2]=1065353216;H[b+4>>2]=1065353216;b=j+1920|0;H[b>>2]=1065353216;H[b+4>>2]=0;F[j+1976|0]=0;H[j+1928>>2]=0;H[j+1932>>2]=0;H[j+1912>>2]=0;H[j+1916>>2]=0;H[j+1904>>2]=1065353216;H[j+1908>>2]=0;v=O(1);_=O(1);if(!y){yW(j+1904|0,c+4|0,c+16|0);o=L[c+4>>2];u=L[j+1936>>2];p=L[j+1932>>2];m=L[j+1928>>2];q=L[j+1924>>2];v=L[j+1920>>2];n=L[j+1916>>2];s=L[j+1912>>2];t=L[j+1908>>2];_=L[j+1904>>2];f=L[c+8>>2]}r=L[K+44>>2];C=L[d+20>>2];E=L[d+24>>2];w=L[K+48>>2];z=L[K+40>>2];b=H[d>>2];h=H[d+4>>2];B=H[d+12>>2];x=H[d+8>>2];ha=L[d+16>>2];H[j+1900>>2]=0;L[j+1896>>2]=E;L[j+1892>>2]=C;L[j+1888>>2]=ha;H[j+1880>>2]=x;H[j+1884>>2]=B;H[j+1872>>2]=b;H[j+1876>>2]=h;$=L[c+12>>2];H[j+1868>>2]=0;L[j+1864>>2]=$;L[j+1856>>2]=o;L[j+1860>>2]=f;b=H[c+16>>2];h=H[c+20>>2];B=H[c+28>>2];H[j+1848>>2]=H[c+24>>2];H[j+1852>>2]=B;H[j+1840>>2]=b;H[j+1844>>2]=h;F[j+1712|0]=0;b=j+1704|0;H[b>>2]=0;H[b+4>>2]=0;h=j+1696|0;H[h>>2]=0;H[h+4>>2]=0;H[j+1688>>2]=0;H[j+1692>>2]=0;H[j+1680>>2]=0;H[j+1684>>2]=0;H[j+1824>>2]=K+16;H[j+1832>>2]=H[K+56>>2]+N(I[K+55|0],20);F[j+1836|0]=I[K+54|0];o=O(o*L[K+68>>2]);f=O(f*L[K+72>>2]);f=f>=o?o:f;o=O($*L[K+76>>2]);f=f<=o?f:o;L[b>>2]=f*O(.02500000037252903);L[h>>2]=f*O(.10000000149011612);L[j+1700>>2]=f*O(.05000000074505806);Ha=j+1728|0;Ia=j+1776|0;b=j+1680|0;CU(j+1856|0,j+1840|0,Ha,Ia,b,y);H[j+1828>>2]=H[K+60>>2];f=O(L[K+68>>2]*L[j+1856>>2]);o=O(L[K+72>>2]*L[j+1860>>2]);f=f<=o?f:o;o=O(L[K+76>>2]*L[j+1864>>2]);$=O(O((f<=o?f:o)*O(.25))+i);L[j+1600>>2]=$;H[j+1592>>2]=0;H[j+1584>>2]=0;H[j+1588>>2]=0;Dv(j+1584|0,128);Ja=a+4|0;nW(j+1536|0,Q,Ja);R0(b,y,j+1464|0);L[j+1416>>2]=L[d>>2];L[j+1420>>2]=L[d+4>>2];L[j+1424>>2]=L[d+8>>2];L[j+1428>>2]=L[d+12>>2];Va=y?125820:125868;Wa=O(O(O(z*s)+O(r*q))+O(w*u));Xa=O(O(O(z*t)+O(r*v))+O(w*p));Ya=O(O(O(z*_)+O(r*n))+O(w*m));b=268435455;u=O(0);p=O(0);m=O(0);q=O(0);v=O(0);n=O(0);_=O(0);s=O(0);t=O(0);g:{h:{while(1){i:{L[j+1440>>2]=E;L[j+1436>>2]=C;L[j+1432>>2]=ha;H[j+1588>>2]=0;H[j+1900>>2]=0;L[j+1896>>2]=E;L[j+1892>>2]=C;L[j+1888>>2]=ha;F[j+1660|0]=y;H[j+1656>>2]=Ia;H[j+1652>>2]=Ha;H[j+1616>>2]=Va;H[j+1644>>2]=0;L[j+1640>>2]=Wa;L[j+1636>>2]=Xa;L[j+1632>>2]=Ya;H[j+1648>>2]=j+1872;H[j+1664>>2]=j+1680;h=j+1352|0;fZ(h,c,K,j+1416|0);L[j+1400>>2]=$+L[j+1400>>2];L[j+1404>>2]=$+L[j+1404>>2];L[j+1408>>2]=$+L[j+1408>>2];d=H[a+36>>2];dZ(j,h,Q,Ja);H[j+1280>>2]=126420;H[j+1288>>2]=j+1584;H[j+1284>>2]=2;Ra[H[(J[d+4>>1]<<2)+126440>>2]](d,j,j+1280|0,1,1);B=H[j+1588>>2];if(!B){break i}w=L[j+1580>>2];z=L[j+1572>>2];aa=L[j+1576>>2];ja=L[j+1436>>2];ka=L[j+1432>>2];la=L[j+1440>>2];ba=L[j+1544>>2];ca=L[j+1536>>2];ua=L[j+1540>>2];va=L[j+1556>>2];wa=L[j+1548>>2];xa=L[j+1552>>2];M=L[j+1568>>2];X=L[j+1560>>2];Y=L[j+1564>>2];f=L[j+1428>>2];i=L[j+1416>>2];o=L[j+1424>>2];r=L[j+1420>>2];H[j+1340>>2]=0;H[j+1324>>2]=0;H[j+1308>>2]=0;H[j+1292>>2]=0;da=O(O(-i)-i);ea=O(-o);Ka=O(da*ea);ga=O(-r);V=O(ga-r);La=O(f*V);Z=O(Ka-La);pa=O(f*da);Ma=O(V*ea);ia=O(pa+Ma);Na=O(O(i*da)+O(1));Pa=O(V*ga);V=O(Na-Pa);L[j+1320>>2]=O(O(X*Z)+O(Y*ia))+O(M*V);L[j+1304>>2]=O(O(Z*wa)+O(ia*xa))+O(V*va);L[j+1288>>2]=O(O(ca*Z)+O(ua*ia))+O(V*ba);la=O(la*O(-2));ka=O(ka*O(-2));ja=O(ja*O(-2));ya=O(O(o*la)+O(O(i*ka)+O(r*ja)));za=O(O(f*f)+O(-.5));L[j+1336>>2]=O(O(o*ya)+O(O(la*za)-O(f*O(O(i*ja)-O(ka*r)))))+O(O(O(Z*z)+O(ia*aa))+O(V*w));ia=O(da*ga);Z=O(ea-o);V=O(f*Z);da=O(ia+V);ga=O(Z*ea);ea=O(Na-ga);Z=O(Ma-pa);L[j+1316>>2]=O(O(X*da)+O(Y*ea))+O(M*Z);pa=X;X=O(O(O(1)-Pa)-ga);ga=Y;Y=O(ia-V);V=M;M=O(Ka+La);L[j+1312>>2]=O(O(pa*X)+O(ga*Y))+O(V*M);L[j+1300>>2]=O(O(da*wa)+O(ea*xa))+O(Z*va);L[j+1296>>2]=O(O(X*wa)+O(Y*xa))+O(M*va);L[j+1284>>2]=O(Z*ba)+O(O(ca*da)+O(ua*ea));L[j+1280>>2]=O(M*ba)+O(O(ca*X)+O(ua*Y));L[j+1332>>2]=O(O(r*ya)+O(O(ja*za)-O(f*O(O(o*ka)-O(la*i)))))+O(O(O(da*z)+O(ea*aa))+O(Z*w));L[j+1328>>2]=O(O(i*ya)+O(O(ka*za)-O(f*O(O(r*la)-O(ja*o)))))+O(O(O(X*z)+O(Y*aa))+O(M*w));d=B+31|0;if(d>>>0<32){break i}Za=d>>>5|0;i=O(3.4028234663852886e38);qa=0;d=B;Aa=0;while(1){Ba=qa<<5;h=B-Ba|0;Ca=h>>>0<32?h:32;j:{if(!Ca){H[j+6088>>2]=H[j+1456>>2];h=H[j+1452>>2];H[j+6080>>2]=H[j+1448>>2];H[j+6084>>2]=h;T=0;break j}ra=d>>>0<32?d:32;f=O(O(L[a+4>>2]*L[a+8>>2])*L[a+12>>2]);sa=H[j+1584>>2];ta=I[na+64|0]&2;D=H[na+24>>2];x=0;while(1){T=H[sa+(x+Ba<<2)>>2];k:{if(ta){h=H[na+28>>2]+N(T,6)|0;S=J[h+4>>1];ma=J[h+2>>1];A=J[h>>1];break k}h=H[na+28>>2]+N(T,12)|0;S=H[h+8>>2];ma=H[h+4>>2];A=H[h>>2]}h=j+N(x,40)|0;A=D+N(A,12)|0;L[h>>2]=L[A>>2];L[h+4>>2]=L[A+4>>2];L[h+8>>2]=L[A+8>>2];oa=f>2]=L[A>>2];L[h+16>>2]=L[A+4>>2];L[h+20>>2]=L[A+8>>2];A=D+N(oa?ma:S,12)|0;L[h+24>>2]=L[A>>2];L[h+28>>2]=L[A+4>>2];L[h+32>>2]=L[A+8>>2];F[h+36|0]=Ga?I[T+Ga|0]:56;x=x+1|0;if((ra|0)!=(x|0)){continue}break}H[j+6088>>2]=H[j+1456>>2];h=H[j+1452>>2];H[j+6080>>2]=H[j+1448>>2];H[j+6084>>2]=h;T=0;A=0;if(!Ca){break j}while(1){H[j+1980>>2]=0;x=j+N(A,40)|0;h=A+Ba|0;j0(j+1464|0,j+1616|0,x,h,I[x+36|0],j+1600|0,Ea,j+1872|0,j+1280|0,j+1984|0,j+1980|0);S=H[j+1980>>2];l:{if(!S){break l}x=0;f=L[j+2028>>2];m:{if((S|0)==1){break m}x=S-1|0;ma=x&3;T=0;D=1;n:{if(S-2>>>0<3){x=0;break n}_a=x&-4;x=0;S=0;while(1){o=L[(j+(D<<6)|0)+2028>>2];ra=o>2];f=ra?o:f;sa=r>2];f=sa?r:f;ta=o>2];f=ta?o:f;oa=r>2];S=o>2];n=L[b+32>>2];u=L[b+24>>2];p=L[b+20>>2];q=L[b+40>>2];v=L[b+36>>2];b=h;i=f}A=A+1|0;if((Ca|0)!=(A|0)){continue}break}}H[j+1456>>2]=H[j+6088>>2];h=H[j+6084>>2];H[j+1448>>2]=H[j+6080>>2];H[j+1452>>2]=h;d=d-32|0;Aa=T|Aa;qa=qa+1|0;if((Za|0)!=(qa|0)){continue}break}if(!(Aa&1)){break i}f=L[j+1880>>2];o=L[j+1872>>2];r=L[j+1876>>2];U=O(O(f*u)+O(O(o*m)+O(p*r)));w=L[j+1884>>2];z=O(O(w*w)+O(-.5));fa=O(O(f*U)+O(O(w*O(O(o*p)-O(m*r)))+O(u*z)));fa=O(L[j+1896>>2]+O(fa+fa));R=O(O(r*U)+O(O(w*O(O(f*m)-O(u*o)))+O(p*z)));R=O(L[j+1892>>2]+O(R+R));U=O(O(o*U)+O(O(w*O(O(r*u)-O(p*f)))+O(m*z)));U=O(L[j+1888>>2]+O(U+U));aa=O(O(f*q)+O(O(o*n)+O(v*r)));ba=O(O(f*aa)+O(O(w*O(O(o*v)-O(n*r)))+O(q*z)));ba=O(ba+ba);ca=O(O(r*aa)+O(O(w*O(O(f*n)-O(q*o)))+O(v*z)));ca=O(ca+ca);f=O(O(o*aa)+O(O(w*O(O(r*q)-O(v*f)))+O(n*z)));f=O(f+f);b=H[H[j+1584>>2]+(b<<2)>>2];if(!(i<=O(0))){Ua=1;if(Da){break i}L[g+36>>2]=ba;L[g+32>>2]=ca;L[g+28>>2]=f;L[g+24>>2]=fa;L[g+20>>2]=R;L[g+16>>2]=U;H[g+40>>2]=0;H[g+8>>2]=b;break h}o=O(i*ba);E=O(E-o);r=O(i*ca);C=O(C-r);f=O(i*f);ha=O(ha-f);_=O(_-o);s=O(s-r);t=O(t-f);Ua=1;Da=Da+1|0;if((Da|0)!=2){continue}}break}a=0;if(!Ua){break g}L[g+24>>2]=fa;L[g+20>>2]=R;L[g+16>>2]=U;H[g+8>>2]=b;f=O(W(O(O(_*_)+O(O(t*t)+O(s*s)))));L[g+40>>2]=-f;i=O(O(1)/f);a=f>O(0);L[g+36>>2]=a?O(_*i):O(0);L[g+32>>2]=a?O(s*i):O(0);L[g+28>>2]=a?O(t*i):O(0)}a=1}b=H[j+1592>>2];o:{if((b|0)<0|!(b&2147483647)){break o}b=H[j+1584>>2];if(!b){break o}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}Oa=j+6096|0;G[g+12>>1]=1026;if(a){break d}}H[g+40>>2]=0;f=L[e>>2];i=L[e+4>>2];L[g+36>>2]=-L[e+8>>2];L[g+32>>2]=-i;L[g+28>>2]=-f;break c}if(L[g+40>>2]==O(0)){f=L[e>>2];i=L[e+4>>2];L[g+36>>2]=-L[e+8>>2];L[g+32>>2]=-i;L[g+28>>2]=-f}G[g+12>>1]=1027}H[g+8>>2]=H[k+332>>2];break b}a=H[k+328>>2];H[g>>2]=H[k+324>>2];H[g+4>>2]=a;H[g+8>>2]=H[k+332>>2];G[g+12>>1]=J[k+336>>1];L[g+16>>2]=L[k+340>>2];L[g+20>>2]=L[k+344>>2];L[g+24>>2]=L[k+348>>2];f=L[k+352>>2];i=L[k+356>>2];p=L[k+360>>2];L[g+40>>2]=L[k+364>>2];a=H[k+368>>2];m=O(-p);L[g+36>>2]=m;q=O(-i);L[g+32>>2]=q;n=O(-f);L[g+28>>2]=n;H[g+44>>2]=a;f=O(W(O(O(p*p)+O(O(f*f)+O(i*i)))));if(f>O(0)){f=O(O(1)/f);m=O(f*m);L[g+36>>2]=m;q=O(f*q);L[g+32>>2]=q;n=O(f*n);L[g+28>>2]=n}if(B|!y){break b}i=L[b+8>>2];f=L[k+20>>2];v=O(L[k+32>>2]-f);p=L[k+24>>2];t=O(L[k+48>>2]-p);f=O(L[k+44>>2]-f);u=O(L[k+36>>2]-p);p=O(O(v*t)-O(f*u));p=O(p+p);s=L[b>>2];M=u;u=L[k+28>>2];o=O(L[k+52>>2]-u);r=O(L[k+40>>2]-u);t=O(O(M*o)-O(t*r));t=O(t+t);u=L[b+4>>2];f=O(O(r*f)-O(o*v));v=O(f+f);o=O(O(i*p)+O(O(s*t)+O(u*v)));f=L[b+12>>2];r=O(O(f*f)+O(-.5));if(!(O(O(O(O(i*o)+O(O(p*r)+O(f*O(O(s*v)-O(t*u)))))*L[e+8>>2])+O(O(O(O(s*o)+O(O(t*r)+O(f*O(O(u*p)-O(v*i)))))*L[e>>2])+O(L[e+4>>2]*O(O(u*o)+O(O(v*r)+O(f*O(O(i*t)-O(p*s))))))))>O(0))){break b}L[g+36>>2]=-m;L[g+32>>2]=-q;L[g+28>>2]=-n}Oa=l+784|0;return(Fa|0)!=0|0}function A_(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=O(f);g=g|0;h=h|0;i=O(i);var j=0,k=O(0),l=0,m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=0,A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),K=O(0),M=O(0),Q=O(0),R=O(0),S=O(0),T=O(0),U=0,V=O(0),X=0,Y=O(0),Z=O(0),_=O(0),$=O(0),aa=0,ba=O(0),ca=O(0),da=0,ea=O(0),fa=O(0),ga=O(0),ha=O(0),ia=0,ja=O(0),ka=O(0),la=0,ma=O(0),na=O(0),oa=0,pa=0,qa=O(0),ra=O(0),sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0,Aa=0,Ba=0,Ca=O(0),Da=O(0),Ea=O(0),Fa=O(0),Ga=0,Ha=0,Ia=0,Ja=0,Ka=0,La=0,Ma=0,Na=0,Pa=0,Qa=0;l=Oa-368|0;Oa=l;a:{b:{if(!(L[b+4>>2]==O(1)&L[b+8>>2]==O(1))){la=(I[b+32|0]&2)>>>1|0;U=(J[h>>1]&128)>>>7|0;break b}X=1;la=(I[b+32|0]&2)>>>1|0;U=(J[h>>1]&128)>>>7|0;if(L[b+12>>2]!=O(1)){break b}q=L[c>>2];m=O(O(-q)-q);u=L[c+8>>2];k=O(-u);r=O(m*k);w=L[c+4>>2];n=O(-w);o=O(n-w);C=L[c+12>>2];v=O(o*C);S=O(r-v);K=L[c+16>>2];p=O(L[d+36>>2]-K);s=O(o*k);Z=O(m*C);A=O(s+Z);x=L[c+20>>2];t=O(L[d+40>>2]-x);_=O(O(q*m)+O(1));M=O(o*n);B=O(_-M);y=L[c+24>>2];o=O(L[d+44>>2]-y);L[l+344>>2]=O(O(S*p)+O(A*t))+O(B*o);m=O(m*n);n=O(k-u);T=O(C*n);$=O(m+T);k=O(n*k);Y=O(_-k);Q=O(s-Z);L[l+340>>2]=O(O($*p)+O(Y*t))+O(Q*o);R=O(O(O(1)-M)-k);T=O(m-T);D=O(r+v);L[l+336>>2]=O(O(R*p)+O(T*t))+O(D*o);s=L[d>>2];k=L[d+4>>2];n=L[d+8>>2];M=L[d+48>>2];o=L[d+12>>2];p=L[d+16>>2];t=L[d+20>>2];E=L[d+52>>2];m=L[d+24>>2];r=L[d+28>>2];v=L[d+32>>2];V=L[d+56>>2];Z=O(O(O(O(P(O(O(O(S*s)+O(A*k))+O(B*n))))*M)+O(O(P(O(O(O(S*o)+O(A*p))+O(B*t))))*E))+O(O(P(O(O(O(S*m)+O(A*r))+O(B*v))))*V));_=O(O(O(O(P(O(O(O($*s)+O(Y*k))+O(Q*n))))*M)+O(O(P(O(O(O($*o)+O(Y*p))+O(Q*t))))*E))+O(O(P(O(O(O($*m)+O(Y*r))+O(Q*v))))*V));M=O(O(O(O(P(O(O(O(R*s)+O(T*k))+O(D*n))))*M)+O(O(P(O(O(O(R*o)+O(T*p))+O(D*t))))*E))+O(O(P(O(O(O(R*m)+O(T*r))+O(D*v))))*V));E=L[e>>2];V=L[e+4>>2];ka=B;B=L[e+8>>2];S=O(O(O(O(S*E)+O(A*V))+O(ka*B))*f);A=O(O(O(O($*E)+O(Y*V))+O(Q*B))*f);B=O(O(O(O(R*E)+O(T*V))+O(D*B))*f);E=O(w+w);Q=O(u*E);D=O(q+q);R=O(C*D);$=O(Q-R);T=O(D*u);V=O(E*C);Y=O(T+V);Q=O(Q+R);ba=O(D*w);ea=O(u+u);fa=O(C*ea);C=O(ba-fa);R=O(T-V);T=O(ba+fa);q=O(O(1)-O(q*D));w=O(w*E);D=O(q-w);u=O(u*ea);E=O(q-u);V=O(O(O(1)-w)-u);q=L[d+44>>2];w=L[d+40>>2];u=L[d+36>>2];break a}nW(l+16|0,c,b+4|0);q=O(1);u=O(1);m=O(1);o=L[b+20>>2];p=O(o+o);k=L[b+24>>2];y=O(k+k);s=L[c>>2];t=O(s+s);n=L[c+8>>2];ga=O(t*n);r=L[c+4>>2];w=O(r+r);C=L[c+12>>2];ha=O(w*C);v=O(ga-ha);Ca=O(O(1)-O(s*t));ma=O(r*w);$=O(Ca-ma);E=O(o*p);ca=O(k*y);s=O(O(O(1)-E)-ca);Y=L[b+4>>2];Q=L[b+16>>2];K=O(Q+Q);V=O(K*k);R=L[b+28>>2];ba=O(p*R);x=O(V+ba);T=O(Y*x);na=O(K*o);y=O(y*R);o=O(na+y);qa=O(p*k);ra=O(K*R);k=O(qa-ra);R=L[b+8>>2];D=O(k*R);p=O(V-ba);Da=O(O(1)-O(Q*K));K=O(Da-E);Q=L[b+12>>2];E=O(K*Q);V=O(O(O(s*T)+O(o*D))+O(p*E));ba=O(Y*s);ea=O(o*R);fa=O(p*Q);ja=O(O(O(s*ba)+O(o*ea))+O(p*fa));Ea=O(w*n);Fa=O(t*C);w=O(Ea+Fa);ka=s;s=O(na-y);Y=O(Y*s);y=O(Da-ca);R=O(y*R);ca=p;p=O(qa+ra);Q=O(p*Q);ca=O(O(O(ka*Y)+O(o*R))+O(ca*Q));o=O(O($*V)+O(O(v*ja)+O(w*ca)));ga=O(ga+ha);ha=O(O(O(s*T)+O(y*D))+O(p*E));ka=n;n=O(n+n);qa=O(ka*n);ma=O(O(O(1)-ma)-qa);na=O(O(O(s*ba)+O(y*ea))+O(p*fa));ra=O(t*r);n=O(n*C);t=O(ra-n);r=O(O(O(s*Y)+O(y*R))+O(p*Q));s=O(O(ga*ha)+O(O(ma*na)+O(t*r)));C=O(Ea-Fa);y=O(O(O(x*T)+O(k*D))+O(K*E));T=O(ra+n);D=O(O(O(x*ba)+O(k*ea))+O(K*fa));E=O(Ca-qa);k=O(O(O(x*Y)+O(k*R))+O(K*Q));K=O(O(C*y)+O(O(T*D)+O(E*k)));n=O(O(ga*y)+O(O(ma*D)+O(t*k)));x=O(O(C*ha)+O(O(T*na)+O(E*r)));Y=O(O(s*K)-O(n*x));p=O(O(ga*V)+O(O(ma*ja)+O(t*ca)));y=O(O($*y)+O(O(v*D)+O(w*k)));t=O(O($*ha)+O(O(v*na)+O(w*r)));v=O(O(x*y)-O(K*t));r=O(O(C*V)+O(O(T*ja)+O(E*ca)));w=O(y*s);k=O(O(o*Y)+O(O(p*v)+O(r*O(O(t*n)-w))));if(k!=O(0)){k=O(O(1)/k);m=O(O(O(p*x)+O(r*O(-s)))*k);A=O(O(O(r*t)-O(x*o))*k);Z=O(k*O(-O(O(p*t)-O(s*o))));B=O(k*O(-O(w+O(n*O(-t)))));S=O(k*O(-O(O(r*y)-O(o*K))));_=O(Y*k);M=O(k*O(-O(O(p*K)-O(n*r))));q=O(v*k);u=O(O(O(p*y)-O(n*o))*k)}y=L[l+60>>2];x=L[l+56>>2];D=L[l+48>>2];$=L[l+44>>2];Q=L[l+36>>2];E=L[l+32>>2];K=L[l+52>>2];Y=L[l+40>>2];C=L[l+28>>2];R=L[l+24>>2];T=L[l+20>>2];V=L[l+16>>2];k=L[c+24>>2];o=L[c+20>>2];n=L[c+16>>2];L[l+312>>2]=m;L[l+308>>2]=M;L[l+300>>2]=Z;L[l+296>>2]=u;L[l+288>>2]=A;o=O(-o);L[l+324>>2]=O(O(Z*o)-O(A*n))-O(m*k);L[l+284>>2]=S;L[l+320>>2]=O(O(u*o)-O(S*n))-O(M*k);L[l+280>>2]=q;L[l+292>>2]=B;L[l+304>>2]=_;L[l+316>>2]=O(O(B*o)-O(q*n))-O(_*k);eZ(l+16|0,l+280|0,d);o=L[l+44>>2];p=L[l+32>>2];m=L[l+72>>2];t=L[l+48>>2];k=L[l+68>>2];r=L[l+36>>2];v=L[l+40>>2];S=L[l+16>>2];s=L[l+28>>2];_=L[l+20>>2];n=L[l+64>>2];Z=L[l+24>>2];u=L[d+36>>2];A=L[l+288>>2];w=L[d+40>>2];B=L[l+300>>2];q=L[d+44>>2];ba=L[l+312>>2];L[l+344>>2]=O(O(O(u*A)+O(w*B))+O(q*ba))+L[l+324>>2];ea=L[l+284>>2];fa=L[l+296>>2];ja=L[l+308>>2];L[l+340>>2]=O(O(O(u*ea)+O(w*fa))+O(q*ja))+L[l+320>>2];ca=L[l+280>>2];ga=L[l+292>>2];ha=L[l+304>>2];L[l+336>>2]=O(O(O(u*ca)+O(w*ga))+O(q*ha))+L[l+316>>2];Z=O(O(m*O(P(t)))+O(O(n*O(P(Z)))+O(k*O(P(r)))));_=O(O(m*O(P(o)))+O(O(n*O(P(_)))+O(k*O(P(p)))));M=O(O(m*O(P(v)))+O(O(n*O(P(S)))+O(k*O(P(s)))));m=O(L[e>>2]*f);k=O(L[e+4>>2]*f);n=O(L[e+8>>2]*f);S=O(O(O(A*m)+O(B*k))+O(ba*n));A=O(O(O(ea*m)+O(fa*k))+O(ja*n));B=O(O(O(ca*m)+O(ga*k))+O(ha*n));v=L[d+32>>2];r=L[d+28>>2];t=L[d+20>>2];p=L[d+16>>2];m=L[d+24>>2];o=L[d+12>>2];n=L[d+8>>2];k=L[d+4>>2];s=L[d>>2];X=0}L[l+360>>2]=O(Z+i)*O(1.0099999904632568);L[l+356>>2]=O(_+i)*O(1.0099999904632568);L[l+352>>2]=O(M+i)*O(1.0099999904632568);L[l+312>>2]=O(O(Y*m)+O($*r))+O(D*v);L[l+308>>2]=O(O(Y*o)+O($*p))+O(D*t);L[l+300>>2]=O(O(C*m)+O(E*r))+O(Q*v);L[l+296>>2]=O(O(C*o)+O(E*p))+O(Q*t);u=O(-u);L[l+324>>2]=O(O(O(K*m)+O(x*r))+O(y*v))+O(O(O(m*u)-O(r*w))-O(v*q));L[l+320>>2]=O(O(O(K*o)+O(x*p))+O(y*t))+O(O(O(o*u)-O(p*w))-O(t*q));L[l+304>>2]=O(O(Y*s)+O($*k))+O(D*n);L[l+292>>2]=O(O(C*s)+O(E*k))+O(Q*n);L[l+288>>2]=O(O(V*m)+O(T*r))+O(R*v);L[l+284>>2]=O(O(V*o)+O(T*p))+O(R*t);L[l+280>>2]=O(O(V*s)+O(T*k))+O(R*n);L[l+316>>2]=O(O(O(K*s)+O(x*k))+O(y*n))+O(O(O(s*u)-O(k*w))-O(n*q));z=l+16|0;j=ZZ(z,d);L[l+248>>2]=L[j>>2];L[l+252>>2]=L[j+4>>2];L[l+256>>2]=L[j+8>>2];L[l+260>>2]=L[j+12>>2];L[l+264>>2]=L[d+36>>2];L[l+268>>2]=L[d+40>>2];L[l+272>>2]=L[d+44>>2];u=L[e>>2];x=k;k=L[e+4>>2];ka=n;n=L[e+8>>2];q=O(O(O(s*u)+O(x*k))+O(ka*n));L[l+232>>2]=q;o=O(O(O(o*u)+O(p*k))+O(t*n));L[l+236>>2]=o;m=O(O(O(m*u)+O(r*k))+O(v*n));L[l+240>>2]=m;L[l+224>>2]=m*f;L[l+220>>2]=o*f;L[l+216>>2]=q*f;j=O(O(L[b+4>>2]*L[b+8>>2])*L[b+12>>2])>2]=2;h=J[h>>1];m=O(W(O(O(S*S)+O(O(B*B)+O(A*A)))));m=m>O(9999999747378752e-21)?m:O(9999999747378752e-21);L[z+16>>2]=X?O(1):O(m/f);F[z+12|0]=j;G[z+10>>1]=0;G[z+8>>1]=h;j=U|la;F[z+176|0]=j;L[z+60>>2]=i;H[z+56>>2]=e;h=l+232|0;H[z+52>>2]=h;H[z+48>>2]=d;L[z+24>>2]=f;H[z+20>>2]=l+280;H[z>>2]=128620;d=H[l+216>>2];e=H[l+220>>2];i=L[l+224>>2];H[z+156>>2]=0;L[z+152>>2]=i;H[z+144>>2]=d;H[z+148>>2]=e;L[z+32>>2]=f;L[z+28>>2]=f;f=L[h>>2];i=L[h+4>>2];k=L[h+8>>2];L[z+172>>2]=k!=O(0)?O(O(1)/k):O(0);L[z+168>>2]=i!=O(0)?O(O(1)/i):O(0);L[z+164>>2]=f!=O(0)?O(O(1)/f):O(0);f=O(O(1)/m);L[l+8>>2]=S*f;L[l+4>>2]=A*f;L[l>>2]=B*f;s_(l+336|0,l,m,j,a,z,l+352|0);e=l+248|0;oa=Oa-16|0;Oa=oa;d=z;Ga=I[d+10|0];c:{if(!Ga){break c}k=L[d+136>>2];n=L[d+132>>2];u=L[d+120>>2];S=L[d+116>>2];o=L[d+128>>2];q=L[d+112>>2];H[g+8>>2]=H[d+160>>2];if(I[d+11|0]){d:{e:{if(!(I[d+9|0]&2)){b=H[d+56>>2];G[g+12>>1]=1026;break e}a=H[d+48>>2];u=L[d+60>>2];Na=I[d+176|0];k=O(0);n=O(0);o=O(0);p=O(0);t=O(0);r=O(0);v=O(0);Z=O(0);_=O(0);M=O(0);j=Oa-6128|0;Oa=j;sa=H[b+36>>2];Ha=H[sa+56>>2];H[j+2012>>2]=0;H[j+2008>>2]=0;H[j+2e3>>2]=0;H[j+2004>>2]=0;Dv(j+2e3|0,128);L[j+1936>>2]=L[a>>2];L[j+1940>>2]=L[a+4>>2];L[j+1944>>2]=L[a+8>>2];L[j+1948>>2]=L[a+12>>2];L[j+1952>>2]=L[a+16>>2];L[j+1956>>2]=L[a+20>>2];L[j+1960>>2]=L[a+24>>2];L[j+1964>>2]=L[a+28>>2];L[j+1968>>2]=L[a+32>>2];K=L[a+36>>2];L[j+1972>>2]=K;x=L[a+40>>2];L[j+1976>>2]=x;y=L[a+44>>2];L[j+1980>>2]=y;S=L[e+24>>2];h=H[e>>2];U=H[e+4>>2];la=H[e+8>>2];aa=H[e+12>>2];X=H[e+16>>2];e=H[e+20>>2];f=L[a+48>>2];i=L[a+52>>2];q=f<=i?f:i;m=L[a+56>>2];q=m>=q?q:m;s=O(q*O(.15000000596046448));u=O(s+u);L[j+1920>>2]=u;L[j+1992>>2]=m+u;L[j+1988>>2]=i+u;L[j+1984>>2]=f+u;H[j+1916>>2]=0;L[j+1912>>2]=m;L[j+1908>>2]=i;F[j+1888|0]=0;H[j+1884>>2]=3;H[j+1856>>2]=0;H[j+1860>>2]=0;H[j+1864>>2]=0;H[j+1868>>2]=0;L[j+1904>>2]=f;f=O(q*O(.05000000074505806));L[j+1880>>2]=f;L[j+1876>>2]=f;L[j+1872>>2]=s;Q0(lZ(j+1560|0,a+48|0),j+1784|0);a=j+1528|0;H[a>>2]=0;H[a+4>>2]=0;H[j+1524>>2]=1065353216;a=j+1536|0;H[a>>2]=0;H[a+4>>2]=0;a=j+1544|0;H[a>>2]=1065353216;H[a+4>>2]=0;H[j+1508>>2]=0;H[j+1512>>2]=0;H[j+1504>>2]=1065353216;H[j+1516>>2]=0;H[j+1520>>2]=0;z=c;Ia=b+4|0;nW(j+1456|0,c,Ia);H[j+1452>>2]=0;L[j+1448>>2]=S;H[j+1440>>2]=X;H[j+1444>>2]=e;H[j+1432>>2]=la;H[j+1436>>2]=aa;H[j+1424>>2]=h;H[j+1428>>2]=U;la=j+1360|0;a=268435455;u=O(0);S=O(0);f:{g:{while(1){h:{H[j+2004>>2]=0;c=H[b+36>>2];dZ(j,j+1936|0,z,Ia);H[j+1344>>2]=126420;H[j+1352>>2]=j+2e3;H[j+1348>>2]=2;Ra[H[(J[c+4>>1]<<2)+126440>>2]](c,j,j+1344|0,1,1);h=H[j+2004>>2];if(!h){break h}H[j+1452>>2]=0;L[j+1448>>2]=y;L[j+1444>>2]=x;L[j+1440>>2]=K;F[j+1388|0]=1;H[j+1344>>2]=125908;c=j+1504|0;H[j+1384>>2]=c;H[j+1380>>2]=c;H[j+1376>>2]=j+1424;H[j+1392>>2]=j+1856;c=la;H[c+8>>2]=0;H[c+12>>2]=0;H[c>>2]=0;H[c+4>>2]=0;$=L[j+1980>>2];ha=L[j+1972>>2];Y=L[j+1976>>2];Q=L[j+1500>>2];R=L[j+1492>>2];T=L[j+1496>>2];D=L[j+1464>>2];E=L[j+1456>>2];V=L[j+1460>>2];ba=L[j+1476>>2];ea=L[j+1468>>2];fa=L[j+1472>>2];f=L[j+1944>>2];i=L[j+1936>>2];m=L[j+1940>>2];q=L[j+1956>>2];s=L[j+1948>>2];A=L[j+1952>>2];ja=L[j+1488>>2];B=L[j+1968>>2];ca=L[j+1480>>2];w=L[j+1960>>2];ga=L[j+1484>>2];C=L[j+1964>>2];H[j+1340>>2]=0;H[j+1324>>2]=0;H[j+1308>>2]=0;H[j+1292>>2]=0;L[j+1320>>2]=O(O(w*ca)+O(C*ga))+O(B*ja);L[j+1316>>2]=O(O(s*ca)+O(A*ga))+O(q*ja);L[j+1312>>2]=O(O(i*ca)+O(m*ga))+O(f*ja);L[j+1304>>2]=O(O(w*ea)+O(C*fa))+O(B*ba);L[j+1300>>2]=O(O(s*ea)+O(A*fa))+O(q*ba);L[j+1296>>2]=O(O(i*ea)+O(m*fa))+O(f*ba);L[j+1288>>2]=O(O(w*E)+O(C*V))+O(B*D);L[j+1284>>2]=O(O(s*E)+O(A*V))+O(q*D);L[j+1280>>2]=O(O(i*E)+O(m*V))+O(f*D);D=O(-ha);L[j+1336>>2]=O(O(O(w*D)-O(C*Y))-O(B*$))+O(O(O(w*R)+O(C*T))+O(B*Q));L[j+1332>>2]=O(O(O(s*D)-O(A*Y))-O(q*$))+O(O(O(s*R)+O(A*T))+O(q*Q));L[j+1328>>2]=O(O(O(i*D)-O(m*Y))-O(f*$))+O(O(O(i*R)+O(m*T))+O(f*Q));c=h+31|0;if(c>>>0<32){break h}Pa=c>>>5|0;i=O(3.4028234663852886e38);ua=0;c=h;ya=0;while(1){za=ua<<5;e=h-za|0;Aa=e>>>0<32?e:32;i:{if(!Aa){H[j+6120>>2]=H[j+1416>>2];e=H[j+1412>>2];H[j+6112>>2]=H[j+1408>>2];H[j+6116>>2]=e;ia=0;break i}va=c>>>0<32?c:32;f=O(O(L[b+4>>2]*L[b+8>>2])*L[b+12>>2]);wa=H[j+2e3>>2];xa=I[sa+64|0]&2;aa=H[sa+24>>2];U=0;while(1){ia=H[wa+(U+za<<2)>>2];j:{if(xa){e=H[sa+28>>2]+N(ia,6)|0;da=J[e+4>>1];pa=J[e+2>>1];X=J[e>>1];break j}e=H[sa+28>>2]+N(ia,12)|0;da=H[e+8>>2];pa=H[e+4>>2];X=H[e>>2]}e=j+N(U,40)|0;X=aa+N(X,12)|0;L[e>>2]=L[X>>2];L[e+4>>2]=L[X+4>>2];L[e+8>>2]=L[X+8>>2];ta=f>2]=L[X>>2];L[e+16>>2]=L[X+4>>2];L[e+20>>2]=L[X+8>>2];X=aa+N(ta?pa:da,12)|0;L[e+24>>2]=L[X>>2];L[e+28>>2]=L[X+4>>2];L[e+32>>2]=L[X+8>>2];F[e+36|0]=Ha?I[ia+Ha|0]:56;U=U+1|0;if((va|0)!=(U|0)){continue}break}H[j+6120>>2]=H[j+1416>>2];e=H[j+1412>>2];H[j+6112>>2]=H[j+1408>>2];H[j+6116>>2]=e;ia=0;X=0;if(!Aa){break i}while(1){H[j+2012>>2]=0;U=j+N(X,40)|0;e=X+za|0;j0(j+1784|0,j+1344|0,U,e,I[U+36|0],j+1920|0,Na,j+1424|0,j+1280|0,j+2016|0,j+2012|0);da=H[j+2012>>2];k:{if(!da){break k}U=0;f=L[j+2060>>2];l:{if((da|0)==1){break l}U=da-1|0;pa=U&3;ia=0;aa=1;m:{if(da-2>>>0<3){U=0;break m}Qa=U&-4;U=0;da=0;while(1){m=L[(j+(aa<<6)|0)+2060>>2];va=m>2];f=va?m:f;wa=q>2];f=wa?q:f;xa=m>2];f=xa?m:f;ta=q>2];da=m>2];n=L[a+32>>2];u=L[a+24>>2];S=L[a+20>>2];o=L[a+40>>2];p=L[a+36>>2];a=e;i=f}X=X+1|0;if((Aa|0)!=(X|0)){continue}break}}H[j+1416>>2]=H[j+6120>>2];e=H[j+6116>>2];H[j+1408>>2]=H[j+6112>>2];H[j+1412>>2]=e;c=c-32|0;ya=ia|ya;ua=ua+1|0;if((Pa|0)!=(ua|0)){continue}break}if(!(ya&1)){break h}f=L[j+1432>>2];m=L[j+1424>>2];q=L[j+1428>>2];M=O(O(f*u)+O(O(m*k)+O(S*q)));s=L[j+1436>>2];A=O(O(s*s)+O(-.5));Z=O(O(f*M)+O(O(s*O(O(m*S)-O(k*q)))+O(u*A)));Z=O(L[j+1448>>2]+O(Z+Z));_=O(O(q*M)+O(O(s*O(O(f*k)-O(u*m)))+O(S*A)));_=O(L[j+1444>>2]+O(_+_));M=O(O(m*M)+O(O(s*O(O(q*u)-O(S*f)))+O(k*A)));M=O(L[j+1440>>2]+O(M+M));B=O(O(f*o)+O(O(m*n)+O(p*q)));w=O(O(f*B)+O(O(s*O(O(m*p)-O(n*q)))+O(o*A)));w=O(w+w);C=O(O(q*B)+O(O(s*O(O(f*n)-O(o*m)))+O(p*A)));C=O(C+C);f=O(O(m*B)+O(O(s*O(O(q*o)-O(p*f)))+O(n*A)));f=O(f+f);a=H[H[j+2e3>>2]+(a<<2)>>2];if(!(i<=O(0))){Ma=1;if(Ba){break h}L[g+36>>2]=w;L[g+32>>2]=C;L[g+28>>2]=f;L[g+24>>2]=Z;L[g+20>>2]=_;L[g+16>>2]=M;H[g+40>>2]=0;H[g+8>>2]=a;break g}m=O(i*w);y=O(y-m);L[j+1980>>2]=y;q=O(i*C);x=O(x-q);L[j+1976>>2]=x;f=O(i*f);K=O(K-f);L[j+1972>>2]=K;t=O(t-m);r=O(r-q);v=O(v-f);Ma=1;Ba=Ba+1|0;if((Ba|0)!=4){continue}}break}b=0;if(!Ma){break f}L[g+24>>2]=Z;L[g+20>>2]=_;L[g+16>>2]=M;H[g+8>>2]=a;f=O(W(O(O(t*t)+O(O(v*v)+O(r*r)))));L[g+40>>2]=-f;i=O(O(1)/f);a=f>O(0);L[g+36>>2]=a?O(t*i):O(0);L[g+32>>2]=a?O(r*i):O(0);L[g+28>>2]=a?O(v*i):O(0)}b=1}a=b;b=H[j+2008>>2];n:{if((b|0)<0|!(b&2147483647)){break n}b=H[j+2e3>>2];if(!b){break n}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}Oa=j+6128|0;b=H[d+56>>2];G[g+12>>1]=1026;if(a){break d}}H[g+40>>2]=0;f=L[b>>2];i=L[b+4>>2];L[g+36>>2]=-L[b+8>>2];L[g+32>>2]=-i;L[g+28>>2]=-f;break c}if(L[g+40>>2]==O(0)){f=L[b>>2];i=L[b+4>>2];L[g+36>>2]=-L[b+8>>2];L[g+32>>2]=-i;L[g+28>>2]=-f}G[g+12>>1]=1027;break c}f=L[d+24>>2];G[g+12>>1]=1024;L[g+40>>2]=f;z=g+12|0;a=J[d+8>>1];if(a&256){b=H[d+48>>2];G[oa+8>>1]=a;d=d- -64|0;c=Oa-32|0;Oa=c;o:{if(!(I[oa+8|0]&3)){break o}s1(c+16|0,c,b+48|0,h,d,f);a=J[oa+8>>1];if(a&2){f=L[c+8>>2];i=L[c>>2];m=L[c+4>>2];k=O(W(O(O(f*f)+O(O(i*i)+O(m*m)))));if(k>O(0)){k=O(O(1)/k);f=O(f*k);L[c+8>>2]=f;m=O(m*k);i=O(i*k)}k=L[h+8>>2];n=L[h>>2];o=L[h+4>>2];if(O(O(f*k)+O(O(i*n)+O(m*o)))>O(0)){m=O(-m);L[c+4>>2]=m;i=O(-i);f=O(-f)}p:{if(la|!U){break p}p=L[d>>2];t=O(L[d+12>>2]-p);r=L[d+4>>2];v=O(L[d+28>>2]-r);p=O(L[d+24>>2]-p);r=O(L[d+16>>2]-r);x=O(O(O(t*v)-O(p*r))*k);s=r;k=L[d+8>>2];r=O(L[d+32>>2]-k);k=O(L[d+20>>2]-k);if(!(O(x+O(O(O(O(s*r)-O(v*k))*n)+O(o*O(O(k*p)-O(r*t)))))>O(0))){break p}i=O(-i);L[c>>2]=i;f=O(-f);m=O(-m)}k=L[b+28>>2];n=L[b+16>>2];o=L[b+32>>2];p=L[b+20>>2];t=L[b+4>>2];r=L[b+8>>2];L[g+28>>2]=O(O(i*L[b>>2])+O(m*L[b+12>>2]))+O(f*L[b+24>>2]);L[g+36>>2]=O(O(i*r)+O(m*p))+O(f*o);L[g+32>>2]=O(O(i*t)+O(m*n))+O(f*k);G[z>>1]=J[z>>1]|2;a=J[oa+8>>1]}if(!(a&1)){break o}k=L[b+40>>2];n=L[b+28>>2];o=L[b+16>>2];p=L[b+44>>2];t=L[b+32>>2];r=L[b+20>>2];v=L[b+4>>2];u=L[b+8>>2];f=L[c+16>>2];i=L[c+20>>2];m=L[c+24>>2];L[g+16>>2]=O(O(O(f*L[b>>2])+O(i*L[b+12>>2]))+O(m*L[b+24>>2]))+L[b+36>>2];L[g+24>>2]=p+O(O(O(f*u)+O(i*r))+O(m*t));L[g+20>>2]=k+O(O(O(f*v)+O(i*o))+O(m*n));G[z>>1]=J[z>>1]|1}Oa=c+32|0;break c}s=L[e+24>>2];Z=L[e+20>>2];p=L[e+12>>2];t=L[e+8>>2];r=L[e+4>>2];v=L[e>>2];_=L[e+16>>2];G[z>>1]=1027;f=O(-k);i=O(-n);m=O(-o);q:{if(la|!U){break q}M=L[d+64>>2];K=O(L[d+76>>2]-M);x=L[d+68>>2];y=O(L[d+92>>2]-x);M=O(L[d+88>>2]-M);x=O(L[d+80>>2]-x);ka=O(O(O(K*y)-O(M*x))*L[h+8>>2]);B=x;x=L[d+72>>2];A=O(L[d+96>>2]-x);x=O(L[d+84>>2]-x);if(!(O(ka+O(O(O(O(B*A)-O(y*x))*L[h>>2])+O(L[h+4>>2]*O(O(x*M)-O(A*K)))))>O(0))){break q}m=o;i=n;f=k}k=O(O(p*p)+O(-.5));n=O(O(t*f)+O(O(v*m)+O(r*i)));o=O(O(O(p*O(O(v*i)-O(m*r)))+O(k*f))+O(t*n));L[g+36>>2]=o+o;o=O(O(r*n)+O(O(k*i)+O(p*O(O(t*m)-O(f*v)))));L[g+32>>2]=o+o;f=O(O(v*n)+O(O(k*m)+O(p*O(O(r*f)-O(i*t)))));L[g+28>>2]=f+f;f=O(O(t*u)+O(O(v*q)+O(S*r)));i=O(O(t*f)+O(O(p*O(O(v*S)-O(q*r)))+O(u*k)));L[g+24>>2]=s+O(i+i);i=O(O(r*f)+O(O(p*O(O(t*q)-O(u*v)))+O(S*k)));L[g+20>>2]=Z+O(i+i);f=O(O(v*f)+O(O(p*O(O(r*u)-O(S*t)))+O(q*k)));L[g+16>>2]=_+O(f+f)}Oa=oa+16|0;Oa=l+368|0;return(Ga|0)!=0|0}function _1(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=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=0,F=O(0),K=O(0),M=0,N=O(0),P=O(0),Q=O(0),T=0;c=Oa-288|0;Oa=c;H[c+140>>2]=a;H[c+136>>2]=a;a=H[e+12>>2];H[d+8>>2]=H[e+8>>2];H[d+12>>2]=a;a=H[e+4>>2];H[d>>2]=H[e>>2];H[d+4>>2]=a;$1(c+224|0,c+192|0,e,f,g);n=L[f+20>>2];r=L[f+16>>2];t=L[c+212>>2];s=L[c+208>>2];u=L[c+216>>2];L[b+8>>2]=u-L[f+24>>2];L[b+4>>2]=t-n;L[b>>2]=s-r;n=L[f+20>>2];r=L[f+16>>2];L[c+152>>2]=u-L[f+24>>2];L[c+148>>2]=t-n;L[c+144>>2]=s-r;n=L[g+20>>2];r=L[g+24>>2];q=L[g+16>>2];L[c+188>>2]=u;L[c+184>>2]=t;x=L[c+248>>2];L[c+176>>2]=x;y=L[c+244>>2];L[c+172>>2]=y;L[c+164>>2]=u-r;L[c+160>>2]=t-n;L[c+180>>2]=s;w=L[c+240>>2];L[c+168>>2]=w;L[c+156>>2]=s-q;E=H[e+460>>2];p=L[c+224>>2];a:{if(h){k=L[c+196>>2];l=L[c+200>>2];m=L[c+204>>2];o=L[c+192>>2];q=L[c+236>>2];r=L[c+232>>2];n=L[c+228>>2];break a}q=L[c+236>>2];m=L[c+204>>2];r=L[c+232>>2];l=L[c+200>>2];o=L[c+192>>2];n=L[c+228>>2];k=L[c+196>>2];if(!(O(O(q*m)+O(O(r*l)+O(O(p*o)+O(n*k))))>2]=m;l=O(-l);L[c+200>>2]=l;k=O(-k);L[c+196>>2]=k;o=O(-o);L[c+192>>2]=o}h=H[e+456>>2];a=H[e+452>>2];F=O(-p);s=O(s-w);s=O(s+s);t=O(t-y);y=O(t+t);t=O(u-x);u=O(t+t);x=O(O(O(F*s)-O(y*n))-O(r*u));t=O(O(q*q)+O(-.5));C=O(O(O(u*t)+O(q*O(O(s*n)-O(p*y))))-O(r*x));L[c+128>>2]=C;A=O(O(O(y*t)+O(q*O(O(u*p)-O(r*s))))-O(n*x));L[c+124>>2]=A;L[c+116>>2]=O(r*l)+O(O(n*k)+O(O(q*m)+O(p*o)));L[c+112>>2]=O(o*n)+O(O(O(q*l)-O(m*r))-O(p*k));L[c+108>>2]=O(l*p)+O(O(O(q*k)-O(m*n))-O(r*o));L[c+104>>2]=O(k*r)+O(O(O(q*o)-O(m*p))-O(n*l));L[c+120>>2]=O(O(s*t)+O(q*O(O(y*r)-O(n*u))))-O(p*x);k=O(p+p);m=O(O(1)-O(p*k));l=O(n+n);o=O(n*l);L[c+96>>2]=m-o;s=O(l*r);u=O(k*q);L[c+92>>2]=s-u;L[c+84>>2]=s+u;v=m;m=O(r+r);s=O(r*m);L[c+80>>2]=v-s;u=O(k*r);l=O(l*q);L[c+88>>2]=u+l;k=O(k*n);m=O(m*q);L[c+76>>2]=k-m;w=O(u-l);L[c+72>>2]=w;m=O(k+m);L[c+68>>2]=m;o=O(O(O(1)-o)-s);L[c+64>>2]=o;u=L[c+196>>2];l=O(u+u);s=L[c+200>>2];v=O(l*s);y=L[c+192>>2];k=O(y+y);x=L[c+204>>2];z=O(k*x);L[c+52>>2]=v-z;L[c+44>>2]=v+z;v=O(O(1)-O(y*k));z=O(u*l);L[c+56>>2]=v-z;D=v;v=O(s+s);B=O(s*v);L[c+40>>2]=D-B;D=O(k*s);l=O(l*x);L[c+48>>2]=D+l;k=O(k*u);v=O(v*x);L[c+36>>2]=k-v;L[c+32>>2]=D-l;L[c+28>>2]=k+v;L[c+24>>2]=O(O(1)-z)-B;b:{if(!(E&7)){break b}z=L[e+424>>2];B=L[e+420>>2];b=H[c+140>>2];c:{if(!(E&1)){d=b;break c}D=L[e+416>>2];N=L[e+428>>2];d=b+80|0;H[c+140>>2]=d;K=L[c+120>>2];L[b+8>>2]=w;L[b+4>>2]=m;L[b>>2]=o;G[b+78>>1]=0;o=L[c+152>>2];w=L[c+144>>2];v=L[c+148>>2];k=L[c+64>>2];l=L[c+68>>2];m=L[c+72>>2];L[b+40>>2]=m;L[b+36>>2]=l;L[b+32>>2]=k;L[b+24>>2]=O(w*l)-O(k*v);L[b+20>>2]=O(o*k)-O(m*w);L[b+16>>2]=O(v*m)-O(l*o);o=L[c+164>>2];w=L[c+156>>2];v=L[c+160>>2];L[b+28>>2]=-N;L[b+12>>2]=D-K;L[b+56>>2]=O(w*l)-O(k*v);L[b+52>>2]=O(o*k)-O(m*w);L[b+48>>2]=O(v*m)-O(l*o);G[b+76>>1]=J[b+76>>1]|(H[e+316>>2]&1?35:33);L[b+64>>2]=L[e+304>>2];L[b+68>>2]=L[e+308>>2];k=L[e+312>>2];L[b+60>>2]=k;L[b+44>>2]=-k}d:{if(!(E&2)){b=d;break d}D=L[e+432>>2];b=d+80|0;H[c+140>>2]=b;G[d+78>>1]=0;L[d>>2]=L[c+76>>2];L[d+4>>2]=L[c+80>>2];L[d+8>>2]=L[c+84>>2];k=L[c+80>>2];o=L[c+152>>2];w=L[c+144>>2];v=L[c+148>>2];l=L[c+76>>2];m=L[c+84>>2];L[d+40>>2]=m;L[d+36>>2]=k;L[d+32>>2]=l;L[d+24>>2]=O(w*k)-O(l*v);L[d+20>>2]=O(o*l)-O(m*w);L[d+16>>2]=O(v*m)-O(k*o);o=L[c+164>>2];w=L[c+156>>2];v=L[c+160>>2];L[d+28>>2]=-D;L[d+12>>2]=B-A;L[d+56>>2]=O(w*k)-O(l*v);L[d+52>>2]=O(o*l)-O(m*w);L[d+48>>2]=O(v*m)-O(k*o);G[d+76>>1]=J[d+76>>1]|(H[e+332>>2]&1?35:33);L[d+64>>2]=L[e+320>>2];L[d+68>>2]=L[e+324>>2];k=L[e+328>>2];L[d+60>>2]=k;L[d+44>>2]=-k}if(!(E&4)){break b}A=L[e+436>>2];H[c+140>>2]=b+80;G[b+78>>1]=0;L[b>>2]=L[c+88>>2];L[b+4>>2]=L[c+92>>2];L[b+8>>2]=L[c+96>>2];k=L[c+96>>2];l=L[c+152>>2];m=L[c+144>>2];o=L[c+92>>2];w=L[c+88>>2];v=L[c+148>>2];L[b+24>>2]=O(m*o)-O(w*v);L[b+20>>2]=O(l*w)-O(k*m);L[b+16>>2]=O(v*k)-O(o*l);k=L[c+88>>2];L[b+32>>2]=k;l=L[c+92>>2];L[b+36>>2]=l;m=L[c+96>>2];L[b+40>>2]=m;o=L[c+164>>2];w=L[c+156>>2];v=L[c+160>>2];L[b+28>>2]=-A;L[b+12>>2]=z-C;L[b+56>>2]=O(w*l)-O(k*v);L[b+52>>2]=O(o*k)-O(m*w);L[b+48>>2]=O(v*m)-O(l*o);G[b+76>>1]=J[b+76>>1]|(H[e+348>>2]&1?35:33);L[b+64>>2]=L[e+336>>2];L[b+68>>2]=L[e+340>>2];k=L[e+344>>2];L[b+60>>2]=k;L[b+44>>2]=-k}e:{if(!(E&56)){break e}A=L[c+116>>2];o=L[e+412>>2];z=L[c+112>>2];k=L[e+408>>2];B=L[c+104>>2];l=L[e+400>>2];D=L[c+108>>2];m=L[e+404>>2];if(!(O(O(A*o)+O(O(z*k)+O(O(B*l)+O(D*m))))>O(0))){o=O(-o);m=O(-m);l=O(-l);k=O(-k)}v=O(O(B*m)+O(O(O(o*z)-O(A*k))-O(l*D)));C=O(O(z*l)+O(O(O(o*D)-O(A*m))-O(k*B)));w=O(O(D*k)+O(O(O(o*B)-O(A*l))-O(m*z)));if(E&32){A=L[e+448>>2];A=O(A+A);z=L[e+440>>2];z=O(z+z);B=L[e+444>>2];B=O(B+B);K=O(O(r*A)+O(O(p*z)+O(n*B)));Q=O(-n);D=O(-O(O(r*K)+O(O(A*t)+O(q*O(O(p*B)+O(z*Q))))));N=O(-O(O(n*K)+O(O(B*t)+O(q*O(O(r*z)+O(A*F))))));P=O(p*K);K=O(-r);A=O(-O(P+O(O(z*t)+O(q*O(O(n*A)+O(B*K))))));t=O(0);P=L[e+384>>2];f:{if(P==O(0)){r=O(0);k=O(0);l=O(0);n=O(1);m=O(0);o=O(0);q=O(1);p=O(1);break f}z=O(O(O(-l)*n)+O(O(p*m)+O(O(q*k)+O(r*o))));B=O(O(O(-k)*p)+O(O(r*l)+O(O(q*m)+O(n*o))));t=O(O(u*z)+O(s*B));F=O(O(K*k)+O(O(Q*m)+O(O(q*o)+O(l*F))));n=O(O(O(-m)*r)+O(O(n*k)+O(O(q*l)+O(p*o))));r=O(O(y*F)+O(x*n));o=O(O(t-r)*O(.5));q=O(O(u*F)+O(x*B));k=O(O(y*z)+O(s*n));m=O(O(q+k)*O(.5));t=O(O(r+t)*O(.5));l=O(O(y*B)+O(u*n));p=O(O(s*F)+O(x*z));r=O(O(l-p)*O(.5));k=O(O(k-q)*O(.5));l=O(O(l+p)*O(.5));x=O(x*F);q=O(z*s);n=O(n*y);s=O(u*B);u=O(q+O(n+s));p=O(x-u);q=O(O(O(q+q)+p)*O(.5));n=O(O(O(n+n)+p)*O(.5));p=O(O(O(s+s)+p)*O(.5));if(O(x+u)!=O(0)){break f}q=O(q+O(1.1920928955078125e-7));n=O(n+O(1.1920928955078125e-7));p=O(p+O(1.1920928955078125e-7))}b=H[c+140>>2];L[b+48>>2]=n;H[b+32>>2]=0;H[b+36>>2]=0;L[b+16>>2]=n;H[b+8>>2]=0;H[b>>2]=0;H[b+4>>2]=0;G[b+78>>1]=258;L[b+56>>2]=k;L[b+52>>2]=l;H[b+40>>2]=0;L[b+24>>2]=k;L[b+20>>2]=l;L[b+12>>2]=-w;L[b+28>>2]=O(k*D)+O(O(n*A)+O(l*N));d=H[e+396>>2];L[b+64>>2]=P;G[b+76>>1]=J[b+76>>1]|(d&1?35:33)|64;L[b+68>>2]=L[e+388>>2];n=L[e+392>>2];L[b+108>>2]=O(t*D)+O(O(r*A)+O(p*N));G[b+158>>1]=258;L[b+60>>2]=n;L[b+136>>2]=t;L[b+132>>2]=p;L[b+128>>2]=r;H[b+120>>2]=0;H[b+112>>2]=0;H[b+116>>2]=0;L[b+104>>2]=t;L[b+100>>2]=p;L[b+96>>2]=r;H[b+88>>2]=0;H[b+80>>2]=0;H[b+84>>2]=0;L[b+92>>2]=-C;L[b+44>>2]=-n;G[b+156>>1]=J[b+156>>1]|(H[e+396>>2]&1?35:33)|64;L[b+144>>2]=L[e+384>>2];L[b+148>>2]=L[e+388>>2];n=L[e+392>>2];L[b+188>>2]=O(q*D)+O(O(m*A)+O(o*N));G[b+238>>1]=258;L[b+140>>2]=n;L[b+216>>2]=q;L[b+212>>2]=o;L[b+208>>2]=m;H[b+200>>2]=0;H[b+192>>2]=0;H[b+196>>2]=0;L[b+184>>2]=q;L[b+180>>2]=o;L[b+176>>2]=m;H[b+168>>2]=0;H[b+160>>2]=0;H[b+164>>2]=0;L[b+172>>2]=-v;L[b+124>>2]=-n;G[b+236>>1]=J[b+236>>1]|(H[e+396>>2]&1?35:33)|64;L[b+224>>2]=L[e+384>>2];L[b+228>>2]=L[e+388>>2];n=L[e+392>>2];L[b+220>>2]=n;L[b+204>>2]=-n;H[c+140>>2]=b+240;break e}if(E&16){n=L[e+440>>2];b=H[c+140>>2];H[c+140>>2]=b+80;H[b+8>>2]=0;H[b>>2]=0;H[b+4>>2]=0;G[b+78>>1]=0;r=L[c+24>>2];L[b+16>>2]=r;q=L[c+28>>2];L[b+20>>2]=q;p=L[c+32>>2];L[b+56>>2]=p;L[b+52>>2]=q;L[b+48>>2]=r;H[b+40>>2]=0;H[b+32>>2]=0;H[b+36>>2]=0;L[b+24>>2]=p;L[b+12>>2]=w*O(-2);L[b+28>>2]=n;G[b+76>>1]=J[b+76>>1]|(H[e+380>>2]&1?35:33)|64;L[b+64>>2]=L[e+368>>2];L[b+68>>2]=L[e+372>>2];n=L[e+376>>2];L[b+60>>2]=n;L[b+44>>2]=-n}if(!(E&8)){break e}n=O(O(k*z)+O(O(m*D)+O(O(o*A)+O(B*l))));r=O(O(O(n*n)+O(-.5))*O(0));q=O(O(v*O(0))+O(O(w+w)+O(C*O(0))));if(!(a&16)){k=L[e+444>>2];b=H[c+140>>2];H[c+140>>2]=b+80;H[b+8>>2]=0;H[b>>2]=0;H[b+4>>2]=0;G[b+78>>1]=0;l=L[c+36>>2];L[b+16>>2]=l;m=L[c+40>>2];L[b+20>>2]=m;o=L[c+44>>2];L[b+56>>2]=o;L[b+52>>2]=m;L[b+48>>2]=l;H[b+40>>2]=0;H[b+32>>2]=0;H[b+36>>2]=0;L[b+24>>2]=o;L[b+12>>2]=O(v*q)+O(r+O(n*O(O(w*O(0))-O(C+C))));L[b+28>>2]=k;G[b+76>>1]=J[b+76>>1]|(H[e+364>>2]&1?35:33)|64;L[b+64>>2]=L[e+352>>2];L[b+68>>2]=L[e+356>>2];k=L[e+360>>2];L[b+60>>2]=k;L[b+44>>2]=-k}if(a&32){break e}k=L[e+448>>2];b=H[c+140>>2];H[c+140>>2]=b+80;H[b+8>>2]=0;H[b>>2]=0;H[b+4>>2]=0;G[b+78>>1]=0;L[b+16>>2]=L[c+48>>2];L[b+20>>2]=L[c+52>>2];l=L[c+56>>2];H[b+40>>2]=0;H[b+32>>2]=0;H[b+36>>2]=0;L[b+24>>2]=l;L[b+48>>2]=L[c+48>>2];L[b+52>>2]=L[c+52>>2];l=L[c+56>>2];L[b+28>>2]=k;L[b+12>>2]=-O(O(C*q)+O(r+O(n*O(O(v+v)+O(w*O(-0))))));L[b+56>>2]=l;G[b+76>>1]=J[b+76>>1]|(H[e+364>>2]&1?35:33)|64;L[b+64>>2]=L[e+352>>2];L[b+68>>2]=L[e+356>>2];n=L[e+360>>2];L[b+60>>2]=n;L[b+44>>2]=-n}E=c+88|0;T=c+76|0;g:{if(!(h&56)){break g}r=O(0);k=L[c+116>>2];l=L[c+104>>2];h:{if(l==O(0)){n=O(1);q=O(0);break h}r=O(O(1)/O(W(O(O(k*k)+O(O(O(l*l)+O(0))+O(0))))));n=O(k*r);q=O(r*O(0));r=O(l*r)}p=L[c+112>>2];o=O(q*p);t=L[c+108>>2];s=O(t*q);m=O(o+O(s+O(O(k*n)+O(l*r))));L[c+20>>2]=m;o=O(o+O(O(O(l*n)-O(k*r))-s));L[c+8>>2]=o;k=O(k*O(-q));s=O(q*l);l=O(O(r*t)+O(O(k+O(n*p))-s));L[c+16>>2]=l;k=O(s+O(O(k+O(n*t))-O(p*r)));L[c+12>>2]=k;i:{if((h&48)==48){j:{if(!I[e+478|0]){break j}k=L[e+252>>2];l=L[e+256>>2];m=L[e+248>>2];b=H[e+264>>2];H[c+256>>2]=H[e+260>>2];H[c+260>>2]=b;L[c+264>>2]=k>O(0)?O(0):m>O(0)?O(0):l;if(!a2(c+256|0,c+8|0,c+272|0,c+268|0)){break j}b=H[c+140>>2];H[c+140>>2]=b+80;l=L[c+232>>2];p=L[c+280>>2];k=L[c+236>>2];m=L[c+224>>2];s=L[c+276>>2];o=L[c+228>>2];t=L[c+272>>2];u=L[c+268>>2];H[b+40>>2]=0;H[b+32>>2]=0;H[b+36>>2]=0;H[b+8>>2]=0;H[b>>2]=0;H[b+4>>2]=0;G[b+78>>1]=0;L[b+12>>2]=u;d=J[b+76>>1];M=d|64;G[b+76>>1]=M;p=O(p+p);t=O(t+t);s=O(s+s);y=O(O(l*p)+O(O(m*t)+O(o*s)));x=O(O(k*k)+O(-.5));w=O(O(l*y)+O(O(p*x)+O(k*O(O(m*s)-O(t*o)))));L[b+56>>2]=w;v=O(O(o*y)+O(O(s*x)+O(k*O(O(l*t)-O(p*m)))));L[b+52>>2]=v;k=O(O(m*y)+O(O(t*x)+O(k*O(O(o*p)-O(s*l)))));L[b+48>>2]=k;L[b+24>>2]=w;L[b+20>>2]=v;L[b+16>>2]=k;k=L[e+248>>2];k:{if(L[e+252>>2]>O(0)|k>O(0)){L[b+64>>2]=k;L[b+68>>2]=L[e+252>>2];d=d|81;break k}G[b+78>>1]=2049;L[b+64>>2]=L[e+240>>2];L[b+68>>2]=L[e+244>>2];d=M|(u>O(0)?24:16);if(!(L[e+240>>2]>O(0))){break k}d=d|4}H[b+44>>2]=0;G[b+76>>1]=d}if(!I[e+479|0]){break i}b=Oa-16|0;Oa=b;p=L[c+236>>2];k=L[c+20>>2];t=L[c+8>>2];s=L[c+224>>2];u=L[c+228>>2];l=L[c+12>>2];y=L[c+232>>2];x=L[c+16>>2];w=O(O(O(O(p*k)-O(t*s))-O(u*l))-O(y*x));A=L[e+284>>2];z=L[e+292>>2];B=L[e+288>>2];v=O(O(O(u*x)+O(O(p*t)+O(k*s)))-O(l*y));m=O(w+w);o=O(O(O(y*t)+O(O(p*l)+O(k*u)))-O(x*s));C=O(o+o);p=O(O(O(s*l)+O(O(p*x)+O(k*y)))-O(t*u));L[b+8>>2]=O(v*m)+O(C*p);t=O(O(w*m)+O(-1));L[b+4>>2]=O(o*C)+t;L[b>>2]=O(v*C)-O(p*m);d=c+136|0;M=e+268|0;b2(d,O(O5(l,O(k+O(1)))*O(4)),B,z,A,b,M);l=L[c+20>>2];s=L[c+16>>2];u=L[e+284>>2];y=L[e+300>>2];x=L[e+296>>2];k=O(p+p);L[b+8>>2]=O(p*k)+t;L[b+4>>2]=O(o*k)-O(v*m);L[b>>2]=O(o*m)+O(v*k);b2(d,O(O5(s,O(l+O(1)))*O(4)),x,y,u,b,M);Oa=b+16|0;break i}d=h&32;l:{if(!(h&16)){break l}b=I[e+479|0];if(a&32){if(b){C=L[e+284>>2];A=L[e+292>>2];z=L[e+288>>2];p=L[c+228>>2];t=L[c+236>>2];s=L[c+224>>2];u=L[c+232>>2];B=O(O(O(p*l)+O(O(t*o)+O(m*s)))-O(k*u));y=O(O(O(O(t*m)-O(o*s))-O(p*k))-O(u*l));x=O(y+y);w=O(O(O(u*o)+O(O(t*k)+O(m*p)))-O(l*s));v=O(w+w);l=O(O(O(s*k)+O(O(t*l)+O(m*u)))-O(o*p));L[c+280>>2]=O(B*x)+O(v*l);L[c+272>>2]=O(B*v)-O(l*x);L[c+276>>2]=O(w*v)+O(O(y*x)+O(-1));b2(c+136|0,O(O5(k,O(m+O(1)))*O(4)),z,A,C,c+272|0,e+268|0);break l}p=O(O5(k,O(m+O(1)))*O(4));k=L[e+260>>2];b2(c+136|0,p,O(-k),k,L[e+256>>2],T,e+240|0);break l}if(!b){k=O(0);m=L[c+96>>2];o=L[c+32>>2];p=L[c+88>>2];s=L[c+24>>2];u=L[c+92>>2];y=L[c+28>>2];v=O(S(O(-O(O(m*o)+O(O(p*s)+O(u*y)))),O(-1)));C=L[e+256>>2];x=L[e+260>>2];t=O(0);l=O(0);w=O(O(p*y)-O(s*u));u=O(O(u*o)-O(y*m));m=O(O(m*s)-O(o*p));o=O(O(w*w)+O(O(u*u)+O(m*m)));if(o>O(0)){k=O(O(1)/O(W(o)));l=O(w*k);t=O(m*k);k=O(u*k)}L[c+280>>2]=l;L[c+276>>2]=t;L[c+272>>2]=k;b2(c+136|0,N5(O(R(v,O(1)))),O(-x),x,C,c+272|0,e+240|0);break l}o5(H[33808],8,5775,1003,58387,0)}if(!d){break i}b=I[e+479|0];if(a&16){if(b){w=L[e+284>>2];v=L[e+300>>2];C=L[e+296>>2];m=L[c+232>>2];o=L[c+8>>2];p=L[c+236>>2];t=L[c+12>>2];k=L[c+20>>2];s=L[c+228>>2];l=L[c+16>>2];u=L[c+224>>2];A=O(O(O(m*o)+O(O(p*t)+O(k*s)))-O(l*u));y=O(O(O(u*t)+O(O(p*l)+O(k*m)))-O(o*s));x=O(y+y);z=O(O(O(s*l)+O(O(p*o)+O(k*u)))-O(t*m));m=O(O(O(O(p*k)-O(o*u))-O(s*t))-O(m*l));o=O(m+m);L[c+276>>2]=O(A*x)-O(z*o);L[c+272>>2]=O(A*o)+O(z*x);L[c+280>>2]=O(y*x)+O(O(m*o)+O(-1));b2(c+136|0,O(O5(l,O(k+O(1)))*O(4)),C,v,w,c+272|0,e+268|0);break i}p=O(O5(L[c+16>>2],O(L[c+20>>2]+O(1)))*O(4));k=L[e+264>>2];b2(c+136|0,p,O(-k),k,L[e+256>>2],E,e+240|0);break i}if(!b){k=O(0);m=L[c+84>>2];o=L[c+32>>2];p=L[c+76>>2];s=L[c+24>>2];u=L[c+80>>2];y=L[c+28>>2];v=O(S(O(O(m*o)+O(O(p*s)+O(u*y))),O(-1)));C=L[e+256>>2];x=L[e+264>>2];t=O(0);l=O(0);w=O(O(p*y)-O(s*u));u=O(O(u*o)-O(y*m));m=O(O(m*s)-O(o*p));o=O(O(w*w)+O(O(u*u)+O(m*m)));if(o>O(0)){k=O(O(1)/O(W(o)));l=O(k*O(-w));t=O(k*O(-m));k=O(k*O(-u))}L[c+280>>2]=l;L[c+276>>2]=t;L[c+272>>2]=k;b2(c+136|0,N5(O(R(v,O(1)))),O(-x),x,C,c+272|0,e+240|0);break i}o5(H[33808],8,5775,1019,58387,0)}if(!(h&8)){break g}q=O(q*q);q=O(W(O(O(n*n)+O(q+O(q+O(r*r))))));if(q!=O(0)){q=O(O(1)/q);n=O(n*q);r=O(r*q)}n=M5(O(R(O(S(n,O(-1))),O(1))));n=O(n+n);b2(c+136|0,r>2],L[e+232>>2],L[e+228>>2],c+24|0,e+212|0)}m:{if(!(h&7)){break m}n:{if(!I[e+476|0]){break n}r=O(0);n=O(0);q=O(0);b=H[e+456>>2];if(b&1){n=L[c+120>>2];q=O(O(n*L[c+72>>2])+O(0));r=O(O(n*L[c+64>>2])+O(0));n=O(O(n*L[c+68>>2])+O(0))}if(b&2){k=L[c+124>>2];r=O(r+O(k*L[c+76>>2]));q=O(q+O(k*L[c+84>>2]));n=O(n+O(k*L[c+80>>2]))}if(b&4){k=L[c+128>>2];r=O(r+O(k*L[c+88>>2]));q=O(q+O(k*L[c+96>>2]));n=O(n+O(k*L[c+92>>2]))}k=O(W(O(O(q*q)+O(O(r*r)+O(n*n)))));if(!(k>L[e+464>>2])){break n}p=L[e+124>>2];M=L[e+116>>2]>O(0);if(!(p>2]>O(0)?O(0):L[e+120>>2])))){break n}b=H[c+140>>2];H[c+140>>2]=b+80;l=O(O(1)/k);q=O(q*l);L[b+8>>2]=q;n=O(n*l);L[b+4>>2]=n;r=O(r*l);L[b>>2]=r;G[b+78>>1]=0;l=L[c+152>>2];m=L[c+144>>2];o=L[c+148>>2];L[b+40>>2]=q;L[b+36>>2]=n;L[b+32>>2]=r;L[b+24>>2]=O(m*n)-O(r*o);L[b+20>>2]=O(l*r)-O(q*m);L[b+16>>2]=O(o*q)-O(n*l);l=L[c+164>>2];m=L[c+156>>2];o=L[c+160>>2];k=O(p-k);L[b+12>>2]=k;L[b+56>>2]=O(m*n)-O(r*o);L[b+52>>2]=O(l*r)-O(q*m);L[b+48>>2]=O(o*q)-O(n*l);d=J[b+76>>1];n=L[e+112>>2];o:{if(M|n>O(0)){L[b+64>>2]=n;L[b+68>>2]=L[e+116>>2];d=d|17;break o}G[b+78>>1]=2049;L[b+64>>2]=L[e+104>>2];L[b+68>>2]=L[e+108>>2];d=d|(k>O(0)?24:16);if(!(L[e+104>>2]>O(0))){break o}d=d|4}H[b+44>>2]=0;G[b+76>>1]=d}if(!I[e+477|0]){break m}if(!(!(h&1)|!(L[e+152>>2]<=L[e+148>>2]))){c2(c+136|0,e+128|0,L[c+120>>2],c- -64|0)}if(!(!(h&2)|!(L[e+180>>2]<=L[e+176>>2]))){c2(c+136|0,e+156|0,L[c+124>>2],T)}if(!(h&4)|!(L[e+208>>2]<=L[e+204>>2])){break m}c2(c+136|0,e+184|0,L[c+128>>2],E)}p:{q:{b=(a&56)-16|0;if(b){if((b|0)==16){break q}else{break p}}b=H[c+140>>2];H[c+140>>2]=b+80;n=L[c+32>>2];r=L[c+96>>2];q=L[c+24>>2];k=L[c+92>>2];l=L[c+88>>2];m=L[c+28>>2];o=O(O(q*k)-O(l*m));L[b+56>>2]=o;p=O(O(n*l)-O(r*q));L[b+52>>2]=p;t=O(O(m*r)-O(k*n));L[b+48>>2]=t;H[b+40>>2]=0;H[b+32>>2]=0;H[b+36>>2]=0;L[b+24>>2]=o;L[b+20>>2]=p;L[b+16>>2]=t;H[b+8>>2]=0;H[b>>2]=0;H[b+4>>2]=0;G[b+78>>1]=2048;G[b+76>>1]=J[b+76>>1]|80;L[b+12>>2]=-O(O(n*r)+O(O(q*l)+O(m*k)));a=a&-17;break p}b=H[c+140>>2];H[c+140>>2]=b+80;n=L[c+32>>2];r=L[c+84>>2];q=L[c+24>>2];k=L[c+80>>2];l=L[c+76>>2];m=L[c+28>>2];o=O(O(q*k)-O(l*m));L[b+56>>2]=o;p=O(O(n*l)-O(r*q));L[b+52>>2]=p;t=O(O(m*r)-O(k*n));L[b+48>>2]=t;H[b+40>>2]=0;H[b+32>>2]=0;H[b+36>>2]=0;L[b+24>>2]=o;L[b+20>>2]=p;L[b+16>>2]=t;H[b+8>>2]=0;H[b>>2]=0;H[b+4>>2]=0;G[b+78>>1]=2048;G[b+76>>1]=J[b+76>>1]|80;L[b+12>>2]=-O(O(n*r)+O(O(q*l)+O(m*k)));a=a&-33}d2(c+136|0,c+224|0,c+192|0,c+120|0,a&7,a>>>3|0,c+8|0,c+272|0);n=L[f+16>>2];r=L[f+20>>2];q=L[c+8>>2];k=L[c+12>>2];L[i+8>>2]=L[c+16>>2]+L[f+24>>2];L[i+4>>2]=k+r;L[i>>2]=q+n;n=L[g+16>>2];r=L[g+20>>2];q=L[c+272>>2];k=L[c+276>>2];L[j+8>>2]=L[c+280>>2]+L[g+24>>2];L[j+4>>2]=k+r;L[j>>2]=q+n;Oa=c+288|0;return(H[c+140>>2]-H[c+136>>2]|0)/80|0}function hq(a,b,c,d,e,f,g,h){var i=0,j=O(0),k=0,l=0,m=O(0),n=O(0),o=O(0),p=0,q=O(0),r=O(0),s=O(0),t=0,u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=0,C=O(0),D=O(0),E=O(0),M=O(0),N=0,Q=O(0),T=O(0),U=O(0),V=0,X=O(0),Y=O(0),Z=0,_=0,$=O(0),aa=O(0),ba=O(0),ca=O(0),da=O(0),ea=0,fa=O(0),ga=O(0),ha=0,ia=0,ja=0,ka=O(0),la=O(0),ma=0;if(H[a+4656>>2]){o5(H[33808],8,9281,1859,g,0);return}k=Oa-176|0;Oa=k;H[a+5884>>2]=0;H[a+5872>>2]=0;H[a+5860>>2]=0;H[a+5848>>2]=0;H[a+5836>>2]=0;a:{if(O(Ra[H[H[a>>2]+280>>2]](a,0))==O(0)){break a}H[k+96>>2]=0;H[k+100>>2]=0;H[k+88>>2]=0;H[k+92>>2]=0;H[k+80>>2]=0;H[k+84>>2]=0;H[k+112>>2]=0;H[k+116>>2]=0;H[k+104>>2]=0;H[k+108>>2]=1065353216;H[k+120>>2]=0;H[k+124>>2]=0;H[k+132>>2]=0;H[k+136>>2]=0;H[k+128>>2]=1065353216;H[k+140>>2]=0;H[k+144>>2]=0;H[k+152>>2]=0;H[k+156>>2]=0;H[k+148>>2]=1065353216;H[k+160>>2]=0;H[k+164>>2]=0;H[k+168>>2]=1065353216;H[k+72>>2]=0;H[k+76>>2]=0;H[k+172>>2]=a+5828;j=O(Ra[H[H[a>>2]+280>>2]](a,1));if(j!=O(0)){H[k+52>>2]=-16776961;H[k+44>>2]=-65536;H[k+48>>2]=-16711936;L[k+40>>2]=j;L[k+36>>2]=j;L[k+32>>2]=j;ZT(k+72|0,k+32|0)}g=H[a+5980>>2];if(g){while(1){N=0;V=H[H[a+5948>>2]+(Z<<2)>>2];if(H[V+100>>2]){while(1){q=O(0);s=O(0);aa=O(0);l=Oa-32|0;Oa=l;t=H[H[V+96>>2]+(N<<2)>>2];i=k+72|0;xi(t,i,a);g=H[t+52>>2];b:{if(!(F[(g&1?H[t+56>>2]:(t+H[((g>>>22&60)+76348|0)+12>>2]|0)+56|0)|0]&1)){break b}g=Ra[H[H[t>>2]+28>>2]](t)|0;m=O(Ra[H[H[g>>2]+280>>2]](g,0));g=Ra[H[H[t>>2]+28>>2]](t)|0;if(O(m*O(Ra[H[H[g>>2]+280>>2]](g,3)))!=O(0)){B=H[t+316>>2];if(B&2){g=H[t+56>>2]+96|0}else{B=H[t+316>>2];p=t- -64|0;g=H[p+176>>2];c:{if(!(!g|I[g+31|0]!=1)){g=g+32|0;break c}g=p+128|0}}j=L[g+8>>2];r=j==O(0)?O(0):O(O(1)/j);j=L[g+4>>2];n=j==O(0)?O(0):O(O(1)/j);j=L[g>>2];o=j==O(0)?O(0):O(O(1)/j);if(B&1){j=L[H[t+56>>2]+92>>2]}else{p=t- -64|0;g=H[p+176>>2];d:{if(!(!g|I[g+31|0]!=1)){j=L[g+44>>2];break d}j=L[p+140>>2]}}H[i+4>>2]=16777215;g=VT(i,t+256|0);j=O(O(6)/O(O(1)/j));o=O(o*j);n=O(n*j);j=O(r*j);r=O(O(W(O(P(O(O(o+n)-j)))))*O(.5));L[l+20>>2]=r;u=O(O(W(O(P(O(j+O(o-n))))))*O(.5));L[l+16>>2]=u;F[l+24|0]=1;L[l+8>>2]=-r;L[l+4>>2]=-u;j=O(O(W(O(P(O(j+O(n-o))))))*O(.5));L[l+12>>2]=j;L[l>>2]=-j;XT(g,l)}g=Ra[H[H[t>>2]+28>>2]](t)|0;j=O(m*O(Ra[H[H[g>>2]+280>>2]](g,20)));g=Ra[H[H[t>>2]+28>>2]](t)|0;m=O(m*O(Ra[H[H[g>>2]+280>>2]](g,21)));if(j==O(0)&m==O(0)){break b}H[l+12>>2]=i;L[l+8>>2]=m;L[l+4>>2]=j;H[l>>2]=105132;i=Oa-128|0;Oa=i;g=H[t+328>>2];e:{if(!g){break e}p=i- -64|0;Ra[H[H[t>>2]+76>>2]](p,t);B=i+32|0;_=H[t+324>>2];Ra[H[H[_>>2]+44>>2]](B,_);m=L[i+72>>2];j=L[i+56>>2];r=O(j+j);o=L[i+64>>2];j=L[i+48>>2];u=O(j+j);j=L[i+52>>2];v=O(j+j);n=L[i+68>>2];A=O(O(m*r)+O(O(o*u)+O(v*n)));j=L[i+76>>2];E=O(O(j*j)+O(-.5));L[i+120>>2]=L[i+88>>2]+O(O(m*A)+O(O(r*E)+O(j*O(O(o*v)-O(u*n)))));L[i+116>>2]=L[i+84>>2]+O(O(n*A)+O(O(v*E)+O(j*O(O(m*u)-O(r*o)))));w=L[i+44>>2];y=L[i+32>>2];C=L[i+36>>2];z=L[i+40>>2];L[i+108>>2]=O(O(O(j*w)-O(o*y))-O(n*C))-O(m*z);L[i+104>>2]=O(O(o*C)+O(O(j*z)+O(m*w)))-O(y*n);L[i+100>>2]=O(O(m*y)+O(O(j*C)+O(n*w)))-O(z*o);L[i+96>>2]=O(O(n*z)+O(O(j*y)+O(o*w)))-O(C*m);L[i+112>>2]=L[i+80>>2]+O(O(o*A)+O(O(u*E)+O(j*O(O(n*r)-O(v*m)))));Ra[H[H[g>>2]+76>>2]](B,g);g=H[t+324>>2];Ra[H[H[g>>2]+32>>2]](i,g);m=L[i+40>>2];j=L[i+24>>2];r=O(j+j);o=L[i+32>>2];j=L[i+16>>2];u=O(j+j);j=L[i+20>>2];v=O(j+j);n=L[i+36>>2];A=O(O(m*r)+O(O(o*u)+O(v*n)));j=L[i+44>>2];E=O(O(j*j)+O(-.5));L[i+88>>2]=L[i+56>>2]+O(O(m*A)+O(O(r*E)+O(j*O(O(o*v)-O(u*n)))));L[i+84>>2]=L[i+52>>2]+O(O(n*A)+O(O(v*E)+O(j*O(O(m*u)-O(r*o)))));w=L[i+12>>2];y=L[i>>2];C=L[i+4>>2];z=L[i+8>>2];L[i+76>>2]=O(O(O(j*w)-O(o*y))-O(n*C))-O(m*z);L[i+72>>2]=O(O(o*C)+O(O(j*z)+O(m*w)))-O(y*n);L[i+68>>2]=O(O(m*y)+O(O(j*C)+O(n*w)))-O(z*o);L[i+64>>2]=O(O(n*z)+O(O(j*y)+O(o*w)))-O(C*m);L[i+80>>2]=L[i+48>>2]+O(O(o*A)+O(O(u*E)+O(j*O(O(n*r)-O(v*m)))));Ra[H[H[l>>2]+8>>2]](l,i+96|0,p);g=H[t+324>>2];p=Ra[H[H[g>>2]+48>>2]](g)|0;if(J[(Ra[H[H[t>>2]+248>>2]](t)|0)+4>>1]==11){g=H[i+88>>2];H[i+52>>2]=H[i+84>>2];H[i+56>>2]=g;m=L[i+64>>2];L[i+32>>2]=m;j=L[i+68>>2];L[i+36>>2]=j;o=L[i+72>>2];L[i+40>>2]=o;q=L[i+76>>2];L[i+44>>2]=q;L[i+48>>2]=L[i+80>>2];n=O(0);u=L[i+108>>2];v=L[i+104>>2];A=L[i+96>>2];w=L[i+100>>2];if(O(O(q*u)+O(O(o*v)+O(O(m*A)+O(j*w))))>2]=q;o=O(-o);L[i+72>>2]=o;j=O(-j);L[i+68>>2]=j;m=O(-m);L[i+64>>2]=m}r=O(O(v*o)+O(O(w*j)+O(O(u*q)+O(A*m))));y=O(O(m*w)+O(O(O(u*o)-O(q*v))-O(A*j)));s=O(O(o*A)+O(O(O(u*j)-O(q*w))-O(v*m)));q=O(O(j*v)+O(O(O(u*m)-O(q*A))-O(w*o)));f:{if(q==O(0)){m=O(1);j=O(0);break f}j=O(O(1)/O(W(O(O(r*r)+O(O(O(q*q)+O(0))+O(0))))));m=O(r*j);n=O(q*j);j=O(j*O(0))}u=O(O(r*m)+O(q*n));v=O(s*j);A=O(y*m);o=O(r*O(-j));r=O(s*m);m=m==O(-1)?n>2];g:{if(t&262144){g=H[p+8>>2];B=g+152|0;g=g+148|0;break g}B=p+76|0;g=p+72|0}v=O(A-q);n=O(n*s);r=O(o-r);j=O(j+u);o=L[B>>2];u=L[g>>2];h:{if(t&131072){B=H[p+8>>2];g=B+144|0;_=B+140|0;break h}g=p+88|0;B=H[p+8>>2];_=p+80|0}n=O(n+v);q=O(q+r);r=L[(t&1024?B+108|0:p+332|0)>>2];v=L[g>>2];A=L[_>>2];g=i+32|0;ia=l,ja=g,ka=u,la=o,ma=a6(O(o-L[(t&16384?B+124|0:p+348|0)>>2]))>2]+16>>2],Ra[ha](ia|0,ja|0,O(ka),O(la),ma|0);o=a6(O(A*O(.25)));u=a6(O(v*O(.25)));i:{if(j==O(-1)){j=q>2]+20>>2]](l,g,o,u,!(O(O(q*q)+O(j*j))<=O(1)));break e}r=L[i+72>>2];u=r;v=L[i+68>>2];A=v;C=L[i+108>>2];z=L[i+76>>2];o=z;w=L[i+104>>2];E=L[i+96>>2];D=L[i+64>>2];m=D;y=L[i+100>>2];if(O(O(C*o)+O(O(w*r)+O(O(E*m)+O(y*v))))>2]=o;u=O(-r);L[i+72>>2]=u;A=O(-v);L[i+68>>2]=A;m=O(-D);L[i+64>>2]=m}j=O(O(u*w)+O(O(A*y)+O(O(o*C)+O(m*E))));n=O(1);$=L[i+84>>2];T=L[i+80>>2];da=L[i+116>>2];fa=L[i+112>>2];x=O(O(y*u)+O(O(O(o*E)-O(C*m))-O(A*w)));if(x!=O(0)){s=O(O(1)/O(W(O(O(j*j)+O(O(O(x*x)+O(0))+O(0))))));n=O(j*s);q=O(x*s);s=O(s*O(0))}M=O(O(E*A)+O(O(O(o*w)-O(C*u))-O(m*y)));Y=O(s*M);Q=O(O(w*m)+O(O(O(o*y)-O(C*A))-O(u*E)));U=O(Q*s);X=O(Y+O(U+O(O(j*n)+O(x*q))));ba=O(Y+O(O(O(x*n)-O(j*q))-U));j=O(j*O(-s));x=O(s*x);ca=O(O(q*Q)+O(O(j+O(n*M))-x));Y=L[i+88>>2];ga=L[i+120>>2];x=O(x+O(O(j+O(n*Q))-O(M*q)));j:{if(x==O(0)){M=O(1);Q=O(0);j=O(0);break j}j=O(O(1)/O(W(O(O(X*X)+O(O(x*x)+O(0))))));M=O(X*j);Q=O(x*j);j=O(j*O(0))}U=O(O(j*x)+O(O(O(ca*M)-O(X*j))-O(ba*Q)));if(U==O(0)){j=O(2)}else{j=O(O(ca*j)+O(O(x*Q)+O(O(X*M)+O(ba*j))));x=O(O(1)/O(W(O(O(j*j)+O(O(U*U)+O(0))))));aa=O(U*x);j=O(O(j*x)+O(1))}if(I[p+274|0]){s=O(s*s);s=O(W(O(O(n*n)+O(s+O(s+O(q*q))))));if(s!=O(0)){s=O(O(1)/s);n=O(n*s);q=O(q*s)}s=L[p+72>>2];x=L[p+76>>2];L[i+56>>2]=Y;L[i+52>>2]=$;L[i+48>>2]=T;L[i+44>>2]=z;L[i+40>>2]=r;L[i+36>>2]=v;L[i+32>>2]=D;n=M5(O(R(O(S(n,O(-1))),O(1))));n=O(n+n);q=q>2]+16>>2]](l,i+32|0,s,x,s>O(q+O(-.009999999776482582))|x>2];n=L[p+84>>2];L[i+56>>2]=Y;L[i+52>>2]=$;L[i+48>>2]=T;s=O(v*O(0));x=O(r*O(.7071067690849304));L[i+44>>2]=O(O(O(z*O(.7071067690849304))+O(D*O(0)))+s)+x;L[i+40>>2]=s+O(O(D*O(-0))+O(O(z*O(-.7071067690849304))+x));s=O(D*O(.7071067690849304));x=O(z*O(-0));L[i+36>>2]=s+O(O(r*O(-0))+O(x+O(v*O(.7071067690849304))));L[i+32>>2]=O(r*O(0))+O(O(v*O(-.7071067690849304))+O(x+s));s=O(O5(Q,O(M+O(1)))*O(4));Ra[H[H[l>>2]+16>>2]](l,i+32|0,O(-n),O(-q),q>O(s+O(-.009999999776482582))|n>2];n=L[p+92>>2];L[i+56>>2]=Y;L[i+52>>2]=$;L[i+48>>2]=T;s=O(z*O(.7071067690849304));x=O(D*O(-0));X=O(v*O(.7071067690849304));M=O(r*O(0));L[i+44>>2]=O(O(s+x)-X)-M;D=O(D*O(.7071067690849304));z=O(z*O(0));L[i+40>>2]=O(v*O(-0))+O(D+O(z+O(r*O(.7071067690849304))));L[i+36>>2]=x+O(M+O(s+X));L[i+32>>2]=O(r*O(-.7071067690849304))+O(O(v*O(0))+O(z+D));j=O(O5(aa,j)*O(4));Ra[H[H[l>>2]+16>>2]](l,i+32|0,O(-n),O(-q),q>O(j+O(-.009999999776482582))|n>2];Q=L[i+80>>2];U=L[i+84>>2];aa=L[i+88>>2];y=L[p+96>>2];ba=O($-X);L[i+40>>2]=aa+O(y*ba);ca=O(Y+T);L[i+36>>2]=U+O(y*ca);da=O(O(O(1)-x)-M);L[i+32>>2]=Q+O(y*da);L[i+8>>2]=aa+O(j*ba);L[i+4>>2]=U+O(j*ca);L[i>>2]=Q+O(j*da);Q=j;j=O(O(O(n*q)+O(o*O(O(u*r)-O(A*v))))-O(m*s));Ra[H[H[l>>2]+28>>2]](l,i+32|0,i,j>2];E=L[i+80>>2];D=L[i+84>>2];Q=L[i+88>>2];w=L[p+104>>2];U=O(C+y);L[i+40>>2]=Q+O(w*U);M=O(z-M);L[i+36>>2]=D+O(w*M);T=O(Y-T);L[i+32>>2]=E+O(w*T);L[i+8>>2]=Q+O(j*U);L[i+4>>2]=D+O(j*M);L[i>>2]=E+O(j*T);D=j;j=O(O(O(r*q)+O(o*O(O(m*v)-O(u*n))))-O(A*s));Ra[H[H[l>>2]+28>>2]](l,i+32|0,i,j>2];E=L[i+80>>2];D=L[i+84>>2];T=L[i+88>>2];w=L[p+112>>2];z=O(z-x);L[i+40>>2]=T+O(w*z);y=O(C-y);L[i+36>>2]=D+O(w*y);C=O($+X);L[i+32>>2]=E+O(w*C);L[i+8>>2]=T+O(j*z);L[i+4>>2]=D+O(j*y);L[i>>2]=E+O(j*C);z=j;j=O(O(O(v*q)+O(o*O(O(A*n)-O(m*r))))-O(u*s));Ra[H[H[l>>2]+28>>2]](l,i+32|0,i,j>>0>2]){continue}break}g=H[a+5980>>2]}Z=Z+1|0;if(Z>>>0>>0){continue}break}}Z=H[a+5936>>2];if(Z){V=H[a+5932>>2];N=0;while(1){i=H[V+(N<<2)>>2];k:{if((Ra[H[H[i>>2]+24>>2]](i)|0)==1){p=Oa-32|0;Oa=p;t=k+72|0;xi(i,t,a);g=H[i+52>>2];l:{if(!(F[(g&1?H[i+56>>2]:(i+H[((g>>>22&60)+76348|0)+12>>2]|0)+56|0)|0]&1)){break l}if(O(O(Ra[H[H[a>>2]+280>>2]](a,0))*O(Ra[H[H[a>>2]+280>>2]](a,3)))==O(0)){break l}j=O(O(R(O(L[i+308>>2]/L[a+5148>>2]),O(1)))*O(255));m:{if(j=O(0)){g=~~j>>>0;break m}g=0}_=H[i+312>>2]?16711680:g<<8|g|g<<16;B=H[i+316>>2];if(B&2){l=H[i+56>>2]+96|0}else{B=H[i+316>>2];l=i- -64|0;g=H[l+176>>2];n:{if(!(!g|I[g+31|0]!=1)){l=g+32|0;break n}l=l+128|0}}j=L[l+8>>2];o=j==O(0)?O(0):O(O(1)/j);j=L[l+4>>2];q=j==O(0)?O(0):O(O(1)/j);j=L[l>>2];m=j==O(0)?O(0):O(O(1)/j);if(B&1){j=L[H[i+56>>2]+92>>2]}else{l=i- -64|0;g=H[l+176>>2];o:{if(!(!g|I[g+31|0]!=1)){j=L[g+44>>2];break o}j=L[l+140>>2]}}H[t+4>>2]=_;g=VT(t,i+256|0);j=O(O(6)/O(O(1)/j));m=O(m*j);q=O(q*j);j=O(o*j);o=O(O(W(O(P(O(O(m+q)-j)))))*O(.5));L[p+20>>2]=o;n=O(O(W(O(P(O(j+O(m-q))))))*O(.5));L[p+16>>2]=n;F[p+24|0]=1;L[p+8>>2]=-o;L[p+4>>2]=-n;j=O(O(W(O(P(O(j+O(q-m))))))*O(.5));L[p+12>>2]=j;L[p>>2]=-j;XT(g,p)}Oa=p+32|0;break k}g=Oa+-64|0;Oa=g;l=k+72|0;rt(i+20|0,l,a,i);p=H[i+52>>2];p:{if(!(F[(p&1?H[i+56>>2]:(i+H[((p>>>22&60)+76348|0)+12>>2]|0)+56|0)|0]&1)){break p}q:{r:{s:{if(!(!(I[a+5580|0]&32)|!I[a+5248|0])){m=L[a+5152>>2];break s}m=L[H[a+1008>>2]+1032>>2];if(!(I[a+5580|0]&32)){break r}}if(!I[a+5258|0]){break r}j=L[a+5192>>2];break q}j=L[H[a+1008>>2]+1072>>2]}j=O(m*j);if(j==O(0)){break p}p=g+32|0;Ra[H[H[i>>2]+76>>2]](p,i);l=VT(l,p);H[g+28>>2]=-16776961;H[g+20>>2]=-65536;H[g+24>>2]=-16711936;L[g+16>>2]=j;L[g+12>>2]=j;L[g+8>>2]=j;ZT(l,g+8|0)}Oa=g- -64|0}N=N+1|0;if((Z|0)!=(N|0)){continue}break}}j=O(Ra[H[H[a>>2]+280>>2]](a,17));m=O(Ra[H[H[a>>2]+280>>2]](a,18));t:{if(j==O(0)){break t}g=H[a+5584>>2];if(!g){break t}Ra[H[H[g>>2]+60>>2]](g,k+72|0,-16776961)}u:{if(m==O(0)){break u}g=H[a+5620>>2];if(!g){break u}Ra[H[H[g>>2]+60>>2]](g,k+72|0,-65536)}v:{if(O(Ra[H[H[a>>2]+280>>2]](a,23))==O(0)){break v}N=0;H[k+56>>2]=0;H[k+48>>2]=0;H[k+52>>2]=0;H[k+40>>2]=0;H[k+44>>2]=1065353216;H[k+32>>2]=0;H[k+36>>2]=0;VT(k+72|0,k+32|0);g=H[H[a+1012>>2]+272>>2];g=Ra[H[H[g>>2]+12>>2]](g)|0;if(!g){break v}while(1){l=H[H[a+1012>>2]+272>>2];Ra[H[H[l>>2]+16>>2]](l,k+32|0,1,N)|0;l=k+72|0;H[l+4>>2]=I[k+68|0]?-256:-16777216;i=H[k+36>>2];H[k>>2]=H[k+32>>2];H[k+4>>2]=i;i=H[k+44>>2];H[k+8>>2]=H[k+40>>2];H[k+12>>2]=i;F[k+24|0]=1;i=H[k+52>>2];H[k+16>>2]=H[k+48>>2];H[k+20>>2]=i;XT(l,k);N=N+1|0;if((g|0)!=(N|0)){continue}break}}if(O(Ra[H[H[a>>2]+280>>2]](a,22))==O(0)){break a}g=I[a+5580|0]&64?a+5272|0:H[a+1008>>2]+1128|0;if(L[g>>2]>L[g+12>>2]){break a}l=k+72|0;H[l+4>>2]=-256;L[k+32>>2]=L[g>>2];L[k+36>>2]=L[g+4>>2];L[k+40>>2]=L[g+8>>2];L[k+44>>2]=L[g+12>>2];L[k+48>>2]=L[g+16>>2];L[k+52>>2]=L[g+20>>2];F[k+56|0]=1;XT(l,k+32|0)}Oa=k+176|0;if(H[a+5928>>2]){l=H[a+5896>>2];g=0;while(1){zf(H[l+(g<<2)>>2]);g=g+1|0;if(g>>>0>2]){continue}break}}l=Oa-16|0;Oa=l;g=H[a+1008>>2];H[g+20>>2]=e;H[g+16>>2]=d;k=H[g+8>>2];i=k-1|0;H[g+8>>2]=i;p=H[g+4>>2];d=d+e|0;H[l+12>>2]=d;w:{if(i>>>0>=(H[g+12>>2]&2147483647)>>>0){Xr(g+4|0,l+12|0);break w}H[p+(i<<2)>>2]=d;H[g+8>>2]=k}Oa=l+16|0;L[a+6072>>2]=b;if((h|0)==1){L[a+1112>>2]=b;L[a+1116>>2]=b>O(0)?O(O(1)/b):O(0)}F[a+6320|0]=f;N=H[(Ra[H[H[a>>2]+28>>2]](a)|0)+40>>2];t=Oa-16|0;Oa=t;e=a+16|0;p=e+4768|0;if(H[e+4772>>2]){while(1){l=H[p>>2]+(ea<<3)|0;g=J[l>>1];d=H[N+(g<<2)>>2];x:{y:{switch(H[l+4>>2]){case 0:if(!d){break x}l=0;B=0;g=H[e+20>>2];Z=J[d+52>>1];i=Z+1|0;if(g>>>0>>0){i=i+31&-32;H[e+20>>2]=i;k=H[33808];i=Ra[H[H[k+12>>2]+8>>2]](k+12|0,i<<5|19,20591,14579,100)|0;if(i){l=i+19&-16;H[l-4>>2]=l-i}if(g){while(1){k=B<<5;i=k+l|0;k=k+H[e+16>>2]|0;V=H[k+4>>2];H[i>>2]=H[k>>2];H[i+4>>2]=V;H[i+8>>2]=H[k+8>>2];G[i+12>>1]=J[k+12>>1];G[i+14>>1]=J[k+14>>1];V=H[k+20>>2];H[i+16>>2]=H[k+16>>2];H[i+20>>2]=V;B=B+1|0;if((B|0)!=(g|0)){continue}break}}k=H[e+20>>2];z:{if(k>>>0<=g>>>0){break z}B=k+(g^-1)|0;V=k-g&7;if(V){i=0;while(1){G[((g<<5)+l|0)+20>>1]=65535;g=g+1|0;i=i+1|0;if((V|0)!=(i|0)){continue}break}}if(B>>>0<7){break z}while(1){i=(g<<5)+l|0;G[i+20>>1]=65535;G[i+52>>1]=65535;G[i+84>>1]=65535;G[i+116>>1]=65535;G[i+148>>1]=65535;G[i+180>>1]=65535;G[i+212>>1]=65535;G[i+244>>1]=65535;g=g+8|0;if((k|0)!=(g|0)){continue}break}}g=H[e+16>>2];if(g){i=H[33808];Ra[H[H[i+12>>2]+12>>2]](i+12|0,g-H[g-4>>2]|0)}H[e+16>>2]=l}l=H[d+36>>2];g=H[e+16>>2]+(Z<<5)|0;H[g>>2]=H[d+32>>2];H[g+4>>2]=l;H[g+8>>2]=H[d+40>>2];G[g+12>>1]=J[d+44>>1];G[g+14>>1]=J[d+46>>1];l=H[d+52>>2];H[g+16>>2]=H[d+48>>2];H[g+20>>2]=l;g=H[H[e+992>>2]+1024>>2];Ra[H[H[g>>2]+52>>2]](g,d+32|0);break x;case 1:if(!d){break x}l=H[d+36>>2];g=H[e+16>>2]+(J[d+52>>1]<<5)|0;H[g>>2]=H[d+32>>2];H[g+4>>2]=l;H[g+8>>2]=H[d+40>>2];G[g+12>>1]=J[d+44>>1];G[g+14>>1]=J[d+46>>1];l=H[d+52>>2];H[g+16>>2]=H[d+48>>2];H[g+20>>2]=l;g=H[H[e+992>>2]+1024>>2];Ra[H[H[g>>2]+56>>2]](g,d+32|0);break x;case 2:break y;default:break x}}if(g>>>0>=K[e+20>>2]){break x}d=H[e+16>>2]+(g<<5)|0;if((g|0)!=J[d+20>>1]){break x}g=H[H[e+992>>2]+1024>>2];Ra[H[H[g>>2]+60>>2]](g,d);G[d+20>>1]=65535}ea=ea+1|0;if(ea>>>0>2]){continue}break}}d=H[p+4>>2];if((d|0)<0){e=d<<3;d=H[p>>2];g=e+d|0;while(1){e=H[t+12>>2];H[g>>2]=H[t+8>>2];H[g+4>>2]=e;g=g+8|0;if(d>>>0>g>>>0){continue}break}}H[p+4>>2]=0;Oa=t+16|0;F[a+6353|0]=1;F[a+4801|0]=1;H[a+4656>>2]=h;if(f){d=H[a+6092>>2];Ra[H[H[d>>2]+8>>2]](d);d=H[a+6092>>2];Ra[H[H[d>>2]+12>>2]](d)}if((h|0)==1){H[a+6160>>2]=1;H[a+6156>>2]=c;H[a+6152>>2]=H[a+6092>>2];if(c){Ra[H[H[c>>2]+16>>2]](c)}d=a+6260|0;c=a+6136|0;H[d>>2]=c;H[a+6264>>2]=1;Ra[H[H[a+6136>>2]+16>>2]](c);e=a+6256|0;H[e>>2]=H[H[d>>2]+16>>2];H[a+6128>>2]=1;H[a+6124>>2]=0;H[a+6120>>2]=H[a+6092>>2];d=H[a+6152>>2];Ra[H[H[d>>2]+72>>2]](d,c);c=H[e>>2];Ra[H[H[c>>2]+72>>2]](c,a+6240|0);return}H[a+6128>>2]=1;H[a+6124>>2]=c;d=H[a+6092>>2];H[a+6120>>2]=d;if(c){Ra[H[H[c>>2]+16>>2]](c);d=H[a+6092>>2]}c=a+6104|0;H[a+6220>>2]=c;H[a+6224>>2]=1;e=a+6216|0;H[e>>2]=d;Ra[H[H[a+6104>>2]+16>>2]](c);d=H[a+6120>>2];Ra[H[H[d>>2]+72>>2]](d,c);c=H[e>>2];Ra[H[H[c>>2]+72>>2]](c,a+6200|0)}function n1(a,b,c,d,e,f,g,h,i,j,k){var l=0,m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),F=O(0),I=O(0),K=O(0),M=O(0),Q=O(0),R=0,T=O(0),U=O(0),V=O(0),X=O(0),Y=O(0),Z=0,_=O(0),$=O(0),aa=O(0),ba=O(0),ca=O(0),da=O(0),ea=O(0),fa=O(0),ga=O(0),ha=O(0),ia=O(0),ja=O(0),ka=O(0),la=O(0),ma=O(0),na=0,oa=O(0),pa=O(0),qa=0,ra=O(0),sa=0,ta=0,ua=0,va=0,wa=O(0),xa=O(0),ya=O(0),za=O(0),Aa=O(0);l=Oa-560|0;Oa=l;a:{if(!a){i=0;break a}i=J[i>>1];sa=i&16;ta=i&64;qa=i&128;n=L[c+8>>2];r=L[c+20>>2];T=O(O(n-r)*O(.5));t=L[c>>2];u=L[c+12>>2];y=O(O(t-u)*O(.5));v=L[c+4>>2];w=L[c+16>>2];Y=O(O(v-w)*O(.5));m=O(W(O(O(T*T)+O(O(y*y)+O(Y*Y)))));if(m==O(0)){i=q1(a,b,c,L[c+24>>2],d,e,f,g,h,j,(qa|0)!=0,(ta|0)!=0,!sa);break a}ua=qa>>>7|j;p=L[d+8>>2];z=L[d>>2];o=L[d+4>>2];B=O(O(n+r)*O(.5));L[l+552>>2]=B;D=O(O(v+w)*O(.5));L[l+548>>2]=D;E=O(O(t+u)*O(.5));L[l+544>>2]=E;A=O(O(1)/m);if(!(O(P(O(O(p*O(T*A))+O(O(z*O(y*A))+O(o*O(Y*A))))))>2]=v;t=O(u-t);L[l+288>>2]=t;n=O(r-n);L[l+296>>2]=n;n=O(O(n*n)+O(O(t*t)+O(v*v)));L[l+300>>2]=n;L[l+304>>2]=n!=O(0)?O(O(1)/n):O(0);n=O(O(m*p)+B);L[l+136>>2]=n;r=O(O(m*o)+D);L[l+132>>2]=r;m=O(O(m*z)+E);L[l+128>>2]=m;Z=f?H[f>>2]:Z;B=O(O(n*p)+O(O(m*z)+O(o*r)));v=O(2);i=-1;m=e;f=0;o=O(0);z=O(0);n=O(0);b:{c:{while(1){d:{k=f?(f|0)==(Z|0)?0:f:Z;R=N(k,36)+b|0;e:{if(o1(l+128|0,d,m,L[c+24>>2],R,B)){break e}t=L[R+20>>2];r=L[R+8>>2];u=L[R+32>>2];p=L[R>>2];w=O(L[R+12>>2]-p);D=L[R+4>>2];E=O(L[R+28>>2]-D);A=O(L[R+24>>2]-p);D=O(L[R+16>>2]-D);p=O(O(w*E)-O(A*D));L[l+200>>2]=p;t=O(t-r);u=O(u-r);r=O(O(t*A)-O(u*w));L[l+196>>2]=r;t=O(O(D*u)-O(E*t));L[l+192>>2]=t;if(!ua&O(O(p*L[d+8>>2])+O(O(t*L[d>>2])+O(r*L[d+4>>2])))>O(0)){break e}if(!sa){if(n_(l+192|0,R,R+12|0,R+24|0,c,l+288|0)){break d}r=L[l+196>>2];t=L[l+192>>2];p=L[l+200>>2]}u=O(W(O(O(p*p)+O(O(t*t)+O(r*r)))));if(u==O(0)){break e}q=p;p=O(O(1)/u);L[l+200>>2]=q*p;L[l+196>>2]=r*p;L[l+192>>2]=t*p;if(!p1(R,l+192|0,l+128|0,L[c+24>>2],d,l+152|0,l+112|0,0)){break e}p=L[l+152>>2];if(p>e){break e}D=O(O(S(m>2];t=L[l+192>>2];u=L[l+196>>2];w=O(-O(P(O(O(r*L[d+8>>2])+O(O(t*L[d>>2])+O(u*L[d+4>>2]))))));if(!(pp)){if(p!=O(0)){break e}}if(ta){break c}n=t;z=u;o=r;v=w;m=p;i=k}f=f+1|0;if((f|0)!=(a|0)){continue}break b}break}e=L[d>>2];m=L[d+4>>2];L[h+8>>2]=-L[d+8>>2];L[h+4>>2]=-m;L[h>>2]=-e;G[g+12>>1]=1026;H[g+8>>2]=k;e=L[d>>2];m=L[d+4>>2];p=L[d+8>>2];H[g+40>>2]=0;L[g+36>>2]=-p;L[g+32>>2]=-m;L[g+28>>2]=-e;i=1;break a}n=t;z=u;o=r;m=p;i=k}if((i|0)!=-1){r1(l+192|0,l+152|0,l+128|0,d,m,N(i,36)+b|0);if(!(!(O(O(o*L[d+8>>2])+O(O(n*L[d>>2])+O(z*L[d+4>>2])))>O(0))|(j|!qa))){L[l+160>>2]=-L[l+160>>2];L[l+156>>2]=-L[l+156>>2];L[l+152>>2]=-L[l+152>>2]}L[g+16>>2]=L[l+192>>2];L[g+20>>2]=L[l+196>>2];L[g+24>>2]=L[l+200>>2];L[g+28>>2]=L[l+152>>2];L[g+32>>2]=L[l+156>>2];e=L[l+160>>2];L[g+40>>2]=m;L[g+36>>2]=e;G[g+12>>1]=3;H[g+8>>2]=i;L[h+8>>2]=o;L[h+4>>2]=z;L[h>>2]=n}i=(i|0)!=-1;break a}H[g+8>>2]=-1;i=0;i=f?H[f>>2]:i;ka=L[c+24>>2];m=O(w-v);L[l+132>>2]=m;t=O(u-t);L[l+128>>2]=t;n=O(r-n);L[l+136>>2]=n;m=O(O(n*n)+O(O(t*t)+O(m*m)));L[l+140>>2]=m;L[l+144>>2]=m!=O(0)?O(O(1)/m):O(0);ia=O(O(B*p)+O(O(E*z)+O(o*D)));z=O(2);p=e;f:{while(1){g:{va=na?(i|0)==(na|0)?0:na:i;f=N(va,36)+b|0;o=L[f+20>>2];m=L[f+8>>2];n=L[f+32>>2];r=L[f>>2];t=O(L[f+12>>2]-r);u=L[f+4>>2];v=O(L[f+28>>2]-u);r=O(L[f+24>>2]-r);u=O(L[f+16>>2]-u);w=O(O(t*v)-O(r*u));L[l+120>>2]=w;o=O(o-m);m=O(n-m);n=O(O(o*r)-O(m*t));L[l+116>>2]=n;m=O(O(u*m)-O(v*o));L[l+112>>2]=m;h:{if(!ua&O(O(w*L[d+8>>2])+O(O(m*L[d>>2])+O(n*L[d+4>>2])))>O(0)){break h}R=f+24|0;Z=f+12|0;if(k){if(!f_(k,f,Z,R)){break h}}i:{if(sa){break i}if(!n_(l+112|0,f,Z,R,c,l+128|0)){break i}e=L[d>>2];m=L[d+4>>2];L[h+8>>2]=-L[d+8>>2];L[h+4>>2]=-m;L[h>>2]=-e;G[g+12>>1]=1026;H[g+8>>2]=va;e=L[d>>2];m=L[d+4>>2];p=L[d+8>>2];H[g+40>>2]=0;L[g+36>>2]=-p;L[g+32>>2]=-m;L[g+28>>2]=-e;i=1;break a}m=L[f+32>>2];r=O(T+m);o=L[f+28>>2];t=O(Y+o);n=L[R>>2];u=O(y+n);v=L[f+20>>2];_=O(T+v);w=L[f+16>>2];U=O(Y+w);B=L[Z>>2];F=O(y+B);I=L[f+8>>2];D=O(T+I);K=L[f+4>>2];E=O(Y+K);M=L[f>>2];A=O(y+M);X=O(m-T);$=O(o-Y);aa=O(n-y);v=O(v-T);w=O(w-Y);B=O(B-y);I=O(I-T);K=O(K-Y);M=O(M-y);ga=L[l+120>>2];ca=L[l+112>>2];ba=L[l+116>>2];j:{if(O(O(ga*T)+O(O(ca*y)+O(Y*ba)))>=O(0)){L[l+292>>2]=E;L[l+304>>2]=U;L[l+288>>2]=A;L[l+312>>2]=u;L[l+316>>2]=t;L[l+300>>2]=F;m=O(F-A);o=O(t-E);x=O(u-A);s=O(U-E);n=O(O(m*o)-O(x*s));L[l+296>>2]=D;L[l+320>>2]=r;L[l+308>>2]=_;q=O(_-D);C=O(q*x);x=O(r-D);m=O(C-O(x*m));o=O(O(s*x)-O(o*q));break j}L[l+292>>2]=K;L[l+304>>2]=w;L[l+288>>2]=M;L[l+312>>2]=aa;L[l+316>>2]=$;L[l+300>>2]=B;m=O(B-M);o=O($-K);x=O(aa-M);s=O(w-K);n=O(O(m*o)-O(x*s));L[l+296>>2]=I;L[l+320>>2]=X;L[l+308>>2]=v;q=O(v-I);C=O(q*x);x=O(X-I);m=O(C-O(x*m));o=O(O(s*x)-O(o*q))}L[l+200>>2]=n;L[l+196>>2]=m;L[l+192>>2]=o;L[l+324>>2]=B;L[l+336>>2]=F;L[l+332>>2]=v;L[l+356>>2]=r;L[l+348>>2]=u;L[l+344>>2]=_;L[l+340>>2]=U;L[l+352>>2]=t;L[l+328>>2]=w;n=O(F-B);V=O(t-w);C=O(u-B);m=O(U-w);o=O(O(n*V)-O(C*m));x=L[d+8>>2];Q=O(r-v);ea=O(_-v);m=O(O(m*Q)-O(V*ea));s=L[d>>2];q=L[d+4>>2];n=O(O(ea*C)-O(Q*n));if(O(O(o*x)+O(O(m*s)+O(q*n)))>O(0)){L[l+356>>2]=_;L[l+352>>2]=U;L[l+348>>2]=F;L[l+344>>2]=r;L[l+340>>2]=t;L[l+336>>2]=u;n=O(-n);m=O(-m);o=O(-o)}L[l+212>>2]=o;L[l+208>>2]=n;L[l+204>>2]=m;L[l+380>>2]=r;L[l+376>>2]=t;L[l+372>>2]=u;L[l+368>>2]=v;L[l+392>>2]=X;L[l+360>>2]=B;L[l+384>>2]=aa;L[l+364>>2]=w;L[l+388>>2]=$;m=O($-w);n=O(aa-B);o=O(O(C*m)-O(n*V));da=V;V=O(X-v);m=O(O(da*V)-O(m*Q));n=O(O(Q*n)-O(V*C));if(O(O(o*x)+O(O(m*s)+O(q*n)))>O(0)){L[l+392>>2]=r;L[l+388>>2]=t;L[l+384>>2]=u;L[l+380>>2]=X;L[l+376>>2]=$;L[l+372>>2]=aa;n=O(-n);m=O(-m);o=O(-o)}L[l+224>>2]=o;L[l+220>>2]=n;L[l+216>>2]=m;L[l+396>>2]=M;L[l+408>>2]=aa;L[l+404>>2]=I;L[l+428>>2]=r;L[l+420>>2]=u;L[l+416>>2]=X;L[l+400>>2]=K;L[l+424>>2]=t;L[l+412>>2]=$;n=O(aa-M);V=O(t-K);C=O(u-M);m=O($-K);o=O(O(n*V)-O(C*m));Q=O(r-I);ea=O(X-I);m=O(O(m*Q)-O(V*ea));n=O(O(ea*C)-O(Q*n));if(O(O(o*x)+O(O(m*s)+O(q*n)))>O(0)){L[l+428>>2]=X;L[l+424>>2]=$;L[l+420>>2]=aa;L[l+416>>2]=r;L[l+412>>2]=t;L[l+408>>2]=u;n=O(-n);m=O(-m);o=O(-o)}L[l+236>>2]=o;L[l+232>>2]=n;L[l+228>>2]=m;L[l+452>>2]=r;L[l+448>>2]=t;L[l+444>>2]=u;L[l+440>>2]=I;L[l+464>>2]=D;L[l+432>>2]=M;L[l+456>>2]=A;L[l+436>>2]=K;L[l+460>>2]=E;m=O(E-K);n=O(A-M);o=O(O(C*m)-O(n*V));X=O(D-I);m=O(O(V*X)-O(m*Q));n=O(O(Q*n)-O(X*C));if(O(O(o*x)+O(O(m*s)+O(q*n)))>O(0)){L[l+464>>2]=r;L[l+460>>2]=t;L[l+456>>2]=u;L[l+452>>2]=D;L[l+448>>2]=E;L[l+444>>2]=A;n=O(-n);m=O(-m);o=O(-o)}L[l+248>>2]=o;L[l+244>>2]=n;L[l+240>>2]=m;L[l+468>>2]=A;L[l+480>>2]=F;L[l+476>>2]=D;L[l+500>>2]=v;L[l+492>>2]=B;L[l+488>>2]=_;L[l+472>>2]=E;L[l+496>>2]=w;L[l+484>>2]=U;n=O(F-A);r=O(w-E);t=O(B-A);m=O(U-E);o=O(O(n*r)-O(t*m));u=O(v-D);X=O(_-D);m=O(O(m*u)-O(r*X));n=O(O(X*t)-O(u*n));if(O(O(o*x)+O(O(m*s)+O(q*n)))>O(0)){L[l+500>>2]=_;L[l+496>>2]=U;L[l+492>>2]=F;L[l+488>>2]=v;L[l+484>>2]=w;L[l+480>>2]=B;n=O(-n);m=O(-m);o=O(-o)}L[l+260>>2]=o;L[l+256>>2]=n;L[l+252>>2]=m;L[l+524>>2]=v;L[l+520>>2]=w;L[l+516>>2]=B;L[l+512>>2]=D;L[l+536>>2]=I;L[l+504>>2]=A;L[l+528>>2]=M;L[l+508>>2]=E;L[l+532>>2]=K;m=O(K-E);n=O(M-A);o=O(O(t*m)-O(n*r));C=r;r=O(I-D);m=O(O(C*r)-O(m*u));n=O(O(u*n)-O(r*t));if(O(O(o*x)+O(O(m*s)+O(q*n)))>O(0)){L[l+536>>2]=v;L[l+532>>2]=w;L[l+528>>2]=B;L[l+524>>2]=I;L[l+520>>2]=K;L[l+516>>2]=M;o=O(-o);n=O(-n);m=O(-m)}L[l+272>>2]=o;L[l+268>>2]=n;L[l+264>>2]=m;m=O(W(O(O(ga*ga)+O(O(ca*ca)+O(ba*ba)))));if(m>O(0)){m=O(O(1)/m);ga=O(ga*m);L[l+120>>2]=ga;ba=O(ba*m);L[l+116>>2]=ba;ca=O(ca*m);L[l+112>>2]=ca}o=O(-O(P(O(O(ga*x)+O(O(ca*s)+O(q*ba))))));f=0;while(1){R=(l+192|0)+N(f,12)|0;k:{if(!ua&O(O(L[R+8>>2]*L[d+8>>2])+O(O(L[R>>2]*L[d>>2])+O(L[R+4>>2]*L[d+4>>2])))>O(0)){break k}Z=(l+288|0)+N(f,36)|0;if(o1(l+544|0,d,p,ka,Z,ia)){break k}m=L[R+8>>2];n=L[R>>2];r=L[R+4>>2];t=O(W(O(O(m*m)+O(O(n*n)+O(r*r)))));if(t==O(0)){break k}q=n;n=O(O(1)/t);L[R>>2]=q*n;L[R+4>>2]=r*n;L[R+8>>2]=m*n;if(!p1(Z,R,l+544|0,ka,d,l+96|0,l+80|0,0)){break k}m=L[l+96>>2];if(m>e){break k}n=O(O(S(m>p?m:p,O(1)))*O(.0010000000474974513));if(!(o==z&m>2]=va;L[l+152>>2]=L[Z>>2];L[l+156>>2]=L[Z+4>>2];L[l+160>>2]=L[Z+8>>2];L[l+164>>2]=L[Z+12>>2];L[l+168>>2]=L[Z+16>>2];L[l+172>>2]=L[Z+20>>2];L[l+176>>2]=L[Z+24>>2];L[l+180>>2]=L[Z+28>>2];L[l+184>>2]=L[Z+32>>2];la=L[l+120>>2];ma=L[l+116>>2];fa=L[l+112>>2];if(ta){break g}z=o;p=m}f=f+1|0;if((f|0)!=7){continue}break}}na=na+1|0;if((na|0)!=(a|0)){continue}break f}break}p=m}if(H[g+8>>2]==-1){i=0;break a}L[g+40>>2]=p;L[h+8>>2]=la;L[h+4>>2]=ma;L[h>>2]=fa;r1(g+16|0,g+28|0,l+544|0,d,p,l+152|0);if(!(!(O(O(la*L[d+8>>2])+O(O(fa*L[d>>2])+O(ma*L[d+4>>2])))>O(0))|(j|!qa))){L[g+28>>2]=-L[g+28>>2];L[g+36>>2]=-L[g+36>>2];L[g+32>>2]=-L[g+32>>2]}i=1;a=H[g+8>>2];if((a|0)==-1){break a}m=L[d>>2];p=L[d+4>>2];z=L[d+8>>2];e=L[g+40>>2];o=L[c>>2];n=L[c+4>>2];r=L[c+8>>2];H[l+92>>2]=0;z=O(e*z);L[l+88>>2]=r+z;p=O(e*p);L[l+84>>2]=n+p;e=O(e*m);L[l+80>>2]=o+e;m=L[c+12>>2];o=L[c+16>>2];n=L[c+20>>2];H[l+76>>2]=0;L[l+72>>2]=z+n;L[l+68>>2]=p+o;L[l+64>>2]=e+m;a=N(a,36)+b|0;b=H[a+4>>2];c=H[a>>2];e=L[a+8>>2];H[l+60>>2]=0;L[l+56>>2]=e;H[l+48>>2]=c;H[l+52>>2]=b;b=H[a+16>>2];c=H[a+12>>2];e=L[a+20>>2];H[l+44>>2]=0;L[l+40>>2]=e;H[l+32>>2]=c;H[l+36>>2]=b;b=H[a+28>>2];c=H[a+24>>2];e=L[a+32>>2];H[l+28>>2]=0;L[l+24>>2]=e;H[l+16>>2]=c;H[l+20>>2]=b;a=Oa-112|0;Oa=a;D=L[l+80>>2];c=l- -64|0;E=L[c>>2];A=L[l+84>>2];I=L[c+4>>2];K=L[l+88>>2];M=L[c+8>>2];H[a+108>>2]=0;L[a+104>>2]=M-K;L[a+100>>2]=I-A;L[a+96>>2]=E-D;v=L[l+48>>2];o=L[l+32>>2];w=L[l+52>>2];t=L[l+36>>2];B=L[l+56>>2];u=L[l+40>>2];H[a+92>>2]=0;e=O(u-B);L[a+88>>2]=e;m=O(t-w);L[a+84>>2]=m;p=O(o-v);L[a+80>>2]=p;T=L[l+16>>2];y=L[l+20>>2];Y=L[l+24>>2];H[a+76>>2]=0;z=O(Y-B);L[a+72>>2]=z;n=O(y-w);L[a+68>>2]=n;r=O(T-v);L[a+64>>2]=r;H[a+60>>2]=0;L[a+56>>2]=Y-u;L[a+52>>2]=y-t;L[a+48>>2]=T-o;ga=O(O(e*e)+O(O(p*p)+O(m*m)));ca=O(O(z*z)+O(O(r*r)+O(n*n)));o=O(O(e*z)+O(O(p*r)+O(m*n)));t=O(O(ga*ca)-O(o*o));t=t>O(0)?O(O(1)/t):O(0);T=O(O(p*n)-O(r*m));y=O(O(m*z)-O(n*e));U=O(O(e*r)-O(z*p));u=O(O(1)/O(W(O(O(T*T)+O(O(y*y)+O(U*U))))));l:{m:{Y=O(T*u);_=O(y*u);U=O(U*u);u=O(O(O(K-B)*Y)+O(O(O(D-v)*_)+O(O(A-w)*U)));D=O(O(O(M-B)*Y)+O(O(O(E-v)*_)+O(O(I-w)*U)));if(!(O(u*D)>2];I=L[a+96>>2];K=L[a+100>>2];E=O(O(O(-1)/O(O(Y*A)+O(O(_*I)+O(U*K))))*u);A=O(L[l+88>>2]+O(A*E));B=O(A-B);q=O(B*e);I=O(L[l+80>>2]+O(I*E));e=O(I-v);s=O(e*p);p=O(L[l+84>>2]+O(K*E));v=O(p-w);m=O(q+O(s+O(v*m)));z=O(O(B*z)+O(O(e*r)+O(v*n)));e=O(t*O(O(ca*m)-O(o*z)));if(!(e>=O(-1.1920928955078125e-7))|!(e<=O(1.0000001192092896))){break m}m=O(t*O(O(ga*z)-O(o*m)));if(!(m>=O(-1.1920928955078125e-7))|!(m<=O(1.0000001192092896))|!(O(e+m)>2]=p;L[l+96>>2]=I;H[l+108>>2]=0;L[l+104>>2]=A;b=H[l+100>>2];H[l+112>>2]=H[l+96>>2];H[l+116>>2]=b;b=H[l+108>>2];H[l+120>>2]=H[l+104>>2];H[l+124>>2]=b;H[l>>2]=0;break l}ka=L[l+40>>2];la=L[l+32>>2];ma=L[l+36>>2];E=L[a+56>>2];A=L[a+48>>2];I=L[a+52>>2];b=a- -64|0;K=L[b+8>>2];M=L[b>>2];T=L[b+4>>2];e=L[a+104>>2];m=L[a+96>>2];p=L[a+100>>2];y=O(O(e*e)+O(O(m*m)+O(p*p)));F=O(O(1)/y);z=L[a+88>>2];n=L[a+80>>2];r=L[a+84>>2];ja=O(O(m*n)+O(p*r));x=O(O(e*z)+ja);wa=O(z*z);oa=O(O(n*n)+O(r*r));s=O(wa+oa);q=O(O(y*s)-O(x*x));b=a+32|0;fa=x;da=O(O(1)/s);v=L[l+88>>2];X=L[l+56>>2];ba=O(v-X);w=L[l+80>>2];$=L[l+48>>2];V=O(w-$);B=L[l+84>>2];aa=L[l+52>>2];C=O(B-aa);Q=O(O(z*ba)+O(O(n*V)+O(r*C)));ia=s;s=O(O(e*ba)+O(O(m*V)+O(p*C)));x=O(O(O(x*Q)-O(ia*s))/q);x=xO(0)?x:O(0)))));x=xO(0)?x:O(0);s=O(F*O(O(fa*x)-s));s=sO(0)?s:O(0);L[b+12>>2]=ba;q=O(O(K*K)+O(O(M*M)+O(T*T)));s=O(O(e*K)+O(O(m*M)+O(p*T)));V=O(O(y*q)-O(s*s));da=s;ra=O(O(1)/q);fa=O(v-X);C=fa;ia=O(w-$);Q=ia;ea=O(B-aa);ha=O(O(K*C)+O(O(M*Q)+O(T*ea)));pa=q;xa=O(p*ea);q=O(O(e*C)+O(O(m*Q)+xa));s=O(O(O(s*ha)-O(pa*q))/V);s=sO(0)?s:O(0)))));s=sO(0)?s:O(0);q=O(F*O(O(da*s)-q));q=qO(0)?q:O(0);L[b+8>>2]=V;C=O(O(E*E)+O(O(A*A)+O(I*I)));q=O(O(e*E)+O(O(m*A)+O(p*I)));Q=O(O(y*C)-O(q*q));da=q;Aa=O(O(1)/C);ha=O(v-ka);ra=O(w-la);ya=O(B-ma);za=O(O(E*ha)+O(O(A*ra)+O(I*ya)));pa=C;C=O(O(e*ha)+O(O(m*ra)+O(p*ya)));q=O(O(O(q*za)-O(pa*C))/Q);q=qO(0)?q:O(0)))));q=qO(0)?q:O(0);C=O(F*O(O(da*q)-C));C=CO(0)?C:O(0);L[b+4>>2]=C;da=y;y=O(wa+oa);Q=O(O(e*z)+ja);ja=O(O(da*y)-O(Q*Q));da=F;ha=O(O(1)/y);F=O(O(z*fa)+O(O(n*ia)+O(r*ea)));pa=F;ea=O(Q*F);F=O(O(e*fa)+O(O(m*ia)+xa));y=O(O(ea-O(y*F))/ja);y=yO(0)?y:O(0)))));y=yO(0)?y:O(0);F=O(da*O(O(Q*y)-F));F=FO(0)?F:O(0);L[b>>2]=F;L[a+28>>2]=x;L[a+24>>2]=s;L[a+20>>2]=q;L[a+16>>2]=y;Q=O(O(w+O(m*ba))-O($+O(n*x)));fa=O(Q*Q);Q=O(O(B+O(p*ba))-O(aa+O(r*x)));x=O(O(v+O(e*ba))-O(X+O(z*x)));L[a+12>>2]=fa+O(O(Q*Q)+O(x*x));M=O(O(w+O(m*V))-O($+O(M*s)));x=O(M*M);M=O(O(B+O(p*V))-O(aa+O(T*s)));K=O(O(v+O(e*V))-O(X+O(K*s)));L[a+8>>2]=x+O(O(M*M)+O(K*K));A=O(O(w+O(m*C))-O(la+O(A*q)));s=O(A*A);A=O(O(B+O(p*C))-O(ma+O(I*q)));E=O(O(v+O(e*C))-O(ka+O(E*q)));L[a+4>>2]=s+O(O(A*A)+O(E*E));m=O(O(w+O(m*F))-O($+O(n*y)));n=O(m*m);m=O(O(B+O(p*F))-O(aa+O(r*y)));e=O(O(v+O(e*F))-O(X+O(z*y)));L[a>>2]=n+O(O(m*m)+O(e*e));v=L[a>>2];w=L[a+4>>2];s=L[a+8>>2];j=!(v>=w)|!(s>w);k=!(v>2];ba=L[l+32>>2];V=L[l+36>>2];C=L[l+40>>2];e=L[l+80>>2];m=L[l+84>>2];p=L[l+88>>2];z=L[l+56>>2];E=L[c+8>>2];n=L[l+48>>2];A=L[c>>2];r=L[l+52>>2];I=L[c+4>>2];Q=L[a+48>>2];ka=L[a+52>>2];K=L[a+16>>2];M=L[a+24>>2];la=L[a+56>>2];T=L[a+20>>2];ma=L[a+96>>2];fa=L[a+100>>2];ia=L[a+104>>2];y=L[a+72>>2];F=L[a+64>>2];X=L[a+68>>2];$=L[a+88>>2];aa=L[a+80>>2];x=L[a+84>>2];H[l+124>>2]=0;ea=O(D*D);q=O(u*u);b=ea>q;ja=k?j?s:w:v;c=ja>q;v=O(E-O(Y*D));s=O(v-z);w=O(A-O(_*D));q=O(w-n);D=O(I-O(U*D));oa=O(D-r);ha=O(O($*s)+O(O(aa*q)+O(x*oa)));q=O(O(s*y)+O(O(q*F)+O(oa*X)));s=O(t*O(O(ca*ha)-O(o*q)));q=O(t*O(O(ga*q)-O(o*ha)));f=s>=O(-1.1920928955078125e-7)&s<=O(1.0000001192092896)&(q>=O(-1.1920928955078125e-7)&q<=O(1.0000001192092896))&O(s+q)=O(-1.1920928955078125e-7)&U<=O(1.0000001192092896)&(o>=O(-1.1920928955078125e-7)&o<=O(1.0000001192092896))&O(U+o)>2]=p;q=b?m:I;o=m;m=O(m+O(fa*B));m=h?q:f?c?o:m:d?m:I;L[l+116>>2]=m;q=b?e:A;o=e;e=O(e+O(ma*B));e=h?q:f?c?o:e:d?e:A;L[l+112>>2]=e;H[l+108>>2]=0;z=k?j?O(z+O(M*y)):O(C+O(T*la)):O(z+O(K*$));z=h?b?Y:v:f?c?Y:z:d?z:v;L[l+104>>2]=z;o=k?j?O(r+O(M*X)):O(V+O(T*ka)):O(r+O(K*x));o=h?b?u:D:f?c?u:o:d?o:D;L[l+100>>2]=o;n=k?j?O(n+O(M*F)):O(ba+O(T*Q)):O(n+O(K*aa));n=h?b?_:w:f?c?_:n:d?n:w;L[l+96>>2]=n;p=O(z-p);e=O(n-e);n=O(e*e);e=O(o-m);L[l>>2]=O(p*p)+O(n+O(e*e))}Oa=a+112|0;a=H[l+100>>2];b=H[l+96>>2];L[g+24>>2]=L[l+104>>2];H[g+16>>2]=b;H[g+20>>2]=a;G[g+12>>1]=3}Oa=l+560|0;return i}function hY(a,b,c,d,e,f,g,h,i,j,k,l){var m=0,n=O(0),o=O(0),p=O(0),q=O(0),r=0,s=O(0),t=O(0),u=O(0),w=O(0),y=O(0),z=O(0),A=O(0),D=O(0),E=O(0),F=0,G=O(0),K=0,M=O(0),Q=O(0),R=0,S=O(0),T=O(0),U=O(0),V=0,X=O(0),Y=0,Z=O(0),_=0,$=O(0),aa=O(0),ba=O(0),ca=O(0),da=O(0),ea=O(0),fa=O(0),ga=O(0),ha=O(0),ia=O(0),ja=0,ka=O(0),la=O(0),ma=O(0),na=O(0),oa=O(0),pa=0,qa=0,ra=0,sa=0,ta=O(0),ua=O(0),va=O(0),wa=O(0),xa=0,ya=0,za=0,Aa=0,Ba=O(0),Ca=O(0),Da=O(0);qa=Oa-544|0;Oa=qa;m=qa;p=L[e+4>>2];q=O(p+p);n=L[e+8>>2];A=O(q*n);o=L[e>>2];y=O(o+o);s=L[e+12>>2];D=O(y*s);t=O(A-D);L[m+524>>2]=t;A=O(A+D);L[m+516>>2]=A;o=O(O(1)-O(o*y));D=O(p*q);w=O(o-D);L[m+528>>2]=w;G=o;o=O(n+n);u=O(n*o);z=O(G-u);L[m+512>>2]=z;n=O(y*n);q=O(q*s);E=O(n+q);L[m+520>>2]=E;D=O(O(O(1)-D)-u);L[m+496>>2]=D;p=O(y*p);y=O(o*s);u=O(p-y);L[m+508>>2]=u;S=O(p+y);L[m+500>>2]=S;U=O(n-q);L[m+504>>2]=U;X=L[e+16>>2];L[m+532>>2]=X;T=L[e+20>>2];L[m+536>>2]=T;M=L[e+24>>2];L[m+540>>2]=M;p=L[f+4>>2];q=O(p+p);n=L[f+8>>2];G=O(q*n);o=L[f>>2];y=O(o+o);s=L[f+12>>2];Q=O(y*s);$=O(G-Q);L[m+476>>2]=$;G=O(G+Q);L[m+468>>2]=G;o=O(O(1)-O(o*y));Q=O(p*q);aa=O(o-Q);L[m+480>>2]=aa;ga=o;o=O(n+n);Z=O(n*o);ba=O(ga-Z);L[m+464>>2]=ba;n=O(y*n);q=O(q*s);ca=O(n+q);L[m+472>>2]=ca;Q=O(O(O(1)-Q)-Z);L[m+448>>2]=Q;p=O(y*p);y=O(o*s);Z=O(p-y);L[m+460>>2]=Z;da=O(p+y);L[m+452>>2]=da;n=O(n-q);L[m+456>>2]=n;ea=L[f+16>>2];L[m+484>>2]=ea;ha=L[f+20>>2];L[m+488>>2]=ha;p=L[f+24>>2];L[m+492>>2]=p;ga=p;fa=n;n=L[b>>2];p=L[b+4>>2];y=L[b+8>>2];q=L[a>>2];o=L[a+4>>2];s=L[a+8>>2];L[m+440>>2]=O(ga+O(O(O(fa*n)+O(G*p))+O(aa*y)))-O(M+O(O(O(U*q)+O(A*o))+O(w*s)));L[m+436>>2]=O(ha+O(O(O(da*n)+O(ba*p))+O($*y)))-O(T+O(O(O(S*q)+O(z*o))+O(t*s)));L[m+432>>2]=O(ea+O(O(O(Q*n)+O(Z*p))+O(ca*y)))-O(X+O(O(O(D*q)+O(u*o))+O(E*s)));n=L[g>>2];r=m+432|0;Ra[H[a+64>>2]](a,r,m+496|0,i,m+192|0,m+144|0);p=L[m+192>>2];y=L[m+144>>2];Ra[H[b+64>>2]](b,r,m+448|0,j,m+368|0,m+320|0);a:{b:{q=L[m+368>>2];if(!(q>O(n+y))){o=n;n=L[m+320>>2];if(!(p>O(o+n))){break b}}a=0;break a}y=O(y-q);n=O(n-p);L[m+428>>2]=n>y?y:n;p=L[e+8>>2];y=L[e+4>>2];n=L[e+12>>2];q=L[e>>2];s=L[f>>2];Q=L[e+16>>2];$=L[f+16>>2];o=O(Q-$);u=O(o+o);aa=L[e+20>>2];Z=L[f+20>>2];o=O(aa-Z);z=O(o+o);A=L[f+4>>2];D=L[f+8>>2];ba=L[e+24>>2];ca=L[f+24>>2];o=O(ba-ca);E=O(o+o);S=O(O(O(O(-s)*u)-O(z*A))-O(D*E));o=L[f+12>>2];T=O(O(o*o)+O(-.5));L[m+412>>2]=O(O(E*T)+O(o*O(O(A*u)-O(s*z))))-O(D*S);L[m+408>>2]=O(O(z*T)+O(o*O(O(s*E)-O(D*u))))-O(A*S);da=O(q*A);ea=O(o*p);ha=O(n*D);ia=O(s*y);w=O(da+O(O(ea-ha)-ia));ma=O(p*s);fa=O(o*y);na=O(n*A);oa=O(D*q);U=O(ma+O(O(fa-na)-oa));M=O(U+U);ka=O(w*M);t=O(O(D*p)+O(O(A*y)+O(O(o*n)+O(s*q))));ta=O(y*D);ua=O(o*q);va=O(n*s);wa=O(A*p);G=O(ta+O(O(ua-va)-wa));X=O(G+G);la=O(t*X);L[m+396>>2]=ka-la;L[m+388>>2]=la+ka;G=O(O(1)-O(G*X));ka=O(U*M);L[m+400>>2]=G-ka;ga=G;G=O(w+w);la=O(w*G);L[m+384>>2]=ga-la;L[m+404>>2]=O(O(u*T)+O(o*O(O(D*z)-O(A*E))))-O(s*S);o=O(w*X);s=O(t*M);L[m+392>>2]=o+s;A=O(X*U);D=O(t*G);L[m+380>>2]=A-D;L[m+376>>2]=o-s;L[m+372>>2]=A+D;L[m+368>>2]=O(O(1)-ka)-la;o=O($-Q);A=O(o+o);o=O(Z-aa);D=O(o+o);o=O(ca-ba);w=O(o+o);u=O(O(O(O(-q)*A)-O(D*y))-O(p*w));S=O(O(n*n)+O(-.5));L[m+364>>2]=O(O(w*S)+O(n*O(O(y*A)-O(q*D))))-O(p*u);L[m+360>>2]=O(O(D*S)+O(n*O(O(q*w)-O(p*A))))-O(y*u);s=O(wa+O(O(va-ua)-ta));o=O(s+s);z=O(oa+O(O(na-fa)-ma));E=O(z+z);U=O(O(1)-O(s*o));X=O(z*E);L[m+352>>2]=U-X;s=O(ia+O(O(ha-ea)-da));T=O(s*E);M=O(t*o);L[m+348>>2]=T-M;L[m+340>>2]=M+T;G=U;U=O(s+s);T=O(s*U);L[m+336>>2]=G-T;L[m+356>>2]=O(O(A*S)+O(n*O(O(D*p)-O(y*w))))-O(q*u);n=O(o*s);p=O(t*E);L[m+344>>2]=n+p;y=O(o*z);q=O(t*U);L[m+332>>2]=y-q;L[m+328>>2]=n-p;L[m+324>>2]=y+q;L[m+320>>2]=O(O(1)-X)-T;xa=32767;ya=32767;r=1;while(1){c:{y=L[g>>2];za=r;d:{if(r){H[m+40>>2]=2139095039;H[m>>2]=2139095039;o=L[m+504>>2];s=L[m+496>>2];A=L[m+500>>2];D=L[m+516>>2];t=L[m+508>>2];w=L[m+512>>2];u=L[m+528>>2];z=L[m+520>>2];E=L[m+524>>2];n=L[m+432>>2];p=L[m+436>>2];q=L[m+440>>2];L[m+104>>2]=-q;L[m+100>>2]=-p;L[m+96>>2]=-n;if(!iY(a,b,m+496|0,m+448|0,i,j,m+320|0,O(O(o*q)+O(O(s*n)+O(A*p))),O(O(D*q)+O(O(t*n)+O(p*w))),O(O(u*q)+O(O(z*n)+O(p*E))),m+40|0,m+192|0,m+256|0,y,m+96|0)){break c}n=L[m+440>>2];p=L[m+432>>2];q=L[m+436>>2];if(!iY(b,a,m+448|0,m+496|0,j,i,m+368|0,O(-O(O(L[m+456>>2]*n)+O(O(L[m+448>>2]*p)+O(L[m+452>>2]*q)))),O(-O(O(L[m+468>>2]*n)+O(O(L[m+460>>2]*p)+O(q*L[m+464>>2])))),O(-O(O(L[m+480>>2]*n)+O(O(L[m+472>>2]*p)+O(q*L[m+476>>2])))),m,m+144|0,m+304|0,y,m+432|0)){break c}H[m+288>>2]=0;n=L[m+40>>2];p=L[m>>2];e:{if(!(n>p)){q=L[m+196>>2];o=L[m+192>>2];p=L[m+200>>2];break e}H[m+288>>2]=1;q=L[m+148>>2];o=L[m+144>>2];n=p;p=L[m+152>>2]}L[m+424>>2]=p;L[m+420>>2]=q;L[m+416>>2]=o;L[m+428>>2]=n;break d}R=m+368|0;ra=m+304|0;pa=0;r=Oa-6320|0;Oa=r;F=m+496|0;o=L[F+20>>2];s=L[F+16>>2];A=L[F+32>>2];D=L[F+28>>2];t=L[F+12>>2];w=L[F+24>>2];u=L[F+8>>2];z=L[F>>2];E=L[F+4>>2];_=m+432|0;n=L[_>>2];p=L[_+4>>2];q=L[_+8>>2];ja=r-((H[a+16>>2]<<2)+15&-16)|0;Oa=ja;H[r+6296>>2]=2139095039;L[r+3184>>2]=-q;L[r+3180>>2]=-p;L[r+3176>>2]=-n;K=m+448|0;V=m+320|0;Aa=m+256|0;Y=0;f:{if(!jY(a,b,F,K,i,j,V,O(O(u*q)+O(O(z*n)+O(E*p))),O(O(o*q)+O(O(t*n)+O(p*s))),O(O(A*q)+O(O(w*n)+O(p*D))),r+6296|0,r+6280|0,Aa,ja,r+6300|0,y,r+3176|0)){break f}o=L[K+20>>2];s=L[K+16>>2];A=L[K+32>>2];D=L[K+28>>2];t=L[K+12>>2];w=L[K+24>>2];n=L[_+8>>2];u=L[K+8>>2];p=L[_>>2];z=L[K>>2];q=L[_+4>>2];E=L[K+4>>2];sa=ja-((H[b+16>>2]<<2)+15&-16)|0;Oa=sa;H[r+6272>>2]=2139095039;Y=0;if(!jY(b,a,K,F,j,i,R,O(-O(O(u*n)+O(O(z*p)+O(E*q)))),O(-O(O(o*n)+O(O(t*p)+O(q*s)))),O(-O(O(A*n)+O(O(w*p)+O(q*D)))),r+6272|0,r+6256|0,ra,sa,r+6276|0,y,_)){break f}w=L[r+6288>>2];A=L[r+6284>>2];D=L[r+6280>>2];n=L[r+6296>>2];H[m+288>>2]=0;p=L[r+6272>>2];if(p>2];A=L[r+6260>>2];D=L[r+6256>>2];H[m+288>>2]=1;n=p}H[r+3176>>2]=0;H[r+96>>2]=0;Y=H[b+24>>2]+N(H[ra>>2],20)|0;S=L[Y+12>>2];p=L[Y+8>>2];q=L[Y>>2];o=L[Y+4>>2];Y=H[a+24>>2]+N(H[Aa>>2],20)|0;U=L[Y+12>>2];X=L[j+68>>2];T=L[j+60>>2];M=L[j- -64>>2];G=L[j+44>>2];Q=L[j+40>>2];$=L[j+56>>2];aa=L[j+48>>2];Z=L[j+52>>2];ba=L[R+44>>2];ca=L[R+32>>2];da=L[R+20>>2];ea=L[R+40>>2];ha=L[j+36>>2];ia=L[R+8>>2];ma=L[R+36>>2];fa=L[R+24>>2];na=L[R>>2];oa=L[R+12>>2];s=L[Y+8>>2];t=L[Y>>2];u=L[Y+4>>2];z=O(O(L[i+44>>2]*s)+O(O(L[i+36>>2]*t)+O(L[i+40>>2]*u)));E=O(O(L[i+68>>2]*s)+O(O(L[i+60>>2]*t)+O(u*L[i- -64>>2])));t=O(O(L[i+56>>2]*s)+O(O(L[i+48>>2]*t)+O(u*L[i+52>>2])));s=O(O(1)/O(W(O(O(E*E)+O(O(z*z)+O(t*t))))));u=O(z*s);t=O(t*s);z=O(E*s);E=O(O(O(u*L[R+4>>2])+O(t*L[R+16>>2]))+O(z*L[R+28>>2]));L[r+84>>2]=E;fa=O(O(O(u*na)+O(t*oa))+O(z*fa));L[r+80>>2]=fa;t=O(O(O(u*ia)+O(t*da))+O(z*ca));L[r+88>>2]=t;L[r+92>>2]=O(U*s)-O(O(ba*t)+O(O(ma*fa)+O(E*ea)));u=L[V+44>>2];z=L[V+32>>2];E=L[V+20>>2];U=L[V+40>>2];ba=L[V+8>>2];ca=L[V+36>>2];da=L[V+24>>2];ea=L[V>>2];ia=L[V+12>>2];s=O(O(X*p)+O(O(T*q)+O(o*M)));t=O(O(G*p)+O(O(ha*q)+O(Q*o)));q=O(O($*p)+O(O(aa*q)+O(o*Z)));p=O(O(1)/O(W(O(O(s*s)+O(O(t*t)+O(q*q))))));o=O(t*p);q=O(q*p);s=O(s*p);t=O(O(O(o*L[V+4>>2])+O(q*L[V+16>>2]))+O(s*L[V+28>>2]));L[r+68>>2]=t;X=O(O(O(o*ea)+O(q*ia))+O(s*da));L[r+64>>2]=X;q=O(O(O(o*ba)+O(q*E))+O(s*z));L[r+72>>2]=q;L[r+76>>2]=O(S*p)-O(O(u*q)+O(O(ca*X)+O(t*U)));p=L[d+16>>2];q=L[d+20>>2];o=L[c+16>>2];s=L[d+12>>2];t=L[c+12>>2];u=L[d>>2];z=L[d+4>>2];E=L[d+8>>2];S=L[c>>2];U=L[c+4>>2];X=L[c+8>>2];L[r+60>>2]=L[c+20>>2]+y;L[r+56>>2]=o+y;L[r+36>>2]=q+y;L[r+32>>2]=p+y;L[r+48>>2]=X-y;L[r+44>>2]=U-y;L[r+40>>2]=S-y;L[r+24>>2]=E-y;L[r+20>>2]=z-y;L[r+16>>2]=u-y;L[r+52>>2]=t+y;L[r+28>>2]=s+y;kY(r+3176|0,ja,H[r+6300>>2],H[a+24>>2],H[a+28>>2],H[a+32>>2],F,r- -64|0,R,r+16|0,y,i);kY(r+96|0,sa,H[r+6276>>2],H[b+24>>2],H[b+28>>2],H[b+32>>2],K,r+80|0,V,r+40|0,y,j);Y=H[r+3176>>2];g:{h:{if(!Y){R=0;break h}sa=H[r+96>>2];if(!sa){R=0;break h}R=1;while(1){V=(r+3176|0)+N(pa,12)|0;ja=0;while(1){q=L[V+4>>2];ra=(r+96|0)+N(ja,12)|0;o=L[ra+8>>2];s=L[ra+4>>2];u=L[V+8>>2];p=O(O(q*o)-O(s*u));z=L[V+12>>2];t=O(z*s);s=L[ra+12>>2];t=O(t-O(s*q));u=O(O(u*s)-O(o*z));i:{if(!(O(P(p))>O(9.999999974752427e-7)?1:O(P(u))>O(9.999999974752427e-7)|O(P(t))>O(9.999999974752427e-7))){break i}q=O(0);o=O(0);s=O(0);z=O(O(p*p)+O(O(u*u)+O(t*t)));if(z>O(0)){o=p;p=O(O(1)/O(W(z)));s=O(o*p);o=O(t*p);q=O(u*p)}L[r+8>>2]=s;L[r>>2]=q;L[r+4>>2]=o;p=O(O(O(O(-L[_>>2])*q)-O(o*L[_+4>>2]))-O(L[_+8>>2]*s));t=O(O(L[F+32>>2]*s)+O(O(L[F+24>>2]*q)+O(o*L[F+28>>2])));G=O((x(2,H[a+56>>2]|(B(t),v(2))&-2147483648),C())*t);t=O(O(L[F+8>>2]*s)+O(O(L[F>>2]*q)+O(o*L[F+4>>2])));U=O((x(2,H[a+48>>2]|(B(t),v(2))&-2147483648),C())*t);t=O(O(L[F+20>>2]*s)+O(O(L[F+12>>2]*q)+O(o*L[F+16>>2])));t=O(G+O(U+O(t*(x(2,H[a+52>>2]|(B(t),v(2))&-2147483648),C()))));u=L[a+44>>2];G=t>u?t:u;t=O(O(L[K+32>>2]*s)+O(O(L[K+24>>2]*q)+O(o*L[K+28>>2])));U=O((x(2,H[b+56>>2]|(B(t),v(2))&-2147483648),C())*t);t=O(O(L[K+8>>2]*s)+O(O(L[K>>2]*q)+O(o*L[K+4>>2])));q=O(O(L[K+20>>2]*s)+O(O(L[K+12>>2]*q)+O(o*L[K+16>>2])));q=O(U+O(O((x(2,H[b+48>>2]|(B(t),v(2))&-2147483648),C())*t)+O(q*(x(2,H[b+52>>2]|(B(q),v(2))&-2147483648),C()))));o=L[b+44>>2];q=O(G+(q>o?q:o));o=O(p+q);p=O(q-p);if((p>o?o:p)>n){break i}Ra[H[a+64>>2]](a,r,F,i,r+6308|0,r+6304|0);p=L[r+6308>>2];q=L[r+6304>>2];Ra[H[b+64>>2]](b,r,K,j,r+6316|0,r+6312|0);o=L[r+6316>>2];if(o>O(q+y)){break g}s=L[r+6312>>2];if(p>O(s+y)){break g}q=O(q-o);p=O(s-p);p=p>q?q:p;if(!(p>2];A=L[r+4>>2];D=L[r>>2];H[m+288>>2]=2;n=p}ja=ja+1|0;if((sa|0)!=(ja|0)){continue}break}pa=pa+1|0;R=Y>>>0>pa>>>0;if((Y|0)!=(pa|0)){continue}break}}L[m+428>>2]=n;L[m+424>>2]=w;L[m+420>>2]=A;L[m+416>>2]=D}Y=!R}Oa=r+6320|0;if(!(Y&1)){break c}p=L[m+424>>2];q=L[m+420>>2];o=L[m+416>>2]}if(O(O(L[m+440>>2]*p)+O(O(L[m+432>>2]*o)+O(L[m+436>>2]*q)))>2]=p;q=O(-q);L[m+420>>2]=q;o=O(-o);L[m+416>>2]=o}j:{k:{switch(H[m+288>>2]){case 1:r=H[a+68>>2];L[m+200>>2]=O(L[m+528>>2]*p)+O(O(L[m+520>>2]*o)+O(q*L[m+524>>2]));L[m+196>>2]=O(L[m+516>>2]*p)+O(O(L[m+508>>2]*o)+O(q*L[m+512>>2]));L[m+192>>2]=O(L[m+504>>2]*p)+O(O(L[m+496>>2]*o)+O(L[m+500>>2]*q));xa=Ra[r|0](a,i,m+192|0)|0;ya=H[m+304>>2];break j;case 2:r=H[a+68>>2];L[m+200>>2]=O(L[m+528>>2]*p)+O(O(L[m+520>>2]*o)+O(q*L[m+524>>2]));L[m+196>>2]=O(L[m+516>>2]*p)+O(O(L[m+508>>2]*o)+O(q*L[m+512>>2]));L[m+192>>2]=O(L[m+504>>2]*p)+O(O(L[m+496>>2]*o)+O(L[m+500>>2]*q));F=m+192|0;xa=Ra[r|0](a,i,F)|0;r=H[b+68>>2];n=O(-o);L[m+200>>2]=O(O(L[m+472>>2]*n)-O(L[m+476>>2]*q))-O(L[m+480>>2]*p);L[m+196>>2]=O(O(L[m+460>>2]*n)-O(L[m+464>>2]*q))-O(L[m+468>>2]*p);L[m+192>>2]=O(O(L[m+448>>2]*n)-O(L[m+452>>2]*q))-O(L[m+456>>2]*p);ya=Ra[r|0](b,j,F)|0;break j;case 0:break k;default:break j}}r=H[b+68>>2];xa=H[m+256>>2];n=O(-o);L[m+200>>2]=O(O(L[m+472>>2]*n)-O(L[m+476>>2]*q))-O(L[m+480>>2]*p);L[m+196>>2]=O(O(L[m+460>>2]*n)-O(L[m+464>>2]*q))-O(L[m+468>>2]*p);L[m+192>>2]=O(O(L[m+448>>2]*n)-O(L[m+452>>2]*q))-O(L[m+456>>2]*p);ya=Ra[r|0](b,j,m+192|0)|0}n=L[m+428>>2];F=n>=O(0);u=O(-n);K=N(ya,20);R=H[b+24>>2];r=H[a+24>>2]+N(xa,20)|0;l:{if(k){V=H[r>>2];_=H[r+4>>2];pa=H[r+12>>2];H[m+296>>2]=H[r+8>>2];H[m+300>>2]=pa;H[m+288>>2]=V;H[m+292>>2]=_;n=L[r>>2];s=L[m+504>>2];y=L[r+4>>2];t=L[m+516>>2];w=L[r+8>>2];A=L[m+528>>2];U=O(O(O(n*s)+O(y*t))+O(w*A));D=L[m+496>>2];z=L[m+508>>2];E=L[m+520>>2];X=O(O(O(n*D)+O(y*z))+O(w*E));S=L[m+500>>2];T=L[m+512>>2];M=L[m+524>>2];n=O(O(O(n*S)+O(y*T))+O(w*M));break l}n=L[r+8>>2];y=L[r>>2];s=L[r+4>>2];A=O(O(L[i+68>>2]*n)+O(O(L[i+60>>2]*y)+O(s*L[i+64>>2])));D=O(O(L[i+44>>2]*n)+O(O(L[i+36>>2]*y)+O(L[i+40>>2]*s)));y=O(O(L[i+56>>2]*n)+O(O(L[i+48>>2]*y)+O(s*L[i+52>>2])));n=O(O(1)/O(W(O(O(A*A)+O(O(D*D)+O(y*y))))));L[m+300>>2]=L[r+12>>2]*n;y=O(y*n);L[m+292>>2]=y;t=L[m+516>>2];w=O(D*n);L[m+288>>2]=w;s=L[m+504>>2];n=O(A*n);L[m+296>>2]=n;A=L[m+528>>2];U=O(O(O(w*s)+O(y*t))+O(n*A));D=L[m+496>>2];z=L[m+508>>2];E=L[m+520>>2];X=O(O(O(D*w)+O(y*z))+O(n*E));S=L[m+500>>2];T=L[m+512>>2];M=L[m+524>>2];n=O(O(O(w*S)+O(y*T))+O(n*M))}$=F?O(0):u;F=K+R|0;L[m+312>>2]=U;y=n;L[m+308>>2]=n;L[m+304>>2]=X;m:{if(l){K=H[F>>2];R=H[F+4>>2];V=H[F+12>>2];H[m+264>>2]=H[F+8>>2];H[m+268>>2]=V;H[m+256>>2]=K;H[m+260>>2]=R;n=L[F>>2];w=L[F+4>>2];G=O(O(n*L[m+456>>2])+O(w*L[m+468>>2]));Q=O(O(n*L[m+452>>2])+O(w*L[m+464>>2]));w=O(O(n*L[m+448>>2])+O(w*L[m+460>>2]));n=L[F+8>>2];break m}n=L[F+8>>2];w=L[F>>2];u=L[F+4>>2];G=O(O(L[j+68>>2]*n)+O(O(L[j+60>>2]*w)+O(u*L[j+64>>2])));Q=O(O(L[j+44>>2]*n)+O(O(L[j+36>>2]*w)+O(L[j+40>>2]*u)));u=O(O(L[j+56>>2]*n)+O(O(L[j+48>>2]*w)+O(u*L[j+52>>2])));w=O(O(1)/O(W(O(O(G*G)+O(O(Q*Q)+O(u*u))))));L[m+268>>2]=L[F+12>>2]*w;n=O(G*w);L[m+264>>2]=n;u=O(u*w);L[m+260>>2]=u;G=L[m+468>>2];w=O(Q*w);L[m+256>>2]=w;G=O(O(w*L[m+456>>2])+O(u*G));Q=O(O(w*L[m+452>>2])+O(u*L[m+464>>2]));w=O(O(L[m+448>>2]*w)+O(u*L[m+460>>2]))}ca=O(G+O(n*L[m+480>>2]));L[m+280>>2]=ca;da=O(w+O(n*L[m+472>>2]));L[m+272>>2]=da;ea=O(Q+O(n*L[m+476>>2]));L[m+276>>2]=ea;G=O($+L[g+4>>2]);n=O(-G);w=O(p*n);L[m+248>>2]=w;u=O(q*n);L[m+244>>2]=u;n=O(o*n);L[m+240>>2]=n;aa=L[m+540>>2];$=L[m+536>>2];Q=L[m+532>>2];L[m+224>>2]=A;L[m+220>>2]=M;L[m+216>>2]=E;L[m+212>>2]=t;L[m+208>>2]=T;L[m+204>>2]=z;L[m+200>>2]=s;L[m+196>>2]=S;L[m+192>>2]=D;Q=O(Q-n);L[m+228>>2]=Q;$=O($-u);L[m+232>>2]=$;aa=O(aa-w);L[m+236>>2]=aa;s=L[e+8>>2];A=L[e+4>>2];n=L[e+12>>2];D=L[e>>2];w=L[f>>2];ha=L[f+16>>2];t=O(Q-ha);E=O(t+t);ia=L[f+20>>2];t=O($-ia);S=O(t+t);u=L[f+4>>2];z=L[f+8>>2];ma=L[f+24>>2];t=O(aa-ma);T=O(t+t);M=O(O(O(O(-w)*E)-O(S*u))-O(z*T));t=L[f+12>>2];Z=O(O(t*t)+O(-.5));L[m+188>>2]=O(O(T*Z)+O(t*O(O(u*E)-O(w*S))))-O(z*M);L[m+184>>2]=O(O(S*Z)+O(t*O(O(w*T)-O(z*E))))-O(u*M);L[m+180>>2]=O(O(E*Z)+O(t*O(O(z*S)-O(u*T))))-O(w*M);fa=O(D*u);na=O(t*s);oa=O(n*z);ka=O(w*A);S=O(fa+O(O(na-oa)-ka));ta=O(s*w);ua=O(t*A);va=O(n*u);wa=O(z*D);T=O(ta+O(O(ua-va)-wa));Z=O(T+T);M=O(S*Z);E=O(O(z*s)+O(O(u*A)+O(O(t*n)+O(D*w))));la=O(A*z);ga=O(t*D);Ba=O(n*w);Ca=O(u*s);ba=O(la+O(O(ga-Ba)-Ca));t=O(ba+ba);w=O(E*t);L[m+172>>2]=M-w;u=O(S*t);z=O(E*Z);L[m+168>>2]=u+z;L[m+164>>2]=M+w;w=O(T*t);Da=O(S+S);M=O(E*Da);L[m+156>>2]=w-M;L[m+152>>2]=u-z;L[m+148>>2]=w+M;w=O(ha-Q);w=O(w+w);u=O(ia-$);u=O(u+u);z=O(ma-aa);z=O(z+z);M=O(O(O(O(-D)*w)-O(u*A))-O(s*z));Q=O(O(n*n)+O(-.5));L[m+140>>2]=O(O(z*Q)+O(n*O(O(A*w)-O(D*u))))-O(s*M);L[m+136>>2]=O(O(u*Q)+O(n*O(O(D*z)-O(s*w))))-O(A*M);L[m+132>>2]=O(O(w*Q)+O(n*O(O(s*u)-O(A*z))))-O(D*M);n=O(ka+O(O(oa-na)-fa));s=O(wa+O(O(va-ua)-ta));D=O(s+s);u=O(n*D);w=O(Ca+O(O(Ba-ga)-la));A=O(w+w);z=O(E*A);L[m+124>>2]=u-z;M=O(n*A);Q=O(E*D);L[m+120>>2]=M+Q;L[m+116>>2]=u+z;u=O(s*A);z=O(n+n);E=O(E*z);L[m+108>>2]=u-E;L[m+104>>2]=M-Q;L[m+100>>2]=u+E;t=O(O(1)-O(ba*t));u=O(T*Z);L[m+176>>2]=t-u;ga=t;t=O(S*Da);L[m+160>>2]=ga-t;L[m+144>>2]=O(O(1)-u)-t;A=O(O(1)-O(w*A));s=O(s*D);L[m+128>>2]=A-s;n=O(n*z);L[m+112>>2]=A-n;L[m+96>>2]=O(O(1)-s)-n;R=I[r+18|0];V=0;K=0;_=0;if(!k){K=qa-(N(R,12)+15&8176)|0;Oa=K;_=K-(R+15&496)|0;qa=_;Oa=_}JY(m+92|0,m+88|0,K,_,k,H[a+28>>2],H[a+32>>2]+J[r+16>>1]|0,R,i);R=I[F+18|0];K=0;if(!l){V=qa-(N(R,12)+15&8176)|0;Oa=V;K=V-(R+15&496)|0;qa=K;Oa=K}JY(m+84|0,m+80|0,V,K,l,H[b+28>>2],H[b+32>>2]+J[F+16>>1]|0,R,j);vY(m+40|0,m+288|0);vY(m,m+256|0);n:{o:{if(O(P(O(O(U*p)+O(O(X*o)+O(y*q)))))>O(P(O(O(ca*p)+O(O(da*o)+O(q*ea)))))){if(wY(I[r+18|0],H[m+92>>2],H[m+88>>2],m+192|0,m+288|0,m+40|0,I[F+18|0],H[m+84>>2],H[m+80>>2],m+448|0,m+256|0,m,m+304|0,m+144|0,m+96|0,-1,h,1,m+240|0,G)){break o}break n}if(!wY(I[F+18|0],H[m+84>>2],H[m+80>>2],m+448|0,m+256|0,m,I[r+18|0],H[m+92>>2],H[m+88>>2],m+192|0,m+288|0,m+40|0,m+272|0,m+96|0,m+144|0,-1,h,0,m+240|0,G)){break n}}a=1;break a}r=za-1|0;if(za){continue}}break}a=0}Oa=m+544|0;return a}function NP(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,o=0,p=O(0),q=0,r=0,s=0;f=H[a+28>>2];q=H[a+20>>2];a=0;d=Oa-48|0;Oa=d;b=H[f+1016>>2];r=f+1160|0,s=Ra[H[H[b>>2]+4>>2]](b)|0,H[r>>2]=s;if(I[f+2360|0]&2){if(I[f+4620|0]){a:{if(!I[f+4620|0]){break a}n=H[f+2168>>2];i=H[n+8>>2];if(!i){break a}k=H[n+4>>2];while(1){c=H[k+(a<<2)>>2];e=H[c+16>>2];h=J[e+10>>1];b:{if(h&2){a=a+1|0;break b}a=a+1|0;if(!J[e+8>>1]|!(h&8)){break b}l=H[c+12>>2];b=H[n+44>>2]+H[e>>2]|0;c=H[H[c+8>>2]+44>>2];c:{if(I[c+9|0]){L[b+12>>2]=L[c+80>>2];L[b+16>>2]=L[c+84>>2];L[b+20>>2]=L[c+88>>2];L[b+36>>2]=L[c+96>>2];L[b+40>>2]=L[c+100>>2];p=L[c+104>>2];break c}H[b+36>>2]=0;H[b+40>>2]=0;H[b+20>>2]=0;H[b+12>>2]=0;H[b+16>>2]=0;p=O(0)}L[b+44>>2]=p;c=H[l+44>>2];d:{if(I[c+9|0]){L[b+24>>2]=L[c+80>>2];L[b+28>>2]=L[c+84>>2];L[b+32>>2]=L[c+88>>2];L[b+48>>2]=L[c+96>>2];L[b+52>>2]=L[c+100>>2];p=L[c+104>>2];break d}H[b+48>>2]=0;H[b+52>>2]=0;H[b+32>>2]=0;H[b+24>>2]=0;H[b+28>>2]=0;p=O(0)}L[b+56>>2]=p;G[e+10>>1]=h&65527}if((a|0)!=(i|0)){continue}break}}}a=H[f+3064>>2];if((a|0)!=2){n=f+3060|0;if((a|0)>0){e=H[n>>2];a=e+N(a,40)|0;while(1){Ra[H[H[e>>2]>>2]](e)|0;e=e+40|0;if(a>>>0>e>>>0){continue}break}}H[f+3064>>2]=0;a=H[f+3004>>2];if((a|0)>0){e=H[f+3e3>>2];a=e+N(a,40)|0;while(1){Ra[H[H[e>>2]>>2]](e)|0;e=e+40|0;if(a>>>0>e>>>0){continue}break}}H[f+3004>>2]=0;a=H[f+3052>>2];if((a|0)>0){e=H[f+3048>>2];a=e+N(a,40)|0;while(1){Ra[H[H[e>>2]>>2]](e)|0;e=e+40|0;if(a>>>0>e>>>0){continue}break}}H[f+3052>>2]=0;a=H[f+3040>>2];if((a|0)>0){e=H[f+3036>>2];a=e+N(a,40)|0;while(1){Ra[H[H[e>>2]>>2]](e)|0;e=e+40|0;if(a>>>0>e>>>0){continue}break}}H[f+3040>>2]=0;if(!(H[f+3068>>2]&2147483646)){a=H[33808];b=Ra[H[H[a>>2]+20>>2]](a)|0?43336:55639;c=Ra[H[H[a+12>>2]+8>>2]](a+12|0,80,b,13582,553)|0;a=H[n+4>>2];e:{if((a|0)<=0){break e}e=c+N(a,40)|0;b=H[n>>2];a=c;while(1){H[a>>2]=119540;h=H[b+12>>2];H[a+8>>2]=H[b+8>>2];H[a+12>>2]=h;H[a+16>>2]=H[b+16>>2];H[a+20>>2]=H[b+20>>2];h=H[b+24>>2];H[a>>2]=123492;H[a+24>>2]=h;h=H[b+32>>2];H[a+28>>2]=H[b+28>>2];H[a+32>>2]=h;b=b+40|0;a=a+40|0;if(e>>>0>a>>>0){continue}break}b=H[n+4>>2];if((b|0)<=0){break e}a=H[n>>2];b=a+N(b,40)|0;while(1){Ra[H[H[a>>2]>>2]](a)|0;a=a+40|0;if(b>>>0>a>>>0){continue}break}}f:{if(H[n+8>>2]<0){break f}a=H[n>>2];if(!a){break f}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,a)}H[n+8>>2]=2;H[n>>2]=c}h=f+3e3|0;if(!(H[f+3008>>2]&2147483646)){a=H[33808];b=Ra[H[H[a>>2]+20>>2]](a)|0?43100:55639;c=Ra[H[H[a+12>>2]+8>>2]](a+12|0,80,b,13582,553)|0;a=H[h+4>>2];g:{if((a|0)<=0){break g}e=c+N(a,40)|0;b=H[h>>2];a=c;while(1){H[a>>2]=119540;i=H[b+12>>2];H[a+8>>2]=H[b+8>>2];H[a+12>>2]=i;H[a+16>>2]=H[b+16>>2];H[a+20>>2]=H[b+20>>2];i=H[b+24>>2];H[a>>2]=123568;H[a+24>>2]=i;i=H[b+32>>2];H[a+28>>2]=H[b+28>>2];H[a+32>>2]=i;b=b+40|0;a=a+40|0;if(e>>>0>a>>>0){continue}break}b=H[h+4>>2];if((b|0)<=0){break g}a=H[h>>2];b=a+N(b,40)|0;while(1){Ra[H[H[a>>2]>>2]](a)|0;a=a+40|0;if(b>>>0>a>>>0){continue}break}}h:{if(H[h+8>>2]<0){break h}a=H[h>>2];if(!a){break h}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,a)}H[h+8>>2]=2;H[h>>2]=c}i=f+3012|0;if(!(H[f+3020>>2]&2147483646)){a=H[33808];b=Ra[H[H[a>>2]+20>>2]](a)|0?46924:55639;c=Ra[H[H[a+12>>2]+8>>2]](a+12|0,80,b,13582,553)|0;a=H[i+4>>2];i:{if((a|0)<=0){break i}e=c+N(a,40)|0;a=H[i>>2];b=c;while(1){H[b>>2]=119540;k=H[a+12>>2];H[b+8>>2]=H[a+8>>2];H[b+12>>2]=k;H[b+16>>2]=H[a+16>>2];H[b+20>>2]=H[a+20>>2];k=H[a+24>>2];H[b>>2]=123644;H[b+24>>2]=k;k=H[a+32>>2];H[b+28>>2]=H[a+28>>2];H[b+32>>2]=k;a=a+40|0;b=b+40|0;if(e>>>0>b>>>0){continue}break}a=H[i+4>>2];if((a|0)<=0){break i}b=H[i>>2];a=b+N(a,40)|0;while(1){Ra[H[H[b>>2]>>2]](b)|0;b=b+40|0;if(a>>>0>b>>>0){continue}break}}j:{if(H[i+8>>2]<0){break j}a=H[i>>2];if(!a){break j}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,a)}H[i+8>>2]=2;H[i>>2]=c}k=f+3024|0;if(!(H[f+3032>>2]&2147483646)){a=H[33808];b=Ra[H[H[a>>2]+20>>2]](a)|0?46676:55639;a=Ra[H[H[a+12>>2]+8>>2]](a+12|0,80,b,13582,553)|0;b=H[k+4>>2];k:{if((b|0)<=0){break k}c=a+N(b,40)|0;e=H[k>>2];b=a;while(1){H[b>>2]=119540;l=H[e+12>>2];H[b+8>>2]=H[e+8>>2];H[b+12>>2]=l;H[b+16>>2]=H[e+16>>2];H[b+20>>2]=H[e+20>>2];l=H[e+24>>2];H[b>>2]=123720;H[b+24>>2]=l;l=H[e+32>>2];H[b+28>>2]=H[e+28>>2];H[b+32>>2]=l;e=e+40|0;b=b+40|0;if(c>>>0>b>>>0){continue}break}c=H[k+4>>2];if((c|0)<=0){break k}b=H[k>>2];c=b+N(c,40)|0;while(1){Ra[H[H[b>>2]>>2]](b)|0;b=b+40|0;if(c>>>0>b>>>0){continue}break}}l:{if(H[k+8>>2]<0){break l}b=H[k>>2];if(!b){break l}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}H[k+8>>2]=2;H[k>>2]=a}l=f+3048|0;if(!(H[f+3056>>2]&2147483646)){a=H[33808];b=Ra[H[H[a>>2]+20>>2]](a)|0?44072:55639;c=Ra[H[H[a+12>>2]+8>>2]](a+12|0,80,b,13582,553)|0;a=H[l+4>>2];m:{if((a|0)<=0){break m}e=c+N(a,40)|0;b=H[l>>2];a=c;while(1){H[a>>2]=119540;m=H[b+12>>2];H[a+8>>2]=H[b+8>>2];H[a+12>>2]=m;H[a+16>>2]=H[b+16>>2];H[a+20>>2]=H[b+20>>2];m=H[b+24>>2];H[a>>2]=123796;H[a+24>>2]=m;m=H[b+32>>2];H[a+28>>2]=H[b+28>>2];H[a+32>>2]=m;b=b+40|0;a=a+40|0;if(e>>>0>a>>>0){continue}break}b=H[l+4>>2];if((b|0)<=0){break m}a=H[l>>2];b=a+N(b,40)|0;while(1){Ra[H[H[a>>2]>>2]](a)|0;a=a+40|0;if(b>>>0>a>>>0){continue}break}}n:{if(H[l+8>>2]<0){break n}a=H[l>>2];if(!a){break n}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,a)}H[l+8>>2]=2;H[l>>2]=c}m=f+3036|0;if(!(H[f+3044>>2]&2147483646)){a=H[33808];b=Ra[H[H[a>>2]+20>>2]](a)|0?44296:55639;b=Ra[H[H[a+12>>2]+8>>2]](a+12|0,80,b,13582,553)|0;a=H[m+4>>2];o:{if((a|0)<=0){break o}c=b+N(a,40)|0;a=H[m>>2];e=b;while(1){H[e>>2]=119540;j=H[a+12>>2];H[e+8>>2]=H[a+8>>2];H[e+12>>2]=j;H[e+16>>2]=H[a+16>>2];H[e+20>>2]=H[a+20>>2];j=H[a+24>>2];H[e>>2]=123872;H[e+24>>2]=j;j=H[a+32>>2];H[e+28>>2]=H[a+28>>2];H[e+32>>2]=j;a=a+40|0;e=e+40|0;if(c>>>0>e>>>0){continue}break}a=H[m+4>>2];if((a|0)<=0){break o}e=H[m>>2];a=e+N(a,40)|0;while(1){Ra[H[H[e>>2]>>2]](e)|0;e=e+40|0;if(a>>>0>e>>>0){continue}break}}p:{if(H[m+8>>2]<0){break p}a=H[m>>2];if(!a){break p}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,a)}H[m+8>>2]=2;H[m>>2]=b}e=1;while(1){a=H[f+16>>2];b=H[f+20>>2];H[d+32>>2]=0;H[d+24>>2]=0;H[d+28>>2]=0;H[d+16>>2]=a;H[d+20>>2]=b;H[d+40>>2]=3056;H[d+36>>2]=f;H[d+8>>2]=123492;a=H[f+3064>>2];q:{if(a>>>0>=(H[f+3068>>2]&2147483647)>>>0){a=0;b=H[n+8>>2]&2147483647;j=b?b<<1:1;r:{if(!j){break r}b=N(j,40);if(!b){break r}a=H[33808];c=Ra[H[H[a>>2]+20>>2]](a)|0?43336:55639;a=Ra[H[H[a+12>>2]+8>>2]](a+12|0,b,c,13582,553)|0}b=H[n+4>>2];if((b|0)>0){o=N(b,40)+a|0;c=H[n>>2];b=a;while(1){H[b>>2]=119540;g=H[c+12>>2];H[b+8>>2]=H[c+8>>2];H[b+12>>2]=g;H[b+16>>2]=H[c+16>>2];H[b+20>>2]=H[c+20>>2];g=H[c+24>>2];H[b>>2]=123492;H[b+24>>2]=g;g=H[c+32>>2];H[b+28>>2]=H[c+28>>2];H[b+32>>2]=g;c=c+40|0;b=b+40|0;if(o>>>0>b>>>0){continue}break}b=H[n+4>>2]}b=N(b,40)+a|0;H[b>>2]=119540;c=H[d+20>>2];H[b+8>>2]=H[d+16>>2];H[b+12>>2]=c;H[b+16>>2]=H[d+24>>2];H[b+20>>2]=H[d+28>>2];c=H[d+32>>2];H[b>>2]=123492;H[b+24>>2]=c;c=H[d+40>>2];H[b+28>>2]=H[d+36>>2];H[b+32>>2]=c;c=H[n+4>>2];if((c|0)>0){b=H[n>>2];c=b+N(c,40)|0;while(1){Ra[H[H[b>>2]>>2]](b)|0;b=b+40|0;if(c>>>0>b>>>0){continue}break}}s:{if(H[n+8>>2]<0){break s}b=H[n>>2];if(!b){break s}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}H[n+8>>2]=j;H[n>>2]=a;H[n+4>>2]=H[n+4>>2]+1;break q}a=H[f+3060>>2]+N(a,40)|0;H[a>>2]=119540;b=H[d+20>>2];H[a+8>>2]=H[d+16>>2];H[a+12>>2]=b;H[a+16>>2]=H[d+24>>2];H[a+20>>2]=H[d+28>>2];b=H[d+32>>2];H[a>>2]=123492;H[a+24>>2]=b;b=H[d+40>>2];H[a+28>>2]=H[d+36>>2];H[a+32>>2]=b;H[f+3064>>2]=H[f+3064>>2]+1}a=H[f+16>>2];b=H[f+20>>2];H[d+32>>2]=0;H[d+24>>2]=0;H[d+28>>2]=0;H[d+16>>2]=a;H[d+20>>2]=b;H[d+40>>2]=3028;H[d+36>>2]=f;H[d+8>>2]=123568;a=H[f+3004>>2];t:{if(a>>>0>=(H[f+3008>>2]&2147483647)>>>0){a=0;b=H[h+8>>2]&2147483647;j=b?b<<1:1;u:{if(!j){break u}b=N(j,40);if(!b){break u}a=H[33808];c=Ra[H[H[a>>2]+20>>2]](a)|0?43100:55639;a=Ra[H[H[a+12>>2]+8>>2]](a+12|0,b,c,13582,553)|0}b=H[h+4>>2];if((b|0)>0){o=N(b,40)+a|0;c=H[h>>2];b=a;while(1){H[b>>2]=119540;g=H[c+12>>2];H[b+8>>2]=H[c+8>>2];H[b+12>>2]=g;H[b+16>>2]=H[c+16>>2];H[b+20>>2]=H[c+20>>2];g=H[c+24>>2];H[b>>2]=123568;H[b+24>>2]=g;g=H[c+32>>2];H[b+28>>2]=H[c+28>>2];H[b+32>>2]=g;c=c+40|0;b=b+40|0;if(o>>>0>b>>>0){continue}break}b=H[h+4>>2]}b=N(b,40)+a|0;H[b>>2]=119540;c=H[d+20>>2];H[b+8>>2]=H[d+16>>2];H[b+12>>2]=c;H[b+16>>2]=H[d+24>>2];H[b+20>>2]=H[d+28>>2];c=H[d+32>>2];H[b>>2]=123568;H[b+24>>2]=c;c=H[d+40>>2];H[b+28>>2]=H[d+36>>2];H[b+32>>2]=c;c=H[h+4>>2];if((c|0)>0){b=H[h>>2];c=b+N(c,40)|0;while(1){Ra[H[H[b>>2]>>2]](b)|0;b=b+40|0;if(c>>>0>b>>>0){continue}break}}v:{if(H[h+8>>2]<0){break v}b=H[h>>2];if(!b){break v}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}H[h+8>>2]=j;H[h>>2]=a;H[h+4>>2]=H[h+4>>2]+1;break t}a=H[f+3e3>>2]+N(a,40)|0;H[a>>2]=119540;b=H[d+20>>2];H[a+8>>2]=H[d+16>>2];H[a+12>>2]=b;H[a+16>>2]=H[d+24>>2];H[a+20>>2]=H[d+28>>2];b=H[d+32>>2];H[a>>2]=123568;H[a+24>>2]=b;b=H[d+40>>2];H[a+28>>2]=H[d+36>>2];H[a+32>>2]=b;H[f+3004>>2]=H[f+3004>>2]+1}a=H[f+16>>2];b=H[f+20>>2];H[d+32>>2]=0;H[d+24>>2]=0;H[d+28>>2]=0;H[d+16>>2]=a;H[d+20>>2]=b;H[d+40>>2]=55861;H[d+36>>2]=f;H[d+8>>2]=123644;a=H[f+3016>>2];w:{if(a>>>0>=(H[f+3020>>2]&2147483647)>>>0){a=0;b=H[i+8>>2]&2147483647;j=b?b<<1:1;x:{if(!j){break x}b=N(j,40);if(!b){break x}a=H[33808];c=Ra[H[H[a>>2]+20>>2]](a)|0?46924:55639;a=Ra[H[H[a+12>>2]+8>>2]](a+12|0,b,c,13582,553)|0}b=H[i+4>>2];if((b|0)>0){o=N(b,40)+a|0;c=H[i>>2];b=a;while(1){H[b>>2]=119540;g=H[c+12>>2];H[b+8>>2]=H[c+8>>2];H[b+12>>2]=g;H[b+16>>2]=H[c+16>>2];H[b+20>>2]=H[c+20>>2];g=H[c+24>>2];H[b>>2]=123644;H[b+24>>2]=g;g=H[c+32>>2];H[b+28>>2]=H[c+28>>2];H[b+32>>2]=g;c=c+40|0;b=b+40|0;if(o>>>0>b>>>0){continue}break}b=H[i+4>>2]}b=N(b,40)+a|0;H[b>>2]=119540;c=H[d+20>>2];H[b+8>>2]=H[d+16>>2];H[b+12>>2]=c;H[b+16>>2]=H[d+24>>2];H[b+20>>2]=H[d+28>>2];c=H[d+32>>2];H[b>>2]=123644;H[b+24>>2]=c;c=H[d+40>>2];H[b+28>>2]=H[d+36>>2];H[b+32>>2]=c;c=H[i+4>>2];if((c|0)>0){b=H[i>>2];c=b+N(c,40)|0;while(1){Ra[H[H[b>>2]>>2]](b)|0;b=b+40|0;if(c>>>0>b>>>0){continue}break}}y:{if(H[i+8>>2]<0){break y}b=H[i>>2];if(!b){break y}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}H[i+8>>2]=j;H[i>>2]=a;H[i+4>>2]=H[i+4>>2]+1;break w}a=H[f+3012>>2]+N(a,40)|0;H[a>>2]=119540;b=H[d+20>>2];H[a+8>>2]=H[d+16>>2];H[a+12>>2]=b;H[a+16>>2]=H[d+24>>2];H[a+20>>2]=H[d+28>>2];b=H[d+32>>2];H[a>>2]=123644;H[a+24>>2]=b;b=H[d+40>>2];H[a+28>>2]=H[d+36>>2];H[a+32>>2]=b;H[f+3016>>2]=H[f+3016>>2]+1}a=H[f+16>>2];b=H[f+20>>2];H[d+32>>2]=0;H[d+24>>2]=0;H[d+28>>2]=0;H[d+16>>2]=a;H[d+20>>2]=b;H[d+40>>2]=55719;H[d+36>>2]=f;H[d+8>>2]=123720;a=H[f+3028>>2];z:{if(a>>>0>=(H[f+3032>>2]&2147483647)>>>0){a=0;b=H[k+8>>2]&2147483647;j=b?b<<1:1;A:{if(!j){break A}b=N(j,40);if(!b){break A}a=H[33808];c=Ra[H[H[a>>2]+20>>2]](a)|0?46676:55639;a=Ra[H[H[a+12>>2]+8>>2]](a+12|0,b,c,13582,553)|0}b=H[k+4>>2];if((b|0)>0){o=N(b,40)+a|0;c=H[k>>2];b=a;while(1){H[b>>2]=119540;g=H[c+12>>2];H[b+8>>2]=H[c+8>>2];H[b+12>>2]=g;H[b+16>>2]=H[c+16>>2];H[b+20>>2]=H[c+20>>2];g=H[c+24>>2];H[b>>2]=123720;H[b+24>>2]=g;g=H[c+32>>2];H[b+28>>2]=H[c+28>>2];H[b+32>>2]=g;c=c+40|0;b=b+40|0;if(o>>>0>b>>>0){continue}break}b=H[k+4>>2]}b=N(b,40)+a|0;H[b>>2]=119540;c=H[d+20>>2];H[b+8>>2]=H[d+16>>2];H[b+12>>2]=c;H[b+16>>2]=H[d+24>>2];H[b+20>>2]=H[d+28>>2];c=H[d+32>>2];H[b>>2]=123720;H[b+24>>2]=c;c=H[d+40>>2];H[b+28>>2]=H[d+36>>2];H[b+32>>2]=c;c=H[k+4>>2];if((c|0)>0){b=H[k>>2];c=b+N(c,40)|0;while(1){Ra[H[H[b>>2]>>2]](b)|0;b=b+40|0;if(c>>>0>b>>>0){continue}break}}B:{if(H[k+8>>2]<0){break B}b=H[k>>2];if(!b){break B}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}H[k+8>>2]=j;H[k>>2]=a;H[k+4>>2]=H[k+4>>2]+1;break z}a=H[f+3024>>2]+N(a,40)|0;H[a>>2]=119540;b=H[d+20>>2];H[a+8>>2]=H[d+16>>2];H[a+12>>2]=b;H[a+16>>2]=H[d+24>>2];H[a+20>>2]=H[d+28>>2];b=H[d+32>>2];H[a>>2]=123720;H[a+24>>2]=b;b=H[d+40>>2];H[a+28>>2]=H[d+36>>2];H[a+32>>2]=b;H[f+3028>>2]=H[f+3028>>2]+1}a=H[f+16>>2];b=H[f+20>>2];H[d+32>>2]=0;H[d+24>>2]=0;H[d+28>>2]=0;H[d+16>>2]=a;H[d+20>>2]=b;H[d+40>>2]=18308;H[d+36>>2]=f;H[d+8>>2]=123796;a=H[f+3052>>2];C:{if(a>>>0>=(H[f+3056>>2]&2147483647)>>>0){a=0;b=H[l+8>>2]&2147483647;j=b?b<<1:1;D:{if(!j){break D}b=N(j,40);if(!b){break D}a=H[33808];c=Ra[H[H[a>>2]+20>>2]](a)|0?44072:55639;a=Ra[H[H[a+12>>2]+8>>2]](a+12|0,b,c,13582,553)|0}b=H[l+4>>2];if((b|0)>0){o=N(b,40)+a|0;c=H[l>>2];b=a;while(1){H[b>>2]=119540;g=H[c+12>>2];H[b+8>>2]=H[c+8>>2];H[b+12>>2]=g;H[b+16>>2]=H[c+16>>2];H[b+20>>2]=H[c+20>>2];g=H[c+24>>2];H[b>>2]=123796;H[b+24>>2]=g;g=H[c+32>>2];H[b+28>>2]=H[c+28>>2];H[b+32>>2]=g;c=c+40|0;b=b+40|0;if(o>>>0>b>>>0){continue}break}b=H[l+4>>2]}b=N(b,40)+a|0;H[b>>2]=119540;c=H[d+20>>2];H[b+8>>2]=H[d+16>>2];H[b+12>>2]=c;H[b+16>>2]=H[d+24>>2];H[b+20>>2]=H[d+28>>2];c=H[d+32>>2];H[b>>2]=123796;H[b+24>>2]=c;c=H[d+40>>2];H[b+28>>2]=H[d+36>>2];H[b+32>>2]=c;c=H[l+4>>2];if((c|0)>0){b=H[l>>2];c=b+N(c,40)|0;while(1){Ra[H[H[b>>2]>>2]](b)|0;b=b+40|0;if(c>>>0>b>>>0){continue}break}}E:{if(H[l+8>>2]<0){break E}b=H[l>>2];if(!b){break E}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}H[l+8>>2]=j;H[l>>2]=a;H[l+4>>2]=H[l+4>>2]+1;break C}a=H[f+3048>>2]+N(a,40)|0;H[a>>2]=119540;b=H[d+20>>2];H[a+8>>2]=H[d+16>>2];H[a+12>>2]=b;H[a+16>>2]=H[d+24>>2];H[a+20>>2]=H[d+28>>2];b=H[d+32>>2];H[a>>2]=123796;H[a+24>>2]=b;b=H[d+40>>2];H[a+28>>2]=H[d+36>>2];H[a+32>>2]=b;H[f+3052>>2]=H[f+3052>>2]+1}a=H[f+16>>2];b=H[f+20>>2];H[d+32>>2]=0;H[d+24>>2]=0;H[d+28>>2]=0;H[d+16>>2]=a;H[d+20>>2]=b;H[d+40>>2]=55005;H[d+36>>2]=f;H[d+8>>2]=123872;a=H[f+3040>>2];F:{if(a>>>0>=(H[f+3044>>2]&2147483647)>>>0){a=0;b=H[m+8>>2]&2147483647;j=b?b<<1:1;G:{if(!j){break G}b=N(j,40);if(!b){break G}a=H[33808];c=Ra[H[H[a>>2]+20>>2]](a)|0?44296:55639;a=Ra[H[H[a+12>>2]+8>>2]](a+12|0,b,c,13582,553)|0}b=H[m+4>>2];if((b|0)>0){o=N(b,40)+a|0;c=H[m>>2];b=a;while(1){H[b>>2]=119540;g=H[c+12>>2];H[b+8>>2]=H[c+8>>2];H[b+12>>2]=g;H[b+16>>2]=H[c+16>>2];H[b+20>>2]=H[c+20>>2];g=H[c+24>>2];H[b>>2]=123872;H[b+24>>2]=g;g=H[c+32>>2];H[b+28>>2]=H[c+28>>2];H[b+32>>2]=g;c=c+40|0;b=b+40|0;if(o>>>0>b>>>0){continue}break}b=H[m+4>>2]}b=N(b,40)+a|0;H[b>>2]=119540;c=H[d+20>>2];H[b+8>>2]=H[d+16>>2];H[b+12>>2]=c;H[b+16>>2]=H[d+24>>2];H[b+20>>2]=H[d+28>>2];c=H[d+32>>2];H[b>>2]=123872;H[b+24>>2]=c;c=H[d+40>>2];H[b+28>>2]=H[d+36>>2];H[b+32>>2]=c;c=H[m+4>>2];if((c|0)>0){b=H[m>>2];c=b+N(c,40)|0;while(1){Ra[H[H[b>>2]>>2]](b)|0;b=b+40|0;if(c>>>0>b>>>0){continue}break}}H:{if(H[m+8>>2]<0){break H}b=H[m>>2];if(!b){break H}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}H[m+8>>2]=j;H[m>>2]=a;H[m+4>>2]=H[m+4>>2]+1;break F}a=H[f+3036>>2]+N(a,40)|0;H[a>>2]=119540;b=H[d+20>>2];H[a+8>>2]=H[d+16>>2];H[a+12>>2]=b;H[a+16>>2]=H[d+24>>2];H[a+20>>2]=H[d+28>>2];b=H[d+32>>2];H[a>>2]=123872;H[a+24>>2]=b;b=H[d+40>>2];H[a+28>>2]=H[d+36>>2];H[a+32>>2]=b;H[f+3040>>2]=H[f+3040>>2]+1}a=e;e=0;if(a){continue}break}}AJ(H[f+976>>2]);a=H[f+988>>2];H[a+128>>2]=0;H[a+132>>2]=0;e=H[f+3048>>2];H[e+20>>2]=q;H[e+24>>2]=1;if(q){Ra[H[H[q>>2]+16>>2]](q);H[e+16>>2]=H[H[e+20>>2]+16>>2];e=H[f+3048>>2]}a=H[f+3036>>2];H[a+20>>2]=e;H[a+24>>2]=1;if(e){Ra[H[H[e>>2]+16>>2]](e);H[a+16>>2]=H[H[a+20>>2]+16>>2];e=H[f+3048>>2]}Ra[H[H[e>>2]+20>>2]](e);a=H[f+3036>>2];Ra[H[H[a>>2]+20>>2]](a)}Oa=d+48|0}function x0(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o){var p=0,q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=0,B=O(0),C=O(0),D=O(0),E=O(0),G=O(0),K=O(0),M=O(0),P=O(0),Q=O(0),R=O(0),S=0,T=0,U=0,V=O(0),X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0;p=Oa-9936|0;Oa=p;x=L[g+20>>2];t=L[g+24>>2];v=L[f+20>>2];r=L[f+24>>2];P=L[g>>2];K=L[g+4>>2];M=L[g+8>>2];D=L[g+12>>2];u=L[g+16>>2];y=L[f>>2];z=L[f+4>>2];w=L[f+8>>2];q=L[f+12>>2];s=L[f+16>>2];L[p+9920>>2]=h;H[p+9916>>2]=0;L[p+9912>>2]=r;L[p+9908>>2]=v;L[p+9904>>2]=s;L[p+9900>>2]=q;L[p+9896>>2]=w;L[p+9892>>2]=z;L[p+9888>>2]=y;H[p+9884>>2]=0;L[p+9880>>2]=t;L[p+9876>>2]=x;L[p+9872>>2]=u;L[p+9868>>2]=D;L[p+9864>>2]=M;L[p+9860>>2]=K;L[p+9856>>2]=P;R=O(O(O(w*P)-O(M*y))+O(O(z*D)-O(q*K)));E=O(O(O(z*M)-O(K*w))+O(O(y*D)-O(q*P)));Q=O(O(O(y*K)-O(P*z))+O(O(w*D)-O(q*M)));V=O(q*D);q=O(-P);B=O(V-O(O(O(y*q)-O(z*K))-O(M*w)));G=O(s-u);z=O(v-x);t=O(r-t);v=O(O(O(q*G)-O(z*K))-O(M*t));r=O(O(D*D)+O(-.5));q=O(O(O(r*G)+O(D*O(O(M*z)-O(K*t))))-O(P*v));C=O(q+q);y=O(C-L[n+16>>2]);u=O(-y);q=O(O(O(r*z)+O(D*O(O(P*t)-O(M*G))))-O(K*v));w=O(q+q);x=O(w-L[n+20>>2]);s=O(-x);q=O(O(O(D*O(O(K*G)-O(P*z)))+O(r*t))-O(M*v));t=O(q+q);v=O(t-L[n+24>>2]);r=O(-v);z=L[c>>2];u=u=O(0)?u:O(0);a:{if(O(O(B*L[n+12>>2])+O(O(Q*L[n+8>>2])+O(O(E*L[n>>2])+O(R*L[n+4>>2]))))>2]=t;L[n+20>>2]=w;L[n+16>>2]=C;L[n+12>>2]=B;L[n+8>>2]=Q;L[n+4>>2]=R;L[n>>2]=E;F[n+62|0]=0;H[n+28>>2]=0;ia=H[e+40>>2];C=L[f+4>>2];w=O(C+C);r=L[f+8>>2];s=O(w*r);u=L[f>>2];y=O(u+u);x=L[f+12>>2];q=O(y*x);L[p+9836>>2]=s-q;L[p+9828>>2]=s+q;q=O(O(1)-O(u*y));t=O(C*w);L[p+9840>>2]=q-t;V=q;q=O(r+r);v=O(r*q);L[p+9824>>2]=V-v;r=O(y*r);u=O(w*x);L[p+9832>>2]=r+u;s=O(y*C);q=O(q*x);L[p+9820>>2]=s-q;L[p+9816>>2]=r-u;L[p+9812>>2]=s+q;L[p+9808>>2]=O(O(1)-t)-v;L[p+9844>>2]=L[f+16>>2];L[p+9848>>2]=L[f+20>>2];L[p+9852>>2]=L[f+24>>2];C=L[g+4>>2];w=O(C+C);r=L[g+8>>2];s=O(w*r);u=L[g>>2];y=O(u+u);x=L[g+12>>2];q=O(y*x);L[p+9788>>2]=s-q;L[p+9780>>2]=s+q;q=O(O(1)-O(u*y));t=O(C*w);L[p+9792>>2]=q-t;V=q;q=O(r+r);v=O(r*q);L[p+9776>>2]=V-v;r=O(y*r);u=O(w*x);L[p+9784>>2]=r+u;s=O(y*C);q=O(q*x);L[p+9772>>2]=s-q;L[p+9768>>2]=r-u;L[p+9764>>2]=s+q;L[p+9760>>2]=O(O(1)-t)-v;L[p+9796>>2]=L[g+16>>2];L[p+9800>>2]=L[g+20>>2];L[p+9804>>2]=L[g+24>>2];ja=p+9696|0;cZ(ja,d,h,p+9808|0,p+9760|0,k,m);F[p+9680|0]=1;H[p+9688>>2]=0;H[p+9692>>2]=1088;ka=p+5328|0;H[p+9684>>2]=ka;d=H[ia+56>>2];H[p+868>>2]=0;H[p+2896>>2]=2139095039;la=p+2864|0;H[p+2888>>2]=la;c=p+2880|0;H[c>>2]=0;H[c+4>>2]=0;H[p+2832>>2]=2139095039;ma=p+2800|0;H[p+2824>>2]=ma;c=p+2816|0;H[c>>2]=0;H[c+4>>2]=0;H[p+2768>>2]=2139095039;na=p+2736|0;H[p+2760>>2]=na;c=p+2752|0;H[c>>2]=0;H[c+4>>2]=0;H[p+2704>>2]=2139095039;oa=p+2672|0;H[p+2696>>2]=oa;c=p+2688|0;H[c>>2]=0;H[c+4>>2]=0;H[p+2640>>2]=2139095039;pa=p+2608|0;H[p+2632>>2]=pa;c=p+2624|0;H[c>>2]=0;H[c+4>>2]=0;H[p+2576>>2]=2139095039;qa=p+2544|0;H[p+2568>>2]=qa;c=p+2560|0;H[c>>2]=0;H[c+4>>2]=0;H[p+2512>>2]=2139095039;ra=p+2480|0;H[p+2504>>2]=ra;c=p+2496|0;H[c>>2]=0;H[c+4>>2]=0;H[p+2448>>2]=2139095039;sa=p+2416|0;H[p+2440>>2]=sa;c=p+2432|0;H[c>>2]=0;H[c+4>>2]=0;H[p+2384>>2]=2139095039;ta=p+2352|0;H[p+2376>>2]=ta;c=p+2368|0;H[c>>2]=0;H[c+4>>2]=0;H[p+2320>>2]=2139095039;ua=p+2288|0;H[p+2312>>2]=ua;c=p+2304|0;H[c>>2]=0;H[c+4>>2]=0;H[p+2256>>2]=2139095039;va=p+2224|0;H[p+2248>>2]=va;c=p+2240|0;H[c>>2]=0;H[c+4>>2]=0;H[p+2192>>2]=2139095039;wa=p+2160|0;H[p+2184>>2]=wa;c=p+2176|0;H[c>>2]=0;H[c+4>>2]=0;H[p+2128>>2]=2139095039;ca=p+2096|0;H[p+2120>>2]=ca;c=p+2112|0;H[c>>2]=0;H[c+4>>2]=0;H[p+2064>>2]=2139095039;A=p+2032|0;H[p+2056>>2]=A;c=p+2048|0;H[c>>2]=0;H[c+4>>2]=0;H[p+2e3>>2]=2139095039;S=p+1968|0;H[p+1992>>2]=S;c=p+1984|0;H[c>>2]=0;H[c+4>>2]=0;H[p+1936>>2]=2139095039;T=p+1904|0;H[p+1928>>2]=T;c=p+1920|0;H[c>>2]=0;H[c+4>>2]=0;H[p+1872>>2]=2139095039;U=p+1840|0;H[p+1864>>2]=U;c=p+1856|0;H[c>>2]=0;H[c+4>>2]=0;H[p+1808>>2]=2139095039;X=p+1776|0;H[p+1800>>2]=X;c=p+1792|0;H[c>>2]=0;H[c+4>>2]=0;H[p+1744>>2]=2139095039;Y=p+1712|0;H[p+1736>>2]=Y;c=p+1728|0;H[c>>2]=0;H[c+4>>2]=0;H[p+1680>>2]=2139095039;Z=p+1648|0;H[p+1672>>2]=Z;c=p+1664|0;H[c>>2]=0;H[c+4>>2]=0;H[p+1616>>2]=2139095039;aa=p+1584|0;H[p+1608>>2]=aa;c=p+1600|0;H[c>>2]=0;H[c+4>>2]=0;H[p+1552>>2]=2139095039;ba=p+1520|0;H[p+1544>>2]=ba;c=p+1536|0;H[c>>2]=0;H[c+4>>2]=0;H[p+1488>>2]=2139095039;da=p+1456|0;H[p+1480>>2]=da;c=p+1472|0;H[c>>2]=0;H[c+4>>2]=0;H[p+1424>>2]=2139095039;ea=p+1392|0;H[p+1416>>2]=ea;c=p+1408|0;H[c>>2]=0;H[c+4>>2]=0;H[p+1360>>2]=2139095039;fa=p+1328|0;H[p+1352>>2]=fa;c=p+1344|0;H[c>>2]=0;H[c+4>>2]=0;H[p+1296>>2]=2139095039;ga=p+1264|0;H[p+1288>>2]=ga;c=p+1280|0;H[c>>2]=0;H[c+4>>2]=0;H[p+1232>>2]=2139095039;ha=p+1200|0;H[p+1224>>2]=ha;c=p+1216|0;H[c>>2]=0;H[c+4>>2]=0;H[p+1168>>2]=2139095039;_=p+1136|0;H[p+1160>>2]=_;c=p+1152|0;H[c>>2]=0;H[c+4>>2]=0;H[p+1104>>2]=2139095039;$=p+1072|0;H[p+1096>>2]=$;c=p+1088|0;H[c>>2]=0;H[c+4>>2]=0;H[p+1040>>2]=2139095039;g=p+1008|0;H[p+1032>>2]=g;c=p+1024|0;H[c>>2]=0;H[c+4>>2]=0;H[p+976>>2]=2139095039;f=p+944|0;H[p+968>>2]=f;H[p+960>>2]=0;H[p+964>>2]=0;H[p+912>>2]=2139095039;c=p+880|0;H[p+904>>2]=c;H[p+896>>2]=0;H[p+900>>2]=0;F[p+16|0]=m;H[p+12>>2]=d;H[p+8>>2]=k;H[p>>2]=129416;H[p+4>>2]=2;y=O(z*O(.05000000074505806));L[p+3072>>2]=y;H[p+3096>>2]=n;H[p+3100>>2]=i;H[p+4496>>2]=0;d=H[p+9932>>2];e=p+3064|0;H[e>>2]=H[p+9928>>2];H[e+4>>2]=d;d=H[p+9924>>2];e=p+3056|0;H[e>>2]=H[p+9920>>2];H[e+4>>2]=d;H[p+3088>>2]=p+9888;H[p+3092>>2]=p+9856;S6(p+4368|0,255,128);H[p+4504>>2]=o;H[p+3212>>2]=0;d=p+3204|0;H[d>>2]=0;H[d+4>>2]=0;H[p+4500>>2]=ka;P=L[p+9864>>2];Q=L[p+9856>>2];R=L[p+9860>>2];z=L[p+9868>>2];K=L[p+9896>>2];M=L[p+9892>>2];t=L[p+9872>>2];v=L[p+9904>>2];B=L[p+9888>>2];r=L[p+9876>>2];s=L[p+9908>>2];D=L[p+9900>>2];q=L[p+9880>>2];h=L[p+9912>>2];H[p+3196>>2]=0;H[p+3180>>2]=0;H[p+3164>>2]=0;H[p+3148>>2]=0;H[p+3200>>2]=i;H[p+3048>>2]=ma;H[p+3044>>2]=na;H[p+3040>>2]=oa;H[p+3036>>2]=pa;H[p+3032>>2]=qa;H[p+3028>>2]=ra;H[p+3024>>2]=sa;H[p+3020>>2]=ta;H[p+3016>>2]=ua;H[p+3012>>2]=va;H[p+3008>>2]=wa;H[p+3004>>2]=ca;H[p+3e3>>2]=A;H[p+2996>>2]=S;H[p+2992>>2]=T;H[p+2988>>2]=U;H[p+2984>>2]=X;H[p+2980>>2]=Y;H[p+2976>>2]=Z;H[p+2972>>2]=aa;H[p+2968>>2]=ba;H[p+2964>>2]=da;H[p+2960>>2]=ea;H[p+2956>>2]=fa;H[p+2952>>2]=ga;H[p+2948>>2]=ha;H[p+2944>>2]=_;H[p+2940>>2]=$;H[p+2936>>2]=g;H[p+2932>>2]=f;H[p+2928>>2]=c;H[p+3052>>2]=la;u=O(-B);t=O(t-v);v=O(r-s);r=O(q-h);s=O(O(O(u*t)-O(v*M))-O(K*r));q=O(O(D*D)+O(-.5));h=O(O(O(D*O(O(M*t)-O(B*v)))+O(q*r))-O(K*s));w=O(h+h);L[p+3192>>2]=w;h=O(O(O(q*v)+O(D*O(O(B*r)-O(K*t))))-O(M*s));x=O(h+h);L[p+3188>>2]=x;h=O(O(O(q*t)+O(D*O(O(K*v)-O(M*r))))-O(B*s));t=O(h+h);L[p+3184>>2]=t;h=O(O(O(K*R)-O(M*P))+O(O(D*Q)-O(B*z)));E=O(h+h);G=O(O(O(B*P)-O(K*Q))+O(O(D*R)-O(M*z)));C=O(G+G);_=p+3176|0;s=O(O(1)-O(h*E));v=O(G*C);L[_>>2]=s-v;$=p+3172|0;B=O(O(O(M*Q)-O(B*R))+O(O(D*P)-O(K*z)));q=O(B*C);z=O(O(D*z)-O(O(O(u*Q)-O(R*M))-O(K*P)));h=O(z*E);L[$>>2]=q-h;o=p+3168|0;r=O(B*E);u=O(z*C);L[o>>2]=r+u;m=p+3160|0;L[m>>2]=q+h;k=p+3156|0;q=s;h=O(B+B);s=O(B*h);L[k>>2]=q-s;g=p+3152|0;q=O(G*E);h=O(z*h);L[g>>2]=q-h;f=p+3144|0;L[f>>2]=r-u;e=p+3140|0;L[e>>2]=q+h;d=p+3136|0;L[d>>2]=O(O(1)-v)-s;H[p+5276>>2]=0;L[p+3120>>2]=y*y;H[p+3104>>2]=1065286107;S6(p+5148|0,255,128);F[p+5309|0]=1;F[p+5308|0]=l;H[p+5304>>2]=j;H[p+5300>>2]=b;H[p+5296>>2]=a;s=L[a+8>>2];q=L[a>>2];h=L[a+4>>2];H[p+5292>>2]=0;s=O(s-w);q=O(q-t);h=O(h-x);L[p+5288>>2]=O(L[_>>2]*s)+O(O(L[o>>2]*q)+O(h*L[$>>2]));L[p+5284>>2]=O(L[m>>2]*s)+O(O(L[g>>2]*q)+O(h*L[k>>2]));L[p+5280>>2]=O(L[f>>2]*s)+O(O(L[d>>2]*q)+O(h*L[e>>2]));H[p+5312>>2]=ja;Ra[H[(J[ia+4>>1]<<2)+129440>>2]](ia,ja,p,1,1);m=H[p+868>>2];if(m){f=p+20|0;g=p+596|0;a=p+788|0;k=p+852|0;while(1){i0(c,f,H[a>>2],I[k|0],g);k=k+1|0;a=a+4|0;g=g+12|0;f=f+36|0;m=m-1|0;if(m){continue}break}H[p+868>>2]=0}Z=0;g=Oa-144|0;Oa=g;j=c;a=H[c+3620>>2];b=H[a+4360>>2];if(!(!b|b>>>0<15)){da=j+2176|0;ba=j+2324|0;ea=g+128|0;fa=g+112|0;ga=g+96|0;ha=H[a+4356>>2];_=(b>>>0)/15|0;aa=j+4268|0;while(1){f=ha+N(Z,60)|0;S=H[f+36>>2];T=H[f+44>>2];U=H[f+40>>2];e=I[f+56|0];b:{c:{if(e&8){break c}a=S>>>0>>0;d=a?S:U;c=a?U:S;a=d<<16|c;a=(a<<15^-1)+a|0;a=N(a>>>10^a,9);a=a>>>6^a;a=(a<<11^-1)+a|0;a=I[(j+((a>>>16^a)&127)|0)+3488|0];if((a|0)==255){break c}while(1){b=j+(a<<3)|0;if((d|0)==H[b+2336>>2]&(c|0)==H[b+2340>>2]){break b}a=I[(a+j|0)+3360|0];if((a|0)!=255){continue}break}}d:{if(e&16){break d}a=T>>>0>U>>>0;d=a?U:T;c=a?T:U;a=d<<16|c;a=(a<<15^-1)+a|0;a=N(a>>>10^a,9);a=a>>>6^a;a=(a<<11^-1)+a|0;a=I[(j+((a>>>16^a)&127)|0)+3488|0];if((a|0)==255){break d}while(1){b=j+(a<<3)|0;if((d|0)==H[b+2336>>2]&(c|0)==H[b+2340>>2]){break b}a=I[(a+j|0)+3360|0];if((a|0)!=255){continue}break}}e:{if(e&32){break e}a=S>>>0>T>>>0;d=a?T:S;c=a?S:T;a=d<<16|c;a=(a<<15^-1)+a|0;a=N(a>>>10^a,9);a=a>>>6^a;a=(a<<11^-1)+a|0;a=I[(j+((a>>>16^a)&127)|0)+3488|0];if((a|0)==255){break e}while(1){b=j+(a<<3)|0;if((d|0)==H[b+2336>>2]&(c|0)==H[b+2340>>2]){break b}a=I[(a+j|0)+3360|0];if((a|0)!=255){continue}break}}H[g+72>>2]=0;H[g+76>>2]=5;a=g- -64|0;H[a>>2]=0;H[a+4>>2]=0;F[g+80|0]=0;H[g+48>>2]=0;H[g+52>>2]=0;H[g+56>>2]=0;H[g+60>>2]=0;w=L[f>>2];x=L[f+4>>2];t=L[f+8>>2];v=L[f+12>>2];r=L[f+16>>2];u=L[f+20>>2];s=L[f+24>>2];q=L[f+28>>2];h=L[f+32>>2];H[g+140>>2]=0;L[g+136>>2]=h;L[g+132>>2]=q;L[g+128>>2]=s;H[g+124>>2]=0;L[g+120>>2]=u;L[g+116>>2]=r;L[g+112>>2]=v;H[g+108>>2]=0;L[g+104>>2]=t;L[g+100>>2]=x;L[g+96>>2]=w;H[g+60>>2]=0;H[g+68>>2]=2139095039;H[g+72>>2]=2139095039;L[g+48>>2]=O(s+O(w+v))*O(.33333298563957214);L[g+56>>2]=O(h+O(t+u))*O(.33333298563957214);L[g+52>>2]=O(q+O(x+r))*O(.33333298563957214);X=H[j+2324>>2];b=H[f+48>>2];a=H[j+2320>>2];d=Oa-16|0;Oa=d;e=H[H[j+4420>>2]+40>>2];w=L[e+36>>2];x=L[e+40>>2];c=H[H[j+4416>>2]+24>>2]+N(H[f+52>>2],20)|0;C=L[c>>2];y=L[c+4>>2];t=L[e+20>>2];z=L[c+8>>2];v=L[e+24>>2];r=L[e+32>>2];u=L[e+8>>2];s=L[e>>2];q=L[e+4>>2];h=L[e+16>>2];H[d+12>>2]=0;r=O(O(x*z)+O(O(r*C)+O(y*w)));q=O(O(u*z)+O(O(s*C)+O(y*q)));h=O(O(v*z)+O(O(h*C)+O(y*t)));u=O(O(1)/O(W(O(O(r*r)+O(O(q*q)+O(h*h))))));s=O(q*u);L[d>>2]=s;q=O(h*u);L[d+4>>2]=q;h=O(r*u);L[d+8>>2]=h;H[g+44>>2]=0;L[g+40>>2]=-h;L[g+36>>2]=-q;L[g+32>>2]=-s;V0(H[j+4416>>2],c,g+48|0,b,H[j+4420>>2],a,ba,da,d);Oa=d+16|0;e=H[j+2324>>2];f:{if(e>>>0<=X>>>0){c=e;break f}$=aa+(S&127)|0;o=aa+(T&127)|0;m=aa+(U&127)|0;l=e+1|0;Y=0;a=e;c=a;while(1){d=a;a=a-1|0;k=a<<6;VX((k+H[j+2320>>2]|0)+16|0,ga,fa,ea,g+16|0,g);g:{h:{q=L[g+16>>2];if(q>O(.9700000286102295)){b=I[m|0];if((b|0)==255){break g}while(1){if((U|0)==H[(j+(b<<2)|0)+3628>>2]){break h}b=I[(b+j|0)+4140|0];if((b|0)!=255){continue}break}break g}h=L[g>>2];if(h>O(.9700000286102295)){b=I[o|0];if((b|0)==255){break g}while(1){if((T|0)==H[(j+(b<<2)|0)+3628>>2]){break h}b=I[(b+j|0)+4140|0];if((b|0)!=255){continue}break}break g}if(!(O(q+h)<=O(.029999971389770508))){break g}b=I[$|0];if((b|0)==255){break g}while(1){if((S|0)==H[(j+(b<<2)|0)+3628>>2]){break h}b=I[(b+j|0)+4140|0];if((b|0)!=255){continue}break}break g}f=c-1|0;i:{if(f>>>0<=a>>>0){break i}b=a;if((Y-e|0)+c&1){b=H[j+2320>>2];k=b+k|0;A=b+(d<<6)|0;b=H[A+4>>2];H[k>>2]=H[A>>2];H[k+4>>2]=b;H[k+48>>2]=H[A+48>>2];b=H[A+44>>2];H[k+40>>2]=H[A+40>>2];H[k+44>>2]=b;b=H[A+36>>2];H[k+32>>2]=H[A+32>>2];H[k+36>>2]=b;b=H[A+28>>2];H[k+24>>2]=H[A+24>>2];H[k+28>>2]=b;b=H[A+20>>2];H[k+16>>2]=H[A+16>>2];H[k+20>>2]=b;b=H[A+12>>2];H[k+8>>2]=H[A+8>>2];H[k+12>>2]=b;b=d}if((l-Y|0)==(c|0)){break i}while(1){d=H[j+2320>>2];c=b<<6;k=d+c|0;ca=d;d=c- -64|0;A=ca+d|0;c=H[A+4>>2];H[k>>2]=H[A>>2];H[k+4>>2]=c;H[k+48>>2]=H[A+48>>2];c=H[A+44>>2];H[k+40>>2]=H[A+40>>2];H[k+44>>2]=c;c=H[A+36>>2];H[k+32>>2]=H[A+32>>2];H[k+36>>2]=c;c=H[A+28>>2];H[k+24>>2]=H[A+24>>2];H[k+28>>2]=c;c=H[A+20>>2];H[k+16>>2]=H[A+16>>2];H[k+20>>2]=c;c=H[A+12>>2];H[k+8>>2]=H[A+8>>2];H[k+12>>2]=c;c=H[j+2320>>2];d=c+d|0;b=b+2|0;k=c+(b<<6)|0;c=H[k+4>>2];H[d>>2]=H[k>>2];H[d+4>>2]=c;c=H[k+36>>2];H[d+32>>2]=H[k+32>>2];H[d+36>>2]=c;c=H[k+20>>2];H[d+16>>2]=H[k+16>>2];H[d+20>>2]=c;c=H[k+12>>2];H[d+8>>2]=H[k+8>>2];H[d+12>>2]=c;c=H[k+28>>2];H[d+24>>2]=H[k+24>>2];H[d+28>>2]=c;c=H[k+44>>2];H[d+40>>2]=H[k+40>>2];H[d+44>>2]=c;H[d+48>>2]=H[k+48>>2];if(b>>>0>>0){continue}break}}c=f}Y=Y+1|0;if(a>>>0>X>>>0){continue}break}}H[ba>>2]=c;if(c>>>0<=X>>>0){break b}g0(j,g+32|0,X)}Z=Z+1|0;if((_|0)!=(Z|0)){continue}break}}Oa=g+144|0;e0(j,6,0);a=H[p+9692>>2];if((a|0)<0|!(a&2147483647)){break a}b=H[p+9684>>2];if((b|0)==(p+5328|0)|!b){break a}a=H[33808];Ra[H[H[a+12>>2]+12>>2]](a+12|0,b);break a}f=0;H[p+60>>2]=0;L[p+56>>2]=t;L[p+52>>2]=w;H[p+44>>2]=0;H[p+28>>2]=0;s=O(R+R);q=O(Q*s);t=O(E+E);h=O(B*t);L[p+36>>2]=q-h;L[p+24>>2]=q+h;h=O(O(1)-O(E*t));v=O(R*s);L[p+40>>2]=h-v;q=h;h=O(Q+Q);r=O(Q*h);L[p+20>>2]=q-r;L[p+48>>2]=C;H[p+12>>2]=0;u=O(Q*t);s=O(B*s);L[p+32>>2]=u+s;q=O(R*t);h=O(B*h);L[p+16>>2]=q-h;L[p+8>>2]=u-s;L[p+4>>2]=q+h;L[p>>2]=O(O(1)-v)-r;L[p+9696>>2]=z*O(.800000011920929);if(!I[n+62|0]){break a}while(1){c=f+n|0;d=I[c+56|0];a=N(d,400)+n|0;f1(p+5328|0,a- -64|0,p,p+9696|0);j:{if(!H[a+448>>2]){a=I[n+62|0]-1|0;F[n+62|0]=a;b=(a&255)+n|0;a=I[b+56|0];F[b+56|0]=d;F[c+56|0]=a;f=f-1|0;break j}L[((d<<2)+n|0)+32>>2]=L[p+5328>>2]}f=f+1|0;if(f>>>0>2];F[n+63|0]=g+d;w=L[l+104>>2];x=L[l+100>>2];t=L[l+96>>2];k:{if(g>>>0<2){break k}d=1;b=g-1|0;c=b&1;if((g|0)!=2){b=b&-2;f=0;while(1){e=l+(d<<6)|0;w=O(O(w+L[e+104>>2])+L[e+168>>2]);x=O(O(x+L[e+100>>2])+L[e+164>>2]);t=O(O(t+L[e+96>>2])+L[e+160>>2]);d=d+2|0;f=f+2|0;if((b|0)!=(f|0)){continue}break}}if(!c){break k}b=l+(d<<6)|0;w=O(w+L[b+104>>2]);x=O(x+L[b+100>>2]);t=O(t+L[b+96>>2])}l:{if(!g){b=a;break l}if(a>>>0>=64){b=a;break l}E=L[m+8>>2];B=L[m>>2];G=L[m+4>>2];v=O(O(E*w)+O(O(B*t)+O(x*G)));h=L[m+12>>2];r=O(O(h*h)+O(-.5));q=O(O(E*v)+O(O(h*O(O(B*x)-O(t*G)))+O(w*r)));u=O(q+q);q=O(O(B*v)+O(O(h*O(O(G*w)-O(x*E)))+O(t*r)));s=O(q+q);q=O(O(G*v)+O(O(h*O(O(E*t)-O(w*B)))+O(x*r)));q=O(q+q);r=O(O(1)/O(W(O(O(u*u)+O(O(s*s)+O(q*q))))));x=O(u*r);t=O(q*r);v=O(s*r);f=0;while(1){b=l+(f<<6)|0;C=L[b+88>>2];y=L[b+80>>2];z=L[b+84>>2];r=L[b+108>>2];u=L[m+16>>2];s=L[m+20>>2];q=L[m+24>>2];c=(a<<6)+i|0;H[c+28>>2]=0;L[c+8>>2]=x;L[c+4>>2]=t;L[c>>2]=v;L[c+12>>2]=r;V=q;w=O(O(h*h)+O(-.5));r=O(O(E*C)+O(O(B*y)+O(G*z)));q=O(O(O(h*O(O(B*z)-O(y*G)))+O(C*w))+O(E*r));L[c+24>>2]=V+O(q+q);q=O(O(G*r)+O(O(w*z)+O(h*O(O(E*y)-O(C*B)))));L[c+20>>2]=s+O(q+q);h=O(O(B*r)+O(O(w*y)+O(h*O(O(G*C)-O(z*E)))));L[c+16>>2]=u+O(h+h);H[c+52>>2]=H[b+112>>2];b=a+1|0;f=f+1|0;if(!(g>>>0<=f>>>0|a>>>0>62)){h=L[m+12>>2];E=L[m+8>>2];G=L[m+4>>2];B=L[m>>2];a=b;continue}break}k=I[n+62|0]}j=j+1|0;if(j>>>0>>0){d=I[n+63|0];a=b;continue}break}d=b}H[i+4096>>2]=d;Oa=p+9936|0;return(d|0)!=0}function Km(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=O(0);v=H[33768];g=Oa-16|0;Oa=g;a:{b:{c:{f=b;d:{if(!gW(77,69,83,72,g+12|0,g+11|0,f)){break d}a=H[g+12>>2];if(a>>>0>=14){o=dW(I[g+11|0],f);a=H[g+12>>2]}if(a>>>0<=9){o5(H[33808],32,4459,152,56794,0);a=0;break a}m=dW(I[g+11|0],f);if(K[g+12>>2]<=12){eW(I[g+11|0],f)}e:{if(!o){a=H[33808];b=a+12|0;e=(x=b,y=192,z=Ra[H[H[a>>2]+20>>2]](a)|0?41554:55639,A=4459,B=170,w=H[H[b>>2]+8>>2],Ra[w](x|0,y|0,z|0,A|0,B|0)|0);H[e+44>>2]=0;H[e+48>>2]=0;H[e+36>>2]=-25165825;H[e+40>>2]=-25165825;H[e+28>>2]=2122317823;H[e+32>>2]=-25165825;H[e+20>>2]=2122317823;H[e+24>>2]=2122317823;H[e+12>>2]=0;H[e+16>>2]=0;a=0;F[e+8|0]=0;H[e+180>>2]=0;H[e+184>>2]=0;H[e>>2]=125472;H[e+168>>2]=0;H[e+172>>2]=0;H[e+160>>2]=4;H[e+52>>2]=0;H[e+56>>2]=0;H[e+60>>2]=0;H[e+64>>2]=0;H[e+68>>2]=0;H[e+72>>2]=0;H[e+76>>2]=0;H[e+80>>2]=0;H[e+84>>2]=0;break e}a=1;if((o|0)!=1){break d}b=H[33808];e=b+12|0;e=(B=e,A=172,z=Ra[H[H[b>>2]+20>>2]](b)|0?41684:55639,y=4459,x=172,w=H[H[e>>2]+8>>2],Ra[w](B|0,A|0,z|0,y|0,x|0)|0);H[e+44>>2]=0;H[e+48>>2]=0;H[e+36>>2]=-25165825;H[e+40>>2]=-25165825;H[e+28>>2]=2122317823;H[e+32>>2]=-25165825;H[e+20>>2]=2122317823;H[e+24>>2]=2122317823;H[e+12>>2]=0;H[e+16>>2]=0;F[e+8|0]=0;H[e>>2]=125556;H[e+52>>2]=0;H[e+56>>2]=0;H[e+60>>2]=0;H[e+64>>2]=0;H[e+68>>2]=0;H[e+72>>2]=0;H[e+76>>2]=0;H[e+80>>2]=0;H[e+84>>2]=0;b=e+88|0;H[b>>2]=0;H[b+4>>2]=0;H[b+16>>2]=0;H[b+20>>2]=0;H[b+8>>2]=0;H[b+12>>2]=0;g_(e+112|0)}H[e+4>>2]=a;a=dW(I[g+11|0],f);b=N(a,12)+12|0;if(b){i=H[33808]+12|0;i=Ra[H[H[i>>2]+8>>2]](i,b,20591,16524,148)|0}else{i=0}H[e+12>>2]=a;H[e+16>>2]=i;s=dW(I[g+11|0],f);a=4;t=m&32;if(!(!(m&12)|K[e+12>>2]>65535)){F[e+8|0]=I[e+8|0]|2;a=2}a=N(N(a,s),3);f:{g:{if(!a){H[e+72>>2]=0;a=0;b=0;if(t){break g}break f}b=H[33808]+12|0;b=Ra[H[H[b>>2]+8>>2]](b,a,20591,16524,228)|0;H[e+72>>2]=b;if(!t){break f}b=H[33808]+12|0;a=Ra[H[H[b>>2]+8>>2]](b,a,20591,16524,230)|0;b=H[e+72>>2]}H[e+56>>2]=a}H[e+68>>2]=s;Ra[H[H[f>>2]>>2]](f,i,N(H[e+12>>2],12))|0;if(!(!I[g+11|0]|!H[e+12>>2])){while(1){a=N(d,12)+i|0;j=I[a+3|0];F[a+3|0]=I[a|0];F[a|0]=j;j=I[a+1|0];F[a+1|0]=I[a+2|0];F[a+2|0]=j;j=I[a+4|0];F[a+4|0]=I[a+7|0];F[a+7|0]=j;j=I[a+5|0];F[a+5|0]=I[a+6|0];F[a+6|0]=j;j=I[a+8|0];F[a+8|0]=I[a+11|0];F[a+11|0]=j;j=I[a+10|0];F[a+10|0]=I[a+9|0];F[a+9|0]=j;d=d+1|0;if(d>>>0>2]){continue}break}}q=H[e+68>>2];j=N(q,3);u=m&4;h:{if(u){if(I[e+8|0]&2){if(!j){break h}a=b;if((j|0)!=1){c=j&-2;d=0;while(1){Ra[H[H[f>>2]>>2]](f,g+4|0,1)|0;G[a>>1]=I[g+4|0];Ra[H[H[f>>2]>>2]](f,g+4|0,1)|0;G[a+2>>1]=I[g+4|0];a=a+4|0;d=d+2|0;if((c|0)!=(d|0)){continue}break}}if(!(j&1)){break h}Ra[H[H[f>>2]>>2]](f,g+4|0,1)|0;G[a>>1]=I[g+4|0];break h}if(!j){break h}a=b;if((j|0)!=1){c=j&-2;d=0;while(1){Ra[H[H[f>>2]>>2]](f,g+4|0,1)|0;H[a>>2]=I[g+4|0];Ra[H[H[f>>2]>>2]](f,g+4|0,1)|0;H[a+4>>2]=I[g+4|0];a=a+8|0;d=d+2|0;if((c|0)!=(d|0)){continue}break}}if(!(j&1)){break h}Ra[H[H[f>>2]>>2]](f,g+4|0,1)|0;H[a>>2]=I[g+4|0];break h}a=I[e+8|0]&2;if(m&8){if(a){Ra[H[H[f>>2]>>2]](f,b,N(q,6))|0;if(!I[g+11|0]|!j){break h}a=0;if(j-1>>>0>=3){k=j&-4;while(1){d=a<<1;h=d+b|0;l=I[h+1|0];F[h+1|0]=I[h|0];F[h|0]=l;h=(d|2)+b|0;l=I[h+1|0];F[h+1|0]=I[h|0];F[h|0]=l;h=(d|4)+b|0;l=I[h+1|0];F[h+1|0]=I[h|0];F[h|0]=l;d=(d|6)+b|0;h=I[d+1|0];F[d+1|0]=I[d|0];F[d|0]=h;a=a+4|0;n=n+4|0;if((k|0)!=(n|0)){continue}break}}h=j&3;if(!h){break h}while(1){d=(a<<1)+b|0;k=I[d+1|0];F[d+1|0]=I[d|0];F[d|0]=k;a=a+1|0;c=c+1|0;if((h|0)!=(c|0)){continue}break}break h}if(!j){break h}d=0;a=b;while(1){Ra[H[H[f>>2]>>2]](f,g+4|0,2)|0;if(I[g+11|0]){c=I[g+5|0];F[g+5|0]=I[g+4|0];F[g+4|0]=c}H[a>>2]=J[g+4>>1];a=a+4|0;d=d+1|0;if((j|0)!=(d|0)){continue}break}break h}if(a){if(!j){break h}d=0;a=b;while(1){Ra[H[H[f>>2]>>2]](f,g+4|0,4)|0;if(I[g+11|0]){c=I[g+7|0];F[g+7|0]=I[g+4|0];F[g+4|0]=c;c=I[g+5|0];F[g+5|0]=I[g+6|0];F[g+6|0]=c}G[a>>1]=H[g+4>>2];a=a+2|0;d=d+1|0;if((j|0)!=(d|0)){continue}break}break h}Ra[H[H[f>>2]>>2]](f,b,N(q,12))|0;if(!I[g+11|0]|!j){break h}d=0;if((j|0)!=1){h=j&-2;while(1){k=d<<2;a=k+b|0;l=I[a+3|0];F[a+3|0]=I[a|0];F[a|0]=l;l=I[a+1|0];F[a+1|0]=I[a+2|0];F[a+2|0]=l;a=(k|4)+b|0;k=I[a+3|0];F[a+3|0]=I[a|0];l=I[a+2|0];F[a+2|0]=I[a+1|0];F[a+1|0]=l;F[a|0]=k;d=d+2|0;c=c+2|0;if((h|0)!=(c|0)){continue}break}}if(!(j&1)){break h}a=(d<<2)+b|0;c=I[a+3|0];F[a+3|0]=I[a|0];F[a|0]=c;c=I[a+1|0];F[a+1|0]=I[a+2|0];F[a+2|0]=c}i:{if(!(m&1)){break i}a=H[e+68>>2];c=a+a|0;c=a>>>0>c>>>0?-1:c;j:{if(!c){c=0;break j}a=H[33808];d=a+12|0;c=(x=d,y=c,z=Ra[H[H[a>>2]+20>>2]](a)|0?23546:55639,A=16524,B=239,w=H[H[d>>2]+8>>2],Ra[w](x|0,y|0,z|0,A|0,B|0)|0);a=H[e+68>>2]}H[e+80>>2]=c;Ra[H[H[f>>2]>>2]](f,c,a<<1)|0;if(!I[g+11|0]|!H[e+68>>2]){break i}d=0;while(1){a=(d<<1)+c|0;h=I[a+1|0];F[a+1|0]=I[a|0];F[a|0]=h;d=d+1|0;if(d>>>0>2]){continue}break}}if(m&2){a=H[e+68>>2];c=(a|0)!=(a&1073741823)?-1:a<<2;if(c){a=H[33808];d=a+12|0;a=(B=d,A=c,z=Ra[H[H[a>>2]+20>>2]](a)|0?25032:55639,y=16524,x=215,w=H[H[d>>2]+8>>2],Ra[w](B|0,A|0,z|0,y|0,x|0)|0)}else{a=0}H[e+48>>2]=a;c=dW(I[g+11|0],f);k=H[e+68>>2];h=I[g+11|0];d=Oa-16|0;Oa=d;k:{if(c>>>0<=255){if(!k){break k}c=0;if((k|0)!=1){l=k&-2;h=0;while(1){Ra[H[H[f>>2]>>2]](f,d+13|0,1)|0;n=c<<2;H[n+a>>2]=I[d+13|0];Ra[H[H[f>>2]>>2]](f,d+13|0,1)|0;H[a+(n|4)>>2]=I[d+13|0];c=c+2|0;h=h+2|0;if((l|0)!=(h|0)){continue}break}}if(!(k&1)){break k}Ra[H[H[f>>2]>>2]](f,d+13|0,1)|0;H[a+(c<<2)>>2]=I[d+13|0];break k}if(c>>>0<=65535){if(!k){break k}if(!h){c=0;if((k|0)!=1){l=k&-2;h=0;while(1){Ra[H[H[f>>2]>>2]](f,d+14|0,2)|0;n=c<<2;H[n+a>>2]=J[d+14>>1];Ra[H[H[f>>2]>>2]](f,d+14|0,2)|0;H[a+(n|4)>>2]=J[d+14>>1];c=c+2|0;h=h+2|0;if((l|0)!=(h|0)){continue}break}}if(!(k&1)){break k}Ra[H[H[f>>2]>>2]](f,d+14|0,2)|0;H[a+(c<<2)>>2]=J[d+14>>1];break k}c=0;if((k|0)!=1){l=k&-2;h=0;while(1){Ra[H[H[f>>2]>>2]](f,d+14|0,2)|0;n=I[d+15|0];F[d+15|0]=I[d+14|0];F[d+14|0]=n;n=c<<2;H[n+a>>2]=J[d+14>>1];Ra[H[H[f>>2]>>2]](f,d+14|0,2)|0;p=I[d+15|0];F[d+15|0]=I[d+14|0];F[d+14|0]=p;H[a+(n|4)>>2]=J[d+14>>1];c=c+2|0;h=h+2|0;if((l|0)!=(h|0)){continue}break}}if(!(k&1)){break k}Ra[H[H[f>>2]>>2]](f,d+14|0,2)|0;h=I[d+15|0];F[d+15|0]=I[d+14|0];F[d+14|0]=h;H[a+(c<<2)>>2]=J[d+14>>1];break k}Ra[H[H[f>>2]>>2]](f,a,k<<2)|0;if(!h|!k){break k}c=0;if((k|0)!=1){n=k&-2;h=0;while(1){p=c<<2;l=p+a|0;r=I[l+3|0];F[l+3|0]=I[l|0];F[l|0]=r;r=I[l+1|0];F[l+1|0]=I[l+2|0];F[l+2|0]=r;l=a+(p|4)|0;p=I[l+3|0];F[l+3|0]=I[l|0];r=I[l+2|0];F[l+2|0]=I[l+1|0];F[l+1|0]=r;F[l|0]=p;c=c+2|0;h=h+2|0;if((n|0)!=(h|0)){continue}break}}if(!(k&1)){break k}a=a+(c<<2)|0;c=I[a+3|0];F[a+3|0]=I[a|0];F[a|0]=c;c=I[a+1|0];F[a+1|0]=I[a+2|0];F[a+2|0]=c}Oa=d+16|0}l:{if(!(m&16)){break l}d=H[e+68>>2];a=N(d,3);c=(a|0)!=(a&1073741823)?-1:a<<2;m:{if(!c){c=0;break m}a=H[33808];d=a+12|0;c=(x=d,y=c,z=Ra[H[H[a>>2]+20>>2]](a)|0?25032:55639,A=16524,B=206,w=H[H[d>>2]+8>>2],Ra[w](x|0,y|0,z|0,A|0,B|0)|0);d=H[e+68>>2]}H[e+52>>2]=c;F[e+8|0]=I[e+8|0]|4;Ra[H[H[f>>2]>>2]](f,c,N(d,12))|0;if(!I[g+11|0]|!N(H[e+68>>2],3)){break l}d=0;while(1){a=(d<<2)+c|0;h=I[a+3|0];F[a+3|0]=I[a|0];F[a|0]=h;h=I[a+1|0];F[a+1|0]=I[a+2|0];F[a+2|0]=h;d=d+1|0;if(d>>>0>2],3)>>>0){continue}break}}n:{if(!o){b=I[g+11|0];h=0;i=Oa-16|0;Oa=i;c=e+96|0;o:{if(F[c+84|0]&1){break o}a=H[c+88>>2];if(!a){break o}d=H[33808];Ra[H[H[d+12>>2]+12>>2]](d+12|0,a-H[a-4>>2]|0);H[c+88>>2]=0}bW(i+15|0,i+14|0,i+13|0,i+12|0,f);p:{if(I[i+15|0]!=82|I[i+14|0]!=84|(I[i+13|0]!=82|I[i+12|0]!=69)){break p}a=1;d=dW(0,f);if(!((d|0)==1|(d|0)==16777216)){a=b;if((a?d<<8&16711680|d<<24|(d>>>8&65280|d>>>24):d)>>>0>3){break p}}fW(c,4,a,f);fW(c+16|0,4,a,f);fW(c+32|0,4,a,f);fW(c+48|0,4,a,f);w=c,B=dW(a,f),H[w+64>>2]=B;w=c,B=dW(a,f),H[w+68>>2]=B;w=c,B=dW(a,f),H[w+72>>2]=B;w=c,B=dW(a,f),H[w+76>>2]=B;w=c,B=dW(a,f),H[w+80>>2]=B;dW(a,f);b=H[33808];b=Ra[H[H[b+12>>2]+8>>2]](b+12|0,N(H[c+80>>2],112)+131|0,20591,9597,87)|0;if(b){h=b+131&-128;H[h-4>>2]=h-b}H[c+88>>2]=h;if(!H[c+80>>2]){h=1;break p}d=0;while(1){b=N(d,112);fW(b+h|0,4,a,f);fW((b+H[c+88>>2]|0)+16|0,4,a,f);fW((b+H[c+88>>2]|0)+32|0,4,a,f);fW((b+H[c+88>>2]|0)+48|0,4,a,f);fW((b+H[c+88>>2]|0)- -64|0,4,a,f);fW((b+H[c+88>>2]|0)+80|0,4,a,f);fW((b+H[c+88>>2]|0)+96|0,4,a,f);h=1;d=d+1|0;if(d>>>0>=K[c+80>>2]){break p}h=H[c+88>>2];continue}}Oa=i+16|0;if(h){break n}o5(H[33808],32,4459,303,57444,0);Ra[H[H[e>>2]+4>>2]](e);a=0;break a}if((o|0)!=1){break n}d=I[g+11|0];o=0;h=Oa-16|0;Oa=h;c=e+112|0;q:{if(I[c+56|0]){break q}a=H[c+24>>2];if(!a){break q}k=H[33808];Ra[H[H[k+12>>2]+12>>2]](k+12|0,a)}H[c+20>>2]=0;H[c+24>>2]=0;H[c>>2]=0;H[c+28>>2]=0;H[c+32>>2]=0;H[c+36>>2]=0;H[c+40>>2]=0;H[c+44>>2]=0;H[c+48>>2]=0;G[c+50>>1]=0;G[c+52>>1]=0;G[c+54>>1]=0;G[c+56>>1]=0;bW(h+15|0,h+14|0,h+13|0,h+12|0,f);r:{if(I[h+15|0]!=66|I[h+14|0]!=86|(I[h+13|0]!=52|I[h+12|0]!=32)){break r}k=dW(0,f);s:{if((k|0)==1){l=1;a=1;break s}l=1;a=1;if((k|0)==16777216){break s}a=d;l=a?k<<8&16711680|k<<24|(k>>>8&65280|k>>>24):k;if(l>>>0>3){break r}}fW(c+4|0,3,a,f);w=c,C=eW(a,f),L[w+16>>2]=C;w=c,B=dW(a,f),H[w+28>>2]=B;fW(c+32|0,3,a,f);fW(c+44|0,3,a,f);if(l>>>0>=3){d=(dW(a,f)|0)!=0}else{d=1}F[c+57|0]=d;a=dW(a,f);H[c+20>>2]=a;t:{if(a){d=a<<4;if(d){a=H[33808];a=Ra[H[H[a+12>>2]+8>>2]](a+12|0,d,20591,10886,280)|0}else{a=0}H[c+24>>2]=a;Ra[H[H[f>>2]>>2]](f,a,d)|0;break t}H[c+24>>2]=0}o=1}Oa=h+16|0;if(!o){break b}H[e+100>>2]=s;H[e+88>>2]=H[e+12>>2];a=e+88|0;u:{if(I[e+8|0]&2){H[e+108>>2]=b;H[e+104>>2]=0;break u}H[e+108>>2]=0;H[e+104>>2]=b}H[e+112>>2]=a;H[e+92>>2]=i}w=e,C=eW(I[g+11|0],f),L[w+44>>2]=C;fW(e+20|0,6,I[g+11|0],f);b=dW(I[g+11|0],f);if(b){c=H[e+68>>2];if(c){a=H[33808];i=a+12|0;a=(B=i,A=c,z=Ra[H[H[a>>2]+20>>2]](a)|0?30802:55639,y=16524,x=247,w=H[H[i>>2]+8>>2],Ra[w](B|0,A|0,z|0,y|0,x|0)|0)}else{a=0}H[e+76>>2]=a;Ra[H[H[f>>2]>>2]](f,a,b)|0}if(!t){break c}d=0;if(K[g+12>>2]<=14){d=dW(I[g+11|0],f)}v:{if(u){if(I[e+8|0]&2){if(!j){break v}a=H[e+56>>2];if((j|0)!=1){b=j&-2;c=0;while(1){Ra[H[H[f>>2]>>2]](f,g+4|0,1)|0;G[a>>1]=I[g+4|0];Ra[H[H[f>>2]>>2]](f,g+4|0,1)|0;G[a+2>>1]=I[g+4|0];a=a+4|0;c=c+2|0;if((b|0)!=(c|0)){continue}break}}if(!(j&1)){break v}Ra[H[H[f>>2]>>2]](f,g+4|0,1)|0;G[a>>1]=I[g+4|0];break v}if(!j){break v}a=H[e+56>>2];if((j|0)!=1){b=j&-2;c=0;while(1){Ra[H[H[f>>2]>>2]](f,g+4|0,1)|0;H[a>>2]=I[g+4|0];Ra[H[H[f>>2]>>2]](f,g+4|0,1)|0;H[a+4>>2]=I[g+4|0];a=a+8|0;c=c+2|0;if((b|0)!=(c|0)){continue}break}}if(!(j&1)){break v}Ra[H[H[f>>2]>>2]](f,g+4|0,1)|0;H[a>>2]=I[g+4|0];break v}a=I[e+8|0]&2;if(m&8){if(a){c=H[e+56>>2];Ra[H[H[f>>2]>>2]](f,c,N(q,6))|0;if(!I[g+11|0]|!j){break v}k=0;a=0;if(j-1>>>0>=3){m=j&-4;b=0;while(1){i=a<<1;h=i+c|0;o=I[h+1|0];F[h+1|0]=I[h|0];F[h|0]=o;h=c+(i|2)|0;o=I[h+1|0];F[h+1|0]=I[h|0];F[h|0]=o;h=c+(i|4)|0;o=I[h+1|0];F[h+1|0]=I[h|0];F[h|0]=o;i=c+(i|6)|0;h=I[i+1|0];F[i+1|0]=I[i|0];F[i|0]=h;a=a+4|0;b=b+4|0;if((m|0)!=(b|0)){continue}break}}i=j&3;if(!i){break v}while(1){b=c+(a<<1)|0;j=I[b+1|0];F[b+1|0]=I[b|0];F[b|0]=j;a=a+1|0;k=k+1|0;if((i|0)!=(k|0)){continue}break}break v}if(!j){break v}a=H[e+56>>2];c=0;while(1){Ra[H[H[f>>2]>>2]](f,g+4|0,2)|0;if(I[g+11|0]){b=I[g+5|0];F[g+5|0]=I[g+4|0];F[g+4|0]=b}H[a>>2]=J[g+4>>1];a=a+4|0;c=c+1|0;if((j|0)!=(c|0)){continue}break}break v}if(a){if(!j){break v}a=H[e+56>>2];c=0;while(1){Ra[H[H[f>>2]>>2]](f,g+4|0,4)|0;if(I[g+11|0]){b=I[g+7|0];F[g+7|0]=I[g+4|0];F[g+4|0]=b;b=I[g+5|0];F[g+5|0]=I[g+6|0];F[g+6|0]=b}G[a>>1]=H[g+4>>2];a=a+2|0;c=c+1|0;if((j|0)!=(c|0)){continue}break}break v}i=H[e+56>>2];Ra[H[H[f>>2]>>2]](f,i,N(q,12))|0;if(!I[g+11|0]|!j){break v}c=0;if((j|0)!=1){h=j&-2;b=0;while(1){k=c<<2;a=k+i|0;m=I[a+3|0];F[a+3|0]=I[a|0];F[a|0]=m;m=I[a+1|0];F[a+1|0]=I[a+2|0];F[a+2|0]=m;a=i+(k|4)|0;k=I[a+3|0];F[a+3|0]=I[a|0];m=I[a+2|0];F[a+2|0]=I[a+1|0];F[a+1|0]=m;F[a|0]=k;c=c+2|0;b=b+2|0;if((h|0)!=(b|0)){continue}break}}if(!(j&1)){break v}a=i+(c<<2)|0;b=I[a+3|0];F[a+3|0]=I[a|0];F[a|0]=b;b=I[a+1|0];F[a+1|0]=I[a+2|0];F[a+2|0]=b}b=0;c=0;a=H[e+68>>2];i=a<<2;i=(i|0)!=(i&1073741820)?-1:a<<4;if(i){a=H[33808];c=a+12|0;c=(x=c,y=i,z=Ra[H[H[a>>2]+20>>2]](a)|0?25032:55639,A=4459,B=427,w=H[H[c>>2]+8>>2],Ra[w](x|0,y|0,z|0,A|0,B|0)|0);a=H[e+68>>2]}H[e+60>>2]=c;i=(a&1073741823)!=(a|0)?-1:a<<2;if(i){a=H[33808];b=a+12|0;b=(B=b,A=i,z=Ra[H[H[a>>2]+20>>2]](a)|0?25032:55639,y=4459,x=428,w=H[H[b>>2]+8>>2],Ra[w](B|0,A|0,z|0,y|0,x|0)|0);c=H[e+60>>2];a=H[e+68>>2]}H[e+64>>2]=b;Ra[H[H[f>>2]>>2]](f,c,a<<4)|0;w:{if(K[g+12>>2]>14){break w}x:{if(!H[e+12>>2]){break x}a=0;while(1){dW(I[g+11|0],f);a=a+1|0;b=H[e+12>>2];if(a>>>0>>0){continue}break}if(!b){break x}a=0;while(1){dW(I[g+11|0],f);a=a+1|0;if(a>>>0>2]){continue}break}}if(!d){break w}a=0;while(1){dW(I[g+11|0],f);a=a+1|0;if((d|0)!=(a|0)){continue}break}}Ra[H[H[f>>2]>>2]](f,H[e+64>>2],H[e+68>>2]<<2)|0;y:{if(!I[g+11|0]|!(H[e+68>>2]&1073741823)){break y}d=0;while(1){a=H[e+56>>2]+(d<<2)|0;b=I[a+3|0];F[a+3|0]=I[a|0];F[a|0]=b;b=I[a+1|0];F[a+1|0]=I[a+2|0];F[a+2|0]=b;d=d+1|0;a=H[e+68>>2];if(d>>>0>>0){continue}break}if(!(a&1073741823)){break y}d=0;while(1){a=H[e+60>>2]+(d<<2)|0;b=I[a+3|0];F[a+3|0]=I[a|0];F[a|0]=b;b=I[a+1|0];F[a+1|0]=I[a+2|0];F[a+2|0]=b;d=d+1|0;if(d>>>0>2]<<2>>>0){continue}break}}a=H[33808];b=a+12|0;i=(x=b,y=44,z=Ra[H[H[a>>2]+20>>2]](a)|0?38926:55639,A=4459,B=455,w=H[H[b>>2]+8>>2],Ra[w](x|0,y|0,z|0,A|0,B|0)|0);H[i>>2]=0;H[i+4>>2]=0;F[i+40|0]=0;H[i+32>>2]=0;H[i+36>>2]=0;H[i+24>>2]=0;H[i+28>>2]=0;H[i+16>>2]=0;H[i+20>>2]=0;H[i+8>>2]=0;H[i+12>>2]=0;H[e+84>>2]=i;a=I[g+11|0];h=0;d=Oa-16|0;Oa=d;if(!I[i+40|0]){b=H[i+24>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b);H[i+24>>2]=0}b=H[i+28>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}H[i+28>>2]=0}H[i+20>>2]=0;H[i+24>>2]=0;bW(d+15|0,d+14|0,d+13|0,d+12|0,f);c=0;z:{if(I[d+15|0]!=66|I[d+14|0]!=86|(I[d+13|0]!=51|I[d+12|0]!=50)){break z}b=1;j=dW(0,f);if(!((j|0)==1|(j|0)==16777216)){b=a;if((a?j<<8&16711680|j<<24|(j>>>8&65280|j>>>24):j)>>>0>3){break z}}w=i,C=eW(b,f),L[w+4>>2]=C;w=i,C=eW(b,f),L[w+8>>2]=C;w=i,C=eW(b,f),L[w+12>>2]=C;w=i,C=eW(b,f),L[w+16>>2]=C;w=i,B=dW(b,f),H[w+36>>2]=B;j=dW(b,f);H[i+32>>2]=j;c=1;if(!j){break z}c=0;a=N(j,1168);if(a){c=H[33808];c=Ra[H[H[c+12>>2]+8>>2]](c+12|0,a,20591,10957,167)|0}H[i+28>>2]=c;while(1){a=N(h,1168)+c|0;c=dW(b,f);H[a+1152>>2]=c;fW(a+1024|0,c,b,f);c=H[a+1152>>2]<<2;fW(a,c,b,f);fW(a+512|0,c,b,f);c=1;h=h+1|0;if((j|0)==(h|0)){break z}c=H[i+28>>2];continue}}Oa=d+16|0;if(c){break c}o5(H[33808],32,4459,459,57504,0);Ra[H[H[e>>2]+4>>2]](e)}a=0;break a}a=kU(v,e);Ra[H[H[e>>2]+4>>2]](e);break a}o5(H[33808],32,4459,313,57475,0);Ra[H[H[e>>2]+4>>2]](e);a=0}Oa=g+16|0;return a|0}function sY(a,b,c,d,e){var f=O(0),g=O(0),h=O(0),i=O(0),j=0,k=0,l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=0,t=0,u=0,w=O(0),y=0,z=O(0),A=O(0),D=O(0),E=O(0),G=O(0),K=O(0),M=O(0),Q=O(0),R=O(0),S=O(0),T=0,U=O(0),V=0,X=O(0),Y=0,Z=O(0),_=O(0),$=0,aa=0,ba=O(0),ca=0,da=O(0),ea=O(0),fa=O(0),ga=0,ha=0,ia=O(0),ja=O(0),ka=O(0),la=O(0),ma=O(0),na=O(0),oa=O(0),pa=O(0),qa=0,ra=0,sa=O(0),ta=0,ua=O(0),va=O(0),wa=0,xa=O(0),ya=O(0),za=O(0),Aa=O(0),Ba=O(0),Ca=O(0),Da=O(0),Ea=0,Fa=O(0),Ga=O(0),Ha=O(0),Ia=0;y=Oa-48|0;Oa=y;o=L[b+12>>2];h=L[b>>2];f=O(o-h);m=L[b+28>>2];l=L[b+4>>2];G=O(m-l);g=L[b+24>>2];K=O(g-h);M=L[b+16>>2];i=O(M-l);S=O(O(f*G)-O(K*i));la=i;z=L[b+32>>2];i=L[b+8>>2];Q=O(z-i);U=L[b+20>>2];_=O(U-i);G=O(O(la*Q)-O(G*_));f=O(O(_*K)-O(Q*f));K=O(O(S*S)+O(O(G*G)+O(f*f)));if(K>O(0)){R=O(O(1)/O(W(K)));n=O(S*R);X=O(f*R);R=O(G*R)}L[y+36>>2]=X;L[y+32>>2]=R;L[y+40>>2]=n;S=O(O(i*n)+O(O(h*R)+O(l*X)));L[y+44>>2]=-S;a:{if(O(O(O(L[a+2164>>2]*n)+O(O(L[a+2156>>2]*R)+O(X*L[a+2160>>2])))-S)>2])+O(za*L[a+2120>>2]))+O(Aa*L[a+2132>>2]))+L[a+2144>>2]);A=O(O(O(O(ya*L[a+2112>>2])+O(za*L[a+2124>>2]))+O(Aa*L[a+2136>>2]))+L[a+2148>>2]);p=O(O(O(O(ya*L[a+2116>>2])+O(za*L[a+2128>>2]))+O(Aa*L[a+2140>>2]))+L[a+2152>>2]);$=H[a+2188>>2];t=a+2060|0;u=a+2108|0;s=H[a+2192>>2];K=L[a+2196>>2];l=O(0);i=O(0);n=O(0);b=Oa-3152|0;T=b;Oa=b;aa=H[a+2180>>2];ca=H[aa+16>>2];Y=b-((ca<<2)+15&-16)|0;Oa=Y;ta=H[aa+28>>2];qa=H[aa+24>>2];b:{c:{d:{ra=I[a+2205|0];e:{if(ra){if(!ca){break d}M=L[t+44>>2];X=L[t+40>>2];R=L[t+32>>2];S=L[t+28>>2];G=L[t+20>>2];z=L[t+16>>2];Q=L[t+36>>2];U=L[t+24>>2];_=L[t+12>>2];D=L[t+8>>2];Z=L[t+4>>2];da=L[t>>2];b=-1;h=O(3.4028234663852886e38);d=Y;while(1){V=qa+N(j,20)|0;E=L[V+12>>2];g=L[V+8>>2];r=L[V>>2];w=L[V+4>>2];f:{if(O(E+O(O(p*g)+O(O(q*r)+O(w*A))))>2]=j;f=O(O(O(r*D)+O(w*G))+O(g*R));o=O(O(O(r*da)+O(w*_))+O(g*U));m=O(O(O(r*Z)+O(w*z))+O(g*S));ia=O(O(f*M)+O(O(o*Q)+O(m*X)));ja=O(ia-E);E=O(O(L[k+8>>2]*f)+O(O(L[k>>2]*o)+O(m*L[k+4>>2])));ea=O(O(L[k+20>>2]*f)+O(O(L[k+12>>2]*o)+O(m*L[k+16>>2])));ba=E>2]*f)+O(O(L[k+24>>2]*o)+O(m*L[k+28>>2])));ba=ba>2])+O(O(r*L[V>>2])+O(w*L[V+4>>2]))));E=E>ea?E:ea;E=E>fa?E:fa;if(g>O(E+K)){break b}d=d+4|0;r=O(ja-ba);g=O(E-g);g=g>r?r:g;if(!(g>2];fa=L[s+56>>2];ia=L[s+68>>2];ja=O(O(O(ea*q)+O(fa*A))+O(ia*p));ba=L[s+40>>2];ma=L[s+52>>2];pa=L[s- -64>>2];sa=O(O(O(ba*q)+O(ma*A))+O(pa*p));na=L[s+36>>2];oa=L[s+48>>2];ka=L[s+60>>2];va=O(O(O(na*q)+O(oa*A))+O(ka*p));M=L[t+44>>2];X=L[t+40>>2];R=L[t+32>>2];S=L[t+28>>2];G=L[t+20>>2];z=L[t+16>>2];Q=L[t+36>>2];U=L[t+24>>2];_=L[t+12>>2];D=L[t+8>>2];Z=L[t+4>>2];da=L[t>>2];b=-1;h=O(3.4028234663852886e38);d=Y;while(1){V=qa+N(j,20)|0;w=L[V+12>>2];g=L[V+8>>2];q=L[V>>2];A=L[V+4>>2];g:{if(O(w+O(O(ja*g)+O(O(va*q)+O(sa*A))))>2]=j;o=O(O(O(ea*q)+O(fa*A))+O(ia*g));m=O(O(O(na*q)+O(oa*A))+O(ka*g));p=O(O(O(ba*q)+O(ma*A))+O(pa*g));f=O(W(O(O(o*o)+O(O(m*m)+O(p*p)))));E=O(O(1)/f);f=f>O(0)?E:O(1);m=O(m*f);p=O(p*f);r=O(o*f);f=O(O(O(m*D)+O(p*G))+O(r*R));o=O(O(O(m*da)+O(p*_))+O(r*U));m=O(O(O(m*Z)+O(p*z))+O(r*S));Ba=O(O(f*M)+O(O(o*Q)+O(m*X)));Ca=O(Ba-O(w*E));p=O(O(L[k+8>>2]*f)+O(O(L[k>>2]*o)+O(m*L[k+4>>2])));r=O(O(L[k+20>>2]*f)+O(O(L[k+12>>2]*o)+O(m*L[k+16>>2])));ua=p>2]*f)+O(O(L[k+24>>2]*o)+O(m*L[k+28>>2])));ua=w>ua?ua:w;if(O(Ca+K)>2])+O(O(q*L[V>>2])+O(A*L[V+4>>2])))*E)+Ba);p=p>r?p:r;p=p>w?p:w;if(g>O(p+K)){break b}d=d+4|0;q=O(Ca-ua);g=O(p-g);g=g>q?q:g;if(!(g>2;break c}h:{i:{if(!ra){if(ca){break i}break h}if(!ca){break h}E=L[k+32>>2];ea=L[k+28>>2];fa=L[k+20>>2];ia=L[k+16>>2];ja=L[k+24>>2];ba=L[k+12>>2];ma=L[k+8>>2];pa=L[k+4>>2];sa=L[k>>2];b=-1;d=0;while(1){j=qa+N(d,20)|0;g=L[j>>2];q=L[j+4>>2];A=L[j+8>>2];f=O(O(O(g*D)+O(q*G))+O(A*R));o=O(O(O(g*da)+O(q*_))+O(A*U));m=O(O(O(g*Z)+O(q*z))+O(A*S));na=O(O(f*M)+O(O(o*Q)+O(m*X)));oa=O(na-L[j+12>>2]);p=O(O(ma*f)+O(O(sa*o)+O(pa*m)));r=O(O(fa*f)+O(O(ba*o)+O(ia*m)));ka=pka?ka:w;if(O(oa+K)>2])+O(O(g*L[j>>2])+O(q*L[j+4>>2]))));p=p>r?p:r;p=p>w?p:w;if(g>O(p+K)){break b}q=O(oa-ka);g=O(p-g);g=g>q?q:g;if(g>2]=d;d=d+1|0;if((ca|0)!=(d|0)){continue}break}break c}ea=L[s+68>>2];fa=L[s- -64>>2];ia=L[s+60>>2];ja=L[s+56>>2];ba=L[s+52>>2];ma=L[s+48>>2];pa=L[s+44>>2];sa=L[s+40>>2];na=L[k+32>>2];oa=L[k+28>>2];ka=L[k+20>>2];va=L[k+16>>2];Ba=L[s+36>>2];Ca=L[k+24>>2];ua=L[k+12>>2];Fa=L[k+8>>2];Ga=L[k+4>>2];Ha=L[k>>2];b=-1;d=0;while(1){j=qa+N(d,20)|0;g=L[j>>2];q=L[j+4>>2];A=L[j+8>>2];f=O(O(O(g*Ba)+O(q*ma))+O(A*ia));la=f;o=O(O(O(g*pa)+O(q*ja))+O(A*ea));m=O(f*f);f=O(O(O(g*sa)+O(q*ba))+O(A*fa));m=O(W(O(O(o*o)+O(m+O(f*f)))));E=O(O(1)/m);m=m>O(0)?E:O(1);p=O(la*m);r=O(f*m);m=O(o*m);f=O(O(O(D*p)+O(G*r))+O(m*R));o=O(O(U*m)+O(O(da*p)+O(_*r)));m=O(O(m*S)+O(O(Z*p)+O(z*r)));Da=O(O(f*M)+O(O(o*Q)+O(m*X)));la=O(Da-O(L[j+12>>2]*E));p=O(O(Fa*f)+O(O(Ha*o)+O(Ga*m)));r=O(O(ka*f)+O(O(ua*o)+O(va*m)));xa=pxa?xa:w;if(O(la+K)>2])+O(O(g*L[j>>2])+O(q*L[j+4>>2])))*E)+Da);p=p>r?p:r;p=p>w?p:w;if(g>O(p+K)){break b}q=O(la-xa);g=O(p-g);g=g>q?q:g;if(g>2]=d;d=d+1|0;if((ca|0)!=(d|0)){continue}break}break c}b=-1;ca=0;break c}b=-1;h=O(3.4028234663852886e38);ca=0}H[y+24>>2]=0;H[y+16>>2]=0;H[y+20>>2]=0;H[y+12>>2]=2139095039;Ra[H[aa+64>>2]](aa,ha,t,s,T+24|0,T+3104|0);G=L[k+8>>2];X=L[ha+8>>2];o=L[k>>2];R=L[ha>>2];m=L[k+4>>2];S=L[ha+4>>2];f=O(O(G*X)+O(O(o*R)+O(m*S)));g=L[k+20>>2];M=L[k+12>>2];z=L[k+16>>2];D=O(O(g*X)+O(O(M*R)+O(S*z)));q=f>2];U=L[k+24>>2];_=L[k+28>>2];Z=O(O(Q*X)+O(O(U*R)+O(S*_)));q=q>2];if(q>O(da+K)){break b}f=f>D?f:D;f=f>Z?f:Z;D=L[T+24>>2];if(O(f+K)Z?Z:f;if(f>2]>f){L[y+12>>2]=f;h=L[$+28>>2];l=L[$+16>>2];n=L[$+24>>2];i=L[$>>2];f=L[$+12>>2];D=L[$+4>>2];L[y+24>>2]=O(O(R*L[$+8>>2])+O(S*L[$+20>>2]))+O(X*L[$+32>>2]);L[y+20>>2]=O(O(R*D)+O(S*l))+O(X*h);L[y+16>>2]=O(O(R*i)+O(S*f))+O(X*n)}Ea=H[aa+24>>2];b=Ea+N(b,20)|0;h=L[b>>2];Z=L[u>>2];l=L[b+4>>2];da=L[u+12>>2];n=L[b+8>>2];q=L[u+24>>2];i=O(O(O(h*Z)+O(l*da))+O(n*q));A=L[s+8>>2];p=L[u+4>>2];r=L[u+16>>2];w=L[u+28>>2];f=O(O(O(h*p)+O(l*r))+O(n*w));E=L[s+20>>2];ea=L[u+8>>2];fa=L[u+20>>2];ia=L[u+32>>2];D=O(O(O(h*ea)+O(l*fa))+O(n*ia));ja=L[s+32>>2];h=O(O(O(i*A)+O(f*E))+O(D*ja));ba=L[s+4>>2];ma=L[s+16>>2];pa=L[s+28>>2];l=O(O(O(i*ba)+O(f*ma))+O(D*pa));sa=L[s>>2];na=L[s+12>>2];oa=L[s+24>>2];n=O(O(O(i*sa)+O(f*na))+O(D*oa));ka=L[u+44>>2];la=O(ka*D);D=L[u+36>>2];va=L[u+40>>2];i=O(L[b+12>>2]-O(la+O(O(D*i)+O(f*va))));b=0;if(!(!(ga&8)|!(K>=O(O(O(g*h)+O(O(M*n)+O(z*l)))+i)?1:K>=O(O(O(G*h)+O(O(o*n)+O(m*l)))+i)))){L[T+3112>>2]=G-g;L[T+3108>>2]=m-z;L[T+3104>>2]=o-M;b=1}if(!(!(ga&16)|!(K>=O(O(O(Q*h)+O(O(U*n)+O(_*l)))+i)?1:K>=O(O(O(g*h)+O(O(M*n)+O(z*l)))+i)))){d=T+3104|N(b,12);L[d+8>>2]=g-Q;L[d+4>>2]=z-_;L[d>>2]=M-U;b=b+1|0}if(!(!(ga&32)|!(K>=O(O(O(G*h)+O(O(o*n)+O(m*l)))+i)?1:K>=O(O(O(Q*h)+O(O(U*n)+O(_*l)))+i)))){d=(T+3104|0)+N(b,12)|0;L[d+8>>2]=Q-G;L[d+4>>2]=_-m;L[d>>2]=U-o;b=b+1|0}ta=H[aa+28>>2];M=L[ha+12>>2];h=L[ha+8>>2];l=L[ha>>2];n=L[ha+4>>2];H[T+24>>2]=0;G=O(3.4028234663852886e38);j:{if(!ca|!b){break j}i=O(O(O(ea*l)+O(fa*n))+O(ia*h));f=O(O(O(Z*l)+O(da*n))+O(q*h));h=O(O(O(p*l)+O(r*n))+O(w*h));o=O(O(ja*i)+O(O(A*f)+O(E*h)));m=O(O(pa*i)+O(O(ba*f)+O(ma*h)));g=O(O(oa*i)+O(O(sa*f)+O(na*h)));M=O(M-O(O(ka*i)+O(O(D*f)+O(va*h))));Ia=H[aa+32>>2];while(1){ca=ca-1|0;k:{qa=N(H[Y>>2],20)+Ea|0;j=I[qa+18|0];if(!j){break k}V=J[qa+16>>1]+Ia|0;ha=T+3104|0;ga=b;while(1){ga=ga-1|0;d=0;wa=j&255;if(wa){while(1){ra=d+V|0;d=d+1|0;j=ta+N(I[V+(d>>>0>>0?d:0)|0],12)|0;h=L[j+4>>2];n=L[j>>2];ra=ta+N(I[ra|0],12)|0;i=L[ra+8>>2];f=L[ra>>2];z=L[ra+4>>2];l:{m:{if(K>=O(M+O(O(i*o)+O(O(f*g)+O(m*z))))){l=L[j+8>>2];break m}l=L[j+8>>2];if(!(K>=O(M+O(O(l*o)+O(O(n*g)+O(m*h)))))){break l}}n=O(f-n);h=O(z-h);l=O(i-l);i=O(O(O(n*L[s>>2])+O(h*L[s+12>>2]))+O(l*L[s+24>>2]));f=O(O(O(n*L[s+4>>2])+O(h*L[s+16>>2]))+O(l*L[s+28>>2]));l=O(O(O(n*L[s+8>>2])+O(h*L[s+20>>2]))+O(l*L[s+32>>2]));n=O(O(O(i*L[t>>2])+O(f*L[t+12>>2]))+O(l*L[t+24>>2]));z=L[ha+4>>2];Q=L[ha>>2];U=O(O(O(i*L[t+4>>2])+O(f*L[t+16>>2]))+O(l*L[t+28>>2]));h=O(O(n*z)-O(Q*U));l=O(O(O(i*L[t+8>>2])+O(f*L[t+20>>2]))+O(l*L[t+32>>2]));i=L[ha+8>>2];n=O(O(l*Q)-O(i*n));i=O(O(U*i)-O(z*l));if(!(O(P(h))>O(9.999999974752427e-7)?1:O(P(i))>O(9.999999974752427e-7)|O(P(n))>O(9.999999974752427e-7))){break l}z=O(0);f=O(0);l=O(0);Q=O(O(h*h)+O(O(i*i)+O(n*n)));if(Q>O(0)){l=h;h=O(O(1)/O(W(Q)));l=O(l*h);z=O(i*h);f=O(n*h)}L[T+16>>2]=l;L[T+12>>2]=f;L[T+8>>2]=z;gY(T+24|0,T+8|0)}if((d|0)!=(wa|0)){continue}break}}if(!ga){break k}ha=ha+12|0;j=I[qa+18|0];continue}}Y=Y+4|0;if(ca){continue}break}j=H[T+24>>2];if(!j){break j}p=L[u+44>>2];f=L[u+8>>2];z=L[k+24>>2];n=L[u+20>>2];Q=L[k+28>>2];l=L[u+32>>2];U=L[k+32>>2];E=O(p+O(O(O(f*z)+O(n*Q))+O(l*U)));r=L[u+40>>2];o=L[u+4>>2];m=L[u+16>>2];i=L[u+28>>2];ea=O(r+O(O(O(o*z)+O(m*Q))+O(i*U)));w=L[u+36>>2];h=L[u>>2];g=L[u+12>>2];M=L[u+24>>2];fa=O(w+O(O(O(h*z)+O(g*Q))+O(M*U)));_=L[k+12>>2];D=L[k+16>>2];Z=L[k+20>>2];ia=O(p+O(O(O(f*_)+O(n*D))+O(l*Z)));ja=O(r+O(O(O(o*_)+O(m*D))+O(i*Z)));ba=O(w+O(O(O(h*_)+O(g*D))+O(M*Z)));da=L[k>>2];q=L[k+4>>2];A=L[k+8>>2];ma=O(O(O(O(da*f)+O(q*n))+O(A*l))+p);r=O(O(O(O(da*o)+O(q*m))+O(A*i))+r);w=O(O(O(O(da*h)+O(q*g))+O(A*M))+w);d=T+24|4;while(1){n:{p=L[d>>2];la=O(p*f);f=L[d+4>>2];la=O(la+O(f*n));n=L[d+8>>2];l=O(la+O(n*l));h=O(O(O(p*h)+O(f*g))+O(n*M));n=O(O(O(p*o)+O(f*m))+O(n*i));o=O(O(L[aa+8>>2]*l)+O(O(L[aa>>2]*h)+O(n*L[aa+4>>2])));i=O(O((x(2,H[aa+56>>2]|(B(l),v(2))&-2147483648),C())*l)+O(O((x(2,H[aa+48>>2]|(B(h),v(2))&-2147483648),C())*h)+O(n*(x(2,H[aa+52>>2]|(B(n),v(2))&-2147483648),C()))));f=L[aa+44>>2];m=fi?i:f;h=O(O(E*l)+O(O(fa*h)+O(ea*n)));l=O(O(o+m)-(h>g?g:h));n=fl?l:h)>G){break o}Ra[H[aa+64>>2]](aa,d,t,s,T+8|0,T+3148|0);h=L[d+8>>2];l=L[d>>2];n=L[d+4>>2];i=O(O(A*h)+O(O(da*l)+O(q*n)));f=O(O(Z*h)+O(O(_*l)+O(D*n)));g=f>i?i:f;o=O(O(U*h)+O(O(z*l)+O(Q*n)));g=g>2];if(g>O(m+K)){break n}i=fo?i:o;f=L[T+8>>2];if(O(i+K)o?o:i;if(!(i>2];i=L[u+28>>2];M=L[u+24>>2];n=L[u+20>>2];m=L[u+16>>2];g=L[u+12>>2];f=L[u+8>>2];o=L[u+4>>2];h=L[u>>2];continue}break}wa=0;break b}wa=1;if(!(L[y+12>>2]>G)){break b}L[y+12>>2]=G;h=L[$+28>>2];l=L[$+16>>2];n=L[$+24>>2];i=L[$>>2];G=L[$+12>>2];f=L[$+4>>2];L[y+24>>2]=O(O(R*L[$+8>>2])+O(S*L[$+20>>2]))+O(X*L[$+32>>2]);L[y+20>>2]=O(O(R*f)+O(S*l))+O(X*h);L[y+16>>2]=O(O(R*i)+O(S*G))+O(X*n);F[y+11|0]=0}Oa=T+3152|0;if(!wa){break a}if(I[y+11|0]){if(!qY(a,y+32|0,k,ya,za,Aa,y+16|0,L[y+12>>2],c)){break a}F[a+2224|0]=1;c=H[a+1284>>2];p:{if((c|0)==128){k=e+8|0;break p}j=H[e>>2];b=H[e+4>>2];d=j>>>0>>0;Y=d?b:j;k=d?j:b;b=Y|k<<16;b=(b<<15^-1)+b|0;b=N(b>>>10^b,9);b=b>>>6^b;b=(b<<11^-1)+b|0;d=(((b>>>16^b)&127)+a|0)+1156|0;b=I[d|0];q:{if((b|0)!=255){while(1){b=b&255;d=(b<<3)+a|0;if((k|0)==H[d+4>>2]&(Y|0)==H[d+8>>2]){break q}d=(a+b|0)+1028|0;b=I[d|0];if((b|0)!=255){continue}break}}F[d|0]=c;b=a+4|0;F[(b+c|0)+1024|0]=255;c=H[a+1284>>2];H[a+1284>>2]=c+1;c=b+(c<<3)|0;H[c>>2]=k;H[c+4>>2]=Y;j=H[e>>2];c=H[a+1284>>2]}k=e+8|0;if((c|0)==128){break p}Y=H[e+8>>2];b=Y>>>0>j>>>0;ga=b?j:Y;j=b?Y:j;b=ga<<16|j;b=(b<<15^-1)+b|0;b=N(b>>>10^b,9);b=b>>>6^b;b=(b<<11^-1)+b|0;d=(((b>>>16^b)&127)+a|0)+1156|0;b=I[d|0];r:{if((b|0)!=255){while(1){b=b&255;d=(b<<3)+a|0;if((ga|0)==H[d+4>>2]&(j|0)==H[d+8>>2]){break r}d=(a+b|0)+1028|0;b=I[d|0];if((b|0)!=255){continue}break}}F[d|0]=c;b=a+4|0;F[(b+c|0)+1024|0]=255;c=H[a+1284>>2];H[a+1284>>2]=c+1;c=b+(c<<3)|0;H[c>>2]=ga;H[c+4>>2]=j;Y=H[e+8>>2];c=H[a+1284>>2]}if((c|0)==128){break p}b=H[e+4>>2];d=b>>>0>>0;j=d?Y:b;ga=d?b:Y;b=j|ga<<16;b=(b<<15^-1)+b|0;b=N(b>>>10^b,9);b=b>>>6^b;b=(b<<11^-1)+b|0;d=(((b>>>16^b)&127)+a|0)+1156|0;b=I[d|0];if((b|0)!=255){while(1){b=b&255;d=(b<<3)+a|0;if((ga|0)==H[d+4>>2]&(j|0)==H[d+8>>2]){break p}d=(a+b|0)+1028|0;b=I[d|0];if((b|0)!=255){continue}break}}F[d|0]=c;b=a+4|0;F[(b+c|0)+1024|0]=255;c=H[a+1284>>2];H[a+1284>>2]=c+1;c=b+(c<<3)|0;H[c>>2]=ga;H[c+4>>2]=j}j=H[a+2056>>2];if((j|0)==128){break a}d=H[e>>2];c=((d&127)+a|0)+1928|0;b=I[c|0];s:{if((b|0)!=255){while(1){b=b&255;if((d|0)==H[((b<<2)+a|0)+1288>>2]){break s}c=(a+b|0)+1800|0;b=I[c|0];if((b|0)!=255){continue}break}}F[c|0]=j;b=a+1288|0;F[(b+j|0)+512|0]=255;c=H[a+2056>>2];H[a+2056>>2]=c+1;H[b+(c<<2)>>2]=d;j=H[a+2056>>2]}if((j|0)==128){break a}c=H[e+4>>2];d=((c&127)+a|0)+1928|0;b=I[d|0];t:{if((b|0)!=255){while(1){b=b&255;if((c|0)==H[((b<<2)+a|0)+1288>>2]){break t}d=(a+b|0)+1800|0;b=I[d|0];if((b|0)!=255){continue}break}}F[d|0]=j;b=a+1288|0;F[(b+j|0)+512|0]=255;d=H[a+2056>>2];H[a+2056>>2]=d+1;H[b+(d<<2)>>2]=c;j=H[a+2056>>2]}if((j|0)==128){break a}c=H[k>>2];d=((c&127)+a|0)+1928|0;b=I[d|0];if((b|0)!=255){while(1){b=b&255;if((c|0)==H[((b<<2)+a|0)+1288>>2]){break a}d=(a+b|0)+1800|0;b=I[d|0];if((b|0)!=255){continue}break}}F[d|0]=j;b=a+1288|0;F[(b+j|0)+512|0]=255;d=a;a=H[a+2056>>2];H[d+2056>>2]=a+1;H[b+(a<<2)>>2]=c;break a}d=H[a>>2];j=H[d+4360>>2];b=j+17|0;if(b>>>0>(H[d+4364>>2]&2147483647)>>>0){tY(d,b);d=H[a>>2];j=H[d+4360>>2]}H[d+4360>>2]=b;a=H[d+4356>>2]+(j<<2)|0;H[a>>2]=c;L[a+4>>2]=L[k>>2];L[a+8>>2]=L[k+4>>2];L[a+12>>2]=L[k+8>>2];L[a+16>>2]=L[k+12>>2];L[a+20>>2]=L[k+16>>2];L[a+24>>2]=L[k+20>>2];L[a+28>>2]=L[k+24>>2];L[a+32>>2]=L[k+28>>2];L[a+36>>2]=L[k+32>>2];H[a+40>>2]=H[e>>2];H[a+44>>2]=H[e+4>>2];H[a+48>>2]=H[e+8>>2];L[a+52>>2]=L[y+16>>2];L[a+56>>2]=L[y+20>>2];L[a+60>>2]=L[y+24>>2];L[a+64>>2]=L[y+12>>2]}Oa=y+48|0}function Hu(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=O(0),k=O(0),l=O(0),m=O(0),n=0,o=O(0),p=O(0),q=O(0),r=O(0),s=0,t=0,u=O(0),v=O(0),w=O(0),x=0,y=O(0),z=0,A=O(0),B=O(0),C=O(0),D=O(0),E=0,G=0,J=O(0),K=O(0),M=O(0),P=0,Q=O(0),S=O(0),T=0,U=0,V=O(0),X=O(0),Y=0,Z=O(0),_=O(0),$=0,aa=0,ba=O(0),ca=O(0),da=0,ea=0;h=Oa-720|0;Oa=h;s=H[f>>2];L[h+704>>2]=L[e>>2];V=L[a+12>>2];X=L[a+8>>2];Q=L[a+4>>2];S=L[b+8>>2];A=L[b+12>>2];C=L[b+4>>2];H[h+700>>2]=0;L[h+696>>2]=A;L[h+692>>2]=S;L[h+688>>2]=C;q=L[c+20>>2];p=L[c+24>>2];J=L[c>>2];K=L[c+4>>2];v=L[c+8>>2];u=L[c+12>>2];o=L[c+16>>2];H[h+684>>2]=0;L[h+680>>2]=p;L[h+676>>2]=q;L[h+672>>2]=o;L[h+668>>2]=u;L[h+664>>2]=v;L[h+660>>2]=K;L[h+656>>2]=J;l=L[d+20>>2];k=L[d+24>>2];w=L[d>>2];B=L[d+4>>2];y=L[d+8>>2];D=L[d+12>>2];j=L[d+16>>2];H[h+652>>2]=0;L[h+648>>2]=k;L[h+644>>2]=l;L[h+640>>2]=j;L[h+636>>2]=D;L[h+632>>2]=y;L[h+628>>2]=B;L[h+624>>2]=w;H[h+620>>2]=0;m=O(-w);r=O(o-j);q=O(q-l);o=O(p-k);l=O(O(O(m*r)-O(q*B))-O(y*o));k=O(O(D*D)+O(-.5));j=O(O(O(k*q)+O(D*O(O(w*o)-O(y*r))))-O(B*l));L[h+612>>2]=j+j;j=O(O(O(D*O(O(B*r)-O(w*q)))+O(k*o))-O(y*l));L[h+616>>2]=j+j;j=O(O(O(k*r)+O(D*O(O(y*q)-O(B*o))))-O(w*l));L[h+608>>2]=j+j;o=O(O(O(J*B)-O(w*K))+O(O(v*D)-O(u*y)));L[h+600>>2]=o;j=O(O(O(K*y)-O(B*v))+O(O(J*D)-O(u*w)));L[h+592>>2]=j;w=O(O(O(v*w)-O(y*J))+O(O(K*D)-O(u*B)));L[h+596>>2]=w;v=O(O(u*D)-O(O(O(m*J)-O(K*B))-O(y*v)));L[h+604>>2]=v;H[h+572>>2]=0;u=O(j+j);l=O(O(1)-O(j*u));r=O(w+w);q=O(w*r);m=O(l-q);L[h+568>>2]=m;k=O(o*r);j=O(v*u);M=O(k-j);L[h+564>>2]=M;H[h+556>>2]=0;D=O(k+j);L[h+552>>2]=D;k=O(o+o);p=O(o*k);B=O(l-p);L[h+548>>2]=B;a=H[h+620>>2];H[h+584>>2]=H[h+616>>2];H[h+588>>2]=a;o=O(o*u);j=O(v*r);y=O(o+j);L[h+560>>2]=y;l=O(w*u);k=O(v*k);J=O(l-k);L[h+544>>2]=J;H[h+540>>2]=0;j=O(o-j);L[h+536>>2]=j;K=O(l+k);L[h+532>>2]=K;w=O(O(O(1)-q)-p);L[h+528>>2]=w;a=H[h+612>>2];H[h+576>>2]=H[h+608>>2];H[h+580>>2]=a;ca=L[e+8>>2];l=O(ca*O(.15000000596046448));k=Q<=X?Q:X;u=k<=V?k:V;v=O(u*O(.15000000596046448));p=l>2];C=L[d+52>>2];l=O(l*C);r=L[d+56>>2];k=O(S*r);l=k>=l?l:k;q=L[d+60>>2];k=O(A*q);k=O((k>=l?l:k)*O(.25));k=k>o?o:k;k=k>p?p:k;L[h+512>>2]=k;c=I[s+64|0];if(c){k=O(k*O(.800000011920929));C=O(k*k);a=c;while(1){f=H[s+76>>2];a=a-1|0;n=f+N(a,48)|0;A=L[n+24>>2];r=L[n+40>>2];l=L[n+8>>2];p=O(m*l);k=L[n>>2];m=L[n+4>>2];j=O(L[h+584>>2]+O(p+O(O(j*k)+O(m*D))));q=O(L[h+576>>2]+O(O(y*l)+O(O(w*k)+O(m*J))));p=L[n+16>>2];o=L[n+32>>2];l=O(L[h+580>>2]+O(O(M*l)+O(O(K*k)+O(m*B))));k=L[n+20>>2];m=L[n+36>>2];w=O(O(r*O(j-A))+O(O(O(q-p)*o)+O(O(l-k)*m)));j=O(A-O(j-O(r*w)));r=O(j*j);j=O(p-O(q-O(o*w)));p=O(j*j);j=O(k-O(l-O(m*w)));a:{if(C>2];H[n>>2]=H[f>>2];H[n+4>>2]=e;e=H[f+44>>2];H[n+40>>2]=H[f+40>>2];H[n+44>>2]=e;e=H[f+36>>2];H[n+32>>2]=H[f+32>>2];H[n+36>>2]=e;e=H[f+28>>2];H[n+24>>2]=H[f+24>>2];H[n+28>>2]=e;e=H[f+20>>2];H[n+16>>2]=H[f+16>>2];H[n+20>>2]=e;e=H[f+12>>2];H[n+8>>2]=H[f+8>>2];H[n+12>>2]=e;break a}L[n+44>>2]=w}if(a){m=L[h+568>>2];D=L[h+552>>2];j=L[h+536>>2];M=L[h+564>>2];B=L[h+548>>2];K=L[h+532>>2];y=L[h+560>>2];J=L[h+544>>2];w=L[h+528>>2];continue}break}r=L[d+56>>2];C=L[d+52>>2];n=I[s+64|0];q=L[d+60>>2]}l=L[h+696>>2];m=L[h+688>>2];k=L[h+692>>2];L[h+496>>2]=W(O(O(V*V)+O(O(Q*Q)+O(X*X))));j=O(q*l);o=O(j*j);j=O(C*m);p=O(j*j);j=O(r*k);L[h+480>>2]=W(O(o+O(p+O(j*j))));b:{c:{if((c|0)==(n&255)){if(!V$(s,h+592|0,h+656|0,h+624|0,h+512|0,h+496|0,h+480|0)){break c}}a=H[h+668>>2];H[h+168>>2]=H[h+664>>2];H[h+172>>2]=a;a=H[h+636>>2];H[h+312>>2]=H[h+632>>2];H[h+316>>2]=a;a=H[h+620>>2];H[s+24>>2]=H[h+616>>2];H[s+28>>2]=a;a=H[h+660>>2];H[h+160>>2]=H[h+656>>2];H[h+164>>2]=a;a=H[h+628>>2];H[h+304>>2]=H[h+624>>2];H[h+308>>2]=a;a=H[h+612>>2];H[s+16>>2]=H[h+608>>2];H[s+20>>2]=a;a=H[h+604>>2];H[s+8>>2]=H[h+600>>2];H[s+12>>2]=a;a=H[h+596>>2];H[s>>2]=H[h+592>>2];H[s+4>>2]=a;a=H[h+172>>2];H[s+40>>2]=H[h+168>>2];H[s+44>>2]=a;a=H[h+164>>2];H[s+32>>2]=H[h+160>>2];H[s+36>>2]=a;a=H[h+308>>2];H[s+48>>2]=H[h+304>>2];H[s+52>>2]=a;a=H[h+316>>2];H[s+56>>2]=H[h+312>>2];H[s+60>>2]=a;f=H[b+16>>2];e=H[b+20>>2];a=H[b+28>>2];H[h+472>>2]=H[b+24>>2];H[h+476>>2]=a;H[h+464>>2]=f;H[h+468>>2]=e;e=0;d:{if(L[b+4>>2]!=O(1)){break d}e=0;if(L[b+8>>2]!=O(1)){break d}e=L[b+12>>2]==O(1)}x=h+576|0;j=L[d+32>>2];b=H[d+28>>2];a=H[d+24>>2];F[h+336|0]=0;H[h+332>>2]=0;H[h+304>>2]=a;H[h+308>>2]=b;H[h+448>>2]=d;H[h+316>>2]=0;L[h+312>>2]=j;H[h+456>>2]=H[d+40>>2]+N(I[d+39|0],20);F[h+460|0]=I[d+38|0];m=O(L[d+52>>2]*m);j=O(L[d+56>>2]*k);m=j>=m?m:j;j=O(L[d+60>>2]*l);j=j>=m?m:j;L[h+328>>2]=j*O(.02500000037252903);L[h+324>>2]=j*O(.05000000074505806);L[h+320>>2]=j*O(.10000000149011612);CU(h+688|0,h+464|0,h+352|0,h+400|0,h+304|0,e);H[h+452>>2]=H[d+44>>2];H[h+300>>2]=0;L[h+296>>2]=V;L[h+292>>2]=X;H[h+248>>2]=0;H[h+252>>2]=0;H[h+240>>2]=0;H[h+244>>2]=0;L[h+288>>2]=Q;F[h+272|0]=0;H[h+268>>2]=3;j=O(u*O(.05000000074505806));L[h+264>>2]=j;L[h+260>>2]=j;L[h+256>>2]=v;H[h+200>>2]=0;H[h+204>>2]=0;H[h+192>>2]=0;H[h+196>>2]=0;H[h+184>>2]=0;H[h+188>>2]=0;H[h+176>>2]=0;H[h+180>>2]=0;H[h+168>>2]=0;H[h+172>>2]=0;H[h+160>>2]=0;H[h+164>>2]=0;H[h+224>>2]=0;H[h+80>>2]=126268;H[h+88>>2]=h+528;H[h+84>>2]=h+240;a=H[h+548>>2];H[h+112>>2]=H[h+544>>2];H[h+116>>2]=a;a=H[h+556>>2];H[h+120>>2]=H[h+552>>2];H[h+124>>2]=a;a=H[h+540>>2];H[h+104>>2]=H[h+536>>2];H[h+108>>2]=a;a=H[h+564>>2];H[h+128>>2]=H[h+560>>2];H[h+132>>2]=a;a=H[h+572>>2];H[h+136>>2]=H[h+568>>2];H[h+140>>2]=a;a=H[h+580>>2];H[h+144>>2]=H[h+576>>2];H[h+148>>2]=a;a=H[h+588>>2];H[h+152>>2]=H[h+584>>2];H[h+156>>2]=a;a=H[h+532>>2];H[h+96>>2]=H[h+528>>2];H[h+100>>2]=a;k=L[h+100>>2];L[h+100>>2]=L[h+112>>2];m=L[h+120>>2];j=L[h+104>>2];L[h+104>>2]=L[h+128>>2];L[h+120>>2]=L[h+132>>2];L[h+128>>2]=j;L[h+132>>2]=m;L[h+112>>2]=k;if(e){H[h+72>>2]=129228;H[h+76>>2]=h+304;E=s+67|0;P=s+71|0;t=h+160|0;i=Oa-320|0;Oa=i;ea=h+72|0;da=H[ea+4>>2];m=L[da+20>>2];G=h+80|0;$=H[G+4>>2];j=L[$+20>>2];J=L[h+704>>2];Y=I[$+32|0];K=L[$+16>>2];T=I[da+32|0];w=L[da+16>>2];H[i+44>>2]=0;V=O((j>m?m:j)*O(.10000000149011612));e:{f:{g:{h:{i:{j:{n=I[s+66|0];if(n){U=H[G+8>>2];b=0;while(1){a=z<<2;d=I[z+E|0];H[a+(i- -64|0)>>2]=d;e=a+(i+48|0)|0;a=I[z+P|0];H[e>>2]=a;d=(d<<4)+88320|0;f=H[d+8>>2];e=H[d>>2];d=H[d+4>>2];a=H[da+152>>2]+N(a,12)|0;Q=L[a>>2];S=L[a+4>>2];M=L[a+8>>2];v=L[U+48>>2];A=L[U+32>>2];u=L[U>>2];C=L[U+16>>2];r=L[U+52>>2];q=L[U+36>>2];p=L[U+4>>2];o=L[U+20>>2];l=L[U+56>>2];k=L[U+40>>2];y=L[$+56>>2];m=L[U+8>>2];D=L[$+48>>2];j=L[U+24>>2];B=L[$+52>>2];a=b;x=a<<4;b=x+(i+144|0)|0;H[b+12>>2]=0;aa=x+(i+80|0)|0;H[aa+12>>2]=0;L[aa+8>>2]=M;L[aa+4>>2]=S;L[aa>>2]=Q;x=x+(i+208|0)|0;H[x+12>>2]=0;Z=l;y=f?y:O(-y);l=e?D:O(-D);_=j;j=d?B:O(-B);k=O(Z+O(O(k*y)+O(O(m*l)+O(_*j))));L[b+8>>2]=k;m=O(r+O(O(q*y)+O(O(p*l)+O(j*o))));L[b+4>>2]=m;j=O(v+O(O(A*y)+O(O(u*l)+O(j*C))));L[b>>2]=j;k=O(k-M);L[x+8>>2]=k;m=O(m-S);L[x+4>>2]=m;j=O(j-Q);L[x>>2]=j;b=a+1|0;z=z+1|0;if((n|0)!=(z|0)){continue}break}H[i+44>>2]=b;k:{l:{switch(a-1|0){case 0:l=L[i+216>>2];q=O(L[i+232>>2]-l);k=L[i+208>>2];p=O(L[i+224>>2]-k);m=L[i+212>>2];o=O(L[i+228>>2]-m);j=O(O(q*q)+O(O(p*p)+O(o*o)));if(!(j<=O(1.1920928955078125e-7))){break k}H[i+44>>2]=1;a=H[i+212>>2];H[i+16>>2]=H[i+208>>2];H[i+20>>2]=a;a=H[i+220>>2];H[i+24>>2]=H[i+216>>2];H[i+28>>2]=a;break i;case 1:_W(i+16|0,i+208|0,i+144|0,i+80|0,i- -64|0,i+48|0,i+44|0);break i;case 2:break l;default:break j}}DZ(i+16|0,i+208|0,i+144|0,i+80|0,i- -64|0,i+48|0,i+44|0);break i}H[i+28>>2]=0;j=O(R(O(O(O(O(O(-k)*p)-O(o*m))-O(l*q))/j),O(1)));j=j>O(0)?j:O(0);L[i+24>>2]=l+O(q*j);L[i+20>>2]=m+O(o*j);L[i+16>>2]=k+O(p*j);break i}k=L[x+8>>2];m=L[x>>2];j=L[x+4>>2];H[i+284>>2]=0;a=O(O(k*k)+O(O(m*m)+O(j*j)))>O(0);r=a?k:O(0);L[i+280>>2]=r;q=a?j:O(0);L[i+276>>2]=q;m=a?m:O(1);L[i+272>>2]=m;j=O(O(1)/O(W(O(O(r*r)+O(O(m*m)+O(q*q))))));ba=O(r*j);Z=O(q*j);_=O(m*j);j=O(3.4028234663852886e38);C=O(0);break h}H[i+28>>2]=0;L[i+24>>2]=k;L[i+20>>2]=m;L[i+16>>2]=j}a=H[i+20>>2];H[i+272>>2]=H[i+16>>2];H[i+276>>2]=a;a=H[i+28>>2];H[i+280>>2]=H[i+24>>2];H[i+284>>2]=a;r=L[i+280>>2];m=L[i+272>>2];q=L[i+276>>2];j=O(W(O(O(r*r)+O(O(m*m)+O(q*q)))));if(!(V>2]}D=O(J+O((Y?K:O(0))+(T?w:O(0))));while(1){H[i+296>>2]=H[i+312>>2];a=H[i+308>>2];H[i+288>>2]=H[i+304>>2];H[i+292>>2]=a;b=H[G+4>>2];n=H[G+8>>2];a=H[i+44>>2]<<2;k=O(-m);f=O(O(O(L[G+20>>2]*k)-O(L[G+36>>2]*q))-O(L[G+52>>2]*r))>O(0);e=O(O(O(L[G+16>>2]*k)-O(L[G+32>>2]*q))-O(L[G+48>>2]*r))>O(0);d=O(O(O(L[G+24>>2]*k)-O(L[G+40>>2]*q))-O(L[G+56>>2]*r))>O(0);H[a+(i- -64|0)>>2]=f<<1|e|d<<2;B=L[n+56>>2];y=L[n+40>>2];v=L[n+24>>2];J=L[n+52>>2];K=L[n+36>>2];S=L[b+56>>2];w=L[n+20>>2];X=L[b+52>>2];A=L[n+8>>2];u=L[n+48>>2];p=L[n+32>>2];o=L[n>>2];l=L[n+16>>2];k=L[n+4>>2];M=L[b+48>>2];aa=a+(i+48|0)|0;b=H[ea+4>>2];a=EU(b,i+272|0);H[aa>>2]=a;Q=d?S:O(-S);S=e?M:O(-M);M=f?X:O(-X);v=O(B+O(O(y*Q)+O(O(A*S)+O(v*M))));a=H[b+152>>2]+N(a,12)|0;A=L[a+8>>2];B=O(v-A);u=O(u+O(O(p*Q)+O(O(o*S)+O(M*l))));p=L[a>>2];y=O(u-p);o=O(J+O(O(K*Q)+O(O(k*S)+O(M*w))));l=L[a+4>>2];w=O(o-l);k=O(O(ba*B)+O(O(_*y)+O(Z*w)));if(k>D){Y=0;if(!E){break e}T=H[i+44>>2];F[s+66|0]=T;if(!T){break e}b=0;if((T|0)!=1){e=T&-2;x=0;while(1){a=b<<2;d=i- -64|0;F[b+E|0]=H[a+d>>2];f=a;a=i+48|0;F[b+P|0]=H[f+a>>2];n=b|1;f=n<<2;F[n+E|0]=H[d+f>>2];F[n+P|0]=H[a+f>>2];b=b+2|0;x=x+2|0;if((e|0)!=(x|0)){continue}break}}if(!(T&1)){break e}a=b<<2;F[b+E|0]=H[a+(i- -64|0)>>2];F[b+P|0]=H[a+(i+48|0)>>2];break e}n=H[i+44>>2];if(k>O(j*O(.9997749924659729))){m:{if(!E){break m}F[s+66|0]=n;if(!n){break m}z=0;if((n|0)!=1){d=n&-2;x=0;while(1){a=z<<2;b=i- -64|0;F[z+E|0]=H[a+b>>2];e=a;a=i+48|0;F[z+P|0]=H[e+a>>2];f=z|1;e=f<<2;F[f+E|0]=H[b+e>>2];F[f+P|0]=H[a+e>>2];z=z+2|0;x=x+2|0;if((d|0)!=(x|0)){continue}break}}if(!(n&1)){break m}a=z<<2;F[z+E|0]=H[a+(i- -64|0)>>2];F[z+P|0]=H[a+(i+48|0)>>2]}L[t+32>>2]=_;H[t+44>>2]=0;L[t+40>>2]=ba;L[t+36>>2]=Z;FU(i+208|0,i+144|0,i+80|0,i+272|0,i+16|0,i,n);a=H[i+20>>2];H[t>>2]=H[i+16>>2];H[t+4>>2]=a;a=H[i+28>>2];H[t+8>>2]=H[i+24>>2];H[t+12>>2]=a;a=H[i+4>>2];H[t+16>>2]=H[i>>2];H[t+20>>2]=a;a=H[i+12>>2];H[t+24>>2]=H[i+8>>2];H[t+28>>2]=a;a=H[i+308>>2];H[t+68>>2]=H[i+304>>2];H[t+72>>2]=a;H[t+76>>2]=H[i+312>>2];L[t+64>>2]=j;Y=2;break e}a=n<<4;b=a+(i+144|0)|0;H[b+12>>2]=0;L[b+8>>2]=v;L[b+4>>2]=o;L[b>>2]=u;b=a+(i+80|0)|0;H[b+12>>2]=0;L[b+8>>2]=A;L[b+4>>2]=l;L[b>>2]=p;a=a+(i+208|0)|0;H[a+12>>2]=0;L[a+8>>2]=B;L[a+4>>2]=w;L[a>>2]=y;H[i+44>>2]=n+1;n:{o:{switch(n-1|0){case 0:p=L[i+216>>2];v=O(L[i+232>>2]-p);o=L[i+208>>2];A=O(L[i+224>>2]-o);l=L[i+212>>2];u=O(L[i+228>>2]-l);k=O(O(v*v)+O(O(A*A)+O(u*u)));if(k<=O(1.1920928955078125e-7)){H[i+44>>2]=1;a=H[i+212>>2];H[i+16>>2]=H[i+208>>2];H[i+20>>2]=a;a=H[i+220>>2];H[i+24>>2]=H[i+216>>2];H[i+28>>2]=a;break n}H[i+28>>2]=0;k=O(R(O(O(O(O(O(-o)*A)-O(u*l))-O(p*v))/k),O(1)));k=k>O(0)?k:O(0);L[i+24>>2]=p+O(v*k);L[i+20>>2]=l+O(u*k);L[i+16>>2]=o+O(A*k);break n;case 1:_W(i+16|0,i+208|0,i+144|0,i+80|0,i- -64|0,i+48|0,i+44|0);break n;case 2:DZ(i+16|0,i+208|0,i+144|0,i+80|0,i- -64|0,i+48|0,i+44|0);break n;default:break o}}H[i+28>>2]=0;L[i+24>>2]=B;L[i+20>>2]=w;L[i+16>>2]=y}a=H[i+20>>2];H[i+272>>2]=H[i+16>>2];H[i+276>>2]=a;a=H[i+28>>2];H[i+280>>2]=H[i+24>>2];H[i+284>>2]=a;o=L[i+280>>2];l=L[i+272>>2];k=L[i+276>>2];p=O(W(O(O(o*o)+O(O(l*l)+O(k*k)))));u=O(O(1)/p);ba=O(o*u);Z=O(k*u);_=O(l*u);if(!(!(p>V)|!(j>p))){C=L[i+284>>2];r=o;q=k;m=l;j=p;continue}break}z=H[i+44>>2];if(!(j>p)){p:{if(!E){break p}T=z-1|0;F[s+66|0]=T;if(!T){break p}b=0;if((z|0)!=2){e=T&-2;x=0;while(1){a=b<<2;d=i- -64|0;F[b+E|0]=H[a+d>>2];f=a;a=i+48|0;F[b+P|0]=H[f+a>>2];n=b|1;f=n<<2;F[n+E|0]=H[d+f>>2];F[n+P|0]=H[a+f>>2];b=b+2|0;x=x+2|0;if((e|0)!=(x|0)){continue}break}}if(!(T&1)){break p}a=b<<2;F[b+E|0]=H[a+(i- -64|0)>>2];F[b+P|0]=H[a+(i+48|0)>>2]}H[i+312>>2]=H[i+296>>2];a=H[i+292>>2];H[i+304>>2]=H[i+288>>2];H[i+308>>2]=a;L[i+284>>2]=C;L[i+272>>2]=m;L[i+276>>2]=q;L[i+280>>2]=r;FU(i+208|0,i+144|0,i+80|0,i+272|0,i+16|0,i,z);H[t+60>>2]=0;L[t+56>>2]=ba;L[t+52>>2]=Z;L[t+48>>2]=_;H[t+44>>2]=0;k=O(O(1)/j);L[t+40>>2]=r*k;L[t+36>>2]=q*k;L[t+32>>2]=m*k;a=H[i+20>>2];H[t>>2]=H[i+16>>2];H[t+4>>2]=a;a=H[i+28>>2];H[t+8>>2]=H[i+24>>2];H[t+12>>2]=a;a=H[i+4>>2];H[t+16>>2]=H[i>>2];H[t+20>>2]=a;a=H[i+12>>2];H[t+24>>2]=H[i+8>>2];H[t+28>>2]=a;L[t+64>>2]=j;a=H[i+292>>2];H[t+68>>2]=H[i+288>>2];H[t+72>>2]=a;H[t+76>>2]=H[i+296>>2];Y=4;break e}if(E){break f}Y=5;break e}z=H[i+44>>2]}F[s+66|0]=z;Y=5;if(!z){break e}b=0;if((z|0)!=1){e=z&-2;x=0;while(1){a=b<<2;d=i- -64|0;F[b+E|0]=H[a+d>>2];f=a;a=i+48|0;F[b+P|0]=H[f+a>>2];n=b|1;f=n<<2;F[n+E|0]=H[d+f>>2];F[n+P|0]=H[a+f>>2];b=b+2|0;x=x+2|0;if((e|0)!=(x|0)){continue}break}}if(!(z&1)){break e}a=b<<2;F[b+E|0]=H[a+(i- -64|0)>>2];F[b+P|0]=H[a+(i+48|0)>>2]}Oa=i+320|0;a=H[h+524>>2];H[h+24>>2]=H[h+520>>2];H[h+28>>2]=a;a=H[h+516>>2];H[h+16>>2]=H[h+512>>2];H[h+20>>2]=a;a=H[h+708>>2];H[h>>2]=H[h+704>>2];H[h+4>>2]=a;a=H[h+716>>2];H[h+8>>2]=H[h+712>>2];H[h+12>>2]=a;a=Z$(G,ea,h+656|0,h+624|0,h+528|0,Y,t,s,g,c,h+16|0,h,1,ca);break b}H[h+72>>2]=126016;H[h+76>>2]=h+304;f=h+80|0;e=h+72|0;d=h+160|0;b=CW(f,e,x,h+704|0,1,s+67|0,s+71|0,s+66|0,d);a=H[h+524>>2];H[h+56>>2]=H[h+520>>2];H[h+60>>2]=a;a=H[h+516>>2];H[h+48>>2]=H[h+512>>2];H[h+52>>2]=a;a=H[h+708>>2];H[h+32>>2]=H[h+704>>2];H[h+36>>2]=a;a=H[h+716>>2];H[h+40>>2]=H[h+712>>2];H[h+44>>2]=a;a=Z$(f,e,h+656|0,h+624|0,h+528|0,b,d,s,g,c,h+48|0,h+32|0,0,ca);break b}d=I[s+64|0];a=0;if(!d){break b}a=1;e=H[s+76>>2];o=L[e+32>>2];p=o;l=L[e+36>>2];m=l;k=L[e+40>>2];j=k;q:{if((d|0)==1){break q}b=d-1|0;c=b&1;j=k;m=l;p=o;if((d|0)!=2){b=b&-2;n=0;while(1){d=e+N(a,48)|0;p=O(O(p+L[d+32>>2])+L[d+80>>2]);j=O(O(j+L[d+40>>2])+L[d+88>>2]);m=O(O(m+L[d+36>>2])+L[d+84>>2]);a=a+2|0;n=n+2|0;if((b|0)!=(n|0)){continue}break}}if(!c){break q}a=e+N(a,48)|0;p=O(p+L[a+32>>2]);j=O(j+L[a+40>>2]);m=O(m+L[a+36>>2])}H[h+316>>2]=0;A=L[h+632>>2];a=O(O(j*j)+O(O(p*p)+O(m*m)))>O(1.1920928955078125e-7);u=a?j:k;C=L[h+624>>2];r=a?p:o;q=L[h+628>>2];p=a?m:l;o=O(O(A*u)+O(O(C*r)+O(q*p)));v=L[h+636>>2];l=O(O(v*v)+O(-.5));j=O(O(A*o)+O(O(v*O(O(C*p)-O(r*q)))+O(u*l)));k=O(j+j);j=O(O(C*o)+O(O(v*O(O(q*u)-O(p*A)))+O(r*l)));m=O(j+j);j=O(O(q*o)+O(O(v*O(O(A*r)-O(u*C)))+O(p*l)));j=O(j+j);l=O(O(1)/O(W(O(O(k*k)+O(O(m*m)+O(j*j))))));L[h+312>>2]=k*l;L[h+308>>2]=j*l;L[h+304>>2]=m*l;X0(s,g,h+304|0,h+624|0,h+704|0);a=1}Oa=h+720|0;return a|0}function Ux(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,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,I=0,L=0,M=0;e=Oa-16|0;t=e;Oa=e;u=H[a+32>>2];B=H[a+28>>2];h=H[a+20>>2];v=H[a+24>>2];m=H[a+16>>2];p=H[a+4>>2];o=H[a+48>>2];H[o+4>>2]=0;k=H[a>>2];n=H[a+8>>2];a:{if(!p){break a}if(p-1>>>0>=3){c=p&-4;while(1){d=b+k|0;H[d+28>>2]=0;H[d+12>>2]=0;b=b+n|0;d=b+k|0;H[d+28>>2]=0;H[d+12>>2]=0;b=b+n|0;d=b+k|0;H[d+28>>2]=0;H[d+12>>2]=0;b=b+n|0;d=b+k|0;H[d+28>>2]=0;H[d+12>>2]=0;b=b+n|0;f=f+4|0;if((c|0)!=(f|0)){continue}break}}c=p&3;if(!c){break a}f=0;while(1){d=b+k|0;H[d+28>>2]=0;H[d+12>>2]=0;b=b+n|0;f=f+1|0;if((c|0)!=(f|0)){continue}break}}b:{c:{d:{if(!m){H[o+4>>2]=32;S6(H[o>>2],0,128);i=N(n,p);if(!v){break c}g=H[o>>2];b=h;d=0;while(1){c=H[b>>2];e=(c-k>>>0)/(n>>>0)>>>0>=p>>>0;f=H[b+4>>2];j=(f-k>>>0)/(n>>>0)|0;e:{if(!(!e&j>>>0

>>0)){if(!e){G[c+14>>1]=J[c+14>>1]+1}if(j>>>0>=p>>>0){break e}G[f+14>>1]=J[f+14>>1]+1;break e}j=H[f+28>>2];m=H[c+28>>2];e=j|m;if((e|0)!=-1){e=f7(e^-1);s=g+(e<<2)|0;H[s>>2]=H[s>>2]+1;r=m;m=1<>2]=r|m;r=c;e=e+1|0;c=J[c+12>>1];G[r+12>>1]=c>>>0>>0?e:c;H[f+28>>2]=j|m;c=J[f+12>>1];G[f+12>>1]=c>>>0>>0?e:c;break e}f=H[b+4>>2];c=(l<<5)+u|0;H[c>>2]=H[b>>2];H[c+4>>2]=f;f=H[b+28>>2];H[c+24>>2]=H[b+24>>2];H[c+28>>2]=f;f=H[b+20>>2];H[c+16>>2]=H[b+16>>2];H[c+20>>2]=f;f=H[b+12>>2];H[c+8>>2]=H[b+8>>2];H[c+12>>2]=f;l=l+1|0}b=b+32|0;d=d+1|0;if((v|0)!=(d|0)){continue}break}break d}c=H[a+12>>2];x=m<<2;F[t+4|0]=x>>>0>1024;f:{if(x>>>0>=1025){f=G5(x,7429,844);break f}f=e-(x+15&-16)|0;Oa=f}H[t>>2]=f;k=0;b=0;M=m-1|0;if(M>>>0>=3){g=m&-4;e=0;while(1){d=H[c+N(b,52)>>2];H[(b<<2)+f>>2]=d;H[d+4>>2]=0;H[d+8>>2]=0;j=b|1;d=H[c+N(j,52)>>2];H[(j<<2)+f>>2]=d;H[d+4>>2]=0;H[d+8>>2]=0;j=b|2;d=H[c+N(j,52)>>2];H[(j<<2)+f>>2]=d;H[d+4>>2]=0;H[d+8>>2]=0;j=b|3;d=H[c+N(j,52)>>2];H[(j<<2)+f>>2]=d;H[d+4>>2]=0;H[d+8>>2]=0;b=b+4|0;e=e+4|0;if((g|0)!=(e|0)){continue}break}}d=m&3;if(d){while(1){e=H[c+N(b,52)>>2];H[(b<<2)+f>>2]=e;H[e+4>>2]=0;H[e+8>>2]=0;b=b+1|0;k=k+1|0;if((d|0)!=(k|0)){continue}break}}s=H[a>>2];H[o+4>>2]=32;S6(H[o>>2],0,128);w=N(n,p);g:{if(!v){break g}b=h;d=0;while(1){h:{i:{j:{k:{l:{m:{n:{o:{p:{z=J[b+8>>1];r=(z|0)!=65535;q:{if(!r){c=H[b>>2];if((c-s>>>0)/(n>>>0)>>>0>=p>>>0){break p}e=c+28|0;break q}c=H[b>>2];e=c+8|0}g=H[e>>2];if(J[b+10>>1]!=65535){break n}e=0;break o}if(J[b+10>>1]!=65535){break j}g=0;e=1}k=H[b+4>>2];j=(k-s>>>0)/(n>>>0)|0;i=j>>>0>=p>>>0;q=e|i;if(i){break m}if(q){break k}q=0;j=1;e=H[k+28>>2];break l}j=0;q=0;k=H[b+4>>2];e=H[k+8>>2];break l}if(q){break k}j=1;q=1;e=0}i=e|g;if((i|0)==-1){break i}y=H[o>>2];r=f7(i^-1);i=y+(r<<2)|0;H[i>>2]=H[i>>2]+1;i=r+1|0;r=1<>2]=g;g=c;c=J[c+12>>1];G[g+12>>1]=c>>>0>>0?i:c;break r}H[c+8>>2]=g;g=c;c=J[c+6>>1];G[g+6>>1]=c>>>0>>0?i:c}c=e|q;if(j){H[k+28>>2]=c;c=J[k+12>>1];G[k+12>>1]=c>>>0>>0?i:c;break h}H[k+8>>2]=c;c=J[k+6>>1];G[k+6>>1]=c>>>0>>0?i:c;break h}s:{t:{if(e){break t}if(!r){G[c+14>>1]=J[c+14>>1]+1;if(j>>>0

>>0){break s}break h}if(Ra[H[H[c>>2]+176>>2]](c)|0){break t}G[c+4>>1]=J[c+4>>1]+1;if(j>>>0

>>0){break s}break h}if(i){break h}}G[k+14>>1]=J[k+14>>1]+1;break h}c=H[b+4>>2];if(Ra[H[H[c>>2]+176>>2]](c)|0){break h}G[c+4>>1]=J[c+4>>1]+1;break h}e=H[b+4>>2];c=(l<<5)+u|0;H[c>>2]=H[b>>2];H[c+4>>2]=e;e=H[b+28>>2];H[c+24>>2]=H[b+24>>2];H[c+28>>2]=e;e=H[b+20>>2];H[c+16>>2]=H[b+16>>2];H[c+20>>2]=e;e=H[b+12>>2];H[c+8>>2]=H[b+8>>2];H[c+12>>2]=e;l=l+1|0}b=b+32|0;d=d+1|0;if((v|0)!=(d|0)){continue}break}if(!l){break g}z=m&-4;r=m&3;D=s+28|0;q=0;while(1){b=0;if(w){while(1){H[b+D>>2]=0;b=b+n|0;if(w>>>0>b>>>0){continue}break}}k=0;b=0;e=0;if(M>>>0>=3){while(1){c=b<<2;H[H[c+f>>2]+8>>2]=0;H[H[(c|4)+f>>2]+8>>2]=0;H[H[(c|8)+f>>2]+8>>2]=0;H[H[(c|12)+f>>2]+8>>2]=0;b=b+4|0;e=e+4|0;if((z|0)!=(e|0)){continue}break}}if(r){while(1){H[H[(b<<2)+f>>2]+8>>2]=0;b=b+1|0;k=k+1|0;if((r|0)!=(k|0)){continue}break}}b=H[o+4>>2];e=0;H[t+8>>2]=0;gy(o,b+32|0,t+8|0);q=q+32|0;S6(H[o>>2]+(q<<2)|0,0,128);E=l>>>0>1?l:1;A=H[o>>2];l=0;while(1){i=(e<<5)+u|0;C=J[i+8>>1];u:{v:{if((C|0)==65535){c=H[i>>2];if((c-s>>>0)/(n>>>0)>>>0>=p>>>0){d=0;j=1;break u}d=H[c+28>>2];break v}c=H[i>>2];d=H[c+8>>2]}j=0}I=J[i+10>>1]!=65535;w:{x:{if(!I){k=H[i+4>>2];if((k-s>>>0)/(n>>>0)>>>0>=p>>>0){g=0;b=1;break w}g=H[k+28>>2];break x}k=H[i+4>>2];g=H[k+8>>2]}b=0}y=d|g;y:{if((y|0)!=-1){y=f7(y^-1);i=y+q|0;L=A+(i<<2)|0;H[L>>2]=H[L>>2]+1;i=i+1|0;y=1<>2]=b;b=J[c+12>>1];G[c+12>>1]=b>>>0<(i&65535)>>>0?i:b;break z}H[c+8>>2]=b;b=J[c+6>>1];G[c+6>>1]=b>>>0<(i&65535)>>>0?i:b}b=g|L;if(!I){H[k+28>>2]=b;b=J[k+12>>1];G[k+12>>1]=b>>>0<(i&65535)>>>0?i:b;break y}H[k+8>>2]=b;b=J[k+6>>1];G[k+6>>1]=b>>>0<(i&65535)>>>0?i:b;break y}c=H[i+4>>2];b=(l<<5)+u|0;H[b>>2]=H[i>>2];H[b+4>>2]=c;c=H[i+28>>2];H[b+24>>2]=H[i+24>>2];H[b+28>>2]=c;c=H[i+20>>2];H[b+16>>2]=H[i+16>>2];H[b+20>>2]=c;c=H[i+12>>2];H[b+8>>2]=H[i+8>>2];H[b+12>>2]=c;l=l+1|0}e=e+1|0;if((E|0)!=(e|0)){continue}break}if(l){continue}break}}if(w){g=0;while(1){b=g+s|0;H[b+28>>2]=0;d=J[b+14>>1];c=d+J[b+12>>1]|0;if(c>>>0>K[o+4>>2]){H[t+8>>2]=0;gy(o,c,t+8|0);d=J[b+14>>1]}A:{if(!d){break A}c=H[o>>2];k=d&3;j=J[b+12>>1];e=0;b=0;if(d-1>>>0>=3){l=d&65532;d=0;while(1){i=c+(b+j<<2)|0;H[i>>2]=H[i>>2]+1;i=c+(j+(b|1)<<2)|0;H[i>>2]=H[i>>2]+1;i=c+(j+(b|2)<<2)|0;H[i>>2]=H[i>>2]+1;i=c+(j+(b|3)<<2)|0;H[i>>2]=H[i>>2]+1;b=b+4|0;d=d+4|0;if((l|0)!=(d|0)){continue}break}}if(!k){break A}while(1){d=c+(b+j<<2)|0;H[d>>2]=H[d>>2]+1;b=b+1|0;e=e+1|0;if((k|0)!=(e|0)){continue}break}}g=g+n|0;if(w>>>0>g>>>0){continue}break}}l=m>>>0>1?m:1;g=0;while(1){b=H[(g<<2)+f>>2];H[b+8>>2]=0;d=J[b+4>>1];c=d+J[b+6>>1]|0;if(c>>>0>K[o+4>>2]){H[t+8>>2]=0;gy(o,c,t+8|0);d=J[b+4>>1]}B:{if(!d){break B}c=H[o>>2];k=d&3;j=J[b+6>>1];e=0;b=0;if(d-1>>>0>=3){i=d&65532;d=0;while(1){q=c+(b+j<<2)|0;H[q>>2]=H[q>>2]+1;q=c+(j+(b|1)<<2)|0;H[q>>2]=H[q>>2]+1;q=c+(j+(b|2)<<2)|0;H[q>>2]=H[q>>2]+1;q=c+(j+(b|3)<<2)|0;H[q>>2]=H[q>>2]+1;b=b+4|0;d=d+4|0;if((i|0)!=(d|0)){continue}break}}if(!k){break B}while(1){d=c+(b+j<<2)|0;H[d>>2]=H[d>>2]+1;b=b+1|0;e=e+1|0;if((k|0)!=(e|0)){continue}break}}g=g+1|0;if((l|0)!=(g|0)){continue}break}if(H[o+4>>2]){e=H[o>>2];b=0;c=0;while(1){d=e+(b<<2)|0;g=H[d>>2];H[d>>2]=c;c=c+g|0;b=b+1|0;if(b>>>0>2]){continue}break}}C:{if(!p){break C}c=H[a>>2];k=0;b=0;if(p-1>>>0>=3){d=p&-4;e=0;while(1){g=b+c|0;G[g+14>>1]=0;H[g+28>>2]=0;b=b+n|0;g=b+c|0;G[g+14>>1]=0;H[g+28>>2]=0;b=b+n|0;g=b+c|0;G[g+14>>1]=0;H[g+28>>2]=0;b=b+n|0;g=b+c|0;G[g+14>>1]=0;H[g+28>>2]=0;b=b+n|0;e=e+4|0;if((d|0)!=(e|0)){continue}break}}e=p&3;if(!e){break C}while(1){d=b+c|0;G[d+14>>1]=0;H[d+28>>2]=0;b=b+n|0;k=k+1|0;if((e|0)!=(k|0)){continue}break}}k=0;b=0;if(l-1>>>0>=3){d=l&-4;e=0;while(1){c=b<<2;g=H[c+f>>2];G[g+4>>1]=0;H[g+8>>2]=0;g=H[(c|4)+f>>2];G[g+4>>1]=0;H[g+8>>2]=0;g=H[(c|8)+f>>2];G[g+4>>1]=0;H[g+8>>2]=0;c=H[(c|12)+f>>2];G[c+4>>1]=0;H[c+8>>2]=0;b=b+4|0;e=e+4|0;if((d|0)!=(e|0)){continue}break}}c=l&3;if(c){while(1){e=H[(b<<2)+f>>2];G[e+4>>1]=0;H[e+8>>2]=0;b=b+1|0;k=k+1|0;if((c|0)!=(k|0)){continue}break}}D:{if(!v){q=0;break D}j=0;q=0;k=0;while(1){E:{F:{G:{H:{I:{J:{K:{L:{M:{N:{O:{P:{Q:{r=J[h+8>>1];l=(r|0)!=65535;R:{if(!l){b=H[h>>2];if((b-s>>>0)/(n>>>0)>>>0>=p>>>0){break Q}c=b+28|0;break R}b=H[h>>2];c=b+8|0}e=H[c>>2];if(J[h+10>>1]!=65535){break O}c=0;break P}if(J[h+10>>1]!=65535){break J}e=0;c=1}d=H[h+4>>2];i=(d-s>>>0)/(n>>>0)>>>0>=p>>>0;g=c|i;if(i){break N}if(g){break K}l=0;g=1;c=H[d+28>>2];break M}g=0;l=0;c=H[H[h+4>>2]+8>>2];break M}if(g){break L}g=1;l=1;c=0}d=c|e;if((d|0)==-1){break I}i=f7(d^-1);d=i+1|0;z=1<>2]=e;e=H[h>>2];b=J[e+12>>1];G[e+12>>1]=b>>>0>>0?d:b;break S}H[b+8>>2]=e;e=b;b=J[b+6>>1];G[e+6>>1]=b>>>0>>0?d:b}b=c|l;T:{if(g){H[H[h+4>>2]+28>>2]=b;c=H[h+4>>2];b=J[c+12>>1];G[c+12>>1]=b>>>0>>0?d:b;break T}c=H[h+4>>2];H[c+8>>2]=b;b=J[c+6>>1];G[c+6>>1]=b>>>0>>0?d:b}c=H[o>>2]+(i<<2)|0;b=H[c>>2];H[c>>2]=b+1;c=H[h+28>>2];b=(b<<5)+B|0;H[b+24>>2]=H[h+24>>2];H[b+28>>2]=c;c=H[h+20>>2];H[b+16>>2]=H[h+16>>2];H[b+20>>2]=c;c=H[h+12>>2];H[b+8>>2]=H[h+8>>2];H[b+12>>2]=c;c=H[h+4>>2];H[b>>2]=H[h>>2];H[b+4>>2]=c;break E}if(c){break F}break H}if(!c){break H}c=J[d+14>>1];G[d+14>>1]=c+1;b=J[d+12>>1];break G}b=H[h+4>>2];if(Ra[H[H[b>>2]+172>>2]](b,h)|0){break F}c=J[b+4>>1];G[b+4>>1]=c+1;b=J[b+6>>1];break G}c=H[h+4>>2];b=(j<<5)+u|0;H[b>>2]=H[h>>2];H[b+4>>2]=c;c=H[h+28>>2];H[b+24>>2]=H[h+24>>2];H[b+28>>2]=c;c=H[h+20>>2];H[b+16>>2]=H[h+16>>2];H[b+20>>2]=c;c=H[h+12>>2];H[b+8>>2]=H[h+8>>2];H[b+12>>2]=c;j=j+1|0;break E}if(!l){c=J[b+14>>1];G[b+14>>1]=c+1;b=J[b+12>>1];break G}if(Ra[H[H[b>>2]+172>>2]](b,h)|0){break F}c=J[b+4>>1];G[b+4>>1]=c+1;b=J[b+6>>1]}c=H[o>>2]+((b&65535)+(c&65535)<<2)|0;b=H[c>>2];H[c>>2]=b+1;c=H[h+28>>2];b=(b<<5)+B|0;H[b+24>>2]=H[h+24>>2];H[b+28>>2]=c;c=H[h+20>>2];H[b+16>>2]=H[h+16>>2];H[b+20>>2]=c;c=H[h+12>>2];H[b+8>>2]=H[h+8>>2];H[b+12>>2]=c;c=H[h+4>>2];H[b>>2]=H[h>>2];H[b+4>>2]=c;break E}q=q+1|0}h=h+32|0;k=k+1|0;if((v|0)!=(k|0)){continue}break}if(!j){break D}r=m&-4;i=m&3;m=s+28|0;h=0;while(1){b=0;if(w){while(1){H[b+m>>2]=0;b=b+n|0;if(w>>>0>b>>>0){continue}break}}k=0;b=0;e=0;if(M>>>0>=3){while(1){c=b<<2;H[H[c+f>>2]+8>>2]=0;H[H[(c|4)+f>>2]+8>>2]=0;H[H[(c|8)+f>>2]+8>>2]=0;H[H[(c|12)+f>>2]+8>>2]=0;b=b+4|0;e=e+4|0;if((r|0)!=(e|0)){continue}break}}if(i){while(1){H[H[(b<<2)+f>>2]+8>>2]=0;b=b+1|0;k=k+1|0;if((i|0)!=(k|0)){continue}break}}z=j>>>0>1?j:1;h=h+32|0;k=0;j=0;while(1){l=(k<<5)+u|0;D=J[l+8>>1];U:{V:{if((D|0)==65535){d=H[l>>2];if((d-s>>>0)/(n>>>0)>>>0>=p>>>0){c=0;g=1;break U}c=H[d+28>>2];break V}d=H[l>>2];c=H[d+8>>2]}g=0}E=J[l+10>>1]!=65535;W:{X:{if(!E){b=H[l+4>>2];if((b-s>>>0)/(n>>>0)>>>0>=p>>>0){e=0;b=1;break W}e=H[b+28>>2];break X}e=H[H[l+4>>2]+8>>2]}b=0}A=c|e;Y:{if((A|0)!=-1){A=f7(A^-1);C=1<>2]=b;break Z}H[d+8>>2]=b}b=e|I;_:{if(!E){H[H[l+4>>2]+28>>2]=b;break _}H[H[l+4>>2]+8>>2]=b}c=H[o>>2]+(h+A<<2)|0;b=H[c>>2];H[c>>2]=b+1;c=(b<<5)+B|0;break Y}c=(j<<5)+u|0;j=j+1|0}b=H[l+4>>2];H[c>>2]=H[l>>2];H[c+4>>2]=b;b=H[l+28>>2];H[c+24>>2]=H[l+24>>2];H[c+28>>2]=b;b=H[l+20>>2];H[c+16>>2]=H[l+16>>2];H[c+20>>2]=b;b=H[l+12>>2];H[c+8>>2]=H[l+8>>2];H[c+12>>2]=b;k=k+1|0;if((z|0)!=(k|0)){continue}break}if(j){continue}break}}if(x>>>0>=1025){H5(f)}v=v-q|0;break b}if(!l){break c}g=k+28|0;j=0;while(1){b=0;if(i){while(1){H[b+g>>2]=0;b=b+n|0;if(i>>>0>b>>>0){continue}break}}b=H[o+4>>2];e=0;H[t>>2]=0;gy(o,b+32|0,t);j=j+32|0;S6(H[o>>2]+(j<<2)|0,0,128);m=l>>>0>1?l:1;s=H[o>>2];l=0;while(1){b=(e<<5)+u|0;c=H[b+4>>2];q=H[c+28>>2];f=H[b>>2];d=H[f+28>>2];w=q|d;$:{if((w|0)!=-1){b=f7(w^-1);w=b+j|0;x=s+(w<<2)|0;H[x>>2]=H[x>>2]+1;x=1<>2]=((f-k>>>0)/(n>>>0)>>>0

>>0?x:0)|d;b=w+1|0;d=b&65535;r=f;f=J[f+12>>1];G[r+12>>1]=d>>>0>f>>>0?b:f;H[c+28>>2]=q|((c-k>>>0)/(n>>>0)>>>0

>>0?x:0);f=b;b=J[c+12>>1];G[c+12>>1]=b>>>0>>0?f:b;break $}f=H[b+4>>2];c=(l<<5)+u|0;H[c>>2]=H[b>>2];H[c+4>>2]=f;f=H[b+28>>2];H[c+24>>2]=H[b+24>>2];H[c+28>>2]=f;f=H[b+20>>2];H[c+16>>2]=H[b+16>>2];H[c+20>>2]=f;f=H[b+12>>2];H[c+8>>2]=H[b+8>>2];H[c+12>>2]=f;l=l+1|0}e=e+1|0;if((m|0)!=(e|0)){continue}break}if(l){continue}break}}if(i){g=0;while(1){b=k+g|0;H[b+28>>2]=0;d=J[b+14>>1];c=d+J[b+12>>1]|0;if(c>>>0>K[o+4>>2]){H[t>>2]=0;gy(o,c,t);d=J[b+14>>1]}aa:{if(!d){break aa}c=H[o>>2];j=d&3;f=J[b+12>>1];e=0;b=0;if(d-1>>>0>=3){l=d&65532;d=0;while(1){m=c+(b+f<<2)|0;H[m>>2]=H[m>>2]+1;m=c+(f+(b|1)<<2)|0;H[m>>2]=H[m>>2]+1;m=c+(f+(b|2)<<2)|0;H[m>>2]=H[m>>2]+1;m=c+(f+(b|3)<<2)|0;H[m>>2]=H[m>>2]+1;b=b+4|0;d=d+4|0;if((l|0)!=(d|0)){continue}break}}if(!j){break aa}while(1){d=c+(b+f<<2)|0;H[d>>2]=H[d>>2]+1;b=b+1|0;e=e+1|0;if((j|0)!=(e|0)){continue}break}}g=g+n|0;if(i>>>0>g>>>0){continue}break}}if(H[o+4>>2]){c=H[o>>2];b=0;f=0;while(1){e=c+(f<<2)|0;d=H[e>>2];H[e>>2]=b;b=b+d|0;f=f+1|0;if(f>>>0>2]){continue}break}}ba:{if(!p){break ba}f=H[a>>2];e=0;c=0;b=0;if(p-1>>>0>=3){g=p&-4;d=0;while(1){j=b+f|0;G[j+14>>1]=0;H[j+28>>2]=0;b=b+n|0;j=b+f|0;G[j+14>>1]=0;H[j+28>>2]=0;b=b+n|0;j=b+f|0;G[j+14>>1]=0;H[j+28>>2]=0;b=b+n|0;j=b+f|0;G[j+14>>1]=0;H[j+28>>2]=0;c=c+4|0;b=b+n|0;d=d+4|0;if((g|0)!=(d|0)){continue}break}}d=p&3;if(!d){break ba}while(1){g=b+f|0;G[g+14>>1]=0;H[g+28>>2]=0;b=b+n|0;c=c+1|0;e=e+1|0;if((d|0)!=(e|0)){continue}break}}q=0;if(!v){v=0;break b}l=0;e=0;while(1){c=H[h>>2];d=(c-k>>>0)/(n>>>0)|0;g=d>>>0>=p>>>0;b=H[h+4>>2];f=(b-k>>>0)/(n>>>0)|0;ca:{da:{if(!(g|f>>>0>=p>>>0)){g=H[b+28>>2];f=H[c+28>>2];d=g|f;if((d|0)!=-1){d=f7(d^-1);j=1<>2]=j|f;m=c;f=d+1|0;c=J[c+12>>1];G[m+12>>1]=c>>>0>>0?f:c;H[b+28>>2]=g|j;c=b;b=J[b+12>>1];G[c+12>>1]=b>>>0>>0?f:b;c=H[o>>2]+(d<<2)|0;b=H[c>>2];H[c>>2]=b+1;b=(b<<5)+B|0;break da}b=(l<<5)+u|0;l=l+1|0;break da}if(d>>>0>=p>>>0&f>>>0>=p>>>0){break ca}b=H[(g<<2)+h>>2];c=J[b+14>>1];G[b+14>>1]=c+1;c=H[o>>2]+(c+J[b+12>>1]<<2)|0;b=H[c>>2];H[c>>2]=b+1;b=(b<<5)+B|0}c=H[h+4>>2];H[b>>2]=H[h>>2];H[b+4>>2]=c;c=H[h+28>>2];H[b+24>>2]=H[h+24>>2];H[b+28>>2]=c;c=H[h+20>>2];H[b+16>>2]=H[h+16>>2];H[b+20>>2]=c;c=H[h+12>>2];H[b+8>>2]=H[h+8>>2];H[b+12>>2]=c}h=h+32|0;e=e+1|0;if((v|0)!=(e|0)){continue}break}if(!l){break b}e=k+28|0;j=0;while(1){b=0;if(i){while(1){H[b+e>>2]=0;b=b+n|0;if(i>>>0>b>>>0){continue}break}}d=l>>>0>1?l:1;j=j+32|0;c=0;l=0;while(1){b=(c<<5)+u|0;f=H[b+4>>2];g=H[f+28>>2];h=H[b>>2];m=H[h+28>>2];s=g|m;ea:{if((s|0)!=-1){r=m;m=f7(s^-1);s=1<>2]=r|((h-k>>>0)/(n>>>0)>>>0

>>0?s:0);H[H[b+4>>2]+28>>2]=g|((f-k>>>0)/(n>>>0)>>>0

>>0?s:0);f=H[o>>2]+(j+m<<2)|0;h=H[f>>2];H[f>>2]=h+1;f=(h<<5)+B|0;break ea}f=(l<<5)+u|0;l=l+1|0}h=H[b+4>>2];H[f>>2]=H[b>>2];H[f+4>>2]=h;h=H[b+28>>2];H[f+24>>2]=H[b+24>>2];H[f+28>>2]=h;h=H[b+20>>2];H[f+16>>2]=H[b+16>>2];H[f+20>>2]=h;h=H[b+12>>2];H[f+8>>2]=H[b+8>>2];H[f+12>>2]=h;c=c+1|0;if((d|0)!=(c|0)){continue}break}if(l){continue}break}}H[a+44>>2]=q;b=0;H[a+40>>2]=0;H[a+36>>2]=v;a=H[o+4>>2];fa:{if(!a){break fa}c=H[o>>2];f=0;while(1){h=f;f=H[c+(b<<2)>>2];if((h|0)==(f|0)){break fa}b=b+1|0;if((a|0)!=(b|0)){continue}break}b=a}Oa=t+16|0;return b}function s1(a,b,c,d,e,f){var g=O(0),h=0,i=O(0),j=O(0),k=0,l=O(0),m=O(0),n=O(0),o=0,p=O(0),q=O(0),r=O(0),s=O(0),t=0,u=O(0),v=0,w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),G=O(0),J=O(0),K=0,M=O(0),Q=O(0),T=O(0),U=O(0),V=O(0),X=O(0),Y=0,Z=O(0),_=O(0),$=O(0),aa=0,ba=0,ca=O(0),da=0,ea=0,fa=0;h=Oa-320|0;Oa=h;i=L[c+4>>2];j=L[c>>2];l=L[c+8>>2];L[h+44>>2]=l;L[h+40>>2]=i;L[h+36>>2]=j;L[h+24>>2]=-j;L[h+32>>2]=-l;L[h+28>>2]=-i;i=L[d>>2];j=L[d+4>>2];l=L[d+8>>2];L[h+16>>2]=l!=O(0)?O(O(1)/l):O(0);L[h+12>>2]=j!=O(0)?O(O(1)/j):O(0);L[h+8>>2]=i!=O(0)?O(O(1)/i):O(0);H[h+4>>2]=2139095039;o=h+24|0;K=a;a=0;v=Oa-176|0;Oa=v;i=L[e>>2];j=O(L[e+12>>2]-i);l=L[e+4>>2];g=O(L[e+28>>2]-l);i=O(L[e+24>>2]-i);l=O(L[e+16>>2]-l);w=O(O(j*g)-O(i*l));y=L[e+8>>2];C=O(L[e+20>>2]-y);m=O(C*i);i=O(L[e+32>>2]-y);n=O(m-O(i*j));m=O(O(l*i)-O(g*C));if(O(O(w*L[d+8>>2])+O(O(m*L[d>>2])+O(n*L[d+4>>2])))>=O(0)){a=0}else{wU(o,v+80|0);l=L[e+20>>2];g=L[e+8>>2];T=L[e+32>>2];i=O(O(O(l+g)+T)*O(.3333333432674408));y=L[e+28>>2];Z=L[e+4>>2];_=L[e+16>>2];j=O(O(y+O(Z+_))*O(.3333333432674408));s=L[e+24>>2];p=L[e>>2];x=L[e+12>>2];C=O(O(s+O(p+x))*O(.3333333432674408));D=O(g+O(O(g-i)*O(.019999999552965164)));z=O(O(l+O(O(l-i)*O(.019999999552965164)))-D);l=L[d>>2];A=O(Z+O(O(Z-j)*O(.019999999552965164)));u=O(O(y+O(O(y-j)*O(.019999999552965164)))-A);M=O(p+O(O(p-C)*O(.019999999552965164)));y=O(O(s+O(O(s-C)*O(.019999999552965164)))-M);g=L[d+4>>2];J=O(O(l*u)-O(y*g));x=O(O(x+O(O(x-C)*O(.019999999552965164)))-M);C=O(O(T+O(O(T-i)*O(.019999999552965164)))-D);s=L[d+8>>2];Q=O(O(g*C)-O(u*s));B=O(O(_+O(O(_-j)*O(.019999999552965164)))-A);q=O(O(s*y)-O(C*l));p=O(O(z*J)+O(O(x*Q)+O(B*q)));U=p!=O(0)?O(O(1)/p):O(0);T=O(-g);Z=O(-s);i=L[h+4>>2];_=O(-l);aa=-1;a:{if(!(p>=O(9999999747378752e-21))){break a}while(1){Y=N(a,12);t=Y+90976|0;b:{if(O(O(L[t+8>>2]*w)+O(O(L[t>>2]*m)+O(n*L[t+4>>2])))>=O(0)){break b}t=Y+(v+80|0)|0;j=O(L[t+8>>2]-D);r=O(L[t>>2]-M);E=O(L[t+4>>2]-A);G=O(O(j*J)+O(O(r*Q)+O(q*E)));if(Gi){break b}aa=0;k=a;i=j}a=a+1|0;if((a|0)!=8){continue}break}if(aa){break a}a=(v+80|0)+N(k,12)|0;j=L[a>>2];T=L[a+4>>2];L[K+8>>2]=O(i*s)+L[a+8>>2];L[K+4>>2]=T+O(i*g);L[K>>2]=j+O(i*l);L[b+8>>2]=w;L[b+4>>2]=n;L[b>>2]=m;Z=O(-L[d+8>>2]);T=O(-L[d+4>>2]);_=O(-L[d>>2]);aa=0}s=L[o+20>>2];x=L[o+16>>2];l=L[o+12>>2];D=L[o+8>>2];p=L[o+4>>2];j=L[o>>2];w=O(P(Z));m=O(P(T));z=O(-L[h+16>>2]);A=O(-L[h+12>>2]);u=O(-L[h+8>>2]);c:{d:{e:{f:{g:{h:{M=O(P(_));if(!(M>2];if(!(gl)){break h}a=e+12|0;break g}i:{if(m>2];if(gx){break i}}B=L[e+8>>2];if((B>2];n=O(O(j-g)*u);r=O(O(l-g)*u);k=n>r;t=M>2];r=O(O(p-E)*A);E=O(O(x-E)*A);k=r>E;G=k?E:r;t=G>n;a=t?k?4:1:a;n=t?G:n;r=k?r:E;g=gB;E=k?r:B;g=gn;a=k?ba:a;n=k?B:n}a=g=n)|((a|0)==-1|n>2]=L[a+8>>2];k=H[a+4>>2];H[b>>2]=H[a>>2];H[b+4>>2]=k;L[K>>2]=L[e>>2];L[K+4>>2]=L[e+4>>2];L[K+8>>2]=L[e+8>>2];s=L[o+20>>2];x=L[o+16>>2];D=L[o+8>>2];p=L[o+4>>2];l=L[o+12>>2];j=L[o>>2];aa=1;i=n}a=e+12|0;if(!(M>2];if(!(gl)){break f}a=e+24|0;break e}j:{if(m>2];if(gx){break j}}B=L[e+20>>2];if((B>2];n=O(O(j-g)*u);r=O(O(l-g)*u);k=n>r;t=M>2];r=O(O(p-E)*A);E=O(O(x-E)*A);k=r>E;G=k?E:r;t=G>n;Y=t?k?4:1:Y;n=t?G:n;r=k?r:E;g=gB;E=k?r:B;g=gn;Y=k?ba:Y;n=k?B:n}k=g=n)|((k|0)==-1|n>2]=L[k+8>>2];t=H[k+4>>2];H[b>>2]=H[k>>2];H[b+4>>2]=t;L[K>>2]=L[a>>2];L[K+4>>2]=L[e+16>>2];L[K+8>>2]=L[e+20>>2];s=L[o+20>>2];x=L[o+16>>2];D=L[o+8>>2];p=L[o+4>>2];l=L[o+12>>2];j=L[o>>2];aa=1;i=n}a=e+24|0;if(!(M>2];if(gl){break c}}if(m>2];if(gx){break c}}g=L[e+32>>2];if((gs)&w>2];j=O(O(j-n)*u);n=O(O(l-n)*u);k=j>n;o=M>2];p=O(O(p-n)*A);n=O(O(x-n)*A);k=p>n;m=k?n:p;o=m>j;Y=o?k?4:1:Y;p=k?p:n;l=lg;s=k?p:g;l=lj;Y=k?o:Y;j=k?g:j}k=j>l?-1:l>2]=L[k+8>>2];o=H[k+4>>2];H[b>>2]=H[k>>2];H[b+4>>2]=o;L[K>>2]=L[a>>2];L[K+4>>2]=L[e+28>>2];L[K+8>>2]=L[e+32>>2];aa=1;i=j}da=-1;Y=0;a=125584;ea=-1;while(1){o=v+80|0;k=o+N(I[a|0],12)|0;j=L[k>>2];L[v+32>>2]=j;l=L[k+4>>2];L[v+36>>2]=l;g=L[k+8>>2];L[v+40>>2]=g;k=o+N(I[a+1|0],12)|0;n=L[k+8>>2];s=O(n-g);x=L[k>>2];p=O(x-j);D=L[k+4>>2];w=O(D-l);m=O(W(O(O(s*s)+O(O(p*p)+O(w*w)))));if(m>O(0)){q=s;s=O(O(.009999999776482582)/m);m=O(q*s);g=O(g-m);L[v+40>>2]=g;w=O(w*s);l=O(l-w);L[v+36>>2]=l;s=O(p*s);j=O(j-s);L[v+32>>2]=j;D=O(D+w);x=O(x+s);n=O(n+m)}k=N(Y,12)+90832|0;m=L[d+8>>2];u=L[d>>2];A=L[d+4>>2];if(!(O(O(L[k+8>>2]*m)+O(O(L[k>>2]*u)+O(L[k+4>>2]*A)))>2]=s;p=O(D-l);L[v+20>>2]=p;w=O(x-j);L[v+16>>2]=w;z=O(O(w*A)-O(u*p));A=O(O(p*m)-O(A*s));u=O(O(s*u)-O(m*w));M=O(O(z*g)+O(O(A*j)+O(l*u)));B=O(P(u));r=O(P(A));m=O(P(z));k:{l:{if(!(!(B>r)|!(B>m))){o=0;k=2;break l}t=2;k=0;o=1;if(!(m>r)){break k}}t=o;o=k}k=o<<2;o=v+16|0;B=L[k+o>>2];ba=o;o=t<<2;m=L[ba+o>>2];r=O(O(1)/O(O(B*L[d+o>>2])-O(L[d+k>>2]*m)));ba=v+32|0;t=ba+k|0;k=k+v|0;ba=o+ba|0;o=o+v|0;E=O(-m);m=L[e+8>>2];G=L[e>>2];J=L[e+4>>2];Q=O(O(O(m*z)+O(O(G*A)+O(u*J)))-M);q=L[e+20>>2];U=L[e+12>>2];X=L[e+16>>2];m:{if(O(Q*O(O(O(q*z)+O(O(U*A)+O(u*X)))-M))>O(0)){break m}q=O(q-m);U=O(U-G);X=O(X-J);ca=O(O(z*q)+O(O(A*U)+O(u*X)));if(ca==O(0)){break m}$=m;m=O(Q/ca);Q=O($-O(q*m));L[v+8>>2]=Q;q=O(J-O(X*m));L[v+4>>2]=q;J=O(G-O(U*m));L[v>>2]=J;m=O(r*O(O(B*O(L[o>>2]-L[ba>>2]))+O(O(L[k>>2]-L[t>>2])*E)));if(m>2]);G=O(Q-U);X=O(m*L[d>>2]);J=O(J-X);$=q;q=O(m*L[d+4>>2]);Q=O($-q);if(!(O(O(O(g-G)*O(n-G))+O(O(O(j-J)*O(x-J))+O(O(l-Q)*O(D-Q))))=m)){break m}L[K+8>>2]=U+G;L[K+4>>2]=q+Q;L[K>>2]=X+J;aa=2;da=1;ea=0;y=s;C=p;V=w;T=g;Z=l;_=j;i=m}m=L[e+20>>2];G=L[e+12>>2];J=L[e+16>>2];Q=O(O(O(m*z)+O(O(G*A)+O(u*J)))-M);q=L[e+32>>2];U=L[e+24>>2];X=L[e+28>>2];n:{if(O(Q*O(O(O(q*z)+O(O(U*A)+O(u*X)))-M))>O(0)){break n}q=O(q-m);U=O(U-G);X=O(X-J);ca=O(O(z*q)+O(O(A*U)+O(u*X)));if(ca==O(0)){break n}$=m;m=O(Q/ca);Q=O($-O(q*m));L[v+8>>2]=Q;q=O(J-O(X*m));L[v+4>>2]=q;J=O(G-O(U*m));L[v>>2]=J;m=O(r*O(O(B*O(L[o>>2]-L[ba>>2]))+O(O(L[k>>2]-L[t>>2])*E)));if(m>2]);G=O(Q-U);X=O(m*L[d>>2]);J=O(J-X);$=q;q=O(m*L[d+4>>2]);Q=O($-q);if(!(O(O(O(g-G)*O(n-G))+O(O(O(j-J)*O(x-J))+O(O(l-Q)*O(D-Q))))=m)){break n}L[K+8>>2]=U+G;L[K+4>>2]=q+Q;L[K>>2]=X+J;da=2;ea=1;y=s;C=p;V=w;T=g;Z=l;_=j;aa=2;i=m}m=L[e+32>>2];G=L[e+24>>2];J=L[e+28>>2];Q=O(O(O(m*z)+O(O(G*A)+O(u*J)))-M);q=L[e+8>>2];U=L[e>>2];X=L[e+4>>2];o:{if(O(Q*O(O(O(q*z)+O(O(U*A)+O(u*X)))-M))>O(0)){break o}ca=z;z=O(q-m);$=A;A=O(U-G);q=u;u=O(X-J);M=O(O(ca*z)+O(O($*A)+O(q*u)));if(M==O(0)){break o}q=m;m=O(Q/M);z=O(q-O(z*m));L[v+8>>2]=z;u=O(J-O(u*m));L[v+4>>2]=u;A=O(G-O(A*m));L[v>>2]=A;m=O(r*O(O(B*O(L[o>>2]-L[ba>>2]))+O(O(L[k>>2]-L[t>>2])*E)));if(m>2]);z=O(z-M);ca=O(O(g-z)*O(n-z));q=A;A=O(m*L[d>>2]);n=O(q-A);$=O(O(j-n)*O(x-n));q=u;u=O(m*L[d+4>>2]);x=O(q-u);if(!(O(ca+O($+O(O(l-x)*O(D-x))))=m)){break o}L[K+8>>2]=M+z;L[K+4>>2]=u+x;L[K>>2]=A+n;da=0;ea=2;y=s;C=p;V=w;T=g;Z=l;_=j;aa=2;i=m}L[v+72>>2]=T;L[v+68>>2]=Z;L[v+64>>2]=_;L[v+56>>2]=y;L[v+52>>2]=C;L[v+48>>2]=V}a=a+2|0;Y=Y+1|0;if((Y|0)!=12){continue}break}if((aa|0)!=-1){if((aa|0)==2){a=N(ea,12)+e|0;j=L[a>>2];k=N(da,12)+e|0;l=L[k>>2];g=L[a+4>>2];y=L[k+4>>2];L[v+40>>2]=L[k+8>>2]-L[a+8>>2];L[v+36>>2]=y-g;L[v+32>>2]=l-j;t1(b,v- -64|0,v+48|0,a,v+32|0,d,i)}L[h+4>>2]=i}a=(aa|0)!=-1}Oa=v+176|0;p:{if(a){if(L[b>>2]!=O(0)|L[b+4>>2]!=O(0)|L[b+8>>2]!=O(0)){break p}}i=L[c+4>>2];j=L[c+8>>2];V=L[e+16>>2];T=L[e+20>>2];_=L[e+28>>2];Z=L[e+32>>2];l=L[c>>2];p=L[e>>2];w=L[e+4>>2];n=L[e+8>>2];m=L[e+12>>2];s=L[e+24>>2];g=L[d>>2];y=L[d+4>>2];C=L[d+8>>2];H[h+316>>2]=0;H[h+300>>2]=0;H[h+284>>2]=0;q=Z;Z=O(C*f);C=O(Z-O(C*O(.10000000149011612)));x=O(q-C);L[h+312>>2]=x;q=_;_=O(y*f);y=O(_-O(y*O(.10000000149011612)));D=O(q-y);L[h+308>>2]=D;q=s;s=O(g*f);f=O(s-O(g*O(.10000000149011612)));g=O(q-f);L[h+304>>2]=g;T=O(T-C);L[h+296>>2]=T;V=O(V-y);L[h+292>>2]=V;m=O(m-f);L[h+288>>2]=m;C=O(n-C);L[h+280>>2]=C;y=O(w-y);L[h+276>>2]=y;F[h+256|0]=0;H[h+248>>2]=2139095039;H[h+252>>2]=5;H[h+236>>2]=0;H[h+240>>2]=0;H[h+244>>2]=2139095039;C=O(O(O(C+T)+x)*O(.33333298563957214));L[h+232>>2]=C;y=O(O(O(y+V)+D)*O(.33333298563957214));L[h+228>>2]=y;f=O(p-f);L[h+272>>2]=f;f=O(O(O(f+m)+g)*O(.33333298563957214));L[h+224>>2]=f;H[h+220>>2]=0;L[h+216>>2]=j;L[h+212>>2]=i;H[h+168>>2]=0;H[h+172>>2]=0;H[h+160>>2]=0;H[h+164>>2]=0;L[h+208>>2]=l;F[h+192|0]=0;H[h+188>>2]=3;i=i>=l?l:i;i=j>=i?i:j;j=O(i*O(.05000000074505806));L[h+184>>2]=j;L[h+180>>2]=j;L[h+176>>2]=i*O(.15000000596046448);H[h+88>>2]=126656;H[h+92>>2]=h+224;H[h+80>>2]=126608;H[h+84>>2]=h+160;H[h+76>>2]=0;L[h+72>>2]=C;L[h+68>>2]=y;L[h+64>>2]=f;H[h+48>>2]=2139095039;a=Oa-288|0;Oa=a;H[a+92>>2]=0;c=h- -64|0;f=L[c+8>>2];i=L[c>>2];l=L[c+4>>2];H[a+76>>2]=0;c=O(O(f*f)+O(O(i*i)+O(l*l)))>O(0);j=c?f:O(0);L[a+72>>2]=j;l=c?l:O(0);L[a+68>>2]=l;g=c?i:O(1);L[a+64>>2]=g;e=H[h+92>>2];c=I[e+32|0];k=H[h+84>>2];o=I[k+32|0];T=O((c?L[e+16>>2]:O(0))+(o?L[k+16>>2]:O(0)));n=O(L[h+48>>2]+T);f=O(O(1)/O(W(O(O(j*j)+O(O(g*g)+O(l*l))))));V=O(j*f);y=O(l*f);C=O(g*f);f=L[k+20>>2];i=L[e+20>>2];m=O(S(O((f>2];H[a+40>>2]=H[a+72>>2];H[a+44>>2]=t;t=H[a+68>>2];H[a+32>>2]=H[a+64>>2];H[a+36>>2]=t;p=L[e- -64>>2];i=O(-g);w=L[e+68>>2];x=L[e+72>>2];D=O(O(O(p*i)-O(w*l))-O(x*j));z=L[e+80>>2];A=L[e+84>>2];u=L[e+88>>2];M=O(O(O(z*i)-O(A*l))-O(u*j));t=D>M;q=D;D=L[e+48>>2];B=L[e+52>>2];$=O(O(D*i)-O(B*l));i=L[e+56>>2];r=O($-O(i*j));e=!(qM);x=e?t?x:u:i;i=L[k+56>>2];u=j>O(0)?i:O(-i);i=O(x-u);p=e?t?p:z:D;j=L[k+48>>2];D=g>O(0)?j:O(-j);j=O(p-D);w=e?t?w:A:B;g=L[k+52>>2];z=l>O(0)?g:O(-g);l=O(w-z);g=O(O(V*i)+O(O(C*j)+O(y*l)));if(g>n){break q}if(!(!(g>T)|!(g>O(f*O(.9997749924659729))))){FU(a+224|0,a+160|0,a+96|0,a- -64|0,a+16|0,a,H[a+92>>2]);i=L[H[h+92>>2]+16>>2];j=L[a+16>>2];l=L[a+20>>2];g=L[a+24>>2];H[h+156>>2]=0;L[h+152>>2]=g-(c?O(V*i):O(0));L[h+148>>2]=l-(c?O(y*i):O(0));L[h+144>>2]=j-(c?O(C*i):O(0));i=L[H[h+84>>2]+16>>2];j=L[a>>2];l=L[a+4>>2];g=L[a+8>>2];H[h+140>>2]=0;L[h+136>>2]=g+(o?O(V*i):O(-0));L[h+132>>2]=l+(o?O(y*i):O(-0));L[h+128>>2]=j+(o?O(C*i):O(-0));L[h+96>>2]=S(O(f-T),O(0));H[h+124>>2]=0;L[h+120>>2]=-V;L[h+116>>2]=-y;L[h+112>>2]=-C;fa=1;break q}k=H[a+92>>2];t=k<<4;e=t+(a+160|0)|0;H[e+12>>2]=0;L[e+8>>2]=x;L[e+4>>2]=w;L[e>>2]=p;e=t+(a+96|0)|0;H[e+12>>2]=0;L[e+8>>2]=u;L[e+4>>2]=z;L[e>>2]=D;e=t+(a+224|0)|0;H[e+12>>2]=0;L[e+8>>2]=i;L[e+4>>2]=l;L[e>>2]=j;H[a+92>>2]=k+1;r:{s:{switch(k-1|0){case 0:g=L[a+232>>2];i=O(L[a+248>>2]-g);p=L[a+224>>2];j=O(L[a+240>>2]-p);w=L[a+228>>2];l=O(L[a+244>>2]-w);x=O(O(i*i)+O(O(j*j)+O(l*l)));if(x<=O(1.1920928955078125e-7)){H[a+92>>2]=1;e=H[a+228>>2];H[a+16>>2]=H[a+224>>2];H[a+20>>2]=e;e=H[a+236>>2];H[a+24>>2]=H[a+232>>2];H[a+28>>2]=e;break r}H[a+28>>2]=0;q=i;i=O(R(O(O(O(O(O(-p)*j)-O(l*w))-O(g*i))/x),O(1)));i=i>O(0)?i:O(0);L[a+24>>2]=g+O(q*i);L[a+20>>2]=w+O(l*i);L[a+16>>2]=p+O(j*i);break r;case 1:GU(a+16|0,a+224|0,a+160|0,a+96|0,a+92|0);break r;case 2:BZ(a+16|0,a+224|0,a+160|0,a+96|0,a+92|0);break r;default:break s}}H[a+28>>2]=0;L[a+24>>2]=i;L[a+20>>2]=l;L[a+16>>2]=j}e=H[a+20>>2];H[a+64>>2]=H[a+16>>2];H[a+68>>2]=e;e=H[a+28>>2];H[a+72>>2]=H[a+24>>2];H[a+76>>2]=e;j=L[a+72>>2];g=L[a+64>>2];l=L[a+68>>2];i=O(W(O(O(j*j)+O(O(g*g)+O(l*l)))));if(!(!(i>m)|!(f>i))){f=O(O(1)/i);C=O(g*f);y=O(l*f);V=O(j*f);k=H[h+84>>2];e=H[h+92>>2];f=i;continue}break}if(f>i){H[h+96>>2]=0;c=H[a+20>>2];H[h+100>>2]=H[a+16>>2];H[h+104>>2]=c;H[h+108>>2]=H[a+24>>2];fa=2;break q}j=L[H[h+84>>2]+16>>2];l=L[H[h+92>>2]+16>>2];FU(a+224|0,a+160|0,a+96|0,a+32|0,a+16|0,a,H[a+92>>2]);i=L[H[h+92>>2]+16>>2];g=L[a+16>>2];p=L[a+20>>2];w=L[a+24>>2];H[h+156>>2]=0;L[h+152>>2]=w-(c?O(V*i):O(0));L[h+148>>2]=p-(c?O(y*i):O(0));L[h+144>>2]=g-(c?O(C*i):O(0));i=L[H[h+84>>2]+16>>2];g=L[a>>2];p=L[a+4>>2];w=L[a+8>>2];H[h+140>>2]=0;L[h+136>>2]=w+(o?O(V*i):O(-0));L[h+132>>2]=p+(o?O(y*i):O(-0));L[h+128>>2]=g+(o?O(C*i):O(-0));H[h+124>>2]=0;L[h+120>>2]=-V;L[h+116>>2]=-y;L[h+112>>2]=-C;f=O(S(O(f-T),O(0)));L[h+96>>2]=f;c=H[a+56>>2];H[h+100>>2]=H[a+52>>2];H[h+104>>2]=c;H[h+108>>2]=H[a+60>>2];fa=f>(T>O(0)?T:O((j>2];i=L[h+112>>2];j=L[h+116>>2];l=L[h+128>>2];g=L[h+132>>2];L[K+8>>2]=Z+L[h+136>>2];L[K+4>>2]=_+g;L[K>>2]=s+l;a=O(O(f*Z)+O(O(i*s)+O(_*j)))>O(0);L[b+8>>2]=a?O(-f):f;L[b+4>>2]=a?O(-j):j;L[b>>2]=a?O(-i):i;break p}H[K+8>>2]=0;H[K>>2]=0;H[K+4>>2]=0;f=L[d>>2];i=L[d+4>>2];L[b+8>>2]=-L[d+8>>2];L[b+4>>2]=-i;L[b>>2]=-f}Oa=h+320|0}function Qz(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,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,M=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;t=Oa-1072|0;Oa=t;H[t+1048>>2]=H[b+12>>2];n=H[b+56>>2];a=t;H[a+1004>>2]=-128;H[a+1008>>2]=-128;H[a+972>>2]=-128;H[a+976>>2]=-128;H[a+940>>2]=-128;H[a+944>>2]=-128;H[a+908>>2]=-128;H[a+912>>2]=-128;H[a+876>>2]=-128;H[a+880>>2]=-128;H[a+844>>2]=-128;H[a+848>>2]=-128;H[a+812>>2]=-128;H[a+816>>2]=-128;H[a+780>>2]=-128;H[a+784>>2]=-128;H[a+748>>2]=-128;H[a+752>>2]=-128;H[a+716>>2]=-128;H[a+720>>2]=-128;H[a+684>>2]=-128;H[a+688>>2]=-128;H[a+652>>2]=-128;H[a+656>>2]=-128;H[a+620>>2]=-128;H[a+624>>2]=-128;H[a+588>>2]=-128;H[a+592>>2]=-128;H[a+556>>2]=-128;H[a+560>>2]=-128;H[a+524>>2]=-128;H[a+528>>2]=-128;H[a+492>>2]=-128;H[a+496>>2]=-128;H[a+460>>2]=-128;H[a+464>>2]=-128;H[a+428>>2]=-128;H[a+432>>2]=-128;H[a+396>>2]=-128;H[a+400>>2]=-128;H[a+364>>2]=-128;H[a+368>>2]=-128;H[a+332>>2]=-128;H[a+336>>2]=-128;H[a+300>>2]=-128;H[a+304>>2]=-128;H[a+268>>2]=-128;H[a+272>>2]=-128;H[a+236>>2]=-128;H[a+240>>2]=-128;H[a+204>>2]=-128;H[a+208>>2]=-128;H[a+172>>2]=-128;H[a+176>>2]=-128;H[a+140>>2]=-128;H[a+144>>2]=-128;H[a+108>>2]=-128;H[a+112>>2]=-128;H[a+76>>2]=-128;H[a+80>>2]=-128;H[a+44>>2]=-128;H[a+48>>2]=-128;H[a+12>>2]=-128;H[a+16>>2]=-128;U=H[b+116>>2];T=H[b+40>>2];H[a+1068>>2]=d;H[a+1064>>2]=c;H[a+1040>>2]=0;H[a+1044>>2]=32;H[a+1036>>2]=a;o=H[b>>2];F=H[b+28>>2];B=H[b+16>>2];G=H[b+4>>2];a=n+H[b+68>>2]|0;H[b+68>>2]=a;p=a-n|0;C=n+H[b+128>>2]|0;H[b+128>>2]=C;X=H[b+108>>2];P=H[b+32>>2];M=H[b+124>>2];V=H[b+120>>2];I=H[b+48>>2];R=H[b+44>>2];Y=H[b+112>>2];O=H[b+36>>2];a:{b:{y=o-1|0;c:{if(!y){r=n;break c}if(!I){break b}r=n;while(1){A=N(m,T);h=0;while(1){d:{if(H[b+72>>2]>=(i|0)){break d}c=3e4;if(H[b+72>>2]>=(i|0)){break d}while(1){if(H[b+72>>2]>=(i|0)){break d}c=c-1|0;if(c){continue}c=1e4;continue}}k=0;z=H[(h<<2)+R>>2];u=z+u|0;e:{if((u|0)<=(p|0)){break e}while(1){a=u-p|0;j=(a|0)<(r|0)?a:r;if((j|0)>0){g=p-A|0;E=j+g|0;while(1){q=0;f=0;e=0;s=(g<<3)+O|0;D=(H[s>>2]<<5)+P|0;c=H[D+24>>2];a=c+383|0;e=a>>>0<383?1:e;d=(e&63)<<26|a>>>6;a=c>>>6|0;l=(e>>>6|0)-(a>>>0>d>>>0)|0;v=d-a|0;e=l;a=v+1|0;e=a?e:e+1|0;d=a;a=0;S=a;Q=d&7;if(a|Q){while(1){a=d;d=a-1|0;e=e-!a|0;c=c- -64|0;a=f;f=q+1|0;a=f?a:a+1|0;q=f;f=a;if((Q|0)!=(q|0)|(S|0)!=(a|0)){continue}break}}f=J[s+4>>1];if(!l&v>>>0>=7|l){while(1){c=c+512|0;e=e-(d>>>0<8)|0;d=d-8|0;if(e|d){continue}break}}f:{if(!f){break f}d=0;c=0;if(f-1>>>0>=3){e=f&65532;a=0;while(1){c=c+4|0;a=a+4|0;if((e|0)!=(a|0)){continue}break}}a=f&3;if(!a){break f}while(1){c=c+1|0;d=d+1|0;if((a|0)!=(d|0)){continue}break}}Ra[H[(J[s+6>>1]<<2)+114112>>2]](D,f,t+1032|0);g=g+1|0;if((E|0)>(g|0)){continue}break}}k=j+k|0;r=r-j|0;if(r){p=j+p|0}else{r=n;a=n+H[b+68>>2]|0;H[b+68>>2]=a;p=a-n|0}if((u|0)>(p|0)){continue}break}if(!k){break e}H[b+72>>2]=H[b+72>>2]+k}i=i+z|0;h=h+1|0;if((I|0)!=(h|0)){continue}break}m=m+1|0;if((y|0)!=(m|0)){continue}break}}if(!o){break a}if(!I){y=o;break a}s=N(y,T);h=0;while(1){g:{if(H[b+72>>2]>=(i|0)){break g}c=3e4;if(H[b+72>>2]>=(i|0)){break g}while(1){if(H[b+72>>2]>=(i|0)){break g}c=c-1|0;if(c){continue}c=1e4;continue}}k=0;v=H[(h<<2)+R>>2];u=v+u|0;h:{if((u|0)<=(p|0)){break h}while(1){a=u-p|0;l=(a|0)<(r|0)?a:r;if((l|0)>0){g=p-s|0;A=l+g|0;while(1){q=0;f=0;e=0;j=(g<<3)+O|0;z=(H[j>>2]<<5)+P|0;c=H[z+24>>2];a=c+383|0;e=a>>>0<383?1:e;d=(e&63)<<26|a>>>6;a=c>>>6|0;y=(e>>>6|0)-(a>>>0>d>>>0)|0;m=d-a|0;e=y;a=m+1|0;e=a?e:e+1|0;d=a;a=0;E=a;D=d&7;if(a|D){while(1){a=d;d=a-1|0;e=e-!a|0;c=c- -64|0;a=f;f=q+1|0;a=f?a:a+1|0;q=f;f=a;if((D|0)!=(q|0)|(E|0)!=(a|0)){continue}break}}f=J[j+4>>1];if(!y&m>>>0>=7|y){while(1){c=c+512|0;e=e-(d>>>0<8)|0;d=d-8|0;if(e|d){continue}break}}i:{if(!f){break i}d=0;c=0;if(f-1>>>0>=3){e=f&65532;a=0;while(1){c=c+4|0;a=a+4|0;if((e|0)!=(a|0)){continue}break}}a=f&3;if(!a){break i}while(1){c=c+1|0;d=d+1|0;if((a|0)!=(d|0)){continue}break}}Ra[H[(J[j+6>>1]<<2)+114240>>2]](z,f,t+1032|0);g=g+1|0;if((A|0)>(g|0)){continue}break}}k=l+k|0;r=r-l|0;if(r){p=l+p|0}else{r=n;a=n+H[b+68>>2]|0;H[b+68>>2]=a;p=a-n|0}if((u|0)>(p|0)){continue}break}if(!k){break h}H[b+72>>2]=H[b+72>>2]+k}i=i+v|0;h=h+1|0;if((I|0)!=(h|0)){continue}break}y=o;break a}y=o?o:-1;r=n}k=C-n|0;j:{k:{l:{s=o<<1;h=s-1|0;if(y>>>0>=h>>>0){h=y;o=n;break l}w=h-y|0;if(M){o=n;C=0;while(1){E=N(C,U);m=0;while(1){m:{if(H[b+72>>2]>=(i|0)){break m}c=3e4;if(H[b+72>>2]>=(i|0)){break m}while(1){if(H[b+72>>2]>=(i|0)){break m}c=c-1|0;if(c){continue}c=1e4;continue}}j=0;D=H[(m<<2)+V>>2];x=D+x|0;n:{if((x|0)<=(k|0)){break n}while(1){a=x-k|0;v=(a|0)<(o|0)?a:o;if((v|0)>0){g=k-E|0;S=v+g|0;while(1){q=0;f=0;e=0;A=(g<<3)+Y|0;Q=(H[A>>2]<<5)+X|0;c=H[Q+24>>2];a=c+383|0;e=a>>>0<383?1:e;d=(e&63)<<26|a>>>6;a=c>>>6|0;l=(e>>>6|0)-(a>>>0>d>>>0)|0;z=d-a|0;e=l;a=z+1|0;e=a?e:e+1|0;d=a;a=0;W=a;Z=d&7;if(a|Z){while(1){a=d;d=a-1|0;e=e-!a|0;c=c- -64|0;a=f;f=q+1|0;a=f?a:a+1|0;q=f;f=a;if((Z|0)!=(q|0)|(W|0)!=(a|0)){continue}break}}f=J[A+4>>1];if(!l&z>>>0>=7|l){while(1){c=c+512|0;e=e-(d>>>0<8)|0;d=d-8|0;if(e|d){continue}break}}o:{if(!f){break o}d=0;c=0;if(f-1>>>0>=3){e=f&65532;a=0;while(1){c=c+4|0;a=a+4|0;if((e|0)!=(a|0)){continue}break}}a=f&3;if(!a){break o}while(1){c=c+1|0;d=d+1|0;if((a|0)!=(d|0)){continue}break}}Ra[H[(J[A+6>>1]<<2)+114112>>2]](Q,f,t+1032|0);g=g+1|0;if((S|0)>(g|0)){continue}break}}j=j+v|0;o=o-v|0;if(o){k=k+v|0}else{o=n;a=n+H[b+128>>2]|0;H[b+128>>2]=a;k=a-n|0}if((x|0)>(k|0)){continue}break}if(!j){break n}H[b+72>>2]=H[b+72>>2]+j}i=i+D|0;m=m+1|0;if((M|0)!=(m|0)){continue}break}C=C+1|0;if((w|0)!=(C|0)){continue}break}break l}o=n;if(!s){break j}break k}if(h>>>0>=s>>>0){break j}if(!M){break k}while(1){z=N(w,U);m=0;while(1){p:{if(H[b+72>>2]>=(i|0)){break p}c=3e4;if(H[b+72>>2]>=(i|0)){break p}while(1){if(H[b+72>>2]>=(i|0)){break p}c=c-1|0;if(c){continue}c=1e4;continue}}j=0;E=H[(m<<2)+V>>2];x=E+x|0;q:{if((x|0)<=(k|0)){break q}while(1){a=x-k|0;v=(a|0)<(o|0)?a:o;if((v|0)>0){g=k-z|0;D=v+g|0;while(1){q=0;f=0;e=0;C=(g<<3)+Y|0;S=(H[C>>2]<<5)+X|0;c=H[S+24>>2];a=c+383|0;e=a>>>0<383?1:e;d=(e&63)<<26|a>>>6;a=c>>>6|0;l=(e>>>6|0)-(a>>>0>d>>>0)|0;A=d-a|0;e=l;a=A+1|0;e=a?e:e+1|0;d=a;a=0;Q=a;W=d&7;if(a|W){while(1){a=d;d=a-1|0;e=e-!a|0;c=c- -64|0;a=f;f=q+1|0;a=f?a:a+1|0;q=f;f=a;if((W|0)!=(q|0)|(Q|0)!=(a|0)){continue}break}}f=J[C+4>>1];if(!l&A>>>0>=7|l){while(1){c=c+512|0;e=e-(d>>>0<8)|0;d=d-8|0;if(e|d){continue}break}}r:{if(!f){break r}d=0;c=0;if(f-1>>>0>=3){e=f&65532;a=0;while(1){c=c+4|0;a=a+4|0;if((e|0)!=(a|0)){continue}break}}a=f&3;if(!a){break r}while(1){c=c+1|0;d=d+1|0;if((a|0)!=(d|0)){continue}break}}Ra[H[(J[C+6>>1]<<2)+114240>>2]](S,f,t+1032|0);g=g+1|0;if((D|0)>(g|0)){continue}break}}j=j+v|0;o=o-v|0;if(o){k=k+v|0}else{o=n;a=n+H[b+128>>2]|0;H[b+128>>2]=a;k=a-n|0}if((x|0)>(k|0)){continue}break}if(!j){break q}H[b+72>>2]=H[b+72>>2]+j}i=i+E|0;m=m+1|0;if((M|0)!=(m|0)){continue}break}w=w+1|0;h=h+1|0;if((s|0)!=(h|0)){continue}break}break j}w=(s+w|0)-h|0}s:{a=H[b+72>>2]>=(i|0);if(a|a){break s}c=3e4;while(1){if(H[b+72>>2]>=(i|0)){break s}c=c-1|0;if(c){continue}c=1e4;continue}}l=H[b+52>>2];q=H[b+8>>2];f=H[b+24>>2];d=64;g=0;a=H[b+76>>2]- -64|0;H[b+76>>2]=a;c=a+-64|0;if((F|0)>(c|0)){while(1){a=F-c|0;e=(a|0)<64?a:64;d=d-e|0;t:{if((a|0)<=0){break t}a=(e|0)>1?e:1;j=a&1;if((e|0)>=2){m=a&2147483646;a=0;while(1){h=f+N(c,52)|0;s=H[(H[H[h>>2]+24>>2]<<2)+135124>>2];if(s){Ra[s|0](h,H[t+1068>>2])}h=h+52|0;s=H[(H[H[h>>2]+24>>2]<<2)+135124>>2];if(s){Ra[s|0](h,H[t+1068>>2])}c=c+2|0;a=a+2|0;if((m|0)!=(a|0)){continue}break}}if(!j){break t}a=f+N(c,52)|0;h=H[(H[H[a>>2]+24>>2]<<2)+135124>>2];if(h){Ra[h|0](a,H[t+1068>>2])}c=c+1|0}g=(e<<1)+g|0;if(!d){d=64;a=H[b+76>>2]- -64|0;H[b+76>>2]=a;c=a+-64|0}if((c|0)<(F|0)){continue}break}}a=c-F|0;if((B|0)>(a|0)){while(1){h=0;c=B-a|0;e=(c|0)>(d|0)?d:c;if((e|0)>0){while(1){d=a<<5;c=d+l|0;d=d+q|0;L[c>>2]=L[d>>2];L[c+4>>2]=L[d+4>>2];L[c+8>>2]=L[d+8>>2];L[c+16>>2]=L[d+16>>2];L[c+20>>2]=L[d+20>>2];L[c+24>>2]=L[d+24>>2];a=a+1|0;h=h+1|0;if((e|0)!=(h|0)){continue}break}}g=e+g|0;d=64;a=H[b+76>>2]- -64|0;H[b+76>>2]=a;a=(a-F|0)+-64|0;if((B|0)>(a|0)){continue}break}}if(g){H[b+80>>2]=H[b+80>>2]+g}u:{a=B+F|0;if((a|0)<=H[b+80>>2]|(a|0)<=H[b+80>>2]){break u}c=3e4;while(1){if((a|0)<=H[b+80>>2]){break u}c=c-1|0;if(c){continue}c=1e4;continue}}v=G-1|0;if(v){C=w+G|0;F=0;while(1){if(I){s=N(y,T);m=0;while(1){v:{if(H[b+72>>2]>=(i|0)){break v}c=3e4;if(H[b+72>>2]>=(i|0)){break v}while(1){if(H[b+72>>2]>=(i|0)){break v}c=c-1|0;if(c){continue}c=1e4;continue}}j=0;G=H[(m<<2)+R>>2];u=G+u|0;w:{if((u|0)<=(p|0)){break w}while(1){a=u-p|0;l=(a|0)<(r|0)?a:r;if((l|0)>0){g=p-s|0;A=l+g|0;while(1){q=0;f=0;e=0;w=(g<<3)+O|0;z=(H[w>>2]<<5)+P|0;c=H[z+24>>2];a=c+383|0;e=a>>>0<383?1:e;d=(e&63)<<26|a>>>6;a=c>>>6|0;h=(e>>>6|0)-(a>>>0>d>>>0)|0;B=d-a|0;e=h;a=B+1|0;e=a?e:e+1|0;d=a;a=0;E=a;D=d&7;if(a|D){while(1){a=d;d=a-1|0;e=e-!a|0;c=c- -64|0;a=f;f=q+1|0;a=f?a:a+1|0;q=f;f=a;if((D|0)!=(q|0)|(E|0)!=(a|0)){continue}break}}f=J[w+4>>1];if(!h&B>>>0>=7|h){while(1){c=c+512|0;e=e-(d>>>0<8)|0;d=d-8|0;if(e|d){continue}break}}x:{if(!f){break x}d=0;c=0;if(f-1>>>0>=3){e=f&65532;a=0;while(1){c=c+4|0;a=a+4|0;if((e|0)!=(a|0)){continue}break}}a=f&3;if(!a){break x}while(1){c=c+1|0;d=d+1|0;if((a|0)!=(d|0)){continue}break}}Ra[H[(J[w+6>>1]<<2)+114112>>2]](z,f,t+1032|0);g=g+1|0;if((A|0)>(g|0)){continue}break}}j=j+l|0;r=r-l|0;if(r){p=l+p|0}else{r=n;a=n+H[b+68>>2]|0;H[b+68>>2]=a;p=a-n|0}if((u|0)>(p|0)){continue}break}if(!j){break w}H[b+72>>2]=H[b+72>>2]+j}i=i+G|0;m=m+1|0;if((I|0)!=(m|0)){continue}break}}y=y+1|0;if(M){h=p-N(y,T)|0;m=0;while(1){y:{if(H[b+72>>2]>=(i|0)){break y}c=3e4;if(H[b+72>>2]>=(i|0)){break y}while(1){if(H[b+72>>2]>=(i|0)){break y}c=c-1|0;if(c){continue}c=1e4;continue}}j=0;G=H[(m<<2)+V>>2];x=G+x|0;z:{if((x|0)<=(k|0)){break z}while(1){a=x-k|0;w=(a|0)<(o|0)?a:o;if((w|0)>0){A=h+w|0;g=h;while(1){q=0;f=0;e=0;B=(g<<3)+O|0;z=(H[B>>2]<<5)+P|0;c=H[z+24>>2];a=c+383|0;e=a>>>0<383?1:e;d=(e&63)<<26|a>>>6;a=c>>>6|0;l=(e>>>6|0)-(a>>>0>d>>>0)|0;s=d-a|0;e=l;a=s+1|0;e=a?e:e+1|0;d=a;a=0;E=a;D=d&7;if(a|D){while(1){a=d;d=a-1|0;e=e-!a|0;c=c- -64|0;a=f;f=q+1|0;a=f?a:a+1|0;q=f;f=a;if((D|0)!=(q|0)|(E|0)!=(a|0)){continue}break}}f=J[B+4>>1];if(!l&s>>>0>=7|l){while(1){c=c+512|0;e=e-(d>>>0<8)|0;d=d-8|0;if(e|d){continue}break}}A:{if(!f){break A}d=0;c=0;if(f-1>>>0>=3){e=f&65532;a=0;while(1){c=c+4|0;a=a+4|0;if((e|0)!=(a|0)){continue}break}}a=f&3;if(!a){break A}while(1){c=c+1|0;d=d+1|0;if((a|0)!=(d|0)){continue}break}}Ra[H[(J[B+6>>1]<<2)+114112>>2]](z,f,t+1032|0);g=g+1|0;if((A|0)>(g|0)){continue}break}}j=j+w|0;o=o-w|0;if(o){k=k+w|0}else{o=n;a=n+H[b+128>>2]|0;H[b+128>>2]=a;k=a-n|0}if((x|0)>(k|0)){continue}break}if(!j){break z}H[b+72>>2]=H[b+72>>2]+j}i=i+G|0;m=m+1|0;if((M|0)!=(m|0)){continue}break}}F=F+1|0;if((v|0)!=(F|0)){continue}break}w=C-1|0}s=H[b+136>>2];F=H[b+132>>2];B=H[b+140>>2];H[t+1060>>2]=B;H[t+1052>>2]=F;H[t+1056>>2]=s;if(I){j=0;while(1){B:{if(H[b+72>>2]>=(i|0)){break B}c=3e4;if(H[b+72>>2]>=(i|0)){break B}while(1){if(H[b+72>>2]>=(i|0)){break B}c=c-1|0;if(c){continue}c=1e4;continue}}h=0;G=H[(j<<2)+R>>2];u=G+u|0;C:{if((u|0)<=(p|0)){break C}while(1){g=0;a=u-p|0;m=(a|0)<(r|0)?a:r;if((m|0)>0){while(1){q=0;f=0;e=0;v=(g<<3)+O|0;A=(H[v>>2]<<5)+P|0;c=H[A+24>>2];a=c+383|0;e=a>>>0<383?1:e;d=(e&63)<<26|a>>>6;a=c>>>6|0;l=(e>>>6|0)-(a>>>0>d>>>0)|0;C=d-a|0;e=l;a=C+1|0;e=a?e:e+1|0;d=a;a=0;z=a;E=d&7;if(a|E){while(1){a=d;d=a-1|0;e=e-!a|0;c=c- -64|0;a=f;f=q+1|0;a=f?a:a+1|0;q=f;f=a;if((E|0)!=(q|0)|(z|0)!=(a|0)){continue}break}}f=J[v+4>>1];if(!l&C>>>0>=7|l){while(1){c=c+512|0;e=e-(d>>>0<8)|0;d=d-8|0;if(e|d){continue}break}}D:{if(!f){break D}d=0;c=0;if(f-1>>>0>=3){e=f&65532;a=0;while(1){c=c+4|0;a=a+4|0;if((e|0)!=(a|0)){continue}break}}a=f&3;if(!a){break D}while(1){c=c+1|0;d=d+1|0;if((a|0)!=(d|0)){continue}break}}Ra[H[(J[v+6>>1]<<2)+114176>>2]](A,f,t+1032|0);g=g+1|0;if((m|0)!=(g|0)){continue}break}}h=h+m|0;r=r-m|0;if(r){p=m+p|0}else{r=n;a=n+H[b+68>>2]|0;H[b+68>>2]=a;p=a-n|0}if((u|0)>(p|0)){continue}break}if(!h){break C}H[b+72>>2]=H[b+72>>2]+h}i=i+G|0;j=j+1|0;if((I|0)!=(j|0)){continue}break}}H[t+1056>>2]=s;H[t+1052>>2]=F;H[t+1060>>2]=B;if(M){m=N(w,U);p=0;while(1){E:{if(H[b+72>>2]>=(i|0)){break E}c=3e4;if(H[b+72>>2]>=(i|0)){break E}while(1){if(H[b+72>>2]>=(i|0)){break E}c=c-1|0;if(c){continue}c=1e4;continue}}g=0;I=H[(p<<2)+V>>2];x=I+x|0;F:{if((x|0)<=(k|0)){break F}while(1){a=x-k|0;u=(a|0)<(o|0)?a:o;if((u|0)>0){h=k-m|0;P=u+h|0;while(1){q=0;f=0;e=0;l=(h<<3)+Y|0;O=(H[l>>2]<<5)+X|0;c=H[O+24>>2];a=c+383|0;e=a>>>0<383?1:e;d=(e&63)<<26|a>>>6;a=c>>>6|0;r=(e>>>6|0)-(a>>>0>d>>>0)|0;j=d-a|0;e=r;a=j+1|0;e=a?e:e+1|0;d=a;a=0;R=a;s=d&7;if(a|s){while(1){a=d;d=a-1|0;e=e-!a|0;c=c- -64|0;a=f;f=q+1|0;a=f?a:a+1|0;q=f;f=a;if((s|0)!=(q|0)|(R|0)!=(a|0)){continue}break}}f=J[l+4>>1];if(!r&j>>>0>=7|r){while(1){c=c+512|0;e=e-(d>>>0<8)|0;d=d-8|0;if(e|d){continue}break}}G:{if(!f){break G}d=0;c=0;if(f-1>>>0>=3){e=f&65532;a=0;while(1){c=c+4|0;a=a+4|0;if((e|0)!=(a|0)){continue}break}}a=f&3;if(!a){break G}while(1){c=c+1|0;d=d+1|0;if((a|0)!=(d|0)){continue}break}}Ra[H[(J[l+6>>1]<<2)+114176>>2]](O,f,t+1032|0);h=h+1|0;if((P|0)>(h|0)){continue}break}}g=g+u|0;o=o-u|0;if(o){k=k+u|0}else{o=n;a=n+H[b+128>>2]|0;H[b+128>>2]=a;k=a-n|0}if((x|0)>(k|0)){continue}break}if(!g){break F}H[b+72>>2]=H[b+72>>2]+g}i=i+I|0;p=p+1|0;if((M|0)!=(p|0)){continue}break}}a=H[t+1040>>2];H:{if(!a){break H}a=a+H[B>>2]|0;H[B>>2]=a;b=H[t+1040>>2];if(!b){break H}d=a-b|0;c=0;while(1){a=H[t+1036>>2]+(c<<5)|0;e=H[a+4>>2];b=F+(c+d<<5)|0;H[b>>2]=H[a>>2];H[b+4>>2]=e;e=H[a+28>>2];H[b+24>>2]=H[a+24>>2];H[b+28>>2]=e;e=H[a+20>>2];H[b+16>>2]=H[a+16>>2];H[b+20>>2]=e;e=H[a+12>>2];H[b+8>>2]=H[a+8>>2];H[b+12>>2]=e;c=c+1|0;if(c>>>0>2]){continue}break}}Oa=t+1072|0;return N(y+1|0,T)+N(w+1|0,U)|0} -function FN(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=O(0),h=0,i=O(0),j=0,k=0,l=0,m=0,n=0,o=0,p=O(0),q=O(0),r=0,s=O(0),t=0,u=O(0),v=O(0),w=O(0),x=O(0),y=0,z=0,A=O(0),B=0,C=0,D=0,E=O(0),K=O(0),M=O(0),Q=0,R=O(0),S=O(0),T=0,U=O(0),V=0,X=O(0),Y=O(0),Z=O(0),_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0;k=Oa-128|0;Oa=k;e=H[a+36>>2];c=H[e+304>>2];b=H[c>>2];if(b){H[c>>2]=H[b>>2]}y=b;if(!b){c=H[33808];b=Ra[H[H[c>>2]+20>>2]](c)|0?22930:55639;b=Ra[H[H[c+12>>2]+8>>2]](c+12|0,7251,b,16202,82)|0;c=b+19&-16;H[c-4>>2]=c-b;y=uJ(c,H[e+308>>2])}Q=H[a+56>>2];c=Q+H[a+60>>2]|0;b=H[a+64>>2];_=b>>>0>c>>>0?c:b;a:{if(Q>>>0>=_>>>0){break a}aa=k+48|0;Y=L[H[a+40>>2]+328>>2];r=H[a+68>>2];while(1){c=H[a+32>>2];if(c>>>0<=r>>>0){break a}b=r+1|0;b:{c:{if(b>>>0>=c>>>0){t=b;break c}e=H[a+28>>2];t=b;d:{while(1){if(H[H[e+(t<<2)>>2]+56>>2]!=(Q|0)){break d}t=t+1|0;if((c|0)!=(t|0)){continue}break}t=c}if(b>>>0>>0){D=e+(r<<2)|0;j=0;o=0;d=0;C=32;T=Oa-16|0;Oa=T;F[T+12|0]=0;e=T-128|0;Oa=e;H[T+8>>2]=e;z=(t-r|0)-1|0;e:{if((z|0)<=0){break e}while(1){f:{if((j|0)>=(z|0)){break f}while(1){if(z-j>>>0<=4){while(1){n=j;j=j+1|0;b=j;c=n;while(1){h=b;l=H[D+(b<<2)>>2];i=L[l+28>>2];b=H[D+(c<<2)>>2];g=L[b+28>>2];g:{if(!(i>2]|(!H[l+4>>2]|g!=i)){break g}}c=h}b=h+1|0;if((h|0)<(z|0)){continue}break}if((c|0)!=(n|0)){b=D+(c<<2)|0;c=H[b>>2];h=b;b=D+(n<<2)|0;H[h>>2]=H[b>>2];H[b>>2]=c}if((j|0)!=(z|0)){continue}break f}}h:{i:{l=D+(j<<2)|0;c=H[l>>2];g=L[c+28>>2];B=D+((j+z|0)/2<<2)|0;h=H[B>>2];i=L[h+28>>2];if(g>i){break i}if(g!=i){b=c;break h}if(!H[h+4>>2]){b=c;break h}if(!H[c+4>>2]){break i}b=c;break h}H[l>>2]=h;H[B>>2]=c;b=H[l>>2];g=L[b+28>>2];h=c}j:{k:{n=D+(z<<2)|0;c=H[n>>2];i=L[c+28>>2];if(!(i>2]|(!H[c+4>>2]|g!=i)){break k}}H[l>>2]=c;H[n>>2]=b;h=H[B>>2];break j}g=i;b=c}i=L[h+28>>2];l:{if(!(i>g)){if(H[h+4>>2]|(!H[b+4>>2]|g!=i)){break l}}H[B>>2]=b;H[n>>2]=h;h=H[B>>2]}b=z-1|0;m=D+(b<<2)|0;H[B>>2]=H[m>>2];H[m>>2]=h;c=j;while(1){i=L[h+28>>2];while(1){n=c;c=c+1|0;V=D+(c<<2)|0;f=H[V>>2];g=L[f+28>>2];if(g>2]?1:!H[f+4>>2]|g!=i)){continue}break}while(1){b=b-1|0;l=D+(b<<2)|0;B=H[l>>2];g=L[B+28>>2];if(g>i|!(H[B+4>>2]?1:!H[h+4>>2]|g!=i)){continue}break}if((b|0)>(c|0)){H[V>>2]=B;H[l>>2]=f;h=H[m>>2];continue}break}H[V>>2]=h;H[m>>2]=f;m:{if((c-j|0)<(z-c|0)){n:{if(C-1>>>0>o>>>0){c=e;break n}c=C<<3;if(c){h=H[33808];b=h+12|0;c=(ca=b,da=c,ea=Ra[H[H[h>>2]+20>>2]](h)|0?49276:55639,fa=14160,ga=155,ba=H[H[b>>2]+8>>2],Ra[ba](ca|0,da|0,ea|0,fa|0,ga|0)|0)}else{c=0}b=R6(c,e,o<<2);if(!(!d|!e)){h=H[33808]+12|0;Ra[H[H[h>>2]+12>>2]](h,e)}C=C<<1;d=1;e=b}b=(o<<2)+c|0;H[b>>2]=j;H[b+4>>2]=n;j=n+2|0;break m}l=n+2|0;o:{if(C-1>>>0>o>>>0){c=e;break o}c=C<<3;if(c){h=H[33808];b=h+12|0;c=(ga=b,fa=c,ea=Ra[H[H[h>>2]+20>>2]](h)|0?49276:55639,da=14160,ca=155,ba=H[H[b>>2]+8>>2],Ra[ba](ga|0,fa|0,ea|0,da|0,ca|0)|0)}else{c=0}b=R6(c,e,o<<2);if(!(!d|!e)){h=H[33808]+12|0;Ra[H[H[h>>2]+12>>2]](h,e)}C=C<<1;d=1;e=b}b=(o<<2)+c|0;H[b>>2]=l;H[b+4>>2]=z;z=n}o=o+2|0;if((j|0)<(z|0)){continue}break}}if(o){b=o-2|0;j=H[(b<<2)+e>>2];z=H[((o<<2)+e|0)-4>>2];o=b;continue}break}if(!d|!e){break e}b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,e)}if(I[T+12|0]){H5(H[T+8>>2])}Oa=T+16|0}if(r>>>0>=t>>>0){break b}}V=t-3|0;B=Q-1|0;R=L[a+44>>2];z=1;while(1){d=H[H[a+28>>2]+(r<<2)>>2];g=L[d+28>>2];if(g>O(1)){break b}e=0;b=H[d>>2];if(b){e=!I[H[b+32>>2]+34|0]}b=H[d+4>>2];if(b){c=I[H[b+32>>2]+34|0]}else{c=1}p:{if((e|!c)!=1){break p}q:{if(H[d+104>>2]){break q}f=Oa-192|0;Oa=f;oN(d);b=H[d+12>>2];h=H[d+8>>2];j=H[d+4>>2];l=H[d>>2];n=H[d+64>>2];c=H[d+60>>2];r:{if((n|0)>=(c|0)){o=n;n=c;e=b;b=h;h=j;j=l;break r}o=c;e=h;h=l}L[f+160>>2]=L[b+36>>2];L[f+164>>2]=L[b+40>>2];L[f+168>>2]=L[b+44>>2];L[f+172>>2]=L[b+48>>2];A=L[b+52>>2];L[f+176>>2]=A;E=L[b+56>>2];L[f+180>>2]=E;U=L[b+60>>2];L[f+184>>2]=U;L[f+96>>2]=L[b+8>>2];L[f+100>>2]=L[b+12>>2];L[f+104>>2]=L[b+16>>2];L[f+108>>2]=L[b+20>>2];x=L[b+24>>2];L[f+112>>2]=x;X=L[b+28>>2];L[f+116>>2]=X;p=L[b+32>>2];L[f+120>>2]=p;L[f+128>>2]=L[e+36>>2];L[f+132>>2]=L[e+40>>2];L[f+136>>2]=L[e+44>>2];L[f+140>>2]=L[e+48>>2];s=L[e+52>>2];L[f+144>>2]=s;S=L[e+56>>2];L[f+148>>2]=S;u=L[e+60>>2];L[f+152>>2]=u;L[f+64>>2]=L[e+8>>2];L[f+68>>2]=L[e+12>>2];L[f+72>>2]=L[e+16>>2];L[f+76>>2]=L[e+20>>2];i=L[e+24>>2];L[f+80>>2]=i;v=L[e+28>>2];L[f+84>>2]=v;w=L[e+32>>2];L[f+88>>2]=w;H[f+56>>2]=0;H[f+48>>2]=0;H[f+52>>2]=0;H[f+40>>2]=0;H[f+32>>2]=0;H[f+36>>2]=0;g=L[H[d+52>>2]+52>>2];H[y+7160>>2]=-1;L[y+7152>>2]=R;K=g>O(0)?g:O(0);c=y+7160|0;Z=L[b+4>>2];M=L[e+4>>2];g=O(Z+M);q=g>2]>>2],28)+126928|0)+(H[H[e>>2]>>2]<<2)>>2]](b,e,f+160|0,f+128|0,f+96|0,f- -64|0,K,f+48|0,f+32|0,L[d+28>>2],c,q));s:{if(K>=O(1)){H[d+48>>2]=0;H[d+104>>2]=1;H[d+28>>2]=2139095039;H[d+32>>2]=0;break s}H[d+72>>2]=H[c>>2];x=O(O(A-x)-O(s-i));i=L[f+48>>2];g=O(-i);s=L[f+52>>2];x=O(O(x*g)-O(O(O(E-X)-O(S-v))*s));v=L[f+56>>2];w=O(x-O(O(O(U-p)-O(u-w))*v));t:{if(H[d+64>>2]>2]){g=i;break t}v=O(-v);L[f+56>>2]=v;s=O(-s);L[f+52>>2]=s;L[f+48>>2]=g}H[d+104>>2]=1;if(q>w){H[d+28>>2]=2139095039;break s}p=O(0);u:{if(!(K<=O(0))){i=O(0);break u}p=O(1);A=O(1);u=O(1);i=O(-K);K=O(0);A=j?L[H[j+32>>2]+36>>2]:A;p=h?L[H[h+32>>2]+36>>2]:p;if((p>A?A:p)!=O(1)){p=O(0);break u}u=j?L[H[j+36>>2]+60>>2]:u;v:{if(!h){M=O(3.4028234663852886e38);q=O(1);break v}q=L[H[h+36>>2]+60>>2]}p=O(O((M>Z?Z:M)*(q>u?u:q))/w)}L[d+48>>2]=i;L[d+28>>2]=K;L[d+32>>2]=p;L[d+36>>2]=L[f+32>>2];L[d+40>>2]=L[f+36>>2];i=L[f+40>>2];L[d+24>>2]=v;L[d+20>>2]=s;L[d+16>>2]=g;L[d+44>>2]=i;j=y+4624|0;H[j>>2]=0;c=H[d+72>>2];L[y+536>>2]=v;L[y+532>>2]=s;L[y+528>>2]=g;H[j>>2]=1;L[y+544>>2]=L[d+36>>2];L[y+548>>2]=L[d+40>>2];g=L[d+44>>2];H[y+580>>2]=o-5>>>0<2?c:-1;H[y+540>>2]=0;L[y+552>>2]=g;c=H[b+92>>2];b=f+24|0;Ra[H[(n<<2)+118528>>2]](c,0,y,b)|0;Ra[H[(o<<2)+118528>>2]](H[e+92>>2],1,y,b)|0;b=H[H[y+7188>>2]>>2];c=b+(J[f+24>>1]<<5)|0;b=b+(J[f+26>>1]<<5)|0;g=Rx(c,b);e=f+16|0;L[e+4>>2]=1;L[e>>2]=1;Sx(f,e,c,b);e=H[f+4>>2];c=H[f>>2];G[d+76>>1]=J[f+24>>1];b=J[f+26>>1];L[d+88>>2]=g;ba=d,ca=k7(c,e),H[ba+80>>2]=ca;H[d+84>>2]=Qa;G[d+78>>1]=b}Oa=f+192|0;b=r+1|0;if(t>>>0<=b>>>0){g=L[d+28>>2];break q}g=L[d+28>>2];e=H[a+28>>2];n=H[e+(b<<2)>>2];c=g>L[n+28>>2];if(!c){break q}h=r;j=h;w:{if(!c){break w}while(1){H[(h<<2)+e>>2]=n;e=H[a+28>>2];j=b;b=b+1|0;if((t|0)==(b|0)){break w}h=j;n=H[(b<<2)+e>>2];if(L[n+28>>2]>2]=d;r=r-1|0;break p}if(g>O(1)){break b}x:{if(!(g<=O(3.4028234663852886e38))|!I[d+69|0]){break x}f=H[a+40>>2];if(!H[f+120>>2]){break x}H[k>>2]=1065353216;H[k+4>>2]=1065353216;H[k+8>>2]=1065353216;H[k+12>>2]=1065353216;L[k+16>>2]=L[d+16>>2];L[k+20>>2]=L[d+20>>2];L[k+24>>2]=L[d+24>>2];q=L[d+80>>2];L[k+32>>2]=q;i=L[d+84>>2];L[k+36>>2]=i;b=J[d+76>>1];G[k+44>>1]=b;c=J[d+78>>1];H[k+40>>2]=256;G[k+46>>1]=c;L[k+48>>2]=L[d+36>>2];L[k+52>>2]=L[d+40>>2];L[k+56>>2]=L[d+44>>2];L[k+80>>2]=L[d+16>>2];L[k+84>>2]=L[d+20>>2];g=L[d+24>>2];L[k+108>>2]=q;G[k+102>>1]=c;G[k+100>>1]=b;L[k+88>>2]=g;L[k+104>>2]=i;g=L[d+88>>2];H[k+96>>2]=0;H[k+60>>2]=0;L[k+92>>2]=g;H[k+72>>2]=0;H[k+76>>2]=2139095039;H[k+64>>2]=0;H[k+68>>2]=0;c=H[d+8>>2];l=H[c+92>>2];b=H[d+12>>2];o=H[b+92>>2];n=H[c+96>>2];h=H[b+96>>2];j=H[d>>2];e=H[d+4>>2];m=Oa-112|0;Oa=m;if(H[f+120>>2]){b=H[33791];H[m+44>>2]=b+o;H[m+40>>2]=b+l;c=H[33792];b=H[33793];H[m+36>>2]=h+(e?c:b);H[m+32>>2]=n+(j?c:b);BN(m,l,n,(j|0)!=0);b=H[m+8>>2];H[m+52>>2]=H[m+4>>2];H[m+56>>2]=b;b=H[m+16>>2];H[m+60>>2]=H[m+12>>2];H[m+64>>2]=b;b=H[m+24>>2];H[m+68>>2]=H[m+20>>2];H[m+72>>2]=b;L[m+48>>2]=L[m>>2];BN(m,o,h,(e|0)!=0);L[m+76>>2]=L[m>>2];b=H[m+8>>2];H[m+80>>2]=H[m+4>>2];H[m+84>>2]=b;b=H[m+16>>2];H[m+88>>2]=H[m+12>>2];H[m+92>>2]=b;b=H[m+24>>2];H[m+96>>2]=H[m+20>>2];H[m+100>>2]=b;H[m+108>>2]=aa;H[m+104>>2]=1;b=H[f+120>>2];Ra[H[H[b>>2]>>2]](b,m+32|0,1)}Oa=m+112|0;if(I[k+43|0]&32){L[d+100>>2]=L[k+76>>2]}L[d+80>>2]=L[k+108>>2];L[d+84>>2]=L[k+104>>2];L[d+88>>2]=L[k+92>>2];L[d+36>>2]=L[k+48>>2];L[d+40>>2]=L[k+52>>2];L[d+44>>2]=L[k+56>>2];L[d+16>>2]=L[k+80>>2];L[d+20>>2]=L[k+84>>2];L[d+24>>2]=L[k+88>>2]}b=H[d>>2];if(!b|I[H[b+32>>2]+34|0]){c=!b}else{c=1}b=H[d+4>>2];if(!b|I[H[b+32>>2]+34|0]){b=!b}else{b=1}if(!(!b|(!(L[d+28>>2]<=O(1))|c^1))){F[d+68|0]=1}n=I[a+84|0];h=0;g=O(0);s=O(0);p=O(0);M=O(0);K=O(0);b=0;o=Oa-16|0;Oa=o;l=H[d+4>>2];j=H[d+12>>2];e=H[d+8>>2];y:{z:{A:{f=H[d>>2];if(!(I[H[f+32>>2]+34|0]?0:f)){if(I[H[l+32>>2]+34|0]|!l){break y}if(!f){break A}}if(L[H[f+36>>2]+124>>2]!=O(0)){break z}if(l){break A}break y}if(L[H[l+36>>2]+124>>2]==O(0)){break y}}E=L[d+28>>2];if(!(E>2]+41|0]&8|L[d+100>>2]==O(0)){break y}x=L[d+48>>2];L[o>>2]=L[d+16>>2];L[o+4>>2]=L[d+20>>2];L[o+8>>2]=L[d+24>>2];w=L[o>>2];B:{if((H[o>>2]&2139095040)==2139095040){break B}q=L[o+4>>2];if((H[o+4>>2]&2139095040)==2139095040){break B}i=L[o+8>>2];if((H[o+8>>2]&2139095040)==2139095040){break B}h=O(P(O(O(W(O(O(i*i)+O(O(w*w)+O(q*q)))))+O(-1))))>2]+34|0]|!f){break y}rN(f,E);sN(f,E,R,1);c=H[f+32>>2];H[c+48>>2]=H[c+48>>2]+1;break y}c=H[d+52>>2];if(f){h=H[f+36>>2];v=L[h+80>>2];w=O(L[e+56>>2]-L[h+20>>2]);g=O(L[e+52>>2]-L[h+16>>2]);q=L[h+84>>2];p=O(O(O(v*w)-O(g*q))+L[h+72>>2]);i=L[h+88>>2];u=O(i*g);g=O(L[e+60>>2]-L[h+24>>2]);K=O(L[h+68>>2]+O(u-O(g*v)));M=O(L[h+124>>2]*O(I[c+44|0]));g=O(L[h+64>>2]+O(O(q*g)-O(w*i)))}u=O(0);S=O(0);A=O(0);if(l){e=H[l+36>>2];u=L[e+80>>2];v=O(L[j+56>>2]-L[e+20>>2]);i=O(L[j+52>>2]-L[e+16>>2]);w=L[e+84>>2];S=O(O(O(u*v)-O(i*w))+L[e+72>>2]);q=L[e+88>>2];s=O(q*i);i=O(L[j+60>>2]-L[e+24>>2]);u=O(L[e+68>>2]+O(s-O(i*u)));A=O(L[e+124>>2]*O(I[c+45|0]));s=O(L[e+64>>2]+O(O(w*i)-O(v*q)))}X=O(S-p);p=L[o+8>>2];s=O(s-g);S=L[o>>2];u=O(u-K);v=L[o+4>>2];U=O(O(X*p)+O(O(s*S)+O(u*v)));g=O(U-O(x*O(10)));C:{if(!(g>2]);i=O(M+A);g=O(O(O(L[d+88>>2]+O(1))*g)/i);x=g>2];q=L[d+84>>2];p=O(X-O(U*p));g=O(s-O(U*S));s=O(u-O(U*v));u=O(W(O(O(p*p)+O(O(g*g)+O(s*s)))));if(u>O(0)){v=O(O(1)/u);p=O(p*v);s=O(s*v);g=O(g*v)}i=O(u/i);i=i<=O(P(O(q*x)))?i:O(w*O(-x));p=O(O(i*p)+O(x*L[d+24>>2]));g=O(O(i*g)+O(x*L[d+16>>2]));i=O(O(i*s)+O(x*L[d+20>>2]));break D}g=O(x*L[d+16>>2]);p=O(x*L[d+24>>2]);i=O(x*L[d+20>>2])}if(!(x>2]=-x;if(!(!(I[H[f+32>>2]+34|0]?f:0)&(!l|!I[H[l+32>>2]+34|0]))){H[d+32>>2]=0;break C}if(f){c=H[f+36>>2];L[c+64>>2]=O(M*g)+L[c+64>>2];L[c+72>>2]=O(M*p)+L[c+72>>2];L[c+68>>2]=O(M*i)+L[c+68>>2];tN(f)}if(!l){break C}c=H[l+36>>2];L[c+64>>2]=L[c+64>>2]-O(A*g);L[c+72>>2]=L[c+72>>2]-O(A*p);L[c+68>>2]=L[c+68>>2]-O(A*i);tN(l)}if(!(I[H[f+32>>2]+34|0]|!f)){rN(f,E);sN(f,E,R,n&L[d+32>>2]==O(0));c=H[f+32>>2];H[c+48>>2]=H[c+48>>2]+1}if(!(I[H[l+32>>2]+34|0]|!l)){rN(l,E);sN(l,E,R,n&L[d+32>>2]==O(0));c=H[l+32>>2];H[c+48>>2]=H[c+48>>2]+1}g=L[d+32>>2];E:{if(!(g>O(0))){break E}F:{if(I[H[f+32>>2]+34|0]|!f){break F}rN(f,g);if(!n){break F}sN(f,L[d+32>>2],R,1)}if(I[H[l+32>>2]+34|0]|!l){break E}rN(l,L[d+32>>2]);if(!n){break E}sN(l,L[d+32>>2],R,1)}if(f){G[H[f+32>>2]+34>>1]=257}if(!l){break y}G[H[l+32>>2]+34>>1]=257}Oa=o+16|0;g=L[d+28>>2];G:{if(!(g>2]=0;g=O(0);if(!b){break p}}c=H[a+76>>2];b=Q?J[c+(B<<1)>>1]:0;H:{if(!(g>O(0))){break H}e=J[c+(Q<<1)>>1];if(e>>>0>b>>>0){while(1){c=H[H[a+72>>2]+(b<<2)>>2];if(!I[c+34|0]){j=H[c+40>>2];c=H[j+36>>2];if(L[c+124>>2]!=O(0)){q=L[c+20>>2];i=L[c+24>>2];w=O(O(1)-g);L[j+16>>2]=O(w*L[j+16>>2])+O(g*L[c+16>>2]);L[j+24>>2]=O(w*L[j+24>>2])+O(g*i);L[j+20>>2]=O(w*L[j+20>>2])+O(g*q);E5(k,g,j,c);L[j>>2]=L[k>>2];L[j+4>>2]=L[k+4>>2];L[j+8>>2]=L[k+8>>2];L[j+12>>2]=L[k+12>>2];g=L[d+28>>2]}c=H[j+32>>2];H[c+48>>2]=H[c+48>>2]+1;i=O(L[c+36>>2]*O(O(1)-g));L[c+36>>2]=i>O(.009999999776482582)?i:O(.009999999776482582)}b=b+1|0;if((e|0)!=(b|0)){continue}break}}R=O(R-O(R*g));b=r+1|0;if(b>>>0>=t>>>0){break H}j=H[a+28>>2];b=H[j+(b<<2)>>2];i=O(O(1)/O(O(1)-g));L[b+28>>2]=i*O(L[b+28>>2]-g);b=r+2|0;if((t|0)==(b|0)){break H}if(t-r&1){b=H[j+(b<<2)>>2];L[b+28>>2]=i*O(L[b+28>>2]-L[d+28>>2]);b=r+3|0}if((r|0)==(V|0)){break H}while(1){e=j+(b<<2)|0;c=H[e>>2];L[c+28>>2]=i*O(L[c+28>>2]-L[d+28>>2]);c=H[e+4>>2];L[c+28>>2]=i*O(L[c+28>>2]-L[d+28>>2]);b=b+2|0;if((t|0)!=(b|0)){continue}break}}I:{if(I[a+85|0]|I[H[d+52>>2]+41|0]&8|L[d+100>>2]==O(0)){break I}b=r+1|0;if(t>>>0<=b>>>0){break I}l=H[d+4>>2];o=H[d>>2];c=r;while(1){n=H[H[a+28>>2]+(b<<2)>>2];h=H[n>>2];J:{if(!h){break J}j=H[n+4>>2];if(!j){break J}K:{if((h|0)==(o|0)&(j|0)!=(l|0)){break K}e=(j|0)!=(o|0);if(!e&(h|0)!=(l|0)|e&(h|0)==(l|0)){break K}if((j|0)!=(l|0)){break J}if((h|0)!=(o|0)){break K}break J}if(H[n+92>>2]==(z|0)){break J}H[n+92>>2]=z;g=L[n+28>>2];i=pN(n,Y);if(g>i){e=b;if(c>>>0<=r>>>0){break J}while(1){n=H[a+28>>2];h=n+(c<<2)|0;j=H[h>>2];if(!(i>2])){break J}e=e<<2;H[h>>2]=H[e+n>>2];H[e+H[a+28>>2]>>2]=j;e=c;c=c-1|0;if(r>>>0>>0){continue}break}break J}if(!(g>>0<=c>>>0){break L}n=b;j=H[a+28>>2];e=j+(c<<2)|0;h=H[e>>2];if(!(i>L[h+28>>2])){break L}while(1){d=e;e=n<<2;H[d>>2]=H[e+j>>2];H[e+H[a+28>>2]>>2]=h;C=-1;e=c+1|0;if((e|0)==(t|0)){break L}n=c;j=H[a+28>>2];c=e;e=j+(c<<2)|0;h=H[e>>2];if(i>L[h+28>>2]){continue}break}}b=b+C|0}c=b;b=b+1|0;if(t>>>0>b>>>0){continue}break}}$=$+1|0;z=z+1|0}r=r+1|0;if(t>>>0>r>>>0){continue}break}}r=t;Q=Q+1|0;if((_|0)!=(Q|0)){continue}break}}b=H[a+80>>2];H[b>>2]=H[b>>2]+$;a=H[H[a+36>>2]+304>>2];H[y>>2]=H[a>>2];H[a>>2]=y;Oa=k+128|0}function Hw(a,b){var c=0,d=O(0),e=0,f=O(0),g=0,h=O(0),i=O(0),j=O(0),k=0,l=O(0),m=O(0),n=0,o=O(0),p=O(0),q=O(0),r=0,s=0,t=O(0),u=O(0),v=0,w=O(0),x=O(0),y=0,z=O(0),A=O(0),B=O(0),C=O(0),D=0,E=O(0),F=O(0),G=O(0),J=O(0),K=O(0),M=0,P=O(0),Q=O(0),R=O(0),S=O(0),T=O(0),U=0,V=O(0),W=O(0),X=O(0),Y=O(0),Z=0,_=0,$=O(0),aa=O(0),ba=O(0),ca=O(0),da=0,ea=0,fa=0,ga=0,ha=O(0),ia=O(0),ja=O(0),ka=O(0),la=O(0),ma=O(0),na=O(0),oa=O(0),pa=O(0),qa=O(0),ra=O(0),sa=O(0),ta=O(0),ua=O(0),va=O(0),wa=O(0),xa=O(0);n=Oa-160|0;Oa=n;M=H[b+336>>2]-1|0;if(M){ea=H[b+344>>2];fa=H[b+340>>2];ga=H[b+332>>2];while(1){y=N(M,160)+fa|0;r=N(M,80)+ea|0;s=I[r+76|0];if(s){c=H[a+348>>2]+N(M,112)|0;D=c- -64|0;k=0;v=H[a+384>>2]+N(M,76)|0;while(1){z=L[c+60>>2];A=L[c+48>>2];w=L[c+36>>2];p=L[D>>2];u=L[c+52>>2];q=L[c+40>>2];E=L[c+68>>2];R=L[c+56>>2];F=L[c+44>>2];i=L[c+8>>2];B=L[c+4>>2];x=L[c>>2];K=L[c+96>>2];P=L[c+72>>2];G=L[c+84>>2];C=L[c+20>>2];o=L[c+16>>2];t=L[c+12>>2];J=L[c+100>>2];Q=L[c+76>>2];S=L[c+88>>2];e=y+(k<<5)|0;X=L[c+32>>2];g=v+N(k,24)|0;d=L[g+20>>2];Y=L[c+24>>2];f=L[g+12>>2];T=L[c+28>>2];j=L[g+16>>2];l=L[g>>2];h=L[g+4>>2];m=L[g+8>>2];L[e+24>>2]=O(O(X*d)+O(O(Y*f)+O(T*j)))+O(O(O(l*L[c+80>>2])+O(h*L[c+92>>2]))+O(m*L[c+104>>2]));L[e+20>>2]=O(O(C*d)+O(O(t*f)+O(o*j)))+O(O(O(l*Q)+O(h*S))+O(m*J));L[e+16>>2]=O(O(i*d)+O(O(x*f)+O(B*j)))+O(O(O(l*P)+O(h*G))+O(m*K));L[e+8>>2]=O(O(O(l*i)+O(h*C))+O(m*X))+O(O(O(f*F)+O(j*R))+O(d*E));L[e+4>>2]=O(O(O(l*B)+O(h*o))+O(m*T))+O(O(O(f*q)+O(j*u))+O(d*p));L[e>>2]=O(O(O(l*x)+O(h*t))+O(m*Y))+O(O(O(f*w)+O(j*A))+O(d*z));k=k+1|0;if((s|0)!=(k|0)){continue}break}}e=n+48|0;s=H[b+236>>2]+N(M,112)|0;_=H[b+248>>2]+N(M,36)|0;D=H[b+284>>2]+N(M,96)|0;v=H[b+272>>2]+N(M,76)|0;d=O(0);o=O(0);f=O(0);l=O(0);j=O(0);h=O(0);m=O(0);t=O(0);z=O(0);A=O(0);x=O(0);w=O(0);p=O(0);u=O(0);i=O(0);B=O(0);C=O(0);E=O(0);k=0;R=O(0);F=O(0);c=Oa-352|0;Oa=c;a:{b:{c:{d:{da=(M<<5)+ga|0;switch(I[H[da+20>>2]+270|0]){case 2:break c;case 0:case 1:break d;default:break b}}d=O(O(O(L[v+20>>2]*L[y+8>>2])+O(O(L[v+12>>2]*L[y>>2])+O(L[v+16>>2]*L[y+4>>2])))+O(O(L[v+8>>2]*L[y+24>>2])+O(O(L[v>>2]*L[y+16>>2])+O(L[v+4>>2]*L[y+20>>2]))));d=d>O(9999999747378752e-21)?O(O(1)/d):O(0);L[_>>2]=d;f=L[y+20>>2];j=L[y+24>>2];m=L[y>>2];i=L[y+4>>2];h=L[y+8>>2];B=L[y+16>>2];H[D+28>>2]=0;H[D+12>>2]=0;l=O(d*j);L[D+24>>2]=l;o=O(d*f);L[D+20>>2]=o;F=O(d*B);L[D+16>>2]=F;h=O(h*d);L[D+8>>2]=h;q=O(i*d);L[D+4>>2]=q;d=O(m*d);L[D>>2]=d;j=L[y+20>>2];K=L[y+8>>2];i=L[y>>2];P=L[y+4>>2];x=L[y+16>>2];f=L[y+24>>2];L[e+104>>2]=l*f;L[e+100>>2]=o*f;L[e+96>>2]=F*f;L[e+92>>2]=l*j;L[e+88>>2]=o*j;L[e+84>>2]=F*j;L[e+80>>2]=l*x;m=O(d*P);L[e+48>>2]=m;z=O(h*i);L[e+44>>2]=z;A=O(q*i);L[e+40>>2]=A;t=O(d*i);L[e+36>>2]=t;w=O(h*f);L[e+32>>2]=w;p=O(q*f);L[e+28>>2]=p;f=O(d*f);L[e+24>>2]=f;u=O(h*j);L[e+20>>2]=u;i=O(q*j);L[e+16>>2]=i;l=O(d*j);L[e+12>>2]=l;B=O(h*x);L[e+8>>2]=B;C=O(q*x);L[e+4>>2]=C;E=O(d*x);L[e>>2]=E;R=O(o*x);j=O(F*x);x=O(h*K);F=O(q*K);o=O(d*K);d=O(h*P);h=O(q*P);break a}H[c+344>>2]=1065353216;H[c+328>>2]=1065353216;H[c+332>>2]=0;H[c+336>>2]=0;H[c+340>>2]=0;H[c+320>>2]=0;H[c+324>>2]=0;H[c+312>>2]=1065353216;H[c+316>>2]=0;u=O(1);d=O(1);j=O(1);f=O(1);r=I[r+76|0];if(r){while(1){Z=(c+312|0)+N(k,12)|0;g=y+(k<<5)|0;d=L[g+16>>2];f=L[g+8>>2];j=L[g+4>>2];l=L[g>>2];h=L[g+24>>2];m=L[g+20>>2];g=0;while(1){U=v+N(g,24)|0;L[Z+(g<<2)>>2]=O(O(L[U+20>>2]*f)+O(O(L[U+12>>2]*l)+O(L[U+16>>2]*j)))+O(O(L[U+8>>2]*h)+O(O(L[U>>2]*d)+O(L[U+4>>2]*m)));g=g+1|0;if((r|0)!=(g|0)){continue}break}k=k+1|0;if((k|0)!=(r|0)){continue}break}l=L[c+340>>2];A=L[c+332>>2];j=L[c+344>>2];f=L[c+328>>2];m=L[c+316>>2];h=L[c+324>>2];o=L[c+336>>2];p=L[c+320>>2];d=L[c+312>>2]}i=O(1);B=O(1);x=O(O(h*l)-O(o*f));C=O(O(f*j)-O(l*A));A=O(O(A*o)-O(j*h));q=O(O(x*p)+O(O(C*d)+O(A*m)));if(q!=O(0)){z=O(O(d*f)-O(h*m));f=O(O(1)/q);B=O(z*f);w=O(O(O(o*m)-O(d*l))*f);t=O(x*f);u=O(C*f);z=O(A*f);i=O(O(O(j*d)-O(p*o))*f)}L[c+304>>2]=B;L[c+300>>2]=w;L[c+292>>2]=w;L[c+288>>2]=i;L[c+296>>2]=t;L[c+284>>2]=z;L[c+280>>2]=t;L[c+276>>2]=z;L[c+272>>2]=u;e:{if(!r){break e}v=r<<2;g=0;if((r|0)!=1){U=r&254;k=0;while(1){Z=N(g,12);R6(Z+_|0,Z+(c+272|0)|0,v);Z=N(g|1,12);R6(Z+_|0,Z+(c+272|0)|0,v);g=g+2|0;k=k+2|0;if((U|0)!=(k|0)){continue}break}}if(r&1){g=N(g,12);R6(g+_|0,g+(c+272|0)|0,v)}if(!r){break e}k=0;while(1){d=O(0);g=0;h=O(0);l=O(0);j=O(0);f=O(0);m=O(0);while(1){i=L[(_+N(k,12)|0)+(g<<2)>>2];v=y+(g<<5)|0;d=O(d+O(i*L[v+24>>2]));h=O(h+O(i*L[v+20>>2]));l=O(l+O(i*L[v+16>>2]));j=O(j+O(i*L[v+8>>2]));f=O(f+O(i*L[v+4>>2]));m=O(m+O(i*L[v>>2]));g=g+1|0;if((r|0)!=(g|0)){continue}break}g=(k<<5)+D|0;H[g+28>>2]=0;L[g+16>>2]=l;H[g+12>>2]=0;L[g+8>>2]=j;L[g+4>>2]=f;L[g>>2]=m;L[g+24>>2]=d;L[g+20>>2]=h;k=k+1|0;if((r|0)!=(k|0)){continue}break}if(!r){break e}k=0;while(1){g=(c+192|0)+(k<<2)|0;v=y+(k<<5)|0;L[g>>2]=L[v+16>>2];L[g+12>>2]=L[v+20>>2];L[g+24>>2]=L[v+24>>2];L[g+36>>2]=L[v>>2];L[g+48>>2]=L[v+4>>2];L[g+60>>2]=L[v+8>>2];k=k+1|0;if((r|0)!=(k|0)){continue}break}}H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;H[c>>2]=0;H[c+4>>2]=0;if(r){g=0;d=O(0);h=O(0);l=O(0);j=O(0);f=O(0);m=O(0);while(1){i=L[(c+192|0)+(g<<2)>>2];k=(g<<5)+D|0;l=O(O(i*L[k+16>>2])+l);j=O(O(i*L[k+8>>2])+j);f=O(O(i*L[k+4>>2])+f);m=O(O(i*L[k>>2])+m);d=O(O(i*L[k+24>>2])+d);h=O(O(i*L[k+20>>2])+h);g=g+1|0;if((r|0)!=(g|0)){continue}break}L[c+24>>2]=d;L[c+20>>2]=h;L[c+16>>2]=l;L[c+8>>2]=j;L[c+4>>2]=f;L[c>>2]=m}H[c+56>>2]=0;H[c+60>>2]=0;H[c+48>>2]=0;H[c+52>>2]=0;H[c+40>>2]=0;H[c+44>>2]=0;H[c+32>>2]=0;H[c+36>>2]=0;if(r){g=0;d=O(0);h=O(0);l=O(0);j=O(0);f=O(0);m=O(0);while(1){i=L[((g<<2)+c|0)+204>>2];k=(g<<5)+D|0;d=O(O(i*L[k+24>>2])+d);h=O(O(i*L[k+20>>2])+h);l=O(O(i*L[k+16>>2])+l);j=O(O(i*L[k+8>>2])+j);f=O(O(i*L[k+4>>2])+f);m=O(O(i*L[k>>2])+m);g=g+1|0;if((r|0)!=(g|0)){continue}break}L[c+56>>2]=d;L[c+52>>2]=h;L[c+48>>2]=l;L[c+40>>2]=j;L[c+36>>2]=f;L[c+32>>2]=m}H[c+88>>2]=0;H[c+92>>2]=0;H[c+80>>2]=0;H[c+84>>2]=0;H[c+72>>2]=0;H[c+76>>2]=0;H[c+64>>2]=0;H[c+68>>2]=0;if(r){g=0;d=O(0);h=O(0);l=O(0);j=O(0);f=O(0);m=O(0);while(1){i=L[((g<<2)+c|0)+216>>2];k=(g<<5)+D|0;d=O(O(i*L[k+24>>2])+d);h=O(O(i*L[k+20>>2])+h);l=O(O(i*L[k+16>>2])+l);j=O(O(i*L[k+8>>2])+j);f=O(O(i*L[k+4>>2])+f);m=O(O(i*L[k>>2])+m);g=g+1|0;if((r|0)!=(g|0)){continue}break}L[c+88>>2]=d;L[c+84>>2]=h;L[c+80>>2]=l;L[c+72>>2]=j;L[c+68>>2]=f;L[c+64>>2]=m}H[c+120>>2]=0;H[c+124>>2]=0;H[c+112>>2]=0;H[c+116>>2]=0;H[c+104>>2]=0;H[c+108>>2]=0;H[c+96>>2]=0;H[c+100>>2]=0;if(r){g=0;d=O(0);h=O(0);l=O(0);j=O(0);f=O(0);m=O(0);while(1){i=L[((g<<2)+c|0)+228>>2];k=(g<<5)+D|0;d=O(O(i*L[k+24>>2])+d);h=O(O(i*L[k+20>>2])+h);l=O(O(i*L[k+16>>2])+l);j=O(O(i*L[k+8>>2])+j);f=O(O(i*L[k+4>>2])+f);m=O(O(i*L[k>>2])+m);g=g+1|0;if((r|0)!=(g|0)){continue}break}L[c+120>>2]=d;L[c+116>>2]=h;L[c+112>>2]=l;L[c+104>>2]=j;L[c+100>>2]=f;L[c+96>>2]=m}H[c+152>>2]=0;H[c+156>>2]=0;H[c+144>>2]=0;H[c+148>>2]=0;H[c+136>>2]=0;H[c+140>>2]=0;H[c+128>>2]=0;H[c+132>>2]=0;if(r){g=0;d=O(0);h=O(0);l=O(0);j=O(0);f=O(0);m=O(0);while(1){i=L[((g<<2)+c|0)+240>>2];k=(g<<5)+D|0;d=O(O(i*L[k+24>>2])+d);h=O(O(i*L[k+20>>2])+h);l=O(O(i*L[k+16>>2])+l);j=O(O(i*L[k+8>>2])+j);f=O(O(i*L[k+4>>2])+f);m=O(O(i*L[k>>2])+m);g=g+1|0;if((r|0)!=(g|0)){continue}break}L[c+152>>2]=d;L[c+148>>2]=h;L[c+144>>2]=l;L[c+136>>2]=j;L[c+132>>2]=f;L[c+128>>2]=m}H[c+184>>2]=0;H[c+188>>2]=0;H[c+176>>2]=0;H[c+180>>2]=0;H[c+168>>2]=0;H[c+172>>2]=0;H[c+160>>2]=0;H[c+164>>2]=0;if(r){g=0;d=O(0);h=O(0);l=O(0);j=O(0);f=O(0);m=O(0);while(1){i=L[((g<<2)+c|0)+252>>2];k=(g<<5)+D|0;d=O(O(i*L[k+24>>2])+d);h=O(O(i*L[k+20>>2])+h);l=O(O(i*L[k+16>>2])+l);j=O(O(i*L[k+8>>2])+j);f=O(O(i*L[k+4>>2])+f);m=O(O(i*L[k>>2])+m);g=g+1|0;if((r|0)!=(g|0)){continue}break}L[c+184>>2]=d;L[c+180>>2]=h;L[c+176>>2]=l;L[c+168>>2]=j;L[c+164>>2]=f;L[c+160>>2]=m}i=L[c+36>>2];u=L[c+40>>2];p=L[c+68>>2];w=L[c+72>>2];A=L[c+100>>2];z=L[c+104>>2];h=L[c+132>>2];d=L[c+136>>2];F=L[c+164>>2];x=L[c+168>>2];R=L[c+20>>2];q=L[c+24>>2];g=H[c+48>>2];r=H[c+52>>2];K=L[c+56>>2];D=H[c+84>>2];k=H[c+80>>2];E=L[c>>2];C=L[c+4>>2];B=L[c+8>>2];l=L[c+32>>2];f=L[c+64>>2];t=L[c+96>>2];m=L[c+128>>2];o=L[c+160>>2];j=L[c+16>>2];L[e+104>>2]=L[c+88>>2];H[e+96>>2]=k;H[e+100>>2]=D;L[e+92>>2]=K;H[e+84>>2]=g;H[e+88>>2]=r;L[e+80>>2]=q;L[e+76>>2]=R;L[e+72>>2]=j;L[e+68>>2]=x;L[e- -64>>2]=F;L[e+60>>2]=o;L[e+56>>2]=d;L[e+52>>2]=h;L[e+48>>2]=m;L[e+44>>2]=z;L[e+40>>2]=A;L[e+36>>2]=t;L[e+32>>2]=w;L[e+28>>2]=p;L[e+24>>2]=f;L[e+20>>2]=u;L[e+16>>2]=i;L[e+12>>2]=l;L[e+8>>2]=B;L[e+4>>2]=C;L[e>>2]=E;break a}S6(e,0,108)}q=L[s+16>>2];K=L[s+20>>2];P=L[s+28>>2];G=L[s+32>>2];J=L[s+40>>2];Q=L[s+44>>2];S=L[s+48>>2];X=L[s+52>>2];Y=L[s+56>>2];T=L[s+60>>2];V=L[s- -64>>2];$=L[s+68>>2];ba=L[s+76>>2];ca=L[e+80>>2];aa=L[s+80>>2];W=L[e+84>>2];ha=L[s+84>>2];ia=L[e+88>>2];ja=L[s+88>>2];ka=L[e+92>>2];la=L[s+92>>2];ma=L[e+96>>2];na=L[s+96>>2];oa=L[e+100>>2];pa=L[s+100>>2];qa=L[e+104>>2];ra=L[s+104>>2];sa=L[s>>2];ta=L[s+4>>2];ua=L[s+8>>2];va=L[s+12>>2];wa=L[s+24>>2];xa=L[s+36>>2];L[e+72>>2]=L[s+72>>2]-j;L[e+36>>2]=xa-t;L[e+24>>2]=wa-f;L[e+12>>2]=va-l;L[e+8>>2]=ua-B;L[e+4>>2]=ta-C;L[e>>2]=sa-E;L[e+104>>2]=ra-qa;L[e+100>>2]=pa-oa;L[e+96>>2]=na-ma;L[e+92>>2]=la-ka;L[e+88>>2]=ja-ia;L[e+84>>2]=ha-W;L[e+80>>2]=aa-ca;L[e+76>>2]=ba-R;L[e+68>>2]=$-x;L[e- -64>>2]=V-F;L[e+60>>2]=T-o;L[e+56>>2]=Y-d;L[e+52>>2]=X-h;L[e+48>>2]=S-m;L[e+44>>2]=Q-z;L[e+40>>2]=J-A;L[e+32>>2]=G-w;L[e+28>>2]=P-p;L[e+20>>2]=K-u;L[e+16>>2]=q-i;Oa=c+352|0;d=L[y+128>>2];f=L[y+120>>2];j=L[y+124>>2];H[n+40>>2]=0;L[n+32>>2]=j;L[n+28>>2]=f;H[n+24>>2]=0;L[n+12>>2]=d;H[n+8>>2]=0;L[n+36>>2]=-f;L[n+20>>2]=-d;L[n+16>>2]=-j;Sv(n+8|0,e);c=H[b+236>>2]+N(H[da+24>>2],112)|0;L[c>>2]=L[n+48>>2]+L[c>>2];L[c+4>>2]=L[n+52>>2]+L[c+4>>2];L[c+8>>2]=L[n+56>>2]+L[c+8>>2];L[c+12>>2]=L[n+60>>2]+L[c+12>>2];L[c+16>>2]=L[n+64>>2]+L[c+16>>2];L[c+20>>2]=L[n+68>>2]+L[c+20>>2];L[c+24>>2]=L[n+72>>2]+L[c+24>>2];L[c+28>>2]=L[n+76>>2]+L[c+28>>2];L[c+32>>2]=L[n+80>>2]+L[c+32>>2];L[c+36>>2]=L[n+84>>2]+L[c+36>>2];L[c+40>>2]=L[n+88>>2]+L[c+40>>2];L[c+44>>2]=L[n+92>>2]+L[c+44>>2];L[c+48>>2]=L[n+96>>2]+L[c+48>>2];L[c+52>>2]=L[n+100>>2]+L[c+52>>2];L[c+56>>2]=L[n+104>>2]+L[c+56>>2];L[c+60>>2]=L[n+108>>2]+L[c+60>>2];e=c- -64|0;L[e>>2]=L[n+112>>2]+L[e>>2];L[c+68>>2]=L[n+116>>2]+L[c+68>>2];L[c+72>>2]=L[n+120>>2]+L[c+72>>2];L[c+76>>2]=L[n+124>>2]+L[c+76>>2];L[c+80>>2]=L[n+128>>2]+L[c+80>>2];L[c+84>>2]=L[n+132>>2]+L[c+84>>2];L[c+88>>2]=L[n+136>>2]+L[c+88>>2];L[c+92>>2]=L[n+140>>2]+L[c+92>>2];L[c+96>>2]=L[n+144>>2]+L[c+96>>2];L[c+100>>2]=L[n+148>>2]+L[c+100>>2];L[c+104>>2]=L[n+152>>2]+L[c+104>>2];M=M-1|0;if(M){continue}break}}a=b+412|0;i=O(0);B=O(0);x=O(0);R=O(1);b=H[b+236>>2];X=O(O(L[b+56>>2]+L[b- -64>>2])*O(.5));z=O(O(L[b+44>>2]+L[b+60>>2])*O(.5));Y=O(O(L[b+40>>2]+L[b+48>>2])*O(.5));d=L[b+36>>2];ba=O(O(d+d)*O(.5));d=L[b+68>>2];ca=O(O(d+d)*O(.5));d=L[b+52>>2];A=O(O(d+d)*O(.5));d=L[b+32>>2];f=L[b+28>>2];p=L[b+20>>2];u=L[b+16>>2];q=L[b+24>>2];E=L[b+12>>2];G=L[b+8>>2];J=L[b+4>>2];Q=L[b>>2];F=O(1);C=O(0);K=O(1);P=O(1);j=O(O(L[b+76>>2]+L[b+84>>2])*O(.5));m=O(O(L[b+92>>2]+L[b+100>>2])*O(.5));l=O(O(L[b+80>>2]+L[b+96>>2])*O(.5));h=L[b+88>>2];h=O(O(h+h)*O(.5));w=O(O(j*m)-O(l*h));o=L[b+104>>2];t=O(O(o+o)*O(.5));S=O(O(h*t)-O(m*m));o=L[b+72>>2];o=O(O(o+o)*O(.5));T=O(O(m*l)-O(t*j));V=O(O(w*l)+O(O(S*o)+O(j*T)));if(V!=O(0)){W=O(O(o*h)+O(j*O(-j)));h=O(O(1)/V);P=O(W*h);x=O(O(O(l*j)+O(o*O(-m)))*h);F=O(S*h);C=O(T*h);K=O(O(O(t*o)-O(l*l))*h);B=O(w*h)}h=O(-Q);j=O(O(O(h*B)-O(x*E))-O(q*P));l=O(O(O(h*F)-O(C*E))-O(q*B));h=O(O(O(h*C)-O(K*E))-O(q*x));T=O(Y+O(O(j*f)+O(O(l*J)+O(u*h))));t=O(-J);m=O(O(O(t*B)-O(x*u))-O(f*P));o=O(O(O(t*F)-O(C*u))-O(f*B));t=O(O(O(t*C)-O(K*u))-O(f*x));V=O(X+O(O(m*d)+O(O(o*G)+O(p*t))));S=O(z+O(O(j*d)+O(O(l*G)+O(p*h))));$=O(A+O(O(m*f)+O(O(o*J)+O(u*t))));aa=O(O(T*V)-O(S*$));W=z;w=O(-G);z=O(O(O(w*B)-O(x*p))-O(d*P));A=O(O(O(w*F)-O(C*p))-O(d*B));w=O(O(O(w*C)-O(K*p))-O(d*x));W=O(W+O(O(z*q)+O(O(A*Q)+O(E*w))));G=O(ca+O(O(z*d)+O(O(A*G)+O(p*w))));d=O(X+O(O(z*f)+O(O(A*J)+O(u*w))));J=O(O($*G)-O(V*d));p=O(ba+O(O(j*q)+O(O(l*Q)+O(E*h))));f=O(Y+O(O(m*q)+O(O(o*Q)+O(E*t))));q=O(O(d*S)-O(G*T));d=O(O(aa*W)+O(O(J*p)+O(f*q)));f:{if(d==O(0)){p=O(1);f=O(0);u=O(1);d=O(0);break f}d=O(O(1)/d);u=O(O(O(p*$)-O(T*f))*d);f=O(O(O(S*f)-O(p*V))*d);p=O(O(O(G*p)-O(W*S))*d);i=O(q*d);R=O(J*d);d=O(aa*d)}L[a+72>>2]=R;L[a+104>>2]=u;L[a+100>>2]=f;L[a+96>>2]=d;L[a+92>>2]=f;L[a+88>>2]=p;L[a+84>>2]=i;L[a+80>>2]=d;L[a+76>>2]=i;q=O(O(u*z)+O(O(d*j)+O(m*f)));L[a+32>>2]=q;E=O(O(u*w)+O(O(d*h)+O(t*f)));L[a+28>>2]=E;u=O(O(u*A)+O(O(d*l)+O(o*f)));L[a+24>>2]=u;G=O(O(f*z)+O(O(i*j)+O(m*p)));L[a+20>>2]=G;J=O(O(f*w)+O(O(i*h)+O(t*p)));L[a+16>>2]=J;f=O(O(f*A)+O(O(i*l)+O(o*p)));L[a+12>>2]=f;p=O(O(d*z)+O(O(R*j)+O(m*i)));L[a+8>>2]=p;Q=O(O(d*w)+O(O(R*h)+O(t*i)));L[a+4>>2]=Q;d=O(O(d*A)+O(O(R*l)+O(o*i)));L[a>>2]=d;L[a+68>>2]=P+O(O(z*q)+O(O(j*p)+O(m*G)));L[a- -64>>2]=x+O(O(w*q)+O(O(h*p)+O(t*G)));L[a+60>>2]=B+O(O(A*q)+O(O(l*p)+O(o*G)));L[a+56>>2]=x+O(O(z*E)+O(O(j*Q)+O(m*J)));L[a+52>>2]=K+O(O(w*E)+O(O(h*Q)+O(t*J)));L[a+48>>2]=C+O(O(A*E)+O(O(l*Q)+O(o*J)));L[a+44>>2]=B+O(O(z*u)+O(O(j*d)+O(m*f)));L[a+40>>2]=C+O(O(w*u)+O(O(h*d)+O(t*f)));L[a+36>>2]=F+O(O(A*u)+O(O(l*d)+O(o*f)));Oa=n+160|0}function fu(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=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=0,y=O(0),z=O(0),A=O(0),B=0,C=0,D=O(0),E=O(0),G=O(0),K=O(0),M=O(0),Q=O(0),R=O(0),S=O(0),T=0,U=O(0),V=O(0),X=O(0),Y=O(0),Z=O(0),_=O(0),$=O(0),aa=O(0),ba=O(0),ca=O(0),da=O(0),ea=0,fa=0,ga=0,ha=O(0),ia=O(0),ja=O(0),ka=O(0),la=O(0),ma=O(0),na=O(0),oa=0;h=Oa-8528|0;Oa=h;x=H[b+32>>2];f=a;k=L[f+8>>2];K=L[b+8>>2];R=L[b+12>>2];A=L[b+4>>2];H[h+300>>2]=0;L[h+296>>2]=R;L[h+292>>2]=K;L[h+288>>2]=A;B=b+16|0;a=H[B>>2];T=H[B+4>>2];C=H[b+28>>2];H[h+280>>2]=H[b+24>>2];H[h+284>>2]=C;H[h+272>>2]=a;H[h+276>>2]=T;l=L[c>>2];m=L[d+4>>2];i=L[d+12>>2];s=L[c+8>>2];w=L[c+12>>2];n=L[d+8>>2];o=L[d>>2];p=L[c+4>>2];j=O(O(l*m)+O(O(O(i*s)-O(w*n))-O(o*p)));u=O(O(s*o)+O(O(O(i*p)-O(w*m))-O(n*l)));D=O(u+u);t=O(j*D);r=O(O(n*s)+O(O(m*p)+O(O(i*w)+O(o*l))));l=O(O(p*n)+O(O(O(i*l)-O(w*o))-O(m*s)));q=O(l+l);s=O(r*q);M=O(t-s);w=O(j*q);p=O(r*D);Q=O(w+p);E=O(s+t);s=O(q*u);U=O(j+j);r=O(r*U);V=O(s-r);X=O(w-p);Y=O(s+r);s=O(L[c+16>>2]-L[d+16>>2]);t=O(s+s);s=O(L[c+20>>2]-L[d+20>>2]);z=O(s+s);s=O(L[c+24>>2]-L[d+24>>2]);y=O(s+s);s=O(O(O(O(-o)*t)-O(z*m))-O(n*y));w=O(O(i*i)+O(-.5));p=O(O(O(y*w)+O(i*O(O(m*t)-O(o*z))))-O(n*s));r=O(O(O(z*w)+O(i*O(O(o*y)-O(n*t))))-O(m*s));m=O(O(O(t*w)+O(i*O(O(n*z)-O(m*y))))-O(o*s));i=O(O(1)-O(l*q));n=O(u*D);o=O(i-n);q=i;i=O(j*U);j=O(q-i);n=O(O(O(1)-n)-i);T=x+16|0;a=0;a:{if(L[b+4>>2]!=O(1)){break a}a=0;if(L[b+8>>2]!=O(1)){break a}a=L[b+12>>2]==O(1)}F[h+368|0]=0;H[h+360>>2]=0;H[h+364>>2]=0;H[h+352>>2]=0;H[h+356>>2]=0;H[h+344>>2]=0;H[h+348>>2]=0;H[h+336>>2]=0;H[h+340>>2]=0;H[h+480>>2]=T;H[h+488>>2]=H[x+56>>2]+N(I[x+55|0],20);F[h+492|0]=I[x+54|0];i=O(A*L[x+68>>2]);u=O(K*L[x+72>>2]);i=i<=u?i:u;u=O(R*L[x+76>>2]);i=i<=u?i:u;L[h+360>>2]=i*O(.02500000037252903);L[h+352>>2]=i*O(.10000000149011612);L[h+356>>2]=i*O(.05000000074505806);T=h+336|0;CU(h+288|0,h+272|0,h+384|0,h+432|0,T,a);H[h+484>>2]=H[x+60>>2];H[h+252>>2]=0;H[h+256>>2]=0;H[h+236>>2]=0;L[h+184>>2]=p;i=O(k*O(0));o=O(O(o*i)+O(O(X*k)+O(i*E)));L[h+248>>2]=p-o;L[h+180>>2]=r;j=O(O(M*i)+O(O(Y*k)+O(i*j)));L[h+244>>2]=r-j;L[h+232>>2]=p+o;L[h+228>>2]=r+j;H[h+200>>2]=0;H[h+204>>2]=4;H[h+188>>2]=0;F[h+208|0]=1;H[h+192>>2]=0;H[h+196>>2]=0;L[h+176>>2]=m;i=O(O(Q*i)+O(O(n*k)+O(i*V)));L[h+240>>2]=m-i;L[h+224>>2]=m+i;H[h>>2]=125948;H[h+4>>2]=h+176;H[h+168>>2]=126016;H[h+172>>2]=T;H[h+156>>2]=0;L[h+152>>2]=p-L[h+344>>2];L[h+148>>2]=r-L[h+340>>2];L[h+144>>2]=m-L[h+336>>2];H[h+128>>2]=2139095039;a=0;if((DU(h,h+168|0,h+144|0,h+128|0,h+16|0,h+96|0,h+320|0,h+304|0)|0)!=2){i=L[d+8>>2];l=L[h+328>>2];l=O(l+l);m=L[d>>2];n=L[h+320>>2];j=O(n+n);n=L[h+324>>2];p=O(n+n);n=L[d+4>>2];r=O(O(i*l)+O(O(m*j)+O(p*n)));o=L[d+12>>2];k=O(O(o*o)+O(-.5));s=O(O(i*r)+O(O(l*k)+O(o*O(O(m*p)-O(j*n)))));w=O(O(n*r)+O(O(p*k)+O(o*O(O(i*j)-O(l*m)))));l=O(O(m*r)+O(O(j*k)+O(o*O(O(n*l)-O(p*i)))));j=L[h+104>>2];j=O(j+j);p=L[h+96>>2];p=O(p+p);r=L[h+100>>2];r=O(r+r);u=O(O(i*j)+O(O(m*p)+O(r*n)));ha=O(L[d+24>>2]+O(O(i*u)+O(O(j*k)+O(o*O(O(m*r)-O(p*n))))));ia=O(L[d+20>>2]+O(O(n*u)+O(O(r*k)+O(o*O(O(i*p)-O(j*m))))));ja=O(L[d+16>>2]+O(O(m*u)+O(O(p*k)+O(o*O(O(n*j)-O(r*i))))));v=L[h+304>>2]}b:{if(O(L[f+4>>2]+L[e>>2])<=v){break b}x=b+4|0;i=L[c+16>>2];n=L[c+20>>2];m=L[c+24>>2];o=L[c>>2];k=O(o+o);r=L[c+8>>2];t=L[c+4>>2];j=L[c+12>>2];u=O(j+j);q=L[f+8>>2];z=O(O(O(k*r)-O(t*u))*q);p=O(m-z);L[h+116>>2]=p;t=O(q*O(O(r*u)+O(k*t)));r=O(n-t);L[h+112>>2]=r;m=O(z+m);L[h+104>>2]=m;n=O(n+t);L[h+100>>2]=n;o=O(q*O(O(o*k)+O(O(j*u)+O(-1))));u=O(i-o);L[h+108>>2]=u;o=O(i+o);L[h+96>>2]=o;H[h+240>>2]=0;H[h+244>>2]=1065353216;H[h+232>>2]=0;H[h+236>>2]=0;H[h+224>>2]=0;H[h+228>>2]=1065353216;H[h+216>>2]=0;H[h+220>>2]=0;H[h+208>>2]=1065353216;H[h+212>>2]=1065353216;H[h+192>>2]=1065353216;H[h+196>>2]=0;F[h+248|0]=0;H[h+200>>2]=0;H[h+204>>2]=0;H[h+184>>2]=0;H[h+188>>2]=0;H[h+176>>2]=1065353216;H[h+180>>2]=0;c=o==u&n==r&m==p;if(!(!(L[b+4>>2]!=O(1)|L[b+8>>2]!=O(1))&L[b+12>>2]==O(1))){yW(h+176|0,x,B)}B=c?1:2;hZ(h+16|0,H[b+40>>2],h+176|0);K=O(0);c:{if(v>O(0)){q=O(-s);L[h+8>>2]=q;t=O(-w);L[h+4>>2]=t;z=O(-l);L[h>>2]=z;ZX(g,d,h+16|0,x,B,h+96|0,L[f+4>>2],h,L[e>>2]);a=H[g+4096>>2];if((a|0)==2){break c}if(!c){_=L[e>>2];K=L[f+4>>2];R=L[d+24>>2];A=L[d+20>>2];D=L[d+16>>2];M=L[d>>2];k=O(M+M);i=L[d+8>>2];X=O(k*i);j=L[d+4>>2];Q=O(j+j);E=L[d+12>>2];Y=O(Q*E);y=O(X+Y);V=O(O(1)-O(M*k));Z=O(j*Q);M=O(V-Z);U=O(Q*i);G=O(k*E);Q=O(U-G);L[h+328>>2]=O(M*q)+O(O(y*z)+O(Q*t));U=O(U+G);k=O(k*j);j=O(i+i);G=O(E*j);E=O(k-G);i=O(i*j);V=O(V-i);L[h+324>>2]=O(U*q)+O(O(E*z)+O(V*t));X=O(X-Y);Y=O(O(O(1)-Z)-i);Z=O(k+G);L[h+320>>2]=O(X*q)+O(O(Y*z)+O(Z*t));d=Ra[H[h+84>>2]](h+16|0,h+176|0,h+320|0)|0;L[h+312>>2]=m;L[h+304>>2]=o;L[h+308>>2]=n;L[h+292>>2]=r;L[h+288>>2]=u;L[h+296>>2]=p;i=O(p-m);k=O(u-o);j=O(r-n);G=O(W(O(O(i*i)+O(O(k*k)+O(j*j)))));if(G>O(0)){S=i;i=O(O(.009999999776482582)/G);G=O(S*i);m=O(m-G);L[h+312>>2]=m;j=O(j*i);n=O(n-j);L[h+308>>2]=n;i=O(k*i);o=O(o-i);L[h+304>>2]=o;k=O(p+G);L[h+296>>2]=k;j=O(r+j);L[h+292>>2]=j;j=O(j-n);p=O(u+i);L[h+288>>2]=p;i=O(k-m);k=O(p-o)}L[h+276>>2]=j;L[h+272>>2]=k;L[h+280>>2]=i;p=O(O(k*t)+O(l*j));L[h+344>>2]=-p;k=O(O(i*z)+O(s*k));L[h+340>>2]=-k;j=O(O(j*q)+O(w*i));i=O(-j);L[h+336>>2]=i;L[h+348>>2]=-O(O(O(i*o)-O(n*k))-O(p*m));m=O(P(k));n=O(P(j));i=O(P(p));d:{e:{if(!(!(m>n)|!(m>i))){b=0;c=2;break e}a=2;c=0;b=1;if(!(i>n)){break d}}a=b;b=c}e=b;b=H[h+40>>2]+N(d,20)|0;d=I[b+18|0];if(d){c=a<<2;x=h+272|0;B=e<<2;ka=O(O(1)/O(O(L[c+x>>2]*L[B+h>>2])-O(L[c+h>>2]*L[x+B>>2])));la=O(K+_);x=H[h+48>>2]+J[b+16>>1]|0;B=H[h+44>>2];c=d-1|0;b=0;while(1){c=B+N(I[c+x|0],12)|0;i=L[c+8>>2];m=L[c>>2];n=L[c+4>>2];c=b;b=B+N(I[x+b|0],12)|0;o=L[b+8>>2];k=L[b>>2];j=L[b+4>>2];p=L[h+208>>2];r=L[h+184>>2];u=L[h+196>>2];_=L[h+200>>2];G=L[h+176>>2];aa=L[h+188>>2];ba=L[h+204>>2];ca=L[h+180>>2];da=L[h+192>>2];L[h+136>>2]=s;L[h+132>>2]=w;L[h+128>>2]=l;d=d-1|0;S=O(O(O(m*G)+O(n*aa))+O(i*_));$=O(O(O(m*ca)+O(n*da))+O(i*ba));i=O(O(O(m*r)+O(n*u))+O(i*p));ma=O(D+O(O(O(Y*S)+O(E*$))+O(y*i)));na=O(A+O(O(O(Z*S)+O(V*$))+O(Q*i)));S=O(R+O(O(O(X*S)+O(U*$))+O(M*i)));i=O(O(O(r*k)+O(u*j))+O(p*o));m=O(O(O(G*k)+O(aa*j))+O(_*o));n=O(O(O(ca*k)+O(da*j))+O(ba*o));f:{if(!_X(h+304|0,h+288|0,h+272|0,h+336|0,e,a,ka,h+128|0,ma,na,S,O(D+O(O(y*i)+O(O(Y*m)+O(E*n)))),O(A+O(O(Q*i)+O(O(Z*m)+O(V*n)))),O(R+O(O(M*i)+O(O(X*m)+O(U*n)))),h+168|0,h+144|0,O(0))){break f}i=L[h+168>>2];if(!(i>2];if(b>>>0>63){break f}m=L[h+148>>2];n=L[h+152>>2];o=L[h+144>>2];H[g+4096>>2]=b+1;b=(b<<6)+g|0;L[b+16>>2]=o+O(l*i);L[b+8>>2]=q;L[b+4>>2]=t;L[b>>2]=z;H[b+52>>2]=-1;L[b+12>>2]=i-K;L[b+24>>2]=n+O(s*i);L[b+20>>2]=m+O(w*i)}b=c+1|0;if(d){continue}break}}a=H[g+4096>>2]}if(a){break c}l=L[f+4>>2];L[g+24>>2]=ha;L[g+20>>2]=ia;L[g+16>>2]=ja;L[g+8>>2]=q;L[g+4>>2]=t;L[g>>2]=z;H[g+4096>>2]=1;H[g+52>>2]=-1;L[g+12>>2]=v-l;break c}R=L[f+4>>2];a=H[h+32>>2];T=H[h+40>>2];k=L[d+4>>2];w=O(k+k);l=L[d+8>>2];j=O(w*l);v=L[d>>2];s=O(v+v);y=L[d+12>>2];q=O(s*y);i=O(j-q);L[h+364>>2]=i;j=O(j+q);L[h+356>>2]=j;v=O(O(1)-O(v*s));A=O(k*w);q=O(v-A);L[h+368>>2]=q;S=v;v=O(l+l);D=O(l*v);z=O(S-D);L[h+352>>2]=z;l=O(s*l);w=O(w*y);t=O(l+w);L[h+360>>2]=t;s=O(s*k);y=O(v*y);v=O(s-y);L[h+348>>2]=v;k=O(l-w);L[h+344>>2]=k;y=O(s+y);L[h+340>>2]=y;A=O(O(O(1)-A)-D);L[h+336>>2]=A;L[h+372>>2]=L[d+16>>2];L[h+376>>2]=L[d+20>>2];L[h+380>>2]=L[d+24>>2];l=O(3.4028234663852886e38);g:{if(!a){w=O(0);s=O(0);break g}b=0;s=O(0);w=O(0);while(1){h:{S=k;C=T+N(b,20)|0;k=L[C>>2];D=j;j=L[C+4>>2];E=q;q=L[C+8>>2];D=O(O(O(S*k)+O(D*j))+O(E*q));L[h+328>>2]=D;v=O(O(O(A*k)+O(v*j))+O(t*q));L[h+320>>2]=v;i=O(O(O(y*k)+O(z*j))+O(i*q));L[h+324>>2]=i;Ra[H[h+80>>2]](h+16|0,h+320|0,h+336|0,h+176|0,h+304|0,h+288|0);k=O(O(m*D)+O(O(o*v)+O(n*i)));i=O(O(p*D)+O(O(u*v)+O(r*i)));C=k>i;j=O(R+(C?k:i));v=L[h+304>>2];if(j>2];i=O((C?i:k)-R);if(qk?k:i;if(i>2];s=L[h+324>>2];w=L[h+320>>2];l=i}b=b+1|0;if((a|0)==(b|0)){break g}q=L[h+368>>2];i=L[h+364>>2];t=L[h+360>>2];j=L[h+356>>2];z=L[h+352>>2];v=L[h+348>>2];k=L[h+344>>2];y=L[h+340>>2];A=L[h+336>>2];continue}break}a=0;break b}i:{j:{k:{l:{m:{if(c){break m}z=O(0);v=O(0);y=O(0);i=O(p-m);k=O(u-o);j=O(r-n);q=O(O(i*i)+O(O(k*k)+O(j*j)));if(q>O(0)){v=i;i=O(O(1)/O(W(q)));y=O(v*i);z=O(k*i);v=O(j*i)}if(!a){break m}D=O(-v);M=O(-z);Q=O(-y);b=0;while(1){C=T+N(b,20)|0;i=L[C>>2];j=L[C+4>>2];q=L[C+8>>2];t=O(O(O(i*L[h+340>>2])+O(j*L[h+352>>2]))+O(q*L[h+364>>2]));A=O(O(O(i*L[h+336>>2])+O(j*L[h+348>>2]))+O(q*L[h+360>>2]));k=O(O(z*t)+O(A*D));i=O(O(O(i*L[h+344>>2])+O(j*L[h+356>>2]))+O(q*L[h+368>>2]));j=O(O(y*A)+O(i*M));A=O(O(v*i)+O(t*Q));n:{if(!(O(P(k))>O(9.999999974752427e-7)?1:O(P(A))>O(9.999999974752427e-7)|O(P(j))>O(9.999999974752427e-7))){break n}q=O(0);t=O(0);i=O(0);E=O(O(k*k)+O(O(A*A)+O(j*j)));if(E>O(0)){i=k;k=O(O(1)/O(W(E)));i=O(i*k);t=O(j*k);q=O(A*k)}L[h+328>>2]=i;L[h+320>>2]=q;L[h+324>>2]=t;Ra[H[h+80>>2]](h+16|0,h+320|0,h+336|0,h+176|0,h+304|0,h+288|0);k=O(O(m*i)+O(O(o*q)+O(n*t)));i=O(O(p*i)+O(O(u*q)+O(r*t)));C=k>i;j=O(R+(C?k:i));q=L[h+304>>2];if(j>2];i=O((C?i:k)-R);if(tk?k:i;if(!(i>2];s=L[h+324>>2];w=L[h+320>>2];l=i}b=b+1|0;if((a|0)!=(b|0)){continue}break}}i=L[d+8>>2];l=L[h+24>>2];k=O(l+l);j=L[d>>2];l=L[h+16>>2];v=O(l+l);l=L[h+20>>2];q=O(l+l);t=L[d+4>>2];z=O(O(i*k)+O(O(j*v)+O(q*t)));l=L[d+12>>2];y=O(O(l*l)+O(-.5));a=O(O(K*O(O(O(m+p)*O(.5))-O(L[d+24>>2]+O(O(i*z)+O(O(k*y)+O(l*O(O(j*q)-O(v*t))))))))+O(O(w*O(O(O(o+u)*O(.5))-O(L[d+16>>2]+O(O(j*z)+O(O(v*y)+O(l*O(O(t*k)-O(q*i))))))))+O(s*O(O(O(n+r)*O(.5))-O(L[d+20>>2]+O(O(t*z)+O(O(q*y)+O(l*O(O(i*v)-O(k*j))))))))))>2]=v;s=a?O(-s):s;L[h+132>>2]=s;w=a?O(-w):w;L[h+128>>2]=w;ZX(g,d,h+16|0,x,B,h+96|0,L[f+4>>2],h+128|0,L[e>>2]);if(c|H[g+4096>>2]==2){break c}t=L[e>>2];q=L[f+4>>2];T=h+336|0;c=H[h+40>>2];oa=H[h+48>>2];e=0;C=H[h+32>>2];o:{if(C){while(1){x=I[c+18|0];if(x){ea=J[c+16>>1]+oa|0;a=I[(ea+x|0)-1|0];B=0;while(1){b=I[B+ea|0];f=b>>>0<(a&255)>>>0;fa=f?a:b;ga=f?b:a;a=0;p:{if(e){while(1){f=T+(a<<4)|0;if(!(I[f|0]!=(ga&255)|I[f+1|0]!=(fa&255))){L[f+4>>2]=L[c>>2]+L[f+4>>2];L[f+8>>2]=L[c+4>>2]+L[f+8>>2];L[f+12>>2]=L[c+8>>2]+L[f+12>>2];break p}a=a+1|0;if((e|0)!=(a|0)){continue}break}}a=512;if((e|0)==512){break o}a=T+(e<<4)|0;F[a+1|0]=fa;F[a|0]=ga;L[a+4>>2]=L[c>>2];L[a+8>>2]=L[c+4>>2];L[a+12>>2]=L[c+8>>2];e=e+1|0}B=B+1|0;a=b;x=x-1|0;if(x){continue}break}}c=c+20|0;C=C-1|0;if(C){continue}break}}a=e}e=a;L[h+312>>2]=m;L[h+304>>2]=o;L[h+308>>2]=n;L[h+292>>2]=r;L[h+288>>2]=u;L[h+296>>2]=p;i=O(p-m);k=O(u-o);j=O(r-n);l=O(W(O(O(i*i)+O(O(k*k)+O(j*j)))));if(l>O(0)){l=O(O(.009999999776482582)/l);i=O(i*l);m=O(m-i);L[h+312>>2]=m;j=O(j*l);n=O(n-j);L[h+308>>2]=n;l=O(k*l);o=O(o-l);L[h+304>>2]=o;i=O(p+i);L[h+296>>2]=i;k=O(r+j);L[h+292>>2]=k;j=O(k-n);l=O(u+l);L[h+288>>2]=l;k=O(l-o);i=O(i-m)}L[h+272>>2]=k;L[h+280>>2]=i;L[h+276>>2]=j;l=O(O(i*w)-O(v*k));L[h+324>>2]=l;i=O(O(j*v)-O(s*i));L[h+320>>2]=i;k=O(O(k*s)-O(w*j));L[h+328>>2]=k;L[h+332>>2]=-O(O(k*m)+O(O(i*o)+O(n*l)));l=O(P(l));i=O(P(i));m=O(P(k));if(!(l>i)|!(l>m)){break k}b=0;c=2;break j}a=0;break b}a=2;c=0;b=1;if(!(i>2]*L[x+B>>2])-O(L[c+B>>2]*L[f+x>>2])));t=O(O(-q)-t);c=0;x=H[h+44>>2];while(1){l=L[d+8>>2];B=(h+336|0)+(c<<4)|0;f=x+N(I[B|0],12)|0;m=L[f>>2];u=L[h+184>>2];n=L[f+4>>2];y=L[h+196>>2];o=L[f+8>>2];K=L[h+208>>2];i=O(O(O(m*u)+O(n*y))+O(o*K));k=O(i+i);i=L[d>>2];R=L[h+176>>2];A=L[h+188>>2];D=L[h+200>>2];j=O(O(O(m*R)+O(n*A))+O(o*D));j=O(j+j);M=L[h+180>>2];Q=L[h+192>>2];E=L[h+204>>2];m=O(O(O(m*M)+O(n*Q))+O(o*E));p=O(m+m);m=L[d+4>>2];r=O(O(l*k)+O(O(i*j)+O(p*m)));U=L[d+16>>2];n=L[d+12>>2];o=O(O(n*n)+O(-.5));S=O(U+O(O(i*r)+O(O(j*o)+O(n*O(O(m*k)-O(p*l))))));V=L[d+20>>2];G=O(V+O(O(m*r)+O(O(p*o)+O(n*O(O(l*j)-O(k*i))))));X=L[d+24>>2];Y=O(X+O(O(l*r)+O(O(k*o)+O(n*O(O(i*p)-O(j*m))))));f=x+N(I[B+1|0],12)|0;p=L[f>>2];r=L[f+4>>2];k=O(O(u*p)+O(y*r));u=L[f+8>>2];k=O(k+O(K*u));k=O(k+k);j=O(O(O(R*p)+O(A*r))+O(D*u));j=O(j+j);p=O(O(O(M*p)+O(Q*r))+O(E*u));p=O(p+p);r=O(O(l*k)+O(O(i*j)+O(m*p)));q:{if(!_X(h+304|0,h+288|0,h+272|0,h+320|0,b,a,z,h+128|0,S,G,Y,O(U+O(O(i*r)+O(O(j*o)+O(n*O(O(m*k)-O(p*l)))))),O(V+O(O(m*r)+O(O(p*o)+O(n*O(O(l*j)-O(k*i)))))),O(X+O(O(l*r)+O(O(k*o)+O(n*O(O(i*p)-O(j*m)))))),h,h+144|0,t)){break q}f=H[g+4096>>2];if(f>>>0>63){break q}l=L[h>>2];i=L[h+148>>2];m=L[h+152>>2];n=L[h+144>>2];H[g+4096>>2]=f+1;f=(f<<6)+g|0;L[f+16>>2]=n-O(w*l);L[f+8>>2]=v;L[f+4>>2]=s;L[f>>2]=w;H[f+52>>2]=-1;L[f+12>>2]=-O(q+l);L[f+24>>2]=m-O(v*l);L[f+20>>2]=i-O(s*l)}c=c+1|0;if((e|0)!=(c|0)){continue}break}}a=1}Oa=h+8528|0;return a|0}function pL(a,b,c){var d=0,e=0,f=0,g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),G=O(0),K=O(0),M=O(0),P=O(0),Q=O(0),R=O(0),S=O(0),T=O(0),U=O(0),V=O(0),W=O(0),X=O(0),Y=O(0),Z=O(0),_=O(0),$=0,aa=O(0),ba=O(0),ca=O(0),da=0,ea=O(0),fa=O(0),ga=O(0),ha=O(0),ia=O(0),ja=O(0),ka=O(0),la=O(0),ma=O(0),na=O(0),oa=O(0),pa=O(0),qa=O(0),ra=O(0),sa=O(0),ta=O(0),ua=O(0),va=O(0),wa=O(0),xa=O(0),ya=O(0),za=O(0),Aa=O(0),Ba=O(0),Ca=O(0),Da=O(0),Ea=O(0),Fa=O(0),Ga=O(0),Ha=0,Ia=O(0),Ja=O(0),Ka=O(0),La=O(0),Ma=O(0),Na=O(0),Pa=O(0),Qa=O(0),Ra=O(0),Sa=O(0),Ta=O(0),Ua=O(0),Va=O(0),Wa=O(0),Xa=O(0),Ya=O(0),Za=O(0),_a=O(0),$a=O(0),ab=O(0),bb=O(0),cb=O(0),db=O(0),eb=O(0),fb=O(0),gb=O(0),hb=O(0),ib=O(0),jb=O(0),kb=O(0),lb=O(0),mb=O(0),nb=O(0),ob=0,pb=O(0),qb=O(0),rb=0,sb=0,tb=O(0),ub=O(0),vb=O(0),wb=O(0),xb=O(0),yb=O(0),zb=O(0),Ab=O(0),Bb=O(0),Cb=O(0),Db=O(0),Eb=O(0),Fb=0,Gb=0,Hb=0,Ib=O(0),Jb=O(0),Kb=O(0),Lb=O(0),Mb=O(0),Nb=O(0),Ob=O(0),Pb=O(0),Qb=O(0),Rb=O(0),Sb=O(0),Tb=O(0),Ub=O(0),Vb=O(0),Wb=O(0),Xb=O(0),Yb=O(0),Zb=O(0),_b=O(0),$b=O(0),ac=O(0),bc=O(0),cc=O(0),dc=O(0),ec=O(0),fc=O(0),gc=O(0),hc=O(0),ic=O(0),jc=O(0),kc=O(0),lc=O(0),mc=O(0),nc=O(0),oc=O(0),pc=0,qc=O(0),rc=O(0),sc=O(0),tc=O(0),uc=O(0),vc=O(0),wc=O(0),xc=O(0),yc=O(0),zc=O(0),Ac=O(0),Bc=O(0),Cc=0,Dc=0,Ec=O(0),Fc=O(0),Gc=O(0),Hc=O(0),Ic=O(0),Jc=O(0),Kc=O(0),Lc=O(0),Mc=0,Nc=O(0),Oc=O(0),Pc=O(0),Qc=O(0),Rc=O(0),Sc=O(0),Tc=O(0),Uc=0,Vc=O(0),Wc=O(0),Xc=O(0),Yc=O(0),Zc=O(0),_c=O(0),$c=O(0),ad=O(0),bd=O(0);m=H[a+100>>2];Tb=L[m+32>>2];n=H[a+96>>2];Ub=L[n+40>>2];Vb=L[n+36>>2];o=H[a+68>>2];Wb=L[o+32>>2];p=H[a+64>>2];Xb=L[p+40>>2];Yb=L[p+36>>2];q=H[a+36>>2];Zb=L[q+32>>2];r=H[a+32>>2];_b=L[r+40>>2];$b=L[r+36>>2];s=H[a+4>>2];ac=L[s+40>>2];bc=L[s+36>>2];t=H[a>>2];cc=L[t+40>>2];dc=L[t+36>>2];Ja=L[m+16>>2];Ka=L[n+24>>2];ra=L[n+20>>2];La=L[m+8>>2];sa=L[m+4>>2];Ma=L[m>>2];Na=L[o+16>>2];Pa=L[p+24>>2];ta=L[p+20>>2];Qa=L[o+8>>2];ua=L[o+4>>2];Ra=L[o>>2];Sa=L[q+16>>2];Ta=L[r+24>>2];va=L[r+20>>2];Ua=L[q+8>>2];wa=L[q+4>>2];Va=L[q>>2];Wa=L[s+24>>2];xa=L[s+20>>2];Xa=L[t+24>>2];ya=L[t+20>>2];ec=L[m+40>>2];fc=L[m+36>>2];gc=L[o+40>>2];hc=L[o+36>>2];ic=L[q+40>>2];jc=L[q+36>>2];Ya=L[m+24>>2];za=L[m+20>>2];Za=L[o+24>>2];Aa=L[o+20>>2];_a=L[q+24>>2];Ba=L[q+20>>2];h=L[q+48>>2];U=L[o+48>>2];x=L[m+48>>2];y=L[r+52>>2];V=L[q+52>>2];z=L[p+52>>2];A=L[o+52>>2];W=L[n+52>>2];B=L[m+52>>2];X=L[r+56>>2];Y=L[q+56>>2];j=L[p+56>>2];C=L[o+56>>2];D=L[n+56>>2];E=L[m+56>>2];G=L[s+52>>2];v=L[t+52>>2];P=L[s+56>>2];Q=L[t+56>>2];kc=L[n+32>>2];lc=L[p+32>>2];mc=L[r+32>>2];nc=L[s+32>>2];oc=L[t+32>>2];$a=L[n+16>>2];ab=L[n+8>>2];Ca=L[n+4>>2];bb=L[n>>2];cb=L[p+16>>2];db=L[p+8>>2];Da=L[p+4>>2];eb=L[p>>2];fb=L[r+16>>2];gb=L[r+8>>2];Ea=L[r+4>>2];hb=L[r>>2];ib=L[s+16>>2];jb=L[t+16>>2];kb=L[s+8>>2];Fa=L[s+4>>2];lb=L[s>>2];mb=L[t+8>>2];Ga=L[t+4>>2];nb=L[t>>2];R=L[r+48>>2];Z=L[p+48>>2];ba=L[n+48>>2];e=H[a+24>>2];d=J[a+22>>1];_=L[s+48>>2];ca=L[t+48>>2];pc=Oa-16|0;f=pc;H[f+8>>2]=2139095039;H[f+12>>2]=2139095039;H[f>>2]=2139095039;H[f+4>>2]=2139095039;if(d){qc=O(Q-P);rc=O(v-G);sc=O(D-E);tc=O(j-C);uc=O(X-Y);vc=O(W-B);wc=O(z-A);xc=O(y-V);yc=O(ca-_);Mc=(d<<4)+e|0;zc=O(ba-x);Ac=O(Z-U);Bc=O(R-h);Lb=L[e+76>>2];Mb=L[e+92>>2];Nc=O(Lb+Mb);Nb=L[e+72>>2];Ob=L[e+88>>2];Oc=O(Nb+Ob);Pb=L[e+68>>2];Qb=L[e+84>>2];Pc=O(Pb+Qb);Rb=L[e+64>>2];Sb=L[e+80>>2];Qc=O(Rb+Sb);Fb=e+400|0;while(1){rb=e+240|0;$=I[e+1|0];d=$<<4;sb=rb+d|0;f=e;ob=F[e+3|0]&1;e=sb+N($,160)|0;Cc=(d&0-ob)+e|0;Gb=I[f+2|0];Dc=Cc+(Gb<<4)|0;Hb=N(Gb,208);h=L[f+156>>2];U=L[f+140>>2];x=L[f+172>>2];y=L[f+152>>2];V=L[f+136>>2];z=L[f+168>>2];A=L[f+148>>2];W=L[f+132>>2];B=L[f+164>>2];X=L[f+144>>2];Y=L[f+128>>2];j=L[f+160>>2];Ec=L[f+124>>2];Fc=L[f+120>>2];Gc=L[f+116>>2];Hc=L[f+112>>2];Ic=L[f+108>>2];Jc=L[f+104>>2];Kc=L[f+100>>2];Lc=L[f+96>>2];a:{if(!$){C=O(0);D=O(0);E=O(0);G=O(0);v=O(0);P=O(0);Q=O(0);R=O(0);break a}pb=O(O(O(zc*U)+O(vc*h))+O(sc*x));Rc=O(O(O(Ac*V)+O(wc*y))+O(tc*z));Sc=O(O(O(Bc*W)+O(xc*A))+O(uc*B));Tc=O(O(O(yc*Y)+O(rc*X))+O(qc*j));Uc=ob?e:pc;Ab=O(-L[f+188>>2]);Bb=O(-L[f+184>>2]);Ib=O(-L[f+180>>2]);Jb=O(-L[f+176>>2]);Z=O(O(O(O(nb*Y)+O(Ga*X))+O(mb*j))-O(O(O(lb*Y)+O(Fa*X))+O(kb*j)));ba=O(O(O(O(hb*W)+O(Ea*A))+O(gb*B))-O(O(O(Va*W)+O(wa*A))+O(Ua*B)));_=O(O(O(O(eb*V)+O(Da*y))+O(db*z))-O(O(O(Ra*V)+O(ua*y))+O(Qa*z)));ca=O(O(O(O(bb*U)+O(Ca*h))+O(ab*x))-O(O(O(Ma*U)+O(sa*h))+O(La*x)));R=O(0);da=0;Q=O(0);P=O(0);v=O(0);G=O(0);E=O(0);D=O(0);C=O(0);while(1){Ha=((ob?da:0)<<4)+Uc|0;S=L[Ha>>2];ea=L[Ha+4>>2];Ia=L[Ha+8>>2];d=rb+(da<<4)|0;K=L[d>>2];e=sb+N(da,160)|0;Vc=L[e+112>>2];Wc=L[e+144>>2];Xc=L[e+96>>2];g=L[e+128>>2];ha=L[e+80>>2];qb=L[e- -64>>2];tb=L[e+48>>2];ia=L[e+32>>2];ja=L[e>>2];ka=L[e+16>>2];i=L[d+4>>2];Yc=L[e+116>>2];Zc=L[e+148>>2];_c=L[e+100>>2];k=L[e+132>>2];la=L[e+36>>2];M=L[e+20>>2];ma=L[e+4>>2];T=L[e+84>>2];na=L[e+52>>2];oa=L[e+68>>2];u=L[d+8>>2];$c=L[e+120>>2];ad=L[e+152>>2];bd=L[e+104>>2];l=L[e+136>>2];pa=L[e+40>>2];ub=L[e+24>>2];fa=L[e+8>>2];qa=L[e+88>>2];vb=L[e+56>>2];wb=L[e+72>>2];Cb=L[e+12>>2];Db=L[e+28>>2];Eb=L[e+44>>2];xb=L[e+60>>2];ga=L[e+76>>2];yb=L[e+92>>2];Kb=L[e+140>>2];w=O(O(O(pb+O(O(O(O(kc*Cb)+O(Vb*Db))+O(Ub*Eb))-O(O(O(Tb*xb)+O(fc*ga))+O(ec*yb))))-O(Kb*c))+L[e+108>>2]);w=O(L[e+156>>2]*(b>w?b:w));zb=L[d+12>>2];aa=O(-zb);w=O(L[e+124>>2]*O(O(Kb+(w>Ab?Ab:w))-O(ca+O(O(O(O($a*Cb)+O(ra*Db))+O(Ka*Eb))-O(O(O(Ja*xb)+O(za*ga))+O(Ya*yb))))));w=O(zb+(w>aa?w:aa));aa=L[Ha+12>>2];w=w>2]=w;aa=l;l=O(bd+O(O(Rc+O(O(O(O(lc*fa)+O(Yb*ub))+O(Xb*pa))-O(O(O(Wb*vb)+O(hc*wb))+O(gc*qa))))-O(l*c)));l=O(ad*(b>l?b:l));l=O($c*O(O(aa+(l>Bb?Bb:l))-O(_+O(O(O(O(cb*fa)+O(ta*ub))+O(Pa*pa))-O(O(O(Na*vb)+O(Aa*wb))+O(Za*qa))))));aa=O(-u);l=O(u+(l>aa?l:aa));Ia=l>2]=Ia;l=k;k=O(_c+O(O(Sc+O(O(O(O(mc*ma)+O($b*M))+O(_b*la))-O(O(O(Zb*na)+O(jc*oa))+O(ic*T))))-O(k*c)));k=O(Zc*(b>k?b:k));k=O(Yc*O(O(l+(k>Ib?Ib:k))-O(ba+O(O(O(O(fb*ma)+O(va*M))+O(Ta*la))-O(O(O(Sa*na)+O(Ba*oa))+O(_a*T))))));l=O(-i);k=O(i+(k>l?k:l));ea=k>2]=ea;k=g;g=O(Xc+O(O(Tc+O(O(O(O(oc*ja)+O(dc*ka))+O(cc*ia))-O(O(O(nc*tb)+O(bc*qb))+O(ac*ha))))-O(g*c)));g=O(Wc*(b>g?b:g));g=O(Vc*O(O(k+(g>Jb?Jb:g))-O(Z+O(O(O(O(jb*ja)+O(ya*ka))+O(Xa*ia))-O(O(O(ib*tb)+O(xa*qb))+O(Wa*ha))))));k=O(-K);g=O(K+(g>k?g:k));g=g>2]=g;R=O(R+w);Q=O(Q+Ia);P=O(P+ea);v=O(v+g);S=O(w-zb);G=O(G+S);u=O(Ia-u);E=O(E+u);i=O(ea-i);D=O(D+i);K=O(g-K);C=O(C+K);ca=O(ca+O(Nc*S));_=O(_+O(Oc*u));ba=O(ba+O(Pc*i));Z=O(Z+O(Qc*K));ea=O(Ec*S);Ya=O(Ya-O(yb*ea));g=qa;qa=O(Fc*u);Za=O(Za-O(g*qa));g=T;T=O(Gc*i);_a=O(_a-O(g*T));g=ha;ha=O(Hc*K);Wa=O(Wa-O(g*ha));S=O(Ic*S);Ka=O(Ka+O(Eb*S));u=O(Jc*u);Pa=O(Pa+O(pa*u));i=O(Kc*i);Ta=O(Ta+O(la*i));K=O(Lc*K);Xa=O(Xa+O(ia*K));za=O(za-O(ga*ea));Aa=O(Aa-O(wb*qa));Ba=O(Ba-O(oa*T));xa=O(xa-O(qb*ha));ra=O(ra+O(Db*S));ta=O(ta+O(ub*u));va=O(va+O(M*i));ya=O(ya+O(ka*K));Ja=O(Ja-O(xb*ea));Na=O(Na-O(vb*qa));Sa=O(Sa-O(na*T));ib=O(ib-O(tb*ha));$a=O($a+O(Cb*S));cb=O(cb+O(fa*u));fb=O(fb+O(ma*i));jb=O(jb+O(ja*K));Fb=Fb+192|0;da=da+1|0;if(($|0)!=(da|0)){continue}break}}e=Hb+Dc|0;Z=O(Mb*G);La=O(La-O(x*Z));ba=O(Ob*E);Qa=O(Qa-O(z*ba));_=O(Qb*D);Ua=O(Ua-O(B*_));ca=O(Sb*C);kb=O(kb-O(j*ca));g=x;x=O(Lb*G);ab=O(ab+O(g*x));g=z;z=O(Nb*E);db=O(db+O(g*z));g=B;B=O(Pb*D);gb=O(gb+O(g*B));g=j;j=O(Rb*C);mb=O(mb+O(g*j));sa=O(sa-O(h*Z));ua=O(ua-O(y*ba));wa=O(wa-O(A*_));Fa=O(Fa-O(X*ca));Ca=O(Ca+O(h*x));Da=O(Da+O(y*z));Ea=O(Ea+O(A*B));Ga=O(Ga+O(X*j));Ma=O(Ma-O(U*Z));Ra=O(Ra-O(V*ba));Va=O(Va-O(W*_));lb=O(lb-O(Y*ca));bb=O(bb+O(U*x));eb=O(eb+O(V*z));hb=O(hb+O(W*B));nb=O(nb+O(Y*j));if(Gb){Ib=O(R*L[f+44>>2]);Jb=O(Q*L[f+40>>2]);ea=O(P*L[f+36>>2]);Ia=O(v*L[f+32>>2]);Z=O(R*L[f+60>>2]);ba=O(-Z);_=O(Q*L[f+56>>2]);ca=O(-_);K=O(P*L[f+52>>2]);ha=O(-K);qb=O(v*L[f+48>>2]);tb=O(-qb);da=0;Ha=0;sb=0;ob=0;rb=0;while(1){$=(da<<4)+Cc|0;R=L[$>>2];d=N(da,208)+Dc|0;g=L[d+192>>2];k=L[d+144>>2];G=L[d+176>>2];v=L[d+160>>2];P=L[d+80>>2];Hb=d- -64|0;Q=L[Hb>>2];ia=L[d+48>>2];ja=L[d+128>>2];ka=L[d+112>>2];i=L[d+96>>2];h=L[d+32>>2];U=L[d>>2];x=L[d+16>>2];la=L[$+4>>2];l=L[d+196>>2];Cb=L[d+148>>2];E=L[d+180>>2];M=L[d+164>>2];ma=L[d+84>>2];T=L[d+52>>2];na=L[d+68>>2];y=L[d+36>>2];V=L[d+20>>2];z=L[d+4>>2];oa=L[d+132>>2];u=L[d+100>>2];pa=L[d+116>>2];ub=L[$+8>>2];Db=L[d+200>>2];Eb=L[d+152>>2];D=L[d+184>>2];fa=L[d+168>>2];qa=L[d+88>>2];vb=L[d+56>>2];wb=L[d+72>>2];A=L[d+40>>2];W=L[d+24>>2];B=L[d+8>>2];S=L[d+136>>2];Ab=L[d+104>>2];Bb=L[d+120>>2];xb=L[$+12>>2];X=L[d+12>>2];Y=L[d+28>>2];j=L[d+44>>2];C=L[d+60>>2];ga=L[d+76>>2];yb=L[d+92>>2];w=L[d+108>>2];zb=L[d+124>>2];aa=L[d+140>>2];pb=L[d+188>>2];Kb=O(O(O(O(O(O(O(O(zc*X)+O(vc*Y))+O(sc*j))+O(O(O(O(kc*C)+O(Vb*ga))+O(Ub*yb))-O(O(O(Tb*w)+O(fc*zb))+O(ec*aa))))-O(pb*c))+L[d+156>>2])*L[d+204>>2])-pb);pb=L[d+172>>2];C=O(O(xb-O(Kb*pb))-O(O(O(O(O(O(bb*X)+O(Ca*Y))+O(ab*j))+O(O(O($a*C)+O(ra*ga))+O(Ka*yb)))-O(O(O(O(Ma*X)+O(sa*Y))+O(La*j))+O(O(O(Ja*w)+O(za*zb))+O(Ya*aa))))*pb));ga=C>2]=ga;D=O(O(ub-O(fa*O(O(Db*O(Eb+O(O(O(O(O(Ac*B)+O(wc*W))+O(tc*A))+O(O(O(O(lc*vb)+O(Yb*wb))+O(Xb*qa))-O(O(O(Wb*Ab)+O(hc*Bb))+O(gc*S))))-O(D*c))))-D)))-O(fa*O(O(O(O(O(eb*B)+O(Da*W))+O(db*A))+O(O(O(cb*vb)+O(ta*wb))+O(Pa*qa)))-O(O(O(O(Ra*B)+O(ua*W))+O(Qa*A))+O(O(O(Na*Ab)+O(Aa*Bb))+O(Za*S))))));fa=D>2]=fa;E=O(O(la-O(M*O(O(l*O(Cb+O(O(O(O(O(Bc*z)+O(xc*V))+O(uc*y))+O(O(O(O(mc*T)+O($b*na))+O(_b*ma))-O(O(O(Zb*u)+O(jc*pa))+O(ic*oa))))-O(E*c))))-E)))-O(M*O(O(O(O(O(hb*z)+O(Ea*V))+O(gb*y))+O(O(O(fb*T)+O(va*na))+O(Ta*ma)))-O(O(O(O(Va*z)+O(wa*V))+O(Ua*y))+O(O(O(Sa*u)+O(Ba*pa))+O(_a*oa))))));M=E>2]=M;G=O(O(R-O(v*O(O(g*O(k+O(O(O(O(O(yc*U)+O(rc*x))+O(qc*h))+O(O(O(O(oc*ia)+O(dc*Q))+O(cc*P))-O(O(O(nc*i)+O(bc*ka))+O(ac*ja))))-O(G*c))))-G)))-O(v*O(O(O(O(O(nb*U)+O(Ga*x))+O(mb*h))+O(O(O(jb*ia)+O(ya*Q))+O(Xa*P)))-O(O(O(O(lb*U)+O(Fa*x))+O(kb*h))+O(O(O(ib*i)+O(xa*ka))+O(Wa*ja))))));v=Gqb?qb:v;L[$>>2]=i;v=O(ga-xb);ia=O(Ec*v);Ya=O(Ya-O(ia*L[d+140>>2]));P=O(fa-ub);ja=O(Fc*P);Za=O(Za-O(ja*L[d+136>>2]));Q=O(M-la);ka=O(Gc*Q);_a=O(_a-O(ka*L[d+132>>2]));R=O(i-R);i=O(Hc*R);Wa=O(Wa-O(i*L[d+128>>2]));la=O(Ic*v);Ka=O(Ka+O(la*L[d+92>>2]));M=O(Jc*P);Pa=O(Pa+O(M*L[d+88>>2]));ma=O(Kc*Q);Ta=O(Ta+O(ma*L[d+84>>2]));T=O(Lc*R);Xa=O(Xa+O(T*L[d+80>>2]));na=O(Mb*v);La=O(La-O(j*na));oa=O(Ob*P);Qa=O(Qa-O(A*oa));u=O(Qb*Q);Ua=O(Ua-O(y*u));pa=O(Sb*R);kb=O(kb-O(h*pa));g=j;j=O(Lb*v);ab=O(ab+O(g*j));g=A;A=O(Nb*P);db=O(db+O(g*A));g=y;y=O(Pb*Q);gb=O(gb+O(g*y));g=h;h=O(Rb*R);mb=O(mb+O(g*h));za=O(za-O(ia*L[d+124>>2]));Aa=O(Aa-O(ja*L[d+120>>2]));Ba=O(Ba-O(ka*L[d+116>>2]));xa=O(xa-O(i*L[d+112>>2]));ra=O(ra+O(la*L[d+76>>2]));ta=O(ta+O(M*L[d+72>>2]));va=O(va+O(ma*L[d+68>>2]));ya=O(ya+O(T*L[Hb>>2]));sa=O(sa-O(Y*na));ua=O(ua-O(W*oa));wa=O(wa-O(V*u));Fa=O(Fa-O(x*pa));Ca=O(Ca+O(Y*j));Da=O(Da+O(W*A));Ea=O(Ea+O(V*y));Ga=O(Ga+O(x*h));Ja=O(Ja-O(ia*L[d+108>>2]));Na=O(Na-O(ja*L[d+104>>2]));Sa=O(Sa-O(ka*L[d+100>>2]));ib=O(ib-O(i*L[d+96>>2]));$a=O($a+O(L[d+60>>2]*la));cb=O(cb+O(L[d+56>>2]*M));fb=O(fb+O(L[d+52>>2]*ma));jb=O(jb+O(L[d+48>>2]*T));Ma=O(Ma-O(X*na));Ra=O(Ra-O(B*oa));Va=O(Va-O(z*u));lb=O(lb-O(U*pa));bb=O(bb+O(X*j));eb=O(eb+O(B*A));hb=O(hb+O(z*y));nb=O(nb+O(U*h));h=O(-C);rb=0-((rb|0)!=0|Ib<(h>2]=rb;H[f+216>>2]=ob;H[f+212>>2]=sb;H[f+208>>2]=Ha}if(e>>>0>>0){continue}break}}L[t+28>>2]=ya;L[t+16>>2]=jb;L[t+12>>2]=Ga;L[t+8>>2]=mb;L[t+4>>2]=Ga;L[t>>2]=nb;L[t+24>>2]=Xa;L[t+20>>2]=ya;L[r+28>>2]=va;L[r+24>>2]=Ta;L[r+20>>2]=va;L[r+16>>2]=fb;L[r+12>>2]=Ea;L[r+8>>2]=gb;L[r+4>>2]=Ea;L[r>>2]=hb;L[p+28>>2]=ta;L[p+24>>2]=Pa;L[p+20>>2]=ta;L[p+16>>2]=cb;L[p+12>>2]=Da;L[p+8>>2]=db;L[p+4>>2]=Da;L[p>>2]=eb;L[n+28>>2]=ra;L[n+24>>2]=Ka;L[n+20>>2]=ra;L[n+16>>2]=$a;L[n+12>>2]=Ca;L[n+8>>2]=ab;L[n+4>>2]=Ca;L[n>>2]=bb;if(H[a+16>>2]){L[s+28>>2]=xa;L[s+16>>2]=ib;L[s+12>>2]=Fa;L[s+8>>2]=kb;L[s+4>>2]=Fa;L[s>>2]=lb;L[s+24>>2]=Wa;L[s+20>>2]=xa}if(H[a+48>>2]){L[q+28>>2]=Ba;L[q+16>>2]=Sa;L[q+12>>2]=wa;L[q+8>>2]=Ua;L[q+4>>2]=wa;L[q>>2]=Va;L[q+24>>2]=_a;L[q+20>>2]=Ba}if(H[a+80>>2]){L[o+28>>2]=Aa;L[o+16>>2]=Na;L[o+12>>2]=ua;L[o+8>>2]=Qa;L[o+4>>2]=ua;L[o>>2]=Ra;L[o+24>>2]=Za;L[o+20>>2]=Aa}if(H[a+112>>2]){L[m+28>>2]=za;L[m+16>>2]=Ja;L[m+12>>2]=sa;L[m+8>>2]=La;L[m+4>>2]=sa;L[m>>2]=Ma;L[m+24>>2]=Ya;L[m+20>>2]=za}}function iS(a,b,c,d,e,f,g,h,i,j,k,l,m,n){var o=0,p=O(0),q=0,r=0,s=0,t=O(0),u=O(0),v=0,w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=0,D=O(0),E=O(0),P=O(0),Q=O(0),R=O(0),S=0,T=0,U=0,V=O(0),X=O(0),Y=O(0),Z=O(0),_=O(0),$=O(0),aa=O(0),ba=O(0),ca=O(0),da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0;o=Oa-272|0;Oa=o;t=L[f+8>>2];p=L[f>>2];u=L[f+4>>2];a:{if(!(p!=O(0)|u!=O(0))&t==O(0)){break a}H[a+324>>2]=H[a+324>>2]&-53;H[n>>2]=0;H[m>>2]=0;H[a+176>>2]=-1;q=H[e+28>>2];H[o+88>>2]=H[e+24>>2];H[o+92>>2]=q;q=H[e+20>>2];H[o+80>>2]=H[e+16>>2];H[o+84>>2]=q;q=H[e+12>>2];H[o+72>>2]=H[e+8>>2];H[o+76>>2]=q;b:{if(!h){break b}ea=M[e+8>>3]+ +p;fa=M[e+16>>3]+ +u;ga=M[e+24>>3]+ +t;da=M[o+88>>3];S=M[o+80>>3];T=M[o+72>>3];ia=(l|0)==3;ja=(l&-3)!=1;while(1){G[a+322>>1]=J[a+322>>1]+1;L[o+64>>2]=ga-da;L[o+60>>2]=fa-S;L[o+56>>2]=ea-T;q=o+96|0;Ra[H[H[e>>2]+8>>2]](e,a,q,o+72|0,o+56|0);hS(a,b,d,q,k,g);p=L[o+64>>2];u=L[o+56>>2];z=L[o+60>>2];ba=O(W(O(O(p*p)+O(O(u*u)+O(z*z)))));if(ba<=j){break b}x=p;p=O(O(1)/ba);t=O(x*p);L[o+64>>2]=t;u=O(u*p);L[o+56>>2]=u;p=O(z*p);L[o+60>>2]=p;if(O(O(t*L[f+8>>2])+O(O(u*L[f>>2])+O(p*L[f+4>>2])))<=O(0)){break b}L[o+36>>2]=ba+L[a+276>>2];q=H[a+36>>2];s=I[a+298|0];r=H[a+32>>2];H[o+48>>2]=0;H[o+40>>2]=-1;H[o+44>>2]=-1;c:{d:{if(!q){break d}q=(q<<2)+r|0;if(!s){while(1){s=H[r>>2];C=H[(N(H[e+36>>2],24)+124560|0)+(s<<2)>>2];if(C){H[o+136>>2]=-1;H[o+140>>2]=-1;L[o+132>>2]=L[o+36>>2];e:{if(!(Ra[C|0](a,e,r,o+72|0,o+56|0,o+96|0)|0)){break e}p=L[o+132>>2];if(p==O(0)|!(p>2])){break e}s=H[o+116>>2];H[o+16>>2]=H[o+112>>2];H[o+20>>2]=s;s=H[o+108>>2];H[o+8>>2]=H[o+104>>2];H[o+12>>2]=s;s=H[o+100>>2];H[o>>2]=H[o+96>>2];H[o+4>>2]=s;L[o+24>>2]=L[o+120>>2];s=H[o+128>>2];H[o+28>>2]=H[o+124>>2];H[o+32>>2]=s;s=H[o+136>>2];H[o+36>>2]=H[o+132>>2];H[o+40>>2]=s;H[o+44>>2]=H[o+140>>2];H[o+48>>2]=r;if(p<=O(0)){break c}}s=H[r>>2]}r=H[(s<<2)+86160>>2]+r|0;if((q|0)!=(r|0)){continue}break d}}while(1){s=H[r>>2];C=H[(N(H[e+36>>2],24)+124560|0)+(s<<2)>>2];if(C){H[o+136>>2]=-1;H[o+140>>2]=-1;L[o+132>>2]=L[o+36>>2];f:{if(!(Ra[C|0](a,e,r,o+72|0,o+56|0,o+96|0)|0)){break f}p=L[o+132>>2];if(p==O(0)){if(K[r>>2]<2){break f}g:{h:{s=H[r+8>>2];switch(J[s+4>>1]-5|0){case 1:break g;case 0:break h;default:break f}}Ra[H[H[s>>2]+216>>2]](o+240|0,s);if(!(F[o+240|0]&1)){break f}}q=H[o+116>>2];H[o+16>>2]=H[o+112>>2];H[o+20>>2]=q;q=H[o+108>>2];H[o+8>>2]=H[o+104>>2];H[o+12>>2]=q;q=H[o+100>>2];H[o>>2]=H[o+96>>2];H[o+4>>2]=q;L[o+24>>2]=L[o+120>>2];q=H[o+128>>2];H[o+28>>2]=H[o+124>>2];H[o+32>>2]=q;q=H[o+136>>2];H[o+36>>2]=H[o+132>>2];H[o+40>>2]=q;H[o+44>>2]=H[o+140>>2];H[o+48>>2]=r;break c}if(!(p>2])){break f}s=H[o+116>>2];H[o+16>>2]=H[o+112>>2];H[o+20>>2]=s;s=H[o+108>>2];H[o+8>>2]=H[o+104>>2];H[o+12>>2]=s;s=H[o+100>>2];H[o>>2]=H[o+96>>2];H[o+4>>2]=s;L[o+24>>2]=L[o+120>>2];s=H[o+128>>2];H[o+28>>2]=H[o+124>>2];H[o+32>>2]=s;s=H[o+136>>2];H[o+36>>2]=H[o+132>>2];H[o+40>>2]=s;H[o+44>>2]=H[o+140>>2];H[o+48>>2]=r;if(p<=O(0)){break c}}s=H[r>>2]}r=H[(s<<2)+86160>>2]+r|0;if((q|0)!=(r|0)){continue}break}}r=H[o+48>>2]}if(!r){M[o+88>>3]=ga;M[o+80>>3]=fa;M[o+72>>3]=ea;r=1;break b}if(!(!I[a+298|0]|L[o+36>>2]!=O(0))){i:{s=H[a+36>>2];if(s){x=L[a+276>>2];P=O(M[o+72>>3]);E=O(M[o+80>>3]);B=O(M[o+88>>3]);f=0;break i}while(1)continue}while(1){j:{if(!s){U=1;break j}r=H[a+32>>2];b=r+(s<<2)|0;U=1;while(1){k:{if(K[r>>2]<2){break k}l:{m:{d=H[r+8>>2];switch(J[d+4>>1]-5|0){case 1:break l;case 0:break m;default:break k}}Ra[H[H[d>>2]+216>>2]](o+96|0,d);if(!(F[o+96|0]&1)){break k}}c=H[r+4>>2];Ra[H[H[c>>2]+40>>2]](o+96|0,c);Ra[H[H[d>>2]+76>>2]](o+240|0,d);Ra[H[H[c>>2]+80>>2]](o+208|0,c);D=L[o+252>>2];t=L[o+220>>2];u=L[o+208>>2];y=L[o+240>>2];A=L[o+244>>2];p=L[o+212>>2];w=L[o+248>>2];j=L[o+216>>2];L[o+188>>2]=O(O(O(D*t)-O(u*y))-O(A*p))-O(w*j);L[o+184>>2]=O(O(y*p)+O(O(D*j)+O(w*t)))-O(u*A);L[o+180>>2]=O(O(w*u)+O(O(D*p)+O(A*t)))-O(j*y);L[o+176>>2]=O(O(A*j)+O(O(D*u)+O(y*t)))-O(p*w);j=L[o+232>>2];z=O(j+j);j=L[o+224>>2];t=O(j+j);j=L[o+228>>2];u=O(j+j);p=O(O(w*z)+O(O(y*t)+O(A*u)));j=O(O(D*D)+O(-.5));L[o+200>>2]=L[o+264>>2]+O(O(w*p)+O(O(z*j)+O(D*O(O(y*u)-O(t*A)))));L[o+196>>2]=L[o+260>>2]+O(O(A*p)+O(O(u*j)+O(D*O(O(w*t)-O(z*y)))));L[o+192>>2]=L[o+256>>2]+O(O(y*p)+O(O(t*j)+O(D*O(O(A*z)-O(u*w)))));L[o+240>>2]=L[a+244>>2];L[o+244>>2]=L[a+248>>2];L[o+248>>2]=L[a+252>>2];j=L[a+256>>2];L[o+264>>2]=B;L[o+260>>2]=E;L[o+256>>2]=P;L[o+252>>2]=j;n:{if(H[e+36>>2]==1){p=L[e+40>>2];j=L[e+44>>2];H[o+208>>2]=2;L[o+216>>2]=j*O(.5);L[o+212>>2]=x+p;H[o+160>>2]=o+96;U=0;if(gU(o+160|0,o+156|0,o+208|0,o+240|0,H[o+160>>2],o+176|0)){break n}break k}u=L[e+40>>2];p=L[e+44>>2];j=L[e+48>>2];H[o+208>>2]=3;L[o+220>>2]=x+j;L[o+216>>2]=x+p;L[o+212>>2]=x+u;H[o+160>>2]=o+96;U=0;if(!gU(o+160|0,o+156|0,o+208|0,o+240|0,H[o+160>>2],o+176|0)){break k}}U=1;f=f+1|0;j=L[o+156>>2];B=O(B+O(j*L[o+168>>2]));E=O(E+O(j*L[o+164>>2]));P=O(P+O(j*L[o+160>>2]))}r=H[(H[r>>2]<<2)+86160>>2]+r|0;if((b|0)!=(r|0)){continue}break}}if(!(!U|f>>>0>3)){s=H[a+36>>2];continue}break}if(i){H[i>>2]=ha+1}M[e+24>>3]=B;M[e+16>>3]=E;M[e+8>>3]=P;r=1;break a}o:{if(K[r>>2]<=1){U=0;s=1;if(ia){break o}H[c+8>>2]=0;H[c+12>>2]=-1;s=0;v=Oa-80|0;Oa=v;q=H[H[o+48>>2]+4>>2];r=q>>>16|0;C=H[c>>2];p:{q:{r:{switch(q&65535){case 0:r=H[H[H[C+520>>2]+68>>2]+(r<<2)>>2];na=v,oa=Ra[H[H[C>>2]+16>>2]](C)|0,H[na+8>>2]=oa;q=H[o+12>>2];H[v+24>>2]=H[o+8>>2];H[v+28>>2]=q;q=H[o+20>>2];H[v+32>>2]=H[o+16>>2];H[v+36>>2]=q;q=H[o+4>>2];H[v+16>>2]=H[o>>2];H[v+20>>2]=q;L[v+40>>2]=L[o+24>>2];L[v+44>>2]=L[o+28>>2];L[v+48>>2]=L[o+32>>2];L[v+52>>2]=L[o+56>>2];L[v+56>>2]=L[o+60>>2];L[v+60>>2]=L[o+64>>2];L[v+64>>2]=ba;na=v,oa=Ra[H[H[r>>2]+16>>2]](r)|0,H[na+68>>2]=oa;q=H[C+72>>2];if(q){Ra[H[H[q>>2]+4>>2]](q,v+8|0)}q=H[C+76>>2];if(!q){break p}Ra[H[H[q>>2]+4>>2]](v+72|0,q,H[v+68>>2]);break q;case 1:na=v,oa=Ra[H[H[C>>2]+16>>2]](C)|0,H[na+8>>2]=oa;q=H[o+12>>2];H[v+24>>2]=H[o+8>>2];H[v+28>>2]=q;q=H[o+20>>2];H[v+32>>2]=H[o+16>>2];H[v+36>>2]=q;q=H[o+4>>2];H[v+16>>2]=H[o>>2];H[v+20>>2]=q;L[v+40>>2]=L[o+24>>2];L[v+44>>2]=L[o+28>>2];L[v+48>>2]=L[o+32>>2];L[v+52>>2]=L[o+56>>2];L[v+56>>2]=L[o+60>>2];L[v+60>>2]=L[o+64>>2];L[v+64>>2]=ba;r=H[H[c+4>>2]+4>>2]+N(r,72)|0;q=H[r>>2];H[v+68>>2]=H[r+12>>2];H[c+12>>2]=q;q=r+8|0;H[c+8>>2]=q;r=H[C+72>>2];if(r){Ra[H[H[r>>2]+8>>2]](r,v+8|0)}r=H[C+76>>2];if(!r){break p}Ra[H[H[r>>2]+8>>2]](v+72|0,r,q);break q;case 2:break r;default:break p}}na=v,oa=Ra[H[H[C>>2]+16>>2]](C)|0,H[na+8>>2]=oa;q=H[o+12>>2];H[v+24>>2]=H[o+8>>2];H[v+28>>2]=q;q=H[o+20>>2];H[v+32>>2]=H[o+16>>2];H[v+36>>2]=q;q=H[o+4>>2];H[v+16>>2]=H[o>>2];H[v+20>>2]=q;L[v+40>>2]=L[o+24>>2];L[v+44>>2]=L[o+28>>2];L[v+48>>2]=L[o+32>>2];L[v+52>>2]=L[o+56>>2];L[v+56>>2]=L[o+60>>2];L[v+60>>2]=L[o+64>>2];L[v+64>>2]=ba;r=H[H[c+4>>2]+16>>2]+(r<<6)|0;q=H[r>>2];H[v+68>>2]=H[r+12>>2];H[c+12>>2]=q;q=r+8|0;H[c+8>>2]=q;r=H[C+72>>2];if(r){Ra[H[H[r>>2]+8>>2]](r,v+8|0)}r=H[C+76>>2];if(!r){break p}Ra[H[H[r>>2]+8>>2]](v+72|0,r,q)}s=I[v+72|0]}Oa=v+80|0;s=!(s&2);if((l|0)!=2){break o}q=H[a+324>>2];r=H[c+8>>2];if(r){H[a+176>>2]=H[c+12>>2];H[a+324>>2]=q|32;S=M[o>>3];T=M[o+8>>3];p=O(M[o+16>>3]);L[a+236>>2]=p;t=O(T);L[a+232>>2]=t;u=O(S);L[a+228>>2]=u;A=L[r+40>>2];p=O(p-O(M[r+24>>3]));w=O(p+p);x=L[r+32>>2];p=O(u-O(M[r+8>>3]));B=O(p+p);p=O(t-O(M[r+16>>3]));z=O(p+p);t=L[r+36>>2];u=O(O(A*w)+O(O(x*B)+O(z*t)));y=L[r+44>>2];p=O(O(y*y)+O(-.5));L[a+224>>2]=O(A*u)+O(O(w*p)-O(y*O(O(x*z)-O(B*t))));L[a+220>>2]=O(t*u)+O(O(z*p)-O(y*O(O(A*B)-O(w*x))));L[a+216>>2]=O(x*u)+O(O(B*p)-O(y*O(O(t*w)-O(z*A))));break o}H[a+324>>2]=q|16;break o}C=H[r+8>>2];s:{if((l|0)==2){s=H[r+4>>2];r=H[a+324>>2]&-49;H[a+324>>2]=r;t:{if(J[C+4>>1]!=6){break t}q=H[o+40>>2];if((q|0)==-1){break t}H[a+324>>2]=r|4;q=H[a+8>>2]+N(q,36)|0;ca=L[q+20>>2];_=L[q+8>>2];P=L[q+32>>2];ka=M[a+64>>3];la=M[a+88>>3];ma=M[a+48>>3];da=M[a+72>>3];S=M[a+56>>3];T=M[a+80>>3];Q=L[a+268>>2];V=L[a+260>>2];X=L[a+264>>2];y=L[q+12>>2];E=L[q>>2];A=O(y-E);w=L[q+28>>2];D=L[q+4>>2];x=O(w-D);B=L[q+24>>2];p=O(B-E);z=L[q+16>>2];t=O(z-D);Y=O(O(A*x)-O(p*t));L[a+128>>2]=Y;u=O(ca-_);R=O(u*p);p=O(P-_);R=O(R-O(p*A));L[a+124>>2]=R;A=O(O(t*p)-O(x*u));L[a+120>>2]=A;x=O(O(_*Q)+O(O(E*V)+O(D*X)));z=O(O(ca*Q)+O(O(y*V)+O(X*z)));p=x>z?x:z;t=O(O(P*Q)+O(O(B*V)+O(X*w)));u=O(O(Q*O((ka+la)*.5))+O(O(V*O((ma+da)*.5))+O(X*O((S+T)*.5))));L[a+148>>2]=(p>t?p:t)+u;p=x>2]=(pO(0))){break t}p=O(O(1)/p);L[a+128>>2]=Y*p;L[a+124>>2]=R*p;L[a+120>>2]=A*p}H[n>>2]=s;H[m>>2]=C;Ra[H[H[C>>2]+76>>2]](o+96|0,C);Ra[H[H[s>>2]+80>>2]](o+240|0,s);x=L[o+120>>2];B=L[o+116>>2];V=L[o+248>>2];X=L[o+240>>2];_=L[o+244>>2];Y=L[o+252>>2];z=L[o+112>>2];$=L[o+96>>2];y=L[o+256>>2];Z=L[o+108>>2];aa=L[o+100>>2];A=L[o+264>>2];Q=L[o+104>>2];w=L[o+260>>2];S=M[o>>3];T=M[o+8>>3];p=O(M[o+16>>3]);L[a+212>>2]=p;t=O(T);L[a+208>>2]=t;u=O(S);L[a+204>>2]=u;R=O(O(O($*_)+O(O(Z*V)+O(Q*Y)))-O(X*aa));D=x;ca=O(A+A);P=O(y+y);E=O(w+w);w=O(O(Q*ca)+O(O($*P)+O(aa*E)));x=O(O(Z*Z)+O(-.5));p=O(p-O(D+O(O(Q*w)+O(O(ca*x)+O(Z*O(O($*E)-O(P*aa)))))));D=O(p+p);y=O(O(O(aa*V)+O(O(Z*X)+O($*Y)))-O(_*Q));p=O(u-O(z+O(O($*w)+O(O(P*x)+O(Z*O(O(aa*ca)-O(E*Q)))))));A=O(p+p);z=O(O(O(Q*X)+O(O(Z*_)+O(aa*Y)))-O(V*$));p=O(t-O(B+O(O(aa*w)+O(O(E*x)+O(Z*O(O(Q*P)-O(ca*$)))))));t=O(p+p);u=O(O(R*D)+O(O(y*A)+O(z*t)));B=O(O(O(O(Z*Y)-O(X*$))-O(aa*_))-O(Q*V));p=O(O(B*B)+O(-.5));L[a+200>>2]=O(R*u)+O(O(D*p)-O(B*O(O(y*t)-O(A*z))));L[a+196>>2]=O(z*u)+O(O(t*p)-O(B*O(O(R*A)-O(D*y))));L[a+192>>2]=O(y*u)+O(O(A*p)-O(B*O(O(z*D)-O(t*R))));U=0;break s}U=0;u:{if(J[C+4>>1]!=6|ja){break u}q=H[o+40>>2];if((q|0)==-1){break u}H[a+324>>2]=H[a+324>>2]|8;q=H[a+8>>2]+N(q,36)|0;w=L[q+20>>2];x=L[q+32>>2];A=L[q+8>>2];p=L[q>>2];B=O(L[q+12>>2]-p);u=L[q+4>>2];z=O(L[q+28>>2]-u);p=O(L[q+24>>2]-p);t=O(L[q+16>>2]-u);y=O(O(B*z)-O(p*t));L[a+140>>2]=y;u=O(w-A);D=O(u*p);p=O(x-A);w=O(D-O(p*B));L[a+136>>2]=w;t=O(O(t*p)-O(z*u));L[a+132>>2]=t;p=O(W(O(O(y*y)+O(O(t*t)+O(w*w)))));if(p>O(0)){p=O(O(1)/p);y=O(y*p);L[a+140>>2]=y;w=O(w*p);L[a+136>>2]=w;t=O(t*p);L[a+132>>2]=t}if(!I[a+300|0]|!(O(O(y*L[a+268>>2])+O(O(t*L[a+260>>2])+O(w*L[a+264>>2])))>2];na=s,oa=Ra[H[H[r>>2]+16>>2]](r)|0,H[na+8>>2]=oa;q=H[o+12>>2];H[s+24>>2]=H[o+8>>2];H[s+28>>2]=q;q=H[o+20>>2];H[s+32>>2]=H[o+16>>2];H[s+36>>2]=q;q=H[o+4>>2];H[s+16>>2]=H[o>>2];H[s+20>>2]=q;L[s+40>>2]=L[o+24>>2];L[s+44>>2]=L[o+28>>2];L[s+48>>2]=L[o+32>>2];L[s+52>>2]=L[o+56>>2];L[s+56>>2]=L[o+60>>2];L[s+60>>2]=L[o+64>>2];L[s+64>>2]=ba;q=H[o+48>>2];H[s+68>>2]=H[q+4>>2];H[s+72>>2]=H[q+8>>2];H[s+76>>2]=H[o+44>>2];q=H[r+72>>2];if(q){Ra[H[H[q>>2]>>2]](q,s+8|0)}q=H[r+76>>2];if(q){Ra[H[H[q>>2]>>2]](s,q,H[s+68>>2],H[s+72>>2]);q=I[s|0]}else{q=0}Oa=s+80|0;s=!(q&2)}B=L[a+268>>2];z=L[a+260>>2];t=L[a+264>>2];L[a+308>>2]=O(O(M[o+16>>3])*B)+O(O(O(M[o>>3])*z)+O(t*O(M[o+8>>3])));u=L[o+36>>2];p=L[a+276>>2];if(u>p){p=O(u-p);M[o+72>>3]=M[o+72>>3]+ +O(p*L[o+56>>2]);M[o+80>>3]=M[o+80>>3]+ +O(p*L[o+60>>2]);M[o+88>>3]=M[o+88>>3]+ +O(p*L[o+64>>2])}y=L[o+32>>2];x=L[o+28>>2];w=L[o+24>>2];v:{if(!U&(!(I[a+324|0]&2)|H[a+240>>2]==1)){break v}p=O(O(y*B)+O(O(w*z)+O(t*x)));y=O(y-O(B*p));w=O(w-O(z*p));x=O(x-O(t*p));p=O(W(O(O(y*y)+O(O(w*w)+O(x*x)))));if(!(p>O(0))){break v}p=O(O(1)/p);y=O(y*p);x=O(x*p);w=O(w*p)}q=H[a+324>>2]&64;t=L[o+64>>2];u=L[o+56>>2];p=L[o+60>>2];z=O(O(t*y)+O(O(u*w)+O(x*p)));t=O(t-O(O(y+y)*z));P=O(u-O(O(w+w)*z));E=O(p-O(O(x+x)*z));p=O(W(O(O(t*t)+O(O(P*P)+O(E*E)))));if(p>O(0)){p=O(O(1)/p);t=O(t*p);P=O(P*p);E=O(E*p)}r=h-1|0;h=(l|0)==2?s?r:ha?r:h+8|0:r;p=O(O(t*y)+O(O(P*w)+O(x*E)));t=O(t-O(y*p));x=O(E-O(x*p));w=O(P-O(w*p));da=M[o+88>>3];p=O(ga-da);D=O(p*p);T=M[o+72>>3];p=O(ea-T);u=O(p*p);S=M[o+80>>3];p=O(fa-S);u=O(W(O(D+O(u+O(p*p)))));w:{if(!q){break w}p=O(W(O(O(t*t)+O(O(w*w)+O(x*x)))));if(!(p>O(0))){break w}p=O(O(1)/p);t=O(t*p);x=O(x*p);w=O(w*p)}ha=ha+1|0;ga=da+ +O(u*t);fa=S+ +O(u*x);ea=T+ +O(u*w);r=1;if(h){continue}break}}if(i){H[i>>2]=ha}a=H[o+76>>2];H[e+8>>2]=H[o+72>>2];H[e+12>>2]=a;a=H[o+92>>2];H[e+24>>2]=H[o+88>>2];H[e+28>>2]=a;a=H[o+84>>2];H[e+16>>2]=H[o+80>>2];H[e+20>>2]=a}Oa=o+272|0;return r&1}function Cx(a,b,c,d,e,f,g,h,i){var j=O(0),k=0,l=O(0),m=O(0),n=O(0),o=O(0),p=0,q=O(0),r=0,s=O(0),t=0,u=0,v=O(0),w=0,x=O(0),y=O(0),z=0,A=0,B=0,C=O(0),D=O(0),E=O(0),K=O(0),M=0,Q=O(0),R=O(0),S=0,T=0,U=0,V=O(0),X=O(0),Y=O(0),Z=O(0),_=O(0),$=0,aa=O(0),ba=0,ca=O(0),da=O(0),ea=O(0),fa=O(0),ga=O(0),ha=O(0),ia=O(0),ja=O(0),ka=O(0),la=O(0),ma=O(0),na=O(0),oa=O(0),pa=O(0),qa=0,ra=O(0),sa=O(0),ta=O(0),ua=O(0),va=O(0),wa=O(0),xa=O(0),ya=O(0),za=O(0),Aa=O(0),Ba=O(0),Ca=O(0),Da=O(0),Ea=O(0),Fa=O(0),Ga=O(0),Ha=O(0),Ia=O(0),Ja=O(0),Ka=O(0),La=O(0),Ma=O(0),Na=O(0),Pa=O(0),Qa=O(0),Sa=O(0),Ta=O(0),Ua=O(0),Va=O(0),Wa=O(0),Xa=O(0),Ya=O(0),Za=O(0),_a=O(0),$a=O(0),ab=O(0),bb=0,cb=O(0),db=O(0),eb=O(0),fb=O(0),gb=O(0),hb=O(0);p=Oa-48|0;Oa=p;u=H[a+16>>2];G[u+22>>1]=0;H[c+4112>>2]=0;H[p+44>>2]=1065353216;H[p+40>>2]=1065353216;H[p+36>>2]=1065353216;H[p+32>>2]=1065353216;F[p+31|0]=0;F[p+30|0]=0;M=c+16|0;l=L[H[a+28>>2]+76>>2];j=L[H[a+32>>2]+76>>2];S=yx(M,b,p+31|0,p+30|0,p+44|0,p+40|0,p+36|0,p+32|0,j>l?l:j);a:{if(!S){F[a+140|0]=0;H[a+136>>2]=0;a=1;break a}T=c+11812|0;H[T>>2]=0;H[T+4>>2]=0;B=c+4128|0;ez(B,M,H[c+4112>>2]);r=a+36|0;t=a- -64|0;fz(B,M,r,t,0,0);b:{c:{d:{e:{f:{U=H[c+11816>>2];if(!U){break f}T=(h|0)==1?1:2;z=(H[a+96>>2]|H[a+92>>2])&8;ba=z?7:6;w=z?112:48;h=0;while(1){A=H[((h<<2)+c|0)+11424>>2];g:{if(!A){break g}$=(A<<2)+12&-16;k=(N(w,A)+k|0)+80|0;if(!(F[(N(h,104)+c|0)+6945|0]&1)){k=(k+$|0)+(N(A,T)<>2]>>2]](g,$+16|0)|0;k=g+1>>>0<2;if(k){break e}A=0;F[a+140|0]=0;H[a+136>>2]=0;H[u+24>>2]=g;F[b+12|0]=S;G[u+22>>1]=h>>>4;b=H[a+32>>2];h=H[a+28>>2];if(!z){break c}c=H[a+20>>2];G[p+24>>1]=J[u+8>>1];H[p+20>>2]=h;H[p+16>>2]=c;c=H[a+24>>2];G[p+8>>1]=J[u+10>>1];H[p+4>>2]=b;H[p>>2]=c;h=g;aa=L[p+44>>2];n=L[p+36>>2];ca=L[p+40>>2];m=L[p+32>>2];j=L[a+128>>2];S=0;c=Oa-480|0;Oa=c;L[c+464>>2]=L[a+132>>2];u=p+16|0;a=J[u+8>>1];h:{if((a|0)==65535){f=L[H[u+4>>2]+68>>2];break h}b=H[u>>2];f=O(Ra[H[H[b>>2]+124>>2]](b,a))}a=J[p+8>>1];if((a|0)==65535){l=L[H[p+4>>2]+68>>2]}else{b=H[p>>2];l=O(Ra[H[H[b>>2]+124>>2]](b,a))}L[c+448>>2]=(f>l?f:l)/d;L[c+432>>2]=j;L[c+416>>2]=e;px(c+384|0,u);px(c+352|0,p);L[c+336>>2]=d;L[c+320>>2]=d*O(.800000011920929);d=L[r+24>>2];a=H[r+20>>2];b=H[r+16>>2];H[c+316>>2]=0;L[c+312>>2]=d;H[c+304>>2]=b;H[c+308>>2]=a;d=L[t+24>>2];a=H[t+20>>2];b=H[t+16>>2];H[c+300>>2]=0;L[c+296>>2]=d;H[c+288>>2]=b;H[c+292>>2]=a;t=H[B+7688>>2];L[c+272>>2]=aa;L[c+256>>2]=ca;L[c+240>>2]=n;L[c+224>>2]=m;i:{if(!t){break i}b=g;while(1){j:{a=B+(A<<2)|0;z=H[a+7296>>2];if(!z){break j}k=H[a+7424>>2];r=J[B+N(k,44)>>1];a=M+(r<<6)|0;d=L[a>>2];e=L[a+4>>2];f=L[a+8>>2];H[c+140>>2]=0;L[c+136>>2]=f;L[c+132>>2]=e;L[c+128>>2]=d;L[c+96>>2]=L[a+60>>2];F[b|0]=3;F[b+1|0]=z;L[b+8>>2]=L[c+272>>2];l=L[c+256>>2];F[b+36|0]=0;L[b+28>>2]=m;L[b+4>>2]=n;L[b+12>>2]=l;L[b+24>>2]=f;L[b+20>>2]=e;L[b+16>>2]=d;b=b+48|0;if((k|0)==65535){break j}while(1){a=B+N(k,44)|0;z=I[a+5|0];if(z){r=M+((r&65535)<<6)|0;k=0;while(1){Ax(c- -64|0,u,p,c+272|0,c+256|0,c+240|0,c+224|0,c+304|0,c+288|0,c+128|0,c+336|0,c+320|0,c+432|0,c+448|0,c+96|0,c+416|0,r+(k<<6)|0,b,c+464|0,i,c+384|0,c+352|0);b=b+112|0;k=k+1|0;if((z|0)!=(k|0)){continue}break}}k=J[a+2>>1];if((k|0)==65535){break j}r=J[B+N(k,44)>>1];continue}}A=A+1|0;if((t|0)!=(A|0)){continue}break}A=0;if(!t){break i}while(1){a=B+(S<<2)|0;k=H[a+7296>>2];if(k){G[h+2>>1]=b-h;r=a+7424|0;a=M+(J[B+N(H[r>>2],44)>>1]<<6)|0;R=L[a+44>>2];f=L[a+8>>2];d=L[a>>2];e=L[a+4>>2];a=I[a+48|0];z=I[h+1|0];F[b+3|0]=0;F[b+1|0]=k;U=a&1;F[b+2|0]=U?0:N(k,T);ba=k<<2;w=S6(b+32|0,0,ba);ox(c+128|0,u);ox(c+96|0,p);s=O(0);l=O(0);j=O(0);q=O(L[c+136>>2]-L[c+104>>2]);x=O(L[c+128>>2]-L[c+96>>2]);C=O(L[c+132>>2]-L[c+100>>2]);o=O(O(f*q)+O(O(d*x)+O(e*C)));q=O(q-O(f*o));x=O(x-O(d*o));o=O(C-O(e*o));a=O(O(q*q)+O(O(x*x)+O(o*o)))>O(9999999747378752e-21);k=O(P(d))O(0)){l=O(O(1)/O(W(C)));j=O(q*l);s=O(x*l);l=O(o*l)}bb=N(z,112)+h|0;a=w+(ba+12&-16)|0;L[c+196>>2]=l;L[c+192>>2]=s;L[c+212>>2]=O(s*e)-O(d*l);L[c+200>>2]=j;L[c+208>>2]=O(j*d)-O(f*s);L[c+204>>2]=O(l*f)-O(e*j);k:{if(U){break k}L[b+20>>2]=m;L[b+16>>2]=n;L[b+12>>2]=ca;L[b+8>>2]=aa;L[b+4>>2]=R;F[b|0]=12;k=0;A=1;b=H[r>>2];if((b|0)==65535){break k}while(1){z=B+N(b,44)|0;U=I[z+5|0];if(U){ba=M+(J[z>>1]<<6)|0;h=0;while(1){if(T){d=L[c+368>>2];b=ba+(h<<6)|0;e=L[b+20>>2];l=O(e-L[c+292>>2]);f=L[b+16>>2];j=O(f-L[c+288>>2]);o=L[c+372>>2];da=O(L[c+360>>2]+O(O(d*l)-O(j*o)));q=L[c+376>>2];x=L[b+24>>2];s=O(x-L[c+296>>2]);ea=O(L[c+356>>2]+O(O(q*j)-O(s*d)));fa=O(L[c+352>>2]+O(O(o*s)-O(l*q)));d=L[c+400>>2];o=O(e-L[c+308>>2]);q=O(f-L[c+304>>2]);e=L[c+404>>2];ga=O(L[c+392>>2]+O(O(d*o)-O(q*e)));f=L[c+408>>2];x=O(x-L[c+312>>2]);v=O(L[c+388>>2]+O(O(f*q)-O(x*d)));y=O(L[c+384>>2]+O(O(e*x)-O(o*f)));X=L[b+32>>2];Y=L[b+40>>2];D=L[b+36>>2];E=O(-j);la=O(-q);ma=O(-l);na=O(-s);oa=O(-o);pa=O(-x);r=0;while(1){b=a;a=(c+192|0)+N(k,12)|0;d=L[a>>2];e=L[a+4>>2];f=L[a+8>>2];H[c+188>>2]=0;L[c+184>>2]=f;L[c+180>>2]=e;L[c+176>>2]=d;H[c+172>>2]=0;L[c+168>>2]=O(q*e)+O(d*oa);L[c+164>>2]=O(x*d)+O(f*la);L[c+160>>2]=O(o*f)+O(e*pa);a=c- -64|0;rx(a,c+176|0,c+160|0,u);H[c+28>>2]=0;L[c+24>>2]=-L[c+184>>2];L[c+20>>2]=-L[c+180>>2];L[c+16>>2]=-L[c+176>>2];H[c+12>>2]=0;L[c+8>>2]=-O(O(j*e)+O(d*ma));L[c+4>>2]=-O(O(s*d)+O(f*E));L[c>>2]=-O(O(l*f)+O(e*na));w=c+32|0;qa=c+16|0;rx(w,qa,c,p);sx(qa,u,a,c+128|0,c+272|0,c+240|0,p,w,c+96|0,c+256|0,c+224|0,i);e=L[c+184>>2];f=L[c+176>>2];R=L[c+180>>2];d=O(O(Y*e)+O(O(X*f)+O(D*R)));l:{if(J[u+8>>1]==65535){d=O(d+O(O(ga*e)+O(O(y*f)+O(v*R))));break l}if(J[p+8>>1]!=65535){break l}d=O(d-O(O(da*e)+O(O(fa*f)+O(ea*R))))}k=1-k|0;a=b+128|0;C=L[c+16>>2];w=H[c+84>>2];qa=H[c+80>>2];L[b+24>>2]=L[c+88>>2];H[b+16>>2]=qa;H[b+20>>2]=w;L[b+28>>2]=C>O(0)?O(O(1)/C):O(0);C=L[c+48>>2];ra=L[c+52>>2];sa=L[c+56>>2];H[b+44>>2]=0;L[b+48>>2]=d;H[b+12>>2]=0;L[b+8>>2]=e;L[b+4>>2]=R;L[b>>2]=f;L[b+40>>2]=-sa;L[b+36>>2]=-ra;L[b+32>>2]=-C;w=H[c+132>>2];H[b+64>>2]=H[c+128>>2];H[b+68>>2]=w;w=H[c+140>>2];H[b+72>>2]=H[c+136>>2];H[b+76>>2]=w;w=H[c+148>>2];H[b+80>>2]=H[c+144>>2];H[b+84>>2]=w;w=H[c+156>>2];H[b+88>>2]=H[c+152>>2];H[b+92>>2]=w;w=H[c+100>>2];H[b+96>>2]=H[c+96>>2];H[b+100>>2]=w;w=H[c+108>>2];H[b+104>>2]=H[c+104>>2];H[b+108>>2]=w;w=H[c+116>>2];H[b+112>>2]=H[c+112>>2];H[b+116>>2]=w;w=H[c+124>>2];H[b+120>>2]=H[c+120>>2];H[b+124>>2]=w;r=r+1|0;if((T|0)!=(r|0)){continue}break}}h=h+1|0;if((U|0)!=(h|0)){continue}break}}b=J[z+2>>1];if((b|0)!=65535){continue}break}}h=bb+48|0;b=a}S=S+1|0;if((t|0)!=(S|0)){continue}break}}Oa=c+480|0;A=A&1;break b}$=0;H[a+136>>2]=0;H[u+24>>2]=0;F[a+140|0]=0;break d}H[a+136>>2]=0;G[u+22>>1]=0;H[u+24>>2]=0;F[a+140|0]=0;a=0;if(k){break a}}H[u+24>>2]=0;F[b+12|0]=S;G[u+22>>1]=$>>>4;a=1;break a}B=H[c+11816>>2];m:{if(!B){a=g;break m}l=L[h+68>>2];j=L[b+68>>2];X=j>2]==2;S=i?11:10;u=i?5:1;ha=O(d*O(.800000011920929));x=O(L[p+44>>2]*L[h+12>>2]);la=L[b- -64>>2];ma=L[b+60>>2];na=L[b+56>>2];oa=L[b+52>>2];pa=L[b+48>>2];ra=L[b+44>>2];sa=L[b+40>>2];Aa=L[b+36>>2];Ba=L[h- -64>>2];Ca=L[h+60>>2];Da=L[h+56>>2];Ea=L[h+52>>2];Fa=L[h+48>>2];Ga=L[h+44>>2];Ha=L[h+40>>2];Ia=L[h+36>>2];Ja=L[b+24>>2];Ka=L[b+20>>2];La=L[h+24>>2];Ma=L[h+20>>2];Na=L[a+88>>2];Pa=L[a+84>>2];Qa=L[a+80>>2];Sa=L[a+60>>2];Ta=L[a+56>>2];Ua=L[a+52>>2];wa=O(L[b+12>>2]*O(-L[p+40>>2]));Va=O(-wa);Wa=L[b+32>>2];Xa=L[h+32>>2];Ya=L[b+16>>2];Za=L[h+16>>2];ca=L[b+8>>2];C=L[b+4>>2];da=L[b>>2];ea=L[h+8>>2];fa=L[h+4>>2];ga=L[h>>2];ia=L[a+132>>2];ja=L[a+128>>2];M=I[a+126|0];r=H[a+112>>2];R=L[p+32>>2];aa=L[p+36>>2];i=c+4128|0;a=g;while(1){n:{b=A<<2;t=H[(b+c|0)+11424>>2];if(!t){break n}h=H[(b+i|0)+7424>>2];k=J[i+N(h,44)>>1];b=(k<<6)+c|0;Y=L[b+76>>2];l=L[b+16>>2];j=L[b+20>>2];n=L[b+24>>2];F[a|0]=u;L[a+12>>2]=Va;L[a+8>>2]=x;L[a+28>>2]=R;L[a+4>>2]=aa;F[a+36|0]=M;L[a+24>>2]=n;L[a+20>>2]=j;L[a+16>>2]=l;H[a+32>>2]=r;F[a+1|0]=t;a=a+48|0;if((h|0)==65535){break n}ka=O(O(O(O(ga*l)-O(da*l))+O(O(fa*j)-O(C*j)))+O(O(ea*n)-O(ca*n)));m=O(O(n*n)+O(O(l*l)+O(j*j)));ta=O(wa*m);xa=O(x*m);while(1){t=N(h,44)+c|0;z=I[t+4133|0];if(z){U=(((k&65535)<<6)+c|0)+16|0;k=0;while(1){b=U+(k<<6)|0;ua=L[b+40>>2];ya=L[b+36>>2];va=L[b+32>>2];za=L[b+12>>2];q=L[b+16>>2];o=O(q-Ua);v=L[b+20>>2];s=O(v-Ta);m=O(O(o*j)-O(l*s));D=O(-m);y=L[b+24>>2];Q=O(y-Sa);s=O(O(s*n)-O(j*Q));E=O(-s);o=O(O(Q*l)-O(n*o));Q=O(-o);K=O(q-Qa);v=O(v-Pa);q=O(O(K*j)-O(l*v));Z=O(-q);y=O(y-Na);v=O(O(v*n)-O(j*y));_=O(-v);y=O(O(y*l)-O(n*K));K=O(-y);m=(m>D?m:D)E?s:E)Q?o:Q)Z?q:Z)_?v:_)K?y:K)O(0)?O(O(1)/V):O(0);L[a+32>>2]=V;m=O(O(ka+O(O(m*La)+O(O(s*Za)+O(Ma*o))))-O(O(q*Ja)+O(O(v*Ya)+O(Ka*y))));o=O(-m);s=O(za-ja);h=Y>O(0)&e>m&o>O(s*d);o=O(V*O(O(O(O(n*ua)+O(O(l*va)+O(j*ya)))+(h?O(Y*o):O(0)))-m));m=O(ha*s);m=O((m>2]=o-m;L[a+40>>2]=o+(h?O(0):O(-(m>O(0)?m:O(0))));m=L[b+28>>2];H[a+28>>2]=0;L[a+24>>2]=Z;L[a+20>>2]=K;L[a+16>>2]=_;H[a+12>>2]=0;L[a+8>>2]=D;L[a+4>>2]=Q;L[a>>2]=E;L[a+44>>2]=m;a=a+48|0;k=k+1|0;if((z|0)!=(k|0)){continue}break}}h=J[t+4130>>1];if((h|0)==65535){break n}k=J[(N(h,44)+c|0)+4128>>1];continue}}A=A+1|0;if((B|0)!=(A|0)){continue}break}Q=O(ea-ca);Z=O(fa-C);_=O(ga-da);i=c+4128|0;M=c+16|0;b=g;A=0;u=0;while(1){k=u<<2;h=H[(k+c|0)+11424>>2];if(h){k=(i+k|0)+7424|0;r=J[i+N(H[k>>2],44)>>1];G[b+2>>1]=a-b;r=M+(r<<6)|0;d=L[r+44>>2];r=I[r+48|0];t=I[b+1|0];F[a+1|0]=h;r=r&1;F[a+2|0]=r?0:N(h,T);h=h<<2;h=S6(a+32|0,0,N(h,T))+(h+12&-16)|0;b=(N(t,48)+b|0)+48|0;o:{if(r){break o}k=H[k>>2];r=J[i+N(k,44)>>1];t=M+(r<<6)|0;j=L[t>>2];m=L[t+8>>2];n=L[t+4>>2];L[a+20>>2]=R;L[a+16>>2]=aa;L[a+12>>2]=Va;L[a+8>>2]=x;L[a+4>>2]=d;F[a|0]=S;if((k|0)==65535){break o}d=O(O(m*Q)+O(O(j*_)+O(Z*n)));e=O(_-O(j*d));a=O(P(j))O(9999999747378752e-21);e=t?e:a?O(0):O(-n);o=e;l=t?l:a?n:O(0);q=O(e*e);e=t?d:a?O(-m):j;s=O(O(1)/O(W(O(O(l*l)+O(q+O(e*e))))));d=O(o*s);e=O(e*s);o=O(O(d*n)-O(j*e));l=O(l*s);q=O(O(l*j)-O(m*d));s=O(O(e*m)-O(n*l));while(1){t=N(k,44)+c|0;z=I[t+4133|0];p:{if(!z){j=d;n=e;m=l;break p}r=((r<<6)+c|0)+16|0;k=0;while(1){a=r+(k<<6)|0;m=L[a+16>>2];j=O(m-Qa);n=O(-j);ta=(j>n?j:n)n?j:n)>2];j=O(m-Pa);n=O(-j);va=(j>n?j:n)>2];j=O(v-Na);n=O(-j);_a=(j>n?j:n)n?j:n)n?j:n)>2];gb=L[a+40>>2];hb=L[a+36>>2];a=0;while(1){j=s;n=q;m=o;H[h+44>>2]=0;H[h+12>>2]=0;L[h+8>>2]=l;L[h+4>>2]=e;L[h>>2]=d;v=O(O(ta*e)+O(d*za));y=O(O(va*l)+O(e*cb));X=O(O(_a*d)+O(l*xa));K=O(O(la*v)+O(O(sa*y)+O(oa*X)));L[h+40>>2]=K;V=O(O(ma*v)+O(O(Aa*y)+O(pa*X)));L[h+36>>2]=V;ha=O(O(na*v)+O(O(Wa*y)+O(ra*X)));L[h+32>>2]=ha;Y=O(O(ua*e)+O(d*db));D=O(O($a*l)+O(e*eb));E=O(O(ab*d)+O(l*ya));ia=O(O(Ba*Y)+O(O(Ha*D)+O(Ea*E)));L[h+24>>2]=ia;ja=O(O(Ca*Y)+O(O(Ia*D)+O(Fa*E)));L[h+20>>2]=ja;ka=O(O(Da*Y)+O(O(Xa*D)+O(Ga*E)));L[h+16>>2]=ka;o=l;s=d;q=e;L[h+48>>2]=O(O(gb*l)+O(O(fb*d)+O(hb*e)))-O(O(O(O(l*ea)+O(O(d*ga)+O(fa*e)))+O(O(Y*La)+O(O(D*Za)+O(Ma*E))))-O(O(O(l*ca)+O(O(d*da)+O(C*e)))+O(O(v*Ja)+O(O(y*Ya)+O(Ka*X)))));d=O(O(x+O(aa*O(O(ia*ia)+O(O(ka*ka)+O(ja*ja)))))+O(O(R*O(O(K*K)+O(O(ha*ha)+O(V*V))))-wa));L[h+28>>2]=-(d>O(0)?O(O(1)/d):O(0));h=h- -64|0;l=m;e=n;d=j;a=a+1|0;if((T|0)!=(a|0)){continue}break}A=1;k=k+1|0;if((z|0)!=(k|0)){continue}break}}k=J[t+4130>>1];if((k|0)==65535){break o}r=J[(N(k,44)+c|0)+4128>>1];l=m;e=n;d=j;continue}}a=h}u=u+1|0;if((B|0)!=(u|0)){continue}break}}F[a|0]=0}a=g+$|0;H[a>>2]=0;H[a+4>>2]=0-(A&1);a=1}Oa=p+48|0;return a}function Au(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=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=0,p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=0,C=O(0),D=O(0),E=O(0),G=O(0),J=O(0),K=O(0),M=O(0),P=O(0),Q=O(0),R=0,S=0,T=O(0),U=O(0),V=O(0),X=O(0),Y=0;h=Oa+-64|0;Oa=h;r=L[d+20>>2];G=L[d+24>>2];f=H[f>>2];q=L[d+16>>2];j=L[d+8>>2];n=L[d>>2];s=L[d+4>>2];C=L[d+12>>2];t=L[c+20>>2];p=L[c+24>>2];i=L[c>>2];l=L[c+4>>2];m=L[c+8>>2];k=L[c+12>>2];x=L[c+16>>2];a=0;H[h+60>>2]=0;L[h+56>>2]=p;L[h+52>>2]=t;L[h+48>>2]=x;L[h+44>>2]=k;L[h+40>>2]=m;L[h+36>>2]=l;L[h+32>>2]=i;H[h+28>>2]=0;w=O(i+i);v=O(k+k);z=O(O(m*w)-O(l*v));y=O(O(O(i*w)+O(k*v))+O(-1));w=O(O(w*l)+O(m*v));v=O(O(1)/O(W(O(O(z*z)+O(O(y*y)+O(w*w))))));L[h+24>>2]=v*O(-z);L[h+20>>2]=v*O(-w);L[h+16>>2]=v*O(-y);L[h>>2]=L[e>>2];A=O(O(O(s*m)-O(l*j))+O(O(n*k)-O(C*i)));v=O(A+A);D=O(O(O(j*i)-O(m*n))+O(O(s*k)-O(C*l)));z=O(D+D);J=O(O(1)-O(A*v));K=O(D*z);w=O(J-K);y=O(O(O(n*l)-O(i*s))+O(O(j*k)-O(C*m)));M=O(y+y);P=O(y*M);J=O(J-P);K=O(O(O(1)-K)-P);Q=O(y*z);u=n;n=O(-i);u=O(O(C*k)-O(O(O(u*n)-O(s*l))-O(m*j)));j=O(u*v);C=O(Q-j);s=O(y*v);z=O(u*z);P=O(s+z);Q=O(Q+j);j=O(D*v);E=O(u*M);M=O(j-E);v=O(s-z);z=O(j+E);j=O(q-x);t=O(r-t);p=O(G-p);x=O(O(O(n*j)-O(t*l))-O(m*p));r=O(O(k*k)+O(-.5));n=O(O(O(k*O(O(l*j)-O(i*t)))+O(r*p))-O(m*x));n=O(n+n);s=O(O(O(r*t)+O(k*O(O(i*p)-O(m*j))))-O(l*x));s=O(s+s);k=O(O(O(r*j)+O(k*O(O(m*t)-O(l*p))))-O(i*x));k=O(k+k);i=O(L[e+8>>2]*O(.15000000596046448));m=L[b+4>>2];t=L[b+8>>2];l=m<=t?m:t;j=L[b+12>>2];l=O((j>=l?l:j)*O(.15000000596046448));l=O((i>2];a=a-1|0;c=d+N(a,48)|0;p=L[c+24>>2];q=L[c+40>>2];i=L[c+8>>2];x=L[c>>2];r=L[c+4>>2];E=O(n+O(O(w*i)+O(O(v*x)+O(Q*r))));T=O(k+O(O(P*i)+O(O(K*x)+O(M*r))));U=L[c+16>>2];V=L[c+32>>2];x=O(s+O(O(C*i)+O(O(z*x)+O(J*r))));r=L[c+20>>2];X=L[c+36>>2];i=O(O(q*O(E-p))+O(O(O(T-U)*V)+O(O(x-r)*X)));p=O(p-O(E-O(q*i)));q=O(p*p);p=O(U-O(T-O(V*i)));E=O(p*p);p=O(r-O(x-O(X*i)));a:{if(G>2];H[c>>2]=H[d>>2];H[c+4>>2]=e;e=H[d+44>>2];H[c+40>>2]=H[d+40>>2];H[c+44>>2]=e;e=H[d+36>>2];H[c+32>>2]=H[d+32>>2];H[c+36>>2]=e;e=H[d+28>>2];H[c+24>>2]=H[d+24>>2];H[c+28>>2]=e;e=H[d+20>>2];H[c+16>>2]=H[d+16>>2];H[c+20>>2]=e;e=H[d+12>>2];H[c+8>>2]=H[d+8>>2];H[c+12>>2]=e;break a}L[c+44>>2]=i}if(a){continue}break}a=I[f+64|0]}b:{c:{if((a&255)!=(b|0)){break c}i=O(k-L[f+16>>2]);p=O(-i);x=O(s-L[f+20>>2]);r=O(-x);G=O(n-L[f+24>>2]);q=O(-G);i=i>p?i:p;p=r=p?i:p;i=(q=O(0)?i:O(0);if(l<(i<=p?p:i)){break c}if(!(O(O(u*L[f+12>>2])+O(O(y*L[f+8>>2])+O(O(A*L[f>>2])+O(D*L[f+4>>2]))))>2]=k;L[f+12>>2]=u;L[f+8>>2]=y;L[f+4>>2]=D;L[f>>2]=A;a=0;F[f+64|0]=0;H[f+28>>2]=0;L[f+24>>2]=n;L[f+20>>2]=s;r=O(K*m);G=O(M*t);A=O(r-G);u=O(r+G);y=O(P*j);l=O(u-y);p=O(Q*t);x=O(J*t);D=O(L[h>>2]-k);i=O(y+u);if(D>i){H[g+28>>2]=0;H[g+32>>2]=1065353216;H[g+12>>2]=0;L[g+8>>2]=j;L[g+4>>2]=t;L[g>>2]=m;i=O(k+i);L[g+44>>2]=i;H[g+36>>2]=0;H[g+40>>2]=0;q=O(i*O(0));L[g+24>>2]=O(n+O(O(w*j)+O(O(v*m)+p)))-q;L[g+20>>2]=O(s+O(O(C*j)+O(O(z*m)+x)))-q;L[g+16>>2]=i-i;a=1}i=O(-j);if(l>2]=0;L[b+8>>2]=i;L[b+4>>2]=t;L[b>>2]=m;l=O(k+l);L[b+44>>2]=l;H[b+36>>2]=0;H[b+40>>2]=0;H[b+28>>2]=0;H[b+32>>2]=1065353216;q=O(l*O(0));L[b+24>>2]=O(n+O(O(w*i)+O(O(v*m)+p)))-q;L[b+20>>2]=O(s+O(O(C*i)+O(O(z*m)+x)))-q;L[b+16>>2]=O(k+O(O(P*i)+u))-l;a=a+1|0}l=O(-t);q=O(y+A);if(q>2]=0;L[b+8>>2]=j;L[b+4>>2]=l;L[b>>2]=m;q=O(k+q);L[b+44>>2]=q;H[b+36>>2]=0;H[b+40>>2]=0;H[b+28>>2]=0;H[b+32>>2]=1065353216;E=O(q*O(0));L[b+24>>2]=O(n+O(O(w*j)+O(O(v*m)+O(Q*l))))-E;L[b+20>>2]=O(s+O(O(C*j)+O(O(z*m)+O(J*l))))-E;L[b+16>>2]=O(k+O(y+O(r+O(M*l))))-q;a=a+1|0}q=O(A-y);if(q>2]=0;L[b+8>>2]=i;L[b+4>>2]=l;L[b>>2]=m;q=O(k+q);L[b+44>>2]=q;H[b+36>>2]=0;H[b+40>>2]=0;H[b+28>>2]=0;H[b+32>>2]=1065353216;E=O(q*O(0));L[b+24>>2]=O(n+O(O(w*i)+O(O(v*m)+O(Q*l))))-E;L[b+20>>2]=O(s+O(O(C*i)+O(O(z*m)+O(J*l))))-E;L[b+16>>2]=O(k+O(O(P*i)+O(r+O(M*l))))-q;a=a+1|0}m=O(-m);r=O(y-A);if(r>2]=0;L[b+8>>2]=j;L[b+4>>2]=t;L[b>>2]=m;r=O(k+r);L[b+44>>2]=r;H[b+36>>2]=0;H[b+40>>2]=0;H[b+28>>2]=0;H[b+32>>2]=1065353216;q=O(r*O(0));L[b+24>>2]=O(n+O(O(w*j)+O(O(v*m)+p)))-q;L[b+20>>2]=O(s+O(O(C*j)+O(O(z*m)+x)))-q;L[b+16>>2]=O(k+O(y+O(O(K*m)+G)))-r;a=a+1|0}r=O(-y);A=O(r-A);if(A>2]=0;L[b+8>>2]=i;L[b+4>>2]=t;L[b>>2]=m;t=O(k+A);L[b+44>>2]=t;H[b+36>>2]=0;H[b+40>>2]=0;H[b+28>>2]=0;H[b+32>>2]=1065353216;A=O(t*O(0));L[b+24>>2]=O(n+O(O(w*i)+O(O(v*m)+p)))-A;L[b+20>>2]=O(s+O(O(C*i)+O(O(z*m)+x)))-A;L[b+16>>2]=O(k+O(O(P*i)+O(O(K*m)+G)))-t;a=a+1|0}t=O(y-u);if(t>2]=0;L[b+8>>2]=j;L[b+4>>2]=l;L[b>>2]=m;t=O(k+t);L[b+44>>2]=t;H[b+36>>2]=0;H[b+40>>2]=0;H[b+28>>2]=0;H[b+32>>2]=1065353216;A=O(t*O(0));L[b+24>>2]=O(n+O(O(w*j)+O(O(v*m)+O(Q*l))))-A;L[b+20>>2]=O(s+O(O(C*j)+O(O(z*m)+O(J*l))))-A;L[b+16>>2]=O(k+O(y+O(O(K*m)+O(M*l))))-t;a=a+1|0}b=0;j=O(r-u);if(j>2]=0;L[c+8>>2]=i;L[c+4>>2]=l;L[c>>2]=m;j=O(k+j);L[c+44>>2]=j;H[c+36>>2]=0;H[c+40>>2]=0;H[c+28>>2]=0;H[c+32>>2]=1065353216;u=O(n+O(O(w*i)+O(O(v*m)+O(Q*l))));n=O(j*O(0));L[c+24>>2]=u-n;L[c+20>>2]=O(s+O(O(C*i)+O(O(z*m)+O(J*l))))-n;L[c+16>>2]=O(k+O(O(P*i)+O(O(K*m)+O(M*l))))-j;a=a+1|0}d:{if(a>>>0<=4){if(!a){break d}c=H[g+4>>2];b=H[f+76>>2];H[b>>2]=H[g>>2];H[b+4>>2]=c;c=H[g+12>>2];H[b+8>>2]=H[g+8>>2];H[b+12>>2]=c;c=H[g+20>>2];b=H[f+76>>2];H[b+16>>2]=H[g+16>>2];H[b+20>>2]=c;c=H[g+28>>2];H[b+24>>2]=H[g+24>>2];H[b+28>>2]=c;c=H[g+36>>2];b=H[f+76>>2];H[b+32>>2]=H[g+32>>2];H[b+36>>2]=c;c=H[g+44>>2];H[b+40>>2]=H[g+40>>2];H[b+44>>2]=c;if((a|0)==1){break d}c=H[g+52>>2];b=H[f+76>>2];H[b+48>>2]=H[g+48>>2];H[b+52>>2]=c;c=H[g+60>>2];H[b+56>>2]=H[g+56>>2];H[b+60>>2]=c;d=g- -64|0;e=H[d+4>>2];b=H[f+76>>2];c=b- -64|0;H[c>>2]=H[d>>2];H[c+4>>2]=e;c=H[g+76>>2];H[b+72>>2]=H[g+72>>2];H[b+76>>2]=c;c=H[g+84>>2];b=H[f+76>>2];H[b+80>>2]=H[g+80>>2];H[b+84>>2]=c;c=H[g+92>>2];H[b+88>>2]=H[g+88>>2];H[b+92>>2]=c;if((a|0)==2){break d}c=H[g+100>>2];b=H[f+76>>2];H[b+96>>2]=H[g+96>>2];H[b+100>>2]=c;c=H[g+108>>2];H[b+104>>2]=H[g+104>>2];H[b+108>>2]=c;c=H[g+116>>2];b=H[f+76>>2];H[b+112>>2]=H[g+112>>2];H[b+116>>2]=c;c=H[g+124>>2];H[b+120>>2]=H[g+120>>2];H[b+124>>2]=c;c=H[g+132>>2];b=H[f+76>>2];H[b+128>>2]=H[g+128>>2];H[b+132>>2]=c;c=H[g+140>>2];H[b+136>>2]=H[g+136>>2];H[b+140>>2]=c;if((a|0)==3){break d}c=H[g+148>>2];b=H[f+76>>2];H[b+144>>2]=H[g+144>>2];H[b+148>>2]=c;c=H[g+156>>2];H[b+152>>2]=H[g+152>>2];H[b+156>>2]=c;c=H[g+164>>2];b=H[f+76>>2];H[b+160>>2]=H[g+160>>2];H[b+164>>2]=c;c=H[g+172>>2];H[b+168>>2]=H[g+168>>2];H[b+172>>2]=c;c=H[g+180>>2];b=H[f+76>>2];H[b+176>>2]=H[g+176>>2];H[b+180>>2]=c;c=H[g+188>>2];H[b+184>>2]=H[g+184>>2];H[b+188>>2]=c;break d}e=Oa-80|0;Oa=e;S6(e+16|0,0,a);if(a){k=O(-3.4028234663852886e38);while(1){c=N(b,48)+g|0;i=L[c+24>>2];l=O(i*i);i=L[c+16>>2];n=O(i*i);i=L[c+20>>2];i=O(l+O(n+O(i*i)));c=i>k;k=c?i:k;R=c?b:R;b=b+1|0;if((b|0)!=(a|0)){continue}break}}b=N(R,48)+g|0;d=H[b+4>>2];c=H[f+76>>2];H[c>>2]=H[b>>2];H[c+4>>2]=d;d=H[b+44>>2];H[c+40>>2]=H[b+40>>2];H[c+44>>2]=d;d=H[b+36>>2];H[c+32>>2]=H[b+32>>2];H[c+36>>2]=d;d=H[b+28>>2];H[c+24>>2]=H[b+24>>2];H[c+28>>2]=d;d=H[b+20>>2];H[c+16>>2]=H[b+16>>2];H[c+20>>2]=d;d=H[b+12>>2];H[c+8>>2]=H[b+8>>2];H[c+12>>2]=d;F[(e+16|0)+R|0]=1;H[e>>2]=R;c=H[f+76>>2];if(a>>>0>=2){i=L[c+24>>2];k=O(L[g+24>>2]-i);n=O(k*k);l=L[c+16>>2];k=O(L[g+16>>2]-l);u=O(k*k);m=L[c+20>>2];k=O(L[g+20>>2]-m);k=O(n+O(u+O(k*k)));b=1;while(1){d=N(b,48)+g|0;j=O(L[d+24>>2]-i);n=O(j*j);j=O(L[d+16>>2]-l);u=O(j*j);j=O(L[d+20>>2]-m);j=O(n+O(u+O(j*j)));d=j>k;k=d?j:k;S=d?b:S;b=b+1|0;if((b|0)!=(a|0)){continue}break}}b=N(S,48)+g|0;d=H[b+4>>2];H[c+48>>2]=H[b>>2];H[c+52>>2]=d;d=H[b+44>>2];H[c+88>>2]=H[b+40>>2];H[c+92>>2]=d;d=H[b+36>>2];H[c+80>>2]=H[b+32>>2];H[c+84>>2]=d;d=H[b+28>>2];H[c+72>>2]=H[b+24>>2];H[c+76>>2]=d;B=H[b+20>>2];d=c- -64|0;H[d>>2]=H[b+16>>2];H[d+4>>2]=B;d=H[b+12>>2];H[c+56>>2]=H[b+8>>2];H[c+60>>2]=d;F[(e+16|0)+S|0]=1;H[e+4>>2]=S;c=H[f+76>>2];m=L[c+16>>2];n=O(L[c- -64>>2]-m);k=L[c+36>>2];i=L[c+32>>2];C=L[c+20>>2];j=O(L[c+68>>2]-C);l=O(O(n*k)-O(i*j));u=l;p=O(l*l);l=L[c+40>>2];v=L[c+24>>2];s=O(L[c+72>>2]-v);j=O(O(j*l)-O(k*s));n=O(O(s*i)-O(l*n));w=O(p+O(O(j*j)+O(n*n)));s=O(O(1)/O(W(w)));b=w>O(0);w=b?O(u*s):l;n=b?O(n*s):k;j=b?O(j*s):i;d=-1;k=O(-3.4028234663852886e38);i=O(3.4028234663852886e38);e:{if(!a){B=-1;break e}b=0;B=-1;while(1){if(!I[(e+16|0)+b|0]){o=N(b,48)+g|0;l=O(O(O(L[o+24>>2]-v)*w)+O(O(O(L[o+16>>2]-m)*j)+O(n*O(L[o+20>>2]-C))));o=l>2];H[c+96>>2]=H[b>>2];H[c+100>>2]=o;o=H[b+44>>2];H[c+136>>2]=H[b+40>>2];H[c+140>>2]=o;o=H[b+36>>2];H[c+128>>2]=H[b+32>>2];H[c+132>>2]=o;o=H[b+28>>2];H[c+120>>2]=H[b+24>>2];H[c+124>>2]=o;o=H[b+20>>2];H[c+112>>2]=H[b+16>>2];H[c+116>>2]=o;o=H[b+12>>2];H[c+104>>2]=H[b+8>>2];H[c+108>>2]=o;F[(e+16|0)+B|0]=1;H[e+8>>2]=B;c=H[f+76>>2];if(!(!(O(i*k)>O(0))|!a)){k=O(-3.4028234663852886e38);b=0;while(1){if(!I[(e+16|0)+b|0]){o=N(b,48)+g|0;i=O(O(O(L[o+24>>2]-L[c+24>>2])*w)+O(O(O(L[o+16>>2]-L[c+16>>2])*j)+O(n*O(L[o+20>>2]-L[c+20>>2]))));o=i>k;k=o?i:k;d=o?b:d}b=b+1|0;if((b|0)!=(a|0)){continue}break}}b=N(d,48)+g|0;o=H[b+4>>2];H[c+144>>2]=H[b>>2];H[c+148>>2]=o;o=H[b+44>>2];H[c+184>>2]=H[b+40>>2];H[c+188>>2]=o;o=H[b+36>>2];H[c+176>>2]=H[b+32>>2];H[c+180>>2]=o;o=H[b+28>>2];H[c+168>>2]=H[b+24>>2];H[c+172>>2]=o;o=H[b+20>>2];H[c+160>>2]=H[b+16>>2];H[c+164>>2]=o;o=H[b+12>>2];H[c+152>>2]=H[b+8>>2];H[c+156>>2]=o;F[(e+16|0)+d|0]=1;H[e+12>>2]=d;b=H[f+76>>2];if(a){d=0;while(1){f:{if(I[(e+16|0)+d|0]){break f}c=N(d,48)+g|0;k=L[c+24>>2];i=O(k-L[b+24>>2]);n=O(i*i);i=L[c+16>>2];l=O(i-L[b+16>>2]);u=O(l*l);l=L[c+20>>2];m=O(l-L[b+20>>2]);m=O(n+O(u+O(m*m)));m=m>2]);n=O(j*j);j=O(i-L[b+64>>2]);u=O(j*j);j=O(l-L[b+68>>2]);j=O(n+O(u+O(j*j)));B=m>j;o=B;m=B?j:m;j=O(k-L[b+120>>2]);n=O(j*j);j=O(i-L[b+112>>2]);u=O(j*j);j=O(l-L[b+116>>2]);j=O(n+O(u+O(j*j)));B=m>j;k=O(k-L[b+168>>2]);n=O(k*k);k=O(i-L[b+160>>2]);u=O(k*k);k=O(l-L[b+164>>2]);B=e|(O(n+O(u+O(k*k)))<(B?j:m)?3:B?2:o)<<2;if(!(L[(N(H[B>>2],48)+g|0)+44>>2]>L[c+44>>2])){break f}H[B>>2]=d}d=d+1|0;if((d|0)!=(a|0)){continue}break}B=H[e+8>>2];S=H[e+4>>2];R=H[e>>2];d=H[e+12>>2]}a=N(R,48)+g|0;c=H[a+4>>2];H[b>>2]=H[a>>2];H[b+4>>2]=c;c=H[a+36>>2];H[b+32>>2]=H[a+32>>2];H[b+36>>2]=c;c=H[a+20>>2];H[b+16>>2]=H[a+16>>2];H[b+20>>2]=c;c=H[a+44>>2];H[b+40>>2]=H[a+40>>2];H[b+44>>2]=c;c=H[a+28>>2];H[b+24>>2]=H[a+24>>2];H[b+28>>2]=c;c=H[a+12>>2];H[b+8>>2]=H[a+8>>2];H[b+12>>2]=c;a=N(S,48)+g|0;c=H[a+4>>2];b=H[f+76>>2];H[b+48>>2]=H[a>>2];H[b+52>>2]=c;c=H[a+12>>2];H[b+56>>2]=H[a+8>>2];H[b+60>>2]=c;R=H[a+20>>2];c=b- -64|0;H[c>>2]=H[a+16>>2];H[c+4>>2]=R;c=H[a+28>>2];H[b+72>>2]=H[a+24>>2];H[b+76>>2]=c;c=H[a+36>>2];H[b+80>>2]=H[a+32>>2];H[b+84>>2]=c;c=H[a+44>>2];H[b+88>>2]=H[a+40>>2];H[b+92>>2]=c;a=N(B,48)+g|0;c=H[a+44>>2];b=H[f+76>>2];H[b+136>>2]=H[a+40>>2];H[b+140>>2]=c;c=H[a+4>>2];H[b+96>>2]=H[a>>2];H[b+100>>2]=c;c=H[a+12>>2];H[b+104>>2]=H[a+8>>2];H[b+108>>2]=c;c=H[a+20>>2];H[b+112>>2]=H[a+16>>2];H[b+116>>2]=c;c=H[a+28>>2];H[b+120>>2]=H[a+24>>2];H[b+124>>2]=c;c=H[a+36>>2];H[b+128>>2]=H[a+32>>2];H[b+132>>2]=c;a=N(d,48)+g|0;c=H[a+4>>2];b=H[f+76>>2];H[b+144>>2]=H[a>>2];H[b+148>>2]=c;c=H[a+12>>2];H[b+152>>2]=H[a+8>>2];H[b+156>>2]=c;c=H[a+20>>2];H[b+160>>2]=H[a+16>>2];H[b+164>>2]=c;c=H[a+28>>2];H[b+168>>2]=H[a+24>>2];H[b+172>>2]=c;c=H[a+36>>2];H[b+176>>2]=H[a+32>>2];H[b+180>>2]=c;c=H[a+44>>2];H[b+184>>2]=H[a+40>>2];H[b+188>>2]=c;Oa=e+80|0;a=4}F[f+64|0]=a}X0(f,g,h+16|0,h+32|0,h);Oa=h- -64|0;return I[f+64|0]!=0|0}function z_(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=O(f);g=g|0;h=h|0;i=O(i);var j=0,k=O(0),l=0,m=0,n=0,o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=0,u=O(0),v=0,w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=0,E=0,K=0,M=O(0),Q=O(0),R=O(0),S=0,T=O(0),U=0,V=0,X=O(0),Y=0,Z=0,_=O(0),$=O(0),aa=0,ba=O(0),ca=0,da=O(0),ea=O(0),fa=O(0),ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0;l=Oa-192|0;Oa=l;k=L[d+24>>2];x=L[d>>2];L[l+160>>2]=x;w=L[d+4>>2];L[l+164>>2]=w;r=L[d+8>>2];L[l+168>>2]=r;s=L[d+12>>2];L[l+172>>2]=s;u=L[d+16>>2];L[l+176>>2]=u;q=L[d+20>>2];L[l+180>>2]=q;C=O(k+i);L[l+184>>2]=C;d=0;d=L[b+4>>2]!=O(1)|L[b+8>>2]!=O(1)?d:L[b+12>>2]==O(1);m=J[h>>1];j=I[b+32|0];i=L[c+8>>2];y=L[c+24>>2];k=O(r-y);z=O(k+k);r=L[c>>2];M=L[c+16>>2];k=O(x-M);A=O(k+k);T=L[c+20>>2];k=O(w-T);o=O(k+k);k=L[c+4>>2];p=O(O(i*z)+O(O(r*A)+O(o*k)));x=L[c+12>>2];w=O(O(x*x)+O(-.5));_=O(O(i*p)+O(O(z*w)-O(x*O(O(r*o)-O(A*k)))));q=O(q-y);q=O(q+q);s=O(s-M);s=O(s+s);u=O(u-T);u=O(u+u);X=O(O(i*q)+O(O(r*s)+O(k*u)));$=O(O(i*X)+O(O(q*w)-O(x*O(O(r*u)-O(s*k)))));L[l+152>>2]=O(_+$)*O(.5);Q=O(O(k*p)+O(O(o*w)-O(x*O(O(i*A)-O(z*r)))));R=O(O(k*X)+O(O(u*w)-O(x*O(O(i*s)-O(q*r)))));L[l+148>>2]=O(Q+R)*O(.5);B=O(O(r*p)+O(O(A*w)-O(x*O(O(k*z)-O(o*i)))));q=O(O(r*X)+O(O(s*w)-O(x*O(O(k*q)-O(u*i)))));L[l+144>>2]=O(B+q)*O(.5);z=L[e+8>>2];z=O(z+z);A=L[e>>2];A=O(A+A);o=L[e+4>>2];o=O(o+o);p=O(O(i*z)+O(O(r*A)+O(k*o)));L[l+136>>2]=O(i*p)+O(O(z*w)-O(x*O(O(r*o)-O(A*k))));L[l+132>>2]=O(k*p)+O(O(o*w)-O(x*O(O(i*A)-O(z*r))));L[l+128>>2]=O(r*p)+O(O(A*w)-O(x*O(O(k*z)-O(o*i))));L[l+120>>2]=C+O(O(P(O(_-$)))*O(.5));L[l+116>>2]=C+O(O(P(O(Q-R)))*O(.5));L[l+112>>2]=C+O(O(P(O(B-q)))*O(.5));j=j&2;a:{if(!d){nW(l+8|0,c,b+4|0);d=H[l+32>>2];H[l+84>>2]=H[l+28>>2];H[l+88>>2]=d;d=H[l+40>>2];H[l+92>>2]=H[l+36>>2];H[l+96>>2]=d;L[l+108>>2]=L[l+52>>2];L[l+64>>2]=L[l+8>>2];d=H[l+16>>2];H[l+68>>2]=H[l+12>>2];H[l+72>>2]=d;d=H[l+24>>2];H[l+76>>2]=H[l+20>>2];H[l+80>>2]=d;d=H[l+48>>2];H[l+100>>2]=H[l+44>>2];H[l+104>>2]=d;d=Oa-112|0;Oa=d;T=L[l+152>>2];X=L[l+136>>2];_=L[l+144>>2];$=L[l+128>>2];Q=L[l+148>>2];R=L[l+132>>2];i=L[b+8>>2];k=L[b+4>>2];L[d+8>>2]=O(1)/L[b+12>>2];L[d+4>>2]=O(1)/i;L[d>>2]=O(1)/k;L[d+12>>2]=L[b+16>>2];L[d+16>>2]=L[b+20>>2];L[d+20>>2]=L[b+24>>2];L[d+24>>2]=L[b+28>>2];yW(d+32|0,d,d+12|0);i=L[l+120>>2];k=L[l+112>>2];r=L[l+116>>2];x=L[d- -64>>2];w=L[d+52>>2];C=L[d+56>>2];z=L[d+32>>2];A=L[d+44>>2];o=L[d+40>>2];p=L[l+144>>2];q=L[d+36>>2];s=L[l+148>>2];u=L[d+48>>2];y=L[l+152>>2];M=L[d+60>>2];B=O(O(O(p*q)+O(s*u))+O(y*M));L[l+148>>2]=B;ba=O(O(O(p*o)+O(s*w))+O(y*x));L[l+152>>2]=ba;p=O(O(O(p*z)+O(s*A))+O(y*C));L[l+144>>2]=p;L[l+116>>2]=O(O(P(O(k*q)))+O(P(O(r*u))))+O(P(O(i*M)));L[l+120>>2]=O(O(P(O(k*o)))+O(P(O(r*w))))+O(P(O(i*x)));L[l+112>>2]=O(O(P(O(k*z)))+O(P(O(r*A))))+O(P(O(i*C)));i=O(_+O($*f));k=O(Q+O(R*f));o=O(O(o*i)+O(w*k));w=O(T+O(X*f));r=O(O(o+O(x*w))-ba);L[l+136>>2]=r;x=O(O(O(O(i*q)+O(k*u))+O(w*M))-B);L[l+132>>2]=x;w=O(O(O(O(i*z)+O(k*A))+O(w*C))-p);L[l+128>>2]=w;i=O(0);Oa=d+112|0;k=O(W(O(O(r*r)+O(O(w*w)+O(x*x)))));if(!(k>2]=r*i;L[l+132>>2]=x*i;L[l+128>>2]=w*i;i=k}k=O(i/f);break a}L[l+108>>2]=y;L[l+104>>2]=T;C=O(k+k);z=O(C*i);w=O(r+r);A=O(x*w);L[l+92>>2]=z-A;L[l+84>>2]=A+z;r=O(O(1)-O(r*w));z=O(k*C);L[l+96>>2]=r-z;p=r;r=O(i+i);A=O(i*r);L[l+80>>2]=p-A;L[l+100>>2]=M;i=O(w*i);C=O(x*C);L[l+88>>2]=i+C;k=O(w*k);r=O(x*r);L[l+76>>2]=k-r;L[l+72>>2]=i-C;L[l+68>>2]=k+r;L[l+64>>2]=O(O(1)-z)-A;i=f;k=O(1)}n=l+144|0;t=l+128|0;d=O(O(L[b+4>>2]*L[b+8>>2])*L[b+12>>2])>2]=2;h=J[h>>1];L[D+16>>2]=k;F[D+12|0]=d;d=0;G[D+10>>1]=0;G[D+8>>1]=h;F[D+48|0]=(j|0)!=0;H[D+44>>2]=e;H[D+40>>2]=l+160;L[D+36>>2]=f+O(.0010000000474974513);H[D+32>>2]=1073741824;L[D+28>>2]=f;H[D+24>>2]=l- -64;H[D+20>>2]=g;H[D>>2]=128600;F[D+49|0]=L[l+160>>2]!=L[l+172>>2]|L[l+164>>2]!=L[l+176>>2]?d:L[l+168>>2]==L[l+180>>2];L[g+40>>2]=f;s_(n,t,i,1,a,D,l+112|0);sa=(j|m&128)!=0;n=Oa-96|0;Oa=n;ka=I[D+10|0];b:{if(!ka){break b}if(I[D+11|0]){c:{d:{if(!(I[D+9|0]&2)){b=H[D+44>>2];G[g+12>>1]=1026;break d}a=H[D+40>>2];i=L[a+16>>2];k=L[a+20>>2];r=L[a>>2];x=L[a+12>>2];f=L[l+184>>2];w=L[a+4>>2];C=L[a+8>>2];H[n+76>>2]=0;L[n+72>>2]=k;L[n+68>>2]=i;H[n+60>>2]=0;L[n+56>>2]=C;L[n+52>>2]=w;L[n+80>>2]=f;F[n+32|0]=1;H[n+28>>2]=4;L[n+64>>2]=x;L[n+48>>2]=r;L[n+24>>2]=f;L[n+20>>2]=f;L[n+16>>2]=f;H[n+12>>2]=0;L[n>>2]=O(r+x)*O(.5);L[n+8>>2]=O(C+k)*O(.5);L[n+4>>2]=O(w+i)*O(.5);$=L[a+24>>2];r=O(0);x=O(0);w=O(0);C=O(0);z=O(0);A=O(0);j=Oa-5696|0;Oa=j;f=L[b+12>>2];i=L[b+8>>2];la=H[H[b+36>>2]+56>>2];k=L[b+4>>2];H[j+1484>>2]=0;L[j+1456>>2]=$*O(1.149999976158142);ma=b+4|0;nW(j+1408|0,c,ma);H[j+1400>>2]=0;H[j+1392>>2]=0;H[j+1396>>2]=0;Dv(j+1392|0,128);ba=O(f*O(k*i));d=268435455;e:{f:{while(1){g:{H[j+1396>>2]=0;a=H[n+52>>2];e=H[n+48>>2];L[j+1352>>2]=L[n+56>>2];H[j+1344>>2]=e;H[j+1348>>2]=a;f=L[n+72>>2];a=H[n+68>>2];e=H[n+64>>2];L[j+1368>>2]=$;H[j+1356>>2]=e;H[j+1360>>2]=a;L[j+1364>>2]=f;e=j+1280|0;mW(j+1344|0,e);a=H[b+36>>2];dZ(j,e,c,ma);H[j+5584>>2]=126420;H[j+5592>>2]=j+1392;H[j+5588>>2]=2;Ra[H[(J[a+4>>1]<<2)+126440>>2]](a,j,j+5584|0,1,1);h=H[j+1396>>2];if(!h){break g}a=h+31|0;if(a>>>0<32){break g}na=H[j+1392>>2];ta=a>>>5|0;f=O(3.4028234663852886e38);ca=0;e=h;ga=0;while(1){ha=ca<<5;a=h-ha|0;ia=a>>>0<32?a:32;h:{if(!ia){H[j+5688>>2]=H[j+1384>>2];a=H[j+1380>>2];H[j+5680>>2]=H[j+1376>>2];H[j+5684>>2]=a;U=0;break h}K=e>>>0<32?e:32;i=L[j+1452>>2];k=L[j+1448>>2];o=L[j+1444>>2];p=L[j+1440>>2];q=L[j+1436>>2];s=L[j+1432>>2];u=L[j+1428>>2];y=L[j+1424>>2];M=L[j+1420>>2];T=L[j+1416>>2];X=L[j+1412>>2];_=L[j+1408>>2];m=H[b+36>>2];S=I[m+64|0]&2;U=H[m+24>>2];t=0;while(1){Y=H[(t+ha<<2)+na>>2];i:{if(S){a=H[m+28>>2]+N(Y,6)|0;v=J[a+4>>1];E=J[a>>1];V=J[a+2>>1];break i}a=H[m+28>>2]+N(Y,12)|0;v=H[a+8>>2];E=H[a>>2];V=H[a+4>>2]}a=N(t,40)+j|0;E=U+N(E,12)|0;Q=L[E>>2];R=L[E+4>>2];B=L[E+8>>2];L[a+8>>2]=O(O(O(Q*T)+O(R*u))+O(B*p))+i;L[a+4>>2]=O(O(O(Q*X)+O(R*y))+O(B*q))+k;L[a>>2]=O(O(O(Q*_)+O(R*M))+O(B*s))+o;Z=ba>2];R=L[E+4>>2];B=L[E+8>>2];L[a+20>>2]=i+O(O(O(T*Q)+O(u*R))+O(p*B));L[a+16>>2]=k+O(O(O(X*Q)+O(y*R))+O(q*B));L[a+12>>2]=o+O(O(O(_*Q)+O(M*R))+O(s*B));v=U+N(Z?V:v,12)|0;Q=L[v>>2];R=L[v+4>>2];B=L[v+8>>2];L[a+32>>2]=i+O(O(O(T*Q)+O(u*R))+O(p*B));L[a+28>>2]=k+O(O(O(X*Q)+O(y*R))+O(q*B));L[a+24>>2]=o+O(O(O(_*Q)+O(M*R))+O(s*B));F[a+36|0]=la?I[Y+la|0]:56;t=t+1|0;if((K|0)!=(t|0)){continue}break}H[j+5688>>2]=H[j+1384>>2];a=H[j+1380>>2];H[j+5680>>2]=H[j+1376>>2];H[j+5684>>2]=a;U=0;Y=0;if(!ia){break h}while(1){H[j+1484>>2]=0;F[j+5616|0]=0;H[j+5608>>2]=2139095039;H[j+5612>>2]=5;H[j+5584>>2]=0;H[j+5588>>2]=0;H[j+5592>>2]=0;H[j+5596>>2]=0;H[j+5600>>2]=1017370378;H[j+5604>>2]=2139095039;a=N(Y,40)+j|0;i=L[a>>2];k=L[a+8>>2];o=L[a+4>>2];L[j+5636>>2]=o;L[j+5640>>2]=k;H[j+5644>>2]=0;L[j+5632>>2]=i;p=L[a+12>>2];q=L[a+16>>2];s=L[a+20>>2];H[j+5660>>2]=0;L[j+5656>>2]=s;L[j+5652>>2]=q;L[j+5648>>2]=p;u=L[a+24>>2];y=L[a+28>>2];M=L[a+32>>2];H[j+5676>>2]=0;L[j+5672>>2]=M;L[j+5668>>2]=y;L[j+5664>>2]=u;v=I[a+36|0];j:{if(!sa){T=O(p-i);y=O(y-o);u=O(u-i);q=O(q-o);p=O(O(T*y)-O(u*q));B=p;Q=O(p*p);p=q;q=O(M-k);s=O(s-k);p=O(O(p*q)-O(y*s));q=O(O(s*u)-O(q*T));s=O(O(1)/O(W(O(Q+O(O(p*p)+O(q*q))))));if(O(O(O(B*s)*O(L[n+8>>2]-k))+O(O(O(p*s)*O(L[n>>2]-i))+O(O(q*s)*O(L[n+4>>2]-o))))>2];H[m+128>>2]=H[t+48>>2];H[m+132>>2]=K;K=H[t+60>>2];H[m+136>>2]=H[t+56>>2];H[m+140>>2]=K;K=H[t+76>>2];H[m+120>>2]=H[t+72>>2];H[m+124>>2]=K;K=t- -64|0;S=H[K+4>>2];H[m+112>>2]=H[K>>2];H[m+116>>2]=S;S=H[t+92>>2];H[m+104>>2]=H[t+88>>2];H[m+108>>2]=S;S=H[t+84>>2];H[m+96>>2]=H[t+80>>2];H[m+100>>2]=S;p=L[t+80>>2];q=L[K>>2];s=L[t+68>>2];u=L[t+88>>2];y=L[t+84>>2];i=L[t+52>>2];k=L[t+56>>2];M=L[t+72>>2];o=L[t+48>>2];H[m+92>>2]=0;q=O(q-o);y=O(y-i);o=O(p-o);p=O(s-i);i=O(O(q*y)-O(o*p));B=i;s=O(i*i);i=p;p=O(u-k);k=O(M-k);i=O(O(i*p)-O(y*k));k=O(O(k*o)-O(p*q));o=O(O(1)/O(W(O(s+O(O(i*i)+O(k*k))))));L[m+88>>2]=B*o;L[m+84>>2]=k*o;L[m+80>>2]=i*o;t=j+1456|0;i=L[t>>2];K=n+48|0;S=n- -64|0;p0(m+16|0,K,S,m+128|0,m+112|0,m+96|0,m- -64|0,m+48|0,m+32|0);o=L[m+16>>2];if(o>2];if(k>2];if(iO(.9999989867210388))){break n}if(!(v&48)){break l}break m}i=L[m+32>>2];if(k>O(.9999989867210388)){if(!(i=O(.9998999834060669))){break l}if(v&16){break m}break l}if(!(v&32)){break l}}if(o==O(0)){v=H[m+92>>2];H[m+8>>2]=H[m+88>>2];H[m+12>>2]=v;v=H[m+84>>2];H[m>>2]=H[m+80>>2];H[m+4>>2]=v;break k}o=L[n+56>>2];s=L[n+72>>2];p=L[n+52>>2];y=L[n+68>>2];q=L[n+48>>2];M=L[n+64>>2];H[m+12>>2]=0;B=o;u=O(s-o);o=L[m+64>>2];s=O(O(1)-O(k+i));u=O(O(B+O(u*o))-O(O(s*L[m+136>>2])+O(O(k*L[m+120>>2])+O(i*L[m+104>>2]))));q=O(O(q+O(O(M-q)*o))-O(O(L[m+128>>2]*s)+O(O(k*L[m+112>>2])+O(i*L[m+96>>2]))));i=O(O(p+O(O(y-p)*o))-O(O(L[m+132>>2]*s)+O(O(k*L[m+116>>2])+O(i*L[m+100>>2]))));k=O(O(1)/O(W(O(O(u*u)+O(O(q*q)+O(i*i))))));L[m+8>>2]=u*k;L[m+4>>2]=i*k;L[m>>2]=q*k;break k}v=H[m+92>>2];H[m+8>>2]=H[m+88>>2];H[m+12>>2]=v;v=H[m+84>>2];H[m>>2]=H[m+80>>2];H[m+4>>2]=v}v=m+128|0;Z=m+112|0;aa=m+96|0;o0(v,Z,aa,m+80|0,m,a,K,S,t,V,E);n0(K,S,t,m,a,v,Z,V,E);n0(K,S,t,m,a,Z,aa,V,E);n0(K,S,t,m,a,v,aa,V,E)}Oa=m+144|0;v=H[j+1484>>2];if(!v){break j}t=0;i=L[j+1532>>2];o:{if((v|0)==1){break o}E=v-1|0;V=E&3;U=0;m=1;if(v-2>>>0>=3){aa=E&-4;v=0;while(1){k=L[((m<<6)+j|0)+1532>>2];E=k>2];i=E?k:i;K=o>2];i=K?o:i;S=k>2];i=S?k:i;Z=o>2];v=ki)){break j}d=(j+1488|0)+(t<<6)|0;r=L[d+16>>2];x=L[d+32>>2];w=L[d+24>>2];C=L[d+20>>2];z=L[d+40>>2];A=L[d+36>>2];d=a;f=i}Y=Y+1|0;if((ia|0)!=(Y|0)){continue}break}}H[j+1384>>2]=H[j+5688>>2];a=H[j+5684>>2];H[j+1376>>2]=H[j+5680>>2];H[j+1380>>2]=a;e=e-32|0;ga=U|ga;ca=ca+1|0;if((ta|0)!=(ca|0)){continue}break}if(!(ga&1)){break g}d=H[(d<<2)+na>>2];f=O(f-L[n+80>>2]);if(!(f<=O(0))){ra=1;if(ja){break g}L[g+36>>2]=z;L[g+32>>2]=A;L[g+28>>2]=x;L[g+24>>2]=w;L[g+20>>2]=C;L[g+16>>2]=r;H[g+40>>2]=0;H[g+8>>2]=d;break f}H[n+12>>2]=0;H[n+60>>2]=0;H[n+76>>2]=0;i=L[n+8>>2];k=O(z*f);o=O(i-k);L[n+8>>2]=o;p=L[n+4>>2];q=O(A*f);s=O(p-q);L[n+4>>2]=s;u=L[n>>2];f=O(x*f);y=O(u-f);L[n>>2]=y;u=O(y-u);L[n+48>>2]=u+L[n+48>>2];p=O(s-p);L[n+52>>2]=p+L[n+52>>2];i=O(o-i);L[n+56>>2]=i+L[n+56>>2];L[n+72>>2]=i+L[n+72>>2];L[n+68>>2]=p+L[n+68>>2];L[n+64>>2]=u+L[n+64>>2];da=O(da-k);ea=O(ea-q);fa=O(fa-f);ra=1;ja=ja+1|0;if((ja|0)!=4){continue}}break}a=0;if(!ra){break e}L[g+24>>2]=w;L[g+20>>2]=C;L[g+16>>2]=r;H[g+8>>2]=d;f=O(W(O(O(da*da)+O(O(fa*fa)+O(ea*ea)))));L[g+40>>2]=-f;i=O(O(1)/f);a=f>O(0);L[g+36>>2]=a?O(da*i):O(0);L[g+32>>2]=a?O(ea*i):O(0);L[g+28>>2]=a?O(fa*i):O(0)}a=1}b=H[j+1400>>2];p:{if((b|0)<0|!(b&2147483647)){break p}b=H[j+1392>>2];if(!b){break p}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}Oa=j+5696|0;b=H[D+44>>2];G[g+12>>1]=1026;if(a){break c}}H[g+40>>2]=0;f=L[b>>2];i=L[b+4>>2];L[g+36>>2]=-L[b+8>>2];L[g+32>>2]=-i;L[g+28>>2]=-f;break b}if(L[g+40>>2]==O(0)){f=L[b>>2];i=L[b+4>>2];L[g+36>>2]=-L[b+8>>2];L[g+32>>2]=-i;L[g+28>>2]=-f}G[g+12>>1]=1027;break b}G[g+12>>1]=1027}Oa=n+96|0;Oa=l+192|0;return(ka|0)!=0|0}function gL(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,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,G=0,J=0,M=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=O(0);M=Oa-16|0;Oa=M;e=H[a+208>>2];c=H[a+204>>2];H[M+8>>2]=H[a+212>>2];H[M>>2]=c;H[M+4>>2]=e;P=a+216|0;d=H[a+328>>2];if(d){e=H[a+324>>2];while(1){b=H[a+4>>2];c=e+(k<<3)|0;g=H[c>>2];c=H[c+4>>2];a:{if(g>>>0>c>>>0){VK(g,c,b,P,M);break a}WK(g,c,b,P,M)}k=k+1|0;if((d|0)!=(k|0)){continue}break}}d=H[a+376>>2];if(d){e=H[a+372>>2];k=0;while(1){b=H[a+4>>2];c=e+(k<<3)|0;g=H[c>>2];c=H[c+4>>2];b:{if(g>>>0<=c>>>0){WK(g,c,b,P,M);break b}VK(g,c,b,P,M)}k=k+1|0;if((d|0)!=(k|0)){continue}break}}d=H[a+424>>2];if(d){e=H[a+420>>2];k=0;while(1){b=H[a+4>>2];c=e+(k<<3)|0;g=H[c>>2];c=H[c+4>>2];c:{if(g>>>0<=c>>>0){WK(g,c,b,P,M);break c}VK(g,c,b,P,M)}k=k+1|0;if((d|0)!=(k|0)){continue}break}}H[a+204>>2]=H[M>>2];H[a+208>>2]=H[M+4>>2];H[a+212>>2]=H[M+8>>2];g=Oa-352|0;Oa=g;G=H[a+92>>2];d:{if(!G){break d}m=H[a+112>>2];Q=H[a+88>>2];e:{f:{u=G<<1;if(u>>>0>=33){e=G<<3;if(e){break f}H[g+344>>2]=0;e=0;break e}n=g+216|0;H[g+344>>2]=n;e=g+80|0;break e}c=H[33808]+12|0;n=Ra[H[H[c>>2]+8>>2]](c,e,20591,15107,56)|0;H[g+344>>2]=n;c=H[33808]+12|0;e=Ra[H[H[c>>2]+8>>2]](c,e,20591,15107,56)|0}H[g+208>>2]=e;y=OT(g+40|0);while(1){i=H[a+124>>2];d=0;while(1){f=z<<2;c=H[Q+(d<<2)>>2];b=f+(m+N(c,24)|0)|0;V=L[i+(c<<2)>>2];L[g+8>>2]=L[b>>2]-V;c=(d<<3)+n|0;q=H[g+8>>2];H[c>>2]=((q|0)>=0?q|-2147483648:q^-1)-16&-16;L[g+8>>2]=V+L[b+12>>2];b=c;c=H[g+8>>2];H[b+4>>2]=((c|0)>=0?c|-2147483648:c^-1)+16&-16|4;d=d+1|0;if((G|0)!=(d|0)){continue}break}H[y+4>>2]=H[y+4>>2]|-2147483648;c=ST(y,n,u);k=H[y+12>>2];if(u){b=H[c+8>>2];d=0;while(1){c=d<<2;i=H[b+(u+(d^-1)<<2)>>2];H[c+e>>2]=H[(i<<2)+n>>2];H[c+k>>2]=i&1|H[Q+(i<<1&-4)>>2]<<1;d=d+1|0;if((u|0)!=(d|0)){continue}break}}c=a+f|0;i=H[c+132>>2];A=H[c+156>>2];B=H[c+144>>2];c=H[a+188>>2]-H[a+92>>2]|0;f=c<<1;d=f+u|0;b=d<<2|4;c=c<<3|4;H[B+b>>2]=H[c+B>>2];H[b+A>>2]=H[c+A>>2];g:{if((f|0)<0){break g}c=f<<2;C=c+B|0;c=c+A|0;D=0;while(1){b=D<<2;s=H[b+e>>2];q=H[C>>2];f=b+k|0;v=H[f>>2]&1?s>>>0>=q>>>0:q>>>0>>0;b=d<<2;H[b+B>>2]=v?s:q;h=b+A|0;b=v?f:c;H[h>>2]=H[b>>2];b=H[b>>2];H[(i+(b<<2&-8)|0)+((b&1)<<2)>>2]=d;h:{if(v){D=D+1|0;if(u>>>0>D>>>0){break h}break g}c=c-4|0;C=C-4|0}d=d-1|0;if(c>>>0>=A>>>0){continue}break}}z=z+1|0;if((z|0)!=3){continue}break}PT(y);e=H[g+208>>2];if(!((e|0)==(g+80|0)|!e)){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,e)}e=H[g+344>>2];if(!((e|0)==(g+216|0)|!e)){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,e)}b=H[a+92>>2];U=H[a+188>>2]-b|0;d=g+216|0;i:{if(U>>>0<=8){break i}e=U<<2;d=0;if(!e){break i}c=H[33808]+12|0;d=Ra[H[H[c>>2]+8>>2]](c,e,20591,15107,56)|0}H[g+248>>2]=d;j:{if(b>>>0<=8){c=g+80|0;break j}e=b<<2;if(!e){c=0;break j}c=H[33808]+12|0;c=Ra[H[H[c>>2]+8>>2]](c,e,20591,15107,56)|0;d=H[g+248>>2]}H[g+112>>2]=c;H[g+36>>2]=0;H[g+32>>2]=0;F[g+31|0]=0;F[g+30|0]=0;u=0;y=0;A=0;G=0;e=Oa-48|0;Oa=e;b=(H[a+128>>2]<<1)+31|0;f=b>>>5|0;k:{if(b>>>0<=287){E=f<<2;b=e+8|0;break k}b=H[33808];E=f<<2;b=Ra[H[H[b+12>>2]+8>>2]](b+12|0,E,20591,15107,56)|0}H[e+40>>2]=b;Q=S6(b,0,E);B=1;z=H[a+188>>2]<<1;C=H[a+136>>2];D=H[a+140>>2];v=H[a+132>>2];q=H[a+156>>2];k=H[a+116>>2];E=-1;m=H[a+92>>2];l:{if(!m){R=-1;n=-1;break l}i=H[a+88>>2];n=-1;R=-1;while(1){f=H[i+(l<<2)>>2];b=Q+(f>>>3&536870908)|0;H[b>>2]=H[b>>2]|1<>2];y=b>>>0>y>>>0?b:y;b=H[f>>2];R=b>>>0>R>>>0?R:b;f=s+D|0;b=H[f+4>>2];A=b>>>0>A>>>0?b:A;b=H[f>>2];n=b>>>0>n>>>0?n:b;f=s+v|0;b=H[f+4>>2];u=b>>>0>u>>>0?b:u;b=H[f>>2];E=b>>>0>E>>>0?E:b;l=l+1|0;if((m|0)!=(l|0)){continue}break}C=H[a+136>>2];D=H[a+140>>2];v=H[a+132>>2]}m:{if(!z){l=0;break m}f=z|1;l=0;while(1){b=H[q+(B<<2)>>2];n:{if(b&1){break n}m=b>>>1|0;if(!(H[Q+(b>>>4&268435452)>>2]>>>m&1)){i=m<<3;b=i+v|0;if(K[b>>2]>u>>>0|K[b+4>>2]>>0){break n}b=i+D|0;if(K[b>>2]>A>>>0|K[b+4>>2]>>0){break n}b=i+C|0;if(K[b>>2]>y>>>0|K[b+4>>2]>>0){break n}b=H[g+36>>2];H[g+36>>2]=b+1;H[(b<<2)+d>>2]=m;l=(H[k+(m<<2)>>2]!=0)+l|0;break n}b=H[g+32>>2];H[g+32>>2]=b+1;H[(b<<2)+c>>2]=m;G=(H[k+(m<<2)>>2]!=0)+G|0}B=B+1|0;if((f|0)!=(B|0)){continue}break}}F[g+30|0]=!l;F[g+31|0]=!G;f=H[e+40>>2];if(!((f|0)==(e+8|0)|!f)){b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,f)}Oa=e+48|0;e=I[g+31|0];if(!(I[g+30|0]?e:0)){v=a+132|0;S=XK(g+40|0,H[g+32>>2],v,c,H[a+116>>2]);if(!e){Q=H[a+4>>2];z=H[a+120>>2];j=a+216|0;x=Oa-16|0;Oa=x;E=H[S+16>>2];if(E){l=H[a+204>>2];f=H[a+208>>2];H[x+8>>2]=H[a+212>>2];H[x+4>>2]=f;H[x>>2]=l;R=H[S+12>>2];u=H[S+8>>2];y=H[S+4>>2];C=H[S>>2];e=0;while(1){q=C+(T<<3)|0;m=H[q>>2];i=T<<2;A=H[i+u>>2];while(1){b=e<<3;c=e+1|0;e=c;if(m>>>0>K[b+C>>2]){continue}break}k=H[q+4>>2];if(k>>>0>=K[C+(c<<3)>>2]){s=i+R|0;q=A<<2&12;D=y+(T<<4)|0;e=c;while(1){i=e<<2;b=H[i+u>>2];o:{if((b|0)==(A|0)|!I[z+(q|b&3)|0]){break o}b=y+(e<<4)|0;if(K[b+8>>2]>2]|K[D+8>>2]>2]|(K[b+12>>2]>2]|K[D+12>>2]>2])){break o}n=H[j+28>>2];if((n|0)==1073741823){break o}m=H[s>>2];i=H[i+R>>2];b=m>>>0>i>>>0;B=b?i:m;G=b?m:i;b=B|G<<16;b=(b<<15^-1)+b|0;b=N(b>>10^b,9);b=b>>6^b;b=(b<<11^-1)+b|0;m=b>>16^b;t=m&H[j+36>>2];i=H[j+8>>2];p:{q:{if(!i){break q}o=H[H[j>>2]+(t<<2)>>2];if((o|0)==1073741823){break q}b=H[j+4>>2];J=H[j+20>>2];while(1){r=(o<<3)+J|0;if((B|0)==H[r>>2]&(G|0)==H[r+4>>2]){break p}o=H[b+(o<<2)>>2];if((o|0)!=1073741823){continue}break}}if(i>>>0<=n>>>0){b=n+1|0;b=b>>>1|b;b=b>>>2|b;b=b>>>4|b;b=b>>>8|b;b=b>>>16|b;H[j+36>>2]=b;b=b+1|0;H[j+8>>2]=b;SK(j,b>>>0>K[j+12>>2]);t=m&H[j+36>>2];n=H[j+28>>2]}r=H[j+20>>2]+(n<<3)|0;H[r+4>>2]=G;H[r>>2]=B;F[H[j+24>>2]+n|0]=8;i=H[j>>2]+(t<<2)|0;H[H[j+4>>2]+(H[j+28>>2]<<2)>>2]=H[i>>2];b=H[j+28>>2];H[j+28>>2]=b+1;H[i>>2]=b;J=H[j+20>>2]}o=H[j+24>>2];J=r-J>>3;b=o+J|0;t=I[b|0];if(t&8){F[b|0]=0;b=H[j+24>>2]+(r-H[j+20>>2]>>3)|0;F[b|0]=I[b|0]|1;o=r-H[j+20>>2]|0;i=o>>>3|0;if(H[x+8>>2]==(f|0)){UK(x,Q);o=r-H[j+20>>2]|0;l=H[x>>2];f=H[x+4>>2]}b=f+1|0;H[x+4>>2]=b;H[(f<<2)+l>>2]=i;f=H[j+24>>2]+(o>>3)|0;F[f|0]=I[f|0]|4;o=H[j+24>>2];J=r-H[j+20>>2]>>3;t=I[o+J|0];f=b}F[o+J|0]=t&253}e=e+1|0;if(k>>>0>=K[C+(e<<3)>>2]){continue}break}}if(c>>>0>>0){e=c;T=T+1|0;if(E>>>0>T>>>0){continue}}break}e=H[x+8>>2];c=H[x+4>>2];H[a+204>>2]=l;H[a+208>>2]=c;H[a+212>>2]=e}Oa=x+16|0}r:{if(!U){break r}c=H[g+36>>2];if(!c){break r}k=XK(g+8|0,c,v,d,H[a+116>>2]);c=k;T=H[a+4>>2];D=H[a+120>>2];h=a+216|0;r=0;w=Oa-16|0;Oa=w;U=H[S+16>>2];s:{if(!U){break s}E=H[c+16>>2];if(!E){break s}J=H[a+204>>2];d=H[a+208>>2];H[w+8>>2]=H[a+212>>2];H[w+4>>2]=d;H[w>>2]=J;R=H[c+12>>2];u=H[c+8>>2];y=H[c+4>>2];n=H[c>>2];A=H[S+12>>2];G=H[S+8>>2];B=H[S+4>>2];C=H[S>>2];c=0;while(1){m=C+(r<<3)|0;i=H[m>>2];f=r<<2;v=H[f+G>>2];while(1){e=c;c=c+1|0;b=H[n+(e<<3)>>2];if(b>>>0>>0){continue}break}s=H[m+4>>2];if(s>>>0>=b>>>0){q=f+A|0;m=v<<2&12;x=B+(r<<4)|0;c=e;while(1){f=c<<2;b=H[f+u>>2];t:{if((b|0)==(v|0)|!I[D+(m|b&3)|0]){break t}b=y+(c<<4)|0;if(K[b+8>>2]>2]|K[x+8>>2]>2]|(K[b+12>>2]>2]|K[x+12>>2]>2])){break t}t=H[h+28>>2];if((t|0)==1073741823){break t}i=H[q>>2];f=H[f+R>>2];b=i>>>0>f>>>0;z=b?f:i;Q=b?i:f;b=z|Q<<16;b=(b<<15^-1)+b|0;b=N(b>>10^b,9);b=b>>6^b;b=(b<<11^-1)+b|0;i=b>>16^b;o=i&H[h+36>>2];f=H[h+8>>2];u:{v:{if(!f){break v}p=H[H[h>>2]+(o<<2)>>2];if((p|0)==1073741823){break v}b=H[h+4>>2];l=H[h+20>>2];while(1){j=(p<<3)+l|0;if((z|0)==H[j>>2]&(Q|0)==H[j+4>>2]){break u}p=H[b+(p<<2)>>2];if((p|0)!=1073741823){continue}break}}if(f>>>0<=t>>>0){b=t+1|0;b=b>>>1|b;b=b>>>2|b;b=b>>>4|b;b=b>>>8|b;b=b>>>16|b;H[h+36>>2]=b;b=b+1|0;H[h+8>>2]=b;SK(h,b>>>0>K[h+12>>2]);o=i&H[h+36>>2];t=H[h+28>>2]}j=H[h+20>>2]+(t<<3)|0;H[j+4>>2]=Q;H[j>>2]=z;F[H[h+24>>2]+t|0]=8;f=H[h>>2]+(o<<2)|0;H[H[h+4>>2]+(H[h+28>>2]<<2)>>2]=H[f>>2];b=H[h+28>>2];H[h+28>>2]=b+1;H[f>>2]=b;l=H[h+20>>2]}l=j-l>>3;p=H[h+24>>2];b=l+p|0;o=I[b|0];if(o&8){F[b|0]=0;b=H[h+24>>2]+(j-H[h+20>>2]>>3)|0;F[b|0]=I[b|0]|1;p=j-H[h+20>>2]|0;f=p>>>3|0;if(H[w+8>>2]==(d|0)){UK(w,T);p=j-H[h+20>>2]|0;J=H[w>>2];d=H[w+4>>2]}b=d+1|0;H[w+4>>2]=b;H[(d<<2)+J>>2]=f;d=H[h+24>>2]+(p>>3)|0;F[d|0]=I[d|0]|4;l=j-H[h+20>>2]>>3;p=H[h+24>>2];o=I[l+p|0];d=b}F[l+p|0]=o&253}c=c+1|0;if(s>>>0>=K[n+(c<<3)>>2]){continue}break}}if(e>>>0>>0){c=e;r=r+1|0;if(U>>>0>r>>>0){continue}}break}c=0;r=0;while(1){i=n+(r<<3)|0;f=H[i>>2];b=r<<2;Q=H[b+u>>2];while(1){e=c;c=c+1|0;d=H[C+(e<<3)>>2];if(d>>>0<=f>>>0){continue}break}q=H[i+4>>2];if(q>>>0>=d>>>0){m=b+R|0;i=Q<<2&12;v=y+(r<<4)|0;c=e;while(1){b=c<<2;d=H[b+G>>2];w:{if((d|0)==(Q|0)|!I[D+(i|d&3)|0]){break w}d=B+(c<<4)|0;if(K[d+8>>2]>2]|K[v+8>>2]>2]|(K[d+12>>2]>2]|K[v+12>>2]>2])){break w}t=H[h+28>>2];if((t|0)==1073741823){break w}f=H[m>>2];b=H[b+A>>2];d=f>>>0>b>>>0;s=d?b:f;z=d?f:b;d=s|z<<16;d=(d<<15^-1)+d|0;d=N(d>>10^d,9);d=d>>6^d;d=(d<<11^-1)+d|0;f=d>>16^d;o=f&H[h+36>>2];b=H[h+8>>2];x:{y:{if(!b){break y}p=H[H[h>>2]+(o<<2)>>2];if((p|0)==1073741823){break y}d=H[h+4>>2];l=H[h+20>>2];while(1){j=(p<<3)+l|0;if((s|0)==H[j>>2]&(z|0)==H[j+4>>2]){break x}p=H[d+(p<<2)>>2];if((p|0)!=1073741823){continue}break}}if(b>>>0<=t>>>0){d=t+1|0;d=d>>>1|d;d=d>>>2|d;d=d>>>4|d;d=d>>>8|d;d=d>>>16|d;H[h+36>>2]=d;d=d+1|0;H[h+8>>2]=d;SK(h,d>>>0>K[h+12>>2]);o=f&H[h+36>>2];t=H[h+28>>2]}j=H[h+20>>2]+(t<<3)|0;H[j+4>>2]=z;H[j>>2]=s;F[H[h+24>>2]+t|0]=8;b=H[h>>2]+(o<<2)|0;H[H[h+4>>2]+(H[h+28>>2]<<2)>>2]=H[b>>2];d=H[h+28>>2];H[h+28>>2]=d+1;H[b>>2]=d;l=H[h+20>>2]}l=j-l>>3;p=H[h+24>>2];d=l+p|0;o=I[d|0];if(o&8){F[d|0]=0;d=H[h+24>>2]+(j-H[h+20>>2]>>3)|0;F[d|0]=I[d|0]|1;l=j-H[h+20>>2]|0;d=l>>>3|0;p=H[w+4>>2];if((p|0)==H[w+8>>2]){UK(w,T);p=H[w+4>>2];J=H[w>>2];l=j-H[h+20>>2]|0}H[w+4>>2]=p+1;H[(p<<2)+J>>2]=d;d=H[h+24>>2]+(l>>3)|0;F[d|0]=I[d|0]|4;l=j-H[h+20>>2]>>3;p=H[h+24>>2];o=I[l+p|0]}F[l+p|0]=o&253}c=c+1|0;if(q>>>0>=K[C+(c<<3)>>2]){continue}break}}if(e>>>0>>0){c=e;r=r+1|0;if(E>>>0>r>>>0){continue}}break}H[a+204>>2]=J;H[a+208>>2]=H[w+4>>2];H[a+212>>2]=H[w+8>>2]}Oa=w+16|0;YK(k)}YK(S)}e=H[g+112>>2];if(!((e|0)==(g+80|0)|!e)){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,e)}e=H[g+248>>2];if((e|0)==(g+216|0)|!e){break d}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,e)}Oa=g+352|0;b=H[a+204>>2];s=H[a+4>>2];d=0;z:{A:{m=H[a+208>>2];if(m){while(1){c=H[b+(d<<2)>>2];q=H[P+20>>2]+(c<<3)|0;c=c+H[P+24>>2]|0;e=I[c|0];B:{if(e&2){if(e&4){break B}k=H[a+272>>2];C:{if((k|0)!=H[a+276>>2]){n=H[a+268>>2];break C}n=Gw(s,k<<4,1);c=R6(n,H[a+268>>2],H[a+276>>2]<<3);Lw(s,H[a+268>>2]);H[a+268>>2]=c;H[a+276>>2]=H[a+276>>2]<<1;k=H[a+272>>2]}i=H[q+4>>2];f=H[q>>2];H[a+272>>2]=k+1;e=f>>>0>>0;c=e?i:f;g=(k<<3)+n|0;H[g>>2]=e?f:i;H[g+4>>2]=c;break B}F[c|0]=e&254;if(!(I[H[P+24>>2]+(q-H[P+20>>2]>>3)|0]&4)){break B}k=H[a+260>>2];D:{if((k|0)!=H[a+264>>2]){e=H[a+256>>2];break D}e=Gw(s,k<<4,1);c=R6(e,H[a+256>>2],H[a+264>>2]<<3);Lw(s,H[a+256>>2]);H[a+256>>2]=c;H[a+264>>2]=H[a+264>>2]<<1;k=H[a+260>>2]}i=H[q+4>>2];f=H[q>>2];H[a+260>>2]=k+1;g=(k<<3)+e|0;e=f>>>0>>0;c=e?i:f;H[g>>2]=e?f:i;H[g+4>>2]=c;c=H[P+24>>2]+(q-H[P+20>>2]>>3)|0;F[c|0]=I[c|0]&251}d=d+1|0;if((m|0)!=(d|0)){continue}break}break A}H[a+280>>2]=H[a+272>>2];break z}H[a+280>>2]=H[a+272>>2];if(!m){break z}d=0;while(1){g=H[b+(d<<2)>>2];if((I[g+H[P+24>>2]|0]&6)==6){e=H[P+20>>2];k=H[a+280>>2];E:{if((k|0)!=H[a+276>>2]){n=H[a+268>>2];break E}n=Gw(s,k<<4,1);c=R6(n,H[a+268>>2],H[a+276>>2]<<3);Lw(s,H[a+268>>2]);H[a+268>>2]=c;H[a+276>>2]=H[a+276>>2]<<1;k=H[a+280>>2]}c=e+(g<<3)|0;i=H[c+4>>2];f=H[c>>2];H[a+280>>2]=k+1;e=f>>>0>>0;c=e?i:f;g=(k<<3)+n|0;H[g>>2]=e?f:i;H[g+4>>2]=c}d=d+1|0;if((m|0)!=(d|0)){continue}break}}H[a+192>>2]=H[a+188>>2];Oa=M+16|0}function o_(a,b,c,d,e){var f=O(0),g=O(0),h=0,i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=0,u=O(0),w=O(0),y=O(0),z=0,A=O(0),D=O(0),E=O(0),J=O(0),K=O(0),M=O(0),Q=O(0),R=0,S=O(0),T=O(0),U=O(0),V=O(0),W=O(0),X=O(0),Y=O(0),Z=O(0),_=O(0),$=O(0),aa=0,ba=O(0),ca=O(0),da=O(0),ea=O(0),fa=O(0),ga=O(0),ha=O(0),ia=O(0),ja=O(0),ka=O(0),la=O(0),ma=O(0),na=O(0),oa=O(0),pa=O(0),qa=O(0),ra=O(0),sa=O(0),ta=0,ua=0,va=O(0),wa=O(0),xa=O(0),ya=O(0),za=O(0),Aa=O(0),Ba=O(0),Ca=O(0),Da=O(0),Ea=O(0),Fa=O(0),Ga=0,Ha=O(0),Ia=0,Ja=O(0),Ka=0,La=0;h=Oa-288|0;Oa=h;R=I[c+64|0];z=H[c+24>>2];aa=H[c+28>>2];q=L[c+60>>2];t=h- -64|0;H[t>>2]=0;H[t+4>>2]=0;H[h+72>>2]=0;H[h+76>>2]=0;H[h+80>>2]=0;H[h+112>>2]=0;H[h+116>>2]=0;G[h+108>>1]=0;H[h+100>>2]=0;H[h+104>>2]=-1;L[h+88>>2]=q;F[h+84|0]=b;H[h+120>>2]=0;H[h+124>>2]=0;H[h+128>>2]=0;H[h+132>>2]=0;H[h+36>>2]=128020;H[h+56>>2]=0;H[h+60>>2]=0;H[h+92>>2]=0;H[h+96>>2]=0;H[h+32>>2]=127996;Ka=h,La=k7(z,aa),H[Ka+48>>2]=La;H[h+52>>2]=Qa;H[h+44>>2]=R>>>1&1;H[h+40>>2]=d;H[h+144>>2]=0;H[h+136>>2]=2139095039;H[h+140>>2]=0;b=H[d+4>>2];H[h+248>>2]=0;H[h+252>>2]=0;H[h+256>>2]=0;H[h+260>>2]=0;H[h+264>>2]=0;H[h+268>>2]=0;H[h+240>>2]=0;H[h+244>>2]=0;F[h+208|0]=0;F[h+209|0]=(b|0)==1;a:{b:{if(!e){break b}if(!(O(P(L[ZZ(h+272|0,a)+12>>2]))>O(.9998999834060669))){break b}M=L[a+16>>2];W=L[a+28>>2];Q=L[a+20>>2];X=L[a+32>>2];Y=L[a+4>>2];Z=L[a+8>>2];q=L[a+40>>2];r=L[a+44>>2];T=L[a+36>>2];o=L[a+56>>2];E=L[a+48>>2];J=L[a+52>>2];U=O(O(O(P(L[a+24>>2]))*o)+O(O(O(P(L[a>>2]))*E)+O(O(P(L[a+12>>2]))*J)));L[h+16>>2]=T-U;Q=O(O(o*O(P(X)))+O(O(E*O(P(Z)))+O(J*O(P(Q)))));L[h+24>>2]=r-Q;o=O(O(o*O(P(W)))+O(O(E*O(P(Y)))+O(J*O(P(M)))));L[h+20>>2]=q-o;L[h+8>>2]=Q+r;L[h+4>>2]=o+q;L[h>>2]=U+T;j$(c+112|0,h+16|0,h,h+32|4);break a}aa=h+32|4;e=0;d=0;b=0;z=Oa-528|0;Oa=z;W=L[a+32>>2];Q=L[a+28>>2];X=L[a+20>>2];Y=L[a+16>>2];E=L[a+56>>2];J=L[a+52>>2];Z=L[a+24>>2];T=L[a+12>>2];U=L[a+8>>2];da=L[a+4>>2];ea=L[a>>2];M=L[a+48>>2];R=H[c+180>>2];t=R-1|0;if((t|0)>=0){if(t>>>0>=3){Ia=R&-4;while(1){d=z+16|0;ta=e<<2;ua=N(t,112);H[d+ta>>2]=ua;H[(ta|4)+d>>2]=ua-112;H[(ta|8)+d>>2]=ua-224;H[(ta|12)+d>>2]=ua-336;t=t-4|0;e=e+4|0;Ga=Ga+4|0;if((Ia|0)!=(Ga|0)){continue}break}}d=R&3;if(d){while(1){H[(z+16|0)+(e<<2)>>2]=N(t,112);t=t-1|0;e=e+1|0;b=b+1|0;if((d|0)!=(b|0)){continue}break}}d=R}q=L[a+44>>2];r=L[a+40>>2];o=L[a+36>>2];ta=H[c+200>>2];ga=O(O(0)-E);ha=O(O(0)-J);ia=O(O(0)-M);ja=O(O(E*W)+O(0));ka=O(O(E*Q)+O(0));la=O(O(E*Z)+O(0));ma=O(O(J*X)+O(0));na=O(O(J*Y)+O(0));oa=O(O(J*T)+O(0));pa=O(O(M*U)+O(0));qa=O(O(M*da)+O(0));ra=O(O(M*ea)+O(0));b=0;R=1;while(1){e=d-1|0;c=ta+(R?b:H[(z+16|0)+(e<<2)>>2])|0;i=L[c+4>>2];g=L[c+52>>2];fa=L[c+36>>2];k=L[c+84>>2];V=L[c+20>>2];n=L[c+68>>2];ba=L[c+8>>2];p=L[c+56>>2];za=L[c+40>>2];K=L[c+88>>2];Aa=L[c+24>>2];ca=L[c+72>>2];va=L[c+12>>2];sa=L[c+60>>2];Ba=L[c+44>>2];wa=L[c+92>>2];Ca=L[c+28>>2];xa=L[c+76>>2];j=L[c>>2];f=L[c+48>>2];A=L[c+32>>2];l=L[c+80>>2];D=L[c+16>>2];m=L[c+64>>2];a=H[c+96>>2]&-2;H[z+12>>2]=a;R=0;c:{d:{if(fs?j:s;s=O(S-o);u=mO(9.999999974752427e-7);Ja=O($+O(-9.999999974752427e-7));$=O(f-Ea);Da=O(m-Fa);Ha=O(l-ya);if(t&Ja>O(O(O((x(2,(B(O(O($*s)+O(0))),v(2))&2147483647),C())+(x(2,(B(O(O(Da*u)+O(0))),v(2))&2147483647),C()))+(x(2,(B(O(O(Ha*y)+O(0))),v(2))&2147483647),C()))+O(O((x(2,(B(O(O(ra*s)+O(O(qa*u)+O(O(pa*y)+O(0))))),v(2))&2147483647),C())+(x(2,(B(O(O(oa*s)+O(O(na*u)+O(O(ma*y)+O(0))))),v(2))&2147483647),C()))+(x(2,(B(O(O(la*s)+O(O(ka*u)+O(O(ja*y)+O(0))))),v(2))&2147483647),C())))){break d}f=fO(9.999999974752427e-7)){t=O(m+O(-9.999999974752427e-7))>O(O(O((x(2,(B(O(O($*f)+O(0))),v(2))&2147483647),C())+(x(2,(B(O(O(Da*j)+O(0))),v(2))&2147483647),C()))+(x(2,(B(O(O(Ha*l)+O(0))),v(2))&2147483647),C()))+O(O((x(2,(B(O(O(ra*f)+O(O(qa*j)+O(O(pa*l)+O(0))))),v(2))&2147483647),C())+(x(2,(B(O(O(oa*f)+O(O(na*j)+O(O(ma*l)+O(0))))),v(2))&2147483647),C()))+(x(2,(B(O(O(la*f)+O(O(ka*j)+O(O(ja*l)+O(0))))),v(2))&2147483647),C())))}else{t=0}if(t){break d}if(F[c+96|0]&1){if(Ra[H[H[aa>>2]>>2]](aa,1,z+12|0)|0){break d}break c}H[(z+16|0)+(e<<2)>>2]=a;R=1;b=a;e=d}a=H[c+100>>2]&-2;H[z+12>>2]=a;s=O(O(O(i+g)*O(.5))+O(0));f=gn?n:r;w=jO(9.999999974752427e-7);$=O(u+O(-9.999999974752427e-7));u=O(g-s);S=O(n-y);_=O(k-w);t=d&$>O(O(O((x(2,(B(O(O(u*f)+O(0))),v(2))&2147483647),C())+(x(2,(B(O(O(S*j)+O(0))),v(2))&2147483647),C()))+(x(2,(B(O(O(_*l)+O(0))),v(2))&2147483647),C()))+O(O((x(2,(B(O(O(ra*f)+O(O(qa*j)+O(O(pa*l)+O(0))))),v(2))&2147483647),C())+(x(2,(B(O(O(oa*f)+O(O(na*j)+O(O(ma*l)+O(0))))),v(2))&2147483647),C()))+(x(2,(B(O(O(la*f)+O(O(ka*j)+O(O(ja*l)+O(0))))),v(2))&2147483647),C())));f=gO(9.999999974752427e-7)){d=O(j+O(-9.999999974752427e-7))>O(O(O((x(2,(B(O(O(u*f)+O(0))),v(2))&2147483647),C())+(x(2,(B(O(O(S*n)+O(0))),v(2))&2147483647),C()))+(x(2,(B(O(O(_*k)+O(0))),v(2))&2147483647),C()))+O(O((x(2,(B(O(O(ra*f)+O(O(qa*n)+O(O(pa*k)+O(0))))),v(2))&2147483647),C())+(x(2,(B(O(O(oa*f)+O(O(na*n)+O(O(ma*k)+O(0))))),v(2))&2147483647),C()))+(x(2,(B(O(O(la*f)+O(O(ka*n)+O(O(ja*k)+O(0))))),v(2))&2147483647),C())))}else{d=0}e:{if(t|d|g>2]>>2]](aa,1,z+12|0)|0){break e}break c}H[(z+16|0)+(e<<2)>>2]=a;R=1;e=e+1|0;b=a}a=H[c+104>>2]&-2;H[z+12>>2]=a;l=O(O(O(ba+p)*O(.5))+O(0));g=o>p?p:o;n=gca?ca:r;V=fK?K:q;A=iO(9.999999974752427e-7);s=O(m+O(-9.999999974752427e-7));m=O(p-l);A=O(ca-fa);D=O(K-V);t=d&s>O(O(O((x(2,(B(O(O(m*g)+O(0))),v(2))&2147483647),C())+(x(2,(B(O(O(A*f)+O(0))),v(2))&2147483647),C()))+(x(2,(B(O(O(D*i)+O(0))),v(2))&2147483647),C()))+O(O((x(2,(B(O(O(ra*g)+O(O(qa*f)+O(O(pa*i)+O(0))))),v(2))&2147483647),C())+(x(2,(B(O(O(oa*g)+O(O(na*f)+O(O(ma*i)+O(0))))),v(2))&2147483647),C()))+(x(2,(B(O(O(la*g)+O(O(ka*f)+O(O(ja*i)+O(0))))),v(2))&2147483647),C())));g=k>p?p:k;g=O(k-(gca?ca:n;f=O(n-(fK?K:j;i=O(j-(iO(9.999999974752427e-7)){d=O(k+O(-9.999999974752427e-7))>O(O(O((x(2,(B(O(O(m*g)+O(0))),v(2))&2147483647),C())+(x(2,(B(O(O(A*f)+O(0))),v(2))&2147483647),C()))+(x(2,(B(O(O(D*i)+O(0))),v(2))&2147483647),C()))+O(O((x(2,(B(O(O(ra*g)+O(O(qa*f)+O(O(pa*i)+O(0))))),v(2))&2147483647),C())+(x(2,(B(O(O(oa*g)+O(O(na*f)+O(O(ma*i)+O(0))))),v(2))&2147483647),C()))+(x(2,(B(O(O(la*g)+O(O(ka*f)+O(O(ja*i)+O(0))))),v(2))&2147483647),C())))}else{d=0}f:{if(t|d|p>2]>>2]](aa,1,z+12|0)|0){break f}break c}H[(z+16|0)+(e<<2)>>2]=a;R=1;e=e+1|0;b=a}a=H[c+108>>2]&-2;H[z+12>>2]=a;d=e;ba=O(O(O(va+sa)*O(.5))+O(0));g=o>sa?sa:o;k=gxa?xa:r;j=pwa?wa:q;l=fO(9.999999974752427e-7);s=O(K+O(-9.999999974752427e-7));K=O(sa-ba);l=O(xa-ca);m=O(wa-j);ua=t&s>O(O(O((x(2,(B(O(O(K*g)+O(0))),v(2))&2147483647),C())+(x(2,(B(O(O(l*p)+O(0))),v(2))&2147483647),C()))+(x(2,(B(O(O(m*f)+O(0))),v(2))&2147483647),C()))+O(O((x(2,(B(O(O(ra*g)+O(O(qa*p)+O(O(pa*f)+O(0))))),v(2))&2147483647),C())+(x(2,(B(O(O(oa*g)+O(O(na*p)+O(O(ma*f)+O(0))))),v(2))&2147483647),C()))+(x(2,(B(O(O(la*g)+O(O(ka*p)+O(O(ja*f)+O(0))))),v(2))&2147483647),C())));g=i>sa?sa:i;g=O(i-(gxa?xa:k;p=O(k-(pwa?wa:n;f=O(n-(fO(9.999999974752427e-7)){t=O(i+O(-9.999999974752427e-7))>O(O(O((x(2,(B(O(O(K*g)+O(0))),v(2))&2147483647),C())+(x(2,(B(O(O(l*p)+O(0))),v(2))&2147483647),C()))+(x(2,(B(O(O(m*f)+O(0))),v(2))&2147483647),C()))+O(O((x(2,(B(O(O(ra*g)+O(O(qa*p)+O(O(pa*f)+O(0))))),v(2))&2147483647),C())+(x(2,(B(O(O(oa*g)+O(O(na*p)+O(O(ma*f)+O(0))))),v(2))&2147483647),C()))+(x(2,(B(O(O(la*g)+O(O(ka*p)+O(O(ja*f)+O(0))))),v(2))&2147483647),C())))}else{t=0}g:{if(ua|t|sa>2]>>2]](aa,1,z+12|0)|0){break g}break c}H[(z+16|0)+(e<<2)>>2]=a;R=1;b=a;d=e+1|0}if((d|0)>0){continue}}break}Oa=z+528|0}H[h+36>>2]=128020;H[h+32>>2]=127996;if(I[h+208|0]){a=H[h+40>>2];Ra[H[H[a>>2]>>2]](a,h+96|0,h+160|0,h+172|0,h+184|0,h+92|0,h+196|0)|0}Oa=h+288|0}function dp(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;n=Oa-256|0;Oa=n;a:{if(H[a+4656>>2]){o5(H[33808],2,9281,468,57583,0);break a}m=a+32|0;e=H[m+2384>>2];j=H[e+12>>2];h=H[e+8>>2];f=j+N(h,12)|0;i=H[f+4>>2];b:{if(i){H[f+4>>2]=H[i>>2];break b}c:{i=H[f+8>>2];if((i|0)==H[e>>2]){break c}k=H[e+4>>2];H[f+8>>2]=i+1;f=H[j+N(h,12)>>2];if(!f){break c}i=f+N(i,k)|0;break b}i=LN(e)}f=0;e=i+39|0;f=e>>>0<39?1:f;e=(f&63)<<26|e>>>6;h=f>>>6|0;f=i>>>6|0;l=h-(f>>>0>e>>>0)|0;q=e-f|0;k=l;e=q+1|0;k=e?k:k+1|0;f=k;j=0;k=j;s=e&7;d:{if(!(j|s)){j=i;break d}j=i;while(1){h=e;e=e-1|0;f=f-!h|0;j=j- -64|0;h=g;g=p+1|0;h=g?h:h+1|0;p=g;g=h;if((s|0)!=(p|0)|(k|0)!=(g|0)){continue}break}}if(!l&q>>>0>=7|l){while(1){j=j+512|0;f=f-(e>>>0<8)|0;e=e-8|0;if(f|e){continue}break}}H[n+224>>2]=i;e=H[m+2388>>2];g=H[e+12>>2];j=H[e+8>>2];f=g+N(j,12)|0;i=H[f+4>>2];e:{if(i){H[f+4>>2]=H[i>>2];break e}f:{i=H[f+8>>2];if((i|0)==H[e>>2]){break f}h=H[e+4>>2];H[f+8>>2]=i+1;f=H[g+N(j,12)>>2];if(!f){break f}i=f+N(h,i)|0;break e}i=LN(e)}k=0;e=i+51|0;k=e>>>0<51?1:k;e=(k&63)<<26|e>>>6;f=i>>>6|0;k=(k>>>6|0)-(f>>>0>e>>>0)|0;l=e-f|0;g=0;q=g;f=k;e=l+1|0;f=e?f:f+1|0;s=e&7;g:{if(!(g|s)){j=i;break g}p=0;j=i;while(1){h=e;e=e-1|0;f=f-!h|0;j=j- -64|0;h=g;g=p+1|0;h=g?h:h+1|0;p=g;g=h;if((s|0)!=(p|0)|(q|0)!=(g|0)){continue}break}}if(!k&l>>>0>=7|k){while(1){j=j+512|0;f=f-(e>>>0<8)|0;e=e-8|0;if(f|e){continue}break}}H[n+220>>2]=i;e=H[m+2392>>2];g=H[e+12>>2];j=H[e+8>>2];f=g+N(j,12)|0;i=H[f+4>>2];h:{if(i){H[f+4>>2]=H[i>>2];break h}i:{i=H[f+8>>2];if((i|0)==H[e>>2]){break i}h=H[e+4>>2];H[f+8>>2]=i+1;f=H[g+N(j,12)>>2];if(!f){break i}i=f+N(h,i)|0;break h}i=LN(e)}f=0;e=i+175|0;f=e>>>0<175?1:f;e=(f&63)<<26|e>>>6;g=f>>>6|0;f=i>>>6|0;k=g-(f>>>0>e>>>0)|0;l=e-f|0;g=0;q=g;f=k;e=l+1|0;f=e?f:f+1|0;s=e&7;j:{if(!(g|s)){j=i;break j}p=0;j=i;while(1){h=e;e=e-1|0;f=f-!h|0;j=j- -64|0;h=g;g=p+1|0;h=g?h:h+1|0;p=g;g=h;if((s|0)!=(p|0)|(q|0)!=(g|0)){continue}break}}if(!k&l>>>0>=7|k){while(1){j=j+512|0;f=f-(e>>>0<8)|0;e=e-8|0;if(f|e){continue}break}}H[n+216>>2]=i;H[n+236>>2]=64;H[n+240>>2]=20;H[n+228>>2]=64;H[n+232>>2]=20;H[n+244>>2]=48;j=1;F[n+200|0]=1;H[n+208>>2]=0;H[n+212>>2]=8;s=a+5584|0;H[n+204>>2]=n+8;k:{l:{if(!c){j=0;break l}B=a+5932|0;y=a+16|0;m:{while(1){o=x;x=o+1|0;n:{if(x>>>0>=c>>>0){break n}p=0;g=0;f=0;l=H[(x<<2)+b>>2];e=l;i=e+319|0;f=i>>>0<319?1:f;h=f>>>6|0;f=(f&63)<<26|i>>>6;e=e>>>6|0;k=h-(e>>>0>f>>>0)|0;q=f-e|0;i=k;e=q+1|0;k=e?i:i+1|0;f=k;h=0;k=h;r=e&7;if(h|r){while(1){h=e;e=e-1|0;f=f-!h|0;l=l- -64|0;h=g;g=p+1|0;h=g?h:h+1|0;p=g;g=h;if((r|0)!=(p|0)|(k|0)!=(g|0)){continue}break}}if(!i&q>>>0<7){break n}while(1){l=l+512|0;f=f-(e>>>0<8)|0;e=e-8|0;if(f|e){continue}break}}o:{p:{e=H[(o<<2)+b>>2];l=J[e+4>>1];switch(H[H[((l<<2)+73232|0)+72>>2]+(e+4|0)>>2]>>>30|0){case 0:break o;case 3:break p;default:break m}}f=H[e+H[((J[e+4>>1]<<2)+73232|0)+72>>2]>>2];if(f){g=f-16|0}else{g=0}if((g|0)!=(a|0)){break m}l=J[e+4>>1]}q:{r:{s:{switch((l&65535)-5|0){case 1:if(H[e+40>>2]?d:1){f=H[e+52>>2];if(I[(f&1?H[e+56>>2]:(e+H[((f>>>22&60)+76348|0)+12>>2]|0)+56|0)|0]&8){break r}ep(n+8|0,J[e+24>>1]+1|0);z=H[n+204>>2];p=0;g=0;l=e;q=n+216|0;r=e+H[q+16>>2]|0;e=J[r+4>>1];v=(e|0)==1?r:H[r>>2];t=H[q+4>>2];t:{if(!e){break t}i=H[v>>2];e=i;j=H[q+28>>2]+144|0;f=e+j|0;k=0;k=f>>>0>>0?1:k;j=k-!f|0;f=f-1|0;f=(j&63)<<26|f>>>6;e=e>>>6|0;h=(j>>>6|0)-(e>>>0>f>>>0)|0;k=f-e|0;j=h;e=k+1|0;h=e?h:h+1|0;f=h;h=0;u=h;w=e&7;if(h|w){while(1){h=e;e=e-1|0;f=f-!h|0;i=i- -64|0;o=g;g=p+1|0;o=g?o:o+1|0;p=g;g=o;if((w|0)!=(p|0)|(u|0)!=(g|0)){continue}break}}if(!j&k>>>0<7){break t}while(1){i=i+512|0;f=f-(e>>>0<8)|0;e=e-8|0;if(f|e){continue}break}}u=VI(t,m,l+H[q+12>>2]|0);H[t>>2]=123460;e=H[m+2388>>2];g=H[e+12>>2];h=H[e+8>>2];f=g+N(h,12)|0;j=H[f+4>>2];u:{if(j){H[f+4>>2]=H[j>>2];break u}v:{i=H[f+8>>2];if((i|0)==H[e>>2]){break v}j=H[e+4>>2];H[f+8>>2]=i+1;f=H[g+N(h,12)>>2];if(!f){break v}j=f+N(i,j)|0;break u}j=LN(e)}h=0;e=j+51|0;h=e>>>0<51?1:h;e=(h&63)<<26|e>>>6;f=j>>>6|0;h=(h>>>6|0)-(f>>>0>e>>>0)|0;t=e-f|0;g=0;w=g;f=h;e=t+1|0;f=e?f:f+1|0;A=e&7;w:{if(!(g|A)){i=j;break w}p=0;i=j;while(1){k=e;e=e-1|0;f=f-!k|0;i=i- -64|0;o=g;g=p+1|0;o=g?o:o+1|0;p=g;g=o;if((A|0)!=(p|0)|(w|0)!=(g|0)){continue}break}}if(!h&t>>>0>=7|h){while(1){i=i+512|0;f=f-(e>>>0<8)|0;e=e-8|0;if(f|e){continue}break}}H[q+4>>2]=j;NO(m,v,J[r+4>>1],H[q+28>>2],u,q+8|0,z);H[m+2664>>2]=H[m+2664>>2]+1;f=H[n+204>>2];H[l+48>>2]=y;H[l+52>>2]=H[l+52>>2]&1073741823|-2147483648;g=J[l+24>>1];if(g){i=l+20|0;h=(g|0)==1?i:H[i>>2];j=0;while(1){e=H[h+(j<<2)>>2];k=I[e+112|0];H[e+16>>2]=H[e+16>>2]+1;if(H[e+196>>2]<0){H[e+32>>2]=y;H[e+36>>2]=H[e+36>>2]&1073741823|-2147483648}if(k&2){ot(i,s,j,e,l,0,f?f+N(j,24)|0:0,(d|0)!=0)}j=j+1|0;if((g|0)!=(j|0)){continue}break}}e=H[a+5936>>2];H[l+44>>2]=e;H[n+252>>2]=l;x:{if(e>>>0>=(H[a+5940>>2]&2147483647)>>>0){bp(B,n+252|0);break x}H[H[a+5932>>2]+(e<<2)>>2]=l;H[a+5936>>2]=e+1}if(!H[l+16>>2]){break q}qg(l+12|0);break q}o5(H[33808],8,9281,513,62443,0);break k;case 0:if(H[e+40>>2]?d:1){f=H[e+52>>2];if(!(I[(f&1?H[e+56>>2]:(e+H[((f>>>22&60)+76348|0)+12>>2]|0)+56|0)|0]&8)){ep(n+8|0,J[e+24>>1]+1|0);w=H[n+204>>2];p=0;g=0;v=Oa-16|0;Oa=v;h=e;q=n+216|0;t=e+H[q+24>>2]|0;e=J[t+4>>1];z=(e|0)==1?t:H[t>>2];r=H[q>>2];y:{if(!e){break y}i=H[z>>2];e=i;k=H[q+28>>2]+144|0;j=e+k|0;f=0;f=j>>>0>>0?1:f;f=f-!j|0;j=j-1|0;k=f>>>6|0;f=(f&63)<<26|j>>>6;e=e>>>6|0;o=k-(e>>>0>f>>>0)|0;l=f-e|0;j=o;e=l+1|0;o=e?j:j+1|0;f=o;k=0;o=k;u=e&7;if(k|u){while(1){k=e;e=e-1|0;f=f-!k|0;i=i- -64|0;k=g;g=p+1|0;k=g?k:k+1|0;p=g;g=k;if((u|0)!=(p|0)|(o|0)!=(g|0)){continue}break}}if(!j&l>>>0<7){break y}while(1){i=i+512|0;f=f-(e>>>0<8)|0;e=e-8|0;if(f|e){continue}break}}g=r;r=h+H[q+20>>2]|0;l=aG(g,m,r,0);e=H[m+2392>>2];g=H[e+12>>2];k=H[e+8>>2];f=g+N(k,12)|0;j=H[f+4>>2];z:{if(j){H[f+4>>2]=H[j>>2];break z}A:{i=H[f+8>>2];if((i|0)==H[e>>2]){break A}j=H[e+4>>2];H[f+8>>2]=i+1;f=H[g+N(k,12)>>2];if(!f){break A}j=f+N(i,j)|0;break z}j=LN(e)}o=0;e=j+175|0;o=e>>>0<175?1:o;e=(o&63)<<26|e>>>6;f=j>>>6|0;o=(o>>>6|0)-(f>>>0>e>>>0)|0;u=e-f|0;g=0;A=g;f=o;e=u+1|0;f=e?f:f+1|0;C=e&7;B:{if(!(g|C)){i=j;break B}p=0;i=j;while(1){k=e;e=e-1|0;f=f-!k|0;i=i- -64|0;k=g;g=p+1|0;k=g?k:k+1|0;p=g;g=k;if((C|0)!=(p|0)|(A|0)!=(g|0)){continue}break}}if(!o&u>>>0>=7|o){while(1){i=i+512|0;f=f-(e>>>0<8)|0;e=e-8|0;if(f|e){continue}break}}H[q>>2]=j;e=I[H[l+100>>2]+28|0]&32;C:{D:{if(I[H[l+44>>2]+9|0]==2){if(!e){break C}j=H[l+144>>2];f=j>>>7|0;e=f+32>>>5|0;if(e>>>0<=(H[m+4740>>2]&2147483647)>>>0){i=H[m+4736>>2];break D}g=H[33808]+12|0;i=Ra[H[H[g>>2]+8>>2]](g,e<<2,20591,14905,438)|0;g=H[m+4736>>2];E:{if(!g){break E}R6(i,g,H[m+4740>>2]<<2);if(H[m+4740>>2]<0){break E}g=H[m+4736>>2];if(!g){break E}k=H[33808]+12|0;Ra[H[H[k>>2]+12>>2]](k,g)}g=H[m+4740>>2];S6((g<<2)+i|0,0,e-g<<2);H[m+4740>>2]=e;H[m+4736>>2]=i;break D}if(!e){break C}j=H[l+144>>2];f=j>>>7|0;e=f+32>>>5|0;if(e>>>0<=(H[m+4728>>2]&2147483647)>>>0){i=H[m+4724>>2];break D}g=H[33808]+12|0;i=Ra[H[H[g>>2]+8>>2]](g,e<<2,20591,14905,438)|0;g=H[m+4724>>2];F:{if(!g){break F}R6(i,g,H[m+4728>>2]<<2);if(H[m+4728>>2]<0){break F}g=H[m+4724>>2];if(!g){break F}k=H[33808]+12|0;Ra[H[H[k>>2]+12>>2]](k,g)}g=H[m+4728>>2];S6((g<<2)+i|0,0,e-g<<2);H[m+4728>>2]=e;H[m+4724>>2]=i}e=(j>>>10&4194300)+i|0;H[e>>2]=H[e>>2]|1<>2];if(f>>>0<=4294967167){e=H[m+1012>>2];H[v+8>>2]=f;Ra[H[H[e>>2]+24>>2]](e,l- -64|0,v+8|0)}NO(m,z,J[t+4>>1],H[q+28>>2],l,q+8|0,w);G:{H:{if(!H[r+176>>2]|I[H[r+176>>2]+31|0]!=1){break H}e=H[r+176>>2];if(I[(I[e+31|0]==1?e:0)+31|0]!=1){break H}H[m+2672>>2]=H[m+2672>>2]+1;break G}H[m+2668>>2]=H[m+2668>>2]+1}Oa=v+16|0;I:{J:{if(L[h+308>>2]!=O(0)|L[h+284>>2]!=O(0)|(L[h+288>>2]!=O(0)|L[h+292>>2]!=O(0))){break J}if(L[h+296>>2]!=O(0)|L[h+300>>2]!=O(0)){break J}e=1;if(L[h+304>>2]==O(0)){break I}}e=0}f=H[n+204>>2];H[h+48>>2]=y;H[h+312>>2]=e;H[h+52>>2]=H[h+52>>2]&1073741823|-2147483648;g=J[h+24>>1];if(g){i=h+20|0;k=(g|0)==1?i:H[h+20>>2];j=0;while(1){e=H[k+(j<<2)>>2];o=I[e+112|0];H[e+16>>2]=H[e+16>>2]+1;if(H[e+196>>2]<0){H[e+32>>2]=y;H[e+36>>2]=H[e+36>>2]&1073741823|-2147483648}if(o&2){ot(i,s,j,e,h,1,f?f+N(j,24)|0:0,(d|0)!=0)}j=j+1|0;if((g|0)!=(j|0)){continue}break}}e=H[a+5936>>2];H[h+44>>2]=e;H[n+252>>2]=h;K:{if(e>>>0>=(H[a+5940>>2]&2147483647)>>>0){bp(B,n+252|0);break K}H[H[a+5932>>2]+(e<<2)>>2]=h;H[a+5936>>2]=e+1}if(!H[h+16>>2]){break q}qg(h+12|0);break q}ap(a,e,0,(d|0)!=0);break q}o5(H[33808],8,9281,536,62443,0);break k;default:break s}}o5(H[33808],2,9281,553,19621,0);break l}$o(a,e,0,(d|0)!=0)}j=c>>>0>x>>>0;if((c|0)!=(x|0)){continue}break}o=c;break l}o5(H[33808],8,9281,495,64936,0)}if(!d){break k}c=Oa-16|0;Oa=c;e=H[d+16>>2];if(e){f=H[d+8>>2];g=H[d+24>>2];H[c+12>>2]=H[d+32>>2];H[c+8>>2]=g;H[c+4>>2]=e;H[c>>2]=f;e=H[s>>2];Ra[H[H[e>>2]+20>>2]](e,c)}e=H[d+20>>2];if(e){f=H[d+12>>2];g=H[d+28>>2];H[c+12>>2]=H[d+36>>2];H[c+8>>2]=g;H[c+4>>2]=e;H[c>>2]=f;d=H[s+36>>2];Ra[H[H[d>>2]+20>>2]](d,c)}Oa=c+16|0}c=0;k=Oa-48|0;Oa=k;f=H[n+220>>2];L:{if(!f){break L}e=H[m+2388>>2];if(I[e+24|0]){MN(H[e+12>>2],H[e+16>>2])}d=H[e+16>>2]-1|0;if((d|0)<0){break L}l=N(H[e+4>>2],H[e>>2]);i=H[e+12>>2];while(1){g=c+d>>1;h=H[i+N(g,12)>>2];if(!(h>>>0>f>>>0|f>>>0>=h+l>>>0)){c=i+N(g,12)|0;H[f>>2]=H[c+4>>2];H[c+4>>2]=f;if(I[e+24|0]){H[e+8>>2]=g}F[e+24|0]=0;break L}h=f>>>0>h>>>0;c=h?g+1|0:c;d=h?d:g-1|0;if((c|0)<=(d|0)){continue}break}}f=H[n+216>>2];M:{if(!f){break M}e=H[m+2392>>2];if(I[e+24|0]){MN(H[e+12>>2],H[e+16>>2])}c=0;d=H[e+16>>2]-1|0;if((d|0)<0){break M}l=N(H[e+4>>2],H[e>>2]);i=H[e+12>>2];while(1){g=c+d>>1;h=H[i+N(g,12)>>2];if(!(h>>>0>f>>>0|f>>>0>=h+l>>>0)){c=i+N(g,12)|0;H[f>>2]=H[c+4>>2];H[c+4>>2]=f;if(I[e+24|0]){H[e+8>>2]=g}F[e+24|0]=0;break M}h=f>>>0>h>>>0;c=h?g+1|0:c;d=h?d:g-1|0;if((c|0)<=(d|0)){continue}break}}f=H[n+224>>2];N:{if(!f){break N}e=H[m+2384>>2];if(I[e+24|0]){MN(H[e+12>>2],H[e+16>>2])}c=0;d=H[e+16>>2]-1|0;if((d|0)<0){break N}l=N(H[e+4>>2],H[e>>2]);i=H[e+12>>2];while(1){g=c+d>>1;h=H[i+N(g,12)>>2];if(!(h>>>0>f>>>0|f>>>0>=h+l>>>0)){c=i+N(g,12)|0;H[f>>2]=H[c+4>>2];H[c+4>>2]=f;if(I[e+24|0]){H[e+8>>2]=g}F[e+24|0]=0;break N}h=f>>>0>h>>>0;c=h?g+1|0:c;d=h?d:g-1|0;if((c|0)<=(d|0)){continue}break}}Oa=k+48|0;if(!(!(j&1)|!o)){l=0;while(1){O:{P:{Q:{R:{c=H[(l<<2)+b>>2];switch(Ra[H[H[c>>2]+24>>2]](c)|0){case 2:break P;case 1:break Q;case 0:break R;default:break O}}fp(a,c,0,1);break O}gp(a,c,0,1);break O}o5(H[33808],2,9281,689,18618,0)}l=l+1|0;if((o|0)!=(l|0)){continue}break}}a=H[n+212>>2];if((a|0)<0|!(a&2147483647)){break a}a=H[n+204>>2];if((a|0)==(n+8|0)|!a){break a}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,a)}Oa=n+256|0}function M6(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=Oa-16|0;Oa=l;a:{b:{c:{d:{e:{f:{g:{h:{i:{j:{k:{if(a>>>0<=244){e=H[34021];h=a>>>0<11?16:a+11&-8;c=h>>>3|0;b=e>>>c|0;if(b&3){d=c+((b^-1)&1)|0;b=d<<3;f=H[b+136132>>2];a=f+8|0;c=H[f+8>>2];b=b+136124|0;l:{if((c|0)==(b|0)){m=136084,n=j7(-2,d)&e,H[m>>2]=n;break l}H[c+12>>2]=b;H[b+8>>2]=c}b=d<<3;H[f+4>>2]=b|3;b=b+f|0;H[b+4>>2]=H[b+4>>2]|1;break a}k=H[34023];if(k>>>0>=h>>>0){break k}if(b){a=2<>>12&16;c=a;b=b>>>a|0;a=b>>>5&8;c=c|a;b=b>>>a|0;a=b>>>2&4;c=c|a;b=b>>>a|0;a=b>>>1&2;c=c|a;b=b>>>a|0;a=b>>>1&1;c=(c|a)+(b>>>a|0)|0;a=c<<3;g=H[a+136132>>2];b=H[g+8>>2];a=a+136124|0;m:{if((b|0)==(a|0)){e=j7(-2,c)&e;H[34021]=e;break m}H[b+12>>2]=a;H[a+8>>2]=b}a=g+8|0;H[g+4>>2]=h|3;d=g+h|0;b=c<<3;f=b-h|0;H[d+4>>2]=f|1;H[b+g>>2]=f;if(k){b=k>>>3|0;c=(b<<3)+136124|0;g=H[34026];b=1<>2]}H[c+8>>2]=g;H[b+12>>2]=g;H[g+12>>2]=c;H[g+8>>2]=b}H[34026]=d;H[34023]=f;break a}j=H[34022];if(!j){break k}b=(j&0-j)-1|0;a=b>>>12&16;c=a;b=b>>>a|0;a=b>>>5&8;c=c|a;b=b>>>a|0;a=b>>>2&4;c=c|a;b=b>>>a|0;a=b>>>1&2;c=c|a;b=b>>>a|0;a=b>>>1&1;b=H[((c|a)+(b>>>a|0)<<2)+136388>>2];d=(H[b+4>>2]&-8)-h|0;c=b;while(1){o:{a=H[c+16>>2];if(!a){a=H[c+20>>2];if(!a){break o}}c=(H[a+4>>2]&-8)-h|0;f=c>>>0>>0;d=f?c:d;b=f?a:b;c=a;continue}break}i=H[b+24>>2];f=H[b+12>>2];if((f|0)!=(b|0)){a=H[b+8>>2];H[a+12>>2]=f;H[f+8>>2]=a;break b}c=b+20|0;a=H[c>>2];if(!a){a=H[b+16>>2];if(!a){break j}c=b+16|0}while(1){g=c;f=a;c=a+20|0;a=H[c>>2];if(a){continue}c=f+16|0;a=H[f+16>>2];if(a){continue}break}H[g>>2]=0;break b}h=-1;if(a>>>0>4294967231){break k}a=a+11|0;h=a&-8;j=H[34022];if(!j){break k}d=0-h|0;e=0;p:{if(h>>>0<256){break p}e=31;if(h>>>0>16777215){break p}a=a>>>8|0;g=a+1048320>>>16&8;a=a<>>16&4;a=a<>>16&2;a=(a<>>15|0)-(b|(c|g))|0;e=(a<<1|h>>>a+21&1)+28|0}c=H[(e<<2)+136388>>2];q:{r:{s:{if(!c){a=0;break s}a=0;b=h<<((e|0)==31?0:25-(e>>>1|0)|0);while(1){t:{g=(H[c+4>>2]&-8)-h|0;if(g>>>0>=d>>>0){break t}f=c;d=g;if(d){break t}d=0;a=c;break r}g=H[c+20>>2];c=H[((b>>>29&4)+c|0)+16>>2];a=g?(g|0)==(c|0)?a:g:a;b=b<<1;if(c){continue}break}}if(!(a|f)){f=0;a=2<>>12&16;c=a;b=b>>>a|0;a=b>>>5&8;c=c|a;b=b>>>a|0;a=b>>>2&4;c=c|a;b=b>>>a|0;a=b>>>1&2;c=c|a;b=b>>>a|0;a=b>>>1&1;a=H[((c|a)+(b>>>a|0)<<2)+136388>>2]}if(!a){break q}}while(1){b=(H[a+4>>2]&-8)-h|0;c=b>>>0>>0;d=c?b:d;f=c?a:f;b=H[a+16>>2];if(b){a=b}else{a=H[a+20>>2]}if(a){continue}break}}if(!f|H[34023]-h>>>0<=d>>>0){break k}e=H[f+24>>2];b=H[f+12>>2];if((f|0)!=(b|0)){a=H[f+8>>2];H[a+12>>2]=b;H[b+8>>2]=a;break c}c=f+20|0;a=H[c>>2];if(!a){a=H[f+16>>2];if(!a){break i}c=f+16|0}while(1){g=c;b=a;c=a+20|0;a=H[c>>2];if(a){continue}c=b+16|0;a=H[b+16>>2];if(a){continue}break}H[g>>2]=0;break c}c=H[34023];if(c>>>0>=h>>>0){d=H[34026];b=c-h|0;u:{if(b>>>0>=16){H[34023]=b;a=d+h|0;H[34026]=a;H[a+4>>2]=b|1;H[c+d>>2]=b;H[d+4>>2]=h|3;break u}H[34026]=0;H[34023]=0;H[d+4>>2]=c|3;a=c+d|0;H[a+4>>2]=H[a+4>>2]|1}a=d+8|0;break a}i=H[34024];if(i>>>0>h>>>0){b=i-h|0;H[34024]=b;c=H[34027];a=c+h|0;H[34027]=a;H[a+4>>2]=b|1;H[c+4>>2]=h|3;a=c+8|0;break a}a=0;j=h+47|0;if(H[34139]){c=H[34141]}else{H[34142]=-1;H[34143]=-1;H[34140]=4096;H[34141]=4096;H[34139]=l+12&-16^1431655768;H[34144]=0;H[34132]=0;c=4096}g=j+c|0;f=0-c|0;c=g&f;if(c>>>0<=h>>>0){break a}d=H[34131];if(d){b=H[34129];e=b+c|0;if(d>>>0>>0|b>>>0>=e>>>0){break a}}if(I[136528]&4){break f}v:{w:{d=H[34027];if(d){a=136532;while(1){b=H[a>>2];if(b>>>0<=d>>>0&d>>>0>2]>>>0){break w}a=H[a+8>>2];if(a){continue}break}}b=P6(0);if((b|0)==-1){break g}e=c;d=H[34140];a=d-1|0;if(a&b){e=(c-b|0)+(a+b&0-d)|0}if(e>>>0<=h>>>0|e>>>0>2147483646){break g}d=H[34131];if(d){a=H[34129];f=a+e|0;if(d>>>0>>0|a>>>0>=f>>>0){break g}}a=P6(e);if((b|0)!=(a|0)){break v}break e}e=f&g-i;if(e>>>0>2147483646){break g}b=P6(e);if((b|0)==(H[a>>2]+H[a+4>>2]|0)){break h}a=b}if(!((a|0)==-1|h+48>>>0<=e>>>0)){b=H[34141];b=b+(j-e|0)&0-b;if(b>>>0>2147483646){b=a;break e}if((P6(b)|0)!=-1){e=b+e|0;b=a;break e}P6(0-e|0);break g}b=a;if((a|0)!=-1){break e}break g}f=0;break b}b=0;break c}if((b|0)!=-1){break e}}H[34132]=H[34132]|4}if(c>>>0>2147483646){break d}b=P6(c);a=P6(0);if((b|0)==-1|(a|0)==-1|a>>>0<=b>>>0){break d}e=a-b|0;if(e>>>0<=h+40>>>0){break d}}a=H[34129]+e|0;H[34129]=a;if(a>>>0>K[34130]){H[34130]=a}x:{y:{z:{g=H[34027];if(g){a=136532;while(1){d=H[a>>2];c=H[a+4>>2];if((d+c|0)==(b|0)){break z}a=H[a+8>>2];if(a){continue}break}break y}a=H[34025];if(!(a>>>0<=b>>>0?a:0)){H[34025]=b}a=0;H[34134]=e;H[34133]=b;H[34029]=-1;H[34030]=H[34139];H[34136]=0;while(1){d=a<<3;c=d+136124|0;H[d+136132>>2]=c;H[d+136136>>2]=c;a=a+1|0;if((a|0)!=32){continue}break}d=e-40|0;a=b+8&7?-8-b&7:0;c=d-a|0;H[34024]=c;a=a+b|0;H[34027]=a;H[a+4>>2]=c|1;H[(b+d|0)+4>>2]=40;H[34028]=H[34143];break x}if(I[a+12|0]&8|d>>>0>g>>>0|b>>>0<=g>>>0){break y}H[a+4>>2]=c+e;a=g+8&7?-8-g&7:0;c=a+g|0;H[34027]=c;b=H[34024]+e|0;a=b-a|0;H[34024]=a;H[c+4>>2]=a|1;H[(b+g|0)+4>>2]=40;H[34028]=H[34143];break x}if(K[34025]>b>>>0){H[34025]=b}c=b+e|0;a=136532;A:{B:{C:{D:{E:{F:{while(1){if((c|0)!=H[a>>2]){a=H[a+8>>2];if(a){continue}break F}break}if(!(I[a+12|0]&8)){break E}}a=136532;while(1){c=H[a>>2];if(c>>>0<=g>>>0){f=c+H[a+4>>2]|0;if(f>>>0>g>>>0){break D}}a=H[a+8>>2];continue}}H[a>>2]=b;H[a+4>>2]=H[a+4>>2]+e;j=(b+8&7?-8-b&7:0)+b|0;H[j+4>>2]=h|3;e=c+(c+8&7?-8-c&7:0)|0;i=h+j|0;c=e-i|0;if((e|0)==(g|0)){H[34027]=i;a=H[34024]+c|0;H[34024]=a;H[i+4>>2]=a|1;break B}if(H[34026]==(e|0)){H[34026]=i;a=H[34023]+c|0;H[34023]=a;H[i+4>>2]=a|1;H[a+i>>2]=a;break B}a=H[e+4>>2];if((a&3)==1){g=a&-8;G:{if(a>>>0<=255){d=H[e+8>>2];a=a>>>3|0;b=H[e+12>>2];if((b|0)==(d|0)){m=136084,n=H[34021]&j7(-2,a),H[m>>2]=n;break G}H[d+12>>2]=b;H[b+8>>2]=d;break G}h=H[e+24>>2];b=H[e+12>>2];H:{if((e|0)!=(b|0)){a=H[e+8>>2];H[a+12>>2]=b;H[b+8>>2]=a;break H}I:{a=e+20|0;d=H[a>>2];if(d){break I}a=e+16|0;d=H[a>>2];if(d){break I}b=0;break H}while(1){f=a;b=d;a=b+20|0;d=H[a>>2];if(d){continue}a=b+16|0;d=H[b+16>>2];if(d){continue}break}H[f>>2]=0}if(!h){break G}d=H[e+28>>2];a=(d<<2)+136388|0;J:{if(H[a>>2]==(e|0)){H[a>>2]=b;if(b){break J}m=136088,n=H[34022]&j7(-2,d),H[m>>2]=n;break G}H[h+(H[h+16>>2]==(e|0)?16:20)>>2]=b;if(!b){break G}}H[b+24>>2]=h;a=H[e+16>>2];if(a){H[b+16>>2]=a;H[a+24>>2]=b}a=H[e+20>>2];if(!a){break G}H[b+20>>2]=a;H[a+24>>2]=b}e=e+g|0;c=c+g|0}H[e+4>>2]=H[e+4>>2]&-2;H[i+4>>2]=c|1;H[c+i>>2]=c;if(c>>>0<=255){a=c>>>3|0;b=(a<<3)+136124|0;c=H[34021];a=1<>2]}H[b+8>>2]=i;H[a+12>>2]=i;H[i+12>>2]=b;H[i+8>>2]=a;break B}a=31;if(c>>>0<=16777215){a=c>>>8|0;f=a+1048320>>>16&8;a=a<>>16&4;a=a<>>16&2;a=(a<>>15|0)-(b|(d|f))|0;a=(a<<1|c>>>a+21&1)+28|0}H[i+28>>2]=a;H[i+16>>2]=0;H[i+20>>2]=0;f=(a<<2)+136388|0;d=H[34022];b=1<>2]=i;H[i+24>>2]=f;break L}a=c<<((a|0)==31?0:25-(a>>>1|0)|0);b=H[f>>2];while(1){d=b;if((H[b+4>>2]&-8)==(c|0)){break C}b=a>>>29|0;a=a<<1;f=d+(b&4)|0;b=H[f+16>>2];if(b){continue}break}H[f+16>>2]=i;H[i+24>>2]=d}H[i+12>>2]=i;H[i+8>>2]=i;break B}d=e-40|0;a=b+8&7?-8-b&7:0;c=d-a|0;H[34024]=c;a=a+b|0;H[34027]=a;H[a+4>>2]=c|1;H[(b+d|0)+4>>2]=40;H[34028]=H[34143];a=(f+(f-39&7?39-f&7:0)|0)-47|0;c=a>>>0>>0?g:a;H[c+4>>2]=27;a=H[34136];H[c+16>>2]=H[34135];H[c+20>>2]=a;a=H[34134];H[c+8>>2]=H[34133];H[c+12>>2]=a;H[34135]=c+8;H[34134]=e;H[34133]=b;H[34136]=0;a=c+24|0;while(1){H[a+4>>2]=7;b=a+8|0;a=a+4|0;if(b>>>0>>0){continue}break}if((c|0)==(g|0)){break x}H[c+4>>2]=H[c+4>>2]&-2;f=c-g|0;H[g+4>>2]=f|1;H[c>>2]=f;if(f>>>0<=255){a=f>>>3|0;b=(a<<3)+136124|0;c=H[34021];a=1<>2]}H[b+8>>2]=g;H[a+12>>2]=g;H[g+12>>2]=b;H[g+8>>2]=a;break x}a=31;H[g+16>>2]=0;H[g+20>>2]=0;if(f>>>0<=16777215){a=f>>>8|0;d=a+1048320>>>16&8;a=a<>>16&4;a=a<>>16&2;a=(a<>>15|0)-(b|(c|d))|0;a=(a<<1|f>>>a+21&1)+28|0}H[g+28>>2]=a;d=(a<<2)+136388|0;c=H[34022];b=1<>2]=g;H[g+24>>2]=d;break N}a=f<<((a|0)==31?0:25-(a>>>1|0)|0);b=H[d>>2];while(1){c=b;if((f|0)==(H[b+4>>2]&-8)){break A}b=a>>>29|0;a=a<<1;d=c+(b&4)|0;b=H[d+16>>2];if(b){continue}break}H[d+16>>2]=g;H[g+24>>2]=c}H[g+12>>2]=g;H[g+8>>2]=g;break x}a=H[d+8>>2];H[a+12>>2]=i;H[d+8>>2]=i;H[i+24>>2]=0;H[i+12>>2]=d;H[i+8>>2]=a}a=j+8|0;break a}a=H[c+8>>2];H[a+12>>2]=g;H[c+8>>2]=g;H[g+24>>2]=0;H[g+12>>2]=c;H[g+8>>2]=a}a=H[34024];if(a>>>0<=h>>>0){break d}b=a-h|0;H[34024]=b;c=H[34027];a=c+h|0;H[34027]=a;H[a+4>>2]=b|1;H[c+4>>2]=h|3;a=c+8|0;break a}H[33811]=48;a=0;break a}O:{if(!e){break O}c=H[f+28>>2];a=(c<<2)+136388|0;P:{if(H[a>>2]==(f|0)){H[a>>2]=b;if(b){break P}j=j7(-2,c)&j;H[34022]=j;break O}H[e+(H[e+16>>2]==(f|0)?16:20)>>2]=b;if(!b){break O}}H[b+24>>2]=e;a=H[f+16>>2];if(a){H[b+16>>2]=a;H[a+24>>2]=b}a=H[f+20>>2];if(!a){break O}H[b+20>>2]=a;H[a+24>>2]=b}Q:{if(d>>>0<=15){a=d+h|0;H[f+4>>2]=a|3;a=a+f|0;H[a+4>>2]=H[a+4>>2]|1;break Q}H[f+4>>2]=h|3;e=f+h|0;H[e+4>>2]=d|1;H[d+e>>2]=d;if(d>>>0<=255){a=d>>>3|0;b=(a<<3)+136124|0;c=H[34021];a=1<>2]}H[b+8>>2]=e;H[a+12>>2]=e;H[e+12>>2]=b;H[e+8>>2]=a;break Q}a=31;if(d>>>0<=16777215){a=d>>>8|0;g=a+1048320>>>16&8;a=a<>>16&4;a=a<>>16&2;a=(a<>>15|0)-(b|(c|g))|0;a=(a<<1|d>>>a+21&1)+28|0}H[e+28>>2]=a;H[e+16>>2]=0;H[e+20>>2]=0;b=(a<<2)+136388|0;S:{c=1<>2]=e;break T}a=d<<((a|0)==31?0:25-(a>>>1|0)|0);h=H[b>>2];while(1){b=h;if((H[b+4>>2]&-8)==(d|0)){break S}c=a>>>29|0;a=a<<1;c=(c&4)+b|0;h=H[c+16>>2];if(h){continue}break}H[c+16>>2]=e}H[e+24>>2]=b;H[e+12>>2]=e;H[e+8>>2]=e;break Q}a=H[b+8>>2];H[a+12>>2]=e;H[b+8>>2]=e;H[e+24>>2]=0;H[e+12>>2]=b;H[e+8>>2]=a}a=f+8|0;break a}U:{if(!i){break U}c=H[b+28>>2];a=(c<<2)+136388|0;V:{if(H[a>>2]==(b|0)){H[a>>2]=f;if(f){break V}m=136088,n=j7(-2,c)&j,H[m>>2]=n;break U}H[i+(H[i+16>>2]==(b|0)?16:20)>>2]=f;if(!f){break U}}H[f+24>>2]=i;a=H[b+16>>2];if(a){H[f+16>>2]=a;H[a+24>>2]=f}a=H[b+20>>2];if(!a){break U}H[f+20>>2]=a;H[a+24>>2]=f}W:{if(d>>>0<=15){a=d+h|0;H[b+4>>2]=a|3;a=a+b|0;H[a+4>>2]=H[a+4>>2]|1;break W}H[b+4>>2]=h|3;f=b+h|0;H[f+4>>2]=d|1;H[d+f>>2]=d;if(k){a=k>>>3|0;c=(a<<3)+136124|0;g=H[34026];a=1<>2]}H[c+8>>2]=g;H[a+12>>2]=g;H[g+12>>2]=c;H[g+8>>2]=a}H[34026]=f;H[34023]=d}a=b+8|0}Oa=l+16|0;return a|0}function DD(a,b,c,d){var e=0,f=0,g=0;H[a+32>>2]=0;H[a+28>>2]=b;a:{switch(b|0){case 0:c=H[33808];b=Ra[H[H[c>>2]+20>>2]](c)|0?28184:55639;g=Ra[H[H[c+12>>2]+8>>2]](c+12|0,7696,b,6950,83)|0;H[g>>2]=114452;e=g+16|0;b=e;H[b>>2]=0;H[b+4>>2]=0;H[b+608>>2]=0;H[b+612>>2]=0;H[b+744>>2]=0;H[b+736>>2]=0;H[b+740>>2]=0;H[b+8>>2]=0;H[b+12>>2]=0;H[b+16>>2]=0;H[b+20>>2]=0;H[b+24>>2]=0;H[b+28>>2]=0;H[b+616>>2]=0;H[b+620>>2]=0;H[b+624>>2]=0;H[b+628>>2]=0;H[b+632>>2]=0;H[b+636>>2]=0;H[b+640>>2]=0;H[b+644>>2]=0;H[b+2008>>2]=-25165825;b=b+2e3|0;H[b>>2]=-25165825;H[b+4>>2]=-25165825;H[e+1992>>2]=0;b=e+1984|0;H[b>>2]=0;H[b+4>>2]=0;H[e+1976>>2]=-25165825;b=e+1968|0;H[b>>2]=-25165825;H[b+4>>2]=-25165825;H[e+1960>>2]=0;b=e+1952|0;H[b>>2]=0;H[b+4>>2]=0;H[e+1944>>2]=-25165825;b=e+1936|0;H[b>>2]=-25165825;H[b+4>>2]=-25165825;H[e+1928>>2]=0;b=e+1920|0;H[b>>2]=0;H[b+4>>2]=0;H[e+1912>>2]=-25165825;b=e+1904|0;H[b>>2]=-25165825;H[b+4>>2]=-25165825;H[e+1896>>2]=0;b=e+1888|0;H[b>>2]=0;H[b+4>>2]=0;H[e+1880>>2]=-25165825;b=e+1872|0;H[b>>2]=-25165825;H[b+4>>2]=-25165825;H[e+1864>>2]=0;b=e+1856|0;H[b>>2]=0;H[b+4>>2]=0;H[e+1784>>2]=-25165825;b=e+1776|0;H[b>>2]=-25165825;H[b+4>>2]=-25165825;H[e+1768>>2]=0;b=e+1760|0;H[b>>2]=0;H[b+4>>2]=0;H[e+1752>>2]=-25165825;b=e+1744|0;H[b>>2]=-25165825;H[b+4>>2]=-25165825;H[e+1736>>2]=0;b=e+1728|0;H[b>>2]=0;H[b+4>>2]=0;H[e+1720>>2]=-25165825;b=e+1712|0;H[b>>2]=-25165825;H[b+4>>2]=-25165825;H[e+1704>>2]=0;b=e+1696|0;H[b>>2]=0;H[b+4>>2]=0;H[e+1688>>2]=-25165825;b=e+1680|0;H[b>>2]=-25165825;H[b+4>>2]=-25165825;H[e+1672>>2]=0;b=e+1664|0;H[b>>2]=0;H[b+4>>2]=0;H[e+1656>>2]=-25165825;b=e+1648|0;H[b>>2]=-25165825;H[b+4>>2]=-25165825;H[e+1640>>2]=0;b=e+1632|0;H[b>>2]=0;H[b+4>>2]=0;H[e+1560>>2]=-25165825;b=e+1552|0;H[b>>2]=-25165825;H[b+4>>2]=-25165825;H[e+1544>>2]=0;b=e+1536|0;H[b>>2]=0;H[b+4>>2]=0;H[e+1528>>2]=-25165825;b=e+1520|0;H[b>>2]=-25165825;H[b+4>>2]=-25165825;H[e+1512>>2]=0;b=e+1504|0;H[b>>2]=0;H[b+4>>2]=0;H[e+1496>>2]=-25165825;b=e+1488|0;H[b>>2]=-25165825;H[b+4>>2]=-25165825;H[e+1480>>2]=0;b=e+1472|0;H[b>>2]=0;H[b+4>>2]=0;H[e+1464>>2]=-25165825;b=e+1456|0;H[b>>2]=-25165825;H[b+4>>2]=-25165825;H[e+1448>>2]=0;b=e+1440|0;H[b>>2]=0;H[b+4>>2]=0;H[e+1432>>2]=-25165825;b=e+1424|0;H[b>>2]=-25165825;H[b+4>>2]=-25165825;H[e+1416>>2]=0;b=e+1408|0;H[b>>2]=0;H[b+4>>2]=0;H[e+1336>>2]=-25165825;b=e+1328|0;H[b>>2]=-25165825;H[b+4>>2]=-25165825;H[e+1320>>2]=0;b=e+1312|0;H[b>>2]=0;H[b+4>>2]=0;H[e+1304>>2]=-25165825;b=e+1296|0;H[b>>2]=-25165825;H[b+4>>2]=-25165825;H[e+1288>>2]=0;b=e+1280|0;H[b>>2]=0;H[b+4>>2]=0;H[e+1272>>2]=-25165825;b=e+1264|0;H[b>>2]=-25165825;H[b+4>>2]=-25165825;H[e+1256>>2]=0;b=e+1248|0;H[b>>2]=0;H[b+4>>2]=0;H[e+1240>>2]=-25165825;b=e+1232|0;H[b>>2]=-25165825;H[b+4>>2]=-25165825;H[e+1224>>2]=0;b=e+1216|0;H[b>>2]=0;H[b+4>>2]=0;H[e+1208>>2]=-25165825;b=e+1200|0;H[b>>2]=-25165825;H[b+4>>2]=-25165825;H[e+1192>>2]=0;b=e+1184|0;H[b>>2]=0;H[b+4>>2]=0;H[e+1112>>2]=-25165825;b=e+1104|0;H[b>>2]=-25165825;H[b+4>>2]=-25165825;H[e+1096>>2]=0;b=e+1088|0;H[b>>2]=0;H[b+4>>2]=0;H[e+1080>>2]=-25165825;b=e+1072|0;H[b>>2]=-25165825;H[b+4>>2]=-25165825;H[e+1064>>2]=0;b=e+1056|0;H[b>>2]=0;H[b+4>>2]=0;H[e+1048>>2]=-25165825;b=e+1040|0;H[b>>2]=-25165825;H[b+4>>2]=-25165825;H[e+1032>>2]=0;b=e+1024|0;H[b>>2]=0;H[b+4>>2]=0;H[e+1016>>2]=-25165825;H[e+1008>>2]=-25165825;H[e+1012>>2]=-25165825;H[e+1e3>>2]=0;H[e+992>>2]=0;H[e+996>>2]=0;H[e+984>>2]=-25165825;H[e+976>>2]=-25165825;H[e+980>>2]=-25165825;H[e+968>>2]=0;H[e+960>>2]=0;H[e+964>>2]=0;H[e+888>>2]=-25165825;H[e+880>>2]=-25165825;H[e+884>>2]=-25165825;H[e+872>>2]=0;H[e+864>>2]=0;H[e+868>>2]=0;H[e+856>>2]=-25165825;H[e+848>>2]=-25165825;H[e+852>>2]=-25165825;H[e+840>>2]=0;H[e+832>>2]=0;H[e+836>>2]=0;H[e+824>>2]=-25165825;H[e+816>>2]=-25165825;H[e+820>>2]=-25165825;H[e+808>>2]=0;H[e+800>>2]=0;H[e+804>>2]=0;H[e+792>>2]=-25165825;H[e+784>>2]=-25165825;H[e+788>>2]=-25165825;H[e+776>>2]=0;H[e+768>>2]=0;H[e+772>>2]=0;H[e+760>>2]=-25165825;H[e+752>>2]=-25165825;H[e+756>>2]=-25165825;d=e+7632|0;b=e+2032|0;f=b;while(1){H[f+48>>2]=0;H[f+52>>2]=0;H[f+200>>2]=-25165825;H[f+192>>2]=-25165825;H[f+196>>2]=-25165825;H[f+184>>2]=0;H[f+176>>2]=0;H[f+180>>2]=0;H[f+168>>2]=-25165825;H[f+160>>2]=-25165825;H[f+164>>2]=-25165825;H[f+152>>2]=0;H[f+144>>2]=0;H[f+148>>2]=0;H[f+136>>2]=-25165825;H[f+128>>2]=-25165825;H[f+132>>2]=-25165825;H[f+120>>2]=0;H[f+112>>2]=0;H[f+116>>2]=0;H[f+104>>2]=-25165825;H[f+96>>2]=-25165825;H[f+100>>2]=-25165825;H[f+88>>2]=0;H[f+80>>2]=0;H[f+84>>2]=0;H[f+72>>2]=-25165825;c=f- -64|0;H[c>>2]=-25165825;H[c+4>>2]=-25165825;H[f+56>>2]=0;f=f+224|0;if((d|0)!=(f|0)){continue}break};F[e+7632|0]=1;H[e+688>>2]=0;H[e+692>>2]=0;H[e+656>>2]=0;H[e+660>>2]=0;H[e+912>>2]=0;H[e+916>>2]=0;F[e+7633|0]=0;H[e+680>>2]=-25165825;H[e+672>>2]=-25165825;H[e+676>>2]=-25165825;H[e+664>>2]=0;H[e+696>>2]=0;H[e+700>>2]=0;H[e+704>>2]=0;H[e+708>>2]=0;H[e+712>>2]=0;H[e+716>>2]=0;H[e+720>>2]=0;H[e+724>>2]=0;H[e+920>>2]=0;H[e+924>>2]=0;H[e+928>>2]=0;H[e+932>>2]=0;H[e+936>>2]=0;H[e+940>>2]=0;H[e+944>>2]=0;H[e+948>>2]=0;c=e+1136|0;H[c>>2]=0;H[c+4>>2]=0;c=e+1144|0;H[c>>2]=0;H[c+4>>2]=0;c=e+1152|0;H[c>>2]=0;H[c+4>>2]=0;c=e+1160|0;H[c>>2]=0;H[c+4>>2]=0;c=e+1168|0;H[c>>2]=0;H[c+4>>2]=0;c=e+1616|0;H[c>>2]=0;H[c+4>>2]=0;c=e+1600|0;H[c>>2]=0;H[c+4>>2]=0;c=e+1584|0;H[c>>2]=0;H[c+4>>2]=0;c=e+1392|0;H[c>>2]=0;H[c+4>>2]=0;c=e+1376|0;H[c>>2]=0;H[c+4>>2]=0;c=e+1360|0;H[c>>2]=0;H[c+4>>2]=0;c=e+1808|0;H[c>>2]=0;H[c+4>>2]=0;c=e+1824|0;H[c>>2]=0;H[c+4>>2]=0;c=e+1840|0;H[c>>2]=0;H[c+4>>2]=0;c=e+1816|0;H[c>>2]=0;H[c+4>>2]=0;c=e+1608|0;H[c>>2]=0;H[c+4>>2]=0;c=e+1592|0;H[c>>2]=0;H[c+4>>2]=0;c=e+1384|0;H[c>>2]=0;H[c+4>>2]=0;c=e+1368|0;H[c>>2]=0;H[c+4>>2]=0;c=e+1832|0;H[c>>2]=0;H[c+4>>2]=0;H[b>>2]=0;H[b+4>>2]=0;H[b+16>>2]=0;H[b+20>>2]=0;H[b+32>>2]=0;H[b+36>>2]=0;H[b+8>>2]=0;H[b+12>>2]=0;H[b+24>>2]=0;H[b+28>>2]=0;b=e+2256|0;H[b>>2]=0;H[b+4>>2]=0;b=e+2272|0;H[b>>2]=0;H[b+4>>2]=0;b=e+2288|0;H[b>>2]=0;H[b+4>>2]=0;b=e+2280|0;H[b>>2]=0;H[b+4>>2]=0;b=e+2264|0;H[b>>2]=0;H[b+4>>2]=0;b=e+2512|0;H[b>>2]=0;H[b+4>>2]=0;b=e+2504|0;H[b>>2]=0;H[b+4>>2]=0;b=e+2496|0;H[b>>2]=0;H[b+4>>2]=0;b=e+2488|0;H[b>>2]=0;H[b+4>>2]=0;b=e+2480|0;H[b>>2]=0;H[b+4>>2]=0;b=e+2736|0;H[b>>2]=0;H[b+4>>2]=0;b=e+2728|0;H[b>>2]=0;H[b+4>>2]=0;b=e+2720|0;H[b>>2]=0;H[b+4>>2]=0;b=e+2712|0;H[b>>2]=0;H[b+4>>2]=0;b=e+2704|0;H[b>>2]=0;H[b+4>>2]=0;b=e+2960|0;H[b>>2]=0;H[b+4>>2]=0;b=e+2952|0;H[b>>2]=0;H[b+4>>2]=0;b=e+2944|0;H[b>>2]=0;H[b+4>>2]=0;b=e+2936|0;H[b>>2]=0;H[b+4>>2]=0;b=e+2928|0;H[b>>2]=0;H[b+4>>2]=0;b=e+3184|0;H[b>>2]=0;H[b+4>>2]=0;b=e+3176|0;H[b>>2]=0;H[b+4>>2]=0;b=e+3168|0;H[b>>2]=0;H[b+4>>2]=0;b=e+3160|0;H[b>>2]=0;H[b+4>>2]=0;b=e+3152|0;H[b>>2]=0;H[b+4>>2]=0;b=e+3408|0;H[b>>2]=0;H[b+4>>2]=0;b=e+3400|0;H[b>>2]=0;H[b+4>>2]=0;b=e+3392|0;H[b>>2]=0;H[b+4>>2]=0;b=e+3384|0;H[b>>2]=0;H[b+4>>2]=0;b=e+3376|0;H[b>>2]=0;H[b+4>>2]=0;b=e+3632|0;H[b>>2]=0;H[b+4>>2]=0;b=e+3624|0;H[b>>2]=0;H[b+4>>2]=0;b=e+3616|0;H[b>>2]=0;H[b+4>>2]=0;b=e+3608|0;H[b>>2]=0;H[b+4>>2]=0;b=e+3600|0;H[b>>2]=0;H[b+4>>2]=0;b=e+3856|0;H[b>>2]=0;H[b+4>>2]=0;b=e+3848|0;H[b>>2]=0;H[b+4>>2]=0;b=e+3840|0;H[b>>2]=0;H[b+4>>2]=0;b=e+3832|0;H[b>>2]=0;H[b+4>>2]=0;b=e+3824|0;H[b>>2]=0;H[b+4>>2]=0;b=e+4080|0;H[b>>2]=0;H[b+4>>2]=0;b=e+4072|0;H[b>>2]=0;H[b+4>>2]=0;b=e+4064|0;H[b>>2]=0;H[b+4>>2]=0;b=e+4056|0;H[b>>2]=0;H[b+4>>2]=0;b=e+4048|0;H[b>>2]=0;H[b+4>>2]=0;b=e+4304|0;H[b>>2]=0;H[b+4>>2]=0;b=e+4296|0;H[b>>2]=0;H[b+4>>2]=0;b=e+4288|0;H[b>>2]=0;H[b+4>>2]=0;b=e+4280|0;H[b>>2]=0;H[b+4>>2]=0;b=e+4272|0;H[b>>2]=0;H[b+4>>2]=0;b=e+4528|0;H[b>>2]=0;H[b+4>>2]=0;b=e+4520|0;H[b>>2]=0;H[b+4>>2]=0;b=e+4512|0;H[b>>2]=0;H[b+4>>2]=0;b=e+4504|0;H[b>>2]=0;H[b+4>>2]=0;b=e+4496|0;H[b>>2]=0;H[b+4>>2]=0;b=e+4752|0;H[b>>2]=0;H[b+4>>2]=0;b=e+4744|0;H[b>>2]=0;H[b+4>>2]=0;b=e+4736|0;H[b>>2]=0;H[b+4>>2]=0;b=e+4728|0;H[b>>2]=0;H[b+4>>2]=0;b=e+4720|0;H[b>>2]=0;H[b+4>>2]=0;b=e+4976|0;H[b>>2]=0;H[b+4>>2]=0;b=e+4968|0;H[b>>2]=0;H[b+4>>2]=0;b=e+4960|0;H[b>>2]=0;H[b+4>>2]=0;b=e+4952|0;H[b>>2]=0;H[b+4>>2]=0;b=e+4944|0;H[b>>2]=0;H[b+4>>2]=0;b=e+5200|0;H[b>>2]=0;H[b+4>>2]=0;b=e+5192|0;H[b>>2]=0;H[b+4>>2]=0;b=e+5184|0;H[b>>2]=0;H[b+4>>2]=0;b=e+5176|0;H[b>>2]=0;H[b+4>>2]=0;b=e+5168|0;H[b>>2]=0;H[b+4>>2]=0;b=e+5424|0;H[b>>2]=0;H[b+4>>2]=0;b=e+5416|0;H[b>>2]=0;H[b+4>>2]=0;b=e+5408|0;H[b>>2]=0;H[b+4>>2]=0;b=e+5400|0;H[b>>2]=0;H[b+4>>2]=0;b=e+5392|0;H[b>>2]=0;H[b+4>>2]=0;b=e+5648|0;H[b>>2]=0;H[b+4>>2]=0;b=e+5640|0;H[b>>2]=0;H[b+4>>2]=0;b=e+5632|0;H[b>>2]=0;H[b+4>>2]=0;b=e+5624|0;H[b>>2]=0;H[b+4>>2]=0;b=e+5616|0;H[b>>2]=0;H[b+4>>2]=0;b=e+5872|0;H[b>>2]=0;H[b+4>>2]=0;b=e+5864|0;H[b>>2]=0;H[b+4>>2]=0;b=e+5856|0;H[b>>2]=0;H[b+4>>2]=0;b=e+5848|0;H[b>>2]=0;H[b+4>>2]=0;b=e+5840|0;H[b>>2]=0;H[b+4>>2]=0;b=e+6096|0;H[b>>2]=0;H[b+4>>2]=0;b=e+6088|0;H[b>>2]=0;H[b+4>>2]=0;b=e+6080|0;H[b>>2]=0;H[b+4>>2]=0;b=e+6072|0;H[b>>2]=0;H[b+4>>2]=0;b=e+6064|0;H[b>>2]=0;H[b+4>>2]=0;b=e+6320|0;H[b>>2]=0;H[b+4>>2]=0;b=e+6312|0;H[b>>2]=0;H[b+4>>2]=0;b=e+6304|0;H[b>>2]=0;H[b+4>>2]=0;b=e+6296|0;H[b>>2]=0;H[b+4>>2]=0;b=e+6288|0;H[b>>2]=0;H[b+4>>2]=0;b=e+6544|0;H[b>>2]=0;H[b+4>>2]=0;b=e+6536|0;H[b>>2]=0;H[b+4>>2]=0;b=e+6528|0;H[b>>2]=0;H[b+4>>2]=0;b=e+6520|0;H[b>>2]=0;H[b+4>>2]=0;b=e+6512|0;H[b>>2]=0;H[b+4>>2]=0;b=e+6768|0;H[b>>2]=0;H[b+4>>2]=0;b=e+6760|0;H[b>>2]=0;H[b+4>>2]=0;b=e+6752|0;H[b>>2]=0;H[b+4>>2]=0;b=e+6744|0;H[b>>2]=0;H[b+4>>2]=0;b=e+6736|0;H[b>>2]=0;H[b+4>>2]=0;b=e+6992|0;H[b>>2]=0;H[b+4>>2]=0;b=e+6984|0;H[b>>2]=0;H[b+4>>2]=0;b=e+6976|0;H[b>>2]=0;H[b+4>>2]=0;b=e+6968|0;H[b>>2]=0;H[b+4>>2]=0;b=e+6960|0;H[b>>2]=0;H[b+4>>2]=0;b=e+7216|0;H[b>>2]=0;H[b+4>>2]=0;b=e+7208|0;H[b>>2]=0;H[b+4>>2]=0;b=e+7200|0;H[b>>2]=0;H[b+4>>2]=0;b=e+7192|0;H[b>>2]=0;H[b+4>>2]=0;b=e+7184|0;H[b>>2]=0;H[b+4>>2]=0;b=e+7440|0;H[b>>2]=0;H[b+4>>2]=0;b=e+7432|0;H[b>>2]=0;H[b+4>>2]=0;b=e+7424|0;H[b>>2]=0;H[b+4>>2]=0;b=e+7416|0;H[b>>2]=0;H[b+4>>2]=0;b=e+7408|0;H[b>>2]=0;H[b+4>>2]=0;b=g+7664|0;H[b>>2]=0;H[b+4>>2]=0;H[b+24>>2]=-1;H[b+16>>2]=0;H[b+20>>2]=0;H[b+8>>2]=0;H[b+12>>2]=0;H[a>>2]=g;return;case 1:f=H[33808];b=Ra[H[H[f>>2]+20>>2]](f)|0?28434:55639;b=Ra[H[H[f+12>>2]+8>>2]](f+12|0,376,b,6950,84)|0;BC(b,1,c,d);H[a>>2]=b;return;case 2:f=H[33808];b=Ra[H[H[f>>2]+20>>2]](f)|0?28434:55639;f=Ra[H[H[f+12>>2]+8>>2]](f+12|0,376,b,6950,85)|0;BC(f,0,c,d);break;default:break a}}H[a>>2]=f}function o$(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=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=0,p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=0,D=O(0),E=O(0),J=O(0),K=O(0),M=O(0),P=O(0),Q=O(0),S=0,T=O(0),U=O(0),V=O(0),X=O(0),Y=O(0),Z=O(0),_=O(0),$=O(0),aa=O(0),ba=O(0),ca=O(0),da=O(0),ea=O(0),fa=O(0),ga=O(0),ha=O(0),ia=O(0),ja=O(0),ka=O(0),la=O(0),ma=O(0),na=O(0),oa=O(0);g=Oa-208|0;Oa=g;o=H[a+320>>2];i=L[o+8>>2];S=I[a+12|0];C=S?d:e;h=L[C>>2];j=L[o+20>>2];k=L[C+4>>2];l=L[o+32>>2];m=L[C+8>>2];aa=O(O(O(i*h)+O(j*k))+O(l*m));q=L[o+4>>2];s=L[o+16>>2];p=L[o+28>>2];ba=O(O(O(q*h)+O(s*k))+O(p*m));n=L[o>>2];r=O(n*h);h=L[o+12>>2];r=O(r+O(h*k));k=L[o+24>>2];ca=O(r+O(k*m));d=S?e:d;m=L[d>>2];u=L[d+4>>2];v=L[d+8>>2];Z=O(O(O(i*m)+O(j*u))+O(l*v));_=O(O(O(q*m)+O(s*u))+O(p*v));$=O(O(O(n*m)+O(h*u))+O(k*v));m=L[c>>2];r=O(m*n);n=L[c+4>>2];r=O(r+O(n*h));h=L[c+8>>2];da=O(r+O(h*k));ea=O(O(O(m*i)+O(n*j))+O(h*l));fa=O(O(O(m*q)+O(n*s))+O(h*p));la=L[a+364>>2];e=H[b+8>>2];x=L[a+440>>2];a:{b:{if(!I[a+445|0]){i=O($-da);h=O(ba-_);j=O(ca-$);k=O(_-fa);l=O(O(O(i*h)-O(j*k))*L[a+436>>2]);n=k;k=O(aa-Z);q=h;h=O(Z-ea);if(O(l+O(O(O(O(n*k)-O(q*h))*L[a+428>>2])+O(O(O(h*j)-O(k*i))*L[a+432>>2])))<=O(0)){break b}}H[g+152>>2]=0;H[g+156>>2]=0;H[g+144>>2]=0;H[g+148>>2]=0;H[g+128>>2]=0;i=L[a+272>>2];h=L[a+256>>2];j=L[a+240>>2];k=L[a+276>>2];l=L[a+260>>2];m=L[a+228>>2];q=L[a+244>>2];s=L[a+280>>2];p=L[a+264>>2];n=L[a+232>>2];u=L[a+248>>2];v=L[a+224>>2];H[g+124>>2]=0;H[g+108>>2]=0;H[g+92>>2]=0;z=O(s+O(O(p*aa)+O(O(n*ca)+O(ba*u))));L[g+120>>2]=z;y=O(k+O(O(l*aa)+O(O(m*ca)+O(ba*q))));L[g+116>>2]=y;r=O(i+O(O(h*aa)+O(O(v*ca)+O(ba*j))));L[g+112>>2]=r;w=O(s+O(O(p*Z)+O(O(n*$)+O(_*u))));L[g+104>>2]=w;M=O(k+O(O(l*Z)+O(O(m*$)+O(_*q))));L[g+100>>2]=M;t=O(i+O(O(h*Z)+O(O(v*$)+O(_*j))));L[g+96>>2]=t;s=O(s+O(O(p*ea)+O(O(n*da)+O(fa*u))));L[g+88>>2]=s;k=O(k+O(O(l*ea)+O(O(m*da)+O(fa*q))));L[g+84>>2]=k;F[g+64|0]=0;H[g+60>>2]=5;H[g+44>>2]=0;i=O(i+O(O(h*ea)+O(O(v*da)+O(fa*j))));L[g+80>>2]=i;i=O(O(r+O(i+t))*O(.33333298563957214));L[g+32>>2]=i;h=O(O(y+O(k+M))*O(.33333298563957214));L[g+36>>2]=h;j=O(O(z+O(s+w))*O(.33333298563957214));L[g+40>>2]=j;H[g+56>>2]=2139095039;H[g+48>>2]=0;H[g+52>>2]=2139095039;H[g+24>>2]=126656;H[g+28>>2]=g+32;H[g+16>>2]=126016;H[g+20>>2]=a- -64;k=L[a+68>>2];l=L[a+72>>2];m=L[a+64>>2];H[g+12>>2]=0;L[g+8>>2]=j-l;L[g+4>>2]=h-k;L[g>>2]=i-m;M=O(0);b=Oa-272|0;Oa=b;H[b+248>>2]=0;H[b+252>>2]=0;H[b+240>>2]=0;H[b+244>>2]=0;t=L[g+152>>2];T=L[g+148>>2];A=L[g+144>>2];D=L[a+408>>2];U=L[a+404>>2];V=L[a+400>>2];H[b+224>>2]=1;c=H[g+28>>2];q=L[c+72>>2];s=L[c- -64>>2];p=L[c+68>>2];n=L[c+56>>2];u=L[c+52>>2];v=L[c+88>>2];y=L[c+80>>2];z=L[c+84>>2];r=L[c+48>>2];i=L[g+8>>2];h=L[g>>2];j=L[g+4>>2];c=H[g+20>>2];m=L[c+56>>2];w=L[c+52>>2];Y=L[c+72>>2];C=c- -64|0;E=L[C>>2];J=L[c+68>>2];k=L[c+88>>2];P=L[c+80>>2];B=L[c+84>>2];K=L[c+48>>2];d=0;H[b+172>>2]=0;Q=k;o=O(O(i*i)+O(O(h*h)+O(j*j)))>O(1.1920928955078125e-7);i=o?i:O(0);h=o?h:O(1);k=o?j:O(0);l=O(O(1)/O(W(O(O(i*i)+O(O(h*h)+O(k*k))))));i=O(i*l);j=O(h*l);h=O(k*l);L[b+168>>2]=O(Q*i)+O(O(P*j)+O(B*h));L[b+164>>2]=O(Y*i)+O(O(E*j)+O(h*J));L[b+160>>2]=O(m*i)+O(O(K*j)+O(h*w));o=EU(c,b+160|0);w=L[C>>2];Y=L[c+80>>2];E=L[c+84>>2];J=L[c+52>>2];P=L[c+68>>2];B=L[c+88>>2];o=H[c+152>>2]+N(o,12)|0;k=L[o+8>>2];K=L[c+56>>2];l=L[o>>2];X=L[c+72>>2];m=L[o+4>>2];ha=L[c+48>>2];H[b+180>>2]=0;H[b+184>>2]=0;H[b+188>>2]=0;H[b+192>>2]=0;H[b+196>>2]=0;H[b+200>>2]=0;H[b+204>>2]=0;H[b+208>>2]=0;H[b+212>>2]=0;H[b+216>>2]=0;H[b+220>>2]=0;H[b+172>>2]=0;H[b+176>>2]=0;Q=q;ga=v;j=O(-j);q=O(O(O(s*j)-O(p*h))-O(q*i));v=O(O(O(y*j)-O(z*h))-O(v*i));c=q>v;i=O(O(O(r*j)-O(u*h))-O(n*i));o=!(i>q)|!(i>v);i=o?c?Q:ga:n;h=O(O(B*k)+O(O(K*l)+O(m*X)));v=O(i-h);L[b+168>>2]=v;j=o?c?p:z:u;q=O(O(E*k)+O(O(J*l)+O(m*P)));z=O(j-q);L[b+164>>2]=z;s=o?c?s:y:r;k=O(O(Y*k)+O(O(ha*l)+O(m*w)));y=O(s-k);L[b+160>>2]=y;H[b+116>>2]=0;H[b+120>>2]=0;H[b+124>>2]=0;H[b+128>>2]=0;H[b+132>>2]=0;H[b+136>>2]=0;H[b+140>>2]=0;H[b+144>>2]=0;H[b+148>>2]=0;H[b+152>>2]=0;H[b+156>>2]=0;H[b+108>>2]=0;H[b+112>>2]=0;L[b+104>>2]=i;L[b+100>>2]=j;L[b+96>>2]=s;H[b+52>>2]=0;H[b+56>>2]=0;H[b+60>>2]=0;H[b+64>>2]=0;H[b+68>>2]=0;H[b+72>>2]=0;H[b+76>>2]=0;H[b+80>>2]=0;H[b+84>>2]=0;H[b+88>>2]=0;H[b+92>>2]=0;H[b+44>>2]=0;H[b+48>>2]=0;L[b+40>>2]=h;L[b+36>>2]=q;L[b+32>>2]=k;m=O(-v);q=O(-z);s=O(-y);w=O(O(v*v)+O(O(y*y)+O(z*z)));c=H[g+20>>2];i=L[c+24>>2];i=O((iha)){p=s;n=q;u=m;h=y;j=z;r=v;break d}Y=O(i+x);ma=O(Y*Y);i=O(O(V*O(0))+A);h=O(O(U*O(0))+T);j=O(O(D*O(0))+t);u=m;n=q;p=s;while(1){d=H[g+28>>2];l=L[d+72>>2];t=L[d- -64>>2];D=L[d+68>>2];U=L[d+52>>2];V=L[d+56>>2];E=L[d+88>>2];A=L[d+80>>2];J=L[d+84>>2];P=L[d+48>>2];B=L[c+52>>2];K=L[c+56>>2];X=L[c+72>>2];S=c- -64|0;ia=L[S>>2];ja=L[c+68>>2];na=L[c+88>>2];k=L[c+80>>2];r=L[c+84>>2];oa=L[c+48>>2];H[b+268>>2]=0;Q=k;x=O(O(1)/O(W(O(O(m*m)+O(O(s*s)+O(q*q))))));k=O(s*x);T=O(-k);ga=r;r=O(q*x);x=O(m*x);L[b+264>>2]=O(O(Q*T)-O(ga*r))-O(na*x);L[b+260>>2]=O(O(ia*T)-O(ja*r))-O(X*x);L[b+256>>2]=O(O(oa*T)-O(B*r))-O(K*x);C=EU(c,b+256|0);Q=t;ga=A;t=O(O(l*x)+O(O(t*k)+O(r*D)));A=O(O(E*x)+O(O(A*k)+O(r*J)));d=t>A;B=t;t=O(O(V*x)+O(O(P*k)+O(r*U)));o=!(BA);P=o?d?Q:ga:P;C=H[c+152>>2]+N(C,12)|0;t=L[C+8>>2];B=L[C>>2];K=L[C+4>>2];X=O(i+O(O(L[c+80>>2]*t)+O(O(L[c+48>>2]*B)+O(K*L[S>>2]))));A=O(P-X);U=o?d?D:J:U;J=O(h+O(O(L[c+84>>2]*t)+O(O(L[c+52>>2]*B)+O(K*L[c+68>>2]))));D=O(U-J);V=o?d?l:E:V;E=O(j+O(O(L[c+88>>2]*t)+O(O(L[c+56>>2]*B)+O(K*L[c+72>>2]))));t=O(V-E);l=O(O(O(O(k*O(-A))-O(r*D))-O(x*t))-Y);e:{if(!(l>O(0))){k=i;l=h;i=j;h=w;break e}c=0;B=L[a+408>>2];K=L[a+400>>2];ia=L[a+404>>2];ja=O(O(x*B)+O(O(k*K)+O(r*ia)));if(ja>=O(0)){break c}k=M;M=O(k-O(l/ja));if(!(M>k)){k=i;l=h;i=j;h=w;break e}if(M>O(1)){break c}n=L[g+152>>2];l=L[g+148>>2];k=L[g+144>>2];H[b+76>>2]=0;H[b+60>>2]=0;H[b+44>>2]=0;k=O(k+O(K*M));p=O(k-i);u=O(p+L[b+64>>2]);L[b+64>>2]=u;l=O(l+O(ia*M));h=O(l-h);w=O(h+L[b+68>>2]);L[b+68>>2]=w;i=O(n+O(B*M));j=O(i-j);n=O(j+L[b+72>>2]);L[b+72>>2]=n;t=O(p+L[b+48>>2]);L[b+48>>2]=t;A=O(h+L[b+52>>2]);L[b+52>>2]=A;D=O(j+L[b+56>>2]);L[b+56>>2]=D;p=O(p+L[b+32>>2]);L[b+32>>2]=p;h=O(h+L[b+36>>2]);L[b+36>>2]=h;j=O(j+L[b+40>>2]);L[b+40>>2]=j;E=L[b+96>>2];J=L[b+100>>2];B=L[b+104>>2];H[b+172>>2]=0;L[b+168>>2]=B-j;L[b+164>>2]=J-h;L[b+160>>2]=E-p;h=L[b+112>>2];j=L[b+116>>2];p=L[b+120>>2];H[b+188>>2]=0;L[b+184>>2]=p-D;L[b+180>>2]=j-A;L[b+176>>2]=h-t;h=L[b+128>>2];j=L[b+132>>2];p=L[b+136>>2];H[b+204>>2]=0;L[b+200>>2]=p-n;L[b+196>>2]=j-w;L[b+192>>2]=h-u;c=H[g+20>>2];p=L[c+56>>2];n=L[c+52>>2];u=L[c+72>>2];o=c- -64|0;w=L[o>>2];t=L[c+68>>2];h=L[c+88>>2];j=L[c+80>>2];A=L[c+84>>2];D=L[c+48>>2];H[b+268>>2]=0;Q=h;h=O(-x);x=O(j*T);j=O(-r);L[b+264>>2]=O(Q*h)+O(x+O(A*j));L[b+260>>2]=O(u*h)+O(O(w*T)+O(t*j));L[b+256>>2]=O(p*h)+O(O(D*T)+O(n*j));d=EU(c,b+256|0);d=H[c+152>>2]+N(d,12)|0;h=L[d+8>>2];j=L[d>>2];p=L[d+4>>2];E=O(i+O(O(L[c+88>>2]*h)+O(O(L[c+56>>2]*j)+O(p*L[c+72>>2]))));t=O(V-E);J=O(l+O(O(L[c+84>>2]*h)+O(O(L[c+52>>2]*j)+O(p*L[c+68>>2]))));D=O(U-J);X=O(k+O(O(L[c+80>>2]*h)+O(O(L[c+48>>2]*j)+O(p*L[o>>2]))));A=O(P-X);p=s;n=q;u=m;h=O(3.4028234663852886e38)}x=h;d=H[b+224>>2];o=d<<4;c=o+(b+96|0)|0;H[c+12>>2]=0;L[c+8>>2]=V;L[c+4>>2]=U;L[c>>2]=P;c=o+(b+32|0)|0;H[c+12>>2]=0;L[c+8>>2]=E;L[c+4>>2]=J;L[c>>2]=X;c=o+(b+160|0)|0;H[c+12>>2]=0;L[c+8>>2]=t;L[c+4>>2]=D;L[c>>2]=A;H[b+224>>2]=d+1;f:{g:{switch(d-1|0){case 0:q=L[b+168>>2];h=O(L[b+184>>2]-q);s=L[b+160>>2];j=O(L[b+176>>2]-s);r=L[b+164>>2];m=O(L[b+180>>2]-r);w=O(O(h*h)+O(O(j*j)+O(m*m)));if(w<=O(1.1920928955078125e-7)){H[b+224>>2]=1;c=H[b+164>>2];H[b+256>>2]=H[b+160>>2];H[b+260>>2]=c;c=H[b+172>>2];H[b+264>>2]=H[b+168>>2];H[b+268>>2]=c;break f}t=h;h=O(R(O(O(O(O(O(-s)*j)-O(m*r))-O(q*h))/w),O(1)));h=h>O(0)?h:O(0);L[b+264>>2]=q+O(t*h);L[b+260>>2]=r+O(m*h);L[b+256>>2]=s+O(j*h);break f;case 1:GU(b+256|0,b+160|0,b+96|0,b+32|0,b+224|0);break f;case 2:BZ(b+256|0,b+160|0,b+96|0,b+32|0,b+224|0);break f;default:break g}}L[b+264>>2]=t;L[b+260>>2]=D;L[b+256>>2]=A}r=L[b+264>>2];m=O(-r);j=L[b+260>>2];q=O(-j);h=L[b+256>>2];s=O(-h);w=O(O(r*r)+O(O(h*h)+O(j*j)));if(!(!(ma>2];v=r;z=j;y=h;j=i;h=l;i=k;continue}break}d=!(w>2]+32|0];i=O(0);t=O(0);o=!(w>ha)|d;k=o?u:m;l=o?p:s;m=o?n:q;q=O(W(O(O(k*k)+O(O(l*l)+O(m*m)))));if(!(q<=O(1.1920928955078125e-7))){i=O(O(1)/q);ka=O(k*i);t=O(l*i);i=O(m*i)}H[g+188>>2]=0;L[g+184>>2]=-ka;L[g+180>>2]=-i;L[g+176>>2]=-t;L[g+160>>2]=M;H[g+172>>2]=H[b+236>>2];o=H[b+232>>2];H[g+164>>2]=H[b+228>>2];H[g+168>>2]=o;H[b+268>>2]=0;L[b+264>>2]=d?v:r;L[b+260>>2]=d?z:j;L[b+256>>2]=d?y:h;d=H[b+252>>2];C=H[b+248>>2];H[b+24>>2]=C;H[b+28>>2]=d;o=H[b+244>>2];S=H[b+240>>2];H[b+16>>2]=S;H[b+20>>2]=o;H[b+8>>2]=C;H[b+12>>2]=d;H[b>>2]=S;H[b+4>>2]=o;FU(b+160|0,b+96|0,b+32|0,b+256|0,b+16|0,b,H[b+224>>2]);h=L[H[g+28>>2]+16>>2];j=L[b+16>>2];k=L[b+20>>2];l=L[b+24>>2];H[g+204>>2]=0;L[g+200>>2]=l+(c?O(ka*h):O(-0));L[g+196>>2]=k+(c?O(i*h):O(-0));L[g+192>>2]=j+(c?O(t*h):O(-0));c=1}Oa=b+272|0;if(!c){break b}i=L[g+160>>2];h:{if(i<=L[g+128>>2]){F[a+11|0]=1;H[a+364>>2]=0;G[a+336>>1]=1026;H[a+332>>2]=e;L[a+352>>2]=-L[a+416>>2];L[a+360>>2]=-L[a+424>>2];L[a+356>>2]=-L[a+420>>2];v=O(0);break h}v=O(i*L[a+384>>2]);if(!(la>v)){break b}m=L[g+184>>2];q=L[g+180>>2];s=L[g+176>>2];p=L[g+200>>2];n=L[g+196>>2];u=L[g+192>>2];L[a+364>>2]=v;G[a+336>>1]=1027;H[a+332>>2]=e;i=L[a+296>>2];h=L[a+288>>2];j=L[a+292>>2];z=O(O(i*p)+O(O(u*h)+O(n*j)));k=L[a+300>>2];l=O(O(k*k)+O(-.5));y=O(O(i*z)+O(O(k*O(O(h*n)-O(u*j)))+O(p*l)));L[a+348>>2]=L[a+312>>2]+O(y+y);y=O(O(j*z)+O(O(k*O(O(i*u)-O(p*h)))+O(n*l)));L[a+344>>2]=L[a+308>>2]+O(y+y);p=O(O(h*z)+O(O(k*O(O(j*p)-O(n*i)))+O(u*l)));L[a+340>>2]=L[a+304>>2]+O(p+p);p=O(O(i*m)+O(O(h*s)+O(q*j)));n=O(O(i*p)+O(O(k*O(O(h*q)-O(s*j)))+O(m*l)));n=O(n+n);r=n;u=O(n*n);n=O(O(h*p)+O(O(k*O(O(j*m)-O(q*i)))+O(s*l)));n=O(n+n);i=O(O(j*p)+O(O(k*O(O(i*s)-O(m*h)))+O(q*l)));i=O(i+i);h=O(O(1)/O(W(O(u+O(O(n*n)+O(i*i))))));L[a+360>>2]=r*h;L[a+356>>2]=i*h;L[a+352>>2]=n*h}F[a+10|0]=1;L[f>>2]=v*L[a+16>>2];L[a+52>>2]=aa;L[a+48>>2]=ba;L[a+44>>2]=ca;L[a+40>>2]=Z;L[a+36>>2]=_;L[a+32>>2]=$;L[a+28>>2]=ea;L[a+24>>2]=fa;L[a+20>>2]=da;b=0;if(I[a+444|0]|L[a+364>>2]==O(0)){break a}}b=1}Oa=g+208|0;return b|0} -function Az(a,b){var c=0,d=0,e=O(0),f=O(0),g=O(0),h=O(0),i=0,j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=O(0),x=0,y=O(0),z=O(0),A=O(0),B=O(0),C=0,D=O(0),E=O(0),G=O(0),K=O(0),M=O(0),P=0,Q=O(0),R=O(0),S=0,T=O(0),U=0,V=0,W=O(0),X=O(0),Y=O(0),Z=O(0),_=O(0),$=0,aa=O(0),ba=O(0),ca=O(0),da=O(0),ea=O(0),fa=O(0),ga=0,ha=O(0),ia=O(0),ja=O(0),ka=O(0),la=O(0),ma=O(0),na=O(0),oa=O(0),pa=O(0),qa=O(0),ra=O(0),sa=O(0),ta=O(0),ua=O(0),va=O(0),wa=O(0),xa=O(0),ya=O(0),za=O(0),Aa=O(0),Ba=O(0),Ca=O(0),Da=O(0),Ea=O(0),Fa=O(0),Ga=O(0),Ha=O(0),Ia=O(0),Ja=O(0),Ka=O(0),La=O(0),Ma=O(0),Na=O(0),Pa=O(0),Qa=O(0),Ra=O(0),Sa=O(0),Ta=O(0),Ua=O(0),Va=O(0),Wa=O(0),Xa=O(0),Ya=O(0),Za=O(0),_a=O(0),$a=O(0),ab=O(0),bb=O(0),cb=O(0),db=O(0),eb=O(0),fb=O(0),gb=O(0),hb=O(0),ib=O(0),jb=0,kb=O(0),lb=O(0),mb=O(0),nb=O(0),ob=O(0),pb=0,qb=O(0),rb=O(0),sb=O(0),tb=O(0),ub=O(0),vb=O(0),wb=O(0),xb=O(0),yb=O(0),zb=O(0),Ab=O(0),Bb=O(0),Cb=O(0),Db=O(0),Eb=O(0),Fb=O(0),Gb=O(0),Hb=O(0),Ib=O(0),Jb=O(0),Kb=0,Lb=0,Mb=0,Nb=0,Ob=O(0),Pb=O(0),Qb=O(0),Rb=O(0),Sb=O(0),Tb=O(0),Ub=O(0),Vb=O(0),Wb=O(0),Xb=O(0),Yb=O(0),Zb=O(0),_b=O(0),$b=O(0),ac=O(0),bc=O(0),cc=O(0),dc=O(0),ec=O(0),fc=O(0),gc=O(0),hc=O(0),ic=O(0),jc=O(0),kc=O(0),lc=O(0),mc=O(0),nc=O(0),oc=O(0),pc=O(0),qc=0,rc=O(0),sc=O(0),tc=O(0),uc=O(0),vc=0,wc=0,xc=0;o=H[a+100>>2];oa=L[o+16>>2];p=H[a+96>>2];ac=L[p+28>>2];pa=L[p+24>>2];qa=L[p+20>>2];bc=L[o+12>>2];ra=L[o+8>>2];sa=L[o+4>>2];ta=L[o>>2];q=H[a+68>>2];ua=L[q+16>>2];r=H[a+64>>2];cc=L[r+28>>2];va=L[r+24>>2];wa=L[r+20>>2];dc=L[q+12>>2];xa=L[q+8>>2];ya=L[q+4>>2];za=L[q>>2];s=H[a+36>>2];Aa=L[s+16>>2];t=H[a+32>>2];ec=L[t+28>>2];Ba=L[t+24>>2];Ca=L[t+20>>2];fc=L[s+12>>2];Da=L[s+8>>2];Ea=L[s+4>>2];Fa=L[s>>2];u=H[a+4>>2];gc=L[u+28>>2];Ga=L[u+24>>2];Ha=L[u+20>>2];v=H[a>>2];hc=L[v+28>>2];Ia=L[v+24>>2];Ja=L[v+20>>2];ic=L[o+28>>2];Ka=L[o+24>>2];La=L[o+20>>2];jc=L[q+28>>2];Ma=L[q+24>>2];Na=L[q+20>>2];kc=L[s+28>>2];Pa=L[s+24>>2];Qa=L[s+20>>2];Ra=L[p+16>>2];lc=L[p+12>>2];Sa=L[p+8>>2];Ta=L[p+4>>2];Ua=L[p>>2];Va=L[r+16>>2];mc=L[r+12>>2];Wa=L[r+8>>2];Xa=L[r+4>>2];Ya=L[r>>2];Za=L[t+16>>2];nc=L[t+12>>2];_a=L[t+8>>2];$a=L[t+4>>2];ab=L[t>>2];bb=L[u+16>>2];cb=L[v+16>>2];oc=L[u+12>>2];db=L[u+8>>2];eb=L[u+4>>2];fb=L[u>>2];pc=L[v+12>>2];gb=L[v+8>>2];hb=L[v+4>>2];ib=L[v>>2];d=H[a+24>>2];x=J[a+22>>1];Lb=Oa-16|0;c=Lb;H[c+8>>2]=2139095039;H[c+12>>2]=2139095039;H[c>>2]=2139095039;H[c+4>>2]=2139095039;if(x){qc=(x<<4)+d|0;Cb=L[d+76>>2];Db=L[d+92>>2];rc=O(Cb+Db);Eb=L[d+72>>2];Fb=L[d+88>>2];sc=O(Eb+Fb);Gb=L[d+68>>2];Hb=L[d+84>>2];tc=O(Gb+Hb);Ib=L[d+64>>2];Jb=L[d+80>>2];uc=O(Ib+Jb);pb=d+336|0;while(1){c=d;jb=c+192|0;P=I[c+1|0];d=P<<4;$=jb+d|0;C=F[c+3|0]&1;i=d&0-C;d=$+N(P,144)|0;ga=i+d|0;U=I[c+2|0];Mb=ga+(((U|0)!=0)<<7)|0;Nb=Mb+(U<<4)|0;V=N(U,144);aa=L[c+172>>2];ba=L[c+168>>2];ca=L[c+164>>2];da=L[c+160>>2];ea=L[c+156>>2];G=L[c+152>>2];K=L[c+148>>2];M=L[c+144>>2];ha=L[c+140>>2];kb=L[c+136>>2];ia=L[c+132>>2];lb=L[c+128>>2];Ob=L[c+124>>2];Pb=L[c+120>>2];Qb=L[c+116>>2];Rb=L[c+112>>2];Sb=L[c+108>>2];Tb=L[c+104>>2];Ub=L[c+100>>2];Vb=L[c+96>>2];a:{if(!P){e=O(0);k=O(0);y=O(0);z=O(0);A=O(0);W=O(0);X=O(0);B=O(0);break a}Kb=C?d:Lb;Q=O(O(O(O(ib*lb)+O(hb*M))+O(gb*da))-O(O(O(fb*lb)+O(eb*M))+O(db*da)));Y=O(O(O(O(ab*ia)+O($a*K))+O(_a*ca))-O(O(O(Fa*ia)+O(Ea*K))+O(Da*ca)));R=O(O(O(O(Ya*kb)+O(Xa*G))+O(Wa*ba))-O(O(O(za*kb)+O(ya*G))+O(xa*ba)));Z=O(O(O(O(Ua*ha)+O(Ta*ea))+O(Sa*aa))-O(O(O(ta*ha)+O(sa*ea))+O(ra*aa)));B=O(0);x=0;X=O(0);W=O(0);A=O(0);z=O(0);y=O(0);k=O(0);e=O(0);while(1){S=Kb+((C?x:0)<<4)|0;g=L[S+4>>2];j=L[S+8>>2];w=L[S+12>>2];i=jb+(x<<4)|0;h=L[i+4>>2];d=$+N(x,144)|0;f=L[d+84>>2];mb=L[d+52>>2];ja=L[d+36>>2];ka=L[d+20>>2];n=L[d+4>>2];la=L[d+132>>2];ma=L[d+100>>2];na=L[d+116>>2];l=L[i+8>>2];_=L[d+88>>2];D=L[d+56>>2];qb=L[d+40>>2];rb=L[d+24>>2];sb=L[d+8>>2];tb=L[d+136>>2];ub=L[d+104>>2];vb=L[d+120>>2];m=L[i+12>>2];fa=L[d+92>>2];wb=L[d+60>>2];xb=L[d+44>>2];yb=L[d+28>>2];E=L[d+12>>2];zb=L[d+140>>2];Ab=L[d+108>>2];Bb=L[d+124>>2];nb=L[i>>2];T=O(-nb);Wb=L[d>>2];Xb=L[d+16>>2];Yb=L[d+32>>2];Zb=L[d+96>>2];_b=L[d+112>>2];$b=L[d+128>>2];ob=O(L[d+80>>2]-O(O(Q+O(O(O(O(cb*Wb)+O(Ja*Xb))+O(Ia*Yb))-O(O(O(bb*Zb)+O(Ha*_b))+O(Ga*$b))))*L[d+48>>2]));T=O(nb+(T>2];T=T>2]=T;fa=O(fa-O(wb*O(Z+O(O(O(O(Ra*E)+O(qa*yb))+O(pa*xb))-O(O(O(oa*Ab)+O(La*Bb))+O(Ka*zb))))));wb=O(-m);fa=O(m+(fa>wb?fa:wb));w=w>fa?fa:w;L[i+12>>2]=w;_=O(_-O(D*O(R+O(O(O(O(Va*sb)+O(wa*rb))+O(va*qb))-O(O(O(ua*ub)+O(Na*vb))+O(Ma*tb))))));D=O(-l);_=O(l+(D<_?_:D));j=j>_?_:j;L[i+8>>2]=j;f=O(f-O(mb*O(Y+O(O(O(O(Za*n)+O(Ca*ka))+O(Ba*ja))-O(O(O(Aa*ma)+O(Qa*na))+O(Pa*la))))));mb=O(-h);f=O(h+(f>mb?f:mb));f=g>f?f:g;L[i+4>>2]=f;A=O(A+T);B=O(B+w);X=O(X+j);W=O(W+f);g=O(T-nb);e=O(e+g);Q=O(Q+O(uc*g));m=O(w-m);z=O(z+m);l=O(j-l);y=O(y+l);h=O(f-h);k=O(k+h);j=O(Rb*g);Ga=O(Ga-O($b*j));g=O(Vb*g);Ia=O(Ia+O(Yb*g));Ha=O(Ha-O(_b*j));Ja=O(Ja+O(Xb*g));bb=O(bb-O(Zb*j));cb=O(cb+O(Wb*g));Z=O(Z+O(rc*m));R=O(R+O(sc*l));Y=O(Y+O(tc*h));g=O(Ob*m);Ka=O(Ka-O(zb*g));j=O(Pb*l);Ma=O(Ma-O(tb*j));w=O(Qb*h);Pa=O(Pa-O(la*w));m=O(Sb*m);pa=O(pa+O(xb*m));l=O(Tb*l);va=O(va+O(qb*l));h=O(Ub*h);Ba=O(Ba+O(ja*h));La=O(La-O(Bb*g));Na=O(Na-O(vb*j));Qa=O(Qa-O(na*w));qa=O(qa+O(yb*m));wa=O(wa+O(rb*l));Ca=O(Ca+O(ka*h));oa=O(oa-O(Ab*g));ua=O(ua-O(ub*j));Aa=O(Aa-O(ma*w));Ra=O(Ra+O(E*m));Va=O(Va+O(sb*l));Za=O(Za+O(n*h));pb=pb+192|0;x=x+1|0;if((P|0)!=(x|0)){continue}break}}d=V+Nb|0;Q=O(Db*z);ra=O(ra-O(aa*Q));Y=O(Fb*y);xa=O(xa-O(ba*Y));R=O(Hb*k);Da=O(Da-O(ca*R));Z=O(Jb*e);db=O(db-O(da*Z));z=O(Cb*z);Sa=O(Sa+O(aa*z));y=O(Eb*y);Wa=O(Wa+O(ba*y));k=O(Gb*k);_a=O(_a+O(ca*k));e=O(Ib*e);gb=O(gb+O(da*e));sa=O(sa-O(ea*Q));ya=O(ya-O(G*Y));Ea=O(Ea-O(K*R));eb=O(eb-O(M*Z));Ta=O(Ta+O(ea*z));Xa=O(Xa+O(G*y));$a=O($a+O(K*k));hb=O(hb+O(M*e));ta=O(ta-O(ha*Q));za=O(za-O(kb*Y));Fa=O(Fa-O(ia*R));fb=O(fb-O(lb*Z));Ua=O(Ua+O(ha*z));Ya=O(Ya+O(kb*y));ab=O(ab+O(ia*k));ib=O(ib+O(lb*e));if(!(!I[b|0]|!U)){qb=O(B*L[c+44>>2]);rb=O(X*L[c+40>>2]);sb=O(W*L[c+36>>2]);tb=O(A*L[c+32>>2]);ha=O(B*L[c+60>>2]);kb=O(-ha);ia=O(X*L[c+56>>2]);lb=O(-ia);Q=O(W*L[c+52>>2]);Y=O(-Q);R=O(A*L[c+48>>2]);Z=O(-R);Kb=U>>>0>1?U:1;vc=ga+96|0;wc=ga- -64|0;xc=ga+32|0;x=0;U=0;P=0;S=0;$=0;while(1){c=N(x,144)+Nb|0;h=L[c+48>>2];C=x<<4;i=C+Mb|0;M=L[i>>2];l=L[c+64>>2];m=L[c+32>>2];g=L[c>>2];j=L[c+16>>2];V=C&16;C=V+vc|0;k=L[C>>2];jb=V+xc|0;y=L[jb>>2];V=V+wc|0;z=L[V>>2];w=L[c+128>>2];ja=L[c+96>>2];ka=L[c+112>>2];K=L[i+4>>2];n=L[c+52>>2];la=L[c+68>>2];ma=L[c+36>>2];na=L[c+20>>2];ub=L[c+4>>2];A=L[C+4>>2];W=L[jb+4>>2];X=L[V+4>>2];vb=L[c+132>>2];xb=L[c+100>>2];yb=L[c+116>>2];G=L[i+8>>2];E=L[c+56>>2];zb=L[c+72>>2];Ab=L[c+40>>2];Bb=L[c+24>>2];nb=L[c+8>>2];B=L[C+8>>2];aa=L[jb+8>>2];ba=L[V+8>>2];T=L[c+136>>2];f=L[c+104>>2];mb=L[c+120>>2];_=L[i+12>>2];ca=L[jb+12>>2];da=L[V+12>>2];ea=L[C+12>>2];e=O(O(_-L[c+60>>2])-O(O(O(O(O(O(Ua*ca)+O(Ta*da))+O(Sa*ea))+O(O(O(Ra*L[c+12>>2])+O(qa*L[c+28>>2]))+O(pa*L[c+44>>2])))-O(O(O(O(ta*ca)+O(sa*da))+O(ra*ea))+O(O(O(oa*L[c+108>>2])+O(La*L[c+124>>2]))+O(Ka*L[c+140>>2]))))*L[c+76>>2]));D=eha?ha:D;D=O(-e);$=($|0)!=0|qb<(e>D?e:D);D=$?fa:e;L[i+12>>2]=D;e=O(O(G-E)-O(zb*O(O(O(O(O(Ya*aa)+O(Xa*ba))+O(Wa*B))+O(O(O(Va*nb)+O(wa*Bb))+O(va*Ab)))-O(O(O(O(za*aa)+O(ya*ba))+O(xa*B))+O(O(O(ua*f)+O(Na*mb))+O(Ma*T))))));E=eia?ia:E;E=O(-e);S=(S|0)!=0|rb<(e>E?e:E);E=S?f:e;L[i+8>>2]=E;e=O(O(K-n)-O(la*O(O(O(O(O(ab*W)+O($a*X))+O(_a*A))+O(O(O(Za*ub)+O(Ca*na))+O(Ba*ma)))-O(O(O(O(Fa*W)+O(Ea*X))+O(Da*A))+O(O(O(Aa*xb)+O(Qa*yb))+O(Pa*vb))))));n=eQ?Q:n;n=O(-e);P=(P|0)!=0|sb<(e>n?e:n);n=P?f:e;L[i+4>>2]=n;C=i;e=O(O(M-h)-O(l*O(O(O(O(O(ib*y)+O(hb*z))+O(gb*k))+O(O(O(cb*g)+O(Ja*j))+O(Ia*m)))-O(O(O(O(fb*y)+O(eb*z))+O(db*k))+O(O(O(bb*ja)+O(Ha*ka))+O(Ga*w))))));h=eR?R:h;h=O(-e);i=(U|0)!=0|tb<(e>h?e:h);g=i?f:e;L[C>>2]=g;e=O(D-_);h=O(Ob*e);Ka=O(Ka-O(h*L[c+140>>2]));G=O(E-G);l=O(Pb*G);Ma=O(Ma-O(l*L[c+136>>2]));K=O(n-K);m=O(Qb*K);Pa=O(Pa-O(m*L[c+132>>2]));M=O(g-M);g=O(Rb*M);Ga=O(Ga-O(g*L[c+128>>2]));j=O(Sb*e);pa=O(pa+O(j*L[c+44>>2]));w=O(Tb*G);va=O(va+O(w*L[c+40>>2]));ja=O(Ub*K);Ba=O(Ba+O(ja*L[c+36>>2]));ka=O(Vb*M);Ia=O(Ia+O(ka*L[c+32>>2]));n=O(Db*e);ra=O(ra-O(ea*n));la=O(Fb*G);xa=O(xa-O(B*la));ma=O(Hb*K);Da=O(Da-O(A*ma));na=O(Jb*M);db=O(db-O(k*na));e=O(Cb*e);Sa=O(Sa+O(ea*e));f=B;B=O(Eb*G);Wa=O(Wa+O(f*B));f=A;A=O(Gb*K);_a=O(_a+O(f*A));f=k;k=O(Ib*M);gb=O(gb+O(f*k));La=O(La-O(h*L[c+124>>2]));Na=O(Na-O(l*L[c+120>>2]));Qa=O(Qa-O(m*L[c+116>>2]));Ha=O(Ha-O(g*L[c+112>>2]));qa=O(qa+O(j*L[c+28>>2]));wa=O(wa+O(w*L[c+24>>2]));Ca=O(Ca+O(ja*L[c+20>>2]));Ja=O(Ja+O(ka*L[c+16>>2]));sa=O(sa-O(da*n));ya=O(ya-O(ba*la));Ea=O(Ea-O(X*ma));eb=O(eb-O(z*na));Ta=O(Ta+O(da*e));Xa=O(Xa+O(ba*B));$a=O($a+O(X*A));hb=O(hb+O(z*k));oa=O(oa-O(h*L[c+108>>2]));ua=O(ua-O(l*L[c+104>>2]));Aa=O(Aa-O(m*L[c+100>>2]));bb=O(bb-O(g*L[c+96>>2]));Ra=O(Ra+O(L[c+12>>2]*j));Va=O(Va+O(L[c+8>>2]*w));Za=O(Za+O(L[c+4>>2]*ja));cb=O(cb+O(L[c>>2]*ka));ta=O(ta-O(ca*n));za=O(za-O(aa*la));Fa=O(Fa-O(W*ma));fb=O(fb-O(y*na));Ua=O(Ua+O(ca*e));Ya=O(Ya+O(aa*B));ab=O(ab+O(W*A));ib=O(ib+O(y*k));$=0-$|0;S=0-S|0;P=0-P|0;U=0-i|0;pb=pb+256|0;x=x+1|0;if((Kb|0)!=(x|0)){continue}break}H[ga+12>>2]=$;H[ga+8>>2]=S;H[ga+4>>2]=P;H[ga>>2]=U}if(d>>>0>>0){continue}break}}L[v+28>>2]=hc;L[v+16>>2]=cb;L[v+12>>2]=pc;L[v+8>>2]=gb;L[v+4>>2]=hb;L[v>>2]=ib;L[v+24>>2]=Ia;L[v+20>>2]=Ja;L[t+28>>2]=ec;L[t+24>>2]=Ba;L[t+20>>2]=Ca;L[t+16>>2]=Za;L[t+12>>2]=nc;L[t+8>>2]=_a;L[t+4>>2]=$a;L[t>>2]=ab;L[r+28>>2]=cc;L[r+24>>2]=va;L[r+20>>2]=wa;L[r+16>>2]=Va;L[r+12>>2]=mc;L[r+8>>2]=Wa;L[r+4>>2]=Xa;L[r>>2]=Ya;L[p+28>>2]=ac;L[p+24>>2]=pa;L[p+20>>2]=qa;L[p+16>>2]=Ra;L[p+12>>2]=lc;L[p+8>>2]=Sa;L[p+4>>2]=Ta;L[p>>2]=Ua;if(H[a+16>>2]){L[u+28>>2]=gc;L[u+16>>2]=bb;L[u+12>>2]=oc;L[u+8>>2]=db;L[u+4>>2]=eb;L[u>>2]=fb;L[u+24>>2]=Ga;L[u+20>>2]=Ha}if(H[a+48>>2]){L[s+28>>2]=kc;L[s+16>>2]=Aa;L[s+12>>2]=fc;L[s+8>>2]=Da;L[s+4>>2]=Ea;L[s>>2]=Fa;L[s+24>>2]=Pa;L[s+20>>2]=Qa}if(H[a+80>>2]){L[q+28>>2]=jc;L[q+16>>2]=ua;L[q+12>>2]=dc;L[q+8>>2]=xa;L[q+4>>2]=ya;L[q>>2]=za;L[q+24>>2]=Ma;L[q+20>>2]=Na}if(H[a+112>>2]){L[o+28>>2]=ic;L[o+16>>2]=oa;L[o+12>>2]=bc;L[o+8>>2]=ra;L[o+4>>2]=sa;L[o>>2]=ta;L[o+24>>2]=Ka;L[o+20>>2]=La}}function Bv(a,b,c,d,e,f,g,h,i,j,k,l,m,n){var o=0,p=O(0),q=0,r=O(0),s=0,t=O(0),u=O(0),v=0,w=0,x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=0,D=0,E=O(0),G=O(0),J=0,K=O(0),M=O(0),P=O(0),Q=O(0),R=O(0),S=O(0),T=O(0),U=0,V=O(0),X=0,Y=O(0),Z=O(0),_=O(0),$=O(0),aa=O(0),ba=O(0),ca=O(0),da=O(0),ea=0,fa=O(0),ga=O(0),ha=0,ia=O(0),ja=O(0),ka=O(0),la=O(0),ma=O(0),na=O(0),oa=O(0),pa=O(0),qa=O(0),ra=O(0),sa=O(0),ta=O(0),ua=0,va=0,wa=0,xa=0,ya=O(0),za=O(0),Aa=O(0),Ba=O(0),Ca=0,Da=0,Ea=0,Fa=0,Ga=O(0),Ha=0,Ia=O(0),Ja=0,Ka=0,La=0,Ma=0;q=Oa-192|0;Oa=q;ea=(m<<5)+b|0;v=H[ea+20>>2];o=!(L[v+112>>2]>O(0))|!(L[v+108>>2]>O(0)?1:L[v+104>>2]>O(0))?o:1;o=!(L[v+128>>2]>O(0))|!(L[v+124>>2]>O(0)?1:L[v+120>>2]>O(0))?o:o+1|0;o=!(L[v+144>>2]>O(0))|!(L[v+140>>2]>O(0)?1:L[v+136>>2]>O(0))?o:o+1|0;s=N(m,80);w=H[e+344>>2];o=!(L[v+160>>2]>O(0))|!(L[v+156>>2]>O(0)?1:L[v+152>>2]>O(0))?o:o+1|0;ha=s+w|0;o=!(L[v+176>>2]>O(0))|!(L[v+172>>2]>O(0)?1:L[v+168>>2]>O(0))?o:o+1|0;C=I[ha+79|0];s=I[ha+77|0];p=L[v+248>>2];o=(s<<1)+(!(L[v+192>>2]>O(0))|!(L[v+188>>2]>O(0)?1:L[v+184>>2]>O(0))?o:o+1|0)|0;Da=w+N(m,80)|0;D=p>O(0);s=D?I[Da+76|0]:0;a:{if((o+s&255)==(0-C&255)){break a}Ea=H[e+68>>2]+(H[ha+72>>2]<<2)|0;ba=L[v+12>>2];_=L[v>>2];ca=L[v+4>>2];$=L[v+8>>2];w=m<<5;Fa=w+b|0;o=H[Fa+16>>2];E=L[o+8>>2];aa=L[v+28>>2];da=L[v+32>>2];ia=L[v+40>>2];ja=L[v+36>>2];r=O(p*g);w=w+H[e+164>>2]|0;p=L[w+8>>2];t=O(p*p);p=L[w>>2];u=O(p*p);p=L[w+4>>2];t=O(W(O(t+O(u+O(p*p)))));p=L[w+24>>2];u=O(p*p);p=L[w+16>>2];x=O(p*p);p=L[w+20>>2];Ga=D?O(r*O(t+O(W(O(u+O(x+O(p*p))))))):O(0);p=L[v+52>>2];G=O(p+p);A=L[o+12>>2];r=O(O(A*A)+O(-.5));K=L[o>>2];p=L[v+48>>2];p=O(p+p);t=L[v+44>>2];M=O(t+t);P=L[o+4>>2];ya=O(O(G*r)+O(A*O(O(K*p)-O(M*P))));za=O(O(p*r)+O(A*O(O(E*M)-O(G*K))));Aa=O(O(M*r)+O(A*O(O(P*G)-O(p*E))));r=L[v+24>>2];R=O(r+r);Ha=(H[ea+24>>2]<<5)+b|0;w=H[Ha+16>>2];B=L[w+12>>2];t=O(O(B*B)+O(-.5));Q=L[w>>2];r=L[v+20>>2];r=O(r+r);u=L[v+16>>2];V=O(u+u);S=L[w+4>>2];Ba=O(O(R*t)+O(B*O(O(Q*r)-O(V*S))));T=L[w+8>>2];ka=O(O(r*t)+O(B*O(O(T*V)-O(R*Q))));la=O(O(V*t)+O(B*O(O(S*R)-O(r*T))));Ia=l?O(0):O(1);ma=O(p*P);na=O(r*S);oa=L[o+16>>2];pa=L[w+16>>2];qa=L[o+24>>2];ra=L[o+20>>2];sa=L[w+24>>2];ta=L[w+20>>2];X=N(m,76);ua=H[e+348>>2];Ca=ua+N(m,96)|0;va=s&255;C=0;D=0;while(1){J=v+D|0;o=I[J+258|0];if(o){w=(D<<4)+v|0;U=H[w+116>>2];if(va?1:(o|0)==1|(U|0)!=4){o=(X+H[e+272>>2]|0)+N(C,24)|0;p=L[o>>2];r=L[o+4>>2];u=L[o+8>>2];o=H[ea+24>>2];H[q+136>>2]=0;H[q+140>>2]=0;H[q+128>>2]=0;H[q+132>>2]=0;H[q+156>>2]=0;L[q+152>>2]=u;L[q+148>>2]=r;L[q+144>>2]=p;H[q+104>>2]=0;H[q+108>>2]=0;H[q+96>>2]=0;H[q+100>>2]=0;H[q+124>>2]=0;L[q+120>>2]=-u;L[q+116>>2]=-r;L[q+112>>2]=-p;ow(b,f,e,o,q+128|0,q+48|0,m,q+96|0,q+160|0);t=O(0);x=L[q+72>>2];y=L[q+64>>2];Y=L[q+68>>2];Z=L[q+184>>2];fa=L[q+176>>2];ga=L[q+180>>2];z=O(O(O(u*x)+O(O(p*y)+O(r*Y)))-O(O(u*Z)+O(O(p*fa)+O(r*ga))));if(z>O(9999999747378752e-21)){t=O(O(1)/O(z+k))}o=H[e+180>>2];H[e+180>>2]=o+1;o=H[e+176>>2]+N(o,176)|0;L[o+100>>2]=z;L[o+96>>2]=t;L[o+48>>2]=y;H[o+24>>2]=0;H[o+28>>2]=0;L[o+12>>2]=p;H[o+8>>2]=0;H[o>>2]=0;H[o+4>>2]=0;L[o+56>>2]=x;L[o+52>>2]=Y;L[o+44>>2]=u;L[o+40>>2]=r;L[o+36>>2]=p;H[o+32>>2]=0;L[o+20>>2]=u;L[o+16>>2]=r;L[o+60>>2]=L[q+48>>2];L[o- -64>>2]=L[q+52>>2];p=L[q+56>>2];L[o+80>>2]=Z;L[o+76>>2]=ga;L[o+72>>2]=fa;L[o+68>>2]=p;L[o+84>>2]=L[q+160>>2];L[o+88>>2]=L[q+164>>2];p=L[q+168>>2];F[o+168|0]=0;L[o+120>>2]=j;L[o+92>>2]=p;b:{if(I[J+258|0]!=1){r=O(3.4028234663852886e38);p=O(-3.4028234663852886e38);break b}wa=(D<<3)+v|0;r=L[wa+60>>2];p=L[wa+56>>2]}wa=1<>2]=0;H[o+112>>2]=0;H[o+116>>2]=0;L[o+108>>2]=r;L[o+104>>2]=p;L[o+164>>2]=Ia;L[o+156>>2]=Ga;c:{d:{e:{f:{if((U|0)!=4){U=C<<2;Ja=U+Ca|0;r=L[Ja+12>>2];if(I[J+258|0]==1){J=(D<<3)+v|0;p=L[J+60>>2];u=L[J+56>>2];r=r>2];Y=L[U+Ea>>2];J=H[w+116>>2];g:{if((J|0)==2){t=O(0);p=O(9.999999562023526e24);break g}if((J|0)!=3){break f}t=O(9.999999562023526e24);p=O(0)}Z=O(O(O(t*u)+O(O(r-Y)*p))*h);u=O(O(O(g*p)+t)*g);x=O(O(O(h*p)+t)*h);break e}H[o+124>>2]=0;H[o+128>>2]=0;H[o+148>>2]=0;H[o+152>>2]=0;H[o+140>>2]=0;H[o+144>>2]=0;H[o+132>>2]=0;H[o+136>>2]=0;break c}p=L[w+108>>2];x=O(r-Y);r=L[w+104>>2];Z=O(O(O(p*u)+O(x*r))*h);u=O(O(O(g*r)+p)*g);x=O(O(O(h*r)+p)*h);y=O(0);p=O(0);r=O(0);h:{switch(J|0){case 0:break e;case 1:break h;default:break d}}r=O(O(1)/O(x+O(1)));L[o+124>>2]=t*O(Z*r);L[o+136>>2]=t*O(x*O(-r));p=O(O(1)/O(u+O(1)));y=O(t*O(u*p));break d}r=O(0);p=O(0);if(z>O(0)){r=O(O(1)/O(O(x*z)+O(1)));p=O(O(1)/O(O(u*z)+O(1)))}L[o+136>>2]=x*O(-r);L[o+124>>2]=Z*r;y=O(u*p)}L[o+144>>2]=O(1)-r;L[o+132>>2]=Y;H[o+128>>2]=0;r=L[w+112>>2];H[o+152>>2]=0;L[o+140>>2]=O(O(z*y)*O(O(1)-p))*j;L[o+148>>2]=r*n}xa=xa|wa}C=C+1|0}D=D+1|0;if((D|0)!=3){continue}break}p=O(O(E*G)+O(O(K*M)+ma));Y=O(qa+O(O(E*p)+ya));Z=O(ra+O(O(P*p)+za));ya=O(oa+O(O(K*p)+Aa));p=O(O(T*R)+O(O(Q*V)+na));za=O(sa+O(O(T*p)+Ba));Aa=O(ta+O(O(S*p)+ka));Ba=O(pa+O(O(Q*p)+la));Ca=N(m,76);ua=ua+N(m,96)|0;w=(s&255)!=0;D=3;while(1){U=v+D|0;o=I[U+258|0];if(o){s=(o|0)!=1;J=(D<<4)+v|0;o=0;i:{if(!(L[J+112>>2]>O(0))){break i}o=1;if(L[J+104>>2]>O(0)){break i}o=L[J+108>>2]>O(0)}if(!(o|w?0:s)){s=(Ca+H[e+272>>2]|0)+N(C,24)|0;p=L[s+20>>2];r=L[s+16>>2];t=L[s+12>>2];s=H[Fa+16>>2];z=L[s+24>>2];G=L[s+20>>2];X=H[Ha+16>>2];x=L[X+24>>2];u=L[X+20>>2];M=L[s+16>>2];y=L[X+16>>2];s=H[ea+24>>2];H[q+156>>2]=0;y=O(Ba-y);R=O(Aa-u);u=O(O(r*y)-O(t*R));L[q+152>>2]=u;V=O(za-x);x=O(O(t*V)-O(p*y));L[q+148>>2]=x;y=O(O(R*p)-O(r*V));L[q+144>>2]=y;H[q+140>>2]=0;L[q+136>>2]=p;L[q+132>>2]=r;L[q+128>>2]=t;H[q+124>>2]=0;R=O(ya-M);G=O(Z-G);M=O(O(r*R)-O(t*G));L[q+120>>2]=-M;z=O(Y-z);R=O(O(t*z)-O(p*R));L[q+116>>2]=-R;V=O(O(G*p)-O(r*z));L[q+112>>2]=-V;H[q+108>>2]=0;L[q+104>>2]=-p;L[q+100>>2]=-r;L[q+96>>2]=-t;ow(b,f,e,s,q+128|0,q+48|0,m,q+96|0,q+160|0);G=O(0);ka=L[q+56>>2];la=L[q+48>>2];ma=L[q+52>>2];na=L[q+72>>2];oa=L[q+64>>2];pa=L[q+68>>2];qa=L[q+168>>2];ra=L[q+160>>2];sa=L[q+164>>2];ta=L[q+184>>2];fa=L[q+176>>2];ga=L[q+180>>2];z=O(O(O(O(p*ka)+O(O(t*la)+O(r*ma)))+O(O(na*u)+O(O(oa*y)+O(x*pa))))-O(O(O(p*qa)+O(O(t*ra)+O(r*sa)))+O(O(ta*M)+O(O(fa*V)+O(R*ga)))));if(z>O(9999999747378752e-21)){G=O(O(1)/O(z+k))}s=H[e+180>>2];H[e+180>>2]=s+1;s=H[e+176>>2]+N(s,176)|0;L[s+96>>2]=G;L[s+100>>2]=z;F[s+168|0]=1;L[s+120>>2]=j;L[s+72>>2]=fa;L[s+48>>2]=oa;L[s+24>>2]=t;L[s+12>>2]=y;L[s+8>>2]=p;L[s+4>>2]=r;L[s>>2]=t;L[s+92>>2]=qa;L[s+88>>2]=sa;L[s+84>>2]=ra;L[s+80>>2]=ta;L[s+76>>2]=ga;L[s+68>>2]=ka;L[s- -64>>2]=ma;L[s+60>>2]=la;L[s+56>>2]=na;L[s+52>>2]=pa;L[s+44>>2]=M;L[s+40>>2]=R;L[s+36>>2]=V;L[s+32>>2]=p;L[s+28>>2]=r;L[s+20>>2]=u;L[s+16>>2]=x;H[s+160>>2]=0;H[s+112>>2]=0;H[s+116>>2]=0;L[s+156>>2]=Ga;L[s+164>>2]=Ia;j:{if(I[U+258|0]!=1){r=O(3.4028234663852886e38);p=O(-3.4028234663852886e38);break j}X=(D<<3)+v|0;r=L[X+60>>2];p=L[X+56>>2]}X=1<>2]=r;L[s+104>>2]=p;k:{l:{m:{n:{if(o){o=C<<2;va=o+ua|0;r=L[va+12>>2];p=L[va>>2];if(I[U+258|0]==1){U=(D<<3)+v|0;t=L[U+60>>2];u=L[U+56>>2];r=rt?t:r}u=O(-p);M=L[o+Ea>>2];o=H[J+116>>2];o:{if((o|0)==2){t=O(9.999999562023526e24);p=O(0);break o}if((o|0)!=3){break n}t=O(0);p=O(9.999999562023526e24)}y=O(O(O(p*u)+O(O(r-M)*t))*h);u=O(O(O(g*t)+p)*g);t=O(O(O(h*t)+p)*h);break m}H[s+124>>2]=0;H[s+128>>2]=0;H[s+148>>2]=0;H[s+152>>2]=0;H[s+140>>2]=0;H[s+144>>2]=0;H[s+132>>2]=0;H[s+136>>2]=0;break k}p=L[J+108>>2];t=O(r-M);r=L[J+104>>2];y=O(O(O(p*u)+O(t*r))*h);u=O(O(O(g*r)+p)*g);t=O(O(O(h*r)+p)*h);p=O(0);r=O(0);x=O(0);p:{switch(o|0){case 0:break m;case 1:break p;default:break l}}r=O(O(1)/O(t+O(1)));L[s+124>>2]=G*O(y*r);L[s+136>>2]=G*O(t*O(-r));p=O(O(1)/O(u+O(1)));x=O(G*O(u*p));break l}r=O(0);p=O(0);if(z>O(0)){r=O(O(1)/O(O(t*z)+O(1)));p=O(O(1)/O(O(u*z)+O(1)))}L[s+136>>2]=t*O(-r);L[s+124>>2]=y*r;x=O(u*p)}L[s+144>>2]=O(1)-r;L[s+132>>2]=M;H[s+128>>2]=0;r=L[J+112>>2];H[s+152>>2]=0;L[s+140>>2]=O(O(O(1)-p)*O(z*x))*j;L[s+148>>2]=r*n}xa=X|xa}C=C+1|0}D=D+1|0;if((D|0)!=6){continue}break}if(!I[ha+79|0]){break a}p=O(O(O(O(B*ba)-O(_*Q))-O(S*ca))-O(T*$));r=O(O(O(E*aa)+O(O(A*da)+O(P*ia)))-O(ja*K));z=O(p*r);t=O(O(O(O(A*ia)-O(aa*K))-O(P*da))-O(E*ja));u=O(O(O(T*_)+O(O(B*ca)+O(S*ba)))-O($*Q));G=O(t*u);x=O(O(O(Q*ca)+O(O(B*$)+O(T*ba)))-O(_*S));y=O(O(O(P*ja)+O(O(A*aa)+O(K*ia)))-O(da*E));M=O(x*y);B=O(O(O(S*$)+O(O(B*_)+O(Q*ba)))-O(ca*T));Q=O(t*B);E=O(O(O(K*da)+O(O(A*ja)+O(E*ia)))-O(aa*P));A=O(u*E);K=O(y*u);P=O(p*E);S=O(t*x);T=O(B*r);ba=O(K+O(O(P-S)-T));_=O(E*B);ca=O(_+O(O(z-G)-M));$=O(r*x);aa=O(p*y);da=O($+O(O(aa-Q)-A));A=O(A+$);Q=O(Q+aa);L[q+76>>2]=O(A-Q)*O(.5);L[q+68>>2]=O(Q+A)*O(.5);A=O(p*t);t=O(x*E);x=O(B*y);r=O(u*r);u=O(t+O(x+r));p=O(A-u);t=O(O(O(t+t)+p)*O(.5));L[q+80>>2]=t;r=O(O(O(r+r)+p)*O(.5));L[q- -64>>2]=r;E=O(M+_);B=O(G+z);L[q+72>>2]=O(E+B)*O(.5);K=O(K+T);P=O(S+P);L[q+60>>2]=O(K-P)*O(.5);L[q+56>>2]=O(E-B)*O(.5);L[q+52>>2]=O(P+K)*O(.5);p=O(O(O(x+x)+p)*O(.5));L[q+48>>2]=p;if(O(A+u)==O(0)){L[q+80>>2]=t+O(1.1920928955078125e-7);L[q+64>>2]=r+O(1.1920928955078125e-7);L[q+48>>2]=p+O(1.1920928955078125e-7)}L[q+44>>2]=-ba;L[q+40>>2]=-ca;L[q+36>>2]=-da;x=O(i*j);C=0;while(1){if(!I[(v+C|0)+258|0]){E=L[(q+36|0)+(C<<2)>>2];o=(q+48|0)+N(C,12)|0;p=L[o>>2];r=L[o+4>>2];t=L[o+8>>2];o=H[ea+24>>2];H[q+104>>2]=0;H[q+108>>2]=0;H[q+96>>2]=0;H[q+100>>2]=0;H[q+124>>2]=0;L[q+120>>2]=t;L[q+116>>2]=r;L[q+112>>2]=p;H[q+8>>2]=0;H[q+12>>2]=0;H[q>>2]=0;H[q+4>>2]=0;H[q+28>>2]=0;L[q+24>>2]=-t;L[q+20>>2]=-r;L[q+16>>2]=-p;ow(b,f,e,o,q+96|0,q+160|0,m,q,q+128|0);u=O(0);A=L[q+184>>2];B=L[q+176>>2];K=L[q+180>>2];P=L[q+152>>2];Q=L[q+144>>2];S=L[q+148>>2];T=O(O(O(t*A)+O(O(p*B)+O(r*K)))-O(O(t*P)+O(O(p*Q)+O(r*S))));if(T>O(9999999747378752e-21)){u=O(O(1)/O(T+k))}o=H[e+192>>2];H[e+192>>2]=o+1;o=H[e+188>>2]+N(o,80)|0;L[o+48>>2]=p;L[o+8>>2]=A;L[o+4>>2]=K;L[o>>2]=B;L[o+56>>2]=t;L[o+52>>2]=r;L[o+12>>2]=L[q+160>>2];L[o+16>>2]=L[q+164>>2];p=L[q+168>>2];L[o+32>>2]=P;L[o+28>>2]=S;L[o+24>>2]=Q;L[o+20>>2]=p;L[o+36>>2]=L[q+128>>2];L[o+40>>2]=L[q+132>>2];p=L[q+136>>2];L[o+68>>2]=x;L[o+64>>2]=E;L[o+60>>2]=u;L[o+44>>2]=p}C=C+1|0;if((C|0)!=3){continue}break}}F[Da+78|0]=xa;m=(m<<5)+b|0;o=H[m+4>>2];m=H[m>>2];if(o|m){while(1){w=m;Bv(a,b,c,d,e,f,g,h,i,j,k,l,(Ka=f7(w),La=f7(o)+32|0,Ma=w,Ma?Ka:La),n);m=w-1&w;o=o&o-!w;if(m|o){continue}break}}Oa=q+192|0}function S4(a,b,c,d){var e=0,f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=0,w=O(0),x=O(0),y=0,z=O(0),A=O(0),B=O(0),C=O(0),D=0,E=0,G=O(0),J=O(0),M=O(0),N=O(0),P=0,Q=O(0),R=O(0),S=O(0),T=O(0),U=O(0),V=O(0),W=O(0),X=O(0),Y=O(0),Z=O(0),_=O(0),$=O(0),aa=O(0),ba=0,ca=O(0),da=O(0),ea=O(0),fa=0;e=Oa-368|0;Oa=e;F[e+256|0]=1;H[e+264>>2]=0;H[e+268>>2]=16;D=e+192|0;H[e+260>>2]=D;v=Ra[H[H[a>>2]+92>>2]](a)|0;H[e+136>>2]=0;if(v>>>0>(H[D+76>>2]&2147483647)>>>0){y=0;a:{if(!v){break a}E=v<<2;if(!(I[D+64|0]|E>>>0>64)){F[D+64|0]=1;y=D;break a}y=0;if(!E){break a}y=H[33808];P=Ra[H[H[y>>2]+20>>2]](y)|0?52564:55639;y=Ra[H[H[y+12>>2]+8>>2]](y+12|0,E,P,13582,553)|0}E=H[D+72>>2];if((E|0)>0){fa=y+(E<<2)|0;P=H[D+68>>2];E=y;while(1){H[E>>2]=H[P>>2];P=P+4|0;E=E+4|0;if(fa>>>0>E>>>0){continue}break}}b:{if(H[D+76>>2]<0){break b}E=H[D+68>>2];if((E|0)==(D|0)){F[D+64|0]=0;break b}if(!E){break b}P=H[33808];Ra[H[H[P+12>>2]+12>>2]](P+12|0,E)}H[D+76>>2]=v;H[D+68>>2]=y}y=H[D+72>>2];if((y|0)<(v|0)){E=H[D+68>>2];P=E+(v<<2)|0;y=E+(y<<2)|0;while(1){H[y>>2]=H[e+136>>2];y=y+4|0;if(P>>>0>y>>>0){continue}break}}H[D+72>>2]=v;Ra[H[H[a>>2]+96>>2]](a,H[e+260>>2],H[e+264>>2],0)|0;a=b?b:c;M=L[a>>2];c:{d:{e:{f:{if((H[a>>2]&2139095040)!=2139095040){if(H[e+264>>2]){break f}break e}o5(H[33808],4,5194,128,17249,0);a=0;break c}y=e+112|0;E=e+344|0;D=0;while(1){a=ba<<2;v=H[a+H[e+260>>2]>>2];Ra[H[H[v>>2]+156>>2]](e+136|0,v);g:{if(!(F[e+136|0]&1)){f=G;break g}h:{i:{j:{k:{l:{v=H[a+H[e+260>>2]>>2];switch((Ra[H[H[v>>2]+32>>2]](v)|0)+1|0){case 0:case 2:case 6:case 7:case 8:break d;case 5:break i;case 3:break j;case 4:break k;case 1:break l;default:break h}}H[e+328>>2]=0;H[e+332>>2]=0;v=H[a+H[e+260>>2]>>2];Ra[H[H[v>>2]+48>>2]](v,e+328|0)|0;a=H[a+H[e+260>>2]>>2];Ra[H[H[a>>2]+80>>2]](e+96|0,a);g=L[e+96>>2];k=O(g+g);f=L[e+104>>2];n=O(k*f);j=L[e+100>>2];l=O(j+j);m=L[e+108>>2];i=O(l*m);h=O(n-i);p=O(h*O(0));x=O(O(1)-O(g*k));r=O(j*l);g=O(x-r);o=O(g*O(0));q=O(l*f);w=O(k*m);l=O(q+w);A=O(l*O(0));t=O(p+A);L[e+180>>2]=o+t;q=O(q-w);w=O(q*O(0));u=O(k*j);j=O(f+f);s=O(m*j);k=O(u+s);B=O(k*O(0));f=O(f*j);j=O(x-f);C=O(j*O(0));J=O(B+C);L[e+176>>2]=w+J;m=O(n+i);x=O(m*O(0));n=O(O(O(1)-r)-f);N=O(n*O(0));i=O(u-s);u=O(i*O(0));s=O(N+u);L[e+172>>2]=x+s;f=L[e+332>>2];r=O(f*O(f*O(f*O(4.188790321350098))));L[e+184>>2]=r;f=O(O(f*O(f*r))*O(.4000000059604645));r=O(O(g*f)+t);A=O(o+O(O(f*h)+A));p=O(o+O(p+O(f*l)));L[e+168>>2]=O(g*r)+O(O(h*A)+O(l*p));o=O(O(f*q)+J);t=O(w+O(O(f*k)+C));w=O(w+O(B+O(f*j)));L[e+164>>2]=O(g*o)+O(O(h*t)+O(l*w));R=g;g=O(O(f*m)+s);z=h;h=O(x+O(O(f*n)+u));f=O(x+O(N+O(f*i)));L[e+160>>2]=O(R*g)+O(O(z*h)+O(l*f));L[e+156>>2]=O(q*r)+O(O(k*A)+O(j*p));L[e+152>>2]=O(q*o)+O(O(k*t)+O(j*w));L[e+148>>2]=O(q*g)+O(O(k*h)+O(j*f));L[e+144>>2]=O(m*r)+O(O(n*A)+O(i*p));L[e+140>>2]=O(m*o)+O(O(n*t)+O(i*w));L[e+136>>2]=O(m*g)+O(O(n*h)+O(i*f));R4(e+136|0,y);break h}H[e+340>>2]=0;H[e+332>>2]=0;H[e+336>>2]=0;H[e+328>>2]=3;v=H[a+H[e+260>>2]>>2];Ra[H[H[v>>2]+44>>2]](v,e+328|0)|0;a=H[a+H[e+260>>2]>>2];Ra[H[H[a>>2]+80>>2]](e+96|0,a);g=L[e+96>>2];k=O(g+g);f=L[e+104>>2];n=O(k*f);j=L[e+100>>2];l=O(j+j);m=L[e+108>>2];i=O(l*m);h=O(n-i);w=O(h*O(0));p=O(O(1)-O(g*k));o=O(j*l);g=O(p-o);x=O(g*O(0));q=O(l*f);r=O(k*m);l=O(q+r);u=O(l*O(0));t=O(w+u);L[e+180>>2]=x+t;q=O(q-r);r=O(q*O(0));s=O(k*j);j=O(f+f);B=O(m*j);k=O(s+B);C=O(k*O(0));m=O(f*j);f=O(p-m);J=O(f*O(0));N=O(C+J);L[e+176>>2]=r+N;j=O(n+i);A=O(j*O(0));m=O(O(O(1)-o)-m);S=O(m*O(0));n=O(s-B);B=O(n*O(0));T=O(S+B);L[e+172>>2]=A+T;i=L[e+332>>2];p=L[e+336>>2];o=L[e+340>>2];s=O(O(O((i!=O(0)?i:O(1))*(p!=O(0)?p:O(1)))*(o!=O(0)?o:O(1)))*O(8));L[e+184>>2]=s;Q=O(i*i);z=O(p*p);i=O(s*O(.3333333432674408));p=O(O(Q+z)*i);t=O(O(g*p)+t);s=O(o*o);o=O(O(z+s)*i);u=O(x+O(O(h*o)+u));i=O(O(Q+s)*i);w=O(x+O(w+O(l*i)));L[e+168>>2]=O(g*t)+O(O(h*u)+O(l*w));x=O(O(p*q)+N);s=O(r+O(O(o*k)+J));r=O(r+O(C+O(i*f)));L[e+164>>2]=O(g*x)+O(O(h*s)+O(l*r));Q=g;g=O(O(p*j)+T);R=h;h=O(A+O(O(o*m)+B));z=l;l=O(A+O(S+O(i*n)));L[e+160>>2]=O(Q*g)+O(O(R*h)+O(z*l));L[e+156>>2]=O(q*t)+O(O(k*u)+O(f*w));L[e+152>>2]=O(q*x)+O(O(k*s)+O(f*r));L[e+148>>2]=O(q*g)+O(O(k*h)+O(f*l));L[e+144>>2]=O(j*t)+O(O(m*u)+O(n*w));L[e+140>>2]=O(j*x)+O(O(m*s)+O(n*r));L[e+136>>2]=O(j*g)+O(O(m*h)+O(n*l));R4(e+136|0,y);break h}H[e+332>>2]=0;H[e+336>>2]=0;H[e+328>>2]=2;v=H[a+H[e+260>>2]>>2];Ra[H[H[v>>2]+52>>2]](v,e+328|0)|0;a=H[a+H[e+260>>2]>>2];Ra[H[H[a>>2]+80>>2]](e+96|0,a);f=L[e+332>>2];o=O(f*O(f*O(3.1415927410125732)));h=L[e+336>>2];L[e+184>>2]=O(f*O(f*O(f*O(4.188790321350098))))+O(o*O(h+h));q=L[e+96>>2];m=O(q+q);g=L[e+104>>2];p=O(m*g);n=L[e+100>>2];k=O(n+n);i=L[e+108>>2];A=O(k*i);l=O(p-A);w=O(l*O(0));t=O(O(1)-O(q*m));u=O(n*k);q=O(t-u);x=O(q*O(0));j=O(k*g);r=O(m*i);k=O(j+r);s=O(k*O(0));B=O(w+s);L[e+180>>2]=x+B;j=O(j-r);r=O(j*O(0));C=O(m*n);n=O(g+g);J=O(i*n);m=O(C+J);N=O(m*O(0));i=O(g*n);g=O(t-i);S=O(g*O(0));T=O(N+S);L[e+176>>2]=r+T;n=O(p+A);A=O(n*O(0));i=O(O(O(1)-u)-i);Q=O(i*O(0));p=O(C-J);C=O(p*O(0));J=O(Q+C);L[e+172>>2]=A+J;t=O(h*h);u=O(h*t);R=O(O(u+u)/O(3));z=O(O(O(f*t)*O(4))/O(3));t=O(O(O(f*O(f*f))*O(8))/O(15));u=O(f*O(f*h));f=O(o*O(R+O(z+O(t+O(O(u*O(3))*O(.5))))));h=O(O(q*f)+B);o=O(o*O(u+t));t=O(x+O(O(l*o)+s));w=O(x+O(w+O(f*k)));L[e+168>>2]=O(q*h)+O(O(l*t)+O(k*w));x=O(O(f*j)+T);u=O(r+O(O(o*m)+S));r=O(r+O(N+O(f*g)));L[e+164>>2]=O(q*x)+O(O(l*u)+O(k*r));R=q;q=O(O(f*n)+J);z=l;l=O(A+O(O(o*i)+C));f=O(A+O(Q+O(f*p)));L[e+160>>2]=O(R*q)+O(O(z*l)+O(k*f));L[e+156>>2]=O(j*h)+O(O(m*t)+O(g*w));L[e+152>>2]=O(j*x)+O(O(m*u)+O(g*r));L[e+148>>2]=O(j*q)+O(O(m*l)+O(g*f));L[e+144>>2]=O(n*h)+O(O(i*t)+O(p*w));L[e+140>>2]=O(n*x)+O(O(i*u)+O(p*r));L[e+136>>2]=O(n*q)+O(O(i*l)+O(p*f));R4(e+136|0,y);break h}F[e+132|0]=1;H[e+128>>2]=0;H[e+120>>2]=0;H[e+124>>2]=1065353216;H[e+112>>2]=0;H[e+116>>2]=0;H[e+104>>2]=1065353216;H[e+108>>2]=1065353216;H[e+96>>2]=4;H[e+100>>2]=1065353216;F[e+135|0]=0;F[e+133|0]=0;F[e+134|0]=0;v=H[a+H[e+260>>2]>>2];Ra[H[H[v>>2]+60>>2]](v,e+96|0)|0;v=H[e+128>>2];Ra[H[H[v>>2]+52>>2]](v,e+92|0,e+56|0,e+40|0);l=L[e+108>>2];o=L[e+100>>2];k=L[e+104>>2];m:{if(!(o!=O(1)|k!=O(1)|l!=O(1))){g=L[e+88>>2];l=L[e+84>>2];q=L[e+80>>2];w=L[e+76>>2];x=L[e+72>>2];r=L[e+68>>2];A=L[e+64>>2];t=L[e+60>>2];u=L[e+56>>2];break m}L[e+92>>2]=L[e+92>>2]*O(O(o*k)*l);f=L[e+120>>2];h=L[e+48>>2];j=O(h+h);h=L[e+112>>2];g=L[e+40>>2];m=O(g+g);g=L[e+44>>2];n=O(g+g);g=L[e+116>>2];i=O(O(f*j)+O(O(h*m)+O(n*g)));z=l;l=L[e+124>>2];q=O(O(l*l)+O(-.5));p=O(z*O(O(f*i)+O(O(j*q)+O(l*O(O(h*n)-O(m*g))))));p=O(p+p);o=O(o*O(O(h*i)+O(O(m*q)+O(l*O(O(g*j)-O(n*f))))));o=O(o+o);k=O(k*O(O(g*i)+O(O(n*q)+O(l*O(O(f*m)-O(j*h))))));k=O(k+k);j=O(O(f*p)+O(O(h*o)+O(g*k)));L[e+40>>2]=O(h*j)+O(O(o*q)-O(l*O(O(g*p)-O(k*f))));L[e+44>>2]=O(g*j)+O(O(k*q)-O(l*O(O(f*o)-O(p*h))));L[e+48>>2]=O(f*j)+O(O(p*q)-O(l*O(O(h*k)-O(o*g))));U4(e+328|0,e+56|0,y);q=L[e+360>>2];k=L[e+328>>2];j=L[e+344>>2];m=L[e+332>>2];n=L[e+336>>2];h=L[e+100>>2];g=L[e+104>>2];l=L[e+108>>2];f=O(O(h*g)*l);i=O(f*O(l*O(g*L[e+348>>2])));L[e+316>>2]=i;n=O(f*O(l*O(h*n)));L[e+312>>2]=n;L[e+308>>2]=i;m=O(f*O(g*O(h*m)));L[e+300>>2]=m;L[e+296>>2]=n;L[e+292>>2]=m;z=h;h=O(O(q*O(.5))+O(O(k*O(.5))+O(j*O(.5))));k=O(z*O(z*O(h-k)));g=O(g*O(g*O(h-j)));L[e+320>>2]=f*O(k+g);h=O(l*O(l*O(h-q)));L[e+304>>2]=f*O(h+k);L[e+288>>2]=f*O(g+h);L[e+284>>2]=L[e+124>>2];L[e+280>>2]=-L[e+120>>2];L[e+276>>2]=-L[e+116>>2];L[e+272>>2]=-L[e+112>>2];U4(e,e+288|0,e+272|0);u=L[e>>2];L[e+56>>2]=u;t=L[e+4>>2];L[e+60>>2]=t;A=L[e+8>>2];L[e+64>>2]=A;r=L[e+12>>2];L[e+68>>2]=r;x=L[e+16>>2];L[e+72>>2]=x;w=L[e+20>>2];L[e+76>>2]=w;q=L[e+24>>2];L[e+80>>2]=q;l=L[e+28>>2];L[e+84>>2]=l;g=L[e+32>>2];L[e+88>>2]=g}L[e+184>>2]=L[e+92>>2];L[e+180>>2]=L[e+48>>2];v=H[e+44>>2];H[e+172>>2]=H[e+40>>2];H[e+176>>2]=v;a=H[a+H[e+260>>2]>>2];Ra[H[H[a>>2]+80>>2]](e+328|0,a);k=L[e+328>>2];m=O(k+k);j=L[e+336>>2];C=O(m*j);n=L[e+332>>2];i=O(n+n);p=L[e+340>>2];J=O(i*p);f=O(C-J);o=L[e+172>>2];N=O(i*j);S=O(m*p);h=O(N+S);s=L[e+176>>2];T=O(O(1)-O(k*m));i=O(n*i);k=O(T-i);B=L[e+180>>2];L[e+180>>2]=O(O(f*o)+O(h*s))+O(k*B);z=O(O(1)-i);i=O(j+j);Q=O(j*i);j=O(z-Q);z=O(m*n);i=O(i*p);m=O(z-i);n=O(C+J);L[e+172>>2]=O(O(o*j)+O(s*m))+O(B*n);i=O(z+i);p=O(T-Q);z=O(O(o*i)+O(s*p));o=O(N-S);L[e+176>>2]=z+O(B*o);s=O(O(O(u*f)+O(t*h))+O(k*A));B=O(O(O(f*r)+O(h*x))+O(k*w));C=O(O(O(f*q)+O(h*l))+O(k*g));L[e+168>>2]=O(O(f*s)+O(h*B))+O(k*C);L[e+156>>2]=O(O(i*s)+O(p*B))+O(o*C);L[e+144>>2]=O(O(j*s)+O(m*B))+O(n*C);s=O(O(O(u*i)+O(t*p))+O(o*A));B=O(O(O(i*r)+O(p*x))+O(o*w));C=O(O(O(i*q)+O(p*l))+O(o*g));L[e+164>>2]=O(O(f*s)+O(h*B))+O(k*C);R=f;f=O(O(O(u*j)+O(t*m))+O(n*A));z=h;h=O(O(O(j*r)+O(m*x))+O(n*w));g=O(O(O(j*q)+O(m*l))+O(n*g));L[e+160>>2]=O(O(R*f)+O(z*h))+O(k*g);L[e+152>>2]=O(O(i*s)+O(p*B))+O(o*C);L[e+148>>2]=O(O(i*f)+O(p*h))+O(o*g);L[e+140>>2]=O(O(j*s)+O(m*B))+O(n*C);L[e+136>>2]=O(O(j*f)+O(m*h))+O(n*g);R4(e+136|0,E)}n:{if(b){k=O(M*L[e+136>>2]);L[e+136>>2]=k;j=O(M*L[e+140>>2]);L[e+140>>2]=j;m=O(M*L[e+144>>2]);L[e+144>>2]=m;n=O(M*L[e+148>>2]);L[e+148>>2]=n;i=O(M*L[e+152>>2]);L[e+152>>2]=i;p=O(M*L[e+156>>2]);L[e+156>>2]=p;g=O(M*L[e+160>>2]);L[e+160>>2]=g;l=O(M*L[e+164>>2]);L[e+164>>2]=l;q=O(M*L[e+168>>2]);L[e+168>>2]=q;h=O(M*L[e+184>>2]);break n}q=L[e+168>>2];l=L[e+164>>2];g=L[e+160>>2];p=L[e+156>>2];i=L[e+152>>2];n=L[e+148>>2];m=L[e+144>>2];j=L[e+140>>2];k=L[e+136>>2];h=L[e+184>>2]}f=O(G+h);o=O(O(1)/f);ca=O(o*O(O(G*ca)+O(h*L[e+180>>2])));da=O(o*O(O(G*da)+O(h*L[e+176>>2])));ea=O(o*O(O(G*ea)+O(h*L[e+172>>2])));D=D+1|0;U=O(U+q);V=O(V+l);W=O(W+g);X=O(X+p);Y=O(Y+i);Z=O(Z+n);_=O(_+m);$=O($+j);aa=O(aa+k);G=f}ba=ba+1|0;if(ba>>>0>2]){continue}break}if(!D|!c){break e}G=O(M/f);f=O(f*G);U=O(U*G);V=O(V*G);W=O(W*G);X=O(X*G);Y=O(Y*G);Z=O(Z*G);_=O(_*G);$=O($*G);aa=O(aa*G)}L[d+48>>2]=f;L[d+36>>2]=ea;L[d+24>>2]=W;L[d+12>>2]=Z;L[d+8>>2]=_;L[d+4>>2]=$;L[d>>2]=aa;L[d+44>>2]=ca;L[d+40>>2]=da;L[d+32>>2]=U;L[d+28>>2]=V;L[d+20>>2]=X;L[d+16>>2]=Y;a=1;break c}o5(H[33808],4,5194,231,3497,0);a=0}b=H[e+268>>2];o:{if((b|0)<0|!(b&2147483647)){break o}b=H[e+260>>2];if((b|0)==(e+192|0)|!b){break o}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}Oa=e+368|0;return a}function Jy(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=O(0),l=0,m=0,n=0,o=O(0),p=O(0),q=O(0),r=0,s=0,t=0,u=O(0),v=0,w=0,x=0,y=0,z=0,A=O(0),B=0,C=0,D=O(0),E=O(0),K=O(0),M=O(0),P=0,Q=0,R=0,S=O(0),T=0,U=0,V=0,W=O(0),X=O(0),Y=0,Z=0,_=O(0),$=0,aa=O(0),ba=O(0),ca=O(0),da=O(0),ea=O(0);$=H[a+100>>2]+H[a+96>>2]|0;b=H[a+28>>2];c=H[b+336>>2];t=H[c>>2];if(t){H[c>>2]=H[t>>2]}if(!t){c=H[33808];e=Ra[H[H[c>>2]+20>>2]](c)|0?23054:55639;e=Ra[H[H[c+12>>2]+8>>2]](c+12|0,12195,e,16202,82)|0;c=e+19&-16;H[c-4>>2]=c-e;t=lA(c,H[b+340>>2])}c=t+11856|0;H[c>>2]=0;H[c+4>>2]=0;T=H[a+96>>2];if($>>>0>T>>>0){while(1){B=0;Y=0;n=0;j=Oa-1536|0;Oa=j;V=H[H[a+32>>2]+12e3>>2]+N(T,36)|0;U=J[V+4>>1];if(U){Z=H[V>>2];P=H[a+108>>2];w=H[P+32>>2];x=H[H[a+32>>2]+12012>>2];while(1){c=H[H[H[x+(n+Z<<2)>>2]+12>>2]+68>>2];c=w+(H[P+((c&7)<<2)>>2]+(c>>>3|0)<<4)|0;z=I[c+13|0];b=I[c+12|0];e=H[c+8>>2];d=H[c+4>>2];h=H[c>>2];H[j>>2]=0;H[j+64>>2]=0;H[j+1276>>2]=0;a:{if(!h){break a}c=I[h+43|0];if(!z|c&4){break a}y=c&128?32:c&2?64:16;v=c&130;C=c&1;l=e+(b<<2)|0;g=0;i=0;f=0;while(1){if(i){c=I[h+41|0];d=c>>>0>f>>>0?N(y,c-f|0)+d|0:d;h=h+48|0}i=i+1|0;f=I[h+41|0];b:{if(!f){f=0;break b}Q=J[h+46>>1];r=J[h+44>>1];s=I[h+42|0];k=L[h+32>>2];q=L[h+36>>2];b=(B<<6)+t|0;A=L[h+28>>2];L[b+76>>2]=A;L[b+60>>2]=q;L[b+72>>2]=k;l=(g<<2)+l|0;c=-1;c=C?H[l>>2]:c;d=g?d+y|0:d;F[b- -64|0]=s;H[b+68>>2]=c;e=f+B|0;L[b+44>>2]=v?L[d+28>>2]:O(3.4028234663852886e38);L[b+48>>2]=L[(v?d+16|0:j- -64|0)>>2];L[b+52>>2]=L[(v?d+20|0:j)>>2];L[b+56>>2]=L[(v?d+24|0:j+1276|0)>>2];L[b+16>>2]=L[h+16>>2];L[b+20>>2]=L[h+20>>2];L[b+24>>2]=L[h+24>>2];L[b+32>>2]=L[d>>2];L[b+36>>2]=L[d+4>>2];L[b+40>>2]=L[d+8>>2];L[b+28>>2]=L[d+12>>2];c=(j+1280|0)+(B<<2)|0;G[c+2>>1]=Q;G[c>>1]=r;g=1;c:{if((f|0)==1){f=1;break c}c=B+1|0;while(1){b=(c<<6)+t|0;L[b+76>>2]=A;L[b+60>>2]=q;L[b+72>>2]=k;l=l+4|0;B=-1;B=C?H[l>>2]:B;m=c+1|0;d=d+y|0;F[b- -64|0]=s;H[b+68>>2]=B;L[b+44>>2]=v?L[d+28>>2]:O(3.4028234663852886e38);L[b+48>>2]=L[(v?d+16|0:j- -64|0)>>2];L[b+52>>2]=L[(v?d+20|0:j)>>2];L[b+56>>2]=L[(v?d+24|0:j+1276|0)>>2];L[b+16>>2]=L[h+16>>2];L[b+20>>2]=L[h+20>>2];L[b+24>>2]=L[h+24>>2];L[b+32>>2]=L[d>>2];L[b+36>>2]=L[d+4>>2];L[b+40>>2]=L[d+8>>2];L[b+28>>2]=L[d+12>>2];c=(j+1280|0)+(c<<2)|0;G[c+2>>1]=Q;G[c>>1]=r;c=m;if((c|0)!=(e|0)){continue}break}}B=e}if((i|0)!=(z|0)){continue}break}}n=n+1|0;if((U|0)!=(n|0)){continue}break}}H[j+1272>>2]=B;H[j+1260>>2]=0;H[j+232>>2]=0;U=t+16|0;H[j+1264>>2]=U;H[j+1268>>2]=j+1280;Q=0;f=Oa-128|0;Oa=f;n=j- -64|0;l=H[n+1200>>2];L[n+172>>2]=L[l>>2];L[n+176>>2]=L[l+4>>2];L[n+180>>2]=L[l+8>>2];H[n+184>>2]=0;G[n+192>>1]=0;G[n+196>>1]=0;L[n+188>>2]=L[l+12>>2];G[n+198>>1]=0;i=1;v=H[n+1208>>2];d:{if(v>>>0<2){c=1;d=1;break d}d=1;c=1;while(1){h=l+(i<<6)|0;b=-1;e=d&65535;e:{if(!e){break e}g=H[n+1204>>2];b=g+(i<<2)|0;i=b;y=J[b>>1];b=e;while(1){b=b-1|0;m=n+N(b,28)|0;z=g+(J[m+192>>1]<<2)|0;if(!((y|0)!=J[z>>1]|J[z+2>>1]!=J[i+2>>1])&O(O(L[m+180>>2]*L[h+8>>2])+O(O(L[m+172>>2]*L[h>>2])+O(L[m+176>>2]*L[h+4>>2])))>=O(.9950000047683716)){break e}if(b){continue}break}b=-1}m=e-1|0;if((m|0)!=(b|0)){m=n+N(m,28)|0;G[m+194>>1]=c-J[m+192>>1];if((d&65535)==32){d=32;break d}g=N(e,28);e=g+n|0;H[e+184>>2]=0;G[e+192>>1]=c;i=e+172|0;f:{if((b|0)==-1){G[e+196>>1]=d;k=L[h+8>>2];q=L[h+4>>2];M=L[h>>2];L[e+188>>2]=L[h+12>>2];break f}m=n+172|0;b=m+N(b,28)|0;H[b+12>>2]=i;M=L[b>>2];q=L[b+4>>2];k=L[b+8>>2];g=g+m|0;b=J[b+24>>1];m=m+N(b,28)|0;A=L[m+16>>2];o=L[h+12>>2];A=o>A?A:o;L[g+16>>2]=A;L[m+16>>2]=A;G[g+24>>1]=b}L[e+172>>2]=M;G[e+198>>1]=d;L[e+180>>2]=k;L[e+176>>2]=q;d=d+1|0}c=c+1|0;i=c&65535;if(v>>>0>i>>>0){continue}break}}C=d&65535;b=n+N(C,28)|0;G[b+166>>1]=c-J[b+164>>1];g:{if(C){g=0;b=0;if(C-1>>>0>=3){l=C&65532;c=n+172|0;h=n+1068|0;e=0;while(1){H[h+(b<<2)>>2]=c+N(b,28);m=b|1;H[h+(m<<2)>>2]=c+N(m,28);m=b|2;H[h+(m<<2)>>2]=c+N(m,28);m=b|3;H[h+(m<<2)>>2]=c+N(m,28);b=b+4|0;e=e+4|0;if((l|0)!=(e|0)){continue}break}}c=C&3;if(c){while(1){H[(n+(b<<2)|0)+1068>>2]=(n+N(b,28)|0)+172;b=b+1|0;g=g+1|0;if((c|0)!=(g|0)){continue}break}}Ky(n+1068|0,C);if(!(d&65535)){h=0;break g}m=f+116|0;v=f+112|0;y=H[n+1200>>2];Z=n+20|0;h=0;while(1){l=h;P=(n+(Q<<2)|0)+1068|0;c=H[P>>2];h:{if(J[c+24>>1]!=J[c+26>>1]){break h}h=6;if((l|0)==6){break g}h=l+1|0;z=n+N(l,28)|0;d=0;b=c;while(1){d=J[b+22>>1]+d|0;b=H[b+12>>2];if(b){continue}break}i=0;i:{j:{if(d>>>0>=7){g=H[n+1200>>2];b=0;k=O(0);d=c;while(1){r=J[d+22>>1];if(r){s=J[d+20>>1];i=0;while(1){w=i+s|0;e=g+(w<<6)|0;q=L[e+24>>2];o=O(q*q);q=L[e+16>>2];p=O(q*q);q=L[e+20>>2];q=O(o+O(p+O(q*q)));e=q>k;k=e?q:k;b=e?w:b;i=i+1|0;if((r|0)!=(i|0)){continue}break}}d=H[d+12>>2];if(d){continue}break}H[z+4>>2]=b;g=y+(b<<6)|0;q=L[g+24>>2];M=L[g+20>>2];A=L[g+16>>2];k=O(0);e=c;while(1){r=J[e+22>>1];if(r){s=J[e+20>>1];i=0;while(1){w=i+s|0;d=y+(w<<6)|0;o=O(q-L[d+24>>2]);p=O(o*o);o=O(A-L[d+16>>2]);u=O(o*o);o=O(M-L[d+20>>2]);o=O(p+O(u+O(o*o)));d=o>k;k=d?o:k;b=d?w:b;i=i+1|0;if((r|0)!=(i|0)){continue}break}}e=H[e+12>>2];if(e){continue}break}r=y+(b<<6)|0;aa=L[r+24>>2];ba=L[r+16>>2];ca=L[r+20>>2];H[z+8>>2]=b;k=O(A-ba);K=L[c+4>>2];u=L[c>>2];E=O(M-ca);o=O(O(k*K)-O(u*E));W=O(q-aa);X=L[c+8>>2];u=O(O(W*u)-O(X*k));K=O(O(E*X)-O(K*W));k=O(0);e=c;while(1){s=J[e+22>>1];if(s){w=J[e+20>>1];i=0;while(1){x=i+w|0;d=y+(x<<6)|0;E=O(O(O(L[d+24>>2]-q)*o)+O(O(O(L[d+16>>2]-A)*K)+O(u*O(L[d+20>>2]-M))));d=E>k;k=d?E:k;b=d?x:b;i=i+1|0;if((s|0)!=(i|0)){continue}break}}e=H[e+12>>2];if(e){continue}break}H[z+12>>2]=b;o=O(-o);u=O(-u);K=O(-K);k=O(0);d=c;e=b;while(1){w=J[d+22>>1];if(w){x=J[d+20>>1];i=0;while(1){R=i+x|0;s=y+(R<<6)|0;E=O(O(O(L[s+24>>2]-q)*o)+O(O(O(L[s+16>>2]-A)*K)+O(O(L[s+20>>2]-M)*u)));s=E>k;k=s?E:k;e=s?R:e;i=i+1|0;if((w|0)!=(i|0)){continue}break}}d=H[d+12>>2];if(d){continue}break}H[z+16>>2]=e;s=N(l,7)<<2;d=s+n|0;l=H[d+16>>2];H[f+72>>2]=H[d+12>>2];H[f+76>>2]=l;l=H[d+8>>2];H[f+64>>2]=H[d+4>>2];H[f+68>>2]=l;L[f+96>>2]=L[g+12>>2]+O(-.0010000000474974513);L[f+100>>2]=L[r+12>>2]+O(-.0010000000474974513);b=y+(b<<6)|0;L[f+104>>2]=L[b+12>>2]+O(-.0010000000474974513);e=y+(e<<6)|0;L[f+108>>2]=L[e+12>>2]+O(-.0010000000474974513);while(1){g=J[c+22>>1];if(g){K=L[e+24>>2];E=L[e+20>>2];W=L[e+16>>2];X=L[b+24>>2];da=L[b+20>>2];ea=L[b+16>>2];r=J[c+20>>1];i=0;while(1){w=i+r|0;l=y+(w<<6)|0;k=L[l+24>>2];o=O(q-k);p=O(o*o);o=L[l+16>>2];u=O(A-o);S=O(u*u);u=L[l+20>>2];D=O(M-u);D=O(p+O(S+O(D*D)));D=Dp;R=x;D=x?p:D;p=O(X-k);S=O(p*p);p=O(ea-o);_=O(p*p);p=O(da-u);p=O(S+O(_+O(p*p)));x=D>p;k=O(K-k);S=O(k*k);k=O(W-o);o=O(k*k);k=O(E-u);x=(O(S+O(o+O(k*k)))<(x?p:D)?3:x?2:R)<<2;R=x|f+96;k=L[l+12>>2];if(L[R>>2]>k){H[(x|f- -64)>>2]=w;L[R>>2]=k}i=i+1|0;if((g|0)!=(i|0)){continue}break}}c=H[c+12>>2];if(c){continue}break}H[f+56>>2]=0;H[f+60>>2]=0;H[f+48>>2]=0;H[f+52>>2]=0;H[f+40>>2]=0;H[f+44>>2]=0;H[f+32>>2]=0;H[f+36>>2]=0;H[f+24>>2]=0;H[f+28>>2]=0;H[f+16>>2]=0;H[f+20>>2]=0;H[f+8>>2]=0;H[f+12>>2]=0;H[f>>2]=0;H[f+4>>2]=0;c=H[f+76>>2];H[d+12>>2]=H[f+72>>2];H[d+16>>2]=c;c=H[f+68>>2];H[d+4>>2]=H[f+64>>2];H[d+8>>2]=c;F[f+H[f+64>>2]|0]=1;F[f+H[f+68>>2]|0]=1;F[f+H[f+72>>2]|0]=1;F[f+H[f+76>>2]|0]=1;H[f+80>>2]=0;H[f+84>>2]=0;H[f+112>>2]=2139095039;H[f+116>>2]=2139095039;d=H[P>>2];if(d){break j}break i}while(1){b=J[c+22>>1];k:{if(!b){break k}s=b&3;e=J[c+20>>1];g=0;l:{if(b-1>>>0<3){b=0;break l}P=b&65532;b=0;l=0;while(1){r=z+(i<<2)|0;H[r+8>>2]=e+(b|1);H[r+4>>2]=b+e;H[r+12>>2]=e+(b|2);H[r+16>>2]=e+(b|3);b=b+4|0;i=i+4|0;l=l+4|0;if((P|0)!=(l|0)){continue}break}}if(!s){break k}while(1){H[(z+(i<<2)|0)+4>>2]=b+e;b=b+1|0;i=i+1|0;g=g+1|0;if((s|0)!=(g|0)){continue}break}}c=H[c+12>>2];if(c){continue}break}H[z>>2]=d;break h}while(1){i=J[d+22>>1];if(i){r=J[d+20>>1];b=0;while(1){e=b+r|0;m:{if(I[e+f|0]){break m}q=L[f+112>>2];k=L[(y+(e<<6)|0)+12>>2];n:{if(q>k){g=4;l=H[f+80>>2];c=v;break n}q=L[f+116>>2];if(!(k>2];c=m}H[f+84>>2]=l;L[f+116>>2]=q;L[c>>2]=k;H[(f- -64|0)+(g<<2)>>2]=e}b=b+1|0;if((i|0)!=(b|0)){continue}break}}d=H[d+12>>2];if(d){continue}break}}b=H[f+84>>2];c=s+Z|0;H[c>>2]=H[f+80>>2];H[c+4>>2]=b;H[z>>2]=6}Q=Q+1|0;if((C|0)!=(Q|0)){continue}break}break g}Ky(n+1068|0,C);h=0}H[n+168>>2]=h;Oa=f+128|0;H[j+56>>2]=0;H[j+60>>2]=0;H[j+48>>2]=0;H[j+52>>2]=0;H[j+40>>2]=0;H[j+44>>2]=0;H[j+32>>2]=0;H[j+36>>2]=0;H[j+24>>2]=0;H[j+28>>2]=0;H[j+16>>2]=0;H[j+20>>2]=0;H[j+8>>2]=0;H[j+12>>2]=0;H[j>>2]=0;H[j+4>>2]=0;v=H[j+232>>2];o:{p:{if(v){e=0;while(1){m=(j- -64|0)+N(e,28)|0;b=H[m>>2];if(b){c=0;g=0;if(b-1>>>0>=3){f=b&-4;l=0;while(1){d=m+4|0;h=g<<2;F[H[d+h>>2]+j|0]=1;F[H[d+(h|4)>>2]+j|0]=1;F[H[d+(h|8)>>2]+j|0]=1;F[H[d+(h|12)>>2]+j|0]=1;g=g+4|0;l=l+4|0;if((f|0)!=(l|0)){continue}break}}d=b&3;if(d){while(1){F[H[(m+(g<<2)|0)+4>>2]+j|0]=1;g=g+1|0;c=c+1|0;if((d|0)!=(c|0)){continue}break}}Y=b+Y|0}e=e+1|0;if((v|0)!=(e|0)){continue}break}l=t+11852|0;g=(Y<<1)+15&-16;if(g>>>0<16385){break p}h=Nx(H[l>>2],g);break o}g=0;l=t+11852|0}c=H[a+32>>2];q:{b=H[t+11856>>2];if(b){e=H[t+11860>>2];d=e+g|0;if(d>>>0<16385){break q}}h=Ox(H[t+11852>>2],c+11836|0);H[t+11860>>2]=g;H[t+11856>>2]=h;break o}H[t+11860>>2]=d;h=b+e|0}H[V+32>>2]=h;c=0;if(B){d=t+16|0;g=0;while(1){if(I[j+g|0]){if((c|0)!=(g|0)){b=d+(c<<6)|0;e=d+(g<<6)|0;L[b>>2]=L[e>>2];L[b+4>>2]=L[e+4>>2];L[b+8>>2]=L[e+8>>2];L[b+12>>2]=L[e+12>>2];L[b+16>>2]=L[e+16>>2];L[b+20>>2]=L[e+20>>2];L[b+24>>2]=L[e+24>>2];L[b+28>>2]=L[e+28>>2];L[b+32>>2]=L[e+32>>2];L[b+36>>2]=L[e+36>>2];L[b+40>>2]=L[e+40>>2];m=H[e+48>>2];H[b+44>>2]=H[e+44>>2];H[b+48>>2]=m;m=H[e+56>>2];H[b+52>>2]=H[e+52>>2];H[b+56>>2]=m;H[b+60>>2]=H[e+60>>2];b=j+1280|0;H[b+(c<<2)>>2]=H[b+(g<<2)>>2]}G[(c<<1)+h>>1]=g;c=c+1|0}g=g+1|0;if((B|0)!=(g|0)){continue}break}}b=H[a+108>>2];e=H[H[V+8>>2]+52>>2];b=H[b+32>>2]+(H[b+((e&7)<<2)>>2]+(e>>>3|0)<<4)|0;Tx(U,c,0,b+12|0,b,b+4|0,j+1276|0,b+8|0,c<<2,H[a+104>>2],0,0,j+1280|0,b+13|0,0,H[a+32>>2]+11836|0,l,0,0,0,0,0);Oa=j+1536|0;T=T+1|0;if(($|0)!=(T|0)){continue}break}}a=H[H[a+28>>2]+336>>2];H[t>>2]=H[a>>2];H[a>>2]=t}function Y$(a,b,c,d,e,f,g,h){var i=0,j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=0,r=0,s=O(0),t=O(0),u=0,v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=0,B=0,C=O(0),D=O(0),E=O(0),G=O(0),J=O(0),K=0;A=Oa-16|0;E=L[b>>2];y=L[a>>2];t=L[c+4>>2];l=L[c>>2];j=L[h>>2];s=L[c+8>>2];k=O(-s);a:{if(j>k){K=1;F[A+12|0]=1;b:{n=O(-l);if(!(y>=(l>n?l:n))){break b}n=O(-t);if(!(E>=(n>2],48)+f|0;H[i+8>>2]=0;H[i+12>>2]=0;L[i+4>>2]=t;L[i>>2]=l;r=H[c+4>>2];i=N(H[g>>2],48)+f|0;H[i+16>>2]=H[c>>2];H[i+20>>2]=r;r=H[c+12>>2];H[i+24>>2]=H[c+8>>2];H[i+28>>2]=r;j=L[e+8>>2];r=H[e+4>>2];q=H[e>>2];i=H[g>>2];H[g>>2]=i+1;i=N(i,48)+f|0;H[i+32>>2]=q;H[i+36>>2]=r;L[i+44>>2]=k;L[i+40>>2]=j;j=L[h>>2];break a}F[A+8|0]=0;break a}F[A+8|0]=0;F[A+12|0]=0}k=L[c+20>>2];s=L[c+16>>2];o=L[c+24>>2];n=O(-o);c:{if(n=(s>w?s:w))){break d}w=O(-k);if(!(E>=(k>w?k:w))|!((n>2],48)+f|0;H[i+8>>2]=0;H[i+12>>2]=0;L[i+4>>2]=k;L[i>>2]=s;r=c+16|0;q=H[r+4>>2];i=N(H[g>>2],48)+f|0;H[i+16>>2]=H[r>>2];H[i+20>>2]=q;q=H[r+12>>2];H[i+24>>2]=H[r+8>>2];H[i+28>>2]=q;j=L[e+8>>2];r=H[e+4>>2];q=H[e>>2];i=H[g>>2];H[g>>2]=i+1;i=N(i,48)+f|0;H[i+32>>2]=q;H[i+36>>2]=r;L[i+44>>2]=n;L[i+40>>2]=j;j=L[h>>2];break c}F[A+9|0]=0;break c}F[A+9|0]=0;F[A+13|0]=0}n=L[c+36>>2];o=L[c+32>>2];m=L[c+40>>2];w=O(-m);e:{if(w=(o>v?o:v))){break f}v=O(-n);if(!(E>=(n>v?n:v))|!((m>w?m:w)<=O(3.4028234663852886e38))){break f}F[A+10|0]=1;i=N(H[g>>2],48)+f|0;H[i+8>>2]=0;H[i+12>>2]=0;L[i+4>>2]=n;L[i>>2]=o;r=c+32|0;q=H[r+4>>2];i=N(H[g>>2],48)+f|0;H[i+16>>2]=H[r>>2];H[i+20>>2]=q;q=H[r+12>>2];H[i+24>>2]=H[r+8>>2];H[i+28>>2]=q;j=L[e+8>>2];r=H[e+4>>2];q=H[e>>2];i=H[g>>2];H[g>>2]=i+1;i=N(i,48)+f|0;H[i+32>>2]=q;H[i+36>>2]=r;L[i+44>>2]=w;L[i+40>>2]=j;j=L[h>>2];break e}F[A+10|0]=0;break e}F[A+10|0]=0;F[A+14|0]=0}w=L[c+52>>2];m=L[c+48>>2];p=j;v=L[c+56>>2];j=O(-v);g:{if(p>j){F[A+15|0]=1;h:{p=O(-m);if(!(y>=(m>p?m:p))){break h}p=O(-w);if(!(E>=(p>2],48)+f|0;H[i+8>>2]=0;H[i+12>>2]=0;L[i+4>>2]=w;L[i>>2]=m;r=c+48|0;q=H[r+4>>2];i=N(H[g>>2],48)+f|0;H[i+16>>2]=H[r>>2];H[i+20>>2]=q;q=H[r+12>>2];H[i+24>>2]=H[r+8>>2];H[i+28>>2]=q;v=L[e+8>>2];r=H[e+4>>2];q=H[e>>2];i=H[g>>2];H[g>>2]=i+1;i=N(i,48)+f|0;H[i+32>>2]=q;H[i+36>>2]=r;L[i+44>>2]=j;L[i+40>>2]=v;break g}F[A+11|0]=0;break g}F[A+11|0]=0;F[A+15|0]=0}i:{r=H[g>>2];if((r|0)==4){break i}j=O(S(t,O(-3.4028234663852886e38)));j=j>k?j:k;j=j>n?j:n;v=j>w?j:w;j=O(R(t,O(3.4028234663852886e38)));k=js?k:s;k=k>o?k:o;D=k>m?k:m;w=L[d+8>>2];j=L[a>>2];k=O(R(l,O(3.4028234663852886e38)));k=kD){break j}k=L[b>>2];if(kv){break j}p=L[c+48>>2];o=L[c+52>>2];n=L[c>>2];s=L[c+4>>2];k:{if(p==j&o==k|n==j&s==k){break k}q=kO(0);i=0;if(!((B?l:x)>=(B?x:l))){break l}i=1}x=L[c+16>>2];m=L[c+20>>2];if(x==j&m==k){break k}B=u;u=kO(0);if(!((B?z:C)>=(B?C:z))){break m}if(i){break j}i=i+1|0}z=L[c+32>>2];l=L[c+36>>2];if(z==j&l==k){break k}B=u;u=kO(0);if(!((B?m:x)>=(B?x:m))){break n}if((i|0)==1){break j}i=i+1|0}o:{if((q|0)==(u|0)){break o}o=O(o-l);m=O(O(O(z+O(1.1920928955078125e-7))*o)+O(O(k-l)*O(p-z)));l=O(j*o);q=o>O(0);if(!((q?m:l)>=(q?l:m))){break o}if((i|0)!=1){break k}break j}if(!i){break j}}s=O(O(O(w*L[c+8>>2])+O(O(L[d>>2]*O(n-j))+O(L[d+4>>2]*O(s-k))))/w);n=O(-s);if(!(n>2])){break j}i=N(r,48)+f|0;H[i+8>>2]=0;H[i+12>>2]=0;L[i+4>>2]=k;L[i>>2]=j;i=N(H[g>>2],48)+f|0;L[i+16>>2]=j;L[i+20>>2]=k;L[i+24>>2]=s;H[i+28>>2]=0;k=L[e+8>>2];r=H[e+4>>2];q=H[e>>2];i=H[g>>2];H[g>>2]=i+1;i=N(i,48)+f|0;H[i+32>>2]=q;H[i+36>>2]=r;L[i+44>>2]=n;L[i+40>>2]=k;j=L[a>>2]}k=O(-E);s=O(-y);p:{if(jD|(kv)){break p}x=L[c+48>>2];m=L[c+52>>2];o=L[c>>2];n=L[c+4>>2];q:{if(x==j&m==k|o==j&n==k){break q}r=kO(0);i=0;if(!((u?p:z)>=(u?z:p))){break r}i=1}z=L[c+16>>2];l=L[c+20>>2];if(z==j&l==k){break q}u=q;q=kO(0);if(!((u?C:G)>=(u?G:C))){break s}if(i){break p}i=i+1|0}C=L[c+32>>2];p=L[c+36>>2];if(C==j&p==k){break q}u=q;q=kO(0);if(!((u?l:z)>=(u?z:l))){break t}if((i|0)==1){break p}i=i+1|0}u:{if((q|0)==(r|0)){break u}m=O(m-p);l=O(O(O(C+O(1.1920928955078125e-7))*m)+O(O(k-p)*O(x-C)));p=O(j*m);r=m>O(0);if(!((r?l:p)>=(r?p:l))){break u}if((i|0)!=1){break q}break p}if(!i){break p}}n=O(O(O(L[d+8>>2]*L[c+8>>2])+O(O(L[d>>2]*O(o-j))+O(L[d+4>>2]*O(E+n))))/w);o=O(-n);if(!(o>2])){break p}i=N(H[g>>2],48)+f|0;H[i+8>>2]=0;H[i+12>>2]=0;L[i+4>>2]=k;L[i>>2]=j;i=N(H[g>>2],48)+f|0;L[i+16>>2]=j;L[i+20>>2]=k;L[i+24>>2]=n;H[i+28>>2]=0;j=L[e+8>>2];r=H[e+4>>2];q=H[e>>2];i=H[g>>2];H[g>>2]=i+1;i=N(i,48)+f|0;H[i+32>>2]=q;H[i+36>>2]=r;L[i+44>>2]=o;L[i+40>>2]=j}r=!(s>D)&(s>2];if(jv){break v}D=L[c+48>>2];m=L[c+52>>2];o=L[c>>2];n=L[c+4>>2];w:{if(D==s&m==j|o==s&n==j){break w}q=jO(0);i=0;if(!((B?p:x)>=(B?x:p))){break x}i=1}x=L[c+16>>2];l=L[c+20>>2];if(x==s&l==j){break w}B=u;u=jO(0);if(!((B?z:C)>=(B?C:z))){break y}if(i){break v}i=i+1|0}z=L[c+32>>2];p=L[c+36>>2];if(z==s&p==j){break w}B=u;u=jO(0);if(!((B?l:x)>=(B?x:l))){break z}if((i|0)==1){break v}i=i+1|0}A:{if((q|0)==(u|0)){break A}m=O(m-p);l=O(O(O(z+O(1.1920928955078125e-7))*m)+O(O(j-p)*O(D-z)));p=O(m*s);q=m>O(0);if(!((q?l:p)>=(q?p:l))){break A}if((i|0)!=1){break w}break v}if(!i){break v}}n=O(O(O(L[d+8>>2]*L[c+8>>2])+O(O(L[d>>2]*O(y+o))+O(L[d+4>>2]*O(n-j))))/w);o=O(-n);if(!(o>2])){break v}i=N(H[g>>2],48)+f|0;H[i+8>>2]=0;H[i+12>>2]=0;L[i+4>>2]=j;L[i>>2]=s;i=N(H[g>>2],48)+f|0;L[i+16>>2]=s;L[i+20>>2]=j;L[i+24>>2]=n;H[i+28>>2]=0;j=L[e+8>>2];q=H[e+4>>2];u=H[e>>2];i=H[g>>2];H[g>>2]=i+1;i=N(i,48)+f|0;H[i+32>>2]=u;H[i+36>>2]=q;L[i+44>>2]=o;L[i+40>>2]=j}B:{if(!(r&!(kv){break B}l=L[c+48>>2];o=L[c+52>>2];n=L[c>>2];j=L[c+4>>2];C:{if(l==s&o==k|n==s&j==k){break C}r=kk;i=0;D:{if((r|0)==(q|0)){break D}m=O(j-o);t=O(O(O(l+O(1.1920928955078125e-7))*m)+O(O(k-o)*O(n-l)));v=O(m*s);u=m>O(0);i=0;if(!((u?t:v)>=(u?v:t))){break D}i=1}v=L[c+16>>2];m=L[c+20>>2];if(v==s&m==k){break C}u=q;q=kO(0);if(!((u?p:D)>=(u?D:p))){break E}if(i){break B}i=i+1|0}p=L[c+32>>2];t=L[c+36>>2];if(p==s&t==k){break C}u=q;q=kO(0);if(!((u?m:v)>=(u?v:m))){break F}if((i|0)==1){break B}i=i+1|0}G:{if((q|0)==(r|0)){break G}o=O(o-t);m=O(O(O(p+O(1.1920928955078125e-7))*o)+O(O(k-t)*O(l-p)));t=O(o*s);r=o>O(0);if(!((r?m:t)>=(r?t:m))){break G}if((i|0)!=1){break C}break B}if(!i){break B}}j=O(O(O(L[d+8>>2]*L[c+8>>2])+O(O(L[d>>2]*O(y+n))+O(L[d+4>>2]*O(E+j))))/w);n=O(-j);if(!(n>2])){break B}d=N(H[g>>2],48)+f|0;H[d+8>>2]=0;H[d+12>>2]=0;L[d+4>>2]=k;L[d>>2]=s;d=N(H[g>>2],48)+f|0;L[d+16>>2]=s;L[d+20>>2]=k;L[d+24>>2]=j;H[d+28>>2]=0;j=L[e+8>>2];i=H[e+4>>2];r=H[e>>2];d=H[g>>2];H[g>>2]=d+1;d=N(d,48)+f|0;H[d+32>>2]=r;H[d+36>>2]=i;L[d+44>>2]=n;L[d+40>>2]=j}z=O(-O(L[h>>2]+O(1.1920928955078125e-7)));C=L[b>>2];J=L[a>>2];d=3;h=0;while(1){a=(d<<4)+c|0;y=L[a+8>>2];E=L[a+4>>2];w=L[a>>2];a=(h<<4)+c|0;j=L[a+8>>2];n=L[a+4>>2];o=L[a>>2];H:{I:{if(!K){if(!I[(A+12|0)+d|0]){break H}i=0;b=I[(A+8|0)+d|0]!=0;break I}b=0;a=I[(A+8|0)+h|0];i=(a|0)!=0;if(!I[(A+12|0)+d|0]){break I}d=I[(A+8|0)+d|0];b=(d|0)!=0;if(!a){break I}if(d){break H}}w=O(w-o);m=O(-w);a=(mJ)){break H}m=O(E-n);E=O(-m);d=(m>E?m:E)C|k>n)){break H}E=O(y-j);y=O(-E);r=(yO(3.4028234663852886e38))){break H}y=O(O(1)/w);t=a?O(0):O(O(s-o)*y);l=a?O(3.4028234663852886e38):O(O(J-o)*y);y=l>t?t:l;p=O(O(1)/m);v=d?O(0):O(O(k-n)*p);p=d?O(3.4028234663852886e38):O(O(C-n)*p);D=p>v?v:p;y=y>=D?y:D;x=O(O(1)/E);D=r?O(0):O(O(z-j)*x);x=r?O(3.4028234663852886e38):O(O(O(3.4028234663852886e38)-j)*x);G=x>D?D:x;y=y>=G?y:G;y=y>O(0)?y:O(0);t=l=t?t:l;l=x=t?t:l;t=tt|y>O(1)){break H}if(!i){a=N(H[g>>2],48)+f|0;H[a+8>>2]=0;H[a+12>>2]=0;l=O(n+O(m*y));L[a+4>>2]=l;v=O(o+O(w*y));L[a>>2]=v;a=N(H[g>>2],48)+f|0;L[a+16>>2]=v;L[a+20>>2]=l;y=O(j+O(E*y));L[a+24>>2]=y;H[a+28>>2]=0;l=L[e+8>>2];d=H[e+4>>2];i=H[e>>2];a=H[g>>2];H[g>>2]=a+1;a=N(a,48)+f|0;H[a+32>>2]=i;H[a+36>>2]=d;L[a+44>>2]=-y;L[a+40>>2]=l}if(b){break H}a=N(H[g>>2],48)+f|0;H[a+8>>2]=0;H[a+12>>2]=0;n=O(n+O(m*t));L[a+4>>2]=n;o=O(o+O(w*t));L[a>>2]=o;a=N(H[g>>2],48)+f|0;L[a+16>>2]=o;L[a+20>>2]=n;j=O(j+O(E*t));L[a+24>>2]=j;H[a+28>>2]=0;n=L[e+8>>2];b=H[e+4>>2];d=H[e>>2];a=H[g>>2];H[g>>2]=a+1;a=N(a,48)+f|0;H[a+32>>2]=d;H[a+36>>2]=b;L[a+44>>2]=-j;L[a+40>>2]=n}a=h+1|0;if((a|0)==4){break i}K=I[a+(A+12|0)|0];d=h;h=a;continue}}}function Fu(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=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=0,u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),G=O(0),K=O(0),M=O(0),P=O(0),Q=O(0),R=O(0),S=O(0),T=O(0),U=O(0),V=O(0),W=O(0),X=O(0),Y=O(0),Z=0,_=O(0),$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0,Aa=0,Ba=0,Ca=O(0),Da=O(0);i=Oa-4944|0;Oa=i;f=H[f>>2];v=L[a+4>>2];L[i+4928>>2]=v;U=L[e>>2];u=L[c+20>>2];r=L[c+24>>2];n=L[c>>2];x=L[c+4>>2];o=L[c+8>>2];p=L[c+12>>2];q=L[c+16>>2];H[i+4908>>2]=0;L[i+4904>>2]=r;L[i+4900>>2]=u;L[i+4896>>2]=q;L[i+4892>>2]=p;L[i+4888>>2]=o;L[i+4884>>2]=x;L[i+4880>>2]=n;C=L[d+20>>2];B=L[d+24>>2];l=L[d>>2];m=L[d+4>>2];k=L[d+8>>2];j=L[d+12>>2];A=L[d+16>>2];H[i+4876>>2]=0;L[i+4872>>2]=B;L[i+4868>>2]=C;L[i+4864>>2]=A;L[i+4860>>2]=j;L[i+4856>>2]=k;L[i+4852>>2]=m;L[i+4848>>2]=l;E=O(O(O(o*l)-O(k*n))+O(O(x*j)-O(p*m)));y=O(O(O(x*k)-O(m*o))+O(O(n*j)-O(p*l)));w=O(O(O(n*m)-O(l*x))+O(O(o*j)-O(p*k)));s=n;n=O(-l);x=O(O(p*j)-O(O(O(s*n)-O(x*m))-O(k*o)));s=n;n=O(q-A);o=O(u-C);p=O(r-B);u=O(O(O(s*n)-O(o*m))-O(k*p));r=O(O(j*j)+O(-.5));q=O(O(O(r*n)+O(j*O(O(k*o)-O(m*p))))-O(l*u));V=O(q+q);q=O(V-L[f+16>>2]);C=O(-q);B=O(O(O(r*o)+O(j*O(O(l*p)-O(k*n))))-O(m*u));W=O(B+B);B=O(W-L[f+20>>2]);A=O(-B);j=O(O(O(j*O(O(m*n)-O(l*o)))+O(r*p))-O(k*u));X=O(j+j);j=O(X-L[f+24>>2]);m=O(-j);k=q>C?q:C;l=A=l?k:l;j=(j>m?j:m)>=O(0)?k:O(0);a:{if(O(O(x*L[f+12>>2])+O(O(w*L[f+8>>2])+O(O(y*L[f>>2])+O(E*L[f+4>>2]))))>2]=0;H[t+4>>2]=1065353216;t=i+4808|0;H[t>>2]=0;H[t+4>>2]=0;t=i+4800|0;H[t>>2]=0;H[t+4>>2]=1065353216;t=i+4792|0;H[t>>2]=0;H[t+4>>2]=0;t=i+4784|0;H[t>>2]=1065353216;H[t+4>>2]=1065353216;t=i+4768|0;H[t>>2]=1065353216;H[t+4>>2]=0;F[i+4824|0]=0;H[i+4776>>2]=0;H[i+4780>>2]=0;H[i+4760>>2]=0;H[i+4764>>2]=0;H[i+4752>>2]=1065353216;H[i+4756>>2]=0;t=L[b+4>>2]==O(1)&L[b+8>>2]==O(1)&L[b+12>>2]==O(1);if(!t){yW(i+4752|0,b+4|0,b+16|0)}o=L[d+20>>2];p=L[c+20>>2];u=L[d+24>>2];r=L[c+24>>2];q=L[a+8>>2];Ca=L[e>>2];Da=L[a+4>>2];C=L[d+16>>2];B=L[c+16>>2];j=L[d+8>>2];l=L[d+12>>2];m=L[d+4>>2];k=L[d>>2];K=L[c+8>>2];A=L[c+12>>2];Q=L[c+4>>2];s=L[c>>2];c=H[i+4940>>2];a=i+4744|0;H[a>>2]=H[i+4936>>2];H[a+4>>2]=c;H[i+4732>>2]=0;H[i+4716>>2]=0;n=O(r-u);z=O(n+n);n=O(B-C);D=O(n+n);n=O(p-o);G=O(n+n);Y=O(O(j*z)+O(O(k*D)+O(m*G)));n=O(O(l*l)+O(-.5));M=O(O(j*Y)+O(O(z*n)-O(l*O(O(k*G)-O(D*m)))));L[i+4664>>2]=M;P=O(s+s);R=O(A+A);S=O(q*O(O(K*P)-O(Q*R)));T=O(S+S);A=O(q*O(O(s*P)+O(O(A*R)+O(-1))));s=O(A+A);q=O(q*O(O(K*R)+O(P*Q)));K=O(q+q);Q=O(O(j*T)+O(O(k*s)+O(m*K)));R=O(O(j*Q)+O(O(T*n)-O(l*O(O(k*K)-O(s*m)))));L[i+4728>>2]=M-R;P=O(O(m*Y)+O(O(G*n)-O(l*O(O(j*D)-O(z*k)))));L[i+4660>>2]=P;_=O(O(m*Q)+O(O(K*n)-O(l*O(O(j*s)-O(T*k)))));L[i+4724>>2]=P-_;L[i+4712>>2]=M+R;L[i+4708>>2]=P+_;a=H[i+4932>>2];H[i+4736>>2]=H[i+4928>>2];H[i+4740>>2]=a;H[i+4668>>2]=0;H[i+4684>>2]=4;F[i+4688|0]=1;M=L[i+4736>>2];L[i+4680>>2]=M;L[i+4676>>2]=M;L[i+4672>>2]=M;z=O(O(k*Y)+O(O(D*n)-O(l*O(O(m*z)-O(G*j)))));L[i+4656>>2]=z;s=O(O(k*Q)+O(O(s*n)-O(l*O(O(m*T)-O(K*j)))));L[i+4720>>2]=z-s;L[i+4704>>2]=z+s;s=O(O(r-S)-u);s=O(s+s);z=O(O(B-A)-C);z=O(z+z);D=O(O(p-q)-o);D=O(D+D);G=O(O(j*s)+O(O(k*z)+O(m*D)));L[i+4644>>2]=O(j*G)+O(O(s*n)-O(l*O(O(k*D)-O(z*m))));L[i+4640>>2]=O(m*G)+O(O(D*n)-O(l*O(O(j*z)-O(s*k))));L[i+4648>>2]=Da+Ca;L[i+4636>>2]=O(k*G)+O(O(z*n)-O(l*O(O(m*s)-O(D*j))));u=O(O(S+r)-u);u=O(u+u);r=O(O(B+A)-C);r=O(r+r);o=O(O(p+q)-o);o=O(o+o);p=O(O(j*u)+O(O(k*r)+O(m*o)));L[i+4632>>2]=O(j*p)+O(O(u*n)-O(l*O(O(k*o)-O(r*m))));L[i+4628>>2]=O(m*p)+O(O(o*n)-O(l*O(O(j*r)-O(u*k))));L[i+4624>>2]=O(k*p)+O(O(r*n)-O(l*O(O(m*u)-O(o*j))));a=H[b+40>>2];H[f+28>>2]=0;L[f+24>>2]=X;L[f+20>>2]=W;L[f+16>>2]=V;L[f+12>>2]=x;L[f+8>>2]=w;L[f+4>>2]=E;L[f>>2]=y;F[f+62|0]=0;b=H[a+56>>2];H[i+932>>2]=0;L[i+3120>>2]=U;H[i+2960>>2]=2139095039;c=i+2928|0;H[i+2952>>2]=c;d=i+2944|0;H[d>>2]=0;H[d+4>>2]=0;H[i+2896>>2]=2139095039;e=i+2864|0;H[i+2888>>2]=e;d=i+2880|0;H[d>>2]=0;H[d+4>>2]=0;H[i+2832>>2]=2139095039;$=i+2800|0;H[i+2824>>2]=$;d=i+2816|0;H[d>>2]=0;H[d+4>>2]=0;H[i+2768>>2]=2139095039;aa=i+2736|0;H[i+2760>>2]=aa;d=i+2752|0;H[d>>2]=0;H[d+4>>2]=0;H[i+2704>>2]=2139095039;ba=i+2672|0;H[i+2696>>2]=ba;d=i+2688|0;H[d>>2]=0;H[d+4>>2]=0;H[i+2640>>2]=2139095039;ca=i+2608|0;H[i+2632>>2]=ca;d=i+2624|0;H[d>>2]=0;H[d+4>>2]=0;H[i+2576>>2]=2139095039;da=i+2544|0;H[i+2568>>2]=da;d=i+2560|0;H[d>>2]=0;H[d+4>>2]=0;H[i+2512>>2]=2139095039;ea=i+2480|0;H[i+2504>>2]=ea;d=i+2496|0;H[d>>2]=0;H[d+4>>2]=0;H[i+2448>>2]=2139095039;fa=i+2416|0;H[i+2440>>2]=fa;d=i+2432|0;H[d>>2]=0;H[d+4>>2]=0;H[i+2384>>2]=2139095039;ga=i+2352|0;H[i+2376>>2]=ga;d=i+2368|0;H[d>>2]=0;H[d+4>>2]=0;H[i+2320>>2]=2139095039;ha=i+2288|0;H[i+2312>>2]=ha;d=i+2304|0;H[d>>2]=0;H[d+4>>2]=0;H[i+2256>>2]=2139095039;ia=i+2224|0;H[i+2248>>2]=ia;d=i+2240|0;H[d>>2]=0;H[d+4>>2]=0;H[i+2192>>2]=2139095039;ja=i+2160|0;H[i+2184>>2]=ja;d=i+2176|0;H[d>>2]=0;H[d+4>>2]=0;H[i+2128>>2]=2139095039;ka=i+2096|0;H[i+2120>>2]=ka;d=i+2112|0;H[d>>2]=0;H[d+4>>2]=0;H[i+2064>>2]=2139095039;la=i+2032|0;H[i+2056>>2]=la;d=i+2048|0;H[d>>2]=0;H[d+4>>2]=0;H[i+2e3>>2]=2139095039;ma=i+1968|0;H[i+1992>>2]=ma;d=i+1984|0;H[d>>2]=0;H[d+4>>2]=0;H[i+1936>>2]=2139095039;na=i+1904|0;H[i+1928>>2]=na;d=i+1920|0;H[d>>2]=0;H[d+4>>2]=0;H[i+1872>>2]=2139095039;oa=i+1840|0;H[i+1864>>2]=oa;d=i+1856|0;H[d>>2]=0;H[d+4>>2]=0;H[i+1808>>2]=2139095039;pa=i+1776|0;H[i+1800>>2]=pa;d=i+1792|0;H[d>>2]=0;H[d+4>>2]=0;H[i+1744>>2]=2139095039;qa=i+1712|0;H[i+1736>>2]=qa;d=i+1728|0;H[d>>2]=0;H[d+4>>2]=0;H[i+1680>>2]=2139095039;ra=i+1648|0;H[i+1672>>2]=ra;d=i+1664|0;H[d>>2]=0;H[d+4>>2]=0;H[i+1616>>2]=2139095039;sa=i+1584|0;H[i+1608>>2]=sa;d=i+1600|0;H[d>>2]=0;H[d+4>>2]=0;H[i+1552>>2]=2139095039;ta=i+1520|0;H[i+1544>>2]=ta;d=i+1536|0;H[d>>2]=0;H[d+4>>2]=0;H[i+1488>>2]=2139095039;ua=i+1456|0;H[i+1480>>2]=ua;d=i+1472|0;H[d>>2]=0;H[d+4>>2]=0;H[i+1424>>2]=2139095039;va=i+1392|0;H[i+1416>>2]=va;d=i+1408|0;H[d>>2]=0;H[d+4>>2]=0;H[i+1360>>2]=2139095039;wa=i+1328|0;H[i+1352>>2]=wa;d=i+1344|0;H[d>>2]=0;H[d+4>>2]=0;H[i+1296>>2]=2139095039;xa=i+1264|0;H[i+1288>>2]=xa;d=i+1280|0;H[d>>2]=0;H[d+4>>2]=0;H[i+1232>>2]=2139095039;ya=i+1200|0;H[i+1224>>2]=ya;d=i+1216|0;H[d>>2]=0;H[d+4>>2]=0;H[i+1168>>2]=2139095039;za=i+1136|0;H[i+1160>>2]=za;d=i+1152|0;H[d>>2]=0;H[d+4>>2]=0;H[i+1104>>2]=2139095039;Aa=i+1072|0;H[i+1096>>2]=Aa;d=i+1088|0;H[d>>2]=0;H[d+4>>2]=0;H[i+1040>>2]=2139095039;Ba=i+1008|0;H[i+1032>>2]=Ba;d=i+1024|0;H[d>>2]=0;H[d+4>>2]=0;H[i+976>>2]=2139095039;d=i+944|0;H[i+968>>2]=d;H[i+960>>2]=0;H[i+964>>2]=0;F[i+80|0]=t;H[i+76>>2]=b;H[i+68>>2]=2;H[i+64>>2]=129276;H[i+72>>2]=i+4752;u=O(v*O(.0010000000474974513));L[i+3136>>2]=u;H[i+3160>>2]=f;H[i+3164>>2]=g;H[i+4560>>2]=0;H[i+3132>>2]=H[i+4924>>2];Z=H[i+4920>>2];b=i+3124|0;H[b>>2]=H[i+4916>>2];H[b+4>>2]=Z;Z=H[i+4840>>2];b=i+3140|0;H[b>>2]=H[i+4836>>2];H[b+4>>2]=Z;H[i+3148>>2]=H[i+4844>>2];H[i+3152>>2]=i+4880;H[i+3156>>2]=i+4848;S6(i+4432|0,255,128);H[i+4568>>2]=h;H[i+4564>>2]=0;H[i+3276>>2]=0;b=i+3268|0;H[b>>2]=0;H[b+4>>2]=0;n=L[i+4856>>2];w=L[i+4848>>2];E=L[i+4852>>2];x=L[i+4860>>2];m=L[i+4888>>2];k=L[i+4884>>2];o=L[i+4864>>2];p=L[i+4896>>2];l=L[i+4880>>2];y=L[i+4868>>2];v=L[i+4900>>2];j=L[i+4892>>2];r=L[i+4872>>2];q=L[i+4904>>2];H[i+3260>>2]=0;H[i+3244>>2]=0;H[i+3228>>2]=0;H[i+3212>>2]=0;H[i+3264>>2]=g;H[i+3112>>2]=e;H[i+3108>>2]=$;H[i+3104>>2]=aa;H[i+3100>>2]=ba;H[i+3096>>2]=ca;H[i+3092>>2]=da;H[i+3088>>2]=ea;H[i+3084>>2]=fa;H[i+3080>>2]=ga;H[i+3076>>2]=ha;H[i+3072>>2]=ia;H[i+3068>>2]=ja;H[i+3064>>2]=ka;H[i+3060>>2]=la;H[i+3056>>2]=ma;H[i+3052>>2]=na;H[i+3048>>2]=oa;H[i+3044>>2]=pa;H[i+3040>>2]=qa;H[i+3036>>2]=ra;H[i+3032>>2]=sa;H[i+3028>>2]=ta;H[i+3024>>2]=ua;H[i+3020>>2]=va;H[i+3016>>2]=wa;H[i+3012>>2]=xa;H[i+3008>>2]=ya;H[i+3004>>2]=za;H[i+3e3>>2]=Aa;H[i+2996>>2]=Ba;H[i+2992>>2]=d;H[i+3116>>2]=c;C=O(-l);o=O(o-p);p=O(y-v);y=O(r-q);v=O(O(O(C*o)-O(p*k))-O(m*y));r=O(O(j*j)+O(-.5));q=O(O(O(j*O(O(k*o)-O(l*p)))+O(r*y))-O(m*v));L[i+3256>>2]=q+q;q=O(O(O(r*p)+O(j*O(O(l*y)-O(m*o))))-O(k*v));L[i+3252>>2]=q+q;o=O(O(O(r*o)+O(j*O(O(m*p)-O(k*y))))-O(l*v));L[i+3248>>2]=o+o;v=O(O(O(m*E)-O(k*n))+O(O(j*w)-O(l*x)));o=O(v+v);p=O(O(O(l*n)-O(m*w))+O(O(j*E)-O(k*x)));y=O(p+p);v=O(O(1)-O(v*o));r=O(p*y);L[i+3240>>2]=v-r;l=O(O(O(k*w)-O(l*E))+O(O(j*n)-O(m*x)));q=O(l*y);j=O(O(j*x)-O(O(O(C*w)-O(E*k))-O(m*n)));m=O(j*o);L[i+3236>>2]=q-m;k=O(l*o);n=O(j*y);L[i+3232>>2]=k+n;L[i+3224>>2]=q+m;m=O(l+l);l=O(l*m);L[i+3220>>2]=v-l;w=O(p*o);j=O(j*m);L[i+3216>>2]=w-j;L[i+3208>>2]=k-n;L[i+3204>>2]=w+j;L[i+3200>>2]=O(O(1)-r)-l;L[i+3184>>2]=u*u;H[i+3168>>2]=1065286107;j=O(U+L[i+4736>>2]);L[i+4576>>2]=j;L[i+4592>>2]=j*j;H[i+4608>>2]=i+4656;zU(i,i+4624|0);if(!t){aY(i+4752|0,i+36|0,i+48|0,i)}Ra[H[(J[a+4>>1]<<2)+129300>>2]](a,i,i- -64|0,1,1);e=H[i+932>>2];if(e){a=i+84|0;h=i+660|0;b=i+852|0;c=i+916|0;t=i+944|0;while(1){q0(t,a,H[b>>2],I[c|0]);c=c+1|0;b=b+4|0;h=h+12|0;a=a+36|0;e=e-1|0;if(e){continue}break}H[i+932>>2]=0}e0(d,3,0);break a}a=0;H[i+124>>2]=0;L[i+120>>2]=X;L[i+116>>2]=W;H[i+108>>2]=0;H[i+92>>2]=0;m=O(E+E);k=O(w*m);j=O(y+y);l=O(x*j);L[i+100>>2]=k-l;L[i+88>>2]=k+l;k=O(O(1)-O(y*j));l=O(E*m);L[i+104>>2]=k-l;s=k;k=O(w+w);n=O(w*k);L[i+84>>2]=s-n;L[i+112>>2]=V;H[i+76>>2]=0;w=O(w*j);m=O(x*m);L[i+96>>2]=w+m;j=O(E*j);k=O(x*k);L[i+80>>2]=j-k;L[i+72>>2]=w-m;L[i+68>>2]=j+k;L[i+64>>2]=O(O(1)-l)-n;L[i+4752>>2]=v*O(.05000000074505806);L[i>>2]=v+U;if(!I[f+62|0]){break a}while(1){c=a+f|0;b=I[c+56|0];d=f+N(b,400)|0;f1(i+4656|0,d- -64|0,i- -64|0,i+4752|0);b:{if(!H[d+448>>2]){d=I[f+62|0]-1|0;F[f+62|0]=d;d=f+(d&255)|0;e=I[d+56|0];F[d+56|0]=b;F[c+56|0]=e;a=a-1|0;break b}L[(f+(b<<2)|0)+32>>2]=L[i+4656>>2]}a=a+1|0;if(a>>>0>2]=i;H[w+32>>2]=0;H[w+36>>2]=0;H[w+40>>2]=0;H[w+44>>2]=0;H[w+24>>2]=0;H[w+28>>2]=0;i=0;G[w+20>>1]=0;H[w+16>>2]=-1;H[w+8>>2]=0;H[w+12>>2]=0;H[w+48>>2]=2139095039;l=L[c+36>>2];G[w>>1]=I[a+299|0]?1283:1027;n=w+8|0;A=w+60|0;U=Oa-48|0;Oa=U;l=l>2]){case 0:k=L[e+4>>2];H[U+40>>2]=0;L[U+36>>2]=k;H[U+32>>2]=2;G[U+24>>1]=J[w>>1];D=DW(g,h,U+32|0,f,d,l,n,A,U+24|0);break a;case 2:G[U+16>>1]=J[w>>1];D=DW(g,h,e,f,d,l,n,A,U+16|0);break a;case 3:break b;default:break a}}D=J[w>>1];if(D&256){G[U+8>>1]=D;j=Oa-80|0;Oa=j;K=L[f+4>>2];v=O(K+K);p=L[f+8>>2];m=O(v*p);q=L[f>>2];y=O(q+q);x=L[f+12>>2];k=O(y*x);L[j+44>>2]=m-k;L[j+36>>2]=m+k;k=O(O(1)-O(q*y));t=O(K*v);L[j+48>>2]=k-t;m=k;k=O(p+p);r=O(p*k);L[j+32>>2]=m-r;p=O(y*p);q=O(v*x);L[j+40>>2]=p+q;m=O(y*K);k=O(k*x);L[j+28>>2]=m-k;L[j+24>>2]=p-q;L[j+20>>2]=m+k;L[j+16>>2]=O(O(1)-t)-r;L[j+52>>2]=L[f+16>>2];L[j+56>>2]=L[f+20>>2];L[j+60>>2]=L[f+24>>2];L[j+64>>2]=L[e+4>>2];L[j+68>>2]=L[e+8>>2];L[j+72>>2]=L[e+12>>2];G[j+8>>1]=J[U+8>>1];s=j+16|0;m=l;o=Oa-96|0;Oa=o;c:{if(!g){d=0;break c}T=L[s+40>>2];C=L[s+44>>2];V=L[s+20>>2];X=L[s+16>>2];e=J[j+8>>1];r=L[s+36>>2];Y=L[s+8>>2];Z=L[s>>2];ba=L[s+4>>2];ca=L[s+12>>2];da=L[s+24>>2];E=L[d>>2];_=L[s+28>>2];K=L[d+4>>2];$=L[s+32>>2];y=L[d+8>>2];v=O(O(O(da*E)+O(_*K))+O($*y));L[o+88>>2]=v;x=O(O(O(ca*E)+O(X*K))+O(V*y));L[o+84>>2]=x;t=O(O(O(Z*E)+O(ba*K))+O(Y*y));L[o+80>>2]=t;p=O(t*m);L[o+64>>2]=p;q=O(x*m);L[o+68>>2]=q;k=O(v*m);L[o+72>>2]=k;L[n+40>>2]=m;l=O(1);L[o+56>>2]=v!=O(0)?O(O(1)/k):O(0);L[o+52>>2]=x!=O(0)?O(O(1)/q):O(0);L[o+48>>2]=t!=O(0)?O(O(1)/p):O(0);p=O(-r);q=O(O(da*p)-O(_*T));k=O(O(O(P(v))*L[s+56>>2])+O(O(O(P(t))*L[s+48>>2])+O(O(P(x))*L[s+52>>2])));D=e&128;f=!D;pa=A?H[A>>2]:pa;fa=O(q-O($*C));ga=O(O(O(ca*p)-O(X*T))-O(V*C));R=O(O(O(Z*p)-O(ba*T))-O(Y*C));qa=s+48|0;x=O(O(C*y)+O(O(r*E)+O(K*T)));t=O(k+O(.0020000000949949026));ea=O(x-t);e=0;d:{while(1){e:{ra=ja?(ja|0)==(pa|0)?0:ja:pa;A=N(ra,36)+h|0;S=L[A+8>>2];y=L[d+8>>2];aa=L[A>>2];v=L[d>>2];Q=L[A+4>>2];q=L[d+4>>2];r=O(O(S*y)+O(O(aa*v)+O(Q*q)));T=L[A+20>>2];C=L[A+12>>2];E=L[A+16>>2];p=O(O(T*y)+O(O(C*v)+O(q*E)));k=p>r?r:p;K=L[A+32>>2];ha=O(K*y);y=L[A+24>>2];ia=O(y*v);v=L[A+28>>2];q=O(ha+O(ia+O(q*v)));f:{if(O(t+O(x+O(l*m)))<(k>2]=fa+O(O(O(da*y)+O(_*v))+O($*K));L[o+36>>2]=ga+O(O(O(ca*y)+O(X*v))+O(V*K));L[o+32>>2]=R+O(O(O(Z*y)+O(ba*v))+O(Y*K));L[o+28>>2]=fa+O(O(O(da*C)+O(_*E))+O($*T));L[o+24>>2]=ga+O(O(O(ca*C)+O(X*E))+O(V*T));L[o+20>>2]=R+O(O(O(Z*C)+O(ba*E))+O(Y*T));L[o+16>>2]=fa+O(O(O(da*aa)+O(_*Q))+O($*S));L[o+12>>2]=ga+O(O(O(ca*aa)+O(X*Q))+O(V*S));L[o+8>>2]=R+O(O(O(Z*aa)+O(ba*Q))+O(Y*S));H[o+4>>2]=2139095039;if(!k1(o+8|0,qa,o- -64|0,o+48|0,l,o+4|0,f)){break f}k=L[o+4>>2];if(!(k>1]=1026;H[n+8>>2]=ra;m=L[d>>2];k=L[d+4>>2];l=L[d+8>>2];H[n+40>>2]=0;L[n+36>>2]=-l;L[n+32>>2]=-k;L[n+28>>2]=-m;d=1;break d}H[n+8>>2]=ra;L[n+40>>2]=k*m;u=L[o+8>>2];B=O(L[o+20>>2]-u);l=L[o+12>>2];r=O(L[o+36>>2]-l);p=O(L[o+32>>2]-u);q=O(L[o+24>>2]-l);z=O(O(B*r)-O(p*q));l=L[o+16>>2];u=O(L[o+28>>2]-l);l=O(L[o+40>>2]-l);B=O(O(u*p)-O(l*B));u=O(O(q*l)-O(r*u));e=1;if(I[j+8|0]&64){break e}l=k}ja=ja+1|0;if((ja|0)!=(g|0)){continue}}break}d=2}f=(d|0)!=2;d=f|e;if(!e|f){break c}G[n+12>>1]=0;g:{if(!(I[j+8|0]&3)){break g}d=N(H[n+8>>2],36)+h|0;v=L[d+8>>2];x=L[d>>2];t=L[d+4>>2];r=L[d+20>>2];p=L[d+16>>2];q=L[d+12>>2];m=L[d+24>>2];k=L[d+28>>2];l=L[d+32>>2];L[o+40>>2]=fa+O(O(O(da*m)+O(_*k))+O($*l));L[o+36>>2]=ga+O(O(O(ca*m)+O(X*k))+O(V*l));L[o+28>>2]=fa+O(O(O(da*q)+O(_*p))+O($*r));L[o+24>>2]=ga+O(O(O(ca*q)+O(X*p))+O(V*r));L[o+16>>2]=fa+O(O(O(da*x)+O(_*t))+O($*v));L[o+12>>2]=ga+O(O(O(ca*x)+O(X*t))+O(V*v));L[o+8>>2]=R+O(O(O(Z*x)+O(ba*t))+O(Y*v));L[o+32>>2]=R+O(O(O(Z*m)+O(ba*k))+O(Y*l));L[o+20>>2]=R+O(O(O(Z*q)+O(ba*p))+O(Y*r));s1(n+16|0,n+28|0,qa,o+80|0,o+8|0,L[n+40>>2]);d=J[j+8>>1];if(d&2){p=L[n+36>>2];l=L[n+28>>2];q=L[n+32>>2];k=O(W(O(O(p*p)+O(O(l*l)+O(q*q)))));if(k>O(0)){k=O(O(1)/k);p=O(p*k);q=O(q*k);l=O(l*k)}if(!(!D|!(O(O(z*L[o+88>>2])+O(O(u*L[o+80>>2])+O(B*L[o+84>>2])))>O(0)))){p=O(-p);q=O(-q);l=O(-l)}v=L[s+24>>2];x=L[s>>2];t=L[s+12>>2];r=L[s+28>>2];z=L[s+4>>2];B=L[s+16>>2];u=L[s+32>>2];m=L[s+8>>2];k=L[s+20>>2];G[n+12>>1]=J[n+12>>1]|2;L[n+36>>2]=O(O(l*m)+O(q*k))+O(p*u);L[n+32>>2]=O(O(l*z)+O(q*B))+O(p*r);L[n+28>>2]=O(O(l*x)+O(q*t))+O(p*v);d=J[j+8>>1]}if(!(d&1)){break g}z=L[s+36>>2];B=L[s+24>>2];p=L[s+12>>2];q=L[s>>2];u=L[s+40>>2];m=L[s+28>>2];k=L[s+16>>2];l=L[s+4>>2];x=L[n+16>>2];t=L[n+20>>2];r=L[n+24>>2];L[n+24>>2]=O(O(O(x*L[s+8>>2])+O(t*L[s+20>>2]))+O(r*L[s+32>>2]))+L[s+44>>2];L[n+20>>2]=u+O(O(O(x*l)+O(t*k))+O(r*m));L[n+16>>2]=z+O(O(O(x*q)+O(t*p))+O(r*B));G[n+12>>1]=J[n+12>>1]|1}d=e}Oa=o+96|0;Oa=j+80|0;D=d&1;break a}G[U>>1]=D;D=d;B=l;j=Oa-288|0;Oa=j;h:{if(!g){e=0;break h}T=L[f+24>>2];C=L[f+20>>2];ea=L[e+8>>2];S=L[e+12>>2];d=J[U>>1];x=L[f+16>>2];E=L[D+8>>2];K=L[D>>2];y=L[D+4>>2];R=L[f+8>>2];aa=L[f+4>>2];v=L[f+12>>2];m=L[f>>2];Q=L[e+4>>2];H[j+224>>2]=0;H[j+216>>2]=0;H[j+220>>2]=0;H[j+208>>2]=0;H[j+212>>2]=0;H[j+204>>2]=0;L[j+200>>2]=S;L[j+196>>2]=ea;F[j+176|0]=0;H[j+172>>2]=3;H[j+144>>2]=0;H[j+148>>2]=0;H[j+152>>2]=0;H[j+156>>2]=0;L[j+192>>2]=Q;l=Q<=ea?Q:ea;k=l<=S?l:S;l=O(k*O(.05000000074505806));L[j+168>>2]=l;L[j+164>>2]=l;L[j+160>>2]=k*O(.15000000596046448);H[j+140>>2]=0;k=O(m+m);t=O(R*k);l=O(aa+aa);r=O(v*l);sa=O(t+r);z=O(l*R);p=O(k*v);ta=O(z-p);q=O(O(1)-O(m*k));u=O(aa*l);ua=O(q-u);ha=O(O(O(K*sa)+O(y*ta))+O(E*ua));L[j+136>>2]=ha*B;m=O(k*aa);l=O(R+R);k=O(v*l);va=O(m-k);l=O(R*l);wa=O(q-l);xa=O(z+p);ia=O(O(O(K*va)+O(y*wa))+O(E*xa));L[j+132>>2]=ia*B;ya=O(O(O(1)-u)-l);za=O(m+k);Aa=O(t-r);ka=O(O(O(K*ya)+O(y*za))+O(E*Aa));L[j+128>>2]=ka*B;l=O(-ha);k=O(S*(l>>7|0;ja=A?H[A>>2]:ja;K=O(k+O(0));ba=O(l-O(ua*T));ca=O(O(O(va*m)-O(wa*C))-O(xa*T));da=O(O(O(ya*m)-O(za*C))-O(Aa*T));y=L[f+24>>2];v=L[f+20>>2];x=L[f+16>>2];la=L[f+12>>2];ma=L[f+8>>2];na=L[f+4>>2];oa=L[f>>2];A=0;d=0;l=O(0);p=O(0);q=O(0);i:{j:{while(1){e=A?(A|0)==(ja|0)?0:A:ja;f=h+N(e,36)|0;R=L[f+32>>2];ea=L[f+24>>2];S=L[f+28>>2];_=O(da+O(O(Aa*R)+O(O(ya*ea)+O(za*S))));aa=L[f+20>>2];Q=L[f+12>>2];z=L[f+16>>2];Ba=O(da+O(O(Aa*aa)+O(O(ya*Q)+O(za*z))));m=O(_-Ba);T=L[f+8>>2];C=L[f>>2];E=L[f+4>>2];$=O(ca+O(O(xa*T)+O(O(va*C)+O(wa*E))));Ca=O(ca+O(O(xa*aa)+O(O(va*Q)+O(wa*z))));t=O($-Ca);fa=O(da+O(O(Aa*T)+O(O(ya*C)+O(za*E))));k=O(fa-Ba);ga=O(ca+O(O(xa*R)+O(O(va*ea)+O(wa*S))));r=O(ga-Ca);u=O(O(m*t)-O(k*r));S=O(ba+O(O(ua*R)+O(O(sa*ea)+O(ta*S))));Q=O(ba+O(O(ua*aa)+O(O(sa*Q)+O(ta*z))));z=O(S-Q);R=O(z*k);C=O(ba+O(O(ua*T)+O(O(sa*C)+O(ta*E))));k=O(C-Q);m=O(R-O(k*m));k=O(O(r*k)-O(t*z));k:{if(!ra&L[j+224>>2]<=O(O(u*L[j+136>>2])+O(O(k*L[j+128>>2])+O(m*L[j+132>>2])))){break k}E=O(O(S*ha)+O(O(_*ka)+O(ia*ga)));t=O(O(Q*ha)+O(O(Ba*ka)+O(ia*Ca)));z=t>E?E:t;r=O(O(C*ha)+O(O(fa*ka)+O(ia*$)));f=O(K+B)<(r>z?z:r);if(!(!(f|E>2])|(!(f|r>2])|!(f|t>2])))){if(f){break k}}F[j+64|0]=0;H[j+56>>2]=2139095039;H[j+60>>2]=5;H[j+124>>2]=0;H[j+108>>2]=0;H[j+92>>2]=0;H[j+44>>2]=0;H[j+48>>2]=0;H[j+52>>2]=2139095039;L[j+80>>2]=fa;L[j+96>>2]=Ba;L[j+112>>2]=_;t=O(O(O(fa+Ba)+_)*O(.33333298563957214));L[j+32>>2]=t;L[j+84>>2]=$;L[j+100>>2]=Ca;L[j+116>>2]=ga;r=O(O(O($+Ca)+ga)*O(.33333298563957214));L[j+36>>2]=r;L[j+88>>2]=C;L[j+104>>2]=Q;L[j+120>>2]=S;z=O(O(O(C+Q)+S)*O(.33333298563957214));L[j+40>>2]=z;H[j+24>>2]=126656;H[j+28>>2]=j+32;H[j+16>>2]=126608;H[j+20>>2]=j+144;H[j+12>>2]=0;L[j+8>>2]=z-L[j+152>>2];L[j+4>>2]=r-L[j+148>>2];L[j>>2]=t-L[j+144>>2];if(!TW(j+24|0,j+16|0,j,j+208|0,j+128|0,j+240|0,j+256|0,j+272|0,O(0))){break k}z=L[j+240>>2];if(z<=L[j+224>>2]){H[n+8>>2]=e;H[n+40>>2]=0;u=L[D>>2];m=L[D+4>>2];k=L[D+8>>2];G[n+12>>1]=2;L[n+36>>2]=-k;L[n+32>>2]=-m;L[n+28>>2]=-u;e=1;break i}Da=L[j+264>>2];Ea=L[j+260>>2];V=L[j+256>>2];X=L[j+280>>2];Y=L[j+276>>2];Z=L[j+272>>2];H[j+140>>2]=0;B=O(B*z);L[j+136>>2]=ha*B;L[j+132>>2]=ia*B;L[j+128>>2]=ka*B;pa=1;if(I[U|0]&64){break j}q=k;p=m;l=u;d=e}A=A+1|0;if((A|0)!=(g|0)){continue}break}e=2;break i}q=k;p=m;l=u;d=e;e=2}e=(e|0)!=2;if(e|!pa){break h}H[n+8>>2]=d;L[n+40>>2]=B;u=O(O(la*la)+O(-.5));m=O(O(ma*X)+O(O(oa*Z)+O(na*Y)));k=O(O(O(la*O(O(oa*Y)-O(Z*na)))+O(u*X))+O(ma*m));L[n+24>>2]=y+O(k+k);k=O(O(na*m)+O(O(u*Y)+O(la*O(O(ma*Z)-O(X*oa)))));L[n+20>>2]=v+O(k+k);k=O(O(oa*m)+O(O(u*Z)+O(la*O(O(na*X)-O(Y*ma)))));L[n+16>>2]=x+O(k+k);m=O(O(ma*Da)+O(O(oa*V)+O(na*Ea)));k=O(O(O(la*O(O(oa*Ea)-O(V*na)))+O(u*Da))+O(ma*m));k=O(k+k);r=k;t=O(k*k);k=O(O(oa*m)+O(O(u*V)+O(la*O(O(na*Da)-O(Ea*ma)))));B=O(k+k);k=O(O(na*m)+O(O(u*Ea)+O(la*O(O(ma*V)-O(Da*oa)))));m=O(k+k);k=O(O(1)/O(W(O(t+O(O(B*B)+O(m*m))))));u=O(r*k);L[n+36>>2]=-u;m=O(m*k);L[n+32>>2]=-m;k=O(B*k);L[n+28>>2]=-k;if(!(!qa|!(O(O(l*L[D+8>>2])+O(O(q*L[D>>2])+O(p*L[D+4>>2])))>O(0)))){L[n+36>>2]=u;L[n+32>>2]=m;L[n+28>>2]=k}G[n+12>>1]=3;e=1}Oa=j+288|0;D=e}Oa=U+48|0;l:{if(!D){break l}l=L[w+48>>2];if(l>=L[c+36>>2]){break l}L[c+36>>2]=l;L[c+24>>2]=L[w+36>>2];L[c+28>>2]=L[w+40>>2];L[c+32>>2]=L[w+44>>2];M[c>>3]=M[b+12>>3]+ +L[w+24>>2];M[c+8>>3]=M[b+20>>3]+ +L[w+28>>2];M[c+16>>3]=M[b+28>>3]+ +L[w+32>>2];d=H[w+16>>2];H[((H[a+96>>2]<<2)+a|0)+100>>2]=d;b=H[b+40>>2];H[c+40>>2]=b+d;H[c+44>>2]=H[(H[a+20>>2]+(b<<2)|0)+(d<<2)>>2];i=1}Oa=w- -64|0;return i}function $0(a,b,c,d,e){var f=O(0),g=0,h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=0,o=O(0),p=0,q=O(0),r=O(0),s=0,t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),G=O(0),J=O(0),K=O(0),M=O(0),P=O(0),Q=O(0),S=0;a:{b:{g=I[a+64|0];if(g){h=L[b+8>>2];f=L[b+4>>2];i=L[b>>2];l=L[c+8>>2];j=L[c+4>>2];o=L[c>>2];p=H[a+76>>2];q=L[e>>2];q=O(q*q);s=1;c:{while(1){e=N(n,48)+p|0;k=O(L[e+8>>2]-h);m=O(k*k);k=O(L[e>>2]-i);r=O(k*k);k=O(L[e+4>>2]-f);k=O(m+O(r+O(k*k)));r=O(L[e+24>>2]-l);m=O(r*r);r=O(L[e+16>>2]-o);t=O(r*r);r=O(L[e+20>>2]-j);r=O(m+O(t+O(r*r)));if(q>(k>2];H[e>>2]=H[b>>2];H[e+4>>2]=g;g=H[b+12>>2];H[e+8>>2]=H[b+8>>2];H[e+12>>2]=g;g=H[c+4>>2];n=N(n,48);e=n+H[a+76>>2]|0;H[e+16>>2]=H[c>>2];H[e+20>>2]=g;g=H[c+12>>2];H[e+24>>2]=H[c+8>>2];H[e+28>>2]=g;e=n+H[a+76>>2]|0;n=H[d+4>>2];H[e+32>>2]=H[d>>2];H[e+36>>2]=n;n=H[d+12>>2];H[e+40>>2]=H[d+8>>2];H[e+44>>2]=n;if(s){break a}n=I[a+64|0];break c}n=n+1|0;s=g>>>0>n>>>0;if((g|0)!=(n|0)){continue}break}n=g}if((n&255)>>>0>3){break b}}e=H[a+76>>2]+N(n&255,48)|0;n=H[b+4>>2];H[e>>2]=H[b>>2];H[e+4>>2]=n;n=H[b+12>>2];H[e+8>>2]=H[b+8>>2];H[e+12>>2]=n;e=H[c+4>>2];b=H[a+76>>2]+N(I[a+64|0],48)|0;H[b+16>>2]=H[c>>2];H[b+20>>2]=e;e=H[c+12>>2];H[b+24>>2]=H[c+8>>2];H[b+28>>2]=e;b=I[a+64|0];F[a+64|0]=b+1;a=H[a+76>>2]+N(b,48)|0;b=H[d+12>>2];H[a+40>>2]=H[d+8>>2];H[a+44>>2]=b;b=H[d+4>>2];H[a+32>>2]=H[d>>2];H[a+36>>2]=b;return 1}n=0;g=Oa-256|0;Oa=g;F[g+252|0]=0;H[g+248>>2]=0;e=H[a+76>>2];s=H[e+44>>2];H[g+40>>2]=H[e+40>>2];H[g+44>>2]=s;s=H[e+36>>2];H[g+32>>2]=H[e+32>>2];H[g+36>>2]=s;s=H[e+28>>2];H[g+24>>2]=H[e+24>>2];H[g+28>>2]=s;s=H[e+20>>2];H[g+16>>2]=H[e+16>>2];H[g+20>>2]=s;s=H[e+4>>2];H[g>>2]=H[e>>2];H[g+4>>2]=s;s=H[e+12>>2];H[g+8>>2]=H[e+8>>2];H[g+12>>2]=s;s=H[e+92>>2];H[g+88>>2]=H[e+88>>2];H[g+92>>2]=s;s=H[e+84>>2];H[g+80>>2]=H[e+80>>2];H[g+84>>2]=s;s=H[e+76>>2];H[g+72>>2]=H[e+72>>2];H[g+76>>2]=s;p=e- -64|0;S=H[p+4>>2];s=g- -64|0;H[s>>2]=H[p>>2];H[s+4>>2]=S;p=H[e+60>>2];H[g+56>>2]=H[e+56>>2];H[g+60>>2]=p;p=H[e+52>>2];H[g+48>>2]=H[e+48>>2];H[g+52>>2]=p;p=H[e+116>>2];H[g+112>>2]=H[e+112>>2];H[g+116>>2]=p;p=H[e+132>>2];H[g+128>>2]=H[e+128>>2];H[g+132>>2]=p;p=H[e+140>>2];H[g+136>>2]=H[e+136>>2];H[g+140>>2]=p;p=H[e+124>>2];H[g+120>>2]=H[e+120>>2];H[g+124>>2]=p;p=H[e+108>>2];H[g+104>>2]=H[e+104>>2];H[g+108>>2]=p;p=H[e+100>>2];H[g+96>>2]=H[e+96>>2];H[g+100>>2]=p;p=H[e+188>>2];H[g+184>>2]=H[e+184>>2];H[g+188>>2]=p;p=H[e+180>>2];H[g+176>>2]=H[e+176>>2];H[g+180>>2]=p;p=H[e+172>>2];H[g+168>>2]=H[e+168>>2];H[g+172>>2]=p;p=H[e+164>>2];H[g+160>>2]=H[e+160>>2];H[g+164>>2]=p;p=H[e+156>>2];H[g+152>>2]=H[e+152>>2];H[g+156>>2]=p;p=H[e+148>>2];H[g+144>>2]=H[e+144>>2];H[g+148>>2]=p;p=H[b+12>>2];H[g+200>>2]=H[b+8>>2];H[g+204>>2]=p;p=H[b+4>>2];H[g+192>>2]=H[b>>2];H[g+196>>2]=p;b=H[c+12>>2];H[g+216>>2]=H[c+8>>2];H[g+220>>2]=b;b=H[c+4>>2];H[g+208>>2]=H[c>>2];H[g+212>>2]=b;b=H[d+12>>2];H[g+232>>2]=H[d+8>>2];H[g+236>>2]=b;b=H[d+4>>2];H[g+224>>2]=H[d>>2];H[g+228>>2]=b;h=L[d+12>>2];f=L[g+44>>2];b=h>f;c=!b<<2;h=b?f:h;f=L[g+92>>2];b=h>f;c=b?1:c;h=b?f:h;f=L[g+140>>2];b=h>f;b=L[g+188>>2]<(b?f:h)?3:b?2:c;F[b+(g+248|0)|0]=1;b=g+N(b,48)|0;c=H[b+12>>2];H[e+8>>2]=H[b+8>>2];H[e+12>>2]=c;c=H[b+4>>2];H[e>>2]=H[b>>2];H[e+4>>2]=c;c=H[b+44>>2];H[e+40>>2]=H[b+40>>2];H[e+44>>2]=c;c=H[b+36>>2];H[e+32>>2]=H[b+32>>2];H[e+36>>2]=c;c=H[b+28>>2];H[e+24>>2]=H[b+24>>2];H[e+28>>2]=c;c=H[b+20>>2];H[e+16>>2]=H[b+16>>2];H[e+20>>2]=c;j=L[g+24>>2];b=H[a+76>>2];f=L[b+24>>2];h=O(j-f);m=O(h*h);o=L[g+16>>2];i=L[b+16>>2];h=O(o-i);k=O(h*h);q=L[g+20>>2];l=L[b+20>>2];h=O(q-l);h=O(m+O(k+O(h*h)));if(!I[g+249|0]){k=O(L[g+72>>2]-f);m=O(k*k);k=O(L[s>>2]-i);r=O(k*k);k=O(L[g+68>>2]-l);k=O(m+O(r+O(k*k)));n=k>h;h=n?k:h}if(!I[g+250|0]){k=O(L[g+120>>2]-f);m=O(k*k);k=O(L[g+112>>2]-i);r=O(k*k);k=O(L[g+116>>2]-l);k=O(m+O(r+O(k*k)));c=k>h;h=c?k:h;n=c?2:n}if(!I[g+251|0]){k=O(L[g+168>>2]-f);m=O(k*k);k=O(L[g+160>>2]-i);r=O(k*k);k=O(L[g+164>>2]-l);k=O(m+O(r+O(k*k)));c=k>h;h=c?k:h;n=c?3:n}if(!I[g+252|0]){m=h;h=O(L[g+216>>2]-f);f=O(h*h);h=O(L[g+208>>2]-i);i=O(h*h);h=O(L[g+212>>2]-l);n=m>2];H[b+56>>2]=H[c+8>>2];H[b+60>>2]=d;d=H[c+4>>2];H[b+48>>2]=H[c>>2];H[b+52>>2]=d;d=H[c+44>>2];H[b+88>>2]=H[c+40>>2];H[b+92>>2]=d;d=H[c+36>>2];H[b+80>>2]=H[c+32>>2];H[b+84>>2]=d;d=H[c+28>>2];H[b+72>>2]=H[c+24>>2];H[b+76>>2]=d;d=H[c+20>>2];b=b- -64|0;H[b>>2]=H[c+16>>2];H[b+4>>2]=d;b=H[a+76>>2];h=O(-3.4028234663852886e38);if(!I[g+248|0]){h=L[b+24>>2];l=O(j-h);f=L[b+16>>2];j=O(o-f);i=L[b+20>>2];o=O(q-i);h=O(L[b+72>>2]-h);f=O(L[b+64>>2]-f);i=O(L[b+68>>2]-i);q=O(O(h*h)+O(O(f*f)+O(i*i)));m=h;h=O(R(O(O(O(l*h)+O(O(j*f)+O(o*i)))/q),O(1)));h=q!=O(0)?h>O(0)?h:O(0):O(0);l=O(l-O(m*h));f=O(j-O(f*h));h=O(o-O(i*h));h=O(O(l*l)+O(O(f*f)+O(h*h)));c=h>O(-3.4028234663852886e38);h=c?h:O(-3.4028234663852886e38);n=c?0:n}if(!I[g+249|0]){f=L[b+24>>2];j=O(L[g+72>>2]-f);i=L[b+16>>2];o=O(L[g- -64>>2]-i);l=L[b+20>>2];q=O(L[g+68>>2]-l);f=O(L[b+72>>2]-f);i=O(L[b+64>>2]-i);l=O(L[b+68>>2]-l);k=O(O(f*f)+O(O(i*i)+O(l*l)));m=f;f=O(R(O(O(O(j*f)+O(O(o*i)+O(q*l)))/k),O(1)));f=k!=O(0)?f>O(0)?f:O(0):O(0);j=O(j-O(m*f));i=O(o-O(i*f));f=O(q-O(l*f));f=O(O(j*j)+O(O(i*i)+O(f*f)));c=f>h;h=c?f:h;n=c?1:n}if(!I[g+250|0]){f=L[b+24>>2];j=O(L[g+120>>2]-f);i=L[b+16>>2];o=O(L[g+112>>2]-i);l=L[b+20>>2];q=O(L[g+116>>2]-l);f=O(L[b+72>>2]-f);i=O(L[b+64>>2]-i);l=O(L[b+68>>2]-l);k=O(O(f*f)+O(O(i*i)+O(l*l)));m=f;f=O(R(O(O(O(j*f)+O(O(o*i)+O(q*l)))/k),O(1)));f=k!=O(0)?f>O(0)?f:O(0):O(0);j=O(j-O(m*f));i=O(o-O(i*f));f=O(q-O(l*f));f=O(O(j*j)+O(O(i*i)+O(f*f)));c=f>h;h=c?f:h;n=c?2:n}if(!I[g+251|0]){f=L[b+24>>2];j=O(L[g+168>>2]-f);i=L[b+16>>2];o=O(L[g+160>>2]-i);l=L[b+20>>2];q=O(L[g+164>>2]-l);f=O(L[b+72>>2]-f);i=O(L[b+64>>2]-i);l=O(L[b+68>>2]-l);k=O(O(f*f)+O(O(i*i)+O(l*l)));m=f;f=O(R(O(O(O(j*f)+O(O(o*i)+O(q*l)))/k),O(1)));f=k!=O(0)?f>O(0)?f:O(0):O(0);j=O(j-O(m*f));i=O(o-O(i*f));f=O(q-O(l*f));f=O(O(j*j)+O(O(i*i)+O(f*f)));c=f>h;h=c?f:h;n=c?3:n}if(!I[g+252|0]){f=L[b+24>>2];j=O(L[g+216>>2]-f);i=L[b+16>>2];o=O(L[g+208>>2]-i);l=L[b+20>>2];q=O(L[g+212>>2]-l);f=O(L[b+72>>2]-f);i=O(L[b+64>>2]-i);l=O(L[b+68>>2]-l);k=O(O(f*f)+O(O(i*i)+O(l*l)));m=h;h=O(R(O(O(O(j*f)+O(O(o*i)+O(q*l)))/k),O(1)));h=k!=O(0)?h>O(0)?h:O(0):O(0);f=O(j-O(f*h));j=O(f*f);f=O(o-O(i*h));h=O(q-O(l*h));n=m>2];H[b+104>>2]=H[c+8>>2];H[b+108>>2]=d;d=H[c+4>>2];H[b+96>>2]=H[c>>2];H[b+100>>2]=d;d=H[c+44>>2];H[b+136>>2]=H[c+40>>2];H[b+140>>2]=d;d=H[c+36>>2];H[b+128>>2]=H[c+32>>2];H[b+132>>2]=d;d=H[c+28>>2];H[b+120>>2]=H[c+24>>2];H[b+124>>2]=d;d=H[c+20>>2];H[b+112>>2]=H[c+16>>2];H[b+116>>2]=d;b=H[a+76>>2];h=O(-3.4028234663852886e38);c=0;while(1){if(!I[(g+248|0)+c|0]){M=L[b+120>>2];k=L[b+24>>2];r=O(M-k);d=g+N(c,48)|0;f=L[d+24>>2];j=O(f-k);P=L[b+112>>2];v=L[b+16>>2];w=O(P-v);i=L[d+16>>2];o=O(i-v);Q=L[b+116>>2];x=L[b+20>>2];y=O(Q-x);l=L[d+20>>2];t=O(l-x);q=O(O(r*j)+O(O(w*o)+O(y*t)));D=L[b+72>>2];z=O(D-k);E=L[b+64>>2];A=O(E-v);G=L[b+68>>2];B=O(G-x);C=O(O(z*j)+O(O(A*o)+O(B*t)));m=O(O(j*j)+O(O(o*o)+O(t*t)));d:{if(!(!(C=O(0))|!(j>=t))){break d}m=O(f-M);J=O(i-P);K=O(l-Q);u=O(O(z*m)+O(O(A*J)+O(B*K)));o=O(O(r*m)+O(O(w*J)+O(y*K)));m=O(O(m*m)+O(O(J*J)+O(K*K)));if(!(!(o>=O(0))|!(o>=u))){break d}if(!(!(j=O(0))))){m=f;f=O(C/O(C-j));j=O(m-O(k+O(z*f)));i=O(i-O(v+O(A*f)));f=O(l-O(x+O(B*f)));m=O(O(j*j)+O(O(i*i)+O(f*f)));break d}if(!(!(o<=u)|(!(O(O(j*o)-O(u*t))=O(0))))){m=f;f=O(q/O(q-o));j=O(m-O(k+O(r*f)));i=O(i-O(v+O(w*f)));f=O(l-O(x+O(y*f)));m=O(O(j*j)+O(O(i*i)+O(f*f)));break d}j=O(O(A*y)-O(w*B));o=O(O(B*r)-O(y*z));q=O(O(z*w)-O(r*A));r=O(O(j*j)+O(O(o*o)+O(q*q)));m=f;f=r>O(0)?O(O(O(j*O(k-f))+O(O(o*O(v-i))+O(q*O(x-l))))/r):O(0);j=O(m-O(m+O(j*f)));i=O(i-O(i+O(o*f)));f=O(l-O(l+O(q*f)));m=O(O(j*j)+O(O(i*i)+O(f*f)))}f=m;d=f>h;n=d?c:n;h=d?f:h}c=c+1|0;if((c|0)!=5){continue}break}d=(g+248|0)+n|0;e:{if(I[d|0]){F[a+64|0]=3;break e}c=1;F[d|0]=1;d=g+N(n,48)|0;e=H[d+12>>2];H[b+152>>2]=H[d+8>>2];H[b+156>>2]=e;e=H[d+4>>2];H[b+144>>2]=H[d>>2];H[b+148>>2]=e;e=H[d+44>>2];H[b+184>>2]=H[d+40>>2];H[b+188>>2]=e;e=H[d+36>>2];H[b+176>>2]=H[d+32>>2];H[b+180>>2]=e;e=H[d+28>>2];H[b+168>>2]=H[d+24>>2];H[b+172>>2]=e;e=H[d+20>>2];H[b+160>>2]=H[d+16>>2];H[b+164>>2]=e;f:{if(!I[g+248|0]){c=0;break f}if(!I[g+249|0]){break f}if(!I[g+250|0]){c=2;break f}if(!I[g+251|0]){c=3;break f}c=!I[g+252|0]<<2}a=H[a+76>>2];b=g+N(c,48)|0;h=L[b+8>>2];f=O(L[a+8>>2]-h);m=O(f*f);f=L[b>>2];i=O(L[a>>2]-f);j=O(i*i);i=L[b+4>>2];l=O(L[a+4>>2]-i);l=O(m+O(j+O(l*l)));l=l>2]-h);m=O(j*j);j=O(L[a+48>>2]-f);k=O(j*j);j=O(L[a+52>>2]-i);j=O(m+O(k+O(j*j)));d=l>j;e=d;l=d?j:l;j=O(L[a+104>>2]-h);m=O(j*j);j=O(L[a+96>>2]-f);k=O(j*j);j=O(L[a+100>>2]-i);j=O(m+O(k+O(j*j)));d=l>j;h=O(L[a+152>>2]-h);m=O(h*h);h=O(L[a+144>>2]-f);f=O(h*h);h=O(L[a+148>>2]-i);d=O(m+O(f+O(h*h)))<(d?j:l)?3:d?2:e;if(!(L[(N(d,48)+a|0)+44>>2]>L[b+44>>2])){break e}b=a+N(d,48)|0;a=g+N(c,48)|0;c=H[a+12>>2];H[b+8>>2]=H[a+8>>2];H[b+12>>2]=c;c=H[a+4>>2];H[b>>2]=H[a>>2];H[b+4>>2]=c;c=H[a+44>>2];H[b+40>>2]=H[a+40>>2];H[b+44>>2]=c;c=H[a+36>>2];H[b+32>>2]=H[a+32>>2];H[b+36>>2]=c;c=H[a+28>>2];H[b+24>>2]=H[a+24>>2];H[b+28>>2]=c;c=H[a+20>>2];H[b+16>>2]=H[a+16>>2];H[b+20>>2]=c}Oa=g+256|0}return 0}function BW(a,b,c,d,e,f,g,h,i,j){var k=0,l=0,m=0,n=O(0),o=O(0),p=O(0),q=0,r=O(0),s=0,t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),G=O(0),J=O(0),K=O(0),M=O(0),P=O(0),Q=O(0),S=O(0),T=O(0),U=O(0),V=O(0),X=O(0),Y=O(0),Z=O(0),_=O(0),$=O(0),aa=O(0),ba=O(0),ca=O(0),da=O(0),ea=0,fa=O(0),ga=O(0),ha=O(0),ia=O(0),ja=O(0),ka=O(0),la=O(0),ma=O(0),na=O(0),oa=O(0),pa=O(0),qa=O(0),ra=O(0),sa=O(0),ta=O(0),ua=O(0),va=O(0),wa=O(0),xa=O(0);l=Oa-288|0;Oa=l;k=Oa-272|0;Oa=k;H[k+248>>2]=0;H[k+252>>2]=0;H[k+240>>2]=0;H[k+244>>2]=0;P=L[d+8>>2];v=L[d+4>>2];M=L[d>>2];z=L[e+8>>2];w=L[e+4>>2];U=L[e>>2];H[k+224>>2]=1;m=H[a+8>>2];Q=L[m+52>>2];S=L[m+36>>2];x=L[m+20>>2];T=L[m+56>>2];C=L[m+40>>2];q=H[a+4>>2];A=L[q+56>>2];E=L[a+56>>2];ba=L[a+24>>2];G=L[a+40>>2];Y=L[a+48>>2];D=L[a+32>>2];J=L[m+24>>2];t=L[q+52>>2];K=L[a+52>>2];V=L[a+20>>2];Z=L[a+36>>2];X=L[m+48>>2];ka=L[m+32>>2];la=L[m>>2];$=L[m+16>>2];aa=L[m+4>>2];ma=L[m+8>>2];B=L[q+48>>2];na=L[a+16>>2];n=L[c+8>>2];o=L[c>>2];p=L[c+4>>2];m=H[b+4>>2];y=L[m+56>>2];ca=L[m+52>>2];da=L[m+72>>2];ea=m- -64|0;fa=L[ea>>2];ga=L[m+68>>2];r=L[m+88>>2];ha=L[m+80>>2];ia=L[m+84>>2];ja=L[m+48>>2];q=0;H[k+172>>2]=0;_=r;s=O(O(n*n)+O(O(o*o)+O(p*p)))>O(1.1920928955078125e-7);n=s?n:O(0);o=s?o:O(1);r=s?p:O(0);u=O(O(1)/O(W(O(O(n*n)+O(O(o*o)+O(r*r))))));n=O(n*u);p=O(o*u);o=O(r*u);L[k+168>>2]=O(_*n)+O(O(ha*p)+O(ia*o));L[k+164>>2]=O(da*n)+O(O(fa*p)+O(o*ga));L[k+160>>2]=O(y*n)+O(O(ja*p)+O(o*ca));s=EU(m,k+160|0);ca=L[ea>>2];da=L[m+80>>2];fa=L[m+84>>2];ga=L[m+52>>2];ha=L[m+68>>2];ia=L[m+88>>2];s=H[m+152>>2]+N(s,12)|0;r=L[s+8>>2];ja=L[m+56>>2];u=L[s>>2];oa=L[m+72>>2];y=L[s+4>>2];pa=L[m+48>>2];H[k+180>>2]=0;H[k+184>>2]=0;H[k+188>>2]=0;H[k+192>>2]=0;H[k+196>>2]=0;H[k+200>>2]=0;H[k+204>>2]=0;H[k+208>>2]=0;H[k+212>>2]=0;H[k+216>>2]=0;H[k+220>>2]=0;H[k+172>>2]=0;H[k+176>>2]=0;p=O(-p);A=O(O(O(ba*p)-O(G*o))-O(E*n))>O(0)?A:O(-A);B=O(O(O(na*p)-O(D*o))-O(Y*n))>O(0)?B:O(-B);n=O(O(O(V*p)-O(Z*o))-O(K*n))>O(0)?t:O(-t);o=O(T+O(O(C*A)+O(O(ma*B)+O(J*n))));p=O(O(ia*r)+O(O(ja*u)+O(y*oa)));T=O(o-p);L[k+168>>2]=T;t=O(Q+O(O(S*A)+O(O(aa*B)+O(n*x))));x=O(O(fa*r)+O(O(ga*u)+O(y*ha)));Q=O(t-x);L[k+164>>2]=Q;n=O(X+O(O(ka*A)+O(O(la*B)+O(n*$))));r=O(O(da*r)+O(O(pa*u)+O(y*ca)));S=O(n-r);L[k+160>>2]=S;H[k+116>>2]=0;H[k+120>>2]=0;H[k+124>>2]=0;H[k+128>>2]=0;H[k+132>>2]=0;H[k+136>>2]=0;H[k+140>>2]=0;H[k+144>>2]=0;H[k+148>>2]=0;H[k+152>>2]=0;H[k+156>>2]=0;H[k+108>>2]=0;H[k+112>>2]=0;L[k+104>>2]=o;L[k+100>>2]=t;L[k+96>>2]=n;H[k+52>>2]=0;H[k+56>>2]=0;H[k+60>>2]=0;H[k+64>>2]=0;H[k+68>>2]=0;H[k+72>>2]=0;H[k+76>>2]=0;H[k+80>>2]=0;H[k+84>>2]=0;H[k+88>>2]=0;H[k+92>>2]=0;H[k+44>>2]=0;H[k+48>>2]=0;L[k+40>>2]=p;L[k+36>>2]=x;L[k+32>>2]=r;u=O(-T);y=O(-Q);A=O(-S);x=O(O(T*T)+O(O(S*S)+O(Q*Q)));m=H[b+4>>2];n=L[m+24>>2];s=H[a+4>>2];o=L[s+24>>2];n=O((nka)){t=A;B=y;P=u;M=O(0);n=S;o=Q;v=T;break b}ba=O(n+i);la=O(ba*ba);i=O(O(U*O(0))+M);n=O(O(w*O(0))+v);o=O(O(z*O(0))+P);M=O(0);P=u;B=y;t=A;while(1){q=H[a+8>>2];$=L[q+56>>2];aa=L[q+40>>2];ma=L[q+24>>2];E=L[q+52>>2];Z=L[q+36>>2];r=L[s+56>>2];X=L[q+20>>2];w=L[s+52>>2];na=L[q+8>>2];G=L[q+48>>2];Y=L[q+32>>2];D=L[q>>2];J=L[q+16>>2];K=L[a+56>>2];V=L[a+24>>2];ca=L[a+40>>2];da=L[q+4>>2];C=L[s+48>>2];fa=L[a+48>>2];ga=L[a+16>>2];ha=L[a+32>>2];ia=L[a+52>>2];ja=L[a+20>>2];oa=L[a+36>>2];pa=L[m+52>>2];ra=L[m+56>>2];sa=L[m+72>>2];s=m- -64|0;ta=L[s>>2];ua=L[m+68>>2];va=L[m+88>>2];p=L[m+80>>2];v=L[m+84>>2];wa=L[m+48>>2];H[k+268>>2]=0;_=p;z=O(O(1)/O(W(O(O(u*u)+O(O(A*A)+O(y*y))))));p=O(A*z);U=O(-p);xa=v;v=O(y*z);z=O(u*z);L[k+264>>2]=O(O(_*U)-O(xa*v))-O(va*z);L[k+260>>2]=O(O(ta*U)-O(ua*v))-O(sa*z);L[k+256>>2]=O(O(wa*U)-O(pa*v))-O(ra*z);q=EU(m,k+256|0);_=G;r=O(O(K*z)+O(O(V*p)+O(v*ca)))>O(0)?r:O(-r);G=O(O(fa*z)+O(O(ga*p)+O(v*ha)))>O(0)?C:O(-C);w=O(O(ia*z)+O(O(ja*p)+O(v*oa)))>O(0)?w:O(-w);Y=O(_+O(O(Y*r)+O(O(D*G)+O(J*w))));q=H[m+152>>2]+N(q,12)|0;D=L[q+8>>2];J=L[q>>2];K=L[q+4>>2];V=O(i+O(O(L[m+80>>2]*D)+O(O(L[m+48>>2]*J)+O(K*L[s>>2]))));C=O(Y-V);Z=O(E+O(O(Z*r)+O(O(da*G)+O(w*X))));X=O(n+O(O(L[m+84>>2]*D)+O(O(L[m+52>>2]*J)+O(K*L[m+68>>2]))));E=O(Z-X);G=O($+O(O(aa*r)+O(O(na*G)+O(w*ma))));D=O(o+O(O(L[m+88>>2]*D)+O(O(L[m+56>>2]*J)+O(K*L[m+72>>2]))));w=O(G-D);r=O(O(O(O(p*O(-C))-O(v*E))-O(z*w))-ba);c:{if(!(r>O(0))){p=i;r=n;i=o;n=x;break c}m=0;J=L[e+8>>2];K=L[e>>2];$=L[e+4>>2];aa=O(O(z*J)+O(O(p*K)+O(v*$)));if(aa>=O(0)){break a}p=M;M=O(p-O(r/aa));if(!(M>p)){p=i;r=n;i=o;n=x;break c}if(M>O(1)){break a}B=L[d+8>>2];r=L[d+4>>2];p=L[d>>2];H[k+76>>2]=0;H[k+60>>2]=0;H[k+44>>2]=0;p=O(p+O(K*M));t=O(p-i);P=O(t+L[k+64>>2]);L[k+64>>2]=P;r=O(r+O($*M));n=O(r-n);x=O(n+L[k+68>>2]);L[k+68>>2]=x;i=O(B+O(J*M));o=O(i-o);B=O(o+L[k+72>>2]);L[k+72>>2]=B;w=O(t+L[k+48>>2]);L[k+48>>2]=w;C=O(n+L[k+52>>2]);L[k+52>>2]=C;E=O(o+L[k+56>>2]);L[k+56>>2]=E;t=O(t+L[k+32>>2]);L[k+32>>2]=t;n=O(n+L[k+36>>2]);L[k+36>>2]=n;o=O(o+L[k+40>>2]);L[k+40>>2]=o;D=L[k+96>>2];J=L[k+100>>2];K=L[k+104>>2];H[k+172>>2]=0;L[k+168>>2]=K-o;L[k+164>>2]=J-n;L[k+160>>2]=D-t;n=L[k+112>>2];o=L[k+116>>2];t=L[k+120>>2];H[k+188>>2]=0;L[k+184>>2]=t-E;L[k+180>>2]=o-C;L[k+176>>2]=n-w;n=L[k+128>>2];o=L[k+132>>2];t=L[k+136>>2];H[k+204>>2]=0;L[k+200>>2]=t-B;L[k+196>>2]=o-x;L[k+192>>2]=n-P;m=H[b+4>>2];t=L[m+56>>2];B=L[m+52>>2];P=L[m+72>>2];s=m- -64|0;x=L[s>>2];w=L[m+68>>2];n=L[m+88>>2];o=L[m+80>>2];C=L[m+84>>2];E=L[m+48>>2];H[k+268>>2]=0;_=n;n=O(-z);z=O(o*U);o=O(-v);L[k+264>>2]=O(_*n)+O(z+O(C*o));L[k+260>>2]=O(P*n)+O(O(x*U)+O(w*o));L[k+256>>2]=O(t*n)+O(O(E*U)+O(B*o));q=EU(m,k+256|0);q=H[m+152>>2]+N(q,12)|0;n=L[q+8>>2];o=L[q>>2];t=L[q+4>>2];D=O(i+O(O(L[m+88>>2]*n)+O(O(L[m+56>>2]*o)+O(t*L[m+72>>2]))));w=O(G-D);X=O(r+O(O(L[m+84>>2]*n)+O(O(L[m+52>>2]*o)+O(t*L[m+68>>2]))));E=O(Z-X);V=O(p+O(O(L[m+80>>2]*n)+O(O(L[m+48>>2]*o)+O(t*L[s>>2]))));C=O(Y-V);t=A;B=y;P=u;n=O(3.4028234663852886e38)}z=n;q=H[k+224>>2];s=q<<4;m=s+(k+96|0)|0;H[m+12>>2]=0;L[m+8>>2]=G;L[m+4>>2]=Z;L[m>>2]=Y;m=s+(k+32|0)|0;H[m+12>>2]=0;L[m+8>>2]=D;L[m+4>>2]=X;L[m>>2]=V;m=s+(k+160|0)|0;H[m+12>>2]=0;L[m+8>>2]=w;L[m+4>>2]=E;L[m>>2]=C;H[k+224>>2]=q+1;d:{e:{switch(q-1|0){case 0:y=L[k+168>>2];n=O(L[k+184>>2]-y);A=L[k+160>>2];o=O(L[k+176>>2]-A);v=L[k+164>>2];u=O(L[k+180>>2]-v);x=O(O(n*n)+O(O(o*o)+O(u*u)));if(x<=O(1.1920928955078125e-7)){H[k+224>>2]=1;m=H[k+164>>2];H[k+256>>2]=H[k+160>>2];H[k+260>>2]=m;m=H[k+172>>2];H[k+264>>2]=H[k+168>>2];H[k+268>>2]=m;break d}G=n;n=O(R(O(O(O(O(O(-A)*o)-O(u*v))-O(y*n))/x),O(1)));n=n>O(0)?n:O(0);L[k+264>>2]=y+O(G*n);L[k+260>>2]=v+O(u*n);L[k+256>>2]=A+O(o*n);break d;case 1:GU(k+256|0,k+160|0,k+96|0,k+32|0,k+224|0);break d;case 2:BZ(k+256|0,k+160|0,k+96|0,k+32|0,k+224|0);break d;default:break e}}L[k+264>>2]=w;L[k+260>>2]=E;L[k+256>>2]=C}v=L[k+264>>2];u=O(-v);o=L[k+260>>2];y=O(-o);n=L[k+256>>2];A=O(-n);x=O(O(v*v)+O(O(n*n)+O(o*o)));if(!(!(lax))){m=H[b+4>>2];s=H[a+4>>2];T=v;Q=o;S=n;o=i;n=r;i=p;continue}break}q=!(z>x);s=H[a+4>>2]}d=I[s+32|0];i=O(0);w=O(0);m=!(x>ka)|q;p=m?P:u;r=m?t:A;u=m?B:y;y=O(W(O(O(p*p)+O(O(r*r)+O(u*u)))));if(!(y<=O(1.1920928955078125e-7))){i=O(O(1)/y);qa=O(p*i);w=O(r*i);i=O(u*i)}H[l+268>>2]=0;L[l+264>>2]=-qa;L[l+260>>2]=-i;L[l+256>>2]=-w;L[l+240>>2]=M;H[l+252>>2]=H[k+236>>2];m=H[k+232>>2];H[l+244>>2]=H[k+228>>2];H[l+248>>2]=m;H[k+268>>2]=0;L[k+264>>2]=q?T:v;L[k+260>>2]=q?Q:o;L[k+256>>2]=q?S:n;m=H[k+252>>2];s=H[k+248>>2];H[k+24>>2]=s;H[k+28>>2]=m;q=H[k+244>>2];ea=H[k+240>>2];H[k+16>>2]=ea;H[k+20>>2]=q;H[k+8>>2]=s;H[k+12>>2]=m;H[k>>2]=ea;H[k+4>>2]=q;FU(k+160|0,k+96|0,k+32|0,k+256|0,k+16|0,k,H[k+224>>2]);n=L[H[a+4>>2]+16>>2];o=L[k+16>>2];p=L[k+20>>2];r=L[k+24>>2];H[l+284>>2]=0;L[l+280>>2]=r+(d?O(qa*n):O(-0));L[l+276>>2]=p+(d?O(i*n):O(-0));L[l+272>>2]=o+(d?O(w*n):O(-0));m=1}Oa=k+272|0;if(m){d=H[l+244>>2];H[f>>2]=H[l+240>>2];H[f+4>>2]=d;d=H[l+252>>2];H[f+8>>2]=H[l+248>>2];H[f+12>>2]=d;if(!(!j|L[l+240>>2]!=O(0))){j=H[a+4>>2];k=H[b+4>>2];L[l+224>>2]=O(L[j+16>>2]+L[k+16>>2])*O(100);F[l+215|0]=0;H[l+168>>2]=0;H[l+172>>2]=0;H[l+160>>2]=0;H[l+164>>2]=0;H[l+152>>2]=0;H[l+156>>2]=0;H[l+144>>2]=0;H[l+148>>2]=0;H[l+136>>2]=0;H[l+140>>2]=0;H[l+128>>2]=0;H[l+132>>2]=0;H[l+192>>2]=0;d=H[a+8>>2];H[l+56>>2]=d;H[l+48>>2]=126268;H[l+52>>2]=j;j=H[d+12>>2];H[l+72>>2]=H[d+8>>2];H[l+76>>2]=j;j=H[d+20>>2];H[l+80>>2]=H[d+16>>2];H[l+84>>2]=j;j=H[d+28>>2];H[l+88>>2]=H[d+24>>2];H[l+92>>2]=j;j=H[d+36>>2];H[l+96>>2]=H[d+32>>2];H[l+100>>2]=j;j=H[d+44>>2];H[l+104>>2]=H[d+40>>2];H[l+108>>2]=j;j=H[d+52>>2];H[l+112>>2]=H[d+48>>2];H[l+116>>2]=j;j=H[d+60>>2];H[l+120>>2]=H[d+56>>2];H[l+124>>2]=j;j=H[d+4>>2];H[l+64>>2]=H[d>>2];H[l+68>>2]=j;i=L[l+68>>2];L[l+68>>2]=L[l+80>>2];n=L[l+88>>2];o=L[l+72>>2];L[l+72>>2]=L[l+96>>2];L[l+80>>2]=i;L[l+96>>2]=o;L[l+88>>2]=L[l+100>>2];L[l+100>>2]=n;H[l+40>>2]=126016;H[l+44>>2]=k;f:{g:{if(CW(l+48|0,l+40|0,c,l+224|0,0,l+220|0,l+216|0,l+215|0,l+128|0)-5|0){break g}H[l+16>>2]=1065353216;c=H[l+28>>2];H[l+8>>2]=H[l+24>>2];H[l+12>>2]=c;c=H[l+20>>2];H[l>>2]=H[l+16>>2];H[l+4>>2]=c;if(wZ(a,b,l+220|0,l+216|0,I[l+215|0],0,l,l+128|0)-5>>>0<=1){break g}H[l+280>>2]=0;H[l+284>>2]=0;H[l+272>>2]=0;H[l+276>>2]=0;i=L[e+8>>2];n=L[e>>2];o=L[e+4>>2];H[l+268>>2]=0;p=O(O(1)/O(W(O(O(i*i)+O(O(n*n)+O(o*o))))));L[l+264>>2]=p*O(-i);L[l+260>>2]=p*O(-o);L[l+256>>2]=p*O(-n);i=O(0);break f}a=H[l+140>>2];H[l+280>>2]=H[l+136>>2];H[l+284>>2]=a;a=H[l+132>>2];H[l+272>>2]=H[l+128>>2];H[l+276>>2]=a;a=H[l+164>>2];H[l+256>>2]=H[l+160>>2];H[l+260>>2]=a;a=H[l+172>>2];H[l+264>>2]=H[l+168>>2];H[l+268>>2]=a;i=L[l+192>>2]}L[f>>2]=i>2];H[h>>2]=H[l+272>>2];H[h+4>>2]=a;a=H[l+284>>2];H[h+8>>2]=H[l+280>>2];H[h+12>>2]=a;a=H[l+260>>2];H[g>>2]=H[l+256>>2];H[g+4>>2]=a;a=H[l+268>>2];H[g+8>>2]=H[l+264>>2];H[g+12>>2]=a}Oa=l+288|0;return m}function Nz(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,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,G=0,M=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=O(0),ba=O(0),ca=0,da=0,ea=0,fa=0,ga=0,ha=0;e=Oa-1072|0;Oa=e;H[e+1048>>2]=H[b+12>>2];P=H[b+56>>2];H[e+1004>>2]=-128;H[e+1008>>2]=-128;H[e+972>>2]=-128;H[e+976>>2]=-128;H[e+940>>2]=-128;H[e+944>>2]=-128;H[e+908>>2]=-128;H[e+912>>2]=-128;H[e+876>>2]=-128;H[e+880>>2]=-128;H[e+844>>2]=-128;H[e+848>>2]=-128;H[e+812>>2]=-128;H[e+816>>2]=-128;H[e+780>>2]=-128;H[e+784>>2]=-128;H[e+748>>2]=-128;H[e+752>>2]=-128;H[e+716>>2]=-128;H[e+720>>2]=-128;H[e+684>>2]=-128;H[e+688>>2]=-128;H[e+652>>2]=-128;H[e+656>>2]=-128;H[e+620>>2]=-128;H[e+624>>2]=-128;H[e+588>>2]=-128;H[e+592>>2]=-128;H[e+556>>2]=-128;H[e+560>>2]=-128;H[e+524>>2]=-128;H[e+528>>2]=-128;H[e+492>>2]=-128;H[e+496>>2]=-128;H[e+460>>2]=-128;H[e+464>>2]=-128;H[e+428>>2]=-128;H[e+432>>2]=-128;H[e+396>>2]=-128;H[e+400>>2]=-128;H[e+364>>2]=-128;H[e+368>>2]=-128;H[e+332>>2]=-128;H[e+336>>2]=-128;H[e+300>>2]=-128;H[e+304>>2]=-128;H[e+268>>2]=-128;H[e+272>>2]=-128;H[e+236>>2]=-128;H[e+240>>2]=-128;H[e+204>>2]=-128;H[e+208>>2]=-128;H[e+172>>2]=-128;H[e+176>>2]=-128;H[e+140>>2]=-128;H[e+144>>2]=-128;H[e+108>>2]=-128;H[e+112>>2]=-128;H[e+76>>2]=-128;H[e+80>>2]=-128;H[e+44>>2]=-128;H[e+48>>2]=-128;H[e+12>>2]=-128;H[e+16>>2]=-128;W=H[b+40>>2];r=H[b+28>>2];X=H[b+16>>2];H[e+1040>>2]=0;H[e+1044>>2]=32;H[e+1068>>2]=d;H[e+1064>>2]=c;F[e+1033|0]=0;H[e+1036>>2]=e;fa=H[b>>2];_=H[b+44>>2];Q=H[b+48>>2];T=H[b+24>>2];$=H[b+32>>2];aa=L[b+104>>2];ba=L[b+100>>2];c=P+H[b+68>>2]|0;H[b+68>>2]=c;n=c-P|0;ca=H[b+36>>2];ga=fa-1|0;da=ga;k=P;while(1){ha=Y+ga|0;if(ha>>>0>U>>>0){w=Y?114016:113920;B=r+s|0;z=N(da-U|0,r);A=z+s|0;u=x;while(1){a:{if(H[b+88>>2]>=(u|0)){break a}c=3e4;if(H[b+88>>2]>=(u|0)){break a}while(1){if(H[b+88>>2]>=(u|0)){break a}c=c-1|0;if(c){continue}c=1e4;continue}}q=0;F[e+1032|0]=I[a+4|0]!=0|fa-U>>>0<4;if(Q){E=N(D,W);while(1){b:{if(H[b+72>>2]>=(l|0)){break b}c=3e4;if(H[b+72>>2]>=(l|0)){break b}while(1){if(H[b+72>>2]>=(l|0)){break b}c=c-1|0;if(c){continue}c=1e4;continue}}Z=0;C=(q<<2)+_|0;v=H[C>>2]+v|0;c:{if((v|0)<=(n|0)){break c}while(1){c=v-n|0;V=(c|0)<(k|0)?c:k;if((V|0)>0){t=n-E|0;G=V+t|0;while(1){y=0;d=0;i=0;ea=(t<<3)+ca|0;R=(H[ea>>2]<<5)+$|0;c=H[R+24>>2];h=c+383|0;i=h>>>0<383?1:i;h=(i&63)<<26|h>>>6;g=c>>>6|0;f=(i>>>6|0)-(g>>>0>h>>>0)|0;j=h-g|0;i=f;f=j+1|0;p=f?i:i+1|0;h=f;f=p;g=0;M=g;p=h&7;if(g|p){while(1){g=h;h=g-1|0;f=f-!g|0;c=c- -64|0;g=d;d=y+1|0;g=d?g:g+1|0;y=d;d=g;if((p|0)!=(y|0)|(M|0)!=(g|0)){continue}break}}g=J[ea+4>>1];if(!i&j>>>0>=7|i){while(1){c=c+512|0;f=f-(h>>>0<8)|0;h=h-8|0;if(f|h){continue}break}}d:{if(!g){break d}d=0;c=0;if(g-1>>>0>=3){f=g&65532;j=0;while(1){c=c+4|0;j=j+4|0;if((f|0)!=(j|0)){continue}break}}f=g&3;if(!f){break d}while(1){c=c+1|0;d=d+1|0;if((f|0)!=(d|0)){continue}break}}Ra[H[(J[ea+6>>1]<<2)+w>>2]](R,g,e+1032|0);t=t+1|0;if((G|0)>(t|0)){continue}break}}Z=Z+V|0;k=k-V|0;if(k){n=n+V|0}else{k=P;c=k+H[b+68>>2]|0;H[b+68>>2]=c;n=c-k|0}if((v|0)>(n|0)){continue}break}if(!Z){break c}H[b+72>>2]=H[b+72>>2]+Z}l=H[C>>2]+l|0;q=q+1|0;if((Q|0)!=(q|0)){continue}break}}e:{if(H[b+72>>2]>=(l|0)){break e}c=3e4;if(H[b+72>>2]>=(l|0)){break e}while(1){if(H[b+72>>2]>=(l|0)){break e}c=c-1|0;if(c){continue}c=1e4;continue}}s=r+s|0;if((s|0)>(m|0)){while(1){if((((o|0)<(s|0)?o:s)|0)>(m|0)){d=(o|0)<(B|0)?o:B;c=m;while(1){f=H[N(c-S|0,52)+T>>2];Ra[H[H[f>>2]+136>>2]](f,ba,aa,H[e+1064>>2],H[e+1068>>2],0,0,O(0));c=c+1|0;if((d|0)!=(c|0)){continue}break}c=d-m|0;if(c){H[b+88>>2]=c+H[b+88>>2]}m=d}if((m|0)==(o|0)){o=H[b+84>>2]+2|0;H[b+84>>2]=o;m=o-2|0}if((m|0)<(s|0)){continue}break}}u=r+u|0;B=r+B|0;D=D+1|0;S=r+S|0;U=U+1|0;if(ha>>>0>U>>>0){continue}break}x=x+z|0;s=A}da=da+1|0;Y=Y+1|0;if((Y|0)!=2){continue}break}i=H[b+52>>2];A=H[b+8>>2];a=H[b+76>>2]+32|0;H[b+76>>2]=a;f:{c=H[b+88>>2]>=(x|0);if(c|c){break f}c=3e4;while(1){if(H[b+88>>2]>=(x|0)){break f}c=c-1|0;if(c){continue}c=1e4;continue}}c=a-32|0;g:{a=H[b+72>>2]>=(l|0);if(a|a){break g}d=3e4;while(1){if(H[b+72>>2]>=(l|0)){break g}d=d-1|0;if(d){continue}d=1e4;continue}}a=32;d=0;if((c|0)<(r|0)){while(1){f=r-c|0;p=(f|0)<32?f:32;a=a-p|0;h:{if((f|0)<=0){break h}f=(p|0)>1?p:1;q=f&1;if((p|0)>=2){g=f&2147483646;j=0;while(1){h=N(c,52)+T|0;f=H[(H[H[h>>2]+24>>2]<<2)+135124>>2];if(f){Ra[f|0](h,H[e+1068>>2])}h=h+52|0;f=H[(H[H[h>>2]+24>>2]<<2)+135124>>2];if(f){Ra[f|0](h,H[e+1068>>2])}c=c+2|0;j=j+2|0;if((g|0)!=(j|0)){continue}break}}if(!q){break h}h=N(c,52)+T|0;f=H[(H[H[h>>2]+24>>2]<<2)+135124>>2];if(f){Ra[f|0](h,H[e+1068>>2])}c=c+1|0}if(!a){a=H[b+76>>2]+32|0;H[b+76>>2]=a;c=a-32|0;a=32}d=d+p|0;if((c|0)<(r|0)){continue}break}}j=c-r|0;if((X|0)>(j|0)){while(1){q=0;c=X-j|0;c=(a|0)<(c|0)?a:c;if((c|0)>0){while(1){a=j<<5;f=a+i|0;a=a+A|0;L[f>>2]=L[a>>2];L[f+4>>2]=L[a+4>>2];L[f+8>>2]=L[a+8>>2];L[f+16>>2]=L[a+16>>2];L[f+20>>2]=L[a+20>>2];L[f+24>>2]=L[a+24>>2];j=j+1|0;q=q+1|0;if((c|0)!=(q|0)){continue}break}}d=c+d|0;a=32;c=H[b+76>>2]+32|0;H[b+76>>2]=c;j=(c-r|0)-32|0;if((X|0)>(j|0)){continue}break}}if(d){H[b+80>>2]=H[b+80>>2]+d}i:{a=r+X|0;if((a|0)<=H[b+80>>2]|(a|0)<=H[b+80>>2]){break i}c=3e4;while(1){if((a|0)<=H[b+80>>2]){break i}c=c-1|0;if(c){continue}c=1e4;continue}}j:{if(K[b+4>>2]<2){q=s;break j}B=1;q=s;while(1){k:{if(H[b+88>>2]>=(x|0)){break k}c=3e4;if(H[b+88>>2]>=(x|0)){break k}while(1){if(H[b+88>>2]>=(x|0)){break k}c=c-1|0;if(c){continue}c=1e4;continue}}if(Q){C=N(D,W);u=0;while(1){l:{if(H[b+72>>2]>=(l|0)){break l}c=3e4;if(H[b+72>>2]>=(l|0)){break l}while(1){if(H[b+72>>2]>=(l|0)){break l}c=c-1|0;if(c){continue}c=1e4;continue}}a=0;G=(u<<2)+_|0;v=H[G>>2]+v|0;m:{if((v|0)<=(n|0)){break m}while(1){c=v-n|0;w=(c|0)<(k|0)?c:k;if((w|0)>0){t=n-C|0;R=w+t|0;while(1){y=0;d=0;p=0;z=(t<<3)+ca|0;M=(H[z>>2]<<5)+$|0;c=H[M+24>>2];h=c+383|0;p=h>>>0<383?1:p;h=(p&63)<<26|h>>>6;g=c>>>6|0;f=(p>>>6|0)-(g>>>0>h>>>0)|0;E=h-g|0;A=f;i=f;f=E+1|0;i=f?i:i+1|0;h=f;f=i;g=0;p=g;i=h&7;if(g|i){while(1){g=h;h=g-1|0;f=f-!g|0;c=c- -64|0;g=d;d=y+1|0;g=d?g:g+1|0;y=d;d=g;if((i|0)!=(y|0)|(p|0)!=(g|0)){continue}break}}g=J[z+4>>1];if(!A&E>>>0>=7|A){while(1){c=c+512|0;f=f-(h>>>0<8)|0;h=h-8|0;if(f|h){continue}break}}n:{if(!g){break n}d=0;c=0;if(g-1>>>0>=3){f=g&65532;j=0;while(1){c=c+4|0;j=j+4|0;if((f|0)!=(j|0)){continue}break}}f=g&3;if(!f){break n}while(1){c=c+1|0;d=d+1|0;if((f|0)!=(d|0)){continue}break}}Ra[H[(J[z+6>>1]<<2)+113920>>2]](M,g,e+1032|0);t=t+1|0;if((R|0)>(t|0)){continue}break}}a=a+w|0;k=k-w|0;if(k){n=n+w|0}else{k=P;c=k+H[b+68>>2]|0;H[b+68>>2]=c;n=c-k|0}if((v|0)>(n|0)){continue}break}if(!a){break m}H[b+72>>2]=H[b+72>>2]+a}l=H[G>>2]+l|0;u=u+1|0;if((Q|0)!=(u|0)){continue}break}}o:{if(H[b+72>>2]>=(l|0)){break o}c=3e4;if(H[b+72>>2]>=(l|0)){break o}while(1){if(H[b+72>>2]>=(l|0)){break o}c=c-1|0;if(c){continue}c=1e4;continue}}s=r+s|0;q=r+q|0;if((q|0)>(m|0)){while(1){if((((o|0)<(q|0)?o:q)|0)>(m|0)){a=(o|0)<(s|0)?o:s;c=m;while(1){d=H[N(c-S|0,52)+T>>2];Ra[H[H[d>>2]+136>>2]](d,ba,aa,H[e+1064>>2],H[e+1068>>2],1,0,O(0));c=c+1|0;if((a|0)!=(c|0)){continue}break}c=a-m|0;if(c){H[b+88>>2]=c+H[b+88>>2]}m=a}if((m|0)==(o|0)){o=H[b+84>>2]+2|0;H[b+84>>2]=o;m=o-2|0}if((m|0)<(q|0)){continue}break}}x=r+x|0;S=r+S|0;D=D+1|0;B=B+1|0;if(B>>>0>2]){continue}break}}z=H[b+140>>2];E=H[b+132>>2];H[e+1056>>2]=H[b+136>>2];H[e+1052>>2]=E;H[e+1060>>2]=z;F[e+1033|0]=1;p:{a=H[b+88>>2]>=(x|0);if(a|a){break p}c=3e4;while(1){if(H[b+88>>2]>=(x|0)){break p}c=c-1|0;if(c){continue}c=1e4;continue}}if(Q){R=N(D,W);u=0;while(1){q:{if(H[b+72>>2]>=(l|0)){break q}c=3e4;if(H[b+72>>2]>=(l|0)){break q}while(1){if(H[b+72>>2]>=(l|0)){break q}c=c-1|0;if(c){continue}c=1e4;continue}}a=0;M=(u<<2)+_|0;v=H[M>>2]+v|0;r:{if((v|0)<=(n|0)){break r}while(1){c=v-n|0;w=(c|0)<(k|0)?c:k;if((w|0)>0){t=n-R|0;x=w+t|0;while(1){y=0;d=0;i=0;C=(t<<3)+ca|0;p=(H[C>>2]<<5)+$|0;c=H[p+24>>2];h=c+383|0;i=h>>>0<383?1:i;h=(i&63)<<26|h>>>6;g=c>>>6|0;f=(i>>>6|0)-(g>>>0>h>>>0)|0;G=h-g|0;s=f;i=f;f=G+1|0;i=f?i:i+1|0;h=f;f=i;g=0;i=g;A=h&7;if(g|A){while(1){g=h;h=g-1|0;f=f-!g|0;c=c- -64|0;g=d;d=y+1|0;g=d?g:g+1|0;y=d;d=g;if((A|0)!=(y|0)|(i|0)!=(g|0)){continue}break}}g=J[C+4>>1];if(!s&G>>>0>=7|s){while(1){c=c+512|0;f=f-(h>>>0<8)|0;h=h-8|0;if(f|h){continue}break}}s:{if(!g){break s}d=0;c=0;if(g-1>>>0>=3){f=g&65532;j=0;while(1){c=c+4|0;j=j+4|0;if((f|0)!=(j|0)){continue}break}}f=g&3;if(!f){break s}while(1){c=c+1|0;d=d+1|0;if((f|0)!=(d|0)){continue}break}}Ra[H[(J[C+6>>1]<<2)+113968>>2]](p,g,e+1032|0);t=t+1|0;if((x|0)>(t|0)){continue}break}}a=a+w|0;k=k-w|0;if(k){n=n+w|0}else{k=P;c=k+H[b+68>>2]|0;H[b+68>>2]=c;n=c-k|0}if((v|0)>(n|0)){continue}break}if(!a){break r}H[b+72>>2]=H[b+72>>2]+a}l=H[M>>2]+l|0;u=u+1|0;if((Q|0)!=(u|0)){continue}break}}t:{a=H[b+72>>2]>=(l|0);if(a|a){break t}c=3e4;while(1){if(H[b+72>>2]>=(l|0)){break t}c=c-1|0;if(c){continue}c=1e4;continue}}h=r+q|0;if((h|0)>(m|0)){while(1){c=m;a=(h|0)>(o|0)?o:h;if((c|0)<(a|0)){while(1){f=N(c-S|0,52)+T|0;d=H[f>>2];Ra[H[H[d>>2]+136>>2]](d,ba,aa,H[e+1064>>2],H[e+1068>>2],0,0,O(0));d=H[f>>2];Ra[H[H[d>>2]+140>>2]](d,0);c=c+1|0;if((a|0)!=(c|0)){continue}break}c=a-m|0;if(c){H[b+88>>2]=c+H[b+88>>2]}m=a}if((m|0)==(o|0)){o=H[b+84>>2]+2|0;H[b+84>>2]=o;m=o-2|0}if((h|0)>(m|0)){continue}break}}a=H[e+1040>>2];u:{if(!a){break u}b=a+H[z>>2]|0;H[z>>2]=b;a=H[e+1040>>2];if(!a){break u}d=b-a|0;c=0;while(1){f=H[e+1036>>2]+(c<<5)|0;a=H[f+4>>2];b=E+(c+d<<5)|0;H[b>>2]=H[f>>2];H[b+4>>2]=a;a=H[f+28>>2];H[b+24>>2]=H[f+24>>2];H[b+28>>2]=a;a=H[f+20>>2];H[b+16>>2]=H[f+16>>2];H[b+20>>2]=a;a=H[f+12>>2];H[b+8>>2]=H[f+8>>2];H[b+12>>2]=a;c=c+1|0;if(c>>>0>2]){continue}break}}Oa=e+1072|0;return N(D+1|0,W)|0}function yH(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,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;l=Oa-96|0;Oa=l;f=H[a+392>>2];a:{if(!f){break a}c=H[a+388>>2];if(f-1>>>0>=3){g=f&-4;while(1){h=d<<2;H[H[h+c>>2]+20>>2]=-1;H[H[c+(h|4)>>2]+20>>2]=-1;H[H[c+(h|8)>>2]+20>>2]=-1;H[H[c+(h|12)>>2]+20>>2]=-1;d=d+4|0;e=e+4|0;if((g|0)!=(e|0)){continue}break}}e=f&3;if(!e){break a}while(1){H[H[c+(d<<2)>>2]+20>>2]=-1;d=d+1|0;b=b+1|0;if((e|0)!=(b|0)){continue}break}}b:{if(f>>>0>=(H[a+396>>2]>>>1&1073741823)>>>0){H[a+392>>2]=0;break b}H[l+16>>2]=0;c=a+388|0;b=H[c+4>>2];if((b|0)<0){f=H[c>>2];b=f+(b<<2)|0;while(1){H[b>>2]=H[l+16>>2];b=b+4|0;if(f>>>0>b>>>0){continue}break}}H[c+4>>2]=0;b=c;c=0;d=H[a+392>>2];c:{if(!d){break c}f=d<<2;if(!f){break c}c=H[33808];e=c+12|0;c=(u=e,v=f,w=Ra[H[H[c>>2]+20>>2]](c)|0?51692:55639,x=13582,y=553,t=H[H[e>>2]+8>>2],Ra[t](u|0,v|0,w|0,x|0,y|0)|0)}f=H[b+4>>2];if((f|0)>0){h=(f<<2)+c|0;e=H[b>>2];f=c;while(1){H[f>>2]=H[e>>2];e=e+4|0;f=f+4|0;if(h>>>0>f>>>0){continue}break}}d:{if(H[b+8>>2]<0){break d}f=H[b>>2];if(!f){break d}e=H[33808]+12|0;Ra[H[H[e>>2]+12>>2]](e,f)}H[b+8>>2]=d;H[b>>2]=c}if(H[a+488>>2]){d=a+340|0;g=a+316|0;i=a+328|0;m=a+304|0;b=0;while(1){c=H[H[a+484>>2]+(b<<2)>>2];if(H[c+36>>2]){j=H[c+32>>2];h=0;while(1){f=H[H[c+28>>2]>>2]+N(h+j|0,12)|0;e=H[a+308>>2];e:{if(e>>>0>=(H[a+312>>2]&2147483647)>>>0){tH(m,f);break e}k=H[f+4>>2];e=H[a+304>>2]+N(e,12)|0;H[e>>2]=H[f>>2];H[e+4>>2]=k;H[e+8>>2]=H[f+8>>2];H[a+308>>2]=H[a+308>>2]+1}h=h+1|0;if(h>>>0>2]){continue}break}}if(H[c+60>>2]){j=H[c+56>>2];h=0;while(1){f=H[H[c+52>>2]>>2]+N(h+j|0,12)|0;e=H[a+332>>2];f:{if(e>>>0>=(H[a+336>>2]&2147483647)>>>0){tH(i,f);break f}k=H[f+4>>2];e=H[a+328>>2]+N(e,12)|0;H[e>>2]=H[f>>2];H[e+4>>2]=k;H[e+8>>2]=H[f+8>>2];H[a+332>>2]=H[a+332>>2]+1}h=h+1|0;if(h>>>0>2]){continue}break}}if(H[c+48>>2]){j=H[c+44>>2];h=0;while(1){f=H[H[c+40>>2]>>2]+N(h+j|0,12)|0;e=H[a+320>>2];g:{if(e>>>0>=(H[a+324>>2]&2147483647)>>>0){tH(g,f);break g}k=H[f+4>>2];e=H[a+316>>2]+N(e,12)|0;H[e>>2]=H[f>>2];H[e+4>>2]=k;H[e+8>>2]=H[f+8>>2];H[a+320>>2]=H[a+320>>2]+1}h=h+1|0;if(h>>>0>2]){continue}break}}if(H[c+72>>2]){j=H[c+68>>2];h=0;while(1){f=H[H[c+64>>2]>>2]+N(h+j|0,12)|0;e=H[a+344>>2];h:{if(e>>>0>=(H[a+348>>2]&2147483647)>>>0){tH(d,f);break h}k=H[f+4>>2];e=H[a+340>>2]+N(e,12)|0;H[e>>2]=H[f>>2];H[e+4>>2]=k;H[e+8>>2]=H[f+8>>2];H[a+344>>2]=H[a+344>>2]+1}h=h+1|0;if(h>>>0>2]){continue}break}}b=b+1|0;if(b>>>0>2]){continue}break}}h=0;H[a+488>>2]=0;F[l+80|0]=1;H[l+88>>2]=0;H[l+92>>2]=16;H[l+84>>2]=l+16;b=H[a+560>>2];d=H[b>>2];if(d){H[b>>2]=H[d>>2]}H[l+12>>2]=d;if(d){while(1){DH(d+4|0);DH(d+16|0);DH(d+28|0);DH(d+40|0);b=H[l+88>>2];i:{if(b>>>0>=(H[l+92>>2]&2147483647)>>>0){f=l+16|0;b=H[f+76>>2]&2147483647;g=b?b<<1:1;c=0;j:{if(!g){break j}b=g<<2;if(!(I[f+64|0]|b>>>0>64)){F[f+64|0]=1;c=f;break j}c=0;if(!b){break j}c=H[33808];e=c+12|0;c=(y=e,x=b,w=Ra[H[H[c>>2]+20>>2]](c)|0?54306:55639,v=13582,u=553,t=H[H[e>>2]+8>>2],Ra[t](y|0,x|0,w|0,v|0,u|0)|0)}d=H[f+72>>2];i=c+(d<<2)|0;if((d|0)>0){e=H[f+68>>2];b=c;while(1){H[b>>2]=H[e>>2];e=e+4|0;b=b+4|0;if(i>>>0>b>>>0){continue}break}}H[i>>2]=H[l+12>>2];k:{if(H[f+76>>2]<0){break k}b=H[f+68>>2];if((b|0)==(f|0)){F[f+64|0]=0;break k}if(!b){break k}e=H[33808]+12|0;Ra[H[H[e>>2]+12>>2]](e,b);d=H[f+72>>2]}H[f+76>>2]=g;H[f+68>>2]=c;H[f+72>>2]=d+1;break i}H[H[l+84>>2]+(b<<2)>>2]=H[l+12>>2];H[l+88>>2]=b+1}b=H[a+560>>2];d=H[b>>2];if(d){H[b>>2]=H[d>>2]}H[l+12>>2]=d;if(d){continue}break}}if(H[l+88>>2]){while(1){b=H[H[l+84>>2]+(h<<2)>>2];c=H[a+560>>2];H[b>>2]=H[c>>2];H[c>>2]=b;h=h+1|0;if(h>>>0>2]){continue}break}}b=H[l+92>>2];l:{if((b|0)<0|!(b&2147483647)){break l}b=H[l+84>>2];if((b|0)==(l+16|0)|!b){break l}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+272>>2];h=Ra[H[H[b>>2]+52>>2]](b)|0;b=H[a+272>>2];d=Ra[H[H[b>>2]+56>>2]](b)|0;if(h){c=1073741823;b=1073741823;while(1){h=h-1|0;f=H[d>>2];e=H[d+4>>2];if(!((f|0)==(b|0)&(e|0)==(c|0))){i=Oa-16|0;Oa=i;b=H[a+196>>2];c=H[d+4>>2];m=H[(b+(c<<3)|0)+4>>2];g=H[d>>2];o=H[(b+(g<<3)|0)+4>>2];m:{if(!((o|0)!=-1|(m|0)!=-1)){m=H[b+(g<<3)>>2];b=H[b+(c<<3)>>2];H[i+4>>2]=c;H[i>>2]=g;b=b&3;c=m&3;b=N(b>>>0>c>>>0?b:c,12)+a|0;c=b+304|0;g=H[b+308>>2];if(g>>>0>=(H[b+312>>2]&2147483647)>>>0){tH(c,i);break m}c=H[c>>2]+N(g,12)|0;g=H[i+4>>2];H[c>>2]=H[i>>2];H[c+4>>2]=g;H[c+8>>2]=H[i+8>>2];H[b+308>>2]=H[b+308>>2]+1;break m}k=c>>>0>>0;j=k?c:g;k=k?g:c;n:{if(!((o|0)==-1|(m|0)==-1)){c=H[a+376>>2];m=H[c+(H[(b+(k<<3)|0)+4>>2]<<1&-4)>>2];c=H[c+(H[(b+(j<<3)|0)+4>>2]<<1&-4)>>2];b=H[33808];g=Ra[H[H[b>>2]+20>>2]](b)|0?27644:55639;g=Ra[H[H[b+12>>2]+8>>2]](b+12|0,56,g,7273,1822)|0;H[g+4>>2]=-1;H[g>>2]=115704;b=g+8|0;H[b>>2]=0;H[b+4>>2]=0;H[g+32>>2]=0;H[g+24>>2]=0;H[g+28>>2]=0;H[g+16>>2]=0;H[g+20>>2]=0;H[g>>2]=115400;F[g+36|0]=0;H[g+40>>2]=H[c>>2];b=H[m>>2];H[g+48>>2]=c;H[g+44>>2]=b;c=a+444|0;b=g+52|0;break n}c=H[(b+(j<<3)|0)+4>>2];c=(c|0)!=-1&c;m=H[H[a+376>>2]+(H[(b+((c?j:k)<<3)|0)+4>>2]<<1&-4)>>2];b=H[33808];g=Ra[H[H[b>>2]+20>>2]](b)|0?27492:55639;g=Ra[H[H[b+12>>2]+8>>2]](b+12|0,52,g,7273,1809)|0;H[g+4>>2]=-1;H[g>>2]=115704;b=g+8|0;H[b>>2]=0;H[b+4>>2]=0;H[g+32>>2]=0;H[g+24>>2]=0;H[g+28>>2]=0;H[g+16>>2]=0;H[g+20>>2]=0;H[g>>2]=115376;F[g+36|0]=0;b=H[m>>2];H[g+44>>2]=c?k:j;H[g+40>>2]=b;c=a+404|0;b=g+48|0}H[b>>2]=m;H[i+4>>2]=k;H[i>>2]=j;j=0;b=c;k=H[b+20>>2];o:{p:{if(!k){break p}o=H[i>>2];n=H[i+4>>2];c=o&65535|n<<16;c=(c<<15^-1)+c|0;c=N(c>>>10^c,9);c=c>>>6^c;c=(c<<11^-1)+c|0;j=k-1&(c>>>16^c);c=H[H[b+12>>2]+(j<<2)>>2];if((c|0)==-1){break p}m=b+4|0;q=H[b+8>>2];p=H[b+4>>2];while(1){r=p+N(c,12)|0;if(!((o|0)!=H[r>>2]|(n|0)!=H[r+4>>2])){F[i+15|0]=1;break o}c=H[q+(c<<2)>>2];if((c|0)!=-1){continue}break}}F[i+15|0]=0;if(H[b+36>>2]==H[b+16>>2]){c=k?k<<1:16;if(c>>>0>k>>>0){lH(b,c);k=H[b+20>>2]}c=J[i>>1]|H[i+4>>2]<<16;c=(c<<15^-1)+c|0;c=N(c>>>10^c,9);c=c>>>6^c;c=(c<<11^-1)+c|0;j=k-1&(c>>>16^c)}c=H[b+28>>2];H[b+28>>2]=c+1;m=H[b+12>>2]+(j<<2)|0;H[H[b+8>>2]+(c<<2)>>2]=H[m>>2];H[m>>2]=c;H[b+36>>2]=H[b+36>>2]+1;H[b+32>>2]=H[b+32>>2]+1;m=b+4|0}b=H[m>>2]+N(c,12)|0;if(!I[i+15|0]){c=H[i+4>>2];m=H[i>>2];H[b+8>>2]=g;H[b>>2]=m;H[b+4>>2]=c}cH(g,H[a+400>>2],H[H[a+276>>2]+4>>2],H[H[a+192>>2]+4>>2],H[a+180>>2],a+208|0,a+196|0,a+304|0,a+328|0)}Oa=i+16|0;c=e;b=f}d=d+8|0;if(h){continue}break}}f=H[a+320>>2]+H[a+308>>2]|0;d=H[a+532>>2];q:{if(!d){d=0;break q}if(!H[a+548>>2]){break q}S6(H[a+524>>2],255,d<<2);d=0;c=H[a+520>>2];b=H[a+528>>2];e=b-1|0;if(e){h=0;if(b-2>>>0>=3){g=e&-4;b=0;while(1){i=d|1;H[c+(d<<2)>>2]=i;k=c+(i<<2)|0;i=d|2;H[k>>2]=i;k=c+(i<<2)|0;i=d|3;H[k>>2]=i;d=d+4|0;H[c+(i<<2)>>2]=d;b=b+4|0;if((g|0)!=(b|0)){continue}break}}b=e&3;if(b){while(1){e=c+(d<<2)|0;d=d+1|0;H[e>>2]=d;h=h+1|0;if((b|0)!=(h|0)){continue}break}}b=H[a+528>>2]-1|0}else{b=0}H[c+(b<<2)>>2]=-1;H[a+548>>2]=0;H[a+540>>2]=0;d=H[a+532>>2]}k=a+512|0;if(d>>>0>>0){mH(k,f)}i=0;while(1){f=N(i,12)+a|0;o=f;m=H[f+332>>2];g=H[f+308>>2];r:{if(!g){break r}c=0;if(!m){b=H[a+196>>2];c=H[f+304>>2];h=0;if((g|0)!=1){j=g&-2;e=0;while(1){d=c+N(h,12)|0;H[d>>2]=H[b+(H[d>>2]<<3)>>2]&-4;H[d+4>>2]=H[b+(H[d+4>>2]<<3)>>2]&-4;d=c+N(h|1,12)|0;H[d>>2]=H[b+(H[d>>2]<<3)>>2]&-4;H[d+4>>2]=H[b+(H[d+4>>2]<<3)>>2]&-4;h=h+2|0;e=e+2|0;if((j|0)!=(e|0)){continue}break}}if(!(g&1)){break r}c=c+N(h,12)|0;H[c>>2]=H[b+(H[c>>2]<<3)>>2]&-4;H[c+4>>2]=H[b+(H[c+4>>2]<<3)>>2]&-4;break r}while(1){e=H[f+304>>2]+N(c,12)|0;b=H[e>>2];d=H[a+196>>2];H[e>>2]=H[d+(b<<3)>>2]&-4;h=H[e+4>>2];H[e+4>>2]=H[d+(h<<3)>>2]&-4;j=0;e=H[a+532>>2];s:{t:{if(!e){break t}d=b&65535|h<<16;d=(d<<15^-1)+d|0;d=N(d>>>10^d,9);d=d>>>6^d;d=(d<<11^-1)+d|0;j=e-1&(d>>>16^d);d=H[H[a+524>>2]+(j<<2)>>2];if((d|0)==-1){break t}n=H[a+520>>2];q=H[a+516>>2];while(1){p=q+(d<<3)|0;if((b|0)==H[p>>2]&(h|0)==H[p+4>>2]){break s}d=H[n+(d<<2)>>2];if((d|0)!=-1){continue}break}}d=H[a+540>>2];if((d|0)==-1){d=-1;j=e?e<<1:16;if(j>>>0>e>>>0){mH(k,j);d=H[a+540>>2];n=H[a+532>>2]}else{n=e}e=b&65535|h<<16;e=(e<<15^-1)+e|0;e=N(e>>>10^e,9);e=e>>>6^e;e=(e<<11^-1)+e|0;j=n-1&(e>>>16^e)}e=H[a+520>>2]+(d<<2)|0;H[a+540>>2]=H[e>>2];n=e;e=H[a+524>>2]+(j<<2)|0;H[n>>2]=H[e>>2];H[e>>2]=d;H[a+548>>2]=H[a+548>>2]+1;H[a+544>>2]=H[a+544>>2]+1;e=H[a+516>>2]+(d<<3)|0;H[e>>2]=b;H[e+4>>2]=h}c=c+1|0;if((g|0)!=(c|0)){continue}break}}u:{if(!m){b=0;break u}j=H[a+532>>2]-1|0;h=H[a+196>>2];n=H[a+524>>2];q=H[a+548>>2];g=H[f+328>>2];c=0;b=0;while(1){e=g+N(c,12)|0;f=H[e+4>>2];e=H[e>>2];v:{w:{if(!q){break w}d=e&65535|f<<16;d=(d<<15^-1)+d|0;d=N(d>>>10^d,9);d=d>>>6^d;d=(d<<11^-1)+d|0;d=H[n+((j&(d>>>16^d))<<2)>>2];if((d|0)==-1){break w}p=H[a+520>>2];r=H[a+516>>2];while(1){s=r+(d<<3)|0;if((e|0)==H[s>>2]&(f|0)==H[s+4>>2]){break v}d=H[p+(d<<2)>>2];if((d|0)!=-1){continue}break}}d=g+N(b,12)|0;H[d>>2]=H[h+(e<<3)>>2]&-4;H[d+4>>2]=H[h+(f<<3)>>2]&-4;b=b+1|0}c=c+1|0;if((m|0)!=(c|0)){continue}break}}H[o+332>>2]=b;i=i+1|0;if((i|0)!=2){continue}break}b=H[a+272>>2];d=Ra[H[H[b>>2]+28>>2]](b)|0;b=H[a+272>>2];h=Ra[H[H[b>>2]+32>>2]](b)|0;if(d){c=a+280|0;f=a+292|0;while(1){d=d-1|0;b=H[h>>2];x:{if(H[H[a+148>>2]+(b>>>3&536870908)>>2]>>>b&1){break x}b=H[a+196>>2]+(b<<3)|0;if(H[b+4>>2]==-1){e=H[b>>2]&-4;H[l+16>>2]=e;b=H[a+284>>2];if(b>>>0>=(H[a+288>>2]&2147483647)>>>0){EH(c,l+16|0);break x}H[H[a+280>>2]+(b<<2)>>2]=e;H[a+284>>2]=b+1;break x}e=H[b>>2]&-4;H[l+16>>2]=e;b=H[a+296>>2];if(b>>>0>=(H[a+300>>2]&2147483647)>>>0){EH(f,l+16|0);break x}H[H[a+292>>2]+(b<<2)>>2]=e;H[a+296>>2]=b+1}h=h+4|0;if(d){continue}break}}S6(H[a+136>>2],0,H[a+140>>2]<<2);S6(H[a+148>>2],0,H[a+152>>2]<<2);Oa=l+96|0}function BB(a,b,c){a=a|0;b=b|0;c=c|0;var d=O(0),e=0,f=O(0),g=O(0),h=O(0),i=0,j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=0,p=O(0),q=O(0),r=O(0),s=0,t=0,u=0,v=0,w=O(0),x=0,y=0,z=0,A=0,B=0,C=0;if(I[a+7648|0]){a=1}else{o=a+16|0;e=Oa-160|0;Oa=e;t=b+72|0;a=1;a:{b:{switch(J[b+98>>1]){case 3:if(J[b+96>>1]){a=H[b+52>>2];i=H[b+48>>2];d=L[b+56>>2];H[e+28>>2]=0;L[e+24>>2]=d;H[e+16>>2]=i;H[e+20>>2]=a;d=L[b>>2];f=L[b+4>>2];p=L[b+8>>2];H[e+12>>2]=0;L[e+8>>2]=p;L[e+4>>2]=f;L[e>>2]=d;l=L[b+24>>2];j=L[b+36>>2];h=L[b+16>>2];m=L[b+28>>2];k=L[b+40>>2];n=L[b+20>>2];q=L[b+32>>2];r=L[b+44>>2];w=L[b+12>>2];H[e+140>>2]=0;H[e+124>>2]=0;H[e+108>>2]=0;H[e+92>>2]=0;H[e+76>>2]=0;L[e+72>>2]=r;L[e+68>>2]=q;L[e- -64>>2]=n;H[e+60>>2]=0;L[e+56>>2]=k;L[e+52>>2]=m;L[e+48>>2]=h;H[e+44>>2]=0;L[e+40>>2]=j;L[e+36>>2]=l;g=O(-r);r=O((g>2]=r;g=O(-q);q=O((g>2]=q;g=O(-n);n=O((g>2]=n;g=O(-k);k=O((g>2]=k;g=O(-m);m=O((g>2]=m;g=O(-h);h=O((h>g?h:g)+O(9.999999974752427e-7));L[e+96>>2]=h;g=O(-j);j=O((g>2]=j;g=O(-l);l=O((g>2]=l;L[e+136>>2]=O(r*p)+O(O(n*d)+O(f*q));L[e+132>>2]=O(k*p)+O(O(h*d)+O(f*m));L[e+32>>2]=w;h=O(-w);h=O((h>2]=h;L[e+128>>2]=O(j*p)+O(O(h*d)+O(f*l));a=qB(o,e,c,t);break a}L[e>>2]=L[b+72>>2];L[e+4>>2]=L[b+76>>2];L[e+8>>2]=L[b+80>>2];L[e+12>>2]=L[b+84>>2];L[e+16>>2]=L[b+88>>2];L[e+20>>2]=L[b+92>>2];s=Oa-16|0;Oa=s;b=H[o+28>>2];c:{if(b){while(1){a=N(i,24)+o|0;d:{if(L[e>>2]>L[a+172>>2]|L[a+160>>2]>L[e+12>>2]|(L[e+4>>2]>L[a+176>>2]|L[a+164>>2]>L[e+16>>2])){break d}if(L[e+8>>2]>L[a+180>>2]|L[a+168>>2]>L[e+20>>2]){break d}H[s+8>>2]=-1082130432;if(!(Ra[H[H[c>>2]>>2]](c,s+8|0,((i<<3)+o|0)+32|0)|0)){i=0;break c}b=H[o+28>>2]}i=i+1|0;if(i>>>0>>0){continue}break}}i=1;if(!H[o+636>>2]){break c}d=L[o+656>>2];f=L[o+672>>2];if(L[e>>2]>O(d+f)|L[e+12>>2]>2];f=L[o+676>>2];if(L[e+4>>2]>O(d+f)|L[e+16>>2]>2];f=L[o+680>>2];if(L[e+8>>2]>O(d+f)|L[e+20>>2]>2]<<2)|0;a=H[b>>2];B=(a|0)>=0?a|-2147483648:a^-1;a=H[b+12>>2];C=(a|0)>=0?a|-2147483648:a^-1;x=1;while(1){e:{y=(v<<2)+o|0;f:{if(!H[y+688>>2]){break f}a=(v<<5)+o|0;d=L[a+736>>2];f=L[a+752>>2];if(L[e>>2]>O(d+f)|L[e+12>>2]>2];f=L[a+756>>2];if(L[e+4>>2]>O(d+f)|L[e+16>>2]>2];f=L[a+760>>2];if(L[e+8>>2]>O(d+f)|L[e+20>>2]>2]){break g}b=b+(a<<5)|0;d=L[b+960>>2];f=L[b+976>>2];if(L[e>>2]>O(d+f)|L[e+12>>2]>2];f=L[b+980>>2];if(L[e+4>>2]>O(d+f)|L[e+16>>2]>2];f=L[b+984>>2];if(L[e+8>>2]>O(d+f)|L[e+20>>2]>2];i:{if(!b){break i}i=i+(t<<5)|0;d=L[i+2080>>2];f=L[i+2096>>2];if(L[e>>2]>O(d+f)|L[e+12>>2]>2];f=L[i+2100>>2];if(L[e+4>>2]>O(d+f)|L[e+16>>2]>2];f=L[i+2104>>2];if(L[e+8>>2]>O(d+f)|L[e+20>>2]>2]+(H[z+932>>2]+H[y+708>>2]|0)|0;i=H[o+20>>2]+(u<<5)|0;u=H[o+24>>2]+(u<<3)|0;while(1){j:{if(B>>>0>K[i+28>>2]){break j}if(C>>>0>2]){break i}d=L[i>>2];f=L[i+16>>2];if(L[e>>2]>O(d+f)|L[e+12>>2]>2];f=L[i+20>>2];if(L[e+4>>2]>O(d+f)|L[e+16>>2]>2];f=L[i+24>>2];if(L[e+8>>2]>O(d+f)|L[e+20>>2]>2]=-1082130432;if(!(Ra[H[H[c>>2]>>2]](c,s+12|0,u)|0)){break h}}u=u+8|0;i=i+32|0;b=b-1|0;if(b){continue}break}}A=t>>>0<4;t=t+1|0;if((t|0)!=5){continue}break g}break}if(A){break e}}a=a+1|0;if((a|0)!=5){continue}break}}x=v>>>0<4;v=v+1|0;if((v|0)!=5){continue}}break}i=!x}Oa=s+16|0;a=i&1;break a;case 2:a=H[b+52>>2];i=H[b+48>>2];d=L[b+56>>2];H[e+28>>2]=0;L[e+24>>2]=d;H[e+16>>2]=i;H[e+20>>2]=a;d=L[b>>2];f=L[b+4>>2];p=L[b+8>>2];H[e+12>>2]=0;L[e+8>>2]=p;L[e+4>>2]=f;L[e>>2]=d;l=L[b+24>>2];j=L[b+36>>2];h=L[b+16>>2];m=L[b+28>>2];k=L[b+40>>2];n=L[b+20>>2];q=L[b+32>>2];r=L[b+44>>2];w=L[b+12>>2];H[e+140>>2]=0;H[e+124>>2]=0;H[e+108>>2]=0;H[e+92>>2]=0;H[e+76>>2]=0;L[e+72>>2]=r;L[e+68>>2]=q;L[e- -64>>2]=n;H[e+60>>2]=0;L[e+56>>2]=k;L[e+52>>2]=m;L[e+48>>2]=h;H[e+44>>2]=0;L[e+40>>2]=j;L[e+36>>2]=l;g=O(-r);r=O((g>2]=r;g=O(-q);q=O((g>2]=q;g=O(-n);n=O((g>2]=n;g=O(-k);k=O((g>2]=k;g=O(-m);m=O((g>2]=m;g=O(-h);h=O((h>g?h:g)+O(9.999999974752427e-7));L[e+96>>2]=h;g=O(-j);j=O((g>2]=j;g=O(-l);l=O((g>2]=l;L[e+136>>2]=O(r*p)+O(O(n*d)+O(f*q));L[e+132>>2]=O(k*p)+O(O(h*d)+O(f*m));L[e+32>>2]=w;h=O(-w);h=O((h>2]=h;L[e+128>>2]=O(j*p)+O(O(h*d)+O(f*l));a=qB(o,e,c,t);break a;case 0:d=L[b+108>>2];a=H[b+104>>2];x=H[b+100>>2];H[e+12>>2]=0;L[e+8>>2]=d;H[e>>2]=x;H[e+4>>2]=a;d=L[b+112>>2];L[e+16>>2]=d*d;u=Oa-16|0;Oa=u;b=H[o+28>>2];k:{if(b){while(1){a=N(i,24)+o|0;f=L[a+168>>2];p=L[a+180>>2];d=O(L[e+8>>2]-O(O(f+p)*O(.5)));f=O(O(p-f)*O(.5));p=d>2];h=L[a+172>>2];l=O(L[e>>2]-O(O(j+h)*O(.5)));j=O(O(h-j)*O(.5));h=j>l?l:j;k=L[a+164>>2];n=L[a+176>>2];m=O(L[e+4>>2]-O(O(k+n)*O(.5)));k=O(O(n-k)*O(.5));n=k>m?m:k;g=d;d=O(-f);d=O(g-(d>2]>=O(g+O(f+O(d*d)))){H[u+8>>2]=-1082130432;if(!(Ra[H[H[c>>2]>>2]](c,u+8|0,((i<<3)+o|0)+32|0)|0)){break k}b=H[o+28>>2]}i=i+1|0;if(i>>>0>>0){continue}break}}s=1;if(!H[o+636>>2]){break k}d=O(L[e+8>>2]-L[o+664>>2]);f=L[o+680>>2];p=d>2]-L[o+656>>2]);j=L[o+672>>2];h=j>l?l:j;m=O(L[e+4>>2]-L[o+660>>2]);k=L[o+676>>2];n=k>m?m:k;g=d;d=O(-f);d=O(g-(d>2]>=O(g+O(f+O(d*d))))){break k}b=t+(H[o+644>>2]<<2)|0;a=H[b>>2];B=(a|0)>=0?a|-2147483648:a^-1;a=H[b+12>>2];C=(a|0)>=0?a|-2147483648:a^-1;x=1;while(1){l:{y=(v<<2)+o|0;m:{if(!H[y+688>>2]){break m}a=(v<<5)+o|0;d=O(L[e+8>>2]-L[a+744>>2]);f=L[a+760>>2];p=d>2]-L[a+736>>2]);j=L[a+752>>2];h=j>l?l:j;m=O(L[e+4>>2]-L[a+740>>2]);k=L[a+756>>2];n=k>m?m:k;g=d;d=O(-f);d=O(g-(d>2]>=O(g+O(f+O(d*d))))){break m}a=0;while(1){b=N(v,224)+o|0;z=b+(a<<2)|0;n:{if(!H[z+912>>2]){break n}b=b+(a<<5)|0;d=O(L[e+8>>2]-L[b+968>>2]);f=L[b+984>>2];p=d>2]-L[b+960>>2]);j=L[b+976>>2];h=j>l?l:j;m=O(L[e+4>>2]-L[b+964>>2]);k=L[b+980>>2];n=k>m?m:k;g=d;d=O(-f);d=O(g-(d>2]>=O(g+O(f+O(d*d))))){break n}t=0;A=1;while(1){o:{i=(N(v,1120)+o|0)+N(a,224)|0;s=i+(t<<2)|0;b=H[s+2032>>2];p:{if(!b){break p}i=i+(t<<5)|0;d=O(L[e+8>>2]-L[i+2088>>2]);f=L[i+2104>>2];p=d>2]-L[i+2080>>2]);j=L[i+2096>>2];h=j>l?l:j;m=O(L[e+4>>2]-L[i+2084>>2]);k=L[i+2100>>2];n=k>m?m:k;g=d;d=O(-f);d=O(g-(d>2]>=O(g+O(f+O(d*d))))){break p}i=H[s+2052>>2]+(H[z+932>>2]+H[y+708>>2]|0)|0;s=H[o+20>>2]+(i<<5)|0;i=H[o+24>>2]+(i<<3)|0;while(1){q:{if(B>>>0>K[s+28>>2]){break q}if(C>>>0>2]){break p}d=O(L[e+8>>2]-L[s+8>>2]);f=L[s+24>>2];p=d>2]-L[s>>2]);j=L[s+16>>2];h=j>l?l:j;m=O(L[e+4>>2]-L[s+4>>2]);k=L[s+20>>2];n=k>m?m:k;g=d;d=O(-f);d=O(g-(d>2]>=O(g+O(f+O(d*d))))){break q}H[u+12>>2]=-1082130432;if(!(Ra[H[H[c>>2]>>2]](c,u+12|0,i)|0)){break o}}i=i+8|0;s=s+32|0;b=b-1|0;if(b){continue}break}}A=t>>>0<4;t=t+1|0;if((t|0)!=5){continue}break n}break}if(A){break l}}a=a+1|0;if((a|0)!=5){continue}break}}x=v>>>0<4;v=v+1|0;if((v|0)!=5){continue}}break}s=!x}Oa=u+16|0;a=s&1;break a;case 4:break b;default:break a}}a=H[b+52>>2];i=H[b+48>>2];d=L[b+56>>2];H[e+28>>2]=0;L[e+24>>2]=d;H[e+16>>2]=i;H[e+20>>2]=a;d=L[b>>2];f=L[b+4>>2];p=L[b+8>>2];H[e+12>>2]=0;L[e+8>>2]=p;L[e+4>>2]=f;L[e>>2]=d;l=L[b+24>>2];j=L[b+36>>2];h=L[b+16>>2];m=L[b+28>>2];k=L[b+40>>2];n=L[b+20>>2];q=L[b+32>>2];r=L[b+44>>2];w=L[b+12>>2];H[e+140>>2]=0;H[e+124>>2]=0;H[e+108>>2]=0;H[e+92>>2]=0;H[e+76>>2]=0;L[e+72>>2]=r;L[e+68>>2]=q;L[e- -64>>2]=n;H[e+60>>2]=0;L[e+56>>2]=k;L[e+52>>2]=m;L[e+48>>2]=h;H[e+44>>2]=0;L[e+40>>2]=j;L[e+36>>2]=l;g=O(-r);r=O((g>2]=r;g=O(-q);q=O((g>2]=q;g=O(-n);n=O((g>2]=n;g=O(-k);k=O((g>2]=k;g=O(-m);m=O((g>2]=m;g=O(-h);h=O((h>g?h:g)+O(9.999999974752427e-7));L[e+96>>2]=h;g=O(-j);j=O((g>2]=j;g=O(-l);l=O((g>2]=l;L[e+136>>2]=O(r*p)+O(O(n*d)+O(f*q));L[e+132>>2]=O(k*p)+O(O(h*d)+O(f*m));L[e+32>>2]=w;h=O(-w);h=O((h>2]=h;L[e+128>>2]=O(j*p)+O(O(h*d)+O(f*l));a=qB(o,e,c,t)}Oa=e+160|0}return a|0}function mu(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=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),F=O(0),G=O(0),J=O(0),K=O(0),M=0,Q=O(0),R=O(0),S=O(0),T=O(0),U=O(0),V=O(0),X=O(0),Y=O(0),Z=O(0),_=O(0),$=0,aa=O(0),ba=O(0),ca=O(0),da=O(0);h=Oa-320|0;Oa=h;m=L[c+20>>2];o=L[c+16>>2];u=L[c+24>>2];q=L[c>>2];l=O(q+q);p=L[c+8>>2];r=L[c+4>>2];j=L[c+12>>2];k=O(j+j);c=a;n=L[a+8>>2];t=O(O(O(l*p)-O(r*k))*n);L[h+124>>2]=u-t;p=O(n*O(O(p*k)+O(l*r)));L[h+120>>2]=m-p;L[h+112>>2]=t+u;L[h+108>>2]=m+p;m=O(n*O(O(q*l)+O(O(j*k)+O(-1))));L[h+116>>2]=o-m;L[h+104>>2]=o+m;n=L[e>>2];u=L[a+4>>2];o=L[d+4>>2];l=O(o+o);m=L[d+8>>2];p=O(l*m);j=L[d>>2];q=O(j+j);k=L[d+12>>2];r=O(q*k);L[h+68>>2]=p-r;L[h+60>>2]=p+r;j=O(O(1)-O(j*q));p=O(o*l);L[h+72>>2]=j-p;i=j;j=O(m+m);r=O(m*j);L[h+56>>2]=i-r;m=O(q*m);l=O(l*k);L[h+64>>2]=m+l;o=O(q*o);q=O(j*k);L[h+52>>2]=o-q;L[h+48>>2]=m-l;L[h+44>>2]=o+q;L[h+40>>2]=O(O(1)-p)-r;L[h+76>>2]=L[d+16>>2];L[h+80>>2]=L[d+20>>2];L[h+84>>2]=L[d+24>>2];L[h+88>>2]=L[b+4>>2];L[h+92>>2]=L[b+8>>2];L[h+96>>2]=L[b+12>>2];b=h+76|0;d=h+88|0;i=sZ(h+104|0,h+116|0,b,d,h+40|0,h+36|0,h+24|0);m=O(u+n);a:{if(i>=O(m*m)){break a}b:{c:{if(i==O(0)){u=L[h+72>>2];p=L[h+68>>2];r=L[h+60>>2];t=L[h+56>>2];A=L[h+64>>2];n=L[h+52>>2];j=L[h+48>>2];k=L[h+44>>2];v=L[h+40>>2];X=L[h+84>>2];Y=L[h+80>>2];Z=L[h+76>>2];T=L[h+124>>2];U=L[h+120>>2];V=L[h+116>>2];Q=L[h+112>>2];C=L[h+108>>2];R=L[h+104>>2];break c}u=L[h+72>>2];r=L[h+60>>2];p=L[h+68>>2];t=L[h+56>>2];Q=L[h+112>>2];T=L[h+124>>2];X=L[h+84>>2];j=L[h+48>>2];C=L[h+108>>2];U=L[h+120>>2];Y=L[h+80>>2];k=L[h+44>>2];m=L[h+36>>2];R=L[h+104>>2];V=L[h+116>>2];o=L[h+24>>2];v=L[h+40>>2];q=L[h+28>>2];n=L[h+52>>2];l=L[h+32>>2];A=L[h+64>>2];Z=L[h+76>>2];E=O(O(O(O(o*v)+O(q*n))+O(l*A))+Z);L[h+24>>2]=E;_=O(Y+O(O(O(o*k)+O(q*t))+O(l*p)));L[h+28>>2]=_;o=O(X+O(O(O(o*j)+O(q*r))+O(l*u)));L[h+32>>2]=o;o=O(O(Q+O(m*O(T-Q)))-o);q=O(O(R+O(m*O(V-R)))-E);l=O(O(C+O(m*O(U-C)))-_);m=O(W(O(O(o*o)+O(O(q*q)+O(l*l)))));if(!(m>O(0))){break c}j=O(O(1)/m);m=O(o*j);L[h+16>>2]=m;o=O(l*j);L[h+12>>2]=o;q=O(q*j);L[h+8>>2]=q;XX(g,h+104|0,L[c+4>>2],h+40|0,h+8|0,L[e>>2]);if(H[g+4096>>2]==2){break b}C=L[e>>2];u=L[c+4>>2];M=125584;AU(h+224|0,b,d,h+40|0,h+52|0,h- -64|0);r=L[h+104>>2];L[h+208>>2]=r;t=L[h+108>>2];L[h+212>>2]=t;n=L[h+112>>2];L[h+216>>2]=n;l=L[h+116>>2];L[h+192>>2]=l;p=L[h+120>>2];L[h+196>>2]=p;A=L[h+124>>2];L[h+200>>2]=A;j=O(A-n);k=O(l-r);v=O(p-t);w=O(W(O(O(j*j)+O(O(k*k)+O(v*v)))));if(w>O(0)){D=j;j=O(O(.009999999776482582)/w);w=O(D*j);n=O(n-w);L[h+216>>2]=n;v=O(v*j);t=O(t-v);L[h+212>>2]=t;j=O(k*j);r=O(r-j);L[h+208>>2]=r;k=O(A+w);L[h+200>>2]=k;p=O(p+v);L[h+196>>2]=p;v=O(p-t);l=O(l+j);L[h+192>>2]=l;j=O(k-n);k=O(l-r)}L[h+180>>2]=v;L[h+176>>2]=k;L[h+184>>2]=j;l=O(O(k*o)-O(q*v));L[h+168>>2]=-l;k=O(O(j*q)-O(m*k));L[h+164>>2]=-k;j=O(O(v*m)-O(o*j));p=O(-j);L[h+160>>2]=p;L[h+172>>2]=-O(O(O(p*r)-O(t*k))-O(l*n));k=O(P(k));j=O(P(j));l=O(P(l));d:{e:{if(!(!(k>j)|!(k>l))){b=0;d=2;break e}a=2;d=0;b=1;if(!(j>2]*L[f+$>>2])-O(L[d+$>>2]*L[e+f>>2])));k=O(u+C);n=O(-m);p=O(-o);r=O(-q);f=0;while(1){d=I[M|0];e=I[M+1|0];L[h+136>>2]=n;L[h+132>>2]=p;L[h+128>>2]=r;$=h+224|0;d=$+N(d,12)|0;l=L[d>>2];t=L[d+4>>2];v=L[d+8>>2];d=$+N(e,12)|0;f:{if(!YX(h+208|0,h+192|0,h+176|0,h+160|0,b,a,j,h+128|0,l,t,v,L[d>>2],L[d+4>>2],L[d+8>>2],h+140|0,h+144|0)){break f}l=L[h+140>>2];if(!(l>2];if(d>>>0>63){break f}t=L[h+148>>2];v=L[h+152>>2];A=L[h+144>>2];H[g+4096>>2]=d+1;d=(d<<6)+g|0;L[d+16>>2]=A-O(q*l);L[d+8>>2]=m;L[d+4>>2]=o;L[d>>2]=q;H[d+52>>2]=-1;L[d+12>>2]=l-u;L[d+24>>2]=v-O(m*l);L[d+20>>2]=t-O(o*l)}M=M+2|0;f=f+1|0;if((f|0)!=12){continue}break}if(H[g+4096>>2]){break b}l=L[c+4>>2];L[g+8>>2]=m;L[g+4>>2]=o;L[g>>2]=q;H[g+4096>>2]=1;L[g+16>>2]=L[h+24>>2];L[g+20>>2]=L[h+28>>2];m=L[h+32>>2];H[g+52>>2]=-1;L[g+12>>2]=O(W(i))-l;L[g+24>>2]=m;break b}m=O(O(Q*j)+O(O(R*v)+O(C*k)));o=O(O(T*j)+O(O(V*v)+O(U*k)));a=m>o;E=L[c+4>>2];l=O(E+(a?m:o));q=O(O(X*j)+O(O(Z*v)+O(Y*k)));x=O(P(O(O(u*j)+O(O(A*v)+O(k*p)))));_=L[h+96>>2];ba=L[h+88>>2];ca=L[h+92>>2];y=O(P(O(O(r*j)+O(O(n*v)+O(k*t)))));i=O(O(x*_)+O(O(O(P(O(O(j*j)+O(O(v*v)+O(k*k)))))*ba)+O(ca*y)));s=O(q-i);if(ll?l:i;if(!(ls;F=O(E+(a?i:s));S=O(O(X*r)+O(O(Z*n)+O(Y*t)));aa=O(P(O(O(u*r)+O(O(A*n)+O(t*p)))));y=O(O(aa*_)+O(O(y*ba)+O(ca*O(P(O(O(r*r)+O(O(n*n)+O(t*t))))))));D=O(S-y);if(Fs?s:i;if(is;y=O(E+(a?i:s));F=O(O(X*u)+O(O(Z*A)+O(Y*p)));x=O(O(O(P(O(O(u*u)+O(O(A*A)+O(p*p)))))*_)+O(O(x*ba)+O(ca*aa)));S=O(F-x);if(ys?s:i;if(iO(0)){D=i;i=O(O(1)/O(W(y)));G=O(D*i);J=O(s*i);K=O(x*i)}i=O(O(J*k)-O(v*K));x=O(O(K*j)-O(k*G));s=O(O(G*v)-O(j*J));if(O(P(i))>O(9.999999974752427e-7)?1:O(P(x))>O(9.999999974752427e-7)|O(P(s))>O(9.999999974752427e-7)){y=O(O(i*i)+O(O(x*x)+O(s*s)));if(y>O(0)){D=i;i=O(O(1)/O(W(y)));w=O(D*i);B=O(x*i);z=O(s*i)}i=O(O(Q*w)+O(O(R*B)+O(C*z)));s=O(O(T*w)+O(O(V*B)+O(U*z)));a=i>s;x=O(E+(a?i:s));y=O(O(X*w)+O(O(Z*B)+O(Y*z)));F=O(O(O(P(O(O(u*w)+O(O(A*B)+O(p*z)))))*_)+O(O(O(P(O(O(j*w)+O(O(v*B)+O(k*z)))))*ba)+O(ca*O(P(O(O(r*w)+O(O(n*B)+O(t*z))))))));S=O(y-F);if(xs?s:i;a=iO(9.999999974752427e-7)?1:O(P(x))>O(9.999999974752427e-7)|O(P(s))>O(9.999999974752427e-7)){B=O(0);z=O(0);w=O(0);aa=O(O(i*i)+O(O(x*x)+O(s*s)));if(aa>O(0)){D=i;i=O(O(1)/O(W(aa)));w=O(D*i);B=O(x*i);z=O(s*i)}i=O(O(Q*w)+O(O(R*B)+O(C*z)));s=O(O(T*w)+O(O(V*B)+O(U*z)));a=i>s;x=O(O(X*w)+O(O(Z*B)+O(Y*z)));aa=O(O(O(P(O(O(u*w)+O(O(A*B)+O(p*z)))))*_)+O(O(O(P(O(O(j*w)+O(O(v*B)+O(k*z)))))*ba)+O(ca*O(P(O(O(r*w)+O(O(n*B)+O(t*z))))))));D=O(x-aa);da=O(E+(a?i:s));if(D>da){break a}x=O(x+aa);i=O((a?s:i)-E);if(xs?s:i;a=iO(9.999999974752427e-7)?1:O(P(z))>O(9.999999974752427e-7)|O(P(w))>O(9.999999974752427e-7)){J=O(0);K=O(0);G=O(0);B=O(O(i*i)+O(O(z*z)+O(w*w)));if(B>O(0)){D=i;i=O(O(1)/O(W(B)));G=O(D*i);J=O(z*i);K=O(w*i)}i=O(O(Q*G)+O(O(R*J)+O(C*K)));w=O(O(T*G)+O(O(V*J)+O(U*K)));a=i>w;z=O(E+(a?i:w));B=O(O(X*G)+O(O(Z*J)+O(Y*K)));j=O(O(O(P(O(O(u*G)+O(O(A*J)+O(p*K)))))*_)+O(O(O(P(O(O(j*G)+O(O(v*J)+O(k*K)))))*ba)+O(ca*O(P(O(O(r*G)+O(O(n*J)+O(t*K))))))));k=O(B-j);if(zk?k:j;a=j>2]=m;o=a?O(-o):o;L[h+132>>2]=o;q=a?O(-q):q;L[h+128>>2]=q;XX(g,h+104|0,E,h+40|0,h+128|0,L[e>>2]);M=1;if(H[g+4096>>2]==2){break a}A=L[c+4>>2];M=125584;AU(h+224|0,b,d,h+40|0,h+52|0,h- -64|0);u=L[h+104>>2];L[h+208>>2]=u;p=L[h+108>>2];L[h+212>>2]=p;C=L[h+112>>2];L[h+216>>2]=C;r=L[h+116>>2];L[h+192>>2]=r;t=L[h+120>>2];L[h+196>>2]=t;v=L[h+124>>2];L[h+200>>2]=v;j=O(v-C);k=O(r-u);n=O(t-p);i=O(W(O(O(j*j)+O(O(k*k)+O(n*n)))));if(i>O(0)){D=j;j=O(O(.009999999776482582)/i);i=O(D*j);C=O(C-i);L[h+216>>2]=C;n=O(n*j);p=O(p-n);L[h+212>>2]=p;j=O(k*j);u=O(u-j);L[h+208>>2]=u;k=O(v+i);L[h+200>>2]=k;n=O(t+n);L[h+196>>2]=n;n=O(n-p);r=O(r+j);L[h+192>>2]=r;j=O(k-C);k=O(r-u)}L[h+176>>2]=k;L[h+184>>2]=j;L[h+180>>2]=n;r=O(O(j*q)-O(m*k));L[h+164>>2]=r;j=O(O(n*m)-O(o*j));L[h+160>>2]=j;k=O(O(k*o)-O(q*n));L[h+168>>2]=k;L[h+172>>2]=-O(O(k*C)+O(O(j*u)+O(p*r)));n=O(P(r));j=O(P(j));k=O(P(k));g:{h:{if(!(!(n>j)|!(n>k))){a=0;d=2;break h}b=2;d=0;a=1;if(!(j>2]*L[f+$>>2])-O(L[d+$>>2]*L[e+f>>2])));f=0;while(1){e=h+224|0;d=e+N(I[M|0],12)|0;i=L[d>>2];j=L[d+4>>2];n=L[d+8>>2];d=e+N(I[M+1|0],12)|0;i:{if(!YX(h+208|0,h+192|0,h+176|0,h+160|0,a,b,k,h+128|0,i,j,n,L[d>>2],L[d+4>>2],L[d+8>>2],h+8|0,h+144|0)){break i}d=H[g+4096>>2];if(d>>>0>63){break i}j=L[h+8>>2];n=L[h+148>>2];u=L[h+152>>2];p=L[h+144>>2];H[g+4096>>2]=d+1;d=(d<<6)+g|0;L[d+16>>2]=p-O(q*j);L[d+8>>2]=m;L[d+4>>2]=o;L[d>>2]=q;H[d+52>>2]=-1;L[d+12>>2]=-O(A+j);L[d+24>>2]=u-O(m*j);L[d+20>>2]=n-O(o*j)}M=M+2|0;f=f+1|0;if((f|0)!=12){continue}break}if(H[g+4096>>2]){break b}j=L[c+4>>2];k=L[h+116>>2];n=L[h+104>>2];u=L[h+120>>2];p=L[h+108>>2];r=L[h+124>>2];t=L[h+112>>2];L[g+8>>2]=m;L[g+4>>2]=o;L[g>>2]=q;M=1;H[g+4096>>2]=1;H[g+52>>2]=-1;L[g+24>>2]=O(t+r)*O(.5);L[g+20>>2]=O(p+u)*O(.5);L[g+16>>2]=O(n+k)*O(.5);L[g+12>>2]=-O(l+j);break a}M=1}Oa=h+320|0;return M|0}function wX(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=e|0;f=f|0;g=O(g);h=h|0;i=i|0;j=O(j);k=k|0;l=O(l);var m=0,n=O(0),o=O(0),p=0,q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=0,E=O(0),G=O(0),K=O(0),M=0,P=O(0),Q=0,R=O(0),S=O(0),T=O(0),U=O(0),V=O(0),X=0,Y=O(0),Z=O(0),_=O(0),$=0,aa=O(0),ba=0,ca=O(0),da=0,ea=O(0),fa=0,ga=0,ha=O(0),ia=0,ja=0,ka=O(0),la=O(0),ma=O(0);m=Oa-1440|0;Oa=m;X=H[b>>2];p=X+4|0;yW(m+1320|0,p,X+16|0);j=L[e+24>>2];n=L[c+24>>2];q=L[e+16>>2];r=L[c+16>>2];s=O(L[c+20>>2]-L[e+20>>2]);L[m+1308>>2]=s;j=O(n-j);L[m+1312>>2]=j;n=O(r-q);L[m+1304>>2]=n;q=L[f+20>>2];r=L[d+20>>2];t=L[f+16>>2];o=L[d+16>>2];w=O(L[d+24>>2]-L[f+24>>2]);L[m+1296>>2]=w;q=O(r-q);L[m+1292>>2]=q;r=O(o-t);L[m+1288>>2]=r;w=O(j-w);L[m+1280>>2]=w;A=O(s-q);L[m+1276>>2]=A;E=O(n-r);L[m+1272>>2]=E;j=O(W(O(O(w*w)+O(O(E*E)+O(A*A)))));if(j>O(0)){n=O(O(1)/j);L[m+1280>>2]=w*n;L[m+1276>>2]=A*n;L[m+1272>>2]=E*n}H[m+1264>>2]=1065353216;M=m+1248|0;H[M>>2]=1065353216;H[M+4>>2]=0;H[m+1256>>2]=0;H[m+1260>>2]=0;H[m+1240>>2]=0;H[m+1244>>2]=0;H[m+1232>>2]=1065353216;H[m+1236>>2]=0;yU(m+1168|0,a- -64|0,a+76|0,m+1232|0,m+1272|0,j);a:{if(!(L[X+4>>2]!=O(1)|L[X+8>>2]!=O(1)|L[X+12>>2]!=O(1))){j=L[m+1224>>2];n=L[m+1220>>2];R=L[m+1212>>2];S=L[m+1208>>2];G=L[d+20>>2];Y=L[d+16>>2];Z=L[d+24>>2];z=L[m+1188>>2];K=L[m+1184>>2];ca=L[m+1216>>2];P=L[m+1176>>2];T=L[m+1168>>2];_=L[m+1172>>2];U=L[m+1204>>2];x=L[m+1180>>2];s=L[d>>2];C=O(-s);q=L[m+1192>>2];u=O(q+q);q=L[m+1196>>2];B=O(q+q);q=L[d+4>>2];r=L[d+8>>2];t=L[m+1200>>2];v=O(t+t);y=O(O(O(C*u)-O(B*q))-O(r*v));t=L[d+12>>2];o=O(O(t*t)+O(-.5));L[m+1136>>2]=O(O(v*o)+O(t*O(O(q*u)-O(s*B))))-O(r*y);L[m+1132>>2]=O(O(B*o)+O(t*O(O(s*v)-O(r*u))))-O(q*y);x=O(x+x);K=O(K+K);z=O(z+z);V=O(O(O(C*x)-O(K*q))-O(r*z));L[m+1124>>2]=O(O(z*o)+O(t*O(O(q*x)-O(s*K))))-O(r*V);L[m+1120>>2]=O(O(K*o)+O(t*O(O(s*z)-O(r*x))))-O(q*V);U=O(U+U);S=O(S+S);R=O(R+R);aa=O(O(O(C*U)-O(S*q))-O(r*R));Z=O(Z*O(-2));Y=O(Y*O(-2));G=O(G*O(-2));ea=O(O(r*Z)+O(O(s*Y)+O(q*G)));L[m+1148>>2]=O(O(r*ea)+O(O(Z*o)-O(t*O(O(s*G)-O(Y*q)))))+O(O(O(R*o)+O(t*O(O(q*U)-O(s*S))))-O(r*aa));L[m+1144>>2]=O(O(q*ea)+O(O(G*o)-O(t*O(O(r*Y)-O(Z*s)))))+O(O(O(S*o)+O(t*O(O(s*R)-O(r*U))))-O(q*aa));ha=C;C=O(T+T);T=O(_+_);P=O(P+P);_=O(O(O(ha*C)-O(T*q))-O(r*P));L[m+1112>>2]=O(O(P*o)+O(t*O(O(q*C)-O(s*T))))-O(r*_);L[m+1108>>2]=O(O(T*o)+O(t*O(O(s*P)-O(r*C))))-O(q*_);L[m+1104>>2]=O(O(C*o)+O(t*O(O(r*T)-O(q*P))))-O(s*_);L[m+1128>>2]=O(O(u*o)+O(t*O(O(r*B)-O(q*v))))-O(s*y);L[m+1116>>2]=O(O(x*o)+O(t*O(O(r*K)-O(q*z))))-O(s*V);L[m+1140>>2]=O(O(s*ea)+O(O(Y*o)-O(t*O(O(q*Z)-O(G*r)))))+O(O(O(U*o)+O(t*O(O(r*S)-O(q*R))))-O(s*aa));break a}dZ(m+1104|0,m+1168|0,d,p);j=L[m+1160>>2];n=L[m+1156>>2];ca=L[m+1152>>2]}L[m+1160>>2]=j+g;L[m+1156>>2]=n+g;L[m+1152>>2]=ca+g;F[m+1088|0]=1;H[m+1096>>2]=0;H[m+1100>>2]=64;p=m+832|0;H[m+1092>>2]=p;H[m+816>>2]=126852;H[m+824>>2]=p;H[m+820>>2]=2;p=H[X+40>>2];Ra[H[(J[p+4>>1]<<2)+126864>>2]](p,m+1104|0,m+816|0,1,1);ba=H[m+1096>>2];b:{if(!ba){q=O(3.4028234663852886e38);break b}ja=H[m+1092>>2];L[m+800>>2]=L[a+76>>2];L[m+804>>2]=L[a+80>>2];L[m+808>>2]=L[a+84>>2];j=L[a+68>>2];n=L[a+64>>2];L[m+792>>2]=L[a+72>>2]+g;L[m+788>>2]=j+g;L[m+784>>2]=n+g;F[m+768|0]=1;H[m+776>>2]=0;H[m+780>>2]=64;p=m+512|0;H[m+772>>2]=p;H[m+240>>2]=0;M=p;p=m+240|0;xX(M,ba,p);F[m+496|0]=1;H[m+504>>2]=0;H[m+508>>2]=64;H[m+500>>2]=p;M=H[m+1096>>2];H[m+80>>2]=0;xX(p,M,m+80|0);da=H[m+500>>2];fa=H[m+772>>2];while(1){H[m+136>>2]=-25165825;H[m+140>>2]=-25165825;H[m+128>>2]=2122317823;H[m+132>>2]=-25165825;H[m+120>>2]=2122317823;H[m+124>>2]=2122317823;H[m+92>>2]=1;$=ja+(D<<2)|0;H[m+88>>2]=$;H[m+96>>2]=m+224;p=m+1320|0;H[m+84>>2]=p;H[m+80>>2]=X;F[m+149|0]=0;F[m+150|0]=0;F[m+151|0]=0;F[m+152|0]=0;F[m+153|0]=0;F[m+154|0]=0;F[m+155|0]=0;F[m+156|0]=0;H[m+144>>2]=0;H[m+148>>2]=0;yX(m,H[X+40>>2],p,H[$>>2]);n=L[d+8>>2];j=L[m+8>>2];q=O(j+j);r=L[d>>2];j=L[m>>2];s=O(j+j);j=L[m+4>>2];t=O(j+j);o=L[d+4>>2];C=O(O(n*q)+O(O(r*s)+O(t*o)));j=L[d+12>>2];u=O(O(j*j)+O(-.5));c:{if(!(O(O(O(E*O(-O(O(r*C)+O(O(s*u)+O(j*O(O(o*q)-O(t*n)))))))-O(A*O(O(o*C)+O(O(t*u)+O(j*O(O(n*s)-O(q*r)))))))-O(w*O(O(n*C)+O(O(q*u)+O(j*O(O(r*t)-O(s*o)))))))>=l)){break c}zX(m+80|0,m,f);j=L[m+8>>2];n=L[m+20>>2];L[m+1432>>2]=O(j+n)*O(.5);q=L[m+4>>2];r=L[m+16>>2];L[m+1428>>2]=O(q+r)*O(.5);s=L[m>>2];t=L[m+12>>2];L[m+1424>>2]=O(s+t)*O(.5);L[m+1408>>2]=O(O(n-j)*O(.5))+O(.019999999552965164);L[m+1404>>2]=O(O(r-q)*O(.5))+O(.019999999552965164);L[m+1400>>2]=O(O(t-s)*O(.5))+O(.019999999552965164);j=qN(m+800|0,m+784|0,m+1424|0,m+1400|0,m+1304|0,m+1288|0);if(!(j<=O(1))){break c}M=0;p=ga;d:{if(!p){break d}while(1){Q=p-1|0;ia=Q<<2;n=L[da+ia>>2];if(n<=j){M=p;break d}p=p<<2;L[p+da>>2]=n;H[p+fa>>2]=H[fa+ia>>2];p=Q;if(p){continue}break}}p=M<<2;H[p+fa>>2]=H[$>>2];L[p+da>>2]=j;ga=ga+1|0}D=D+1|0;if((ba|0)!=(D|0)){continue}break}C=L[a+4>>2];j=L[d+8>>2];A=L[d+24>>2];l=O(L[f+24>>2]-A);q=O(l+l);l=L[d>>2];E=L[d+16>>2];n=O(L[f+16>>2]-E);t=O(n+n);u=L[d+20>>2];n=O(L[f+20>>2]-u);o=O(n+n);n=L[d+4>>2];w=O(O(j*q)+O(O(l*t)+O(o*n)));r=L[d+12>>2];s=O(O(r*r)+O(-.5));L[m+232>>2]=O(j*w)+O(O(q*s)-O(r*O(O(l*o)-O(t*n))));L[m+228>>2]=O(n*w)+O(O(o*s)-O(r*O(O(j*t)-O(q*l))));L[m+224>>2]=O(l*w)+O(O(t*s)-O(r*O(O(n*q)-O(o*j))));q=O(3.4028234663852886e38);da=-1;t=O(0);e:{if(!ga){A=O(0);E=O(0);C=O(0);r=O(0);s=O(0);break e}o=O(L[e+24>>2]-A);o=O(o+o);w=O(L[e+16>>2]-E);w=O(w+w);A=O(L[e+20>>2]-u);A=O(A+A);E=O(O(j*o)+O(O(l*w)+O(n*A)));ea=O(O(j*E)+O(O(o*s)-O(r*O(O(l*A)-O(w*n)))));ka=O(O(n*E)+O(O(A*s)-O(r*O(O(j*w)-O(o*l)))));la=O(O(l*E)+O(O(w*s)-O(r*O(O(n*o)-O(A*j)))));w=O(C+g);ma=O(w*w);M=0;s=O(0);r=O(0);C=O(0);E=O(0);A=O(0);while(1){p=H[X+40>>2];Q=H[p+24>>2];ba=(M<<2)+fa|0;D=H[ba>>2];f:{if(I[p+64|0]&2){D=H[p+28>>2]+N(D,6)|0;p=J[D+4>>1];$=J[D+2>>1];D=J[D>>1];break f}D=H[p+28>>2]+N(D,12)|0;p=H[D+8>>2];$=H[D+4>>2];D=H[D>>2]}p=Q+N(p,12)|0;j=L[p+8>>2];$=Q+N($,12)|0;l=L[$+8>>2];n=L[p>>2];o=L[$>>2];u=L[p+4>>2];B=L[$+4>>2];p=I[m+1392|0];Q=Q+N(D,12)|0;v=L[Q>>2];y=L[m+1328>>2];x=L[Q+4>>2];K=L[m+1340>>2];z=L[Q+8>>2];V=L[m+1352>>2];U=O(O(O(v*y)+O(x*K))+O(z*V));L[m+184>>2]=U;S=L[m+1324>>2];R=L[m+1336>>2];aa=L[m+1348>>2];Z=O(O(O(v*S)+O(x*R))+O(z*aa));L[m+180>>2]=Z;ha=v;v=L[m+1320>>2];G=x;x=L[m+1332>>2];P=z;z=L[m+1344>>2];Y=O(O(O(ha*v)+O(G*x))+O(P*z));L[m+176>>2]=Y;F[m+112|0]=0;H[m+104>>2]=2139095039;H[m+108>>2]=5;H[m+172>>2]=0;G=p?o:n;T=p?B:u;P=p?l:j;_=O(O(O(y*G)+O(K*T))+O(V*P));L[m+168>>2]=_;ca=O(O(O(G*S)+O(T*R))+O(P*aa));L[m+164>>2]=ca;G=O(O(O(G*v)+O(T*x))+O(P*z));L[m+160>>2]=G;H[m+156>>2]=0;n=p?n:o;o=p?u:B;j=p?j:l;u=O(O(O(y*n)+O(K*o))+O(V*j));L[m+152>>2]=u;B=O(O(O(n*S)+O(o*R))+O(j*aa));L[m+148>>2]=B;v=O(O(O(n*v)+O(o*x))+O(j*z));L[m+144>>2]=v;H[m+140>>2]=0;L[m+136>>2]=U;L[m+132>>2]=Z;L[m+128>>2]=Y;H[m+92>>2]=0;H[m+96>>2]=0;H[m+100>>2]=2139095039;L[m+88>>2]=O(_+O(U+u))*O(.33333298563957214);L[m+84>>2]=O(ca+O(Z+B))*O(.33333298563957214);L[m+80>>2]=O(G+O(Y+v))*O(.33333298563957214);p=H[a>>2];Q=H[b>>2];F[m+72|0]=0;H[m+64>>2]=0;H[m+68>>2]=1065353216;H[m+56>>2]=0;H[m+60>>2]=0;H[m+48>>2]=0;H[m+52>>2]=1065353216;H[m+40>>2]=0;H[m+44>>2]=0;H[m+32>>2]=1065353216;H[m+36>>2]=1065353216;H[m+24>>2]=0;H[m+28>>2]=0;H[m+16>>2]=1065353216;H[m+20>>2]=0;H[m+8>>2]=0;H[m+12>>2]=0;H[m>>2]=1065353216;H[m+4>>2]=0;l=O(Ra[H[(H[p>>2]<<2)+127136>>2]](p,Q,c,d,e,f,g,m+208|0,m+192|0,m,m+80|0,O(0)));o=O(-L[m+208>>2]);L[m+208>>2]=o;j=O(-L[m+212>>2]);L[m+212>>2]=j;n=O(-L[m+216>>2]);L[m+216>>2]=n;if(l<=O(0)){j=L[m+176>>2];l=L[m+180>>2];n=L[m+184>>2];o=O(u-n);L[m+8>>2]=n+o;u=O(B-l);L[m+4>>2]=l+u;B=O(v-j);L[m>>2]=j+B;v=n;n=O(_-n);L[m+1432>>2]=v+n;v=O(ca-l);L[m+1428>>2]=l+v;l=j;j=O(G-j);L[m+1424>>2]=l+j;qZ(m+1400|0,m+224|0,m+176|0,m,m+1424|0,m+1420|0,m+1416|0);l=O(0);y=O(L[m+1408>>2]-L[m+232>>2]);x=O(y*y);y=O(L[m+1400>>2]-L[m+224>>2]);z=O(y*y);y=O(L[m+1404>>2]-L[m+228>>2]);y=O(x+O(z+O(y*y)));if(y>2])+O(O(u*L[m+176>>2])+O(j*L[m+180>>2]))))>2],m+1320|0,H[ba>>2]);u=L[d+8>>2];j=L[m+8>>2];B=O(j+j);v=L[d>>2];j=L[m>>2];y=O(j+j);j=L[m+4>>2];x=O(j+j);K=L[d+4>>2];z=O(O(u*B)+O(O(v*y)+O(x*K)));o=L[d+12>>2];V=O(O(o*o)+O(-.5));n=O(O(u*z)+O(O(B*V)+O(o*O(O(v*x)-O(y*K)))));j=O(O(K*z)+O(O(x*V)+O(o*O(O(u*y)-O(B*v)))));o=O(O(v*z)+O(O(y*V)+O(o*O(O(K*B)-O(x*u)))))}if(l>2];C=L[m+200>>2];E=L[m+196>>2];A=L[m+192>>2];r=o;s=j;t=n;q=l}M=M+1|0;if((ga|0)!=(M|0)){continue}break}}L[h+8>>2]=t;L[h+4>>2]=s;L[h>>2]=r;L[i+8>>2]=C;L[i+4>>2]=E;L[i>>2]=A;H[k>>2]=da;a=H[m+508>>2];g:{if((a|0)<0|!(a&2147483647)){break g}a=H[m+500>>2];if((a|0)==(m+240|0)|!a){break g}b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,a)}a=H[m+780>>2];if((a|0)<0|!(a&2147483647)){break b}a=H[m+772>>2];if((a|0)==(m+512|0)|!a){break b}b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,a)}a=H[m+1100>>2];h:{if((a|0)<0|!(a&2147483647)){break h}a=H[m+1092>>2];if((a|0)==(m+832|0)|!a){break h}b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,a)}Oa=m+1440|0;return O(q)}function iL(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,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,J=0,M=0,P=0,Q=0,R=0,S=0,T=0,U=O(0);H[a+40>>2]=0;z=H[a+32>>2];q=a;r=Oa-32|0;Oa=r;e=H[a+28>>2];a=H[e+108>>2];a:{if(!a){break a}if(K[e+188>>2]>N(a,5)>>>0){p=Oa-48|0;Oa=p;g=e;s=H[e+112>>2];A=H[q+44>>2];b=H[e+136>>2];H[p>>2]=b;a=H[e+140>>2];H[p+8>>2]=a;H[p+4>>2]=a;a=H[e+132>>2];H[p+20>>2]=b;H[p+16>>2]=a;H[p+12>>2]=a;a=z<<2;b=a+e|0;E=H[b+156>>2];c=H[E+4>>2];b:{if((c&-2)==1073741822){break b}J=H[a+(g+132|0)>>2];a=(z<<3)+p|0;M=H[a+4>>2];F=H[a>>2];B=H[b+144>>2];Q=H[g+168>>2];R=H[g+116>>2];c:{d:{a=H[g+108>>2];e:{f:{if(a>>>0>=512){a=H[g+188>>2]<<1;if(!a){a=H[g+176>>2];H[a>>2]=0;H[a+4>>2]=0;S=g+180|0;P=g+184|0;break e}if((c&-2)==1073741822){break f}k=a|1;f=H[g+172>>2];d=H[g+124>>2];b=1;while(1){e=c>>>1|0;if(I[e+Q|0]){U=L[d+(e<<2)>>2];i=(b<<2)+B|0;g:{if(c&1){L[p+40>>2]=U+L[((s+N(e,24)|0)+(z<<2)|0)+12>>2];c=H[p+40>>2];a=((c|0)>=0?c|-2147483648:c^-1)+16&-16|4;break g}L[p+40>>2]=L[(s+N(e,24)|0)+(z<<2)>>2]-U;c=H[p+40>>2];a=((c|0)>=0?c|-2147483648:c^-1)-16&-16}H[i>>2]=a;H[f+(t<<2)>>2]=b;t=t+1|0}b=b+1|0;if((k|0)==(b|0)){break f}c=H[(b<<2)+E>>2];if((c&-2)!=1073741822){continue}break}break f}l=H[g+172>>2];if(a){k=H[g+124>>2];f=H[g+104>>2];c=0;while(1){e=H[f+(c<<2)>>2];d=(s+N(e,24)|0)+(z<<2)|0;a=k+(e<<2)|0;L[p+40>>2]=L[d>>2]-L[a>>2];b=H[p+40>>2];L[p+40>>2]=L[a>>2]+L[d+12>>2];a=H[p+40>>2];d=J+(e<<3)|0;H[(H[d>>2]<<2)+B>>2]=((b|0)>=0?b|-2147483648:b^-1)-16&-16;H[(H[d+4>>2]<<2)+B>>2]=((a|0)>=0?a|-2147483648:a^-1)+16&-16|4;a=t<<2;H[a+l>>2]=H[d>>2];H[l+(a|4)>>2]=H[d+4>>2];t=t+2|0;c=c+1|0;if(c>>>0>2]){continue}break}}Ey(l,t)}a=H[g+176>>2];H[a>>2]=0;H[a+4>>2]=0;k=g;S=g+180|0;P=g+184|0;if(t){break d}}g=a;break c}j=H[k+184>>2];g=a;while(1){d=H[H[k+172>>2]+(C<<2)>>2];b=H[(d<<2)+E>>2];while(1){n=d<<2;T=H[n+B>>2];G=b>>>1|0;e=G<<2;L[p+40>>2]=L[e+H[k+124>>2]>>2]+L[((s+N(G,24)|0)+(z<<2)|0)+12>>2];f=H[p+40>>2];c=H[j+n>>2];if(T>>>0>2]){a=G<<3;w=a+M|0;x=a+F|0;v=H[e+R>>2];y=v<<2&12;h:{if(b&1){b=d;while(1){m=c<<2;a=H[m+E>>2];i:{if(a&1){break i}D=a>>>1|0;c=D<<3;a=c+F|0;if(K[x+4>>2]<=K[a>>2]|K[a+4>>2]<=K[x>>2]){break i}a=c+M|0;if(K[w+4>>2]<=K[a>>2]|K[a+4>>2]<=K[w>>2]){break i}a=H[R+(D<<2)>>2];if((a|0)==(v|0)|!I[H[k+120>>2]+(y|a&3)|0]){break i}j:{if((o|0)!=(A|0)){c=H[q+36>>2];break j}h=H[q+36>>2];e=A<<4;u=H[k+4>>2];f=H[u+8>>2];c=H[u+4>>2]+(f<<2)|0;a=H[c-4>>2];k:{if((e|0)<=(a-H[u+16>>2]|0)){a=a-e|0;H[p+40>>2]=a;if(f>>>0>=(H[u+12>>2]&2147483647)>>>0){Xr(u+4|0,p+40|0);c=H[p+40>>2];break k}H[c>>2]=a;H[u+8>>2]=f+1;c=H[p+40>>2];break k}c=0;if(!e){break k}a=H[33808];c=Ra[H[H[a+12>>2]+8>>2]](a+12|0,e,20591,14391,99)|0}l=R6(c,h,A<<3);a=H[u+16>>2];l:{if(!(a>>>0<=h>>>0&h>>>0>2]>>>0)){if(!h){break l}a=H[33808];Ra[H[H[a+12>>2]+12>>2]](a+12|0,h);break l}e=H[u+4>>2];i=H[u+8>>2];a=i;while(1){f=a;a=a-1|0;j=e+(a<<2)|0;if(h>>>0>K[j>>2]){continue}break}m:{if(f>>>0>=i>>>0){break m}H[j>>2]=H[e+(f<<2)>>2];a=f+1|0;if((i|0)==(a|0)){break m}h=0;e=i+(f^-1)&3;if(e){while(1){H[j+4>>2]=H[H[u+4>>2]+(a<<2)>>2];a=a+1|0;j=j+4|0;h=h+1|0;if((e|0)!=(h|0)){continue}break}}if((i-f|0)-2>>>0<3){break m}while(1){f=a<<2;H[j+4>>2]=H[f+H[u+4>>2]>>2];H[j+8>>2]=H[(f+H[u+4>>2]|0)+4>>2];H[j+12>>2]=H[(f+H[u+4>>2]|0)+8>>2];H[j+16>>2]=H[(f+H[u+4>>2]|0)+12>>2];j=j+16|0;a=a+4|0;if((i|0)!=(a|0)){continue}break}}H[u+8>>2]=i-1}A=A<<1;H[q+36>>2]=l;j=H[k+184>>2]}c=(o<<3)+c|0;a=D>>>0>G>>>0;H[c+4>>2]=a?D:G;H[c>>2]=a?G:D;o=o+1|0}b=b-1|0;c=H[j+m>>2];if(T>>>0>2]){continue}break}break h}l=((f|0)>=0?f|-2147483648:f^-1)+16&-16|4;b=d;while(1){e=c<<2;a=H[e+E>>2];n:{if(!(a&1)){break n}h=a>>>1|0;c=h<<3;if(l>>>0<=K[(H[c+J>>2]<<2)+B>>2]){break n}a=c+F|0;if(K[x+4>>2]<=K[a>>2]|K[a+4>>2]<=K[x>>2]){break n}a=c+M|0;if(K[w+4>>2]<=K[a>>2]|K[a+4>>2]<=K[w>>2]){break n}a=H[R+(h<<2)>>2];if((a|0)==(v|0)|!I[H[k+120>>2]+(y|a&3)|0]){break n}o:{if((o|0)!=(A|0)){a=H[q+36>>2];break o}m=H[q+36>>2];f=H[k+4>>2];a=Gw(f,A<<4,1);c=R6(a,m,A<<3);Lw(f,m);H[q+36>>2]=c;A=A<<1;j=H[k+184>>2]}c=(o<<3)+a|0;a=h>>>0>G>>>0;H[c+4>>2]=a?G:h;H[c>>2]=a?h:G;o=o+1|0}b=b-1|0;c=H[e+j>>2];if(T>>>0>2]){continue}break}}a=H[k+180>>2];m=a+(c<<2)|0;h=H[m>>2];l=j+n|0;e=H[l>>2];i=a+(e<<2)|0;f=a+n|0;a=H[f>>2];H[i>>2]=a;H[(a<<2)+j>>2]=e;H[f>>2]=h;H[l>>2]=c;H[(h<<2)+j>>2]=d;H[m>>2]=d;while(1){c=g;g=c-8|0;if(K[c>>2]>b>>>0){continue}break}a=H[k+176>>2];if((c|0)==(a|0)|H[c+4>>2]+1>>>0>>0){H[c+8>>2]=b;g=c+8|0}else{g=c}H[g+4>>2]=d}d=d+1|0;c=d<<2;b=H[c+E>>2];if(!(I[Q+(H[(H[c+j>>2]<<2)+E>>2]>>>1|0)|0]?(b&-2)==1073741822|I[Q+(b>>>1|0)|0]:1)){continue}break}C=C+1|0;if((C|0)!=(t|0)){continue}break}}H[q+40>>2]=o;H[q+44>>2]=A;b=a+8|0;if(g>>>0>>0){break b}while(1){d=a;j=H[P>>2];a=b;b=H[a>>2];f=H[d+12>>2];if(b>>>0<=f>>>0){while(1){H[(b<<2)+j>>2]=b;b=b+1|0;f=H[d+12>>2];if(b>>>0<=f>>>0){continue}break}j=H[P>>2];b=H[a>>2]}c=b-1|0;n=H[S>>2];if(b>>>0<=f>>>0){while(1){c=H[(c<<2)+n>>2];if((c|0)!=(b|0)){l=H[(c<<2)+j>>2];v=l<<2;y=v+E|0;h=H[y>>2];m=b<<2;e=m+E|0;q=H[e>>2];f=m+B|0;k=H[f>>2];i=f;f=v+B|0;H[i>>2]=H[f>>2];H[e>>2]=H[y>>2];H[f>>2]=k;H[y>>2]=q;f=j+m|0;H[j+v>>2]=H[f>>2];H[(H[f>>2]<<2)+j>>2]=l;H[(J+(h<<2&-8)|0)+((h&1)<<2)>>2]=b;f=H[d+12>>2]}b=b+1|0;if(f>>>0>=b>>>0){continue}break}j=H[P>>2];n=H[S>>2];c=H[a>>2]-1|0}if(c>>>0<=f>>>0){while(1){b=c+1|0;H[(b<<2)+j>>2]=c;H[(c<<2)+n>>2]=b;c=b;if(b>>>0<=K[d+12>>2]){continue}break}}b=a+8|0;if(g>>>0>=b>>>0){continue}break}}Oa=p+48|0;break a}D=H[e+112>>2];o=H[q+44>>2];g=H[e+136>>2];H[r>>2]=g;a=H[e+140>>2];H[r+8>>2]=a;H[r+4>>2]=a;a=H[e+132>>2];H[r+20>>2]=g;H[r+16>>2]=a;H[r+12>>2]=a;b=z<<2;a=b+e|0;x=H[a+156>>2];g=H[x+4>>2];if((g&-2)==1073741822){break a}T=H[b+(e+132|0)>>2];w=H[a+144>>2];a=(z<<3)+r|0;Q=H[a+4>>2];R=H[a>>2];C=H[e+168>>2];S=H[e+116>>2];g=g>>>1|0;L[r+28>>2]=L[b+(D+N(g,24)|0)>>2]-L[H[e+124>>2]+(g<<2)>>2];a=H[r+28>>2];H[w+4>>2]=((a|0)>=0?a|-2147483648:a^-1)-16&-16;c=g+C|0;d=I[c|0];g=H[e+108>>2];a=H[e+176>>2];H[a>>2]=0;H[a+4>>2]=0;b=H[x+8>>2];p:{if((b&-2)==1073741822){g=a;break p}P=(g<<1)-d|0;d=I[c|0];g=a;c=2;while(1){q:{r:{s:{s=b>>>1|0;f=I[s+C|0];if((f|d)&255){h=s<<2;m=h+H[e+124>>2]|0;U=L[m>>2];P=P-f|0;n=c<<2;d=n+w|0;l=b&1;t:{if(l){L[r+28>>2]=U+L[((D+N(s,24)|0)+(z<<2)|0)+12>>2];b=H[r+28>>2];k=((b|0)>=0?b|-2147483648:b^-1)+16&-16|4;break t}L[r+28>>2]=L[(D+N(s,24)|0)+(z<<2)>>2]-U;b=H[r+28>>2];k=((b|0)>=0?b|-2147483648:b^-1)-16&-16}H[d>>2]=k;i=H[e+184>>2];d=H[n+i>>2];if(k>>>0>=K[w+(d<<2)>>2]){d=f;break q}L[r+28>>2]=L[m>>2]+L[((D+N(s,24)|0)+(z<<2)|0)+12>>2];a=H[r+28>>2];b=s<<3;J=b+Q|0;M=b+R|0;v=H[h+S>>2];y=v<<2&12;if(!l){break s}b=c;while(1){l=d<<2;a=H[l+x>>2];u:{if(a&1){break u}h=a>>>1|0;d=h<<3;a=d+R|0;if(K[M+4>>2]<=K[a>>2]|K[a+4>>2]<=K[M>>2]){break u}a=d+Q|0;if(K[J+4>>2]<=K[a>>2]|K[a+4>>2]<=K[J>>2]){break u}a=H[S+(h<<2)>>2];if((a|0)==(v|0)|!I[H[e+120>>2]+(y|a&3)|0]){break u}v:{if((o|0)!=(t|0)){d=H[q+36>>2];break v}m=H[q+36>>2];f=H[e+4>>2];d=Gw(f,o<<4,1);a=R6(d,m,o<<3);Lw(f,m);H[q+36>>2]=a;o=o<<1;i=H[e+184>>2]}d=(t<<3)+d|0;a=h>>>0>s>>>0;H[d+4>>2]=a?h:s;H[d>>2]=a?s:h;t=t+1|0}b=b-1|0;d=H[l+i>>2];if(k>>>0>2]){continue}break}break r}d=0;if(!P){break p}break q}m=((a|0)>=0?a|-2147483648:a^-1)+16&-16|4;b=c;while(1){l=d<<2;a=H[l+x>>2];w:{if(!(a&1)){break w}F=a>>>1|0;d=F<<3;if(m>>>0<=K[w+(H[d+T>>2]<<2)>>2]){break w}a=d+R|0;if(K[M+4>>2]<=K[a>>2]|K[a+4>>2]<=K[M>>2]){break w}a=d+Q|0;if(K[J+4>>2]<=K[a>>2]|K[a+4>>2]<=K[J>>2]){break w}a=H[S+(F<<2)>>2];if((a|0)==(v|0)|!I[H[e+120>>2]+(y|a&3)|0]){break w}x:{if((o|0)!=(t|0)){d=H[q+36>>2];break x}h=H[q+36>>2];f=H[e+4>>2];d=Gw(f,o<<4,1);a=R6(d,h,o<<3);Lw(f,h);H[q+36>>2]=a;o=o<<1;i=H[e+184>>2]}d=(t<<3)+d|0;a=s>>>0>>0;H[d+4>>2]=a?s:F;H[d>>2]=a?F:s;t=t+1|0}b=b-1|0;d=H[l+i>>2];if(k>>>0>2]){continue}break}}a=H[e+180>>2];m=a+(d<<2)|0;h=H[m>>2];l=n+i|0;k=H[l>>2];j=a+(k<<2)|0;f=a+n|0;a=H[f>>2];H[j>>2]=a;H[(a<<2)+i>>2]=k;H[f>>2]=h;H[l>>2]=d;H[(h<<2)+i>>2]=c;H[m>>2]=c;while(1){d=g;g=d-8|0;if(K[d>>2]>b>>>0){continue}break}a=H[e+176>>2];if((d|0)==(a|0)|H[d+4>>2]+1>>>0>>0){H[d+8>>2]=b;g=d+8|0}else{g=d}H[g+4>>2]=c;d=1}c=c+1|0;b=H[x+(c<<2)>>2];if((b&-2)!=1073741822){continue}break}}H[q+40>>2]=t;H[q+44>>2]=o;b=a+8|0;y:{if(g>>>0>=b>>>0){while(1){c=a;n=H[e+184>>2];a=b;b=H[a>>2];i=H[c+12>>2];if(b>>>0<=i>>>0){while(1){H[(b<<2)+n>>2]=b;b=b+1|0;i=H[c+12>>2];if(b>>>0<=i>>>0){continue}break}n=H[e+184>>2];b=H[a>>2]}d=b-1|0;o=H[e+180>>2];if(b>>>0<=i>>>0){while(1){d=H[(d<<2)+o>>2];if((d|0)!=(b|0)){m=H[(d<<2)+n>>2];C=m<<2;v=C+x|0;y=H[v>>2];h=b<<2;l=h+x|0;q=H[l>>2];f=h+w|0;k=H[f>>2];i=f;f=w+C|0;H[i>>2]=H[f>>2];H[l>>2]=H[v>>2];H[f>>2]=k;H[v>>2]=q;f=h+n|0;H[n+C>>2]=H[f>>2];H[(H[f>>2]<<2)+n>>2]=m;H[(T+(y<<2&-8)|0)+((y&1)<<2)>>2]=b;i=H[c+12>>2]}b=b+1|0;if(i>>>0>=b>>>0){continue}break}n=H[e+184>>2];o=H[e+180>>2];d=H[a>>2]-1|0}if(d>>>0<=i>>>0){while(1){b=d+1|0;H[(b<<2)+n>>2]=d;H[(d<<2)+o>>2]=b;d=b;if(b>>>0<=K[c+12>>2]){continue}break}}b=a+8|0;if(g>>>0>=b>>>0){continue}break y}}n=H[e+184>>2]}H[n>>2]=0}Oa=r+32|0}function dn(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=0,n=0,o=0,p=0,q=0;d=Oa-272|0;Oa=d;a:{if((a|0)!=67174656){H[d>>2]=67174656;H[d+4>>2]=a;a=d+16|0;F5(a,256,1820,d);b=Ra[H[H[b>>2]+4>>2]](b)|0;Ra[H[H[b>>2]+8>>2]](b,4,a,6215,190);a=0;break a}if(!(L[c>>2]>O(0))){a=Ra[H[H[b>>2]+4>>2]](b)|0;Ra[H[H[a>>2]+8>>2]](a,4,66938,6215,196);a=0;break a}a=H[33773];if(!a){q5();H[33804]=-28;H[33801]=-20;H[33802]=-20;H[33799]=-24;H[33800]=-24;H[33795]=-64;H[33796]=-64;H[33805]=-64;H[33806]=-64;H[33797]=-64;H[33798]=-48;H[33807]=-64;H[d+24>>2]=-80;H[d+16>>2]=-80;H[d+20>>2]=-80;a=H[33808];b=Ra[H[H[a>>2]+20>>2]](a)|0?26568:55639;a=Ra[H[H[a+12>>2]+8>>2]](a+12|0,108,b,6215,211)|0;H[a+4>>2]=0;H[a+8>>2]=0;H[a+12>>2]=0;H[a>>2]=106692;b=H[c+4>>2];H[a+16>>2]=H[c>>2];H[a+20>>2]=b;H[33794]=a+16;b=H[d+20>>2];H[33791]=H[d+16>>2];H[33792]=b;H[33793]=H[d+24>>2];H[a+32>>2]=0;H[a+36>>2]=0;H[a+24>>2]=0;H[a+28>>2]=0;b=H[33808];b=Ra[H[H[b+12>>2]+8>>2]](b+12|0,512,20591,14663,46)|0;H[a+44>>2]=128;H[a+40>>2]=b;S6(b,0,512);H[a+48>>2]=106892;b=H[33808];c=H[33808];j=a,k=(m=b+12|0,n=28,o=Ra[H[H[c>>2]+20>>2]](c)|0?33606:55639,p=13721,q=113,l=H[H[b+12>>2]+8>>2],Ra[l](m|0,n|0,o|0,p|0,q|0)|0),H[j+52>>2]=k;b=Oa-16|0;Oa=b;Oa=b+16|0;H[a+72>>2]=0;H[a+76>>2]=0;b=a- -64|0;H[b>>2]=0;H[b+4>>2]=0;H[a+56>>2]=0;H[a+60>>2]=0;H[a+88>>2]=0;H[a+92>>2]=0;H[a+80>>2]=1061158912;H[a+84>>2]=-1;om(a+56|0,64);F[a+100|0]=0;H[a+96>>2]=106932;b=H[33808];c=H[33808];j=a,k=(q=b+12|0,p=28,o=Ra[H[H[c>>2]+20>>2]](c)|0?33606:55639,n=13721,m=113,l=H[H[b+12>>2]+8>>2],Ra[l](q|0,p|0,o|0,n|0,m|0)|0),H[j+104>>2]=k;b=Oa-16|0;Oa=b;Oa=b+16|0;H[33772]=a;a=H[33808];b=Ra[H[H[a>>2]+20>>2]](a)|0?21248:55639;b=Ra[H[H[a+12>>2]+8>>2]](a+12|0,3936,b,4393,101)|0;H[b>>2]=125444;a=H[33808];c=Ra[H[H[a>>2]+20>>2]](a)|0?33606:55639;j=b,k=Ra[H[H[a+12>>2]+8>>2]](a+12|0,28,c,13721,113)|0,H[j+4>>2]=k;a=Oa-16|0;Oa=a;Oa=a+16|0;H[b+24>>2]=0;H[b+28>>2]=0;H[b+16>>2]=0;H[b+20>>2]=0;H[b+8>>2]=0;H[b+12>>2]=0;H[b+40>>2]=0;H[b+44>>2]=0;H[b+32>>2]=1061158912;H[b+36>>2]=-1;xg(b+8|0,64);a=b- -64|0;H[a>>2]=0;H[a+4>>2]=0;H[b+56>>2]=0;H[b+60>>2]=0;H[b+48>>2]=0;H[b+52>>2]=0;H[b+80>>2]=0;H[b+84>>2]=0;H[b+72>>2]=1061158912;H[b+76>>2]=-1;xg(b+48|0,64);H[b+104>>2]=0;H[b+108>>2]=0;H[b+96>>2]=0;H[b+100>>2]=0;H[b+88>>2]=0;H[b+92>>2]=0;H[b+120>>2]=0;H[b+124>>2]=0;H[b+112>>2]=1061158912;H[b+116>>2]=-1;xg(b+88|0,64);H[b+144>>2]=0;H[b+148>>2]=0;H[b+136>>2]=0;H[b+140>>2]=0;H[b+128>>2]=0;H[b+132>>2]=0;H[b+160>>2]=0;H[b+164>>2]=0;H[b+152>>2]=1061158912;H[b+156>>2]=-1;xg(b+128|0,64);H[b+176>>2]=0;H[b+168>>2]=0;H[b+172>>2]=0;H[b+448>>2]=0;H[b>>2]=106596;H[b+468>>2]=0;H[b+460>>2]=0;H[b+464>>2]=1536;H[b+452>>2]=64;H[b+456>>2]=32;H[b+444>>2]=b+184;F[b+440|0]=1;a=H[33808];c=Ra[H[H[a>>2]+20>>2]](a)|0?33606:55639;j=b,k=Ra[H[H[a+12>>2]+8>>2]](a+12|0,28,c,13721,113)|0,H[j+472>>2]=k;a=Oa-16|0;Oa=a;Oa=a+16|0;a=H[33808];c=H[33808];a=(k=a+12|0,l=884,m=Ra[H[H[c>>2]+20>>2]](c)|0?30168:55639,n=4393,o=51,j=H[H[a+12>>2]+8>>2],Ra[j](k|0,l|0,m|0,n|0,o|0)|0);H[a>>2]=106624;c=H[33808];e=H[33808];j=a,o=(m=c+12|0,l=28,k=Ra[H[H[e>>2]+20>>2]](e)|0?33606:55639,p=13721,q=113,n=H[H[c+12>>2]+8>>2],Ra[n](m|0,l|0,k|0,p|0,q|0)|0),H[j+4>>2]=o;c=Oa-16|0;Oa=c;Oa=c+16|0;H[a+568>>2]=0;H[a+292>>2]=4096;H[a+296>>2]=0;H[a+284>>2]=256;H[a+288>>2]=0;H[a+272>>2]=a+12;F[a+268|0]=1;H[a+276>>2]=0;H[a+280>>2]=64;H[a+860>>2]=0;H[a+588>>2]=0;H[a+580>>2]=0;H[a+584>>2]=4096;H[a+572>>2]=64;H[a+576>>2]=64;H[a+564>>2]=a+304;F[a+560|0]=1;H[a+880>>2]=0;H[a+872>>2]=0;H[a+876>>2]=4096;H[a+864>>2]=64;H[a+868>>2]=16;H[a+856>>2]=a+596;F[a+852|0]=1;H[b+504>>2]=1061158912;H[b+508>>2]=-1;H[b+512>>2]=0;H[b+516>>2]=0;H[b+496>>2]=0;H[b+500>>2]=0;H[b+488>>2]=0;H[b+492>>2]=0;H[b+480>>2]=0;H[b+484>>2]=0;H[b+476>>2]=a;Il(b+480|0,64);H[b+536>>2]=0;H[b+540>>2]=0;H[b+528>>2]=0;H[b+532>>2]=0;H[b+520>>2]=0;H[b+524>>2]=0;H[b+552>>2]=0;H[b+556>>2]=0;H[b+544>>2]=1061158912;H[b+548>>2]=-1;Il(b+520|0,64);H[b+576>>2]=0;H[b+580>>2]=0;H[b+568>>2]=0;H[b+572>>2]=0;H[b+560>>2]=0;H[b+564>>2]=0;H[b+592>>2]=0;H[b+596>>2]=0;H[b+584>>2]=1061158912;H[b+588>>2]=-1;Il(b+560|0,64);H[b+616>>2]=0;H[b+620>>2]=0;H[b+608>>2]=0;H[b+612>>2]=0;H[b+600>>2]=0;H[b+604>>2]=0;H[b+632>>2]=0;H[b+636>>2]=0;H[b+624>>2]=1061158912;H[b+628>>2]=-1;Il(b+600|0,64);H[b+656>>2]=0;H[b+660>>2]=0;H[b+648>>2]=0;H[b+652>>2]=0;H[b+640>>2]=0;H[b+644>>2]=0;H[b+672>>2]=0;H[b+676>>2]=0;H[b+664>>2]=1061158912;H[b+668>>2]=-1;xg(b+640|0,64);H[b+964>>2]=4096;H[b+968>>2]=0;H[b+956>>2]=12;H[b+960>>2]=0;H[b+944>>2]=b+684;F[b+940|0]=1;H[b+948>>2]=0;H[b+952>>2]=64;a=H[33808];c=H[33808];j=b,o=(q=a+12|0,p=28,k=Ra[H[H[c>>2]+20>>2]](c)|0?33606:55639,l=13721,m=113,n=H[H[a+12>>2]+8>>2],Ra[n](q|0,p|0,k|0,l|0,m|0)|0),H[j+972>>2]=o;a=Oa-16|0;Oa=a;Oa=a+16|0;a=b+1260|0;H[a>>2]=4096;H[a+4>>2]=0;a=b+1252|0;H[a>>2]=36;H[a+4>>2]=0;H[b+1240>>2]=b+980;F[b+1236|0]=1;a=b+1244|0;H[a>>2]=0;H[a+4>>2]=64;a=H[33808];c=H[33808];j=b,o=(m=a+12|0,l=28,k=Ra[H[H[c>>2]+20>>2]](c)|0?33606:55639,p=13721,q=113,n=H[H[a+12>>2]+8>>2],Ra[n](m|0,l|0,k|0,p|0,q|0)|0),H[j+1268>>2]=o;a=Oa-16|0;Oa=a;Oa=a+16|0;a=b+1556|0;H[a>>2]=4096;H[a+4>>2]=0;a=b+1548|0;H[a>>2]=19;H[a+4>>2]=0;H[b+1536>>2]=b+1276;F[b+1532|0]=1;a=b+1540|0;H[a>>2]=0;H[a+4>>2]=64;a=H[33808];c=H[33808];j=b,o=(q=a+12|0,p=28,k=Ra[H[H[c>>2]+20>>2]](c)|0?33606:55639,l=13721,m=113,n=H[H[a+12>>2]+8>>2],Ra[n](q|0,p|0,k|0,l|0,m|0)|0),H[j+1564>>2]=o;a=Oa-16|0;Oa=a;Oa=a+16|0;a=b+1852|0;H[a>>2]=4096;H[a+4>>2]=0;a=b+1844|0;H[a>>2]=93;H[a+4>>2]=0;H[b+1832>>2]=b+1572;F[b+1828|0]=1;a=b+1836|0;H[a>>2]=0;H[a+4>>2]=64;a=H[33808];c=H[33808];j=b,o=(m=a+12|0,l=28,k=Ra[H[H[c>>2]+20>>2]](c)|0?33606:55639,p=13721,q=113,n=H[H[a+12>>2]+8>>2],Ra[n](m|0,l|0,k|0,p|0,q|0)|0),H[j+1860>>2]=o;a=Oa-16|0;Oa=a;Oa=a+16|0;a=b+2148|0;H[a>>2]=4096;H[a+4>>2]=0;a=b+2140|0;H[a>>2]=33;H[a+4>>2]=0;H[b+2128>>2]=b+1868;F[b+2124|0]=1;a=b+2132|0;H[a>>2]=0;H[a+4>>2]=64;a=H[33808];c=H[33808];j=b,o=(q=a+12|0,p=28,k=Ra[H[H[c>>2]+20>>2]](c)|0?33606:55639,l=13721,m=113,n=H[H[a+12>>2]+8>>2],Ra[n](q|0,p|0,k|0,l|0,m|0)|0),H[j+2156>>2]=o;a=Oa-16|0;Oa=a;Oa=a+16|0;a=b+2444|0;H[a>>2]=4096;H[a+4>>2]=0;a=b+2436|0;H[a>>2]=64;H[a+4>>2]=0;H[b+2424>>2]=b+2164;F[b+2420|0]=1;a=b+2428|0;H[a>>2]=0;H[a+4>>2]=64;a=H[33808];c=H[33808];j=b,o=(m=a+12|0,l=28,k=Ra[H[H[c>>2]+20>>2]](c)|0?33606:55639,p=13721,q=113,n=H[H[a+12>>2]+8>>2],Ra[n](m|0,l|0,k|0,p|0,q|0)|0),H[j+2452>>2]=o;a=Oa-16|0;Oa=a;Oa=a+16|0;a=b+2740|0;H[a>>2]=4096;H[a+4>>2]=0;a=b+2732|0;H[a>>2]=34;H[a+4>>2]=0;H[b+2720>>2]=b+2460;F[b+2716|0]=1;a=b+2724|0;H[a>>2]=0;H[a+4>>2]=64;a=H[33808];c=H[33808];j=b,o=(q=a+12|0,p=28,k=Ra[H[H[c>>2]+20>>2]](c)|0?33606:55639,l=13721,m=113,n=H[H[a+12>>2]+8>>2],Ra[n](q|0,p|0,k|0,l|0,m|0)|0),H[j+2748>>2]=o;a=Oa-16|0;Oa=a;Oa=a+16|0;a=b+3036|0;H[a>>2]=4096;H[a+4>>2]=0;a=b+3028|0;H[a>>2]=31;H[a+4>>2]=0;H[b+3016>>2]=b+2756;F[b+3012|0]=1;a=b+3020|0;H[a>>2]=0;H[a+4>>2]=64;a=H[33808];c=H[33808];j=b,o=(m=a+12|0,l=28,k=Ra[H[H[c>>2]+20>>2]](c)|0?33606:55639,p=13721,q=113,n=H[H[a+12>>2]+8>>2],Ra[n](m|0,l|0,k|0,p|0,q|0)|0),H[j+3044>>2]=o;a=Oa-16|0;Oa=a;Oa=a+16|0;a=b+3332|0;H[a>>2]=4096;H[a+4>>2]=0;a=b+3324|0;H[a>>2]=10;H[a+4>>2]=0;H[b+3312>>2]=b+3052;F[b+3308|0]=1;a=b+3316|0;H[a>>2]=0;H[a+4>>2]=64;a=H[33808];c=H[33808];j=b,o=(q=a+12|0,p=28,k=Ra[H[H[c>>2]+20>>2]](c)|0?33606:55639,l=13721,m=113,n=H[H[a+12>>2]+8>>2],Ra[n](q|0,p|0,k|0,l|0,m|0)|0),H[j+3340>>2]=o;a=Oa-16|0;Oa=a;Oa=a+16|0;a=b+3628|0;H[a>>2]=4096;H[a+4>>2]=0;a=b+3620|0;H[a>>2]=10;H[a+4>>2]=0;H[b+3608>>2]=b+3348;F[b+3604|0]=1;a=b+3612|0;H[a>>2]=0;H[a+4>>2]=64;a=H[33808];c=H[33808];j=b,o=(m=a+12|0,l=28,k=Ra[H[H[c>>2]+20>>2]](c)|0?33606:55639,p=13721,q=113,n=H[H[a+12>>2]+8>>2],Ra[n](m|0,l|0,k|0,p|0,q|0)|0),H[j+3636>>2]=o;a=Oa-16|0;Oa=a;Oa=a+16|0;a=b+3924|0;H[a>>2]=4096;H[a+4>>2]=0;a=b+3916|0;H[a>>2]=10;H[a+4>>2]=0;H[b+3904>>2]=b+3644;F[b+3900|0]=1;a=b+3908|0;H[a>>2]=0;H[a+4>>2]=64;a=H[33808];c=H[33808];j=b,o=(q=a+12|0,p=28,k=Ra[H[H[c>>2]+20>>2]](c)|0?33606:55639,l=13721,m=113,n=H[H[a+12>>2]+8>>2],Ra[n](q|0,p|0,k|0,l|0,m|0)|0),H[j+3932>>2]=o;a=Oa-16|0;Oa=a;Oa=a+16|0;H[33768]=b;e=Oa-16|0;Oa=e;c=H[33768];b=H[33772]+96|0;H[e+12>>2]=b;a=H[c+172>>2];b:{if(a>>>0>=(H[c+176>>2]&2147483647)>>>0){a=0;b=H[c+176>>2]&2147483647;g=b?b<<1:1;c:{if(!g){break c}b=g<<2;if(!b){break c}a=H[33808];f=Ra[H[H[a>>2]+20>>2]](a)|0?49388:55639;a=Ra[H[H[a+12>>2]+8>>2]](a+12|0,b,f,13582,553)|0}f=H[c+172>>2];i=(f<<2)+a|0;if((f|0)>0){h=H[c+168>>2];b=a;while(1){H[b>>2]=H[h>>2];h=h+4|0;b=b+4|0;if(i>>>0>b>>>0){continue}break}}H[i>>2]=H[e+12>>2];d:{if(H[c+176>>2]<0){break d}b=H[c+168>>2];if(!b){break d}f=H[33808];Ra[H[H[f+12>>2]+12>>2]](f+12|0,b);f=H[c+172>>2]}H[c+176>>2]=g;H[c+168>>2]=a;H[c+172>>2]=f+1;break b}H[H[c+168>>2]+(a<<2)>>2]=b;H[c+172>>2]=a+1}Oa=e+16|0;a=H[33773]}H[33773]=a+1;a=H[33772]}Oa=d+272|0;return a|0}function oD(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=0,o=O(0),p=O(0),q=O(0),r=0,s=0,t=O(0),u=O(0),v=O(0),w=0,x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=0,I=O(0),K=O(0),M=O(0),P=O(0),Q=O(0),R=O(0),S=O(0);e=Oa-224|0;Oa=e;n=1;a:{if(!H[a+592>>2]){break a}s=a+4|0;b:{switch(J[b+98>>1]){case 3:if(J[b+96>>1]){n=KC(e+32|0,b+48|0,b+12|0,b);G[e+28>>1]=J[d>>1];H[e+24>>2]=c;H[e+20>>2]=b;H[e+16>>2]=114968;n=pD(H[a+644>>2],H[a+640>>2],s,n,e+16|0);break a}g=L[b+84>>2];f=L[b+88>>2];m=L[b+76>>2];l=L[b+92>>2];i=L[b+80>>2];k=L[b+72>>2];H[e+60>>2]=0;L[e+56>>2]=O(l-i)*O(.5);L[e+52>>2]=O(f-m)*O(.5);H[e+44>>2]=0;L[e+48>>2]=O(g-k)*O(.5);L[e+40>>2]=O(i+l)*O(.5);L[e+36>>2]=O(m+f)*O(.5);L[e+32>>2]=O(k+g)*O(.5);G[e+28>>1]=J[d>>1];H[e+24>>2]=c;H[e+20>>2]=b;H[e+16>>2]=115008;w=H[a+644>>2];E=H[a+640>>2];r=e+16|0;a=Oa-1056|0;Oa=a;F[a+1040|0]=1;H[a+1048>>2]=256;H[a+1052>>2]=256;H[a+1044>>2]=a+16;H[a+16>>2]=H[s+588>>2];c=1;c:{while(1){c=c-1|0;b=H[H[a+1044>>2]+(c<<2)>>2];g=L[b+16>>2];f=L[b>>2];m=O(g+f);g=O(g-f);i=L[b+24>>2];k=L[b+8>>2];l=O(i+k);h=L[b+20>>2];j=L[b+4>>2];f=O(h+j);i=O(i-k);k=O(h-j);while(1){d:{h=O(m*O(.5));m=L[e+32>>2];h=O(h-m);j=O(-h);q=O(g*O(.5));g=L[e+48>>2];if(!(O(q+g)>=(j>2];h=O(h-f);j=O(-h);q=O(k*O(.5));k=L[e+52>>2];if(!(O(q+k)>=(j>2];h=O(h-l);j=O(-h);q=O(i*O(.5));i=L[e+56>>2];if(!(O(q+i)>=(j>2]){b=H[b+36>>2];n=b+4|0;e:{f:{b=H[b>>2];switch(b|0){case 0:break d;case 1:break f;default:break e}}if(Ra[H[H[r>>2]+8>>2]](r,a+12|0,w+N(H[n>>2],44)|0)|0){break d}n=0;break c}while(1){s=H[n>>2];d=E+N(s,24)|0;h=L[d+12>>2];o=L[d>>2];m=O(O(O(o+h)*O(.5))-m);j=O(-m);g:{if(!(O(O(O(h-o)*O(.5))+g)>=(j>2];h=L[d+16>>2];g=O(O(O(m+h)*O(.5))-f);f=O(-g);if(!(O(O(O(h-m)*O(.5))+k)>=(f>2];k=L[d+20>>2];g=O(O(O(m+k)*O(.5))-l);f=O(-g);if(!(O(O(O(k-m)*O(.5))+i)>=(f>2]+8>>2]](r,a+12|0,w+N(s,44)|0)|0){break g}n=0;break c}b=b-1|0;if(!b){break d}n=n+4|0;l=L[e+40>>2];f=L[e+36>>2];m=L[e+32>>2];i=L[e+56>>2];k=L[e+52>>2];g=L[e+48>>2];continue}}b=H[b+36>>2];H[H[a+1044>>2]+(c<<2)>>2]=b+48;c=c+1|0;if((c|0)==(H[a+1052>>2]&2147483647)){iC(a+16|0,c<<1)}g=L[b+16>>2];f=L[b>>2];m=O(g+f);g=O(g-f);i=L[b+24>>2];k=L[b+8>>2];l=O(i+k);h=L[b+20>>2];j=L[b+4>>2];f=O(h+j);i=O(i-k);k=O(h-j);continue}break}if(c){continue}break}n=1}b=H[a+1052>>2];h:{if((b|0)<0|!(b&2147483647)){break h}b=H[a+1044>>2];if((b|0)==(a+16|0)|!b){break h}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}Oa=a+1056|0;break a;case 2:m=L[b+60>>2];j=L[b+124>>2];k=L[b+112>>2];h=L[b+116>>2];g=L[b+120>>2];H[e+44>>2]=0;L[e+40>>2]=g;L[e+36>>2]=h;L[e+32>>2]=k;f=L[b+16>>2];i=L[b+20>>2];l=L[b+12>>2];H[e+124>>2]=0;H[e+108>>2]=0;H[e+92>>2]=0;j=O(j*O(1.0099999904632568));L[e+88>>2]=j;L[e+84>>2]=j;H[e+76>>2]=0;L[e+72>>2]=l;L[e+68>>2]=i;H[e+60>>2]=0;L[e+56>>2]=i;L[e+52>>2]=f;o=O(-l);o=l>o?l:o;L[e+120>>2]=o;p=O(-i);p=i>p?i:p;L[e+116>>2]=p;L[e+104>>2]=p;p=O(-f);p=f>p?f:p;L[e+100>>2]=p;L[e+80>>2]=j;L[e+64>>2]=f;L[e+48>>2]=l;L[e+112>>2]=p;L[e+96>>2]=o;H[e+156>>2]=0;H[e+140>>2]=0;j=O(m+m);i:{if(j>=O(3.4028234663852886e38)){m=f==O(0)?h:f>=O(0)?O(3.4028234663852886e38):O(-3.4028234663852886e38);l=l==O(0)?k:l>=O(0)?O(3.4028234663852886e38):O(-3.4028234663852886e38);f=g;if(i==O(0)){break i}f=i>=O(0)?O(3.4028234663852886e38):O(-3.4028234663852886e38);break i}m=O(h+O(j*f));l=O(k+O(j*l));f=O(g+O(j*i))}L[e+152>>2]=f>2]=h>m?h:m;L[e+136>>2]=f>g?g:f;L[e+132>>2]=h>2]=k>l?k:l;L[e+128>>2]=k>1]=J[d>>1];H[e+24>>2]=c;H[e+20>>2]=b;H[e+16>>2]=115040;w=H[a+644>>2];E=H[a+640>>2];r=e+16|0;a=Oa-1056|0;Oa=a;F[a+1040|0]=1;H[a+1048>>2]=256;H[a+1052>>2]=256;H[a+1044>>2]=a+16;H[a+16>>2]=H[s+588>>2];c=1;j:{while(1){c=c-1|0;b=H[H[a+1044>>2]+(c<<2)>>2];g=L[b+16>>2];f=L[b>>2];k=O(g+f);m=O(g-f);f=L[b+24>>2];i=L[b+8>>2];g=O(f+i);h=L[b+20>>2];j=L[b+4>>2];l=O(h+j);f=O(f-i);i=O(h-j);while(1){k:{h=L[e+128>>2];j=O(k*O(.5));q=O(m*O(.5));m=L[e+80>>2];k=O(q+m);if(!(h<=O(j+k))){break k}o=L[e+144>>2];if(!(o>=O(j-k))){break k}p=L[e+36>>2];t=O(l*O(.5));q=O(p-t);v=L[e+48>>2];A=L[e+32>>2];B=O(A-j);j=L[e+64>>2];y=O(O(q*v)-O(B*j));C=O(-y);I=L[e+112>>2];K=L[e+84>>2];l=O(O(i*O(.5))+K);M=L[e+96>>2];if(!(O(O(k*I)+O(l*M))>=(y>C?y:C))){break k}y=L[e+132>>2];if(!(y<=O(t+l))){break k}C=L[e+148>>2];if(!(C>=O(t-l))){break k}t=L[e+40>>2];z=O(g*O(.5));u=O(t-z);P=L[e+52>>2];g=q;q=L[e+68>>2];i=O(O(u*P)-O(g*q));D=O(-i);Q=L[e+116>>2];g=O(f*O(.5));f=L[e+88>>2];g=O(g+f);R=L[e+100>>2];if(!(O(O(l*Q)+O(g*R))>=(i>D?i:D))){break k}D=L[e+136>>2];if(!(D<=O(z+g))){break k}i=L[e+152>>2];if(!(i>=O(z-g))){break k}z=L[e+56>>2];x=O(B*z);B=L[e+72>>2];u=O(x-O(u*B));x=O(-u);l=L[e+120>>2];S=O(g*l);g=L[e+104>>2];if(!(O(S+O(k*g))>=(u>x?u:x))){break k}if(!H[b+40>>2]){b=H[b+36>>2];n=b+4|0;l:{m:{b=H[b>>2];switch(b|0){case 0:break k;case 1:break m;default:break l}}if(Ra[H[H[r>>2]+8>>2]](r,a+12|0,w+N(H[n>>2],44)|0)|0){break k}n=0;break j}while(1){n:{x=h;s=H[n>>2];d=E+N(s,24)|0;k=L[d>>2];u=L[d+12>>2];h=O(O(k+u)*O(.5));k=O(O(O(u-k)*O(.5))+m);if(!(x<=O(h+k))|!(O(h-k)<=o)){break n}o=L[d+16>>2];u=L[d+4>>2];m=O(O(O(o-u)*O(.5))+K);o=O(O(u+o)*O(.5));p=O(p-o);x=O(p*v);v=O(A-h);h=O(x-O(v*j));j=O(-h);if(!(O(o-m)<=C)|(!(O(O(k*I)+O(m*M))>=(j=y))){break n}h=L[d+20>>2];j=L[d+8>>2];f=O(O(O(h-j)*O(.5))+f);h=O(O(j+h)*O(.5));t=O(t-h);j=O(O(t*P)-O(p*q));o=O(-j);if(!(O(h-f)<=i)|(!(O(O(m*Q)+O(f*R))>=(j>o?j:o))|!(O(h+f)>=D))){break n}m=O(O(v*z)-O(t*B));i=O(-m);if(!(O(O(f*l)+O(k*g))>=(i>2]+8>>2]](r,a+12|0,w+N(s,44)|0)|0){break n}n=0;break j}b=b-1|0;if(!b){break k}n=n+4|0;i=L[e+152>>2];C=L[e+148>>2];o=L[e+144>>2];D=L[e+136>>2];y=L[e+132>>2];h=L[e+128>>2];g=L[e+104>>2];R=L[e+100>>2];M=L[e+96>>2];l=L[e+120>>2];Q=L[e+116>>2];I=L[e+112>>2];z=L[e+56>>2];P=L[e+52>>2];v=L[e+48>>2];B=L[e+72>>2];q=L[e+68>>2];j=L[e+64>>2];t=L[e+40>>2];p=L[e+36>>2];A=L[e+32>>2];f=L[e+88>>2];K=L[e+84>>2];m=L[e+80>>2];continue}}b=H[b+36>>2];H[H[a+1044>>2]+(c<<2)>>2]=b+48;c=c+1|0;if((c|0)==(H[a+1052>>2]&2147483647)){iC(a+16|0,c<<1)}g=L[b+16>>2];f=L[b>>2];k=O(g+f);m=O(g-f);f=L[b+24>>2];i=L[b+8>>2];g=O(f+i);h=L[b+20>>2];j=L[b+4>>2];l=O(h+j);f=O(f-i);i=O(h-j);continue}break}if(c){continue}break}n=1}b=H[a+1052>>2];o:{if((b|0)<0|!(b&2147483647)){break o}b=H[a+1044>>2];if((b|0)==(a+16|0)|!b){break o}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}Oa=a+1056|0;break a;case 0:g=L[b+112>>2];f=L[b+108>>2];n=H[b+104>>2];r=H[b+100>>2];H[e+44>>2]=0;L[e+40>>2]=f;H[e+32>>2]=r;H[e+36>>2]=n;L[e+48>>2]=g*g;G[e+28>>1]=J[d>>1];H[e+24>>2]=c;H[e+20>>2]=b;H[e+16>>2]=115072;w=H[a+644>>2];E=H[a+640>>2];r=e+16|0;a=Oa-1056|0;Oa=a;F[a+1040|0]=1;H[a+1048>>2]=256;H[a+1052>>2]=256;H[a+1044>>2]=a+16;H[a+16>>2]=H[s+588>>2];c=1;p:{while(1){c=c-1|0;b=H[H[a+1044>>2]+(c<<2)>>2];g=L[b+16>>2];f=L[b>>2];m=O(g+f);l=O(g-f);i=L[b+24>>2];k=L[b+8>>2];g=O(i+k);h=L[b+20>>2];j=L[b+4>>2];f=O(h+j);i=O(i-k);k=O(h-j);while(1){q:{j=L[e+40>>2];o=O(j-O(g*O(.5)));i=O(i*O(.5));p=i>o?o:i;g=L[e+32>>2];t=O(g-O(m*O(.5)));l=O(l*O(.5));v=l>t?t:l;m=L[e+36>>2];f=O(m-O(f*O(.5)));k=O(k*O(.5));A=f>2];i=O(-i);i=O(o-(i=O(O(i*i)+O(O(l*l)+O(f*f))))){break q}if(!H[b+40>>2]){b=H[b+36>>2];n=b+4|0;r:{s:{b=H[b>>2];switch(b|0){case 0:break q;case 1:break s;default:break r}}if(Ra[H[H[r>>2]+8>>2]](r,a+12|0,w+N(H[n>>2],44)|0)|0){break q}n=0;break p}while(1){s=H[n>>2];d=E+N(s,24)|0;l=L[d+8>>2];i=L[d+20>>2];f=O(j-O(O(l+i)*O(.5)));l=O(O(i-l)*O(.5));i=f>2];j=L[d+12>>2];g=O(g-O(O(k+j)*O(.5)));k=O(O(j-k)*O(.5));j=g>2];p=L[d+16>>2];m=O(m-O(O(o+p)*O(.5)));o=O(O(p-o)*O(.5));p=m>2]+8>>2]](r,a+12|0,w+N(s,44)|0)|0){break t}n=0;break p}b=b-1|0;if(!b){break q}n=n+4|0;h=L[e+48>>2];j=L[e+40>>2];m=L[e+36>>2];g=L[e+32>>2];continue}}b=H[b+36>>2];H[H[a+1044>>2]+(c<<2)>>2]=b+48;c=c+1|0;if((c|0)==(H[a+1052>>2]&2147483647)){iC(a+16|0,c<<1)}g=L[b+16>>2];f=L[b>>2];m=O(g+f);l=O(g-f);i=L[b+24>>2];k=L[b+8>>2];g=O(i+k);h=L[b+20>>2];j=L[b+4>>2];f=O(h+j);i=O(i-k);k=O(h-j);continue}break}if(c){continue}break}n=1}b=H[a+1052>>2];u:{if((b|0)<0|!(b&2147483647)){break u}b=H[a+1044>>2];if((b|0)==(a+16|0)|!b){break u}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}Oa=a+1056|0;break a;case 4:break b;default:break a}}n=KC(e+32|0,b+48|0,b+12|0,b);G[e+28>>1]=J[d>>1];H[e+24>>2]=c;H[e+20>>2]=b;H[e+16>>2]=114968;n=pD(H[a+644>>2],H[a+640>>2],s,n,e+16|0)}Oa=e+224|0;return n|0}function JG(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,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;m=Oa-816|0;Oa=m;F[m+792|0]=1;H[m+800>>2]=0;H[m+804>>2]=64;H[m+796>>2]=m+24;c=a;while(1){o=I[c+44|0];p=H[c>>2];a:{if(!(F[H[p+44>>2]+44|0]&1)){F[c+44|0]=o&254;H[m+8>>2]=c;H[m+12>>2]=0;H[m+16>>2]=0;e=H[p+28>>2];b:{if(!e){break b}r=H[p+20>>2];l=402653184;i=0;b=0;while(1){e=e-1|0;k=H[r>>2];if(I[k+20|0]==4){j=H[k+24>>2];k=J[H[j+52>>2]>>1]&(I[j+68|0]>>>3&1)-1&6;d=H[j+60>>2];c:{if((p|0)==(d|0)){s=k&4;d=H[j- -64>>2];h=k&2;break c}s=k&2;h=k&4}d:{if(!(F[H[d+44>>2]+44|0]&1?0:d)){if(s){f=f+1|0;b=b&-402653185;l=0;h=-2147483648}else{h=0}d=h|(d?536870912:1073741824);if(!(d>>>0<=b>>>0?i:0)){H[m+12>>2]=j;i=j}b=b|d;break d}e:{f:{if(!(!h|!s)){l=l&-268435457;b=b&-268435457;break f}if(s){l=0;b=b&-402653185;break f}if(!h){break e}b=l&402653184|b|-2147483648}f=f+1|0}b=b+1|0}H[m+16>>2]=b}r=r+4|0;if(e){continue}break}if(b>>>0<2415919104){break b}F[c+44|0]=o|1}e=H[m+800>>2];if(e>>>0>=(H[m+804>>2]&2147483647)>>>0){b=m+24|0;i=H[b+780>>2]&2147483647;h=i?i<<1:1;e=0;g:{if(!h){break g}k=N(h,12);if(!(I[b+768|0]|k>>>0>768)){F[b+768|0]=1;e=b;break g}e=0;if(!k){break g}i=H[33808];e=i+12|0;e=(w=e,x=k,y=Ra[H[H[i>>2]+20>>2]](i)|0?34846:55639,z=13582,A=553,v=H[H[e>>2]+8>>2],Ra[v](w|0,x|0,y|0,z|0,A|0)|0)}i=H[b+776>>2];if((i|0)>0){d=e+N(i,12)|0;l=H[b+772>>2];k=e;while(1){i=H[l+4>>2];H[k>>2]=H[l>>2];H[k+4>>2]=i;H[k+8>>2]=H[l+8>>2];l=l+12|0;k=k+12|0;if(d>>>0>k>>>0){continue}break}i=H[b+776>>2]}k=N(i,12)+e|0;i=H[m+12>>2];H[k>>2]=H[m+8>>2];H[k+4>>2]=i;H[k+8>>2]=H[m+16>>2];h:{if(H[b+780>>2]<0){break h}k=H[b+772>>2];if((k|0)==(b|0)){F[b+768|0]=0;break h}if(!k){break h}i=H[33808]+12|0;Ra[H[H[i>>2]+12>>2]](i,k)}H[b+780>>2]=h;H[b+772>>2]=e;H[b+776>>2]=H[b+776>>2]+1;break a}i=H[m+796>>2]+N(e,12)|0;e=H[m+12>>2];H[i>>2]=H[m+8>>2];H[i+4>>2]=e;H[i+8>>2]=H[m+16>>2];H[m+800>>2]=H[m+800>>2]+1;break a}F[c+44|0]=o|1}c=H[c+16>>2];if(c){continue}break}e=I[a+44|0]&7;c=e|64;i:{if(f>>>0>=65){break i}c=e|32;if(f>>>0>=17){break i}c=e|16;if(f>>>0>=5){break i}c=f?e|8:e}F[a+44|0]=c;c=H[m+800>>2];j:{if(!c){break j}o=H[m+796>>2];k=0;i=0;p=32;g=Oa-32|0;Oa=g;F[g+12|0]=0;e=g-128|0;Oa=e;H[g+8>>2]=e;l=c-1|0;k:{if((l|0)<=0){break k}while(1){l:{if((l|0)<=(k|0)){break l}while(1){if(l-k>>>0<=4){while(1){f=k;k=f+1|0;c=k;b=f;while(1){b=K[(o+N(c,12)|0)+8>>2]>K[(o+N(b,12)|0)+8>>2]?c:b;d=(c|0)<(l|0);c=c+1|0;if(d){continue}break}if((b|0)!=(f|0)){d=o+N(b,12)|0;H[g+24>>2]=H[d+8>>2];c=H[d+4>>2];H[g+16>>2]=H[d>>2];H[g+20>>2]=c;b=o+N(f,12)|0;H[d+8>>2]=H[b+8>>2];c=H[b+4>>2];H[d>>2]=H[b>>2];H[d+4>>2]=c;H[b+8>>2]=H[g+24>>2];c=H[g+20>>2];H[b>>2]=H[g+16>>2];H[b+4>>2]=c}if((l|0)!=(k|0)){continue}break l}}f=o+N(k,12)|0;r=H[f+8>>2];d=o+N((l+k|0)/2|0,12)|0;if(r>>>0>2]){H[g+24>>2]=H[f+8>>2];c=H[f+4>>2];H[g+16>>2]=H[f>>2];H[g+20>>2]=c;H[f+8>>2]=H[d+8>>2];c=H[d+4>>2];H[f>>2]=H[d>>2];H[f+4>>2]=c;H[d+8>>2]=H[g+24>>2];c=H[g+20>>2];H[d>>2]=H[g+16>>2];H[d+4>>2]=c;r=H[f+8>>2]}b=o+N(l,12)|0;c=H[b+8>>2];if(r>>>0>>0){H[g+24>>2]=H[f+8>>2];c=H[f+4>>2];H[g+16>>2]=H[f>>2];H[g+20>>2]=c;H[f+8>>2]=H[b+8>>2];c=H[b+4>>2];H[f>>2]=H[b>>2];H[f+4>>2]=c;H[b+8>>2]=H[g+24>>2];c=H[g+20>>2];H[b>>2]=H[g+16>>2];H[b+4>>2]=c;c=H[b+8>>2]}if(K[d+8>>2]>>0){H[g+24>>2]=H[d+8>>2];c=H[d+4>>2];H[g+16>>2]=H[d>>2];H[g+20>>2]=c;H[d+8>>2]=H[b+8>>2];c=H[b+4>>2];H[d>>2]=H[b>>2];H[d+4>>2]=c;H[b+8>>2]=H[g+24>>2];c=H[g+20>>2];H[b>>2]=H[g+16>>2];H[b+4>>2]=c}H[g+24>>2]=H[d+8>>2];c=H[d+4>>2];H[g+16>>2]=H[d>>2];H[g+20>>2]=c;b=l-1|0;j=o+N(b,12)|0;f=j;c=H[f+4>>2];H[d>>2]=H[f>>2];H[d+4>>2]=c;H[d+8>>2]=H[f+8>>2];H[f+8>>2]=H[g+24>>2];c=H[g+20>>2];H[f>>2]=H[g+16>>2];H[f+4>>2]=c;c=k;while(1){d=H[j+8>>2];while(1){f=c;c=c+1|0;n=o+N(c,12)|0;if(d>>>0>2]){continue}break}while(1){b=b-1|0;h=o+N(b,12)|0;if(d>>>0>K[h+8>>2]){continue}break}if((b|0)>(c|0)){H[g+24>>2]=H[n+8>>2];f=H[n+4>>2];H[g+16>>2]=H[n>>2];H[g+20>>2]=f;H[n+8>>2]=H[h+8>>2];f=H[h+4>>2];H[n>>2]=H[h>>2];H[n+4>>2]=f;H[h+8>>2]=H[g+24>>2];f=H[g+20>>2];H[h>>2]=H[g+16>>2];H[h+4>>2]=f;continue}break}H[g+24>>2]=H[n+8>>2];b=H[n+4>>2];H[g+16>>2]=H[n>>2];H[g+20>>2]=b;H[n+8>>2]=H[j+8>>2];b=H[j+4>>2];H[n>>2]=H[j>>2];H[n+4>>2]=b;H[j+8>>2]=H[g+24>>2];b=H[g+20>>2];H[j>>2]=H[g+16>>2];H[j+4>>2]=b;m:{if((c-k|0)<(l-c|0)){n:{if(p-1>>>0>i>>>0){c=e;break n}b=p<<3;if(b){d=H[33808];c=d+12|0;c=(A=c,z=b,y=Ra[H[H[d>>2]+20>>2]](d)|0?34846:55639,x=14160,w=155,v=H[H[c>>2]+8>>2],Ra[v](A|0,z|0,y|0,x|0,w|0)|0)}else{c=0}b=R6(c,e,i<<2);if(!(!q|!e)){d=H[33808]+12|0;Ra[H[H[d>>2]+12>>2]](d,e)}p=p<<1;q=1;e=b}c=(i<<2)+c|0;H[c>>2]=k;H[c+4>>2]=f;k=f+2|0;break m}h=f+2|0;o:{if(p-1>>>0>i>>>0){c=e;break o}b=p<<3;if(b){d=H[33808];c=d+12|0;c=(w=c,x=b,y=Ra[H[H[d>>2]+20>>2]](d)|0?34846:55639,z=14160,A=155,v=H[H[c>>2]+8>>2],Ra[v](w|0,x|0,y|0,z|0,A|0)|0)}else{c=0}b=R6(c,e,i<<2);if(!(!q|!e)){d=H[33808]+12|0;Ra[H[H[d>>2]+12>>2]](d,e)}p=p<<1;q=1;e=b}c=(i<<2)+c|0;H[c>>2]=h;H[c+4>>2]=l;l=f}i=i+2|0;if((l|0)>(k|0)){continue}break}}if(i){c=i-2|0;k=H[(c<<2)+e>>2];l=H[((i<<2)+e|0)-4>>2];i=c;continue}break}if(!q|!e){break k}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,e)}if(I[g+12|0]){H5(H[g+8>>2])}Oa=g+32|0;p:{q:{e=H[m+800>>2]<<2;if(!e){break q}c=H[33808];k=Ra[H[H[c+12>>2]+8>>2]](c+12|0,e,20591,9499,262)|0;if(!k){break q}j=-1879048192;l=H[m+800>>2];c=0;i=0;while(1){f=k;if(i>>>0>>0){r:{while(1){b=H[m+796>>2]+N(i,12)|0;if(K[b+8>>2]>>0){break r}d=c;c=H[b>>2];H[c+40>>2]=H[b+4>>2];s:{if(I[b+11|0]&96){H[f>>2]=c;b=1;break s}n=H[c>>2];e=H[n+28>>2];if(!e){b=0;break s}o=H[b+4>>2];r=H[n+20>>2];b=0;p=f;while(1){e=e-1|0;h=H[r>>2];t:{if(I[h+20|0]!=4){break t}g=H[h+24>>2];if((g|0)==(o|0)){break t}h=J[H[g+52>>2]>>1]&(I[g+68|0]>>>3&1)-1&6;q=H[g+60>>2];u:{if((n|0)==(q|0)){s=h&4;q=H[g- -64>>2];h=h&2;break u}s=h&2;h=h&4}if(!q|F[H[q+44>>2]+44|0]&1|(h?0:s)){break t}h=H[q+164>>2];if(F[h+44|0]&1){break t}H[p>>2]=h;H[h+40>>2]=g;if(c){H[h+36>>2]=H[c+32>>2];H[c+32>>2]=h;H[h+28>>2]=c}F[h+44|0]=I[h+44|0]|1;p=p+4|0;b=b+1|0}r=r+4|0;if(e){continue}break}}H[c+24>>2]=d;f=(b<<2)+f|0;i=i+1|0;if((i|0)!=(l|0)){continue}break}i=l}e=k;if((f|0)!=(e|0)){while(1){b=e+4|0;n=H[e>>2];p=H[n>>2];e=H[p+28>>2];v:{if(!e){l=0;break v}h=H[n+40>>2];r=H[p+20>>2];l=0;j=f;while(1){e=e-1|0;d=H[r>>2];w:{if(I[d+20|0]!=4){break w}o=H[d+24>>2];if((o|0)==(h|0)){break w}d=J[H[o+52>>2]>>1]&(I[o+68|0]>>>3&1)-1&6;q=H[o+60>>2];x:{if((p|0)==(q|0)){s=d&4;q=H[o- -64>>2];d=d&2;break x}s=d&2;d=d&4}if(!q|F[H[q+44>>2]+44|0]&1|(d?0:s)){break w}d=H[q+164>>2];if(F[d+44|0]&1){break w}H[j>>2]=d;H[d+40>>2]=o;if(n){H[d+36>>2]=H[n+32>>2];H[n+32>>2]=d;H[d+28>>2]=n}F[d+44|0]=I[d+44|0]|1;j=j+4|0;l=l+1|0}r=r+4|0;if(e){continue}break}}e=b;f=(l<<2)+f|0;if((b|0)!=(f|0)){continue}break}}}i=i+u|0;u=0;l=i;e=i;b=H[m+800>>2];y:{if(e>>>0>=b>>>0){break y}while(1){h=H[m+796>>2];j=h+N(e,12)|0;if(K[j+8>>2]<2281701376){break y}d=H[j>>2];f=I[d+44|0];z:{if(!(f&1)){F[d+44|0]=f|1;f=h+N(l,12)|0;H[f+8>>2]=H[j+8>>2];b=H[j+4>>2];H[f>>2]=H[j>>2];H[f+4>>2]=b;l=l+1|0;b=H[m+800>>2];break z}u=u+1|0}e=e+1|0;if(b>>>0>e>>>0){continue}break}}j=-2013265920;t=t+1|0;if((t|0)!=2){continue}break}break p}o5(H[33808],16,9499,405,65404,0);break j}if(b>>>0>i>>>0){while(1){f=H[m+796>>2]+N(i,12)|0;h=H[f>>2];e=I[h+44|0];if(!(e&1)){F[h+44|0]=e|1;e=k;d=0;l=H[h>>2];p=H[l+28>>2];if(p){f=H[f+4>>2];r=H[l+20>>2];while(1){p=p-1|0;b=H[r>>2];A:{if(I[b+20|0]!=4){break A}t=H[b+24>>2];if((t|0)==(f|0)){break A}b=J[H[t+52>>2]>>1]&(I[t+68|0]>>>3&1)-1&6;j=H[t+60>>2];B:{if((l|0)==(j|0)){q=b&4;j=H[t- -64>>2];b=b&2;break B}q=b&2;b=b&4}if(!j|F[H[j+44>>2]+44|0]&1|(b?0:q)){break A}b=H[j+164>>2];if(F[b+44|0]&1){break A}H[e>>2]=b;H[b+40>>2]=t;if(h){H[b+36>>2]=H[h+32>>2];H[h+32>>2]=b;H[b+28>>2]=h}F[b+44|0]=I[b+44|0]|1;e=e+4|0;d=d+1|0}r=r+4|0;if(p){continue}break}}e=d<<2;if(e){b=e+k|0;e=k;while(1){f=e+4|0;n=H[e>>2];t=H[n>>2];e=H[t+28>>2];C:{if(!e){l=0;break C}p=H[n+40>>2];r=H[t+20>>2];l=0;d=b;while(1){e=e-1|0;j=H[r>>2];D:{if(I[j+20|0]!=4){break D}o=H[j+24>>2];if((o|0)==(p|0)){break D}j=J[H[o+52>>2]>>1]&(I[o+68|0]>>>3&1)-1&6;q=H[o+60>>2];E:{if((t|0)==(q|0)){s=j&4;q=H[o- -64>>2];j=j&2;break E}s=j&2;j=j&4}if(!q|F[H[q+44>>2]+44|0]&1|(j?0:s)){break D}j=H[q+164>>2];if(F[j+44|0]&1){break D}H[d>>2]=j;H[j+40>>2]=o;if(n){H[j+36>>2]=H[n+32>>2];H[n+32>>2]=j;H[j+28>>2]=n}F[j+44|0]=I[j+44|0]|1;d=d+4|0;l=l+1|0}r=r+4|0;if(e){continue}break}}e=f;b=(l<<2)+b|0;if((e|0)!=(b|0)){continue}break}}H[h+24>>2]=c;b=H[m+800>>2];c=h}i=i+1|0;if(i>>>0>>0){continue}break}}H[a+20>>2]=c;a=H[33808];Ra[H[H[a+12>>2]+12>>2]](a+12|0,k)}a=H[m+804>>2];F:{if((a|0)<0|!(a&2147483647)){break F}c=H[m+796>>2];if((c|0)==(m+24|0)|!c){break F}a=H[33808];Ra[H[H[a+12>>2]+12>>2]](a+12|0,c)}Oa=m+816|0}function WX(a,b,c,d,e,f,g,h,i,j){var k=0,l=O(0),m=0,n=O(0),o=O(0),p=0,q=O(0),r=O(0),s=0,t=0,u=O(0),v=O(0),w=O(0),x=O(0),y=0,z=0,A=0,B=O(0),C=O(0),D=0,E=0,J=0,K=0,M=O(0),N=O(0),Q=O(0),R=O(0),S=O(0),T=O(0),U=O(0),V=O(0),W=O(0),X=O(0),Y=O(0),Z=O(0),_=O(0),$=O(0),aa=O(0),ba=0,ca=O(0),da=O(0),ea=O(0),fa=O(0),ga=O(0);H[a+4096>>2]=0;l=L[h+16>>2];n=L[h+20>>2];r=L[h+8>>2];x=L[h>>2];o=L[h+4>>2];u=L[h+12>>2];s=Oa-128|0;v=L[h+24>>2];M=L[i+12>>2];q=L[h+28>>2];N=L[i+16>>2];w=L[h+32>>2];Q=L[i+20>>2];B=O(O(O(O(v*M)+O(q*N))+O(w*Q))*f);R=L[i+24>>2];S=L[i+28>>2];T=L[i+32>>2];ca=O(O(O(O(v*R)+O(q*S))+O(w*T))*g);C=O(B+ca);U=L[i>>2];V=L[i+4>>2];W=L[i+8>>2];da=O(O(O(O(v*U)+O(q*V))+O(w*W))*e);X=O(-L[h+36>>2]);Y=L[h+40>>2];Z=L[h+44>>2];_=L[i+36>>2];$=L[i+40>>2];aa=L[i+44>>2];w=O(O(O(O(v*X)-O(q*Y))-O(w*Z))+O(O(O(v*_)+O(q*$))+O(w*aa)));v=O(da+w);L[s+120>>2]=C+v;ea=O(O(O(O(u*M)+O(l*N))+O(n*Q))*f);fa=O(O(O(O(u*R)+O(l*S))+O(n*T))*g);q=O(ea+fa);ga=O(O(O(O(u*U)+O(l*V))+O(n*W))*e);u=O(O(O(O(u*X)-O(l*Y))-O(n*Z))+O(O(O(u*_)+O(l*$))+O(n*aa)));l=O(ga+u);L[s+116>>2]=q+l;n=O(w-da);L[s+104>>2]=C+n;u=O(u-ga);L[s+100>>2]=q+u;L[s+24>>2]=v-C;L[s+20>>2]=l-q;w=O(B-ca);L[s+88>>2]=v-w;B=O(ea-fa);L[s+84>>2]=l-B;L[s+72>>2]=n-w;L[s+68>>2]=u-B;L[s+56>>2]=w+v;L[s+52>>2]=B+l;L[s+40>>2]=w+n;L[s+36>>2]=B+u;l=O(O(O(O(x*M)+O(o*N))+O(r*Q))*f);v=O(O(O(O(x*R)+O(o*S))+O(r*T))*g);f=O(l+v);g=O(O(O(O(x*U)+O(o*V))+O(r*W))*e);r=O(O(O(O(x*X)-O(o*Y))-O(r*Z))+O(O(O(x*_)+O(o*$))+O(r*aa)));e=O(g+r);L[s+112>>2]=f+e;g=O(r-g);L[s+96>>2]=f+g;L[s+16>>2]=e-f;L[s+8>>2]=n-C;L[s+4>>2]=u-q;L[s>>2]=g-f;f=O(l-v);L[s+80>>2]=e-f;L[s+64>>2]=g-f;L[s+48>>2]=f+e;L[s+32>>2]=f+g;d=O(d+j);c=O(c+j);f=O(-j);k=H[a+4096>>2];while(1){i=(p<<4)+s|0;e=L[i>>2];a:{if(e>1]=0;break a}F[i+12|0]=1;b:{g=L[i+4>>2];if(!(c>=O(P(g)))){break b}l=L[i+8>>2];if(!(d>=O(P(l)))){break b}F[i+13|0]=1;if(k>>>0>63){break a}i=k+1|0;H[a+4096>>2]=i;k=(k<<6)+a|0;L[k>>2]=L[b>>2];L[k+4>>2]=L[b+4>>2];n=L[b+8>>2];L[k+24>>2]=l;L[k+20>>2]=g;L[k+16>>2]=e;L[k+8>>2]=n;H[k+52>>2]=-1;L[k+12>>2]=-e;k=i;break a}F[i+13|0]=0}p=p+1|0;if((p|0)!=8){continue}break}A=87600;e=O(-d);f=O(-c);while(1){i=A;A=i+8|0;t=H[i>>2]<<4;p=t+s|0;m=H[i+4>>2]<<4;c:{if(!(I[(m+s|0)+12|0]?1:I[p+12|0])){break c}i=m+s|0;D=s+t|0;d:{if(!(!I[D+13|0]|!I[i+13|0])){m=k;break d}t=L[D+4>>2]>L[i+4>>2];y=t?i:p;z=t?p:i;E=i|4;J=D|4;K=t?E:J;g=L[K>>2];e:{if(!(g>2];if(!(n>=c)){i=k;break e}i=m+s|8;p=D|8;l=L[(t?i:p)>>2];n=O(O(c-g)/O(n-g));r=O(O(O(L[(t?p:i)>>2]-l)*n)+l);if(!(d>=O(P(r)))){i=k;break e}l=L[y>>2];l=O(O(O(L[z>>2]-l)*n)+l);if(!(O(l+j)>=O(0))){i=k;break e}if(k>>>0>63){i=k;break e}i=k+1|0;H[a+4096>>2]=i;k=(k<<6)+a|0;L[k>>2]=L[b>>2];L[k+4>>2]=L[b+4>>2];n=L[b+8>>2];L[k+24>>2]=r;L[k+20>>2]=c;L[k+16>>2]=l;L[k+8>>2]=n;H[k+52>>2]=-1;L[k+12>>2]=-l}f:{if(!(f>g)){p=i;break f}n=L[(t?J:E)>>2];if(!(n>=f)){p=i;break f}k=m+s|8;p=D|8;l=L[(t?k:p)>>2];g=O(O(f-g)/O(n-g));l=O(O(O(L[(t?p:k)>>2]-l)*g)+l);if(!(d>=O(P(l)))){p=i;break f}n=L[y>>2];g=O(O(O(L[z>>2]-n)*g)+n);if(!(O(g+j)>=O(0))){p=i;break f}if(i>>>0>63){p=i;break f}p=i+1|0;H[a+4096>>2]=p;i=(i<<6)+a|0;L[i>>2]=L[b>>2];L[i+4>>2]=L[b+4>>2];n=L[b+8>>2];L[i+24>>2]=l;L[i+20>>2]=f;L[i+16>>2]=g;L[i+8>>2]=n;H[i+52>>2]=-1;L[i+12>>2]=-g}i=D|8;k=m+s|8;D=t?i:k;g=L[D>>2];ba=t?k:i;l=L[ba>>2];m=g>2];if(!(n>=d)){k=p;break g}i=t?J:E;l=L[(m?i:K)>>2];n=O(O(d-g)/O(n-g));r=O(O(O(L[(m?K:i)>>2]-l)*n)+l);if(!(c>=O(P(r)))){k=p;break g}l=L[(m?z:y)>>2];l=O(O(O(L[(m?y:z)>>2]-l)*n)+l);if(!(O(l+j)>=O(0))){k=p;break g}if(p>>>0>63){k=p;break g}k=p+1|0;H[a+4096>>2]=k;i=(p<<6)+a|0;L[i>>2]=L[b>>2];L[i+4>>2]=L[b+4>>2];n=L[b+8>>2];L[i+24>>2]=d;L[i+20>>2]=r;L[i+16>>2]=l;L[i+8>>2]=n;H[i+52>>2]=-1;L[i+12>>2]=-l}p=m?z:y;i=m?y:z;if(!(e>g)){m=k;break d}n=L[(m?ba:D)>>2];if(!(n>=e)){m=k;break d}t=t?J:E;l=L[(m?t:K)>>2];g=O(O(e-g)/O(n-g));l=O(O(O(L[(m?K:t)>>2]-l)*g)+l);if(!(c>=O(P(l)))){m=k;break d}n=L[(m?z:y)>>2];g=O(O(O(L[(m?y:z)>>2]-n)*g)+n);if(!(O(g+j)>=O(0))){m=k;break d}if(k>>>0>63){m=k;break d}m=k+1|0;H[a+4096>>2]=m;k=(k<<6)+a|0;L[k>>2]=L[b>>2];L[k+4>>2]=L[b+4>>2];n=L[b+8>>2];L[k+24>>2]=e;L[k+20>>2]=l;L[k+16>>2]=g;L[k+8>>2]=n;H[k+52>>2]=-1;L[k+12>>2]=-g}h:{if(!(I[i+13|0]?1:I[p+12|0])){break h}if(I[i+12|0]){k=m;break c}if(!I[p+13|0]){break h}k=m;break c}g=L[p+4>>2];l=L[p>>2];l=O(O(-l)/O(L[i>>2]-l));g=O(O(O(L[i+4>>2]-g)*l)+g);if(!(c>=O(P(g)))){k=m;break c}n=L[p+8>>2];l=O(O(O(L[i+8>>2]-n)*l)+n);if(!(d>=O(P(l)))){k=m;break c}if(m>>>0>63){k=m;break c}k=m+1|0;H[a+4096>>2]=k;i=(m<<6)+a|0;L[i>>2]=L[b>>2];L[i+4>>2]=L[b+4>>2];n=L[b+8>>2];L[i+24>>2]=l;L[i+20>>2]=g;L[i+8>>2]=n;H[i+52>>2]=-1;H[i+12>>2]=0;H[i+16>>2]=0}if((A|0)!=87696){continue}break}i=0;p=0;while(1){m=i<<4;A=(H[m+87696>>2]<<4)+s|0;i:{if(!I[A+12|0]){break i}t=(H[(m+87696|0)+4>>2]<<4)+s|0;if(!I[t+12|0]){break i}z=(H[(m+87696|0)+8>>2]<<4)+s|0;if(!I[z+12|0]){break i}y=(H[(m+87696|0)+12>>2]<<4)+s|0;if(!I[y+12|0]){break i}if(!(!I[z+13|0]|(!I[A+13|0]|!I[t+13|0]))){if(I[y+13|0]){break i}}j:{if(p&1){m=k;break j}g=L[A+4>>2];j=L[y+4>>2];l=L[y+8>>2];n=L[A+8>>2];if(O(O(O(g-j)*O(e-l))-O(O(f-j)*O(n-l)))>=O(0)){m=k;break j}o=L[t+4>>2];r=O(o-g);u=O(e-n);v=O(f-g);q=L[t+8>>2];x=O(q-n);if(O(O(r*u)-O(v*x))>=O(0)){m=k;break j}w=L[z+4>>2];B=O(O(w-o)*O(e-q));C=O(f-o);o=L[z+8>>2];if(O(B-O(C*O(o-q)))>=O(0)){m=k;break j}if(O(O(O(j-w)*O(e-o))-O(O(f-w)*O(l-o)))>=O(0)){m=k;break j}q=L[A>>2];o=O(L[t>>2]-q);g=O(j-g);j=O(l-n);l=O(L[y>>2]-q);g=O(O(q+O(O(O(O(v*r)+O(u*x))*o)/O(O(x*x)+O(O(o*o)+O(r*r)))))+O(O(O(O(v*g)+O(u*j))*l)/O(O(j*j)+O(O(l*l)+O(g*g)))));if(!(g>=O(0))){m=k;break j}p=p|1;if(k>>>0>63){m=k;break j}m=k+1|0;H[a+4096>>2]=m;k=(k<<6)+a|0;L[k>>2]=L[b>>2];L[k+4>>2]=L[b+4>>2];j=L[b+8>>2];L[k+24>>2]=e;L[k+20>>2]=f;L[k+16>>2]=g;L[k+8>>2]=j;H[k+52>>2]=-1;L[k+12>>2]=-g}k:{if(p&2){k=m;break k}g=L[A+4>>2];j=L[y+4>>2];l=L[y+8>>2];n=L[A+8>>2];if(O(O(O(g-j)*O(e-l))-O(O(c-j)*O(n-l)))>=O(0)){k=m;break k}o=L[t+4>>2];r=O(o-g);u=O(e-n);v=O(c-g);q=L[t+8>>2];x=O(q-n);if(O(O(r*u)-O(v*x))>=O(0)){k=m;break k}w=L[z+4>>2];B=O(O(w-o)*O(e-q));C=O(c-o);o=L[z+8>>2];if(O(B-O(C*O(o-q)))>=O(0)){k=m;break k}if(O(O(O(j-w)*O(e-o))-O(O(c-w)*O(l-o)))>=O(0)){k=m;break k}q=L[A>>2];o=O(L[t>>2]-q);g=O(j-g);j=O(l-n);l=O(L[y>>2]-q);g=O(O(q+O(O(O(O(v*r)+O(u*x))*o)/O(O(x*x)+O(O(o*o)+O(r*r)))))+O(O(O(O(v*g)+O(u*j))*l)/O(O(j*j)+O(O(l*l)+O(g*g)))));if(!(g>=O(0))){k=m;break k}p=p|2;if(m>>>0>63){k=m;break k}k=m+1|0;H[a+4096>>2]=k;m=(m<<6)+a|0;L[m>>2]=L[b>>2];L[m+4>>2]=L[b+4>>2];j=L[b+8>>2];L[m+24>>2]=e;L[m+20>>2]=c;L[m+16>>2]=g;L[m+8>>2]=j;H[m+52>>2]=-1;L[m+12>>2]=-g}l:{if(p&4){m=k;break l}g=L[A+4>>2];j=L[y+4>>2];l=L[y+8>>2];n=L[A+8>>2];if(O(O(O(g-j)*O(d-l))-O(O(f-j)*O(n-l)))>=O(0)){m=k;break l}o=L[t+4>>2];r=O(o-g);u=O(d-n);v=O(f-g);q=L[t+8>>2];x=O(q-n);if(O(O(r*u)-O(v*x))>=O(0)){m=k;break l}w=L[z+4>>2];B=O(O(w-o)*O(d-q));C=O(f-o);o=L[z+8>>2];if(O(B-O(C*O(o-q)))>=O(0)){m=k;break l}if(O(O(O(j-w)*O(d-o))-O(O(f-w)*O(l-o)))>=O(0)){m=k;break l}q=L[A>>2];o=O(L[t>>2]-q);g=O(j-g);j=O(l-n);l=O(L[y>>2]-q);g=O(O(q+O(O(O(O(v*r)+O(u*x))*o)/O(O(x*x)+O(O(o*o)+O(r*r)))))+O(O(O(O(v*g)+O(u*j))*l)/O(O(j*j)+O(O(l*l)+O(g*g)))));if(!(g>=O(0))){m=k;break l}p=p|4;if(k>>>0>63){m=k;break l}m=k+1|0;H[a+4096>>2]=m;k=(k<<6)+a|0;L[k>>2]=L[b>>2];L[k+4>>2]=L[b+4>>2];j=L[b+8>>2];L[k+24>>2]=d;L[k+20>>2]=f;L[k+16>>2]=g;L[k+8>>2]=j;H[k+52>>2]=-1;L[k+12>>2]=-g}if(p&8){k=m;break i}g=L[A+4>>2];j=L[y+4>>2];l=L[y+8>>2];n=L[A+8>>2];if(O(O(O(g-j)*O(d-l))-O(O(c-j)*O(n-l)))>=O(0)){k=m;break i}o=L[t+4>>2];r=O(o-g);u=O(d-n);v=O(c-g);q=L[t+8>>2];x=O(q-n);if(O(O(r*u)-O(v*x))>=O(0)){k=m;break i}w=L[z+4>>2];B=O(O(w-o)*O(d-q));C=O(c-o);o=L[z+8>>2];if(O(B-O(C*O(o-q)))>=O(0)){k=m;break i}if(O(O(O(j-w)*O(d-o))-O(O(c-w)*O(l-o)))>=O(0)){k=m;break i}q=L[A>>2];o=O(L[t>>2]-q);g=O(j-g);j=O(l-n);l=O(L[y>>2]-q);g=O(O(q+O(O(O(O(v*r)+O(u*x))*o)/O(O(x*x)+O(O(o*o)+O(r*r)))))+O(O(O(O(v*g)+O(u*j))*l)/O(O(j*j)+O(O(l*l)+O(g*g)))));if(!(g>=O(0))){k=m;break i}p=p|8;if(m>>>0>63){k=m;break i}k=m+1|0;H[a+4096>>2]=k;m=(m<<6)+a|0;L[m>>2]=L[b>>2];L[m+4>>2]=L[b+4>>2];j=L[b+8>>2];L[m+24>>2]=d;L[m+20>>2]=c;L[m+16>>2]=g;L[m+8>>2]=j;H[m+52>>2]=-1;L[m+12>>2]=-g}if(i>>>0<=4){i=i+1|0;if((p|0)!=15){continue}}break}if(k){i=0;while(1){f=L[h+36>>2];g=L[h+24>>2];j=L[h+12>>2];l=L[h>>2];n=L[h+40>>2];r=L[h+28>>2];x=L[h+16>>2];o=L[h+4>>2];b=(i<<6)+a|0;c=L[b+16>>2];d=L[b+20>>2];e=L[b+24>>2];L[b+24>>2]=O(O(O(c*L[h+8>>2])+O(d*L[h+20>>2]))+O(e*L[h+32>>2]))+L[h+44>>2];L[b+20>>2]=n+O(O(O(c*o)+O(d*x))+O(e*r));L[b+16>>2]=f+O(O(O(c*l)+O(d*j))+O(e*g));i=i+1|0;if((k|0)!=(i|0)){continue}break}}return k}function JW(a,b,c,d,e,f,g,h,i,j){var k=0,l=0,m=0,n=O(0),o=0,p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=0,w=O(0),x=O(0),y=0,z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),G=O(0),J=O(0),K=O(0),M=O(0),P=O(0),Q=O(0),S=O(0),T=O(0),U=O(0),V=O(0),X=O(0),Y=O(0),Z=O(0),_=O(0),$=O(0),aa=O(0),ba=O(0),ca=O(0),da=O(0),ea=O(0),fa=O(0),ga=O(0);l=Oa-288|0;Oa=l;k=Oa-288|0;Oa=k;H[k+264>>2]=0;H[k+268>>2]=0;H[k+256>>2]=0;H[k+260>>2]=0;E=L[d+8>>2];A=L[d+4>>2];G=L[d>>2];B=L[e+8>>2];J=L[e+4>>2];u=L[e>>2];H[k+240>>2]=1;p=L[c+8>>2];q=L[c>>2];n=L[c+4>>2];H[k+172>>2]=0;o=O(O(p*p)+O(O(q*q)+O(n*n)))>O(1.1920928955078125e-7);p=o?p:O(0);r=p;q=o?q:O(1);n=o?n:O(0);p=O(O(1)/O(W(O(O(p*p)+O(O(q*q)+O(n*n))))));s=O(r*p);L[k+168>>2]=-s;t=O(n*p);L[k+164>>2]=-t;r=O(q*p);L[k+160>>2]=-r;o=k+160|0;QV(k+224|0,a,o);v=H[b+4>>2];w=L[v+56>>2];Q=L[v+52>>2];S=L[v+72>>2];y=v- -64|0;T=L[y>>2];x=L[v+68>>2];z=L[v+88>>2];q=L[v+80>>2];n=L[v+84>>2];p=L[v+48>>2];H[k+172>>2]=0;L[k+168>>2]=O(z*s)+O(O(q*r)+O(t*n));L[k+164>>2]=O(S*s)+O(O(T*r)+O(t*x));L[k+160>>2]=O(w*s)+O(O(p*r)+O(t*Q));o=EU(v,o);w=L[y>>2];Q=L[v+80>>2];S=L[v+84>>2];T=L[v+52>>2];x=L[v+68>>2];z=L[v+88>>2];o=H[v+152>>2]+N(o,12)|0;C=L[o+8>>2];q=L[v+56>>2];D=L[o>>2];n=L[v+72>>2];r=L[o+4>>2];p=L[v+48>>2];H[k+180>>2]=0;H[k+184>>2]=0;H[k+188>>2]=0;H[k+192>>2]=0;H[k+196>>2]=0;H[k+200>>2]=0;H[k+204>>2]=0;H[k+208>>2]=0;H[k+212>>2]=0;H[k+216>>2]=0;H[k+220>>2]=0;H[k+172>>2]=0;H[k+176>>2]=0;q=O(O(z*C)+O(O(q*D)+O(r*n)));s=O(L[k+232>>2]-q);L[k+168>>2]=s;n=O(O(S*C)+O(O(T*D)+O(r*x)));t=O(L[k+228>>2]-n);L[k+164>>2]=t;p=O(O(Q*C)+O(O(p*D)+O(r*w)));r=O(L[k+224>>2]-p);L[k+160>>2]=r;H[k+120>>2]=0;H[k+124>>2]=0;H[k+128>>2]=0;H[k+132>>2]=0;H[k+136>>2]=0;H[k+140>>2]=0;H[k+144>>2]=0;H[k+148>>2]=0;H[k+152>>2]=0;H[k+156>>2]=0;H[k+112>>2]=0;H[k+116>>2]=0;o=H[k+236>>2];H[k+104>>2]=H[k+232>>2];H[k+108>>2]=o;o=H[k+228>>2];H[k+96>>2]=H[k+224>>2];H[k+100>>2]=o;H[k+52>>2]=0;H[k+56>>2]=0;H[k+60>>2]=0;H[k+64>>2]=0;H[k+68>>2]=0;H[k+72>>2]=0;H[k+76>>2]=0;H[k+80>>2]=0;H[k+84>>2]=0;H[k+88>>2]=0;H[k+92>>2]=0;H[k+44>>2]=0;H[k+48>>2]=0;L[k+40>>2]=q;L[k+36>>2]=n;L[k+32>>2]=p;x=O(-s);z=O(-t);p=O(-r);a:{b:{w=O(O(s*s)+O(O(r*r)+O(t*t)));q=L[H[b+4>>2]+24>>2];o=H[a+4>>2];n=L[o+24>>2];n=O((n>q?q:n)*O(.10000000149011612));ca=O(n*n);c:{if(!(w>ca)){q=p;n=z;i=x;Q=r;S=t;T=s;break c}_=O(n+i);ea=O(_*_);D=O(O(u*O(0))+G);G=O(O(J*O(0))+A);J=O(O(B*O(0))+E);i=x;n=z;q=p;while(1){Q=r;S=t;T=s;H[k+28>>2]=0;r=O(O(1)/O(W(O(O(x*x)+O(O(p*p)+O(z*z))))));X=O(x*r);L[k+24>>2]=X;M=O(p*r);L[k+16>>2]=M;Y=O(z*r);L[k+20>>2]=Y;o=k+272|0;QV(o,a,k+16|0);fa=L[k+284>>2];$=L[k+280>>2];aa=L[k+272>>2];ba=L[k+276>>2];m=H[b+4>>2];U=L[m+52>>2];C=L[m+56>>2];E=L[m+72>>2];y=m- -64|0;A=L[y>>2];B=L[m+68>>2];u=L[m+88>>2];s=L[m+80>>2];t=L[m+84>>2];r=L[m+48>>2];H[k+284>>2]=0;V=O(-M);L[k+280>>2]=O(O(s*V)-O(t*Y))-O(u*X);L[k+276>>2]=O(O(A*V)-O(B*Y))-O(E*X);L[k+272>>2]=O(O(r*V)-O(U*Y))-O(C*X);o=EU(m,o);s=L[k+16>>2];o=H[m+152>>2]+N(o,12)|0;A=L[o+8>>2];B=L[o>>2];u=L[o+4>>2];U=O(D+O(O(L[m+80>>2]*A)+O(O(L[m+48>>2]*B)+O(u*L[y>>2]))));K=O(aa-U);t=L[k+20>>2];C=O(G+O(O(L[m+84>>2]*A)+O(O(L[m+52>>2]*B)+O(u*L[m+68>>2]))));Z=O(ba-C);r=L[k+24>>2];E=O(J+O(O(L[m+88>>2]*A)+O(O(L[m+56>>2]*B)+O(u*L[m+72>>2]))));M=O($-E);A=O(O(O(O(s*O(-K))-O(t*Z))-O(r*M))-_);if(A>O(0)){B=L[e+8>>2];u=L[e>>2];ga=O(s*u);s=L[e+4>>2];t=O(O(r*B)+O(ga+O(t*s)));if(t>=O(0)){break b}r=P;P=O(r-O(A/t));if(P>r){if(P>O(1)){break b}q=L[d+8>>2];n=L[d+4>>2];i=L[d>>2];H[k+76>>2]=0;H[k+60>>2]=0;H[k+44>>2]=0;t=O(i+O(u*P));u=O(t-D);C=O(u+L[k+64>>2]);L[k+64>>2]=C;r=O(n+O(s*P));n=O(r-G);E=O(n+L[k+68>>2]);L[k+68>>2]=E;w=O(q+O(B*P));i=O(w-J);A=O(i+L[k+72>>2]);L[k+72>>2]=A;B=O(u+L[k+48>>2]);L[k+48>>2]=B;D=O(n+L[k+52>>2]);L[k+52>>2]=D;G=O(i+L[k+56>>2]);L[k+56>>2]=G;J=O(u+L[k+32>>2]);L[k+32>>2]=J;u=O(n+L[k+36>>2]);L[k+36>>2]=u;s=O(i+L[k+40>>2]);L[k+40>>2]=s;q=L[k+96>>2];n=L[k+100>>2];i=L[k+104>>2];H[k+172>>2]=0;L[k+168>>2]=i-s;L[k+164>>2]=n-u;L[k+160>>2]=q-J;q=L[k+112>>2];n=L[k+116>>2];i=L[k+120>>2];H[k+188>>2]=0;L[k+184>>2]=i-G;L[k+180>>2]=n-D;L[k+176>>2]=q-B;q=L[k+128>>2];n=L[k+132>>2];i=L[k+136>>2];H[k+204>>2]=0;L[k+200>>2]=i-A;L[k+196>>2]=n-E;L[k+192>>2]=q-C;m=H[b+4>>2];B=L[m+56>>2];D=L[m+52>>2];G=L[m+72>>2];y=m- -64|0;J=L[y>>2];u=L[m+68>>2];s=L[m+88>>2];q=L[m+80>>2];n=L[m+84>>2];i=L[m+48>>2];H[k+284>>2]=0;A=s;s=O(-X);C=n;n=O(-Y);L[k+280>>2]=O(A*s)+O(O(q*V)+O(C*n));L[k+276>>2]=O(G*s)+O(O(J*V)+O(u*n));L[k+272>>2]=O(B*s)+O(O(i*V)+O(D*n));o=EU(m,k+272|0);o=H[m+152>>2]+N(o,12)|0;q=L[o+8>>2];n=L[o>>2];i=L[o+4>>2];E=O(w+O(O(L[m+88>>2]*q)+O(O(L[m+56>>2]*n)+O(i*L[m+72>>2]))));M=O($-E);C=O(r+O(O(L[m+84>>2]*q)+O(O(L[m+52>>2]*n)+O(i*L[m+68>>2]))));Z=O(ba-C);U=O(t+O(O(L[m+80>>2]*q)+O(O(L[m+48>>2]*n)+O(i*L[y>>2]))));K=O(aa-U);q=p;n=z;i=x;D=t;G=r;J=w;w=O(3.4028234663852886e38)}}u=w;y=H[k+240>>2];o=y<<4;m=o+(k+96|0)|0;L[m+12>>2]=fa;L[m+8>>2]=$;L[m+4>>2]=ba;L[m>>2]=aa;m=o+(k+32|0)|0;H[m+12>>2]=0;L[m+8>>2]=E;L[m+4>>2]=C;L[m>>2]=U;o=o+(k+160|0)|0;H[o+12>>2]=0;L[o+8>>2]=M;L[o+4>>2]=Z;L[o>>2]=K;H[k+240>>2]=y+1;d:{e:{switch(y-1|0){case 0:w=L[k+168>>2];s=O(L[k+184>>2]-w);x=L[k+160>>2];t=O(L[k+176>>2]-x);z=L[k+164>>2];r=O(L[k+180>>2]-z);p=O(O(s*s)+O(O(t*t)+O(r*r)));if(p<=O(1.1920928955078125e-7)){H[k+240>>2]=1;o=H[k+164>>2];H[k+272>>2]=H[k+160>>2];H[k+276>>2]=o;o=H[k+172>>2];H[k+280>>2]=H[k+168>>2];H[k+284>>2]=o;break d}p=O(R(O(O(O(O(O(-x)*t)-O(r*z))-O(w*s))/p),O(1)));p=p>O(0)?p:O(0);L[k+280>>2]=w+O(s*p);L[k+276>>2]=z+O(r*p);L[k+272>>2]=x+O(t*p);break d;case 1:GU(k+272|0,k+160|0,k+96|0,k+32|0,k+240|0);break d;case 2:BZ(k+272|0,k+160|0,k+96|0,k+32|0,k+240|0);break d;default:break e}}L[k+280>>2]=M;L[k+276>>2]=Z;L[k+272>>2]=K}s=L[k+280>>2];x=O(-s);t=L[k+276>>2];z=O(-t);r=L[k+272>>2];p=O(-r);w=O(O(s*s)+O(O(r*r)+O(t*t)));if(eaw){continue}break}m=!(u>w);o=H[a+4>>2]}v=I[o+32|0];K=O(0);u=O(0);d=!(w>ca)|m;x=d?i:x;q=d?q:p;p=d?n:z;i=O(W(O(O(x*x)+O(O(q*q)+O(p*p)))));if(!(i<=O(1.1920928955078125e-7))){i=O(O(1)/i);da=O(x*i);K=O(p*i);u=O(q*i)}H[l+268>>2]=0;L[l+264>>2]=-da;L[l+260>>2]=-K;L[l+256>>2]=-u;L[l+240>>2]=P;H[l+252>>2]=H[k+252>>2];d=H[k+248>>2];H[l+244>>2]=H[k+244>>2];H[l+248>>2]=d;H[k+284>>2]=0;L[k+280>>2]=m?T:s;L[k+276>>2]=m?S:t;L[k+272>>2]=m?Q:r;m=H[k+268>>2];o=H[k+264>>2];H[k+24>>2]=o;H[k+28>>2]=m;y=H[k+260>>2];d=H[k+256>>2];H[k+16>>2]=d;H[k+20>>2]=y;H[k+8>>2]=o;H[k+12>>2]=m;H[k>>2]=d;H[k+4>>2]=y;FU(k+160|0,k+96|0,k+32|0,k+272|0,k+16|0,k,H[k+240>>2]);q=L[H[a+4>>2]+16>>2];n=L[k+16>>2];p=L[k+20>>2];i=L[k+24>>2];H[l+284>>2]=0;L[l+280>>2]=i+(v?O(da*q):O(-0));L[l+276>>2]=p+(v?O(K*q):O(-0));L[l+272>>2]=n+(v?O(u*q):O(-0));o=1;break a}o=0}Oa=k+288|0;if(o){d=H[l+244>>2];H[f>>2]=H[l+240>>2];H[f+4>>2]=d;d=H[l+252>>2];H[f+8>>2]=H[l+248>>2];H[f+12>>2]=d;if(!(!j|L[l+240>>2]!=O(0))){j=H[a+4>>2];y=H[b+4>>2];L[l+224>>2]=O(L[j+16>>2]+L[y+16>>2])*O(100);F[l+215|0]=0;H[l+168>>2]=0;H[l+172>>2]=0;H[l+160>>2]=0;H[l+164>>2]=0;H[l+152>>2]=0;H[l+156>>2]=0;H[l+144>>2]=0;H[l+148>>2]=0;H[l+136>>2]=0;H[l+140>>2]=0;H[l+128>>2]=0;H[l+132>>2]=0;H[l+192>>2]=0;d=H[a+8>>2];H[l+56>>2]=d;H[l+48>>2]=126316;H[l+52>>2]=j;j=H[d+12>>2];H[l+72>>2]=H[d+8>>2];H[l+76>>2]=j;j=H[d+20>>2];H[l+80>>2]=H[d+16>>2];H[l+84>>2]=j;j=H[d+28>>2];H[l+88>>2]=H[d+24>>2];H[l+92>>2]=j;j=H[d+36>>2];H[l+96>>2]=H[d+32>>2];H[l+100>>2]=j;j=H[d+44>>2];H[l+104>>2]=H[d+40>>2];H[l+108>>2]=j;j=H[d+52>>2];H[l+112>>2]=H[d+48>>2];H[l+116>>2]=j;j=H[d+60>>2];H[l+120>>2]=H[d+56>>2];H[l+124>>2]=j;j=H[d+4>>2];H[l+64>>2]=H[d>>2];H[l+68>>2]=j;n=L[l+68>>2];L[l+68>>2]=L[l+80>>2];p=L[l+88>>2];i=L[l+72>>2];L[l+72>>2]=L[l+96>>2];L[l+80>>2]=n;L[l+96>>2]=i;L[l+88>>2]=L[l+100>>2];L[l+100>>2]=p;H[l+40>>2]=126016;H[l+44>>2]=y;f:{g:{if(KW(l+48|0,l+40|0,c,l+224|0,0,l+220|0,l+216|0,l+215|0,l+128|0)-5|0){break g}H[l+16>>2]=1065353216;c=H[l+28>>2];H[l+8>>2]=H[l+24>>2];H[l+12>>2]=c;c=H[l+20>>2];H[l>>2]=H[l+16>>2];H[l+4>>2]=c;if(wZ(a,b,l+220|0,l+216|0,I[l+215|0],0,l,l+128|0)-5>>>0<=1){break g}H[l+280>>2]=0;H[l+284>>2]=0;H[l+272>>2]=0;H[l+276>>2]=0;q=L[e+8>>2];n=L[e>>2];p=L[e+4>>2];H[l+268>>2]=0;i=O(O(1)/O(W(O(O(q*q)+O(O(n*n)+O(p*p))))));L[l+264>>2]=i*O(-q);L[l+260>>2]=i*O(-p);L[l+256>>2]=i*O(-n);i=O(0);break f}a=H[l+140>>2];H[l+280>>2]=H[l+136>>2];H[l+284>>2]=a;a=H[l+132>>2];H[l+272>>2]=H[l+128>>2];H[l+276>>2]=a;a=H[l+164>>2];H[l+256>>2]=H[l+160>>2];H[l+260>>2]=a;a=H[l+172>>2];H[l+264>>2]=H[l+168>>2];H[l+268>>2]=a;i=L[l+192>>2]}L[f>>2]=i>2];H[h>>2]=H[l+272>>2];H[h+4>>2]=a;a=H[l+284>>2];H[h+8>>2]=H[l+280>>2];H[h+12>>2]=a;a=H[l+260>>2];H[g>>2]=H[l+256>>2];H[g+4>>2]=a;a=H[l+268>>2];H[g+8>>2]=H[l+264>>2];H[g+12>>2]=a}Oa=l+288|0;return o}function nM(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,o=0,p=0,q=0,r=0,s=0,t=O(0),u=0,v=0,w=0,x=0,y=0,z=0,A=O(0),B=0,C=0,D=0,E=0,F=0,G=0,I=0,K=0,M=0,P=0,Q=0,R=0,S=0,T=0,U=O(0),V=0,W=0,X=0,Y=0,Z=0,_=O(0);c=H[a+32>>2];e=H[a+36>>2];z=H[a+40>>2];d=H[a+28>>2];A=L[d+92>>2];K=H[d+80>>2];R=H[d+84>>2];w=Oa-48|0;Oa=w;B=H[a+44>>2];i=H[B+368>>2];a=H[i>>2];if(a){H[i>>2]=H[a>>2]}if(!a){a=H[33808];i=Ra[H[H[a>>2]+20>>2]](a)|0?23054:55639;i=Ra[H[H[a+12>>2]+8>>2]](a+12|0,12195,i,16202,82)|0;a=i+19&-16;H[a-4>>2]=a-i;a=lA(a,H[B+372>>2])}h=H[d+100>>2]+4|0;H[d+100>>2]=h;g=H[d+108>>2]+128|0;H[d+108>>2]=g;f=H[d+116>>2]+1|0;H[d+116>>2]=f;E=a+12048|0;j=H[e+4>>2];D=H[z+11896>>2];V=H[c+56>>2];S=H[z+11892>>2];y=H[B+484>>2];W=H[B+472>>2];M=H[c+44>>2];x=H[c+36>>2];i=H[e>>2];T=H[z+11968>>2];F=a+12060|0;b=H[z+12052>>2];if(b>>>0>(H[a+12056>>2]&2147483647)>>>0){Cv(E,b);b=H[z+12052>>2]}if((H[a+12068>>2]&2147483647)>>>0>>0){Cv(F,b)}p=h-4|0;u=g-128|0;r=f-1|0;m=j&2147483647;H[w+40>>2]=H[E>>2];H[w+44>>2]=H[F>>2];U=O(O(1)/A);a:{if(K>>>0<2){e=0;g=0;n=128;j=4;break a}c=V<<6;C=c+y|0;P=c+W|0;j=4;n=128;g=0;e=0;G=1;while(1){b:{if(H[d+112>>2]>=(s|0)){break b}b=3e4;if(H[d+112>>2]>=(s|0)){break b}while(1){if(H[d+112>>2]>=(s|0)){break b}b=b-1|0;if(b){continue}b=1e4;continue}}c:{if(H[d+120>>2]>=(e|0)){break c}b=3e4;if(H[d+120>>2]>=(e|0)){break c}while(1){if(H[d+120>>2]>=(e|0)){break c}b=b-1|0;if(b){continue}b=1e4;continue}}b=0;f=r-e|0;d:{if(m>>>0<=f>>>0){break d}while(1){c=H[H[z+12144>>2]+N(f,52)>>2];Ra[H[H[c>>2]+136>>2]](c,A,U,H[E>>2],H[F>>2],0,1,t);b=b+1|0;c=H[d+116>>2]+1|0;H[d+116>>2]=c;r=c-1|0;f=r-e|0;if(m>>>0>f>>>0){continue}break}if(!b){break d}H[d+120>>2]=H[d+120>>2]+b}e:{q=e+m|0;if((q|0)<=H[d+120>>2]){break e}b=3e4;if((q|0)<=H[d+120>>2]){break e}while(1){if((q|0)<=H[d+120>>2]){break e}b=b-1|0;if(b){continue}b=1e4;continue}}k=0;o=0;if(D){while(1){f:{if(H[d+104>>2]>=(g|0)){break f}b=3e4;if(H[d+104>>2]>=(g|0)){break f}while(1){if(H[d+104>>2]>=(g|0)){break f}b=b-1|0;if(b){continue}b=1e4;continue}}c=p-g|0;h=H[(o<<2)+S>>2];g:{if(c>>>0>=h>>>0){break g}Q=(k<<3)+M|0;f=0;while(1){e=h-c|0;l=e>>>0>>0?e:j;h:{if(!l){break h}v=Q+(c<<3)|0;b=0;if((l|0)!=1){Z=l&-2;e=0;while(1){I=b<<3;X=I+v|0;Y=w+8|0;Ra[H[(J[X+6>>1]<<2)+117248>>2]](X,x,y,O(-3.4028234663852886e38),t,Y);I=v+(I|8)|0;Ra[H[(J[I+6>>1]<<2)+117248>>2]](I,x,y,O(-3.4028234663852886e38),t,Y);b=b+2|0;e=e+2|0;if((Z|0)!=(e|0)){continue}break}}if(!(l&1)){break h}e=v+(b<<3)|0;Ra[H[(J[e+6>>1]<<2)+117248>>2]](e,x,y,O(-3.4028234663852886e38),t,w+8|0)}f=f+l|0;j=j-l|0;i:{if(j){p=l+p|0;c=c+l|0;break i}j=4;c=H[d+100>>2]+4|0;H[d+100>>2]=c;p=c-4|0;c=p-g|0}if(h>>>0>c>>>0){continue}break}if(!f){break g}H[d+104>>2]=H[d+104>>2]+f}k=h+k|0;g=g+h|0;o=o+1|0;if((D|0)!=(o|0)){continue}break}}j:{if(H[d+104>>2]>=(g|0)){break j}b=3e4;if(H[d+104>>2]>=(g|0)){break j}while(1){if(H[d+104>>2]>=(g|0)){break j}b=b-1|0;if(b){continue}b=1e4;continue}}c=0;e=u-s|0;k:{if(i>>>0<=e>>>0){break k}while(1){b=i-e|0;h=b>>>0>>0?b:n;if(h){b=e<<6;f=b+C|0;k=b+P|0;b=0;while(1){b=b+1|0;o=b<<6;FL(o+k|0,f+o|0,A);if((b|0)!=(h|0)){continue}break}}c=c+h|0;n=n-h|0;l:{if(n){u=h+u|0;e=e+h|0;break l}n=128;e=H[d+108>>2]+128|0;H[d+108>>2]=e;u=e-128|0;e=u-s|0}if(i>>>0>e>>>0){continue}break}if(!c){break k}H[d+112>>2]=H[d+112>>2]+c}b=0;f=r-q|0;m:{if(m>>>0<=f>>>0){break m}while(1){c=H[z+12144>>2]+N(f,52)|0;e=H[(H[H[c>>2]+24>>2]<<2)+135140>>2];if(e){Ra[e|0](c,A,H[w+44>>2])}b=b+1|0;c=H[d+116>>2]+1|0;H[d+116>>2]=c;r=c-1|0;f=r-q|0;if(m>>>0>f>>>0){continue}break}if(!b){break m}H[d+120>>2]=H[d+120>>2]+b}e=m+q|0;s=i+s|0;t=O(t+A);G=G+1|0;if((K|0)!=(G|0)){continue}break}}n:{b=H[d+112>>2]>=(s|0);if(b|b){break n}b=3e4;while(1){if(H[d+112>>2]>=(s|0)){break n}b=b-1|0;if(b){continue}b=1e4;continue}}o:{b=H[d+120>>2]>=(e|0);if(b|b){break o}b=3e4;while(1){if(H[d+120>>2]>=(e|0)){break o}b=b-1|0;if(b){continue}b=1e4;continue}}f=r-e|0;p:{if(m>>>0<=f>>>0){break p}b=0;while(1){c=H[H[z+12144>>2]+N(f,52)>>2];Ra[H[H[c>>2]+136>>2]](c,A,U,H[E>>2],H[F>>2],0,1,t);b=b+1|0;c=H[d+116>>2]+1|0;H[d+116>>2]=c;r=c-1|0;f=r-e|0;if(m>>>0>f>>>0){continue}break}if(!b){break p}H[d+120>>2]=H[d+120>>2]+b}q:{q=e+m|0;if((q|0)<=H[d+120>>2]|(q|0)<=H[d+120>>2]){break q}b=3e4;while(1){if((q|0)<=H[d+120>>2]){break q}b=b-1|0;if(b){continue}b=1e4;continue}}if(D){o=0;k=0;while(1){r:{if(H[d+104>>2]>=(g|0)){break r}b=3e4;if(H[d+104>>2]>=(g|0)){break r}while(1){if(H[d+104>>2]>=(g|0)){break r}b=b-1|0;if(b){continue}b=1e4;continue}}c=p-g|0;h=H[(o<<2)+S>>2];s:{if(c>>>0>=h>>>0){break s}K=(k<<3)+M|0;f=0;while(1){e=h-c|0;l=e>>>0>>0?e:j;t:{if(!l){break t}v=K+(c<<3)|0;b=0;if((l|0)!=1){G=l&-2;e=0;while(1){C=b<<3;P=C+v|0;Q=w+8|0;Ra[H[(J[P+6>>1]<<2)+117344>>2]](P,x,y,t,Q);C=v+(C|8)|0;Ra[H[(J[C+6>>1]<<2)+117344>>2]](C,x,y,t,Q);b=b+2|0;e=e+2|0;if((G|0)!=(e|0)){continue}break}}if(!(l&1)){break t}e=v+(b<<3)|0;Ra[H[(J[e+6>>1]<<2)+117344>>2]](e,x,y,t,w+8|0)}f=f+l|0;j=j-l|0;u:{if(j){p=l+p|0;c=c+l|0;break u}j=4;c=H[d+100>>2]+4|0;H[d+100>>2]=c;p=c-4|0;c=p-g|0}if(h>>>0>c>>>0){continue}break}if(!f){break s}H[d+104>>2]=H[d+104>>2]+f}k=h+k|0;g=g+h|0;o=o+1|0;if((D|0)!=(o|0)){continue}break}}v:{b=H[d+104>>2]>=(g|0);if(b|b){break v}b=3e4;while(1){if(H[d+104>>2]>=(g|0)){break v}b=b-1|0;if(b){continue}b=1e4;continue}}_=L[B+56>>2];e=u-s|0;w:{if(i>>>0<=e>>>0){break w}f=s+128|0;c=V<<6;k=c+y|0;o=c+W|0;c=0;while(1){b=i-e|0;h=b>>>0>>0?b:n;if(h){b=e<<6;l=b+k|0;u=b+o|0;b=0;while(1){b=b+1|0;v=b<<6;FL(v+u|0,l+v|0,A);if((b|0)!=(h|0)){continue}break}}c=c+h|0;n=n-h|0;if(n){e=e+h|0}else{n=128;e=H[d+108>>2]+128|0;H[d+108>>2]=e;e=e-f|0}if(i>>>0>e>>>0){continue}break}if(!c){break w}H[d+112>>2]=H[d+112>>2]+c}b=r-q|0;x:{if(m>>>0<=b>>>0){break x}e=0;while(1){b=H[z+12144>>2]+N(b,52)|0;c=H[H[b>>2]+24>>2];h=H[(c<<2)+135140>>2];if(h){Ra[h|0](b,A,H[w+44>>2]);c=H[H[b>>2]+24>>2]}c=H[(c<<2)+135132>>2];if(c){Ra[c|0](b,_)}e=e+1|0;c=H[d+116>>2]+1|0;H[d+116>>2]=c;r=c-1|0;b=r-q|0;if(m>>>0>b>>>0){continue}break}if(!e){break x}H[d+120>>2]=H[d+120>>2]+e}c=H[B+368>>2];H[a>>2]=H[c>>2];H[c>>2]=a;k=m+q|0;y:{a=i+s|0;if((a|0)<=H[d+112>>2]|(a|0)<=H[d+112>>2]){break y}b=3e4;while(1){if((a|0)<=H[d+112>>2]){break y}b=b-1|0;if(b){continue}b=1e4;continue}}z:{a=H[d+120>>2]>=(k|0);if(a|a){break z}b=3e4;while(1){if(H[d+120>>2]>=(k|0)){break z}b=b-1|0;if(b){continue}b=1e4;continue}}if(R){t=O(t+A);h=0;while(1){A:{if(H[d+104>>2]>=(g|0)){break A}b=3e4;if(H[d+104>>2]>=(g|0)){break A}while(1){if(H[d+104>>2]>=(g|0)){break A}b=b-1|0;if(b){continue}b=1e4;continue}}f=r-k|0;B:{if(m>>>0<=f>>>0){break B}a=R-h|0;b=0;while(1){c=H[z+12144>>2]+N(f,52)|0;e=H[c>>2];Ra[H[H[e>>2]+136>>2]](e,A,U,H[E>>2],H[F>>2],1,1,t);if((a|0)==1){c=H[c>>2];Ra[H[H[c>>2]+140>>2]](c,1)}b=b+1|0;c=H[d+116>>2]+1|0;H[d+116>>2]=c;r=c-1|0;f=r-k|0;if(m>>>0>f>>>0){continue}break}if(!b){break B}H[d+120>>2]=H[d+120>>2]+b}C:{k=k+m|0;if((k|0)<=H[d+120>>2]){break C}b=3e4;if(H[d+120>>2]>=(k|0)){break C}while(1){if(H[d+120>>2]>=(k|0)){break C}b=b-1|0;if(b){continue}b=1e4;continue}}n=0;o=0;if(D){while(1){D:{if(H[d+104>>2]>=(g|0)){break D}b=3e4;if(H[d+104>>2]>=(g|0)){break D}while(1){if(H[d+104>>2]>=(g|0)){break D}b=b-1|0;if(b){continue}b=1e4;continue}}c=p-g|0;a=H[(n<<2)+S>>2];E:{if(c>>>0>=a>>>0){break E}l=(o<<3)+M|0;f=0;while(1){e=a-c|0;i=e>>>0>>0?e:j;F:{if(!i){break F}s=l+(c<<3)|0;b=0;if((i|0)!=1){B=i&-2;e=0;while(1){u=b<<3;q=u+s|0;v=w+8|0;Ra[H[(J[q+6>>1]<<2)+117248>>2]](q,x,y,O(0),t,v);u=s+(u|8)|0;Ra[H[(J[u+6>>1]<<2)+117248>>2]](u,x,y,O(0),t,v);b=b+2|0;e=e+2|0;if((B|0)!=(e|0)){continue}break}}if(!(i&1)){break F}e=s+(b<<3)|0;Ra[H[(J[e+6>>1]<<2)+117248>>2]](e,x,y,O(0),t,w+8|0)}f=f+i|0;j=j-i|0;G:{if(j){p=i+p|0;c=c+i|0;break G}j=4;c=H[d+100>>2]+4|0;H[d+100>>2]=c;p=c-4|0;c=p-g|0}if(a>>>0>c>>>0){continue}break}if(!f){break E}H[d+104>>2]=H[d+104>>2]+f}o=a+o|0;g=a+g|0;n=n+1|0;if((D|0)!=(n|0)){continue}break}}h=h+1|0;if((R|0)!=(h|0)){continue}break}}H:{a=H[d+104>>2]>=(g|0);if(a|a){break H}a=3e4;while(1){if(H[d+104>>2]>=(g|0)){break H}a=a-1|0;if(a){continue}a=1e4;continue}}b=p-g|0;I:{if(T>>>0<=b>>>0){break I}h=g+4|0;c=0;while(1){a=T-b|0;e=a>>>0>>0?a:j;J:{if(!e){break J}i=(b<<3)+M|0;a=0;if((e|0)!=1){g=e&-2;f=0;while(1){k=a<<3;m=k+i|0;Ra[H[(J[m+6>>1]<<2)+117296>>2]](m,x,0);k=i+(k|8)|0;Ra[H[(J[k+6>>1]<<2)+117296>>2]](k,x,0);a=a+2|0;f=f+2|0;if((g|0)!=(f|0)){continue}break}}if(!(e&1)){break J}a=i+(a<<3)|0;Ra[H[(J[a+6>>1]<<2)+117296>>2]](a,x,0)}c=c+e|0;j=j-e|0;if(j){b=b+e|0}else{j=4;a=H[d+100>>2]+4|0;H[d+100>>2]=a;b=a-h|0}if(T>>>0>b>>>0){continue}break}if(!c){break I}H[d+104>>2]=H[d+104>>2]+c}Oa=w+48|0}function fx(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=O(0),g=O(0),h=O(0),i=0,j=O(0),k=O(0),l=O(0),m=0,n=0,o=0,p=0,q=0,r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=0,B=O(0),C=0,D=O(0),E=O(0),G=O(0),J=O(0),K=O(0),M=O(0),P=O(0),Q=O(0),R=O(0),S=O(0),T=O(0),U=O(0),V=O(0),W=O(0),X=0,Y=0,Z=0,_=0,$=O(0),aa=O(0),ba=O(0),ca=0,da=0,ea=0;if(I[a+488|0]){o5(H[33808],8,10222,2004,65846,0);return}if(F[H[a+476>>2]]&1){c=Oa-352|0;Oa=c;d=H[a+468>>2];i=S6(H[b+8>>2],0,N(d,d)<<2);A=H[a+444>>2];n=H[a+448>>2];o=N(n,112);m=H[b+52>>2];b=H[m+8>>2];d=H[m+4>>2];e=H[((b<<2)+d|0)-4>>2];if((o|0)<=(e-H[m+16>>2]|0)){e=e-o|0;H[c+160>>2]=e;a:{if(b>>>0>=(H[m+12>>2]&2147483647)>>>0){Xr(m+4|0,c+160|0);break a}H[d+(b<<2)>>2]=e;H[m+8>>2]=b+1}q=H[c+160>>2]}o=a+112|0;Pw(o,q);e=n-1|0;if(e){while(1){b=N(e,112)+q|0;L[c+48>>2]=L[b>>2];L[c+52>>2]=L[b+4>>2];L[c+56>>2]=L[b+8>>2];L[c+60>>2]=L[b+12>>2];L[c+64>>2]=L[b+16>>2];L[c+68>>2]=L[b+20>>2];L[c+72>>2]=L[b+24>>2];L[c+76>>2]=L[b+28>>2];L[c+80>>2]=L[b+32>>2];L[c+84>>2]=L[b+36>>2];L[c+88>>2]=L[b+40>>2];L[c+92>>2]=L[b+44>>2];L[c+96>>2]=L[b+48>>2];L[c+100>>2]=L[b+52>>2];L[c+104>>2]=L[b+56>>2];L[c+108>>2]=L[b+60>>2];n=b- -64|0;L[c+112>>2]=L[n>>2];L[c+116>>2]=L[b+68>>2];L[c+120>>2]=L[b+72>>2];L[c+124>>2]=L[b+76>>2];L[c+128>>2]=L[b+80>>2];L[c+132>>2]=L[b+84>>2];L[c+136>>2]=L[b+88>>2];L[c+140>>2]=L[b+92>>2];L[c+144>>2]=L[b+96>>2];L[c+148>>2]=L[b+100>>2];L[c+152>>2]=L[b+104>>2];H[c+156>>2]=H[b+108>>2];d=H[a+452>>2]+N(e,160)|0;g=L[d+128>>2];f=L[d+124>>2];h=L[d+120>>2];H[c+40>>2]=0;L[c+36>>2]=-h;L[c+32>>2]=f;L[c+28>>2]=h;H[c+24>>2]=0;L[c+12>>2]=g;H[c+8>>2]=0;L[c+20>>2]=-g;L[c+16>>2]=-f;Sv(c+8|0,c+48|0);d=N(H[(A+(e<<5)|0)+24>>2],112)+q|0;L[d>>2]=L[c+48>>2]+L[d>>2];L[d+4>>2]=L[c+52>>2]+L[d+4>>2];L[d+8>>2]=L[c+56>>2]+L[d+8>>2];L[d+12>>2]=L[c+60>>2]+L[d+12>>2];L[d+16>>2]=L[c+64>>2]+L[d+16>>2];L[d+20>>2]=L[c+68>>2]+L[d+20>>2];L[d+24>>2]=L[c+72>>2]+L[d+24>>2];L[d+28>>2]=L[c+76>>2]+L[d+28>>2];L[d+32>>2]=L[c+80>>2]+L[d+32>>2];L[d+36>>2]=L[c+84>>2]+L[d+36>>2];L[d+40>>2]=L[c+88>>2]+L[d+40>>2];L[d+44>>2]=L[c+92>>2]+L[d+44>>2];L[d+48>>2]=L[c+96>>2]+L[d+48>>2];L[d+52>>2]=L[c+100>>2]+L[d+52>>2];L[d+56>>2]=L[c+104>>2]+L[d+56>>2];L[d+60>>2]=L[c+108>>2]+L[d+60>>2];p=d- -64|0;L[p>>2]=L[c+112>>2]+L[p>>2];L[d+68>>2]=L[c+116>>2]+L[d+68>>2];L[d+72>>2]=L[c+120>>2]+L[d+72>>2];L[d+76>>2]=L[c+124>>2]+L[d+76>>2];L[d+80>>2]=L[c+128>>2]+L[d+80>>2];L[d+84>>2]=L[c+132>>2]+L[d+84>>2];L[d+88>>2]=L[c+136>>2]+L[d+88>>2];L[d+92>>2]=L[c+140>>2]+L[d+92>>2];L[d+96>>2]=L[c+144>>2]+L[d+96>>2];L[d+100>>2]=L[c+148>>2]+L[d+100>>2];L[d+104>>2]=L[c+152>>2]+L[d+104>>2];p=I[(H[a+456>>2]+N(e,80)|0)+76|0];if(p){C=H[a+384>>2];r=L[b+20>>2];s=L[b+16>>2];t=L[b+12>>2];u=L[b+8>>2];v=L[b+4>>2];w=L[b>>2];G=L[b+104>>2];J=L[b+100>>2];K=L[b+96>>2];M=L[b+92>>2];P=L[b+88>>2];Q=L[b+84>>2];R=L[b+80>>2];S=L[b+76>>2];T=L[b+72>>2];U=L[b+68>>2];V=L[n>>2];W=L[b+60>>2];B=L[b+56>>2];D=L[b+52>>2];E=L[b+48>>2];$=L[b+44>>2];aa=L[b+40>>2];ba=L[b+36>>2];x=L[b+32>>2];y=L[b+28>>2];z=L[b+24>>2];n=0;while(1){b=(c+160|0)+(n<<5)|0;d=(C+N(e,76)|0)+N(n,24)|0;g=L[d+20>>2];f=L[d+12>>2];h=L[d+16>>2];j=L[d>>2];k=L[d+4>>2];l=L[d+8>>2];L[b+24>>2]=O(O(x*g)+O(O(z*f)+O(y*h)))+O(O(O(j*R)+O(k*M))+O(l*G));L[b+20>>2]=O(O(r*g)+O(O(t*f)+O(s*h)))+O(O(O(j*S)+O(k*P))+O(l*J));L[b+16>>2]=O(O(u*g)+O(O(w*f)+O(v*h)))+O(O(O(j*T)+O(k*Q))+O(l*K));L[b+8>>2]=O(O(O(j*u)+O(k*r))+O(l*x))+O(O(O(f*$)+O(h*B))+O(g*U));L[b+4>>2]=O(O(O(j*v)+O(k*s))+O(l*y))+O(O(O(f*aa)+O(h*D))+O(g*V));L[b>>2]=O(O(O(j*w)+O(k*t))+O(l*z))+O(O(O(f*ba)+O(h*E))+O(g*W));n=n+1|0;if((p|0)!=(n|0)){continue}break}}ex(o,e,i,c+160|0);e=e-1|0;if(e){continue}break}}Lw(m,q);Oa=c+352|0;return}c=Oa-160|0;Oa=c;n=H[a+468>>2];C=S6(H[b+8>>2],0,N(n,n)<<2);ca=H[a+452>>2];da=H[a+444>>2];m=H[b+52>>2];d=m+4|0;o=H[a+448>>2];p=N(o,112);e=H[m+4>>2];b=H[m+8>>2];i=H[(e+(b<<2)|0)-4>>2];if((p|0)<=(i-H[m+16>>2]|0)){q=i-p|0;H[c+48>>2]=q;b:{if(b>>>0>=(H[m+12>>2]&2147483647)>>>0){Xr(d,c+48|0);break b}H[e+(b<<2)>>2]=q;H[m+8>>2]=b+1}q=H[c+48>>2]}p=n<<5;e=H[m+4>>2];b=H[m+8>>2];i=H[(e+(b<<2)|0)-4>>2];if((p|0)<=(i-H[m+16>>2]|0)){i=i-p|0;H[c+48>>2]=i;c:{if(b>>>0>=(H[m+12>>2]&2147483647)>>>0){Xr(d,c+48|0);break c}H[e+(b<<2)>>2]=i;H[m+8>>2]=b+1}A=H[c+48>>2]}Y=a+112|0;Pw(Y,q);e=o-1|0;if(e){while(1){b=N(e,112)+q|0;L[c+48>>2]=L[b>>2];L[c+52>>2]=L[b+4>>2];L[c+56>>2]=L[b+8>>2];L[c+60>>2]=L[b+12>>2];L[c+64>>2]=L[b+16>>2];L[c+68>>2]=L[b+20>>2];L[c+72>>2]=L[b+24>>2];L[c+76>>2]=L[b+28>>2];L[c+80>>2]=L[b+32>>2];L[c+84>>2]=L[b+36>>2];L[c+88>>2]=L[b+40>>2];L[c+92>>2]=L[b+44>>2];L[c+96>>2]=L[b+48>>2];L[c+100>>2]=L[b+52>>2];L[c+104>>2]=L[b+56>>2];L[c+108>>2]=L[b+60>>2];Z=b- -64|0;L[c+112>>2]=L[Z>>2];L[c+116>>2]=L[b+68>>2];L[c+120>>2]=L[b+72>>2];L[c+124>>2]=L[b+76>>2];L[c+128>>2]=L[b+80>>2];L[c+132>>2]=L[b+84>>2];L[c+136>>2]=L[b+88>>2];L[c+140>>2]=L[b+92>>2];L[c+144>>2]=L[b+96>>2];L[c+148>>2]=L[b+100>>2];L[c+152>>2]=L[b+104>>2];H[c+156>>2]=H[b+108>>2];d=H[a+452>>2]+N(e,160)|0;g=L[d+128>>2];f=L[d+124>>2];h=L[d+120>>2];H[c+40>>2]=0;L[c+36>>2]=-h;L[c+32>>2]=f;L[c+28>>2]=h;H[c+24>>2]=0;L[c+12>>2]=g;H[c+8>>2]=0;L[c+20>>2]=-g;L[c+16>>2]=-f;Sv(c+8|0,c+48|0);d=N(H[((e<<5)+da|0)+24>>2],112)+q|0;L[d>>2]=L[c+48>>2]+L[d>>2];L[d+4>>2]=L[c+52>>2]+L[d+4>>2];L[d+8>>2]=L[c+56>>2]+L[d+8>>2];L[d+12>>2]=L[c+60>>2]+L[d+12>>2];L[d+16>>2]=L[c+64>>2]+L[d+16>>2];L[d+20>>2]=L[c+68>>2]+L[d+20>>2];L[d+24>>2]=L[c+72>>2]+L[d+24>>2];L[d+28>>2]=L[c+76>>2]+L[d+28>>2];L[d+32>>2]=L[c+80>>2]+L[d+32>>2];L[d+36>>2]=L[c+84>>2]+L[d+36>>2];L[d+40>>2]=L[c+88>>2]+L[d+40>>2];L[d+44>>2]=L[c+92>>2]+L[d+44>>2];L[d+48>>2]=L[c+96>>2]+L[d+48>>2];L[d+52>>2]=L[c+100>>2]+L[d+52>>2];L[d+56>>2]=L[c+104>>2]+L[d+56>>2];L[d+60>>2]=L[c+108>>2]+L[d+60>>2];i=d- -64|0;L[i>>2]=L[c+112>>2]+L[i>>2];L[d+68>>2]=L[c+116>>2]+L[d+68>>2];L[d+72>>2]=L[c+120>>2]+L[d+72>>2];L[d+76>>2]=L[c+124>>2]+L[d+76>>2];L[d+80>>2]=L[c+128>>2]+L[d+80>>2];L[d+84>>2]=L[c+132>>2]+L[d+84>>2];L[d+88>>2]=L[c+136>>2]+L[d+88>>2];L[d+92>>2]=L[c+140>>2]+L[d+92>>2];L[d+96>>2]=L[c+144>>2]+L[d+96>>2];L[d+100>>2]=L[c+148>>2]+L[d+100>>2];L[d+104>>2]=L[c+152>>2]+L[d+104>>2];d=H[a+456>>2]+N(e,80)|0;X=d;p=(H[d+72>>2]<<5)+A|0;_=I[d+76|0];if(_){ea=H[a+384>>2];o=0;while(1){x=L[b+60>>2];y=L[b+48>>2];z=L[b+36>>2];G=L[Z>>2];J=L[b+52>>2];K=L[b+40>>2];M=L[b+68>>2];P=L[b+56>>2];Q=L[b+44>>2];r=L[b+8>>2];s=L[b+4>>2];t=L[b>>2];R=L[b+96>>2];S=L[b+72>>2];T=L[b+84>>2];u=L[b+20>>2];v=L[b+16>>2];w=L[b+12>>2];U=L[b+100>>2];V=L[b+76>>2];W=L[b+88>>2];d=p+(o<<5)|0;B=L[b+32>>2];i=(N(e,76)+ea|0)+N(o,24)|0;g=L[i+20>>2];D=L[b+24>>2];f=L[i+12>>2];E=L[b+28>>2];h=L[i+16>>2];j=L[i>>2];k=L[i+4>>2];l=L[i+8>>2];L[d+24>>2]=O(O(B*g)+O(O(D*f)+O(E*h)))+O(O(O(j*L[b+80>>2])+O(k*L[b+92>>2]))+O(l*L[b+104>>2]));L[d+20>>2]=O(O(u*g)+O(O(w*f)+O(v*h)))+O(O(O(j*V)+O(k*W))+O(l*U));L[d+16>>2]=O(O(r*g)+O(O(t*f)+O(s*h)))+O(O(O(j*S)+O(k*T))+O(l*R));L[d+8>>2]=O(O(O(j*r)+O(k*u))+O(l*B))+O(O(O(f*Q)+O(h*P))+O(g*M));L[d+4>>2]=O(O(O(j*s)+O(k*v))+O(l*E))+O(O(O(f*K)+O(h*J))+O(g*G));L[d>>2]=O(O(O(j*t)+O(k*w))+O(l*D))+O(O(O(f*z)+O(h*y))+O(g*x));o=o+1|0;if((_|0)!=(o|0)){continue}break}}b=ex(Y,e,C,p);o=I[X+76|0];if(o){i=N(b,160)+ca|0;d=0;while(1){g=L[i+104>>2];f=L[i+96>>2];h=L[i+100>>2];b=p+(d<<5)|0;H[b+28>>2]=0;H[b+12>>2]=0;j=L[b+4>>2];k=L[b>>2];L[b+24>>2]=O(O(f*j)-O(h*k))+L[b+24>>2];l=f;f=L[b+8>>2];L[b+20>>2]=L[b+20>>2]+O(O(g*k)-O(l*f));L[b+16>>2]=O(O(h*f)-O(j*g))+L[b+16>>2];d=d+1|0;if((o|0)!=(d|0)){continue}break}}e=e-1|0;if(e){continue}break}}Sw(c+48|0,q);if(n){e=0;while(1){i=N(e,n);a=(e<<5)+A|0;d=0;while(1){b=C+(d+i<<2)|0;X=b;B=L[b>>2];b=(d<<5)+A|0;g=L[b>>2];r=L[c+56>>2];f=L[b+4>>2];s=L[c+68>>2];h=L[b+8>>2];t=L[c+80>>2];j=L[b+16>>2];k=L[b+20>>2];l=L[b+24>>2];u=L[c+48>>2];v=L[c+60>>2];w=L[c+72>>2];x=L[c+52>>2];y=L[c+64>>2];z=L[c+76>>2];L[X>>2]=B-O(O(O(L[a+24>>2]*O(O(O(O(g*r)+O(f*s))+O(h*t))+O(O(O(j*L[c+92>>2])+O(k*L[c+104>>2]))+O(l*L[c+116>>2]))))+O(O(L[a+16>>2]*O(O(O(O(g*u)+O(f*v))+O(h*w))+O(O(O(j*L[c+84>>2])+O(k*L[c+96>>2]))+O(l*L[c+108>>2]))))+O(O(O(O(O(g*x)+O(f*y))+O(h*z))+O(O(O(j*L[c+88>>2])+O(k*L[c+100>>2]))+O(l*L[c+112>>2])))*L[a+20>>2])))+O(O(L[a+8>>2]*O(O(O(t*l)+O(O(w*j)+O(z*k)))+O(O(O(g*L[c+128>>2])+O(f*L[c+140>>2]))+O(h*L[c+152>>2]))))+O(O(L[a>>2]*O(O(O(r*l)+O(O(u*j)+O(x*k)))+O(O(O(g*L[c+120>>2])+O(f*L[c+132>>2]))+O(h*L[c+144>>2]))))+O(O(O(O(s*l)+O(O(v*j)+O(y*k)))+O(O(O(g*L[c+124>>2])+O(f*L[c+136>>2]))+O(h*L[c+148>>2])))*L[a+4>>2]))));d=d+1|0;if((n|0)!=(d|0)){continue}break}e=e+1|0;if((n|0)!=(e|0)){continue}break}}Lw(m,q);Lw(m,A);Oa=c+160|0}function CW(a,b,c,d,e,f,g,h,i){var j=0,k=O(0),l=O(0),m=O(0),n=0,o=O(0),p=O(0),q=0,r=O(0),s=0,t=O(0),u=O(0),v=0,w=O(0),x=0,y=0,z=0,A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),G=O(0),J=O(0),K=O(0),M=O(0),P=O(0),Q=O(0),S=O(0),T=O(0),U=0,V=O(0),X=O(0),Y=O(0),Z=O(0),_=O(0),$=0,aa=O(0),ba=O(0),ca=O(0),da=O(0),ea=O(0),fa=O(0),ga=O(0),ha=O(0),ia=O(0),ja=O(0),ka=0,la=0,ma=0;j=Oa-320|0;Oa=j;x=H[b+4>>2];l=L[x+20>>2];U=H[a+4>>2];k=L[U+20>>2];G=L[d>>2];la=I[U+32|0];aa=L[U+16>>2];ma=I[x+32|0];ba=L[x+16>>2];H[j+28>>2]=0;ja=O((k>l?l:k)*O(.10000000149011612));a:{b:{c:{d:{e:{f:{ka=I[h|0];if(ka){y=H[a+8>>2];d=0;while(1){c=d<<2;q=I[d+f|0];H[c+(j+48|0)>>2]=q;z=c+(j+32|0)|0;c=I[d+g|0];H[z>>2]=c;q=(q<<4)+88320|0;n=H[q+8>>2];v=H[q>>2];q=H[q+4>>2];c=H[x+152>>2]+N(c,12)|0;D=L[c+8>>2];V=L[c>>2];X=L[c+4>>2];ca=L[y+48>>2];da=L[y+32>>2];J=L[y>>2];ea=L[y+16>>2];fa=L[y+52>>2];ga=L[y+36>>2];ha=L[y+4>>2];ia=L[y+20>>2];K=L[y+56>>2];A=L[y+40>>2];Y=L[U+56>>2];B=L[y+8>>2];Z=L[U+48>>2];C=L[y+24>>2];E=L[U+52>>2];w=L[x+80>>2];_=L[x+48>>2];r=L[x+64>>2];o=L[x+84>>2];t=L[x+52>>2];p=L[x+68>>2];m=L[x+88>>2];l=L[x+56>>2];k=L[x+72>>2];c=s;s=c<<4;$=s+(j+128|0)|0;H[$+12>>2]=0;z=s+(j- -64|0)|0;H[z+12>>2]=0;s=s+(j+192|0)|0;H[s+12>>2]=0;u=O(O(m*D)+O(O(l*V)+O(X*k)));L[z+8>>2]=u;t=O(O(o*D)+O(O(t*V)+O(X*p)));L[z+4>>2]=t;p=O(O(w*D)+O(O(_*V)+O(X*r)));L[z>>2]=p;r=n?Y:O(-Y);o=v?Z:O(-Z);k=q?E:O(-E);m=O(K+O(O(A*r)+O(O(B*o)+O(C*k))));L[$+8>>2]=m;l=O(fa+O(O(ga*r)+O(O(ha*o)+O(k*ia))));L[$+4>>2]=l;k=O(ca+O(O(da*r)+O(O(J*o)+O(k*ea))));L[$>>2]=k;m=O(m-u);L[s+8>>2]=m;l=O(l-t);L[s+4>>2]=l;k=O(k-p);L[s>>2]=k;s=c+1|0;d=d+1|0;if((ka|0)!=(d|0)){continue}break}H[j+28>>2]=s;g:{h:{switch(c-1|0){case 0:p=L[j+200>>2];o=O(L[j+216>>2]-p);m=L[j+192>>2];u=O(L[j+208>>2]-m);l=L[j+196>>2];t=O(L[j+212>>2]-l);k=O(O(o*o)+O(O(u*u)+O(t*t)));if(!(k<=O(1.1920928955078125e-7))){break g}H[j+28>>2]=1;c=H[j+196>>2];H[j+304>>2]=H[j+192>>2];H[j+308>>2]=c;c=H[j+204>>2];H[j+312>>2]=H[j+200>>2];H[j+316>>2]=c;break e;case 1:_W(j+304|0,j+192|0,j+128|0,j- -64|0,j+48|0,j+32|0,j+28|0);break e;case 2:break h;default:break f}}DZ(j+304|0,j+192|0,j+128|0,j- -64|0,j+48|0,j+32|0,j+28|0);break e}H[j+316>>2]=0;k=O(R(O(O(O(O(O(-m)*u)-O(t*l))-O(p*o))/k),O(1)));k=k>O(0)?k:O(0);L[j+312>>2]=p+O(o*k);L[j+308>>2]=l+O(t*k);L[j+304>>2]=m+O(u*k);break e}m=L[c+8>>2];l=L[c>>2];k=L[c+4>>2];H[j+268>>2]=0;c=O(O(m*m)+O(O(l*l)+O(k*k)))>O(0);r=c?m:O(0);L[j+264>>2]=r;o=c?k:O(0);L[j+260>>2]=o;u=c?l:O(1);L[j+256>>2]=u;k=O(O(1)/O(W(O(O(r*r)+O(O(u*u)+O(o*o))))));M=O(r*k);P=O(o*k);Q=O(u*k);t=O(3.4028234663852886e38);p=O(0);break d}H[j+316>>2]=0;L[j+312>>2]=m;L[j+308>>2]=l;L[j+304>>2]=k}c=H[j+308>>2];H[j+256>>2]=H[j+304>>2];H[j+260>>2]=c;c=H[j+316>>2];H[j+264>>2]=H[j+312>>2];H[j+268>>2]=c;r=L[j+264>>2];u=L[j+256>>2];o=L[j+260>>2];t=O(W(O(O(r*r)+O(O(u*u)+O(o*o)))));if(!(ja>2]}_=p;S=la?aa:O(0);T=ma?ba:O(0);D=O(S+T);Z=O(G+D);while(1){H[j+280>>2]=H[j+296>>2];c=H[j+292>>2];H[j+272>>2]=H[j+288>>2];H[j+276>>2]=c;d=H[a+4>>2];n=H[a+8>>2];c=H[j+28>>2]<<2;k=O(-u);v=O(O(O(L[a+20>>2]*k)-O(L[a+36>>2]*o))-O(L[a+52>>2]*r))>O(0);q=O(O(O(L[a+16>>2]*k)-O(L[a+32>>2]*o))-O(L[a+48>>2]*r))>O(0);s=O(O(O(L[a+24>>2]*k)-O(L[a+40>>2]*o))-O(L[a+56>>2]*r))>O(0);H[c+(j+48|0)>>2]=v<<1|q|s<<2;E=L[n+56>>2];G=L[n+40>>2];aa=L[n+24>>2];ba=L[n+52>>2];ca=L[n+36>>2];V=L[d+56>>2];da=L[n+20>>2];X=L[d+52>>2];J=L[n+8>>2];ea=L[n+48>>2];fa=L[n+32>>2];ga=L[n>>2];ha=L[n+16>>2];ia=L[n+4>>2];Y=L[d+48>>2];n=H[b+4>>2];K=L[n+56>>2];A=L[n+52>>2];B=L[n+72>>2];d=n- -64|0;C=L[d>>2];w=L[n+68>>2];p=L[n+88>>2];m=L[n+80>>2];l=L[n+84>>2];k=L[n+48>>2];H[j+316>>2]=0;L[j+312>>2]=O(p*r)+O(O(m*u)+O(o*l));L[j+308>>2]=O(B*r)+O(O(C*u)+O(o*w));L[j+304>>2]=O(K*r)+O(O(k*u)+O(o*A));z=c+(j+32|0)|0;c=EU(n,j+304|0);H[z>>2]=c;p=E;E=s?V:O(-V);l=O(G*E);G=q?Y:O(-Y);m=v?X:O(-X);B=O(p+O(l+O(O(J*G)+O(aa*m))));c=H[n+152>>2]+N(c,12)|0;A=L[c+8>>2];l=L[c>>2];k=L[c+4>>2];C=O(O(L[n+88>>2]*A)+O(O(L[n+56>>2]*l)+O(k*L[n+72>>2])));J=O(B-C);w=O(ea+O(O(fa*E)+O(O(ga*G)+O(m*ha))));p=O(O(L[n+80>>2]*A)+O(O(L[n+48>>2]*l)+O(k*L[d>>2])));K=O(w-p);m=O(ba+O(O(ca*E)+O(O(ia*G)+O(m*da))));l=O(O(L[n+84>>2]*A)+O(O(L[n+52>>2]*l)+O(k*L[n+68>>2])));A=O(m-l);k=O(O(M*J)+O(O(Q*K)+O(P*A)));if(k>Z){s=0;if(!f){break a}q=H[j+28>>2];F[h|0]=q;if(!q){break a}c=0;if((q|0)!=1){e=q&-2;d=0;while(1){a=c<<2;b=j+48|0;F[c+f|0]=H[a+b>>2];h=a;a=j+32|0;F[c+g|0]=H[h+a>>2];i=c|1;h=i<<2;F[f+i|0]=H[b+h>>2];F[g+i|0]=H[a+h>>2];c=c+2|0;d=d+2|0;if((e|0)!=(d|0)){continue}break}}if(!(q&1)){break a}a=c<<2;F[c+f|0]=H[a+(j+48|0)>>2];F[c+g|0]=H[a+(j+32|0)>>2];break a}v=H[j+28>>2];if(k>O(t*O(.9997749924659729))){i:{if(!f){break i}F[h|0]=v;if(!v){break i}b=0;if((v|0)!=1){h=v&-2;a=0;while(1){c=b<<2;d=j+48|0;F[b+f|0]=H[c+d>>2];z=c;c=j+32|0;F[b+g|0]=H[z+c>>2];q=b|1;s=q<<2;F[f+q|0]=H[d+s>>2];F[g+q|0]=H[c+s>>2];b=b+2|0;a=a+2|0;if((h|0)!=(a|0)){continue}break}}if(!(v&1)){break i}a=b<<2;F[b+f|0]=H[a+(j+48|0)>>2];F[b+g|0]=H[a+(j+32|0)>>2]}L[i+32>>2]=Q;H[i+44>>2]=0;L[i+40>>2]=M;L[i+36>>2]=P;FU(j+192|0,j+128|0,j- -64|0,j+256|0,j+304|0,j,v);j:{if(e){a=H[j+308>>2];H[i>>2]=H[j+304>>2];H[i+4>>2]=a;a=H[j+316>>2];H[i+8>>2]=H[j+312>>2];H[i+12>>2]=a;a=H[j+4>>2];H[i+16>>2]=H[j>>2];H[i+20>>2]=a;a=H[j+12>>2];H[i+24>>2]=H[j+8>>2];H[i+28>>2]=a;a=H[j+292>>2];H[i+68>>2]=H[j+288>>2];H[i+72>>2]=a;H[i+76>>2]=H[j+296>>2];break j}m=L[j+304>>2];l=L[j+308>>2];k=L[j+312>>2];H[i+12>>2]=0;L[i+8>>2]=k-O(S*M);L[i+4>>2]=l-O(S*P);L[i>>2]=m-O(S*Q);m=L[j>>2];l=L[j+4>>2];k=L[j+8>>2];H[i+28>>2]=0;L[i+24>>2]=k+O(T*M);L[i+20>>2]=l+O(T*P);L[i+16>>2]=m+O(T*Q);t=O(t-D)}L[i+64>>2]=t;s=2;break a}c=v<<4;d=c+(j+128|0)|0;H[d+12>>2]=0;L[d+8>>2]=B;L[d+4>>2]=m;L[d>>2]=w;d=c+(j- -64|0)|0;H[d+12>>2]=0;L[d+8>>2]=C;L[d+4>>2]=l;L[d>>2]=p;c=c+(j+192|0)|0;H[c+12>>2]=0;L[c+8>>2]=J;L[c+4>>2]=A;L[c>>2]=K;H[j+28>>2]=v+1;k:{l:{switch(v-1|0){case 0:p=L[j+200>>2];B=O(L[j+216>>2]-p);m=L[j+192>>2];C=O(L[j+208>>2]-m);l=L[j+196>>2];w=O(L[j+212>>2]-l);k=O(O(B*B)+O(O(C*C)+O(w*w)));if(k<=O(1.1920928955078125e-7)){H[j+28>>2]=1;c=H[j+196>>2];H[j+304>>2]=H[j+192>>2];H[j+308>>2]=c;c=H[j+204>>2];H[j+312>>2]=H[j+200>>2];H[j+316>>2]=c;break k}H[j+316>>2]=0;k=O(R(O(O(O(O(O(-m)*C)-O(w*l))-O(p*B))/k),O(1)));k=k>O(0)?k:O(0);L[j+312>>2]=p+O(B*k);L[j+308>>2]=l+O(w*k);L[j+304>>2]=m+O(C*k);break k;case 1:_W(j+304|0,j+192|0,j+128|0,j- -64|0,j+48|0,j+32|0,j+28|0);break k;case 2:DZ(j+304|0,j+192|0,j+128|0,j- -64|0,j+48|0,j+32|0,j+28|0);break k;default:break l}}H[j+316>>2]=0;L[j+312>>2]=J;L[j+308>>2]=A;L[j+304>>2]=K}c=H[j+308>>2];H[j+256>>2]=H[j+304>>2];H[j+260>>2]=c;c=H[j+316>>2];H[j+264>>2]=H[j+312>>2];H[j+268>>2]=c;m=L[j+264>>2];l=L[j+256>>2];k=L[j+260>>2];p=O(W(O(O(m*m)+O(O(l*l)+O(k*k)))));w=O(O(1)/p);M=O(m*w);P=O(k*w);Q=O(l*w);if(!(!(p>ja)|!(t>p))){_=L[j+268>>2];r=m;o=k;u=l;t=p;continue}break}b=H[j+28>>2];if(!(t>p)){m:{if(!f){break m}n=b-1|0;F[h|0]=n;if(!n){break m}c=0;if((b|0)!=2){s=n&-2;a=0;while(1){d=c<<2;h=j+48|0;F[c+f|0]=H[d+h>>2];z=d;d=j+32|0;F[c+g|0]=H[z+d>>2];v=c|1;q=v<<2;F[f+v|0]=H[h+q>>2];F[g+v|0]=H[d+q>>2];c=c+2|0;a=a+2|0;if((s|0)!=(a|0)){continue}break}}if(!(n&1)){break m}a=c<<2;F[c+f|0]=H[a+(j+48|0)>>2];F[c+g|0]=H[a+(j+32|0)>>2]}H[j+296>>2]=H[j+280>>2];a=H[j+276>>2];H[j+288>>2]=H[j+272>>2];H[j+292>>2]=a;L[j+268>>2]=_;L[j+256>>2]=u;L[j+260>>2]=o;L[j+264>>2]=r;FU(j+192|0,j+128|0,j- -64|0,j+256|0,j+304|0,j,b);H[i+60>>2]=0;L[i+56>>2]=M;L[i+52>>2]=P;L[i+48>>2]=Q;H[i+44>>2]=0;k=O(O(1)/t);r=O(r*k);L[i+40>>2]=r;o=O(o*k);L[i+36>>2]=o;p=O(u*k);L[i+32>>2]=p;if(e){a=H[j+308>>2];H[i>>2]=H[j+304>>2];H[i+4>>2]=a;a=H[j+316>>2];H[i+8>>2]=H[j+312>>2];H[i+12>>2]=a;a=H[j+4>>2];H[i+16>>2]=H[j>>2];H[i+20>>2]=a;a=H[j+12>>2];H[i+24>>2]=H[j+8>>2];H[i+28>>2]=a;L[i+64>>2]=t;a=H[j+276>>2];H[i+68>>2]=H[j+272>>2];H[i+72>>2]=a;H[i+76>>2]=H[j+280>>2];s=4;break a}m=L[j+304>>2];l=L[j+308>>2];k=L[j+312>>2];H[i+12>>2]=0;L[i+8>>2]=k-O(S*r);L[i+4>>2]=l-O(S*o);L[i>>2]=m-O(S*p);m=L[j>>2];l=L[j+4>>2];k=L[j+8>>2];L[i+64>>2]=t-D;H[i+28>>2]=0;L[i+24>>2]=k+O(T*r);L[i+20>>2]=l+O(T*o);L[i+16>>2]=m+O(T*p);s=2;if(t<=D){break a}s=4;break a}if(f){break b}s=5;break a}b=H[j+28>>2]}F[h|0]=b;s=5;if(!b){break a}c=0;if((b|0)!=1){h=b&-2;d=0;while(1){a=c<<2;e=j+48|0;F[c+f|0]=H[a+e>>2];i=a;a=j+32|0;F[c+g|0]=H[i+a>>2];q=c|1;i=q<<2;F[f+q|0]=H[e+i>>2];F[g+q|0]=H[a+i>>2];c=c+2|0;d=d+2|0;if((h|0)!=(d|0)){continue}break}}if(!(b&1)){break a}a=c<<2;F[c+f|0]=H[a+(j+48|0)>>2];F[c+g|0]=H[a+(j+32|0)>>2]}Oa=j+320|0;return s}function nT(a,b,c){a=a|0;b=O(b);c=c|0;var d=0,e=0,f=O(0),g=O(0),h=0,i=O(0),j=O(0),k=0,l=O(0),m=0,n=O(0),o=0,p=O(0),q=0,r=O(0),s=O(0),t=O(0),u=O(0),v=0,w=0,x=O(0),y=O(0),z=O(0),A=0,B=O(0),C=O(0),D=O(0),E=O(0),F=O(0),G=O(0),I=O(0),J=O(0),K=O(0),Q=O(0),R=O(0),S=O(0),T=O(0),U=O(0),V=O(0),X=O(0),Y=O(0),Z=O(0),_=0,$=O(0),aa=O(0),ba=O(0),ca=O(0),da=O(0),ea=O(0),fa=O(0),ga=O(0),ha=O(0),ia=O(0),ja=0,ka=0,la=0,ma=0,na=0,oa=O(0),pa=O(0),qa=O(0),ra=0,sa=O(0),ta=O(0),ua=O(0),va=O(0),wa=O(0),xa=O(0),ya=O(0),za=O(0),Aa=O(0),Ba=O(0),Ca=O(0),Da=O(0),Ea=O(0),Fa=O(0),Ga=0,Ha=0,Ia=0,Ja=0,Ka=0;d=Oa-240|0;Oa=d;q=H[a+68>>2];k=H[a+72>>2];m=N(k,24);if(m){e=H[33808]+12|0;v=Ra[H[H[e>>2]+8>>2]](e,m,20591,7031,651)|0}else{v=0}a:{if(!k){e=v;break a}e=v;while(1){m=H[q>>2];Ra[H[H[m>>2]+12>>2]](m,d+184|0)|0;ja=M[d+184>>3];ka=M[d+192>>3];la=M[d+200>>3];ma=M[d+208>>3];na=M[d+216>>3];L[e+20>>2]=M[d+224>>3];L[e+16>>2]=na;L[e+12>>2]=ma;L[e+8>>2]=la;L[e+4>>2]=ka;L[e>>2]=ja;e=e+24|0;q=q+4|0;k=k-1|0;if(k){continue}break}}k=0;H[d+16>>2]=0;H[d+8>>2]=0;H[d+12>>2]=0;h=e-v|0;o=(h|0)/24|0;b:{if(!h){break b}e=H[33808]+12|0;w=Ra[H[H[e>>2]+8>>2]](e,o<<2,20591,7031,611)|0;if(o-1>>>0>=3){q=o&-4;e=0;while(1){L[(k<<2)+w>>2]=L[N(k,24)+v>>2];m=k|1;L[(m<<2)+w>>2]=L[N(m,24)+v>>2];m=k|2;L[(m<<2)+w>>2]=L[N(m,24)+v>>2];m=k|3;L[(m<<2)+w>>2]=L[N(m,24)+v>>2];k=k+4|0;e=e+4|0;if((q|0)!=(e|0)){continue}break}}m=o&3;if(m){e=0;while(1){L[(k<<2)+w>>2]=L[N(k,24)+v>>2];k=k+1|0;e=e+1|0;if((m|0)!=(e|0)){continue}break}}ra=OT(d+184|0);e=TT(ra,w,o);c:{if((h|0)<=0){break c}m=H[e+8>>2];_=m+(o<<2)|0;q=m;while(1){A=H[q>>2];H[d+128>>2]=A;q=q+4|0;o=(A<<2)+w|0;e=m;while(1){d:{if(e>>>0>=_>>>0){m=e;break d}h=H[e>>2];m=e+4|0;e=m;if(L[(h<<2)+w>>2]>2]){continue}}break}if(m>>>0>=_>>>0){break c}k=H[m>>2];H[d+40>>2]=k;e=m;x=L[(N(A,24)+v|0)+12>>2];e:{if(!(x>=L[(k<<2)+w>>2])){break e}while(1){e=e+4|0;f:{if((k|0)==(A|0)){break f}o=N(k,24)+v|0;if(L[o>>2]>x){break f}h=N(A,24)+v|0;if(L[h>>2]>L[o+12>>2]|L[o+4>>2]>L[h+16>>2]|(L[h+4>>2]>L[o+16>>2]|L[o+8>>2]>L[h+20>>2])){break f}if(L[h+8>>2]>L[o+20>>2]){break f}h=H[d+12>>2];g:{if(h>>>0>=(H[d+16>>2]&2147483647)>>>0){qm(d+8|0,d+128|0);k=H[d+12>>2];break g}H[H[d+8>>2]+(h<<2)>>2]=A;k=H[d+12>>2]+1|0;H[d+12>>2]=k}if((H[d+16>>2]&2147483647)>>>0<=k>>>0){qm(d+8|0,d+40|0);break f}H[H[d+8>>2]+(k<<2)>>2]=H[d+40>>2];H[d+12>>2]=H[d+12>>2]+1}if(e>>>0>=_>>>0){break e}k=H[e>>2];H[d+40>>2]=k;A=H[d+128>>2];x=L[(N(A,24)+v|0)+12>>2];if(x>=L[(k<<2)+w>>2]){continue}break}}if(q>>>0<_>>>0){continue}break}}e=H[33808]+12|0;Ra[H[H[e>>2]+12>>2]](e,w);PT(ra);e=H[d+12>>2];if(e>>>0<2){break b}sa=O(b*O(4));m=d+208|0;A=e>>>1|0;k=H[d+8>>2];while(1){A=A-1|0;e=H[a+68>>2];h=H[e+(H[k+4>>2]<<2)>>2];q=H[e+(H[k>>2]<<2)>>2];h:{if(c){if(!(Ia=c,Ja=Ra[H[H[q>>2]+16>>2]](q)|0,Ka=Ra[H[H[h>>2]+16>>2]](h)|0,Ha=H[H[c>>2]+8>>2],Ra[Ha](Ia|0,Ja|0,Ka|0)|0)){break h}}e=H[q+4>>2]>H[h+4>>2];o=e?q:h;i:{j:{k:{l:{h=e?h:q;switch(H[h+4>>2]){case 0:break k;case 1:break l;default:break j}}if(H[o+4>>2]!=1){break j}IR(h-8|0,d+184|0);IR(o-8|0,d+128|0);B=L[d+176>>2];u=L[d+232>>2];Ga=M[d+224>>3];l=O(M[d+200>>3]);L[d+48>>2]=l;i=O(M[d+184>>3]);L[d+40>>2]=i;g=O(M[d+192>>3]);L[d+44>>2]=g;ja=M[d+208>>3];ka=M[d+216>>3];j=O(M[d+128>>3]);L[d+112>>2]=j;f=O(M[d+136>>3]);L[d+116>>2]=f;b=O(M[d+144>>3]);L[d+120>>2]=b;la=M[d+152>>3];ma=M[d+160>>3];na=M[d+168>>3];n=O(Ga);L[d+104>>2]=n-l;s=O(ka);L[d+100>>2]=s-g;r=O(ja);L[d+96>>2]=r-i;i=O(na);L[d+88>>2]=i-b;l=O(ma);L[d+84>>2]=l-f;g=O(la);L[d+80>>2]=g-j;T=O(0);U=O(0);x=O(0);f=O(W(uZ(d+40|0,d+96|0,d+112|0,d+80|0,d+24|0,d+108|0)));b=O(u+B);p=O(0);if(!(f>2];f=O(O(1)-B);u=L[d+108>>2];b=O(O(1)-u);n=O(O(O(f*n)+O(B*L[d+48>>2]))-O(O(b*i)+O(u*L[d+120>>2])));i=L[h+356>>2];j=O(O(O(B*L[d+40>>2])+O(f*r))-O(O(u*L[d+112>>2])+O(b*g)));g=L[h+348>>2];f=O(O(O(f*s)+O(B*L[d+44>>2]))-O(O(b*l)+O(u*L[d+116>>2])));b=L[h+352>>2];l=O(O(n*i)+O(O(j*g)+O(f*b)));i=O(n-O(i*l));g=O(j-O(g*l));f=O(f-O(b*l));b=O(O(i*i)+O(O(g*g)+O(f*f)));if(b>O(0)){b=O(O(1)/O(W(b)));U=O(i*b);T=O(g*b);p=O(f*b)}else{p=O(0)}break i}if(H[o+4>>2]!=1){break j}NS(h-8|0,d+184|0);IR(o-8|0,d+128|0);L[d+120>>2]=M[d+144>>3];L[d+116>>2]=M[d+136>>3];L[d+112>>2]=M[d+128>>3];L[d+104>>2]=M[d+168>>3];L[d+100>>2]=M[d+160>>3];L[d+96>>2]=M[d+152>>3];b=L[d+220>>2];u=O(b+b);r=L[d+224>>2];j=O(r+r);g=O(O(1)-O(b*u));n=O(r*j);L[d+72>>2]=g-n;s=L[d+228>>2];f=O(j*s);l=L[d+232>>2];b=O(u*l);L[d+68>>2]=f-b;i=O(u*s);j=O(j*l);L[d+64>>2]=i+j;L[d+60>>2]=f+b;f=g;b=O(s+s);g=O(s*b);L[d+56>>2]=f-g;f=O(u*r);b=O(b*l);L[d+52>>2]=f-b;L[d+48>>2]=i-j;L[d+44>>2]=f+b;L[d+40>>2]=O(O(1)-n)-g;L[d+32>>2]=M[d+200>>3];L[d+28>>2]=M[d+192>>3];L[d+24>>2]=M[d+184>>3];T=O(0);U=O(0);x=O(0);f=O(W(sZ(d+112|0,d+96|0,d+24|0,m,d+40|0,d+108|0,d+80|0)));b=L[d+176>>2];p=O(0);if(!(f>2]-O(O(L[d+120>>2]+L[d+104>>2])*O(.5)));i=L[h+356>>2];j=O(L[d+24>>2]-O(O(L[d+112>>2]+L[d+96>>2])*O(.5)));g=L[h+348>>2];f=O(L[d+28>>2]-O(O(L[d+116>>2]+L[d+100>>2])*O(.5)));b=L[h+352>>2];l=O(O(n*i)+O(O(j*g)+O(f*b)));i=O(n-O(i*l));g=O(j-O(g*l));f=O(f-O(b*l));b=O(O(i*i)+O(O(g*g)+O(f*f)));if(b>O(0)){b=O(O(1)/O(W(b)));U=O(i*b);T=O(g*b);p=O(f*b)}else{p=O(0)}break i}NS(h-8|0,d+184|0);NS(o-8|0,d+128|0);T=O(0);U=O(0);x=O(0);b=L[d+164>>2];K=O(b+b);t=L[d+172>>2];r=O(K*t);Q=L[d+168>>2];l=O(Q+Q);y=L[d+176>>2];n=O(l*y);$=O(r+n);aa=L[d+208>>2];ba=L[d+160>>2];V=L[d+220>>2];R=O(V+V);j=L[d+228>>2];X=O(R*j);s=L[d+224>>2];z=O(s+s);C=L[d+232>>2];Y=O(z*C);g=O(X-Y);E=O(O(1)-O(b*K));i=O(Q*l);ca=O(E-i);Z=O(s*z);b=O(j+j);D=O(j*b);f=O(O(O(1)-Z)-D);F=O(R*s);G=O(b*C);b=O(F+G);I=O(l*t);l=O(K*y);B=O(I-l);ta=O(O(g*ca)+O(O(f*$)+O(b*B)));ua=O(O(P(ta))+O(9.999999974752427e-7));da=L[d+152>>2];u=O(r-n);p=O(O(1)-i);i=O(t+t);t=O(t*i);s=O(p-t);n=O(K*Q);i=O(i*y);r=O(n+i);va=O(O(g*u)+O(O(f*s)+O(b*r)));wa=O(O(P(va))+O(9.999999974752427e-7));ea=L[d+156>>2];l=O(I+l);n=O(n-i);i=O(E-t);xa=O(O(g*l)+O(O(f*n)+O(b*i)));ya=O(O(P(xa))+O(9.999999974752427e-7));za=O(M[d+144>>3]);Aa=O(M[d+200>>3]);oa=O(za-Aa);Ba=O(M[d+128>>3]);Ca=O(M[d+184>>3]);J=O(Ba-Ca);Da=O(M[d+136>>3]);Ea=O(M[d+192>>3]);S=O(Da-Ea);fa=O(O(oa*g)+O(O(J*f)+O(b*S)));pa=O(O(aa+O(O(ba*ua)+O(O(da*wa)+O(ea*ya))))-O(P(fa)));p=O(0);if(pa>2];ha=O(O(oa*C)+O(O(J*E)+O(F*S)));qa=O(O(O(O(ba*j)+O(O(da*Q)+O(ea*V)))+ga)-O(P(ha)));p=O(0);if(qa>2];J=O(O(oa*G)+O(O(J*I)+O(t*S)));S=O(O(O(O(ba*Y)+O(O(da*D)+O(ea*z)))+ia)-O(P(J)));p=O(0);if(Sqa;j=e?qa:pa;q=j>S;m:{n:{o:{p:{q:{r:{w=q?2:e;j=q?S:j;e=j>D;q=e?3:w;j=e?D:j;e=j>y;q=e?4:q;j=e?y:j;e=j>z;switch((e?5:q)-1|0){case 4:break n;case 3:break o;case 2:break p;case 1:break q;case 0:break r;default:break m}}f=E;b=F;g=C;break m}f=I;b=t;g=G;break m}f=s;b=r;g=u;break m}f=n;b=i;g=l;break m}f=$;b=B;g=ca}x=e?z:j;e=O(O(g*O(Aa-za))+O(O(f*O(Ca-Ba))+O(O(Ea-Da)*b)))>2];i=e?O(-f):f;g=L[h+348>>2];f=L[h+352>>2];b=e?O(-b):b;r=O(O(l*n)+O(O(i*g)+O(f*b)));n=O(l-O(n*r));g=O(i-O(g*r));f=O(b-O(f*r));b=O(O(n*n)+O(O(g*g)+O(f*f)));p=O(0);if(!(b>O(0))){break i}b=O(O(1)/O(W(b)));U=O(n*b);T=O(g*b);p=O(f*b)}j=p;if(x==O(0)){break h}b=x>sa?sa:x;g=O(O(T*b)*O(.5));L[h+468>>2]=g+L[h+468>>2];f=O(O(j*b)*O(.5));L[h+472>>2]=f+L[h+472>>2];b=O(O(U*b)*O(.5));L[h+476>>2]=b+L[h+476>>2];L[o+468>>2]=L[o+468>>2]-g;L[o+472>>2]=L[o+472>>2]-f;L[o+476>>2]=L[o+476>>2]-b}k=k+8|0;if(A){continue}break}}if(v){a=H[33808]+12|0;Ra[H[H[a>>2]+12>>2]](a,v)}a=H[d+16>>2];s:{if((a|0)<0|!(a&2147483647)){break s}c=H[d+8>>2];if(!c){break s}a=H[33808]+12|0;Ra[H[H[a>>2]+12>>2]](a,c)}Oa=d+240|0}function KW(a,b,c,d,e,f,g,h,i){var j=0,k=O(0),l=0,m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=0,s=O(0),t=O(0),u=O(0),v=0,w=0,x=0,y=0,z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),G=O(0),J=0,K=0,M=O(0),P=O(0),Q=O(0),S=O(0),T=O(0),U=O(0),V=O(0),X=O(0),Y=O(0),Z=O(0),_=O(0),$=O(0),aa=O(0),ba=O(0),ca=O(0),da=O(0),ea=O(0),fa=0,ga=O(0),ha=O(0),ia=O(0),ja=O(0),ka=O(0),la=O(0),ma=O(0),na=O(0);j=Oa-320|0;Oa=j;w=H[b+4>>2];m=L[w+20>>2];x=H[a+4>>2];k=L[x+20>>2];ea=L[d>>2];fa=I[x+32|0];ga=L[x+16>>2];J=I[w+32|0];ha=L[w+16>>2];H[j+28>>2]=0;da=O((k>m?m:k)*O(.10000000149011612));a:{b:{c:{d:{e:{f:{v=I[h|0];if(v){y=H[a+8>>2];d=0;while(1){c=d<<2;l=I[d+f|0];H[c+(j+48|0)>>2]=l;K=c+(j+32|0)|0;c=I[d+g|0];H[K>>2]=c;l=H[x+152>>2]+N(l,12)|0;U=L[l+8>>2];V=L[l>>2];X=L[l+4>>2];c=H[w+152>>2]+N(c,12)|0;Y=L[c+8>>2];Z=L[c>>2];_=L[c+4>>2];ia=L[y+48>>2];ja=L[y+32>>2];ka=L[y>>2];la=L[y+16>>2];ma=L[y+52>>2];na=L[y+36>>2];B=L[y+4>>2];C=L[y+20>>2];D=L[y+56>>2];E=L[y+40>>2];G=L[x+88>>2];M=L[x+56>>2];Q=L[x+72>>2];S=L[y+8>>2];T=L[x+80>>2];$=L[x+48>>2];aa=L[x+64>>2];ba=L[y+24>>2];ca=L[x+84>>2];z=L[x+52>>2];A=L[x+68>>2];u=L[w+80>>2];P=L[w+48>>2];q=L[w+64>>2];o=L[w+84>>2];s=L[w+52>>2];p=L[w+68>>2];n=L[w+88>>2];m=L[w+56>>2];k=L[w+72>>2];c=r;l=c<<4;r=l+(j+128|0)|0;H[r+12>>2]=0;K=l+(j- -64|0)|0;H[K+12>>2]=0;l=l+(j+192|0)|0;H[l+12>>2]=0;t=O(O(n*Y)+O(O(m*Z)+O(_*k)));L[K+8>>2]=t;s=O(O(o*Y)+O(O(s*Z)+O(_*p)));L[K+4>>2]=s;p=O(O(u*Y)+O(O(P*Z)+O(_*q)));L[K>>2]=p;q=O(O(G*U)+O(O(M*V)+O(X*Q)));o=O(O(T*U)+O(O($*V)+O(X*aa)));k=O(O(ca*U)+O(O(z*V)+O(X*A)));n=O(D+O(O(E*q)+O(O(S*o)+O(ba*k))));L[r+8>>2]=n;m=O(ma+O(O(na*q)+O(O(B*o)+O(k*C))));L[r+4>>2]=m;k=O(ia+O(O(ja*q)+O(O(ka*o)+O(k*la))));L[r>>2]=k;n=O(n-t);L[l+8>>2]=n;m=O(m-s);L[l+4>>2]=m;k=O(k-p);L[l>>2]=k;r=c+1|0;d=d+1|0;if((v|0)!=(d|0)){continue}break}H[j+28>>2]=r;g:{h:{switch(c-1|0){case 0:p=L[j+200>>2];o=O(L[j+216>>2]-p);n=L[j+192>>2];t=O(L[j+208>>2]-n);m=L[j+196>>2];s=O(L[j+212>>2]-m);k=O(O(o*o)+O(O(t*t)+O(s*s)));if(!(k<=O(1.1920928955078125e-7))){break g}H[j+28>>2]=1;c=H[j+196>>2];H[j+304>>2]=H[j+192>>2];H[j+308>>2]=c;c=H[j+204>>2];H[j+312>>2]=H[j+200>>2];H[j+316>>2]=c;break e;case 1:_W(j+304|0,j+192|0,j+128|0,j- -64|0,j+48|0,j+32|0,j+28|0);break e;case 2:break h;default:break f}}DZ(j+304|0,j+192|0,j+128|0,j- -64|0,j+48|0,j+32|0,j+28|0);break e}H[j+316>>2]=0;k=O(R(O(O(O(O(O(-n)*t)-O(s*m))-O(p*o))/k),O(1)));k=k>O(0)?k:O(0);L[j+312>>2]=p+O(o*k);L[j+308>>2]=m+O(s*k);L[j+304>>2]=n+O(t*k);break e}n=L[c+8>>2];m=L[c>>2];k=L[c+4>>2];H[j+268>>2]=0;c=O(O(n*n)+O(O(m*m)+O(k*k)))>O(0);q=c?n:O(0);L[j+264>>2]=q;o=c?k:O(0);L[j+260>>2]=o;t=c?m:O(1);L[j+256>>2]=t;k=O(O(1)/O(W(O(O(q*q)+O(O(t*t)+O(o*o))))));B=O(q*k);C=O(o*k);D=O(t*k);s=O(3.4028234663852886e38);P=O(0);break d}H[j+316>>2]=0;L[j+312>>2]=n;L[j+308>>2]=m;L[j+304>>2]=k}c=H[j+308>>2];H[j+256>>2]=H[j+304>>2];H[j+260>>2]=c;c=H[j+316>>2];H[j+264>>2]=H[j+312>>2];H[j+268>>2]=c;q=L[j+264>>2];t=L[j+256>>2];o=L[j+260>>2];s=O(W(O(O(q*q)+O(O(t*t)+O(o*o)))));if(!(da>2]}E=fa?ga:O(0);G=J?ha:O(0);M=O(E+G);$=O(ea+M);while(1){H[j+280>>2]=H[j+296>>2];c=H[j+292>>2];H[j+272>>2]=H[j+288>>2];H[j+276>>2]=c;H[j+12>>2]=0;L[j+8>>2]=-q;L[j+4>>2]=-o;L[j>>2]=-t;r=j+304|0;SV(r,a,j,(j+48|0)+(H[j+28>>2]<<2)|0);aa=L[j+316>>2];Q=L[j+312>>2];S=L[j+304>>2];T=L[j+308>>2];c=H[j+28>>2];l=H[b+4>>2];ba=L[l+56>>2];ca=L[l+52>>2];z=L[l+72>>2];d=l- -64|0;A=L[d>>2];u=L[l+68>>2];p=L[l+88>>2];n=L[l+80>>2];m=L[l+84>>2];k=L[l+48>>2];H[j+316>>2]=0;L[j+312>>2]=O(p*q)+O(O(n*t)+O(o*m));L[j+308>>2]=O(z*q)+O(O(A*t)+O(o*u));L[j+304>>2]=O(ba*q)+O(O(k*t)+O(o*ca));v=(j+32|0)+(c<<2)|0;c=EU(l,r);H[v>>2]=c;c=H[l+152>>2]+N(c,12)|0;u=L[c+8>>2];m=L[c>>2];k=L[c+4>>2];p=O(O(L[l+88>>2]*u)+O(O(L[l+56>>2]*m)+O(k*L[l+72>>2])));z=O(Q-p);n=O(O(L[l+80>>2]*u)+O(O(L[l+48>>2]*m)+O(k*L[d>>2])));A=O(S-n);m=O(O(L[l+84>>2]*u)+O(O(L[l+52>>2]*m)+O(k*L[l+68>>2])));u=O(T-m);k=O(O(B*z)+O(O(D*A)+O(C*u)));if(k>$){r=0;if(!f){break a}l=H[j+28>>2];F[h|0]=l;if(!l){break a}c=0;if((l|0)!=1){e=l&-2;b=0;while(1){a=c<<2;d=j+48|0;F[c+f|0]=H[a+d>>2];h=a;a=j+32|0;F[c+g|0]=H[h+a>>2];i=c|1;h=i<<2;F[f+i|0]=H[d+h>>2];F[g+i|0]=H[a+h>>2];c=c+2|0;b=b+2|0;if((e|0)!=(b|0)){continue}break}}if(!(l&1)){break a}a=c<<2;F[c+f|0]=H[a+(j+48|0)>>2];F[c+g|0]=H[a+(j+32|0)>>2];break a}v=H[j+28>>2];if(k>O(s*O(.9997749924659729))){i:{if(!f){break i}F[h|0]=v;if(!v){break i}a=0;if((v|0)!=1){h=v&-2;d=0;while(1){b=a<<2;c=j+48|0;F[a+f|0]=H[b+c>>2];r=b;b=j+32|0;F[a+g|0]=H[r+b>>2];l=a|1;r=l<<2;F[f+l|0]=H[c+r>>2];F[g+l|0]=H[b+r>>2];a=a+2|0;d=d+2|0;if((h|0)!=(d|0)){continue}break}}if(!(v&1)){break i}b=a<<2;F[a+f|0]=H[b+(j+48|0)>>2];F[a+g|0]=H[b+(j+32|0)>>2]}L[i+32>>2]=D;H[i+44>>2]=0;L[i+40>>2]=B;L[i+36>>2]=C;FU(j+192|0,j+128|0,j- -64|0,j+256|0,j+304|0,j,v);j:{if(e){a=H[j+308>>2];H[i>>2]=H[j+304>>2];H[i+4>>2]=a;a=H[j+316>>2];H[i+8>>2]=H[j+312>>2];H[i+12>>2]=a;a=H[j+4>>2];H[i+16>>2]=H[j>>2];H[i+20>>2]=a;a=H[j+12>>2];H[i+24>>2]=H[j+8>>2];H[i+28>>2]=a;a=H[j+292>>2];H[i+68>>2]=H[j+288>>2];H[i+72>>2]=a;H[i+76>>2]=H[j+296>>2];break j}n=L[j+304>>2];m=L[j+308>>2];k=L[j+312>>2];H[i+12>>2]=0;L[i+8>>2]=k-O(E*B);L[i+4>>2]=m-O(E*C);L[i>>2]=n-O(E*D);n=L[j>>2];m=L[j+4>>2];k=L[j+8>>2];H[i+28>>2]=0;L[i+24>>2]=k+O(G*B);L[i+20>>2]=m+O(G*C);L[i+16>>2]=n+O(G*D);s=O(s-M)}L[i+64>>2]=s;r=2;break a}c=v<<4;d=c+(j+128|0)|0;L[d+12>>2]=aa;L[d+8>>2]=Q;L[d+4>>2]=T;L[d>>2]=S;d=c+(j- -64|0)|0;H[d+12>>2]=0;L[d+8>>2]=p;L[d+4>>2]=m;L[d>>2]=n;c=c+(j+192|0)|0;H[c+12>>2]=0;L[c+8>>2]=z;L[c+4>>2]=u;L[c>>2]=A;H[j+28>>2]=v+1;k:{l:{switch(v-1|0){case 0:p=L[j+200>>2];z=O(L[j+216>>2]-p);n=L[j+192>>2];A=O(L[j+208>>2]-n);m=L[j+196>>2];u=O(L[j+212>>2]-m);k=O(O(z*z)+O(O(A*A)+O(u*u)));if(k<=O(1.1920928955078125e-7)){H[j+28>>2]=1;c=H[j+196>>2];H[j+304>>2]=H[j+192>>2];H[j+308>>2]=c;c=H[j+204>>2];H[j+312>>2]=H[j+200>>2];H[j+316>>2]=c;break k}H[j+316>>2]=0;k=O(R(O(O(O(O(O(-n)*A)-O(u*m))-O(p*z))/k),O(1)));k=k>O(0)?k:O(0);L[j+312>>2]=p+O(z*k);L[j+308>>2]=m+O(u*k);L[j+304>>2]=n+O(A*k);break k;case 1:_W(j+304|0,j+192|0,j+128|0,j- -64|0,j+48|0,j+32|0,j+28|0);break k;case 2:DZ(j+304|0,j+192|0,j+128|0,j- -64|0,j+48|0,j+32|0,j+28|0);break k;default:break l}}H[j+316>>2]=0;L[j+312>>2]=z;L[j+308>>2]=u;L[j+304>>2]=A}c=H[j+308>>2];H[j+256>>2]=H[j+304>>2];H[j+260>>2]=c;c=H[j+316>>2];H[j+264>>2]=H[j+312>>2];H[j+268>>2]=c;n=L[j+264>>2];m=L[j+256>>2];k=L[j+260>>2];p=O(W(O(O(n*n)+O(O(m*m)+O(k*k)))));u=O(O(1)/p);B=O(n*u);C=O(k*u);D=O(m*u);if(!(!(p>da)|!(s>p))){P=L[j+268>>2];q=n;o=k;t=m;s=p;continue}break}a=H[j+28>>2];if(!(s>p)){m:{if(!f){break m}J=a-1|0;F[h|0]=J;if(!J){break m}c=0;if((a|0)!=2){r=J&-2;d=0;while(1){b=c<<2;h=j+48|0;F[c+f|0]=H[b+h>>2];l=b;b=j+32|0;F[c+g|0]=H[l+b>>2];v=c|1;l=v<<2;F[f+v|0]=H[h+l>>2];F[g+v|0]=H[b+l>>2];c=c+2|0;d=d+2|0;if((r|0)!=(d|0)){continue}break}}if(!(J&1)){break m}b=c<<2;F[c+f|0]=H[b+(j+48|0)>>2];F[c+g|0]=H[b+(j+32|0)>>2]}H[j+296>>2]=H[j+280>>2];b=H[j+276>>2];H[j+288>>2]=H[j+272>>2];H[j+292>>2]=b;L[j+268>>2]=P;L[j+256>>2]=t;L[j+260>>2]=o;L[j+264>>2]=q;FU(j+192|0,j+128|0,j- -64|0,j+256|0,j+304|0,j,a);H[i+60>>2]=0;L[i+56>>2]=B;L[i+52>>2]=C;L[i+48>>2]=D;H[i+44>>2]=0;k=O(O(1)/s);q=O(q*k);L[i+40>>2]=q;o=O(o*k);L[i+36>>2]=o;p=O(t*k);L[i+32>>2]=p;if(e){a=H[j+308>>2];H[i>>2]=H[j+304>>2];H[i+4>>2]=a;a=H[j+316>>2];H[i+8>>2]=H[j+312>>2];H[i+12>>2]=a;a=H[j+4>>2];H[i+16>>2]=H[j>>2];H[i+20>>2]=a;a=H[j+12>>2];H[i+24>>2]=H[j+8>>2];H[i+28>>2]=a;L[i+64>>2]=s;a=H[j+276>>2];H[i+68>>2]=H[j+272>>2];H[i+72>>2]=a;H[i+76>>2]=H[j+280>>2];r=4;break a}n=L[j+304>>2];m=L[j+308>>2];k=L[j+312>>2];H[i+12>>2]=0;L[i+8>>2]=k-O(E*q);L[i+4>>2]=m-O(E*o);L[i>>2]=n-O(E*p);n=L[j>>2];m=L[j+4>>2];k=L[j+8>>2];L[i+64>>2]=s-M;H[i+28>>2]=0;L[i+24>>2]=k+O(G*q);L[i+20>>2]=m+O(G*o);L[i+16>>2]=n+O(G*p);r=2;if(s<=M){break a}r=4;break a}if(f){break b}r=5;break a}a=H[j+28>>2]}F[h|0]=a;r=5;if(!a){break a}c=0;if((a|0)!=1){h=a&-2;b=0;while(1){d=c<<2;e=j+48|0;F[c+f|0]=H[d+e>>2];i=d;d=j+32|0;F[c+g|0]=H[i+d>>2];l=c|1;i=l<<2;F[f+l|0]=H[e+i>>2];F[g+l|0]=H[d+i>>2];c=c+2|0;b=b+2|0;if((h|0)!=(b|0)){continue}break}}if(!(a&1)){break a}a=c<<2;F[c+f|0]=H[a+(j+48|0)>>2];F[c+g|0]=H[a+(j+32|0)>>2]}Oa=j+320|0;return r}function Eu(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=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),G=O(0),J=O(0),K=O(0),M=0,P=O(0),Q=O(0),R=O(0),S=O(0),T=O(0),U=0;h=0;i=Oa-672|0;Oa=i;M=H[b+40>>2];f=H[f>>2];P=L[b+8>>2];A=L[b+12>>2];R=L[b+4>>2];H[i+668>>2]=0;L[i+664>>2]=A;L[i+660>>2]=P;L[i+656>>2]=R;L[i+640>>2]=L[e>>2];C=L[a+8>>2];S=L[a+4>>2];L[i+624>>2]=S;j=L[c+20>>2];o=L[c+24>>2];m=L[c>>2];q=L[c+4>>2];s=L[c+8>>2];v=L[c+12>>2];r=L[c+16>>2];H[i+620>>2]=0;L[i+616>>2]=o;L[i+612>>2]=j;L[i+608>>2]=r;L[i+604>>2]=v;L[i+600>>2]=s;L[i+596>>2]=q;L[i+592>>2]=m;t=L[d+20>>2];y=L[d+24>>2];n=L[d>>2];p=L[d+4>>2];l=L[d+8>>2];k=L[d+12>>2];w=L[d+16>>2];H[i+588>>2]=0;L[i+584>>2]=y;L[i+580>>2]=t;L[i+576>>2]=w;L[i+572>>2]=k;L[i+568>>2]=l;L[i+564>>2]=p;L[i+560>>2]=n;H[i+556>>2]=0;H[i+540>>2]=0;H[i+524>>2]=0;E=O(-n);x=O(r-w);z=O(j-t);B=O(o-y);G=O(O(O(E*x)-O(z*p))-O(l*B));D=O(O(k*k)+O(-.5));j=O(O(O(k*O(O(p*x)-O(n*z)))+O(D*B))-O(l*G));o=O(j+j);L[i+552>>2]=o;j=O(O(O(D*z)+O(k*O(O(n*B)-O(l*x))))-O(p*G));r=O(j+j);L[i+548>>2]=r;w=O(O(O(q*l)-O(p*s))+O(O(m*k)-O(v*n)));u=O(w+w);y=O(O(O(s*n)-O(l*m))+O(O(q*k)-O(v*p)));Q=O(y+y);J=O(O(1)-O(w*u));T=O(y*Q);j=O(J-T);L[i+536>>2]=j;t=O(O(O(m*p)-O(n*q))+O(O(s*k)-O(v*l)));K=O(t*Q);q=O(O(v*k)-O(O(O(E*m)-O(q*p))-O(l*s)));m=O(q*u);E=O(K-m);L[i+532>>2]=E;K=O(K+m);L[i+520>>2]=K;m=O(t+t);s=O(t*m);J=O(J-s);L[i+516>>2]=J;H[i+508>>2]=0;k=O(O(O(D*x)+O(k*O(O(l*z)-O(p*B))))-O(n*G));p=O(k+k);L[i+544>>2]=p;k=O(t*u);l=O(q*Q);x=O(k+l);L[i+528>>2]=x;n=O(y*u);m=O(q*m);u=O(n-m);L[i+512>>2]=u;k=O(k-l);L[i+504>>2]=k;z=O(n+m);L[i+500>>2]=z;B=O(O(O(1)-T)-s);L[i+496>>2]=B;l=O(S*O(.05000000074505806));s=L[e+8>>2];n=O(s*O(.05000000074505806));m=O(R*L[M+52>>2]);v=O(P*L[M+56>>2]);m=m<=v?m:v;v=O(A*L[M+60>>2]);m=O((m<=v?m:v)*O(.25));n=m>n?n:m;v=l>2];c=c-1|0;d=e+N(c,48)|0;G=L[d+24>>2];P=L[d+40>>2];A=l;D=j;j=L[d+8>>2];R=k;k=L[d>>2];l=L[d+4>>2];A=O(A+O(O(D*j)+O(O(R*k)+O(l*K))));m=O(m+O(O(x*j)+O(O(B*k)+O(l*u))));u=L[d+16>>2];x=L[d+32>>2];k=O(n+O(O(E*j)+O(O(z*k)+O(l*J))));l=L[d+20>>2];n=L[d+36>>2];j=O(O(P*O(A-G))+O(O(O(m-u)*x)+O(O(k-l)*n)));z=O(G-O(A-O(P*j)));m=O(u-O(m-O(x*j)));k=O(l-O(k-O(n*j)));a:{if(Q>2];H[d>>2]=H[e>>2];H[d+4>>2]=h;h=H[e+44>>2];H[d+40>>2]=H[e+40>>2];H[d+44>>2]=h;h=H[e+36>>2];H[d+32>>2]=H[e+32>>2];H[d+36>>2]=h;h=H[e+28>>2];H[d+24>>2]=H[e+24>>2];H[d+28>>2]=h;h=H[e+20>>2];H[d+16>>2]=H[e+16>>2];H[d+20>>2]=h;h=H[e+12>>2];H[d+8>>2]=H[e+8>>2];H[d+12>>2]=h;break a}L[d+44>>2]=j}if(c){j=L[i+536>>2];K=L[i+520>>2];k=L[i+504>>2];E=L[i+532>>2];J=L[i+516>>2];z=L[i+500>>2];x=L[i+528>>2];u=L[i+512>>2];B=L[i+496>>2];l=L[i+552>>2];n=L[i+548>>2];m=L[i+544>>2];continue}break}h=I[f+64|0]}b:{c:{d:{e:{if((a|0)!=(h|0)){break e}j=O(p-L[f+16>>2]);k=O(-j);l=O(r-L[f+20>>2]);n=O(-l);m=O(o-L[f+24>>2]);u=O(-m);c=a<<2;j=j>k?j:k;k=l>n?l:n;k=j>=k?j:k;j=(m>u?m:u)>=O(0)?j:O(0);if(O(v*L[c+90356>>2])<(j<=k?k:j)){break e}if(!(L[c+90388>>2]>O(O(q*L[f+12>>2])+O(O(t*L[f+8>>2])+O(O(w*L[f>>2])+O(y*L[f+4>>2])))))){break d}}d=0;f:{if(L[b+4>>2]!=O(1)){break f}d=0;if(L[b+8>>2]!=O(1)){break f}d=L[b+12>>2]==O(1)}L[f+16>>2]=p;L[f+12>>2]=q;L[f+8>>2]=t;L[f+4>>2]=y;L[f>>2]=w;H[f+28>>2]=0;L[f+24>>2]=o;L[f+20>>2]=r;c=H[b+16>>2];e=H[b+20>>2];U=H[b+28>>2];H[i+488>>2]=H[b+24>>2];H[i+492>>2]=U;H[i+480>>2]=c;H[i+484>>2]=e;j=L[M+32>>2];b=M;c=H[b+28>>2];e=H[b+24>>2];F[i+352|0]=0;H[i+348>>2]=0;H[i+320>>2]=e;H[i+324>>2]=c;H[i+464>>2]=b;H[i+332>>2]=0;L[i+328>>2]=j;H[i+472>>2]=H[b+40>>2]+N(I[b+39|0],20);F[i+476|0]=I[b+38|0];j=O(L[b+52>>2]*L[i+656>>2]);k=O(L[b+56>>2]*L[i+660>>2]);j=j<=k?j:k;k=O(L[b+60>>2]*L[i+664>>2]);j=j<=k?j:k;L[i+344>>2]=j*O(.02500000037252903);L[i+340>>2]=j*O(.05000000074505806);L[i+336>>2]=j*O(.10000000149011612);CU(i+656|0,i+480|0,i+368|0,i+416|0,i+320|0,d);H[i+468>>2]=H[b+44>>2];b=H[i+636>>2];H[i+312>>2]=H[i+632>>2];H[i+316>>2]=b;H[i+252>>2]=4;b=H[i+548>>2];H[i+224>>2]=H[i+544>>2];H[i+228>>2]=b;b=H[i+556>>2];H[i+232>>2]=H[i+552>>2];H[i+236>>2]=b;b=H[i+628>>2];H[i+304>>2]=H[i+624>>2];H[i+308>>2]=b;k=L[i+528>>2];u=L[i+496>>2];o=L[i+512>>2];r=L[i+536>>2];p=L[i+504>>2];l=L[i+520>>2];n=L[i+532>>2];m=L[i+500>>2];t=L[i+516>>2];H[i+300>>2]=0;H[i+284>>2]=0;j=O(C*O(0));w=O(O(n*j)+O(O(m*C)+O(j*t)));q=L[i+548>>2];L[i+276>>2]=w+q;x=O(O(r*j)+O(O(p*C)+O(j*l)));y=L[i+552>>2];L[i+280>>2]=x+y;L[i+292>>2]=q-w;L[i+296>>2]=y-x;F[i+256|0]=1;w=L[i+304>>2];L[i+240>>2]=w;L[i+244>>2]=w;L[i+248>>2]=w;C=O(O(k*j)+O(O(u*C)+O(j*o)));j=L[i+544>>2];L[i+272>>2]=C+j;L[i+288>>2]=j-C;H[i+184>>2]=0;H[i+188>>2]=0;H[i+176>>2]=0;H[i+180>>2]=0;H[i+168>>2]=0;H[i+172>>2]=0;H[i+160>>2]=0;H[i+164>>2]=0;H[i+152>>2]=0;H[i+156>>2]=0;H[i+144>>2]=0;H[i+148>>2]=0;H[i+208>>2]=0;H[i+136>>2]=125948;H[i+140>>2]=i+224;H[i+124>>2]=0;L[i+120>>2]=L[i+232>>2]-L[i+328>>2];L[i+116>>2]=L[i+228>>2]-L[i+324>>2];L[i+112>>2]=L[i+224>>2]-L[i+320>>2];c=0;g:{h:{i:{if(d){H[i+96>>2]=129228;H[i+100>>2]=i+320;b=c0(i+136|0,i+96|0,i+112|0,i+640|0,f+67|0,f+71|0,f+66|0,i+144|0);break i}H[i+96>>2]=126016;H[i+100>>2]=i+320;b=xW(i+136|0,i+96|0,i+112|0,i+640|0,1,f+67|0,f+71|0,f+66|0,i+144|0)}switch(b|0){case 4:break h;case 0:break b;default:break g}}c=d0(i+224|0,i+320|0,i+496|0,i+592|0,i+560|0,g,g,d,f,i+176|0,i+160|0,L[i+336>>2],i+640|0,1,s);break b}L[i+96>>2]=v*O(.05000000074505806);j:{k:{if((b|0)!=2){c=1;l:{if(d){H[i+80>>2]=129228;H[i+84>>2]=i+320;b=I[f+66|0];L[i+48>>2]=s;e=H[i+60>>2];H[i+8>>2]=H[i+56>>2];H[i+12>>2]=e;e=H[i+52>>2];H[i>>2]=H[i+48>>2];H[i+4>>2]=e;b=wZ(i+136|0,i+80|0,f+67|0,f+71|0,b,1,i,i+144|0);break l}H[i+80>>2]=126016;H[i+84>>2]=i+320;b=I[f+66|0];L[i+32>>2]=s;e=H[i+44>>2];H[i+24>>2]=H[i+40>>2];H[i+28>>2]=e;e=H[i+36>>2];H[i+16>>2]=H[i+32>>2];H[i+20>>2]=e;b=wZ(i+136|0,i+80|0,f+67|0,f+71|0,b,1,i+16|0,i+144|0)}if((b|0)!=5){break k}}H[i+92>>2]=0;A=l;l=O(L[i+152>>2]-y);j=O(L[i+144>>2]-j);D=O(o*j);o=O(L[i+148>>2]-q);L[i+84>>2]=O(A*l)+O(D+O(o*t));L[i+80>>2]=O(p*l)+O(O(L[i+496>>2]*j)+O(o*m));L[i+88>>2]=O(r*l)+O(O(k*j)+O(o*n));L[i+76>>2]=L[i+208>>2];L[i+72>>2]=L[i+184>>2];b=H[i+180>>2];H[i+64>>2]=H[i+176>>2];H[i+68>>2]=b;b=H[i+84>>2];H[g>>2]=H[i+80>>2];H[g+4>>2]=b;b=H[i+92>>2];H[g+8>>2]=H[i+88>>2];H[g+12>>2]=b;b=H[i+172>>2];H[g+24>>2]=H[i+168>>2];H[g+28>>2]=b;b=H[i+164>>2];H[g+16>>2]=H[i+160>>2];H[g+20>>2]=b;b=H[i+76>>2];H[g+40>>2]=H[i+72>>2];H[g+44>>2]=b;b=H[i+68>>2];H[g+32>>2]=H[i+64>>2];H[g+36>>2]=b;a1(f,i+80|0,i+160|0,i- -64|0,i+96|0);c=0;if(!a){break k}if((a|0)==(h|0)){break j}}c=d0(i+224|0,i+320|0,i+496|0,i+592|0,i+560|0,g,g,d,f,i+176|0,i+160|0,L[i+336>>2],i+640|0,c,s);break b}H[i+92>>2]=0;j=L[i+572>>2];k=O(O(j*j)+O(-.5));o=L[i+568>>2];r=L[i+184>>2];p=L[i+560>>2];l=L[i+176>>2];n=L[i+564>>2];m=L[i+180>>2];t=O(O(o*r)+O(O(p*l)+O(n*m)));q=O(O(O(j*O(O(p*m)-O(l*n)))+O(k*r))+O(o*t));L[i+88>>2]=q+q;q=O(O(n*t)+O(O(k*m)+O(j*O(O(o*l)-O(r*p)))));L[i+84>>2]=q+q;j=O(O(p*t)+O(O(l*k)+O(j*O(O(n*r)-O(m*o)))));L[i+80>>2]=j+j;a=i+80|0;Y0(f,g,a,a,i+592|0,i+624|0,i+640|0);break c}if(!a){c=0;break b}c=1;b=H[f+76>>2];r=L[b+32>>2];o=r;p=L[b+36>>2];j=p;l=L[b+40>>2];k=l;m:{if((a|0)==1){break m}d=a-1|0;e=d&1;k=l;j=p;o=r;if((a|0)!=2){h=d&-2;d=0;while(1){a=b+N(c,48)|0;o=O(O(o+L[a+32>>2])+L[a+80>>2]);k=O(O(k+L[a+40>>2])+L[a+88>>2]);j=O(O(j+L[a+36>>2])+L[a+84>>2]);c=c+2|0;d=d+2|0;if((h|0)!=(d|0)){continue}break}}if(!e){break m}a=b+N(c,48)|0;o=O(o+L[a+32>>2]);k=O(k+L[a+40>>2]);j=O(j+L[a+36>>2])}H[i+332>>2]=0;n=L[i+568>>2];a=O(O(k*k)+O(O(o*o)+O(j*j)))>O(1.1920928955078125e-7);k=a?k:l;l=L[i+560>>2];o=a?o:r;r=L[i+564>>2];p=a?j:p;m=O(O(n*k)+O(O(l*o)+O(r*p)));j=L[i+572>>2];t=O(O(j*j)+O(-.5));q=O(O(n*m)+O(O(j*O(O(l*p)-O(o*r)))+O(k*t)));q=O(q+q);s=O(O(l*m)+O(O(j*O(O(r*k)-O(p*n)))+O(o*t)));s=O(s+s);j=O(O(r*m)+O(O(j*O(O(n*o)-O(k*l)))+O(p*t)));k=O(j+j);j=O(O(1)/O(W(O(O(q*q)+O(O(s*s)+O(k*k))))));L[i+328>>2]=q*j;L[i+324>>2]=k*j;L[i+320>>2]=s*j;a=i+320|0;Y0(f,g,a,a,i+592|0,i+624|0,i+640|0)}c=1}Oa=i+672|0;return c|0}function JC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=O(0),f=0,g=O(0),h=O(0),i=O(0),j=0,k=0,l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=0,r=0,s=0,t=O(0),u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;k=Oa-208|0;Oa=k;u=1;d=H[a+4>>2];a:{if(!d){break a}b:{switch(J[b+98>>1]){case 3:if(J[b+96>>1]){d=KC(k+16|0,b+48|0,b+12|0,b);u=LC(H[a+296>>2],H[a+292>>2],H[a+4>>2],d,c);break a}g=L[b+84>>2];e=L[b+88>>2];l=L[b+76>>2];i=L[b+92>>2];m=L[b+80>>2];n=L[b+72>>2];H[k+44>>2]=0;L[k+40>>2]=O(i-m)*O(.5);L[k+36>>2]=O(e-l)*O(.5);H[k+28>>2]=0;L[k+32>>2]=O(g-n)*O(.5);L[k+24>>2]=O(m+i)*O(.5);L[k+20>>2]=O(l+e)*O(.5);L[k+16>>2]=O(n+g)*O(.5);u=MC(H[a+296>>2],H[a+292>>2],d,k+16|0,c);break a;case 2:l=L[b+60>>2];h=L[b+124>>2];n=L[b+112>>2];o=L[b+116>>2];g=L[b+120>>2];H[k+28>>2]=0;L[k+24>>2]=g;L[k+20>>2]=o;L[k+16>>2]=n;e=L[b+16>>2];m=L[b+20>>2];i=L[b+12>>2];H[k+108>>2]=0;H[k+92>>2]=0;H[k+76>>2]=0;h=O(h*O(1.0099999904632568));L[k+72>>2]=h;L[k+68>>2]=h;H[k+60>>2]=0;L[k+56>>2]=i;L[k+52>>2]=m;H[k+44>>2]=0;L[k+40>>2]=m;L[k+36>>2]=e;t=O(-i);t=i>t?i:t;L[k+104>>2]=t;p=O(-m);p=m>p?m:p;L[k+100>>2]=p;L[k+88>>2]=p;p=O(-e);p=e>p?e:p;L[k+84>>2]=p;L[k+64>>2]=h;L[k+48>>2]=e;L[k+32>>2]=i;L[k+96>>2]=p;L[k+80>>2]=t;H[k+140>>2]=0;H[k+124>>2]=0;h=O(l+l);c:{if(h>=O(3.4028234663852886e38)){l=e==O(0)?o:e>=O(0)?O(3.4028234663852886e38):O(-3.4028234663852886e38);i=i==O(0)?n:i>=O(0)?O(3.4028234663852886e38):O(-3.4028234663852886e38);e=g;if(m==O(0)){break c}e=m>=O(0)?O(3.4028234663852886e38):O(-3.4028234663852886e38);break c}l=O(o+O(h*e));i=O(n+O(h*i));e=O(g+O(h*m))}L[k+136>>2]=e>2]=l>2]=e>g?g:e;L[k+116>>2]=l>o?o:l;L[k+128>>2]=i>2]=i>n?n:i;u=NC(H[a+296>>2],H[a+292>>2],d,k+16|0,c);break a;case 0:g=L[b+112>>2];e=L[b+108>>2];f=H[b+104>>2];j=H[b+100>>2];H[k+28>>2]=0;L[k+24>>2]=e;H[k+16>>2]=j;H[k+20>>2]=f;L[k+32>>2]=g*g;u=OC(H[a+296>>2],H[a+292>>2],d,k+16|0,c);break a;case 4:break b;default:break a}}d=KC(k+16|0,b+48|0,b+12|0,b);u=LC(H[a+296>>2],H[a+292>>2],H[a+4>>2],d,c)}if(!(!u|!I[a+336|0]|(H[a+156>>2]+H[a+108>>2]|0)==(0-H[a+216>>2]|0))){u=0;d=Oa-224|0;Oa=d;s=a+52|0;d:{if(H[s+104>>2]!=(0-H[s+56>>2]|0)){w=s+4|0;f=Oa-208|0;Oa=f;y=b+12|0;z=b+48|0;j=1;a=1;while(1){r=N(q,48)+w|0;q=H[r+12>>2];e:{if((j^1)&1|(!q|!H[q+588>>2])){break e}f:{switch(J[b+98>>1]){case 3:if(J[b+96>>1]){j=KC(f+16|0,z,y,b);q=H[w+104>>2];j=fC(H[q+12>>2],H[q+8>>2],H[r+12>>2],j,c);break e}g=L[b+84>>2];e=L[b+72>>2];l=L[b+88>>2];i=L[b+76>>2];m=L[b+92>>2];n=L[b+80>>2];H[f+44>>2]=0;H[f+28>>2]=0;L[f+40>>2]=O(m-n)*O(.5);L[f+36>>2]=O(l-i)*O(.5);L[f+32>>2]=O(g-e)*O(.5);L[f+24>>2]=O(n+m)*O(.5);L[f+20>>2]=O(i+l)*O(.5);L[f+16>>2]=O(e+g)*O(.5);j=H[w+104>>2];A=H[j+12>>2];C=H[j+8>>2];r=Oa-1056|0;Oa=r;F[r+1040|0]=1;H[r+1048>>2]=256;H[r+1052>>2]=256;H[r+1044>>2]=r+16;H[r+16>>2]=H[q+588>>2];q=1;g:{while(1){q=q-1|0;j=H[H[r+1044>>2]+(q<<2)>>2];g=L[j+16>>2];e=L[j>>2];l=O(g+e);g=O(g-e);m=L[j+24>>2];n=L[j+8>>2];i=O(m+n);o=L[j+20>>2];h=L[j+4>>2];e=O(o+h);m=O(m-n);n=O(o-h);while(1){h:{h=O(l*O(.5));l=L[f+16>>2];o=O(h-l);h=O(-o);p=O(g*O(.5));g=L[f+32>>2];if(!(O(p+g)>=(h>2];o=O(h-e);h=O(-o);p=O(n*O(.5));n=L[f+36>>2];if(!(O(p+n)>=(h>2];o=O(h-i);h=O(-o);p=O(m*O(.5));m=L[f+40>>2];if(!(O(p+m)>=(h>2]){j=H[j+36>>2];v=j+4|0;i:{j:{x=H[j>>2];switch(x|0){case 0:break h;case 1:break j;default:break i}}if(Ra[H[H[c>>2]>>2]](c,r+12|0,(H[v>>2]<<3)+A|0)|0){break h}j=0;break g}while(1){B=H[v>>2];j=N(B,24)+C|0;o=L[j+12>>2];t=L[j>>2];l=O(O(O(t+o)*O(.5))-l);h=O(-l);k:{if(!(O(O(O(o-t)*O(.5))+g)>=(l>h?l:h))){break k}l=L[j+4>>2];o=L[j+16>>2];g=O(O(O(l+o)*O(.5))-e);e=O(-g);if(!(O(O(O(o-l)*O(.5))+n)>=(e>2];n=L[j+20>>2];g=O(O(O(l+n)*O(.5))-i);e=O(-g);if(!(O(O(O(n-l)*O(.5))+m)>=(e>2]>>2]](c,r+12|0,(B<<3)+A|0)|0){break k}j=0;break g}x=x-1|0;if(!x){break h}v=v+4|0;i=L[f+24>>2];e=L[f+20>>2];l=L[f+16>>2];m=L[f+40>>2];n=L[f+36>>2];g=L[f+32>>2];continue}}j=H[j+36>>2];H[H[r+1044>>2]+(q<<2)>>2]=j+48;q=q+1|0;if((q|0)==(H[r+1052>>2]&2147483647)){iC(r+16|0,q<<1)}g=L[j+16>>2];e=L[j>>2];l=O(g+e);g=O(g-e);m=L[j+24>>2];n=L[j+8>>2];i=O(m+n);o=L[j+20>>2];h=L[j+4>>2];e=O(o+h);m=O(m-n);n=O(o-h);continue}break}if(q){continue}break}j=1}q=H[r+1052>>2];l:{if((q|0)<0|!(q&2147483647)){break l}q=H[r+1044>>2];if((q|0)==(r+16|0)|!q){break l}v=H[33808];Ra[H[H[v+12>>2]+12>>2]](v+12|0,q)}Oa=r+1056|0;break e;case 2:l=L[b+60>>2];h=L[b+124>>2];n=L[b+112>>2];o=L[b+116>>2];g=L[b+120>>2];H[f+28>>2]=0;L[f+24>>2]=g;L[f+20>>2]=o;L[f+16>>2]=n;e=L[b+16>>2];m=L[b+20>>2];i=L[b+12>>2];H[f+108>>2]=0;H[f+92>>2]=0;H[f+76>>2]=0;h=O(h*O(1.0099999904632568));L[f+72>>2]=h;L[f+68>>2]=h;L[f+64>>2]=h;H[f+60>>2]=0;L[f+56>>2]=i;L[f+52>>2]=m;L[f+48>>2]=e;H[f+44>>2]=0;L[f+40>>2]=m;L[f+36>>2]=e;L[f+32>>2]=i;h=O(-i);h=i>h?i:h;L[f+104>>2]=h;t=O(-m);t=m>t?m:t;L[f+100>>2]=t;p=O(-e);p=e>p?e:p;L[f+96>>2]=p;L[f+88>>2]=t;L[f+84>>2]=p;L[f+80>>2]=h;H[f+140>>2]=0;H[f+124>>2]=0;h=O(l+l);m:{if(h>=O(3.4028234663852886e38)){l=e==O(0)?o:e>=O(0)?O(3.4028234663852886e38):O(-3.4028234663852886e38);i=i==O(0)?n:i>=O(0)?O(3.4028234663852886e38):O(-3.4028234663852886e38);e=g;if(m==O(0)){break m}e=m>=O(0)?O(3.4028234663852886e38):O(-3.4028234663852886e38);break m}l=O(o+O(h*e));i=O(n+O(h*i));e=O(g+O(h*m))}L[f+136>>2]=e>2]=l>2]=i>2]=e>g?g:e;L[f+116>>2]=l>o?o:l;L[f+112>>2]=i>n?n:i;j=H[w+104>>2];j=gC(H[j+12>>2],H[j+8>>2],q,f+16|0,c);break e;case 0:g=L[b+112>>2];j=H[b+104>>2];r=H[b+100>>2];e=L[b+108>>2];H[f+28>>2]=0;L[f+24>>2]=e;H[f+16>>2]=r;H[f+20>>2]=j;L[f+32>>2]=g*g;j=H[w+104>>2];j=hC(H[j+12>>2],H[j+8>>2],q,f+16|0,c);break e;case 4:break f;default:break e}}j=KC(f+16|0,z,y,b);q=H[w+104>>2];j=fC(H[q+12>>2],H[q+8>>2],H[r+12>>2],j,c)}q=1;r=a;a=0;if(r){continue}break}Oa=f+208|0;if(!(j&1)){break d}}u=1;if(!H[s+164>>2]){break d}n:{switch(J[b+98>>1]){case 3:if(J[b+96>>1]){a=KC(d+32|0,b+48|0,b+12|0,b);H[d+28>>2]=H[s+124>>2];H[d+24>>2]=c;H[d+20>>2]=a;H[d+16>>2]=114604;u=LC(H[s+200>>2],H[s+196>>2],H[s+168>>2],a,d+16|0);break d}g=L[b+84>>2];e=L[b+88>>2];l=L[b+76>>2];i=L[b+92>>2];m=L[b+80>>2];n=L[b+72>>2];H[d+60>>2]=0;L[d+56>>2]=O(i-m)*O(.5);L[d+52>>2]=O(e-l)*O(.5);H[d+44>>2]=0;L[d+48>>2]=O(g-n)*O(.5);L[d+40>>2]=O(m+i)*O(.5);L[d+36>>2]=O(l+e)*O(.5);L[d+32>>2]=O(n+g)*O(.5);H[d+28>>2]=H[s+124>>2];H[d+24>>2]=c;H[d+16>>2]=114636;a=d+32|0;H[d+20>>2]=a;u=MC(H[s+200>>2],H[s+196>>2],H[s+168>>2],a,d+16|0);break d;case 2:l=L[b+60>>2];h=L[b+124>>2];n=L[b+112>>2];o=L[b+116>>2];g=L[b+120>>2];H[d+44>>2]=0;L[d+40>>2]=g;L[d+36>>2]=o;L[d+32>>2]=n;e=L[b+16>>2];m=L[b+20>>2];i=L[b+12>>2];H[d+124>>2]=0;H[d+108>>2]=0;H[d+92>>2]=0;h=O(h*O(1.0099999904632568));L[d+88>>2]=h;L[d+84>>2]=h;H[d+76>>2]=0;L[d+72>>2]=i;L[d+68>>2]=m;H[d+60>>2]=0;L[d+56>>2]=m;L[d+52>>2]=e;t=O(-i);t=i>t?i:t;L[d+120>>2]=t;p=O(-m);p=m>p?m:p;L[d+116>>2]=p;L[d+104>>2]=p;p=O(-e);p=e>p?e:p;L[d+100>>2]=p;L[d+80>>2]=h;L[d+64>>2]=e;L[d+48>>2]=i;L[d+112>>2]=p;L[d+96>>2]=t;H[d+156>>2]=0;H[d+140>>2]=0;h=O(l+l);o:{if(h>=O(3.4028234663852886e38)){l=e==O(0)?o:e>=O(0)?O(3.4028234663852886e38):O(-3.4028234663852886e38);i=i==O(0)?n:i>=O(0)?O(3.4028234663852886e38):O(-3.4028234663852886e38);e=g;if(m==O(0)){break o}e=m>=O(0)?O(3.4028234663852886e38):O(-3.4028234663852886e38);break o}l=O(o+O(h*e));i=O(n+O(h*i));e=O(g+O(h*m))}L[d+152>>2]=e>2]=l>2]=e>g?g:e;L[d+132>>2]=l>o?o:l;L[d+144>>2]=i>2]=i>n?n:i;H[d+28>>2]=H[s+124>>2];H[d+24>>2]=c;H[d+16>>2]=114668;a=d+32|0;H[d+20>>2]=a;u=NC(H[s+200>>2],H[s+196>>2],H[s+168>>2],a,d+16|0);break d;case 0:g=L[b+112>>2];e=L[b+108>>2];a=H[b+104>>2];b=H[b+100>>2];H[d+44>>2]=0;L[d+40>>2]=e;H[d+32>>2]=b;H[d+36>>2]=a;L[d+48>>2]=g*g;H[d+28>>2]=H[s+124>>2];H[d+24>>2]=c;H[d+16>>2]=114700;a=d+32|0;H[d+20>>2]=a;u=OC(H[s+200>>2],H[s+196>>2],H[s+168>>2],a,d+16|0);break d;case 4:break n;default:break d}}a=KC(d+32|0,b+48|0,b+12|0,b);H[d+28>>2]=H[s+124>>2];H[d+24>>2]=c;H[d+20>>2]=a;H[d+16>>2]=114604;u=LC(H[s+200>>2],H[s+196>>2],H[s+168>>2],a,d+16|0)}Oa=d+224|0}Oa=k+208|0;return u|0}function Pz(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,E=0,G=0;i=Oa-1072|0;Oa=i;a=i+1052|0;H[a>>2]=-128;H[a+4>>2]=-128;a=i;H[a+1020>>2]=-128;H[a+1024>>2]=-128;H[a+988>>2]=-128;H[a+992>>2]=-128;H[a+956>>2]=-128;H[a+960>>2]=-128;H[a+924>>2]=-128;H[a+928>>2]=-128;H[a+892>>2]=-128;H[a+896>>2]=-128;H[a+860>>2]=-128;H[a+864>>2]=-128;H[a+828>>2]=-128;H[a+832>>2]=-128;H[a+796>>2]=-128;H[a+800>>2]=-128;H[a+764>>2]=-128;H[a+768>>2]=-128;H[a+732>>2]=-128;H[a+736>>2]=-128;H[a+700>>2]=-128;H[a+704>>2]=-128;H[a+668>>2]=-128;H[a+672>>2]=-128;H[a+636>>2]=-128;H[a+640>>2]=-128;H[a+604>>2]=-128;H[a+608>>2]=-128;H[a+572>>2]=-128;H[a+576>>2]=-128;H[a+540>>2]=-128;H[a+544>>2]=-128;H[a+508>>2]=-128;H[a+512>>2]=-128;H[a+476>>2]=-128;H[a+480>>2]=-128;H[a+444>>2]=-128;H[a+448>>2]=-128;H[a+412>>2]=-128;H[a+416>>2]=-128;H[a+380>>2]=-128;H[a+384>>2]=-128;H[a+348>>2]=-128;H[a+352>>2]=-128;H[a+316>>2]=-128;H[a+320>>2]=-128;H[a+284>>2]=-128;H[a+288>>2]=-128;H[a+252>>2]=-128;H[a+256>>2]=-128;H[a+220>>2]=-128;H[a+224>>2]=-128;H[a+188>>2]=-128;H[a+192>>2]=-128;H[a+156>>2]=-128;H[a+160>>2]=-128;H[a+124>>2]=-128;H[a+128>>2]=-128;H[a+92>>2]=-128;H[a+96>>2]=-128;H[a+60>>2]=-128;H[a+64>>2]=-128;H[a+24>>2]=H[b+12>>2];H[a+16>>2]=0;H[a+20>>2]=32;F[a+9|0]=0;H[a+12>>2]=a+48;H[a+44>>2]=H[b+152>>2];H[a+40>>2]=H[b+148>>2];m=H[b+24>>2];l=H[b+28>>2];s=H[b+52>>2];r=H[b+16>>2];u=H[b+8>>2];q=H[b+40>>2];a:{if(!q){if(r){while(1){b=d<<5;a=b+s|0;b=b+u|0;L[a>>2]=L[b>>2];L[a+4>>2]=L[b+4>>2];L[a+8>>2]=L[b+8>>2];L[a+16>>2]=L[b+16>>2];L[a+20>>2]=L[b+20>>2];L[a+24>>2]=L[b+24>>2];d=d+1|0;if((r|0)!=(d|0)){continue}break}}if(!l){break a}if((l|0)!=1){a=l&-2;while(1){b=m+N(e,52)|0;d=H[(H[H[b>>2]+24>>2]<<2)+135124>>2];if(d){Ra[d|0](b,H[i+44>>2])}b=m+N(e|1,52)|0;d=H[(H[H[b>>2]+24>>2]<<2)+135124>>2];if(d){Ra[d|0](b,H[i+44>>2])}e=e+2|0;c=c+2|0;if((a|0)!=(c|0)){continue}break}}if(!(l&1)){break a}a=m+N(e,52)|0;b=H[(H[H[a>>2]+24>>2]<<2)+135124>>2];if(!b){break a}Ra[b|0](a,H[i+44>>2]);break a}E=H[b+4>>2];z=H[b+108>>2];A=H[b+32>>2];t=H[b+116>>2];B=H[b+112>>2];C=H[b+36>>2];g=H[b>>2];b:{if(!g){p=(t|0)>0;break b}c:{if((q|0)>0){p=g;while(1){D=(p|0)==1?114240:114112;h=0;while(1){o=(h<<3)+C|0;n=J[o+4>>1];k=0;f=0;c=0;w=(H[o>>2]<<5)+A|0;e=H[w+24>>2];d=e;a=d+383|0;c=a>>>0<383?1:c;j=a;a=c>>>6|0;c=(c&63)<<26|j>>>6;j=a;a=d>>>6|0;j=j-(a>>>0>c>>>0)|0;v=c-a|0;c=j;a=v+1|0;c=a?c:c+1|0;d=a;a=0;x=a;y=d&7;if(a|y){while(1){a=d;d=a-1|0;c=c-!a|0;e=e- -64|0;a=f;f=k+1|0;a=f?a:a+1|0;k=f;f=a;if((y|0)!=(k|0)|(x|0)!=(a|0)){continue}break}}if(!j&v>>>0>=7|j){while(1){e=e+512|0;c=c-(d>>>0<8)|0;d=d-8|0;if(c|d){continue}break}}d:{if(!n){break d}c=0;e=0;if(n-1>>>0>=3){a=n&65532;d=0;while(1){e=e+4|0;d=d+4|0;if((a|0)!=(d|0)){continue}break}}a=n&3;if(!a){break d}while(1){e=e+1|0;c=c+1|0;if((a|0)!=(c|0)){continue}break}}Ra[H[D+(J[o+6>>1]<<2)>>2]](w,n,i+8|0);h=h+1|0;if((q|0)!=(h|0)){continue}break}p=p-1|0;if(p){continue}break}break c}e=g;a=e&7;if(a){while(1){e=e-1|0;c=c+1|0;if((a|0)!=(c|0)){continue}break}}if(g-1>>>0<7){break c}while(1){e=e-8|0;if(e){continue}break}}p=(t|0)>0;if((t|0)<=0){break b}n=g<<1;if(!n){break b}D=(t|0)>1?t:1;while(1){w=(n|0)==1?114240:114112;h=0;while(1){o=(h<<3)+B|0;j=J[o+4>>1];k=0;f=0;c=0;x=(H[o>>2]<<5)+z|0;e=H[x+24>>2];d=e;a=d+383|0;c=a>>>0<383?1:c;g=a;a=c>>>6|0;c=(c&63)<<26|g>>>6;g=a;a=d>>>6|0;g=g-(a>>>0>c>>>0)|0;v=c-a|0;c=g;a=v+1|0;c=a?c:c+1|0;d=a;a=0;y=a;G=d&7;if(a|G){while(1){a=d;d=a-1|0;c=c-!a|0;e=e- -64|0;a=f;f=k+1|0;a=f?a:a+1|0;k=f;f=a;if((G|0)!=(k|0)|(y|0)!=(a|0)){continue}break}}if(!g&v>>>0>=7|g){while(1){e=e+512|0;c=c-(d>>>0<8)|0;d=d-8|0;if(c|d){continue}break}}e:{if(!j){break e}c=0;e=0;if(j-1>>>0>=3){a=j&65532;d=0;while(1){e=e+4|0;d=d+4|0;if((a|0)!=(d|0)){continue}break}}a=j&3;if(!a){break e}while(1){e=e+1|0;c=c+1|0;if((a|0)!=(c|0)){continue}break}}Ra[H[w+(J[o+6>>1]<<2)>>2]](x,j,i+8|0);h=h+1|0;if((D|0)!=(h|0)){continue}break}n=n-1|0;if(n){continue}break}}if(r){d=0;while(1){c=d<<5;a=c+s|0;c=c+u|0;L[a>>2]=L[c>>2];L[a+4>>2]=L[c+4>>2];L[a+8>>2]=L[c+8>>2];L[a+16>>2]=L[c+16>>2];L[a+20>>2]=L[c+20>>2];L[a+24>>2]=L[c+24>>2];d=d+1|0;if((r|0)!=(d|0)){continue}break}}f:{if(!l){break f}e=0;if((l|0)!=1){a=l&-2;c=0;while(1){d=m+N(e,52)|0;f=H[(H[H[d>>2]+24>>2]<<2)+135124>>2];if(f){Ra[f|0](d,H[i+44>>2])}d=m+N(e|1,52)|0;f=H[(H[H[d>>2]+24>>2]<<2)+135124>>2];if(f){Ra[f|0](d,H[i+44>>2])}e=e+2|0;c=c+2|0;if((a|0)!=(c|0)){continue}break}}if(!(l&1)){break f}a=m+N(e,52)|0;d=H[(H[H[a>>2]+24>>2]<<2)+135124>>2];if(!d){break f}Ra[d|0](a,H[i+44>>2])}n=E-1|0;if(n){j=0;r=(q|0)<=0;while(1){h=0;if(!r){while(1){k=0;f=0;c=0;l=(h<<3)+C|0;s=(H[l>>2]<<5)+A|0;e=H[s+24>>2];d=e;a=d+383|0;c=a>>>0<383?1:c;g=a;a=c>>>6|0;c=(c&63)<<26|g>>>6;g=a;a=d>>>6|0;g=g-(a>>>0>c>>>0)|0;m=c-a|0;c=g;a=m+1|0;c=a?c:c+1|0;d=a;a=0;u=a;o=d&7;if(a|o){while(1){a=d;d=a-1|0;c=c-!a|0;e=e- -64|0;a=f;f=k+1|0;a=f?a:a+1|0;k=f;f=a;if((o|0)!=(k|0)|(u|0)!=(a|0)){continue}break}}a=J[l+4>>1];if(!g&m>>>0>=7|g){while(1){e=e+512|0;c=c-(d>>>0<8)|0;d=d-8|0;if(c|d){continue}break}}g:{if(!a){break g}c=0;e=0;if(a-1>>>0>=3){f=a&65532;d=0;while(1){e=e+4|0;d=d+4|0;if((f|0)!=(d|0)){continue}break}}d=a&3;if(!d){break g}while(1){e=e+1|0;c=c+1|0;if((d|0)!=(c|0)){continue}break}}Ra[H[(J[l+6>>1]<<2)+114112>>2]](s,a,i+8|0);h=h+1|0;if((q|0)!=(h|0)){continue}break}}if(p){h=0;while(1){k=0;f=0;c=0;l=(h<<3)+B|0;s=(H[l>>2]<<5)+z|0;e=H[s+24>>2];d=e;a=d+383|0;c=a>>>0<383?1:c;g=a;a=c>>>6|0;c=(c&63)<<26|g>>>6;g=a;a=d>>>6|0;g=g-(a>>>0>c>>>0)|0;m=c-a|0;c=g;a=m+1|0;c=a?c:c+1|0;d=a;a=0;u=a;o=d&7;if(a|o){while(1){a=d;d=a-1|0;c=c-!a|0;e=e- -64|0;a=f;f=k+1|0;a=f?a:a+1|0;k=f;f=a;if((o|0)!=(k|0)|(u|0)!=(a|0)){continue}break}}a=J[l+4>>1];if(!g&m>>>0>=7|g){while(1){e=e+512|0;c=c-(d>>>0<8)|0;d=d-8|0;if(c|d){continue}break}}h:{if(!a){break h}c=0;e=0;if(a-1>>>0>=3){f=a&65532;d=0;while(1){e=e+4|0;d=d+4|0;if((f|0)!=(d|0)){continue}break}}d=a&3;if(!d){break h}while(1){e=e+1|0;c=c+1|0;if((d|0)!=(c|0)){continue}break}}Ra[H[(J[l+6>>1]<<2)+114112>>2]](s,a,i+8|0);h=h+1|0;if((t|0)!=(h|0)){continue}break}}j=j+1|0;if((n|0)!=(j|0)){continue}break}}a=H[b+140>>2];H[i+4>>2]=a;g=H[b+132>>2];b=H[b+136>>2];H[i+36>>2]=a;F[i+9|0]=1;H[i+32>>2]=b;H[i+28>>2]=g;i:{if(!E){break i}if((q|0)>0){h=0;while(1){k=0;f=0;c=0;j=(h<<3)+C|0;m=(H[j>>2]<<5)+A|0;e=H[m+24>>2];b=e;a=b+383|0;c=a>>>0<383?1:c;d=(c&63)<<26|a>>>6;a=b>>>6|0;b=(c>>>6|0)-(a>>>0>d>>>0)|0;l=d-a|0;c=b;a=l+1|0;c=a?c:c+1|0;d=a;a=0;n=a;r=d&7;if(a|r){while(1){a=d;d=a-1|0;c=c-!a|0;e=e- -64|0;a=f;f=k+1|0;a=f?a:a+1|0;k=f;f=a;if((r|0)!=(k|0)|(n|0)!=(a|0)){continue}break}}a=J[j+4>>1];if(!b&l>>>0>=7|b){while(1){e=e+512|0;c=c-(d>>>0<8)|0;d=d-8|0;if(c|d){continue}break}}j:{if(!a){break j}c=0;e=0;if(a-1>>>0>=3){b=a&65532;d=0;while(1){e=e+4|0;d=d+4|0;if((b|0)!=(d|0)){continue}break}}b=a&3;if(!b){break j}while(1){e=e+1|0;c=c+1|0;if((b|0)!=(c|0)){continue}break}}Ra[H[(J[j+6>>1]<<2)+114176>>2]](m,a,i+8|0);h=h+1|0;if((q|0)!=(h|0)){continue}break}}if(!p){break i}h=0;while(1){k=0;f=0;c=0;p=(h<<3)+B|0;l=(H[p>>2]<<5)+z|0;e=H[l+24>>2];b=e;a=b+383|0;c=a>>>0<383?1:c;d=(c&63)<<26|a>>>6;a=b>>>6|0;b=(c>>>6|0)-(a>>>0>d>>>0)|0;j=d-a|0;c=b;a=j+1|0;c=a?c:c+1|0;d=a;a=0;m=a;q=d&7;if(a|q){while(1){a=d;d=a-1|0;c=c-!a|0;e=e- -64|0;a=f;f=k+1|0;a=f?a:a+1|0;k=f;f=a;if((q|0)!=(k|0)|(m|0)!=(a|0)){continue}break}}a=J[p+4>>1];if(!b&j>>>0>=7|b){while(1){e=e+512|0;c=c-(d>>>0<8)|0;d=d-8|0;if(c|d){continue}break}}k:{if(!a){break k}c=0;e=0;if(a-1>>>0>=3){b=a&65532;d=0;while(1){e=e+4|0;d=d+4|0;if((b|0)!=(d|0)){continue}break}}b=a&3;if(!b){break k}while(1){e=e+1|0;c=c+1|0;if((b|0)!=(c|0)){continue}break}}Ra[H[(J[p+6>>1]<<2)+114176>>2]](l,a,i+8|0);h=h+1|0;if((t|0)!=(h|0)){continue}break}}a=H[i+16>>2];if(!a){break a}a=a+H[i+4>>2]|0;H[i+4>>2]=a;b=H[i+16>>2];if(b){d=a-b|0;e=0;while(1){a=H[i+12>>2]+(e<<5)|0;c=H[a+4>>2];b=g+(d+e<<5)|0;H[b>>2]=H[a>>2];H[b+4>>2]=c;c=H[a+28>>2];H[b+24>>2]=H[a+24>>2];H[b+28>>2]=c;c=H[a+20>>2];H[b+16>>2]=H[a+16>>2];H[b+20>>2]=c;c=H[a+12>>2];H[b+8>>2]=H[a+8>>2];H[b+12>>2]=c;e=e+1|0;if(e>>>0>2]){continue}break}}H[i+16>>2]=0}Oa=i+1072|0}function uW(a,b,c,d,e,f,g,h,i,j){var k=0,l=0,m=0,n=O(0),o=O(0),p=O(0),q=O(0),r=0,s=O(0),t=O(0),u=0,v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),G=O(0),J=O(0),K=O(0),M=O(0),P=O(0),Q=O(0),S=O(0),T=O(0),U=O(0),V=O(0),X=O(0),Y=0,Z=O(0),_=O(0),$=O(0),aa=O(0),ba=O(0),ca=O(0),da=O(0),ea=O(0),fa=O(0);m=Oa-208|0;Oa=m;k=Oa-272|0;Oa=k;H[k+248>>2]=0;H[k+252>>2]=0;H[k+240>>2]=0;H[k+244>>2]=0;K=L[d+8>>2];A=L[d+4>>2];B=L[d>>2];y=L[e+8>>2];X=L[e+4>>2];C=L[e>>2];H[k+224>>2]=1;l=H[a+4>>2];z=L[l+56>>2];s=L[l+52>>2];E=L[l+72>>2];M=L[l+68>>2];t=L[l+48>>2];S=L[l+64>>2];n=L[c+8>>2];o=L[c>>2];p=L[c+4>>2];l=H[b+4>>2];w=L[l+56>>2];P=L[l+52>>2];Q=L[l+72>>2];Y=l- -64|0;x=L[Y>>2];G=L[l+68>>2];q=L[l+88>>2];_=L[l+80>>2];T=L[l+84>>2];V=L[l+48>>2];H[k+172>>2]=0;U=q;u=O(O(n*n)+O(O(o*o)+O(p*p)))>O(1.1920928955078125e-7);n=u?n:O(0);o=u?o:O(1);q=u?p:O(0);v=O(O(1)/O(W(O(O(n*n)+O(O(o*o)+O(q*q))))));n=O(n*v);p=O(o*v);o=O(q*v);L[k+168>>2]=O(U*n)+O(O(_*p)+O(T*o));L[k+164>>2]=O(Q*n)+O(O(x*p)+O(o*G));L[k+160>>2]=O(w*n)+O(O(V*p)+O(o*P));u=EU(l,k+160|0);x=L[Y>>2];G=L[l+80>>2];Q=L[l+84>>2];_=L[l+52>>2];T=L[l+68>>2];P=L[l+88>>2];u=H[l+152>>2]+N(u,12)|0;q=L[u+8>>2];V=L[l+56>>2];v=L[u>>2];D=L[l+72>>2];w=L[u+4>>2];J=L[l+48>>2];H[k+180>>2]=0;H[k+184>>2]=0;H[k+188>>2]=0;H[k+192>>2]=0;H[k+196>>2]=0;H[k+200>>2]=0;H[k+204>>2]=0;H[k+208>>2]=0;H[k+212>>2]=0;H[k+216>>2]=0;H[k+220>>2]=0;H[k+172>>2]=0;H[k+176>>2]=0;p=O(-p);l=O(O(O(t*p)-O(s*o))-O(z*n))>O(O(O(S*p)-O(M*o))-O(E*n));n=l?z:E;o=O(O(P*q)+O(O(V*v)+O(w*D)));P=O(n-o);L[k+168>>2]=P;p=l?s:M;z=O(O(Q*q)+O(O(_*v)+O(w*T)));Q=O(p-z);L[k+164>>2]=Q;s=l?t:S;q=O(O(G*q)+O(O(J*v)+O(w*x)));S=O(s-q);L[k+160>>2]=S;H[k+116>>2]=0;H[k+120>>2]=0;H[k+124>>2]=0;H[k+128>>2]=0;H[k+132>>2]=0;H[k+136>>2]=0;H[k+140>>2]=0;H[k+144>>2]=0;H[k+148>>2]=0;H[k+152>>2]=0;H[k+156>>2]=0;H[k+108>>2]=0;H[k+112>>2]=0;L[k+104>>2]=n;L[k+100>>2]=p;L[k+96>>2]=s;H[k+52>>2]=0;H[k+56>>2]=0;H[k+60>>2]=0;H[k+64>>2]=0;H[k+68>>2]=0;H[k+72>>2]=0;H[k+76>>2]=0;H[k+80>>2]=0;H[k+84>>2]=0;H[k+88>>2]=0;H[k+92>>2]=0;H[k+44>>2]=0;H[k+48>>2]=0;L[k+40>>2]=o;L[k+36>>2]=z;L[k+32>>2]=q;v=O(-P);w=O(-Q);z=O(-S);x=O(O(P*P)+O(O(S*S)+O(Q*Q)));l=H[b+4>>2];n=L[l+24>>2];n=O((nda)){s=z;E=w;M=v;K=O(0);n=S;o=Q;t=P;break b}_=O(n+i);fa=O(_*_);i=O(O(C*O(0))+B);n=O(O(X*O(0))+A);o=O(O(y*O(0))+K);K=O(0);M=v;E=w;s=z;while(1){r=H[a+4>>2];q=L[r+52>>2];y=L[r+56>>2];G=L[r+68>>2];T=L[r+72>>2];t=L[r+48>>2];C=L[r+64>>2];V=L[l+52>>2];D=L[l+56>>2];J=L[l+72>>2];Y=l- -64|0;Z=L[Y>>2];aa=L[l+68>>2];$=L[l+88>>2];p=L[l+80>>2];A=L[l+84>>2];ba=L[l+48>>2];H[k+268>>2]=0;U=p;B=O(O(1)/O(W(O(O(v*v)+O(O(z*z)+O(w*w))))));p=O(z*B);X=O(-p);ca=A;A=O(w*B);B=O(v*B);L[k+264>>2]=O(O(U*X)-O(ca*A))-O($*B);L[k+260>>2]=O(O(Z*X)-O(aa*A))-O(J*B);L[k+256>>2]=O(O(ba*X)-O(V*A))-O(D*B);u=EU(l,k+256|0);r=O(O(y*B)+O(O(t*p)+O(A*q)))>O(O(T*B)+O(O(C*p)+O(A*G)));V=r?t:C;u=H[l+152>>2]+N(u,12)|0;D=L[u+8>>2];J=L[u>>2];Z=L[u+4>>2];t=O(i+O(O(L[l+80>>2]*D)+O(O(L[l+48>>2]*J)+O(Z*L[Y>>2]))));C=O(V-t);aa=r?q:G;$=O(n+O(O(L[l+84>>2]*D)+O(O(L[l+52>>2]*J)+O(Z*L[l+68>>2]))));G=O(aa-$);T=r?y:T;D=O(o+O(O(L[l+88>>2]*D)+O(O(L[l+56>>2]*J)+O(Z*L[l+72>>2]))));y=O(T-D);q=O(O(O(O(p*O(-C))-O(A*G))-O(B*y))-_);c:{if(!(q>O(0))){p=i;q=n;i=o;n=x;break c}l=0;J=L[e+8>>2];Z=L[e>>2];ba=L[e+4>>2];U=O(O(B*J)+O(O(p*Z)+O(A*ba)));if(U>=O(0)){break a}p=K;K=O(p-O(q/U));if(!(K>p)){p=i;q=n;i=o;n=x;break c}if(K>O(1)){break a}E=L[d+8>>2];q=L[d+4>>2];p=L[d>>2];H[k+76>>2]=0;H[k+60>>2]=0;H[k+44>>2]=0;p=O(p+O(Z*K));s=O(p-i);M=O(s+L[k+64>>2]);L[k+64>>2]=M;q=O(q+O(ba*K));n=O(q-n);t=O(n+L[k+68>>2]);L[k+68>>2]=t;i=O(E+O(J*K));o=O(i-o);E=O(o+L[k+72>>2]);L[k+72>>2]=E;x=O(s+L[k+48>>2]);L[k+48>>2]=x;y=O(n+L[k+52>>2]);L[k+52>>2]=y;C=O(o+L[k+56>>2]);L[k+56>>2]=C;s=O(s+L[k+32>>2]);L[k+32>>2]=s;n=O(n+L[k+36>>2]);L[k+36>>2]=n;o=O(o+L[k+40>>2]);L[k+40>>2]=o;G=L[k+96>>2];D=L[k+100>>2];J=L[k+104>>2];H[k+172>>2]=0;L[k+168>>2]=J-o;L[k+164>>2]=D-n;L[k+160>>2]=G-s;n=L[k+112>>2];o=L[k+116>>2];s=L[k+120>>2];H[k+188>>2]=0;L[k+184>>2]=s-C;L[k+180>>2]=o-y;L[k+176>>2]=n-x;n=L[k+128>>2];o=L[k+132>>2];s=L[k+136>>2];H[k+204>>2]=0;L[k+200>>2]=s-E;L[k+196>>2]=o-t;L[k+192>>2]=n-M;l=H[b+4>>2];s=L[l+56>>2];E=L[l+52>>2];M=L[l+72>>2];u=l- -64|0;t=L[u>>2];x=L[l+68>>2];n=L[l+88>>2];o=L[l+80>>2];y=L[l+84>>2];C=L[l+48>>2];H[k+268>>2]=0;U=n;n=O(-B);ca=O(o*X);o=O(-A);L[k+264>>2]=O(U*n)+O(ca+O(y*o));L[k+260>>2]=O(M*n)+O(O(t*X)+O(x*o));L[k+256>>2]=O(s*n)+O(O(C*X)+O(E*o));r=EU(l,k+256|0);r=H[l+152>>2]+N(r,12)|0;n=L[r+8>>2];o=L[r>>2];s=L[r+4>>2];D=O(i+O(O(L[l+88>>2]*n)+O(O(L[l+56>>2]*o)+O(s*L[l+72>>2]))));y=O(T-D);$=O(q+O(O(L[l+84>>2]*n)+O(O(L[l+52>>2]*o)+O(s*L[l+68>>2]))));G=O(aa-$);t=O(p+O(O(L[l+80>>2]*n)+O(O(L[l+48>>2]*o)+O(s*L[u>>2]))));C=O(V-t);s=z;E=w;M=v;n=O(3.4028234663852886e38)}A=n;r=H[k+224>>2];u=r<<4;l=u+(k+96|0)|0;H[l+12>>2]=0;L[l+8>>2]=T;L[l+4>>2]=aa;L[l>>2]=V;l=u+(k+32|0)|0;H[l+12>>2]=0;L[l+8>>2]=D;L[l+4>>2]=$;L[l>>2]=t;l=u+(k+160|0)|0;H[l+12>>2]=0;L[l+8>>2]=y;L[l+4>>2]=G;L[l>>2]=C;H[k+224>>2]=r+1;d:{e:{switch(r-1|0){case 0:w=L[k+168>>2];n=O(L[k+184>>2]-w);z=L[k+160>>2];o=O(L[k+176>>2]-z);t=L[k+164>>2];v=O(L[k+180>>2]-t);x=O(O(n*n)+O(O(o*o)+O(v*v)));if(x<=O(1.1920928955078125e-7)){H[k+224>>2]=1;l=H[k+164>>2];H[k+256>>2]=H[k+160>>2];H[k+260>>2]=l;l=H[k+172>>2];H[k+264>>2]=H[k+168>>2];H[k+268>>2]=l;break d}U=n;n=O(R(O(O(O(O(O(-z)*o)-O(v*t))-O(w*n))/x),O(1)));n=n>O(0)?n:O(0);L[k+264>>2]=w+O(U*n);L[k+260>>2]=t+O(v*n);L[k+256>>2]=z+O(o*n);break d;case 1:GU(k+256|0,k+160|0,k+96|0,k+32|0,k+224|0);break d;case 2:BZ(k+256|0,k+160|0,k+96|0,k+32|0,k+224|0);break d;default:break e}}L[k+264>>2]=y;L[k+260>>2]=G;L[k+256>>2]=C}t=L[k+264>>2];v=O(-t);o=L[k+260>>2];w=O(-o);n=L[k+256>>2];z=O(-n);x=O(O(t*t)+O(O(n*n)+O(o*o)));if(!(!(fa>2];P=t;Q=o;S=n;o=i;n=q;i=p;continue}break}r=!(x>2]+32|0];i=O(0);y=O(0);l=!(x>da)|r;p=l?M:v;q=l?s:z;v=l?E:w;w=O(W(O(O(p*p)+O(O(q*q)+O(v*v)))));if(!(w<=O(1.1920928955078125e-7))){i=O(O(1)/w);ea=O(p*i);y=O(q*i);i=O(v*i)}H[m+188>>2]=0;L[m+184>>2]=-ea;L[m+180>>2]=-i;L[m+176>>2]=-y;L[m+160>>2]=K;H[m+172>>2]=H[k+236>>2];l=H[k+232>>2];H[m+164>>2]=H[k+228>>2];H[m+168>>2]=l;H[k+268>>2]=0;L[k+264>>2]=r?P:t;L[k+260>>2]=r?Q:o;L[k+256>>2]=r?S:n;l=H[k+252>>2];u=H[k+248>>2];H[k+24>>2]=u;H[k+28>>2]=l;r=H[k+244>>2];Y=H[k+240>>2];H[k+16>>2]=Y;H[k+20>>2]=r;H[k+8>>2]=u;H[k+12>>2]=l;H[k>>2]=Y;H[k+4>>2]=r;FU(k+160|0,k+96|0,k+32|0,k+256|0,k+16|0,k,H[k+224>>2]);n=L[H[a+4>>2]+16>>2];o=L[k+16>>2];p=L[k+20>>2];q=L[k+24>>2];H[m+204>>2]=0;L[m+200>>2]=q+(d?O(ea*n):O(-0));L[m+196>>2]=p+(d?O(i*n):O(-0));L[m+192>>2]=o+(d?O(y*n):O(-0));l=1}Oa=k+272|0;if(l){d=H[m+164>>2];H[f>>2]=H[m+160>>2];H[f+4>>2]=d;d=H[m+172>>2];H[f+8>>2]=H[m+168>>2];H[f+12>>2]=d;if(!(!j|L[m+160>>2]!=O(0))){d=H[a+4>>2];j=H[b+4>>2];L[m+144>>2]=O(L[d+16>>2]+L[j+16>>2])*O(100);F[m+135|0]=0;H[m+88>>2]=0;H[m+92>>2]=0;H[m+80>>2]=0;H[m+84>>2]=0;H[m+72>>2]=0;H[m+76>>2]=0;k=m- -64|0;H[k>>2]=0;H[k+4>>2]=0;H[m+56>>2]=0;H[m+60>>2]=0;H[m+48>>2]=0;H[m+52>>2]=0;H[m+112>>2]=0;H[m+40>>2]=125948;H[m+44>>2]=d;H[m+32>>2]=126016;H[m+36>>2]=j;f:{g:{if(xW(m+40|0,m+32|0,c,m+144|0,0,m+140|0,m+136|0,m+135|0,m+48|0)-5|0){break g}H[m+16>>2]=1065353216;c=H[m+28>>2];H[m+8>>2]=H[m+24>>2];H[m+12>>2]=c;c=H[m+20>>2];H[m>>2]=H[m+16>>2];H[m+4>>2]=c;if(wZ(a,b,m+140|0,m+136|0,I[m+135|0],0,m,m+48|0)-5>>>0<=1){break g}H[m+200>>2]=0;H[m+204>>2]=0;H[m+192>>2]=0;H[m+196>>2]=0;i=L[e+8>>2];n=L[e>>2];o=L[e+4>>2];H[m+188>>2]=0;p=O(O(1)/O(W(O(O(i*i)+O(O(n*n)+O(o*o))))));L[m+184>>2]=p*O(-i);L[m+180>>2]=p*O(-o);L[m+176>>2]=p*O(-n);i=O(0);break f}a=H[m+60>>2];H[m+200>>2]=H[m+56>>2];H[m+204>>2]=a;a=H[m+52>>2];H[m+192>>2]=H[m+48>>2];H[m+196>>2]=a;a=H[m+84>>2];H[m+176>>2]=H[m+80>>2];H[m+180>>2]=a;a=H[m+92>>2];H[m+184>>2]=H[m+88>>2];H[m+188>>2]=a;i=L[m+112>>2]}L[f>>2]=i>2];H[h>>2]=H[m+192>>2];H[h+4>>2]=a;a=H[m+204>>2];H[h+8>>2]=H[m+200>>2];H[h+12>>2]=a;a=H[m+180>>2];H[g>>2]=H[m+176>>2];H[g+4>>2]=a;a=H[m+188>>2];H[g+8>>2]=H[m+184>>2];H[g+12>>2]=a}Oa=m+208|0;return l}function RW(a,b,c,d,e,f,g,h,i,j){var k=0,l=0,m=O(0),n=O(0),o=O(0),p=O(0),q=0,r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=0,E=O(0),G=O(0),J=O(0),K=O(0),M=O(0),N=O(0),P=O(0),Q=O(0),S=O(0),T=O(0),U=O(0),V=O(0),X=O(0),Y=O(0),Z=O(0),_=O(0),$=O(0),aa=0,ba=O(0),ca=O(0),da=O(0),ea=O(0),fa=0,ga=O(0),ha=O(0),ia=O(0);l=Oa-288|0;Oa=l;k=Oa-272|0;Oa=k;H[k+264>>2]=0;H[k+268>>2]=0;H[k+256>>2]=0;H[k+260>>2]=0;r=L[d+8>>2];p=L[d+4>>2];E=L[d>>2];z=L[e+8>>2];v=L[e+4>>2];B=L[e>>2];H[k+240>>2]=1;aa=b;q=H[b+4>>2];s=L[q+52>>2];b=H[a+8>>2];G=L[b+52>>2];J=L[b+36>>2];A=L[b+20>>2];u=L[q+56>>2];K=L[b+56>>2];w=L[b+40>>2];D=H[a+4>>2];t=L[D+56>>2];S=L[a+56>>2];M=L[a+24>>2];T=L[a+40>>2];N=L[a+48>>2];U=L[a+32>>2];P=L[b+24>>2];x=L[D+52>>2];Q=L[a+52>>2];V=L[a+20>>2];ba=L[a+36>>2];y=L[q+48>>2];X=L[b+48>>2];Y=L[b+32>>2];Z=L[b>>2];_=L[b+16>>2];$=L[b+4>>2];ga=L[b+8>>2];C=L[D+48>>2];ha=L[a+16>>2];n=L[c+8>>2];m=L[c>>2];o=L[c+4>>2];H[k+196>>2]=0;H[k+200>>2]=0;H[k+204>>2]=0;H[k+208>>2]=0;H[k+212>>2]=0;H[k+216>>2]=0;H[k+220>>2]=0;H[k+224>>2]=0;H[k+228>>2]=0;H[k+232>>2]=0;b=0;H[k+236>>2]=0;H[k+188>>2]=0;H[k+192>>2]=0;ca=w;da=t;ia=O(-t);D=O(O(n*n)+O(O(m*m)+O(o*o)))>O(1.1920928955078125e-7);m=D?m:O(1);w=m;t=D?n:O(0);n=D?o:O(0);m=O(O(1)/O(W(O(O(t*t)+O(O(m*m)+O(n*n))))));w=O(w*m);o=O(-w);n=O(n*m);m=O(t*m);t=O(O(O(M*o)-O(T*n))-O(S*m))>O(0)?da:ia;C=O(O(O(ha*o)-O(U*n))-O(N*m))>O(0)?C:O(-C);o=O(O(O(V*o)-O(ba*n))-O(Q*m))>O(0)?x:O(-x);x=O(K+O(O(ca*t)+O(O(ga*C)+O(P*o))));m=m>O(0)?u:O(-u);K=O(x-m);L[k+184>>2]=K;u=O(G+O(O(J*t)+O(O($*C)+O(o*A))));n=n>O(0)?s:O(-s);G=O(u-n);L[k+180>>2]=G;o=O(X+O(O(Y*t)+O(O(Z*C)+O(o*_))));s=w>O(0)?y:O(-y);J=O(o-s);L[k+176>>2]=J;H[k+132>>2]=0;H[k+136>>2]=0;H[k+140>>2]=0;H[k+144>>2]=0;H[k+148>>2]=0;H[k+152>>2]=0;H[k+156>>2]=0;H[k+160>>2]=0;H[k+164>>2]=0;H[k+168>>2]=0;H[k+172>>2]=0;H[k+124>>2]=0;H[k+128>>2]=0;L[k+120>>2]=x;L[k+116>>2]=u;L[k+112>>2]=o;H[k+68>>2]=0;H[k+72>>2]=0;H[k+76>>2]=0;H[k+80>>2]=0;H[k+84>>2]=0;H[k+88>>2]=0;H[k+92>>2]=0;H[k+96>>2]=0;H[k+100>>2]=0;H[k+104>>2]=0;H[k+108>>2]=0;H[k+60>>2]=0;H[k+64>>2]=0;L[k+56>>2]=m;L[k+52>>2]=n;L[k+48>>2]=s;s=O(-K);u=O(-G);t=O(-J);A=O(O(K*K)+O(O(J*J)+O(G*G)));n=L[q+24>>2];q=H[a+4>>2];m=L[q+24>>2];n=O((m>n?n:m)*O(.10000000149011612));V=O(n*n);a:{b:{if(!(A>V)){x=t;y=u;C=s;E=O(0);m=J;r=G;p=K;break b}S=O(n+i);ba=O(S*S);i=O(O(B*O(0))+E);n=O(O(v*O(0))+p);m=O(O(z*O(0))+r);E=O(0);C=s;y=u;x=t;while(1){p=O(O(1)/O(W(O(O(s*s)+O(O(t*t)+O(u*u))))));o=O(t*p);b=H[a+8>>2];r=L[q+56>>2];z=r;w=O(-r);r=O(s*p);p=O(u*p);z=O(O(L[a+56>>2]*r)+O(O(o*L[a+24>>2])+O(p*L[a+40>>2])))>O(0)?z:w;v=L[q+48>>2];v=O(O(L[a+48>>2]*r)+O(O(o*L[a+16>>2])+O(p*L[a+32>>2])))>O(0)?v:O(-v);B=L[q+52>>2];M=O(O(L[a+52>>2]*r)+O(O(o*L[a+20>>2])+O(p*L[a+36>>2])))>O(0)?B:O(-B);T=O(L[b+48>>2]+O(O(L[b+32>>2]*z)+O(O(L[b>>2]*v)+O(M*L[b+16>>2]))));q=H[aa+4>>2];B=L[q+48>>2];X=o>2]+O(O(L[b+36>>2]*z)+O(O(L[b+4>>2]*v)+O(M*L[b+20>>2]))));w=L[q+52>>2];Y=p>2]+O(O(L[b+40>>2]*z)+O(O(L[b+8>>2]*v)+O(M*L[b+24>>2]))));z=L[q+56>>2];z=rO(0))){o=i;i=n;n=m;m=A;break c}b=0;ca=r;r=L[e+8>>2];_=L[e>>2];da=p;p=L[e+4>>2];$=O(O(ca*r)+O(O(o*_)+O(da*p)));if($>=O(0)){break a}o=E;E=O(o-O(Z/$));if(!(E>o)){o=i;i=n;n=m;m=A;break c}if(E>O(1)){break a}C=L[d+8>>2];y=L[d+4>>2];o=L[d>>2];H[k+92>>2]=0;H[k+76>>2]=0;H[k+60>>2]=0;o=O(o+O(_*E));x=O(o-i);A=O(x+L[k+80>>2]);L[k+80>>2]=A;i=O(y+O(p*E));y=O(i-n);p=O(y+L[k+84>>2]);L[k+84>>2]=p;n=O(C+O(r*E));m=O(n-m);C=O(m+L[k+88>>2]);L[k+88>>2]=C;r=O(x+L[k+64>>2]);L[k+64>>2]=r;v=O(y+L[k+68>>2]);L[k+68>>2]=v;B=O(m+L[k+72>>2]);L[k+72>>2]=B;x=O(x+L[k+48>>2]);L[k+48>>2]=x;y=O(y+L[k+52>>2]);L[k+52>>2]=y;m=O(m+L[k+56>>2]);L[k+56>>2]=m;w=L[k+112>>2];N=L[k+116>>2];P=L[k+120>>2];H[k+188>>2]=0;L[k+184>>2]=P-m;L[k+180>>2]=N-y;L[k+176>>2]=w-x;m=L[k+128>>2];x=L[k+132>>2];y=L[k+136>>2];H[k+204>>2]=0;L[k+200>>2]=y-B;L[k+196>>2]=x-v;L[k+192>>2]=m-r;m=L[k+144>>2];x=L[k+148>>2];y=L[k+152>>2];H[k+220>>2]=0;L[k+216>>2]=y-C;L[k+212>>2]=x-p;L[k+208>>2]=m-A;Q=O(z+n);v=O(M-Q);P=O(Y+i);w=O(U-P);N=O(X+o);B=O(T-N);x=t;y=u;C=s;m=O(3.4028234663852886e38)}z=m;q=H[k+240>>2];D=q<<4;b=D+(k+112|0)|0;H[b+12>>2]=0;L[b+8>>2]=M;L[b+4>>2]=U;L[b>>2]=T;b=D+(k+48|0)|0;H[b+12>>2]=0;L[b+8>>2]=Q;L[b+4>>2]=P;L[b>>2]=N;b=D+(k+176|0)|0;H[b+12>>2]=0;L[b+8>>2]=v;L[b+4>>2]=w;L[b>>2]=B;H[k+240>>2]=q+1;d:{e:{switch(q-1|0){case 0:t=L[k+184>>2];m=O(L[k+200>>2]-t);r=L[k+176>>2];s=O(L[k+192>>2]-r);p=L[k+180>>2];u=O(L[k+196>>2]-p);A=O(O(m*m)+O(O(s*s)+O(u*u)));if(A<=O(1.1920928955078125e-7)){H[k+240>>2]=1;b=H[k+180>>2];H[k+32>>2]=H[k+176>>2];H[k+36>>2]=b;b=H[k+188>>2];H[k+40>>2]=H[k+184>>2];H[k+44>>2]=b;break d}w=m;m=O(R(O(O(O(O(O(-r)*s)-O(u*p))-O(t*m))/A),O(1)));m=m>O(0)?m:O(0);L[k+40>>2]=t+O(w*m);L[k+36>>2]=p+O(u*m);L[k+32>>2]=r+O(s*m);break d;case 1:GU(k+32|0,k+176|0,k+112|0,k+48|0,k+240|0);break d;case 2:BZ(k+32|0,k+176|0,k+112|0,k+48|0,k+240|0);break d;default:break e}}L[k+40>>2]=v;L[k+36>>2]=w;L[k+32>>2]=B}p=L[k+40>>2];s=O(-p);r=L[k+36>>2];u=O(-r);m=L[k+32>>2];t=O(-m);A=O(O(p*p)+O(O(m*m)+O(r*r)));if(!(!(ba>2];K=p;G=r;J=m;m=n;n=i;i=o;continue}break}b=!(A>2]}d=I[q+32|0];v=O(0);i=O(0);q=!(A>V)|b;n=q?C:s;o=q?x:t;s=q?y:u;u=O(W(O(O(n*n)+O(O(o*o)+O(s*s)))));if(!(u<=O(1.1920928955078125e-7))){i=O(O(1)/u);ea=O(n*i);v=O(s*i);i=O(o*i)}H[l+268>>2]=0;L[l+264>>2]=-ea;L[l+260>>2]=-v;L[l+256>>2]=-i;L[l+240>>2]=E;H[l+252>>2]=H[k+252>>2];q=H[k+248>>2];H[l+244>>2]=H[k+244>>2];H[l+248>>2]=q;H[k+44>>2]=0;L[k+40>>2]=b?K:p;L[k+36>>2]=b?G:r;L[k+32>>2]=b?J:m;b=H[k+268>>2];D=H[k+264>>2];H[k+24>>2]=D;H[k+28>>2]=b;q=H[k+260>>2];fa=H[k+256>>2];H[k+16>>2]=fa;H[k+20>>2]=q;H[k+8>>2]=D;H[k+12>>2]=b;H[k>>2]=fa;H[k+4>>2]=q;FU(k+176|0,k+112|0,k+48|0,k+32|0,k+16|0,k,H[k+240>>2]);n=L[H[a+4>>2]+16>>2];m=L[k+16>>2];o=L[k+20>>2];s=L[k+24>>2];H[l+284>>2]=0;L[l+280>>2]=s+(d?O(ea*n):O(-0));L[l+276>>2]=o+(d?O(v*n):O(-0));L[l+272>>2]=m+(d?O(i*n):O(-0));b=1}Oa=k+272|0;if(b){d=H[l+244>>2];H[f>>2]=H[l+240>>2];H[f+4>>2]=d;d=H[l+252>>2];H[f+8>>2]=H[l+248>>2];H[f+12>>2]=d;if(!(!j|L[l+240>>2]!=O(0))){j=H[a+4>>2];k=H[aa+4>>2];L[l+224>>2]=O(L[j+16>>2]+L[k+16>>2])*O(100);F[l+215|0]=0;H[l+168>>2]=0;H[l+172>>2]=0;H[l+160>>2]=0;H[l+164>>2]=0;H[l+152>>2]=0;H[l+156>>2]=0;H[l+144>>2]=0;H[l+148>>2]=0;H[l+136>>2]=0;H[l+140>>2]=0;H[l+128>>2]=0;H[l+132>>2]=0;H[l+192>>2]=0;d=H[a+8>>2];H[l+56>>2]=d;H[l+48>>2]=126268;H[l+52>>2]=j;j=H[d+12>>2];H[l+72>>2]=H[d+8>>2];H[l+76>>2]=j;j=H[d+20>>2];H[l+80>>2]=H[d+16>>2];H[l+84>>2]=j;j=H[d+28>>2];H[l+88>>2]=H[d+24>>2];H[l+92>>2]=j;j=H[d+36>>2];H[l+96>>2]=H[d+32>>2];H[l+100>>2]=j;j=H[d+44>>2];H[l+104>>2]=H[d+40>>2];H[l+108>>2]=j;j=H[d+52>>2];H[l+112>>2]=H[d+48>>2];H[l+116>>2]=j;j=H[d+60>>2];H[l+120>>2]=H[d+56>>2];H[l+124>>2]=j;j=H[d+4>>2];H[l+64>>2]=H[d>>2];H[l+68>>2]=j;i=L[l+68>>2];L[l+68>>2]=L[l+80>>2];n=L[l+88>>2];m=L[l+72>>2];L[l+72>>2]=L[l+96>>2];L[l+80>>2]=i;L[l+96>>2]=m;L[l+88>>2]=L[l+100>>2];L[l+100>>2]=n;H[l+40>>2]=126608;H[l+44>>2]=k;f:{g:{if(SW(l+48|0,l+40|0,c,l+224|0,0,l+220|0,l+216|0,l+215|0,l+128|0)-5|0){break g}H[l+16>>2]=1065353216;c=H[l+28>>2];H[l+8>>2]=H[l+24>>2];H[l+12>>2]=c;c=H[l+20>>2];H[l>>2]=H[l+16>>2];H[l+4>>2]=c;if(wZ(a,aa,l+220|0,l+216|0,I[l+215|0],0,l,l+128|0)-5>>>0<=1){break g}H[l+280>>2]=0;H[l+284>>2]=0;H[l+272>>2]=0;H[l+276>>2]=0;i=L[e+8>>2];n=L[e>>2];m=L[e+4>>2];H[l+268>>2]=0;o=O(O(1)/O(W(O(O(i*i)+O(O(n*n)+O(m*m))))));L[l+264>>2]=o*O(-i);L[l+260>>2]=o*O(-m);L[l+256>>2]=o*O(-n);i=O(0);break f}a=H[l+140>>2];H[l+280>>2]=H[l+136>>2];H[l+284>>2]=a;a=H[l+132>>2];H[l+272>>2]=H[l+128>>2];H[l+276>>2]=a;a=H[l+164>>2];H[l+256>>2]=H[l+160>>2];H[l+260>>2]=a;a=H[l+172>>2];H[l+264>>2]=H[l+168>>2];H[l+268>>2]=a;i=L[l+192>>2]}L[f>>2]=i>2];H[h>>2]=H[l+272>>2];H[h+4>>2]=a;a=H[l+284>>2];H[h+8>>2]=H[l+280>>2];H[h+12>>2]=a;a=H[l+260>>2];H[g>>2]=H[l+256>>2];H[g+4>>2]=a;a=H[l+268>>2];H[g+8>>2]=H[l+264>>2];H[g+12>>2]=a}Oa=l+288|0;return b}function ks(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=O(0),i=O(0),j=0,k=O(0),l=0,m=O(0),n=0,o=0,p=O(0),q=0,r=O(0),s=O(0),t=O(0),u=0,v=0,w=O(0),x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,K=0,M=O(0),Q=O(0),R=O(0),S=O(0),T=O(0),U=O(0),V=O(0),W=O(0);e=Oa-224|0;Oa=e;H[e+200>>2]=0;H[e+204>>2]=0;H[e+208>>2]=0;H[e+212>>2]=0;H[e+192>>2]=0;H[e+196>>2]=0;G[e+188>>1]=0;H[e+184>>2]=-1;H[e+176>>2]=0;H[e+180>>2]=0;H[e+216>>2]=2139095039;o=H[c+4>>2];u=H[((H[o+4>>2]>>>22&60)+76348|0)+12>>2]+o|0;E=H[((I[u+9|0]<<2)+135180|0)+40>>2]+u|0;q=H[c>>2];K=H[33798]+(q+16|0)|0;d=H[a+20>>2];y=G[d+16>>1];a:{b:{c:{d:{e:{f:{if(!H[H[a+12>>2]+60>>2]){j=I[a+42|0];if(j|(y|0)>=0){break f}break e}if(!I[a+42|0]){break e}B=a+42|0;c=J[a+16>>1];u=2;break c}B=a+42|0;c=J[a+16>>1];u=2;if(j){break c}break d}B=a+42|0;c=J[a+16>>1];u=1}j=H[a+24>>2];g:{f=H[a+32>>2];if(f){break g}v=H[d+12>>2];n=H[d+8>>2];g=H[d+4>>2];l=H[d>>2];if(!(v|(n|(g|l)))|(v&H[q+28>>2]|(n&H[q+24>>2]|(g&H[q+20>>2]|l&H[q+16>>2])))){break g}a=1;break a}if(!(y&4)|!(f?1:j)){break c}G[e+80>>1]=c;h:{if(j){u=Ra[H[H[j>>2]>>2]](j,d,K,E,e+80|0)|0;break h}j=H[f+8>>2];if(!j){c=J[e+80>>1]&432|c&-433;break c}H[e+8>>2]=H[d>>2];H[e+12>>2]=H[d+4>>2];H[e+16>>2]=H[d+8>>2];H[e+20>>2]=H[d+12>>2];H[e+144>>2]=H[q+16>>2];H[e+148>>2]=H[q+20>>2];H[e+152>>2]=H[q+24>>2];H[e+156>>2]=H[q+28>>2];u=Ra[j|0](e+8|0,e+144|0,H[f>>2],H[f+4>>2],e+80|0)|0}if(!u){break b}c=J[e+80>>1]&432|c&-433}g=e+144|0;tg(g,q,o);C=1;f=H[q+4>>2]&1?H[q+8>>2]- -64|0:q+84|0;A=H[a+72>>2];n=H[a+8>>2];D=H[a+4>>2];d=H[a+12>>2];o=H[d+56>>2];j=H[d+64>>2];d=H[d+60>>2];G[e+136>>1]=J[a+36>>1]|c;j=d>>>0>j>>>0?o+N(j,48)|0:e+176|0;w=L[a+28>>2];d=Oa-160|0;Oa=d;l=I[a+68|0]?a+44|0:0;h=L[l+20>>2];k=L[l+16>>2];o=H[n+16>>2];v=H[n+12>>2];m=L[l+8>>2];s=L[l+4>>2];p=L[l+12>>2];i=L[l>>2];aU(d+136|0,f,g,O(1));t=L[d+148>>2];r=L[d+136>>2];M=O(O(O(O(p-i)*O(.5))+O(O(t-r)*O(.5)))*O(1.0099999904632568));L[d+120>>2]=M;Q=L[d+152>>2];R=L[d+140>>2];S=O(O(O(O(k-s)*O(.5))+O(O(Q-R)*O(.5)))*O(1.0099999904632568));L[d+124>>2]=S;T=L[d+156>>2];U=L[d+144>>2];V=O(O(O(O(h-m)*O(.5))+O(O(T-U)*O(.5)))*O(1.0099999904632568));L[d+128>>2]=V;L[d+88>>2]=-V;L[d+84>>2]=-S;L[d+80>>2]=-M;L[d+40>>2]=O(O(m+h)*O(.5))-O(O(T+U)*O(.5));L[d+36>>2]=O(O(s+k)*O(.5))-O(O(Q+R)*O(.5));L[d+32>>2]=O(O(i+p)*O(.5))-O(O(t+r)*O(.5));k=L[d+32>>2];l=H[n+4>>2];h=L[l>>2];m=O(P(h));m=m>O(9.999999717180685e-10)?m:O(9.999999717180685e-10);m=O(O(1)/(h>=O(0)?m:O(-m)));h=O(O(O(L[d+80>>2]+O(-9999999747378752e-21))-k)*m);k=O(O(O(L[d+120>>2]+O(9999999747378752e-21))-k)*m);p=h>2];m=L[l+4>>2];i=O(P(m));i=i>O(9.999999717180685e-10)?i:O(9.999999717180685e-10);i=O(O(1)/(m>=O(0)?i:O(-i)));m=O(O(O(L[d+84>>2]+O(-9999999747378752e-21))-s)*i);s=O(O(O(L[d+124>>2]+O(9999999747378752e-21))-s)*i);i=m>2];p=L[l+8>>2];r=O(P(p));r=r>O(9.999999717180685e-10)?r:O(9.999999717180685e-10);r=O(O(1)/(p>=O(0)?r:O(-r)));p=O(O(O(L[d+88>>2]+O(-9999999747378752e-21))-i)*r);i=O(O(O(L[d+128>>2]+O(9999999747378752e-21))-i)*r);r=i>p?p:i;t=r>2]=t>O(0)?t:O(0);h=h>k?h:k;k=m>s?m:s;h=h>2]=h;i=h;h=L[d+116>>2];i:{if(!(i>h)&h>L[d+112>>2]){break i}x=h>O(10);h=x?O(h+O(-10)):O(0);l=H[n+4>>2];m=O(0);s=O(0);if(x){s=O(h*L[l+8>>2]);W=O(h*L[l>>2]);m=O(h*L[l+4>>2])}k=L[g+20>>2];p=L[g+24>>2];i=L[g+16>>2];L[d+80>>2]=L[g>>2];L[d+84>>2]=L[g+4>>2];L[d+88>>2]=L[g+8>>2];t=L[g+12>>2];L[d+104>>2]=p-s;L[d+100>>2]=k-m;L[d+96>>2]=i-W;L[d+92>>2]=t;k=L[d+112>>2];w=O((k>2];k=L[n+20>>2];x=0;j:{k:{switch(H[v>>2]+1|0){case 3:D=g+28|0;n=g;g=J[e+136>>1];n=H[(H[f>>2]<<2)+(g&256?D:n)>>2];G[d+16>>1]=g;if(Ra[n|0](f,d+80|0,v,o,A+100|0,l,w,j,d+16|0,k)|0){break j}break i;case 4:n=J[e+136>>1];g=H[(g+(n&256?84:56)|0)+(H[f>>2]<<2)>>2];G[d+8>>1]=n;if(Ra[g|0](f,d+80|0,v,o,A+12|0,l,w,j,d+8|0,k)|0){break j}break i;case 5:g=H[(g+(H[f>>2]<<2)|0)+112>>2];G[d>>1]=J[e+136>>1];if(Ra[g|0](f,d+80|0,v,o,l,w,j,d,k)|0){break j}break i;case 0:case 2:case 6:case 7:case 8:o5(H[33808],4,6075,306,56067,0);break i;case 1:break k;default:break i}}p=L[v+4>>2];H[d+72>>2]=0;L[d+68>>2]=p;H[d+64>>2]=2;i=L[o+16>>2];L[d+32>>2]=i;t=L[o+20>>2];L[d+36>>2]=t;r=L[o+24>>2];L[d+52>>2]=r;L[d+48>>2]=t;L[d+56>>2]=p;L[d+44>>2]=i;L[d+40>>2]=r;v=g+28|0;n=g;g=J[e+136>>1];n=H[(H[f>>2]<<2)+(g&256?v:n)>>2];G[d+24>>1]=g;if(!(Ra[n|0](f,d+80|0,d- -64|0,o,d+32|0,l,w,j,d+24|0,k)|0)){break i}}L[j+40>>2]=h+L[j+40>>2];L[j+16>>2]=W+L[j+16>>2];L[j+20>>2]=m+L[j+20>>2];L[j+24>>2]=s+L[j+24>>2];x=1}Oa=d+160|0;l:{if(!x){C=0;break l}v=y&8;y=c&512;l=e+8|4;while(1){d=j+N(z,48)|0;H[d+4>>2]=K;H[d>>2]=E;if(!(y|L[d+40>>2]!=O(0))){c=H[H[a+8>>2]+4>>2];h=L[c>>2];w=L[c+4>>2];L[d+36>>2]=-L[c+8>>2];L[d+32>>2]=-w;L[d+28>>2]=-h}c=u;m:{if(I[B|0]){break m}f=H[a+24>>2];g=H[a+32>>2];c=u;if(!(f|g)){break m}c=u;if(!v){break m}if(f){c=Ra[H[H[f>>2]+4>>2]](f,H[a+20>>2],d)|0;break m}f=H[g+12>>2];c=u;if(!f){break m}c=H[a+20>>2];H[e+120>>2]=H[c>>2];H[e+124>>2]=H[c+4>>2];H[e+128>>2]=H[c+8>>2];H[e+132>>2]=H[c+12>>2];H[e+104>>2]=H[q+16>>2];H[e+108>>2]=H[q+20>>2];H[e+112>>2]=H[q+24>>2];H[e+116>>2]=H[q+28>>2];c=Ra[f|0](e+120|0,e+104|0,H[g>>2],H[g+4>>2],d)|0}if(!(!I[a+41|0]|!c)){c=H[d+4>>2];b=H[a+12>>2];H[b+4>>2]=H[d>>2];H[b+8>>2]=c;H[b+12>>2]=H[d+8>>2];c=j+N(z,48)|0;G[b+16>>1]=J[c+12>>1];L[b+20>>2]=L[c+16>>2];L[b+24>>2]=L[c+20>>2];L[b+28>>2]=L[c+24>>2];L[b+32>>2]=L[c+28>>2];L[b+36>>2]=L[c+32>>2];L[b+40>>2]=L[c+36>>2];L[b+44>>2]=L[c+40>>2];H[b+48>>2]=H[c+44>>2];F[H[a+12>>2]+52|0]=1;break l}n:{o:{switch((I[a+40|0]?1:c)-1|0){case 0:c=H[a+12>>2];f=H[c+60>>2];if(!(L[d+40>>2]<=L[a+28>>2])|(!f|!I[a+38|0])){break n}g=H[c+64>>2];p:{if((f|0)!=(g|0)){break p}f=H[a+20>>2];H[e+80>>2]=H[f>>2];H[e+84>>2]=H[f+4>>2];H[e+88>>2]=H[f+8>>2];H[e+92>>2]=H[f+12>>2];G[e+96>>1]=J[f+16>>1]|32768;G[e+24>>1]=0;H[e+20>>2]=-1;H[e+12>>2]=0;H[e+16>>2]=0;H[e+44>>2]=0;H[e+48>>2]=0;H[e+36>>2]=0;H[e+40>>2]=0;H[e+28>>2]=0;H[e+32>>2]=0;H[e+72>>2]=0;H[e+64>>2]=0;H[e+68>>2]=0;F[e+60|0]=0;H[e+52>>2]=2139095039;H[e+8>>2]=111556;q:{if(I[a+39|0]|!H[c+60>>2]){break q}c=H[a+8>>2];f=H[a+4>>2];G[e>>1]=J[a+16>>1];f=js(f,c,e+8|0,e,0,e+80|0,H[a+24>>2],H[a+32>>2]);c=H[a+12>>2];if(!f){break q}f=H[l+4>>2];H[c+4>>2]=H[l>>2];H[c+8>>2]=f;H[c+12>>2]=H[l+8>>2];G[c+16>>1]=J[e+24>>1];L[c+20>>2]=L[e+28>>2];L[c+24>>2]=L[e+32>>2];L[c+28>>2]=L[e+36>>2];L[c+32>>2]=L[e+40>>2];L[c+36>>2]=L[e+44>>2];L[c+40>>2]=L[e+48>>2];L[c+44>>2]=L[e+52>>2];H[c+48>>2]=H[e+56>>2];c=H[a+12>>2];F[c+52|0]=1;g=0;h=L[e+52>>2];o=H[c+64>>2];r:{if(!o){o=0;break r}n=H[c+56>>2];while(1){c=n+N(g,48)|0;s:{if(L[c+40>>2]>h){o=o-1|0;f=n+N(o,48)|0;A=H[f+4>>2];H[c>>2]=H[f>>2];H[c+4>>2]=A;H[c+8>>2]=H[f+8>>2];G[c+12>>1]=J[f+12>>1];L[c+16>>2]=L[f+16>>2];L[c+20>>2]=L[f+20>>2];L[c+24>>2]=L[f+24>>2];L[c+28>>2]=L[f+28>>2];L[c+32>>2]=L[f+32>>2];L[c+36>>2]=L[f+36>>2];L[c+40>>2]=L[f+40>>2];H[c+44>>2]=H[f+44>>2];break s}g=g+1|0}if((g|0)!=(o|0)){continue}break}c=H[a+12>>2];h=L[e+52>>2]}H[c+64>>2]=o;L[a+28>>2]=h;L[b>>2]=h}F[a+39|0]=1;g=H[c+64>>2];if((g|0)!=H[c+60>>2]){break p}c=Ra[H[H[c>>2]>>2]](c,H[c+56>>2],g)|0;F[a+38|0]=c;if(!c){break l}g=0;c=H[a+12>>2];H[c+64>>2]=0}H[c+64>>2]=g+1;c=H[c+56>>2]+N(g,48)|0;H[c+8>>2]=H[d+8>>2];f=H[d+4>>2];H[c>>2]=H[d>>2];H[c+4>>2]=f;G[c+12>>1]=J[d+12>>1];L[c+16>>2]=L[d+16>>2];L[c+20>>2]=L[d+20>>2];L[c+24>>2]=L[d+24>>2];L[c+28>>2]=L[d+28>>2];L[c+32>>2]=L[d+32>>2];L[c+36>>2]=L[d+36>>2];L[c+40>>2]=L[d+40>>2];H[c+44>>2]=H[d+44>>2];break n;case 1:break o;default:break n}}h=L[d+40>>2];if(!(h<=L[a+28>>2])){break n}L[a+28>>2]=h;L[b>>2]=h;f=H[d+4>>2];c=H[a+12>>2];H[c+4>>2]=H[d>>2];H[c+8>>2]=f;H[c+12>>2]=H[d+8>>2];G[c+16>>1]=J[d+12>>1];L[c+20>>2]=L[d+16>>2];L[c+24>>2]=L[d+20>>2];L[c+28>>2]=L[d+24>>2];L[c+32>>2]=L[d+28>>2];L[c+36>>2]=L[d+32>>2];L[c+40>>2]=L[d+36>>2];L[c+44>>2]=L[d+40>>2];H[c+48>>2]=H[d+44>>2];F[H[a+12>>2]+52|0]=1}z=z+1|0;C=z>>>0>>0;if((x|0)!=(z|0)){continue}break}}a=!C;break a}a=1}Oa=e+224|0;return a&1}function Aw(a,b,c,d,e,f,g,h,i){var j=0,k=0,l=O(0),m=O(0),n=O(0),o=0,p=0,q=0,r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=0,y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=0,F=0,G=O(0),K=O(0),M=O(0),P=0,Q=O(0),R=0,S=O(0),T=0,U=O(0),V=O(0),W=O(0),X=O(0),Y=O(0),Z=O(0),_=O(0),$=O(0),aa=0,ba=0,ca=O(0),da=O(0),ea=O(0),fa=O(0),ga=O(0),ha=O(0),ia=O(0),ja=O(0),ka=O(0),la=O(0),ma=O(0),na=O(0),oa=O(0),pa=O(0);j=Oa-224|0;Oa=j;l=L[b+24>>2];m=L[b+20>>2];w=L[b+8>>2];v=L[b+4>>2];s=L[b>>2];n=L[b+16>>2];H[j+152>>2]=0;H[j+156>>2]=0;H[j+144>>2]=0;H[j+148>>2]=0;H[j+136>>2]=0;H[j+140>>2]=0;H[j+128>>2]=0;H[j+132>>2]=0;H[j+120>>2]=0;H[j+124>>2]=0;H[j+112>>2]=0;H[j+116>>2]=0;H[j+104>>2]=0;H[j+108>>2]=0;H[j+96>>2]=0;H[j+100>>2]=0;a:{if(g){b:{if(J[a+8>>1]!=65535){H[j+220>>2]=0;L[j+216>>2]=l;L[j+212>>2]=m;L[j+208>>2]=n;H[j+188>>2]=0;L[j+184>>2]=w;L[j+180>>2]=v;L[j+176>>2]=s;l=L[e+24>>2];g=H[e+16>>2];k=H[e+20>>2];H[j+92>>2]=0;L[j+88>>2]=l;H[j+80>>2]=g;H[j+84>>2]=k;g=H[e>>2];k=H[e+4>>2];l=L[e+8>>2];H[j+76>>2]=0;L[j+72>>2]=l;H[j+64>>2]=g;H[j+68>>2]=k;l=L[f+12>>2];m=L[f+8>>2];s=L[f+4>>2];n=L[f>>2];H[j+8>>2]=0;H[j+12>>2]=1065353216;H[j>>2]=0;H[j+4>>2]=0;L[j+16>>2]=n;f=j+192|0;g=j+160|0;k=j+32|0;e=j+48|0;break b}H[j+204>>2]=0;L[j+200>>2]=l;L[j+196>>2]=m;L[j+192>>2]=n;H[j+172>>2]=0;L[j+168>>2]=w;L[j+164>>2]=v;L[j+160>>2]=s;l=L[e+24>>2];g=H[e+16>>2];k=H[e+20>>2];H[j+60>>2]=0;L[j+56>>2]=l;H[j+48>>2]=g;H[j+52>>2]=k;g=H[e>>2];k=H[e+4>>2];l=L[e+8>>2];H[j+44>>2]=0;L[j+40>>2]=l;H[j+32>>2]=g;H[j+36>>2]=k;e=H[f>>2];g=H[f+4>>2];k=H[f+12>>2];H[j+8>>2]=H[f+8>>2];H[j+12>>2]=k;H[j>>2]=e;H[j+4>>2]=g;H[j+16>>2]=0;l=O(1);s=O(0);f=j+208|0;g=j+176|0;m=O(0);k=j- -64|0;e=j+80|0}H[k>>2]=0;H[k+4>>2]=0;H[k+8>>2]=0;H[k+12>>2]=0;H[e>>2]=0;H[e+4>>2]=0;H[e+8>>2]=0;H[e+12>>2]=0;H[g>>2]=0;H[g+4>>2]=0;H[g+8>>2]=0;H[g+12>>2]=0;H[f>>2]=0;H[f+4>>2]=0;H[f+8>>2]=0;H[f+12>>2]=0;L[j+28>>2]=l;L[j+24>>2]=m;L[j+20>>2]=s;if(I[H[a+24>>2]]==3){yA(a,j+208|0,j+192|0,j+176|0,j+160|0,j+80|0,j+48|0,j- -64|0,j+32|0,j+144|0,j+128|0,j+112|0,j+96|0,i,h);break a}uA(a,j+208|0,j+192|0,j+176|0,j+160|0,j+80|0,j+48|0,j- -64|0,j+32|0,j+16|0,j,h,j+144|0,j+128|0,j+112|0,j+96|0);break a}c:{if(J[a+8>>1]!=65535){H[j+220>>2]=0;L[j+216>>2]=l;L[j+212>>2]=m;L[j+208>>2]=n;L[j+176>>2]=s;f=j+160|0;g=j+192|0;e=j+176|0;break c}H[j+204>>2]=0;L[j+200>>2]=l;L[j+196>>2]=m;L[j+192>>2]=n;L[j+160>>2]=s;f=j+176|0;g=j+208|0;e=j+160|0}H[e+12>>2]=0;L[e+8>>2]=w;L[e+4>>2]=v;H[f>>2]=0;H[f+4>>2]=0;H[f+8>>2]=0;H[f+12>>2]=0;H[g>>2]=0;H[g+4>>2]=0;H[g+8>>2]=0;H[g+12>>2]=0;if(I[H[a+24>>2]]==3){x=j+208|0;o=j+192|0;p=j+176|0;q=j+160|0;g=Oa-96|0;Oa=g;f=J[a+22>>1];if(f){e=H[a+24>>2];ba=e+(f<<4)|0;while(1){aa=I[e+3|0];E=I[e+2|0];H[g+88>>2]=0;H[g+92>>2]=0;H[g+80>>2]=0;H[g+84>>2]=0;H[g+72>>2]=0;H[g+76>>2]=0;H[g+64>>2]=0;H[g+68>>2]=0;H[g+56>>2]=0;H[g+60>>2]=0;H[g+48>>2]=0;H[g+52>>2]=0;H[g+40>>2]=0;H[g+44>>2]=0;H[g+32>>2]=0;H[g+36>>2]=0;f=H[e+32>>2];k=H[e+36>>2];h=L[e+40>>2];H[g+28>>2]=0;L[g+24>>2]=h;H[g+16>>2]=f;H[g+20>>2]=k;l=L[e+44>>2];f=e- -64|0;T=f;k=g- -64|0;P=f+N(E,112)|0;F=0;i=O(0);H[g>>2]=0;if(E){while(1){f=T+N(F,112)|0;K=L[f+48>>2];Q=L[f+52>>2];U=L[f+56>>2];R=P+(F<<2)|0;m=L[R>>2];A=L[f+36>>2];V=L[f+32>>2];s=L[f+24>>2];n=L[f+8>>2];w=L[f+20>>2];v=L[f+4>>2];z=L[f>>2];B=L[f+16>>2];W=L[q+8>>2];X=L[o+8>>2];Y=L[p+8>>2];h=L[g+24>>2];r=L[x+8>>2];Z=L[q+4>>2];_=L[o+4>>2];M=L[p+4>>2];u=L[g+20>>2];t=L[x+4>>2];C=L[p>>2];y=L[x>>2];D=L[q>>2];$=L[o>>2];G=L[g+16>>2];H[x+12>>2]=0;S=r;h=O(A-O(V*O(O(O(O(O(y*G)+O(z*C))-O(O(G*$)+O(B*D)))+O(O(O(t*u)+O(v*M))-O(O(u*_)+O(w*Z))))+O(O(O(r*h)+O(n*Y))-O(O(h*X)+O(s*W))))));r=O(-m);h=h>r?h:r;L[x+8>>2]=S+O(U*h);L[x+4>>2]=t+O(Q*h);L[x>>2]=y+O(K*h);r=L[f+64>>2];u=L[f+68>>2];t=L[f+72>>2];H[p+12>>2]=0;L[p+8>>2]=O(h*t)+L[p+8>>2];L[p+4>>2]=O(h*u)+L[p+4>>2];L[p>>2]=O(h*r)+L[p>>2];r=L[f+80>>2];u=L[f+84>>2];t=L[f+88>>2];H[o+12>>2]=0;L[o+8>>2]=O(h*t)+L[o+8>>2];L[o+4>>2]=O(h*u)+L[o+4>>2];L[o>>2]=O(h*r)+L[o>>2];r=L[f+96>>2];u=L[f+100>>2];t=L[f+104>>2];H[q+12>>2]=0;L[q+8>>2]=O(h*t)+L[q+8>>2];L[q+4>>2]=O(h*u)+L[q+4>>2];L[q>>2]=O(h*r)+L[q>>2];r=L[g+16>>2];u=L[g+20>>2];t=L[g+24>>2];H[g+92>>2]=0;L[g+88>>2]=O(h*t)+L[g+88>>2];L[g+84>>2]=O(h*u)+L[g+84>>2];L[g+80>>2]=O(h*r)+L[g+80>>2];H[g+60>>2]=0;L[g+52>>2]=O(v*h)+L[g+52>>2];L[g+56>>2]=O(n*h)+L[g+56>>2];L[g+48>>2]=O(z*h)+L[g+48>>2];n=L[g+16>>2];v=L[g+20>>2];z=L[g+24>>2];H[k+12>>2]=0;L[k+8>>2]=O(h*z)+L[k+8>>2];L[k+4>>2]=O(h*v)+L[k+4>>2];L[k>>2]=O(h*n)+L[k>>2];H[g+44>>2]=0;L[g+36>>2]=O(w*h)+L[g+36>>2];L[g+40>>2]=O(s*h)+L[g+40>>2];L[g+32>>2]=O(B*h)+L[g+32>>2];h=O(m+h);L[R>>2]=h;i=O(h+i);F=F+1|0;if((E|0)!=(F|0)){continue}break}L[g>>2]=i}T=P+((E<<2)+12&2032)|0;f=T+(aa<<7)|0;d:{if(!aa){s=L[g+40>>2];n=L[g+36>>2];w=L[g+32>>2];v=L[g+72>>2];z=L[g+68>>2];i=L[g+64>>2];B=L[g+56>>2];r=L[g+52>>2];l=L[g+48>>2];u=L[g+88>>2];t=L[g+84>>2];m=L[g+80>>2];break d}h=L[g>>2];h=h>l?h:l;$=O(h*L[e+16>>2]);ca=O(-$);Q=O(h*L[e+20>>2]);U=O(-Q);E=0;s=L[g+40>>2];n=L[g+36>>2];w=L[g+32>>2];v=L[g+72>>2];z=L[g+68>>2];i=L[g+64>>2];B=L[g+56>>2];r=L[g+52>>2];l=L[g+48>>2];u=L[g+88>>2];t=L[g+84>>2];m=L[g+80>>2];F=0;while(1){k=T+(E<<7)|0;da=L[k+64>>2];ea=L[k+68>>2];fa=L[k+72>>2];A=L[k+12>>2];S=L[k+48>>2];ga=L[k+44>>2];h=L[k+28>>2];V=L[k+24>>2];W=L[k+40>>2];y=L[k+8>>2];X=L[k+20>>2];Y=L[k+36>>2];G=L[k+4>>2];Z=L[k+16>>2];K=L[k>>2];_=L[k+32>>2];ha=L[p+8>>2];M=L[x+8>>2];ia=L[q+8>>2];ja=L[o+8>>2];ka=L[p+4>>2];C=L[x+4>>2];la=L[q+4>>2];ma=L[o+4>>2];D=L[x>>2];na=L[p>>2];oa=L[o>>2];pa=L[q>>2];H[x+12>>2]=0;h=O(O(A-O(h*O(ga-S)))-O(h*O(O(O(O(O(K*D)+O(Z*na))-O(O(K*oa)+O(_*pa)))+O(O(O(G*C)+O(X*ka))-O(O(G*ma)+O(Y*la))))+O(O(O(y*M)+O(V*ha))-O(O(y*ja)+O(W*ia))))));P=h>$;S=M;R=h>2]=S+O(fa*h);L[x+4>>2]=C+O(ea*h);L[x>>2]=D+O(da*h);A=L[k+80>>2];C=L[k+84>>2];D=L[k+88>>2];H[p+12>>2]=0;L[p+8>>2]=O(D*h)+L[p+8>>2];L[p+4>>2]=O(C*h)+L[p+4>>2];L[p>>2]=L[p>>2]+O(A*h);A=L[k+96>>2];C=L[k+100>>2];D=L[k+104>>2];H[o+12>>2]=0;L[o+8>>2]=O(h*D)+L[o+8>>2];L[o+4>>2]=O(h*C)+L[o+4>>2];L[o>>2]=O(h*A)+L[o>>2];A=L[k+112>>2];C=L[k+116>>2];D=L[k+120>>2];H[q+12>>2]=0;L[q+8>>2]=O(h*D)+L[q+8>>2];L[q+4>>2]=O(h*C)+L[q+4>>2];L[q>>2]=O(h*A)+L[q>>2];L[k+12>>2]=M;s=O(O(W*h)+s);n=O(O(Y*h)+n);w=O(O(_*h)+w);y=O(y*h);v=O(y+v);G=O(G*h);z=O(G+z);K=O(K*h);i=O(K+i);B=O(O(V*h)+B);r=O(O(X*h)+r);l=O(O(Z*h)+l);u=O(y+u);t=O(G+t);m=O(K+m);F=0-(P|R|(F|0)!=0)|0;E=E+1|0;if((aa|0)!=(E|0)){continue}break}L[g+48>>2]=l;L[g+80>>2]=m;L[g+64>>2]=i;H[e+52>>2]=F}h=L[e+24>>2];H[j+156>>2]=0;L[j+152>>2]=O(u*h)+L[j+152>>2];L[j+148>>2]=O(t*h)+L[j+148>>2];L[j+144>>2]=O(m*h)+L[j+144>>2];h=L[e+4>>2];H[j+124>>2]=0;L[j+120>>2]=O(B*h)+L[j+120>>2];L[j+116>>2]=O(r*h)+L[j+116>>2];L[j+112>>2]=O(l*h)+L[j+112>>2];h=L[e+28>>2];H[j+140>>2]=0;L[j+132>>2]=L[j+132>>2]-O(z*h);L[j+128>>2]=L[j+128>>2]-O(i*h);L[j+136>>2]=L[j+136>>2]-O(v*h);h=L[e+8>>2];H[j+108>>2]=0;L[j+100>>2]=L[j+100>>2]-O(n*h);L[j+96>>2]=L[j+96>>2]-O(w*h);L[j+104>>2]=L[j+104>>2]-O(s*h);e=f;if(ba>>>0>f>>>0){continue}break}}Oa=g+96|0;break a}wz(a,j+208|0,j+192|0,j+176|0,j+160|0,j+144|0,j+128|0,j+112|0,j+96|0)}e:{if(J[a+8>>1]!=65535){w=L[j+112>>2];v=L[j+152>>2];z=L[j+148>>2];B=L[j+144>>2];l=L[j+184>>2];m=L[j+180>>2];s=L[j+176>>2];h=L[j+216>>2];i=L[j+212>>2];n=L[j+208>>2];a=j+112|0;break e}w=L[j+96>>2];v=L[j+136>>2];z=L[j+132>>2];B=L[j+128>>2];l=L[j+168>>2];m=L[j+164>>2];s=L[j+160>>2];h=L[j+200>>2];i=L[j+196>>2];n=L[j+192>>2];a=j+96|0}r=L[a+8>>2];u=L[a+4>>2];t=L[b+8>>2];y=L[b+4>>2];L[d>>2]=O(s-L[b>>2])+L[d>>2];L[d+4>>2]=O(m-y)+L[d+4>>2];L[d+8>>2]=O(l-t)+L[d+8>>2];t=L[b+24>>2];y=L[b+20>>2];L[d+16>>2]=O(n-L[b+16>>2])+L[d+16>>2];L[d+20>>2]=O(i-y)+L[d+20>>2];L[d+24>>2]=O(h-t)+L[d+24>>2];L[b+24>>2]=h;L[b+20>>2]=i;L[b+16>>2]=n;L[b+8>>2]=l;L[b+4>>2]=m;L[b>>2]=s;L[c>>2]=L[c>>2]-B;L[c+4>>2]=L[c+4>>2]-z;L[c+8>>2]=L[c+8>>2]-v;L[c+16>>2]=L[c+16>>2]-w;L[c+20>>2]=L[c+20>>2]-u;L[c+24>>2]=L[c+24>>2]-r;Oa=j+224|0}function SW(a,b,c,d,e,f,g,h,i){var j=0,k=O(0),l=0,m=O(0),n=O(0),o=O(0),p=O(0),q=0,r=O(0),s=O(0),t=O(0),u=0,v=O(0),w=0,x=O(0),y=O(0),z=O(0),A=O(0),B=0,C=O(0),D=O(0),E=0,G=0,J=O(0),K=O(0),M=O(0),N=O(0),P=O(0),Q=O(0),S=0,T=0,U=O(0),V=0,X=O(0),Y=0,Z=0,_=O(0),$=O(0),aa=O(0),ba=O(0),ca=O(0),da=O(0),ea=0,fa=0,ga=0;j=Oa-320|0;Oa=j;S=H[b+4>>2];m=L[S+20>>2];T=H[a+4>>2];k=L[T+20>>2];$=L[d>>2];fa=I[T+32|0];aa=L[T+16>>2];ga=I[S+32|0];ba=L[S+16>>2];H[j+44>>2]=0;da=O((k>m?m:k)*O(.10000000149011612));a:{b:{c:{d:{e:{f:{ea=I[h|0];if(ea){w=H[a+8>>2];d=0;c=0;while(1){l=d<<2;q=I[d+f|0];H[l+(j- -64|0)>>2]=q;u=l+(j+48|0)|0;l=I[d+g|0];H[u>>2]=l;q=(q<<4)+88320|0;u=H[q+8>>2];V=H[q>>2];B=H[q+4>>2];l=(l<<4)+88320|0;E=H[l>>2];q=H[l+4>>2];l=H[l+8>>2];ca=L[w+48>>2];J=L[w+32>>2];K=L[w>>2];y=L[w+16>>2];z=L[w+52>>2];v=L[w+36>>2];X=L[w+4>>2];t=L[w+20>>2];o=L[w+56>>2];n=L[w+40>>2];U=L[T+56>>2];m=L[w+8>>2];A=L[T+48>>2];k=L[w+24>>2];C=L[T+52>>2];x=L[S+48>>2];r=L[S+52>>2];p=L[S+56>>2];G=c<<4;Y=G+(j+144|0)|0;H[Y+12>>2]=0;Z=G+(j+80|0)|0;H[Z+12>>2]=0;G=G+(j+208|0)|0;H[G+12>>2]=0;s=l?p:O(-p);L[Z+8>>2]=s;r=q?r:O(-r);L[Z+4>>2]=r;p=E?x:O(-x);L[Z>>2]=p;D=o;x=u?U:O(-U);o=V?A:O(-A);A=k;k=B?C:O(-C);n=O(D+O(O(n*x)+O(O(m*o)+O(A*k))));L[Y+8>>2]=n;m=O(z+O(O(v*x)+O(O(X*o)+O(k*t))));L[Y+4>>2]=m;k=O(ca+O(O(J*x)+O(O(K*o)+O(k*y))));L[Y>>2]=k;n=O(n-s);L[G+8>>2]=n;m=O(m-r);L[G+4>>2]=m;k=O(k-p);L[G>>2]=k;l=c;c=c+1|0;d=d+1|0;if((ea|0)!=(d|0)){continue}break}H[j+44>>2]=c;g:{h:{switch(l-1|0){case 0:p=L[j+216>>2];o=O(L[j+232>>2]-p);n=L[j+208>>2];s=O(L[j+224>>2]-n);m=L[j+212>>2];r=O(L[j+228>>2]-m);k=O(O(o*o)+O(O(s*s)+O(r*r)));if(!(k<=O(1.1920928955078125e-7))){break g}H[j+44>>2]=1;c=H[j+212>>2];H[j+16>>2]=H[j+208>>2];H[j+20>>2]=c;c=H[j+220>>2];H[j+24>>2]=H[j+216>>2];H[j+28>>2]=c;break e;case 1:_W(j+16|0,j+208|0,j+144|0,j+80|0,j- -64|0,j+48|0,j+44|0);break e;case 2:break h;default:break f}}DZ(j+16|0,j+208|0,j+144|0,j+80|0,j- -64|0,j+48|0,j+44|0);break e}H[j+28>>2]=0;k=O(R(O(O(O(O(O(-n)*s)-O(r*m))-O(p*o))/k),O(1)));k=k>O(0)?k:O(0);L[j+24>>2]=p+O(o*k);L[j+20>>2]=m+O(r*k);L[j+16>>2]=n+O(s*k);break e}n=L[c+8>>2];m=L[c>>2];k=L[c+4>>2];H[j+284>>2]=0;c=O(O(n*n)+O(O(m*m)+O(k*k)))>O(0);t=c?n:O(0);L[j+280>>2]=t;o=c?k:O(0);L[j+276>>2]=o;r=c?m:O(1);L[j+272>>2]=r;k=O(O(1)/O(W(O(O(t*t)+O(O(r*r)+O(o*o))))));D=O(t*k);M=O(o*k);N=O(r*k);s=O(3.4028234663852886e38);X=O(0);break d}H[j+28>>2]=0;L[j+24>>2]=n;L[j+20>>2]=m;L[j+16>>2]=k}c=H[j+20>>2];H[j+272>>2]=H[j+16>>2];H[j+276>>2]=c;c=H[j+28>>2];H[j+280>>2]=H[j+24>>2];H[j+284>>2]=c;t=L[j+280>>2];r=L[j+272>>2];o=L[j+276>>2];s=O(W(O(O(t*t)+O(O(r*r)+O(o*o)))));if(!(da>2]}P=fa?aa:O(0);Q=ga?ba:O(0);_=O(P+Q);$=O($+_);while(1){H[j+296>>2]=H[j+312>>2];c=H[j+308>>2];H[j+288>>2]=H[j+304>>2];H[j+292>>2]=c;d=H[a+4>>2];l=H[a+8>>2];u=H[j+44>>2];c=u<<2;k=O(-r);B=O(O(O(L[a+20>>2]*k)-O(L[a+36>>2]*o))-O(L[a+52>>2]*t))>O(0);E=O(O(O(L[a+16>>2]*k)-O(L[a+32>>2]*o))-O(L[a+48>>2]*t))>O(0);q=O(O(O(L[a+24>>2]*k)-O(L[a+40>>2]*o))-O(L[a+56>>2]*t))>O(0);H[c+(j- -64|0)>>2]=B<<1|E|q<<2;aa=L[l+52>>2];ba=L[l+36>>2];ca=L[l+20>>2];J=L[l+56>>2];y=L[l+40>>2];A=L[d+56>>2];z=L[l+24>>2];C=L[d+52>>2];K=L[l+48>>2];v=L[l+32>>2];p=L[l>>2];n=L[l+16>>2];m=L[l+4>>2];k=L[l+8>>2];x=L[d+48>>2];V=H[b+4>>2];w=c+(j+48|0)|0;d=r>O(0);l=o>O(0);c=t>O(0);H[w>>2]=d|l<<1|c<<2;U=q?A:O(-A);A=E?x:O(-x);C=B?C:O(-C);y=O(J+O(O(y*U)+O(O(k*A)+O(z*C))));k=L[V+56>>2];z=c?k:O(-k);x=O(y-z);v=O(K+O(O(v*U)+O(O(p*A)+O(C*n))));k=L[V+48>>2];p=d?k:O(-k);J=O(v-p);n=O(aa+O(O(ba*U)+O(O(m*A)+O(C*ca))));k=L[V+52>>2];m=l?k:O(-k);K=O(n-m);k=O(O(D*x)+O(O(N*J)+O(M*K)));if(k>$){b=0;if(!f){break a}F[h|0]=u;if(!u){break a}c=0;if((u|0)!=1){h=u&-2;a=0;while(1){d=c<<2;e=j- -64|0;F[c+f|0]=H[d+e>>2];i=d;d=j+48|0;F[c+g|0]=H[i+d>>2];l=c|1;i=l<<2;F[f+l|0]=H[e+i>>2];F[g+l|0]=H[d+i>>2];c=c+2|0;a=a+2|0;if((h|0)!=(a|0)){continue}break}}if(!(u&1)){break a}a=c<<2;F[c+f|0]=H[a+(j- -64|0)>>2];F[c+g|0]=H[a+(j+48|0)>>2];break a}if(k>O(s*O(.9997749924659729))){i:{if(!f){break i}F[h|0]=u;if(!u){break i}c=0;if((u|0)!=1){h=u&-2;a=0;while(1){b=c<<2;d=j- -64|0;F[c+f|0]=H[b+d>>2];l=b;b=j+48|0;F[c+g|0]=H[l+b>>2];q=c|1;l=q<<2;F[f+q|0]=H[d+l>>2];F[g+q|0]=H[b+l>>2];c=c+2|0;a=a+2|0;if((h|0)!=(a|0)){continue}break}}if(!(u&1)){break i}a=c<<2;F[c+f|0]=H[a+(j- -64|0)>>2];F[c+g|0]=H[a+(j+48|0)>>2]}L[i+32>>2]=N;H[i+44>>2]=0;L[i+40>>2]=D;L[i+36>>2]=M;FU(j+208|0,j+144|0,j+80|0,j+272|0,j+16|0,j,u);j:{if(e){a=H[j+20>>2];H[i>>2]=H[j+16>>2];H[i+4>>2]=a;a=H[j+28>>2];H[i+8>>2]=H[j+24>>2];H[i+12>>2]=a;a=H[j+4>>2];H[i+16>>2]=H[j>>2];H[i+20>>2]=a;a=H[j+12>>2];H[i+24>>2]=H[j+8>>2];H[i+28>>2]=a;a=H[j+308>>2];H[i+68>>2]=H[j+304>>2];H[i+72>>2]=a;H[i+76>>2]=H[j+312>>2];break j}n=L[j+16>>2];m=L[j+20>>2];k=L[j+24>>2];H[i+12>>2]=0;L[i+8>>2]=k-O(P*D);L[i+4>>2]=m-O(P*M);L[i>>2]=n-O(P*N);n=L[j>>2];m=L[j+4>>2];k=L[j+8>>2];H[i+28>>2]=0;L[i+24>>2]=k+O(Q*D);L[i+20>>2]=m+O(Q*M);L[i+16>>2]=n+O(Q*N);s=O(s-_)}L[i+64>>2]=s;b=2;break a}c=u<<4;d=c+(j+144|0)|0;H[d+12>>2]=0;L[d+8>>2]=y;L[d+4>>2]=n;L[d>>2]=v;d=c+(j+80|0)|0;H[d+12>>2]=0;L[d+8>>2]=z;L[d+4>>2]=m;L[d>>2]=p;c=c+(j+208|0)|0;H[c+12>>2]=0;L[c+8>>2]=x;L[c+4>>2]=K;L[c>>2]=J;H[j+44>>2]=u+1;k:{l:{switch(u-1|0){case 0:p=L[j+216>>2];y=O(L[j+232>>2]-p);n=L[j+208>>2];z=O(L[j+224>>2]-n);m=L[j+212>>2];v=O(L[j+228>>2]-m);k=O(O(y*y)+O(O(z*z)+O(v*v)));if(k<=O(1.1920928955078125e-7)){H[j+44>>2]=1;c=H[j+212>>2];H[j+16>>2]=H[j+208>>2];H[j+20>>2]=c;c=H[j+220>>2];H[j+24>>2]=H[j+216>>2];H[j+28>>2]=c;break k}H[j+28>>2]=0;k=O(R(O(O(O(O(O(-n)*z)-O(v*m))-O(p*y))/k),O(1)));k=k>O(0)?k:O(0);L[j+24>>2]=p+O(y*k);L[j+20>>2]=m+O(v*k);L[j+16>>2]=n+O(z*k);break k;case 1:_W(j+16|0,j+208|0,j+144|0,j+80|0,j- -64|0,j+48|0,j+44|0);break k;case 2:DZ(j+16|0,j+208|0,j+144|0,j+80|0,j- -64|0,j+48|0,j+44|0);break k;default:break l}}H[j+28>>2]=0;L[j+24>>2]=x;L[j+20>>2]=K;L[j+16>>2]=J}c=H[j+20>>2];H[j+272>>2]=H[j+16>>2];H[j+276>>2]=c;c=H[j+28>>2];H[j+280>>2]=H[j+24>>2];H[j+284>>2]=c;n=L[j+280>>2];m=L[j+272>>2];k=L[j+276>>2];p=O(W(O(O(n*n)+O(O(m*m)+O(k*k)))));v=O(O(1)/p);D=O(n*v);M=O(k*v);N=O(m*v);if(!(!(p>da)|!(p>2];t=n;o=k;r=m;s=p;continue}break}d=H[j+44>>2];if(!(p>2];q=a;a=j+48|0;F[c+g|0]=H[q+a>>2];E=c|1;q=E<<2;F[f+E|0]=H[h+q>>2];F[g+E|0]=H[a+q>>2];c=c+2|0;b=b+2|0;if((l|0)!=(b|0)){continue}break}}if(!(B&1)){break m}a=c<<2;F[c+f|0]=H[a+(j- -64|0)>>2];F[c+g|0]=H[a+(j+48|0)>>2]}H[j+312>>2]=H[j+296>>2];a=H[j+292>>2];H[j+304>>2]=H[j+288>>2];H[j+308>>2]=a;L[j+284>>2]=X;L[j+272>>2]=r;L[j+276>>2]=o;L[j+280>>2]=t;FU(j+208|0,j+144|0,j+80|0,j+272|0,j+16|0,j,d);H[i+60>>2]=0;L[i+56>>2]=D;L[i+52>>2]=M;L[i+48>>2]=N;H[i+44>>2]=0;k=O(O(1)/s);t=O(t*k);L[i+40>>2]=t;o=O(o*k);L[i+36>>2]=o;p=O(r*k);L[i+32>>2]=p;if(e){a=H[j+20>>2];H[i>>2]=H[j+16>>2];H[i+4>>2]=a;a=H[j+28>>2];H[i+8>>2]=H[j+24>>2];H[i+12>>2]=a;a=H[j+4>>2];H[i+16>>2]=H[j>>2];H[i+20>>2]=a;a=H[j+12>>2];H[i+24>>2]=H[j+8>>2];H[i+28>>2]=a;L[i+64>>2]=s;a=H[j+292>>2];H[i+68>>2]=H[j+288>>2];H[i+72>>2]=a;H[i+76>>2]=H[j+296>>2];b=4;break a}n=L[j+16>>2];m=L[j+20>>2];k=L[j+24>>2];H[i+12>>2]=0;L[i+8>>2]=k-O(P*t);L[i+4>>2]=m-O(P*o);L[i>>2]=n-O(P*p);n=L[j>>2];m=L[j+4>>2];k=L[j+8>>2];L[i+64>>2]=s-_;H[i+28>>2]=0;L[i+24>>2]=k+O(Q*t);L[i+20>>2]=m+O(Q*o);L[i+16>>2]=n+O(Q*p);b=2;if(s<=_){break a}b=4;break a}if(f){break b}b=5;break a}d=H[j+44>>2]}F[h|0]=d;b=5;if(!d){break a}c=0;if((d|0)!=1){i=d&-2;a=0;while(1){e=c<<2;h=j- -64|0;F[c+f|0]=H[e+h>>2];l=e;e=j+48|0;F[c+g|0]=H[l+e>>2];q=c|1;l=q<<2;F[f+q|0]=H[h+l>>2];F[g+q|0]=H[e+l>>2];c=c+2|0;a=a+2|0;if((i|0)!=(a|0)){continue}break}}if(!(d&1)){break a}a=c<<2;F[c+f|0]=H[a+(j- -64|0)>>2];F[c+g|0]=H[a+(j+48|0)>>2]}Oa=j+320|0;return b}function HL(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,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=O(0),D=0,E=0,G=0,J=0,K=0,M=0,P=0,Q=0,R=0,S=0,T=0;c=H[a+20>>2];v=H[a+36>>2];i=Oa-80|0;Oa=i;r=H[a+32>>2];M=H[r+408>>2];d=H[a+28>>2];s=yq(H[d+620>>2],32);b=H[d+632>>2];n=H[d+636>>2];H[s+24>>2]=0;H[s+16>>2]=0;H[s+8>>2]=b;H[s+12>>2]=n;H[s+28>>2]=0;H[s>>2]=117516;H[s+20>>2]=c;H[s+24>>2]=1;if(c){Ra[H[H[c>>2]+16>>2]](c);H[s+16>>2]=H[H[s+20>>2]+16>>2]}Ra[H[H[v>>2]+16>>2]](v);H[s+28>>2]=v;D=H[r+412>>2];if(D){P=d+576|0;Q=H[d+108>>2];R=H[d+104>>2];v=0;while(1){H[i+24>>2]=0;H[i+72>>2]=0;H[i+20>>2]=H[d+460>>2]+(S<<2);c=E<<2;H[i+16>>2]=c+H[d+448>>2];H[i+28>>2]=H[d+552>>2]+(T<<4);n=K<<5;H[i+48>>2]=n+H[d+376>>2];H[i+52>>2]=n+H[d+388>>2];H[i+60>>2]=H[d+412>>2]+(K<<3);H[i+56>>2]=n+H[d+400>>2];H[i+64>>2]=H[d+424>>2]+(E<<5);n=H[d+436>>2];b=v;H[i+32>>2]=(b<<2)+M;H[i+68>>2]=c+n;k=H[d+528>>2];H[i+40>>2]=k;H[i+44>>2]=c+H[d+540>>2];x=0;z=0;t=0;A=0;n=0;a:{if(!R){break a}n=0;if(b>>>0>=D>>>0){break a}n=0;if(!Q){break a}c=H[r+256>>2];n=b;while(1){b:{v=n+1|0;n=c+N(H[(n<<2)+M>>2],44)|0;A=H[n+36>>2]+A|0;t=H[n+40>>2]+t|0;x=H[n+12>>2]+x|0;z=H[n+8>>2]+z|0;if(R>>>0<=z>>>0|v>>>0>=D>>>0){break b}n=v;if(x>>>0>>0){continue}}break}n=t+A|0}H[i+36>>2]=v-b;H[i+12>>2]=t;H[i+4>>2]=H[i+4>>2]&-2147483648|x&2147483647;H[i>>2]=z;H[i+8>>2]=A;G=H[d+564>>2]+E|0;b=H[d+368>>2];u=H[b>>2];if(u){H[b>>2]=H[u>>2]}if(!u){c=H[33808];b=Ra[H[H[c>>2]+20>>2]](c)|0?23054:55639;b=Ra[H[H[c+12>>2]+8>>2]](c+12|0,12195,b,16202,82)|0;c=b+19&-16;H[c-4>>2]=c-b;u=lA(c,H[d+372>>2])}g=yq(H[d+620>>2],124);H[g>>2]=u;b=H[i+4>>2];H[g+4>>2]=H[i>>2];H[g+8>>2]=b;b=H[i+12>>2];H[g+12>>2]=H[i+8>>2];H[g+16>>2]=b;b=H[i+20>>2];H[g+20>>2]=H[i+16>>2];H[g+24>>2]=b;b=H[i+28>>2];H[g+28>>2]=H[i+24>>2];H[g+32>>2]=b;b=H[i+36>>2];H[g+36>>2]=H[i+32>>2];H[g+40>>2]=b;b=H[i+44>>2];H[g+44>>2]=H[i+40>>2];H[g+48>>2]=b;b=H[i+52>>2];H[g+52>>2]=H[i+48>>2];H[g+56>>2]=b;b=H[i+60>>2];H[g+60>>2]=H[i+56>>2];H[g+64>>2]=b;b=H[i+68>>2];H[g+68>>2]=H[i+64>>2];H[g+72>>2]=b;H[g+80>>2]=0;H[g+84>>2]=0;H[g+76>>2]=G;l=0;t=0;w=0;c=H[g>>2];b=c;H[b+12112>>2]=0;H[b+12116>>2]=0;H[b+12092>>2]=0;H[b+11968>>2]=0;H[b+11956>>2]=0;H[b+11868>>2]=0;H[b+11872>>2]=0;H[b+12132>>2]=H[b+11952>>2];H[b+12140>>2]=H[b+11976>>2];b=b+11876|0;H[b>>2]=0;H[b+4>>2]=0;b=c+11884|0;H[b>>2]=0;H[b+4>>2]=0;J=g+20|0;h=J;H[c+11940>>2]=H[h+48>>2];H[c+11928>>2]=H[h+52>>2];H[c+11932>>2]=H[h>>2];H[c+11936>>2]=H[h+4>>2];H[c+11944>>2]=H[h+24>>2];H[c+11948>>2]=H[h+28>>2];mA(c,0,H[g+8>>2]&2147483647);y=H[h+20>>2];c:{if(!y){break c}m=H[h+16>>2];q=H[c+11948>>2];B=H[c+11944>>2];p=H[c+11936>>2];o=H[c+11932>>2];c=H[c+11928>>2];while(1){f=H[H[r+256>>2]+N(H[m+(w<<2)>>2],44)>>2];if(f>>>0<=4294967167){while(1){f=f>>>7|0;e=H[r+184>>2]+N(f,24)|0;d:{if(I[e+5|0]==1){H[p+(l<<2)>>2]=H[e+20>>2];l=l+1|0;break d}j=t<<2;b=H[e+20>>2];H[j+o>>2]=b;H[c+j>>2]=H[b+36>>2];H[j+q>>2]=f;H[B+(H[H[r+196>>2]+(f<<2)>>2]<<2)>>2]=t;t=t+1|0}f=H[e+8>>2];if(f>>>0<4294967168){continue}break}}w=w+1|0;if((y|0)!=(w|0)){continue}break}t=0;if(!y){break c}j=H[h+12>>2];w=0;while(1){f=H[(H[r+256>>2]+N(H[m+(w<<2)>>2],44)|0)+20>>2];if((f|0)!=-1){while(1){b=H[r+228>>2];c=(f>>>0)/(b>>>0)|0;q=f-N(b,c)|0;p=H[H[r+208>>2]+(c<<2)>>2];c=H[r+148>>2];b=(f>>>0)/(c>>>0)|0;o=H[H[H[r+128>>2]+(b<<2)>>2]+(f-N(b,c)<<2)>>2];e:{if(!o){break e}b=H[r+616>>2];e=H[b>>2];f=f<<1;c=f|1;h=H[b+20>>2];b=(c>>>0)/(h>>>0)|0;l=H[H[e+(b<<2)>>2]+(c-N(b,h)<<2)>>2];b=(f>>>0)/(h>>>0)|0;f=H[H[e+(b<<2)>>2]+(f-N(b,h)<<2)>>2];e=j+(t<<4)|0;H[e+12>>2]=o;c=f>>>7|0;b=H[r+184>>2]+N(c,24)|0;f:{if(I[b+5|0]==1){b=H[b+20>>2];Ra[H[H[b>>2]+188>>2]](b,f>>>1&63,e,e+8|0);break f}if(I[b+4|0]&4){F[e+8|0]=1;H[e>>2]=H[H[r+196>>2]+(c<<2)>>2];break f}F[e+8|0]=0;H[e>>2]=H[B+(H[H[r+196>>2]+(c<<2)>>2]<<2)>>2]}t=t+1|0;if(l>>>0>=4294967168){F[e+9|0]=3;break e}c=l>>>7|0;b=H[r+184>>2]+N(c,24)|0;if(I[b+5|0]==1){b=H[b+20>>2];Ra[H[H[b>>2]+188>>2]](b,l>>>1&63,e+4|0,e+9|0);break e}if(I[b+4|0]&4){F[e+9|0]=1;H[e+4>>2]=H[H[r+196>>2]+(c<<2)>>2];break e}F[e+9|0]=0;H[e+4>>2]=H[B+(H[H[r+196>>2]+(c<<2)>>2]<<2)>>2]}f=H[(p+(q<<4)|0)+8>>2];if((f|0)!=-1){continue}break}}w=w+1|0;if((y|0)!=(w|0)){continue}break}}H[g+12>>2]=t;o=yq(H[d+620>>2],56);c=H[d+632>>2];b=H[d+636>>2];H[o+24>>2]=0;H[o+16>>2]=0;H[o+20>>2]=0;H[o+8>>2]=c;H[o+12>>2]=b;H[o+52>>2]=d;H[o+48>>2]=P;H[o+44>>2]=G;H[o+40>>2]=k;H[o+36>>2]=r;H[o+32>>2]=J;H[o+28>>2]=g;H[o>>2]=117740;c=yq(H[d+620>>2],80);y=H[g+72>>2];B=H[g+20>>2];h=H[g+4>>2];l=H[d+472>>2];m=H[d+484>>2];e=H[d+496>>2];q=H[u+11948>>2];C=L[d+52>>2];p=H[d+632>>2];b=H[d+636>>2];H[c+24>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=p;H[c+12>>2]=b;H[c+72>>2]=d;f=g+84|0;H[c+68>>2]=f;k=g+80|0;H[c+64>>2]=k;L[c+60>>2]=C;j=d+68|0;H[c+56>>2]=j;H[c+52>>2]=h;H[c+48>>2]=q;H[c+32>>2]=B;H[c+28>>2]=y;H[c>>2]=117796;H[c+44>>2]=e+N(G,48);e=G<<6;H[c+40>>2]=e+m;H[c+36>>2]=e+l;b=yq(H[d+620>>2],56);C=L[d+52>>2];q=H[d+632>>2];p=H[d+636>>2];H[b+24>>2]=0;H[b+16>>2]=0;H[b+20>>2]=0;H[b+8>>2]=q;H[b+12>>2]=p;H[b+48>>2]=d;H[b+44>>2]=f;H[b+40>>2]=k;L[b+36>>2]=C;H[b+32>>2]=j;H[b+28>>2]=g;H[b>>2]=117908;h=yq(H[d+620>>2],40);q=H[d+632>>2];p=H[d+636>>2];H[h+24>>2]=0;H[h+16>>2]=0;H[h+20>>2]=0;H[h+8>>2]=q;H[h+12>>2]=p;H[h+36>>2]=0;H[h+32>>2]=d;H[h+28>>2]=g;H[h>>2]=117964;l=yq(H[d+620>>2],48);f=H[g+52>>2];k=H[d+52>>2];j=H[d+56>>2];q=H[d+632>>2];p=H[d+636>>2];H[l+24>>2]=0;H[l+16>>2]=0;H[l+20>>2]=0;H[l+8>>2]=q;H[l+12>>2]=p;H[l>>2]=118020;H[l+28>>2]=g;H[l+32>>2]=k;H[l+36>>2]=j;H[l+44>>2]=d;H[l+40>>2]=f;m=yq(H[d+620>>2],48);k=H[g+52>>2];j=H[d+472>>2];q=H[d+632>>2];p=H[d+636>>2];H[m+24>>2]=0;H[m+16>>2]=0;H[m+20>>2]=0;H[m+8>>2]=q;H[m+12>>2]=p;H[m+44>>2]=d;H[m+40>>2]=u;H[m+32>>2]=k;H[m+28>>2]=g;H[m>>2]=118076;H[m+36>>2]=(e+j|0)- -64;e=yq(H[d+620>>2],56);j=H[g+56>>2];C=L[d+52>>2];q=H[d+632>>2];p=H[d+636>>2];H[e+24>>2]=0;H[e+16>>2]=0;H[e+20>>2]=0;H[e+8>>2]=q;H[e+12>>2]=p;H[e+48>>2]=d;L[e+44>>2]=C;H[e+40>>2]=u;H[e+36>>2]=P;H[e+32>>2]=j;H[e+28>>2]=g;H[e>>2]=118132;f=yq(H[d+620>>2],48);q=H[d+632>>2];p=H[d+636>>2];H[f+24>>2]=0;H[f+16>>2]=0;H[f+20>>2]=0;H[f+8>>2]=q;H[f+12>>2]=p;H[f+44>>2]=d;H[f+40>>2]=u;j=g+4|0;H[f+36>>2]=j;H[f+32>>2]=J;H[f+28>>2]=g;H[f>>2]=118300;k=yq(H[d+620>>2],48);q=H[d+632>>2];p=H[d+636>>2];H[k+24>>2]=0;H[k+16>>2]=0;H[k+20>>2]=0;H[k+8>>2]=q;H[k+12>>2]=p;H[k+44>>2]=d;H[k+40>>2]=r;H[k+36>>2]=j;H[k+32>>2]=J;H[k+28>>2]=u;H[k>>2]=118412;j=yq(H[d+620>>2],40);q=H[d+632>>2];p=H[d+636>>2];H[j+24>>2]=0;H[j+16>>2]=0;H[j+8>>2]=q;H[j+12>>2]=p;H[j+32>>2]=d;H[j+28>>2]=u;H[j>>2]=118468;H[j+20>>2]=s;H[j+24>>2]=1;if(s){Ra[H[H[s>>2]+16>>2]](s);H[j+16>>2]=H[H[j+20>>2]+16>>2]}H[k+20>>2]=j;H[k+24>>2]=1;Ra[H[H[j>>2]+16>>2]](j);H[k+16>>2]=H[H[k+20>>2]+16>>2];H[f+20>>2]=k;H[f+24>>2]=1;Ra[H[H[k>>2]+16>>2]](k);H[f+16>>2]=H[H[f+20>>2]+16>>2];H[e+20>>2]=f;H[e+24>>2]=1;Ra[H[H[f>>2]+16>>2]](f);H[e+16>>2]=H[H[e+20>>2]+16>>2];H[m+20>>2]=e;H[m+24>>2]=1;Ra[H[H[e>>2]+16>>2]](e);H[m+16>>2]=H[H[m+20>>2]+16>>2];H[l+20>>2]=m;H[l+24>>2]=1;Ra[H[H[m>>2]+16>>2]](m);H[l+16>>2]=H[H[l+20>>2]+16>>2];H[h+20>>2]=l;H[h+24>>2]=1;Ra[H[H[l>>2]+16>>2]](l);p=H[H[h+20>>2]+16>>2];H[h+36>>2]=e;H[h+16>>2]=p;Ra[H[H[e>>2]+16>>2]](e);H[b+20>>2]=h;H[b+24>>2]=1;Ra[H[H[h>>2]+16>>2]](h);H[b+16>>2]=H[H[b+20>>2]+16>>2];H[c+20>>2]=h;H[c+24>>2]=1;Ra[H[H[h>>2]+16>>2]](h);H[c+16>>2]=H[H[c+20>>2]+16>>2];H[o+20>>2]=h;H[o+24>>2]=1;Ra[H[H[h>>2]+16>>2]](h);H[o+16>>2]=H[H[o+20>>2]+16>>2];Ra[H[H[j>>2]+20>>2]](j);Ra[H[H[k>>2]+20>>2]](k);Ra[H[H[f>>2]+20>>2]](f);Ra[H[H[e>>2]+20>>2]](e);Ra[H[H[m>>2]+20>>2]](m);Ra[H[H[l>>2]+20>>2]](l);Ra[H[H[h>>2]+20>>2]](h);Ra[H[H[b>>2]+20>>2]](b);Ra[H[H[c>>2]+20>>2]](c);Ra[H[H[o>>2]+20>>2]](o);K=(n+K|0)+(x<<6)|0;S=x+S|0;T=A+T|0;E=E+z|0;if(v>>>0>>0){continue}break}}Ra[H[H[s>>2]+20>>2]](s);Oa=i+80|0;a=H[a+36>>2];Ra[H[H[a>>2]+20>>2]](a)}function tA(a,b,c,d,e,f,g,h){var i=0,j=0,k=0,l=0,m=O(0),n=O(0),o=O(0),p=O(0),q=0,r=0,s=O(0),t=O(0),u=0,v=0,w=O(0),x=O(0),y=0,z=O(0),A=O(0),B=O(0),C=O(0),D=0,E=O(0),M=O(0),P=O(0),Q=O(0),R=O(0),S=O(0),T=0,U=0,V=0,W=0,X=0,Y=0,Z=O(0),_=O(0),$=O(0),aa=O(0),ba=O(0),ca=O(0),da=0,ea=0,fa=0,ga=O(0),ha=0,ia=0,ja=0,ka=0,la=0;k=Oa-976|0;Oa=k;G[H[b+16>>2]+22>>1]=0;r=H[a+4>>2];if(r){j=k+16|0;S6(j,0,960);H[k+956>>2]=2139095039;H[k+940>>2]=-8388609;H[k+876>>2]=2139095039;H[k+860>>2]=-8388609;H[k+796>>2]=2139095039;H[k+780>>2]=-8388609;H[k+716>>2]=2139095039;H[k+700>>2]=-8388609;H[k+636>>2]=2139095039;H[k+620>>2]=-8388609;H[k+556>>2]=2139095039;H[k+540>>2]=-8388609;H[k+476>>2]=2139095039;H[k+460>>2]=-8388609;H[k+396>>2]=2139095039;H[k+380>>2]=-8388609;H[k+316>>2]=2139095039;H[k+300>>2]=-8388609;H[k+236>>2]=2139095039;H[k+220>>2]=-8388609;H[k+156>>2]=2139095039;H[k+140>>2]=-8388609;H[k+76>>2]=2139095039;H[k+60>>2]=-8388609;H[b+4>>2]=1065353216;H[b+8>>2]=1065353216;H[b+12>>2]=1065353216;H[b>>2]=1065353216;H[k+8>>2]=0;H[k>>2]=0;H[k+4>>2]=0;ka=b,la=Ra[r|0](j,k,12,b,H[a+8>>2],b+44|0,b+72|0,I[b+135|0],b+148|0,b+160|0)|0,H[ka+112>>2]=la;H[b+108>>2]=j;L[b+136>>2]=L[k>>2];L[b+140>>2]=L[k+4>>2];L[b+144>>2]=L[k+8>>2];if(!(!I[H[b+20>>2]+62|0]|H[b+100>>2]==8)){H[b+4>>2]=0}if(!(!I[H[b+24>>2]+62|0]|H[b+104>>2]==8)){H[b+12>>2]=0}j=Oa-560|0;Oa=j;r=H[b+16>>2];i=H[b+112>>2];a:{if(!i){H[r+20>>2]=0;H[r+24>>2]=0;H[r+28>>2]=0;break a}a=J[r+10>>1];y=1;if(J[r+8>>1]==65535){fa=I[H[r>>2]+62|0]!=0;y=(a|0)!=65535}X=(a|0)==65535?I[H[r+4>>2]+62|0]!=0:X;Y=y?160:96;a=N(i,Y);c=Ra[H[H[c>>2]>>2]](c,a+192|0)|0;if(c+1>>>0<2){break a}H[r+24>>2]=c;i=a+176|0;G[r+22>>1]=i>>>4;a=H[b+128>>2];G[r+20>>1]=8;H[r+28>>2]=a;a=0;S6(c,0,i);i=H[b+112>>2];c=H[r+24>>2];F[c+2|0]=0;F[c+1|0]=i;F[c|0]=y?4:2;n=L[b>>2];L[c+44>>2]=n;L[c+60>>2]=L[b+4>>2];x=L[b+8>>2];L[c+64>>2]=-x;L[c+68>>2]=-L[b+12>>2];L[c+16>>2]=L[b+136>>2];L[c+20>>2]=L[b+140>>2];L[c+24>>2]=L[b+144>>2];o=L[b+116>>2];L[c+4>>2]=o*e;L[c+8>>2]=L[b+120>>2]*e;F[c+3|0]=o!=O(3.4028234663852886e38)|L[b+120>>2]!=O(3.4028234663852886e38);m=n;n=L[H[b+36>>2]+32>>2];L[c+12>>2]=m*n;m=x;x=L[H[b+40>>2]+32>>2];L[c+28>>2]=m*x;o=L[b+60>>2];m=L[b- -64>>2];C=L[b+152>>2];p=L[b+148>>2];L[c+40>>2]=L[b+156>>2]-L[b+68>>2];L[c+36>>2]=C-m;L[c+32>>2]=p-o;o=L[b+88>>2];m=L[b+92>>2];C=L[b+164>>2];p=L[b+160>>2];L[c+56>>2]=L[b+168>>2]-L[b+96>>2];L[c+52>>2]=C-m;L[c+48>>2]=p-o;q=H[b+108>>2];b:{if(!i){break b}if((i|0)!=1){D=i&-2;while(1){u=q+N(a,80)|0;c:{if(!(I[u+76|0]&64)){break c}l=1024;d:{switch(J[u+78>>1]-2048|0){case 1:l=1025;break;case 0:break d;default:break c}}G[u+78>>1]=l}u=q+N(a|1,80)|0;e:{if(!(I[u+76|0]&64)){break e}l=1024;f:{switch(J[u+78>>1]-2048|0){case 1:l=1025;break;case 0:break f;default:break e}}G[u+78>>1]=l}a=a+2|0;v=v+2|0;if((D|0)!=(v|0)){continue}break}}if(!(i&1)){break b}a=q+N(a,80)|0;if(!(I[a+76|0]&64)){break b}v=1024;g:{switch(J[a+78>>1]-2048|0){case 1:v=1025;break;case 0:break g;default:break b}}G[a+78>>1]=v}D=0;tx(j+480|0,q,j+288|0,j+96|0,i,H[b+28>>2]+28|0,H[b+32>>2]+28|0,n,x,b,I[b+132|0]!=0|y,I[b+133|0],0);if(!H[b+112>>2]){break a}a=c+176|0;p=O(1);ga=e>2];q=J[c+76>>1];n=q&32?I[b+134|0]?ga:O(1):O(1);h:{if(!y){l=u<<4;i=l+(j+288|0)|0;P=L[i+8>>2];E=L[i>>2];Q=L[i+4>>2];i=l+(j+96|0)|0;M=L[i+8>>2];R=L[i>>2];Z=L[i+4>>2];o=L[c+44>>2];S=L[c+60>>2];s=L[c>>2];L[a>>2]=s;t=L[c+4>>2];L[a+4>>2]=t;w=L[c+8>>2];L[a+8>>2]=w;z=L[c+32>>2];L[a+16>>2]=z;A=L[c+36>>2];L[a+20>>2]=A;B=L[c+40>>2];L[a+24>>2]=B;_=L[c+16>>2];L[a+32>>2]=_;$=L[c+20>>2];L[a+36>>2]=$;aa=L[c+24>>2];L[a+40>>2]=aa;ba=L[c+48>>2];L[a+48>>2]=ba;ca=L[c+52>>2];L[a+52>>2]=ca;m=L[c+56>>2];H[a+84>>2]=0;L[a+72>>2]=n*S;L[a+68>>2]=n*o;L[a+56>>2]=m;H[a+92>>2]=1065353216;H[a+76>>2]=0;i=H[b+36>>2];o=O(O(O(w*L[i+8>>2])+O(O(s*L[i>>2])+O(t*L[i+4>>2])))+O(O(aa*L[i+24>>2])+O(O(_*L[i+16>>2])+O($*L[i+20>>2]))));l=H[b+40>>2];m=O(O(O(B*L[l+8>>2])+O(O(z*L[l>>2])+O(A*L[l+4>>2])))+O(O(m*L[l+24>>2])+O(O(ba*L[l+16>>2])+O(ca*L[l+20>>2]))));S=O(o-m);s=O(O(O(O(O(O(w*w)+O(O(s*s)+O(t*t)))*L[i+32>>2])*L[b>>2])+O(O(O(O(B*B)+O(O(z*z)+O(A*A)))*L[l+32>>2])*L[b+8>>2]))+O(O(O(O(P*P)+O(O(E*E)+O(Q*Q)))*L[b+4>>2])+O(O(O(M*M)+O(O(R*R)+O(Z*Z)))*L[b+12>>2])));n=x;if(q&64){break h}H[a+92>>2]=0;H[a+56>>2]=0;H[a+48>>2]=0;H[a+52>>2]=0;H[a+40>>2]=0;H[a+32>>2]=0;H[a+36>>2]=0;n=x;break h}T=H[b+20>>2];i=H[b+28>>2];q=H[b+36>>2];U=J[r+8>>1];G[j+92>>1]=U;H[j+88>>2]=q;H[j+84>>2]=i;H[j+80>>2]=T;V=H[b+24>>2];l=H[b+32>>2];v=H[b+40>>2];W=J[r+10>>1];G[j+76>>1]=W;H[j+72>>2]=v;H[j+68>>2]=l;H[j+64>>2]=V;p=L[c+16>>2];da=(U|0)!=65535;i:{if(!da){m=L[c+20>>2];t=L[c+24>>2];s=O(O(O(p*L[i+36>>2])+O(m*L[i+48>>2]))+O(t*L[i+60>>2]));o=O(O(O(p*L[i+32>>2])+O(m*L[i+44>>2]))+O(t*L[i+56>>2]));p=O(O(O(p*L[i+28>>2])+O(m*L[i+40>>2]))+O(t*L[i+52>>2]));break i}s=L[c+24>>2];o=L[c+20>>2]}i=a+128|0;w=L[c>>2];z=L[c+4>>2];A=L[c+8>>2];H[j+60>>2]=0;L[j+56>>2]=s;L[j+52>>2]=o;L[j+48>>2]=p;H[j+44>>2]=0;L[j+40>>2]=A;L[j+36>>2]=z;L[j+32>>2]=w;m=L[c+56>>2];p=O(-L[c+52>>2]);B=L[c+40>>2];P=O(-B);E=L[c+36>>2];Q=O(-E);t=L[c+48>>2];M=L[c+32>>2];R=O(-M);ea=(W|0)!=65535;j:{if(ea){s=O(-m);o=O(-t);break j}s=O(O(O(L[l+48>>2]*p)-O(t*L[l+36>>2]))-O(m*L[l+60>>2]));o=O(O(O(L[l+40>>2]*p)-O(t*L[l+28>>2]))-O(m*L[l+52>>2]));p=O(O(O(L[l+44>>2]*p)-O(t*L[l+32>>2]))-O(m*L[l+56>>2]))}H[j+28>>2]=0;H[j+12>>2]=0;L[j+8>>2]=P;L[j+4>>2]=Q;L[j>>2]=R;L[j+16>>2]=o;L[j+20>>2]=p;L[j+24>>2]=s;m=L[c+44>>2];t=L[c+60>>2];L[a+24>>2]=B;L[a+20>>2]=E;L[a+16>>2]=M;L[a+8>>2]=A;L[a+4>>2]=z;L[a>>2]=w;L[a+32>>2]=L[j+48>>2];L[a+36>>2]=L[j+52>>2];w=L[j+56>>2];H[a+84>>2]=0;L[a+72>>2]=n*t;L[a+68>>2]=n*m;L[a+56>>2]=-s;L[a+52>>2]=-p;L[a+48>>2]=-o;L[a+40>>2]=w;H[a+92>>2]=1065353216;H[a+76>>2]=0;n=oA(j+80|0,j+32|0,a+96|0,L[b>>2],L[b+4>>2],j- -64|0,j,i,L[b+8>>2],L[b+12>>2]);if(da){Ra[H[H[T>>2]+116>>2]](j+528|0,T,U);o=O(O(O(O(L[a>>2]*L[j+528>>2])+O(L[a+32>>2]*L[j+544>>2]))+O(O(L[a+4>>2]*L[j+532>>2])+O(L[a+36>>2]*L[j+548>>2])))+O(O(L[a+8>>2]*L[j+536>>2])+O(L[a+40>>2]*L[j+552>>2])))}else{o=O(O(O(L[q+8>>2]*L[a+8>>2])+O(O(L[q>>2]*L[a>>2])+O(L[q+4>>2]*L[a+4>>2])))+O(O(L[q+24>>2]*L[a+40>>2])+O(O(L[q+16>>2]*L[a+32>>2])+O(L[q+20>>2]*L[a+36>>2]))))}if(ea){Ra[H[H[V>>2]+116>>2]](j+528|0,V,W);m=O(O(O(O(L[a+16>>2]*L[j+528>>2])+O(L[a+48>>2]*L[j+544>>2]))+O(O(L[a+20>>2]*L[j+532>>2])+O(L[a+52>>2]*L[j+548>>2])))+O(O(L[a+24>>2]*L[j+536>>2])+O(L[a+56>>2]*L[j+552>>2])))}else{m=O(O(O(L[v+8>>2]*L[a+24>>2])+O(O(L[v>>2]*L[a+16>>2])+O(L[v+4>>2]*L[a+20>>2])))+O(O(L[v+24>>2]*L[a+56>>2])+O(O(L[v+16>>2]*L[a+48>>2])+O(L[v+20>>2]*L[a+52>>2]))))}if(!(I[c+76|0]&64)){H[a+92>>2]=0}s=n>2]=0;i=a- -64|0;sA(a+12|0,a+28|0,i,a+80|0,a+44|0,a+60|0,j+528|0,c,S,s,y?O(9999999747378752e-21):L[b+124>>2],p,d,e,J[c+76>>1]&64?C:O(n*h),f,g);s=L[j+528>>2];L[a+88>>2]=s;if(fa){L[i>>2]=L[i>>2]-o}if(X){L[a+44>>2]=m+L[a+44>>2]}i=J[c+76>>1];if(i&16){H[a+84>>2]=H[a+84>>2]|2}if(i&8){H[a+84>>2]=H[a+84>>2]|4}i=J[c+78>>1];if(i&1){H[a+84>>2]=H[a+84>>2]|64}k:{if(!(!I[b+132|0]&ja)){break k}if((i|0)==1024){H[a+84>>2]=H[a+84>>2]|8;l=u<<4;i=l+(j+288|0)|0;o=L[i>>2];m=L[i+4>>2];t=L[i+8>>2];n=L[b+4>>2];q=D<<4;i=q+ia|0;L[i+12>>2]=s;L[i+8>>2]=n*t;L[i+4>>2]=n*m;L[i>>2]=o*n;i=q+ha|0;l=l+(j+96|0)|0;n=L[b+12>>2];L[i>>2]=L[l>>2]*n;L[i+4>>2]=n*L[l+4>>2];L[i+8>>2]=n*L[l+8>>2];L[i+12>>2]=L[c+12>>2];D=D+1|0;break k}if(!(i&2048)){break k}H[a+84>>2]=H[a+84>>2]|16}a=a+Y|0;u=u+1|0;if(u>>>0>2]){continue}break}}Oa=j+560|0}Oa=k+976|0}function xW(a,b,c,d,e,f,g,h,i){var j=0,k=O(0),l=0,m=O(0),n=O(0),o=O(0),p=0,q=0,r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=0,x=O(0),y=O(0),z=0,A=0,B=O(0),C=O(0),D=O(0),E=O(0),G=O(0),J=0,K=0,M=O(0),P=O(0),Q=O(0),S=O(0),T=O(0),U=O(0),V=O(0),X=O(0),Y=O(0);j=Oa-320|0;Oa=j;w=H[b+4>>2];m=L[w+20>>2];l=H[a+4>>2];k=L[l+20>>2];x=L[d>>2];z=I[l+32|0];y=L[l+16>>2];J=I[w+32|0];v=L[w+16>>2];H[j+28>>2]=0;Y=O((k>m?m:k)*O(.10000000149011612));a:{b:{c:{d:{e:{f:{A=I[h|0];if(A){q=l+48|0;d=0;while(1){c=p<<2;l=I[f+p|0];H[c+(j+48|0)>>2]=l;K=c+(j+32|0)|0;c=I[g+p|0];H[K>>2]=c;c=H[w+152>>2]+N(c,12)|0;M=L[c+8>>2];P=L[c>>2];Q=L[c+4>>2];K=q+(1-l<<4)|0;T=L[K>>2];U=L[K+4>>2];V=L[K+8>>2];S=L[w+80>>2];s=L[w+48>>2];o=L[w+64>>2];t=L[w+84>>2];u=L[w+52>>2];r=L[w+68>>2];n=L[w+88>>2];m=L[w+56>>2];k=L[w+72>>2];c=d;l=c<<4;d=l+(j+128|0)|0;L[d+12>>2]=L[K+12>>2];L[d+8>>2]=V;L[d+4>>2]=U;L[d>>2]=T;d=l+(j- -64|0)|0;H[d+12>>2]=0;l=l+(j+192|0)|0;H[l+12>>2]=0;n=O(O(n*M)+O(O(m*P)+O(Q*k)));L[d+8>>2]=n;m=O(O(t*M)+O(O(u*P)+O(Q*r)));L[d+4>>2]=m;k=O(O(S*M)+O(O(s*P)+O(Q*o)));L[d>>2]=k;n=O(V-n);L[l+8>>2]=n;m=O(U-m);L[l+4>>2]=m;k=O(T-k);L[l>>2]=k;d=c+1|0;H[j+28>>2]=d;p=p+1|0;if((A|0)!=(p|0)){continue}break}g:{h:{switch(c-1|0){case 0:r=L[j+200>>2];o=O(L[j+216>>2]-r);n=L[j+192>>2];t=O(L[j+208>>2]-n);m=L[j+196>>2];u=O(L[j+212>>2]-m);k=O(O(o*o)+O(O(t*t)+O(u*u)));if(!(k<=O(1.1920928955078125e-7))){break g}H[j+28>>2]=1;c=H[j+196>>2];H[j+304>>2]=H[j+192>>2];H[j+308>>2]=c;c=H[j+204>>2];H[j+312>>2]=H[j+200>>2];H[j+316>>2]=c;break e;case 1:_W(j+304|0,j+192|0,j+128|0,j- -64|0,j+48|0,j+32|0,j+28|0);break e;case 2:break h;default:break f}}DZ(j+304|0,j+192|0,j+128|0,j- -64|0,j+48|0,j+32|0,j+28|0);break e}H[j+316>>2]=0;k=O(R(O(O(O(O(O(-n)*t)-O(u*m))-O(r*o))/k),O(1)));k=k>O(0)?k:O(0);L[j+312>>2]=r+O(o*k);L[j+308>>2]=m+O(u*k);L[j+304>>2]=n+O(t*k);break e}n=L[c+8>>2];m=L[c>>2];k=L[c+4>>2];H[j+268>>2]=0;c=O(O(n*n)+O(O(m*m)+O(k*k)))>O(0);s=c?n:O(0);L[j+264>>2]=s;o=c?k:O(0);L[j+260>>2]=o;t=c?m:O(1);L[j+256>>2]=t;k=O(O(1)/O(W(O(O(s*s)+O(O(t*t)+O(o*o))))));B=O(s*k);C=O(o*k);D=O(t*k);u=O(3.4028234663852886e38);S=O(0);break d}H[j+316>>2]=0;L[j+312>>2]=n;L[j+308>>2]=m;L[j+304>>2]=k}c=H[j+308>>2];H[j+256>>2]=H[j+304>>2];H[j+260>>2]=c;c=H[j+316>>2];H[j+264>>2]=H[j+312>>2];H[j+268>>2]=c;s=L[j+264>>2];t=L[j+256>>2];o=L[j+260>>2];u=O(W(O(O(s*s)+O(O(t*t)+O(o*o)))));if(!(Y>2]}E=z?y:O(0);G=J?v:O(0);X=O(E+G);T=O(x+X);while(1){H[j+280>>2]=H[j+296>>2];c=H[j+292>>2];H[j+272>>2]=H[j+288>>2];H[j+276>>2]=c;z=H[a+4>>2];A=z+52|0;q=H[j+28>>2]<<2;k=O(-t);l=z+56|0;d=z+68|0;c=z+72|0;J=O(O(O(L[z+48>>2]*k)-O(L[A>>2]*o))-O(L[l>>2]*s))>O(O(O(L[z+64>>2]*k)-O(L[d>>2]*o))-O(L[c>>2]*s));H[q+(j+48|0)>>2]=J;M=L[(J?l:c)>>2];P=L[(J?z+48|0:z- -64|0)>>2];Q=L[(J?A:d)>>2];l=H[b+4>>2];U=L[l+56>>2];V=L[l+52>>2];x=L[l+72>>2];d=l- -64|0;y=L[d>>2];v=L[l+68>>2];r=L[l+88>>2];n=L[l+80>>2];m=L[l+84>>2];k=L[l+48>>2];H[j+316>>2]=0;L[j+312>>2]=O(r*s)+O(O(n*t)+O(o*m));L[j+308>>2]=O(x*s)+O(O(y*t)+O(o*v));L[j+304>>2]=O(U*s)+O(O(k*t)+O(o*V));c=EU(l,j+304|0);H[q+(j+32|0)>>2]=c;c=H[l+152>>2]+N(c,12)|0;v=L[c+8>>2];m=L[c>>2];k=L[c+4>>2];r=O(O(L[l+88>>2]*v)+O(O(L[l+56>>2]*m)+O(k*L[l+72>>2])));x=O(M-r);n=O(O(L[l+80>>2]*v)+O(O(L[l+48>>2]*m)+O(k*L[d>>2])));y=O(P-n);m=O(O(L[l+84>>2]*v)+O(O(L[l+52>>2]*m)+O(k*L[l+68>>2])));v=O(Q-m);k=O(O(B*x)+O(O(D*y)+O(C*v)));if(k>T){b=0;if(!f){break a}q=H[j+28>>2];F[h|0]=q;if(!q){break a}a=0;if((q|0)!=1){h=q&-2;c=0;while(1){d=a<<2;e=j+48|0;F[a+f|0]=H[d+e>>2];i=d;d=j+32|0;F[a+g|0]=H[i+d>>2];l=a|1;i=l<<2;F[f+l|0]=H[e+i>>2];F[g+l|0]=H[d+i>>2];a=a+2|0;c=c+2|0;if((h|0)!=(c|0)){continue}break}}if(!(q&1)){break a}c=a<<2;F[a+f|0]=H[c+(j+48|0)>>2];F[a+g|0]=H[c+(j+32|0)>>2];break a}q=H[j+28>>2];if(k>O(u*O(.9997749924659729))){i:{if(!f){break i}F[h|0]=q;if(!q){break i}p=0;if((q|0)!=1){c=q&-2;d=0;while(1){a=p<<2;b=j+48|0;F[f+p|0]=H[a+b>>2];h=a;a=j+32|0;F[g+p|0]=H[h+a>>2];l=p|1;h=l<<2;F[f+l|0]=H[b+h>>2];F[g+l|0]=H[a+h>>2];p=p+2|0;d=d+2|0;if((c|0)!=(d|0)){continue}break}}if(!(q&1)){break i}a=p<<2;F[f+p|0]=H[a+(j+48|0)>>2];F[g+p|0]=H[a+(j+32|0)>>2]}L[i+32>>2]=D;H[i+44>>2]=0;L[i+40>>2]=B;L[i+36>>2]=C;FU(j+192|0,j+128|0,j- -64|0,j+256|0,j+304|0,j,q);j:{if(e){a=H[j+308>>2];H[i>>2]=H[j+304>>2];H[i+4>>2]=a;a=H[j+316>>2];H[i+8>>2]=H[j+312>>2];H[i+12>>2]=a;a=H[j+4>>2];H[i+16>>2]=H[j>>2];H[i+20>>2]=a;a=H[j+12>>2];H[i+24>>2]=H[j+8>>2];H[i+28>>2]=a;a=H[j+292>>2];H[i+68>>2]=H[j+288>>2];H[i+72>>2]=a;H[i+76>>2]=H[j+296>>2];break j}n=L[j+304>>2];m=L[j+308>>2];k=L[j+312>>2];H[i+12>>2]=0;L[i+8>>2]=k-O(E*B);L[i+4>>2]=m-O(E*C);L[i>>2]=n-O(E*D);n=L[j>>2];m=L[j+4>>2];k=L[j+8>>2];H[i+28>>2]=0;L[i+24>>2]=k+O(G*B);L[i+20>>2]=m+O(G*C);L[i+16>>2]=n+O(G*D);u=O(u-X)}L[i+64>>2]=u;b=2;break a}c=q<<4;d=c+(j+128|0)|0;H[d+12>>2]=0;L[d+8>>2]=M;L[d+4>>2]=Q;L[d>>2]=P;d=c+(j- -64|0)|0;H[d+12>>2]=0;L[d+8>>2]=r;L[d+4>>2]=m;L[d>>2]=n;c=c+(j+192|0)|0;H[c+12>>2]=0;L[c+8>>2]=x;L[c+4>>2]=v;L[c>>2]=y;H[j+28>>2]=q+1;k:{l:{switch(q-1|0){case 0:r=L[j+200>>2];x=O(L[j+216>>2]-r);n=L[j+192>>2];y=O(L[j+208>>2]-n);m=L[j+196>>2];v=O(L[j+212>>2]-m);k=O(O(x*x)+O(O(y*y)+O(v*v)));if(k<=O(1.1920928955078125e-7)){H[j+28>>2]=1;c=H[j+196>>2];H[j+304>>2]=H[j+192>>2];H[j+308>>2]=c;c=H[j+204>>2];H[j+312>>2]=H[j+200>>2];H[j+316>>2]=c;break k}H[j+316>>2]=0;k=O(R(O(O(O(O(O(-n)*y)-O(v*m))-O(r*x))/k),O(1)));k=k>O(0)?k:O(0);L[j+312>>2]=r+O(x*k);L[j+308>>2]=m+O(v*k);L[j+304>>2]=n+O(y*k);break k;case 1:_W(j+304|0,j+192|0,j+128|0,j- -64|0,j+48|0,j+32|0,j+28|0);break k;case 2:DZ(j+304|0,j+192|0,j+128|0,j- -64|0,j+48|0,j+32|0,j+28|0);break k;default:break l}}H[j+316>>2]=0;L[j+312>>2]=x;L[j+308>>2]=v;L[j+304>>2]=y}c=H[j+308>>2];H[j+256>>2]=H[j+304>>2];H[j+260>>2]=c;c=H[j+316>>2];H[j+264>>2]=H[j+312>>2];H[j+268>>2]=c;n=L[j+264>>2];m=L[j+256>>2];k=L[j+260>>2];r=O(W(O(O(n*n)+O(O(m*m)+O(k*k)))));v=O(O(1)/r);B=O(n*v);C=O(k*v);D=O(m*v);if(!(!(r>Y)|!(u>r))){S=L[j+268>>2];s=n;o=k;t=m;u=r;continue}break}p=H[j+28>>2];if(!(u>r)){m:{if(!f){break m}A=p-1|0;F[h|0]=A;if(!A){break m}a=0;if((p|0)!=2){h=A&-2;d=0;while(1){b=a<<2;c=j+48|0;F[a+f|0]=H[b+c>>2];l=b;b=j+32|0;F[a+g|0]=H[l+b>>2];q=a|1;l=q<<2;F[f+q|0]=H[c+l>>2];F[g+q|0]=H[b+l>>2];a=a+2|0;d=d+2|0;if((h|0)!=(d|0)){continue}break}}if(!(A&1)){break m}b=a<<2;F[a+f|0]=H[b+(j+48|0)>>2];F[a+g|0]=H[b+(j+32|0)>>2]}H[j+296>>2]=H[j+280>>2];a=H[j+276>>2];H[j+288>>2]=H[j+272>>2];H[j+292>>2]=a;L[j+268>>2]=S;L[j+256>>2]=t;L[j+260>>2]=o;L[j+264>>2]=s;FU(j+192|0,j+128|0,j- -64|0,j+256|0,j+304|0,j,p);H[i+60>>2]=0;L[i+56>>2]=B;L[i+52>>2]=C;L[i+48>>2]=D;H[i+44>>2]=0;k=O(O(1)/u);s=O(s*k);L[i+40>>2]=s;o=O(o*k);L[i+36>>2]=o;r=O(t*k);L[i+32>>2]=r;if(e){a=H[j+308>>2];H[i>>2]=H[j+304>>2];H[i+4>>2]=a;a=H[j+316>>2];H[i+8>>2]=H[j+312>>2];H[i+12>>2]=a;a=H[j+4>>2];H[i+16>>2]=H[j>>2];H[i+20>>2]=a;a=H[j+12>>2];H[i+24>>2]=H[j+8>>2];H[i+28>>2]=a;L[i+64>>2]=u;a=H[j+276>>2];H[i+68>>2]=H[j+272>>2];H[i+72>>2]=a;H[i+76>>2]=H[j+280>>2];b=4;break a}n=L[j+304>>2];m=L[j+308>>2];k=L[j+312>>2];H[i+12>>2]=0;L[i+8>>2]=k-O(E*s);L[i+4>>2]=m-O(E*o);L[i>>2]=n-O(E*r);n=L[j>>2];m=L[j+4>>2];k=L[j+8>>2];L[i+64>>2]=u-X;H[i+28>>2]=0;L[i+24>>2]=k+O(G*s);L[i+20>>2]=m+O(G*o);L[i+16>>2]=n+O(G*r);b=2;if(u<=X){break a}b=4;break a}if(f){break b}b=5;break a}p=H[j+28>>2]}F[h|0]=p;b=5;if(!p){break a}a=0;if((p|0)!=1){h=p&-2;c=0;while(1){d=a<<2;e=j+48|0;F[a+f|0]=H[d+e>>2];i=d;d=j+32|0;F[a+g|0]=H[i+d>>2];l=a|1;i=l<<2;F[f+l|0]=H[e+i>>2];F[g+l|0]=H[d+i>>2];a=a+2|0;c=c+2|0;if((h|0)!=(c|0)){continue}break}}if(!(p&1)){break a}c=a<<2;F[a+f|0]=H[c+(j+48|0)>>2];F[a+g|0]=H[c+(j+32|0)>>2]}Oa=j+320|0;return b}function KV(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=0,r=O(0),s=O(0),t=O(0),u=O(0),v=0,w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),K=0,M=O(0),P=O(0),Q=O(0),T=O(0),U=O(0),V=O(0),X=0,Y=0,Z=O(0),_=O(0),$=O(0),aa=O(0),ba=O(0),ca=O(0),da=O(0),ea=O(0),fa=O(0),ga=O(0),ha=O(0),ia=O(0),ja=O(0),ka=O(0),la=O(0),ma=O(0),na=O(0);f=Oa-496|0;Oa=f;a:{if(!e){T=O(1);M=O(0);break a}T=O(1);M=O(0);if(J[e+12>>1]!=2){break a}T=L[e+8>>2];V=L[e>>2];M=L[e+4>>2]}q=H[c+32>>2];o=L[c+4>>2];P=L[c+8>>2];B=L[c+12>>2];H[f+492>>2]=0;L[f+488>>2]=B;L[f+484>>2]=P;L[f+480>>2]=o;v=H[c+16>>2];X=H[c+20>>2];Y=H[c+28>>2];H[f+472>>2]=H[c+24>>2];H[f+476>>2]=Y;H[f+464>>2]=v;H[f+468>>2]=X;p=L[a+4>>2];s=L[a+8>>2];w=L[a+12>>2];m=L[d+20>>2];x=L[b+20>>2];t=L[d+24>>2];C=L[b+24>>2];k=L[b+8>>2];l=L[b+4>>2];n=L[b+12>>2];r=L[b>>2];h=L[d+12>>2];g=L[d>>2];u=L[d+16>>2];y=L[b+16>>2];j=L[d+4>>2];i=L[d+8>>2];H[f+460>>2]=0;H[f+444>>2]=0;H[f+428>>2]=0;u=O(y-u);u=O(u+u);m=O(x-m);x=O(m+m);m=O(C-t);t=O(m+m);C=O(O(O(O(-g)*u)-O(x*j))-O(i*t));z=O(O(h*h)+O(-.5));L[f+456>>2]=O(O(t*z)+O(h*O(O(j*u)-O(g*x))))-O(i*C);L[f+452>>2]=O(O(x*z)+O(h*O(O(g*t)-O(i*u))))-O(j*C);m=O(O(r*j)+O(O(O(h*k)-O(n*i))-O(g*l)));y=O(O(k*g)+O(O(O(h*l)-O(n*j))-O(i*r)));A=O(y+y);Q=O(m*A);E=O(O(i*k)+O(O(j*l)+O(O(h*n)+O(g*r))));l=O(O(l*i)+O(O(O(h*r)-O(n*g))-O(j*k)));k=O(l+l);n=O(E*k);L[f+436>>2]=Q-n;L[f+424>>2]=n+Q;l=O(O(1)-O(l*k));n=O(y*A);L[f+440>>2]=l-n;D=l;l=O(m+m);r=O(m*l);L[f+420>>2]=D-r;H[f+412>>2]=0;L[f+448>>2]=O(O(u*z)+O(h*O(O(i*x)-O(j*t))))-O(g*C);h=O(m*k);g=O(E*A);L[f+432>>2]=h+g;j=O(k*y);i=O(E*l);L[f+416>>2]=j-i;L[f+408>>2]=h-g;L[f+404>>2]=j+i;L[f+400>>2]=O(O(1)-n)-r;a=0;b:{if(o!=O(1)){break b}a=0;if(L[c+8>>2]!=O(1)){break b}a=L[c+12>>2]==O(1)}F[f+272|0]=0;H[f+264>>2]=0;H[f+268>>2]=0;H[f+256>>2]=0;H[f+260>>2]=0;H[f+248>>2]=0;H[f+252>>2]=0;H[f+240>>2]=0;H[f+244>>2]=0;H[f+384>>2]=q+16;H[f+392>>2]=H[q+56>>2]+N(I[q+55|0],20);F[f+396|0]=I[q+54|0];h=O(o*L[q+68>>2]);g=O(P*L[q+72>>2]);h=g>=h?h:g;g=O(B*L[q+76>>2]);h=g>=h?h:g;L[f+264>>2]=h*O(.02500000037252903);L[f+256>>2]=h*O(.10000000149011612);L[f+260>>2]=h*O(.05000000074505806);c=f+240|0;CU(f+480|0,f+464|0,f+288|0,f+336|0,c,a);H[f+388>>2]=H[q+60>>2];H[f+236>>2]=0;L[f+232>>2]=w;L[f+228>>2]=s;F[f+208|0]=0;H[f+204>>2]=3;H[f+176>>2]=0;H[f+180>>2]=0;H[f+184>>2]=0;H[f+188>>2]=0;L[f+224>>2]=p;h=p<=s?p:s;h=h<=w?h:w;g=O(h*O(.05000000074505806));L[f+200>>2]=g;L[f+196>>2]=g;L[f+192>>2]=h*O(.15000000596046448);H[f+32>>2]=126268;H[f+40>>2]=f+400;H[f+36>>2]=f+176;a=H[f+420>>2];b=f- -64|0;H[b>>2]=H[f+416>>2];H[b+4>>2]=a;a=H[f+428>>2];H[f+72>>2]=H[f+424>>2];H[f+76>>2]=a;a=H[f+412>>2];H[f+56>>2]=H[f+408>>2];H[f+60>>2]=a;a=H[f+436>>2];H[f+80>>2]=H[f+432>>2];H[f+84>>2]=a;a=H[f+444>>2];H[f+88>>2]=H[f+440>>2];H[f+92>>2]=a;a=f+448|0;d=H[a+4>>2];H[f+96>>2]=H[a>>2];H[f+100>>2]=d;d=H[f+460>>2];H[f+104>>2]=H[f+456>>2];H[f+108>>2]=d;d=H[f+404>>2];H[f+48>>2]=H[f+400>>2];H[f+52>>2]=d;h=L[f+52>>2];L[f+52>>2]=L[b>>2];g=L[f+72>>2];j=L[f+56>>2];L[f+56>>2]=L[f+80>>2];L[f+72>>2]=L[f+84>>2];L[f+80>>2]=j;L[f+84>>2]=g;L[b>>2]=h;H[f+24>>2]=126016;H[f+28>>2]=c;H[f>>2]=0;b=Oa-288|0;Oa=b;H[b+76>>2]=0;h=L[a+8>>2];g=L[a>>2];i=L[a+4>>2];H[b+60>>2]=0;a=O(O(h*h)+O(O(g*g)+O(i*i)))>O(0);j=a?h:O(0);L[b+56>>2]=j;i=a?i:O(0);L[b+52>>2]=i;k=a?g:O(1);L[b+48>>2]=k;d=H[f+36>>2];q=I[d+32|0];a=H[f+28>>2];v=I[a+32|0];m=O((q?L[d+16>>2]:O(0))+(v?L[a+16>>2]:O(0)));u=O(L[f>>2]+m);h=O(O(1)/O(W(O(O(j*j)+O(O(k*k)+O(i*i))))));l=O(j*h);n=O(i*h);r=O(k*h);h=L[a+20>>2];g=L[d+20>>2];x=O(S(O((g>h?h:g)*O(.10000000149011612)),O(9.999999974752427e-7)));h=O(3.4028234663852886e38);c:{while(1){c=H[b+60>>2];H[b+24>>2]=H[b+56>>2];H[b+28>>2]=c;c=H[b+52>>2];H[b+16>>2]=H[b+48>>2];H[b+20>>2]=c;c=H[f+40>>2];s=L[c+56>>2];w=L[c+40>>2];t=L[c+24>>2];C=L[c+52>>2];y=L[c+36>>2];g=L[d+56>>2];P=L[c+20>>2];o=L[d+52>>2];B=L[c+8>>2];z=L[c+48>>2];A=L[c+32>>2];E=L[c>>2];Q=L[c+16>>2];Z=L[f+88>>2];_=L[f+56>>2];$=L[f+72>>2];aa=L[c+4>>2];p=L[d+48>>2];ba=L[f+80>>2];ca=L[f+48>>2];da=L[f+64>>2];ea=L[f+84>>2];fa=L[f+52>>2];ga=L[f+68>>2];ha=L[a+56>>2];ia=L[a+52>>2];ja=L[a+72>>2];d=a- -64|0;ka=L[d>>2];la=L[a+68>>2];ma=L[a+88>>2];na=L[a+80>>2];U=L[a+84>>2];D=L[a+48>>2];H[b+284>>2]=0;L[b+280>>2]=O(ma*j)+O(O(na*k)+O(i*U));L[b+276>>2]=O(ja*j)+O(O(ka*k)+O(i*la));L[b+272>>2]=O(ha*j)+O(O(D*k)+O(i*ia));c=EU(a,b+272|0);D=g;U=O(-g);g=O(-k);k=O(O(O(_*g)-O($*i))-O(Z*j))>O(0)?D:U;p=O(O(O(ca*g)-O(da*i))-O(ba*j))>O(0)?p:O(-p);g=O(O(O(fa*g)-O(ga*i))-O(ea*j))>O(0)?o:O(-o);t=O(s+O(O(w*k)+O(O(B*p)+O(t*g))));c=H[a+152>>2]+N(c,12)|0;j=L[c+8>>2];i=L[c>>2];o=L[c+4>>2];B=O(O(L[a+88>>2]*j)+O(O(L[a+56>>2]*i)+O(o*L[a+72>>2])));s=O(t-B);z=O(z+O(O(A*k)+O(O(E*p)+O(g*Q))));A=O(O(L[a+80>>2]*j)+O(O(L[a+48>>2]*i)+O(o*L[d>>2])));w=O(z-A);k=O(C+O(O(y*k)+O(O(aa*p)+O(g*P))));i=O(O(L[a+84>>2]*j)+O(O(L[a+52>>2]*i)+O(o*L[a+68>>2])));g=O(k-i);j=O(O(l*s)+O(O(r*w)+O(n*g)));if(j>u){break c}if(!(!(j>m)|!(j>O(h*O(.9997749924659729))))){FU(b+208|0,b+144|0,b+80|0,b+48|0,b+272|0,b,H[b+76>>2]);g=L[H[f+36>>2]+16>>2];j=L[b+272>>2];i=L[b+276>>2];k=L[b+280>>2];H[f+172>>2]=0;L[f+168>>2]=k-(q?O(l*g):O(0));L[f+164>>2]=i-(q?O(n*g):O(0));L[f+160>>2]=j-(q?O(r*g):O(0));g=L[H[f+28>>2]+16>>2];j=L[b>>2];i=L[b+4>>2];k=L[b+8>>2];H[f+156>>2]=0;L[f+152>>2]=k+(v?O(l*g):O(-0));L[f+148>>2]=i+(v?O(n*g):O(-0));L[f+144>>2]=j+(v?O(r*g):O(-0));L[f+112>>2]=S(O(h-m),O(0));H[f+140>>2]=0;L[f+136>>2]=-l;L[f+132>>2]=-n;L[f+128>>2]=-r;K=1;break c}c=H[b+76>>2];d=c<<4;a=d+(b+144|0)|0;H[a+12>>2]=0;L[a+8>>2]=t;L[a+4>>2]=k;L[a>>2]=z;a=d+(b+80|0)|0;H[a+12>>2]=0;L[a+8>>2]=B;L[a+4>>2]=i;L[a>>2]=A;a=d+(b+208|0)|0;H[a+12>>2]=0;L[a+8>>2]=s;L[a+4>>2]=g;L[a>>2]=w;H[b+76>>2]=c+1;d:{e:{switch(c-1|0){case 0:k=L[b+216>>2];g=O(L[b+232>>2]-k);o=L[b+208>>2];j=O(L[b+224>>2]-o);p=L[b+212>>2];i=O(L[b+228>>2]-p);s=O(O(g*g)+O(O(j*j)+O(i*i)));if(s<=O(1.1920928955078125e-7)){H[b+76>>2]=1;a=H[b+212>>2];H[b+272>>2]=H[b+208>>2];H[b+276>>2]=a;a=H[b+220>>2];H[b+280>>2]=H[b+216>>2];H[b+284>>2]=a;break d}H[b+284>>2]=0;D=g;g=O(R(O(O(O(O(O(-o)*j)-O(i*p))-O(k*g))/s),O(1)));g=g>O(0)?g:O(0);L[b+280>>2]=k+O(D*g);L[b+276>>2]=p+O(i*g);L[b+272>>2]=o+O(j*g);break d;case 1:GU(b+272|0,b+208|0,b+144|0,b+80|0,b+76|0);break d;case 2:BZ(b+272|0,b+208|0,b+144|0,b+80|0,b+76|0);break d;default:break e}}H[b+284>>2]=0;L[b+280>>2]=s;L[b+276>>2]=g;L[b+272>>2]=w}a=H[b+276>>2];H[b+48>>2]=H[b+272>>2];H[b+52>>2]=a;a=H[b+284>>2];H[b+56>>2]=H[b+280>>2];H[b+60>>2]=a;j=L[b+56>>2];k=L[b+48>>2];i=L[b+52>>2];g=O(W(O(O(j*j)+O(O(k*k)+O(i*i)))));if(!(!(g>x)|!(g>2];d=H[f+36>>2];h=g;continue}break}if(g>2]=0;a=H[b+276>>2];H[f+116>>2]=H[b+272>>2];H[f+120>>2]=a;H[f+124>>2]=H[b+280>>2];K=2;break c}j=L[H[f+28>>2]+16>>2];i=L[H[f+36>>2]+16>>2];FU(b+208|0,b+144|0,b+80|0,b+16|0,b+272|0,b,H[b+76>>2]);g=L[H[f+36>>2]+16>>2];k=L[b+272>>2];o=L[b+276>>2];p=L[b+280>>2];H[f+172>>2]=0;L[f+168>>2]=p-(q?O(l*g):O(0));L[f+164>>2]=o-(q?O(n*g):O(0));L[f+160>>2]=k-(q?O(r*g):O(0));g=L[H[f+28>>2]+16>>2];k=L[b>>2];o=L[b+4>>2];p=L[b+8>>2];H[f+156>>2]=0;L[f+152>>2]=p+(v?O(l*g):O(-0));L[f+148>>2]=o+(v?O(n*g):O(-0));L[f+144>>2]=k+(v?O(r*g):O(-0));H[f+140>>2]=0;L[f+136>>2]=-l;L[f+132>>2]=-n;L[f+128>>2]=-r;h=O(S(O(h-m),O(0)));L[f+112>>2]=h;a=H[b+40>>2];H[f+116>>2]=H[b+36>>2];H[f+120>>2]=a;H[f+124>>2]=H[b+44>>2];K=h>(m>O(0)?m:O((i>j?j:i)*O(.20000000298023224)))?1:2}Oa=b+288|0;if(!(!e|(K|0)!=2)){L[e+8>>2]=T;L[e+4>>2]=M;L[e>>2]=V}if(e){G[e+12>>1]=((K|0)==2)<<1}Oa=f+496|0;return(K|0)==2|0}function xu(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=O(0),j=O(0),k=0,l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=0,u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),G=O(0),J=O(0),K=O(0),M=O(0),P=O(0),Q=O(0),R=O(0),S=O(0),T=O(0);h=Oa-576|0;Oa=h;k=H[f>>2];H[h+568>>2]=0;H[h+572>>2]=0;H[h+560>>2]=0;H[h+564>>2]=0;f=H[b+40>>2];u=L[b+8>>2];v=L[b+12>>2];i=L[b+4>>2];H[h+556>>2]=0;L[h+552>>2]=v;L[h+548>>2]=u;L[h+544>>2]=i;y=L[a+4>>2];L[h+528>>2]=L[e>>2];w=L[c+20>>2];x=L[c+24>>2];n=L[c>>2];p=L[c+4>>2];q=L[c+8>>2];r=L[c+12>>2];s=L[c+16>>2];H[h+524>>2]=0;L[h+520>>2]=x;L[h+516>>2]=w;L[h+512>>2]=s;L[h+508>>2]=r;L[h+504>>2]=q;L[h+500>>2]=p;L[h+496>>2]=n;o=L[d+20>>2];z=L[d+24>>2];D=L[d>>2];B=L[d+4>>2];C=L[d+8>>2];A=L[d+12>>2];m=L[d+16>>2];H[h+492>>2]=0;L[h+488>>2]=z;L[h+484>>2]=o;L[h+480>>2]=m;L[h+476>>2]=A;L[h+472>>2]=C;L[h+468>>2]=B;L[h+464>>2]=D;S=L[e+8>>2];l=O(S*O(.05000000074505806));j=O(i*L[f+52>>2]);i=O(u*L[f+56>>2]);j=i>=j?j:i;i=O(v*L[f+60>>2]);i=O((i>=j?j:i)*O(.25));i=i>l?l:i;T=i>y?y:i;M=O(O(O(q*D)-O(C*n))+O(O(p*A)-O(r*B)));P=O(O(O(p*C)-O(B*q))+O(O(n*A)-O(r*D)));E=O(O(O(n*B)-O(D*p))+O(O(q*A)-O(r*C)));i=O(-D);Q=O(O(r*A)-O(O(O(n*i)-O(p*B))-O(C*q)));s=O(s-m);o=O(w-o);m=O(x-z);l=O(O(O(i*s)-O(o*B))-O(C*m));j=O(O(A*A)+O(-.5));i=O(O(O(A*O(O(B*s)-O(D*o)))+O(j*m))-O(C*l));G=O(i+i);i=O(O(O(j*o)+O(A*O(O(D*m)-O(C*s))))-O(B*l));J=O(i+i);i=O(O(O(j*s)+O(A*O(O(C*o)-O(B*m))))-O(D*l));K=O(i+i);a:{b:{c=I[k+64|0];if(c){i=O(T*O(.05000000074505806));B=O(i*i);o=O(P+P);i=O(O(1)-O(P*o));l=O(M+M);j=O(M*l);C=O(i-j);A=i;z=O(E+E);i=O(E*z);D=O(A-i);n=O(O(O(1)-j)-i);j=O(E*l);i=O(Q*o);p=O(j-i);m=O(E*o);l=O(Q*l);q=O(m+l);r=O(j+i);j=O(M*o);i=O(Q*z);u=O(j-i);v=O(m-l);w=O(j+i);a=c;while(1){e=H[k+76>>2];a=a-1|0;t=e+N(a,48)|0;A=L[t+24>>2];x=L[t+40>>2];m=L[t+8>>2];l=L[t>>2];j=L[t+4>>2];i=O(G+O(O(C*m)+O(O(v*l)+O(r*j))));s=O(K+O(O(q*m)+O(O(n*l)+O(u*j))));o=L[t+16>>2];z=L[t+32>>2];m=O(J+O(O(p*m)+O(O(w*l)+O(D*j))));l=L[t+20>>2];j=L[t+36>>2];R=O(O(x*O(i-A))+O(O(O(s-o)*z)+O(O(m-l)*j)));i=O(A-O(i-O(x*R)));x=O(i*i);i=O(o-O(s-O(z*R)));A=O(i*i);i=O(l-O(m-O(j*R)));c:{if(B>2];H[t>>2]=H[e>>2];H[t+4>>2]=d;d=H[e+44>>2];H[t+40>>2]=H[e+40>>2];H[t+44>>2]=d;d=H[e+36>>2];H[t+32>>2]=H[e+32>>2];H[t+36>>2]=d;d=H[e+28>>2];H[t+24>>2]=H[e+24>>2];H[t+28>>2]=d;d=H[e+20>>2];H[t+16>>2]=H[e+16>>2];H[t+20>>2]=d;d=H[e+12>>2];H[t+8>>2]=H[e+8>>2];H[t+12>>2]=d;break c}L[t+44>>2]=R}if(a){continue}break}a=I[k+64|0]}else{a=0}d:{if((a|0)!=(c|0)){break d}o=O(K-L[k+16>>2]);l=O(-o);j=O(J-L[k+20>>2]);i=O(-j);z=O(G-L[k+24>>2]);m=O(-z);a=c<<2;l=l=O(0)?l:O(0);if(O(T*L[a+90356>>2])<(i<=j?j:i)){break d}if(!(L[a+90388>>2]>O(O(Q*L[k+12>>2])+O(O(E*L[k+8>>2])+O(O(P*L[k>>2])+O(M*L[k+4>>2])))))){break b}}L[k+16>>2]=K;L[k+12>>2]=Q;L[k+8>>2]=E;L[k+4>>2]=M;L[k>>2]=P;H[k+28>>2]=0;L[k+24>>2]=G;L[k+20>>2]=J;d=H[b+16>>2];c=H[b+20>>2];a=H[b+28>>2];H[h+456>>2]=H[b+24>>2];H[h+460>>2]=a;H[h+448>>2]=d;H[h+452>>2]=c;a=0;e:{if(L[b+4>>2]!=O(1)){break e}a=0;if(L[b+8>>2]!=O(1)){break e}a=L[b+12>>2]==O(1)}i=L[f+32>>2];c=H[f+28>>2];b=H[f+24>>2];F[h+320|0]=0;H[h+316>>2]=0;H[h+288>>2]=b;H[h+292>>2]=c;H[h+432>>2]=f;H[h+300>>2]=0;L[h+296>>2]=i;H[h+440>>2]=H[f+40>>2]+N(I[f+39|0],20);F[h+444|0]=I[f+38|0];j=O(L[f+52>>2]*L[h+544>>2]);i=O(L[f+56>>2]*L[h+548>>2]);j=i>=j?j:i;i=O(L[f+60>>2]*L[h+552>>2]);i=i>=j?j:i;L[h+312>>2]=i*O(.02500000037252903);L[h+308>>2]=i*O(.05000000074505806);L[h+304>>2]=i*O(.10000000149011612);b=a;CU(h+544|0,h+448|0,h+336|0,h+384|0,h+288|0,b);H[h+436>>2]=H[f+44>>2];H[h+268>>2]=0;L[h+264>>2]=G;L[h+260>>2]=J;H[h+252>>2]=0;L[h+248>>2]=G;L[h+244>>2]=J;L[h+272>>2]=y;H[h+204>>2]=0;L[h+200>>2]=G;L[h+196>>2]=J;L[h+192>>2]=K;H[h+220>>2]=4;L[h+256>>2]=K;L[h+240>>2]=K;F[h+224|0]=1;L[h+216>>2]=y;L[h+212>>2]=y;L[h+208>>2]=y;H[h+152>>2]=0;H[h+156>>2]=0;H[h+144>>2]=0;H[h+148>>2]=0;H[h+136>>2]=0;H[h+140>>2]=0;H[h+128>>2]=0;H[h+132>>2]=0;H[h+120>>2]=0;H[h+124>>2]=0;H[h+112>>2]=0;H[h+116>>2]=0;H[h+176>>2]=0;H[h+104>>2]=125948;H[h+108>>2]=h+192;H[h+92>>2]=0;L[h+88>>2]=G-L[h+296>>2];L[h+84>>2]=J-L[h+292>>2];L[h+80>>2]=K-L[h+288>>2];a=0;f:{g:{h:{i:{j:{if(b){H[h+72>>2]=129228;H[h+76>>2]=h+288;c=c0(h+104|0,h+72|0,h+80|0,h+528|0,k+67|0,k+71|0,k+66|0,h+112|0);break j}H[h+72>>2]=126016;H[h+76>>2]=h+288;c=xW(h+104|0,h+72|0,h+80|0,h+528|0,1,k+67|0,k+71|0,k+66|0,h+112|0)}switch(c|0){case 0:break a;case 5:break g;case 4:break h;case 2:break i;default:break f}}a=H[h+564>>2];c=H[k+76>>2];b=c;H[b>>2]=H[h+560>>2];H[b+4>>2]=a;a=H[h+572>>2];H[b+8>>2]=H[h+568>>2];H[b+12>>2]=a;a=H[h+132>>2];H[b+16>>2]=H[h+128>>2];H[b+20>>2]=a;a=H[h+140>>2];H[b+24>>2]=H[h+136>>2];H[b+28>>2]=a;b=H[h+144>>2];a=H[h+148>>2];i=L[h+176>>2];L[c+40>>2]=L[h+152>>2];L[c+44>>2]=i;H[c+32>>2]=b;H[c+36>>2]=a;a=1;F[k+64|0]=1;p=L[h+152>>2];q=L[h+148>>2];o=L[h+512>>2];z=L[h+516>>2];m=L[h+520>>2];n=L[h+476>>2];r=L[h+472>>2];u=L[h+144>>2];v=L[h+464>>2];w=L[h+468>>2];i=L[h+176>>2];b=H[g+4096>>2];H[g+4096>>2]=b+1;b=(b<<6)+g|0;H[b+52>>2]=-1;L[b+12>>2]=i-y;H[b+28>>2]=0;x=O(O(n*n)+O(-.5));s=O(O(r*p)+O(O(v*u)+O(w*q)));i=O(O(O(n*O(O(v*q)-O(u*w)))+O(p*x))+O(r*s));l=O(i+i);L[b+8>>2]=l;i=O(O(w*s)+O(O(x*q)+O(n*O(O(r*u)-O(p*v)))));j=O(i+i);L[b+4>>2]=j;i=O(O(v*s)+O(O(u*x)+O(n*O(O(w*p)-O(q*r)))));i=O(i+i);L[b>>2]=i;L[b+24>>2]=m-O(y*l);L[b+20>>2]=z-O(y*j);L[b+16>>2]=o-O(y*i);break a}a=M0(h+192|0,h+288|0,h+496|0,h+464|0,g,g,b,k,h+144|0,h+528|0);break a}k:{if(b){H[h+72>>2]=129228;H[h+76>>2]=h+288;c=I[k+66|0];L[h+48>>2]=S;a=H[h+60>>2];H[h+8>>2]=H[h+56>>2];H[h+12>>2]=a;a=H[h+52>>2];H[h>>2]=H[h+48>>2];H[h+4>>2]=a;a=wZ(h+104|0,h+72|0,k+67|0,k+71|0,c,1,h,h+112|0);break k}H[h+72>>2]=126016;H[h+76>>2]=h+288;c=I[k+66|0];L[h+32>>2]=S;a=H[h+44>>2];H[h+24>>2]=H[h+40>>2];H[h+28>>2]=a;a=H[h+36>>2];H[h+16>>2]=H[h+32>>2];H[h+20>>2]=a;a=wZ(h+104|0,h+72|0,k+67|0,k+71|0,c,1,h+16|0,h+112|0)}if((a|0)==5){a=H[h+564>>2];c=H[k+76>>2];b=c;H[b>>2]=H[h+560>>2];H[b+4>>2]=a;a=H[h+572>>2];H[b+8>>2]=H[h+568>>2];H[b+12>>2]=a;a=H[h+132>>2];H[b+16>>2]=H[h+128>>2];H[b+20>>2]=a;a=H[h+140>>2];H[b+24>>2]=H[h+136>>2];H[b+28>>2]=a;b=H[h+144>>2];a=H[h+148>>2];i=L[h+176>>2];L[c+40>>2]=L[h+152>>2];L[c+44>>2]=i;H[c+32>>2]=b;H[c+36>>2]=a;a=1;F[k+64|0]=1;p=L[h+152>>2];q=L[h+148>>2];o=L[h+512>>2];z=L[h+516>>2];m=L[h+520>>2];n=L[h+476>>2];r=L[h+472>>2];u=L[h+144>>2];v=L[h+464>>2];w=L[h+468>>2];i=L[h+176>>2];b=H[g+4096>>2];H[g+4096>>2]=b+1;b=(b<<6)+g|0;H[b+52>>2]=-1;L[b+12>>2]=i-y;H[b+28>>2]=0;x=O(O(n*n)+O(-.5));s=O(O(r*p)+O(O(v*u)+O(w*q)));i=O(O(O(n*O(O(v*q)-O(u*w)))+O(p*x))+O(r*s));l=O(i+i);L[b+8>>2]=l;i=O(O(w*s)+O(O(x*q)+O(n*O(O(r*u)-O(p*v)))));j=O(i+i);L[b+4>>2]=j;i=O(O(v*s)+O(O(u*x)+O(n*O(O(w*p)-O(q*r)))));i=O(i+i);L[b>>2]=i;L[b+24>>2]=m-O(y*l);L[b+20>>2]=z-O(y*j);L[b+16>>2]=o-O(y*i);break a}a=M0(h+192|0,h+288|0,h+496|0,h+464|0,g,g,b,k,h+144|0,h+528|0);break a}break a}if(!c){a=0;break a}b=H[k+76>>2];p=L[b+36>>2];q=L[b+40>>2];i=L[b+44>>2];a=1;r=L[b+32>>2];o=L[h+512>>2];z=L[h+516>>2];m=L[h+520>>2];u=L[h+472>>2];v=L[h+464>>2];w=L[h+468>>2];n=L[h+476>>2];b=H[g+4096>>2];H[g+4096>>2]=b+1;b=(b<<6)+g|0;H[b+28>>2]=0;H[b+52>>2]=-1;L[b+12>>2]=i-y;x=O(O(u*q)+O(O(v*r)+O(p*w)));s=O(O(n*n)+O(-.5));i=O(O(u*x)+O(O(n*O(O(v*p)-O(r*w)))+O(q*s)));l=O(i+i);L[b+8>>2]=l;i=O(O(w*x)+O(O(n*O(O(u*r)-O(q*v)))+O(p*s)));j=O(i+i);L[b+4>>2]=j;i=O(O(v*x)+O(O(n*O(O(w*q)-O(p*u)))+O(r*s)));i=O(i+i);L[b>>2]=i;L[b+24>>2]=m-O(y*l);L[b+20>>2]=z-O(y*j);L[b+16>>2]=o-O(y*i)}Oa=h+576|0;return a|0}function e0(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=O(0),l=0,m=0,n=O(0),o=0,p=0,q=0,r=0,s=0,t=O(0),u=0,v=O(0),w=0,x=0,y=0,z=0,A=O(0),B=O(0),C=O(0),D=O(0),E=0,G=0;a:{q=H[a+2324>>2];if(!q){break a}r=H[a+2328>>2];if(r>>>0>=2){d=1;while(1){f=(d<<2)+a|0;h=f+2044|0;m=H[h>>2];e=f+2048|0;f=H[e>>2];b:{if(!(L[m+32>>2]>L[f+32>>2])){break b}H[h>>2]=f;H[e>>2]=m;e=d-2|0;if((e|0)<0){break b}while(1){h=(e<<2)+a|0;m=h+2048|0;j=H[m>>2];if(L[f+32>>2]>=L[j+32>>2]){break b}H[h+2052>>2]=j;H[m>>2]=f;h=(e|0)>0;e=e-1|0;if(h){continue}break}}d=d+1|0;if((r|0)!=(d|0)){continue}break}}m=a+2224|0;y=a+2048|0;c:{if(r){d=0;while(1){f=H[((d<<2)+a|0)+2048>>2];H[f+16>>2]=0;s=H[f+52>>2]-H[f+48>>2]|0;H[f+56>>2]=s;H[f+20>>2]=f;H[f+24>>2]=f;k=L[a+2224>>2];h=d;d:{while(1){if(!h){break d}h=h-1|0;j=H[((h<<2)+a|0)+2048>>2];e=H[j+24>>2];if(!(k<=O(O(L[f+8>>2]*L[e+8>>2])+O(O(L[f>>2]*L[e>>2])+O(L[f+4>>2]*L[e+4>>2]))))){continue}break}H[j+16>>2]=f;H[e+20>>2]=f;H[f+24>>2]=e;f=H[j+24>>2];H[f+56>>2]=s+H[f+56>>2]}d=d+1|0;if((r|0)!=(d|0)){continue}break}q=a+2240|0;s=H[a+2320>>2];while(1){e:{d=H[((p<<2)+a|0)+2048>>2];if(!d|H[d+24>>2]!=(d|0)){break e}f:while(1){h=H[d+16>>2];if(!h){break e}f=d;d=h;e=H[f+52>>2];l=H[f+48>>2];if(e>>>0<=l>>>0){continue}h=H[d+48>>2];j=H[d+52>>2];if(h>>>0>=j>>>0){continue}while(1){if(h>>>0>>0){o=s+(l<<6)|0;while(1){e=s+(h<<6)|0;k=O(L[e+24>>2]-L[o+24>>2]);n=O(k*k);k=O(L[e+16>>2]-L[o+16>>2]);v=O(k*k);k=O(L[e+20>>2]-L[o+20>>2]);if(L[q>>2]>O(n+O(v+O(k*k)))){j=(s+(j<<6)|0)+-64|0;i=H[j+4>>2];H[e>>2]=H[j>>2];H[e+4>>2]=i;H[e+48>>2]=H[j+48>>2];i=H[j+44>>2];H[e+40>>2]=H[j+40>>2];H[e+44>>2]=i;i=H[j+36>>2];H[e+32>>2]=H[j+32>>2];H[e+36>>2]=i;i=H[j+28>>2];H[e+24>>2]=H[j+24>>2];H[e+28>>2]=i;i=H[j+20>>2];H[e+16>>2]=H[j+16>>2];H[e+20>>2]=i;i=H[j+12>>2];H[e+8>>2]=H[j+8>>2];H[e+12>>2]=i;j=H[d+52>>2]-1|0;H[d+52>>2]=j;h=h-1|0}h=h+1|0;if(h>>>0>>0){continue}break}e=H[f+52>>2]}l=l+1|0;if(l>>>0>=e>>>0){continue f}h=H[d+48>>2];continue}}}p=p+1|0;if((r|0)!=(p|0)){continue}break}q=H[a+2324>>2];j=H[a+2328>>2];break c}j=0}p=H[a+2320>>2];s=m;r=b;d=0;l=Oa-80|0;Oa=l;m=H[a+2216>>2];g:{if(!I[m+62|0]){if(!j){break g}b=m+56|0;while(1){f=H[y+(d<<2)>>2];if(H[f+24>>2]==(f|0)){h=g&255;if(h>>>0>5){break g}g1(l+16|0,(m+N(I[b+h|0],400)|0)- -64|0,p,q,f,r);f=I[m+62|0];L[(m+(I[f+b|0]<<2)|0)+32>>2]=L[l+16>>2];g=f+1|0;F[m+62|0]=g}d=d+1|0;if((j|0)!=(d|0)){continue}break}break g}H[l+48>>2]=2139095039;H[l+32>>2]=0;H[l+36>>2]=0;H[l+40>>2]=l+16;if(!j){break g}z=m+56|0;while(1){h=H[y+(w<<2)>>2];h:{if((h|0)!=H[h+24>>2]){break h}i:{j:{i=I[m+62|0];if(!i){break j}A=L[s>>2];f=h;B=L[f+8>>2];C=L[f+4>>2];D=L[f>>2];g=0;while(1){x=g+m|0;o=m+N(I[x+56|0],400)|0;k=L[o+104>>2];n=L[o+100>>2];t=L[o+96>>2];u=H[o+448>>2];k:{if(u>>>0<2){break k}b=1;d=u-1|0;E=d&1;if((u|0)!=2){G=d&-2;e=0;while(1){d=o+(b<<6)|0;k=O(O(k+L[d+104>>2])+L[d+168>>2]);n=O(O(n+L[d+100>>2])+L[d+164>>2]);t=O(O(t+L[d+96>>2])+L[d+160>>2]);b=b+2|0;e=e+2|0;if((G|0)!=(e|0)){continue}break}}if(!E){break k}b=o+(b<<6)|0;k=O(k+L[b+104>>2]);n=O(n+L[b+100>>2]);t=O(t+L[b+96>>2])}v=k;k=O(O(1)/O(W(O(O(k*k)+O(O(t*t)+O(n*n))))));v=O(v*k);t=O(t*k);k=O(n*k);if(O(O(B*v)+O(O(D*t)+O(C*k)))>=A){d=0;e=0;if(!u){break i}while(1){b=p+(e+q<<6)|0;d=o+(e<<6)|0;H[b+48>>2]=H[d+112>>2];g=H[d+108>>2];H[b+40>>2]=H[d+104>>2];H[b+44>>2]=g;g=H[d+100>>2];H[b+32>>2]=H[d+96>>2];H[b+36>>2]=g;g=H[d+92>>2];H[b+24>>2]=H[d+88>>2];H[b+28>>2]=g;g=H[d+84>>2];H[b+16>>2]=H[d+80>>2];H[b+20>>2]=g;g=H[d+76>>2];H[b+8>>2]=H[d+72>>2];H[b+12>>2]=g;d=d- -64|0;g=H[d+4>>2];H[b>>2]=H[d>>2];H[b+4>>2]=g;d=H[o+448>>2];e=e+1|0;if(d>>>0>e>>>0){continue}break}break i}g=g+1|0;if(i>>>0>g>>>0){continue}break}if(i>>>0<6){break j}b=i-1|0;s=b&-2;o=b&1;e=0;f=m+32|0;j=m+56|0;d=1;b=0;while(1){g=d+1|0;e=L[f+(I[d+j|0]<<2)>>2]>L[f+(I[e+j|0]<<2)>>2]?d:e;e=L[f+(I[g+j|0]<<2)>>2]>L[f+(I[e+j|0]<<2)>>2]?g:e;d=d+2|0;b=b+2|0;if((s|0)!=(b|0)){continue}break}if(o){f=d;b=m+56|0;j=I[b+d|0]<<2;d=m+32|0;e=L[j+d>>2]>L[d+(I[b+e|0]<<2)>>2]?f:e}b=e+m|0;d=I[b+56|0];if(!(L[((d<<2)+m|0)+32>>2]>L[h+32>>2])){break g}d=m+N(d,400)|0;H[d+448>>2]=0;g1(l,d- -64|0,p,q,h,r);L[(m+(I[b+56|0]<<2)|0)+32>>2]=L[l>>2];break g}g1(l,(m+N(I[i+z|0],400)|0)- -64|0,p,q,h,r);b=I[m+62|0];L[(m+(I[b+z|0]<<2)|0)+32>>2]=L[l>>2];F[m+62|0]=b+1;break h}e=o- -64|0;H[l+40>>2]=h;L[l+24>>2]=v;L[l+20>>2]=k;L[l+16>>2]=t;H[l+28>>2]=0;H[l+32>>2]=0;H[l+64>>2]=q;H[l+68>>2]=d+q;H[H[h+20>>2]+16>>2]=l+16;d=H[h+56>>2]+d|0;H[h+56>>2]=d;k=L[(m+(I[x+56|0]<<2)|0)+32>>2];n=L[h+32>>2];L[h+32>>2]=k>2]+q|0;l:{m:{switch(r-1|0){case 0:b=-1;k=O(3.4028234663852886e38);while(1){d=H[h+48>>2];i=H[h+52>>2];n:{if(d>>>0>=i>>>0){break n}f=i+(d^-1)|0;g=0;u=i-d&3;if(u){while(1){n=L[(p+(d<<6)|0)+44>>2];if(n>>0<=2){break n}while(1){n=L[(p+(d<<6)|0)+44>>2];if(n>2];if(n>2];if(n>2];if(n>2];if(h){continue}break};L[l>>2]=k;b=p+(b<<6)|0;d=H[b+4>>2];H[e>>2]=H[b>>2];H[e+4>>2]=d;H[e+48>>2]=H[b+48>>2];d=H[b+44>>2];H[e+40>>2]=H[b+40>>2];H[e+44>>2]=d;d=H[b+36>>2];H[e+32>>2]=H[b+32>>2];H[e+36>>2]=d;d=H[b+28>>2];H[e+24>>2]=H[b+24>>2];H[e+28>>2]=d;d=H[b+20>>2];H[e+16>>2]=H[b+16>>2];H[e+20>>2]=d;d=H[b+12>>2];H[e+8>>2]=H[b+8>>2];H[e+12>>2]=d;H[o+448>>2]=1;break l;default:b=0;if(d>>>0<=6){while(1){e=H[h+48>>2];if(e>>>0>2]){while(1){g=o+(b<<6)|0;d=p+(e<<6)|0;H[g+112>>2]=H[d+48>>2];i=H[d+44>>2];H[g+104>>2]=H[d+40>>2];H[g+108>>2]=i;i=H[d+36>>2];H[g+96>>2]=H[d+32>>2];H[g+100>>2]=i;i=H[d+28>>2];H[g+88>>2]=H[d+24>>2];H[g+92>>2]=i;i=H[d+20>>2];H[g+80>>2]=H[d+16>>2];H[g+84>>2]=i;i=H[d+12>>2];H[g+72>>2]=H[d+8>>2];H[g+76>>2]=i;i=H[d+4>>2];g=g- -64|0;H[g>>2]=H[d>>2];H[g+4>>2]=i;b=b+1|0;e=e+1|0;if(e>>>0>2]){continue}break}}h=H[h+16>>2];if(h){continue}break}H[o+448>>2]=b;b=H[f+44>>2];H[l+8>>2]=H[f+40>>2];H[l+12>>2]=b;b=H[f+36>>2];H[l>>2]=H[f+32>>2];H[l+4>>2]=b;break l}c1(l,e,p,g,h);H[o+448>>2]=6;break l;case 2:break m}}b=0;if(d>>>0<=3){while(1){e=H[h+48>>2];if(e>>>0>2]){while(1){g=o+(b<<6)|0;d=p+(e<<6)|0;H[g+112>>2]=H[d+48>>2];i=H[d+44>>2];H[g+104>>2]=H[d+40>>2];H[g+108>>2]=i;i=H[d+36>>2];H[g+96>>2]=H[d+32>>2];H[g+100>>2]=i;i=H[d+28>>2];H[g+88>>2]=H[d+24>>2];H[g+92>>2]=i;i=H[d+20>>2];H[g+80>>2]=H[d+16>>2];H[g+84>>2]=i;i=H[d+12>>2];H[g+72>>2]=H[d+8>>2];H[g+76>>2]=i;i=H[d+4>>2];g=g- -64|0;H[g>>2]=H[d>>2];H[g+4>>2]=i;b=b+1|0;e=e+1|0;if(e>>>0>2]){continue}break}}h=H[h+16>>2];if(h){continue}break}H[o+448>>2]=b;b=H[f+44>>2];H[l+8>>2]=H[f+40>>2];H[l+12>>2]=b;b=H[f+36>>2];H[l>>2]=H[f+32>>2];H[l+4>>2]=b;break l}d1(l,e,p,g,h);H[o+448>>2]=3}L[(m+(I[x+56|0]<<2)|0)+32>>2]=L[l>>2]}w=w+1|0;if((j|0)!=(w|0)){continue}break}}Oa=l+80|0;H[a+2324>>2]=0;H[a+2328>>2]=0;if(!c){break a}H[a+2048>>2]=a;H[a+2172>>2]=a+1984;H[a+2168>>2]=a+1920;H[a+2164>>2]=a+1856;H[a+2160>>2]=a+1792;H[a+2156>>2]=a+1728;H[a+2152>>2]=a+1664;H[a+2148>>2]=a+1600;H[a+2144>>2]=a+1536;H[a+2140>>2]=a+1472;H[a+2136>>2]=a+1408;H[a+2132>>2]=a+1344;H[a+2128>>2]=a+1280;H[a+2124>>2]=a+1216;H[a+2120>>2]=a+1152;H[a+2116>>2]=a+1088;H[a+2112>>2]=a+1024;H[a+2108>>2]=a+960;H[a+2104>>2]=a+896;H[a+2100>>2]=a+832;H[a+2096>>2]=a+768;H[a+2092>>2]=a+704;H[a+2088>>2]=a+640;H[a+2084>>2]=a+576;H[a+2080>>2]=a+512;H[a+2076>>2]=a+448;H[a+2072>>2]=a+384;H[a+2068>>2]=a+320;H[a+2064>>2]=a+256;H[a+2060>>2]=a+192;H[a+2056>>2]=a+128;H[a+2052>>2]=a- -64}}function Kw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=O(0),f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=0,u=0,v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=0,D=O(0),E=O(0),G=O(0),J=O(0),K=O(0),M=O(0),P=O(0),Q=O(0),R=O(0),S=0,T=O(0),U=O(0),V=O(0),W=O(0),X=O(0),Y=O(0),Z=O(0),_=O(0),$=O(0),aa=O(0),ba=O(0),ca=O(0),da=O(0),ea=O(0),fa=O(0),ga=O(0),ha=O(0),ia=O(0),ja=O(0),ka=O(0),la=0,ma=O(0),na=O(0),oa=0,pa=O(0),qa=O(0),ra=O(0),sa=O(0),ta=O(0),ua=O(0),va=O(0),wa=O(0),xa=0,ya=0,za=0,Aa=0,Ba=0,Ca=0,Da=0,Ea=0,Fa=0,Ga=0,Ha=0,Ia=0,Ja=0;d=Oa-160|0;Oa=d;a:{if(I[a+488|0]){o5(H[33808],8,10318,1569,65948,0);break a}ya=H[a+448>>2];Ba=H[c+52>>2];H[d+152>>2]=0;H[d+144>>2]=0;H[d+148>>2]=0;H[d+136>>2]=0;H[d+140>>2]=0;H[d+128>>2]=0;H[d+132>>2]=0;H[d+120>>2]=0;H[d+124>>2]=0;H[d+112>>2]=0;H[d+116>>2]=0;t=d+112|0;Ea=Fw(Ba,ya,t);H[d+136>>2]=H[c+12>>2];H[d+144>>2]=H[c+24>>2];la=a+112|0;zw(la,t);uw(la);vw(la,b,t);Hw(a,la);ww(la,t);Iw(la,t);S=1;Fa=H[d+120>>2];t=H[d+116>>2];if(!(F[H[a+476>>2]]&1)){u=H[d+124>>2];b=H[a+348>>2];e=L[b+32>>2];m=L[b+20>>2];l=L[b+28>>2];w=L[b+16>>2];g=L[b+8>>2];o=L[b+4>>2];j=L[b+24>>2];r=L[b+12>>2];k=L[b>>2];T=O(1);D=O(1);q=O(1);i=O(1);p=L[b+80>>2];U=L[b+84>>2];x=L[b+100>>2];y=L[b+96>>2];ra=L[b+88>>2];E=O(O(U*x)-O(y*ra));ba=L[b+72>>2];sa=L[b+104>>2];ca=L[b+92>>2];G=O(O(ra*sa)-O(x*ca));da=L[b+76>>2];J=O(sa*U);K=O(O(p*E)+O(O(ba*G)+O(da*O(O(ca*y)-J))));if(K!=O(0)){h=O(O(1)/K);i=O(O(O(ba*ra)+O(da*O(-U)))*h);q=O(O(O(ba*sa)-O(y*p))*h);M=O(O(O(da*ca)-O(ra*p))*h);D=O(G*h);n=O(h*O(-O(O(ba*x)-O(y*da))));s=O(h*O(-O(O(ba*ca)-O(U*p))));f=O(h*O(-O(J+O(y*O(-ca)))));P=O(h*O(-O(O(da*sa)-O(p*x))));h=O(E*h)}E=O(0);G=O(0);J=O(1);K=O(0);ma=O(1);z=L[b+44>>2];A=O(-r);ea=O(O(O(f*A)-O(k*D))-O(j*h));fa=O(O(O(q*A)-O(k*P))-O(j*n));A=O(O(O(s*A)-O(k*M))-O(j*i));v=O(z+O(O(O(g*ea)+O(m*fa))+O(e*A)));B=O(-w);ga=O(O(O(f*B)-O(o*D))-O(l*h));ha=O(O(O(q*B)-O(o*P))-O(l*n));pa=O(O(O(s*B)-O(o*M))-O(l*i));ia=L[b+48>>2];V=O(O(O(O(k*ga)+O(r*ha))+O(j*pa))+ia);Q=f;f=O(-m);D=O(O(O(Q*f)-O(g*D))-O(e*h));P=O(O(O(q*f)-O(g*P))-O(e*n));M=O(O(O(s*f)-O(g*M))-O(e*i));ja=L[b- -64>>2];W=O(O(O(O(o*D)+O(w*P))+O(l*M))+ja);q=L[b+60>>2];h=O(O(O(O(k*D)+O(r*P))+O(j*M))+q);ka=L[b+52>>2];X=O(O(O(O(o*ga)+O(w*ha))+O(l*pa))+ka);ta=O(O(V*W)-O(h*X));s=L[b+36>>2];n=O(s+O(O(O(k*ea)+O(r*fa))+O(j*A)));Y=L[b+68>>2];na=O(O(O(O(g*D)+O(m*P))+O(e*M))+Y);Z=L[b+56>>2];f=O(O(O(O(g*ga)+O(m*ha))+O(e*pa))+Z);_=O(O(X*na)-O(W*f));$=L[b+40>>2];R=O($+O(O(O(o*ea)+O(w*fa))+O(l*A)));aa=O(na*V);i=O(O(v*ta)+O(O(n*_)+O(R*O(O(f*h)-aa))));if(i!=O(0)){i=O(O(1)/i);ma=O(O(O(n*X)+O(R*O(-V)))*i);J=O(O(O(n*na)-O(h*v))*i);E=O(O(O(R*f)-O(X*v))*i);ua=O(i*O(-O(O(n*W)-O(h*R))));K=O(i*O(-O(O(n*f)-O(V*v))));G=O(i*O(-O(aa+O(h*O(-f)))));va=O(ta*i);wa=O(i*O(-O(O(R*na)-O(v*W))));T=O(_*i)}na=O(0);ta=O(1);h=O(1);n=O(0);i=O(0);v=O(0);R=O(1);V=O(0);f=O(0);W=O(0);X=O(1);_=O(O(ia*ja)-O(q*ka));aa=O(O(ka*Y)-O(ja*Z));qa=O(Y*ia);Q=O(O(z*_)+O(O(s*aa)+O($*O(O(Z*q)-qa))));if(Q!=O(0)){f=O(O(1)/Q);X=O(O(O(s*ka)+O($*O(-ia)))*f);R=O(O(O(s*Y)-O(q*z))*f);i=O(O(O($*Z)-O(ka*z))*f);h=O(aa*f);W=O(f*O(-O(O(s*ja)-O(q*$))));V=O(f*O(-O(O(s*Z)-O(ia*z))));v=O(f*O(-O(qa+O(q*O(-Z)))));n=O(f*O(-O(O($*Y)-O(z*ja))));f=O(_*f)}q=O(0);s=O(0);Z=O(1);$=O(0);ia=O(0);ja=O(0);ka=O(1);Q=p;p=O(-o);Y=O(O(O(v*p)-O(k*h))-O(g*f));_=O(O(O(R*p)-O(k*n))-O(g*W));aa=O(O(O(V*p)-O(k*i))-O(g*X));p=O(Q+O(O(O(j*Y)+O(l*_))+O(e*aa)));Q=U;U=O(O(O(v*B)-O(r*h))-O(m*f));qa=O(O(O(R*B)-O(r*n))-O(m*W));B=O(O(O(V*B)-O(r*i))-O(m*X));z=O(Q+O(O(O(k*U)+O(o*qa))+O(g*B)));Q=x;x=O(-l);f=O(O(O(v*x)-O(j*h))-O(e*f));v=O(O(O(R*x)-O(j*n))-O(e*W));x=O(O(O(V*x)-O(j*i))-O(e*X));h=O(Q+O(O(O(r*f)+O(w*v))+O(m*x)));i=O(y+O(O(O(k*f)+O(o*v))+O(g*x)));n=O(ra+O(O(O(r*U)+O(w*qa))+O(m*B)));y=O(O(z*h)-O(i*n));g=O(ba+O(O(O(k*Y)+O(o*_))+O(g*aa)));o=O(sa+O(O(O(j*f)+O(l*v))+O(e*x)));j=O(ca+O(O(O(j*U)+O(l*qa))+O(e*B)));l=O(O(n*o)-O(h*j));k=O(da+O(O(O(r*Y)+O(w*_))+O(m*aa)));m=O(o*z);e=O(O(p*y)+O(O(g*l)+O(k*O(O(j*i)-m))));if(e!=O(0)){e=O(O(1)/e);ka=O(O(O(g*n)+O(k*O(-z)))*e);Z=O(O(O(g*o)-O(i*p))*e);ta=O(l*e);ja=O(e*O(-O(O(g*h)-O(i*k))));$=O(e*O(-O(O(g*j)-O(z*p))));na=O(e*O(-O(O(k*o)-O(p*h))));ia=O(y*e);s=O(e*O(-O(m+O(i*O(-j)))));q=O(O(O(k*j)-O(n*p))*e)}L[d+72>>2]=T;L[d+36>>2]=ta;L[d+104>>2]=ma;L[d+100>>2]=ua;L[d+96>>2]=va;L[d+92>>2]=K;L[d+88>>2]=J;L[d+84>>2]=G;L[d+80>>2]=E;L[d+76>>2]=wa;L[d+68>>2]=ka;b=d- -64|0;L[b>>2]=ja;L[d+60>>2]=ia;L[d+56>>2]=$;L[d+52>>2]=Z;L[d+48>>2]=s;L[d+44>>2]=q;L[d+40>>2]=na;L[d+32>>2]=O(O(A*va)+O(pa*ua))+O(M*ma);L[d+28>>2]=O(O(fa*va)+O(ha*ua))+O(P*ma);L[d+24>>2]=O(O(ea*va)+O(ga*ua))+O(D*ma);L[d+20>>2]=O(O(A*G)+O(pa*J))+O(M*K);L[d+16>>2]=O(O(fa*G)+O(ha*J))+O(P*K);L[d+12>>2]=O(O(ea*G)+O(ga*J))+O(D*K);L[d+8>>2]=O(O(A*T)+O(pa*wa))+O(M*E);L[d+4>>2]=O(O(fa*T)+O(ha*wa))+O(P*E);L[d>>2]=O(O(ea*T)+O(ga*wa))+O(D*E);e=L[u+24>>2];g=L[u+20>>2];T=L[d+60>>2];p=L[d+48>>2];y=L[b>>2];ba=L[d+40>>2];ca=L[d+52>>2];da=L[d+68>>2];E=L[d+44>>2];G=L[d+56>>2];J=L[d+96>>2];K=L[d+84>>2];o=L[d+20>>2];r=L[d+16>>2];ma=L[d+100>>2];z=L[d+76>>2];ea=L[d+88>>2];i=L[d+32>>2];j=L[u+16>>2];h=L[d+28>>2];fa=L[d+104>>2];k=L[u+8>>2];A=L[d+80>>2];m=L[u>>2];B=L[d+92>>2];l=L[u+4>>2];ga=L[d+36>>2];n=L[d+8>>2];f=L[d>>2];w=L[d+4>>2];ha=L[d+72>>2];q=L[d+12>>2];s=L[d+24>>2];H[t+28>>2]=0;H[t+12>>2]=0;L[t+24>>2]=-O(O(O(i*e)+O(O(s*j)+O(h*g)))+O(O(O(m*A)+O(l*B))+O(k*fa)));L[t+20>>2]=-O(O(O(o*e)+O(O(q*j)+O(r*g)))+O(O(O(m*z)+O(l*ea))+O(k*ma)));L[t+16>>2]=-O(O(O(n*e)+O(O(f*j)+O(w*g)))+O(O(O(m*ha)+O(l*K))+O(k*J)));L[t+8>>2]=-O(O(O(O(m*n)+O(l*o))+O(k*i))+O(O(O(j*E)+O(g*G))+O(e*da)));L[t+4>>2]=-O(O(O(O(m*w)+O(l*r))+O(k*h))+O(O(O(j*ba)+O(g*ca))+O(e*y)));L[t>>2]=-O(O(O(O(m*f)+O(l*q))+O(k*s))+O(O(O(j*ga)+O(g*p))+O(e*T)))}if(ya>>>0>1){Ga=H[c+16>>2];while(1){C=H[la+340>>2]+N(S,160)|0;e=L[C+124>>2];za=S<<5;b=t+(H[(za+H[a+444>>2]|0)+24>>2]<<5)|0;r=L[b>>2];g=L[C+120>>2];i=L[b+4>>2];n=O(O(O(e*r)-O(g*i))+L[b+24>>2]);h=L[b+8>>2];f=O(g*h);g=L[C+128>>2];f=O(O(f-O(g*r))+L[b+20>>2]);w=O(O(O(g*i)-O(e*h))+L[b+16>>2]);b=H[a+456>>2]+N(S,80)|0;u=I[b+76|0];b:{if(u){Ca=(H[b+72>>2]<<2)+Ga|0;b=0;while(1){c=b<<2;oa=c+d|0;p=L[(c+C|0)+132>>2];c=C+(b<<5)|0;L[oa>>2]=p-O(O(O(L[c+24>>2]*h)+O(O(L[c+16>>2]*r)+O(i*L[c+20>>2])))+O(O(L[c+8>>2]*n)+O(O(L[c>>2]*w)+O(f*L[c+4>>2]))));b=b+1|0;if((u|0)!=(b|0)){continue}break}Ha=u&254;Ia=u&1;Da=H[a+360>>2];b=0;while(1){C=b<<2;xa=C+Ca|0;H[xa>>2]=0;e=O(0);c=0;Aa=0;if((u|0)!=1){while(1){oa=N(S,36)+Da|0;e=O(O(L[C+(oa+N(c,12)|0)>>2]*L[(c<<2)+d>>2])+e);L[xa>>2]=e;Ja=oa;oa=c|1;e=O(O(L[C+(Ja+N(oa,12)|0)>>2]*L[(oa<<2)+d>>2])+e);L[xa>>2]=e;c=c+2|0;Aa=Aa+2|0;if((Ha|0)!=(Aa|0)){continue}break}}if(Ia){L[xa>>2]=O(L[C+((N(S,36)+Da|0)+N(c,12)|0)>>2]*L[(c<<2)+d>>2])+e}b=b+1|0;if((u|0)!=(b|0)){continue}break}o=O(0);if(!u){e=O(0);g=O(0);j=O(0);k=O(0);m=O(0);break b}C=H[a+384>>2];b=0;m=O(0);k=O(0);j=O(0);g=O(0);e=O(0);while(1){l=L[(b<<2)+Ca>>2];c=(C+N(S,76)|0)+N(b,24)|0;k=O(k+O(l*L[c+12>>2]));j=O(j+O(l*L[c+8>>2]));g=O(g+O(l*L[c+4>>2]));e=O(e+O(l*L[c>>2]));o=O(o+O(l*L[c+20>>2]));m=O(m+O(l*L[c+16>>2]));b=b+1|0;if((u|0)!=(b|0)){continue}break}break b}e=O(0);g=O(0);j=O(0);k=O(0);m=O(0);o=O(0)}b=za+Fa|0;l=L[b+20>>2];q=L[b+24>>2];s=L[b>>2];T=L[b+4>>2];p=L[b+8>>2];y=L[b+16>>2];b=t+za|0;H[b+28>>2]=0;H[b+12>>2]=0;L[b+16>>2]=k+O(w+y);L[b+8>>2]=j+O(h+p);L[b+4>>2]=g+O(i+T);L[b>>2]=e+O(r+s);L[b+24>>2]=o+O(n+q);L[b+20>>2]=m+O(f+l);S=S+1|0;if((ya|0)!=(S|0)){continue}break}}Lw(Ba,Ea)}Oa=d+160|0}function Du(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=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=0,s=O(0),t=O(0),u=O(0),v=O(0),w=0,x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),G=O(0),J=O(0),K=O(0),M=O(0),P=O(0),Q=O(0),R=0,S=O(0),T=O(0),U=O(0),V=O(0),X=O(0),Y=O(0),Z=O(0),_=O(0),$=0,aa=0,ba=0;h=Oa-544|0;Oa=h;S=L[b+12>>2];T=L[b+8>>2];f=H[f>>2];G=L[b+4>>2];L[h+528>>2]=L[e>>2];u=L[c+20>>2];x=L[c+24>>2];p=L[c>>2];n=L[c+4>>2];l=L[c+8>>2];s=L[c+12>>2];t=L[c+16>>2];c=0;H[h+524>>2]=0;L[h+520>>2]=x;L[h+516>>2]=u;L[h+512>>2]=t;L[h+508>>2]=s;L[h+504>>2]=l;L[h+500>>2]=n;L[h+496>>2]=p;y=L[d+20>>2];A=L[d+24>>2];k=L[d>>2];i=L[d+4>>2];m=L[d+8>>2];j=L[d+12>>2];U=L[d+16>>2];H[h+492>>2]=0;L[h+488>>2]=A;L[h+484>>2]=y;L[h+480>>2]=U;L[h+476>>2]=j;L[h+472>>2]=m;L[h+468>>2]=i;L[h+464>>2]=k;v=O(O(O(n*m)-O(i*l))+O(O(p*j)-O(s*k)));C=O(v+v);q=O(O(O(l*k)-O(m*p))+O(O(n*j)-O(s*i)));B=O(q+q);M=O(O(1)-O(v*C));P=O(q*B);J=O(M-P);o=O(O(O(p*i)-O(k*n))+O(O(l*j)-O(s*m)));Q=O(o+o);E=O(o*Q);M=O(M-E);P=O(O(O(1)-P)-E);E=L[a+4>>2];L[h+448>>2]=E;Y=L[e+8>>2];z=O(Y*O(.15000000596046448));D=G<=T?G:T;Z=D<=S?D:S;X=O(Z*O(.15000000596046448));z=zE?E:z;z=O(o*B);V=O(-k);p=O(O(s*j)-O(O(O(p*V)-O(n*i))-O(m*l)));n=O(p*C);s=O(z-n);l=O(o*C);D=O(p*B);B=O(l+D);z=O(z+n);n=O(q*C);K=O(p*Q);C=O(n-K);Q=O(l-D);D=O(n+K);t=O(t-U);u=O(u-y);x=O(x-A);y=O(O(O(V*t)-O(u*i))-O(m*x));A=O(O(j*j)+O(-.5));n=O(O(O(j*O(O(i*t)-O(k*u)))+O(A*x))-O(m*y));n=O(n+n);l=O(O(O(A*u)+O(j*O(O(k*x)-O(m*t))))-O(i*y));l=O(l+l);j=O(O(O(A*t)+O(j*O(O(m*u)-O(i*x))))-O(k*y));j=O(j+j);m=L[a+8>>2];a=I[f+64|0];if(a){i=O(E*O(.800000011920929));x=O(i*i);c=a;while(1){r=H[f+76>>2];c=c-1|0;d=r+N(c,48)|0;k=L[d+24>>2];y=L[d+40>>2];i=L[d+8>>2];t=L[d>>2];u=L[d+4>>2];A=O(n+O(O(J*i)+O(O(Q*t)+O(z*u))));U=O(j+O(O(B*i)+O(O(P*t)+O(C*u))));V=L[d+16>>2];K=L[d+32>>2];t=O(l+O(O(s*i)+O(O(D*t)+O(M*u))));u=L[d+20>>2];_=L[d+36>>2];i=O(O(y*O(A-k))+O(O(O(U-V)*K)+O(O(t-u)*_)));k=O(k-O(A-O(y*i)));A=O(k*k);k=O(V-O(U-O(K*i)));K=O(k*k);k=O(u-O(t-O(_*i)));a:{if(x>2];H[d>>2]=H[r>>2];H[d+4>>2]=w;w=H[r+44>>2];H[d+40>>2]=H[r+40>>2];H[d+44>>2]=w;w=H[r+36>>2];H[d+32>>2]=H[r+32>>2];H[d+36>>2]=w;w=H[r+28>>2];H[d+24>>2]=H[r+24>>2];H[d+28>>2]=w;w=H[r+20>>2];H[d+16>>2]=H[r+16>>2];H[d+20>>2]=w;w=H[r+12>>2];H[d+8>>2]=H[r+8>>2];H[d+12>>2]=w;break a}L[d+44>>2]=i}if(c){continue}break}c=I[f+64|0]}b:{c:{d:{e:{if((a|0)!=(c&255)){break e}i=O(j-L[f+16>>2]);k=O(-i);t=O(l-L[f+20>>2]);u=O(-t);x=O(n-L[f+24>>2]);y=O(-x);d=a<<2;i=i>k?i:k;k=u=k?i:k;i=(x>y?x:y)>=O(0)?i:O(0);if(O(E*L[d+90356>>2])<(i<=k?k:i)){break e}if(!(L[d+90388>>2]>O(O(p*L[f+12>>2])+O(O(o*L[f+8>>2])+O(O(v*L[f>>2])+O(q*L[f+4>>2])))))){break d}}L[f+16>>2]=j;L[f+12>>2]=p;L[f+8>>2]=o;L[f+4>>2]=q;L[f>>2]=v;H[f+28>>2]=0;L[f+24>>2]=n;L[f+20>>2]=l;H[h+444>>2]=0;L[h+440>>2]=n;L[h+436>>2]=l;H[h+428>>2]=0;L[h+424>>2]=J;L[h+420>>2]=s;H[h+412>>2]=0;L[h+408>>2]=z;L[h+404>>2]=M;L[h+432>>2]=j;H[h+396>>2]=0;L[h+416>>2]=B;L[h+384>>2]=P;L[h+400>>2]=C;L[h+388>>2]=D;L[h+392>>2]=Q;H[h+380>>2]=0;L[h+376>>2]=S;L[h+372>>2]=T;F[h+352|0]=0;H[h+348>>2]=3;L[h+368>>2]=G;i=O(Z*O(.05000000074505806));L[h+344>>2]=i;L[h+340>>2]=i;L[h+336>>2]=X;d=H[h+484>>2];H[h+320>>2]=H[h+480>>2];H[h+324>>2]=d;d=H[h+492>>2];H[h+328>>2]=H[h+488>>2];H[h+332>>2]=d;H[h+300>>2]=0;i=O(m*O(0));k=O(O(J*i)+O(O(Q*m)+O(z*i)));L[h+296>>2]=n-k;s=O(O(s*i)+O(O(D*m)+O(M*i)));L[h+292>>2]=l-s;H[h+284>>2]=0;L[h+280>>2]=k+n;L[h+276>>2]=s+l;H[h+252>>2]=4;d=H[h+436>>2];H[h+224>>2]=H[h+432>>2];H[h+228>>2]=d;d=H[h+444>>2];H[h+232>>2]=H[h+440>>2];H[h+236>>2]=d;d=H[h+460>>2];H[h+312>>2]=H[h+456>>2];H[h+316>>2]=d;d=H[h+452>>2];H[h+304>>2]=H[h+448>>2];H[h+308>>2]=d;i=O(O(B*i)+O(O(P*m)+O(C*i)));L[h+288>>2]=j-i;L[h+272>>2]=i+j;i=L[h+304>>2];d=1;F[h+256|0]=1;L[h+248>>2]=i;L[h+244>>2]=i;L[h+240>>2]=i;H[h+216>>2]=125948;H[h+220>>2]=h+224;H[h+208>>2]=126608;H[h+212>>2]=h+320;H[h+168>>2]=0;H[h+172>>2]=0;r=h+160|0;H[r>>2]=0;H[r+4>>2]=0;H[h+152>>2]=0;H[h+156>>2]=0;w=h+144|0;H[w>>2]=0;H[w+4>>2]=0;H[h+136>>2]=0;H[h+140>>2]=0;H[h+128>>2]=0;H[h+132>>2]=0;H[h+192>>2]=0;H[h+124>>2]=0;L[h+120>>2]=L[h+232>>2]-L[h+328>>2];L[h+116>>2]=L[h+228>>2]-L[h+324>>2];L[h+112>>2]=L[h+224>>2]-L[h+320>>2];$=f+67|0;aa=f+71|0;ba=NW(h+216|0,h+208|0,h+112|0,h+528|0,1,$,aa,f+66|0,h+128|0);H[h+108>>2]=0;f:{g:{h:{switch(ba|0){case 4:L[h+96>>2]=L[b+4>>2];L[h+100>>2]=L[b+8>>2];L[h+104>>2]=L[b+12>>2];R=b0(h+224|0,h+320|0,h+96|0,h+384|0,h+496|0,h+464|0,g,h+108|0,g,f,r,w,L[h+336>>2],h+528|0,1,L[e+8>>2]);break b;default:r=I[f+66|0];L[h+80>>2]=Y;R=H[h+92>>2];H[h+8>>2]=H[h+88>>2];H[h+12>>2]=R;R=H[h+84>>2];H[h>>2]=H[h+80>>2];H[h+4>>2]=R;if((wZ(h+216|0,h+208|0,$,aa,r,1,h,h+128|0)|0)!=5){break g}break;case 2:break h;case 0:break b}}i=L[h+164>>2];m=L[h+168>>2];k=L[h+160>>2];s=L[h+192>>2];M=L[h+392>>2];P=L[h+384>>2];z=L[h+388>>2];Q=L[h+408>>2];D=L[h+400>>2];t=L[h+404>>2];G=L[h+424>>2];B=L[h+440>>2];C=L[h+136>>2];J=L[h+416>>2];u=L[h+432>>2];S=L[h+128>>2];x=L[h+420>>2];y=L[h+436>>2];T=L[h+132>>2];H[g+12>>2]=0;K=G;G=O(C-B);B=O(S-u);A=O(J*B);J=O(T-y);L[g+8>>2]=O(K*G)+O(A+O(x*J));L[g+4>>2]=O(Q*G)+O(O(D*B)+O(J*t));L[g>>2]=O(M*G)+O(O(P*B)+O(J*z));d=H[h+148>>2];H[g+16>>2]=H[h+144>>2];H[g+20>>2]=d;d=H[h+156>>2];H[g+24>>2]=H[h+152>>2];H[g+28>>2]=d;H[h+108>>2]=1;L[g+44>>2]=s;L[g+40>>2]=m;L[g+36>>2]=i;L[g+32>>2]=k;d=0;if(!a){break g}if((a|0)==(c&255)){break f}}L[h+64>>2]=L[b+4>>2];L[h+68>>2]=L[b+8>>2];L[h+72>>2]=L[b+12>>2];R=b0(h+224|0,h+320|0,h- -64|0,h+384|0,h+496|0,h+464|0,g,h+108|0,g,f,h+160|0,h+144|0,L[h+336>>2],h+528|0,d,L[e+8>>2]);break b}L[h+48>>2]=E*O(.10000000149011612);L[h+44>>2]=s;L[h+40>>2]=m;L[h+36>>2]=i;L[h+32>>2]=k;H[h+28>>2]=0;i=O(C-n);j=O(S-j);m=O(T-l);k=O(O(o*i)+O(O(v*j)+O(q*m)));n=O(O(p*p)+O(-.5));l=O(O(O(n*i)-O(p*O(O(v*m)-O(j*q))))+O(o*k));L[h+24>>2]=l+l;l=O(O(q*k)+O(O(n*m)-O(p*O(O(o*j)-O(i*v)))));L[h+20>>2]=l+l;j=O(O(v*k)+O(O(n*j)-O(p*O(O(q*i)-O(m*o)))));L[h+16>>2]=j+j;a=h+16|0;a1(f,a,h+144|0,h+32|0,h+48|0);H[h+28>>2]=0;j=L[h+476>>2];o=O(O(j*j)+O(-.5));i=L[h+472>>2];m=L[h+168>>2];q=L[h+464>>2];p=L[h+160>>2];k=L[h+468>>2];v=L[h+164>>2];n=O(O(i*m)+O(O(q*p)+O(k*v)));l=O(O(O(j*O(O(q*v)-O(p*k)))+O(o*m))+O(i*n));L[h+24>>2]=l+l;l=O(O(k*n)+O(O(o*v)+O(j*O(O(i*p)-O(m*q)))));L[h+20>>2]=l+l;j=O(O(q*n)+O(O(p*o)+O(j*O(O(k*m)-O(v*i)))));L[h+16>>2]=j+j;Y0(f,g,a,a,h+496|0,h+448|0,h+528|0);break c}if(!a){break b}c=1;b=H[f+76>>2];m=L[b+32>>2];j=m;q=L[b+36>>2];o=q;p=L[b+40>>2];i=p;i:{if((a|0)==1){break i}d=a-1|0;e=d&1;i=p;o=q;j=m;if((a|0)!=2){r=d&-2;d=0;while(1){a=b+N(c,48)|0;j=O(O(j+L[a+32>>2])+L[a+80>>2]);i=O(O(i+L[a+40>>2])+L[a+88>>2]);o=O(O(o+L[a+36>>2])+L[a+84>>2]);c=c+2|0;d=d+2|0;if((r|0)!=(d|0)){continue}break}}if(!e){break i}a=b+N(c,48)|0;j=O(j+L[a+32>>2]);i=O(i+L[a+40>>2]);o=O(o+L[a+36>>2])}H[h+236>>2]=0;k=L[h+472>>2];a=O(O(i*i)+O(O(j*j)+O(o*o)))>O(1.1920928955078125e-7);i=a?i:p;p=L[h+464>>2];m=a?j:m;v=L[h+468>>2];o=a?o:q;q=O(O(k*i)+O(O(p*m)+O(v*o)));j=L[h+476>>2];n=O(O(j*j)+O(-.5));l=O(O(k*q)+O(O(j*O(O(p*o)-O(m*v)))+O(i*n)));l=O(l+l);s=O(O(p*q)+O(O(j*O(O(v*i)-O(o*k)))+O(m*n)));s=O(s+s);j=O(O(v*q)+O(O(j*O(O(k*m)-O(i*p)))+O(o*n)));o=O(j+j);j=O(O(1)/O(W(O(O(l*l)+O(O(s*s)+O(o*o))))));L[h+232>>2]=l*j;L[h+228>>2]=o*j;L[h+224>>2]=s*j;a=h+224|0;Y0(f,g,a,a,h+496|0,h+448|0,h+528|0)}R=1}Oa=h+544|0;return R|0}function Cw(a,b,c,d,e,f,g,h,i,j,k,l,m){var n=0,o=O(0),p=O(0),q=O(0),r=0,s=0,t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=0,B=O(0),C=O(0),D=O(0),E=O(0),F=O(0),G=O(0),J=O(0),K=O(0),M=O(0),P=O(0),Q=0,R=O(0),S=O(0),T=O(0),U=O(0),V=O(0),W=O(0),X=0,Y=O(0),Z=O(0),_=O(0),$=O(0),aa=O(0),ba=O(0),ca=O(0),da=O(0),ea=O(0),fa=O(0),ga=O(0),ha=O(0),ia=O(0),ja=O(0),ka=O(0),la=O(0),ma=O(0),na=O(0),oa=0,pa=O(0),qa=O(0),ra=0,sa=0,ta=O(0),ua=O(0),va=0,wa=0,xa=O(0),ya=O(0),za=O(0),Aa=O(0),Ba=O(0),Ca=O(0),Da=O(0),Ea=O(0),Fa=O(0),Ga=O(0),Ha=O(0),Ia=O(0),Ja=O(0),Ka=0,La=0,Ma=0;n=Oa-224|0;Oa=n;A=H[b+456>>2];Q=H[b+452>>2];va=H[b+444>>2];H[n+216>>2]=0;H[n+220>>2]=0;H[n+208>>2]=0;H[n+212>>2]=0;H[n+200>>2]=0;H[n+204>>2]=0;H[n+192>>2]=0;H[n+196>>2]=0;s=j<<5;ra=s+va|0;r=H[b+228>>2]+(H[ra+24>>2]<<5)|0;o=L[r+16>>2];t=L[r+8>>2];B=L[r+4>>2];p=L[r>>2];J=L[r+24>>2];K=L[r+20>>2];M=L[k+24>>2];q=L[k+20>>2];T=L[k+16>>2];U=L[k+8>>2];y=L[k+4>>2];z=L[k>>2];wa=(Q+N(j,160)|0)+120|0;cw(n+160|0,wa,H[b+348>>2]+N(j,112)|0,H[b+360>>2]+N(j,36)|0,H[b+384>>2]+N(j,76)|0,s+H[b+264>>2]|0,k);k=s+H[b+228>>2]|0;u=L[k>>2];v=L[k+4>>2];w=L[k+8>>2];V=L[k+16>>2];E=L[k+20>>2];ca=L[n+184>>2];R=O(L[k+24>>2]+ca);L[n+152>>2]=R;da=L[n+180>>2];E=O(E+da);L[n+148>>2]=E;H[n+156>>2]=0;ea=L[n+176>>2];Z=O(V+ea);L[n+144>>2]=Z;H[n+140>>2]=0;fa=L[n+168>>2];w=O(w+fa);L[n+136>>2]=w;ga=L[n+164>>2];v=O(v+ga);L[n+132>>2]=v;ha=L[n+160>>2];u=O(u+ha);L[n+128>>2]=u;L[n+120>>2]=ca;L[n+116>>2]=da;L[n+104>>2]=fa;L[n+100>>2]=ga;L[n+96>>2]=ha;L[n+112>>2]=ea;L[n+108>>2]=L[n+172>>2];L[n+124>>2]=L[n+188>>2];k=A+N(j,80)|0;A=I[k+78|0];X=I[k+79|0];a:{if(!(A|X)){A=H[b+312>>2];T=O(0);U=O(0);V=O(0);J=O(0);K=O(0);M=O(0);break a}z=O(z+p);y=O(y+B);ia=O(U+t);t=L[H[ra+20>>2]+264>>2];B=O(-t);la=L[n+216>>2];ma=L[n+212>>2];na=L[n+208>>2];F=L[n+200>>2];W=L[n+196>>2];C=L[n+192>>2];Q=I[k+76|0];b:{if(!Q){T=O(0);U=O(0);V=O(0);J=O(0);K=O(0);M=O(0);break b}oa=H[b+180>>2]+(H[k+72>>2]<<2)|0;sa=H[b+288>>2];S=O(M+J);_=O(q+K);$=O(T+o);s=0;aa=L[n+120>>2];Y=L[n+116>>2];ja=L[n+112>>2];ka=L[n+104>>2];ta=L[n+100>>2];ua=L[n+96>>2];M=O(0);K=O(0);J=O(0);V=O(0);U=O(0);T=O(0);while(1){c:{if(!(A>>>s&1)){break c}k=H[l>>2];H[l>>2]=k+1;k=sa+N(k,176)|0;q=L[k+132>>2];o=L[oa+(s<<2)>>2];d:{if(I[k+168|0]){break d}if(o>O(6.2831854820251465)){q=O(q+O(-12.566370964050293));o=O(o+O(-12.566370964050293));break d}if(!(o>2];p=L[k+100>>2];P=L[k+156>>2];G=O(-P);ba=L[k+160>>2];pa=O(ba*L[k+164>>2]);xa=L[k+44>>2];ya=L[k+36>>2];za=L[k+40>>2];Aa=L[k+32>>2];Ba=L[k+24>>2];Ca=L[k+28>>2];Da=L[k+20>>2];Ea=L[k+12>>2];Fa=L[k+16>>2];Ga=L[k+8>>2];Ha=L[k>>2];Ia=L[k+4>>2];Ja=O(O(O(O(xa*w)+O(O(ya*u)+O(za*v)))+O(O(Aa*R)+O(O(Ba*Z)+O(Ca*E))))-O(O(O(Da*ia)+O(O(Ea*z)+O(y*Fa)))+O(O(Ga*S)+O(O(Ha*$)+O(_*Ia)))));D=L[k+96>>2];qa=O(pa-O(Ja*D));G=G>qa?G:qa;P=O((G>P?P:G)-pa);L[k+160>>2]=ba+P;G=L[k+148>>2];ba=O(-G);qa=O(O(O(O(O(x*p)*i)+q)-o)*L[k+128>>2]);q=x;x=L[k+152>>2];pa=O(O(P*p)+Ja);q=O(qa+O(q+O(O(L[k+144>>2]*x)+O(L[k+136>>2]*pa))));q=qG?G:q;q=O(G-x);ba=O(P+q);p=O(O(q*p)+pa);e:{f:{if(g){break f}x=L[k+108>>2];r=xx){P=L[k+116>>2];o=O(p+O(O(O(x-q)*d)*(r?L[k+120>>2]:O(1))));o=ot?t:o)-p)*D));o=O((o>2]=P+o;break e}x=o;o=L[k+104>>2];r=xq)){break f}x=L[k+112>>2];o=O(p+O(O(O(o-q)*d)*(r?L[k+120>>2]:O(1))));o=ot?t:o)-p)*D));o=O((o>O(0)?o:O(0))-x);L[k+112>>2]=x+o;break e}o=O(D*O(-p));if(p>O(0)){p=L[k+112>>2];q=O(-p);o=o>q?o:q;L[k+112>>2]=p+o;break e}p=L[k+116>>2];q=O(-p);o=o>2]=p+o}o=O(ba+o);if(o==O(0)){break c}L[k+152>>2]=G;la=O(la-O(o*xa));ma=O(ma-O(o*za));na=O(na-O(o*ya));F=O(F-O(o*Aa));W=O(W-O(o*Ca));C=O(C-O(o*Ba));M=O(M+O(Da*o));K=O(K+O(Fa*o));J=O(J+O(Ea*o));V=O(V+O(Ga*o));U=O(U+O(Ia*o));T=O(T+O(Ha*o));p=O(-o);q=O(L[k+72>>2]*p);u=O(u+q);z=O(z-O(o*L[k+48>>2]));D=O(L[k+92>>2]*p);R=O(R+D);Y=O(L[k+88>>2]*p);E=O(E+Y);ja=O(L[k+84>>2]*p);Z=O(Z+ja);ka=O(L[k+80>>2]*p);w=O(w+ka);p=O(L[k+76>>2]*p);v=O(v+p);S=O(S-O(o*L[k+68>>2]));_=O(_-O(o*L[k- -64>>2]));$=O($-O(o*L[k+60>>2]));ia=O(ia-O(o*L[k+56>>2]));y=O(y-O(o*L[k+52>>2]));aa=O(D+ca);ca=aa;Y=O(Y+da);da=Y;ja=O(ja+ea);ea=ja;ka=O(ka+fa);fa=ka;ta=O(p+ga);ga=ta;ua=O(q+ha);ha=ua}s=s+1|0;if((Q|0)!=(s|0)){continue}break}L[n+120>>2]=aa;L[n+116>>2]=Y;L[n+112>>2]=ja;L[n+104>>2]=ka;L[n+100>>2]=ta;L[n+96>>2]=ua}L[n+200>>2]=F;L[n+196>>2]=W;L[n+192>>2]=C;A=H[b+312>>2];s=Q-X|0;if(Q>>>0>s>>>0){X=(j<<5)+A|0;sa=H[b+300>>2];k=H[m>>2];S=L[n+120>>2];_=L[n+116>>2];$=L[n+112>>2];q=L[n+104>>2];C=L[n+100>>2];aa=L[n+96>>2];while(1){r=k+1|0;H[m>>2]=r;k=sa+N(k,80)|0;F=L[k+56>>2];W=L[k+48>>2];D=L[k+52>>2];o=O(O(O(F*w)+O(O(W*u)+O(D*v)))-O(O(F*ia)+O(O(W*z)+O(y*D))));p=O(-o);Y=L[k+60>>2];if(!g){oa=(H[ra+24>>2]<<5)+A|0;p=O(O(O(L[k+64>>2]-O(O(O(F*L[X+8>>2])+O(O(W*L[X>>2])+O(D*L[X+4>>2])))-O(O(F*L[oa+8>>2])+O(O(W*L[oa>>2])+O(D*L[oa+4>>2])))))*L[k+68>>2])+p)}p=O(o+p);p=pt?t:p)-o));if(o!=O(0)){p=O(F*o);la=O(la-p);q=O(D*o);ma=O(ma-q);C=O(W*o);na=O(na-C);M=O(M+p);K=O(K+q);J=O(J+C);p=O(-o);S=O(L[k+24>>2]*p);u=O(S+u);ia=O(ia-O(o*L[k+8>>2]));y=O(y-O(o*L[k+4>>2]));z=O(z-O(o*L[k>>2]));o=O(L[k+44>>2]*p);R=O(o+R);q=O(L[k+40>>2]*p);E=O(q+E);C=O(L[k+36>>2]*p);Z=O(C+Z);F=O(L[k+32>>2]*p);w=O(F+w);p=O(L[k+28>>2]*p);v=O(p+v);_=O(q+da);da=_;$=O(C+ea);ea=$;q=O(F+fa);fa=q;C=O(p+ga);ga=C;aa=O(S+ha);ha=aa;S=O(o+ca);ca=S}k=r;s=s+1|0;if((Q|0)!=(s|0)){continue}break}L[n+120>>2]=S;L[n+116>>2]=_;L[n+112>>2]=$;L[n+104>>2]=q;L[n+100>>2]=C;L[n+96>>2]=aa}L[n+136>>2]=w;L[n+132>>2]=v;L[n+128>>2]=u;L[n+216>>2]=la;L[n+212>>2]=ma;L[n+208>>2]=na;L[n+152>>2]=R;L[n+148>>2]=E;L[n+144>>2]=Z}k=j<<2;r=H[k+H[b+408>>2]>>2];Q=j<<5;X=Ra[H[H[b>>2]+168>>2]](b,j)|0;if(r){t=g?O(0):O(-3.4028234663852886e38);A=A+Q|0;k=H[k+H[b+420>>2]>>2];s=0;while(1){Aw(H[b+656>>2]+(k<<5)|0,n+128|0,n+192|0,n+96|0,A,X,h,i,t);k=k+1|0;s=s+1|0;if((r|0)!=(s|0)){continue}break}}k=Q+va|0;r=H[k+4>>2];k=H[k>>2];g:{if(!(r|k)){o=L[n+216>>2];w=L[n+212>>2];v=L[n+208>>2];u=L[n+200>>2];z=L[n+196>>2];y=L[n+192>>2];break g}o=L[n+216>>2];w=L[n+212>>2];v=L[n+208>>2];u=L[n+200>>2];z=L[n+196>>2];y=L[n+192>>2];A=N(j,192);while(1){s=k;Cw(n- -64|0,b,c,d,e,f,g,h,i,(Ka=f7(k),La=f7(r)+32|0,Ma=k,Ma?Ka:La),n+96|0,l,m);t=L[n+88>>2];o=O(t+o);B=L[n+84>>2];w=O(B+w);p=L[n+80>>2];v=O(p+v);q=L[n+72>>2];u=O(q+u);R=L[n+68>>2];z=O(R+z);E=L[n+64>>2];y=O(E+y);k=k&k-1;r=r&r-!s;if(k|r){s=H[b+336>>2];H[n+28>>2]=0;L[n+24>>2]=-t;L[n+20>>2]=-B;L[n+16>>2]=-p;H[n+12>>2]=0;L[n+8>>2]=-q;L[n+4>>2]=-R;L[n>>2]=-E;Uv(n+32|0,s+A|0,n);L[n+96>>2]=L[n+32>>2]+L[n+96>>2];L[n+100>>2]=L[n+36>>2]+L[n+100>>2];L[n+104>>2]=L[n+40>>2]+L[n+104>>2];L[n+112>>2]=L[n+48>>2]+L[n+112>>2];L[n+116>>2]=L[n+52>>2]+L[n+116>>2];L[n+120>>2]=L[n+56>>2]+L[n+120>>2];continue}break}L[n+216>>2]=o;L[n+212>>2]=w;L[n+208>>2]=v;L[n+200>>2]=u;L[n+196>>2]=z;L[n+192>>2]=y;M=O(M+O(0));K=O(K+O(0));J=O(J+O(0));V=O(V+O(0));U=O(U+O(0));T=O(T+O(0))}e=(j<<5)+e|0;H[e+28>>2]=0;L[e+16>>2]=v;H[e+12>>2]=0;L[e+8>>2]=u;L[e+4>>2]=z;L[e>>2]=y;L[e+24>>2]=o;L[e+20>>2]=w;gw(n- -64|0,H[b+396>>2]+N(j,96)|0,wa,H[b+384>>2]+N(j,76)|0,n+192|0);c=L[n+84>>2];d=L[n+88>>2];i=L[n+64>>2];t=L[n+68>>2];B=L[n+72>>2];o=L[n+80>>2];H[a+28>>2]=0;H[a+12>>2]=0;L[a+24>>2]=M+d;L[a+20>>2]=K+c;L[a+16>>2]=J+o;L[a+8>>2]=V+B;L[a+4>>2]=U+t;L[a>>2]=T+i;Oa=n+224|0}function g$(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=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=0,A=O(0),B=O(0),C=O(0),D=O(0),E=0,G=0,J=O(0),K=O(0),M=O(0),P=O(0),Q=O(0),T=O(0),U=O(0),V=O(0),X=O(0),Y=O(0),Z=O(0),_=O(0),$=O(0),aa=O(0),ba=O(0),ca=O(0),da=O(0),ea=O(0),fa=O(0),ga=O(0),ha=O(0),ia=O(0),ja=O(0),ka=O(0),la=O(0),ma=O(0),na=O(0),oa=0;b=Oa-272|0;Oa=b;f=1;j=L[a- -64>>2];r=L[a+48>>2];n=L[c+8>>2];p=L[a+16>>2];v=L[c>>2];h=L[c+4>>2];l=L[a+32>>2];m=O(j+O(O(r*n)+O(O(p*v)+O(h*l))));k=L[d+8>>2];s=L[d>>2];i=L[d+4>>2];q=O(j+O(O(r*k)+O(O(p*s)+O(i*l))));o=m>2];B=O(r*j);A=p;p=L[e>>2];r=L[e+4>>2];l=O(w+O(B+O(O(A*p)+O(r*l))));w=l>o?o:l;o=L[a+80>>2];a:{if(w>o){break a}m=m>q?m:q;if(O(-o)>(l>2];o=L[a+52>>2];t=L[a+20>>2];u=L[a+36>>2];m=O(l+O(O(o*n)+O(O(t*v)+O(h*u))));q=O(l+O(O(o*k)+O(O(t*s)+O(i*u))));x=m>2];if((l>x?x:l)>o){break a}m=m>q?m:q;if(O(-o)>(l>2];o=L[a+56>>2];t=L[a+24>>2];u=L[a+40>>2];m=O(l+O(O(o*n)+O(O(t*v)+O(h*u))));q=O(l+O(O(o*k)+O(O(t*s)+O(i*u))));x=m>2];if((l>x?x:l)>o){break a}m=m>q?m:q;if(O(-o)>(l>2];o=L[a+328>>2];t=L[a+344>>2];q=O(O(l*j)+O(O(o*p)+O(r*t)));u=L[a+356>>2];x=L[a+324>>2];y=L[a+340>>2];m=O(O(u*j)+O(O(x*p)+O(r*y)));w=L[a+352>>2];C=L[a+320>>2];D=L[a+336>>2];p=O(O(w*j)+O(O(C*p)+O(r*D)));r=O(O(l*k)+O(O(o*s)+O(i*t)));j=O(O(u*k)+O(O(x*s)+O(i*y)));s=O(O(w*k)+O(O(C*s)+O(i*D)));i=O(O(l*n)+O(O(o*v)+O(h*t)));k=O(O(u*n)+O(O(x*v)+O(h*y)));v=O(O(w*n)+O(O(C*v)+O(h*D)))}H[b+268>>2]=0;L[b+264>>2]=q;L[b+260>>2]=m;L[b+256>>2]=p;H[b+252>>2]=0;L[b+248>>2]=r;L[b+244>>2]=j;L[b+240>>2]=s;H[b+236>>2]=0;L[b+232>>2]=i;L[b+228>>2]=k;F[b+208|0]=0;H[b+200>>2]=2139095039;H[b+204>>2]=5;H[b+188>>2]=0;H[b+192>>2]=0;H[b+196>>2]=2139095039;L[b+184>>2]=O(q+O(r+i))*O(.33333298563957214);L[b+180>>2]=O(m+O(j+k))*O(.33333298563957214);L[b+224>>2]=v;L[b+176>>2]=O(p+O(s+v))*O(.33333298563957214);H[b+40>>2]=a+256;H[b+32>>2]=127220;H[b+36>>2]=b+176;c=H[a+276>>2];d=b- -64|0;H[d>>2]=H[a+272>>2];H[d+4>>2]=c;c=H[a+284>>2];H[b+72>>2]=H[a+280>>2];H[b+76>>2]=c;c=H[a+268>>2];H[b+56>>2]=H[a+264>>2];H[b+60>>2]=c;c=H[a+292>>2];H[b+80>>2]=H[a+288>>2];H[b+84>>2]=c;c=H[a+300>>2];H[b+88>>2]=H[a+296>>2];H[b+92>>2]=c;c=a+304|0;e=H[c+4>>2];H[b+96>>2]=H[c>>2];H[b+100>>2]=e;e=H[a+316>>2];H[b+104>>2]=H[a+312>>2];H[b+108>>2]=e;e=H[a+260>>2];H[b+48>>2]=H[a+256>>2];H[b+52>>2]=e;n=L[b+52>>2];L[b+52>>2]=L[d>>2];h=L[b+72>>2];k=L[b+56>>2];L[b+56>>2]=L[b+80>>2];L[b+72>>2]=L[b+84>>2];L[b+80>>2]=k;L[b+84>>2]=h;L[d>>2]=n;H[b+24>>2]=126016;H[b+28>>2]=a+96;H[b>>2]=0;d=Oa-288|0;Oa=d;H[d+76>>2]=0;n=L[c+8>>2];h=L[c>>2];i=L[c+4>>2];H[d+60>>2]=0;c=O(O(n*n)+O(O(h*h)+O(i*i)))>O(0);k=c?n:O(0);L[d+56>>2]=k;i=c?i:O(0);L[d+52>>2]=i;j=c?h:O(1);L[d+48>>2]=j;c=H[b+36>>2];f=I[c+32|0];e=H[b+28>>2];g=I[e+32|0];v=O((f?L[c+16>>2]:O(0))+(g?L[e+16>>2]:O(0)));C=O(L[b>>2]+v);n=O(O(1)/O(W(O(O(k*k)+O(O(j*j)+O(i*i))))));r=O(k*n);m=O(i*n);q=O(j*n);n=L[e+20>>2];h=L[c+20>>2];D=O(S(O((h>n?n:h)*O(.10000000149011612)),O(9.999999974752427e-7)));n=O(3.4028234663852886e38);c:{while(1){e=H[d+60>>2];H[d+24>>2]=H[d+56>>2];H[d+28>>2]=e;e=H[d+52>>2];H[d+16>>2]=H[d+48>>2];H[d+20>>2]=e;e=H[b+40>>2];w=L[e+56>>2];J=L[e+40>>2];K=L[e+24>>2];M=L[e+52>>2];P=L[e+36>>2];Q=L[e+20>>2];h=L[c+72>>2];s=L[c- -64>>2];p=L[c+68>>2];l=L[c+56>>2];o=L[c+52>>2];t=L[c+88>>2];u=L[c+80>>2];x=L[c+84>>2];T=L[e+8>>2];U=L[e+48>>2];V=L[e+32>>2];X=L[e>>2];Y=L[e+16>>2];Z=L[e+4>>2];y=L[c+48>>2];_=L[b+88>>2];$=L[b+56>>2];aa=L[b+72>>2];ba=L[b+80>>2];ca=L[b+48>>2];da=L[b+64>>2];ea=L[b+84>>2];fa=L[b+52>>2];ga=L[b+68>>2];c=H[b+28>>2];A=L[c+56>>2];B=L[c+52>>2];ha=L[c+72>>2];G=c- -64|0;ia=L[G>>2];ja=L[c+68>>2];ka=L[c+88>>2];la=L[c+80>>2];ma=L[c+84>>2];na=L[c+48>>2];H[d+284>>2]=0;L[d+280>>2]=O(ka*k)+O(O(la*j)+O(i*ma));L[d+276>>2]=O(ha*k)+O(O(ia*j)+O(i*ja));L[d+272>>2]=O(A*k)+O(O(na*j)+O(i*B));oa=EU(c,d+272|0);B=w;A=h;h=O(-j);j=O(O(O($*h)-O(aa*i))-O(_*k));w=O(O(O(ca*h)-O(da*i))-O(ba*k));h=O(O(O(fa*h)-O(ga*i))-O(ea*k));k=O(O(A*j)+O(O(s*w)+O(p*h)));i=O(O(t*j)+O(O(u*w)+O(h*x)));e=k>i;h=O(O(l*j)+O(O(y*w)+O(h*o)));z=!(h>k)|!(h>i);h=z?e?A:t:l;k=z?e?s:u:y;i=z?e?p:x:o;t=O(B+O(O(J*h)+O(O(T*k)+O(K*i))));e=H[c+152>>2]+N(oa,12)|0;j=L[e+8>>2];s=L[e>>2];p=L[e+4>>2];u=O(O(L[c+88>>2]*j)+O(O(L[c+56>>2]*s)+O(p*L[c+72>>2])));l=O(t-u);x=O(U+O(O(V*h)+O(O(X*k)+O(i*Y))));y=O(O(L[c+80>>2]*j)+O(O(L[c+48>>2]*s)+O(p*L[G>>2])));o=O(x-y);i=O(M+O(O(P*h)+O(O(Z*k)+O(i*Q))));j=O(O(L[c+84>>2]*j)+O(O(L[c+52>>2]*s)+O(p*L[c+68>>2])));h=O(i-j);k=O(O(r*l)+O(O(q*o)+O(m*h)));if(k>C){break c}if(!(!(k>v)|!(k>O(n*O(.9997749924659729))))){FU(d+208|0,d+144|0,d+80|0,d+48|0,d+272|0,d,H[d+76>>2]);h=L[H[b+36>>2]+16>>2];k=L[d+272>>2];i=L[d+276>>2];j=L[d+280>>2];H[b+172>>2]=0;L[b+168>>2]=j-(f?O(r*h):O(0));L[b+164>>2]=i-(f?O(m*h):O(0));L[b+160>>2]=k-(f?O(q*h):O(0));h=L[H[b+28>>2]+16>>2];k=L[d>>2];i=L[d+4>>2];j=L[d+8>>2];H[b+156>>2]=0;L[b+152>>2]=j+(g?O(r*h):O(-0));L[b+148>>2]=i+(g?O(m*h):O(-0));L[b+144>>2]=k+(g?O(q*h):O(-0));L[b+112>>2]=S(O(n-v),O(0));H[b+140>>2]=0;L[b+136>>2]=-r;L[b+132>>2]=-m;L[b+128>>2]=-q;E=1;break c}e=H[d+76>>2];z=e<<4;c=z+(d+144|0)|0;H[c+12>>2]=0;L[c+8>>2]=t;L[c+4>>2]=i;L[c>>2]=x;c=z+(d+80|0)|0;H[c+12>>2]=0;L[c+8>>2]=u;L[c+4>>2]=j;L[c>>2]=y;c=z+(d+208|0)|0;H[c+12>>2]=0;L[c+8>>2]=l;L[c+4>>2]=h;L[c>>2]=o;H[d+76>>2]=e+1;d:{e:{switch(e-1|0){case 0:j=L[d+216>>2];h=O(L[d+232>>2]-j);s=L[d+208>>2];k=O(L[d+224>>2]-s);p=L[d+212>>2];i=O(L[d+228>>2]-p);l=O(O(h*h)+O(O(k*k)+O(i*i)));if(l<=O(1.1920928955078125e-7)){H[d+76>>2]=1;c=H[d+212>>2];H[d+272>>2]=H[d+208>>2];H[d+276>>2]=c;c=H[d+220>>2];H[d+280>>2]=H[d+216>>2];H[d+284>>2]=c;break d}H[d+284>>2]=0;w=h;h=O(R(O(O(O(O(O(-s)*k)-O(i*p))-O(j*h))/l),O(1)));h=h>O(0)?h:O(0);L[d+280>>2]=j+O(w*h);L[d+276>>2]=p+O(i*h);L[d+272>>2]=s+O(k*h);break d;case 1:GU(d+272|0,d+208|0,d+144|0,d+80|0,d+76|0);break d;case 2:BZ(d+272|0,d+208|0,d+144|0,d+80|0,d+76|0);break d;default:break e}}H[d+284>>2]=0;L[d+280>>2]=l;L[d+276>>2]=h;L[d+272>>2]=o}c=H[d+276>>2];H[d+48>>2]=H[d+272>>2];H[d+52>>2]=c;c=H[d+284>>2];H[d+56>>2]=H[d+280>>2];H[d+60>>2]=c;k=L[d+56>>2];j=L[d+48>>2];i=L[d+52>>2];h=O(W(O(O(k*k)+O(O(j*j)+O(i*i)))));if(!(!(h>D)|!(h>2];n=h;continue}break}if(h>2]=0;c=H[d+276>>2];H[b+116>>2]=H[d+272>>2];H[b+120>>2]=c;H[b+124>>2]=H[d+280>>2];E=2;break c}k=L[H[b+28>>2]+16>>2];i=L[H[b+36>>2]+16>>2];FU(d+208|0,d+144|0,d+80|0,d+16|0,d+272|0,d,H[d+76>>2]);h=L[H[b+36>>2]+16>>2];j=L[d+272>>2];s=L[d+276>>2];p=L[d+280>>2];H[b+172>>2]=0;L[b+168>>2]=p-(f?O(r*h):O(0));L[b+164>>2]=s-(f?O(m*h):O(0));L[b+160>>2]=j-(f?O(q*h):O(0));h=L[H[b+28>>2]+16>>2];j=L[d>>2];s=L[d+4>>2];p=L[d+8>>2];H[b+156>>2]=0;L[b+152>>2]=p+(g?O(r*h):O(-0));L[b+148>>2]=s+(g?O(m*h):O(-0));L[b+144>>2]=j+(g?O(q*h):O(-0));H[b+140>>2]=0;L[b+136>>2]=-r;L[b+132>>2]=-m;L[b+128>>2]=-q;n=O(S(O(n-v),O(0)));L[b+112>>2]=n;c=H[d+40>>2];H[b+116>>2]=H[d+36>>2];H[b+120>>2]=c;H[b+124>>2]=H[d+44>>2];E=n>(v>O(0)?v:O((i>k?k:i)*O(.20000000298023224)))?1:2}Oa=d+288|0;f=(E|0)!=2;if(f){break a}F[a+368|0]=1}Oa=b+272|0;return f|0}function LV(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=0,r=0,s=0,t=O(0),u=O(0),v=0,w=O(0),x=O(0),y=0,z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),J=O(0),K=O(0),M=O(0),P=O(0),Q=0;f=Oa-624|0;Oa=f;r=H[a+32>>2];s=H[c+32>>2];B=L[a+4>>2];C=L[a+8>>2];D=L[a+12>>2];H[f+620>>2]=0;L[f+616>>2]=D;L[f+612>>2]=C;L[f+608>>2]=B;q=H[a+16>>2];v=H[a+20>>2];y=H[a+28>>2];H[f+600>>2]=H[a+24>>2];H[f+604>>2]=y;H[f+592>>2]=q;H[f+596>>2]=v;q=H[c+8>>2];v=H[c+4>>2];g=L[c+12>>2];H[f+588>>2]=0;L[f+584>>2]=g;H[f+576>>2]=v;H[f+580>>2]=q;q=H[c+16>>2];v=H[c+20>>2];y=H[c+28>>2];H[f+568>>2]=H[c+24>>2];H[f+572>>2]=y;H[f+560>>2]=q;H[f+564>>2]=v;j=L[b+20>>2];k=L[d+20>>2];x=L[b+24>>2];z=L[d+24>>2];t=L[b+8>>2];l=L[b>>2];o=L[b+4>>2];m=L[b+12>>2];g=L[d+12>>2];h=L[d>>2];p=L[b+16>>2];u=L[d+16>>2];i=L[d+4>>2];n=L[d+8>>2];H[f+556>>2]=0;H[f+540>>2]=0;H[f+524>>2]=0;K=O(-h);p=O(p-u);u=O(j-k);x=O(x-z);z=O(O(O(K*p)-O(u*i))-O(n*x));J=O(O(g*g)+O(-.5));j=O(O(O(g*O(O(i*p)-O(h*u)))+O(J*x))-O(n*z));L[f+552>>2]=j+j;j=O(O(O(J*u)+O(g*O(O(h*x)-O(n*p))))-O(i*z));L[f+548>>2]=j+j;k=O(O(O(o*n)-O(i*t))+O(O(l*g)-O(m*h)));j=O(k+k);w=O(O(O(t*h)-O(n*l))+O(O(o*g)-O(m*i)));A=O(w+w);M=O(O(1)-O(k*j));P=O(w*A);L[f+536>>2]=M-P;k=O(O(O(l*i)-O(h*o))+O(O(t*g)-O(m*n)));E=O(k*A);t=O(O(m*g)-O(O(O(K*l)-O(o*i))-O(n*t)));l=O(t*j);L[f+532>>2]=E-l;L[f+520>>2]=E+l;l=O(k+k);o=O(k*l);L[f+516>>2]=M-o;H[f+508>>2]=0;g=O(O(O(J*p)+O(g*O(O(n*u)-O(i*x))))-O(h*z));L[f+544>>2]=g+g;g=O(k*j);i=O(t*A);L[f+528>>2]=g+i;n=O(w*j);h=O(t*l);L[f+512>>2]=n-h;L[f+504>>2]=g-i;L[f+500>>2]=n+h;L[f+496>>2]=O(O(1)-P)-o;d=r+16|0;b=0;a:{if(L[a+4>>2]!=O(1)){break a}b=0;if(L[a+8>>2]!=O(1)){break a}b=L[a+12>>2]==O(1)}a=s+16|0;F[f+368|0]=0;H[f+360>>2]=0;H[f+364>>2]=0;H[f+352>>2]=0;H[f+356>>2]=0;H[f+344>>2]=0;H[f+348>>2]=0;H[f+336>>2]=0;H[f+340>>2]=0;H[f+480>>2]=d;H[f+488>>2]=H[r+56>>2]+N(I[r+55|0],20);F[f+492|0]=I[r+54|0];g=O(B*L[r+68>>2]);i=O(C*L[r+72>>2]);g=g<=i?g:i;i=O(D*L[r+76>>2]);g=g<=i?g:i;L[f+360>>2]=g*O(.02500000037252903);L[f+352>>2]=g*O(.10000000149011612);L[f+356>>2]=g*O(.05000000074505806);CU(f+608|0,f+592|0,f+384|0,f+432|0,f+336|0,b);H[f+484>>2]=H[r+60>>2];Q=L[c+4>>2]!=O(1)|L[c+8>>2]!=O(1)?Q:L[c+12>>2]==O(1);F[f+208|0]=0;H[f+200>>2]=0;H[f+204>>2]=0;H[f+192>>2]=0;H[f+196>>2]=0;H[f+184>>2]=0;H[f+188>>2]=0;H[f+176>>2]=0;H[f+180>>2]=0;H[f+320>>2]=a;H[f+328>>2]=H[s+56>>2]+N(I[s+55|0],20);F[f+332|0]=I[s+54|0];g=O(L[s+68>>2]*L[f+576>>2]);i=O(L[s+72>>2]*L[f+580>>2]);g=g<=i?g:i;i=O(L[s+76>>2]*L[f+584>>2]);g=g<=i?g:i;L[f+200>>2]=g*O(.02500000037252903);L[f+192>>2]=g*O(.10000000149011612);L[f+196>>2]=g*O(.05000000074505806);b=f+176|0;CU(f+576|0,f+560|0,f+224|0,f+272|0,b,Q);H[f+324>>2]=H[s+60>>2];c=H[f+516>>2];a=f- -64|0;H[a>>2]=H[f+512>>2];H[a+4>>2]=c;c=H[f+508>>2];H[f+56>>2]=H[f+504>>2];H[f+60>>2]=c;c=H[f+524>>2];H[f+72>>2]=H[f+520>>2];H[f+76>>2]=c;c=H[f+532>>2];H[f+80>>2]=H[f+528>>2];H[f+84>>2]=c;c=H[f+540>>2];H[f+88>>2]=H[f+536>>2];H[f+92>>2]=c;c=f+544|0;d=H[c+4>>2];H[f+96>>2]=H[c>>2];H[f+100>>2]=d;d=H[f+556>>2];H[f+104>>2]=H[f+552>>2];H[f+108>>2]=d;d=H[f+500>>2];H[f+48>>2]=H[f+496>>2];H[f+52>>2]=d;g=L[f+52>>2];L[f+52>>2]=L[a>>2];H[f+32>>2]=126316;H[f+40>>2]=f+496;H[f+36>>2]=f+336;i=L[f+56>>2];n=L[f+72>>2];L[a>>2]=g;L[f+56>>2]=L[f+80>>2];L[f+72>>2]=L[f+84>>2];L[f+84>>2]=n;L[f+80>>2]=i;H[f+24>>2]=126016;H[f+28>>2]=b;H[f>>2]=0;a=0;b=Oa-288|0;Oa=b;H[b+76>>2]=0;g=L[c+8>>2];i=L[c>>2];n=L[c+4>>2];H[b+60>>2]=0;c=O(O(g*g)+O(O(i*i)+O(n*n)))>O(0);j=c?g:O(0);L[b+56>>2]=j;k=c?n:O(0);L[b+52>>2]=k;p=c?i:O(1);L[b+48>>2]=p;s=f+32|0;c=H[s+4>>2];d=I[c+32|0];q=H[f+28>>2];r=I[q+32|0];u=O((d?L[c+16>>2]:O(0))+(r?L[q+16>>2]:O(0)));x=O(L[f>>2]+u);g=O(O(1)/O(W(O(O(j*j)+O(O(p*p)+O(k*k))))));l=O(j*g);o=O(k*g);m=O(p*g);g=L[q+20>>2];i=L[c+20>>2];z=O(S(O((g>2];H[b+40>>2]=H[b+56>>2];H[b+44>>2]=c;c=H[b+52>>2];H[b+32>>2]=H[b+48>>2];H[b+36>>2]=c;H[b+284>>2]=0;L[b+280>>2]=-j;L[b+276>>2]=-k;L[b+272>>2]=-p;q=b+272|0;QV(b+16|0,s,q);c=H[f+28>>2];g=L[c+56>>2];i=L[c+52>>2];n=L[c+72>>2];v=c- -64|0;h=L[v>>2];w=L[c+68>>2];A=L[c+88>>2];B=L[c+80>>2];C=L[c+84>>2];D=L[c+48>>2];H[b+284>>2]=0;L[b+280>>2]=O(A*j)+O(O(B*p)+O(k*C));L[b+276>>2]=O(n*j)+O(O(h*p)+O(k*w));L[b+272>>2]=O(g*j)+O(O(D*p)+O(k*i));q=EU(c,q);g=l;q=H[c+152>>2]+N(q,12)|0;h=L[q+8>>2];l=L[q>>2];j=L[q+4>>2];p=O(O(L[c+88>>2]*h)+O(O(L[c+56>>2]*l)+O(j*L[c+72>>2])));k=O(L[b+24>>2]-p);i=m;w=O(O(L[c+80>>2]*h)+O(O(L[c+48>>2]*l)+O(j*L[v>>2])));m=O(L[b+16>>2]-w);n=o;o=O(O(L[c+84>>2]*h)+O(O(L[c+52>>2]*l)+O(j*L[c+68>>2])));h=O(L[b+20>>2]-o);l=O(O(g*k)+O(O(i*m)+O(n*h)));if(l>x){break b}if(!(!(l>u)|!(l>O(t*O(.9997749924659729))))){FU(b+208|0,b+144|0,b+80|0,b+48|0,b+272|0,b,H[b+76>>2]);h=L[H[s+4>>2]+16>>2];l=L[b+272>>2];o=L[b+276>>2];m=L[b+280>>2];H[f+172>>2]=0;L[f+168>>2]=m-(d?O(g*h):O(0));L[f+164>>2]=o-(d?O(n*h):O(0));L[f+160>>2]=l-(d?O(i*h):O(0));h=L[H[f+28>>2]+16>>2];l=L[b>>2];o=L[b+4>>2];m=L[b+8>>2];H[f+156>>2]=0;L[f+152>>2]=m+(r?O(g*h):O(-0));L[f+148>>2]=o+(r?O(n*h):O(-0));L[f+144>>2]=l+(r?O(i*h):O(-0));L[f+112>>2]=S(O(t-u),O(0));H[f+140>>2]=0;L[f+136>>2]=-g;L[f+132>>2]=-n;L[f+128>>2]=-i;a=1;break b}y=H[b+20>>2];q=H[b+76>>2];v=q<<4;c=v+(b+144|0)|0;H[c>>2]=H[b+16>>2];H[c+4>>2]=y;y=H[b+28>>2];H[c+8>>2]=H[b+24>>2];H[c+12>>2]=y;c=v+(b+80|0)|0;H[c+12>>2]=0;L[c+8>>2]=p;L[c+4>>2]=o;L[c>>2]=w;c=v+(b+208|0)|0;H[c+12>>2]=0;L[c+8>>2]=k;L[c+4>>2]=h;L[c>>2]=m;H[b+76>>2]=q+1;c:{d:{e:{switch(q-1|0){case 0:m=L[b+216>>2];h=O(L[b+232>>2]-m);j=L[b+208>>2];l=O(L[b+224>>2]-j);k=L[b+212>>2];o=O(L[b+228>>2]-k);p=O(O(h*h)+O(O(l*l)+O(o*o)));if(!(p<=O(1.1920928955078125e-7))){break d}H[b+76>>2]=1;c=H[b+212>>2];H[b+272>>2]=H[b+208>>2];H[b+276>>2]=c;c=H[b+220>>2];H[b+280>>2]=H[b+216>>2];H[b+284>>2]=c;break c;case 1:GU(b+272|0,b+208|0,b+144|0,b+80|0,b+76|0);break c;case 2:BZ(b+272|0,b+208|0,b+144|0,b+80|0,b+76|0);break c;default:break e}}H[b+284>>2]=0;L[b+280>>2]=k;L[b+276>>2]=h;L[b+272>>2]=m;break c}H[b+284>>2]=0;E=h;h=O(R(O(O(O(O(O(-j)*l)-O(o*k))-O(m*h))/p),O(1)));h=h>O(0)?h:O(0);L[b+280>>2]=m+O(E*h);L[b+276>>2]=k+O(o*h);L[b+272>>2]=j+O(l*h)}c=H[b+276>>2];H[b+48>>2]=H[b+272>>2];H[b+52>>2]=c;c=H[b+284>>2];H[b+56>>2]=H[b+280>>2];H[b+60>>2]=c;j=L[b+56>>2];p=L[b+48>>2];k=L[b+52>>2];h=O(W(O(O(j*j)+O(O(p*p)+O(k*k)))));if(z>2]=0;a=H[b+276>>2];H[f+116>>2]=H[b+272>>2];H[f+120>>2]=a;H[f+124>>2]=H[b+280>>2];a=2;break b}l=L[H[f+28>>2]+16>>2];o=L[H[s+4>>2]+16>>2];FU(b+208|0,b+144|0,b+80|0,b+32|0,b+272|0,b+16|0,H[b+76>>2]);h=L[H[s+4>>2]+16>>2];m=L[b+272>>2];j=L[b+276>>2];k=L[b+280>>2];H[f+172>>2]=0;L[f+168>>2]=k-(d?O(g*h):O(0));L[f+164>>2]=j-(d?O(n*h):O(0));L[f+160>>2]=m-(d?O(i*h):O(0));h=L[H[f+28>>2]+16>>2];m=L[b+16>>2];j=L[b+20>>2];k=L[b+24>>2];H[f+156>>2]=0;L[f+152>>2]=k+(r?O(g*h):O(-0));L[f+148>>2]=j+(r?O(n*h):O(-0));L[f+144>>2]=m+(r?O(i*h):O(-0));H[f+140>>2]=0;L[f+136>>2]=-g;L[f+132>>2]=-n;L[f+128>>2]=-i;g=O(S(O(t-u),O(0)));L[f+112>>2]=g;a=H[b+4>>2];H[f+116>>2]=H[b>>2];H[f+120>>2]=a;H[f+124>>2]=H[b+8>>2];a=g>(u>O(0)?u:O((l>1]=((a|0)==2)<<1}Oa=f+624|0;return(a|0)==2|0}function ux(a,b,c,d){var e=O(0),f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=0,y=O(0),z=0,A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),F=O(0),G=0,I=O(0),J=0,K=O(0),M=O(0),Q=0,R=0,S=O(0),T=O(0),U=O(0),V=O(0),X=O(0),Y=O(0),Z=O(0),_=O(0),$=O(0),aa=O(0),ba=0,ca=O(0),da=0,ea=0,fa=O(0),ga=O(0);x=Oa+-64|0;J=H[a+8>>2];v=L[J+40>>2];K=L[d+16>>2];y=L[d+48>>2];l=L[J+8>>2];T=L[d>>2];F=L[d+32>>2];M=L[b+40>>2];r=L[c+40>>2];s=L[J+32>>2];U=L[J>>2];C=L[b+32>>2];j=L[c+32>>2];Z=L[J+36>>2];D=L[J+4>>2];E=L[b+36>>2];S=L[c+36>>2];ca=O(O(O(v*O(v*K))+O(y*O(O(O(l*O(l*T))+O(F*O(M*M)))+O(r*r))))+O(O(O(s*O(K*s))+O(y*O(O(O(U*O(T*U))+O(F*O(C*C)))+O(j*j))))+O(O(Z*O(K*Z))+O(y*O(O(O(D*O(T*D))+O(F*O(E*E)))+O(S*S))))));Q=H[a+4>>2];o=L[Q+40>>2];q=O(K*o);p=L[Q+8>>2];k=O(T*p);_=L[b+24>>2];$=L[c+24>>2];g=L[Q+32>>2];h=O(K*g);V=L[Q>>2];i=O(T*V);aa=L[b+16>>2];m=L[c+16>>2];t=L[Q+36>>2];f=O(K*t);A=L[Q+4>>2];e=O(T*A);I=L[b+20>>2];u=L[c+20>>2];X=O(O(O(q*v)+O(y*O(O(O(k*l)+O(F*O(_*M)))+O($*r))))+O(O(O(h*s)+O(y*O(O(O(i*U)+O(F*O(aa*C)))+O(m*j))))+O(O(f*Z)+O(y*O(O(O(e*D)+O(F*O(I*E)))+O(u*S))))));w=O(O(O(o*q)+O(y*O(O(O(p*k)+O(F*O(_*_)))+O($*$))))+O(O(O(g*h)+O(y*O(O(O(V*i)+O(F*O(aa*aa)))+O(m*m))))+O(O(t*f)+O(y*O(O(O(A*e)+O(F*O(I*I)))+O(u*u))))));R=H[a>>2];k=L[R+40>>2];B=O(k*K);e=O(B*v);h=L[R+8>>2];v=O(h*T);n=L[b+8>>2];f=O(O(v*l)+O(F*O(n*M)));l=L[c+8>>2];fa=O(e+O(y*O(f+O(l*r))));i=L[R+32>>2];r=O(i*K);e=O(r*s);Y=L[R>>2];s=O(Y*T);M=L[b>>2];f=O(O(s*U)+O(F*O(M*C)));C=L[c>>2];ga=O(e+O(y*O(f+O(C*j))));f=L[R+36>>2];j=O(f*K);e=L[R+4>>2];q=O(e*T);K=O(q*D);D=L[b+4>>2];K=O(K+O(F*O(D*E)));E=L[c+4>>2];S=O(fa+O(ga+O(O(j*Z)+O(y*O(K+O(E*S))))));u=O(O(O(B*o)+O(y*O(O(O(v*p)+O(F*O(n*_)))+O(l*$))))+O(O(O(r*g)+O(y*O(O(O(s*V)+O(F*O(M*aa)))+O(C*m))))+O(O(j*t)+O(y*O(O(O(q*A)+O(F*O(D*I)))+O(E*u))))));t=O(O(O(k*B)+O(y*O(O(l*l)+O(O(h*v)+O(O(n*n)*F)))))+O(O(O(i*r)+O(y*O(O(C*C)+O(O(Y*s)+O(O(M*M)*F)))))+O(O(f*j)+O(y*O(O(E*E)+O(O(e*q)+O(O(D*D)*F)))))));I=O(0);n=O(0);m=O(0);l=O(1);while(1){a:{i=O(I+I);j=O(O(1)-O(I*i));e=O(n+n);q=O(n*e);g=O(j-q);k=O(i*m);h=O(e*l);C=O(k+h);f=O(e*m);e=O(i*l);D=O(f-e);A=O(O(ca*g)+O(O(S*C)+O(X*D)));B=O(O(S*g)+O(O(t*C)+O(u*D)));v=O(O(X*g)+O(O(u*C)+O(w*D)));L[x+56>>2]=O(g*A)+O(O(C*B)+O(D*v));E=O(f+e);i=O(i*n);e=O(m+m);f=O(e*l);o=O(i-f);e=O(m*e);p=O(j-e);r=O(O(ca*E)+O(O(S*o)+O(X*p)));s=O(O(S*E)+O(O(t*o)+O(u*p)));j=O(O(X*E)+O(O(u*o)+O(w*p)));L[x+52>>2]=O(g*r)+O(O(C*s)+O(D*j));y=g;g=O(k-h);k=O(O(O(1)-q)-e);h=O(i+f);i=O(O(ca*g)+O(O(S*k)+O(X*h)));f=O(O(S*g)+O(O(t*k)+O(u*h)));e=O(O(X*g)+O(O(u*k)+O(w*h)));L[x+48>>2]=O(y*i)+O(O(C*f)+O(D*e));L[x+40>>2]=O(E*r)+O(O(o*s)+O(p*j));L[x+36>>2]=O(E*i)+O(O(o*f)+O(p*e));L[x+24>>2]=O(g*i)+O(O(k*f)+O(h*e));f=O(O(g*A)+O(O(k*B)+O(h*v)));L[x+32>>2]=f;e=O(O(g*r)+O(O(k*s)+O(h*j)));L[x+28>>2]=e;i=O(O(E*A)+O(O(o*B)+O(p*v)));L[x+44>>2]=i;f=O(P(f));e=O(P(e));d=f>e?1:2;g=e;e=O(P(i));ba=e>f?g>>1|0)|0)+1|0;da=d&3;ea=(x+24|0)+N(da,12)|0;G=(d+(da>>>1|0)|0)+1&3;d=G<<2;e=L[ea+d>>2];if(e==O(0)){break a}f=O(L[ea+(da<<2)>>2]-L[d+((x+24|0)+N(G,12)|0)>>2]);e=O(e+e);if(O(P(f))>O(O(P(e))*O(2e6))){break a}f=O(f/e);e=O(P(f));b:{if(e>O(1e3)){H[x+16>>2]=0;H[x+20>>2]=1065353216;H[x+8>>2]=0;H[x+12>>2]=0;L[(x+8|0)+(ba<<2)>>2]=O(1)/O(f*O(4));break b}H[x+16>>2]=0;H[x+8>>2]=0;H[x+12>>2]=0;e=O(O(1)/O(e+O(W(O(O(f*f)+O(1))))));e=O(O(1)/O(W(O(O(e*e)+O(1)))));L[x+20>>2]=W(O(O(e+O(1))*O(.5)));e=O(W(O(O(O(1)-e)*O(.5))));L[(x+8|0)+(ba<<2)>>2]=f>=O(0)?e:O(-e)}j=L[x+20>>2];q=L[x+8>>2];k=L[x+12>>2];h=L[x+16>>2];e=O(O(O(O(l*j)-O(q*I))-O(n*k))-O(m*h));g=e;y=O(e*e);i=O(O(O(I*k)+O(O(l*h)+O(m*j)))-O(q*n));f=O(O(O(n*h)+O(O(l*q)+O(I*j)))-O(k*m));e=O(O(O(m*q)+O(O(l*k)+O(n*j)))-O(h*I));h=O(O(1)/O(W(O(y+O(O(i*i)+O(O(f*f)+O(e*e)))))));l=O(g*h);m=O(i*h);n=O(e*h);I=O(f*h);z=z+1|0;if((z|0)!=5){continue}}break}M=L[Q+4>>2];C=L[J+4>>2];D=L[Q+8>>2];E=L[J+8>>2];f=O(-n);g=O(f-n);j=O(g*f);o=O(-m);e=O(o-m);q=O(e*o);m=O(O(O(1)-j)-q);t=L[R+12>>2];p=O(O(-I)-I);f=O(p*f);A=O(-l);e=O(e*A);u=O(f+e);B=L[Q+12>>2];k=O(p*o);h=O(g*A);w=O(k-h);v=L[J+12>>2];L[R+12>>2]=O(m*t)+O(O(u*B)+O(w*v));r=L[R+8>>2];L[R+8>>2]=O(m*r)+O(O(u*D)+O(w*E));s=L[R+4>>2];L[R+4>>2]=O(s*m)+O(O(u*M)+O(w*C));L[R>>2]=O(Y*m)+O(O(V*u)+O(U*w));n=O(f-e);i=O(O(I*p)+O(1));l=O(i-q);f=O(g*o);e=O(p*A);o=O(f+e);L[Q+4>>2]=O(s*n)+O(O(M*l)+O(C*o));L[Q+8>>2]=O(n*r)+O(O(l*D)+O(o*E));L[Q+12>>2]=O(n*t)+O(O(l*B)+O(o*v));L[Q>>2]=O(Y*n)+O(O(V*l)+O(U*o));p=O(k+h);y=O(t*p);g=O(f-e);t=O(i-j);L[J+12>>2]=y+O(O(B*g)+O(v*t));L[J+8>>2]=O(p*r)+O(O(g*D)+O(t*E));L[J+4>>2]=O(s*p)+O(O(g*M)+O(t*C));L[J>>2]=O(Y*p)+O(O(U*t)+O(V*g));G=H[a+4>>2];r=L[G+36>>2];z=H[a+8>>2];s=L[z+36>>2];j=L[G+40>>2];q=L[z+40>>2];d=H[a>>2];k=L[d+32>>2];h=L[G+32>>2];i=L[z+32>>2];L[d+32>>2]=O(m*k)+O(O(u*h)+O(w*i));f=L[d+40>>2];L[d+40>>2]=O(m*f)+O(O(u*j)+O(w*q));e=L[d+36>>2];L[d+36>>2]=O(m*e)+O(O(u*r)+O(w*s));L[G+36>>2]=O(n*e)+O(O(l*r)+O(o*s));L[G+40>>2]=O(n*f)+O(O(l*j)+O(o*q));L[G+32>>2]=O(n*k)+O(O(l*h)+O(o*i));L[z+40>>2]=O(p*f)+O(O(g*j)+O(t*q));L[z+36>>2]=O(p*e)+O(O(g*r)+O(t*s));L[z+32>>2]=O(p*k)+O(O(g*h)+O(t*i));A=L[G+20>>2];B=L[z+20>>2];v=L[G+24>>2];r=L[z+24>>2];s=L[G+16>>2];j=L[z+16>>2];q=L[d+28>>2];k=L[G+28>>2];h=L[z+28>>2];L[d+28>>2]=O(m*q)+O(O(u*k)+O(w*h));i=L[d+24>>2];L[d+24>>2]=O(m*i)+O(O(u*v)+O(w*r));f=L[d+20>>2];L[d+20>>2]=O(m*f)+O(O(u*A)+O(w*B));e=L[d+16>>2];L[d+16>>2]=O(m*e)+O(O(u*s)+O(w*j));L[G+24>>2]=O(n*i)+O(O(l*v)+O(o*r));L[G+20>>2]=O(n*f)+O(O(l*A)+O(o*B));L[G+16>>2]=O(n*e)+O(O(l*s)+O(o*j));L[G+28>>2]=O(n*q)+O(O(l*k)+O(o*h));L[z+28>>2]=O(p*q)+O(O(g*k)+O(t*h));L[z+24>>2]=O(p*i)+O(O(g*v)+O(t*r));L[z+20>>2]=O(p*f)+O(O(g*A)+O(t*B));L[z+16>>2]=O(p*e)+O(O(g*s)+O(t*j));z=H[a+4>>2];r=L[z+52>>2];d=H[a+8>>2];s=L[d+52>>2];j=L[z+56>>2];q=L[d+56>>2];a=H[a>>2];k=L[a+48>>2];h=L[z+48>>2];i=L[d+48>>2];L[a+48>>2]=O(m*k)+O(O(u*h)+O(w*i));f=L[a+56>>2];L[a+56>>2]=O(m*f)+O(O(u*j)+O(w*q));e=L[a+52>>2];L[a+52>>2]=O(m*e)+O(O(u*r)+O(w*s));L[z+52>>2]=O(n*e)+O(O(l*r)+O(o*s));L[z+56>>2]=O(n*f)+O(O(l*j)+O(o*q));L[z+48>>2]=O(n*k)+O(O(l*h)+O(o*i));L[d+56>>2]=O(p*f)+O(O(g*j)+O(t*q));L[d+52>>2]=O(p*e)+O(O(g*r)+O(t*s));L[d+48>>2]=O(p*k)+O(O(g*h)+O(t*i));A=L[b+12>>2];B=L[b+28>>2];v=L[b+44>>2];L[b+44>>2]=O(p*A)+O(O(g*B)+O(t*v));r=L[b+8>>2];s=L[b+24>>2];j=L[b+40>>2];L[b+40>>2]=O(p*r)+O(O(g*s)+O(t*j));q=L[b+4>>2];k=L[b+20>>2];h=L[b+36>>2];L[b+36>>2]=O(p*q)+O(O(g*k)+O(t*h));i=L[b>>2];f=L[b+16>>2];e=L[b+32>>2];L[b+32>>2]=O(p*i)+O(O(g*f)+O(t*e));L[b+28>>2]=O(n*A)+O(O(l*B)+O(o*v));L[b+24>>2]=O(n*r)+O(O(l*s)+O(o*j));L[b+20>>2]=O(n*q)+O(O(l*k)+O(o*h));L[b+16>>2]=O(n*i)+O(O(l*f)+O(o*e));L[b+12>>2]=O(m*A)+O(O(u*B)+O(w*v));L[b+8>>2]=O(m*r)+O(O(u*s)+O(w*j));L[b+4>>2]=O(m*q)+O(O(u*k)+O(w*h));L[b>>2]=O(m*i)+O(O(u*f)+O(w*e));A=L[c+4>>2];B=L[c+20>>2];v=L[c+36>>2];L[c+4>>2]=O(m*A)+O(O(u*B)+O(w*v));r=L[c+8>>2];s=L[c+24>>2];j=L[c+40>>2];L[c+8>>2]=O(m*r)+O(O(u*s)+O(w*j));q=L[c+12>>2];k=L[c+28>>2];h=L[c+44>>2];L[c+12>>2]=O(m*q)+O(O(u*k)+O(w*h));i=L[c>>2];f=L[c+16>>2];e=L[c+32>>2];L[c+16>>2]=O(n*i)+O(O(l*f)+O(o*e));L[c+20>>2]=O(n*A)+O(O(l*B)+O(o*v));L[c+24>>2]=O(n*r)+O(O(l*s)+O(o*j));L[c+28>>2]=O(n*q)+O(O(l*k)+O(o*h));L[c+32>>2]=O(p*i)+O(O(g*f)+O(t*e));L[c+36>>2]=O(p*A)+O(O(g*B)+O(t*v));L[c+40>>2]=O(p*r)+O(O(g*s)+O(t*j));L[c+44>>2]=O(p*q)+O(O(g*k)+O(t*h));L[c>>2]=O(m*i)+O(O(u*f)+O(w*e))}function u_(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=O(f);g=g|0;h=h|0;i=i|0;var j=O(0),k=0,l=O(0),m=0,n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),w=O(0),y=0,z=0,A=O(0),D=O(0),E=O(0),K=O(0),M=O(0),P=0,Q=O(0),R=O(0),S=O(0),T=O(0),U=O(0),V=O(0),X=O(0),Y=O(0),Z=O(0),_=O(0),$=O(0),aa=O(0),ba=O(0),ca=O(0),da=O(0),ea=O(0),fa=O(0),ga=O(0),ha=O(0),ia=0,ja=0;m=Oa-160|0;Oa=m;p=L[b+12>>2];a:{b:{j=L[b+4>>2];l=L[b+8>>2];if(j!=O(1)|l!=O(1)){break b}r=O(1);if(p!=O(1)){break b}u=L[c+8>>2];j=O(L[d+8>>2]-L[c+24>>2]);n=O(j+j);s=L[c>>2];j=O(L[d>>2]-L[c+16>>2]);p=O(j+j);j=O(L[d+4>>2]-L[c+20>>2]);l=O(j+j);t=L[c+4>>2];j=O(O(u*n)+O(O(s*p)+O(l*t)));q=L[c+12>>2];o=O(O(q*q)+O(-.5));L[m+40>>2]=O(u*j)+O(O(n*o)-O(q*O(O(s*l)-O(p*t))));L[m+36>>2]=O(t*j)+O(O(l*o)-O(q*O(O(u*p)-O(n*s))));L[m+32>>2]=O(s*j)+O(O(p*o)-O(q*O(O(t*n)-O(l*u))));j=L[e+8>>2];n=O(j+j);j=L[e>>2];p=O(j+j);j=L[e+4>>2];l=O(j+j);j=O(O(u*n)+O(O(s*p)+O(t*l)));L[m+8>>2]=O(u*j)+O(O(n*o)-O(q*O(O(s*l)-O(p*t))));L[m+4>>2]=O(t*j)+O(O(l*o)-O(q*O(O(u*p)-O(n*s))));L[m>>2]=O(s*j)+O(O(p*o)-O(q*O(O(t*n)-O(l*u))));P=0;break a}L[m+40>>2]=O(1)/p;L[m+36>>2]=O(1)/l;L[m+32>>2]=O(1)/j;L[m+44>>2]=L[b+16>>2];L[m+48>>2]=L[b+20>>2];L[m+52>>2]=L[b+24>>2];L[m+56>>2]=L[b+28>>2];t=L[c+8>>2];o=O(L[c+24>>2]*O(-2));q=L[c>>2];n=O(L[c+16>>2]*O(-2));p=O(L[c+20>>2]*O(-2));r=L[c+4>>2];l=O(O(t*o)+O(O(q*n)+O(p*r)));s=L[c+12>>2];j=O(O(s*s)+O(-.5));L[m+24>>2]=O(t*l)+O(O(o*j)-O(s*O(O(q*p)-O(n*r))));L[m+20>>2]=O(r*l)+O(O(p*j)-O(s*O(O(t*n)-O(o*q))));L[m+12>>2]=s;L[m+8>>2]=-t;L[m+4>>2]=-r;L[m>>2]=-q;L[m+16>>2]=O(q*l)+O(O(n*j)-O(s*O(O(r*o)-O(p*t))));ZV(m- -64|0,m+32|0,m);S=L[m+80>>2];L[m+128>>2]=S;T=L[m+84>>2];L[m+132>>2]=T;U=L[m+92>>2];L[m+140>>2]=U;V=L[m+96>>2];L[m+144>>2]=V;u=L[m+64>>2];L[m+112>>2]=u;s=L[m+68>>2];L[m+116>>2]=s;t=L[m+72>>2];L[m+120>>2]=t;q=L[m+76>>2];L[m+124>>2]=q;r=L[m+88>>2];L[m+136>>2]=r;o=L[m+100>>2];l=L[m+104>>2];L[m+152>>2]=l;j=L[m+108>>2];L[m+156>>2]=j;L[m+148>>2]=o;w=j;n=L[d>>2];p=L[d+4>>2];j=L[d+8>>2];L[m+40>>2]=w+O(O(O(t*n)+O(T*p))+O(V*j));L[m+36>>2]=l+O(O(O(s*n)+O(S*p))+O(U*j));L[m+32>>2]=o+O(O(O(u*n)+O(q*p))+O(r*j));p=L[e>>2];l=L[e+4>>2];j=L[e+8>>2];o=O(O(O(t*p)+O(T*l))+O(V*j));L[m+8>>2]=o;n=O(O(O(s*p)+O(S*l))+O(U*j));L[m+4>>2]=n;l=O(O(O(u*p)+O(q*l))+O(r*j));L[m>>2]=l;j=O(W(O(O(o*o)+O(O(l*l)+O(n*n)))));r=O(O(1)/j);if(j>O(0)){L[m+8>>2]=o*r;L[m+4>>2]=n*r;L[m>>2]=l*r}f=O(O(j*f)+O(.0010000000474974513));P=m+112|0}d=1;y=I[b+32|0]&2;d=y?d:I[g|0]>>>7|0;g=J[g>>1];L[m+108>>2]=r;F[m+104|0]=y>>>1;H[m+100>>2]=e;H[m+96>>2]=g;H[m+92>>2]=P;H[m+88>>2]=c;H[m+84>>2]=b+4;H[m+76>>2]=0;H[m+72>>2]=i;H[m+64>>2]=127964;H[m+80>>2]=h;H[m+68>>2]=h>>>0<2?(g>>>6^-1)&1:2;g=m- -64|0;h=0;i=0;k=Oa-288|0;Oa=k;c:{if(f==O(0)){p=L[a+60>>2];e=I[a+64|0];c=H[a+28>>2];b=H[a+24>>2];H[k+36>>2]=128020;H[k+56>>2]=0;H[k+32>>2]=127996;ia=k,ja=k7(b,c),H[ia+48>>2]=ja;H[k+52>>2]=Qa;H[k+44>>2]=e>>>1&1;H[k+40>>2]=g;q=L[m+32>>2];L[k+60>>2]=q;r=L[m+36>>2];L[k- -64>>2]=r;o=L[m+40>>2];L[k+68>>2]=o;l=L[m>>2];L[k+72>>2]=l;j=L[m+4>>2];L[k+76>>2]=j;n=L[m+8>>2];H[k+112>>2]=0;H[k+116>>2]=0;G[k+108>>1]=0;H[k+104>>2]=-1;L[k+88>>2]=p;F[k+84|0]=d;L[k+80>>2]=n;H[k+120>>2]=0;H[k+124>>2]=0;H[k+128>>2]=0;H[k+132>>2]=0;H[k+144>>2]=0;H[k+136>>2]=2139095039;H[k+140>>2]=0;H[k+96>>2]=0;H[k+100>>2]=0;L[k+92>>2]=f;b=H[g+4>>2];H[k+268>>2]=0;L[k+264>>2]=n;L[k+260>>2]=j;L[k+248>>2]=o;L[k+244>>2]=r;H[k+252>>2]=0;L[k+256>>2]=l;L[k+240>>2]=q;F[k+208|0]=0;F[k+209|0]=(b|0)==1;L[k+24>>2]=o;L[k+20>>2]=r;L[k+16>>2]=q;L[k+8>>2]=o+O(0);L[k+4>>2]=r+O(0);L[k>>2]=q+O(0);j$(a+112|0,k+16|0,k,k+32|4);H[k+36>>2]=128020;H[k+32>>2]=127996;if(!I[k+208|0]){break c}a=H[k+40>>2];Ra[H[H[a>>2]>>2]](a,k+96|0,k+160|0,k+172|0,k+184|0,k+92|0,k+196|0)|0;break c}r=L[a+60>>2];e=I[a+64|0];c=H[a+28>>2];b=H[a+24>>2];H[k+36>>2]=128196;H[k+56>>2]=0;H[k+32>>2]=128172;ia=k,ja=k7(b,c),H[ia+48>>2]=ja;H[k+52>>2]=Qa;H[k+44>>2]=e>>>1&1;H[k+40>>2]=g;o=L[m+32>>2];L[k+60>>2]=o;n=L[m+36>>2];L[k- -64>>2]=n;p=L[m+40>>2];L[k+68>>2]=p;l=L[m>>2];L[k+72>>2]=l;j=L[m+4>>2];L[k+76>>2]=j;q=L[m+8>>2];H[k+112>>2]=0;H[k+116>>2]=0;G[k+108>>1]=0;H[k+104>>2]=-1;L[k+88>>2]=r;F[k+84|0]=d;L[k+80>>2]=q;H[k+120>>2]=0;H[k+124>>2]=0;H[k+128>>2]=0;H[k+132>>2]=0;H[k+144>>2]=0;H[k+136>>2]=2139095039;H[k+140>>2]=0;H[k+96>>2]=0;H[k+100>>2]=0;L[k+92>>2]=f;b=H[g+4>>2];H[k+268>>2]=0;L[k+264>>2]=q;L[k+260>>2]=j;L[k+248>>2]=p;L[k+244>>2]=n;H[k+252>>2]=0;L[k+256>>2]=l;L[k+240>>2]=o;F[k+208|0]=0;F[k+209|0]=(b|0)==1;d=k+32|0;z=Oa-528|0;Oa=z;e=H[a+180>>2];g=e-1|0;d:{if((g|0)<0){break d}y=z+16|4;if(g>>>0>=3){b=e&-4;while(1){P=h<<2;c=N(g,112);H[P+y>>2]=c;H[y+(P|4)>>2]=c-112;H[y+(P|8)>>2]=c-224;H[y+(P|12)>>2]=c-336;g=g-4|0;h=h+4|0;i=i+4|0;if((b|0)!=(i|0)){continue}break}}b=e&3;if(b){i=0;while(1){H[y+(h<<2)>>2]=N(g,112);g=g-1|0;h=h+1|0;i=i+1|0;if((b|0)!=(i|0)){continue}break}}if(!e){break d}l=L[m+8>>2];j=O(-l);j=jO(9.999999717180685e-10)?j:O(9.999999717180685e-10)),v(2))|H[m+8>>2]&-2147483648),C());j=O(O(1)/l);w=O(j*O(O(2)-O(j*l)));E=O(O(0)-O(L[m+40>>2]*w));l=L[m+4>>2];j=O(-l);j=jO(9.999999717180685e-10)?j:O(9.999999717180685e-10)),v(2))|H[m+4>>2]&-2147483648),C());j=O(O(1)/l);A=O(j*O(O(2)-O(j*l)));K=O(O(0)-O(L[m+36>>2]*A));l=L[m>>2];j=O(-l);j=jO(9.999999717180685e-10)?j:O(9.999999717180685e-10)),v(2))|H[m>>2]&-2147483648),C());j=O(O(1)/l);D=O(j*O(O(2)-O(j*l)));M=O(O(0)-O(L[m+32>>2]*D));b=H[a+200>>2];while(1){a=(z+16|0)+(e<<2)|0;c=H[a>>2];e:{if(c&1){H[z+12>>2]=c-1;L[z+8>>2]=f;if(!(Ra[H[H[d>>2]>>2]](d,1,z+12|0,z+8|0)|0)){break d}j=L[z+8>>2];if(j!=f){f=j}e=e-1|0;break e}c=b+c|0;fa=L[c+44>>2];ga=L[c+92>>2];$=L[c+60>>2];aa=L[c+12>>2];ha=L[c+28>>2];S=L[c+76>>2];T=L[c+40>>2];U=L[c+88>>2];ba=L[c+56>>2];ca=L[c+8>>2];V=L[c+24>>2];u=L[c+72>>2];s=L[c+36>>2];t=L[c+84>>2];da=L[c+52>>2];ea=L[c+4>>2];q=L[c+20>>2];r=L[c+68>>2];o=L[c+32>>2];n=L[c+80>>2];Q=L[c>>2];R=L[c+48>>2];p=L[c+16>>2];j=L[c+64>>2];H[a>>2]=H[c+96>>2];X=O(M+O(D*Q));Y=O(M+O(D*R));l=Xo?o:n;p=jY?X:Y;j=Z>_?Z:_;l=j>l?l:j;j=nl?l:j;a=e-(p>j|(jR|f>2]=H[c+100>>2];Q=O(M+O(D*ea));R=O(M+O(D*da));l=Qo?o:n;p=jR?Q:R;j=q>r?q:r;l=j>l?l:j;j=nl?l:j;a=a+((p>j^-1)&(!(j>2]=H[c+104>>2];s=O(M+O(D*ca));t=O(M+O(D*ba));l=so?o:n;p=jt?s:t;j=q>r?q:r;l=j>l?l:j;j=nl?l:j;a=a+((p>j^-1)&(!(j>2]=H[c+108>>2];s=O(M+O(D*aa));t=O(M+O(D*$));l=so?o:n;p=jt?s:t;j=q>r?q:r;l=j>l?l:j;j=nl?l:j;e=a+((p>j^-1)&(!(j>2]=128196;H[k+32>>2]=128172;if(!I[k+208|0]){break c}a=H[k+40>>2];Ra[H[H[a>>2]>>2]](a,k+96|0,k+160|0,k+172|0,k+184|0,k+92|0,k+196|0)|0}Oa=k+288|0;Oa=m+160|0;return H[m+76>>2]}function wZ(a,b,c,d,e,f,g,h){var i=0,j=0,k=0,l=O(0),m=0,n=0,o=O(0),p=0,q=0,r=0,s=O(0),t=0,u=0,v=0,w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=0,D=0,E=O(0),G=O(0),J=O(0),K=O(0),M=O(0);m=Oa-6336|0;Oa=m;if(e){while(1){p=m+16|0;Ra[H[H[a>>2]>>2]](p,a,I[c+n|0]);j=H[m+28>>2];q=n<<4;k=q+(m+6272|0)|0;H[k+8>>2]=H[m+24>>2];H[k+12>>2]=j;j=H[m+20>>2];H[k>>2]=H[m+16>>2];H[k+4>>2]=j;Ra[H[H[b>>2]>>2]](p,b,I[d+n|0]);j=H[m+28>>2];k=q+(m+6208|0)|0;H[k+8>>2]=H[m+24>>2];H[k+12>>2]=j;j=H[m+20>>2];H[k>>2]=H[m+16>>2];H[k+4>>2]=j;n=n+1|0;if((n|0)!=(e|0)){continue}break}}H[m+6192>>2]=0;H[m+5932>>2]=0;F[m+5668|0]=0;H[m+5664>>2]=0;H[m+5672>>2]=0;H[m+16>>2]=0;i=m+16|0;H[m+20>>2]=i|8;c=H[g+4>>2];H[m>>2]=H[g>>2];H[m+4>>2]=c;c=H[g+12>>2];H[m+8>>2]=H[g+8>>2];H[m+12>>2]=c;g=a;j=Oa-96|0;Oa=j;H[j+80>>2]=2139095039;c=m+6272|0;a=H[c+4>>2];H[i+272>>2]=H[c>>2];H[i+276>>2]=a;a=H[c+12>>2];H[i+280>>2]=H[c+8>>2];H[i+284>>2]=a;a=H[c+20>>2];H[i+288>>2]=H[c+16>>2];H[i+292>>2]=a;a=H[c+28>>2];H[i+296>>2]=H[c+24>>2];H[i+300>>2]=a;a=H[c+36>>2];H[i+304>>2]=H[c+32>>2];H[i+308>>2]=a;a=H[c+44>>2];H[i+312>>2]=H[c+40>>2];H[i+316>>2]=a;a=H[c+60>>2];H[i+328>>2]=H[c+56>>2];H[i+332>>2]=a;a=H[c+52>>2];H[i+320>>2]=H[c+48>>2];H[i+324>>2]=a;a=m+6208|0;d=H[a+12>>2];v=i+1304|0;k=v;H[k>>2]=H[a+8>>2];H[k+4>>2]=d;d=H[a+4>>2];H[i+1296>>2]=H[a>>2];H[i+1300>>2]=d;d=H[a+20>>2];t=i+1312|0;k=t;H[k>>2]=H[a+16>>2];H[k+4>>2]=d;d=H[a+28>>2];n=i+1320|0;k=n;H[k>>2]=H[a+24>>2];H[k+4>>2]=d;d=H[a+36>>2];u=i+1328|0;k=u;H[k>>2]=H[a+32>>2];H[k+4>>2]=d;d=H[a+44>>2];p=i+1336|0;k=p;H[k>>2]=H[a+40>>2];H[k+4>>2]=d;d=H[a+60>>2];q=i+1352|0;k=q;H[k>>2]=H[a+56>>2];H[k+4>>2]=d;d=H[a+52>>2];k=i+1344|0;H[k>>2]=H[a+48>>2];H[k+4>>2]=d;H[j+76>>2]=0;H[i>>2]=0;a:{b:{c:{switch(e-1|0){case 0:a=7;q=j+76|0;k=j+80|0;c=Oa-48|0;Oa=c;H[c+8>>2]=0;H[c+12>>2]=0;H[c>>2]=1065353216;H[c+4>>2]=0;w=L[i+276>>2];x=L[i+1300>>2];s=L[i+280>>2];y=L[i+1304>>2];o=L[i+272>>2];l=L[i+1296>>2];H[c+24>>2]=-2147483648;H[c+28>>2]=0;H[c+16>>2]=-1082130432;H[c+20>>2]=-2147483648;d=c+16|0;Ra[H[H[g>>2]+4>>2]](c+32|0,g,d);Ra[H[H[b>>2]+4>>2]](d,b,c);d=H[c+36>>2];H[i+288>>2]=H[c+32>>2];H[i+292>>2]=d;d=H[c+44>>2];H[i+296>>2]=H[c+40>>2];H[i+300>>2]=d;d=H[c+20>>2];e=i+1312|0;H[e>>2]=H[c+16>>2];H[e+4>>2]=d;d=H[c+28>>2];e=i+1320|0;H[e>>2]=H[c+24>>2];H[e+4>>2]=d;d:{if(!(O(o-l)!=O(L[c+32>>2]-L[c+16>>2])|O(w-x)!=O(L[c+36>>2]-L[c+20>>2]))){d=0;if(O(s-y)==O(L[c+40>>2]-L[c+24>>2])){break d}}d=xZ(i,g,b,q,k)}Oa=c+48|0;if(!d){break a}break b;case 1:a=7;if(xZ(i,g,b,j+76|0,j+80|0)){break b}break a;case 2:H[j+76>>2]=3;a=j+80|0;c=yZ(i,0,1,2,a);a=yZ(i,1,0,2,a);if(!H[i>>2]){a=7;break a}F[c+32|0]=0;H[c+20>>2]=a;F[a+32|0]=0;H[a+20>>2]=c;F[c+33|0]=2;H[c+24>>2]=a;F[a+34|0]=1;H[a+28>>2]=c;F[c+34|0]=1;H[c+28>>2]=a;F[a+33|0]=2;H[a+24>>2]=c;break b;case 3:break c;default:break b}}z=O(L[i+272>>2]-L[i+1296>>2]);x=O(O(L[i+288>>2]-L[t>>2])-z);A=O(L[i+276>>2]-L[i+1300>>2]);s=O(O(L[i+308>>2]-L[i+1332>>2])-A);y=O(O(L[i+304>>2]-L[u>>2])-z);l=O(O(L[i+292>>2]-L[i+1316>>2])-A);o=O(O(x*s)-O(y*l));B=o;E=O(o*o);w=O(L[i+280>>2]-L[v>>2]);o=O(O(L[i+312>>2]-L[p>>2])-w);G=O(l*o);l=O(O(L[i+296>>2]-L[n>>2])-w);s=O(G-O(s*l));o=O(O(l*y)-O(o*x));l=O(O(1)/O(W(O(E+O(O(s*s)+O(o*o))))));if(O(O(O(B*l)*O(O(L[i+328>>2]-L[q>>2])-w))+O(O(O(s*l)*O(O(L[i+320>>2]-L[k>>2])-z))+O(O(O(L[i+324>>2]-L[i+1348>>2])-A)*O(o*l))))>O(0)){d=H[c+36>>2];H[i+288>>2]=H[c+32>>2];H[i+292>>2]=d;d=H[c+44>>2];H[i+296>>2]=H[c+40>>2];H[i+300>>2]=d;d=H[a+36>>2];H[t>>2]=H[a+32>>2];H[t+4>>2]=d;d=H[a+44>>2];H[t+8>>2]=H[a+40>>2];H[t+12>>2]=d;d=H[c+20>>2];H[i+304>>2]=H[c+16>>2];H[i+308>>2]=d;d=H[c+28>>2];H[i+312>>2]=H[c+24>>2];H[i+316>>2]=d;c=H[a+20>>2];H[u>>2]=H[a+16>>2];H[u+4>>2]=c;c=H[a+28>>2];H[u+8>>2]=H[a+24>>2];H[u+12>>2]=c}a=j+80|0;e=yZ(i,0,1,2,a);d=yZ(i,0,3,1,a);c=yZ(i,0,2,3,a);a=yZ(i,1,3,2,a);if(!H[i>>2]){a=7;break a}F[e+32|0]=2;H[e+20>>2]=d;F[d+34|0]=0;H[d+28>>2]=e;F[e+33|0]=2;H[e+24>>2]=a;F[a+34|0]=1;H[a+28>>2]=e;F[e+34|0]=0;H[e+28>>2]=c;F[c+32|0]=2;H[c+20>>2]=e;F[d+32|0]=2;H[d+20>>2]=c;F[c+34|0]=0;H[c+28>>2]=d;F[d+33|0]=0;H[d+24>>2]=a;F[a+32|0]=1;H[a+20>>2]=d;F[c+33|0]=1;H[c+24>>2]=a;F[a+33|0]=1;H[a+24>>2]=c;H[j+76>>2]=4}C=i+1296|0;D=i+272|0;u=i+5392|0;d=i+5656|0;o=L[H[b+4>>2]+20>>2];l=L[H[g+4>>2]+20>>2];J=O((l>o?o:l)*O(.10000000149011612));while(1){p=H[i+6176>>2];e:{if(!p){break e}e=0;if((p|0)!=1){q=p&-2;n=0;while(1){k=e<<2;c=H[(k+d|0)+264>>2];if((c|0)!=(H[i+5656>>2]-1|0)){a=H[i+5916>>2];H[i+5916>>2]=a+1;a=(i+(a<<2)|0)+5660|0}else{a=d}H[a>>2]=c;c=H[(d+(k|4)|0)+264>>2];if((c|0)!=(H[i+5656>>2]-1|0)){a=H[i+5916>>2];H[i+5916>>2]=a+1;a=(i+(a<<2)|0)+5660|0}else{a=d}H[a>>2]=c;e=e+2|0;n=n+2|0;if((q|0)!=(n|0)){continue}break}}if(!(p&1)){break e}c=H[(d+(e<<2)|0)+264>>2];if((c|0)!=(H[i+5656>>2]-1|0)){a=H[i+5916>>2];H[i+5916>>2]=a+1;a=(i+(a<<2)|0)+5660|0}else{a=d}H[a>>2]=c}a=0;H[i+6176>>2]=0;p=H[i>>2]-1|0;H[i>>2]=p;e=H[i+4>>2];q=H[e+(p<<2)>>2];r=H[e>>2];f:{if(p>>>0<2){break f}l=L[q+16>>2];k=0;n=1;c=0;while(1){a=k+2|0;a=(a>>>0

>>0&L[H[(a<<2)+e>>2]+16>>2]>2]+16>>2])+n|0;k=H[(a<<2)+e>>2];if(l>2]){a=c;break f}H[(c<<2)+e>>2]=k;e=H[i+4>>2];c=a;k=c<<1;n=k|1;if(p>>>0>n>>>0){continue}break}}H[(a<<2)+e>>2]=q;F[r+39|0]=0;g:{if(!I[r+38|0]){a=H[r+4>>2];H[j+32>>2]=H[r>>2];H[j+36>>2]=a;a=H[r+12>>2];H[j+40>>2]=H[r+8>>2];H[j+44>>2]=a;K=L[r+16>>2];a=j+16|0;Ra[H[H[g>>2]+4>>2]](a,g,j+32|0);M=L[j+28>>2];B=L[j+24>>2];E=L[j+16>>2];G=L[j+20>>2];H[j+12>>2]=0;L[j+8>>2]=-L[j+40>>2];L[j+4>>2]=-L[j+36>>2];L[j>>2]=-L[j+32>>2];Ra[H[H[b>>2]+4>>2]](a,b,j);H[j+60>>2]=0;z=L[j+20>>2];A=O(G-z);L[j+52>>2]=A;w=L[j+36>>2];x=L[j+16>>2];s=O(E-x);L[j+48>>2]=s;o=L[j+32>>2];y=L[j+24>>2];l=O(B-y);L[j+56>>2]=l;s=O(O(l*L[j+40>>2])+O(O(s*o)+O(A*w)));if(J>=O(P(O(s-K)))){zZ(D,C,r,g,b,f,h);if(f){a=6;l=O(L[h+8>>2]-L[h+24>>2]);o=O(l*l);l=O(L[h>>2]-L[h+16>>2]);B=O(l*l);l=O(L[h+4>>2]-L[h+20>>2]);l=O(o+O(B+O(l*l)));if(O(O(L[m>>2]*O(.0010000000474974513))+O(P(L[h+64>>2])))<(l>O(0)?O(W(l)):O(0))){break a}}a=5;break a}t=H[j+76>>2];o=L[j+28>>2];l=L[j+80>>2];L[j+80>>2]=l>s?s:l;a=i+(t<<4)|0;L[a+272>>2]=E;L[a+284>>2]=M;L[a+280>>2]=B;L[a+276>>2]=G;L[a+1296>>2]=x;L[a+1308>>2]=o;L[a+1304>>2]=y;L[a+1300>>2]=z;H[j+76>>2]=t+1;F[i+5652|0]=0;H[i+5648>>2]=0;F[r+38|0]=1;a=j+48|0;AZ(H[r+20>>2],F[r+32|0],a,D,C,u,d);AZ(H[r+24>>2],F[r+33|0],a,D,C,u,d);AZ(H[r+28>>2],F[r+34|0],a,D,C,u,d);v=H[i+5648>>2];if(I[i+5652|0]|!v|v>>>0>(H[i+5916>>2]-H[i+5656>>2]|0)- -64>>>0){break g}a=H[i+5392>>2]+35|0;c=H[i+5396>>2];e=yZ(i,F[a+H[(c<<2)+88600>>2]|0],F[a+c|0],t,j+80|0);c=H[i+5392>>2];a=H[i+5396>>2];F[e+32|0]=a;H[e+20>>2]=c;H[(c+(a<<2)|0)+20>>2]=e;F[(a+c|0)+32|0]=0;n=1;a=e;if(v>>>0>1){while(1){c=i+(n<<3)|0;q=c+5392|0;p=H[q>>2]+35|0;k=c+5396|0;c=H[k>>2];c=yZ(i,F[p+H[(c<<2)+88600>>2]|0],F[c+p|0],t,j+80|0);q=H[q>>2];k=H[k>>2];F[c+32|0]=k;H[c+20>>2]=q;H[(q+(k<<2)|0)+20>>2]=c;F[(k+q|0)+32|0]=0;F[c+34|0]=1;H[c+28>>2]=a;F[a+33|0]=2;H[a+24>>2]=c;a=c;n=n+1|0;if((v|0)!=(n|0)){continue}break}}F[e+34|0]=1;H[e+28>>2]=a;F[a+33|0]=2;H[a+24>>2]=e}c=I[r+40|0];if((c|0)!=(H[d>>2]-1|0)){a=H[i+5916>>2];H[i+5916>>2]=a+1;a=(i+(a<<2)|0)+5660|0}else{a=d}H[a>>2]=c;if(!H[i>>2]|!(L[j+80>>2]>L[H[H[i+4>>2]>>2]+16>>2])){break g}if(H[j+76>>2]!=64){continue}}break}zZ(D,C,r,g,b,f,h);a=6}Oa=j+96|0;Oa=m+6336|0;return a}function wY(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t){var u=O(0),v=0,w=O(0),x=O(0),y=O(0),z=0,A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),G=O(0),J=O(0),K=O(0),M=O(0),Q=O(0),R=O(0),S=O(0),T=O(0),U=0,V=O(0),W=O(0),X=0,Y=O(0),Z=O(0),_=O(0),$=0,aa=0,ba=0,ca=O(0),da=O(0),ea=O(0),fa=O(0),ga=0,ha=0,ia=0,ja=O(0),ka=O(0),la=O(0),ma=O(0),na=O(0),oa=O(0),pa=O(0),qa=O(0),ra=O(0),sa=O(0),ta=O(0),ua=O(0),va=O(0),wa=O(0),xa=0,ya=0;v=Oa-112|0;Oa=v;u=L[m>>2];a:{if(r){K=L[m+8>>2];ma=O(-K);M=L[m+4>>2];na=O(-M);W=O(-u);break a}M=L[m+4>>2];na=M;K=L[m+8>>2];ma=K;W=u}sa=W;X=v-(N(a>>>0>>0?g:a,12)+15&-16)|0;Oa=X;z=a+15&-16;ga=X-z|0;m=ga;Oa=m;aa=m-z|0;Oa=aa;z=g+15&-16;ha=aa-z|0;m=ha;Oa=m;ia=m-z|0;Oa=ia;xa=H[q+4096>>2];m=0;H[v+16>>2]=0;H[v+32>>2]=0;H[v>>2]=0;H[v+44>>2]=0;b:{c:{d:{if(g>>>0<3){break d}oa=O(O(L[j+8>>2]*K)+O(O(L[j>>2]*u)+O(L[j+4>>2]*M)));pa=O(O(L[j+20>>2]*K)+O(O(L[j+12>>2]*u)+O(M*L[j+16>>2])));qa=O(O(L[j+32>>2]*K)+O(O(L[j+24>>2]*u)+O(M*L[j+28>>2])));Q=O(O(O(O(-oa)*L[k>>2])-O(L[k+4>>2]*pa))-O(qa*L[k+8>>2]));if(!(Q>=O(1.0000000116860974e-7))){break d}R=L[n+44>>2];S=L[l+32>>2];V=L[n+40>>2];T=L[l+28>>2];C=L[n+36>>2];J=L[l+24>>2];G=L[n+32>>2];D=L[n+28>>2];E=L[n+24>>2];B=L[n+20>>2];A=L[n+16>>2];y=L[n+12>>2];w=L[n+4>>2];x=L[n>>2];u=L[n+8>>2];ra=L[k+12>>2];xY(v+16|0,v+32|0,v,v+44|0,X,g,h,i,l);if(!a){k=0;break c}ta=O(O(S*R)+O(O(J*C)+O(T*V)));ua=O(O(S*G)+O(O(J*E)+O(T*D)));va=O(O(S*B)+O(O(J*y)+O(T*A)));wa=O(O(S*u)+O(O(J*x)+O(w*T)));K=O(O(1)/Q);M=O(-ra);Y=L[v+44>>2];Z=L[v>>2];_=L[v+32>>2];S=L[v+16>>2];k=0;while(1){U=c+m|0;ba=N(I[U|0],12)+b|0;B=L[ba+8>>2];A=L[ba>>2];u=L[ba+4>>2];y=O(ta+O(O(B*ua)+O(O(A*wa)+O(va*u))));ca=O(K*O(ra+y));w=O(O(qa*ca)+O(O(O(O(A*L[n+8>>2])+O(u*L[n+20>>2]))+O(B*L[n+32>>2]))+L[n+44>>2]));x=O(O(oa*ca)+O(O(O(O(A*L[n>>2])+O(u*L[n+12>>2]))+O(B*L[n+24>>2]))+L[n+36>>2]));u=O(O(pa*ca)+O(O(O(O(A*L[n+4>>2])+O(u*L[n+16>>2]))+O(B*L[n+28>>2]))+L[n+40>>2]));z=yY(X,g,O(O(O(L[l+8>>2]*w)+O(O(L[l>>2]*x)+O(u*L[l+4>>2])))-S),O(O(O(L[l+20>>2]*w)+O(O(L[l+12>>2]*x)+O(u*L[l+16>>2])))-_),Z,Y,m+aa|0);F[m+ga|0]=z;e:{if(!z){break e}$=$+1|0;if(!(y>2];if(z>>>0>63){break e}H[q+4096>>2]=z+1;F[(v+48|0)+ya|0]=I[U|0];z=(z<<6)+q|0;L[z+8>>2]=ma;L[z+4>>2]=na;L[z>>2]=sa;T=L[d+36>>2];J=L[d+24>>2];Q=L[d>>2];R=L[d+12>>2];V=L[s>>2];C=L[d+40>>2];G=L[d+28>>2];D=L[d+4>>2];E=L[d+16>>2];B=L[s+4>>2];A=L[d+44>>2];y=L[d+32>>2];ja=L[ba+8>>2];w=L[d+8>>2];ka=L[ba>>2];x=L[d+20>>2];la=L[ba+4>>2];u=L[s+8>>2];H[z+52>>2]=p;L[z+12>>2]=ca+t;L[z+24>>2]=O(A+O(O(O(ka*w)+O(la*x))+O(ja*y)))+(r?u:O(0));L[z+20>>2]=O(C+O(O(O(ka*D)+O(la*E))+O(ja*G)))+(r?B:O(0));L[z+16>>2]=O(T+O(O(O(ka*Q)+O(la*R))+O(ja*J)))+(r?V:O(0));ya=ya+1|0}m=m+1|0;if((m|0)!=(a|0)){continue}break}break c}S6(ga,0,a);S6(aa,0,a);break b}m=k}f:{if((a|0)==($|0)){zY(q,xa,a,f,b,v+48|0);break f}zY(q,xa,$,f,b,v+48|0);Y=L[o+44>>2];K=L[o+40>>2];M=L[o+36>>2];Z=L[o+32>>2];_=L[o+28>>2];S=L[o+24>>2];T=L[o+20>>2];J=L[o+16>>2];Q=L[o+12>>2];R=L[o+4>>2];V=L[o>>2];C=L[o+8>>2];g:{if(a>>>0>=3){G=L[f+32>>2];D=L[f+28>>2];E=L[f+24>>2];B=L[f+20>>2];A=L[f+16>>2];y=L[f+12>>2];w=L[f+4>>2];x=L[f>>2];u=L[f+8>>2];U=H[q+4096>>2];W=L[e+12>>2];xY(v+16|0,v+32|0,v,v+44|0,X,a,b,c,f);f=0;if(g){ca=O(O(G*Y)+O(O(E*M)+O(D*K)));ja=O(O(B*Y)+O(O(y*M)+O(A*K)));ka=O(O(G*Z)+O(O(E*S)+O(D*_)));la=O(O(B*Z)+O(O(y*S)+O(A*_)));ra=O(O(G*T)+O(O(E*Q)+O(D*J)));oa=O(O(B*T)+O(O(y*Q)+O(A*J)));pa=O(O(u*Y)+O(O(x*M)+O(w*K)));qa=O(O(u*Z)+O(O(x*S)+O(w*_)));ta=O(O(u*T)+O(O(x*Q)+O(w*J)));ua=O(O(G*C)+O(O(E*V)+O(R*D)));va=O(O(B*C)+O(O(y*V)+O(R*A)));wa=O(O(u*C)+O(O(x*V)+O(w*R)));K=O(-W);M=L[v+44>>2];Y=L[v>>2];Z=L[v+32>>2];_=L[v+16>>2];$=0;n=0;while(1){z=I[i+n|0];k=N(z,12)+h|0;da=L[k+8>>2];ea=L[k>>2];fa=L[k+4>>2];k=yY(X,a,O(O(pa+O(O(da*qa)+O(O(ea*wa)+O(ta*fa))))-_),O(O(ja+O(O(da*la)+O(O(ea*va)+O(oa*fa))))-Z),Y,M,n+ia|0);F[n+ha|0]=k;h:{if(!k){break h}f=f+1|0;S=O(ca+O(O(da*ka)+O(O(ea*ua)+O(ra*fa))));if(!(S>2];if(k>>>0>63){break h}H[q+4096>>2]=k+1;F[(v+48|0)+$|0]=z;k=(k<<6)+q|0;L[k+8>>2]=ma;L[k+4>>2]=na;L[k>>2]=sa;T=L[j+36>>2];J=L[j+24>>2];Q=L[j>>2];R=L[j+12>>2];V=L[s>>2];C=L[j+40>>2];G=L[j+28>>2];D=L[j+4>>2];E=L[j+16>>2];B=L[s+4>>2];A=L[j+44>>2];y=L[j+32>>2];w=L[j+8>>2];x=L[j+20>>2];u=L[s+8>>2];H[k+52>>2]=p;L[k+12>>2]=O(W+S)+t;L[k+24>>2]=O(A+O(O(O(ea*w)+O(fa*x))+O(da*y)))+(r?O(0):u);L[k+20>>2]=O(C+O(O(O(ea*D)+O(fa*E))+O(da*G)))+(r?O(0):B);L[k+16>>2]=O(T+O(O(O(ea*Q)+O(fa*R))+O(da*J)))+(r?O(0):V);$=$+1|0}n=n+1|0;if((n|0)!=(g|0)){continue}break}}if((f|0)==(g|0)){zY(q,U,g,l,h,v+48|0);break f}zY(q,U,f,l,h,v+48|0);Y=L[o+44>>2];K=L[o+40>>2];M=L[o+36>>2];Z=L[o+32>>2];_=L[o+28>>2];S=L[o+24>>2];T=L[o+20>>2];J=L[o+16>>2];Q=L[o+12>>2];C=L[o+8>>2];R=L[o+4>>2];V=L[o>>2];break g}S6(ha,0,g);S6(ia,0,g)}if(!g){break f}n=0;while(1){j=N(n,12)+X|0;f=N(I[i+n|0],12)+h|0;w=L[f>>2];x=L[f+4>>2];u=L[f+8>>2];L[j+8>>2]=O(O(O(w*C)+O(x*T))+O(u*Z))+Y;L[j+4>>2]=O(O(O(w*R)+O(x*J))+O(u*_))+K;L[j>>2]=O(O(O(w*V)+O(x*Q))+O(u*S))+M;n=n+1|0;if((n|0)!=(g|0)){continue}break}if(a>>>0<2|g>>>0<2){break f}k=0;while(1){f=k;k=f+1|0;h=g>>>0>k>>>0?k:0;if(!(I[h+ia|0]&I[f+ia|0]|(I[h+ha|0]?I[f+ha|0]:0))){U=N(f,12)+X|0;C=L[U>>2];z=N(h,12)+X|0;x=L[z>>2];G=L[U+8>>2];u=L[z+8>>2];w=L[U+4>>2];D=O(L[z+4>>2]-w);L[v+36>>2]=D;y=O(u-G);L[v+40>>2]=y;E=O(x-C);L[v+32>>2]=E;B=L[e+4>>2];x=L[e>>2];u=L[e+8>>2];A=O(O(y*x)-O(u*E));L[v+20>>2]=A;y=O(O(D*u)-O(B*y));L[v+16>>2]=y;u=O(O(E*B)-O(x*D));L[v+24>>2]=u;L[v+28>>2]=-O(O(u*G)+O(O(y*C)+O(w*A)));w=O(P(u));x=O(P(A));u=O(P(y));i:{j:{if(!(!(x>u)|!(w>2]*L[h+e>>2])-O(L[e+l>>2]*L[h+j>>2])));n=0;while(1){h=n;n=n+1|0;j=a>>>0>n>>>0?n:0;k:{if(I[j+aa|0]&I[h+aa|0]|(I[j+ga|0]?I[h+ga|0]:0)){break k}o=v+32|0;l=0;h=N(I[c+h|0],12)+b|0;C=L[h+8>>2];y=L[v+24>>2];G=L[h>>2];D=L[v+16>>2];E=L[h+4>>2];B=L[v+20>>2];u=L[v+28>>2];A=O(O(O(C*y)+O(O(G*D)+O(E*B)))+u);W=u;h=N(I[c+j|0],12)+b|0;w=L[h+8>>2];x=L[h>>2];u=L[h+4>>2];l:{if(O(A*O(W+O(O(w*y)+O(O(x*D)+O(B*u)))))>O(0)){break l}W=y;y=O(w-C);w=O(x-G);x=O(u-E);u=O(O(W*y)+O(O(D*w)+O(x*B)));if(u==O(0)){break l}u=O(A/u);L[v+8>>2]=C-O(y*u);L[v+4>>2]=E-O(x*u);L[v>>2]=G-O(w*u);j=f<<2;h=i<<2;A=O(O(O(L[j+o>>2]*O(L[h+v>>2]-L[h+U>>2]))-O(O(L[j+v>>2]-L[j+U>>2])*L[h+o>>2]))*V);L[v+44>>2]=A;if(A>2];u=L[e+4>>2];y=O(L[v>>2]-O(A*L[e>>2]));L[v>>2]=y;w=O(L[v+4>>2]-O(A*u));L[v+4>>2]=w;u=O(L[v+8>>2]-O(A*x));L[v+8>>2]=u;l=O(O(O(L[U+8>>2]-u)*O(L[z+8>>2]-u))+O(O(O(L[U>>2]-y)*O(L[z>>2]-y))+O(O(L[U+4>>2]-w)*O(L[z+4>>2]-w))))>2];if(h>>>0>63){break k}H[q+4096>>2]=h+1;h=(h<<6)+q|0;L[h+8>>2]=ma;L[h+4>>2]=na;L[h>>2]=sa;C=L[d+36>>2];G=L[d+24>>2];D=L[d>>2];E=L[d+12>>2];B=L[s>>2];A=L[d+40>>2];y=L[d+28>>2];w=L[d+4>>2];x=L[d+16>>2];u=L[s+4>>2];J=L[v>>2];Q=L[v+4>>2];R=L[v+8>>2];L[h+24>>2]=O(O(O(O(J*L[d+8>>2])+O(Q*L[d+20>>2]))+O(R*L[d+32>>2]))+L[d+44>>2])+(r?O(0):L[s+8>>2]);L[h+20>>2]=O(A+O(O(O(J*w)+O(Q*x))+O(R*y)))+(r?O(0):u);L[h+16>>2]=O(C+O(O(O(J*D)+O(Q*E))+O(R*G)))+(r?O(0):B);u=L[v+44>>2];H[h+52>>2]=p;L[h+12>>2]=t-u}if((a|0)!=(n|0)){continue}break}}if((g|0)!=(k|0)){continue}break}}Oa=v+112|0;return m}function Qy(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,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=O(0);u=Oa-16|0;Oa=u;w=H[a+92>>2]<<5;b=H[a+28>>2];x=H[b+440>>2];v=H[b+452>>2];e=H[H[a+32>>2]>>2];j=H[e+11960>>2];a:{if(!H[e+11896>>2]){n=j;break a}g=H[e+11892>>2];n=j;b=0;while(1){o=s<<2;d=H[o+g>>2]+c|0;b:{if(d>>>0>c>>>0){m=0;l=c;while(1){q=h;k=J[(H[e+11964>>2]+(l<<3)|0)+4>>1];c:{if(!k){break c}t=b+k|0;while(1){g=j+(b<<5)|0;d:{if(!J[g+22>>1]){k=k-1|0;break d}if((b|0)!=(h|0)){p=H[g+4>>2];i=j+(h<<5)|0;H[i>>2]=H[g>>2];H[i+4>>2]=p;p=H[g+28>>2];H[i+24>>2]=H[g+24>>2];H[i+28>>2]=p;p=H[g+20>>2];H[i+16>>2]=H[g+16>>2];H[i+20>>2]=p;p=H[g+12>>2];H[i+8>>2]=H[g+8>>2];H[i+12>>2]=p}n=n+32|0;h=h+1|0}b=b+1|0;if((t&65535)!=(b&65535)){continue}break}g=k&65535;if(!g){break c}t=H[e+11964>>2]+(f<<3)|0;G[t+4>>1]=k;H[t>>2]=q;i=I[H[(j+(q<<5)|0)+24>>2]];e:{if((i|0)!=5){break e}i=5;if(g>>>0<2){break e}k=g-1|0;p=k&3;f:{if(g-2>>>0<3){g=1;break f}r=k&-4;k=0;g=1;while(1){y=i;i=j+(g+q<<5)|0;i=I[H[i+120>>2]]==1?1:I[H[i+88>>2]]==1?1:I[H[i+56>>2]]==1?1:I[H[i+24>>2]]==1?1:y;g=g+4|0;k=k+4|0;if((r|0)!=(k|0)){continue}break}}k=0;if(!p){break e}while(1){i=I[H[(j+(g+q<<5)|0)+24>>2]]==1?1:i;g=g+1|0;k=k+1|0;if((p|0)!=(k|0)){continue}break}}G[t+6>>1]=i&255;m=m+1|0;f=f+1|0}l=l+1|0;if((d|0)!=(l|0)){continue}break}g=H[e+11892>>2];c=H[o+g>>2]+c|0;break b}m=0;c=d}H[g+o>>2]=m;s=s+1|0;if(s>>>0>2]){continue}break}b=H[a+28>>2]}H[e+11968>>2]=f;H[e+12080>>2]=h;c=n-j>>5;H[e+11868>>2]=c;H[e+11876>>2]=h-c;if(H[b+112>>2]){H[e+11992>>2]=0;n=H[e+11976>>2];if((H[e+11996>>2]&2147483647)>>>0>>0){iy(e+11988|0,f)}H[e+11908>>2]=0;t=e+11904|0;l=H[e+11988>>2];b=H[e+11900>>2]&2147483647;if(b>>>0>(H[e+11912>>2]&2147483647)>>>0){Dv(t,b)}k=0;g:{if(!H[e+11896>>2]){b=n;break g}b=n;h=0;m=0;s=0;while(1){f=m;c=h;h=H[H[e+11892>>2]+(s<<2)>>2]+c|0;if(c>>>0>>0){while(1){i=H[e+11964>>2]+(c<<3)|0;d=J[i+6>>1];h:{if(d>>>0>8){break h}q=J[i+4>>1];d=1<>2]<<5)|0;g=H[d+24>>2];o=J[g+2>>1];g=g+o|0;p=I[g|0];r=J[d+22>>1];H[b+24>>2]=g;o=(r<<4)-o>>>4|0;G[b+22>>1]=o;H[b>>2]=H[d>>2];H[b+4>>2]=H[d+4>>2];H[b+12>>2]=H[d+12>>2];H[b+16>>2]=H[d+16>>2];G[b+8>>1]=J[d+8>>1];d=J[d+10>>1];H[b+28>>2]=0;G[b+10>>1]=d;G[b+20>>1]=0;d=H[i>>2];H[b+56>>2]=g;G[b+54>>1]=o;d=j+(d<<5)|0;H[b+32>>2]=H[d+32>>2];H[b+36>>2]=H[d+36>>2];H[b+44>>2]=H[d+44>>2];H[b+48>>2]=H[d+48>>2];G[b+40>>1]=J[d+40>>1];d=J[d+42>>1];H[b+60>>2]=0;G[b+42>>1]=d;G[b+52>>1]=0;d=H[i>>2];H[b+88>>2]=g;G[b+86>>1]=o;d=j+(d<<5)|0;H[b+64>>2]=H[d- -64>>2];H[b+68>>2]=H[d+68>>2];H[b+76>>2]=H[d+76>>2];H[b+80>>2]=H[d+80>>2];G[b+72>>1]=J[d+72>>1];d=J[d+74>>1];H[b+92>>2]=0;G[b+74>>1]=d;G[b+84>>1]=0;d=H[i>>2];H[b+120>>2]=g;G[b+118>>1]=o;d=j+(d<<5)|0;H[b+96>>2]=H[d+96>>2];H[b+100>>2]=H[d+100>>2];H[b+108>>2]=H[d+108>>2];H[b+112>>2]=H[d+112>>2];G[b+104>>1]=J[d+104>>1];d=J[d+106>>1];H[b+124>>2]=0;G[b+106>>1]=d;G[b+116>>1]=0;G[l+6>>1]=p;G[l+4>>1]=q;H[l>>2]=k;k=k+q|0;f=f+1|0;l=l+8|0;b=b+128|0;break h}i:{if(!q){g=0;d=0;break i}g=0;while(1){d=j+(H[i>>2]+g<<5)|0;p=J[d+22>>1];r=H[d+24>>2];o=J[r+2>>1];r=o+r|0;H[b+24>>2]=r;G[b+22>>1]=(p<<4)-o>>>4;H[b>>2]=H[d>>2];H[b+4>>2]=H[d+4>>2];H[b+12>>2]=H[d+12>>2];H[b+16>>2]=H[d+16>>2];G[b+8>>1]=J[d+8>>1];d=J[d+10>>1];H[b+28>>2]=0;G[b+10>>1]=d;G[b+20>>1]=0;b=b+32|0;g=g+1|0;if((q|0)!=(g|0)){continue}break}g=I[r|0];d=q}G[l+4>>1]=q;H[l>>2]=k;G[l+6>>1]=g&255;k=d+k|0;f=f+1|0;l=l+8|0}c=c+1|0;if((h|0)!=(c|0)){continue}break}j:{if(f>>>0<=m>>>0){break j}c=f-m|0;H[u+12>>2]=c;m=H[e+11908>>2];if(m>>>0>=(H[e+11912>>2]&2147483647)>>>0){qm(t,u+12|0);break j}H[H[e+11904>>2]+(m<<2)>>2]=c;H[e+11908>>2]=H[e+11908>>2]+1}m=f}s=s+1|0;if(s>>>0>2]){continue}break}}H[e+12084>>2]=k;b=b-n>>5;H[e+11872>>2]=b;H[e+11992>>2]=l-H[e+11988>>2]>>3;H[e+11884>>2]=k-b;b=H[a+28>>2]}h=H[e+11976>>2];f=H[e+11960>>2];c=yq(H[b+584>>2],156);H[c>>2]=H[e+12112>>2];j=H[e+12116>>2];H[c+12>>2]=v;m=w+x|0;H[c+8>>2]=m;H[c+4>>2]=j;H[c+20>>2]=H[a+92>>2];H[c+16>>2]=H[H[a+32>>2]+4>>2];H[c+24>>2]=H[e+12144>>2];j=H[e+12148>>2];H[c+68>>2]=0;H[c+72>>2]=0;H[c+32>>2]=f;H[c+28>>2]=j;H[c+76>>2]=0;H[c+80>>2]=0;H[c+84>>2]=0;H[c+88>>2]=0;H[c+92>>2]=0;f=H[a+28>>2];j=H[f+4>>2];H[c+132>>2]=H[j+4>>2];j=H[j+8>>2];H[c+140>>2]=b+536;H[c+136>>2]=j;H[c+52>>2]=H[e+11940>>2];b=H[e+11928>>2];H[c+96>>2]=0;H[c+60>>2]=b;H[c+36>>2]=H[e+11964>>2];H[c+40>>2]=H[e+11968>>2];H[c+44>>2]=H[e+11892>>2];H[c+48>>2]=H[e+11896>>2];H[c+64>>2]=H[a+36>>2];H[c+120>>2]=H[e+11904>>2];H[c+124>>2]=H[e+11908>>2];H[c+112>>2]=H[e+11988>>2];b=H[e+11992>>2];H[c+128>>2]=0;H[c+116>>2]=b;H[c+108>>2]=h;H[c+144>>2]=H[e+12128>>2];L[c+100>>2]=L[f+52>>2];L[c+104>>2]=L[f+56>>2];f=H[e+12104>>2];b=H[a+16>>2];b=Ra[H[H[b>>2]+4>>2]](b)|0;b=Ra[H[H[b>>2]+4>>2]](b)|0;f=f<<3;f=f?f:1;f=((f+H[e+11968>>2]|0)-1>>>0)/(f>>>0)|0;b=b>>>0>f>>>0?f:b;k:{if(b>>>0>=2){h=b>>>0>1?b:1;b=(f<<3>>>0)/(h<<1>>>0)|0;H[c+56>>2]=b>>>0>8?b:8;n=1;while(1){b=yq(H[H[a+28>>2]+584>>2],48);f=H[a+28>>2];j=H[f+112>>2];m=H[a+96>>2];e=H[f+600>>2];l=H[f+604>>2];H[b+24>>2]=0;H[b+16>>2]=0;H[b+20>>2]=0;H[b+8>>2]=e;H[b+12>>2]=l;H[b+40>>2]=m;H[b+36>>2]=j;H[b+32>>2]=f;H[b+28>>2]=c;H[b>>2]=113524;f=H[a+20>>2];H[b+20>>2]=f;H[b+24>>2]=1;if(f){Ra[H[H[f>>2]+16>>2]](f);H[b+16>>2]=H[H[b+20>>2]+16>>2];d=H[b>>2]}else{d=113524}Ra[H[d+20>>2]](b);n=n+1|0;if((h|0)!=(n|0)){continue}break}ry(H[a+28>>2],c,H[a+96>>2]);a=H[a+32>>2];a=(H[a+8>>2]&2147483647)+H[a+4>>2]|0;if((a|0)<=H[c+96>>2]|(a|0)<=H[c+96>>2]){break k}b=3e4;while(1){if((a|0)<=H[c+96>>2]){break k}b=b-1|0;if(b){continue}b=1e4;continue}}H[e+12052>>2]=0;b=H[e+12128>>2];if(b>>>0>(H[e+12056>>2]&2147483647)>>>0){Cv(e+12048|0,b);b=H[e+12128>>2]}H[e+12052>>2]=b;f=0;H[e+12064>>2]=0;if((H[e+12068>>2]&2147483647)>>>0>>0){Cv(e+12060|0,b);b=H[e+12128>>2]}H[e+12064>>2]=b;H[c+148>>2]=H[e+12048>>2];H[c+152>>2]=H[e+12060>>2];b=H[a+28>>2];b=H[((H[b+112>>2]<<2)+b|0)+484>>2];Ra[H[H[b>>2]+16>>2]](b,c);h=H[a+32>>2];if(H[h+4>>2]){n=(N(H[a+92>>2],112)+v|0)+112|0;while(1){j=f<<5;b=j+H[e+11940>>2]|0;h=n+N(f,112)|0;sy(b,b+16|0,j+m|0,h,L[H[a+28>>2]+52>>2]);c=H[H[a+36>>2]+(f<<2)>>2];b=H[c+36>>2];L[c>>2]=L[b>>2];L[c+4>>2]=L[b+4>>2];L[c+8>>2]=L[b+8>>2];L[c+12>>2]=L[b+12>>2];L[c+16>>2]=L[b+16>>2];L[c+20>>2]=L[b+20>>2];L[c+24>>2]=L[b+24>>2];L[b>>2]=L[h+80>>2];L[b+4>>2]=L[h+84>>2];L[b+8>>2]=L[h+88>>2];L[b+12>>2]=L[h+92>>2];L[b+16>>2]=L[h+96>>2];L[b+20>>2]=L[h+100>>2];L[b+24>>2]=L[h+104>>2];L[b+64>>2]=L[h>>2];L[b+68>>2]=L[h+4>>2];L[b+72>>2]=L[h+8>>2];L[b+80>>2]=L[h+16>>2];L[b+84>>2]=L[h+20>>2];L[b+88>>2]=L[h+24>>2];b=H[a+28>>2];z=L[b+52>>2];q=I[b+64|0];d=I[b+66|0];b=H[a+96>>2];if(ty(c,z,q,d,j+H[e+11940>>2]|0,H[H[b+100>>2]+(H[H[b+204>>2]+((H[h+72>>2]&33554431)<<2)>>2]<<2)>>2]!=0)==O(0)){H[c+64>>2]=0;H[c+68>>2]=0;H[c+48>>2]=0;H[c+52>>2]=0;H[c+72>>2]=0;H[c+56>>2]=0;G[c+28>>1]=J[c+28>>1]|16}f=f+1|0;h=H[a+32>>2];if(f>>>0>2]){continue}break}}if(!(H[h+8>>2]&2147483647)){break k}b=0;while(1){c=H[e+12144>>2]+N(b,52)|0;f=H[(H[H[c>>2]+24>>2]<<2)+135108>>2];if(f){Ra[f|0](c,L[H[a+28>>2]+52>>2]);h=H[a+32>>2]}b=b+1|0;if(b>>>0<(H[h+8>>2]&2147483647)>>>0){continue}break}}Oa=u+16|0}function po(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,o=0,p=0,q=0,r=0,s=0,t=0;c=Oa-208|0;Oa=c;p=a+40|0;g=H[p>>2];H[p>>2]=g?g:1;a:{b:{switch(g+1|0){case 2:o5(H[33808],8,4610,312,16689,0);break a;case 0:o5(H[33808],8,4610,317,13506,0);break a;default:break b}}f=H[a+28>>2];c:{if(!f){break c}b=H[a+60>>2];if(f-1>>>0>=7){g=f&-8;while(1){d=b+N(e,80)|0;H[d+64>>2]=0;H[d+68>>2]=0;G[d+70>>1]=0;G[d+72>>1]=0;G[d+74>>1]=0;G[d+76>>1]=0;d=b+N(e|1,80)|0;G[d+70>>1]=0;G[d+72>>1]=0;G[d+74>>1]=0;G[d+76>>1]=0;H[d+64>>2]=0;H[d+68>>2]=0;d=b+N(e|2,80)|0;G[d+70>>1]=0;G[d+72>>1]=0;G[d+74>>1]=0;G[d+76>>1]=0;H[d+64>>2]=0;H[d+68>>2]=0;d=b+N(e|3,80)|0;G[d+70>>1]=0;G[d+72>>1]=0;G[d+74>>1]=0;G[d+76>>1]=0;H[d+64>>2]=0;H[d+68>>2]=0;d=b+N(e|4,80)|0;G[d+70>>1]=0;G[d+72>>1]=0;G[d+74>>1]=0;G[d+76>>1]=0;H[d+64>>2]=0;H[d+68>>2]=0;d=b+N(e|5,80)|0;G[d+70>>1]=0;G[d+72>>1]=0;G[d+74>>1]=0;G[d+76>>1]=0;H[d+64>>2]=0;H[d+68>>2]=0;d=b+N(e|6,80)|0;G[d+70>>1]=0;G[d+72>>1]=0;G[d+74>>1]=0;G[d+76>>1]=0;H[d+64>>2]=0;H[d+68>>2]=0;d=b+N(e|7,80)|0;G[d+70>>1]=0;G[d+72>>1]=0;G[d+74>>1]=0;G[d+76>>1]=0;H[d+64>>2]=0;H[d+68>>2]=0;e=e+8|0;h=h+8|0;if((g|0)!=(h|0)){continue}break}}g=f&7;if(!g){break c}while(1){f=b+N(e,80)|0;H[f+64>>2]=0;H[f+68>>2]=0;G[f+70>>1]=0;G[f+72>>1]=0;G[f+74>>1]=0;G[f+76>>1]=0;e=e+1|0;l=l+1|0;if((g|0)!=(l|0)){continue}break}}d=H[a+32>>2];d:{if(!d){break d}m=H[a+76>>2];h=0;l=0;if(d-1>>>0>=7){f=d&-8;g=0;while(1){k=l<<5;b=k+m|0;H[b+16>>2]=0;H[b+20>>2]=0;G[b+22>>1]=0;G[b+24>>1]=0;G[b+26>>1]=0;G[b+28>>1]=0;b=m+(k|32)|0;G[b+22>>1]=0;G[b+24>>1]=0;G[b+26>>1]=0;G[b+28>>1]=0;H[b+16>>2]=0;H[b+20>>2]=0;b=m+(k|64)|0;G[b+22>>1]=0;G[b+24>>1]=0;G[b+26>>1]=0;G[b+28>>1]=0;H[b+16>>2]=0;H[b+20>>2]=0;b=m+(k|96)|0;G[b+22>>1]=0;G[b+24>>1]=0;G[b+26>>1]=0;G[b+28>>1]=0;H[b+16>>2]=0;H[b+20>>2]=0;b=m+(k|128)|0;G[b+22>>1]=0;G[b+24>>1]=0;G[b+26>>1]=0;G[b+28>>1]=0;H[b+16>>2]=0;H[b+20>>2]=0;b=m+(k|160)|0;G[b+22>>1]=0;G[b+24>>1]=0;G[b+26>>1]=0;G[b+28>>1]=0;H[b+16>>2]=0;H[b+20>>2]=0;b=m+(k|192)|0;G[b+22>>1]=0;G[b+24>>1]=0;G[b+26>>1]=0;G[b+28>>1]=0;H[b+16>>2]=0;H[b+20>>2]=0;b=m+(k|224)|0;G[b+22>>1]=0;G[b+24>>1]=0;G[b+26>>1]=0;G[b+28>>1]=0;H[b+16>>2]=0;H[b+20>>2]=0;l=l+8|0;g=g+8|0;if((f|0)!=(g|0)){continue}break}}g=d&7;if(!g){break d}while(1){f=m+(l<<5)|0;H[f+16>>2]=0;H[f+20>>2]=0;G[f+22>>1]=0;G[f+24>>1]=0;G[f+26>>1]=0;G[f+28>>1]=0;l=l+1|0;h=h+1|0;if((g|0)!=(h|0)){continue}break}}e=H[a+68>>2];d=H[a+36>>2];if(d){h=0;l=0;if(d-1>>>0>=7){f=d&-8;g=0;while(1){k=l<<6;b=k+e|0;H[b+48>>2]=0;H[b+52>>2]=0;G[b+54>>1]=0;G[b+56>>1]=0;G[b+58>>1]=0;G[b+60>>1]=0;b=(k|64)+e|0;G[b+54>>1]=0;G[b+56>>1]=0;G[b+58>>1]=0;G[b+60>>1]=0;H[b+48>>2]=0;H[b+52>>2]=0;b=(k|128)+e|0;G[b+54>>1]=0;G[b+56>>1]=0;G[b+58>>1]=0;G[b+60>>1]=0;H[b+48>>2]=0;H[b+52>>2]=0;b=(k|192)+e|0;G[b+54>>1]=0;G[b+56>>1]=0;G[b+58>>1]=0;G[b+60>>1]=0;H[b+48>>2]=0;H[b+52>>2]=0;b=(k|256)+e|0;G[b+54>>1]=0;G[b+56>>1]=0;G[b+58>>1]=0;G[b+60>>1]=0;H[b+48>>2]=0;H[b+52>>2]=0;b=(k|320)+e|0;G[b+54>>1]=0;G[b+56>>1]=0;G[b+58>>1]=0;G[b+60>>1]=0;H[b+48>>2]=0;H[b+52>>2]=0;b=(k|384)+e|0;G[b+54>>1]=0;G[b+56>>1]=0;G[b+58>>1]=0;G[b+60>>1]=0;H[b+48>>2]=0;H[b+52>>2]=0;b=(k|448)+e|0;G[b+54>>1]=0;G[b+56>>1]=0;G[b+58>>1]=0;G[b+60>>1]=0;H[b+48>>2]=0;H[b+52>>2]=0;l=l+8|0;g=g+8|0;if((f|0)!=(g|0)){continue}break}}g=d&7;if(g){while(1){f=(l<<6)+e|0;H[f+48>>2]=0;H[f+52>>2]=0;G[f+54>>1]=0;G[f+56>>1]=0;G[f+58>>1]=0;G[f+60>>1]=0;l=l+1|0;h=h+1|0;if((g|0)!=(h|0)){continue}break}}e=H[a+68>>2]}l=H[a+88>>2];q=H[a+72>>2];m=H[a+92>>2];r=H[a+80>>2];k=H[a+84>>2];s=H[a- -64>>2];f=H[a+76>>2];h=H[a+60>>2];b=H[a+44>>2];d=H[a+48>>2];g=H[a+56>>2];H[c+200>>2]=H[a+52>>2];H[c+204>>2]=g;H[c+192>>2]=b;H[c+196>>2]=d;if(H[a+108>>2]!=-16){n=c+24|4;g=0;while(1){i=H[a+12>>2]+g|0;o=i+40|0;if(H[i+40>>2]){H[i+40>>2]=i- -64;g=76}else{g=64}if(H[o+4>>2]){H[i+44>>2]=g+i;g=g+12|0}if(H[o+16>>2]){H[i+56>>2]=g+i;g=g+28|0}if(H[o+12>>2]){b=0;d=g+i|0;g=H[d>>2];if(!(g>>>0>4|(g|0)==1)){b=d+4|0}H[o+12>>2]=b}g=H[i>>2];e:{f:{switch(F[i+38|0]){case 0:d=H[a+64>>2];j=J[i+36>>1];G[c+40>>1]=0;H[c+36>>2]=-1;H[c+28>>2]=0;H[c+32>>2]=0;H[c+60>>2]=0;H[c+64>>2]=0;H[c+52>>2]=0;H[c+56>>2]=0;H[c+44>>2]=0;H[c+48>>2]=0;H[c+104>>2]=0;F[c+92|0]=0;H[c+76>>2]=0;H[c+68>>2]=2139095039;H[c+72>>2]=0;G[c+128>>1]=0;H[c+124>>2]=-1;H[c+116>>2]=0;H[c+120>>2]=0;F[c+108|0]=0;H[c+24>>2]=109464;H[c+96>>2]=s;b=k-(s-d>>6)|0;H[c+100>>2]=b>>>0>j>>>0?j:b;H[c+148>>2]=0;H[c+152>>2]=0;H[c+140>>2]=0;H[c+144>>2]=0;H[c+132>>2]=0;H[c+136>>2]=0;F[c+184|0]=0;H[c+164>>2]=0;H[c+156>>2]=2139095039;H[c+160>>2]=0;d=H[a+8>>2];G[c+16>>1]=J[i+4>>1];ds(d,o,c+24|0,c+16|0,H[i+32>>2],i+8|0,0,c+192|0);b=I[c+108|0]|(b?0:J[i+36>>1]!=0);F[c+108|0]=b;H[h+72>>2]=H[i+28>>2];d=H[n+4>>2];H[h>>2]=H[n>>2];H[h+4>>2]=d;H[h+8>>2]=H[n+8>>2];G[h+12>>1]=J[c+40>>1];L[h+16>>2]=L[c+44>>2];L[h+20>>2]=L[c+48>>2];L[h+24>>2]=L[c+52>>2];L[h+28>>2]=L[c+56>>2];L[h+32>>2]=L[c+60>>2];L[h+36>>2]=L[c+64>>2];L[h+40>>2]=L[c+68>>2];d=H[c+76>>2];H[h+44>>2]=H[c+72>>2];H[h+48>>2]=d;d=H[c+84>>2];H[h+52>>2]=H[c+80>>2];H[h+56>>2]=d;H[h+60>>2]=H[c+88>>2];F[h+77|0]=I[c+92|0];j=H[c+104>>2];b=b&255;F[h+76|0]=b?2:1;H[h+68>>2]=j;d=H[c+96>>2];H[h+64>>2]=b?j?d:0:d;h=h+80|0;s=(j<<6)+s|0;break e;case 1:d=H[a+80>>2];j=J[i+36>>1];H[c+56>>2]=0;F[c+44|0]=0;H[c+36>>2]=-1;H[c+28>>2]=0;H[c+32>>2]=0;F[c+88|0]=0;H[c+76>>2]=-1;H[c+68>>2]=0;H[c+72>>2]=0;F[c+60|0]=0;H[c+24>>2]=109520;H[c+48>>2]=r;b=m-(r-d>>4)|0;H[c+52>>2]=b>>>0>j>>>0?j:b;d=H[a+8>>2];G[c+8>>1]=J[i+4>>1];gs(d,o,c+24|0,c+8|0,H[i+32>>2],i+8|0,0,c+192|0);b=I[c+60|0]|(b?0:J[i+36>>1]!=0);F[c+60|0]=b;H[f+24>>2]=H[i+28>>2];d=H[n+4>>2];H[f>>2]=H[n>>2];H[f+4>>2]=d;d=H[n+12>>2];H[f+8>>2]=H[n+8>>2];H[f+12>>2]=d;F[f+29|0]=I[c+44|0];j=H[c+56>>2];b=b&255;F[f+28|0]=b?2:1;H[f+20>>2]=j;d=H[c+48>>2];H[f+16>>2]=b?j?d:0:d;f=f+32|0;r=(j<<4)+r|0;break e;case 2:break f;default:break e}}d=H[a+72>>2];j=J[i+36>>1];G[c+40>>1]=0;H[c+36>>2]=-1;H[c+28>>2]=0;H[c+32>>2]=0;H[c+60>>2]=0;H[c+64>>2]=0;H[c+52>>2]=0;H[c+56>>2]=0;H[c+44>>2]=0;H[c+48>>2]=0;H[c+88>>2]=0;F[c+76|0]=0;H[c+68>>2]=2139095039;G[c+112>>1]=0;H[c+108>>2]=-1;H[c+100>>2]=0;H[c+104>>2]=0;F[c+92|0]=0;H[c+24>>2]=109576;H[c+80>>2]=q;b=((q-d|0)/-48|0)+l|0;H[c+84>>2]=b>>>0>j>>>0?j:b;H[c+132>>2]=0;H[c+136>>2]=0;H[c+124>>2]=0;H[c+128>>2]=0;H[c+116>>2]=0;H[c+120>>2]=0;F[c+152|0]=0;H[c+140>>2]=2139095039;d=H[a+8>>2];G[c>>1]=J[i+4>>1];js(d,o,c+24|0,c,H[i+32>>2],i+8|0,0,c+192|0);b=I[c+92|0]|(b?0:J[i+36>>1]!=0);F[c+92|0]=b;H[e+56>>2]=H[i+28>>2];d=H[n+4>>2];H[e>>2]=H[n>>2];H[e+4>>2]=d;H[e+8>>2]=H[n+8>>2];G[e+12>>1]=J[c+40>>1];L[e+16>>2]=L[c+44>>2];L[e+20>>2]=L[c+48>>2];L[e+24>>2]=L[c+52>>2];L[e+28>>2]=L[c+56>>2];L[e+32>>2]=L[c+60>>2];L[e+36>>2]=L[c+64>>2];L[e+40>>2]=L[c+68>>2];H[e+44>>2]=H[c+72>>2];F[e+61|0]=I[c+76|0];j=H[c+88>>2];b=b&255;F[e+60|0]=b?2:1;H[e+52>>2]=j;d=H[c+80>>2];H[e+48>>2]=b?j?d:0:d;e=e- -64|0;q=N(j,48)+q|0}d=H[i>>2];if((d|0)!=-16){t=((d|0)!=-16)+t|0;if(t>>>0<1e6){continue}}break}F[a+112|0]=0;H[a+108>>2]=-16;H[a+24>>2]=0;H[a+28>>2]=0;H[a+32>>2]=0;H[a+36>>2]=0;H[p>>2]=0;break a}F[a+112|0]=0;H[a+108>>2]=-16;H[a+24>>2]=0;H[a+28>>2]=0;H[a+32>>2]=0;H[a+36>>2]=0;H[p>>2]=0}Oa=c+208|0}function i0(a,b,c,d,e){var f=0,g=0,h=O(0),i=0,j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=0,r=O(0),s=0,t=O(0),u=O(0),v=0,w=O(0),x=O(0),y=0,z=O(0),A=O(0),B=O(0),C=0,D=O(0),E=O(0),G=O(0),J=O(0),M=O(0),P=O(0),Q=O(0),R=0,S=0,T=0;f=Oa-224|0;Oa=f;H[f+216>>2]=1065353216;H[f+220>>2]=0;H[f+208>>2]=0;H[f+212>>2]=0;H[f+200>>2]=0;H[f+204>>2]=0;H[f+196>>2]=1065353216;H[f+180>>2]=0;H[f+184>>2]=0;H[f+176>>2]=1065353216;H[f+188>>2]=0;H[f+192>>2]=0;j=L[b+12>>2];h=L[b>>2];t=O(j-h);m=L[b+28>>2];k=L[b+4>>2];o=O(m-k);n=L[b+24>>2];w=O(n-h);r=L[b+16>>2];p=O(r-k);l=O(O(t*o)-O(w*p));B=l;E=O(l*l);x=p;p=L[b+32>>2];l=L[b+8>>2];z=O(p-l);A=o;o=L[b+20>>2];D=O(o-l);u=O(O(x*z)-O(A*D));t=O(O(D*w)-O(z*t));w=O(O(1)/O(W(O(E+O(O(u*u)+O(t*t))))));z=O(B*w);u=O(u*w);t=O(t*w);a:{if(O(O(O(L[a+4408>>2]*z)+O(O(L[a+4400>>2]*u)+O(L[a+4404>>2]*t)))-O(O(l*z)+O(O(h*u)+O(k*t))))>2];t=L[a+2288>>2];w=L[a+2272>>2];z=L[a+2308>>2];D=L[a+2292>>2];G=L[a+2260>>2];J=L[a+2276>>2];M=L[a+2312>>2];P=L[a+2296>>2];Q=L[a+2264>>2];E=L[a+2280>>2];B=L[a+2256>>2];H[f+172>>2]=0;H[f+156>>2]=0;H[f+140>>2]=0;x=O(M+O(O(P*p)+O(O(Q*n)+O(m*E))));L[f+168>>2]=x;A=O(z+O(O(D*p)+O(O(G*n)+O(m*J))));L[f+164>>2]=A;m=O(u+O(O(t*p)+O(O(B*n)+O(m*w))));L[f+160>>2]=m;n=O(M+O(O(P*o)+O(O(Q*j)+O(r*E))));L[f+152>>2]=n;p=O(z+O(O(D*o)+O(O(G*j)+O(r*J))));L[f+148>>2]=p;j=O(u+O(O(t*o)+O(O(B*j)+O(r*w))));L[f+144>>2]=j;r=O(M+O(O(P*l)+O(O(Q*h)+O(k*E))));L[f+136>>2]=r;o=O(z+O(O(D*l)+O(O(G*h)+O(k*J))));L[f+132>>2]=o;F[f+112|0]=0;H[f+104>>2]=2139095039;H[f+108>>2]=5;H[f+92>>2]=0;H[f+96>>2]=0;H[f+100>>2]=2139095039;L[f+88>>2]=O(x+O(r+n))*O(.33333298563957214);L[f+84>>2]=O(A+O(o+p))*O(.33333298563957214);h=O(u+O(O(t*l)+O(O(B*h)+O(k*w))));L[f+128>>2]=h;L[f+80>>2]=O(m+O(h+j))*O(.33333298563957214);b=H[a+2208>>2];F[f+60|0]=1;H[f+48>>2]=b;H[f+16>>2]=129328;b=f+176|0;H[f+56>>2]=b;H[f+52>>2]=b;g=f+80|0;H[f+64>>2]=g;T=H[a+2324>>2];i=H[a+4416>>2];s=f+16|0;q=H[a+4420>>2];R=H[a+2320>>2];S=a+2324|0;b=Oa-96|0;Oa=b;m=L[g+80>>2];n=L[g- -64>>2];j=L[g+68>>2];r=L[g+88>>2];p=L[g+84>>2];h=L[g+52>>2];k=L[g+56>>2];o=L[g+72>>2];l=L[g+48>>2];H[b+60>>2]=0;u=O(j-h);r=O(r-k);p=O(p-h);o=O(o-k);j=O(O(u*r)-O(p*o));A=j;n=O(n-l);x=O(n*p);p=O(m-l);m=O(x-O(p*u));x=O(j*j);j=O(O(o*p)-O(r*n));n=O(O(1)/O(W(O(O(m*m)+O(x+O(j*j))))));r=O(A*n);L[b+48>>2]=r;m=O(m*n);L[b+56>>2]=m;j=O(j*n);L[b+52>>2]=j;Ra[H[H[q>>2]+12>>2]](q,b+48|0,b+80|0,b- -64|0);y=a+2176|0;n=L[y>>2];h=O(O(m*k)+O(O(r*l)+O(h*j)));k=L[b+80>>2];b:{if(h>O(n+L[b+64>>2])?1:O(n+h)>2]=0;v=H[b+52>>2];H[b>>2]=H[b+48>>2];H[b+4>>2]=v;v=H[b+60>>2];H[b+8>>2]=H[b+56>>2];H[b+12>>2]=v;L[b+16>>2]=O(h-k)+O(-1.1920928955078125e-7);if(!S0(i,s,q,y,b+16|0,b+48|0,b,b+44|0)){break b}if(!T0(g,d,i,s,q,y,b+16|0,b,b+44|0)){break b}j=L[g+68>>2];m=L[g+84>>2];h=L[g+52>>2];n=L[g+72>>2];r=L[g+80>>2];p=L[g+88>>2];k=L[g+56>>2];l=L[g+48>>2];o=L[g+64>>2];H[b+92>>2]=0;o=O(o-l);m=O(m-h);l=O(r-l);j=O(j-h);h=O(O(o*m)-O(l*j));x=h;B=O(h*h);A=j;j=O(p-k);k=O(n-k);h=O(O(A*j)-O(m*k));k=O(O(k*l)-O(j*o));l=O(O(1)/O(W(O(B+O(O(h*h)+O(k*k))))));j=O(x*l);L[b+88>>2]=j;k=O(k*l);L[b+84>>2]=k;h=O(h*l);L[b+80>>2]=h;c:{d:{switch(H[b+44>>2]){case 0:s=H[i+24>>2];v=E0(i,q,b);C=H[b+92>>2];H[f+8>>2]=H[b+88>>2];H[f+12>>2]=C;C=H[b+84>>2];H[f>>2]=H[b+80>>2];H[f+4>>2]=C;U0(g,c,i,s+N(v,20)|0,q,R,S,y,b+80|0);break c;case 1:s=H[b+48>>2];if(!(O(O(O(O(-L[b>>2])*h)-O(k*L[b+4>>2]))-O(L[b+8>>2]*j))>O(.7071067690849304))){if(!(d&7?I[a+4429|0]:1)){break c}i=H[a+3620>>2];y=H[i+4360>>2];q=y+15|0;if(q>>>0>(H[i+4364>>2]&2147483647)>>>0){tY(i,q);i=H[a+3620>>2];y=H[i+4360>>2]}H[i+4360>>2]=q;i=H[i+4356>>2]+(y<<2)|0;F[i+56|0]=d;H[i+52>>2]=s;H[i+48>>2]=c;H[i+36>>2]=H[e>>2];H[i+40>>2]=H[e+4>>2];H[i+44>>2]=H[e+8>>2];c=H[g+52>>2];q=H[g+48>>2];L[i+8>>2]=L[g+56>>2];H[i>>2]=q;H[i+4>>2]=c;h=L[g+72>>2];c=H[g+68>>2];H[i+12>>2]=H[g+64>>2];H[i+16>>2]=c;L[i+20>>2]=h;h=L[g+88>>2];c=H[g+84>>2];H[i+24>>2]=H[g+80>>2];H[i+28>>2]=c;L[i+32>>2]=h;break c}v=H[i+24>>2];C=H[b+92>>2];H[f+8>>2]=H[b+88>>2];H[f+12>>2]=C;C=H[b+84>>2];H[f>>2]=H[b+80>>2];H[f+4>>2]=C;U0(g,c,i,v+N(s,20)|0,q,R,S,y,b+80|0);break c;default:break d}}v=E0(i,q,b);H[b+48>>2]=v;s=H[q+40>>2];j=L[s+36>>2];m=L[s+40>>2];v=H[i+24>>2]+N(v,20)|0;h=L[v>>2];k=L[v+4>>2];n=L[s+20>>2];l=L[v+8>>2];r=L[s+24>>2];p=L[s+32>>2];o=L[s+8>>2];u=L[s>>2];t=L[s+4>>2];w=L[s+16>>2];H[b+76>>2]=0;j=O(O(m*l)+O(O(p*h)+O(k*j)));m=O(O(o*l)+O(O(u*h)+O(k*t)));k=O(O(r*l)+O(O(w*h)+O(k*n)));h=O(O(1)/O(W(O(O(j*j)+O(O(m*m)+O(k*k))))));l=O(m*h);L[b+64>>2]=l;k=O(k*h);L[b+68>>2]=k;h=O(j*h);L[b+72>>2]=h;H[f+12>>2]=0;L[f+8>>2]=-h;L[f+4>>2]=-k;L[f>>2]=-l;V0(i,v,g,c,q,R,S,y,b- -64|0)}}Oa=b+96|0;if(K[a+2324>>2]<=T>>>0){break a}s=d&16;e:{if(d&8){break e}i=H[a+3616>>2];if((i|0)==128){break e}b=H[e>>2];c=H[e+4>>2];g=b>>>0>>0;q=g?b:c;g=g?c:b;b=q<<16|g;b=(b<<15^-1)+b|0;b=N(b>>>10^b,9);b=b>>>6^b;b=(b<<11^-1)+b|0;c=(((b>>>16^b)&127)+a|0)+3488|0;b=I[c|0];if((b|0)!=255){while(1){b=b&255;c=(b<<3)+a|0;if((q|0)==H[c+2336>>2]&(g|0)==H[c+2340>>2]){break e}c=(a+b|0)+3360|0;b=I[c|0];if((b|0)!=255){continue}break}}F[c|0]=i;b=a+2336|0;F[(b+i|0)+1024|0]=255;c=H[a+3616>>2];H[a+3616>>2]=c+1;c=b+(c<<3)|0;H[c>>2]=q;H[c+4>>2]=g}q=d&32;f:{if(s){break f}g=H[a+3616>>2];if((g|0)==128){break f}b=H[e+4>>2];c=H[e+8>>2];d=b>>>0>>0;i=d?b:c;c=d?c:b;b=i<<16|c;b=(b<<15^-1)+b|0;b=N(b>>>10^b,9);b=b>>>6^b;b=(b<<11^-1)+b|0;d=(((b>>>16^b)&127)+a|0)+3488|0;b=I[d|0];if((b|0)!=255){while(1){b=b&255;d=(b<<3)+a|0;if((i|0)==H[d+2336>>2]&(c|0)==H[d+2340>>2]){break f}d=(a+b|0)+3360|0;b=I[d|0];if((b|0)!=255){continue}break}}F[d|0]=g;b=a+2336|0;F[(b+g|0)+1024|0]=255;d=H[a+3616>>2];H[a+3616>>2]=d+1;d=b+(d<<3)|0;H[d>>2]=i;H[d+4>>2]=c}g:{if(q){break g}g=H[a+3616>>2];if((g|0)==128){break g}b=H[e+8>>2];c=H[e>>2];d=b>>>0>>0;i=d?b:c;c=d?c:b;b=i<<16|c;b=(b<<15^-1)+b|0;b=N(b>>>10^b,9);b=b>>>6^b;b=(b<<11^-1)+b|0;d=(((b>>>16^b)&127)+a|0)+3488|0;b=I[d|0];if((b|0)!=255){while(1){b=b&255;d=(b<<3)+a|0;if((i|0)==H[d+2336>>2]&(c|0)==H[d+2340>>2]){break g}d=(a+b|0)+3360|0;b=I[d|0];if((b|0)!=255){continue}break}}F[d|0]=g;b=a+2336|0;F[(b+g|0)+1024|0]=255;d=H[a+3616>>2];H[a+3616>>2]=d+1;d=b+(d<<3)|0;H[d>>2]=i;H[d+4>>2]=c}d=H[a+4396>>2];h:{if((d|0)==128){break h}g=H[e>>2];c=((g&127)+a|0)+4268|0;b=I[c|0];i:{if((b|0)!=255){while(1){b=b&255;if((g|0)==H[((b<<2)+a|0)+3628>>2]){break i}c=(a+b|0)+4140|0;b=I[c|0];if((b|0)!=255){continue}break}}F[c|0]=d;b=a+3628|0;F[(b+d|0)+512|0]=255;c=H[a+4396>>2];H[a+4396>>2]=c+1;H[b+(c<<2)>>2]=g;d=H[a+4396>>2]}if((d|0)==128){break h}g=H[e+4>>2];c=((g&127)+a|0)+4268|0;b=I[c|0];j:{if((b|0)!=255){while(1){b=b&255;if((g|0)==H[((b<<2)+a|0)+3628>>2]){break j}c=(a+b|0)+4140|0;b=I[c|0];if((b|0)!=255){continue}break}}F[c|0]=d;b=a+3628|0;F[(b+d|0)+512|0]=255;c=H[a+4396>>2];H[a+4396>>2]=c+1;H[b+(c<<2)>>2]=g;d=H[a+4396>>2]}if((d|0)==128){break h}c=H[e+8>>2];e=((c&127)+a|0)+4268|0;b=I[e|0];if((b|0)!=255){while(1){b=b&255;if((c|0)==H[((b<<2)+a|0)+3628>>2]){break h}e=(a+b|0)+4140|0;b=I[e|0];if((b|0)!=255){continue}break}}F[e|0]=d;b=a+3628|0;F[(b+d|0)+512|0]=255;d=H[a+4396>>2];H[a+4396>>2]=d+1;H[b+(d<<2)>>2]=c}g0(a,f,T)}Oa=f+224|0}function ou(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=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),C=O(0),D=O(0),E=O(0),G=O(0),J=O(0),K=O(0),M=O(0),N=O(0),Q=O(0),R=O(0),S=O(0),T=O(0),U=O(0),V=O(0),W=O(0),X=O(0),Y=O(0),Z=O(0),_=O(0),$=O(0),aa=O(0),ba=O(0),ca=O(0),da=O(0),ea=O(0),fa=O(0),ga=O(0),ha=O(0),ia=O(0),ja=O(0),ka=O(0),la=O(0),ma=O(0),na=0,oa=O(0),pa=O(0),qa=O(0),ra=O(0),sa=O(0),ta=O(0),ua=O(0),va=O(0),wa=O(0);h=Oa-224|0;Oa=h;na=I[f+6|0];k=L[c+4>>2];m=O(k+k);i=L[c+8>>2];A=O(m*i);j=L[c>>2];l=O(j+j);n=L[c+12>>2];r=O(l*n);J=O(A-r);L[h+76>>2]=J;K=O(A+r);L[h+68>>2]=K;j=O(O(1)-O(j*l));A=O(k*m);M=O(j-A);L[h+80>>2]=M;C=j;j=O(i+i);r=O(i*j);E=O(C-r);L[h- -64>>2]=E;i=O(l*i);m=O(m*n);N=O(i+m);L[h+72>>2]=N;k=O(l*k);l=O(j*n);G=O(k-l);L[h+60>>2]=G;i=O(i-m);L[h+56>>2]=i;l=O(k+l);L[h+52>>2]=l;k=O(O(O(1)-A)-r);L[h+48>>2]=k;V=L[c+16>>2];L[h+84>>2]=V;W=L[c+20>>2];L[h+88>>2]=W;X=L[c+24>>2];L[h+92>>2]=X;q=L[d+4>>2];r=O(q+q);n=L[d+8>>2];m=O(r*n);j=L[d>>2];o=O(j+j);p=L[d+12>>2];C=O(o*p);A=O(m-C);L[h+28>>2]=A;m=O(m+C);L[h+20>>2]=m;j=O(O(1)-O(j*o));s=O(q*r);C=O(j-s);L[h+32>>2]=C;t=O(n+n);u=O(n*t);j=O(j-u);L[h+16>>2]=j;w=O(o*n);x=O(r*p);r=O(w+x);L[h+24>>2]=r;o=O(o*q);p=O(t*p);n=O(o-p);L[h+12>>2]=n;q=O(w-x);L[h+8>>2]=q;o=O(o+p);L[h+4>>2]=o;p=O(O(O(1)-s)-u);L[h>>2]=p;Y=L[d+16>>2];L[h+36>>2]=Y;Z=L[d+20>>2];L[h+40>>2]=Z;_=L[d+24>>2];L[h+44>>2]=_;s=L[a+12>>2];t=L[a+8>>2];u=L[e>>2];w=L[b+12>>2];oa=O(O(i*C)+O(O(k*r)+O(l*A)));$=O(O(P(oa))+O(9.999999974752427e-7));x=L[b+8>>2];pa=O(O(i*m)+O(O(k*n)+O(l*j)));aa=O(O(P(pa))+O(9.999999974752427e-7));y=L[b+4>>2];qa=O(O(i*q)+O(O(k*p)+O(l*o)));ba=O(O(P(qa))+O(9.999999974752427e-7));z=L[a+4>>2];Q=O(_-X);S=O(Y-V);ca=O(Z-W);da=O(O(i*Q)+O(O(k*S)+O(l*ca)));ea=O(u+O(O(O(w*$)+O(O(x*aa)+O(O(y*ba)+z)))-O(P(da))));L[h+160>>2]=ea;a:{if(((B(ea),v(2))|0)<0){a=0;break a}D=O(O(K*Q)+O(O(G*S)+O(E*ca)));L[h+196>>2]=D;ra=O(O(K*C)+O(O(G*r)+O(E*A)));fa=O(O(P(ra))+O(9.999999974752427e-7));sa=O(O(K*m)+O(O(G*n)+O(E*j)));ga=O(O(P(sa))+O(9.999999974752427e-7));ta=O(O(K*q)+O(O(G*p)+O(E*o)));ha=O(O(P(ta))+O(9.999999974752427e-7));ia=O(u+O(O(O(w*fa)+O(O(x*ga)+O(O(y*ha)+t)))-O(P(D))));L[h+164>>2]=ia;a=0;if(((B(ia),v(2))|0)<0){break a}R=O(O(M*Q)+O(O(N*S)+O(J*ca)));L[h+200>>2]=R;ua=O(O(M*C)+O(O(N*r)+O(J*A)));ja=O(O(P(ua))+O(9.999999974752427e-7));va=O(O(M*m)+O(O(N*n)+O(J*j)));ka=O(O(P(va))+O(9.999999974752427e-7));wa=O(O(M*q)+O(O(N*p)+O(J*o)));la=O(O(P(wa))+O(9.999999974752427e-7));ma=O(u+O(O(O(w*ja)+O(O(x*ka)+O(O(y*la)+s)))-O(P(R))));L[h+168>>2]=ma;if(((B(ma),v(2))|0)<0){break a}T=O(O(q*Q)+O(O(p*S)+O(o*ca)));L[h+204>>2]=T;T=O(u+O(O(O(s*la)+O(O(t*ha)+O(O(z*ba)+y)))-O(P(T))));L[h+172>>2]=T;if(((B(T),v(2))|0)<0){break a}U=O(O(m*Q)+O(O(n*S)+O(j*ca)));L[h+208>>2]=U;U=O(u+O(O(O(s*ka)+O(O(t*ga)+O(O(z*aa)+x)))-O(P(U))));L[h+176>>2]=U;if(((B(U),v(2))|0)<0){break a}Q=O(O(C*Q)+O(O(r*S)+O(A*ca)));L[h+212>>2]=Q;Q=O(u+O(O(O(s*ja)+O(O(t*fa)+O(O(z*$)+w)))-O(P(Q))));L[h+180>>2]=Q;if(((B(Q),v(2))|0)<0){break a}b:{if(!na){na=0;if(O(P(O(O(R*ta)-O(wa*D))))>O(O(w*aa)+O(O(x*$)+O(O(s*ha)+O(O(t*la)+u))))){break a}S=O(-D);if(O(P(O(O(R*sa)+O(va*S))))>O(O(w*ba)+O(O(y*$)+O(O(s*ga)+O(O(t*ka)+u))))|O(P(O(O(R*ra)+O(ua*S))))>O(O(x*ba)+O(O(y*aa)+O(O(s*fa)+O(O(t*ja)+u))))|O(P(O(O(da*wa)-O(qa*R))))>O(O(w*ga)+O(O(x*fa)+O(O(s*ba)+O(O(z*la)+u))))){break a}R=O(-R);if(O(P(O(O(da*va)+O(pa*R))))>O(O(w*ha)+O(O(y*fa)+O(O(s*aa)+O(O(z*ka)+u))))|O(P(O(O(da*ua)+O(oa*R))))>O(O(x*ha)+O(O(y*ga)+O(O(s*$)+O(O(z*ja)+u))))|O(P(O(O(D*qa)-O(ta*da))))>O(O(w*ka)+O(O(x*ja)+O(O(t*ba)+O(O(z*ha)+u))))){break a}R=O(-da);if(O(P(O(O(D*pa)+O(sa*R))))>O(O(w*la)+O(O(y*ja)+O(O(t*aa)+O(O(z*ga)+u))))){break a}if(!(O(P(O(O(D*oa)+O(ra*R))))>O(O(x*la)+O(O(y*ka)+O(O(t*$)+O(O(z*fa)+u)))))){break b}break a}b=(na<<2)+h|0;L[b+156>>2]=L[b+156>>2]*O(.9990000128746033);Q=L[h+180>>2];U=L[h+176>>2];T=L[h+172>>2];ma=L[h+168>>2];ia=L[h+164>>2];ea=L[h+160>>2]}D=ea>=O(0)?eaia&ia>=O(0);c=b;D=b?ia:D;b=D>ma&ma>=O(0);c=b?2:c;D=b?ma:D;b=D>T&T>=O(0);c=b?3:c;D=b?T:D;b=D>U&U>=O(0);c=b?4:c;c=Q>=O(0)?(b?U:D)>Q?5:c:c;b=H[(h+192|0)+(c<<2)>>2]&-2147483648;c:{d:{switch(c|0){case 0:e:{if(b){L[h+104>>2]=i;q=O(X-O(i*z));L[h+100>>2]=l;o=O(W-O(l*z));L[h+96>>2]=k;p=O(V-O(k*z));break e}m=O(-i);L[h+104>>2]=m;j=O(-l);L[h+100>>2]=j;n=O(-k);L[h+96>>2]=n;q=O(X+O(i*z));o=O(W+O(l*z));p=O(V+O(k*z));K=O(-K);E=O(-E);G=O(-G);k=n;l=j;i=m}L[h+156>>2]=q;L[h+152>>2]=o;L[h+144>>2]=M;L[h+140>>2]=J;L[h+132>>2]=K;L[h+128>>2]=E;L[h+148>>2]=p;L[h+136>>2]=N;L[h+124>>2]=G;L[h+120>>2]=i;L[h+116>>2]=l;L[h+112>>2]=k;a=WX(g,h+96|0,t,s,y,x,w,h+112|0,h,u);break c;case 1:L[h+144>>2]=i;L[h+140>>2]=l;L[h+136>>2]=k;f:{if(b){i=O(X-O(K*t));l=O(W-O(E*t));k=O(V-O(G*t));break f}i=O(X+O(K*t));l=O(W+O(E*t));k=O(V+O(G*t));M=O(-M);J=O(-J);N=O(-N);K=O(-K);E=O(-E);G=O(-G)}L[h+156>>2]=i;L[h+152>>2]=l;L[h+132>>2]=M;L[h+128>>2]=J;L[h+104>>2]=K;L[h+100>>2]=E;L[h+96>>2]=G;L[h+148>>2]=k;L[h+124>>2]=N;L[h+120>>2]=K;L[h+116>>2]=E;L[h+112>>2]=G;a=WX(g,h+96|0,s,z,y,x,w,h+112|0,h,u);break c;case 2:L[h+144>>2]=K;L[h+140>>2]=E;L[h+136>>2]=G;g:{if(b){q=O(X-O(M*s));o=O(W-O(J*s));p=O(V-O(N*s));break g}q=O(X+O(M*s));o=O(W+O(J*s));p=O(V+O(N*s));i=O(-i);l=O(-l);k=O(-k);M=O(-M);J=O(-J);N=O(-N)}L[h+156>>2]=q;L[h+152>>2]=o;L[h+132>>2]=i;L[h+128>>2]=l;L[h+104>>2]=M;L[h+100>>2]=J;L[h+96>>2]=N;L[h+148>>2]=p;L[h+124>>2]=k;L[h+120>>2]=M;L[h+116>>2]=J;L[h+112>>2]=N;a=WX(g,h+96|0,z,t,y,x,w,h+112|0,h,u);break c;case 3:h:{if(b){L[h+104>>2]=q;i=O(_+O(q*y));L[h+100>>2]=o;l=O(Z+O(o*y));L[h+96>>2]=p;k=O(Y+O(p*y));m=O(-m);j=O(-j);n=O(-n);q=O(-q);o=O(-o);p=O(-p);break h}L[h+104>>2]=-q;L[h+100>>2]=-o;L[h+96>>2]=-p;i=O(_-O(q*y));l=O(Z-O(o*y));k=O(Y-O(p*y))}L[h+156>>2]=i;L[h+152>>2]=l;L[h+144>>2]=C;L[h+140>>2]=A;L[h+132>>2]=m;L[h+128>>2]=j;L[h+148>>2]=k;L[h+136>>2]=r;L[h+124>>2]=n;L[h+120>>2]=q;L[h+116>>2]=o;L[h+112>>2]=p;a=WX(g,h+96|0,x,w,z,t,s,h+112|0,h+48|0,u);break c;case 4:L[h+144>>2]=q;L[h+140>>2]=o;L[h+136>>2]=p;i:{if(b){L[h+100>>2]=j;L[h+116>>2]=-j;L[h+96>>2]=n;L[h+112>>2]=-n;L[h+104>>2]=m;i=O(_+O(m*x));C=O(-C);A=O(-A);r=O(-r);m=O(-m);l=O(Z+O(j*x));k=O(Y+O(n*x));break i}L[h+104>>2]=-m;L[h+116>>2]=j;L[h+100>>2]=-j;L[h+112>>2]=n;L[h+96>>2]=-n;i=O(_-O(m*x));l=O(Z-O(j*x));k=O(Y-O(n*x))}L[h+156>>2]=i;L[h+152>>2]=l;L[h+132>>2]=C;L[h+128>>2]=A;L[h+148>>2]=k;L[h+124>>2]=r;L[h+120>>2]=m;a=WX(g,h+96|0,w,y,z,t,s,h+112|0,h+48|0,u);break c;case 5:break d;default:break c}}L[h+144>>2]=m;L[h+140>>2]=j;L[h+136>>2]=n;i=O(-C);l=O(-A);k=O(-r);j:{if(b){E=O(Z+O(A*w));G=O(Y+O(r*w));q=O(-q);o=O(-o);p=O(-p);m=r;j=A;n=C;C=O(_+O(n*w));break j}E=O(Z-O(A*w));G=O(Y-O(r*w));m=k;j=l;n=i;k=r;l=A;i=C;C=O(_-O(i*w))}L[h+156>>2]=C;L[h+152>>2]=E;L[h+132>>2]=q;L[h+128>>2]=o;L[h+104>>2]=n;L[h+100>>2]=j;L[h+96>>2]=m;L[h+148>>2]=G;L[h+124>>2]=p;L[h+120>>2]=i;L[h+116>>2]=l;L[h+112>>2]=k;a=WX(g,h+96|0,y,x,z,t,s,h+112|0,h+48|0,u)}na=c+1|0}F[f+6|0]=a?na:0;Oa=h+224|0;return(a|0)!=0|0}function A0(a,b,c,d,e,f,g,h,i,j){var k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=0,q=O(0),r=O(0),s=O(0),t=0,u=O(0),v=0,w=O(0),x=O(0),y=0,z=O(0),A=O(0),B=0,C=0,D=0,E=O(0),G=O(0),K=0,M=O(0),P=O(0),Q=O(0),R=O(0),S=0,T=O(0),U=O(0),V=O(0),X=O(0),Y=O(0),Z=O(0),_=O(0),$=O(0),aa=O(0),ba=O(0),ca=O(0),da=O(0),ea=O(0),fa=O(0),ga=O(0),ha=0,ia=0,ja=O(0),ka=0,la=O(0),ma=O(0),na=O(0),oa=O(0),pa=O(0),qa=0,ra=O(0),sa=O(0),ta=O(0),ua=O(0),va=O(0),wa=O(0),xa=O(0);v=Oa+-64|0;Oa=v;t=J[c+16>>1];B=H[a+32>>2];p=H[e+40>>2];m=L[p+40>>2];o=L[p+36>>2];n=L[p+24>>2];w=L[p+20>>2];x=L[p+32>>2];z=L[p+16>>2];k=L[c+8>>2];q=L[p+8>>2];l=L[c>>2];s=L[p>>2];r=L[c+4>>2];A=L[p+4>>2];p=0;H[v+60>>2]=0;m=O(O(m*k)+O(O(x*l)+O(r*o)));o=O(O(q*k)+O(O(s*l)+O(r*A)));l=O(O(n*k)+O(O(z*l)+O(r*w)));k=O(O(1)/O(W(O(O(m*m)+O(O(o*o)+O(l*l))))));L[v+56>>2]=m*k;L[v+52>>2]=l*k;L[v+48>>2]=o*k;W0(v,v+48|0);C=J[d+16>>1];ka=H[b+32>>2];ia=I[c+18|0];D=(v-(ia<<4)|0)-16|0;y=D;Oa=y;K=I[d+18|0];S=(K<<4)+16|0;y=y-S|0;Oa=y;K=y-(K+15&496)|0;Oa=K;S=K-S|0;Oa=S;Ra[H[H[e>>2]+16>>2]](e,t+B|0,ia,H[a+28>>2],D);Ra[H[H[f>>2]+16>>2]](f,C+ka|0,I[d+18|0],H[b+28>>2],y);X=L[v+40>>2];Y=L[v+24>>2];ba=L[v+36>>2];ca=L[v+20>>2];M=O(3.4028234663852886e38);P=O(-3.4028234663852886e38);Z=L[v+8>>2];da=L[v+4>>2];ea=L[v+32>>2];fa=L[v+16>>2];ga=L[v>>2];T=O(-3.4028234663852886e38);Q=O(-3.4028234663852886e38);U=O(3.4028234663852886e38);R=O(3.4028234663852886e38);b=I[c+18|0];if(b){k=O(3.4028234663852886e38);r=O(3.4028234663852886e38);l=O(-3.4028234663852886e38);m=O(-3.4028234663852886e38);while(1){a=(p<<4)+D|0;H[a+12>>2]=0;n=L[a+8>>2];w=L[a>>2];x=L[a+4>>2];L[a+8>>2]=O(X*n)+O(O(Z*w)+O(x*Y));o=O(O(ba*n)+O(O(da*w)+O(x*ca)));L[a+4>>2]=o;n=O(O(ea*n)+O(O(ga*w)+O(x*fa)));L[a>>2]=n;l=l>o?l:o;m=m>n?m:n;k=kr?r:n;p=p+1|0;if((b|0)!=(p|0)){continue}break}Q=O(l+O(1.1920928955078125e-7));R=O(k+O(-1.1920928955078125e-7));U=O(r+O(-1.1920928955078125e-7));T=O(m+O(1.1920928955078125e-7))}w=L[y+8>>2];x=L[y+4>>2];z=L[y>>2];A=L[D+8>>2];p=0;_=L[v+56>>2];$=L[v+52>>2];aa=L[v+48>>2];a=I[d+18|0];a:{if(!a){r=O(-3.4028234663852886e38);E=O(3.4028234663852886e38);b=0;break a}la=O(A+L[j>>2]);r=w;m=x;o=z;b=0;G=O(3.4028234663852886e38);E=O(-3.4028234663852886e38);while(1){t=p<<4;e=t+y|0;ma=L[e+12>>2];k=O(r-L[g+56>>2]);l=O(o-L[g+48>>2]);n=O(m-L[g+52>>2]);q=O(O(L[g+40>>2]*k)+O(O(L[g+32>>2]*l)+O(n*L[g+36>>2])));u=O(O(L[g+8>>2]*k)+O(O(L[g>>2]*l)+O(n*L[g+4>>2])));k=O(O(L[g+24>>2]*k)+O(O(L[g+16>>2]*l)+O(n*L[g+20>>2])));l=O(O(X*q)+O(O(Z*u)+O(k*Y)));ja=O(l-A);L[t+S>>2]=ja;H[e+12>>2]=0;L[e+8>>2]=A;s=O(O(ba*q)+O(O(da*u)+O(k*ca)));L[e+4>>2]=s;u=O(O(ea*q)+O(O(ga*u)+O(k*fa)));L[e>>2]=u;C=sM;qa=u>G;e=p+K|0;b:{if(lT|(sQ)){break b}B=I[c+18|0];if(!B){break b}e=(B-1<<4)+D|0;l=L[e>>2];k=L[e+4>>2];t=0;e=0;c:{while(1){if(l==u&k==s){break c}q=l;n=k;ha=(t<<4)+D|0;l=L[ha>>2];k=L[ha+4>>2];if(u==l&s==k){break c}d:{if((n>s|0)==(k>s|0)){break d}V=O(k-n);n=O(O(O(q+O(1.1920928955078125e-7))*V)+O(O(s-n)*O(l-q)));q=O(u*V);ha=V>O(0);if(!((ha?n:q)>=(ha?q:n))){break d}if((e|0)==1){break b}e=e+1|0}t=t+1|0;if((B|0)!=(t|0)){continue}break}if(!e){break b}}a=N(H[i>>2],48)+h|0;L[a+12>>2]=ma;L[a+8>>2]=r;L[a+4>>2]=m;L[a>>2]=o;a=N(H[i>>2],48)+h|0;L[a+16>>2]=O(Z*A)+O(O(ga*u)+O(da*s));H[a+28>>2]=0;L[a+24>>2]=O(X*A)+O(O(ea*u)+O(ba*s));L[a+20>>2]=O(Y*A)+O(O(fa*u)+O(ca*s));a=H[i>>2];H[i>>2]=a+1;a=N(a,48)+h|0;L[a+32>>2]=aa;L[a+44>>2]=ja;L[a+40>>2]=_;L[a+36>>2]=$;b=b+1|0;a=I[d+18|0];break b}F[e|0]=0}P=C?P:s;E=ka?E:u;M=ia?M:s;G=qa?G:u;p=p+1|0;if(p>>>0>>0){e=y+(p<<4)|0;r=L[e+8>>2];m=L[e+4>>2];o=L[e>>2];continue}break}r=O(P+O(1.1920928955078125e-7));P=O(E+O(1.1920928955078125e-7));E=O(M+O(-1.1920928955078125e-7));M=O(G+O(-1.1920928955078125e-7));p=a}e:{if((p&255)==(b|0)){break e}e=0;b=I[c+18|0];f:{if(!b){f=0;break f}a=H[f+40>>2];k=L[d+8>>2];l=L[d>>2];m=L[d+4>>2];o=O(O(L[a+40>>2]*k)+O(O(L[a+32>>2]*l)+O(m*L[a+36>>2])));q=o;na=O(o*o);o=O(O(L[a+8>>2]*k)+O(O(L[a>>2]*l)+O(m*L[a+4>>2])));k=O(O(L[a+24>>2]*k)+O(O(L[a+16>>2]*l)+O(m*L[a+20>>2])));l=O(O(1)/O(W(O(na+O(O(o*o)+O(k*k))))));u=O(q*l);G=O(O(L[g+40>>2]*_)+O(O(L[g+8>>2]*aa)+O($*L[g+24>>2])));T=O(o*l);Q=O(O(L[g+32>>2]*_)+O(O(L[g>>2]*aa)+O($*L[g+16>>2])));U=O(k*l);R=O(O(L[g+36>>2]*_)+O(O(L[g+4>>2]*aa)+O($*L[g+20>>2])));V=O(O(u*G)+O(O(T*Q)+O(U*R)));f=0;while(1){B=(e<<4)+D|0;q=L[B>>2];g:{if(qP){break g}n=L[B+4>>2];if(nr){break g}p=p&255;if(!p){break g}a=y+(p-1<<4)|0;l=L[a>>2];k=L[a+4>>2];t=0;a=0;h:{while(1){if(l==q&k==n){break h}o=l;m=k;C=y+(t<<4)|0;l=L[C>>2];k=L[C+4>>2];if(q==l&n==k){break h}i:{if((m>n|0)==(k>n|0)){break i}s=O(k-m);m=O(O(O(o+O(1.1920928955078125e-7))*s)+O(O(n-m)*O(l-o)));o=O(q*s);C=s>O(0);if(!((C?m:o)>=(C?o:m))){break i}if((a|0)==1){break g}a=a+1|0}t=t+1|0;if((p|0)!=(t|0)){continue}break}if(!a){break g}}k=L[B+8>>2];l=O(O(X*k)+O(O(ea*q)+O(n*ba)));m=O(O(Z*k)+O(O(ga*q)+O(n*da)));o=O(O(Y*k)+O(O(fa*q)+O(n*ca)));n=O(L[g+56>>2]+O(O(L[g+40>>2]*l)+O(O(L[g+8>>2]*m)+O(o*L[g+24>>2]))));q=O(L[g+48>>2]+O(O(L[g+32>>2]*l)+O(O(L[g>>2]*m)+O(o*L[g+16>>2]))));s=O(L[g+52>>2]+O(O(L[g+36>>2]*l)+O(O(L[g+4>>2]*m)+O(o*L[g+20>>2]))));k=O(O(O(u*O(w-n))+O(O(T*O(z-q))+O(U*O(x-s))))/V);if(k>L[j>>2]){break g}a=N(H[i>>2],48)+h|0;H[a+12>>2]=0;L[a+8>>2]=n+O(G*k);L[a+4>>2]=s+O(R*k);L[a>>2]=q+O(Q*k);a=N(H[i>>2],48)+h|0;L[a+16>>2]=m;H[a+28>>2]=0;L[a+24>>2]=l;L[a+20>>2]=o;a=H[i>>2];H[i>>2]=a+1;a=N(a,48)+h|0;L[a+32>>2]=aa;L[a+44>>2]=k;L[a+40>>2]=_;L[a+36>>2]=$;f=f+1|0;b=I[c+18|0]}e=e+1|0;if(b>>>0>e>>>0){p=I[d+18|0];continue}break}e=b}if((e&255)==(f|0)){break e}f=I[d+18|0];if(!f){break e}p=f-1|0;a=e;t=0;while(1){b=t;j:{if(!(I[p+K|0]?1:I[t+K|0])){break j}a=a&255;if(!a){a=0;break j}f=b<<4;t=f+y|0;o=L[t+4>>2];p=p<<4;B=p+y|0;w=L[B+4>>2];u=o>w?o:w;n=L[t>>2];x=L[B>>2];E=n>x?n:x;M=o>2]);U=O(O(A+L[p+S>>2])-Q);a=(a-1<<4)+D|0;l=L[a+4>>2];k=L[a>>2];t=0;while(1){r=k;m=l;a=(t<<4)+D|0;l=L[a+4>>2];k=L[a>>2];k:{if(P>(k>r?k:r)|E<(k(l>m?l:m))){break k}z=O(O(O(k-n)*O(m-o))-O(O(l-o)*O(r-n)));q=O(O(O(k-x)*O(m-w))-O(O(l-w)*O(r-x)));if(!(O(z*q)L[j>>2]){break k}V=L[g+48>>2];la=L[g+32>>2];ma=L[g>>2];ja=L[g+16>>2];ra=L[g+52>>2];sa=L[g+36>>2];ta=L[g+4>>2];ua=L[g+20>>2];z=L[g+56>>2];q=L[g+40>>2];s=L[g+8>>2];va=L[g+24>>2];a=N(H[i>>2],48)+h|0;H[a+12>>2]=0;wa=z;xa=q;z=O(n-O(T*m));m=O(o-O(G*m));oa=O(O(ea*z)+O(m*ba));q=O(O(X*r)+oa);na=s;pa=O(O(ga*z)+O(m*da));s=O(O(Z*r)+pa);m=O(O(fa*z)+O(m*ca));r=O(O(Y*r)+m);L[a+8>>2]=wa+O(O(xa*q)+O(O(na*s)+O(va*r)));L[a+4>>2]=ra+O(O(sa*q)+O(O(ta*s)+O(r*ua)));L[a>>2]=V+O(O(la*q)+O(O(ma*s)+O(r*ja)));a=N(H[i>>2],48)+h|0;L[a+16>>2]=O(Z*A)+pa;H[a+28>>2]=0;L[a+24>>2]=O(X*A)+oa;L[a+20>>2]=O(Y*A)+m;a=H[i>>2];H[i>>2]=a+1;a=N(a,48)+h|0;L[a+32>>2]=aa;L[a+44>>2]=R;L[a+40>>2]=_;L[a+36>>2]=$;e=I[c+18|0]}t=t+1|0;if(t>>>0<(e&255)>>>0){continue}break}f=I[d+18|0];a=e}p=b;t=p+1|0;if(t>>>0>>0){continue}break}}Oa=v- -64|0}function lW(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=O(g);h=h|0;i=i|0;j=O(j);var k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=0,r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=0,E=O(0),F=O(0),K=0,M=O(0),P=O(0),Q=O(0),R=O(0);c=Oa-144|0;Oa=c;j=L[b+20>>2];p=L[e+40>>2];x=L[b+24>>2];t=L[e+44>>2];C=L[b+16>>2];B=L[e+36>>2];L[c+80>>2]=L[e>>2];L[c+84>>2]=L[e+4>>2];L[c+88>>2]=L[e+8>>2];L[c+92>>2]=L[e+12>>2];L[c+96>>2]=L[e+16>>2];L[c+100>>2]=L[e+20>>2];L[c+104>>2]=L[e+24>>2];L[c+108>>2]=L[e+28>>2];u=L[e+32>>2];L[c+124>>2]=t-x;L[c+120>>2]=p-j;L[c+112>>2]=u;L[c+116>>2]=B-C;L[c+128>>2]=L[e+48>>2];L[c+132>>2]=L[e+52>>2];L[c+136>>2]=L[e+56>>2];j=L[b+8>>2];p=L[b+4>>2];x=L[b+12>>2];t=L[b>>2];H[c+60>>2]=0;B=O(p+p);u=O(j*B);C=O(t+t);k=O(x*C);L[c+44>>2]=u-k;L[c+36>>2]=u+k;t=O(O(1)-O(t*C));u=O(p*B);L[c+48>>2]=t-u;l=t;t=O(j+j);k=O(j*t);L[c+32>>2]=l-k;H[c+52>>2]=0;H[c+56>>2]=0;j=O(C*j);B=O(B*x);L[c+40>>2]=j+B;p=O(C*p);x=O(t*x);L[c+28>>2]=p-x;L[c+24>>2]=j-B;L[c+20>>2]=p+x;L[c+16>>2]=O(O(1)-u)-k;L[c+64>>2]=L[a+4>>2];L[c+68>>2]=L[a+8>>2];L[c+72>>2]=L[a+12>>2];G[c+8>>1]=J[i>>1];d=c+80|0;e=c+16|0;x=O(0);a=Oa-592|0;Oa=a;a:{b:{if(I[c+8|0]&16){break b}i=1;if(!_Z(d+48|0,d+36|0,d,e+48|0,e+36|0,e)){break b}H[h+40>>2]=0;G[h+12>>1]=2;g=L[f>>2];j=L[f+4>>2];L[h+36>>2]=-L[f+8>>2];L[h+32>>2]=-j;L[h+28>>2]=-g;break a}AU(a+496|0,d+36|0,d+48|0,d,d+12|0,d+24|0);AU(a+400|0,e+36|0,e+48|0,e,e+12|0,e+24|0);j=L[d+52>>2];p=L[d+48>>2];t=L[d+56>>2];L[a+232>>2]=-t;L[a+228>>2]=-j;L[a+224>>2]=-p;L[a+88>>2]=t;L[a+84>>2]=j;L[a+80>>2]=p;u=L[d+24>>2];j=O(-L[d+36>>2]);k=L[d+28>>2];C=L[d+40>>2];l=L[d+32>>2];B=L[d+44>>2];y=O(O(O(u*j)-O(k*C))-O(l*B));n=L[d+12>>2];s=L[d+16>>2];r=L[d+20>>2];o=O(O(O(n*j)-O(s*C))-O(r*B));m=L[f>>2];w=L[f+4>>2];p=L[f+8>>2];v=O(-O(O(O(u*m)+O(k*w))+O(l*p)));t=O(-O(O(O(n*m)+O(s*w))+O(r*p)));E=L[d>>2];z=L[d+4>>2];A=L[d+8>>2];C=O(O(O(E*j)-O(z*C))-O(A*B));B=O(-O(O(O(E*m)+O(z*w))+O(A*p)));i=0;D=-1;while(1){q=(a+400|0)+N(i,12)|0;j=L[q>>2];m=L[q+4>>2];w=L[q+8>>2];L[a+392>>2]=y+O(O(O(u*j)+O(k*m))+O(l*w));L[a+388>>2]=o+O(O(O(n*j)+O(s*m))+O(r*w));L[a+384>>2]=C+O(O(O(E*j)+O(z*m))+O(A*w));L[a+376>>2]=v;L[a+372>>2]=t;L[a+368>>2]=B;K=a_(a+224|0,a+80|0,a+384|0,a+368|0,a- -64|0,a+48|0);c:{if((K|0)==-1){break c}j=L[a+64>>2];if(j=j)){break c}M=L[d+24>>2];p=L[d>>2];x=L[d+12>>2];P=L[d+28>>2];Q=L[d+4>>2];R=L[d+16>>2];D=N(K,12)+90400|0;g=L[D>>2];m=L[D+4>>2];w=L[D+8>>2];L[h+36>>2]=O(O(g*L[d+8>>2])+O(m*L[d+20>>2]))+O(w*L[d+32>>2]);L[h+32>>2]=O(O(g*Q)+O(m*R))+O(w*P);L[h+28>>2]=O(O(g*p)+O(m*x))+O(w*M);L[h+16>>2]=L[q>>2];L[h+20>>2]=L[q+4>>2];L[h+24>>2]=L[q+8>>2];D=0;g=j}i=i+1|0;if((i|0)!=8){continue}break}j=L[e+52>>2];u=L[e+48>>2];k=L[e+56>>2];L[a+232>>2]=-k;L[a+228>>2]=-j;L[a+224>>2]=-u;L[a+88>>2]=k;L[a+84>>2]=j;L[a+80>>2]=u;j=L[e+40>>2];u=L[e+44>>2];k=L[e+16>>2];l=L[e+20>>2];v=L[e+36>>2];n=L[e+8>>2];s=L[e>>2];r=L[e+4>>2];m=L[e+12>>2];z=L[e+24>>2];w=L[f>>2];A=L[e+28>>2];E=L[f+4>>2];y=L[e+32>>2];o=L[f+8>>2];L[a+392>>2]=O(O(z*w)+O(A*E))+O(y*o);L[a+388>>2]=O(O(m*w)+O(k*E))+O(l*o);L[a+384>>2]=O(O(s*w)+O(r*E))+O(n*o);o=O(-v);w=O(O(O(z*o)-O(A*j))-O(y*u));E=O(O(O(m*o)-O(k*j))-O(l*u));u=O(O(O(s*o)-O(r*j))-O(n*u));i=0;while(1){q=(a+496|0)+N(i,12)|0;j=L[q>>2];o=L[q+4>>2];v=L[q+8>>2];L[a+376>>2]=w+O(O(O(z*j)+O(A*o))+O(y*v));L[a+372>>2]=E+O(O(O(m*j)+O(k*o))+O(l*v));L[a+368>>2]=u+O(O(O(s*j)+O(r*o))+O(n*v));K=a_(a+224|0,a+80|0,a+368|0,a+384|0,a- -64|0,a+48|0);d:{if((K|0)==-1){break d}j=L[a+64>>2];if(j=j)){break d}M=L[e+24>>2];t=L[e+12>>2];C=L[e>>2];B=L[e+28>>2];p=L[e+16>>2];x=L[e+4>>2];D=N(K,12)+90400|0;g=O(-L[D+4>>2]);o=L[D>>2];v=L[D+8>>2];L[h+36>>2]=O(O(L[e+20>>2]*g)-O(o*L[e+8>>2]))-O(v*L[e+32>>2]);L[h+32>>2]=O(O(p*g)-O(o*x))-O(v*B);L[h+28>>2]=O(O(t*g)-O(o*C))-O(v*M);g=L[f+4>>2];o=L[q>>2];v=L[f>>2];M=L[q+4>>2];L[h+24>>2]=O(j*L[f+8>>2])+L[q+8>>2];L[h+20>>2]=M+O(j*g);L[h+16>>2]=o+O(j*v);D=1;g=j}i=i+1|0;if((i|0)!=8){continue}break}n=L[d+32>>2];s=L[d+28>>2];r=L[d+24>>2];m=L[d+20>>2];z=L[d+16>>2];A=L[d+12>>2];y=L[d+8>>2];o=L[d+4>>2];v=L[d>>2];d=0;while(1){q=N(d,12);i=q+(a+224|0)|0;q=q+90480|0;j=L[q>>2];k=L[q+4>>2];l=L[q+8>>2];L[i+8>>2]=O(O(j*y)+O(k*m))+O(l*n);L[i+4>>2]=O(O(j*o)+O(k*z))+O(l*s);L[i>>2]=O(O(j*v)+O(k*A))+O(l*r);d=d+1|0;if((d|0)!=12){continue}break}n=L[e+32>>2];s=L[e+28>>2];r=L[e+24>>2];m=L[e+20>>2];z=L[e+16>>2];A=L[e+12>>2];y=L[e+8>>2];o=L[e+4>>2];v=L[e>>2];d=0;while(1){i=N(d,12);e=i+(a+80|0)|0;i=i+90480|0;j=L[i>>2];k=L[i+4>>2];l=L[i+8>>2];L[e+8>>2]=O(O(j*y)+O(k*m))+O(l*n);L[e+4>>2]=O(O(j*o)+O(k*z))+O(l*s);L[e>>2]=O(O(j*v)+O(k*A))+O(l*r);d=d+1|0;if((d|0)!=12){continue}break}e=0;while(1){e:{d=(a+224|0)+N(e,12)|0;M=L[d+8>>2];j=L[f+8>>2];P=L[d>>2];k=L[f>>2];Q=L[d+4>>2];l=L[f+4>>2];if(!(O(O(M*j)+O(O(P*k)+O(Q*l)))>=O(0))){break e}q=a+496|0;i=(e<<1)+125584|0;d=q+N(I[i|0],12)|0;n=L[d>>2];L[a+64>>2]=n;s=L[d+4>>2];L[a+68>>2]=s;r=L[d+8>>2];L[a+72>>2]=r;d=q+N(I[i+1|0],12)|0;m=L[d>>2];L[a+48>>2]=m;z=L[d+4>>2];L[a+52>>2]=z;A=L[d+8>>2];L[a+56>>2]=A;y=O(A-r);o=O(m-n);v=O(z-s);R=O(W(O(O(y*y)+O(O(o*o)+O(v*v)))));if(R>O(0)){F=r;r=O(O(.009999999776482582)/R);y=O(y*r);L[a+72>>2]=F-y;F=s;s=O(v*r);L[a+68>>2]=F-s;F=n;n=O(o*r);L[a+64>>2]=F-n;L[a+56>>2]=A+y;L[a+52>>2]=z+s;L[a+48>>2]=m+n}d=0;while(1){i=(a+80|0)+N(d,12)|0;n=L[i+8>>2];r=O(n*j);j=L[i>>2];s=O(j*k);k=L[i+4>>2];f:{if(O(r+O(s+O(k*l)))>=O(0)|O(O(M*n)+O(O(P*j)+O(k*Q)))>=O(0)){break f}K=a+400|0;q=(d<<1)+125584|0;i=K+N(I[q|0],12)|0;j=L[i>>2];L[a+32>>2]=j;k=L[i+4>>2];L[a+36>>2]=k;l=L[i+8>>2];L[a+40>>2]=l;i=K+N(I[q+1|0],12)|0;n=L[i>>2];L[a+16>>2]=n;s=L[i+4>>2];L[a+20>>2]=s;r=L[i+8>>2];L[a+24>>2]=r;m=O(r-l);z=O(n-j);A=O(s-k);y=O(W(O(O(m*m)+O(O(z*z)+O(A*A)))));if(y>O(0)){F=l;l=O(O(.009999999776482582)/y);m=O(m*l);L[a+40>>2]=F-m;F=k;k=O(A*l);L[a+36>>2]=F-k;F=j;j=O(z*l);L[a+32>>2]=F-j;L[a+24>>2]=r+m;L[a+20>>2]=s+k;L[a+16>>2]=n+j}if(!$Z(a- -64|0,a+48|0,f,a+32|0,a+16|0,a+12|0,a)){break f}j=L[a+12>>2];if(!(j<=g)){break f}E=L[a+64>>2];L[a+384>>2]=E;i=H[a+72>>2];H[a+388>>2]=H[a+68>>2];H[a+392>>2]=i;w=L[a+32>>2];L[a+368>>2]=w;i=H[a+40>>2];H[a+372>>2]=H[a+36>>2];H[a+376>>2]=i;g=L[f+4>>2];k=L[f>>2];C=L[a+48>>2];t=L[a+52>>2];u=L[a+56>>2];x=L[a+16>>2];p=L[a+20>>2];B=L[a+24>>2];l=L[a>>2];n=L[a+4>>2];L[h+24>>2]=O(j*L[f+8>>2])+L[a+8>>2];L[h+20>>2]=n+O(j*g);L[h+16>>2]=l+O(j*k);D=2;g=j}d=d+1|0;if((d|0)==12){break e}j=L[f+8>>2];l=L[f+4>>2];k=L[f>>2];continue}}e=e+1|0;if((e|0)!=12){continue}break}if((D|0)!=-1){g:{if((D|0)!=2){break g}L[a+232>>2]=u-L[a+392>>2];L[a+228>>2]=t-L[a+388>>2];L[a+224>>2]=C-E;L[a+88>>2]=B-L[a+376>>2];L[a+84>>2]=p-L[a+372>>2];L[a+80>>2]=x-w;t1(h+28|0,a+384|0,a+224|0,a+368|0,a+80|0,f,g);j=L[h+36>>2];p=L[h+28>>2];x=L[h+32>>2];t=O(W(O(O(j*j)+O(O(p*p)+O(x*x)))));if(!(t>O(0))){break g}k=j;j=O(O(1)/t);L[h+36>>2]=k*j;L[h+32>>2]=x*j;L[h+28>>2]=p*j}L[h+40>>2]=g;G[h+12>>1]=3}i=(D|0)!=-1}Oa=a+592|0;if(!(!i|L[h+40>>2]==O(0))){L[h+16>>2]=L[b+16>>2]+L[h+16>>2];L[h+20>>2]=L[b+20>>2]+L[h+20>>2];L[h+24>>2]=L[b+24>>2]+L[h+24>>2]}Oa=c+144|0;return i|0}function NW(a,b,c,d,e,f,g,h,i){var j=0,k=O(0),l=0,m=O(0),n=0,o=O(0),p=O(0),q=O(0),r=0,s=O(0),t=O(0),u=O(0),v=O(0),w=0,x=0,y=0,z=0,A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),G=O(0),J=O(0),K=0,M=0,N=O(0),P=O(0),Q=O(0),S=O(0),T=O(0),U=O(0),V=O(0);j=Oa-320|0;Oa=j;K=H[b+4>>2];m=L[K+20>>2];n=H[a+4>>2];k=L[n+20>>2];v=L[d>>2];x=I[n+32|0];P=L[n+16>>2];M=I[K+32|0];u=L[K+16>>2];H[j+44>>2]=0;S=O((k>m?m:k)*O(.10000000149011612));a:{b:{c:{d:{e:{f:{w=I[h|0];if(w){y=n+48|0;d=0;while(1){c=l<<2;n=I[f+l|0];H[c+(j- -64|0)>>2]=n;z=c+(j+48|0)|0;c=I[g+l|0];H[z>>2]=c;z=(1-n<<4)+y|0;s=L[z>>2];p=L[z+4>>2];q=L[z+8>>2];t=L[K+48>>2];m=L[K+52>>2];k=L[K+56>>2];n=d<<4;r=n+(j+144|0)|0;L[r+12>>2]=L[z+12>>2];L[r+8>>2]=q;L[r+4>>2]=p;L[r>>2]=s;r=n+(j+80|0)|0;H[r+12>>2]=0;n=n+(j+208|0)|0;H[n+12>>2]=0;c=(c<<4)+88320|0;o=H[c+8>>2]?k:O(-k);L[r+8>>2]=o;m=H[c+4>>2]?m:O(-m);L[r+4>>2]=m;k=H[c>>2]?t:O(-t);L[r>>2]=k;o=O(q-o);L[n+8>>2]=o;m=O(p-m);L[n+4>>2]=m;k=O(s-k);L[n>>2]=k;c=d;d=c+1|0;H[j+44>>2]=d;l=l+1|0;if((w|0)!=(l|0)){continue}break}g:{h:{switch(c-1|0){case 0:t=L[j+216>>2];s=O(L[j+232>>2]-t);o=L[j+208>>2];p=O(L[j+224>>2]-o);m=L[j+212>>2];q=O(L[j+228>>2]-m);k=O(O(s*s)+O(O(p*p)+O(q*q)));if(!(k<=O(1.1920928955078125e-7))){break g}H[j+44>>2]=1;c=H[j+212>>2];H[j+16>>2]=H[j+208>>2];H[j+20>>2]=c;c=H[j+220>>2];H[j+24>>2]=H[j+216>>2];H[j+28>>2]=c;break e;case 1:_W(j+16|0,j+208|0,j+144|0,j+80|0,j- -64|0,j+48|0,j+44|0);break e;case 2:break h;default:break f}}DZ(j+16|0,j+208|0,j+144|0,j+80|0,j- -64|0,j+48|0,j+44|0);break e}H[j+28>>2]=0;k=O(R(O(O(O(O(O(-o)*p)-O(q*m))-O(t*s))/k),O(1)));k=k>O(0)?k:O(0);L[j+24>>2]=t+O(s*k);L[j+20>>2]=m+O(q*k);L[j+16>>2]=o+O(p*k);break e}o=L[c+8>>2];m=L[c>>2];k=L[c+4>>2];H[j+284>>2]=0;c=O(O(o*o)+O(O(m*m)+O(k*k)))>O(0);p=c?o:O(0);L[j+280>>2]=p;q=c?k:O(0);L[j+276>>2]=q;t=c?m:O(1);L[j+272>>2]=t;k=O(O(1)/O(W(O(O(p*p)+O(O(t*t)+O(q*q))))));C=O(p*k);D=O(q*k);E=O(t*k);s=O(3.4028234663852886e38);Q=O(0);break d}H[j+28>>2]=0;L[j+24>>2]=o;L[j+20>>2]=m;L[j+16>>2]=k}c=H[j+20>>2];H[j+272>>2]=H[j+16>>2];H[j+276>>2]=c;c=H[j+28>>2];H[j+280>>2]=H[j+24>>2];H[j+284>>2]=c;p=L[j+280>>2];t=L[j+272>>2];q=L[j+276>>2];s=O(W(O(O(p*p)+O(O(t*t)+O(q*q)))));if(!(S>2]}G=x?P:O(0);J=M?u:O(0);N=O(G+J);P=O(v+N);while(1){H[j+296>>2]=H[j+312>>2];c=H[j+308>>2];H[j+288>>2]=H[j+304>>2];H[j+292>>2]=c;x=H[a+4>>2];w=x+52|0;r=H[j+44>>2];y=r<<2;k=O(-t);n=x+56|0;d=x+68|0;c=x+72|0;M=O(O(O(L[x+48>>2]*k)-O(L[w>>2]*q))-O(L[n>>2]*p))>O(O(O(L[x+64>>2]*k)-O(L[d>>2]*q))-O(L[c>>2]*p));H[y+(j- -64|0)>>2]=M;T=L[(M?x+48|0:x- -64|0)>>2];U=L[(M?w:d)>>2];V=L[(M?n:c)>>2];w=H[b+4>>2];d=t>O(0);n=q>O(0);c=p>O(0);H[y+(j+48|0)>>2]=d|n<<1|c<<2;k=L[w+56>>2];u=c?k:O(-k);A=O(V-u);k=L[w+48>>2];o=d?k:O(-k);B=O(T-o);k=L[w+52>>2];m=n?k:O(-k);v=O(U-m);k=O(O(C*A)+O(O(E*B)+O(D*v)));if(k>P){a=0;if(!f){break a}F[h|0]=r;if(!r){break a}l=0;if((r|0)!=1){e=r&-2;d=0;while(1){b=l<<2;c=j- -64|0;F[f+l|0]=H[b+c>>2];h=b;b=j+48|0;F[g+l|0]=H[h+b>>2];i=l|1;h=i<<2;F[f+i|0]=H[c+h>>2];F[g+i|0]=H[b+h>>2];l=l+2|0;d=d+2|0;if((e|0)!=(d|0)){continue}break}}if(!(r&1)){break a}b=l<<2;F[f+l|0]=H[b+(j- -64|0)>>2];F[g+l|0]=H[b+(j+48|0)>>2];break a}if(O(s*O(.9997749924659729))>2];h=b;b=j+48|0;F[g+l|0]=H[h+b>>2];n=l|1;h=n<<2;F[f+n|0]=H[c+h>>2];F[g+n|0]=H[b+h>>2];l=l+2|0;a=a+2|0;if((d|0)!=(a|0)){continue}break}}if(!(r&1)){break i}a=l<<2;F[f+l|0]=H[a+(j- -64|0)>>2];F[g+l|0]=H[a+(j+48|0)>>2]}L[i+32>>2]=E;H[i+44>>2]=0;L[i+40>>2]=C;L[i+36>>2]=D;FU(j+208|0,j+144|0,j+80|0,j+272|0,j+16|0,j,r);j:{if(e){a=H[j+20>>2];H[i>>2]=H[j+16>>2];H[i+4>>2]=a;a=H[j+28>>2];H[i+8>>2]=H[j+24>>2];H[i+12>>2]=a;a=H[j+4>>2];H[i+16>>2]=H[j>>2];H[i+20>>2]=a;a=H[j+12>>2];H[i+24>>2]=H[j+8>>2];H[i+28>>2]=a;a=H[j+308>>2];H[i+68>>2]=H[j+304>>2];H[i+72>>2]=a;H[i+76>>2]=H[j+312>>2];break j}o=L[j+16>>2];m=L[j+20>>2];k=L[j+24>>2];H[i+12>>2]=0;L[i+8>>2]=k-O(G*C);L[i+4>>2]=m-O(G*D);L[i>>2]=o-O(G*E);o=L[j>>2];m=L[j+4>>2];k=L[j+8>>2];H[i+28>>2]=0;L[i+24>>2]=k+O(J*C);L[i+20>>2]=m+O(J*D);L[i+16>>2]=o+O(J*E);s=O(s-N)}L[i+64>>2]=s;a=2;break a}c=r<<4;d=c+(j+144|0)|0;H[d+12>>2]=0;L[d+8>>2]=V;L[d+4>>2]=U;L[d>>2]=T;d=c+(j+80|0)|0;H[d+12>>2]=0;L[d+8>>2]=u;L[d+4>>2]=m;L[d>>2]=o;c=c+(j+208|0)|0;H[c+12>>2]=0;L[c+8>>2]=A;L[c+4>>2]=v;L[c>>2]=B;H[j+44>>2]=r+1;k:{l:{switch(r-1|0){case 0:u=L[j+216>>2];A=O(L[j+232>>2]-u);o=L[j+208>>2];B=O(L[j+224>>2]-o);m=L[j+212>>2];v=O(L[j+228>>2]-m);k=O(O(A*A)+O(O(B*B)+O(v*v)));if(k<=O(1.1920928955078125e-7)){H[j+44>>2]=1;c=H[j+212>>2];H[j+16>>2]=H[j+208>>2];H[j+20>>2]=c;c=H[j+220>>2];H[j+24>>2]=H[j+216>>2];H[j+28>>2]=c;break k}H[j+28>>2]=0;k=O(R(O(O(O(O(O(-o)*B)-O(v*m))-O(u*A))/k),O(1)));k=k>O(0)?k:O(0);L[j+24>>2]=u+O(A*k);L[j+20>>2]=m+O(v*k);L[j+16>>2]=o+O(B*k);break k;case 1:_W(j+16|0,j+208|0,j+144|0,j+80|0,j- -64|0,j+48|0,j+44|0);break k;case 2:DZ(j+16|0,j+208|0,j+144|0,j+80|0,j- -64|0,j+48|0,j+44|0);break k;default:break l}}H[j+28>>2]=0;L[j+24>>2]=A;L[j+20>>2]=v;L[j+16>>2]=B}c=H[j+20>>2];H[j+272>>2]=H[j+16>>2];H[j+276>>2]=c;c=H[j+28>>2];H[j+280>>2]=H[j+24>>2];H[j+284>>2]=c;o=L[j+280>>2];m=L[j+272>>2];k=L[j+276>>2];u=O(W(O(O(o*o)+O(O(m*m)+O(k*k)))));v=O(O(1)/u);C=O(o*v);D=O(k*v);E=O(m*v);if(!(!(u>S)|!(s>u))){Q=L[j+284>>2];p=o;q=k;t=m;s=u;continue}break}c=H[j+44>>2];if(!(s>u)){m:{if(!f){break m}w=c-1|0;F[h|0]=w;if(!w){break m}l=0;if((c|0)!=2){h=w&-2;a=0;while(1){b=l<<2;d=j- -64|0;F[f+l|0]=H[b+d>>2];z=b;b=j+48|0;F[g+l|0]=H[z+b>>2];y=l|1;n=y<<2;F[f+y|0]=H[d+n>>2];F[g+y|0]=H[b+n>>2];l=l+2|0;a=a+2|0;if((h|0)!=(a|0)){continue}break}}if(!(w&1)){break m}a=l<<2;F[f+l|0]=H[a+(j- -64|0)>>2];F[g+l|0]=H[a+(j+48|0)>>2]}H[j+312>>2]=H[j+296>>2];a=H[j+292>>2];H[j+304>>2]=H[j+288>>2];H[j+308>>2]=a;L[j+284>>2]=Q;L[j+272>>2]=t;L[j+276>>2]=q;L[j+280>>2]=p;FU(j+208|0,j+144|0,j+80|0,j+272|0,j+16|0,j,c);H[i+60>>2]=0;L[i+56>>2]=C;L[i+52>>2]=D;L[i+48>>2]=E;H[i+44>>2]=0;k=O(O(1)/s);p=O(p*k);L[i+40>>2]=p;q=O(q*k);L[i+36>>2]=q;u=O(t*k);L[i+32>>2]=u;if(e){a=H[j+20>>2];H[i>>2]=H[j+16>>2];H[i+4>>2]=a;a=H[j+28>>2];H[i+8>>2]=H[j+24>>2];H[i+12>>2]=a;a=H[j+4>>2];H[i+16>>2]=H[j>>2];H[i+20>>2]=a;a=H[j+12>>2];H[i+24>>2]=H[j+8>>2];H[i+28>>2]=a;L[i+64>>2]=s;a=H[j+292>>2];H[i+68>>2]=H[j+288>>2];H[i+72>>2]=a;H[i+76>>2]=H[j+296>>2];a=4;break a}o=L[j+16>>2];m=L[j+20>>2];k=L[j+24>>2];H[i+12>>2]=0;L[i+8>>2]=k-O(G*p);L[i+4>>2]=m-O(G*q);L[i>>2]=o-O(G*u);o=L[j>>2];m=L[j+4>>2];k=L[j+8>>2];L[i+64>>2]=s-N;H[i+28>>2]=0;L[i+24>>2]=k+O(J*p);L[i+20>>2]=m+O(J*q);L[i+16>>2]=o+O(J*u);a=2;if(s<=N){break a}a=4;break a}if(f){break b}a=5;break a}c=H[j+44>>2]}F[h|0]=c;a=5;if(!c){break a}l=0;if((c|0)!=1){h=c&-2;d=0;while(1){b=l<<2;e=j- -64|0;F[f+l|0]=H[b+e>>2];i=b;b=j+48|0;F[g+l|0]=H[i+b>>2];n=l|1;i=n<<2;F[f+n|0]=H[e+i>>2];F[g+n|0]=H[b+i>>2];l=l+2|0;d=d+2|0;if((h|0)!=(d|0)){continue}break}}if(!(c&1)){break a}b=l<<2;F[f+l|0]=H[b+(j- -64|0)>>2];F[g+l|0]=H[b+(j+48|0)>>2]}Oa=j+320|0;return a}function qK(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,v=0,w=0,x=0,y=0,z=0;if(H[a+116>>2]){a:{if(!I[a+28|0]){break a}s=H[a+20>>2];x=H[a+12>>2];m=H[a+4>>2];t=H[a>>2];q=H[a+24>>2];b:{if(!q){break b}if(!s){break a}u=H[a+16>>2];o=H[a+8>>2];while(1){n=N(k,24)+m|0;c=H[n>>2];l=H[n+12>>2];while(1){d=e;e=d+1|0;f=H[o+N(d,24)>>2];if(f>>>0>>0){continue}break}if(f>>>0<=l>>>0){r=x+(k<<1)|0;e=d;while(1){c=o+N(e,24)|0;c:{if(H[c+20>>2]-H[n+8>>2]>>>1&1073741824|H[c+16>>2]-H[n+4>>2]&-2147483648|H[n+16>>2]-H[c+4>>2]>>>2&536870912|H[n+20>>2]-H[c+8>>2]>>>3&268435456){break c}i=H[b+28>>2];g=H[b+32>>2];c=H[(t+(J[r>>1]<<3)|0)+4>>2];j=H[i+(H[g+N(c>>>2|0,12)>>2]<<2)>>2];f=H[(t+(J[u+(e<<1)>>1]<<3)|0)+4>>2];g=H[i+(H[g+N(f>>>2|0,12)>>2]<<2)>>2];if((j|0)==(g|0)|!I[H[b+36>>2]+(j<<2&12|g&3)|0]){break c}g=c>>>0>f>>>0;i=g?c:f;j=g?f:c;c=i<<16|j&65535;c=(c<<15^-1)+c|0;c=N(c>>>10^c,9);c=c>>>6^c;c=(c<<11^-1)+c|0;w=c>>>16^c;f=w&H[b+4>>2];d:{g=H[b+12>>2];e:{if(!g){break e}c=H[(f<<2)+g>>2];if((c|0)==-1){break e}y=H[b+16>>2];v=H[b+20>>2];while(1){p=v+(c<<3)|0;if((j|0)==(H[p>>2]&2147483647)){z=H[p+4>>2];if((i|0)==(z&2147483647)){break d}}c=H[y+(c<<2)>>2];if((c|0)!=-1){continue}break}}c=H[b+8>>2];if(c>>>0>=K[b>>2]){f=$G(b,w);g=H[b+12>>2];c=H[b+8>>2]}H[b+8>>2]=c+1;p=H[b+20>>2]+(c<<3)|0;H[p+4>>2]=i;H[p>>2]=j|-2147483648;f=(f<<2)+g|0;H[H[b+16>>2]+(c<<2)>>2]=H[f>>2];H[f>>2]=c;break c}H[p+4>>2]=z|-2147483648}e=e+1|0;if(l>>>0>=K[o+N(e,24)>>2]){continue}break}}f:{if(d>>>0>=q>>>0){c=0;break f}e=d;c=0;k=k+1|0;if(s>>>0>k>>>0){continue}}break}while(1){e=o+N(h,24)|0;f=H[e>>2];n=H[e+12>>2];while(1){d=c;c=c+1|0;e=H[N(d,24)+m>>2];if(e>>>0<=f>>>0){continue}break}if(e>>>0<=n>>>0){p=u+(h<<1)|0;k=o+N(h,24)|0;e=d;while(1){c=N(e,24)+m|0;g:{if(H[c+20>>2]-H[k+8>>2]>>>1&1073741824|H[c+16>>2]-H[k+4>>2]&-2147483648|H[k+16>>2]-H[c+4>>2]>>>2&536870912|H[k+20>>2]-H[c+8>>2]>>>3&268435456){break g}l=H[b+28>>2];g=H[b+32>>2];c=H[(t+(J[x+(e<<1)>>1]<<3)|0)+4>>2];i=H[l+(H[g+N(c>>>2|0,12)>>2]<<2)>>2];f=H[(t+(J[p>>1]<<3)|0)+4>>2];g=H[l+(H[g+N(f>>>2|0,12)>>2]<<2)>>2];if((i|0)==(g|0)|!I[H[b+36>>2]+(i<<2&12|g&3)|0]){break g}g=c>>>0>f>>>0;l=g?c:f;i=g?f:c;c=l<<16|i&65535;c=(c<<15^-1)+c|0;c=N(c>>>10^c,9);c=c>>>6^c;c=(c<<11^-1)+c|0;r=c>>>16^c;f=r&H[b+4>>2];h:{g=H[b+12>>2];i:{if(!g){break i}c=H[(f<<2)+g>>2];if((c|0)==-1){break i}w=H[b+16>>2];y=H[b+20>>2];while(1){j=y+(c<<3)|0;if((i|0)==(H[j>>2]&2147483647)){v=H[j+4>>2];if((l|0)==(v&2147483647)){break h}}c=H[w+(c<<2)>>2];if((c|0)!=-1){continue}break}}c=H[b+8>>2];if(c>>>0>=K[b>>2]){f=$G(b,r);g=H[b+12>>2];c=H[b+8>>2]}H[b+8>>2]=c+1;j=H[b+20>>2]+(c<<3)|0;H[j+4>>2]=l;H[j>>2]=i|-2147483648;f=(f<<2)+g|0;H[H[b+16>>2]+(c<<2)>>2]=H[f>>2];H[f>>2]=c;break g}H[j+4>>2]=v|-2147483648}e=e+1|0;if(n>>>0>=K[N(e,24)+m>>2]){continue}break}}if(d>>>0>=s>>>0){break b}c=d;h=h+1|0;if(q>>>0>h>>>0){continue}break}}if(!s){break a}d=0;f=0;while(1){g=N(f,24)+m|0;c=H[g>>2];e=d;while(1){h=N(e,24);d=e+1|0;e=d;if(c>>>0>K[h+m>>2]){continue}break}if(d>>>0>=s>>>0){break a}u=H[g+12>>2];if(u>>>0>=K[N(d,24)+m>>2]){l=x+(f<<1)|0;c=d;while(1){e=N(c,24)+m|0;j:{if(H[e+20>>2]-H[g+8>>2]>>>1&1073741824|H[e+16>>2]-H[g+4>>2]&-2147483648|H[g+16>>2]-H[e+4>>2]>>>2&536870912|H[g+20>>2]-H[e+8>>2]>>>3&268435456){break j}o=H[b+28>>2];k=H[b+32>>2];e=H[(t+(J[l>>1]<<3)|0)+4>>2];n=H[o+(H[k+N(e>>>2|0,12)>>2]<<2)>>2];h=H[(t+(J[x+(c<<1)>>1]<<3)|0)+4>>2];k=H[o+(H[k+N(h>>>2|0,12)>>2]<<2)>>2];if((n|0)==(k|0)|!I[H[b+36>>2]+(n<<2&12|k&3)|0]){break j}k=e>>>0>h>>>0;o=k?e:h;n=k?h:e;e=o<<16|n&65535;e=(e<<15^-1)+e|0;e=N(e>>>10^e,9);e=e>>>6^e;e=(e<<11^-1)+e|0;i=e>>>16^e;h=i&H[b+4>>2];k:{k=H[b+12>>2];l:{if(!k){break l}e=H[(h<<2)+k>>2];if((e|0)==-1){break l}j=H[b+16>>2];p=H[b+20>>2];while(1){q=p+(e<<3)|0;if((n|0)==(H[q>>2]&2147483647)){r=H[q+4>>2];if((o|0)==(r&2147483647)){break k}}e=H[j+(e<<2)>>2];if((e|0)!=-1){continue}break}}e=H[b+8>>2];if(e>>>0>=K[b>>2]){h=$G(b,i);k=H[b+12>>2];e=H[b+8>>2]}H[b+8>>2]=e+1;q=H[b+20>>2]+(e<<3)|0;H[q+4>>2]=o;H[q>>2]=n|-2147483648;h=(h<<2)+k|0;H[H[b+16>>2]+(e<<2)>>2]=H[h>>2];H[h>>2]=e;break j}H[q+4>>2]=r|-2147483648}c=c+1|0;if(u>>>0>=K[N(c,24)+m>>2]){continue}break}}f=f+1|0;if((s|0)!=(f|0)){continue}break}}m:{if(!I[a+60|0]){break m}x=H[a+56>>2];q=H[a+52>>2];k=H[a+48>>2];s=H[a+44>>2];o=H[a+32>>2];n=H[a+40>>2];t=H[a+36>>2];n:{if(!n|!t){break n}h=0;d=0;while(1){m=s+N(h,24)|0;e=H[m>>2];u=H[m+12>>2];while(1){c=d;d=c+1|0;f=H[k+N(c,24)>>2];if(f>>>0>>0){continue}break}if(f>>>0<=u>>>0){p=x+(h<<1)|0;e=c;while(1){d=k+N(e,24)|0;o:{if(H[d+20>>2]-H[m+8>>2]>>>1&1073741824|H[d+16>>2]-H[m+4>>2]&-2147483648|H[m+16>>2]-H[d+4>>2]>>>2&536870912|H[m+20>>2]-H[d+8>>2]>>>3&268435456){break o}l=H[b+28>>2];g=H[b+32>>2];d=H[(o+(J[p>>1]<<3)|0)+4>>2];i=H[l+(H[g+N(d>>>2|0,12)>>2]<<2)>>2];f=H[(o+(J[q+(e<<1)>>1]<<3)|0)+4>>2];g=H[l+(H[g+N(f>>>2|0,12)>>2]<<2)>>2];if((i|0)==(g|0)|!I[H[b+36>>2]+(i<<2&12|g&3)|0]){break o}g=d>>>0>f>>>0;l=g?d:f;i=g?f:d;d=l<<16|i&65535;d=(d<<15^-1)+d|0;d=N(d>>>10^d,9);d=d>>>6^d;d=(d<<11^-1)+d|0;r=d>>>16^d;f=r&H[b+4>>2];p:{g=H[b+12>>2];q:{if(!g){break q}d=H[(f<<2)+g>>2];if((d|0)==-1){break q}w=H[b+16>>2];y=H[b+20>>2];while(1){j=y+(d<<3)|0;if((i|0)==(H[j>>2]&2147483647)){v=H[j+4>>2];if((l|0)==(v&2147483647)){break p}}d=H[w+(d<<2)>>2];if((d|0)!=-1){continue}break}}d=H[b+8>>2];if(d>>>0>=K[b>>2]){f=$G(b,r);g=H[b+12>>2];d=H[b+8>>2]}H[b+8>>2]=d+1;j=H[b+20>>2]+(d<<3)|0;H[j+4>>2]=l;H[j>>2]=i|-2147483648;f=(f<<2)+g|0;H[H[b+16>>2]+(d<<2)>>2]=H[f>>2];H[f>>2]=d;break o}H[j+4>>2]=v|-2147483648}e=e+1|0;if(u>>>0>=K[k+N(e,24)>>2]){continue}break}}if(c>>>0>=n>>>0){break n}d=c;h=h+1|0;if(t>>>0>h>>>0){continue}break}}if(!t|!n){break m}h=0;d=0;while(1){m=k+N(h,24)|0;e=H[m>>2];u=H[m+12>>2];while(1){c=d;d=c+1|0;f=H[s+N(c,24)>>2];if(f>>>0<=e>>>0){continue}break}if(f>>>0<=u>>>0){p=q+(h<<1)|0;e=c;while(1){d=s+N(e,24)|0;r:{if(H[d+20>>2]-H[m+8>>2]>>>1&1073741824|H[d+16>>2]-H[m+4>>2]&-2147483648|H[m+16>>2]-H[d+4>>2]>>>2&536870912|H[m+20>>2]-H[d+8>>2]>>>3&268435456){break r}l=H[b+28>>2];g=H[b+32>>2];d=H[(o+(J[x+(e<<1)>>1]<<3)|0)+4>>2];i=H[l+(H[g+N(d>>>2|0,12)>>2]<<2)>>2];f=H[(o+(J[p>>1]<<3)|0)+4>>2];g=H[l+(H[g+N(f>>>2|0,12)>>2]<<2)>>2];if((i|0)==(g|0)|!I[H[b+36>>2]+(i<<2&12|g&3)|0]){break r}g=d>>>0>f>>>0;l=g?d:f;i=g?f:d;d=l<<16|i&65535;d=(d<<15^-1)+d|0;d=N(d>>>10^d,9);d=d>>>6^d;d=(d<<11^-1)+d|0;r=d>>>16^d;f=r&H[b+4>>2];s:{g=H[b+12>>2];t:{if(!g){break t}d=H[(f<<2)+g>>2];if((d|0)==-1){break t}w=H[b+16>>2];y=H[b+20>>2];while(1){j=y+(d<<3)|0;if((i|0)==(H[j>>2]&2147483647)){v=H[j+4>>2];if((l|0)==(v&2147483647)){break s}}d=H[w+(d<<2)>>2];if((d|0)!=-1){continue}break}}d=H[b+8>>2];if(d>>>0>=K[b>>2]){f=$G(b,r);g=H[b+12>>2];d=H[b+8>>2]}H[b+8>>2]=d+1;j=H[b+20>>2]+(d<<3)|0;H[j+4>>2]=l;H[j>>2]=i|-2147483648;f=(f<<2)+g|0;H[H[b+16>>2]+(d<<2)>>2]=H[f>>2];H[f>>2]=d;break r}H[j+4>>2]=v|-2147483648}e=e+1|0;if(u>>>0>=K[s+N(e,24)>>2]){continue}break}}if(c>>>0>=t>>>0){break m}d=c;h=h+1|0;if(n>>>0>h>>>0){continue}break}}H[a+116>>2]=0}}function Qm(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=O(0),s=0,t=0,u=0,v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=0,B=0;u=H[33768];o=Oa-16|0;Oa=o;a=H[33808];e=Ra[H[H[a>>2]+20>>2]](a)|0?35808:55639;a=Ra[H[H[a+12>>2]+8>>2]](a+12|0,132,e,4459,524)|0;H[a+4>>2]=196610;H[a+88>>2]=0;H[a+92>>2]=1065353216;H[a+80>>2]=0;H[a+84>>2]=0;H[a+12>>2]=1;H[a+120>>2]=0;H[a+124>>2]=1065353216;H[a+112>>2]=0;H[a+116>>2]=0;H[a+104>>2]=0;H[a+108>>2]=1065353216;H[a+96>>2]=0;H[a+100>>2]=0;H[a+8>>2]=127632;H[a>>2]=127548;H[a+36>>2]=-25165825;H[a+28>>2]=-25165825;H[a+32>>2]=-25165825;H[a+40>>2]=0;H[a+44>>2]=0;H[a+48>>2]=0;H[a+52>>2]=0;H[a+56>>2]=0;H[a+60>>2]=0;e=a- -64|0;H[e>>2]=0;H[e+4>>2]=0;H[a+72>>2]=0;H[a+76>>2]=0;H[a+128>>2]=u;i=Oa-48|0;Oa=i;a:{if(!gW(67,86,88,77,i+36|0,i+35|0,b)){break a}if(K[i+36>>2]<=12){o5(H[33808],32,8422,318,56905,0);break a}dW(I[i+35|0],b);if(!hW(67,76,72,76,i+44|0,i+43|0,b)){break a}if(K[i+44>>2]<=8){if(!hW(67,86,72,76,i+44|0,i+43|0,b)){break a}}fW(i,4,I[i+43|0],b);d=H[i>>2];F[a+54|0]=d;e=H[i+4>>2];G[a+52>>1]=e;f=H[i+8>>2];F[a+55|0]=f;h=N(d&255,15);d=e&32767;h=(h+(d<<1)|0)+(e<<16>>16>=0?0:d<<2)|0;e=H[i+12>>2];d=(h+e|0)+N(f&255,20)|0;f=d&3;d=(f?4-f|0:0)+d|0;f=H[a+56>>2];if(f){g=H[33808];Ra[H[H[g+12>>2]+12>>2]](g+12|0,f)}H[a+80>>2]=e;if(d){c=H[33808];c=Ra[H[H[c+12>>2]+8>>2]](c+12|0,d,20591,8422,199)|0}H[a+56>>2]=c;f=J[a+52>>1];c=N(I[a+55|0],20)+c|0;g=I[a+54|0];k=N(g,3);fW(c,k,I[i+43|0],b);d=0;l=f&32767;h=f<<16>>16>=0?0:l<<2;t=k;k=c+N(g,12)|0;l=k+(l<<1)|0;f=t+l|0;if(K[i+44>>2]<=6){cW(I[i+43|0],b)}h=f+h|0;Ra[H[H[b>>2]>>2]](b,H[a+56>>2],N(I[a+55|0],20))|0;if(!(!I[i+43|0]|!I[a+55|0])){while(1){c=H[a+56>>2]+N(d,20)|0;g=I[c+3|0];F[c+3|0]=I[c|0];F[c|0]=g;g=I[c+1|0];F[c+1|0]=I[c+2|0];F[c+2|0]=g;g=I[c+4|0];F[c+4|0]=I[c+7|0];F[c+7|0]=g;g=I[c+5|0];F[c+5|0]=I[c+6|0];F[c+6|0]=g;g=I[c+11|0];F[c+11|0]=I[c+8|0];F[c+8|0]=g;g=I[c+10|0];F[c+10|0]=I[c+9|0];F[c+9|0]=g;g=I[c+15|0];F[c+15|0]=I[c+12|0];F[c+12|0]=g;g=I[c+14|0];F[c+14|0]=I[c+13|0];F[c+13|0]=g;g=I[c+17|0];F[c+17|0]=I[c+16|0];F[c+16|0]=g;d=d+1|0;if(d>>>0>2]>>2]](b,h,e)|0;g=1;Ra[H[H[b>>2]>>2]](b,k,J[a+52>>1]<<1&65534)|0;b:{if(K[i+44>>2]<=5){if(!I[a+54|0]){break b}d=0;c:while(1){j=I[a+55|0];if(j){m=H[a+56>>2];e=0;k=0;while(1){d:{c=m+N(e,20)|0;p=I[c+18|0];if(!p){break d}q=J[c+16>>1];c=0;e:{while(1){if(I[h+(c+q|0)|0]!=(d|0)){c=c+1|0;if((p|0)!=(c|0)){continue}break e}break}F[i+k|0]=e;k=k+1|0}if((k|0)!=3){break d}c=l+N(d,3)|0;F[c|0]=I[i|0];F[c+1|0]=I[i+1|0];F[c+2|0]=I[i+2|0];d=d+1|0;g=I[a+54|0];if(d>>>0>>0){continue c}break b}e=e+1|0;if((j|0)!=(e|0)){continue}break}}break}if(!g){break b}c=0;while(1){e=l+N(c,3)|0;F[e|0]=255;F[e+1|0]=255;F[e+2|0]=255;c=c+1|0;if(c>>>0>2]>>2]](b,l,N(I[a+54|0],3))|0}c=G[a+52>>1];f:{if((c|0)>=0){break f}if(K[i+44>>2]<=7){if(!(c&32767)){break f}c=0;while(1){G[f+(c<<1)>>1]=65535;c=c+1|0;if(c>>>0<(J[a+52>>1]<<1&65534)>>>0){continue}break}break f}d=I[i+43|0];k=0;l=0;e=c<<1&65534;Ra[H[H[b>>2]>>2]](b,f,e<<1)|0;g:{if(!d|!e){break g}c=0;if(e-1>>>0>=3){h=e&-4;while(1){d=c<<1;g=d+f|0;j=I[g+1|0];F[g+1|0]=I[g|0];F[g|0]=j;g=f+(d|2)|0;j=I[g+1|0];F[g+1|0]=I[g|0];F[g|0]=j;g=f+(d|4)|0;j=I[g+1|0];F[g+1|0]=I[g|0];F[g|0]=j;d=f+(d|6)|0;g=I[d+1|0];F[d+1|0]=I[d|0];F[d|0]=g;c=c+4|0;l=l+4|0;if((h|0)!=(l|0)){continue}break}}d=e&3;if(!d){break g}while(1){e=f+(c<<1)|0;g=I[e+1|0];F[e+1|0]=I[e|0];F[e|0]=g;c=c+1|0;k=k+1|0;if((d|0)!=(k|0)){continue}break}}}fW(i,8,I[i+35|0],b);r=L[i+16>>2];v=L[i+4>>2];w=L[i+20>>2];x=L[i+8>>2];y=L[i+24>>2];z=L[i+12>>2];L[a+36>>2]=O(y-z)*O(.5);L[a+32>>2]=O(w-x)*O(.5);L[a+28>>2]=O(r-v)*O(.5);L[a+24>>2]=O(z+y)*O(.5);L[a+20>>2]=O(x+w)*O(.5);L[a+16>>2]=O(v+r)*O(.5);r=L[i+28>>2];L[a+88>>2]=r;if(r!=O(-1)){fW(a+92|0,9,I[i+35|0],b);fW(a+40|0,3,I[i+35|0],b)}if(eW(I[i+35|0],b)!=O(-1)){c=H[a+84>>2];if(c){c=LY(c);e=H[33808];Ra[H[H[e+12>>2]+12>>2]](e+12|0,c)}H[a+84>>2]=0;c=H[33808];e=Ra[H[H[c>>2]+20>>2]](c)|0?40962:55639;c=Ra[H[H[c+12>>2]+8>>2]](c+12|0,28,e,8422,351)|0;H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;H[a+84>>2]=c;j=0;m=0;p=0;q=0;k=Oa-16|0;Oa=k;h:{if(!hW(83,85,80,77,k+12|0,k+11|0,b)){break h}if(!hW(71,65,85,83,k+12|0,k+11|0,b)){break h}A=c,B=dW(I[k+11|0],b),G[A>>1]=B;d=dW(I[k+11|0],b);G[c+2>>1]=d;e=d<<1&131070;i:{if(!e){f=0;break i}d=H[33808];f=Ra[H[H[d+12>>2]+8>>2]](d+12|0,e,20591,10485,161)|0;d=J[c+2>>1]}H[c+4>>2]=f;Ra[H[H[b>>2]>>2]](b,f,(d&65535)<<1)|0;l=Oa-16|0;Oa=l;j:{if(!hW(86,65,76,69,l+12|0,l+11|0,b)){break j}A=c,B=dW(I[l+11|0],b),H[A+8>>2]=B;e=dW(I[l+11|0],b);H[c+12>>2]=e;d=H[c+24>>2];if(d){e=H[33808];Ra[H[H[e+12>>2]+12>>2]](e+12|0,d);e=H[c+12>>2]}d=(H[c+8>>2]<<2)+12&-16;e=d+e|0;if(e){f=H[33808];e=Ra[H[H[f+12>>2]+8>>2]](f+12|0,e,20591,10485,99)|0}else{e=0}H[c+16>>2]=e;H[c+24>>2]=e;H[c+20>>2]=d+e;d=dW(I[l+11|0],b)&65535;f=H[c+8>>2];g=I[l+11|0];h=Oa;t=h;k:{if(d>>>0<=255){h=h-(f+15&-16)|0;Oa=h;Ra[H[H[b>>2]>>2]](b,h,f)|0;if(!f){break k}d=0;if(f-1>>>0>=3){m=f&-4;g=0;while(1){G[e+(d<<1)>>1]=I[d+h|0];n=d|1;G[e+(n<<1)>>1]=I[h+n|0];n=d|2;G[e+(n<<1)>>1]=I[h+n|0];n=d|3;G[e+(n<<1)>>1]=I[h+n|0];d=d+4|0;g=g+4|0;if((m|0)!=(g|0)){continue}break}}f=f&3;if(!f){break k}while(1){G[e+(d<<1)>>1]=I[d+h|0];d=d+1|0;j=j+1|0;if((f|0)!=(j|0)){continue}break}break k}Ra[H[H[b>>2]>>2]](b,e,f<<1)|0;if(!g|!f){break k}g=0;d=0;if(f-1>>>0>=3){n=f&-4;while(1){h=d<<1;j=h+e|0;s=I[j+1|0];F[j+1|0]=I[j|0];F[j|0]=s;j=e+(h|2)|0;s=I[j+1|0];F[j+1|0]=I[j|0];F[j|0]=s;j=e+(h|4)|0;s=I[j+1|0];F[j+1|0]=I[j|0];F[j|0]=s;h=e+(h|6)|0;j=I[h+1|0];F[h+1|0]=I[h|0];F[h|0]=j;d=d+4|0;m=m+4|0;if((n|0)!=(m|0)){continue}break}}h=f&3;if(!h){break k}while(1){f=e+(d<<1)|0;j=I[f+1|0];F[f+1|0]=I[f|0];F[f|0]=j;d=d+1|0;g=g+1|0;if((h|0)!=(g|0)){continue}break}}Oa=t;f=H[c+8>>2];l:{if(!f){break l}g=H[c+16>>2];d=0;if(f-1>>>0>=3){j=f&-4;while(1){h=f+(d^-1)|0;G[g+(h<<2)>>1]=J[e+(h<<1)>>1];h=f-d|0;m=h-2|0;G[g+(m<<2)>>1]=J[e+(m<<1)>>1];m=h-3|0;G[g+(m<<2)>>1]=J[e+(m<<1)>>1];h=h-4|0;G[g+(h<<2)>>1]=J[e+(h<<1)>>1];d=d+4|0;p=p+4|0;if((j|0)!=(p|0)){continue}break}}h=f&3;if(!h){break l}while(1){j=f+(d^-1)|0;G[g+(j<<2)>>1]=J[e+(j<<1)>>1];d=d+1|0;q=q+1|0;if((h|0)!=(q|0)){continue}break}}Ra[H[H[b>>2]>>2]](b,H[c+20>>2],H[c+12>>2])|0;f=0;g=H[c+16>>2];G[g+2>>1]=0;c=H[c+8>>2];if(c>>>0<2){break j}d=c-1|0;h=d&3;e=1;if(c-2>>>0>=3){j=d&-4;d=0;while(1){c=g+(e<<2)|0;f=J[c-4>>1]+f|0;G[c+2>>1]=f;f=f+J[c>>1]|0;G[c+6>>1]=f;f=f+J[c+4>>1]|0;G[c+10>>1]=f;f=f+J[c+8>>1]|0;G[c+14>>1]=f;e=e+4|0;d=d+4|0;if((j|0)!=(d|0)){continue}break}}if(!h){break j}d=0;while(1){c=g+(e<<2)|0;f=J[c-4>>1]+f|0;G[c+2>>1]=f;e=e+1|0;d=d+1|0;if((h|0)!=(d|0)){continue}break}}Oa=l+16|0}Oa=k+16|0;H[a+60>>2]=H[a+84>>2]}fW(a- -64|0,4,I[i+35|0],b);c=1}Oa=i+48|0;m:{if(!c){b=H[a+12>>2]-1|0;H[a+12>>2]=b;if(b){a=0;break m}Ra[H[H[a+8>>2]+8>>2]](a+8|0);a=0;break m}H[o+8>>2]=a;b=rg(u+48|0,o+8|0,o+15|0);if(!I[o+15|0]){H[b>>2]=H[o+8>>2]}}Oa=o+16|0;return a|0}function kO(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;r=Oa-16|0;Oa=r;h=H[a+2396>>2];f=H[h+288>>2];if(!f){i=Oa-16|0;Oa=i;e=H[h+284>>2];if(e){f=H[33808];l=Ra[H[H[f>>2]+20>>2]](f)|0?33358:55639;o=Ra[H[H[f+12>>2]+8>>2]](f+12|0,e,l,15259,180)|0}else{o=0}H[i+12>>2]=o;f=H[h+268>>2];a:{if(f>>>0>=(H[h+272>>2]&2147483647)>>>0){l=h+4|0;e=H[l+268>>2]&2147483647;k=e?e<<1:1;f=0;b:{if(!k){break b}e=k<<2;if(!(I[l+256|0]|e>>>0>256)){F[l+256|0]=1;f=l;break b}f=0;if(!e){break b}f=H[33808];g=Ra[H[H[f>>2]+20>>2]](f)|0?33358:55639;f=Ra[H[H[f+12>>2]+8>>2]](f+12|0,e,g,13582,553)|0}g=H[l+264>>2];m=f+(g<<2)|0;if((g|0)>0){n=H[l+260>>2];e=f;while(1){H[e>>2]=H[n>>2];n=n+4|0;e=e+4|0;if(m>>>0>e>>>0){continue}break}}H[m>>2]=H[i+12>>2];c:{if(H[l+268>>2]<0){break c}e=H[l+260>>2];if((e|0)==(l|0)){F[l+256|0]=0;break c}if(!e){break c}g=H[33808];Ra[H[H[g+12>>2]+12>>2]](g+12|0,e);g=H[l+264>>2]}H[l+268>>2]=k;H[l+260>>2]=f;H[l+264>>2]=g+1;break a}H[H[h+264>>2]+(f<<2)>>2]=o;H[h+268>>2]=f+1}f=(o+N(H[h+276>>2],80)|0)-80|0;if(o>>>0<=f>>>0){e=H[h+288>>2];while(1){H[f>>2]=e;e=f;f=e-80|0;if(o>>>0<=f>>>0){continue}break}H[h+288>>2]=e}Oa=i+16|0;f=H[h+288>>2]}H[h+288>>2]=H[f>>2];H[h+280>>2]=H[h+280>>2]+1;e=0;k=Oa-48|0;Oa=k;F[f+68|0]=0;H[f+56>>2]=0;o=b;H[f+52>>2]=b;l=a;H[f+48>>2]=a;a=0;d:{if(!c){break d}a=0;if(!I[c+9|0]){break d}a=H[c>>2]}H[f+60>>2]=a;H[f- -64>>2]=!d|!I[d+9|0]?e:H[d>>2];a=H[l+2364>>2];b=H[a+12>>2];e:{if(b){b=b-1|0;e=H[H[a+8>>2]+(b<<2)>>2];H[a+12>>2]=b;break e}e=H[a+4>>2];H[a+4>>2]=e+1}H[f+40>>2]=e;i=H[l+1004>>2];a=i+164|0;b=H[i+176>>2]&2147483647;f:{if(b>>>0>e>>>0){break f}h=b;b=b<<1;if(h>>>0>=b>>>0){break f}PG(a,b);e=H[f+40>>2]}b=H[i+172>>2];H[k+40>>2]=0;H[k+44>>2]=0;H[k+32>>2]=0;H[k+36>>2]=0;H[k+24>>2]=0;H[k+28>>2]=0;H[k+16>>2]=0;H[k+20>>2]=0;e=e+1|0;b=b>>>0>>0?e:b;if(b>>>0>(H[a+12>>2]&2147483647)>>>0){PG(a,b)}e=H[a+8>>2];if((e|0)<(b|0)){h=H[a+4>>2];g=h+(b<<5)|0;e=h+(e<<5)|0;while(1){L[e>>2]=L[k+16>>2];L[e+4>>2]=L[k+20>>2];L[e+8>>2]=L[k+24>>2];H[e+12>>2]=H[k+28>>2];L[e+16>>2]=L[k+32>>2];L[e+20>>2]=L[k+36>>2];L[e+24>>2]=L[k+40>>2];H[e+28>>2]=H[k+44>>2];e=e+32|0;if(g>>>0>e>>>0){continue}break}}H[a+8>>2]=b;a=H[i+168>>2]+(H[f+40>>2]<<5)|0;H[a>>2]=0;H[a+4>>2]=0;H[a+24>>2]=0;H[a+16>>2]=0;H[a+20>>2]=0;H[a+8>>2]=0;H[a+12>>2]=0;m=H[f+48>>2];s=H[f+52>>2];t=H[s+44>>2];a=t;g:{if(a>>>0<=128){b=H[m+1580>>2];if(!b){h=Oa-16|0;Oa=h;j=m+1292|0;b=H[j+284>>2];if(b){a=H[33808];e=Ra[H[H[a>>2]+20>>2]](a)|0?45420:55639;i=Ra[H[H[a+12>>2]+8>>2]](a+12|0,b,e,15259,180)|0}else{i=0}H[h+12>>2]=i;a=H[j+268>>2];h:{if(a>>>0>=(H[j+272>>2]&2147483647)>>>0){e=j+4|0;b=H[e+268>>2]&2147483647;p=b?b<<1:1;a=0;i:{if(!p){break i}b=p<<2;if(!(I[e+256|0]|b>>>0>256)){F[e+256|0]=1;a=e;break i}a=0;if(!b){break i}a=H[33808];g=Ra[H[H[a>>2]+20>>2]](a)|0?45420:55639;a=Ra[H[H[a+12>>2]+8>>2]](a+12|0,b,g,13582,553)|0}b=a;g=H[e+264>>2];q=a+(g<<2)|0;if((g|0)>0){n=H[e+260>>2];while(1){H[a>>2]=H[n>>2];n=n+4|0;a=a+4|0;if(q>>>0>a>>>0){continue}break}}H[q>>2]=H[h+12>>2];j:{if(H[e+268>>2]<0){break j}a=H[e+260>>2];if((a|0)==(e|0)){F[e+256|0]=0;break j}if(!a){break j}g=H[33808];Ra[H[H[g+12>>2]+12>>2]](g+12|0,a);g=H[e+264>>2]}H[e+268>>2]=p;H[e+260>>2]=b;H[e+264>>2]=g+1;break h}H[H[j+264>>2]+(a<<2)>>2]=i;H[j+268>>2]=a+1}b=(i+(H[j+276>>2]<<7)|0)-128|0;if(i>>>0<=b>>>0){a=H[j+288>>2];while(1){H[b>>2]=a;a=b;b=a-128|0;if(i>>>0<=b>>>0){continue}break}H[j+288>>2]=a}Oa=h+16|0;b=H[m+1580>>2]}H[m+1580>>2]=H[b>>2];a=m+1572|0;H[a>>2]=H[a>>2]+1;break g}if(a>>>0<=256){b=H[m+1872>>2];if(!b){h=Oa-16|0;Oa=h;j=m+1584|0;b=H[j+284>>2];if(b){a=H[33808];e=Ra[H[H[a>>2]+20>>2]](a)|0?45722:55639;i=Ra[H[H[a+12>>2]+8>>2]](a+12|0,b,e,15259,180)|0}else{i=0}H[h+12>>2]=i;a=H[j+268>>2];k:{if(a>>>0>=(H[j+272>>2]&2147483647)>>>0){e=j+4|0;b=H[e+268>>2]&2147483647;p=b?b<<1:1;a=0;l:{if(!p){break l}b=p<<2;if(!(I[e+256|0]|b>>>0>256)){F[e+256|0]=1;a=e;break l}a=0;if(!b){break l}a=H[33808];g=Ra[H[H[a>>2]+20>>2]](a)|0?45722:55639;a=Ra[H[H[a+12>>2]+8>>2]](a+12|0,b,g,13582,553)|0}b=a;g=H[e+264>>2];q=a+(g<<2)|0;if((g|0)>0){n=H[e+260>>2];while(1){H[a>>2]=H[n>>2];n=n+4|0;a=a+4|0;if(q>>>0>a>>>0){continue}break}}H[q>>2]=H[h+12>>2];m:{if(H[e+268>>2]<0){break m}a=H[e+260>>2];if((a|0)==(e|0)){F[e+256|0]=0;break m}if(!a){break m}g=H[33808];Ra[H[H[g+12>>2]+12>>2]](g+12|0,a);g=H[e+264>>2]}H[e+268>>2]=p;H[e+260>>2]=b;H[e+264>>2]=g+1;break k}H[H[j+264>>2]+(a<<2)>>2]=i;H[j+268>>2]=a+1}b=(i+(H[j+276>>2]<<8)|0)-256|0;if(i>>>0<=b>>>0){a=H[j+288>>2];while(1){H[b>>2]=a;a=b;b=a-256|0;if(i>>>0<=b>>>0){continue}break}H[j+288>>2]=a}Oa=h+16|0;b=H[m+1872>>2]}H[m+1872>>2]=H[b>>2];a=m+1864|0;H[a>>2]=H[a>>2]+1;break g}if(a>>>0<=384){b=H[m+2164>>2];if(!b){h=Oa-16|0;Oa=h;j=m+1876|0;b=H[j+284>>2];if(b){a=H[33808];e=Ra[H[H[a>>2]+20>>2]](a)|0?46352:55639;i=Ra[H[H[a+12>>2]+8>>2]](a+12|0,b,e,15259,180)|0}else{i=0}H[h+12>>2]=i;a=H[j+268>>2];n:{if(a>>>0>=(H[j+272>>2]&2147483647)>>>0){e=j+4|0;b=H[e+268>>2]&2147483647;p=b?b<<1:1;a=0;o:{if(!p){break o}b=p<<2;if(!(I[e+256|0]|b>>>0>256)){F[e+256|0]=1;a=e;break o}a=0;if(!b){break o}a=H[33808];g=Ra[H[H[a>>2]+20>>2]](a)|0?46352:55639;a=Ra[H[H[a+12>>2]+8>>2]](a+12|0,b,g,13582,553)|0}b=a;g=H[e+264>>2];q=a+(g<<2)|0;if((g|0)>0){n=H[e+260>>2];while(1){H[a>>2]=H[n>>2];n=n+4|0;a=a+4|0;if(q>>>0>a>>>0){continue}break}}H[q>>2]=H[h+12>>2];p:{if(H[e+268>>2]<0){break p}a=H[e+260>>2];if((a|0)==(e|0)){F[e+256|0]=0;break p}if(!a){break p}g=H[33808];Ra[H[H[g+12>>2]+12>>2]](g+12|0,a);g=H[e+264>>2]}H[e+268>>2]=p;H[e+260>>2]=b;H[e+264>>2]=g+1;break n}H[H[j+264>>2]+(a<<2)>>2]=i;H[j+268>>2]=a+1}b=(i+N(H[j+276>>2],384)|0)-384|0;if(i>>>0<=b>>>0){a=H[j+288>>2];while(1){H[b>>2]=a;a=b;b=a-384|0;if(i>>>0<=b>>>0){continue}break}H[j+288>>2]=a}Oa=h+16|0;b=H[m+2164>>2]}H[m+2164>>2]=H[b>>2];a=m+2156|0;H[a>>2]=H[a>>2]+1;break g}b=H[33808];b=Ra[H[H[b+12>>2]+8>>2]](b+12|0,a,20591,9345,1823)|0}q:{if(!b){o5(H[33808],32,7686,127,57250,0);break q}a=S6(b,0,t);L[f>>2]=L[s+48>>2];L[f+4>>2]=L[s+52>>2];e=J[s>>1];G[f+8>>1]=t;G[f+10>>1]=e;H[f+12>>2]=H[s+36>>2];e=H[s+32>>2];H[f+20>>2]=a;H[f+16>>2]=e;a=H[f+60>>2];i=a?a- -64|0:0;H[f+24>>2]=i;e=H[f- -64>>2];h=e?e- -64|0:0;H[f+28>>2]=h;H[f+32>>2]=a?H[i+36>>2]:0;H[f+36>>2]=e?H[h+36>>2]:0;L[f+44>>2]=L[s+56>>2]}if(b){L[k+16>>2]=L[o+48>>2];L[k+12>>2]=L[o+52>>2];if(L[k+12>>2]>2]>2]=f;a=H[l+1136>>2];r:{if(!(H[(H[H[H[f+48>>2]+1004>>2]+168>>2]+(H[f+40>>2]<<5)|0)+12>>2]?0:I[H[f+52>>2]]&6)){b=H[f+64>>2];e=H[f+60>>2];s:{if(!e){break s}e=H[e+164>>2];if(!e){break s}IG(a,e,f)}if(!b){break r}b=H[b+164>>2];if(!b){break r}IG(a,b,f);break r}DG(a,f)}e=H[H[f+48>>2]+2408>>2];if(c){c=H[c>>2]}else{c=H[l+2380>>2]}if(d){a=H[d>>2]}else{a=H[l+2380>>2]}b=H[e+288>>2];if(!b){QG(e);b=H[e+288>>2]}H[e+288>>2]=H[b>>2];H[e+280>>2]=H[e+280>>2]+1;LG(b,f,c,a);H[f+56>>2]=b}Oa=k+48|0;H[r+8>>2]=o;a=rg(l+1096|0,r+8|0,r+15|0);if(!I[r+15|0]){H[a>>2]=H[r+8>>2]}Oa=r+16|0}function sW(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=O(g);h=h|0;i=i|0;j=O(j);var k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=0,y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),F=0,I=O(0),K=O(0),M=O(0),N=0,P=O(0),Q=O(0),R=O(0),S=O(0),T=O(0),U=O(0),V=O(0),X=O(0),Y=O(0),Z=O(0),_=O(0),$=0,aa=0,ba=O(0),ca=O(0),da=0;c=Oa-48|0;Oa=c;l=L[b+20>>2];k=L[b+16>>2];r=L[b+24>>2];p=L[b>>2];m=O(p+p);t=L[b+8>>2];w=L[b+4>>2];n=L[b+12>>2];o=O(n+n);q=L[a+8>>2];y=O(O(O(m*t)-O(w*o))*q);L[c+36>>2]=r-y;t=O(q*O(O(t*o)+O(m*w)));L[c+32>>2]=l-t;L[c+24>>2]=y+r;L[c+20>>2]=l+t;l=O(q*O(O(p*m)+O(O(n*o)+O(-1))));L[c+28>>2]=k-l;L[c+16>>2]=k+l;L[c+40>>2]=L[a+4>>2]+j;i=J[i>>1];j=L[f>>2];l=L[f+4>>2];L[c+8>>2]=-L[f+8>>2];L[c+4>>2]=-l;L[c>>2]=-j;b=0;a=Oa-160|0;Oa=a;d=c+16|0;p=O(L[e+24>>2]+L[d+24>>2]);a:{b:{c:{d:{e:{f:{if(i&16){break f}g:{l=L[e>>2];n=L[e+12>>2];if(l!=n){break g}k=L[e+4>>2];if(k!=L[e+16>>2]){break g}j=L[e+8>>2];if(j!=L[e+20>>2]){break g}m=L[d+8>>2];j=O(j-m);m=O(L[d+20>>2]-m);n=L[d>>2];l=O(l-n);n=O(L[d+12>>2]-n);q=L[d+4>>2];o=O(L[d+16>>2]-q);k=O(k-q);q=O(O(j*m)+O(O(l*n)+O(o*k)));h:{if(q<=O(0)){break h}r=O(O(m*m)+O(O(n*n)+O(o*o)));if(r<=q){j=O(j-m);k=O(k-o);l=O(l-n);break h}s=m;m=O(q/r);j=O(j-O(s*m));k=O(k-O(o*m));l=O(l-O(n*m))}if(!(O(O(j*j)+O(O(l*l)+O(k*k)))>2];m=L[d+12>>2];if(k!=m){j=L[d+16>>2];q=L[d+4>>2];break i}j=L[d+16>>2];q=L[d+4>>2];if(j!=q){break i}o=L[d+8>>2];if(o!=L[d+20>>2]){break i}m=L[e+8>>2];j=O(o-m);m=O(L[e+20>>2]-m);k=O(k-l);n=O(n-l);l=L[e+4>>2];o=O(L[e+16>>2]-l);l=O(q-l);q=O(O(j*m)+O(O(k*n)+O(o*l)));j:{if(q<=O(0)){break j}r=O(O(m*m)+O(O(n*n)+O(o*o)));if(r<=q){j=O(j-m);l=O(l-o);k=O(k-n);break j}s=m;m=O(q/r);j=O(j-O(s*m));l=O(l-O(o*m));k=O(k-O(n*m))}if(!(O(O(j*j)+O(O(k*k)+O(l*l)))>2];r=L[e+20>>2];t=L[e+4>>2];w=L[e+8>>2];L[a+32>>2]=n-l;L[a+40>>2]=r-w;L[a+36>>2]=o-t;l=L[d+20>>2];n=L[d+8>>2];L[a+148>>2]=j-q;L[a+144>>2]=m-k;L[a+152>>2]=l-n;if(uZ(e,a+32|0,d,a+144|0,0,0)>2];Q=L[d>>2];U=O(P-Q);m=O(U*O(.5));j=L[e+12>>2];q=O(m+j);B=L[e>>2];V=O(m+B);k=O(q-V);l=L[e+16>>2];R=L[d+16>>2];ba=L[d+4>>2];X=O(R-ba);n=O(X*O(.5));r=O(l-n);C=L[e+4>>2];Y=O(n+C);z=O(r-Y);t=O(j-m);u=O(t-V);w=O(n+l);j=O(w-Y);l=O(O(k*z)-O(u*j));v=j;j=L[e+20>>2];S=L[d+20>>2];ca=L[d+8>>2];Z=O(S-ca);o=O(Z*O(.5));y=O(j-o);s=L[e+8>>2];_=O(o+s);D=O(y-_);A=z;z=O(o+j);E=O(z-_);j=O(O(v*D)-O(A*E));k=O(O(E*u)-O(D*k));u=O(W(O(O(l*l)+O(O(j*j)+O(k*k)))));if(u>O(0)){u=O(O(1)/u);l=O(l*u);k=O(k*u);j=O(j*u)}u=O(s-o);C=O(C-n);B=O(B-m);m=O(p*l);n=O(p*k);o=O(p*j);s=L[c+8>>2];D=L[c>>2];E=L[c+4>>2];if(!(O(O(l*s)+O(O(j*D)+O(k*E)))>=O(0))){break d}A=O(z-m);I=O(w-n);K=O(q-o);k=O(t-o);M=O(u-m);v=O(C-n);T=O(B-o);l=O(y-m);j=O(r-n);break c}H[h+40>>2]=0;g=L[c>>2];j=L[c+4>>2];L[h+36>>2]=-L[c+8>>2];L[h+32>>2]=-j;L[h+28>>2]=-g;G[c+14>>1]=2;break b}M=O(z+m);v=O(w+n);T=O(q+o);k=O(t+o);A=O(u+m);I=O(C+n);K=O(B+o);l=O(y+m);j=O(r+n)}S=O(O(ca+S)*O(.5));L[a+152>>2]=S;R=O(O(ba+R)*O(.5));L[a+148>>2]=R;P=O(O(Q+P)*O(.5));L[a+144>>2]=P;n=O(A-l);o=O(v-j);A=O(T-k);v=O(O(D*o)-O(A*E));K=O(K-k);M=O(M-l);T=O(O(E*M)-O(o*s));I=O(I-j);Q=O(O(s*A)-O(M*D));m=O(O(n*v)+O(O(K*T)+O(I*Q)));k:{l:{if(mm){break l}l=O(O(O(1)/m)*O(O(M*s)+O(O(A*j)+O(o*l))));if(!(l>=O(0))){break l}if(g>l){break k}}L[a+140>>2]=p;L[a+136>>2]=_;L[a+132>>2]=Y;F=a+128|0;L[F>>2]=V;L[a+124>>2]=u;L[a+120>>2]=C;L[a+112>>2]=p;L[a+108>>2]=_;L[a+104>>2]=Y;$=a+100|0;L[$>>2]=V;L[a+96>>2]=z;L[a+92>>2]=w;L[a+84>>2]=p;L[a+80>>2]=z;L[a+76>>2]=w;aa=a+72|0;L[aa>>2]=q;L[a+68>>2]=y;L[a- -64>>2]=r;L[a+52>>2]=y;L[a+48>>2]=r;L[a+116>>2]=B;L[a+88>>2]=q;L[a+60>>2]=t;L[a+56>>2]=p;L[a+44>>2]=t;L[a+40>>2]=u;L[a+36>>2]=C;L[a+32>>2]=B;f=a+144|0;x=a+32|0;N=x;da=x|12;x=a+16|0;N=WV(f,c,N,da,p,x);j=L[a+16>>2];aa=WV(f,c,a+60|0,aa,L[a+84>>2],x);l=L[a+16>>2];$=WV(f,c,a+88|0,$,L[a+112>>2],x);k=L[a+16>>2];F=WV(f,c,a+116|0,F,L[a+140>>2],x);N=!(g>=j)|(!(j>=O(0))|N^1);g=N?g:j;f=!(g>=l)|(!(l>=O(0))|aa^1);g=f?g:l;x=!(g>=k)|(!(k>=O(0))|$^1);j=x?g:k;g=L[a+16>>2];F=!(j>=g)|(!(g>=O(0))|F^1);l=F?j:g;if(!f|(!x|(F|0)!=1)){break k}f=0;if(N){break a}}G[c+14>>1]=0;m:{if(!(i&3)){break m}g=L[e+4>>2];j=L[c+4>>2];k=L[e+8>>2];p=L[c+8>>2];m=L[e+16>>2];n=L[e+20>>2];o=L[e+12>>2];q=L[e>>2];r=L[c>>2];L[a+40>>2]=Z;L[a+36>>2]=X;L[a+32>>2]=U;s=q;q=O(l*r);r=O(s-q);s=g;g=O(l*j);j=O(s-g);s=k;k=O(l*p);t=O(s-k);p=O(O(o-q)-r);m=O(O(m-g)-j);n=O(O(n-k)-t);m1(a+16|0,a,r,j,t,p,m,n,d,a+32|0);if(i&2){k=L[a>>2];o=L[a+16>>2];j=L[a+4>>2];q=L[a+20>>2];g=O(L[a+24>>2]-L[a+8>>2]);L[h+36>>2]=g;j=O(q-j);L[h+32>>2]=j;k=O(o-k);L[h+28>>2]=k;o=O(W(O(O(g*g)+O(O(k*k)+O(j*j)))));if(o>O(0)){q=g;g=O(O(1)/o);L[h+36>>2]=q*g;L[h+32>>2]=j*g;L[h+28>>2]=k*g}n:{if(!(o>2]=g;j=O(O(Z*p)-O(n*U));L[h+32>>2]=j;k=O(O(X*n)-O(m*Z));L[h+28>>2]=k;p=O(W(O(O(g*g)+O(O(k*k)+O(j*j)))));if(p>O(0)){m=g;g=O(O(1)/p);L[h+36>>2]=m*g;L[h+32>>2]=j*g;L[h+28>>2]=k*g}if(!(p>2];j=L[e+4>>2];k=L[e+8>>2];m1(a+16|0,a,g,j,k,O(L[e+12>>2]-g),O(L[e+16>>2]-j),O(L[e+20>>2]-k),d,a+32|0);k=L[a>>2];p=L[a+16>>2];j=L[a+4>>2];m=L[a+20>>2];g=O(L[a+24>>2]-L[a+8>>2]);L[h+36>>2]=g;j=O(m-j);L[h+32>>2]=j;k=O(p-k);L[h+28>>2]=k;p=O(W(O(O(g*g)+O(O(k*k)+O(j*j)))));if(!(p>O(0))){break n}m=g;g=O(O(1)/p);L[h+36>>2]=m*g;L[h+32>>2]=j*g;L[h+28>>2]=k*g}G[c+14>>1]=J[c+14>>1]|2}if(!(i&1)){break m}p=L[a+16>>2];m=L[a>>2];n=L[a+20>>2];o=L[a+4>>2];g=L[d+24>>2];j=L[e+24>>2];k=O(O(1)/O(g+j));L[h+24>>2]=k*O(O(g*L[a+24>>2])+O(j*L[a+8>>2]));L[h+20>>2]=k*O(O(g*n)+O(j*o));L[h+16>>2]=k*O(O(g*p)+O(j*m));G[c+14>>1]=J[c+14>>1]|1}L[h+40>>2]=l}f=1}Oa=a+160|0;o:{if(!f){break o}a=J[c+14>>1];G[h+12>>1]=a;b=1;if(!(i&512)|L[h+40>>2]!=O(0)){break o}G[h+12>>1]=a|1;b=Oa-48|0;Oa=b;g=L[e+16>>2];j=L[e>>2];l=L[e+12>>2];k=L[e+4>>2];L[b+40>>2]=L[e+20>>2]-L[e+8>>2];L[b+36>>2]=g-k;L[b+32>>2]=l-j;a=c+16|0;g=L[a+16>>2];j=L[a>>2];l=L[a+12>>2];k=L[a+4>>2];L[b+24>>2]=L[a+20>>2]-L[a+8>>2];L[b+20>>2]=g-k;L[b+16>>2]=l-j;uZ(e,b+32|0,a,b+16|0,b+12|0,b+8|0);j=L[e+8>>2];g=L[b+12>>2];k=O(j+O(g*O(L[e+20>>2]-j)));l=L[a+8>>2];j=L[b+8>>2];m=O(l+O(j*O(L[a+20>>2]-l)));l=O(k-m);k=L[e>>2];q=O(k+O(g*O(L[e+12>>2]-k)));k=L[a>>2];n=O(k+O(j*O(L[a+12>>2]-k)));k=O(q-n);p=L[e+4>>2];q=O(p+O(g*O(L[e+16>>2]-p)));g=L[a+4>>2];o=O(g+O(j*O(L[a+16>>2]-g)));g=O(q-o);j=O(O(l*l)+O(O(k*k)+O(g*g)));p=O(W(j));q=L[a+24>>2];r=L[e+24>>2];p:{if(j>2]=l;L[h+36>>2]=j;L[h+32>>2]=g;L[h+40>>2]=p-O(r+q);k=j;j=L[a+24>>2];L[h+24>>2]=m+O(k*j);L[h+20>>2]=o+O(g*j);L[h+16>>2]=n+O(l*j);Oa=b+48|0;b=1}Oa=c+48|0;return b|0}function $T(a,b,c,d){var e=0,f=O(0),g=0,h=0,i=0,j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=0,q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=0,C=0,D=O(0),E=O(0),F=0,G=O(0),I=O(0),J=O(0),K=O(0),M=O(0),N=0,P=O(0);e=Oa-32|0;Oa=e;f=L[d+52>>2];t=L[d+56>>2];u=L[d+60>>2];q=L[d+20>>2];r=L[d+24>>2];n=L[d+28>>2];j=L[d+36>>2];o=L[d+40>>2];v=L[d+48>>2];k=L[d>>2];l=L[d+4>>2];m=L[d+8>>2];w=L[d+12>>2];x=L[d+16>>2];s=L[d+32>>2];y=L[d+44>>2];L[a+80>>2]=y;L[a+76>>2]=o;L[a+72>>2]=j;L[a+68>>2]=s;L[a- -64>>2]=n;L[a+60>>2]=r;L[a+56>>2]=q;L[a+52>>2]=x;L[a+48>>2]=w;L[a+44>>2]=m;L[a+40>>2]=l;L[a+36>>2]=k;u=O(u+O(0));L[a+96>>2]=u;v=O(v+O(O(O(x*O(0))-O(k*c))+O(s*O(0))));L[a+84>>2]=v;t=O(t+O(O(O(r*O(0))-O(m*c))+O(o*O(0))));L[a+92>>2]=t;z=O(f+O(O(O(q*O(0))-O(l*c))+O(j*O(0))));L[a+88>>2]=z;H[a+32>>2]=0;H[a>>2]=2;f=O(3.1415927410125732);while(1){H[e+24>>2]=0;N=e,P=O(T5(f)*b),L[N+20>>2]=P;N=e,P=O(Z5(f)*b),L[N+16>>2]=P;f=O(f+O(.03141592815518379));i=WT(a,e+16|0);g=g+1|0;if((g|0)!=100){continue}break}H[e+8>>2]=0;L[e+4>>2]=b;A=O(b*O(1.7484555314695172e-7));L[e>>2]=A;i=WT(i,e);L[a+96>>2]=u;L[a+92>>2]=t;L[a+88>>2]=z;L[a+84>>2]=v;L[a+80>>2]=n;L[a+76>>2]=r;L[a+72>>2]=q;L[a+68>>2]=x;y=O(-y);L[a+64>>2]=y;o=O(-o);L[a+60>>2]=o;j=O(-j);L[a+56>>2]=j;s=O(-s);L[a+52>>2]=s;L[a+48>>2]=w;L[a+44>>2]=m;L[a+40>>2]=l;L[a+36>>2]=k;H[a+32>>2]=0;H[a>>2]=2;f=O(3.1415927410125732);g=0;while(1){H[e+24>>2]=0;N=e,P=O(T5(f)*b),L[N+20>>2]=P;N=e,P=O(Z5(f)*b),L[N+16>>2]=P;f=O(f+O(.03141592815518379));h=WT(i,e+16|0);g=g+1|0;if((g|0)!=100){continue}break}H[e+8>>2]=0;L[e+4>>2]=b;L[e>>2]=A;i=WT(h,e);L[a+96>>2]=u;L[a+92>>2]=t;L[a+88>>2]=z;L[a+84>>2]=v;L[a+80>>2]=w;L[a+76>>2]=m;L[a+72>>2]=l;L[a+68>>2]=k;L[a+64>>2]=y;L[a+60>>2]=o;L[a+56>>2]=j;L[a+52>>2]=s;L[a+48>>2]=-n;L[a+44>>2]=-r;L[a+40>>2]=-q;L[a+36>>2]=-x;H[a+32>>2]=0;H[a>>2]=2;f=O(0);g=0;while(1){H[e+24>>2]=0;N=e,P=O(T5(f)*b),L[N+20>>2]=P;N=e,P=O(Z5(f)*b),L[N+16>>2]=P;f=O(f+O(.06283185631036758));h=WT(i,e+16|0);g=g+1|0;if((g|0)!=100){continue}break}H[e+8>>2]=0;L[e+4>>2]=b;H[e>>2]=0;i=WT(h,e);x=L[d+48>>2];z=L[d+52>>2];t=L[d+56>>2];v=L[d+60>>2];q=L[d>>2];r=L[d+4>>2];k=L[d+8>>2];j=L[d+12>>2];l=L[d+16>>2];m=L[d+20>>2];n=L[d+24>>2];o=L[d+28>>2];w=L[d+32>>2];s=L[d+36>>2];u=L[d+40>>2];A=L[d+44>>2];L[a+80>>2]=A;L[a+76>>2]=u;L[a+72>>2]=s;L[a+68>>2]=w;L[a+64>>2]=o;L[a+60>>2]=n;L[a+56>>2]=m;L[a+52>>2]=l;L[a+48>>2]=j;L[a+44>>2]=k;L[a+40>>2]=r;L[a+36>>2]=q;f=O(0);v=O(v+O(0));L[a+96>>2]=v;t=O(t+O(O(O(k*c)+O(n*O(0)))+O(u*O(0))));L[a+92>>2]=t;z=O(z+O(O(O(r*c)+O(m*O(0)))+O(s*O(0))));L[a+88>>2]=z;y=O(x+O(O(O(q*c)+O(l*O(0)))+O(w*O(0))));L[a+84>>2]=y;H[a+32>>2]=0;H[a>>2]=2;g=0;while(1){H[e+24>>2]=0;N=e,P=O(T5(f)*b),L[N+20>>2]=P;N=e,P=O(Z5(f)*b),L[N+16>>2]=P;f=O(f+O(.03141592815518379));h=WT(i,e+16|0);g=g+1|0;if((g|0)!=100){continue}break}H[e+8>>2]=0;x=O(-b);L[e+4>>2]=x;D=O(b*O(-8.742277657347586e-8));L[e>>2]=D;i=WT(h,e);L[a+96>>2]=v;L[a+92>>2]=t;L[a+88>>2]=z;L[a+84>>2]=y;L[a+80>>2]=o;L[a+76>>2]=n;L[a+72>>2]=m;L[a+68>>2]=l;A=O(-A);L[a+64>>2]=A;u=O(-u);L[a+60>>2]=u;s=O(-s);L[a+56>>2]=s;w=O(-w);L[a+52>>2]=w;L[a+48>>2]=j;L[a+44>>2]=k;L[a+40>>2]=r;L[a+36>>2]=q;H[a+32>>2]=0;H[a>>2]=2;f=O(0);g=0;while(1){H[e+24>>2]=0;N=e,P=O(T5(f)*b),L[N+20>>2]=P;N=e,P=O(Z5(f)*b),L[N+16>>2]=P;f=O(f+O(.03141592815518379));h=WT(i,e+16|0);g=g+1|0;if((g|0)!=100){continue}break}H[e+8>>2]=0;L[e+4>>2]=x;L[e>>2]=D;i=WT(h,e);L[a+96>>2]=v;L[a+92>>2]=t;L[a+88>>2]=z;L[a+84>>2]=y;L[a+80>>2]=j;L[a+76>>2]=k;L[a+72>>2]=r;L[a+68>>2]=q;L[a+64>>2]=A;L[a+60>>2]=u;L[a+56>>2]=s;L[a+52>>2]=w;L[a+48>>2]=-o;L[a+44>>2]=-n;L[a+40>>2]=-m;L[a+36>>2]=-l;H[a+32>>2]=0;H[a>>2]=2;f=O(0);g=0;while(1){H[e+24>>2]=0;N=e,P=O(T5(f)*b),L[N+20>>2]=P;N=e,P=O(Z5(f)*b),L[N+16>>2]=P;f=O(f+O(.06283185631036758));h=WT(i,e+16|0);g=g+1|0;if((g|0)!=100){continue}break}H[e+8>>2]=0;H[e>>2]=0;L[e+4>>2]=b;F=WT(h,e);L[a+36>>2]=L[d>>2];L[a+40>>2]=L[d+4>>2];L[a+44>>2]=L[d+8>>2];L[a+48>>2]=L[d+12>>2];L[a+52>>2]=L[d+16>>2];L[a+56>>2]=L[d+20>>2];L[a+60>>2]=L[d+24>>2];L[a+64>>2]=L[d+28>>2];L[a+68>>2]=L[d+32>>2];L[a+72>>2]=L[d+36>>2];L[a+76>>2]=L[d+40>>2];L[a+80>>2]=L[d+44>>2];L[a+84>>2]=L[d+48>>2];L[a+88>>2]=L[d+52>>2];L[a+92>>2]=L[d+56>>2];L[a+96>>2]=L[d+60>>2];v=L[d+8>>2];n=O(v*c);t=L[d+24>>2];E=O(t*b);w=L[d+40>>2];k=O(w*O(0));f=L[d+56>>2];J=O(O(O(n+E)+k)+f);z=L[d+4>>2];j=O(z*c);y=L[d+20>>2];G=O(y*b);s=L[d+36>>2];l=O(s*O(0));q=L[d+52>>2];K=O(O(O(j+G)+l)+q);A=L[d>>2];o=O(A*c);D=L[d+16>>2];I=O(D*b);u=L[d+32>>2];m=O(u*O(0));r=L[d+48>>2];M=O(O(O(o+I)+m)+r);E=O(O(O(E-n)+k)+f);G=O(O(O(G-j)+l)+q);I=O(O(O(I-o)+m)+r);p=H[F+100>>2];i=H[p+20>>2];g=i+1|0;a=H[p+24>>2]&2147483647;a:{if(g>>>0<=a>>>0){h=p;break a}h=p;B=a?a<<1:2;B=g>>>0>>0?B:g;if(B>>>0<=a>>>0){break a}Cj(p+16|0,B);w=L[d+40>>2];k=O(w*O(0));s=L[d+36>>2];l=O(s*O(0));u=L[d+32>>2];m=O(u*O(0));v=L[d+8>>2];n=O(v*c);z=L[d+4>>2];j=O(z*c);A=L[d>>2];o=O(A*c);h=H[F+100>>2];a=H[h+24>>2]&2147483647;f=L[d+56>>2];q=L[d+52>>2];r=L[d+48>>2];t=L[d+24>>2];y=L[d+20>>2];D=L[d+16>>2];i=H[p+20>>2]}H[p+20>>2]=g;i=H[p+16>>2]+(i<<5)|0;L[i+16>>2]=M;L[i+8>>2]=E;L[i+4>>2]=G;L[i>>2]=I;L[i+24>>2]=J;L[i+20>>2]=K;g=H[F+4>>2];H[i+12>>2]=g;H[i+28>>2]=g;E=O(t*x);J=O(O(O(n+E)+k)+f);G=O(y*x);K=O(O(O(j+G)+l)+q);I=O(D*x);M=O(O(O(o+I)+m)+r);k=O(O(O(E-n)+k)+f);l=O(O(O(G-j)+l)+q);m=O(O(O(I-o)+m)+r);B=H[h+20>>2];p=B+1|0;b:{if(p>>>0<=a>>>0){i=h;break b}i=h;C=a?a<<1:2;C=p>>>0>>0?C:p;if(C>>>0<=a>>>0){break b}Cj(h+16|0,C);v=L[d+8>>2];n=O(v*c);z=L[d+4>>2];j=O(z*c);A=L[d>>2];o=O(A*c);i=H[F+100>>2];a=H[i+24>>2]&2147483647;f=L[d+56>>2];q=L[d+52>>2];r=L[d+48>>2];w=L[d+40>>2];s=L[d+36>>2];u=L[d+32>>2];t=L[d+24>>2];y=L[d+20>>2];D=L[d+16>>2];g=H[F+4>>2];B=H[h+20>>2]}H[h+20>>2]=p;h=H[h+16>>2]+(B<<5)|0;H[h+28>>2]=g;L[h+16>>2]=M;L[h+8>>2]=k;L[h+4>>2]=l;L[h>>2]=m;H[h+12>>2]=g;L[h+24>>2]=J;L[h+20>>2]=K;k=O(t*O(0));t=O(w*b);E=O(O(O(n+k)+t)+f);l=O(y*O(0));y=O(s*b);J=O(O(O(j+l)+y)+q);m=O(D*O(0));b=O(u*b);D=O(O(O(o+m)+b)+r);n=O(O(O(k-n)+t)+f);j=O(O(O(l-j)+y)+q);b=O(O(O(m-o)+b)+r);B=H[i+20>>2];h=B+1|0;c:{if(h>>>0<=a>>>0){p=i;break c}p=i;C=a?a<<1:2;C=h>>>0>>0?C:h;if(C>>>0<=a>>>0){break c}Cj(i+16|0,C);k=O(L[d+24>>2]*O(0));l=O(L[d+20>>2]*O(0));m=O(L[d+16>>2]*O(0));p=H[F+100>>2];a=H[p+24>>2]&2147483647;f=L[d+56>>2];q=L[d+52>>2];r=L[d+48>>2];w=L[d+40>>2];s=L[d+36>>2];u=L[d+32>>2];v=L[d+8>>2];z=L[d+4>>2];A=L[d>>2];g=H[F+4>>2];B=H[i+20>>2]}H[i+20>>2]=h;d=H[i+16>>2]+(B<<5)|0;H[d+28>>2]=g;L[d+16>>2]=D;L[d+8>>2]=n;L[d+4>>2]=j;L[d>>2]=b;H[d+12>>2]=g;L[d+24>>2]=E;L[d+20>>2]=J;b=O(w*x);n=O(s*x);x=O(u*x);h=H[p+20>>2];d=h+1|0;d:{if(d>>>0<=a>>>0){break d}i=a;a=a?a<<1:2;a=a>>>0>d>>>0?a:d;if(i>>>0>=a>>>0){break d}Cj(p+16|0,a);g=H[F+4>>2];h=H[p+20>>2]}H[p+20>>2]=d;a=H[p+16>>2]+(h<<5)|0;H[a+28>>2]=g;H[a+12>>2]=g;j=O(v*c);L[a+24>>2]=O(O(j+k)+b)+f;o=O(z*c);L[a+20>>2]=O(O(o+l)+n)+q;c=O(A*c);L[a+16>>2]=O(O(c+m)+x)+r;L[a+8>>2]=O(O(k-j)+b)+f;L[a+4>>2]=O(O(l-o)+n)+q;L[a>>2]=O(O(m-c)+x)+r;Oa=e+32|0}function V0(a,b,c,d,e,f,g,h,i){var j=0,k=O(0),l=O(0),m=O(0),n=O(0),o=0,p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=0,B=O(0),C=0,D=0,E=0,G=O(0),K=O(0),M=O(0),N=O(0),P=O(0),Q=O(0),R=O(0),S=O(0),T=0,U=0,V=0,X=0,Y=O(0),Z=O(0),_=O(0),$=O(0),aa=O(0),ba=0,ca=0,da=O(0),ea=O(0),fa=0,ga=0,ha=0,ia=0,ja=O(0),ka=O(0),la=O(0),ma=O(0),na=O(0);j=Oa-208|0;Oa=j;X=H[g>>2];Y=L[i+4>>2];Z=L[i>>2];_=L[i+8>>2];o=J[b+16>>1];A=H[a+32>>2];W0(j+160|0,i);V=I[b+18|0];C=(j-(V<<4)|0)-16|0;Oa=C;Ra[H[H[e>>2]+16>>2]](e,o+A|0,V,H[a+28>>2],C);a=H[c+60>>2];H[j+120>>2]=H[c+56>>2];H[j+124>>2]=a;a=H[c+52>>2];H[j+112>>2]=H[c+48>>2];H[j+116>>2]=a;a=H[c+76>>2];H[j+136>>2]=H[c+72>>2];H[j+140>>2]=a;fa=c- -64|0;a=fa;e=H[a+4>>2];H[j+128>>2]=H[a>>2];H[j+132>>2]=e;a=H[c+92>>2];H[j+152>>2]=H[c+88>>2];H[j+156>>2]=a;ga=c+80|0;a=ga;e=H[a+4>>2];H[j+144>>2]=H[a>>2];H[j+148>>2]=e;q=L[C+4>>2];t=L[C>>2];k=L[j+200>>2];w=L[j+184>>2];y=L[j+196>>2];G=L[j+180>>2];K=O(3.4028234663852886e38);M=O(-3.4028234663852886e38);l=L[j+168>>2];z=L[j+164>>2];Q=L[j+192>>2];R=L[j+176>>2];S=L[j+160>>2];u=L[C+8>>2];B=u;N=O(-3.4028234663852886e38);P=O(-3.4028234663852886e38);$=O(3.4028234663852886e38);aa=O(3.4028234663852886e38);ha=c+48|0;_=O(-_);Z=O(-Z);Y=O(-Y);V=X+5|0;ca=(X<<6)+f|0;o=I[b+18|0];if(o){e=0;n=u;p=q;m=t;B=O(3.4028234663852886e38);s=O(3.4028234663852886e38);r=O(-3.4028234663852886e38);v=O(-3.4028234663852886e38);while(1){a=(e<<4)+C|0;H[a+12>>2]=0;L[a+8>>2]=O(k*n)+O(O(l*m)+O(p*w));x=O(O(y*n)+O(O(z*m)+O(p*G)));L[a+4>>2]=x;n=O(O(Q*n)+O(O(S*m)+O(p*R)));L[a>>2]=n;r=r>x?r:x;v=nB?B:x;s=n>s?s:n;e=e+1|0;if((o|0)==(e|0)){P=O(r+O(1.1920928955078125e-7));N=O(v+O(1.1920928955078125e-7));aa=O(B+O(-1.1920928955078125e-7));$=O(s+O(-1.1920928955078125e-7));B=L[C+8>>2]}else{a=(e<<4)+C|0;n=L[a+8>>2];p=L[a+4>>2];m=L[a>>2];continue}break}}da=O(B+L[h>>2]);A=0;o=0;s=O(3.4028234663852886e38);r=O(-3.4028234663852886e38);while(1){e=o<<4;a=e+(j+112|0)|0;ea=L[a+12>>2];H[a+12>>2]=0;x=L[a+8>>2];L[a+8>>2]=B;n=O(y*x);y=L[a>>2];p=O(z*y);z=L[a+4>>2];m=O(n+O(p+O(z*G)));L[a+4>>2]=m;v=O(O(Q*x)+O(O(S*y)+O(z*R)));L[a>>2]=v;k=O(O(k*x)+O(O(l*y)+O(z*w)));L[e+(j- -64|0)>>2]=k-B;T=mv;ba=m>K;ia=sN|(mP)){break a}D=I[b+18|0];if(!D){break a}a=(D-1<<4)+C|0;l=L[a>>2];k=L[a+4>>2];e=0;a=0;b:{while(1){if(l==v&k==m){break b}p=l;n=k;E=(e<<4)+C|0;l=L[E>>2];k=L[E+4>>2];if(v==l&m==k){break b}c:{if((mm|0)){break c}w=O(k-n);n=O(O(O(p+O(1.1920928955078125e-7))*w)+O(O(m-n)*O(l-p)));p=O(v*w);E=w>O(0);if(!((E?n:p)>=(E?p:n))){break c}if((a|0)==1){break a}a=a+1|0}e=e+1|0;if((D|0)!=(e|0)){continue}break}if(!a){break a}}l=L[i+8>>2];n=L[i>>2];p=L[i+4>>2];e=H[g>>2];a=(e<<6)+f|0;H[a+48>>2]=d;L[a+32>>2]=Z;L[a+16>>2]=y;H[a+12>>2]=0;k=O(O(l*O(x-u))+O(O(n*O(y-t))+O(p*O(z-q))));L[a+44>>2]=k;L[a+40>>2]=_;L[a+36>>2]=Y;L[a+28>>2]=ea;L[a+24>>2]=x;L[a+20>>2]=z;L[a+8>>2]=x-O(l*k);L[a+4>>2]=z-O(p*k);L[a>>2]=y-O(n*k);a=e+1|0;H[g>>2]=a;A=A+1|0;a=a-X|0;if(a>>>0<16){break a}e1(ca,a);H[g>>2]=V}M=T?M:m;r=U?r:v;K=ba?K:m;s=ia?s:v;o=o+1|0;if((o|0)!=3){k=L[j+200>>2];w=L[j+184>>2];l=L[j+168>>2];y=L[j+196>>2];G=L[j+180>>2];z=L[j+164>>2];Q=L[j+192>>2];R=L[j+176>>2];S=L[j+160>>2];continue}break}d:{if((A|0)==3){break d}a=0;o=I[b+18|0];e:{if(!o){o=0;A=0;break e}k=L[c+48>>2];m=O(L[c- -64>>2]-k);l=L[c+52>>2];p=O(L[c+84>>2]-l);q=O(L[c+80>>2]-k);t=O(L[c+68>>2]-l);n=O(O(m*p)-O(q*t));P=n;w=O(n*n);v=t;n=L[c+56>>2];t=O(L[c+88>>2]-n);u=O(L[c+72>>2]-n);p=O(O(v*t)-O(p*u));m=O(O(u*q)-O(t*m));q=O(O(1)/O(W(O(w+O(O(p*p)+O(m*m))))));v=O(P*q);x=O(p*q);y=O(m*q);G=O(O(v*n)+O(O(x*k)+O(l*y)));Q=O(M+O(1.1920928955078125e-7));R=O(r+O(1.1920928955078125e-7));S=O(K+O(-1.1920928955078125e-7));N=O(s+O(-1.1920928955078125e-7));q=L[j+128>>2];n=L[j+148>>2];p=L[j+132>>2];z=O(n-p);P=O(O(q+O(1.1920928955078125e-7))*z);t=L[j+112>>2];m=L[j+116>>2];K=O(p-m);$=O(O(t+O(1.1920928955078125e-7))*K);u=L[j+144>>2];M=O(m-n);aa=O(O(u+O(1.1920928955078125e-7))*M);da=O(u-q);ea=O(q-t);ja=O(t-u);A=0;e=0;while(1){D=(e<<4)+C|0;l=L[D>>2];f:{if(lR){break f}k=L[D+4>>2];if(kQ){break f}g:{if(l==u&k==n|l==t&k==m){break g}T=kO(0);E=0;if(!((c?s:r)>=(c?r:s))){break h}E=1}c=E;if(l==q&k==p){break g}ba=kO(0);if(!((U?s:r)>=(U?r:s))){break i}if(c){break f}c=c+1|0}j:{if((T|0)==(ba|0)){break j}s=O(P+O(O(k-p)*da));r=O(l*z);T=z>O(0);if(!((T?s:r)>=(T?r:s))){break j}if((c|0)!=1){break g}break f}if(!c){break f}}w=L[D+8>>2];s=O(O(L[j+200>>2]*w)+O(O(L[j+192>>2]*l)+O(k*L[j+196>>2])));r=O(O(L[j+168>>2]*w)+O(O(L[j+160>>2]*l)+O(k*L[j+164>>2])));k=O(O(L[j+184>>2]*w)+O(O(L[j+176>>2]*l)+O(k*L[j+180>>2])));l=O(O(O(v*s)+O(O(x*r)+O(y*k)))-G);if(l>L[h>>2]){break f}H[j+44>>2]=0;L[j+40>>2]=s-O(v*l);L[j+36>>2]=k-O(y*l);L[j+32>>2]=r-O(x*l);VX(j+32|0,ha,fa,ga,j+16|0,j);l=L[j+16>>2];k:{if(!(l>=O(0))){break k}w=L[j>>2];if(!(w>=O(0))|!(O(l+w)<=O(1))){break k}l=L[i+8>>2];w=L[i>>2];ka=L[i+4>>2];la=L[j+40>>2];ma=L[j+32>>2];na=L[j+36>>2];o=H[g>>2];c=(o<<6)+f|0;H[c+12>>2]=0;L[c+8>>2]=s;L[c+4>>2]=k;L[c>>2]=r;D=H[j+36>>2];H[c+16>>2]=H[j+32>>2];H[c+20>>2]=D;D=H[j+44>>2];H[c+24>>2]=H[j+40>>2];H[c+28>>2]=D;H[c+48>>2]=d;L[c+44>>2]=O(l*O(la-s))+O(O(w*O(ma-r))+O(ka*O(na-k)));L[c+40>>2]=_;L[c+36>>2]=Y;L[c+32>>2]=Z;c=o+1|0;H[g>>2]=c;A=A+1|0;c=c-X|0;if(c>>>0<16){break k}e1(ca,c);H[g>>2]=V}o=I[b+18|0]}e=e+1|0;if(e>>>0<(o&255)>>>0){continue}break}}if((o&255)==(A|0)){break d}e=2;while(1){c=a;i=j+61|0;l:{if(!(I[e+i|0]?1:I[a+i|0])){break l}a=o&255;if(!a){o=0;break l}i=c<<4;o=j+112|0;A=i+o|0;k=L[A+4>>2];e=e<<4;o=e+o|0;n=L[o+4>>2];v=k>n?k:n;l=L[A>>2];p=L[o>>2];x=l>p?l:p;y=k>2];a=(a<<4)+C|0;q=L[a>>2];m:{if(z>(m>q?m:q)|x<(m>2];u=L[a+4>>2];if(y>(t>u?t:u)|v<(t>2]);q=O(s*O(O(1)/O(r-s)));m=O(m-O(q*O(O(B+L[A>>2])-m)));w=O(m-B);if(w>L[h>>2]){break m}G=L[j+196>>2];Q=L[j+192>>2];R=L[j+180>>2];S=L[j+176>>2];N=L[j+164>>2];r=L[j+160>>2];t=L[j+200>>2];u=L[j+184>>2];s=L[j+168>>2];o=H[g>>2];a=(o<<6)+f|0;H[a+48>>2]=d;L[a+32>>2]=Z;P=r;r=O(l-O(q*M));q=O(k-O(q*K));N=O(O(P*r)+O(N*q));L[a+16>>2]=O(s*m)+N;H[a+12>>2]=0;G=O(O(Q*r)+O(q*G));L[a+8>>2]=O(t*B)+G;q=O(O(S*r)+O(q*R));L[a+4>>2]=O(u*B)+q;L[a>>2]=O(s*B)+N;L[a+44>>2]=w;L[a+40>>2]=_;L[a+36>>2]=Y;H[a+28>>2]=0;L[a+24>>2]=O(t*m)+G;L[a+20>>2]=O(u*m)+q;a=o+1|0;H[g>>2]=a;a=a-X|0;if(a>>>0<16){break m}e1(ca,a);H[g>>2]=V}a=e;e=a+1|0;o=I[b+18|0];if(e>>>0>>0){continue}break}}e=c;a=c+1|0;if((a|0)!=3){continue}break}}Oa=j+208|0}function Lv(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;i=Oa-16|0;Oa=i;j=Wu(a,b);if(!(!j|I[a+76|0]==(b|0))){F[i+15|0]=0;f=N(b+3&-4,288);Ru(a+640|0,f,i+15|0);G[a+78>>1]=f;H[a+68>>2]=H[a+640>>2];g=Oa-80|0;Oa=g;d=b;c=a+112|0;if(b>>>0>(H[c+124>>2]&2147483647)>>>0){Cv(c+116|0,d)}H[c+120>>2]=d;if(d>>>0>(H[c+136>>2]&2147483647)>>>0){Cv(c+128|0,d)}H[c+132>>2]=d;if(d>>>0>(H[c+148>>2]&2147483647)>>>0){Cv(c+140|0,d)}H[c+144>>2]=d;if(d>>>0>(H[c+160>>2]&2147483647)>>>0){Cv(c+152|0,d)}H[c+156>>2]=d;if(d>>>0>(H[c+304>>2]&2147483647)>>>0){Dv(c+296|0,d)}H[c+300>>2]=d;if(d>>>0>(H[c+316>>2]&2147483647)>>>0){Dv(c+308|0,d)}H[c+312>>2]=d;if(d>>>0>(H[c+208>>2]&2147483647)>>>0){Cv(c+200|0,d)}H[c+204>>2]=d;if(d>>>0>(H[c+220>>2]&2147483647)>>>0){Uu(c+212|0,d)}H[c+216>>2]=d;if(d>>>0>(H[c+232>>2]&2147483647)>>>0){f=0;a:{if(!d){break a}b=N(d,192);f=0;if(!b){break a}f=H[33808];a=Ra[H[H[f>>2]+20>>2]](f)|0?22052:55639;f=Ra[H[H[f+12>>2]+8>>2]](f+12|0,b,a,13582,553)|0}a=H[c+224>>2];b=f;h=b+N(H[c+228>>2],192)|0;if(b>>>0>>0){while(1){L[b>>2]=L[a>>2];L[b+4>>2]=L[a+4>>2];L[b+8>>2]=L[a+8>>2];L[b+12>>2]=L[a+12>>2];L[b+16>>2]=L[a+16>>2];L[b+20>>2]=L[a+20>>2];L[b+24>>2]=L[a+24>>2];L[b+28>>2]=L[a+28>>2];L[b+32>>2]=L[a+32>>2];L[b+36>>2]=L[a+36>>2];L[b+40>>2]=L[a+40>>2];L[b+44>>2]=L[a+44>>2];L[b+48>>2]=L[a+48>>2];L[b+52>>2]=L[a+52>>2];L[b+56>>2]=L[a+56>>2];L[b+60>>2]=L[a+60>>2];L[b+64>>2]=L[a+64>>2];L[b+68>>2]=L[a+68>>2];L[b+72>>2]=L[a+72>>2];L[b+76>>2]=L[a+76>>2];L[b+80>>2]=L[a+80>>2];L[b+84>>2]=L[a+84>>2];L[b+88>>2]=L[a+88>>2];L[b+92>>2]=L[a+92>>2];L[b+96>>2]=L[a+96>>2];L[b+100>>2]=L[a+100>>2];L[b+104>>2]=L[a+104>>2];L[b+108>>2]=L[a+108>>2];L[b+112>>2]=L[a+112>>2];L[b+116>>2]=L[a+116>>2];L[b+120>>2]=L[a+120>>2];L[b+124>>2]=L[a+124>>2];L[b+128>>2]=L[a+128>>2];L[b+132>>2]=L[a+132>>2];L[b+136>>2]=L[a+136>>2];L[b+140>>2]=L[a+140>>2];L[b+144>>2]=L[a+144>>2];L[b+148>>2]=L[a+148>>2];L[b+152>>2]=L[a+152>>2];L[b+156>>2]=L[a+156>>2];L[b+160>>2]=L[a+160>>2];L[b+164>>2]=L[a+164>>2];L[b+168>>2]=L[a+168>>2];L[b+172>>2]=L[a+172>>2];L[b+176>>2]=L[a+176>>2];L[b+180>>2]=L[a+180>>2];L[b+184>>2]=L[a+184>>2];L[b+188>>2]=L[a+188>>2];a=a+192|0;b=b+192|0;if(h>>>0>b>>>0){continue}break}}b:{if(H[c+232>>2]<0){break b}b=H[c+224>>2];if(!b){break b}a=H[33808];Ra[H[H[a+12>>2]+12>>2]](a+12|0,b)}H[c+232>>2]=d;H[c+224>>2]=f}H[c+228>>2]=d;if(d>>>0>(H[c+244>>2]&2147483647)>>>0){b=0;c:{if(!d){break c}f=N(d,112);if(!f){break c}b=H[33808];a=Ra[H[H[b>>2]+20>>2]](b)|0?21930:55639;b=Ra[H[H[b+12>>2]+8>>2]](b+12|0,f,a,13582,553)|0}a=H[c+240>>2];if((a|0)>0){f=N(a,112)+b|0;e=H[c+236>>2];a=b;while(1){L[a>>2]=L[e>>2];L[a+4>>2]=L[e+4>>2];L[a+8>>2]=L[e+8>>2];L[a+12>>2]=L[e+12>>2];L[a+16>>2]=L[e+16>>2];L[a+20>>2]=L[e+20>>2];L[a+24>>2]=L[e+24>>2];L[a+28>>2]=L[e+28>>2];L[a+32>>2]=L[e+32>>2];L[a+36>>2]=L[e+36>>2];L[a+40>>2]=L[e+40>>2];L[a+44>>2]=L[e+44>>2];L[a+48>>2]=L[e+48>>2];L[a+52>>2]=L[e+52>>2];L[a+56>>2]=L[e+56>>2];L[a+60>>2]=L[e+60>>2];L[a- -64>>2]=L[e- -64>>2];L[a+68>>2]=L[e+68>>2];L[a+72>>2]=L[e+72>>2];L[a+76>>2]=L[e+76>>2];L[a+80>>2]=L[e+80>>2];L[a+84>>2]=L[e+84>>2];L[a+88>>2]=L[e+88>>2];L[a+92>>2]=L[e+92>>2];L[a+96>>2]=L[e+96>>2];L[a+100>>2]=L[e+100>>2];L[a+104>>2]=L[e+104>>2];H[a+108>>2]=H[e+108>>2];e=e+112|0;a=a+112|0;if(f>>>0>a>>>0){continue}break}}d:{if(H[c+244>>2]<0){break d}f=H[c+236>>2];if(!f){break d}a=H[33808];Ra[H[H[a+12>>2]+12>>2]](a+12|0,f)}H[c+244>>2]=d;H[c+236>>2]=b}H[c+240>>2]=d;if(d>>>0>(H[c+256>>2]&2147483647)>>>0){b=0;e:{if(!d){break e}f=N(d,36);if(!f){break e}b=H[33808];a=Ra[H[H[b>>2]+20>>2]](b)|0?26674:55639;b=Ra[H[H[b+12>>2]+8>>2]](b+12|0,f,a,13582,553)|0}a=H[c+252>>2];if((a|0)>0){h=N(a,36)+b|0;e=H[c+248>>2];a=b;while(1){f=H[e+4>>2];H[a>>2]=H[e>>2];H[a+4>>2]=f;H[a+32>>2]=H[e+32>>2];f=H[e+28>>2];H[a+24>>2]=H[e+24>>2];H[a+28>>2]=f;f=H[e+20>>2];H[a+16>>2]=H[e+16>>2];H[a+20>>2]=f;f=H[e+12>>2];H[a+8>>2]=H[e+8>>2];H[a+12>>2]=f;e=e+36|0;a=a+36|0;if(h>>>0>a>>>0){continue}break}}f:{if(H[c+256>>2]<0){break f}f=H[c+248>>2];if(!f){break f}a=H[33808];Ra[H[H[a+12>>2]+12>>2]](a+12|0,f)}H[c+256>>2]=d;H[c+248>>2]=b}H[c+252>>2]=d;g=S6(g,0,76);h=c+260|0;if(d>>>0>(H[h+8>>2]&2147483647)>>>0){Ev(h,d)}f=H[h+4>>2];if((f|0)<(d|0)){a=H[h>>2];b=a+N(d,76)|0;a=a+N(f,76)|0;while(1){L[a>>2]=L[g>>2];L[a+4>>2]=L[g+4>>2];L[a+8>>2]=L[g+8>>2];L[a+12>>2]=L[g+12>>2];L[a+16>>2]=L[g+16>>2];L[a+20>>2]=L[g+20>>2];L[a+24>>2]=L[g+24>>2];L[a+28>>2]=L[g+28>>2];L[a+32>>2]=L[g+32>>2];L[a+36>>2]=L[g+36>>2];L[a+40>>2]=L[g+40>>2];L[a+44>>2]=L[g+44>>2];L[a+48>>2]=L[g+48>>2];L[a+52>>2]=L[g+52>>2];L[a+56>>2]=L[g+56>>2];L[a+60>>2]=L[g+60>>2];L[a- -64>>2]=L[g+64>>2];L[a+68>>2]=L[g+68>>2];H[a+72>>2]=H[g+72>>2];a=a+76|0;if(b>>>0>a>>>0){continue}break}}H[h+4>>2]=d;if(d>>>0>(H[c+280>>2]&2147483647)>>>0){Ev(c+272|0,d)}H[c+276>>2]=d;if(d>>>0>(H[c+292>>2]&2147483647)>>>0){b=0;g:{if(!d){break g}f=N(d,96);if(!f){break g}b=H[33808];a=Ra[H[H[b>>2]+20>>2]](b)|0?42886:55639;b=Ra[H[H[b+12>>2]+8>>2]](b+12|0,f,a,13582,553)|0}a=H[c+288>>2];if((a|0)>0){f=N(a,96)+b|0;e=H[c+284>>2];a=b;while(1){L[a>>2]=L[e>>2];L[a+4>>2]=L[e+4>>2];L[a+8>>2]=L[e+8>>2];L[a+12>>2]=L[e+12>>2];L[a+16>>2]=L[e+16>>2];L[a+20>>2]=L[e+20>>2];L[a+24>>2]=L[e+24>>2];L[a+28>>2]=L[e+28>>2];L[a+32>>2]=L[e+32>>2];L[a+36>>2]=L[e+36>>2];L[a+40>>2]=L[e+40>>2];L[a+44>>2]=L[e+44>>2];L[a+48>>2]=L[e+48>>2];L[a+52>>2]=L[e+52>>2];L[a+56>>2]=L[e+56>>2];L[a+60>>2]=L[e+60>>2];L[a+64>>2]=L[e+64>>2];L[a+68>>2]=L[e+68>>2];L[a+72>>2]=L[e+72>>2];L[a+76>>2]=L[e+76>>2];L[a+80>>2]=L[e+80>>2];L[a+84>>2]=L[e+84>>2];L[a+88>>2]=L[e+88>>2];L[a+92>>2]=L[e+92>>2];e=e+96|0;a=a+96|0;if(f>>>0>a>>>0){continue}break}}h:{if(H[c+292>>2]<0){break h}f=H[c+284>>2];if(!f){break h}a=H[33808];Ra[H[H[a+12>>2]+12>>2]](a+12|0,f)}H[c+292>>2]=d;H[c+284>>2]=b}H[c+288>>2]=d;if(d>>>0>(H[c+392>>2]&2147483647)>>>0){Uu(c+384|0,d)}H[c+388>>2]=d;if(d>>>0>(H[c+404>>2]&2147483647)>>>0){Vu(c+396|0,d)}H[c+400>>2]=d;if(d>>>0>(H[c+112>>2]&2147483647)>>>0){Cv(c+104|0,d)}H[c+108>>2]=d;if(d>>>0>(H[c+172>>2]&2147483647)>>>0){Cv(c+164|0,d)}H[c+168>>2]=d;Tu(c+320|0,d,g);b=H[c+340>>2];if(b){a=H[33808];Ra[H[H[a+12>>2]+12>>2]](a+12|0,b);H[c+340>>2]=0}b=H[c+344>>2];if(b){a=H[33808];Ra[H[H[a+12>>2]+12>>2]](a+12|0,b);H[c+344>>2]=0}b=H[c+348>>2];if(b){a=H[33808];Ra[H[H[a+12>>2]+12>>2]](a+12|0,b);H[c+348>>2]=0}a=H[33808];h=N(d,160);a=Ra[H[H[a+12>>2]+8>>2]](a+12|0,h,20591,7518,172)|0;H[a+144>>2]=0;H[c+340>>2]=a;a=H[33808];f=N(d,80);a=Ra[H[H[a+12>>2]+8>>2]](a+12|0,f,20591,7518,173)|0;F[a+78|0]=0;H[a+72>>2]=-1;H[c+344>>2]=a;b=H[33808];a=N(d,96);b=Ra[H[H[b+12>>2]+8>>2]](b+12|0,a,20591,7518,174)|0;H[b>>2]=0;H[b+4>>2]=0;H[b+16>>2]=0;H[b+20>>2]=0;H[b+8>>2]=0;H[b+12>>2]=0;H[c+348>>2]=b;b=d<<5;S6(H[c+116>>2],0,b);S6(H[c+128>>2],0,b);S6(H[c+140>>2],0,b);S6(H[c+152>>2],0,b);S6(H[c+200>>2],0,b);S6(H[c+212>>2],0,N(d,28));S6(H[c+340>>2],0,h);S6(H[c+344>>2],0,f);S6(H[c+348>>2],0,a);Oa=g+80|0}Oa=i+16|0;return j|0}function U0(a,b,c,d,e,f,g,h,i){var j=0,k=O(0),l=0,m=0,n=O(0),o=O(0),p=0,q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),G=O(0),K=O(0),M=O(0),P=O(0),Q=O(0),T=O(0),U=O(0),V=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0;j=Oa-96|0;Oa=j;_=H[g>>2];W0(j+48|0,i);X=J[d+16>>1];m=H[c+32>>2];Z=I[d+18|0];l=(Z<<4)+16|0;Y=j-l|0;Oa=Y;$=Y-l|0;l=$;Oa=l;aa=l-(Z+15&496)|0;Oa=aa;l=H[a+60>>2];H[j+8>>2]=H[a+56>>2];H[j+12>>2]=l;l=H[a+52>>2];H[j>>2]=H[a+48>>2];H[j+4>>2]=l;l=H[a+76>>2];H[j+24>>2]=H[a+72>>2];H[j+28>>2]=l;p=a- -64|0;l=H[p+4>>2];H[j+16>>2]=H[p>>2];H[j+20>>2]=l;l=H[a+92>>2];H[j+40>>2]=H[a+88>>2];H[j+44>>2]=l;l=H[a+84>>2];H[j+32>>2]=H[a+80>>2];H[j+36>>2]=l;da=m+X|0;Ra[H[H[e>>2]+16>>2]](e,da,Z,H[c+28>>2],Y);M=L[j+84>>2];y=L[j+24>>2];t=L[j+52>>2];v=L[j+16>>2];u=L[j+20>>2];T=L[j+68>>2];B=O(O(M*y)+O(O(t*v)+O(u*T)));L[j+20>>2]=B;P=L[j+88>>2];Q=L[j+56>>2];z=L[j+72>>2];L[j+24>>2]=O(y*P)+O(O(v*Q)+O(u*z));l=0;H[j+12>>2]=0;s=L[j+8>>2];r=L[j>>2];o=L[j+4>>2];U=O(O(P*s)+O(O(Q*r)+O(z*o)));L[j+8>>2]=U;x=L[j+80>>2];q=L[j+48>>2];k=L[j+64>>2];n=O(O(s*x)+O(O(r*q)+O(o*k)));L[j>>2]=n;o=O(O(M*s)+O(O(t*r)+O(o*T)));L[j+4>>2]=o;H[j+28>>2]=0;y=O(O(x*y)+O(O(q*v)+O(u*k)));L[j+16>>2]=y;u=L[j+40>>2];s=L[j+36>>2];r=L[j+32>>2];H[j+44>>2]=0;L[j+40>>2]=O(P*u)+O(O(Q*r)+O(s*z));z=O(O(M*u)+O(O(t*r)+O(s*T)));L[j+36>>2]=z;D=O(-3.4028234663852886e38);E=O(3.4028234663852886e38);q=O(O(x*u)+O(O(q*r)+O(s*k)));L[j+32>>2]=q;ba=_+5|0;ca=(_<<6)+f|0;a:{if(!I[d+18|0]){T=O(-3.4028234663852886e38);A=O(3.4028234663852886e38);break a}k=O(S(o,O(-3.4028234663852886e38)));k=k>B?k:B;v=O((k>z?k:z)+O(1.1920928955078125e-7));k=O(R(o,O(3.4028234663852886e38)));k=ky?k:y;T=O((k>q?k:q)+O(1.1920928955078125e-7));k=O(R(n,O(3.4028234663852886e38)));k=k>2]);M=O(3.4028234663852886e38);A=O(-3.4028234663852886e38);while(1){p=l<<4;m=p+Y|0;z=L[m+12>>2];s=L[j+80>>2];r=L[j+48>>2];x=L[j+64>>2];q=L[j+84>>2];n=L[j+52>>2];o=L[j+68>>2];G=L[m+8>>2];K=L[m>>2];B=L[m+4>>2];k=O(O(L[j+88>>2]*G)+O(O(L[j+56>>2]*K)+O(B*L[j+72>>2])));L[p+$>>2]=k-U;H[m+12>>2]=0;L[m+8>>2]=U;C=O(O(q*G)+O(O(n*K)+O(B*o)));L[m+4>>2]=C;w=O(O(s*G)+O(O(r*K)+O(B*x)));L[m>>2]=w;ga=CE;ja=w>M;b:{if(!(kT|(vC)){break b}r=L[j+32>>2];y=L[j+36>>2];c:{if(r==w&y==C){break c}x=L[j>>2];t=L[j+4>>2];if(x==w&t==C){break c}ea=y>C;Z=t>C;V=0;d:{if((ea|0)==(Z|0)){break d}n=O(t-y);o=O(O(O(r+O(1.1920928955078125e-7))*n)+O(O(C-y)*O(x-r)));k=O(w*n);m=n>O(0);V=0;if(!((m?o:k)>=(m?k:o))){break d}V=1}q=L[j+16>>2];s=L[j+20>>2];if(q==w&s==C){break c}X=s>C;e:{if((Z|0)==(X|0)){break e}n=O(s-t);o=O(O(O(x+O(1.1920928955078125e-7))*n)+O(O(C-t)*O(q-x)));k=O(w*n);m=n>O(0);if(!((m?o:k)>=(m?k:o))){break e}if(V){break b}V=V+1|0}f:{if((X|0)==(ea|0)){break f}n=O(y-s);o=O(O(O(q+O(1.1920928955078125e-7))*n)+O(O(C-s)*O(r-q)));k=O(w*n);m=n>O(0);if(!((m?o:k)>=(m?k:o))){break f}if((V|0)!=1){break c}break b}if(!V){break b}}n=L[a+56>>2];o=L[a+48>>2];k=L[a+52>>2];r=L[i+4>>2];x=L[i+8>>2];q=L[i>>2];m=H[g>>2];p=(m<<6)+f|0;H[p+48>>2]=b;L[p+32>>2]=q;L[p+12>>2]=z;L[p+8>>2]=G;L[p+4>>2]=B;L[p>>2]=K;L[p+40>>2]=x;L[p+36>>2]=r;H[p+28>>2]=0;k=O(O(x*O(n-G))+O(O(q*O(o-K))+O(r*O(k-B))));L[p+44>>2]=-k;L[p+24>>2]=G+O(x*k);L[p+20>>2]=B+O(r*k);L[p+16>>2]=K+O(q*k);p=1;m=m+1|0;H[g>>2]=m;fa=fa+1|0;m=m-_|0;if(m>>>0<16){break b}e1(ca,m);H[g>>2]=ba}D=ga?D:C;A=ha?A:w;E=ia?E:C;M=ja?M:w;F[l+aa|0]=p;l=l+1|0;p=I[d+18|0];if(l>>>0

>>0){continue}break}T=O(D+O(1.1920928955078125e-7));D=O(A+O(1.1920928955078125e-7));A=O(E+O(-1.1920928955078125e-7));E=O(M+O(-1.1920928955078125e-7));l=p}g:{if((l|0)==(fa|0)){break g}a=H[e+40>>2];q=L[d+8>>2];n=L[d>>2];o=L[d+4>>2];k=O(O(L[a+40>>2]*q)+O(O(L[a+32>>2]*n)+O(o*L[a+36>>2])));r=O(O(L[a+8>>2]*q)+O(O(L[a>>2]*n)+O(o*L[a+4>>2])));x=O(O(L[a+24>>2]*q)+O(O(L[a+16>>2]*n)+O(o*L[a+20>>2])));q=O(O(1)/O(W(O(O(k*k)+O(O(r*r)+O(x*x))))));P=O(k*q);e=H[e+36>>2];a=H[c+28>>2]+N(I[da|0],12)|0;n=L[a+8>>2];o=L[a>>2];k=L[a+4>>2];Q=O(r*q);z=O(x*q);x=O(O(P*O(O(L[e+40>>2]*n)+O(O(L[e+8>>2]*o)+O(k*L[e+24>>2]))))+O(O(Q*O(O(L[e+32>>2]*n)+O(O(L[e>>2]*o)+O(k*L[e+16>>2]))))+O(z*O(O(L[e+36>>2]*n)+O(O(L[e+4>>2]*o)+O(k*L[e+20>>2]))))));a=0;e=0;while(1){X=(e<<4)+j|0;s=L[X>>2];h:{if(sD){break h}u=L[X+4>>2];if(uT){break h}m=l&255;if(!m){break h}c=(m-1<<4)+Y|0;n=L[c>>2];q=L[c+4>>2];p=0;c=0;i:{while(1){if(n==s&q==u){break i}k=n;o=q;l=(p<<4)+Y|0;n=L[l>>2];q=L[l+4>>2];if(s==n&u==q){break i}j:{if((o>u|0)==(q>u|0)){break j}r=O(q-o);o=O(O(O(k+O(1.1920928955078125e-7))*r)+O(O(u-o)*O(n-k)));k=O(s*r);l=r>O(0);if(!((l?o:k)>=(l?k:o))){break j}if((c|0)==1){break h}c=c+1|0}p=p+1|0;if((m|0)!=(p|0)){continue}break}if(!c){break h}}a=a+1|0;k=L[X+8>>2];t=O(O(L[j+88>>2]*k)+O(O(L[j+80>>2]*s)+O(u*L[j+84>>2])));v=O(O(L[j+56>>2]*k)+O(O(L[j+48>>2]*s)+O(u*L[j+52>>2])));u=O(O(L[j+72>>2]*k)+O(O(L[j+64>>2]*s)+O(u*L[j+68>>2])));k=O(O(O(P*t)+O(O(Q*v)+O(z*u)))-x);if(k>L[h>>2]){break h}s=L[i+4>>2];r=L[i+8>>2];q=L[i>>2];c=H[g>>2];l=(c<<6)+f|0;H[l+48>>2]=b;L[l+32>>2]=q;L[l+16>>2]=v;H[l+12>>2]=0;n=O(t-O(P*k));L[l+8>>2]=n;o=O(u-O(z*k));L[l+4>>2]=o;k=O(v-O(Q*k));L[l>>2]=k;L[l+40>>2]=r;L[l+36>>2]=s;H[l+28>>2]=0;L[l+24>>2]=t;L[l+20>>2]=u;L[l+44>>2]=O(r*O(n-t))+O(O(q*O(k-v))+O(s*O(o-u)));c=c+1|0;H[g>>2]=c;c=c-_|0;if(c>>>0<16){break h}e1(ca,c);H[g>>2]=ba}e=e+1|0;if((e|0)!=3){l=I[d+18|0];continue}break}if((a|0)==3){break g}a=I[d+18|0];l=2;c=0;while(1){e=a;a=0;if(e){p=(c<<4)+j|0;D=L[p+4>>2];a=(l<<4)+j|0;E=L[a+4>>2];u=D>E?D:E;G=L[p>>2];K=L[a>>2];T=G>K?G:K;P=D>2];l=l<<4;a=l+Y|0;t=L[a>>2];if(T<(t>w?w:t)|Q>(t>2];v=L[a+4>>2];if(u<(v>A?A:v)|P>(v>2]);n=O(n*O(O(1)/O(o-n)));B=O(k-O(n*O(O(U+L[l+$>>2])-k)));z=O(B-U);if(z>L[h>>2]){break k}s=L[j+84>>2];o=L[j+80>>2];r=L[j+52>>2];k=L[j+48>>2];M=L[j+88>>2];y=L[j+56>>2];x=L[i+8>>2];p=H[i+4>>2];l=H[i>>2];a=H[g>>2];m=(a<<6)+f|0;q=L[j+72>>2];t=O(w-O(O(t-w)*n));v=O(A-O(O(v-A)*n));n=O(O(L[j+64>>2]*t)+O(v*L[j+68>>2]));L[m+4>>2]=O(q*B)+n;o=O(O(o*t)+O(v*s));L[m+8>>2]=O(M*B)+o;H[m+12>>2]=0;k=O(O(k*t)+O(v*r));L[m+16>>2]=O(y*U)+k;H[m+32>>2]=l;H[m+36>>2]=p;H[m+48>>2]=b;L[m>>2]=O(y*B)+k;L[m+20>>2]=O(q*U)+n;L[m+24>>2]=O(M*U)+o;H[m+28>>2]=0;L[m+44>>2]=z;L[m+40>>2]=x;a=a+1|0;H[g>>2]=a;a=a-_|0;if(a>>>0<16){break k}e1(ca,a);H[g>>2]=ba}a=I[d+18|0];l=e;p=l+1|0;if(a>>>0>p>>>0){continue}break}}l=c;c=l+1|0;if((c|0)!=3){continue}break}}Oa=j+96|0}function g2(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),F=O(0),G=O(0),J=O(0),K=O(0),M=O(0),N=O(0),Q=O(0),T=O(0),U=O(0),V=O(0),X=O(0),Y=0,Z=0,_=0,$=0,aa=0,ba=O(0),ca=O(0),da=O(0),ea=O(0),fa=O(0),ga=O(0),ha=O(0),ia=O(0),ja=O(0),ka=O(0),la=O(0),ma=O(0),na=O(0),oa=O(0),pa=O(0),qa=O(0),ra=O(0),sa=O(0),ta=O(0),ua=O(0),va=O(0),wa=O(0),xa=O(0),ya=O(0);f=Oa-240|0;Oa=f;$1(f+128|0,f+96|0,b,c,d);if(e&1){Ra[H[H[a>>2]+8>>2]](a,f+128|0,f+96|0)}a:{if(!(e&2)){break a}l=L[f+128>>2];g=L[f+144>>2];h=O(L[f+112>>2]-g);r=O(h+h);i=L[f+148>>2];h=O(L[f+116>>2]-i);v=O(h+h);m=L[f+132>>2];h=L[f+136>>2];k=L[f+152>>2];j=O(L[f+120>>2]-k);w=O(j+j);s=O(O(O(O(-l)*r)-O(v*m))-O(h*w));j=L[f+140>>2];t=O(O(j*j)+O(-.5));B=O(O(O(w*t)+O(j*O(O(m*r)-O(l*v))))-O(h*s));C=O(O(O(v*t)+O(j*O(O(l*w)-O(h*r))))-O(m*s));r=O(O(O(r*t)+O(j*O(O(h*v)-O(m*w))))-O(l*s));y=O(m+m);s=O(y*h);x=O(l+l);t=O(x*j);v=O(s-t);o=O(x*h);E=O(y*j);w=O(o+E);s=O(s+t);p=O(x*m);D=O(h+h);u=O(D*j);t=O(p-u);o=O(o-E);E=O(p+u);p=O(O(1)-O(l*x));u=O(m*y);x=O(p-u);q=p;p=O(h*D);y=O(q-p);p=O(O(O(1)-u)-p);K=L[f+108>>2];M=L[f+96>>2];ia=O(O(j*K)+O(l*M));D=L[f+100>>2];ja=O(m*D);u=L[f+104>>2];ka=O(O(j*u)-O(K*h));la=O(l*D);ma=O(O(j*D)-O(K*m));na=O(h*M);oa=O(O(O(j*M)-O(K*l))-O(m*u));pa=O(D*h);b:{if(!I[b+477|0]){break b}c:{switch(H[b+456>>2]-1|0){case 0:z=L[b+140>>2];A=L[b+144>>2];F=L[b+136>>2];j=L[b+148>>2];n=L[b+152>>2];L[f+72>>2]=k+O(o*n);L[f+68>>2]=i+O(E*n);L[f+64>>2]=g+O(p*n);L[f+40>>2]=k+O(o*j);L[f+36>>2]=i+O(E*j);L[f+32>>2]=g+O(p*j);g=z>O(0)?O(0):F>O(0)?O(0):A;Ra[H[H[a>>2]+28>>2]](a,f- -64|0,f+32|0,rO(j-g)?16711680:16777215);break b;case 1:z=L[b+168>>2];A=L[b+172>>2];F=L[b+164>>2];j=L[b+176>>2];n=L[b+180>>2];L[f+72>>2]=k+O(s*n);L[f+68>>2]=i+O(y*n);L[f+64>>2]=g+O(t*n);L[f+40>>2]=k+O(s*j);L[f+36>>2]=i+O(y*j);L[f+32>>2]=g+O(t*j);g=z>O(0)?O(0):F>O(0)?O(0):A;Ra[H[H[a>>2]+28>>2]](a,f- -64|0,f+32|0,CO(j-g)?16711680:16777215);break b;case 3:z=L[b+196>>2];A=L[b+200>>2];F=L[b+192>>2];j=L[b+204>>2];n=L[b+208>>2];L[f+72>>2]=k+O(x*n);L[f+68>>2]=i+O(v*n);L[f+64>>2]=g+O(w*n);L[f+40>>2]=k+O(x*j);L[f+36>>2]=i+O(v*j);L[f+32>>2]=g+O(w*j);g=z>O(0)?O(0):F>O(0)?O(0):A;Ra[H[H[a>>2]+28>>2]](a,f- -64|0,f+32|0,BO(j-g)?16711680:16777215);break b;case 2:h2(a,g,i,k,p,E,o,b+128|0,r,t,y,s,b+156|0,C);break b;case 4:h2(a,g,i,k,p,E,o,b+128|0,r,w,v,x,b+184|0,B);break b;case 5:h2(a,g,i,k,t,y,s,b+156|0,C,w,v,x,b+184|0,B);break b;case 6:break c;default:break b}}qa=L[b+140>>2];ra=L[b+144>>2];sa=L[b+136>>2];ta=L[b+168>>2];ua=L[b+172>>2];va=L[b+164>>2];wa=L[b+196>>2];xa=L[b+200>>2];ya=L[b+192>>2];j=L[b+204>>2];n=L[b+176>>2];z=L[b+148>>2];A=L[b+152>>2];N=O(k+O(o*A));F=L[b+180>>2];Q=O(s*F);ba=O(N+Q);V=L[b+208>>2];G=O(x*V);L[f+72>>2]=ba+G;ca=O(i+O(E*A));T=O(y*F);da=O(ca+T);J=O(v*V);L[f+68>>2]=da+J;ea=O(g+O(p*A));U=O(t*F);fa=O(ea+U);X=O(w*V);L[f+64>>2]=fa+X;k=O(k+O(o*z));Q=O(k+Q);L[f+40>>2]=Q+G;i=O(i+O(E*z));T=O(i+T);L[f+36>>2]=T+J;g=O(g+O(p*z));U=O(g+U);L[f+32>>2]=U+X;q=k;k=O(s*n);ga=O(q+k);L[f+8>>2]=ga+G;q=i;i=O(y*n);ha=O(q+i);L[f+4>>2]=ha+J;q=g;g=O(t*n);q=O(q+g);L[f>>2]=q+X;N=O(N+k);L[f+232>>2]=N+G;G=O(ca+i);L[f+228>>2]=G+J;J=O(ea+g);L[f+224>>2]=J+X;g=O(x*j);L[f+216>>2]=ba+g;i=O(v*j);L[f+212>>2]=da+i;k=O(w*j);L[f+208>>2]=fa+k;L[f+200>>2]=Q+g;L[f+196>>2]=T+i;L[f+192>>2]=U+k;L[f+184>>2]=ga+g;L[f+180>>2]=ha+i;L[f+176>>2]=q+k;L[f+168>>2]=N+g;L[f+164>>2]=G+i;L[f+160>>2]=J+k;d=f- -64|0;e=f+32|0;g=wa>O(0)?O(0):ya>O(0)?O(0):xa;c=BO(j-g)?16711680:16777215;g=ta>O(0)?O(0):va>O(0)?O(0):ua;c=CO(n-g)?16711680:c;g=qa>O(0)?O(0):sa>O(0)?O(0):ra;c=rO(z-g)?16711680:c;Ra[H[H[a>>2]+28>>2]](a,d,e,c);Ra[H[H[a>>2]+28>>2]](a,e,f,c);Y=f+224|0;Ra[H[H[a>>2]+28>>2]](a,f,Y,c);Ra[H[H[a>>2]+28>>2]](a,Y,d,c);Z=f+208|0;_=f+192|0;Ra[H[H[a>>2]+28>>2]](a,Z,_,c);$=f+176|0;Ra[H[H[a>>2]+28>>2]](a,_,$,c);aa=f+160|0;Ra[H[H[a>>2]+28>>2]](a,$,aa,c);Ra[H[H[a>>2]+28>>2]](a,aa,Z,c);Ra[H[H[a>>2]+28>>2]](a,d,Z,c);Ra[H[H[a>>2]+28>>2]](a,e,_,c);Ra[H[H[a>>2]+28>>2]](a,f,$,c);Ra[H[H[a>>2]+28>>2]](a,Y,aa,c)}k=O(ja+ia);j=O(h*u);n=O(ka-la);z=O(M*m);A=O(ma-na);l=O(u*l);m=O(pa+oa);d:{if(!I[b+476|0]){break d}h=O(0);g=O(0);i=O(0);c=H[b+456>>2];if(c&1){i=O(O(r*o)+O(0));g=O(O(r*E)+O(0));h=O(O(r*p)+O(0))}if(c&2){i=O(O(C*s)+i);g=O(O(C*y)+g);h=O(O(C*t)+h)}if(c&4){i=O(O(B*x)+i);g=O(O(B*v)+g);h=O(O(B*w)+h)}h=O(W(O(O(i*i)+O(O(h*h)+O(g*g)))));if(!(h>L[b+464>>2])){break d}Ra[H[H[a>>2]+28>>2]](a,f+144|0,f+112|0,h>L[b+124>>2]?16711680:65280)}k=O(j+k);j=O(z+n);l=O(l+A);h=O(0);e:{if(m==O(0)){g=O(1);i=O(0);break e}h=O(O(1)/O(W(O(O(k*k)+O(O(O(m*m)+O(0))+O(0))))));g=O(k*h);i=O(h*O(0));h=O(m*h)}B=O(O(l*i)+O(O(k*g)+O(m*h)));k=O(k*O(-i));m=O(i*m);C=O(O(k+O(j*g))-m);r=O(h*l);k=O(O(k+O(l*g))-O(j*h));e=H[b+456>>2];if(e&8){l=O(i*i);l=O(W(O(O(g*g)+O(l+O(l+O(h*h))))));if(l!=O(0)){l=O(O(1)/l);g=O(g*l);h=O(h*l)}l=L[b+236>>2];o=L[b+232>>2];q=o;o=L[b+224>>2]>O(0)?O(0):L[b+220>>2]>O(0)?O(0):L[b+228>>2];g=M5(O(R(O(S(g,O(-1))),O(1))));g=O(g+g);h=h>2]+16>>2]](a,f+128|0,l,q,O(q-o)>2]}h=O(O(j*i)+B);g=O(r+C);i=O(m+k);if((e&48)==48){if(I[b+478|0]){m=O(h+O(1));k=O5(i,m);m=O5(g,m);j=L[b+264>>2];p=a6(O(j*O(.25)));l=L[b+260>>2];o=a6(O(l*O(.25)));q=O(P(O(k*O(4))));k=L[b+252>>2]>O(0)?O(0):L[b+248>>2]>O(0)?O(0):L[b+256>>2];l=O(O(q+k)/l);m=O(O(O(P(O(m*O(4))))+k)/j);Ra[H[H[a>>2]+20>>2]](a,f+128|0,p,o,!(O(O(l*l)+O(m*m))<=O(1)))}if(!I[b+479|0]){break a}i2(a,b,f+128|0,i,g,h,1);break a}d=e&16;if((e>>>5&1)==(d>>>4|0)){break a}k=O(M+M);j=O(D+D);m=O(O(k*u)-O(j*K));l=O(u+u);k=O(O(k*D)+O(l*K));j=O(O(O(1)-O(D*j))-O(u*l));H[f+88>>2]=0;H[f+80>>2]=0;H[f+84>>2]=0;H[f+72>>2]=-1087044365;H[f+76>>2]=1060439283;H[f+64>>2]=-2147483648;H[f+68>>2]=-2147483648;H[f+56>>2]=0;H[f+48>>2]=0;H[f+52>>2]=0;H[f+40>>2]=0;H[f+44>>2]=1060439283;H[f+32>>2]=0;H[f+36>>2]=1060439283;c=H[b+452>>2];if(d){d=I[b+479|0];if(c&32){if(d){i2(a,b,f+128|0,i,g,h,0);break a}j2(f,f+128|0,f- -64|0);k2(a,L[b+256>>2],f,i,h,L[b+260>>2]);break a}if(d){break a}j2(f,f+128|0,f+32|0);l2(a,b,f,O(O(x*m)+O(O(w*j)+O(v*k))),L[b+260>>2]);break a}d=I[b+479|0];if(c&16){if(d){c=f+128|0;i=L[b+288>>2];o=i;i=L[b+296>>2];q=i;m=L[b+300>>2];i=L[b+280>>2]>O(0)?O(0):L[b+276>>2]>O(0)?O(0):L[b+284>>2];h=O(O5(g,O(h+O(1)))*O(4));d=h>O(m-i)?-65536:O(q+i)>h?-65536:-8355712;m2(a,c,o,o,q,m,d);h=L[b+292>>2];m2(a,c,h,h,L[b+296>>2],L[b+300>>2],d);h=L[b+296>>2];m2(a,c,L[b+288>>2],L[b+292>>2],h,h,d);h=L[b+300>>2];m2(a,c,L[b+288>>2],L[b+292>>2],h,h,d);break a}j2(f,f+128|0,f+32|0);k2(a,L[b+256>>2],f,g,h,L[b+264>>2]);break a}if(d){break a}j2(f,f+128|0,f- -64|0);l2(a,b,f,O(O(s*m)+O(O(t*j)+O(y*k))),L[b+264>>2])}Oa=f+240|0}function Mz(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;g=Oa-1072|0;Oa=g;c=g+1052|0;H[c>>2]=-128;H[c+4>>2]=-128;c=g;H[c+1020>>2]=-128;H[c+1024>>2]=-128;H[c+988>>2]=-128;H[c+992>>2]=-128;H[c+956>>2]=-128;H[c+960>>2]=-128;H[c+924>>2]=-128;H[c+928>>2]=-128;H[c+892>>2]=-128;H[c+896>>2]=-128;H[c+860>>2]=-128;H[c+864>>2]=-128;H[c+828>>2]=-128;H[c+832>>2]=-128;H[c+796>>2]=-128;H[c+800>>2]=-128;H[c+764>>2]=-128;H[c+768>>2]=-128;H[c+732>>2]=-128;H[c+736>>2]=-128;H[c+700>>2]=-128;H[c+704>>2]=-128;H[c+668>>2]=-128;H[c+672>>2]=-128;H[c+636>>2]=-128;H[c+640>>2]=-128;H[c+604>>2]=-128;H[c+608>>2]=-128;H[c+572>>2]=-128;H[c+576>>2]=-128;H[c+540>>2]=-128;H[c+544>>2]=-128;H[c+508>>2]=-128;H[c+512>>2]=-128;H[c+476>>2]=-128;H[c+480>>2]=-128;H[c+444>>2]=-128;H[c+448>>2]=-128;H[c+412>>2]=-128;H[c+416>>2]=-128;H[c+380>>2]=-128;H[c+384>>2]=-128;H[c+348>>2]=-128;H[c+352>>2]=-128;H[c+316>>2]=-128;H[c+320>>2]=-128;H[c+284>>2]=-128;H[c+288>>2]=-128;H[c+252>>2]=-128;H[c+256>>2]=-128;H[c+220>>2]=-128;H[c+224>>2]=-128;H[c+188>>2]=-128;H[c+192>>2]=-128;H[c+156>>2]=-128;H[c+160>>2]=-128;H[c+124>>2]=-128;H[c+128>>2]=-128;H[c+92>>2]=-128;H[c+96>>2]=-128;H[c+60>>2]=-128;H[c+64>>2]=-128;H[c+24>>2]=H[b+12>>2];H[c+16>>2]=0;H[c+20>>2]=32;F[c+9|0]=0;H[c+12>>2]=c+48;H[c+40>>2]=H[b+148>>2];H[c+44>>2]=H[b+152>>2];k=H[b+24>>2];h=H[b+28>>2];j=H[b>>2];p=H[b+4>>2];r=H[b+52>>2];n=H[b+16>>2];t=H[b+8>>2];s=H[b+40>>2];a:{if(!s){if(n){while(1){c=d<<5;a=c+r|0;c=c+t|0;L[a>>2]=L[c>>2];L[a+4>>2]=L[c+4>>2];L[a+8>>2]=L[c+8>>2];L[a+16>>2]=L[c+16>>2];L[a+20>>2]=L[c+20>>2];L[a+24>>2]=L[c+24>>2];d=d+1|0;if((n|0)!=(d|0)){continue}break}}b:{if(j){if(!h){a=1;break b}d=0;while(1){e=0;while(1){a=H[N(e,52)+k>>2];Ra[H[H[a>>2]+136>>2]](a,L[b+100>>2],L[b+104>>2],H[g+40>>2],H[g+44>>2],0,0,O(0));e=e+1|0;if((h|0)!=(e|0)){continue}break}d=d+1|0;if((j|0)!=(d|0)){continue}break}}if(!h){a=1;break b}e=0;if((h|0)!=1){a=h&-2;while(1){c=N(e,52)+k|0;d=H[(H[H[c>>2]+24>>2]<<2)+135124>>2];if(d){Ra[d|0](c,H[g+44>>2])}c=N(e|1,52)+k|0;d=H[(H[H[c>>2]+24>>2]<<2)+135124>>2];if(d){Ra[d|0](c,H[g+44>>2])}e=e+2|0;f=f+2|0;if((a|0)!=(f|0)){continue}break}}a=!h;if(!(h&1)){break b}c=N(e,52)+k|0;d=H[(H[H[c>>2]+24>>2]<<2)+135124>>2];if(!d){break b}Ra[d|0](c,H[g+44>>2])}if(p){if(a){break a}d=0;while(1){e=0;while(1){c=H[N(e,52)+k>>2];Ra[H[H[c>>2]+136>>2]](c,L[b+100>>2],L[b+104>>2],H[g+40>>2],H[g+44>>2],1,0,O(0));e=e+1|0;if((h|0)!=(e|0)){continue}break}d=d+1|0;if((p|0)!=(d|0)){continue}break}}if(a){break a}e=0;if((h|0)!=1){a=h&-2;f=0;while(1){b=H[N(e,52)+k>>2];Ra[H[H[b>>2]+140>>2]](b,0);b=H[N(e|1,52)+k>>2];Ra[H[H[b>>2]+140>>2]](b,0);e=e+2|0;f=f+2|0;if((a|0)!=(f|0)){continue}break}}if(!(h&1)){break a}a=H[N(e,52)+k>>2];Ra[H[H[a>>2]+140>>2]](a,0);break a}w=H[b+32>>2];x=H[b+36>>2];if(j){while(1){F[g+8|0]=I[a+4|0]!=0|j>>>0<4;if((s|0)>0){u=(j|0)==1?114016:113920;l=0;while(1){o=0;i=0;f=0;q=(l<<3)+x|0;y=(H[q>>2]<<5)+w|0;e=H[y+24>>2];d=e;c=d+383|0;f=c>>>0<383?1:f;m=c;c=f>>>6|0;f=(f&63)<<26|m>>>6;m=c;c=d>>>6|0;m=m-(c>>>0>f>>>0)|0;v=f-c|0;f=m;c=v+1|0;f=c?f:f+1|0;d=c;c=0;A=c;z=d&7;if(c|z){while(1){c=d;d=c-1|0;f=f-!c|0;e=e- -64|0;c=i;i=o+1|0;c=i?c:c+1|0;o=i;i=c;if((z|0)!=(o|0)|(A|0)!=(c|0)){continue}break}}c=J[q+4>>1];if(!m&v>>>0>=7|m){while(1){e=e+512|0;f=f-(d>>>0<8)|0;d=d-8|0;if(f|d){continue}break}}c:{if(!c){break c}f=0;e=0;if(c-1>>>0>=3){i=c&65532;d=0;while(1){e=e+4|0;d=d+4|0;if((i|0)!=(d|0)){continue}break}}d=c&3;if(!d){break c}while(1){e=e+1|0;f=f+1|0;if((d|0)!=(f|0)){continue}break}}Ra[H[(J[q+6>>1]<<2)+u>>2]](y,c,g+8|0);l=l+1|0;if((s|0)!=(l|0)){continue}break}}e=0;if(h){while(1){c=H[N(e,52)+k>>2];Ra[H[H[c>>2]+136>>2]](c,L[b+100>>2],L[b+104>>2],H[g+40>>2],H[g+44>>2],0,0,O(0));e=e+1|0;if((h|0)!=(e|0)){continue}break}}j=j-1|0;if(j){continue}break}}if(n){d=0;while(1){c=d<<5;a=c+r|0;c=c+t|0;L[a>>2]=L[c>>2];L[a+4>>2]=L[c+4>>2];L[a+8>>2]=L[c+8>>2];L[a+16>>2]=L[c+16>>2];L[a+20>>2]=L[c+20>>2];L[a+24>>2]=L[c+24>>2];d=d+1|0;if((n|0)!=(d|0)){continue}break}}d:{if(!h){break d}e=0;if((h|0)!=1){a=h&-2;f=0;while(1){c=N(e,52)+k|0;d=H[(H[H[c>>2]+24>>2]<<2)+135124>>2];if(d){Ra[d|0](c,H[g+44>>2])}c=N(e|1,52)+k|0;d=H[(H[H[c>>2]+24>>2]<<2)+135124>>2];if(d){Ra[d|0](c,H[g+44>>2])}e=e+2|0;f=f+2|0;if((a|0)!=(f|0)){continue}break}}if(!(h&1)){break d}a=N(e,52)+k|0;c=H[(H[H[a>>2]+24>>2]<<2)+135124>>2];if(!c){break d}Ra[c|0](a,H[g+44>>2])}a=0;if((p|0)>1){m=p-1|0;t=(s|0)<=0;while(1){l=0;if(!t){while(1){o=0;i=0;f=0;n=(l<<3)+x|0;q=(H[n>>2]<<5)+w|0;e=H[q+24>>2];d=e;c=d+383|0;f=c>>>0<383?1:f;j=c;c=f>>>6|0;f=(f&63)<<26|j>>>6;j=c;c=d>>>6|0;j=j-(c>>>0>f>>>0)|0;r=f-c|0;f=j;c=r+1|0;f=c?f:f+1|0;d=c;c=0;v=c;u=d&7;if(c|u){while(1){c=d;d=c-1|0;f=f-!c|0;e=e- -64|0;c=i;i=o+1|0;c=i?c:c+1|0;o=i;i=c;if((u|0)!=(o|0)|(v|0)!=(c|0)){continue}break}}c=J[n+4>>1];if(!j&r>>>0>=7|j){while(1){e=e+512|0;f=f-(d>>>0<8)|0;d=d-8|0;if(f|d){continue}break}}e:{if(!c){break e}f=0;e=0;if(c-1>>>0>=3){i=c&65532;d=0;while(1){e=e+4|0;d=d+4|0;if((i|0)!=(d|0)){continue}break}}d=c&3;if(!d){break e}while(1){e=e+1|0;f=f+1|0;if((d|0)!=(f|0)){continue}break}}Ra[H[(J[n+6>>1]<<2)+113920>>2]](q,c,g+8|0);l=l+1|0;if((s|0)!=(l|0)){continue}break}}e=0;if(h){while(1){c=H[N(e,52)+k>>2];Ra[H[H[c>>2]+136>>2]](c,L[b+100>>2],L[b+104>>2],H[g+40>>2],H[g+44>>2],1,0,O(0));e=e+1|0;if((h|0)!=(e|0)){continue}break}}a=a+1|0;if((m|0)!=(a|0)){continue}break}a=m}m=H[b+132>>2];c=H[b+136>>2];j=H[b+140>>2];H[g+36>>2]=j;H[g+32>>2]=c;H[g+28>>2]=m;F[g+9|0]=1;f:{if((a|0)>=(p|0)){break f}if((s|0)>0){l=0;while(1){o=0;i=0;f=0;p=(l<<3)+x|0;r=(H[p>>2]<<5)+w|0;e=H[r+24>>2];a=e;c=a+383|0;f=c>>>0<383?1:f;d=(f&63)<<26|c>>>6;c=a>>>6|0;a=(f>>>6|0)-(c>>>0>d>>>0)|0;n=d-c|0;c=n+1|0;f=c?a:a+1|0;d=c;c=0;t=c;q=d&7;if(c|q){while(1){c=d;d=c-1|0;f=f-!c|0;e=e- -64|0;c=i;i=o+1|0;c=i?c:c+1|0;o=i;i=c;if((q|0)!=(o|0)|(t|0)!=(c|0)){continue}break}}c=J[p+4>>1];if(!a&n>>>0>=7|a){while(1){e=e+512|0;f=f-(d>>>0<8)|0;d=d-8|0;if(f|d){continue}break}}g:{if(!c){break g}f=0;e=0;if(c-1>>>0>=3){a=c&65532;d=0;while(1){e=e+4|0;d=d+4|0;if((a|0)!=(d|0)){continue}break}}a=c&3;if(!a){break g}while(1){e=e+1|0;f=f+1|0;if((a|0)!=(f|0)){continue}break}}Ra[H[(J[p+6>>1]<<2)+113968>>2]](r,c,g+8|0);l=l+1|0;if((s|0)!=(l|0)){continue}break}}if(!h){break f}e=0;while(1){a=N(e,52)+k|0;c=H[a>>2];Ra[H[H[c>>2]+136>>2]](c,L[b+100>>2],L[b+104>>2],H[g+40>>2],H[g+44>>2],1,0,O(0));a=H[a>>2];Ra[H[H[a>>2]+140>>2]](a,0);e=e+1|0;if((h|0)!=(e|0)){continue}break}}a=H[g+16>>2];if(!a){break a}a=a+H[j>>2]|0;H[j>>2]=a;b=H[g+16>>2];if(!b){break a}c=a-b|0;e=0;while(1){a=H[g+12>>2]+(e<<5)|0;d=H[a+4>>2];b=m+(c+e<<5)|0;H[b>>2]=H[a>>2];H[b+4>>2]=d;d=H[a+28>>2];H[b+24>>2]=H[a+24>>2];H[b+28>>2]=d;d=H[a+20>>2];H[b+16>>2]=H[a+16>>2];H[b+20>>2]=d;d=H[a+12>>2];H[b+8>>2]=H[a+8>>2];H[b+12>>2]=d;e=e+1|0;if(e>>>0>2]){continue}break}}Oa=g+1072|0}function Tx(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v){var w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,K=0,M=0,P=O(0),Q=O(0),R=O(0),S=0,T=O(0),U=O(0),V=O(0),W=O(0),X=0,Y=0,Z=O(0),_=0,$=0,aa=0,ba=0,ca=0,da=0;y=Oa-32|0;D=y;Oa=y;a:{if(!b){s=0;F[d|0]=0;H[e>>2]=0;H[f>>2]=0;H[h>>2]=0;G[g>>1]=0;F[n|0]=0;break a}x=N(b,5);aa=x>>>0>1024;F[D+28|0]=aa;b:{if(x>>>0>=1025){E=G5(x,9972,87);break b}E=y-(x+15&-16)|0;Oa=E}H[D+24>>2]=E;X=J[m+2>>1];Y=J[m>>1];c:{if(b>>>0<2){y=1;x=0;B=1;_=1;S=1;break c}P=L[a>>2];Q=L[a+4>>2];R=L[a+8>>2];x=0;S=1;_=1;B=b;y=1;K=Y;z=X;C=1;while(1){M=(C<<6)+a|0;V=L[M+8>>2];W=L[M>>2];T=L[M+4>>2];d:{e:{if(O(O(R*V)+O(O(P*W)+O(Q*T)))>1]!=(K&65535)){break e}if(J[M+2>>1]==(z&65535)){break d}}z=(N(S,5)+E|0)-5|0;F[z+4|0]=y&1;M=C-x|0;F[z+3|0]=M;F[z+2|0]=255;F[z+1|0]=C;F[z|0]=x;if(A){F[A+3|0]=I[A+3|0]+M}$=(C<<2)+m|0;K=1;w=1;f:{g:{if(S>>>0<2){K=0;break g}while(1){h:{y=w-1|0;A=N(y,5)+E|0;if(!I[A+4|0]){break h}x=I[A|0];z=(x<<6)+a|0;if(!(O(O(V*L[z+8>>2])+O(O(W*L[z>>2])+O(T*L[z+4>>2])))>=O(.9990000128746033))){break h}x=(x<<2)+m|0;if(J[$>>1]!=J[x>>1]|J[$+2>>1]!=J[x+2>>1]){break h}while(1){x=N(y,5)+E|0;y=I[x+2|0];if((y|0)!=255){continue}break}F[x+2|0]=S;break f}w=w+1|0;K=S>>>0>w>>>0;if((w|0)!=(S|0)){continue}break}}A=0}S=S+1|0;y=K^1;_=(y&1)+_|0;B=(M>>>0>1&r)+B|0;z=J[$+2>>1];K=J[$>>1];x=C;R=V;Q=T;P=W}C=C+1|0;if((C|0)!=(b|0)){continue}break}}K=(N(S,5)+E|0)-5|0;F[K+4|0]=y&1;z=b-x|0;F[K+3|0]=z;F[K+2|0]=255;F[K+1|0]=b;F[K|0]=x;K=(z>>>0>1&r)+B|0;y=r?i?K-b<<2:0:0;if(A){F[A+3|0]=z+I[A+3|0]}z=i+y|0;F[n|0]=_;B=(l^-1)&k;C=N(K,B?64:16);M=N(B?K:_,48)+o|0;i:{j:{k:{l:{m:{if(!(o|(B|!s))){i=C+H[s+4>>2]|0;H[s+4>>2]=i;y=H[s+8>>2];w=(y+H[s>>2]|0)-i|0;q=H[s+12>>2];p=H[s+4>>2];k=M+H[t+4>>2]|0;H[t+4>>2]=k;i=H[t+8>>2];x=(i+H[t>>2]|0)-k|0;p=i>>>0<=H[t+12>>2]+H[t+4>>2]>>>0|y>>>0<=p+q>>>0;A=0;if(!z){z=0;break m}k=H[u+4>>2]+(z<>2]=k;i=H[u+8>>2];z=(i+H[u>>2]|0)-k|0;p=i>>>0<=H[u+12>>2]+H[u+4>>2]>>>0|p;if(!v){break m}if(p){break k}s=C+M|0;A=(b<<2)+z|0;break l}s=(C+M|0)+15&-16;u=z<>>0>=16385){x=Nx(H[q>>2],y);break n}o:{t=H[q+4>>2];if(t){k=H[q+8>>2];i=k+y|0;if(i>>>0<16385){break o}}x=Ox(H[q>>2],p);H[q+8>>2]=y;H[q+4>>2]=x;break n}H[q+8>>2]=i;x=k+t|0;break n}q=i+15&-16;if(q>>>0>=16385){x=Nx(H[c+500>>2],q);break n}p:{p=H[c+504>>2];if(p){k=H[c+508>>2];i=k+q|0;if(i>>>0<16385){break p}}x=Px(H[c+500>>2]);H[c+508>>2]=q;H[c+504>>2]=x;break n}H[c+508>>2]=i;x=k+p|0}w=x+M|0;if(!u){A=0;z=0;break l}if(!x){break k}z=s+x|0;A=(ba=S6(z,0,u)+(b<<2)|0,ca=0,da=v,da?ba:ca);break j}if(p){break k}s=C+M|0}if(x){break j}}s=0;F[d|0]=0;H[e>>2]=0;H[f>>2]=0;H[h>>2]=0;G[g>>1]=0;F[n|0]=0;break i}if(c){H[c+7140>>2]=H[c+7140>>2]+s;H[c+7168>>2]=H[c+7168>>2]+s}G[g>>1]=s;b=H[j>>2];c=b+(Y<<5)|0;b=b+(X<<5)|0;Z=Rx(c,b);g=D+16|0;L[g+4>>2]=1;L[g>>2]=1;Sx(D,g,c,b);C=H[D+8>>2];V=L[D+4>>2];W=L[D>>2];H[e>>2]=x;H[f>>2]=w;H[h>>2]=z;n=o+x|0;q:{if(B){if(!S){break q}k=(l?6:2)|v;b=0;B=0;while(1){i=N(b,5)+E|0;r:{if(!I[i+4|0]){break r}c=(I[i|0]<<2)+m|0;f=J[c+2>>1];e=J[c>>1];if(!((e|0)==(Y&65535)&(f|0)==(X&65535))){c=H[j>>2];g=c+(e<<5)|0;c=c+(f<<5)|0;Z=Rx(g,c);h=D+16|0;L[h+4>>2]=1;L[h>>2]=1;Sx(D,h,g,c);C=H[D+8>>2];V=L[D+4>>2];W=L[D>>2];X=f;Y=e}l=I[i+3|0];F[n+42|0]=C;F[n+40|0]=B;F[n+41|0]=l;L[n+36>>2]=W;L[n+32>>2]=V;G[n+46>>1]=f;G[n+44>>1]=e;L[n+28>>2]=Z;L[n+16>>2]=L[a>>2];L[n+20>>2]=L[a+4>>2];L[n+24>>2]=L[a+8>>2];F[n+43|0]=k;H[n+8>>2]=1065353216;H[n+12>>2]=1065353216;H[n>>2]=1065353216;H[n+4>>2]=1065353216;if(!(!r|l>>>0<2)){P=O(0);Q=O(0);R=O(0);U=O(0);x=b;if((b|0)!=255){while(1){h=N(x,5)+E|0;c=I[h|0];i=I[h+1|0];s:{if(c>>>0>=i>>>0){break s}g=c^-1;t:{if(!(i-c&1)){y=c;break t}y=c+1|0;c=(c<<6)+a|0;P=O(P+L[c+12>>2]);U=O(U+L[c+16>>2]);Q=O(Q+L[c+24>>2]);R=O(R+L[c+20>>2])}if((g|0)==(0-i|0)){break s}while(1){c=(y<<6)+a|0;P=O(O(P+L[c+12>>2])+L[c+76>>2]);U=O(O(U+L[c+16>>2])+L[c+80>>2]);Q=O(O(Q+L[c+24>>2])+L[c+88>>2]);R=O(O(R+L[c+20>>2])+L[c+84>>2]);y=y+2|0;if((i|0)!=(y|0)){continue}break}}x=I[h+2|0];if((x|0)!=255){continue}break}}T=O(O(1)/O(l>>>0));if(A){H[A>>2]=H[((I[E+1275|0]<<6)+a|0)+52>>2];A=A+4|0}else{A=0}F[n+41|0]=l+1;L[w+12>>2]=T*P;L[w+8>>2]=T*Q;L[w+4>>2]=T*R;L[w>>2]=T*U;L[w+32>>2]=L[a>>2];L[w+36>>2]=L[a+4>>2];L[w+40>>2]=L[a+8>>2];L[w+60>>2]=V;L[w+56>>2]=W;H[w+24>>2]=0;H[w+28>>2]=2139095039;H[w+16>>2]=0;H[w+20>>2]=0;G[w+54>>1]=f;G[w+52>>1]=e;H[w+48>>2]=C;L[w+44>>2]=Z;w=w- -64|0;B=B+1|0}n=n+48|0;x=b;if((b|0)==255){break r}while(1){o=N(x,5)+E|0;c=I[o|0];l=I[o+1|0];if(c>>>0>>0){i=l+B|0;y=c;while(1){p=(y<<6)+a|0;h=H[p+20>>2];g=H[p+16>>2];L[w+8>>2]=L[p+24>>2];H[w>>2]=g;H[w+4>>2]=h;L[w+12>>2]=L[p+12>>2];L[w+32>>2]=L[p>>2];L[w+36>>2]=L[p+4>>2];L[w+40>>2]=L[p+8>>2];L[w+60>>2]=V;L[w+56>>2]=W;H[w+24>>2]=0;H[w+28>>2]=2139095039;H[w+16>>2]=0;H[w+20>>2]=0;G[w+54>>1]=f;G[w+52>>1]=e;H[w+48>>2]=C;L[w+44>>2]=Z;if(A){H[A>>2]=H[p+52>>2];A=A+4|0}else{A=0}w=w- -64|0;y=y+1|0;if((l|0)!=(y|0)){continue}break}B=i-c|0}x=I[o+2|0];if((x|0)!=255){continue}break}}b=b+1|0;if((S|0)!=(b|0)){continue}break}break q}if(!S){break q}B=0;h=0;while(1){u:{i=N(B,5)+E|0;if(!I[i+4|0]){break u}z=I[i|0];b=(z<<2)+m|0;c=J[b+2>>1];b=J[b>>1];if(!((b|0)==(Y&65535)&(c|0)==(X&65535))){e=H[j>>2];f=e+(b<<5)|0;e=e+(c<<5)|0;Z=Rx(f,e);g=D+16|0;L[g+4>>2]=1;L[g>>2]=1;Sx(D,g,f,e);C=H[D+8>>2];V=L[D+4>>2];W=L[D>>2];z=I[i|0];X=c;Y=b}e=(z<<6)+a|0;L[n+16>>2]=L[e>>2];L[n+20>>2]=L[e+4>>2];L[n+24>>2]=L[e+8>>2];g=I[i+3|0];F[n+40|0]=h;F[n+41|0]=g;L[n+36>>2]=W;L[n+32>>2]=V;G[n+46>>1]=c;G[n+44>>1]=b;L[n+28>>2]=Z;F[n+43|0]=v;F[n+42|0]=C;H[n+8>>2]=1065353216;H[n+12>>2]=1065353216;H[n>>2]=1065353216;H[n+4>>2]=1065353216;if(!(!r|g>>>0<2)){F[n+41|0]=g+1;P=O(0);y=z;U=O(0);R=O(0);Q=O(0);x=B;if((x|0)!=255){while(1){b=y&255;e=N(x,5)+E|0;f=I[e+1|0];v:{if(b>>>0>=f>>>0){break v}c=b^-1;w:{if(!(f-y&1)){y=b;break w}y=b+1|0;b=(b<<6)+a|0;P=O(P+L[b+12>>2]);Q=O(Q+L[b+16>>2]);U=O(U+L[b+24>>2]);R=O(R+L[b+20>>2])}if((c|0)==(0-f|0)){break v}while(1){b=(y<<6)+a|0;P=O(O(P+L[b+12>>2])+L[b+76>>2]);Q=O(O(Q+L[b+16>>2])+L[b+80>>2]);U=O(O(U+L[b+24>>2])+L[b+88>>2]);R=O(O(R+L[b+20>>2])+L[b+84>>2]);y=y+2|0;if((f|0)!=(y|0)){continue}break}}x=I[e+2|0];if((x|0)!=255){y=I[N(x,5)+E|0];continue}break}}T=O(O(1)/O(g>>>0));if(A){H[A>>2]=H[((I[E+1275|0]<<6)+a|0)+52>>2];A=A+4|0}else{A=0}L[w+12>>2]=T*P;L[w+8>>2]=T*U;L[w+4>>2]=T*R;L[w>>2]=T*Q;w=w+16|0;h=h+1|0}n=n+48|0;x=B;if((x|0)==255){break u}while(1){b=z&255;g=N(x,5)+E|0;i=I[g+1|0];if(b>>>0>>0){f=h+i|0;y=b;while(1){h=(y<<6)+a|0;e=H[h+20>>2];c=H[h+16>>2];L[w+8>>2]=L[h+24>>2];H[w>>2]=c;H[w+4>>2]=e;L[w+12>>2]=L[h+12>>2];if(A){H[A>>2]=H[h+52>>2];A=A+4|0}else{A=0}w=w+16|0;y=y+1|0;if((i|0)!=(y|0)){continue}break}h=f-b|0}x=I[g+2|0];if((x|0)==255){break u}z=I[N(x,5)+E|0];continue}}B=B+1|0;if((S|0)!=(B|0)){continue}break}}F[d|0]=K;aa=I[D+28|0]}if(!aa){break a}H5(H[D+24>>2])}Oa=D+32|0;return s}function vX(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=e|0;f=f|0;g=O(g);h=h|0;i=i|0;j=O(j);k=k|0;l=O(l);var m=0,n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=0,v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=0,E=O(0),G=O(0),I=0,J=0,K=0,M=O(0),N=O(0),Q=O(0),T=0,U=0,V=0,X=0,Y=0,Z=O(0),_=0,$=0,aa=O(0),ba=0;m=Oa-720|0;Oa=m;u=H[b>>2];D=H[u+4>>2];H[m+672>>2]=u;H[m+668>>2]=D;j=L[u+8>>2];p=L[u+12>>2];L[m+664>>2]=O(1)/L[u+16>>2];L[m+656>>2]=O(1)/p;L[m+660>>2]=O(1)/j;H[m+648>>2]=0;H[m+652>>2]=64;F[m+640|0]=1;u=m+384|0;H[m+644>>2]=u;H[m+376>>2]=126820;H[m+380>>2]=u;j=L[e+24>>2];p=L[c+24>>2];n=L[e+16>>2];q=L[c+16>>2];v=O(L[c+20>>2]-L[e+20>>2]);L[m+364>>2]=v;j=O(p-j);L[m+368>>2]=j;p=O(q-n);L[m+360>>2]=p;n=L[f+20>>2];q=L[d+20>>2];t=L[f+16>>2];o=L[d+16>>2];s=O(L[d+24>>2]-L[f+24>>2]);L[m+352>>2]=s;n=O(q-n);L[m+348>>2]=n;q=O(o-t);L[m+344>>2]=q;t=L[a+68>>2];o=L[a+80>>2];w=L[a+64>>2];r=L[a+76>>2];M=O(j-s);j=O(M*O(.5));s=O(O(O(P(j))+L[a+72>>2])+g);j=O(j+L[a+84>>2]);L[m+340>>2]=s+j;N=O(v-n);n=O(N*O(.5));v=O(O(t+O(P(n)))+g);n=O(n+o);L[m+336>>2]=v+n;Q=O(p-q);p=O(Q*O(.5));q=O(O(w+O(P(p)))+g);p=O(p+r);L[m+332>>2]=q+p;L[m+328>>2]=j-s;L[m+324>>2]=n-v;L[m+320>>2]=p-q;XZ(m+656|0,d,m+320|0,1,m+376|0);H[m+312>>2]=0;H[m+304>>2]=0;H[m+308>>2]=0;u=H[m+648>>2];H[m+80>>2]=0;D=u;u=m+80|0;gy(m+304|0,D,u);H[m+296>>2]=0;H[m+288>>2]=0;H[m+292>>2]=0;D=H[m+648>>2];H[m+80>>2]=0;gy(m+288|0,D,u);T=H[m+304>>2];I=H[m+288>>2];L[m+272>>2]=L[a+76>>2];L[m+276>>2]=L[a+80>>2];L[m+280>>2]=L[a+84>>2];D=0;X=H[m+648>>2];if(X){$=b+8|0;y=O(O(L[a+72>>2]+g)*O(1.100000023841858));E=O(O(L[a+68>>2]+g)*O(1.100000023841858));aa=O(O(L[a+64>>2]+g)*O(1.100000023841858));ba=H[m+644>>2];while(1){Y=(U<<2)+ba|0;YZ(m+656|0,$,m+80|0,0,0,H[Y>>2],1,1);n=L[m+92>>2];w=L[m+80>>2];j=O(n-w);q=L[m+108>>2];r=L[m+84>>2];p=O(q-r);v=L[m+104>>2];s=O(v-w);t=L[m+96>>2];G=O(t-r);z=O(O(j*p)-O(s*G));x=O(-z);o=L[m+100>>2];A=L[m+88>>2];C=O(o-A);B=O(C*s);s=L[m+112>>2];Z=O(s-A);B=O(B-O(Z*j));j=O(-B);G=O(O(G*Z)-O(p*C));p=O(-G);z=O(W(O(O(z*z)+O(O(G*G)+O(B*B)))));if(z>O(0)){z=O(O(1)/z);x=O(z*x);p=O(z*p);j=O(z*j)}a:{if(!(O(O(M*x)+O(O(Q*p)+O(N*j)))>=l)){break a}L[m+8>>2]=y;L[m+4>>2]=E;L[m>>2]=aa;j=O(R(A,O(8.5070586659632215e37)));j=js?p:s;L[m+224>>2]=O(j+p)*O(.5);o=O(R(r,O(8.5070586659632215e37)));o=oo?o:q;s=O(S(r,O(-8.5070586659632215e37)));t=s>t?s:t;q=q>2]=O(o+q)*O(.5);t=O(R(w,O(8.5070586659632215e37)));t=n>t?t:n;t=tv?n:v;L[m+216>>2]=O(t+n)*O(.5);L[m+712>>2]=O(O(O(p-j)*O(.5))+O(.009999999776482582))*O(1.100000023841858);L[m+708>>2]=O(O(O(q-o)*O(.5))+O(.009999999776482582))*O(1.100000023841858);L[m+704>>2]=O(O(O(n-t)*O(.5))+O(.009999999776482582))*O(1.100000023841858);j=qN(m+272|0,m,m+216|0,m+704|0,m+360|0,m+344|0);if(!(j<=O(1))){break a}J=0;u=D;b:{if(!u){break b}while(1){K=u-1|0;_=K<<2;p=L[I+_>>2];if(p<=j){J=u;break b}u=u<<2;L[u+I>>2]=p;H[u+T>>2]=H[T+_>>2];u=K;if(u){continue}break}}u=J<<2;H[u+T>>2]=H[Y>>2];L[u+I>>2]=j;D=D+1|0}U=U+1|0;if((X|0)!=(U|0)){continue}break}}H[h+8>>2]=0;H[h>>2]=0;H[h+4>>2]=0;H[i+8>>2]=0;H[i>>2]=0;H[i+4>>2]=0;t=L[a+4>>2];l=L[d+8>>2];r=L[d+24>>2];j=O(L[a+32>>2]-r);j=O(j+j);p=L[d>>2];x=L[d+16>>2];n=O(L[a+24>>2]-x);v=O(n+n);A=L[d+20>>2];n=O(L[a+28>>2]-A);s=O(n+n);n=L[d+4>>2];w=O(O(l*j)+O(O(p*v)+O(s*n)));q=L[d+12>>2];o=O(O(q*q)+O(-.5));L[m+264>>2]=O(l*w)+O(O(j*o)-O(q*O(O(p*s)-O(v*n))));L[m+260>>2]=O(n*w)+O(O(s*o)-O(q*O(O(l*v)-O(j*p))));L[m+256>>2]=O(p*w)+O(O(v*o)-O(q*O(O(n*j)-O(s*l))));j=O(3.4028234663852886e38);u=-1;v=O(0);c:{if(!D){p=O(0);s=O(0);w=O(0);n=O(0);q=O(0);break c}s=O(L[e+24>>2]-r);s=O(s+s);w=O(L[e+16>>2]-x);w=O(w+w);r=O(L[e+20>>2]-A);r=O(r+r);x=O(O(l*s)+O(O(p*w)+O(n*r)));G=O(O(l*x)+O(O(s*o)-O(q*O(O(p*r)-O(w*n)))));M=O(O(n*x)+O(O(r*o)-O(q*O(O(l*w)-O(s*p)))));N=O(O(p*x)+O(O(w*o)-O(q*O(O(n*s)-O(r*l)))));Q=O(t*t);q=O(0);n=O(0);w=O(0);s=O(0);p=O(0);while(1){K=(V<<2)+T|0;YZ(m+656|0,f,m+216|0,0,0,H[K>>2],0,0);F[m+112|0]=0;H[m+108>>2]=5;H[m+172>>2]=0;l=L[m+248>>2];L[m+168>>2]=l;o=L[m+244>>2];L[m+164>>2]=o;r=L[m+240>>2];L[m+160>>2]=r;H[m+156>>2]=0;x=L[m+236>>2];L[m+152>>2]=x;A=L[m+232>>2];L[m+148>>2]=A;z=L[m+228>>2];L[m+144>>2]=z;H[m+140>>2]=0;B=L[m+224>>2];L[m+136>>2]=B;y=L[m+220>>2];L[m+132>>2]=y;E=L[m+216>>2];L[m+128>>2]=E;H[m+92>>2]=0;L[m+88>>2]=O(l+O(B+x))*O(.33333298563957214);L[m+84>>2]=O(o+O(y+A))*O(.33333298563957214);L[m+80>>2]=O(r+O(E+z))*O(.33333298563957214);H[m+104>>2]=2139095039;H[m+96>>2]=0;H[m+100>>2]=2139095039;J=H[a>>2];I=H[b>>2];F[m+72|0]=0;H[m+64>>2]=0;H[m+68>>2]=1065353216;H[m+56>>2]=0;H[m+60>>2]=0;H[m+48>>2]=0;H[m+52>>2]=1065353216;H[m+40>>2]=0;H[m+44>>2]=0;H[m+32>>2]=1065353216;H[m+36>>2]=1065353216;H[m+24>>2]=0;H[m+28>>2]=0;H[m+16>>2]=1065353216;H[m+20>>2]=0;H[m+8>>2]=0;H[m+12>>2]=0;H[m>>2]=1065353216;H[m+4>>2]=0;l=O(Ra[H[(H[J>>2]<<2)+127136>>2]](J,I,c,d,e,f,g,m+200|0,m+184|0,m,m+80|0,O(0)));d:{if(!(l<=O(0))){break d}B=L[m+240>>2];y=L[m+244>>2];E=L[m+248>>2];l=L[m+216>>2];z=L[m+228>>2];o=L[m+220>>2];A=L[m+232>>2];r=L[m+224>>2];x=O(L[m+236>>2]-r);L[m+8>>2]=r+x;A=O(A-o);L[m+4>>2]=o+A;z=O(z-l);L[m>>2]=l+z;C=r;r=O(E-r);L[m+712>>2]=C+r;C=o;o=O(y-o);L[m+708>>2]=C+o;B=O(B-l);L[m+704>>2]=l+B;qZ(m+680|0,m+256|0,m+216|0,m,m+704|0,m+700|0,m+696|0);l=O(0);y=O(L[m+688>>2]-L[m+264>>2]);C=O(y*y);y=O(L[m+680>>2]-L[m+256>>2]);E=O(y*y);y=O(L[m+684>>2]-L[m+260>>2]);y=O(C+O(E+O(y*y)));if(!(y>2])+O(O(o*L[m+216>>2])+O(r*L[m+220>>2]))))>O(0)?C:y}if(j>l){j=L[m+216>>2];p=O(L[m+228>>2]-j);n=L[m+220>>2];q=O(L[m+244>>2]-n);j=O(L[m+240>>2]-j);n=O(L[m+232>>2]-n);v=O(O(p*q)-O(j*n));r=n;n=L[m+224>>2];o=O(L[m+248>>2]-n);C=q;q=O(L[m+236>>2]-n);n=O(O(r*o)-O(C*q));q=O(O(q*j)-O(o*p));j=O(W(O(O(v*v)+O(O(n*n)+O(q*q)))));if(j>O(0)){j=O(O(1)/j);v=O(v*j);q=O(q*j);n=O(n*j)}u=H[K>>2];w=L[m+192>>2];s=L[m+188>>2];p=L[m+184>>2];j=l}V=V+1|0;if((V|0)!=(D|0)){continue}break}}l=L[d+8>>2];v=O(v+v);t=L[d>>2];n=O(n+n);q=O(q+q);o=L[d+4>>2];r=O(O(l*v)+O(O(t*n)+O(q*o)));g=L[d+12>>2];x=O(O(g*g)+O(-.5));L[h+8>>2]=O(l*r)+O(O(v*x)+O(g*O(O(t*q)-O(n*o))));L[h+4>>2]=O(o*r)+O(O(q*x)+O(g*O(O(l*n)-O(v*t))));L[h>>2]=O(t*r)+O(O(n*x)+O(g*O(O(o*v)-O(q*l))));L[i+8>>2]=w;L[i+4>>2]=s;L[i>>2]=p;H[k>>2]=u;a=H[m+296>>2];e:{if((a|0)<0|!(a&2147483647)){break e}a=H[m+288>>2];if(!a){break e}b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,a)}a=H[m+312>>2];f:{if((a|0)<0|!(a&2147483647)){break f}a=H[m+304>>2];if(!a){break f}b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,a)}a=H[m+652>>2];g:{if((a|0)<0|!(a&2147483647)){break g}a=H[m+644>>2];if((a|0)==(m+384|0)|!a){break g}b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,a)}Oa=m+720|0;return O(j)}function Qv(a,b,c){a=a|0;b=b|0;c=c|0;var d=O(0),e=O(0),f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=0,l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=0,s=O(0),t=O(0),u=0,v=0,w=O(0),x=0,y=O(0),z=0,A=0,B=O(0),C=0,D=O(0),E=O(0),G=0,J=O(0),K=O(0),M=O(0),P=O(0),Q=0,R=O(0),S=O(0),T=0,U=0,V=0,X=0,Y=O(0),Z=O(0);z=Oa-16|0;Oa=z;u=H[a+192>>2];G=H[a+180>>2];k=H[a+144>>2];r=H[a+156>>2];F[z+8|0]=I[c|0];v=a+112|0;T=H[a+668>>2];x=T;c=I[z+8|0];if(c&1){Jv(v,r,H[b+12>>2]);x=H[a+668>>2]|4;H[a+668>>2]=x;c=I[z+8|0]}if(c&2){Jv(v,k,H[b+16>>2]);x=H[a+668>>2]|8;H[a+668>>2]=x;c=I[z+8|0]}a:{if(!(c&64)){A=c&4;break a}C=H[a+444>>2];A=c&4;if(A){r=H[b+36>>2];o=L[r+20>>2];l=L[r+24>>2];p=L[r+16>>2];k=H[C+16>>2];g=L[k+44>>2];f=L[r+12>>2];h=L[k+32>>2];d=L[r>>2];e=L[r+4>>2];j=L[k+36>>2];i=L[r+8>>2];m=L[k+40>>2];L[k+12>>2]=O(O(O(f*g)-O(h*d))-O(e*j))-O(i*m);L[k+8>>2]=O(O(d*j)+O(O(f*m)+O(i*g)))-O(h*e);L[k+4>>2]=O(O(i*h)+O(O(f*j)+O(e*g)))-O(m*d);L[k>>2]=O(O(e*m)+O(O(f*h)+O(d*g)))-O(j*i);P=l;g=L[k+56>>2];g=O(g+g);h=L[k+48>>2];h=O(h+h);j=L[k+52>>2];j=O(j+j);m=O(O(i*g)+O(O(d*h)+O(e*j)));l=O(O(f*f)+O(-.5));L[k+24>>2]=P+O(O(i*m)+O(O(g*l)+O(f*O(O(d*j)-O(h*e)))));L[k+20>>2]=o+O(O(e*m)+O(O(j*l)+O(f*O(O(i*h)-O(g*d)))));L[k+16>>2]=p+O(O(d*m)+O(O(h*l)+O(f*O(O(e*g)-O(j*i)))))}if(c&1){k=H[C+16>>2];r=H[b+36>>2];L[k+64>>2]=L[r+28>>2];L[k+68>>2]=L[r+32>>2];L[k+72>>2]=L[r+36>>2];L[k+80>>2]=L[r+40>>2];L[k+84>>2]=L[r+44>>2];L[k+88>>2]=L[r+48>>2]}H[a+668>>2]=x|32}if(A){Jv(v,G,H[b+20>>2]);H[a+668>>2]=H[a+668>>2]|2;c=I[z+8|0]}if(c&8){Jv(v,u,H[b+24>>2]);H[a+668>>2]=H[a+668>>2]|16;c=I[z+8|0]}if(c&4){d=O(0);f=O(0);i=O(0);g=O(0);h=O(0);b=1;tw(a,v,1);G=H[a+448>>2];if(G>>>0>1){Q=H[a+432>>2];V=H[a+456>>2];A=H[a+444>>2];x=H[v+260>>2];X=H[v+68>>2];while(1){u=V+N(b,80)|0;r=X+(H[u+72>>2]<<2)|0;c=Q+(b<<4)|0;j=L[c+12>>2];o=L[c+8>>2];m=L[c+4>>2];l=L[c>>2];C=A+(b<<5)|0;c=H[C+20>>2];p=L[c+16>>2];q=L[c+24>>2];s=L[c+20>>2];w=L[c+52>>2];R=L[c+48>>2];S=L[c+44>>2];k=H[(A+(H[C+24>>2]<<5)|0)+16>>2];Y=L[k+16>>2];t=L[k+12>>2];D=L[k+8>>2];E=L[k+4>>2];J=L[k>>2];Z=L[k+24>>2];P=L[k+20>>2];b:{c:{d:{e:{switch(I[c+270|0]){default:p=O(-h);j=O(-g);e=O(-f);break b;case 0:f=O(q+q);d=O(p+p);e=O(s+s);g=O(O(o*f)+O(O(l*d)+O(e*m)));h=O(O(j*j)+O(-.5));n=L[r>>2];c=x+N(b,76)|0;i=O(O(O(O(o*g)+O(O(f*h)+O(j*O(O(l*e)-O(d*m)))))-w)+O(n*L[c+20>>2]));y=O(O(O(O(l*g)+O(O(d*h)+O(j*O(O(m*f)-O(e*o)))))-S)+O(n*L[c+12>>2]));n=O(O(O(O(m*g)+O(O(e*h)+O(j*O(O(o*d)-O(f*l)))))-R)+O(n*L[c+16>>2]));break d;case 1:c=x+N(b,76)|0;n=L[c+8>>2];e=O(L[r>>2]*O(-.5));f=Z5(e);d=O(n*f);i=O(f*L[c+4>>2]);f=O(f*L[c>>2]);e=T5(e);if(e>>0>=3){i=O(0);k=0;f=O(0);e=O(0);while(1){d=L[(k<<2)+r>>2];u=(x+N(b,76)|0)+N(k,24)|0;i=O(i-O(d*L[u+8>>2]));f=O(f-O(d*L[u+4>>2]));e=O(e-O(d*L[u>>2]));k=k+1|0;if((c|0)!=(k|0)){continue}break}d=O(O(i*i)+O(O(e*e)+O(f*f)));if(!(d>2]+N(b,76)|0;k=c-1|0;u=U+N(k,24)|0;d=L[u+8>>2];e=O(L[(k<<2)+r>>2]*O(-.5));f=Z5(e);e=T5(e);i=O(f*L[u+4>>2]);y=O(i*O(0));n=O(f*d);d=O(e*O(0));f=O(f*L[u>>2]);h=O(f*O(0));g=O(O(y+O(n+d))-h);B=O(n*O(0));h=O(O(h+O(i+d))-B);d=O(O(B+O(f+d))-y);n=O(O(n*O(-0))+O(O(i*O(-0))+O(e+O(f*O(-0)))));if(k){break g}f=h;e=g;i=n;break f}g=O(W(d));n=O(g*O(.5));d=Z5(n);h=i;i=O(O(1)/g);h=O(d*O(h*i));f=O(d*O(f*i));g=O(d*O(e*i));n=T5(n)}d=n;d=O(O(1)/O(W(O(O(d*d)+O(O(h*h)+O(O(g*g)+O(f*f)))))));i=O(n*d);e=O(h*d);f=O(f*d);d=O(g*d);break f}k=c-2|0;c=U+N(k,24)|0;e=L[c+4>>2];i=O(L[(k<<2)+r>>2]*O(-.5));f=Z5(i);B=L[c>>2];y=T5(i);B=O(f*B);K=O(f*e);M=O(f*L[c+8>>2]);i=O(O(O(O(n*y)-O(B*d))-O(h*K))-O(g*M));e=O(O(O(d*K)+O(O(n*M)+O(g*y)))-O(B*h));f=O(O(O(g*B)+O(O(n*K)+O(h*y)))-O(M*d));d=O(O(O(h*M)+O(O(n*B)+O(d*y)))-O(K*g))}n=O(O(O(O(i*j)-O(l*d))-O(f*m))-O(e*o));g=O(O(O(d*m)+O(O(i*o)+O(j*e)))-O(l*f));h=O(O(O(f*o)+O(O(i*l)+O(j*d)))-O(m*e));i=O(O(O(e*l)+O(O(i*m)+O(j*f)))-O(o*d));d=O(O(1)/O(W(O(O(n*n)+O(O(g*g)+O(O(h*h)+O(i*i)))))));break c;case 3:break e}}f=O(q+q);d=O(p+p);e=O(s+s);g=O(O(o*f)+O(O(l*d)+O(e*m)));h=O(O(j*j)+O(-.5));i=O(O(O(o*g)+O(O(f*h)+O(j*O(O(l*e)-O(d*m)))))-w);y=O(O(O(l*g)+O(O(d*h)+O(j*O(O(m*f)-O(e*o)))))-S);n=O(O(O(m*g)+O(O(e*h)+O(j*O(O(o*d)-O(f*l)))))-R)}p=O(-m);h=m;d=j;g=o;j=O(-g);f=l;e=O(-f);break b}g=O(g*d);e=O(q+q);f=O(h*d);l=O(p+p);j=O(s+s);h=O(i*d);m=O(O(g*e)+O(O(f*l)+O(j*h)));d=O(n*d);o=O(O(d*d)+O(-.5));i=O(O(O(g*m)+O(O(e*o)+O(d*O(O(f*j)-O(l*h)))))-w);n=O(O(O(h*m)+O(O(j*o)+O(d*O(O(g*l)-O(e*f)))))-R);y=O(O(O(f*m)+O(O(l*o)+O(d*O(O(h*e)-O(j*g)))))-S);p=O(-h);j=O(-g);e=O(-f)}m=O(O(D*g)+O(O(E*h)+O(O(t*d)+O(J*f))));l=O(O(f*E)+O(O(J*p)+O(O(t*j)+O(D*d))));o=O(O(h*D)+O(O(E*j)+O(O(t*e)+O(J*d))));p=O(O(g*J)+O(O(D*e)+O(O(t*p)+O(E*d))));j=O(O(1)/O(W(O(O(m*m)+O(O(l*l)+O(O(o*o)+O(p*p)))))));c=H[C+16>>2];e=O(m*j);L[c+12>>2]=e;m=O(l*j);L[c+8>>2]=m;l=O(p*j);L[c+4>>2]=l;j=O(o*j);L[c>>2]=j;o=O(i+i);p=O(y+y);q=O(n+n);s=O(O(m*o)+O(O(j*p)+O(q*l)));w=O(O(e*e)+O(-.5));L[c+24>>2]=Z+O(O(m*s)+O(O(o*w)+O(e*O(O(j*q)-O(p*l)))));L[c+20>>2]=P+O(O(l*s)+O(O(q*w)+O(e*O(O(m*p)-O(o*j)))));L[c+16>>2]=Y+O(O(j*s)+O(O(p*w)+O(e*O(O(l*o)-O(q*m)))));b=b+1|0;if((G|0)!=(b|0)){continue}break}}c=I[z+8|0]}if(c&5){c=1;tw(a,v,1);A=H[v+336>>2];if(A>>>0>1){C=H[v+344>>2];r=H[v+44>>2];x=H[v+332>>2];while(1){a=x+(c<<5)|0;b=H[(x+(H[a+24>>2]<<5)|0)+16>>2];f=L[b+80>>2];a=H[a+16>>2];e=O(L[a+20>>2]-L[b+20>>2]);g=O(L[a+16>>2]-L[b+16>>2]);d=L[b+84>>2];j=O(L[b+72>>2]+O(O(f*e)-O(g*d)));i=L[b+88>>2];n=O(i*g);g=O(L[a+24>>2]-L[b+24>>2]);m=O(L[b+68>>2]+O(n-O(g*f)));D=O(L[b+64>>2]+O(O(d*g)-O(e*i)));if(r){l=L[a+12>>2];o=L[a+8>>2];n=L[a+4>>2];p=L[a>>2];e=O(0);b=C+N(c,80)|0;u=I[b+76|0];j:{if(!u){g=O(0);q=O(0);h=O(0);s=O(0);w=O(0);break j}G=r+(H[b+72>>2]<<2)|0;Q=H[v+260>>2];k=0;w=O(0);s=O(0);h=O(0);q=O(0);g=O(0);while(1){t=L[G+(k<<2)>>2];b=(Q+N(c,76)|0)+N(k,24)|0;h=O(h+O(t*L[b+12>>2]));s=O(s+O(t*L[b+8>>2]));w=O(w+O(t*L[b+4>>2]));e=O(e+O(t*L[b>>2]));g=O(g+O(t*L[b+20>>2]));q=O(q+O(t*L[b+16>>2]));k=k+1|0;if((u|0)!=(k|0)){continue}break}}t=O(g+g);h=O(h+h);q=O(q+q);E=O(O(o*t)+O(O(p*h)+O(n*q)));g=O(O(l*l)+O(-.5));j=O(j+O(O(o*E)+O(O(t*g)+O(l*O(O(p*q)-O(h*n))))));m=O(m+O(O(n*E)+O(O(q*g)+O(l*O(O(o*h)-O(t*p))))));D=O(D+O(O(p*E)+O(O(h*g)+O(l*O(O(n*t)-O(q*o))))));h=O(s+s);e=O(e+e);q=O(w+w);s=O(O(o*h)+O(O(p*e)+O(n*q)));i=O(i+O(O(o*s)+O(O(h*g)+O(l*O(O(p*q)-O(e*n))))));d=O(d+O(O(n*s)+O(O(q*g)+O(l*O(O(o*e)-O(h*p))))));f=O(f+O(O(p*s)+O(O(e*g)+O(l*O(O(n*h)-O(q*o))))))}L[a+80>>2]=f;L[a+64>>2]=D;L[a+88>>2]=i;L[a+84>>2]=d;L[a+72>>2]=j;L[a+68>>2]=m;c=c+1|0;if((A|0)!=(c|0)){continue}break}}}Oa=z+16|0;return!T|0}function AB(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=0,o=O(0),p=0,q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),w=O(0),x=O(0),y=0,z=O(0),A=0,C=O(0),D=O(0),E=O(0),F=O(0),G=O(0),M=O(0),Q=0,R=O(0),S=O(0),T=O(0),U=O(0),V=O(0),X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0;if(I[a+7648|0]){a=1}else{X=d;y=Oa-32|0;Oa=y;i=L[b+84>>2];k=L[b+76>>2];h=L[b+88>>2];j=L[b+72>>2];g=L[b+92>>2];f=L[b+80>>2];q=O(O(g+f)*O(.5));L[y+24>>2]=q;r=O(O(h+k)*O(.5));L[y+20>>2]=r;s=O(O(i+j)*O(.5));L[y+16>>2]=s;R=O(O(g-f)*O(.5));L[y+8>>2]=R;S=O(O(h-k)*O(.5));L[y+4>>2]=S;T=O(O(i-j)*O(.5));L[y>>2]=T;n=a+16|0;Y=H[n+636>>2];a=H[n+28>>2];b=1;a:{if(!(Y|a)){break a}m=L[X>>2];if(m==O(3.4028234663852886e38)){h=L[n+664>>2];j=L[n+680>>2];z=O(R+O(h+j));g=L[n+660>>2];f=L[n+676>>2];x=O(S+O(g+f));h=O(O(h-j)-R);l=O(O(g-f)-S);g=L[n+656>>2];f=L[n+672>>2];i=O(T+O(g+f));j=O(O(g-f)-T);if(a){w=O(8.5070586659632215e37);m=O(-8.5070586659632215e37);f=O(-8.5070586659632215e37);C=O(-8.5070586659632215e37);D=O(8.5070586659632215e37);E=O(8.5070586659632215e37);while(1){b=N(A,24)+n|0;g=L[b+180>>2];m=g>2];f=f>g?f:g;g=L[b+172>>2];C=g>2];w=g>w?w:g;g=L[b+164>>2];D=g>D?D:g;g=L[b+160>>2];E=g>E?E:g;A=A+1|0;if((A|0)!=(a|0)){continue}break}f=O(S+f);x=fh?h:f;f=O(D-S);l=f>l?l:f;f=O(E-T);j=f>j?j:f;f=O(R+m);z=f>2];g=L[c>>2];f=L[c+4>>2];j=O(O(o*h)+O(O(O(O(i+j)*O(.5))*g)+O(O(O(x+l)*O(.5))*f)));f=O(O(q*h)+O(O(s*g)+O(r*f)));g=O(P(O(O(j-k)-f)));f=O(P(O(O(k+j)-f)));m=O(m+(f>g?g:f));L[X>>2]=m}o=L[c+8>>2];h=O(-o);p=h>2];j=O(-t);d=j>2];g=O(-u);b=g=O(3.4028234663852886e38)){w=t==O(0)?r:t>=O(0)?O(3.4028234663852886e38):O(-3.4028234663852886e38);m=u==O(0)?s:u>=O(0)?O(3.4028234663852886e38):O(-3.4028234663852886e38);if(o==O(0)){f=q;break b}f=o>=O(0)?O(3.4028234663852886e38):O(-3.4028234663852886e38);break b}f=O(q+O(m*o));w=O(r+O(m*t));m=O(s+O(m*u))}F=p?o:h;G=d?t:j;M=b?u:g;C=fw?r:w;E=mq?q:f;w=rs?s:m;if(a){A=0;while(1){b=N(A,24)+n|0;g=L[b+160>>2];f=L[b+172>>2];j=O(O(g+f)*O(.5));i=O(T+O(O(f-g)*O(.5)));c:{if(!(O(j+i)>=m)|!(O(j-i)<=E)){break c}g=L[b+176>>2];f=L[b+164>>2];x=O(S+O(O(g-f)*O(.5)));k=O(O(f+g)*O(.5));h=O(r-k);j=O(s-j);g=O(O(u*h)-O(t*j));f=O(-g);if(!(O(k-x)<=D)|(!(O(O(G*i)+O(M*x))>=(f=w))){break c}g=L[b+180>>2];f=L[b+168>>2];l=O(R+O(O(g-f)*O(.5)));k=O(O(f+g)*O(.5));f=O(q-k);h=O(O(t*f)-O(o*h));g=O(-h);if(!(O(k-l)<=C)|(!(O(O(F*x)+O(G*l))>=(g=z))){break c}g=O(O(o*j)-O(u*f));f=O(-g);if(!(O(O(F*i)+O(M*l))>=(f>2]>>2]](e,X,((A<<3)+n|0)+32|0)|0)){break a}a=H[n+28>>2]}A=A+1|0;if(A>>>0>>0){continue}break}}b=1;if(!Y){break a}f=L[n+656>>2];l=O(T+L[n+672>>2]);b=1;if(!(O(f+l)>=m)){break a}b=1;if(!(O(f-l)<=E)){break a}k=L[n+660>>2];j=O(r-k);g=O(s-f);h=O(O(u*j)-O(t*g));f=O(-h);i=O(S+L[n+676>>2]);b=1;if(!(O(O(G*l)+O(M*i))>=(f=w)){break a}b=1;if(!(O(k-i)<=D)){break a}k=L[n+664>>2];f=O(q-k);h=O(O(t*f)-O(o*j));j=O(-h);x=O(F*i);i=O(R+L[n+680>>2]);b=1;if(!(O(x+O(G*i))>=(h>j?h:j))){break a}b=1;if(!(O(k+i)>=z)){break a}b=1;if(!(O(k-i)<=C)){break a}g=O(O(o*g)-O(u*f));f=O(-g);b=1;if(!(O(O(F*l)+O(M*i))>=(f>2]<<2;x=L[a+y>>2];U=L[a+(y+16|0)>>2];ga=a+c|0;g=L[ga>>2];f=L[X>>2];L[y+28>>2]=f;f=O(U+O(f*g));a=(B(O(x+(f=0?a|-2147483648:a^-1;a=(B(O((f>U?U:f)-x)),v(2));a=(a|0)>=0?a|-2147483648:a^-1;ha=H[c+4>>2]>>>30&2|H[c>>2]>>>29&4|H[c+8>>2]>>>31;ia=ha<<1;$=J[(ia+n|0)+896>>1];ja=1;d:{while(1){Z=$&7;ka=(Z<<2)+n|0;e:{if(!H[ka+688>>2]){break e}c=(Z<<5)+n|0;f=L[c+736>>2];l=O(T+L[c+752>>2]);if(!(O(f+l)>=m)|!(O(f-l)<=E)){break e}k=L[c+740>>2];j=O(r-k);g=O(s-f);h=O(O(u*j)-O(t*g));f=O(-h);i=O(S+L[c+756>>2]);if(!(O(O(G*l)+O(M*i))>=(f=w)|!(O(k-i)<=D)){break e}k=L[c+744>>2];f=O(q-k);h=O(O(t*f)-O(o*j));j=O(-h);V=O(F*i);i=O(R+L[c+760>>2]);if(!(O(V+O(G*i))>=(h>j?h:j))|!(O(k+i)>=z)|!(O(k-i)<=C)){break e}g=O(O(o*g)-O(u*f));f=O(-g);if(!(O(O(F*l)+O(M*i))>=(f>1];ca=0;while(1){d=ba&7;c=(d<<2)+aa|0;f:{if(!H[c+912>>2]){break f}p=(d<<5)+aa|0;f=L[p+960>>2];l=O(T+L[p+976>>2]);if(!(O(f+l)>=m)|!(O(f-l)<=E)){break f}k=L[p+964>>2];j=O(r-k);g=O(s-f);h=O(O(u*j)-O(t*g));f=O(-h);i=O(S+L[p+980>>2]);if(!(O(O(G*l)+O(M*i))>=(f=w)|!(O(k-i)<=D)){break f}k=L[p+968>>2];f=O(q-k);h=O(O(t*f)-O(o*j));j=O(-h);V=O(F*i);i=O(R+L[p+984>>2]);if(!(O(V+O(G*i))>=(h>j?h:j))|!(O(k+i)>=z)|!(O(k-i)<=C)){break f}g=O(O(o*g)-O(u*f));f=O(-g);if(!(O(O(F*l)+O(M*i))>=(f>2]+H[ka+708>>2]|0;la=1;da=(N(Z,1120)+n|0)+N(d,224)|0;ea=J[(da+(ha<<1)|0)+2240>>1];_=0;while(1){d=a;c=b;g:{h:{p=ea&7;a=(p<<2)+da|0;b=H[a+2032>>2];if(!b){break h}p=(p<<5)+da|0;f=L[p+2080>>2];l=O(T+L[p+2096>>2]);if(!(O(f+l)>=m)|!(O(f-l)<=E)){break h}k=L[p+2084>>2];j=O(r-k);g=O(s-f);h=O(O(u*j)-O(t*g));f=O(-h);i=O(S+L[p+2100>>2]);if(!(O(O(G*l)+O(M*i))>=(f=w)|!(O(k-i)<=D)){break h}k=L[p+2088>>2];f=O(q-k);h=O(O(t*f)-O(o*j));j=O(-h);V=O(F*i);i=O(R+L[p+2104>>2]);if(!(O(V+O(G*i))>=(h>j?h:j))|!(O(k+i)>=z)|!(O(k-i)<=C)){break h}g=O(O(o*g)-O(u*f));f=O(-g);if(!(O(O(F*l)+O(M*i))>=(f>2]+Y|0;A=H[n+24>>2]+(a<<3)|0;Q=H[n+20>>2]+(a<<5)|0;p=Q+(b<<5)|0;a=d;b=c;while(1){i:{j:{if(K[Q+28>>2]>>0){break j}if(K[Q+12>>2]>b>>>0){break g}f=L[Q>>2];l=O(T+L[Q+16>>2]);if(!(O(f+l)>=m)|!(O(f-l)<=E)){break j}k=L[Q+4>>2];j=O(r-k);g=O(s-f);h=O(O(u*j)-O(t*g));f=O(-h);i=O(S+L[Q+20>>2]);if(!(O(O(G*l)+O(M*i))>=(f=w)|!(O(k-i)<=D)){break j}k=L[Q+8>>2];f=O(q-k);h=O(O(t*f)-O(o*j));j=O(-h);V=O(F*i);i=O(R+L[Q+24>>2]);if(!(O(V+O(G*i))>=(h>j?h:j))|!(O(k+i)>=z)|!(O(k-i)<=C)){break j}g=O(O(o*g)-O(u*f));f=O(-g);if(!(O(O(F*l)+O(M*i))>=(f>2];if(!(Ra[H[H[e>>2]>>2]](e,y+28|0,A)|0)){break i}h=L[y+28>>2];if(!(h>2]));a=(B(O(x+(f=0?a|-2147483648:a^-1;a=(B(O((f>U?U:f)-x)),v(2));a=(a|0)>=0?a|-2147483648:a^-1;j=O(q+O(o*h));C=jq?q:j;w=g>r?r:g;m=f>s?s:f}A=A+8|0;Q=Q+32|0;if((p|0)!=(Q|0)){continue}break g}break}a=d;b=c;if(la){break d}break f}a=d;b=c}ea=ea>>>3|0;la=_>>>0<4;_=_+1|0;if((_|0)!=5){continue}break}}ba=ba>>>3|0;ca=ca+1|0;if((ca|0)!=5){continue}break}}$=$>>>3|0;ja=fa>>>0<4;fa=fa+1|0;if((fa|0)!=5){continue}break}L[X>>2]=L[y+28>>2]}b=!ja}Oa=y+32|0;a=b&1}return a|0}function QE(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,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;k=Oa-16|0;Oa=k;d=Oa-16|0;Oa=d;a:{b=a;f=H[b+80>>2];g=H[b+56>>2]<<1;if(f>>>0>=g>>>0){break a}a=H[b+84>>2];g=(((g+a|0)-1>>>0)/(a>>>0)|0)-H[b+68>>2]|0;H[b+80>>2]=f+N(a,g);if(!g){break a}e=b- -64|0;while(1){a=a<<3;if(a){f=H[33808];a=Ra[H[H[f+12>>2]+8>>2]](f+12|0,a,20591,13653,84)|0}else{a=0}H[d+12>>2]=a;f=H[b+68>>2];b:{if(f>>>0>=(H[b+72>>2]&2147483647)>>>0){sE(e,d+12|0);break b}H[H[b+64>>2]+(f<<2)>>2]=a;H[b+68>>2]=f+1}c=c+1|0;if((g|0)==(c|0)){break a}a=H[b+84>>2];continue}}c=H[b+288>>2];if(c){a=0;while(1){g=H[H[b+284>>2]+(a<<2)>>2];f=H[b+60>>2];e=(g>>>0)/(f>>>0)|0;f=H[H[b+40>>2]+(e<<2)>>2]+(g-N(e,f)<<4)|0;if(!(I[f+4|0]&3)){CE(b,g);G[f+4>>1]=J[f+4>>1]|1;c=H[b+288>>2]}a=a+1|0;if(c>>>0>a>>>0){continue}break}}c=H[b+300>>2];if(c){a=0;while(1){g=H[H[b+296>>2]+(a<<2)>>2];f=H[b+60>>2];e=(g>>>0)/(f>>>0)|0;f=H[H[b+40>>2]+(e<<2)>>2]+(g-N(e,f)<<4)|0;if(!(I[f+4|0]&3)){CE(b,g);G[f+4>>1]=J[f+4>>1]|1;c=H[b+300>>2]}a=a+1|0;if(c>>>0>a>>>0){continue}break}}Oa=d+16|0;a=H[b+20>>2];H[k+8>>2]=0;c=a;a=k+8|0;gy(b+180|0,c,a);c=H[b+20>>2];H[k+8>>2]=-128;vE(b+192|0,c,a);p=b+240|0;while(1){s=N(r,12)+b|0;if(H[s+288>>2]){q=0;while(1){h=H[b+40>>2];o=H[H[s+284>>2]+(q<<2)>>2];a=H[b+60>>2];c=(o>>>0)/(a>>>0)|0;c:{if(I[(H[h+(c<<2)>>2]+(o-N(a,c)<<4)|0)+4|0]&2){break c}a=H[b+448>>2];f=H[a>>2];e=o<<1;c=e|1;d=H[a+20>>2];a=(c>>>0)/(d>>>0)|0;g=H[H[f+(a<<2)>>2]+(c-N(a,d)<<2)>>2];a=-1;c=-1;i=(e>>>0)/(d>>>0)|0;f=H[H[f+(i<<2)>>2]+(e-N(d,i)<<2)>>2];e=f>>>7|0;m=(e|0)==33554431;if(!m){c=H[H[b+204>>2]+(e<<2)>>2]}l=g>>>7|0;n=(l|0)==33554431;if(!n){a=H[H[b+204>>2]+(l<<2)>>2]}d=0;i=0;i=m?i:(I[(H[b+16>>2]+N(e,24)|0)+4|0]&2)>>>1|0;d=n?d:(I[(H[b+16>>2]+N(l,24)|0)+4|0]&2)>>>1|0;j=(c|0)!=-1;if(!j&(a|0)==-1){break c}d:{e:{if((a|0)==(c|0)){a=H[b+180>>2];d=e<<2;e=a+d|0;i=H[e>>2];h=i+1|0;j=a;a=l<<2;l=j+a|0;m=H[l>>2];if(h>>>0>>0){H[l>>2]=h;H[a+H[b+192>>2]>>2]=f;break e}a=m+1|0;if(a>>>0>=i>>>0){break e}H[e>>2]=a;H[d+H[b+192>>2]>>2]=g;break e}if(!j){h=H[b+16>>2];if(!m){j=h+N(e,24)|0;if(!(I[j+4|0]&4)){m=H[b+88>>2];n=N(a,44);c=m+n|0;H[(h+N(H[c+4>>2]>>>7|0,24)|0)+8>>2]=f;H[j+12>>2]=H[c+4>>2];H[c+4>>2]=f;h=c+(I[j+5|0]<<2)|0;H[h+8>>2]=H[h+8>>2]+1;e=e<<2;H[e+H[b+204>>2]>>2]=a;h=H[b+180>>2];H[h+e>>2]=H[h+(l<<2)>>2]+1;H[e+H[b+192>>2]>>2]=g;if((d|i)!=1){c=a;break e}h=1<>2];g=a>>>5<<2;f:{if(h&H[d+g>>2]){break f}c=H[c>>2];e=c>>>7|0;if((e|0)!=33554431){while(1){ME(b,c);c=H[(H[b+16>>2]+N(e,24)|0)+8>>2];e=c>>>7|0;if((e|0)!=33554431){continue}break}m=H[b+88>>2];d=H[b+216>>2]}H[k+8>>2]=a;c=d+g|0;H[c>>2]=h|H[c>>2];c=H[b+244>>2];H[(m+n|0)+16>>2]=c;if(c>>>0>=(H[b+248>>2]&2147483647)>>>0){qm(p,k+8|0);break f}H[H[b+240>>2]+(c<<2)>>2]=H[k+8>>2];H[b+244>>2]=H[b+244>>2]+1}if(i){c=a;break e}ME(b,f);c=a;break e}if(i^1|d){c=a;break e}d=H[b+88>>2];g=N(a,44);c=H[d+g>>2];e=c>>>7|0;if((e|0)!=33554431){while(1){ME(b,c);c=H[(H[b+16>>2]+N(e,24)|0)+8>>2];e=c>>>7|0;if((e|0)!=33554431){continue}break}d=H[b+88>>2]}H[k+8>>2]=a;c=H[b+216>>2]+(a>>>3&536870908)|0;H[c>>2]=H[c>>2]|1<>2];H[(d+g|0)+16>>2]=c;if(c>>>0>=(H[b+248>>2]&2147483647)>>>0){qm(p,k+8|0);c=a;break e}H[H[b+240>>2]+(c<<2)>>2]=H[k+8>>2];H[b+244>>2]=H[b+244>>2]+1;c=a;break e}c=h+N(l,24)|0;G[c+6>>1]=J[c+6>>1]+1;c=H[b+100>>2]+(a<<2)|0;H[c>>2]=H[c>>2]+1;c=a;break e}if((a|0)==-1){j=H[b+16>>2];if(!n){n=j+N(l,24)|0;if(!(I[n+4|0]&4)){m=H[b+88>>2];t=N(c,44);a=m+t|0;H[(j+N(H[a+4>>2]>>>7|0,24)|0)+8>>2]=g;H[n+12>>2]=H[a+4>>2];H[a+4>>2]=g;j=a+(I[n+5|0]<<2)|0;H[j+8>>2]=H[j+8>>2]+1;l=l<<2;H[l+H[b+204>>2]>>2]=c;j=H[b+180>>2];H[j+l>>2]=H[j+(e<<2)>>2]+1;H[l+H[b+192>>2]>>2]=f;if((d|i)!=1){break d}h=1<>2];f=c>>>5<<2;g:{if(h&H[d+f>>2]){break g}e=H[a>>2];a=e>>>7|0;if((a|0)!=33554431){while(1){ME(b,e);e=H[(H[b+16>>2]+N(a,24)|0)+8>>2];a=e>>>7|0;if((a|0)!=33554431){continue}break}m=H[b+88>>2];d=H[b+216>>2]}H[k+8>>2]=c;a=d+f|0;H[a>>2]=h|H[a>>2];a=H[b+244>>2];H[(m+t|0)+16>>2]=a;if(a>>>0>=(H[b+248>>2]&2147483647)>>>0){qm(p,k+8|0);break g}H[H[b+240>>2]+(a<<2)>>2]=H[k+8>>2];H[b+244>>2]=H[b+244>>2]+1}if(i){break e}ME(b,g);break e}if(!d|i){break d}d=H[b+88>>2];g=N(c,44);e=H[d+g>>2];a=e>>>7|0;if((a|0)!=33554431){while(1){ME(b,e);e=H[(H[b+16>>2]+N(a,24)|0)+8>>2];a=e>>>7|0;if((a|0)!=33554431){continue}break}d=H[b+88>>2]}H[k+8>>2]=c;a=H[b+216>>2]+(c>>>3&536870908)|0;H[a>>2]=H[a>>2]|1<>2];H[(d+g|0)+16>>2]=a;if(a>>>0>=(H[b+248>>2]&2147483647)>>>0){qm(p,k+8|0);break e}H[H[b+240>>2]+(a<<2)>>2]=H[k+8>>2];H[b+244>>2]=H[b+244>>2]+1;break e}a=j+N(e,24)|0;G[a+6>>1]=J[a+6>>1]+1;a=H[b+100>>2]+(c<<2)|0;H[a>>2]=H[a>>2]+1;break d}h:{if((d|i)!=1){break h}m=1<>2];l=c>>>5<<2;i:{if(m&H[h+l>>2]){break i}i=H[b+88>>2];j=N(c,44);e=H[i+j>>2];d=e>>>7|0;if((d|0)!=33554431){while(1){ME(b,e);e=H[(H[b+16>>2]+N(d,24)|0)+8>>2];d=e>>>7|0;if((d|0)!=33554431){continue}break}h=H[b+216>>2];i=H[b+88>>2]}H[k+8>>2]=c;d=h+l|0;H[d>>2]=m|H[d>>2];d=H[b+244>>2];H[(i+j|0)+16>>2]=d;if(d>>>0>=(H[b+248>>2]&2147483647)>>>0){qm(p,k+8|0);h=H[b+216>>2];break i}H[H[b+240>>2]+(d<<2)>>2]=H[k+8>>2];H[b+244>>2]=H[b+244>>2]+1}m=1<>>5<<2;if(m&H[l+h>>2]){break h}i=H[b+88>>2];j=N(a,44);e=H[i+j>>2];d=e>>>7|0;if((d|0)!=33554431){while(1){ME(b,e);e=H[(H[b+16>>2]+N(d,24)|0)+8>>2];d=e>>>7|0;if((d|0)!=33554431){continue}break}h=H[b+216>>2];i=H[b+88>>2]}H[k+8>>2]=a;d=h+l|0;H[d>>2]=m|H[d>>2];d=H[b+244>>2];H[(i+j|0)+16>>2]=d;if(d>>>0>=(H[b+248>>2]&2147483647)>>>0){qm(p,k+8|0);break h}H[H[b+240>>2]+(d<<2)>>2]=H[k+8>>2];H[b+244>>2]=H[b+244>>2]+1}e=Oa-16|0;Oa=e;d=a;j:{k:{h=H[b+88>>2];i=h+N(c,44)|0;a=h+N(a,44)|0;if(H[i+12>>2]+H[i+8>>2]>>>0>H[a+12>>2]+H[a+8>>2]>>>0){RE(b,i,a,c,d,f,g);a=H[b+216>>2]+(d>>>3&536870908)|0;i=H[a>>2];u=a,v=j7(-2,d)&i,H[u>>2]=v;H[e+8>>2]=d;if(H[b+12>>2]==(d|0)){H[b+12>>2]=d-1;break k}a=H[b+4>>2];if(a>>>0>=(H[b+8>>2]&2147483647)>>>0){qm(b,e+8|0);break k}H[H[b>>2]+(a<<2)>>2]=d;H[b+4>>2]=H[b+4>>2]+1;break k}RE(b,a,i,d,c,g,f);a=H[b+216>>2]+(c>>>3&536870908)|0;i=H[a>>2];u=a,v=j7(-2,c)&i,H[u>>2]=v;H[e+12>>2]=c;l:{if(H[b+12>>2]==(c|0)){H[b+12>>2]=c-1;break l}a=H[b+4>>2];if(a>>>0>=(H[b+8>>2]&2147483647)>>>0){qm(b,e+12|0);break l}H[H[b>>2]+(a<<2)>>2]=c;H[b+4>>2]=H[b+4>>2]+1}a=f;break j}a=g;g=f;d=c}H[H[b+192>>2]+(a>>>5&134217724)>>2]=g;Oa=e+16|0;c=d}if((c|0)==-1){break c}h=H[b+40>>2]}d=H[b+88>>2]+N(c,44)|0;c=H[b+60>>2];a=(o>>>0)/(c>>>0)|0;g=H[(a<<2)+h>>2]+(o-N(a,c)<<4)|0;a=d+(H[g>>2]<<2)|0;d=H[a+28>>2];m:{if((d|0)!=-1){f=(d>>>0)/(c>>>0)|0;H[(H[(f<<2)+h>>2]+(d-N(c,f)<<4)|0)+8>>2]=o;c=H[a+28>>2];break m}H[a+20>>2]=o;c=-1}H[g+12>>2]=c;H[a+28>>2]=o;H[a+36>>2]=H[a+36>>2]+1}q=q+1|0;if(q>>>0>2]){continue}break}}r=r+1|0;if((r|0)!=2){continue}break}Oa=k+16|0}function ip(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,q=0,r=0,s=0,t=0,u=0,v=0,w=0;m=Oa-560|0;Oa=m;k=H[a+5936>>2]+31>>>5|0;j=a+32|0;if(k>>>0>(H[j+2436>>2]&2147483647)>>>0){g=H[33808]+12|0;f=Ra[H[H[g>>2]+8>>2]](g,k<<2,20591,14905,438)|0;g=H[j+2432>>2];a:{if(!g){break a}R6(f,g,H[j+2436>>2]<<2);if(H[j+2436>>2]<0){break a}e=H[j+2432>>2];if(!e){break a}g=H[33808]+12|0;Ra[H[H[g>>2]+12>>2]](g,e)}g=H[j+2436>>2];S6(f+(g<<2)|0,0,k-g<<2);H[j+2436>>2]=k;H[j+2432>>2]=f}h=H[j+2372>>2];if(k>>>0>(H[h+24>>2]&2147483647)>>>0){g=H[33808]+12|0;f=Ra[H[H[g>>2]+8>>2]](g,k<<2,20591,14905,438)|0;g=H[h+20>>2];b:{if(!g){break b}R6(f,g,H[h+24>>2]<<2);if(H[h+24>>2]<0){break b}e=H[h+20>>2];if(!e){break b}g=H[33808]+12|0;Ra[H[H[g>>2]+12>>2]](g,e)}g=H[h+24>>2];S6(f+(g<<2)|0,0,k-g<<2);H[h+24>>2]=k;H[h+20>>2]=f}t=c;if((H[h+40>>2]&2147483647)>>>0>>0){Dv(h+32|0,t)}f=H[j+2368>>2];if(k>>>0>(H[f+24>>2]&2147483647)>>>0){c=H[33808]+12|0;e=Ra[H[H[c>>2]+8>>2]](c,k<<2,20591,14905,438)|0;c=H[f+20>>2];c:{if(!c){break c}R6(e,c,H[f+24>>2]<<2);if(H[f+24>>2]<0){break c}g=H[f+20>>2];if(!g){break c}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,g)}c=H[f+24>>2];S6(e+(c<<2)|0,0,k-c<<2);H[f+24>>2]=k;H[f+20>>2]=e}if(t>>>0>(H[f+40>>2]&2147483647)>>>0){Dv(f+32|0,t)}H[m+552>>2]=0;H[m+556>>2]=64;H[m+548>>2]=m+288;F[m+544|0]=1;F[m+272|0]=1;H[m+280>>2]=0;H[m+284>>2]=64;c=m+16|0;H[m+276>>2]=c;H[a+2448>>2]=c;d:{if(!t){break d}v=a+5584|0;w=a+16|0;while(1){k=u;u=k+1|0;e:{if(t>>>0<=u>>>0){break e}l=0;g=0;e=0;i=H[(u<<2)+b>>2];c=i;f=c+319|0;e=f>>>0<319?1:e;f=(e&63)<<26|f>>>6;c=c>>>6|0;e=(e>>>6|0)-(c>>>0>f>>>0)|0;q=f-c|0;j=e;c=q+1|0;e=c?e:e+1|0;f=c;c=0;o=c;p=f&7;if(c|p){while(1){c=f;f=c-1|0;e=e-!c|0;i=i- -64|0;c=l+1|0;h=c?g:g+1|0;l=c;g=h;if((p|0)!=(c|0)|(o|0)!=(g|0)){continue}break}}if(!j&q>>>0<7){break e}while(1){i=i+512|0;e=e-(f>>>0<8)|0;f=f-8|0;if(e|f){continue}break}}n=H[(k<<2)+b>>2];c=J[n+4>>1];if((Ra[H[H[n>>2]+28>>2]](n)|0)!=(a|0)){b=H[33808];H[m>>2]=3805;o5(b,8,9281,79,64859,m);break d}H[m+552>>2]=0;H[m+280>>2]=0;f:{g:{h:{i:{switch(c-5|0){case 1:r=n+48|0;c=H[n+52>>2];o=c&1?H[n+56>>2]:(r+H[((c>>>22&60)+76348|0)+12>>2]|0)+8|0;s=n+20|0;c=J[n+24>>1];j:{if(!c){break j}l=0;g=0;e=0;i=H[((c|0)==1?s:H[s>>2])>>2];c=i;f=c+207|0;e=f>>>0<207?1:e;f=(e&63)<<26|f>>>6;c=c>>>6|0;e=(e>>>6|0)-(c>>>0>f>>>0)|0;q=f-c|0;j=e;c=q+1|0;e=c?e:e+1|0;f=c;c=0;p=c;k=f&7;if(c|k){while(1){c=f;f=c-1|0;e=e-!c|0;i=i- -64|0;c=l+1|0;h=c?g:g+1|0;l=c;g=h;if((k|0)!=(c|0)|(p|0)!=(g|0)){continue}break}}if(!j&q>>>0<7){break j}while(1){i=i+512|0;e=e-(f>>>0<8)|0;f=f-8|0;if(e|f){continue}break}}q=I[o|0];l=0;g=0;j=H[n- -64>>2];k:{if(!j){break k}e=0;c=j+51|0;e=c>>>0<51?1:e;h=e>>>6|0;e=(e&63)<<26|c>>>6;f=j>>>6|0;c=h-(f>>>0>e>>>0)|0;i=e-f|0;k=c;e=c;c=i+1|0;e=c?e:e+1|0;f=c;c=0;o=c;p=f&7;l:{if(!(c|p)){c=j;break l}c=j;while(1){h=f;f=f-1|0;e=e-!h|0;c=c- -64|0;h=g;g=l+1|0;h=g?h:h+1|0;l=g;g=h;if((p|0)!=(l|0)|(o|0)!=(g|0)){continue}break}}if(!k&i>>>0>=7|k){while(1){c=c+512|0;e=e-(f>>>0<8)|0;f=f-8|0;if(e|f){continue}break}}e=0;c=H[j+32>>2];f=c+11|0;e=f>>>0<11?1:e;f=(e&63)<<26|f>>>6;g=c>>>6|0;e=(e>>>6|0)-(g>>>0>f>>>0)|0;o=f-g|0;j=e;g=o+1|0;e=g?e:e+1|0;f=g;g=0;p=g;k=f&7;if(g|k){l=0;while(1){h=f;f=f-1|0;e=e-!h|0;c=c- -64|0;h=g;g=l+1|0;h=g?h:h+1|0;l=g;g=h;if((k|0)!=(l|0)|(p|0)!=(g|0)){continue}break}}if(!j&o>>>0<7){break k}while(1){c=c+512|0;e=e-(f>>>0<8)|0;f=f-8|0;if(e|f){continue}break}}l=0;g=0;e=0;i=H[(H[a+5932>>2]+(H[a+5936>>2]<<2)|0)-4>>2];c=i;f=c+319|0;e=f>>>0<319?1:e;h=e>>>6|0;e=(e&63)<<26|f>>>6;f=c>>>6|0;c=h-(f>>>0>e>>>0)|0;o=e-f|0;j=c;e=c;c=o+1|0;e=c?e:e+1|0;f=c;c=0;p=c;k=f&7;if(c|k){while(1){c=f;f=c-1|0;e=e-!c|0;i=i- -64|0;c=l+1|0;h=c?g:g+1|0;l=c;g=h;if((k|0)!=(c|0)|(p|0)!=(g|0)){continue}break}}if(!j&o>>>0>=7|j){while(1){i=i+512|0;e=e-(f>>>0<8)|0;f=f-8|0;if(e|f){continue}break}}if(!(q&8)){pg(n+12|0)}lt(s,v,n);Ft(w,r,d,(I[(r+H[((H[n+52>>2]>>>22&60)+76348|0)+12>>2]|0)+8|0]&8)>>>3|0);i=H[n+44>>2];e=H[a+5936>>2]-1|0;H[a+5936>>2]=e;g=H[a+5932>>2];c=i<<2;H[g+c>>2]=H[g+(e<<2)>>2];if(!e|(e|0)==(i|0)){break g}c=H[c+H[a+5932>>2]>>2];if(Ra[H[H[c>>2]+24>>2]](c)>>>0<2){break h}break g;case 0:break i;default:break f}}r=n+48|0;c=H[n+52>>2];o=c&1?H[n+56>>2]:(r+H[((c>>>22&60)+76348|0)+12>>2]|0)+8|0;s=n+20|0;c=J[n+24>>1];m:{if(!c){break m}l=0;g=0;e=0;i=H[((c|0)==1?s:H[s>>2])>>2];c=i;f=c+207|0;e=f>>>0<207?1:e;f=(e&63)<<26|f>>>6;c=c>>>6|0;e=(e>>>6|0)-(c>>>0>f>>>0)|0;q=f-c|0;j=e;c=q+1|0;e=c?e:e+1|0;f=c;c=0;p=c;k=f&7;if(c|k){while(1){c=f;f=c-1|0;e=e-!c|0;i=i- -64|0;c=l+1|0;h=c?g:g+1|0;l=c;g=h;if((k|0)!=(c|0)|(p|0)!=(g|0)){continue}break}}if(!j&q>>>0<7){break m}while(1){i=i+512|0;e=e-(f>>>0<8)|0;f=f-8|0;if(e|f){continue}break}}q=I[o|0];l=0;g=0;j=H[n- -64>>2];n:{if(!j){break n}e=0;c=j+175|0;e=c>>>0<175?1:e;h=e>>>6|0;e=(e&63)<<26|c>>>6;f=j>>>6|0;c=h-(f>>>0>e>>>0)|0;i=e-f|0;k=c;e=c;c=i+1|0;e=c?e:e+1|0;f=c;c=0;o=c;p=f&7;o:{if(!(c|p)){c=j;break o}c=j;while(1){h=f;f=f-1|0;e=e-!h|0;c=c- -64|0;h=g;g=l+1|0;h=g?h:h+1|0;l=g;g=h;if((p|0)!=(l|0)|(o|0)!=(g|0)){continue}break}}if(!k&i>>>0>=7|k){while(1){c=c+512|0;e=e-(f>>>0<8)|0;f=f-8|0;if(e|f){continue}break}}e=0;c=H[j+32>>2];f=c+11|0;e=f>>>0<11?1:e;f=(e&63)<<26|f>>>6;g=c>>>6|0;e=(e>>>6|0)-(g>>>0>f>>>0)|0;o=f-g|0;j=e;g=o+1|0;e=g?e:e+1|0;f=g;g=0;p=g;k=f&7;if(g|k){l=0;while(1){h=f;f=f-1|0;e=e-!h|0;c=c- -64|0;h=g;g=l+1|0;h=g?h:h+1|0;l=g;g=h;if((k|0)!=(l|0)|(p|0)!=(g|0)){continue}break}}if(!j&o>>>0<7){break n}while(1){c=c+512|0;e=e-(f>>>0<8)|0;f=f-8|0;if(e|f){continue}break}}l=0;g=0;e=0;i=H[(H[a+5932>>2]+(H[a+5936>>2]<<2)|0)-4>>2];c=i;f=c+319|0;e=f>>>0<319?1:e;h=e>>>6|0;e=(e&63)<<26|f>>>6;f=c>>>6|0;c=h-(f>>>0>e>>>0)|0;o=e-f|0;j=c;e=c;c=o+1|0;e=c?e:e+1|0;f=c;c=0;p=c;k=f&7;if(c|k){while(1){c=f;f=c-1|0;e=e-!c|0;i=i- -64|0;c=l+1|0;h=c?g:g+1|0;l=c;g=h;if((k|0)!=(c|0)|(p|0)!=(g|0)){continue}break}}if(!j&o>>>0>=7|j){while(1){i=i+512|0;e=e-(f>>>0<8)|0;f=f-8|0;if(e|f){continue}break}}if(!(q&8)){pg(n+12|0)}lt(s,v,n);It(w,r,d,(I[(r+H[((H[n+52>>2]>>>22&60)+76348|0)+12>>2]|0)+8|0]&8)>>>3|0);i=H[n+44>>2];e=H[a+5936>>2]-1|0;H[a+5936>>2]=e;g=H[a+5932>>2];c=i<<2;H[g+c>>2]=H[g+(e<<2)>>2];if(!e|(e|0)==(i|0)){break g}c=H[c+H[a+5932>>2]>>2];if(Ra[H[H[c>>2]+24>>2]](c)>>>0>=2){break g}}H[c+44>>2]=i}if((t|0)!=(u|0)){continue}break d}break}o5(H[33808],2,9281,651,18618,0)}H[a+2448>>2]=0;a=H[m+556>>2];p:{if((a|0)<0|!(a&2147483647)){break p}b=H[m+548>>2];if((b|0)==(m+288|0)){F[m+544|0]=0;break p}if(!b){break p}a=H[33808];Ra[H[H[a+12>>2]+12>>2]](a+12|0,b)}a=H[m+284>>2];q:{if((a|0)<0|!(a&2147483647)){break q}b=H[m+276>>2];if((b|0)==(m+16|0)|!b){break q}a=H[33808];Ra[H[H[a+12>>2]+12>>2]](a+12|0,b)}Oa=m+560|0}function MW(a,b,c,d,e,f,g,h,i,j){var k=0,l=0,m=O(0),n=O(0),o=0,p=O(0),q=O(0),r=O(0),s=0,t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=0,C=O(0),D=O(0),E=O(0),G=O(0),J=O(0),K=O(0),M=O(0),N=O(0),P=O(0),Q=O(0),S=O(0),T=O(0),U=O(0),V=O(0),X=O(0),Y=O(0),Z=O(0),_=O(0),$=O(0),aa=O(0),ba=O(0),ca=O(0),da=0,ea=O(0);l=Oa-208|0;Oa=l;k=Oa-272|0;Oa=k;H[k+264>>2]=0;H[k+268>>2]=0;H[k+256>>2]=0;H[k+260>>2]=0;C=L[d+8>>2];D=L[d+4>>2];E=L[d>>2];A=L[e+8>>2];y=L[e+4>>2];x=L[e>>2];H[k+240>>2]=1;B=H[b+4>>2];u=L[B+52>>2];v=L[B+56>>2];s=H[a+4>>2];p=L[s+56>>2];t=L[s+52>>2];q=L[s+72>>2];w=L[s+68>>2];S=L[B+48>>2];T=L[s+48>>2];U=L[s+64>>2];m=L[c+8>>2];n=L[c>>2];r=L[c+4>>2];H[k+196>>2]=0;H[k+200>>2]=0;H[k+204>>2]=0;H[k+208>>2]=0;H[k+212>>2]=0;H[k+216>>2]=0;H[k+220>>2]=0;H[k+224>>2]=0;H[k+228>>2]=0;H[k+232>>2]=0;H[k+236>>2]=0;H[k+188>>2]=0;H[k+192>>2]=0;s=O(O(m*m)+O(O(n*n)+O(r*r)))>O(1.1920928955078125e-7);n=s?n:O(1);G=n;m=s?m:O(0);X=O(n*n);n=s?r:O(0);r=O(O(1)/O(W(O(O(m*m)+O(X+O(n*n))))));z=O(G*r);K=O(-z);n=O(n*r);m=O(m*r);s=O(O(O(T*K)-O(t*n))-O(p*m))>O(O(O(U*K)-O(w*n))-O(q*m));r=s?p:q;m=m>O(0)?v:O(-v);p=O(r-m);L[k+184>>2]=p;v=s?t:w;n=n>O(0)?u:O(-u);t=O(v-n);L[k+180>>2]=t;u=s?T:U;w=z>O(0)?S:O(-S);q=O(u-w);L[k+176>>2]=q;H[k+132>>2]=0;H[k+136>>2]=0;H[k+140>>2]=0;H[k+144>>2]=0;H[k+148>>2]=0;H[k+152>>2]=0;H[k+156>>2]=0;H[k+160>>2]=0;H[k+164>>2]=0;H[k+168>>2]=0;H[k+172>>2]=0;H[k+124>>2]=0;H[k+128>>2]=0;L[k+120>>2]=r;L[k+116>>2]=v;L[k+112>>2]=u;H[k+68>>2]=0;H[k+72>>2]=0;H[k+76>>2]=0;H[k+80>>2]=0;H[k+84>>2]=0;H[k+88>>2]=0;H[k+92>>2]=0;H[k+96>>2]=0;H[k+100>>2]=0;H[k+104>>2]=0;H[k+108>>2]=0;H[k+60>>2]=0;H[k+64>>2]=0;L[k+56>>2]=m;L[k+52>>2]=n;L[k+48>>2]=w;m=O(-p);n=O(-t);r=O(-q);w=O(O(p*p)+O(O(q*q)+O(t*t)));u=L[B+24>>2];u=O((uZ)){u=r;v=n;i=m;S=q;T=t;U=p;break b}K=O(u+i);ea=O(K*K);E=O(O(x*O(0))+E);D=O(O(y*O(0))+D);C=O(O(A*O(0))+C);i=m;v=n;u=r;while(1){S=q;T=t;U=p;q=O(O(1)/O(W(O(O(m*m)+O(O(r*r)+O(n*n))))));p=O(r*q);o=H[a+4>>2];A=L[o+48>>2];z=L[o+56>>2];t=O(m*q);q=O(n*q);x=L[o+52>>2];M=L[o+72>>2];y=L[o+64>>2];N=L[o+68>>2];o=O(O(z*t)+O(O(A*p)+O(q*x)))>O(O(M*t)+O(O(y*p)+O(q*N)));Y=o?A:y;s=H[b+4>>2];A=L[s+48>>2];A=p>2];_=q>2];$=tO(0)){o=0;ba=L[e+8>>2];X=O(t*ba);t=L[e>>2];G=q;q=L[e+4>>2];G=O(X+O(O(p*t)+O(G*q)));if(G>=O(0)){break a}p=J;J=O(p-O(aa/G));if(J>p){if(J>O(1)){break a}v=L[d+8>>2];u=L[d+4>>2];i=L[d>>2];H[k+92>>2]=0;H[k+76>>2]=0;H[k+60>>2]=0;p=O(i+O(t*J));i=O(p-E);w=O(i+L[k+80>>2]);L[k+80>>2]=w;t=O(u+O(q*J));u=O(t-D);E=O(u+L[k+84>>2]);L[k+84>>2]=E;q=O(v+O(ba*J));v=O(q-C);D=O(v+L[k+88>>2]);L[k+88>>2]=D;C=O(i+L[k+64>>2]);L[k+64>>2]=C;y=O(u+L[k+68>>2]);L[k+68>>2]=y;x=O(v+L[k+72>>2]);L[k+72>>2]=x;i=O(i+L[k+48>>2]);L[k+48>>2]=i;u=O(u+L[k+52>>2]);L[k+52>>2]=u;v=O(v+L[k+56>>2]);L[k+56>>2]=v;z=L[k+112>>2];P=L[k+116>>2];Q=L[k+120>>2];H[k+188>>2]=0;L[k+184>>2]=Q-v;L[k+180>>2]=P-u;L[k+176>>2]=z-i;i=L[k+128>>2];u=L[k+132>>2];v=L[k+136>>2];H[k+204>>2]=0;L[k+200>>2]=v-x;L[k+196>>2]=u-y;L[k+192>>2]=i-C;i=L[k+144>>2];u=L[k+148>>2];v=L[k+152>>2];H[k+220>>2]=0;L[k+216>>2]=v-D;L[k+212>>2]=u-E;L[k+208>>2]=i-w;V=O($+q);z=O(M-V);Q=O(_+t);x=O(N-Q);P=O(A+p);y=O(Y-P);u=r;v=n;i=m;E=p;D=t;C=q;p=O(3.4028234663852886e38)}else{p=w}}else{p=w}A=p;s=H[k+240>>2];B=s<<4;o=B+(k+112|0)|0;H[o+12>>2]=0;L[o+8>>2]=M;L[o+4>>2]=N;L[o>>2]=Y;o=B+(k+48|0)|0;H[o+12>>2]=0;L[o+8>>2]=V;L[o+4>>2]=Q;L[o>>2]=P;o=B+(k+176|0)|0;H[o+12>>2]=0;L[o+8>>2]=z;L[o+4>>2]=x;L[o>>2]=y;H[k+240>>2]=s+1;c:{d:{switch(s-1|0){case 0:p=L[k+184>>2];m=O(L[k+200>>2]-p);t=L[k+176>>2];n=O(L[k+192>>2]-t);q=L[k+180>>2];r=O(L[k+196>>2]-q);w=O(O(m*m)+O(O(n*n)+O(r*r)));if(w<=O(1.1920928955078125e-7)){H[k+240>>2]=1;o=H[k+180>>2];H[k+32>>2]=H[k+176>>2];H[k+36>>2]=o;o=H[k+188>>2];H[k+40>>2]=H[k+184>>2];H[k+44>>2]=o;break c}G=m;m=O(R(O(O(O(O(O(-t)*n)-O(r*q))-O(p*m))/w),O(1)));m=m>O(0)?m:O(0);L[k+40>>2]=p+O(G*m);L[k+36>>2]=q+O(r*m);L[k+32>>2]=t+O(n*m);break c;case 1:GU(k+32|0,k+176|0,k+112|0,k+48|0,k+240|0);break c;case 2:BZ(k+32|0,k+176|0,k+112|0,k+48|0,k+240|0);break c;default:break d}}L[k+40>>2]=z;L[k+36>>2]=x;L[k+32>>2]=y}p=L[k+40>>2];m=O(-p);t=L[k+36>>2];n=O(-t);q=L[k+32>>2];r=O(-q);w=O(O(p*p)+O(O(q*q)+O(t*t)));if(ea>2]+32|0];y=O(0);x=O(0);s=!(w>Z)|o;i=s?i:m;m=s?u:r;n=s?v:n;r=O(W(O(O(i*i)+O(O(m*m)+O(n*n)))));if(!(r<=O(1.1920928955078125e-7))){v=i;i=O(O(1)/r);ca=O(v*i);x=O(m*i);y=O(n*i)}H[l+188>>2]=0;L[l+184>>2]=-ca;L[l+180>>2]=-y;L[l+176>>2]=-x;L[l+160>>2]=J;H[l+172>>2]=H[k+252>>2];s=H[k+248>>2];H[l+164>>2]=H[k+244>>2];H[l+168>>2]=s;H[k+44>>2]=0;L[k+40>>2]=o?U:p;L[k+36>>2]=o?T:t;L[k+32>>2]=o?S:q;o=H[k+268>>2];B=H[k+264>>2];H[k+24>>2]=B;H[k+28>>2]=o;s=H[k+260>>2];da=H[k+256>>2];H[k+16>>2]=da;H[k+20>>2]=s;H[k+8>>2]=B;H[k+12>>2]=o;H[k>>2]=da;H[k+4>>2]=s;FU(k+176|0,k+112|0,k+48|0,k+32|0,k+16|0,k,H[k+240>>2]);i=L[H[a+4>>2]+16>>2];m=L[k+16>>2];n=L[k+20>>2];r=L[k+24>>2];H[l+204>>2]=0;L[l+200>>2]=r+(d?O(ca*i):O(-0));L[l+196>>2]=n+(d?O(y*i):O(-0));L[l+192>>2]=m+(d?O(x*i):O(-0));o=1}Oa=k+272|0;if(o){d=H[l+164>>2];H[f>>2]=H[l+160>>2];H[f+4>>2]=d;d=H[l+172>>2];H[f+8>>2]=H[l+168>>2];H[f+12>>2]=d;if(!(!j|L[l+160>>2]!=O(0))){d=H[a+4>>2];j=H[b+4>>2];L[l+144>>2]=O(L[d+16>>2]+L[j+16>>2])*O(100);F[l+135|0]=0;H[l+88>>2]=0;H[l+92>>2]=0;H[l+80>>2]=0;H[l+84>>2]=0;H[l+72>>2]=0;H[l+76>>2]=0;k=l- -64|0;H[k>>2]=0;H[k+4>>2]=0;H[l+56>>2]=0;H[l+60>>2]=0;H[l+48>>2]=0;H[l+52>>2]=0;H[l+112>>2]=0;H[l+40>>2]=125948;H[l+44>>2]=d;H[l+32>>2]=126608;H[l+36>>2]=j;e:{f:{if(NW(l+40|0,l+32|0,c,l+144|0,0,l+140|0,l+136|0,l+135|0,l+48|0)-5|0){break f}H[l+16>>2]=1065353216;c=H[l+28>>2];H[l+8>>2]=H[l+24>>2];H[l+12>>2]=c;c=H[l+20>>2];H[l>>2]=H[l+16>>2];H[l+4>>2]=c;if(wZ(a,b,l+140|0,l+136|0,I[l+135|0],0,l,l+48|0)-5>>>0<=1){break f}H[l+200>>2]=0;H[l+204>>2]=0;H[l+192>>2]=0;H[l+196>>2]=0;i=L[e+8>>2];m=L[e>>2];n=L[e+4>>2];H[l+188>>2]=0;r=O(O(1)/O(W(O(O(i*i)+O(O(m*m)+O(n*n))))));L[l+184>>2]=r*O(-i);L[l+180>>2]=r*O(-n);L[l+176>>2]=r*O(-m);i=O(0);break e}a=H[l+60>>2];H[l+200>>2]=H[l+56>>2];H[l+204>>2]=a;a=H[l+52>>2];H[l+192>>2]=H[l+48>>2];H[l+196>>2]=a;a=H[l+84>>2];H[l+176>>2]=H[l+80>>2];H[l+180>>2]=a;a=H[l+92>>2];H[l+184>>2]=H[l+88>>2];H[l+188>>2]=a;i=L[l+112>>2]}L[f>>2]=i>2];H[h>>2]=H[l+192>>2];H[h+4>>2]=a;a=H[l+204>>2];H[h+8>>2]=H[l+200>>2];H[h+12>>2]=a;a=H[l+180>>2];H[g>>2]=H[l+176>>2];H[g+4>>2]=a;a=H[l+188>>2];H[g+8>>2]=H[l+184>>2];H[g+12>>2]=a}Oa=l+208|0;return o}function xT(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=O(0),i=0,j=0,k=0,l=O(0),m=0,n=0,o=O(0),p=O(0),q=O(0),r=O(0),s=0,t=0,u=0,v=O(0),w=O(0),x=O(0),y=0,z=0,A=0,B=0,C=0,D=0;d=Oa-80|0;Oa=d;n=-1;a:{b:{c:{switch(H[b>>2]-2|0){case 1:n=tT(a+28|0,H[a+8>>2]<<16|4);H[d+8>>2]=n;c=H[b+12>>2];H[d+24>>2]=H[b+8>>2];H[d+28>>2]=c;c=H[b+20>>2];H[d+32>>2]=H[b+16>>2];H[d+36>>2]=c;c=H[b+28>>2];H[d+40>>2]=H[b+24>>2];H[d+44>>2]=c;c=H[b+4>>2];H[d+16>>2]=H[b>>2];H[d+20>>2]=c;L[d+48>>2]=L[b+32>>2];L[d+52>>2]=L[b+36>>2];L[d+56>>2]=L[b+40>>2];L[d+60>>2]=L[b+44>>2];L[d- -64>>2]=L[b+48>>2];L[d+68>>2]=L[b+52>>2];L[d+72>>2]=L[b+56>>2];b=H[a+8>>2];if(b>>>0>=(H[a+12>>2]&2147483647)>>>0){f=d+8|0;b=H[a+12>>2]&2147483647;s=b?b<<1:1;d:{if(!s){break d}c=N(s,72);if(!c){break d}e=H[33808];b=Ra[H[H[e>>2]+20>>2]](e)|0?38226:55639;e=Ra[H[H[e+12>>2]+8>>2]](e+12|0,c,b,13582,553)|0}b=H[a+8>>2];if((b|0)>0){k=N(b,72)+e|0;c=H[a+4>>2];b=e;while(1){H[b>>2]=H[c>>2];g=H[c+12>>2];H[b+8>>2]=H[c+8>>2];H[b+12>>2]=g;g=H[c+20>>2];H[b+16>>2]=H[c+16>>2];H[b+20>>2]=g;g=H[c+28>>2];H[b+24>>2]=H[c+24>>2];H[b+28>>2]=g;g=H[c+36>>2];H[b+32>>2]=H[c+32>>2];H[b+36>>2]=g;L[b+40>>2]=L[c+40>>2];L[b+44>>2]=L[c+44>>2];L[b+48>>2]=L[c+48>>2];L[b+52>>2]=L[c+52>>2];L[b+56>>2]=L[c+56>>2];L[b+60>>2]=L[c+60>>2];L[b- -64>>2]=L[c- -64>>2];c=c+72|0;b=b+72|0;if(k>>>0>b>>>0){continue}break}b=H[a+8>>2]}c=N(b,72)+e|0;H[c>>2]=H[f>>2];b=H[f+12>>2];H[c+8>>2]=H[f+8>>2];H[c+12>>2]=b;b=H[f+20>>2];H[c+16>>2]=H[f+16>>2];H[c+20>>2]=b;b=H[f+28>>2];H[c+24>>2]=H[f+24>>2];H[c+28>>2]=b;b=H[f+36>>2];H[c+32>>2]=H[f+32>>2];H[c+36>>2]=b;L[c+40>>2]=L[f+40>>2];L[c+44>>2]=L[f+44>>2];L[c+48>>2]=L[f+48>>2];L[c+52>>2]=L[f+52>>2];L[c+56>>2]=L[f+56>>2];L[c+60>>2]=L[f+60>>2];L[c- -64>>2]=L[f- -64>>2];e:{if(H[a+12>>2]<0){break e}c=H[a+4>>2];if(!c){break e}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,c)}H[a+12>>2]=s;H[a+4>>2]=e;H[a+8>>2]=H[a+8>>2]+1;break b}e=H[a+4>>2]+N(b,72)|0;H[e>>2]=n;b=H[d+20>>2];H[e+8>>2]=H[d+16>>2];H[e+12>>2]=b;b=H[d+28>>2];H[e+16>>2]=H[d+24>>2];H[e+20>>2]=b;b=H[d+36>>2];H[e+24>>2]=H[d+32>>2];H[e+28>>2]=b;b=H[d+44>>2];H[e+32>>2]=H[d+40>>2];H[e+36>>2]=b;L[e+40>>2]=L[d+48>>2];L[e+44>>2]=L[d+52>>2];L[e+48>>2]=L[d+56>>2];L[e+52>>2]=L[d+60>>2];L[e+56>>2]=L[d+64>>2];L[e+60>>2]=L[d+68>>2];L[e- -64>>2]=L[d+72>>2];H[a+8>>2]=H[a+8>>2]+1;break b;case 0:break c;default:break a}}n=tT(a+28|0,H[a+20>>2]<<16|3);H[d+8>>2]=n;c=H[b+12>>2];H[d+24>>2]=H[b+8>>2];H[d+28>>2]=c;c=H[b+20>>2];H[d+32>>2]=H[b+16>>2];H[d+36>>2]=c;c=H[b+28>>2];H[d+40>>2]=H[b+24>>2];H[d+44>>2]=c;c=H[b+4>>2];H[d+16>>2]=H[b>>2];H[d+20>>2]=c;L[d+48>>2]=L[b+32>>2];L[d+52>>2]=L[b+36>>2];L[d+56>>2]=L[b+40>>2];L[d+60>>2]=L[b+44>>2];c=H[b+52>>2];f=d- -64|0;H[f>>2]=H[b+48>>2];H[f+4>>2]=c;b=H[a+20>>2];if(b>>>0>=(H[a+24>>2]&2147483647)>>>0){b=H[a+24>>2]&2147483647;k=b?b<<1:1;f:{if(!k){break f}c=k<<6;if(!c){break f}e=H[33808];b=Ra[H[H[e>>2]+20>>2]](e)|0?38396:55639;e=Ra[H[H[e+12>>2]+8>>2]](e+12|0,c,b,13582,553)|0}b=H[a+20>>2];if((b|0)>0){g=(b<<6)+e|0;c=H[a+16>>2];b=e;while(1){H[b>>2]=H[c>>2];f=H[c+12>>2];H[b+8>>2]=H[c+8>>2];H[b+12>>2]=f;f=H[c+20>>2];H[b+16>>2]=H[c+16>>2];H[b+20>>2]=f;f=H[c+28>>2];H[b+24>>2]=H[c+24>>2];H[b+28>>2]=f;f=H[c+36>>2];H[b+32>>2]=H[c+32>>2];H[b+36>>2]=f;L[b+40>>2]=L[c+40>>2];L[b+44>>2]=L[c+44>>2];L[b+48>>2]=L[c+48>>2];L[b+52>>2]=L[c+52>>2];f=H[c+60>>2];H[b+56>>2]=H[c+56>>2];H[b+60>>2]=f;c=c- -64|0;b=b- -64|0;if(g>>>0>b>>>0){continue}break}b=H[a+20>>2]}c=(b<<6)+e|0;H[c>>2]=H[d+8>>2];b=H[d+20>>2];H[c+8>>2]=H[d+16>>2];H[c+12>>2]=b;b=H[d+28>>2];H[c+16>>2]=H[d+24>>2];H[c+20>>2]=b;b=H[d+36>>2];H[c+24>>2]=H[d+32>>2];H[c+28>>2]=b;b=H[d+44>>2];H[c+32>>2]=H[d+40>>2];H[c+36>>2]=b;L[c+40>>2]=L[d+48>>2];L[c+44>>2]=L[d+52>>2];L[c+48>>2]=L[d+56>>2];L[c+52>>2]=L[d+60>>2];b=H[d+68>>2];H[c+56>>2]=H[d+64>>2];H[c+60>>2]=b;g:{if(H[a+24>>2]<0){break g}c=H[a+16>>2];if(!c){break g}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,c)}H[a+24>>2]=k;H[a+16>>2]=e;H[a+20>>2]=H[a+20>>2]+1;break b}e=H[a+16>>2]+(b<<6)|0;H[e>>2]=n;b=H[d+20>>2];H[e+8>>2]=H[d+16>>2];H[e+12>>2]=b;b=H[d+28>>2];H[e+16>>2]=H[d+24>>2];H[e+20>>2]=b;b=H[d+36>>2];H[e+24>>2]=H[d+32>>2];H[e+28>>2]=b;b=H[d+44>>2];H[e+32>>2]=H[d+40>>2];H[e+36>>2]=b;L[e+40>>2]=L[d+48>>2];L[e+44>>2]=L[d+52>>2];L[e+48>>2]=L[d+56>>2];L[e+52>>2]=L[d+60>>2];b=H[d+68>>2];H[e+56>>2]=H[d+64>>2];H[e+60>>2]=b;H[a+20>>2]=H[a+20>>2]+1}j=Oa-32|0;Oa=j;y=H[a+56>>2];if(H[y+72>>2]){while(1){i=H[H[y+68>>2]+(z<<2)>>2];t=M[i+432>>3];u=M[i+440>>3];L[j+24>>2]=M[i+448>>3];L[j+20>>2]=u;L[j+16>>2]=t;l=L[i+28>>2];h=L[i+32>>2];L[j+8>>2]=-L[i+36>>2];L[j+4>>2]=-h;L[j>>2]=-l;B=j+16|0;l=O(Ra[H[H[i>>2]+8>>2]](i));m=0;e=Oa-80|0;Oa=e;H[e+76>>2]=n;h:{if(H[i+264>>2]==-1){break h}H[e+32>>2]=0;H[e+36>>2]=0;H[e+40>>2]=0;H[e+44>>2]=0;H[e+24>>2]=0;H[e+28>>2]=0;G[e+20>>1]=0;H[e+16>>2]=-1;H[e+8>>2]=0;H[e+12>>2]=0;H[e+56>>2]=0;H[e+48>>2]=2139095039;H[e+52>>2]=0;s=e+8|0;b=Oa+-64|0;Oa=b;f=H[a+36>>2];c=H[e+76>>2];k=c&65535;i:{if(f>>>0<=k>>>0){break i}g=J[H[a+40>>2]+(k<<1)>>1];if((g|0)==65535|f>>>0<=g>>>0|J[H[a+48>>2]+(k<<1)>>1]!=(c>>>16|0)){break i}f=H[H[a+28>>2]+(g<<2)>>2];if(!f){break i}c=f>>>16|0;if((f&65535)==4){k=H[31595];g=H[a+4>>2]+N(c,72)|0;f=H[g+60>>2];c=H[g+56>>2];L[b+60>>2]=L[g- -64>>2];H[b+52>>2]=c;H[b+56>>2]=f;H[b+48>>2]=3;A=M[g+16>>3];t=M[g+24>>3];u=M[g+32>>3];L[b+16>>2]=L[g+40>>2];L[b+20>>2]=L[g+44>>2];L[b+24>>2]=L[g+48>>2];h=L[g+52>>2];L[b+40>>2]=u;L[b+36>>2]=t;L[b+32>>2]=A;L[b+28>>2]=h;G[b+8>>1]=0;if(!(Ra[k|0](b+48|0,b+16|0,B,j,l,b+8|0,1,s)|0)){break i}m=g+8|0;break i}k=H[31594];g=H[a+16>>2]+(c<<6)|0;f=H[g+60>>2];c=H[g+56>>2];H[b+48>>2]=2;C=b,D=k7(c,f),H[C+52>>2]=D;H[b+56>>2]=Qa;A=M[g+16>>3];t=M[g+24>>3];u=M[g+32>>3];L[b+16>>2]=L[g+40>>2];L[b+20>>2]=L[g+44>>2];L[b+24>>2]=L[g+48>>2];h=L[g+52>>2];L[b+40>>2]=u;L[b+36>>2]=t;L[b+32>>2]=A;L[b+28>>2]=h;G[b>>1]=0;if(!(Ra[k|0](b+48|0,b+16|0,B,j,l,b,1,s)|0)){break i}m=g+8|0}Oa=b- -64|0;if(!m){break h}o=L[e+32>>2];r=L[j+8>>2];p=L[e+24>>2];l=L[j>>2];q=L[e+28>>2];h=L[j+4>>2];if(!(O(O(o*r)+O(O(p*l)+O(q*h)))>2]*r)+O(O(L[i+316>>2]*l)+O(h*L[i+320>>2]))))){break h}b=H[e+76>>2];L[i+324>>2]=o;L[i+320>>2]=q;L[i+316>>2]=p;H[i+264>>2]=b;w=L[m+40>>2];h=O(o-O(M[m+24>>3]));x=O(h+h);o=L[m+32>>2];h=O(p-O(M[m+8>>3]));p=O(h+h);h=O(q-O(M[m+16>>3]));q=O(h+h);r=L[m+36>>2];l=O(O(w*x)+O(O(o*p)+O(q*r)));v=L[m+44>>2];h=O(O(v*v)+O(-.5));L[i+312>>2]=O(w*l)+O(O(x*h)-O(v*O(O(o*q)-O(p*r))));L[i+308>>2]=O(r*l)+O(O(q*h)-O(v*O(O(w*p)-O(x*o))));L[i+304>>2]=O(o*l)+O(O(p*h)-O(v*O(O(r*x)-O(q*w))))}Oa=e+80|0;z=z+1|0;if(z>>>0>2]){continue}break}}Oa=j+32|0}Oa=d+80|0;return n|0}function AL(a,b,c,d,e,f,g,h,i,j,k,l,m,n){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;k=k|0;l=O(l);m=m|0;n=n|0;var o=0,p=0,q=0;f=Oa+-64|0;Oa=f;e=H[j+4>>2];H[a+576>>2]=H[j>>2];H[a+580>>2]=e;e=H[j+8>>2];g=H[j+12>>2];h=H[j+16>>2];i=H[j+20>>2];k=H[j+28>>2];n=H[j+24>>2];j=H[j+32>>2];L[a+56>>2]=O(1)/l;L[a+52>>2]=l;H[a+608>>2]=j;H[a+600>>2]=n;H[a+604>>2]=k;H[a+592>>2]=h;H[a+596>>2]=i;H[a+584>>2]=e;H[a+588>>2]=g;L[a+68>>2]=L[m>>2];L[a+72>>2]=L[m+4>>2];L[a+76>>2]=L[m+8>>2];g=H[b+412>>2];h=H[b+320>>2];if(h){e=H[b+148>>2];i=H[b+316>>2];k=H[b+128>>2];j=0;while(1){m=H[i+(j<<2)>>2];n=(m>>>0)/(e>>>0)|0;m=H[H[k+(n<<2)>>2]+(m-N(e,n)<<2)>>2];if(m){F[m+42|0]=0}j=j+1|0;if((h|0)!=(j|0)){continue}break}}e=H[a+180>>2];H[e+608>>2]=H[b+308>>2];a:{if(g){H[e+604>>2]=H[b+284>>2];h=H[b+344>>2];break a}H[e+604>>2]=0;h=0}H[e+600>>2]=h;H[a+568>>2]=0;e=H[a+368>>2];j=H[e>>2];H[e>>2]=0;if(j){m=j;while(1){e=H[m>>2];nA(m);m=e;if(e){continue}break}while(1){e=H[j>>2];h=H[a+368>>2];H[j>>2]=H[h>>2];H[h>>2]=j;j=e;if(e){continue}break}}if(g){Ra[H[H[d>>2]+16>>2]](d);g=yq(H[a+620>>2],40);e=H[a+632>>2];h=H[a+636>>2];H[g+24>>2]=0;H[g+16>>2]=0;H[g+8>>2]=e;H[g+12>>2]=h;H[g+36>>2]=d;H[g+32>>2]=b;H[g+28>>2]=a;H[g>>2]=117404;H[g+20>>2]=c;H[g+24>>2]=1;if(c){Ra[H[H[c>>2]+16>>2]](c);H[g+16>>2]=H[H[g+20>>2]+16>>2]}H[a+192>>2]=0;H[a+196>>2]=0;H[a+216>>2]=0;H[a+208>>2]=0;H[a+212>>2]=0;H[a+200>>2]=0;n=H[b+304>>2];j=H[b+308>>2];H[a+564>>2]=j;h=a+472|0;k=H[b+296>>2];i=H[b+284>>2];e=i+j|0;c=H[a+480>>2]&2147483647;b:{if(e>>>0<=c>>>0){break b}d=e+32&-32;if(d>>>0>(H[a+536>>2]&2147483647)>>>0){Dv(a+528|0,d);c=H[a+480>>2]&2147483647}if(c>>>0>>0){BL(h,d)}if(d>>>0>(H[a+492>>2]&2147483647)>>>0){CL(a+484|0,d)}if(d>>>0<=(H[a+504>>2]&2147483647)>>>0){break b}DL(a+496|0,d)}H[f+56>>2]=0;H[f+60>>2]=0;H[f+48>>2]=0;H[f+52>>2]=0;H[f+40>>2]=0;H[f+44>>2]=0;H[f+32>>2]=0;H[f+36>>2]=0;H[f+24>>2]=0;H[f+28>>2]=0;H[f+16>>2]=0;H[f+20>>2]=0;H[f+8>>2]=0;H[f+12>>2]=0;H[f>>2]=0;H[f+4>>2]=0;d=e+1|0;if(d>>>0>(H[h+8>>2]&2147483647)>>>0){BL(h,d)}c=H[h+4>>2];if((c|0)<(d|0)){e=H[h>>2];m=e+(d<<6)|0;e=e+(c<<6)|0;while(1){L[e>>2]=L[f>>2];L[e+4>>2]=L[f+4>>2];L[e+8>>2]=L[f+8>>2];H[e+12>>2]=H[f+12>>2];L[e+16>>2]=L[f+16>>2];L[e+20>>2]=L[f+20>>2];L[e+24>>2]=L[f+24>>2];H[e+28>>2]=H[f+28>>2];L[e+32>>2]=L[f+32>>2];L[e+36>>2]=L[f+36>>2];L[e+40>>2]=L[f+40>>2];L[e+44>>2]=L[f+44>>2];L[e+48>>2]=L[f+48>>2];L[e+52>>2]=L[f+52>>2];L[e+56>>2]=L[f+56>>2];H[e+60>>2]=H[f+60>>2];e=e- -64|0;if(m>>>0>e>>>0){continue}break}}H[h+4>>2]=d;H[f+56>>2]=0;H[f+60>>2]=0;H[f+48>>2]=0;H[f+52>>2]=0;H[f+40>>2]=0;H[f+44>>2]=0;H[f+32>>2]=0;H[f+36>>2]=0;H[f+24>>2]=0;H[f+28>>2]=0;H[f+16>>2]=0;H[f+20>>2]=0;H[f+8>>2]=0;H[f+12>>2]=0;H[f>>2]=0;H[f+4>>2]=0;c=a+484|0;if(d>>>0>(H[c+8>>2]&2147483647)>>>0){CL(c,d)}e=H[c+4>>2];if((e|0)<(d|0)){h=H[c>>2];m=h+(d<<6)|0;e=h+(e<<6)|0;while(1){L[e>>2]=L[f>>2];L[e+4>>2]=L[f+4>>2];L[e+8>>2]=L[f+8>>2];L[e+12>>2]=L[f+12>>2];L[e+16>>2]=L[f+16>>2];L[e+20>>2]=L[f+20>>2];L[e+24>>2]=L[f+24>>2];L[e+28>>2]=L[f+28>>2];L[e+32>>2]=L[f+32>>2];L[e+36>>2]=L[f+36>>2];L[e+40>>2]=L[f+40>>2];L[e+44>>2]=L[f+44>>2];L[e+48>>2]=L[f+48>>2];L[e+52>>2]=L[f+52>>2];L[e+56>>2]=L[f+56>>2];L[e+60>>2]=L[f+60>>2];e=e- -64|0;if(m>>>0>e>>>0){continue}break}}H[c+4>>2]=d;H[f+40>>2]=0;H[f+44>>2]=0;H[f+32>>2]=0;H[f+36>>2]=0;H[f+24>>2]=0;H[f+28>>2]=0;H[f+16>>2]=0;H[f+20>>2]=0;H[f+8>>2]=0;H[f+12>>2]=0;H[f>>2]=0;H[f+4>>2]=0;e=a+496|0;if(d>>>0>(H[e+8>>2]&2147483647)>>>0){DL(e,d)}c=H[e+4>>2];if((c|0)<(d|0)){h=H[e>>2];m=h+N(d,48)|0;c=h+N(c,48)|0;while(1){L[c>>2]=L[f>>2];L[c+4>>2]=L[f+4>>2];L[c+8>>2]=L[f+8>>2];L[c+12>>2]=L[f+12>>2];L[c+16>>2]=L[f+16>>2];L[c+20>>2]=L[f+20>>2];L[c+24>>2]=L[f+24>>2];h=H[f+32>>2];H[c+28>>2]=H[f+28>>2];H[c+32>>2]=h;h=H[f+40>>2];H[c+36>>2]=H[f+36>>2];H[c+40>>2]=h;H[c+44>>2]=H[f+44>>2];c=c+48|0;if(m>>>0>c>>>0){continue}break}}H[e+4>>2]=d;m=0;H[f>>2]=0;gy(a+528|0,d,f);c=H[a+472>>2];L[c>>2]=L[a+192>>2];L[c+4>>2]=L[a+196>>2];L[c+8>>2]=L[a+200>>2];H[c+12>>2]=H[a+204>>2];L[c+16>>2]=L[a+208>>2];L[c+20>>2]=L[a+212>>2];L[c+24>>2]=L[a+216>>2];H[c+28>>2]=H[a+220>>2];L[c+32>>2]=L[a+224>>2];L[c+36>>2]=L[a+228>>2];L[c+40>>2]=L[a+232>>2];L[c+44>>2]=L[a+236>>2];L[c+48>>2]=L[a+240>>2];L[c+52>>2]=L[a+244>>2];L[c+56>>2]=L[a+248>>2];H[c+60>>2]=H[a+252>>2];c=H[a+484>>2];L[c>>2]=L[a+256>>2];L[c+4>>2]=L[a+260>>2];L[c+8>>2]=L[a+264>>2];L[c+12>>2]=L[a+268>>2];L[c+16>>2]=L[a+272>>2];L[c+20>>2]=L[a+276>>2];L[c+24>>2]=L[a+280>>2];L[c+28>>2]=L[a+284>>2];L[c+32>>2]=L[a+288>>2];L[c+36>>2]=L[a+292>>2];L[c+40>>2]=L[a+296>>2];L[c+44>>2]=L[a+300>>2];L[c+48>>2]=L[a+304>>2];L[c+52>>2]=L[a+308>>2];L[c+56>>2]=L[a+312>>2];L[c+60>>2]=L[a+316>>2];c=H[a+496>>2];L[c>>2]=L[a+320>>2];L[c+4>>2]=L[a+324>>2];L[c+8>>2]=L[a+328>>2];L[c+12>>2]=L[a+332>>2];L[c+16>>2]=L[a+336>>2];L[c+20>>2]=L[a+340>>2];L[c+24>>2]=L[a+344>>2];d=H[a+352>>2];H[c+28>>2]=H[a+348>>2];H[c+32>>2]=d;d=H[a+360>>2];H[c+36>>2]=H[a+356>>2];H[c+40>>2]=d;H[c+44>>2]=H[a+364>>2];if(j){d=b+168|0;while(1){c=yq(H[a+620>>2],56);e=H[a+472>>2];h=H[a+484>>2];p=H[a+496>>2];o=H[a+632>>2];q=H[a+636>>2];H[c+24>>2]=0;H[c+16>>2]=0;H[c+8>>2]=o;H[c+12>>2]=q;H[c+36>>2]=d;o=j-m|0;H[c+32>>2]=o>>>0<1024?o:1024;H[c+28>>2]=n+(m<<2);H[c>>2]=117460;H[c+20>>2]=g;H[c+24>>2]=1;o=m|1;H[c+48>>2]=p+N(o,48);p=h;h=o<<6;H[c+44>>2]=p+h;H[c+40>>2]=e+h;Ra[H[H[g>>2]+16>>2]](g);H[c+16>>2]=H[H[c+20>>2]+16>>2];Ra[H[H[c>>2]+20>>2]](c);m=m+1024|0;if(j>>>0>m>>>0){continue}break}}d=H[b+344>>2];c=H[b+340>>2];H[a+380>>2]=0;d=d+(c+(k<<6)|0)|0;b=d+63&-64;if(b>>>0>(H[a+384>>2]&2147483647)>>>0){hy(a+376|0,b)}H[a+380>>2]=d;H[a+392>>2]=0;if(b>>>0>(H[a+396>>2]&2147483647)>>>0){hy(a+388|0,b)}H[a+392>>2]=d;H[a+416>>2]=0;if(b>>>0>(H[a+420>>2]&2147483647)>>>0){iy(a+412|0,b)}H[a+416>>2]=d;H[a+404>>2]=0;if(b>>>0>(H[a+408>>2]&2147483647)>>>0){hy(a+400|0,b)}H[a+404>>2]=d;H[a+556>>2]=0;b=c+63&-64;if(b>>>0>(H[a+560>>2]&2147483647)>>>0){jy(a+552|0,b)}H[a+556>>2]=c;H[a+428>>2]=0;b=i+63&-64;if(b>>>0>(H[a+432>>2]&2147483647)>>>0){ky(a+424|0,b)}H[a+428>>2]=i;H[a+440>>2]=0;if(b>>>0>(H[a+444>>2]&2147483647)>>>0){ly(a+436|0,b)}H[a+440>>2]=i;H[a+452>>2]=0;if(b>>>0>(H[a+456>>2]&2147483647)>>>0){my(a+448|0,b)}H[a+452>>2]=i;H[a+464>>2]=0;d=k+63&-64;if(d>>>0>(H[a+468>>2]&2147483647)>>>0){ny(a+460|0,d)}H[a+464>>2]=k;H[a+544>>2]=0;if(b>>>0>(H[a+548>>2]&2147483647)>>>0){Dv(a+540|0,b)}H[a+544>>2]=i;b=H[a+4>>2];H[b+8>>2]=0;c=c?c-1|0:0;c=c>>>1|c;c=c>>>2|c;c=c>>>4|c;c=c>>>8|c;c=(c>>>16|c)+1|0;if(c>>>0>(H[b+12>>2]&2147483647)>>>0){oy(b,c)}H[a+628>>2]=1-H[a+628>>2];Ra[H[H[g>>2]+20>>2]](g)}Oa=f- -64|0}function cA(a){var b=O(0),c=O(0),d=O(0),e=O(0),f=O(0),g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=O(0),p=O(0),q=0,r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),F=O(0),G=O(0),K=O(0),M=O(0),P=O(0),Q=O(0),R=O(0),S=O(0),T=O(0),U=O(0),V=O(0),W=O(0),X=O(0),Y=O(0),Z=O(0),_=O(0),$=O(0),aa=O(0),ba=O(0),ca=O(0),da=O(0),ea=O(0),fa=O(0),ga=O(0),ha=O(0),ia=O(0),ja=O(0),ka=O(0),la=O(0),ma=O(0),na=O(0),oa=O(0),pa=O(0),qa=O(0),ra=O(0),sa=O(0),ta=O(0),ua=O(0),va=O(0),wa=O(0),xa=O(0),ya=O(0),za=O(0),Aa=O(0),Ba=O(0),Ca=O(0),Da=O(0),Ea=O(0),Fa=O(0),Ga=O(0),Ha=O(0),Ia=O(0),Ja=O(0),Ka=O(0),La=O(0),Ma=O(0),Na=O(0),Oa=0,Pa=0,Qa=O(0),Ra=O(0),Sa=O(0),Ta=O(0),Ua=O(0),Va=O(0),Wa=O(0),Xa=O(0),Ya=O(0),Za=0,_a=O(0),$a=O(0),ab=O(0),bb=O(0),cb=O(0),db=O(0),eb=O(0),fb=O(0),gb=O(0),hb=O(0),ib=O(0),jb=O(0),kb=O(0),lb=O(0),mb=O(0),nb=O(0),ob=O(0),pb=O(0),qb=O(0),rb=O(0),sb=O(0),tb=O(0),ub=O(0),vb=O(0),wb=O(0),xb=O(0),yb=O(0),zb=O(0),Ab=O(0),Bb=O(0),Cb=O(0),Db=O(0),Eb=O(0),Fb=O(0),Gb=O(0),Hb=O(0),Ib=O(0),Jb=O(0),Kb=O(0),Lb=O(0),Mb=O(0),Nb=O(0),Ob=O(0),Pb=O(0),Qb=O(0),Rb=O(0),Sb=0,Tb=0,Ub=O(0),Vb=O(0),Wb=O(0),Xb=O(0),Yb=O(0),Zb=O(0),_b=O(0),$b=O(0),ac=O(0),bc=O(0),cc=O(0),dc=O(0),ec=O(0),fc=O(0);g=H[a+100>>2];B=L[g+16>>2];h=H[a+96>>2];Cb=L[h+28>>2];C=L[h+24>>2];D=L[h+20>>2];Db=L[g+12>>2];E=L[g+8>>2];F=L[g+4>>2];G=L[g>>2];i=H[a+68>>2];K=L[i+16>>2];j=H[a+64>>2];Eb=L[j+28>>2];M=L[j+24>>2];P=L[j+20>>2];Fb=L[i+12>>2];Q=L[i+8>>2];R=L[i+4>>2];S=L[i>>2];k=H[a+36>>2];T=L[k+16>>2];l=H[a+32>>2];Gb=L[l+28>>2];U=L[l+24>>2];V=L[l+20>>2];Hb=L[k+12>>2];W=L[k+8>>2];X=L[k+4>>2];Y=L[k>>2];m=H[a+4>>2];Ib=L[m+28>>2];Z=L[m+24>>2];_=L[m+20>>2];n=H[a>>2];Jb=L[n+28>>2];$=L[n+24>>2];aa=L[n+20>>2];Kb=L[g+28>>2];ba=L[g+24>>2];ca=L[g+20>>2];Lb=L[i+28>>2];da=L[i+24>>2];ea=L[i+20>>2];Mb=L[k+28>>2];fa=L[k+24>>2];ga=L[k+20>>2];ha=L[h+16>>2];Nb=L[h+12>>2];ia=L[h+8>>2];ja=L[h+4>>2];ka=L[h>>2];la=L[j+16>>2];Ob=L[j+12>>2];ma=L[j+8>>2];na=L[j+4>>2];oa=L[j>>2];pa=L[l+16>>2];Pb=L[l+12>>2];qa=L[l+8>>2];ra=L[l+4>>2];sa=L[l>>2];ta=L[m+16>>2];ua=L[n+16>>2];Qb=L[m+12>>2];va=L[m+8>>2];wa=L[m+4>>2];xa=L[m>>2];Rb=L[n+12>>2];ya=L[n+8>>2];za=L[n+4>>2];Aa=L[n>>2];a:{a=H[a+24>>2];q=J[a+2>>1];if(!q){break a}Sb=a+q|0;while(1){Za=a+160|0;Oa=I[a+1|0];Pa=Za+N(Oa,176)|0;Ba=L[a+76>>2];Ca=L[a+72>>2];Da=L[a+68>>2];Ea=L[a+64>>2];Fa=L[a+60>>2];Ga=L[a+56>>2];Ha=L[a+52>>2];Ia=L[a+48>>2];Ja=L[a+44>>2];Ka=L[a+40>>2];La=L[a+36>>2];Ma=L[a+32>>2];_a=L[a+108>>2];$a=L[a+104>>2];ab=L[a+100>>2];bb=L[a+96>>2];cb=L[a+92>>2];db=L[a+88>>2];eb=L[a+84>>2];fb=L[a+80>>2];b:{if(!Oa){r=O(0);s=O(0);t=O(0);u=O(0);break b}Tb=(a+96|0)+(q&65535)|0;Ub=L[a+140>>2];Vb=L[a+136>>2];Wb=L[a+132>>2];Xb=L[a+128>>2];Yb=L[a+124>>2];Zb=L[a+120>>2];_b=L[a+116>>2];$b=L[a+112>>2];Qa=O(O(O(Aa*Ma)+O(za*Ia))+O(ya*Ea));Ra=O(O(O(sa*La)+O(ra*Ha))+O(qa*Da));Sa=O(O(O(oa*Ka)+O(na*Ga))+O(ma*Ca));Ta=O(O(O(ka*Ja)+O(ja*Fa))+O(ia*Ba));Ua=O(O(O(xa*Ma)+O(wa*Ia))+O(va*Ea));Va=O(O(O(Y*La)+O(X*Ha))+O(W*Da));Wa=O(O(O(S*Ka)+O(R*Ga))+O(Q*Ca));Xa=O(O(O(G*Ja)+O(F*Fa))+O(E*Ba));u=O(0);q=0;t=O(0);s=O(0);r=O(0);while(1){a=N(q,176)+Za|0;b=L[a+116>>2];d=L[a+52>>2];ac=L[a+100>>2];bc=L[a+84>>2];c=L[a+68>>2];gb=L[a+36>>2];hb=L[a+20>>2];ib=L[a+4>>2];y=L[a+164>>2];jb=L[a+132>>2];kb=L[a+148>>2];z=L[a+120>>2];e=L[a+56>>2];cc=L[a+104>>2];dc=L[a+88>>2];o=L[a+72>>2];lb=L[a+40>>2];mb=L[a+24>>2];nb=L[a+8>>2];ob=L[a+168>>2];pb=L[a+136>>2];qb=L[a+152>>2];A=L[a+124>>2];f=L[a+60>>2];Na=L[a+108>>2];ec=L[a+92>>2];p=L[a+76>>2];rb=L[a+44>>2];sb=L[a+28>>2];tb=L[a+12>>2];ub=L[a+172>>2];vb=L[a+140>>2];wb=L[a+156>>2];Ya=L[a+48>>2];v=O(-Ya);w=L[a+64>>2];fc=O(O(w*L[a+80>>2])-L[a+96>>2]);x=w;w=L[a>>2];xb=L[a+16>>2];yb=L[a+32>>2];zb=L[a+128>>2];Ab=L[a+144>>2];Bb=L[a+160>>2];x=O(fc-O(x*O(O(Qa+O(O(O(ua*w)+O(aa*xb))+O($*yb)))-O(Ua+O(O(O(ta*zb)+O(_*Ab))+O(Z*Bb))))));v=O(Ya+(v>2];v=v>2]=v;p=O(O(O(p*ec)-Na)-O(p*O(O(Ta+O(O(O(ha*tb)+O(D*sb))+O(C*rb)))-O(Xa+O(O(O(B*vb)+O(ca*wb))+O(ba*ub))))));Na=O(-f);p=O(f+(p>Na?p:Na));A=p>2]=A;o=O(O(O(o*dc)-cc)-O(o*O(O(Sa+O(O(O(la*nb)+O(P*mb))+O(M*lb)))-O(Wa+O(O(O(K*pb)+O(ea*qb))+O(da*ob))))));p=O(-e);o=O(e+(o>p?o:p));z=o>2]=z;c=O(O(O(c*bc)-ac)-O(c*O(O(Ra+O(O(O(pa*ib)+O(V*hb))+O(U*gb)))-O(Va+O(O(O(T*jb)+O(ga*kb))+O(fa*y))))));o=O(-d);c=O(d+(c>o?c:o));c=b>c?c:b;L[a+52>>2]=c;a=(q<<4)+Tb|0;L[a+12>>2]=A;L[a+8>>2]=z;L[a+4>>2]=c;L[a>>2]=v;b=O(v-Ya);r=O(r+b);f=O(A-f);u=O(u+f);e=O(z-e);t=O(t+e);d=O(c-d);s=O(s+d);Ua=O(Ua-O(bb*b));Qa=O(Qa+O(fb*b));c=O(Xb*b);Z=O(Z-O(Bb*c));b=O($b*b);$=O($+O(yb*b));_=O(_-O(Ab*c));aa=O(aa+O(xb*b));ta=O(ta-O(zb*c));ua=O(ua+O(w*b));Xa=O(Xa-O(_a*f));Wa=O(Wa-O($a*e));Va=O(Va-O(ab*d));Ta=O(Ta+O(cb*f));Sa=O(Sa+O(db*e));Ra=O(Ra+O(eb*d));b=O(Ub*f);ba=O(ba-O(ub*b));c=O(Vb*e);da=O(da-O(ob*c));w=y;y=O(Wb*d);fa=O(fa-O(w*y));f=O(Yb*f);C=O(C+O(rb*f));e=O(Zb*e);M=O(M+O(lb*e));d=O(_b*d);U=O(U+O(gb*d));ca=O(ca-O(wb*b));ea=O(ea-O(qb*c));ga=O(ga-O(kb*y));D=O(D+O(sb*f));P=O(P+O(mb*e));V=O(V+O(hb*d));B=O(B-O(vb*b));K=O(K-O(pb*c));T=O(T-O(jb*y));ha=O(ha+O(tb*f));la=O(la+O(nb*e));pa=O(pa+O(ib*d));q=q+1|0;if((Oa|0)!=(q|0)){continue}break}}b=O(_a*u);E=O(E-O(Ba*b));f=O($a*t);Q=O(Q-O(Ca*f));e=O(ab*s);W=O(W-O(Da*e));d=O(bb*r);va=O(va-O(Ea*d));u=O(cb*u);ia=O(ia+O(Ba*u));t=O(db*t);ma=O(ma+O(Ca*t));s=O(eb*s);qa=O(qa+O(Da*s));r=O(fb*r);ya=O(ya+O(Ea*r));F=O(F-O(Fa*b));R=O(R-O(Ga*f));X=O(X-O(Ha*e));wa=O(wa-O(Ia*d));ja=O(ja+O(Fa*u));na=O(na+O(Ga*t));ra=O(ra+O(Ha*s));za=O(za+O(Ia*r));G=O(G-O(Ja*b));S=O(S-O(Ka*f));Y=O(Y-O(La*e));xa=O(xa-O(Ma*d));ka=O(ka+O(Ja*u));oa=O(oa+O(Ka*t));sa=O(sa+O(La*s));Aa=O(Aa+O(Ma*r));if(Pa>>>0>=Sb>>>0){break a}q=J[Pa+2>>1];a=Pa;continue}}L[n+12>>2]=Rb;L[n+8>>2]=ya;L[n+4>>2]=za;L[n>>2]=Aa;L[l+12>>2]=Pb;L[l+8>>2]=qa;L[l+4>>2]=ra;L[l>>2]=sa;L[j+12>>2]=Ob;L[j+8>>2]=ma;L[j+4>>2]=na;L[j>>2]=oa;L[h+12>>2]=Nb;L[h+8>>2]=ia;L[h+4>>2]=ja;L[h>>2]=ka;L[m+12>>2]=Qb;L[m+8>>2]=va;L[m+4>>2]=wa;L[m>>2]=xa;L[k+12>>2]=Hb;L[k+8>>2]=W;L[k+4>>2]=X;L[k>>2]=Y;L[i+12>>2]=Fb;L[i+8>>2]=Q;L[i+4>>2]=R;L[i>>2]=S;L[g+12>>2]=Db;L[g+8>>2]=E;L[g+4>>2]=F;L[g>>2]=G;L[n+28>>2]=Jb;L[n+24>>2]=$;L[n+20>>2]=aa;L[n+16>>2]=ua;L[l+28>>2]=Gb;L[l+24>>2]=U;L[l+20>>2]=V;L[l+16>>2]=pa;L[j+28>>2]=Eb;L[j+24>>2]=M;L[j+20>>2]=P;L[j+16>>2]=la;L[h+28>>2]=Cb;L[h+24>>2]=C;L[h+20>>2]=D;L[h+16>>2]=ha;L[m+28>>2]=Ib;L[m+24>>2]=Z;L[m+20>>2]=_;L[m+16>>2]=ta;L[k+28>>2]=Mb;L[k+24>>2]=fa;L[k+20>>2]=ga;L[k+16>>2]=T;L[i+28>>2]=Lb;L[i+24>>2]=da;L[i+20>>2]=ea;L[i+16>>2]=K;L[g+28>>2]=Kb;L[g+24>>2]=ba;L[g+20>>2]=ca;L[g+16>>2]=B}function fN(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=O(0),w=0,x=O(0),y=0,z=0,A=0,B=0,C=0,D=O(0);h=Oa-16|0;w=h;Oa=h;z=H[g>>2];y=H[f>>2];B=H[e>>2];a:{if(!H[a+52>>2]){break a}i=N(c,80);F[w+12|0]=i>>>0>1024;b:{if(i>>>0>=1025){j=G5(i,5002,144);break b}j=h-(i+15&-16)|0;Oa=j}H[w+8>>2]=j;if(c){r=H[H[a+48>>2]+1816>>2];while(1){h=H[(m<<2)+b>>2];i=H[a+32>>2]+(h<<4)|0;k=I[i+12|0];if(k){l=H[w+8>>2]+N(m,80)|0;t=H[H[a+28>>2]+(h<<2)>>2];h=H[33791];H[l+8>>2]=H[t+24>>2]+h;H[l+12>>2]=h+H[t+28>>2];h=J[t+40>>1];H[l>>2]=H[t+16>>2]+H[(h&32?135168:135172)>>2];H[l+4>>2]=H[t+20>>2]+H[(h&64?135168:135172)>>2];h=H[r+4>>2];n=h+(H[t+56>>2]<<5)|0;L[l+16>>2]=L[n>>2];L[l+20>>2]=L[n+4>>2];L[l+24>>2]=L[n+8>>2];L[l+28>>2]=L[n+12>>2];L[l+32>>2]=L[n+16>>2];L[l+36>>2]=L[n+20>>2];L[l+40>>2]=L[n+24>>2];h=h+(H[t+60>>2]<<5)|0;L[l+44>>2]=L[h>>2];L[l+48>>2]=L[h+4>>2];L[l+52>>2]=L[h+8>>2];L[l+56>>2]=L[h+12>>2];L[l+60>>2]=L[h+16>>2];L[l- -64>>2]=L[h+20>>2];L[l+68>>2]=L[h+24>>2];o=H[i+4>>2];H[l+76>>2]=o;H[l+72>>2]=k;x=O(3.4028234663852886e38);v=O(3.4028234663852886e38);h=J[t+40>>1];v=h&32?L[H[t+16>>2]+128>>2]:v;x=h&64?L[H[t+20>>2]+128>>2]:x;v=v>>0>1?k:1;i=h&7;l=0;q=0;if(h-1>>>0>=7){h=h&248;k=0;while(1){n=q<<6;L[(n+o|0)+28>>2]=v;L[(o+(n|64)|0)+28>>2]=v;L[(o+(n|128)|0)+28>>2]=v;L[(o+(n|192)|0)+28>>2]=v;L[(o+(n|256)|0)+28>>2]=v;L[(o+(n|320)|0)+28>>2]=v;L[(o+(n|384)|0)+28>>2]=v;L[(o+(n|448)|0)+28>>2]=v;q=q+8|0;k=k+8|0;if((h|0)!=(k|0)){continue}break}}if(i){while(1){L[(o+(q<<6)|0)+28>>2]=v;q=q+1|0;l=l+1|0;if((i|0)!=(l|0)){continue}break}}k=I[t+46|0];i=I[t+47|0];h=k>>>0>>0;h=(N(h?k:i,28)+d|0)+((h?i:k)<<2)|0;H[h+304>>2]=H[h+304>>2]+1}m=m+1|0;if((m|0)!=(c|0)){continue}break}j=H[w+8>>2]}h=H[a+52>>2];Ra[H[H[h>>2]>>2]](h,j,c);if(!I[w+12|0]){break a}H5(H[w+8>>2])}if(c){while(1){h=H[(C<<2)+b>>2];p=H[a+32>>2]+(h<<4)|0;i=I[p+13|0];o=H[H[a+28>>2]+(h<<2)>>2];c:{if(!I[p+12|0]){h=0;break c}t=H[p+4>>2];n=H[p>>2];d:{if(!(I[n+43|0]&64)){break d}l=0;m=0;if(!i){break d}while(1){u=n+N(l,48)|0;h=I[u+40|0];s=t+(h<<6)|0;L[u+16>>2]=L[s+32>>2];L[u+20>>2]=L[s+36>>2];L[u+24>>2]=L[s+40>>2];L[u+32>>2]=L[s+60>>2];L[u+36>>2]=L[s+56>>2];L[u+28>>2]=L[s+44>>2];q=I[u+41|0];e:{if(q>>>0<2){break e}D=L[s+40>>2];x=L[s+36>>2];v=L[s+32>>2];j=1;while(1){r=h+j|0;k=t+(r<<6)|0;if(!(!(O(O(D*L[k+40>>2])+O(O(v*L[k+32>>2])+O(x*L[k+36>>2])))>2]>O(0)))){h=i;k=h-1|0;if(l>>>0>>0){while(1){q=n+N(h,48)|0;s=n+N(k,48)|0;h=H[s+4>>2];H[q>>2]=H[s>>2];H[q+4>>2]=h;h=H[s+12>>2];H[q+8>>2]=H[s+8>>2];H[q+12>>2]=h;L[q+16>>2]=L[s+16>>2];L[q+20>>2]=L[s+20>>2];L[q+24>>2]=L[s+24>>2];h=H[s+32>>2];H[q+28>>2]=H[s+28>>2];H[q+32>>2]=h;h=H[s+40>>2];H[q+36>>2]=H[s+36>>2];H[q+40>>2]=h;H[q+44>>2]=H[s+44>>2];h=k;k=h-1|0;if(l>>>0>>0){continue}break}q=I[u+41|0]}G[u+90>>1]=J[u+42>>1];F[u+89|0]=q-j;F[u+88|0]=r;F[u+41|0]=j;i=i+1|0;break e}j=j+1|0;if((q|0)!=(j|0)){continue}break}}m=m+1|0;l=m&255;if(l>>>0>>0){continue}break}}if(I[p+15|0]>>0){k=H[o+48>>2];m=k+32>>>5|0;f:{if(m>>>0<=(H[d+7208>>2]&2147483647)>>>0){j=H[d+7204>>2];break f}h=H[33808]+12|0;j=Ra[H[H[h>>2]+8>>2]](h,m<<2,20591,14969,438)|0;h=H[d+7204>>2];g:{if(!h){break g}R6(j,h,H[d+7208>>2]<<2);if(H[d+7208>>2]<0){break g}r=H[d+7204>>2];if(!r){break g}h=H[33808]+12|0;Ra[H[H[h>>2]+12>>2]](h,r)}h=H[d+7208>>2];S6((h<<2)+j|0,0,m-h<<2);H[d+7208>>2]=m;H[d+7204>>2]=j}h=(k>>>3&536870908)+j|0;H[h>>2]=H[h>>2]|1<>>0>z>>>0?i:z;m=I[p+12|0];if(!m){h=0;break c}k=0;h=0;j=0;if(m-1>>>0>=3){r=m&252;l=0;while(1){n=h;h=j<<6;h=(((n+(L[(h+t|0)+28>>2]!=O(0))|0)+(L[(t+(h|64)|0)+28>>2]!=O(0))|0)+(L[(t+(h|128)|0)+28>>2]!=O(0))|0)+(L[(t+(h|192)|0)+28>>2]!=O(0))|0;j=j+4|0;l=l+4|0;if((r|0)!=(l|0)){continue}break}}r=m&3;if(!r){break c}while(1){h=(L[(t+(j<<6)|0)+28>>2]!=O(0))+h|0;j=j+1|0;k=k+1|0;if((r|0)!=(k|0)){continue}break}}if(I[p+15|0]>(i&255)>>>0){k=H[o+48>>2];m=k+32>>>5|0;h:{if(m>>>0<=(H[d+7208>>2]&2147483647)>>>0){j=H[d+7204>>2];break h}i=H[33808]+12|0;j=Ra[H[H[i>>2]+8>>2]](i,m<<2,20591,14969,438)|0;i=H[d+7204>>2];i:{if(!i){break i}R6(j,i,H[d+7208>>2]<<2);if(H[d+7208>>2]<0){break i}r=H[d+7204>>2];if(!r){break i}i=H[33808]+12|0;Ra[H[H[i>>2]+12>>2]](i,r)}i=H[d+7208>>2];S6((i<<2)+j|0,0,m-i<<2);H[d+7208>>2]=m;H[d+7204>>2]=j}i=(k>>>3&536870908)+j|0;H[i>>2]=H[i>>2]|1<>2]=0;H[o+36>>2]=0;F[p+13|0]=0;F[p+12|0]=0;if(!I[p+15|0]){break j}r=H[o+48>>2];k=r+32>>>5|0;k:{if(k>>>0<=(H[d+7208>>2]&2147483647)>>>0){j=H[d+7204>>2];break k}h=H[33808]+12|0;j=Ra[H[H[h>>2]+8>>2]](h,k<<2,20591,14969,438)|0;h=H[d+7204>>2];l:{if(!h){break l}R6(j,h,H[d+7208>>2]<<2);if(H[d+7208>>2]<0){break l}i=H[d+7204>>2];if(!i){break l}h=H[33808]+12|0;Ra[H[H[h>>2]+12>>2]](h,i)}h=H[d+7208>>2];S6((h<<2)+j|0,0,k-h<<2);H[d+7208>>2]=k;H[d+7204>>2]=j}y=y+1|0;h=(r>>>3&536870908)+j|0;H[h>>2]=H[h>>2]|1<>2];if(!h){break j}i=I[p+13|0];r=H[h+4>>2]+(I[p+12|0]<<5)|0;H[h+4>>2]=r;h=H[d+7172>>2];j=H[h+8>>2];q=H[h>>2];s=H[h+12>>2];t=H[h+4>>2];h=H[d+7176>>2];i=H[h+4>>2]+N(i,48)|0;H[h+4>>2]=i;h=H[d+7176>>2];u=H[h+8>>2];l=H[h>>2];o=H[h+4>>2];m=H[h+12>>2];n=I[H[p>>2]+43|0];k=H[d+7180>>2];h=H[k+4>>2]+(I[p+12|0]<<2)|0;H[k+4>>2]=h;A=H[d+7180>>2];k=H[A+8>>2];if(!(!(k>>>0<=H[A+12>>2]+H[A+4>>2]>>>0|u>>>0<=o+m>>>0)&j>>>0>s+t>>>0)){H[p>>2]=0;H[p+4>>2]=0;G[p+6>>1]=0;G[p+8>>1]=0;G[p+10>>1]=0;G[p+12>>1]=0;break j}m=j+q|0;h=(H[A>>2]+k|0)-h|0;H[p+8>>2]=h;S6(h,0,I[p+12|0]<<2);o=R6((l+u|0)-i|0,H[p>>2],N(I[p+13|0],48));i=I[p+13|0];m:{if(!i){break m}n=n|-128;l=0;j=0;if(i-1>>>0>=7){h=i&248;k=0;while(1){F[(o+N(j,48)|0)+43|0]=n;F[(o+N(j|1,48)|0)+43|0]=n;F[(o+N(j|2,48)|0)+43|0]=n;F[(o+N(j|3,48)|0)+43|0]=n;F[(o+N(j|4,48)|0)+43|0]=n;F[(o+N(j|5,48)|0)+43|0]=n;F[(o+N(j|6,48)|0)+43|0]=n;F[(o+N(j|7,48)|0)+43|0]=n;j=j+8|0;k=k+8|0;if((h|0)!=(k|0)){continue}break}}h=i&7;if(h){while(1){F[(o+N(j,48)|0)+43|0]=n;j=j+1|0;l=l+1|0;if((h|0)!=(l|0)){continue}break}}j=1;if(i>>>0<=1){break m}while(1){h=H[o+4>>2];i=o+N(j,48)|0;H[i>>2]=H[o>>2];H[i+4>>2]=h;h=H[o+12>>2];H[i+8>>2]=H[o+8>>2];H[i+12>>2]=h;j=j+1|0;if(j>>>0>2];l=0;while(1){m=r+(l<<5)|0;k=h+(l<<6)|0;L[m>>2]=L[k>>2];L[m+4>>2]=L[k+4>>2];L[m+8>>2]=L[k+8>>2];L[m+12>>2]=L[k+12>>2];L[m+16>>2]=L[k+16>>2];L[m+20>>2]=L[k+20>>2];L[m+24>>2]=L[k+24>>2];L[m+28>>2]=L[k+28>>2];l=l+1|0;if((i|0)!=(l|0)){continue}break}}H[p>>2]=o;H[p+4>>2]=r}C=C+1|0;if((C|0)!=(c|0)){continue}break}}H[e>>2]=B;H[f>>2]=y;H[g>>2]=z;Oa=w+16|0}function sm(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;a=H[33773]-1|0;H[33773]=a;if(!a){e=H[33768];a=0;c=Oa-16|0;Oa=c;H[c+8>>2]=0;H[c>>2]=0;H[c+4>>2]=0;g=H[e+516>>2];if(g){a:{if(!g){break a}b=g<<2;if(!b){break a}a=H[33808];d=Ra[H[H[a>>2]+20>>2]](a)|0?51578:55639;a=Ra[H[H[a+12>>2]+8>>2]](a+12|0,b,d,13582,553)|0}b=H[c+4>>2];if((b|0)>0){i=(b<<2)+a|0;d=H[c>>2];b=a;while(1){H[b>>2]=H[d>>2];d=d+4|0;b=b+4|0;if(i>>>0>b>>>0){continue}break}}b:{if(H[c+8>>2]<0){break b}b=H[c>>2];if(!b){break b}d=H[33808];Ra[H[H[d+12>>2]+12>>2]](d+12|0,b)}H[c+8>>2]=g;H[c>>2]=a}c:{if(!H[e+496>>2]){break c}b=H[e+492>>2];a=H[b>>2];if((a|0)==-1){d=H[e+500>>2];while(1){f=f+1|0;if((d|0)==(f|0)){break c}a=H[b+(f<<2)>>2];if((a|0)==-1){continue}break}}while(1){j=a<<2;i=j+H[e+484>>2]|0;a=H[c+4>>2];d:{if(a>>>0>=(H[c+8>>2]&2147483647)>>>0){a=0;b=H[c+8>>2]&2147483647;h=b?b<<1:1;e:{if(!h){break e}b=h<<2;if(!b){break e}a=H[33808];d=Ra[H[H[a>>2]+20>>2]](a)|0?51578:55639;a=Ra[H[H[a+12>>2]+8>>2]](a+12|0,b,d,13582,553)|0}d=H[c+4>>2];k=(d<<2)+a|0;if((d|0)>0){g=H[c>>2];b=a;while(1){H[b>>2]=H[g>>2];g=g+4|0;b=b+4|0;if(k>>>0>b>>>0){continue}break}}H[k>>2]=H[i>>2];f:{if(H[c+8>>2]<0){break f}b=H[c>>2];if(!b){break f}d=H[33808];Ra[H[H[d+12>>2]+12>>2]](d+12|0,b);d=H[c+4>>2]}H[c+8>>2]=h;H[c>>2]=a;H[c+4>>2]=d+1;break d}H[H[c>>2]+(a<<2)>>2]=H[i>>2];H[c+4>>2]=a+1}a=H[j+H[e+488>>2]>>2];if((a|0)!=-1){continue}b=H[e+492>>2];d=H[e+500>>2];while(1){f=f+1|0;if((d|0)==(f|0)){break c}a=H[b+(f<<2)>>2];if((a|0)==-1){continue}break}continue}}if(H[c+4>>2]){a=0;while(1){b=H[H[c>>2]+(a<<2)>>2];Ra[H[H[b>>2]>>2]](b);a=a+1|0;if(a>>>0>2]){continue}break}}a=H[c+8>>2];g:{if((a|0)<0|!(a&2147483647)){break g}a=H[c>>2];if(!a){break g}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,a)}H[c+8>>2]=0;H[c>>2]=0;H[c+4>>2]=0;f=H[e+596>>2];if(f){a=0;h:{if(!f){break h}b=f<<2;if(!b){break h}a=H[33808];d=Ra[H[H[a>>2]+20>>2]](a)|0?48714:55639;a=Ra[H[H[a+12>>2]+8>>2]](a+12|0,b,d,13582,553)|0}b=H[c+4>>2];if((b|0)>0){g=(b<<2)+a|0;d=H[c>>2];b=a;while(1){H[b>>2]=H[d>>2];d=d+4|0;b=b+4|0;if(g>>>0>b>>>0){continue}break}}i:{if(H[c+8>>2]<0){break i}b=H[c>>2];if(!b){break i}d=H[33808];Ra[H[H[d+12>>2]+12>>2]](d+12|0,b)}H[c+8>>2]=f;H[c>>2]=a}j:{if(!H[e+576>>2]){break j}f=0;b=H[e+572>>2];a=H[b>>2];if((a|0)==-1){d=H[e+580>>2];while(1){f=f+1|0;if((d|0)==(f|0)){break j}a=H[b+(f<<2)>>2];if((a|0)==-1){continue}break}}while(1){j=a<<2;i=j+H[e+564>>2]|0;a=H[c+4>>2];k:{if(a>>>0>=(H[c+8>>2]&2147483647)>>>0){a=0;b=H[c+8>>2]&2147483647;h=b?b<<1:1;l:{if(!h){break l}b=h<<2;if(!b){break l}a=H[33808];d=Ra[H[H[a>>2]+20>>2]](a)|0?48714:55639;a=Ra[H[H[a+12>>2]+8>>2]](a+12|0,b,d,13582,553)|0}d=H[c+4>>2];k=(d<<2)+a|0;if((d|0)>0){g=H[c>>2];b=a;while(1){H[b>>2]=H[g>>2];g=g+4|0;b=b+4|0;if(k>>>0>b>>>0){continue}break}}H[k>>2]=H[i>>2];m:{if(H[c+8>>2]<0){break m}b=H[c>>2];if(!b){break m}d=H[33808];Ra[H[H[d+12>>2]+12>>2]](d+12|0,b);d=H[c+4>>2]}H[c+8>>2]=h;H[c>>2]=a;H[c+4>>2]=d+1;break k}H[H[c>>2]+(a<<2)>>2]=H[i>>2];H[c+4>>2]=a+1}a=H[j+H[e+568>>2]>>2];if((a|0)!=-1){continue}b=H[e+572>>2];d=H[e+580>>2];while(1){f=f+1|0;if((d|0)==(f|0)){break j}a=H[b+(f<<2)>>2];if((a|0)==-1){continue}break}continue}}if(H[c+4>>2]){a=0;while(1){b=H[H[c>>2]+(a<<2)>>2];Ra[H[H[b>>2]>>2]](b);a=a+1|0;if(a>>>0>2]){continue}break}}a=H[c+8>>2];n:{if((a|0)<0|!(a&2147483647)){break n}a=H[c>>2];if(!a){break n}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,a)}H[c+8>>2]=0;H[c>>2]=0;H[c+4>>2]=0;f=H[e+556>>2];if(f){a=0;o:{if(!f){break o}b=f<<2;if(!b){break o}a=H[33808];d=Ra[H[H[a>>2]+20>>2]](a)|0?51948:55639;a=Ra[H[H[a+12>>2]+8>>2]](a+12|0,b,d,13582,553)|0}b=H[c+4>>2];if((b|0)>0){g=(b<<2)+a|0;d=H[c>>2];b=a;while(1){H[b>>2]=H[d>>2];d=d+4|0;b=b+4|0;if(g>>>0>b>>>0){continue}break}}p:{if(H[c+8>>2]<0){break p}b=H[c>>2];if(!b){break p}d=H[33808];Ra[H[H[d+12>>2]+12>>2]](d+12|0,b)}H[c+8>>2]=f;H[c>>2]=a}q:{if(!H[e+536>>2]){break q}f=0;b=H[e+532>>2];a=H[b>>2];if((a|0)==-1){d=H[e+540>>2];while(1){f=f+1|0;if((d|0)==(f|0)){break q}a=H[b+(f<<2)>>2];if((a|0)==-1){continue}break}}while(1){j=a<<2;i=j+H[e+524>>2]|0;a=H[c+4>>2];r:{if(a>>>0>=(H[c+8>>2]&2147483647)>>>0){a=0;b=H[c+8>>2]&2147483647;h=b?b<<1:1;s:{if(!h){break s}b=h<<2;if(!b){break s}a=H[33808];d=Ra[H[H[a>>2]+20>>2]](a)|0?51948:55639;a=Ra[H[H[a+12>>2]+8>>2]](a+12|0,b,d,13582,553)|0}d=H[c+4>>2];k=(d<<2)+a|0;if((d|0)>0){g=H[c>>2];b=a;while(1){H[b>>2]=H[g>>2];g=g+4|0;b=b+4|0;if(k>>>0>b>>>0){continue}break}}H[k>>2]=H[i>>2];t:{if(H[c+8>>2]<0){break t}b=H[c>>2];if(!b){break t}d=H[33808];Ra[H[H[d+12>>2]+12>>2]](d+12|0,b);d=H[c+4>>2]}H[c+8>>2]=h;H[c>>2]=a;H[c+4>>2]=d+1;break r}H[H[c>>2]+(a<<2)>>2]=H[i>>2];H[c+4>>2]=a+1}a=H[j+H[e+528>>2]>>2];if((a|0)!=-1){continue}b=H[e+532>>2];d=H[e+540>>2];while(1){f=f+1|0;if((d|0)==(f|0)){break q}a=H[b+(f<<2)>>2];if((a|0)==-1){continue}break}continue}}if(H[c+4>>2]){a=0;while(1){b=H[H[c>>2]+(a<<2)>>2];Ra[H[H[b>>2]>>2]](b);a=a+1|0;if(a>>>0>2]){continue}break}}a=H[c+8>>2];u:{if((a|0)<0|!(a&2147483647)){break u}a=H[c>>2];if(!a){break u}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,a)}H[c+8>>2]=0;H[c>>2]=0;H[c+4>>2]=0;a=H[e+636>>2];if(a){Ll(c,a)}v:{if(!H[e+616>>2]){break v}f=0;b=H[e+612>>2];a=H[b>>2];if((a|0)==-1){d=H[e+620>>2];while(1){f=f+1|0;if((d|0)==(f|0)){break v}a=H[b+(f<<2)>>2];if((a|0)==-1){continue}break}}while(1){d=a<<2;a=d+H[e+604>>2]|0;b=H[c+4>>2];w:{if(b>>>0>=(H[c+8>>2]&2147483647)>>>0){Ml(c,a);break w}H[H[c>>2]+(b<<2)>>2]=H[a>>2];H[c+4>>2]=b+1}a=H[d+H[e+608>>2]>>2];if((a|0)!=-1){continue}b=H[e+612>>2];d=H[e+620>>2];while(1){f=f+1|0;if((d|0)==(f|0)){break v}a=H[b+(f<<2)>>2];if((a|0)==-1){continue}break}continue}}if(H[c+4>>2]){a=0;while(1){b=H[H[c>>2]+(a<<2)>>2];Ra[H[H[b>>2]>>2]](b);a=a+1|0;if(a>>>0>2]){continue}break}}a=H[c+8>>2];x:{if((a|0)<0|!(a&2147483647)){break x}a=H[c>>2];if(!a){break x}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,a)}if(H[e+676>>2]){while(1){a=H[H[e+644>>2]>>2];b=H[a+16>>2]-1|0;H[a+16>>2]=b;if(!b){Ra[H[H[a+12>>2]+8>>2]](a+12|0)}if(H[e+676>>2]){continue}break}}if(H[e+44>>2]){while(1){a=H[H[e+12>>2]>>2];Ra[H[H[a>>2]>>2]](a);if(H[e+44>>2]){continue}break}}if(H[e+84>>2]){while(1){a=H[H[e+52>>2]>>2];Ra[H[H[a>>2]>>2]](a);if(H[e+84>>2]){continue}break}}if(H[e+124>>2]){while(1){a=H[H[e+92>>2]>>2];Ra[H[H[a>>2]>>2]](a);if(H[e+124>>2]){continue}break}}if(H[e+164>>2]){while(1){a=H[H[e+132>>2]>>2];Ra[H[H[a>>2]>>2]](a);if(H[e+164>>2]){continue}break}}Ra[H[H[e>>2]+4>>2]](e);Oa=c+16|0;H[33768]=0;a=H[33772];if(a){Ra[H[H[a>>2]+4>>2]](a)}H[33772]=0;r5()}}function RP(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=O(0),m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;h=H[a+20>>2];d=H[a+28>>2];H[H[H[d+1004>>2]+4>>2]+8>>2]=0;i=H[d+1e3>>2];a=H[i+284>>2];H[d+2704>>2]=0;H[d+2708>>2]=0;p=H[H[d+976>>2]+1156>>2];b=H[d+1012>>2];Ra[H[H[b>>2]+124>>2]](b,a);k=H[d+2360>>2]&8;a:{b:{c=H[d+2448>>2]&2147483647;if(c){j=H[d+2444>>2];while(1){a=H[j+(e<<2)>>2];if(a){break b}e=e+1|0;if((c|0)!=(e|0)){continue}break}}j=!h;break a}b=f7(a)|e<<5;f=a&a-1;c:{if(f){break c}a=e+1|0;a=a>>>0>c>>>0?a:c;while(1){e=e+1|0;if(c>>>0<=e>>>0){f=0;e=a;break c}f=H[j+(e<<2)>>2];if(!f){continue}break}}j=!h;if((b|0)==-1){break a}while(1){a=yq(p,1072);l=L[d+1080>>2];c=H[d+1e3>>2];g=H[d+1012>>2];m=H[d+16>>2];n=H[d+20>>2];H[a+24>>2]=0;H[a+16>>2]=0;H[a+20>>2]=0;H[a+8>>2]=m;H[a+12>>2]=n;F[a+1068|0]=(k|0)!=0;H[a+1064>>2]=g;H[a+1060>>2]=c;L[a+1056>>2]=l;H[a+28>>2]=-128;H[a+32>>2]=-128;c=a+1044|0;H[c>>2]=-128;H[c+4>>2]=-128;c=a+1036|0;H[c>>2]=-128;H[c+4>>2]=-128;c=a+1028|0;H[c>>2]=-128;H[c+4>>2]=-128;H[a+1020>>2]=-128;H[a+1024>>2]=-128;H[a+1012>>2]=-128;H[a+1016>>2]=-128;H[a+1004>>2]=-128;H[a+1008>>2]=-128;H[a+996>>2]=-128;H[a+1e3>>2]=-128;H[a+988>>2]=-128;H[a+992>>2]=-128;H[a+980>>2]=-128;H[a+984>>2]=-128;H[a+972>>2]=-128;H[a+976>>2]=-128;H[a+964>>2]=-128;H[a+968>>2]=-128;H[a+956>>2]=-128;H[a+960>>2]=-128;H[a+948>>2]=-128;H[a+952>>2]=-128;H[a+940>>2]=-128;H[a+944>>2]=-128;H[a+932>>2]=-128;H[a+936>>2]=-128;H[a+924>>2]=-128;H[a+928>>2]=-128;H[a+916>>2]=-128;H[a+920>>2]=-128;H[a+908>>2]=-128;H[a+912>>2]=-128;H[a+900>>2]=-128;H[a+904>>2]=-128;H[a+892>>2]=-128;H[a+896>>2]=-128;H[a+884>>2]=-128;H[a+888>>2]=-128;H[a+876>>2]=-128;H[a+880>>2]=-128;H[a+868>>2]=-128;H[a+872>>2]=-128;H[a+860>>2]=-128;H[a+864>>2]=-128;H[a+852>>2]=-128;H[a+856>>2]=-128;H[a+844>>2]=-128;H[a+848>>2]=-128;H[a+836>>2]=-128;H[a+840>>2]=-128;H[a+828>>2]=-128;H[a+832>>2]=-128;H[a+820>>2]=-128;H[a+824>>2]=-128;H[a+812>>2]=-128;H[a+816>>2]=-128;H[a+804>>2]=-128;H[a+808>>2]=-128;H[a+796>>2]=-128;H[a+800>>2]=-128;H[a+788>>2]=-128;H[a+792>>2]=-128;H[a+780>>2]=-128;H[a+784>>2]=-128;H[a+772>>2]=-128;H[a+776>>2]=-128;H[a+764>>2]=-128;H[a+768>>2]=-128;H[a+756>>2]=-128;H[a+760>>2]=-128;H[a+748>>2]=-128;H[a+752>>2]=-128;H[a+740>>2]=-128;H[a+744>>2]=-128;H[a+732>>2]=-128;H[a+736>>2]=-128;H[a+724>>2]=-128;H[a+728>>2]=-128;H[a+716>>2]=-128;H[a+720>>2]=-128;H[a+708>>2]=-128;H[a+712>>2]=-128;H[a+700>>2]=-128;H[a+704>>2]=-128;H[a+692>>2]=-128;H[a+696>>2]=-128;H[a+684>>2]=-128;H[a+688>>2]=-128;H[a+676>>2]=-128;H[a+680>>2]=-128;H[a+668>>2]=-128;H[a+672>>2]=-128;H[a+660>>2]=-128;H[a+664>>2]=-128;H[a+652>>2]=-128;H[a+656>>2]=-128;H[a+644>>2]=-128;H[a+648>>2]=-128;H[a+636>>2]=-128;H[a+640>>2]=-128;H[a+628>>2]=-128;H[a+632>>2]=-128;H[a+620>>2]=-128;H[a+624>>2]=-128;H[a+612>>2]=-128;H[a+616>>2]=-128;H[a+604>>2]=-128;H[a+608>>2]=-128;H[a+596>>2]=-128;H[a+600>>2]=-128;H[a+588>>2]=-128;H[a+592>>2]=-128;H[a+580>>2]=-128;H[a+584>>2]=-128;H[a+572>>2]=-128;H[a+576>>2]=-128;H[a+564>>2]=-128;H[a+568>>2]=-128;H[a+556>>2]=-128;H[a+560>>2]=-128;H[a+548>>2]=-128;H[a+552>>2]=-128;H[a+540>>2]=-128;H[a+544>>2]=-128;H[a+532>>2]=-128;H[a+536>>2]=-128;H[a+524>>2]=-128;H[a+528>>2]=-128;H[a+516>>2]=-128;H[a+520>>2]=-128;H[a+508>>2]=-128;H[a+512>>2]=-128;H[a+500>>2]=-128;H[a+504>>2]=-128;H[a+492>>2]=-128;H[a+496>>2]=-128;H[a+484>>2]=-128;H[a+488>>2]=-128;H[a+476>>2]=-128;H[a+480>>2]=-128;H[a+468>>2]=-128;H[a+472>>2]=-128;H[a+460>>2]=-128;H[a+464>>2]=-128;H[a+452>>2]=-128;H[a+456>>2]=-128;H[a+444>>2]=-128;H[a+448>>2]=-128;H[a+436>>2]=-128;H[a+440>>2]=-128;H[a+428>>2]=-128;H[a+432>>2]=-128;H[a+420>>2]=-128;H[a+424>>2]=-128;H[a+412>>2]=-128;H[a+416>>2]=-128;H[a+404>>2]=-128;H[a+408>>2]=-128;H[a+396>>2]=-128;H[a+400>>2]=-128;H[a+388>>2]=-128;H[a+392>>2]=-128;H[a+380>>2]=-128;H[a+384>>2]=-128;H[a+372>>2]=-128;H[a+376>>2]=-128;H[a+364>>2]=-128;H[a+368>>2]=-128;H[a+356>>2]=-128;H[a+360>>2]=-128;H[a+348>>2]=-128;H[a+352>>2]=-128;H[a+340>>2]=-128;H[a+344>>2]=-128;H[a+332>>2]=-128;H[a+336>>2]=-128;H[a+324>>2]=-128;H[a+328>>2]=-128;H[a+316>>2]=-128;H[a+320>>2]=-128;H[a+308>>2]=-128;H[a+312>>2]=-128;H[a+300>>2]=-128;H[a+304>>2]=-128;H[a+292>>2]=-128;H[a+296>>2]=-128;H[a+284>>2]=-128;H[a+288>>2]=-128;H[a+276>>2]=-128;H[a+280>>2]=-128;H[a+268>>2]=-128;H[a+272>>2]=-128;H[a+260>>2]=-128;H[a+264>>2]=-128;H[a+252>>2]=-128;H[a+256>>2]=-128;H[a+244>>2]=-128;H[a+248>>2]=-128;H[a+236>>2]=-128;H[a+240>>2]=-128;H[a+228>>2]=-128;H[a+232>>2]=-128;H[a+220>>2]=-128;H[a+224>>2]=-128;H[a+212>>2]=-128;H[a+216>>2]=-128;H[a+204>>2]=-128;H[a+208>>2]=-128;H[a+196>>2]=-128;H[a+200>>2]=-128;H[a+188>>2]=-128;H[a+192>>2]=-128;H[a+180>>2]=-128;H[a+184>>2]=-128;H[a+172>>2]=-128;H[a+176>>2]=-128;H[a+164>>2]=-128;H[a+168>>2]=-128;H[a+156>>2]=-128;H[a+160>>2]=-128;H[a+148>>2]=-128;H[a+152>>2]=-128;H[a+140>>2]=-128;H[a+144>>2]=-128;H[a+132>>2]=-128;H[a+136>>2]=-128;H[a+124>>2]=-128;H[a+128>>2]=-128;H[a+116>>2]=-128;H[a+120>>2]=-128;H[a+108>>2]=-128;H[a+112>>2]=-128;H[a+100>>2]=-128;H[a+104>>2]=-128;H[a+92>>2]=-128;H[a+96>>2]=-128;H[a+84>>2]=-128;H[a+88>>2]=-128;H[a+76>>2]=-128;H[a+80>>2]=-128;H[a+68>>2]=-128;H[a+72>>2]=-128;H[a+60>>2]=-128;H[a+64>>2]=-128;H[a+52>>2]=-128;H[a+56>>2]=-128;H[a+44>>2]=-128;H[a+48>>2]=-128;H[a+36>>2]=-128;H[a+40>>2]=-128;H[a>>2]=120084;m=a+28|0;n=H[i+184>>2];q=H[d+2444>>2];c=0;while(1){g=H[(N(b&33554431,24)+n|0)+20>>2];d:{if(g){H[(c<<2)+m>>2]=b<<7;c=c+1|0;if(F[H[g+36>>2]+28|0]<0){break d}}g=(b>>>3&536870908)+q|0;o=H[g>>2];t=g,u=j7(-2,b)&o,H[t>>2]=u}e:{if(!f){b=-1;f=0;break e}o=e<<5;r=f7(f);f=f-1&f;f:{if(f){break f}b=e+1|0;g=H[d+2448>>2]&2147483647;b=b>>>0>g>>>0?b:g;s=H[d+2444>>2];while(1){e=e+1|0;if(g>>>0<=e>>>0){f=0;e=b;break f}f=H[(e<<2)+s>>2];if(!f){continue}break}}b=o|r;if(c>>>0>255){break e}if((b|0)!=-1){continue}}break}H[a+24>>2]=1;H[a+1052>>2]=c;H[a+20>>2]=h;if(h){Ra[H[H[h>>2]+16>>2]](h);H[a+16>>2]=H[H[a+20>>2]+16>>2]}Ra[H[H[a>>2]+20>>2]](a);if((b|0)!=-1){continue}break}}e=H[i+296>>2];if(e){c=k>>>3|0;i=H[i+292>>2];f=0;while(1){a=yq(p,48);l=L[d+1080>>2];b=H[d+1e3>>2];k=H[d+16>>2];g=H[d+20>>2];H[a+24>>2]=0;H[a+16>>2]=0;H[a+8>>2]=k;H[a+12>>2]=g;F[a+44|0]=c;H[a+40>>2]=b;L[a+36>>2]=l;b=e-f|0;H[a+32>>2]=b>>>0<32?b:32;H[a+28>>2]=i+(f<<2);H[a>>2]=120140;H[a+20>>2]=h;H[a+24>>2]=1;if(j){b=120140}else{Ra[H[H[h>>2]+16>>2]](h);H[a+16>>2]=H[H[a+20>>2]+16>>2];b=H[a>>2]}Ra[H[b+20>>2]](a);f=f+32|0;if(e>>>0>f>>>0){continue}break}}H[d+1064>>2]=0;Jx(H[d+976>>2]+24|0)}function $w(a,b,c,d,e,f,g,h,i,j){var k=0,l=0,m=0,n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=0,A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),G=O(0),I=O(0),J=O(0),K=O(0),M=O(0),P=O(0),Q=O(0),R=O(0),S=O(0),T=O(0),U=O(0),V=O(0),W=O(0),X=O(0),Y=O(0);l=Oa-160|0;Oa=l;m=a+112|0;z=H[a+444>>2];a:{if(H[(z+(d<<5)|0)+24>>2]==(c|0)){n=L[f+20>>2];o=L[f+24>>2];p=L[f>>2];q=L[f+4>>2];u=L[f+8>>2];s=L[f+16>>2];w=L[g+20>>2];t=L[g>>2];r=L[g+4>>2];v=L[g+8>>2];y=L[g+16>>2];L[l+152>>2]=-L[g+24>>2];L[l+148>>2]=-w;H[l+156>>2]=0;H[l+140>>2]=0;L[l+144>>2]=-y;L[l+136>>2]=-v;L[l+132>>2]=-r;L[l+128>>2]=-t;f=N(d,76);g=l+128|0;gw(l+96|0,H[a+396>>2]+N(d,96)|0,(H[m+340>>2]+N(d,160)|0)+120|0,f+H[a+384>>2]|0,g);L[l+88>>2]=o-L[l+120>>2];L[l+84>>2]=n-L[l+116>>2];H[l+92>>2]=0;H[l+76>>2]=0;L[l+80>>2]=s-L[l+112>>2];L[l+72>>2]=u-L[l+104>>2];L[l+68>>2]=q-L[l+100>>2];L[l+64>>2]=p-L[l+96>>2];mw(c,m,e,l- -64|0);lw(l,b,c,m,e,j);b=H[l+24>>2];H[l+52>>2]=H[l+20>>2];H[l+56>>2]=b;H[l+44>>2]=0;H[l+60>>2]=0;L[l+32>>2]=L[l>>2];b=H[l+8>>2];H[l+36>>2]=H[l+4>>2];H[l+40>>2]=b;L[l+48>>2]=L[l+16>>2];aw(l,(H[m+340>>2]+N(d,160)|0)+120|0,H[a+348>>2]+N(d,112)|0,H[a+360>>2]+N(d,36)|0,f+H[a+384>>2]|0,g,j,l+32|0);n=L[l+24>>2];a=H[l+16>>2];b=H[l+20>>2];c=H[l+4>>2];d=H[l>>2];o=L[l+8>>2];L[h>>2]=L[l+48>>2];L[h+4>>2]=L[l+52>>2];L[h+8>>2]=L[l+56>>2];L[h+16>>2]=L[l+32>>2];L[h+20>>2]=L[l+36>>2];L[h+24>>2]=L[l+40>>2];L[i+24>>2]=o;H[i+16>>2]=d;H[i+20>>2]=c;L[i+8>>2]=n;H[i>>2]=a;H[i+4>>2]=b;break a}k=Oa-2432|0;Oa=k;e=c;if((d|0)!=(c|0)){b=c;e=d;while(1){b:{if(b>>>0>>0){e=H[((e<<5)+z|0)+24>>2];break b}b=H[((b<<5)+z|0)+24>>2]}if((b|0)!=(e|0)){continue}break}}n=L[f+20>>2];p=L[f>>2];q=L[f+4>>2];o=L[f+8>>2];s=L[f+16>>2];u=O(-L[f+24>>2]);L[k+120>>2]=u;w=O(-n);L[k+116>>2]=w;b=0;H[k+124>>2]=0;t=O(-s);L[k+112>>2]=t;H[k+108>>2]=0;o=O(-o);L[k+104>>2]=o;r=O(-q);L[k+100>>2]=r;n=O(-p);L[k+96>>2]=n;q=L[g+20>>2];p=L[g+24>>2];x=L[g+16>>2];y=L[g+8>>2];s=L[g+4>>2];v=L[g>>2];f=k+128|0;a=f+(c<<5)|0;H[a+28>>2]=0;L[a+24>>2]=u;L[a+20>>2]=w;L[a+16>>2]=t;H[a+12>>2]=0;L[a+8>>2]=o;L[a+4>>2]=r;L[a>>2]=n;p=O(-p);L[k+88>>2]=p;q=O(-q);L[k+84>>2]=q;a=f+(d<<5)|0;v=O(-v);L[a>>2]=v;s=O(-s);L[a+4>>2]=s;y=O(-y);L[a+8>>2]=y;x=O(-x);L[a+16>>2]=x;L[a+20>>2]=q;L[a+24>>2]=p;H[a+28>>2]=0;H[a+12>>2]=0;H[k+92>>2]=0;H[k+76>>2]=0;L[k+80>>2]=x;L[k+72>>2]=y;L[k+68>>2]=s;L[k+64>>2]=v;if((c|0)!=(e|0)){while(1){gw(k+32|0,H[m+284>>2]+N(c,96)|0,(H[m+340>>2]+N(c,160)|0)+120|0,H[m+272>>2]+N(c,76)|0,k+96|0);H[k+108>>2]=0;H[k+124>>2]=0;n=L[k+32>>2];L[k+96>>2]=n;r=L[k+36>>2];L[k+100>>2]=r;o=L[k+40>>2];L[k+104>>2]=o;t=L[k+48>>2];L[k+112>>2]=t;w=L[k+52>>2];L[k+116>>2]=w;u=L[k+56>>2];L[k+120>>2]=u;a=H[((c<<5)+z|0)+24>>2];H[(k+2176|0)+(b<<2)>>2]=c;c=(k+128|0)+(a<<5)|0;H[c+28>>2]=0;L[c+16>>2]=t;H[c+12>>2]=0;L[c+8>>2]=o;L[c+4>>2]=r;L[c>>2]=n;L[c+24>>2]=u;L[c+20>>2]=w;b=b+1|0;c=a;if((e|0)!=(c|0)){continue}break}}a=b;if((d|0)!=(e|0)){while(1){gw(k+32|0,H[m+284>>2]+N(d,96)|0,(H[m+340>>2]+N(d,160)|0)+120|0,H[m+272>>2]+N(d,76)|0,k- -64|0);H[k+76>>2]=0;H[k+92>>2]=0;v=L[k+32>>2];L[k+64>>2]=v;s=L[k+36>>2];L[k+68>>2]=s;y=L[k+40>>2];L[k+72>>2]=y;x=L[k+48>>2];L[k+80>>2]=x;q=L[k+52>>2];L[k+84>>2]=q;p=L[k+56>>2];L[k+88>>2]=p;c=H[((d<<5)+z|0)+24>>2];H[(k+2176|0)+(a<<2)>>2]=d;d=(k+128|0)+(c<<5)|0;H[d+28>>2]=0;L[d+16>>2]=x;H[d+12>>2]=0;L[d+8>>2]=y;L[d+4>>2]=s;L[d>>2]=v;L[d+24>>2]=p;L[d+20>>2]=q;a=a+1|0;d=c;if((c|0)!=(e|0)){continue}break}u=L[k+120>>2];w=L[k+116>>2];t=L[k+112>>2];r=L[k+100>>2];o=L[k+104>>2];n=L[k+96>>2]}c=(k+128|0)+(e<<5)|0;H[c+28>>2]=0;L[c+16>>2]=t+x;H[c+12>>2]=0;L[c+8>>2]=o+y;L[c+4>>2]=r+s;L[c>>2]=n+v;L[c+24>>2]=u+p;L[c+20>>2]=w+q;d=a;if(e){while(1){c=e<<5;f=k+128|0;gw(k+32|0,H[m+284>>2]+N(e,96)|0,(H[m+340>>2]+N(e,160)|0)+120|0,H[m+260>>2]+N(e,76)|0,c+f|0);c=H[(c+z|0)+24>>2];f=(c<<5)+f|0;L[f>>2]=L[k+32>>2];H[f+12>>2]=0;g=H[k+40>>2];H[f+4>>2]=H[k+36>>2];H[f+8>>2]=g;L[f+16>>2]=L[k+48>>2];H[f+28>>2]=0;g=H[k+56>>2];H[f+20>>2]=H[k+52>>2];H[f+24>>2]=g;H[(k+2176|0)+(d<<2)>>2]=e;d=d+1|0;e=c;if(c){continue}break}}c:{if(!(F[H[m+364>>2]]&1)){o=L[k+148>>2];s=L[k+144>>2];p=L[k+136>>2];u=L[k+132>>2];q=L[k+128>>2];n=L[k+152>>2];break c}H[k+152>>2]=0;H[k+156>>2]=0;H[k+144>>2]=0;H[k+148>>2]=0;H[k+136>>2]=0;H[k+140>>2]=0;H[k+128>>2]=0;H[k+132>>2]=0;o=O(0);s=O(0);p=O(0);u=O(0);q=O(0);n=O(0)}I=L[m+472>>2];J=L[m+460>>2];K=L[m+448>>2];M=L[m+476>>2];P=L[m+464>>2];Q=L[m+452>>2];R=L[m+480>>2];S=L[m+468>>2];T=L[m+456>>2];r=L[m+420>>2];y=L[m+416>>2];U=L[m+508>>2];V=L[m+496>>2];W=L[m+484>>2];x=L[m+432>>2];A=L[m+424>>2];B=L[m+428>>2];w=L[m+512>>2];X=L[m+500>>2];Y=L[m+488>>2];C=L[m+412>>2];D=L[m+436>>2];t=O(-s);E=L[m+440>>2];G=L[m+444>>2];v=O(-u);u=O(O(O(O(D*t)-O(E*o))-O(G*n))+O(O(O(L[m+504>>2]*v)-O(q*L[m+492>>2]))-O(p*L[m+516>>2])));L[k+56>>2]=u;w=O(O(O(O(A*t)-O(B*o))-O(x*n))+O(O(O(X*v)-O(q*Y))-O(p*w)));L[k+52>>2]=w;H[k+60>>2]=0;H[k+44>>2]=0;t=O(O(O(O(C*t)-O(y*o))-O(r*n))+O(O(O(V*v)-O(q*W))-O(p*U)));L[k+48>>2]=t;r=O(O(O(x*v)-O(q*r))-O(p*G));x=O(-o);o=O(r+O(O(O(S*x)-O(s*T))-O(n*R)));L[k+40>>2]=o;r=O(O(O(O(B*v)-O(q*y))-O(p*E))+O(O(O(P*x)-O(s*Q))-O(n*M)));L[k+36>>2]=r;n=O(O(O(O(A*v)-O(q*C))-O(p*D))+O(O(O(J*x)-O(s*K))-O(n*I)));L[k+32>>2]=n;if(a>>>0>>0){while(1){d=d-1|0;c=H[(k+2176|0)+(d<<2)>>2];aw(k,(H[m+340>>2]+N(c,160)|0)+120|0,H[m+236>>2]+N(c,112)|0,H[m+248>>2]+N(c,36)|0,H[m+272>>2]+N(c,76)|0,(k+128|0)+(c<<5)|0,j,k+32|0);H[k+44>>2]=0;H[k+60>>2]=0;n=L[k>>2];L[k+32>>2]=n;r=L[k+4>>2];L[k+36>>2]=r;o=L[k+8>>2];L[k+40>>2]=o;t=L[k+16>>2];L[k+48>>2]=t;w=L[k+20>>2];L[k+52>>2]=w;u=L[k+24>>2];L[k+56>>2]=u;if(a>>>0>>0){continue}break}}p=u;q=w;v=t;s=o;y=r;x=n;if(a>>>0>b>>>0){while(1){a=a-1|0;c=H[(k+2176|0)+(a<<2)>>2];aw(k,(H[m+340>>2]+N(c,160)|0)+120|0,H[m+236>>2]+N(c,112)|0,H[m+248>>2]+N(c,36)|0,H[m+272>>2]+N(c,76)|0,(k+128|0)+(c<<5)|0,j,k+32|0);if(a>>>0>b>>>0){continue}break}p=L[k+24>>2];q=L[k+20>>2];v=L[k+16>>2];s=L[k+8>>2];y=L[k+4>>2];u=L[k+56>>2];w=L[k+52>>2];t=L[k+48>>2];r=L[k+36>>2];o=L[k+40>>2];x=L[k>>2];n=L[k+32>>2]}if(b){while(1){b=b-1|0;a=H[(k+2176|0)+(b<<2)>>2];aw(k,(H[m+340>>2]+N(a,160)|0)+120|0,H[m+236>>2]+N(a,112)|0,H[m+248>>2]+N(a,36)|0,H[m+272>>2]+N(a,76)|0,(k+128|0)+(a<<5)|0,j,k+32|0);if(b){continue}break}u=L[k+24>>2];w=L[k+20>>2];t=L[k+16>>2];o=L[k+8>>2];r=L[k+4>>2];n=L[k>>2]}L[h+16>>2]=n;L[h+8>>2]=u;L[h+4>>2]=w;L[h>>2]=t;L[h+24>>2]=o;L[h+20>>2]=r;L[i+24>>2]=s;L[i+20>>2]=y;L[i+16>>2]=x;L[i+8>>2]=p;L[i+4>>2]=q;L[i>>2]=v;Oa=k+2432|0}Oa=l+160|0}function B0(a,b,c,d,e,f,g,h,i,j,k,l,m,n){var o=0,p=O(0),q=O(0),r=O(0),s=0,t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=0,B=O(0),C=O(0),D=O(0),E=O(0),F=O(0),G=O(0),I=O(0),J=O(0),M=O(0),Q=O(0),R=O(0),S=O(0),T=O(0),U=0;o=Oa-224|0;Oa=o;A=H[c+32>>2];F=L[A+20>>2];s=H[d+32>>2];D=L[s+20>>2];R=L[A+24>>2];S=L[s+24>>2];M=L[A+16>>2];Q=L[s+16>>2];t=L[s+8>>2];y=L[A>>2];v=L[s>>2];q=L[A+8>>2];z=L[s+4>>2];p=L[A+12>>2];x=L[s+12>>2];r=L[A+4>>2];H[o+220>>2]=0;H[o+204>>2]=0;H[o+188>>2]=0;u=O(O(O(q*z)-O(r*t))+O(O(p*v)-O(y*x)));w=O(u+u);B=O(O(O(y*t)-O(q*v))+O(O(p*z)-O(r*x)));C=O(B+B);E=O(O(1)-O(u*w));T=O(B*C);L[o+200>>2]=E-T;u=O(O(O(r*v)-O(y*z))+O(O(p*t)-O(q*x)));J=O(u*C);I=v;v=O(-y);G=O(O(p*x)-O(O(O(I*v)-O(z*r))-O(q*t)));t=O(G*w);L[o+196>>2]=J-t;L[o+184>>2]=J+t;I=E;E=O(u+u);J=O(u*E);L[o+180>>2]=I-J;t=O(Q-M);I=O(v*t);v=O(D-F);z=O(S-R);x=O(O(I-O(v*r))-O(q*z));F=O(O(p*p)+O(-.5));D=O(O(O(p*O(O(r*t)-O(y*v)))+O(F*z))-O(q*x));L[o+216>>2]=D+D;D=O(O(O(F*v)+O(p*O(O(y*z)-O(q*t))))-O(r*x));L[o+212>>2]=D+D;H[o+172>>2]=0;u=O(u*w);C=O(G*C);L[o+192>>2]=u+C;w=O(B*w);B=O(G*E);L[o+176>>2]=w-B;L[o+168>>2]=u-C;L[o+164>>2]=w+B;L[o+160>>2]=O(O(1)-T)-J;p=O(O(O(F*t)+O(p*O(O(q*v)-O(r*z))))-O(y*x));L[o+208>>2]=p+p;w=L[s+20>>2];u=L[A+20>>2];G=L[s+24>>2];F=L[A+24>>2];t=L[A+8>>2];v=L[A>>2];z=L[A+4>>2];x=L[A+12>>2];p=L[s+12>>2];y=L[s>>2];B=L[s+16>>2];C=L[A+16>>2];q=L[s+4>>2];r=L[s+8>>2];H[o+156>>2]=0;H[o+140>>2]=0;H[o+124>>2]=0;M=O(-y);B=O(C-B);C=O(u-w);G=O(F-G);F=O(O(O(M*B)-O(C*q))-O(r*G));S=O(O(p*p)+O(-.5));w=O(O(O(p*O(O(q*B)-O(y*C)))+O(S*G))-O(r*F));L[o+152>>2]=w+w;w=O(O(O(S*C)+O(p*O(O(y*G)-O(r*B))))-O(q*F));L[o+148>>2]=w+w;u=O(O(O(r*z)-O(q*t))+O(O(p*v)-O(y*x)));w=O(u+u);D=O(O(O(y*t)-O(r*v))+O(O(p*z)-O(q*x)));R=O(D+D);Q=O(O(1)-O(u*w));E=O(D*R);T=O(Q-E);L[o+136>>2]=T;u=O(O(O(q*v)-O(y*z))+O(O(p*t)-O(r*x)));J=O(u*R);t=O(O(p*x)-O(O(O(M*v)-O(z*q))-O(r*t)));v=O(t*w);z=O(J-v);L[o+132>>2]=z;v=O(J+v);L[o+120>>2]=v;x=O(u+u);M=O(u*x);Q=O(Q-M);L[o+116>>2]=Q;H[o+108>>2]=0;p=O(O(O(S*B)+O(p*O(O(r*C)-O(q*G))))-O(y*F));L[o+144>>2]=p+p;p=O(u*w);q=O(t*R);y=O(p+q);L[o+128>>2]=y;r=O(D*w);t=O(t*x);x=O(r-t);L[o+112>>2]=x;w=O(p-q);L[o+104>>2]=w;t=O(r+t);L[o+100>>2]=t;u=O(O(O(1)-E)-M);L[o+96>>2]=u;a:{b:{if(m){H[o+92>>2]=0;H[o+64>>2]=2139095039;H[o+56>>2]=0;H[o+60>>2]=0;H[o+48>>2]=0;H[o+52>>2]=0;if(!C0(a,b,c,d,o+96|0,o+160|0,g,o- -64|0,o+44|0,o+48|0,0,o+92|0)){h=0;break a}h=0;if(!C0(b,a,d,c,o+160|0,o+96|0,g,o- -64|0,o+40|0,o+48|0,1,o+92|0)){break a}j=N(H[o+44>>2],20);A=N(H[o+40>>2],20);m=0;while(1){c:{d:{if(m&1){h=D0(a,b,c,d,o+96|0,o+160|0,g,o- -64|0,o+48|0,o+92|0);if(!h|H[o+92>>2]!=2){break a}break d}e:{switch(H[o+92>>2]){case 0:h=H[a+24>>2];H[o+28>>2]=0;k=L[o+56>>2];l=L[o+48>>2];n=L[o+52>>2];L[o+24>>2]=O(L[o+136>>2]*k)+O(O(L[o+104>>2]*l)+O(n*L[o+120>>2]));L[o+20>>2]=O(k*L[o+132>>2])+O(O(l*L[o+100>>2])+O(n*L[o+116>>2]));L[o+16>>2]=O(k*L[o+128>>2])+O(O(l*L[o+96>>2])+O(n*L[o+112>>2]));A0(a,b,h+j|0,H[b+24>>2]+N(E0(b,d,o+16|0),20)|0,c,d,o+96|0,e,f,g);if(!H[f>>2]){break c}k=O(-L[o+24>>2]);l=O(-L[o+20>>2]);n=O(-L[o+16>>2]);i=0;while(1){h=N(i,48)+e|0;s=H[h+20>>2];H[o>>2]=H[h+16>>2];H[o+4>>2]=s;s=H[h+4>>2];H[h+16>>2]=H[h>>2];H[h+20>>2]=s;s=H[h+28>>2];H[o+8>>2]=H[h+24>>2];H[o+12>>2]=s;s=H[h+12>>2];H[h+24>>2]=H[h+8>>2];H[h+28>>2]=s;s=H[o+4>>2];H[h>>2]=H[o>>2];H[h+4>>2]=s;s=H[o+12>>2];U=H[o+8>>2];L[h+36>>2]=l;L[h+40>>2]=k;H[h+8>>2]=U;H[h+12>>2]=s;L[h+32>>2]=n;i=i+1|0;if(i>>>0>2]){continue}break};break c;case 1:break e;default:break d}}h=H[a+24>>2];i=H[b+24>>2];H[o+28>>2]=0;k=L[o+56>>2];l=L[o+48>>2];n=L[o+52>>2];L[o+24>>2]=O(L[o+200>>2]*k)+O(O(L[o+168>>2]*l)+O(n*L[o+184>>2]));L[o+20>>2]=O(k*L[o+196>>2])+O(O(l*L[o+164>>2])+O(n*L[o+180>>2]));L[o+16>>2]=O(k*L[o+192>>2])+O(O(l*L[o+160>>2])+O(n*L[o+176>>2]));A0(b,a,i+A|0,h+N(E0(a,c,o+16|0),20)|0,d,c,o+160|0,e,f,g);break c}h=H[a+24>>2];H[o+28>>2]=0;k=L[o+56>>2];L[o+24>>2]=-k;l=L[o+52>>2];L[o+20>>2]=-l;n=L[o+48>>2];L[o+16>>2]=-n;i=o+16|0;s=E0(a,c,i);U=H[b+24>>2];H[o+28>>2]=0;L[o+24>>2]=O(k*L[o+136>>2])+O(O(n*L[o+104>>2])+O(l*L[o+120>>2]));L[o+20>>2]=O(k*L[o+132>>2])+O(O(n*L[o+100>>2])+O(l*L[o+116>>2]));L[o+16>>2]=O(k*L[o+128>>2])+O(O(n*L[o+96>>2])+O(l*L[o+112>>2]));A0(b,a,N(E0(b,d,i),20)+U|0,h+N(s,20)|0,d,c,o+160|0,e,f,g)}h=H[f>>2]!=0|m;m=1;if(!(h&1)){continue}break}break b}p=L[h>>2];q=L[h+4>>2];r=L[h+8>>2];H[o+76>>2]=0;L[o+72>>2]=-r;L[o+68>>2]=-q;L[o+64>>2]=-p;H[o+60>>2]=0;L[o+56>>2]=O(T*r)+O(O(y*p)+O(z*q));L[o+52>>2]=O(v*r)+O(O(x*p)+O(Q*q));L[o+48>>2]=O(w*r)+O(O(u*p)+O(t*q));p=O(n*O(.05000000074505806));n=O(n*O(.009999999776482582));l=lp?p:l);l=L[i+8>>2];q=L[i>>2];r=L[i+4>>2];H[o+28>>2]=0;l=O(l-L[o+152>>2]);q=O(q-L[o+144>>2]);r=O(r-L[o+148>>2]);L[o+24>>2]=O(L[o+136>>2]*l)+O(O(L[o+128>>2]*q)+O(r*L[o+132>>2]));L[o+20>>2]=O(L[o+120>>2]*l)+O(O(L[o+112>>2]*q)+O(r*L[o+116>>2]));L[o+16>>2]=O(L[o+104>>2]*l)+O(O(L[o+96>>2]*q)+O(r*L[o+100>>2]));k=kp?p:k);h=H[d+40>>2];i=H[b+24>>2]+N(j,20)|0;k=L[i+8>>2];l=L[i>>2];n=L[i+4>>2];p=O(O(L[h+40>>2]*k)+O(O(L[h+32>>2]*l)+O(n*L[h+36>>2])));I=p;E=O(p*p);p=O(O(L[h+8>>2]*k)+O(O(L[h>>2]*l)+O(n*L[h+4>>2])));k=O(O(L[h+24>>2]*k)+O(O(L[h+16>>2]*l)+O(n*L[h+20>>2])));l=O(O(1)/O(W(O(E+O(O(p*p)+O(k*k))))));v=O(P(O(O(O(I*l)*L[o+72>>2])+O(O(O(p*l)*L[o+64>>2])+O(O(k*l)*L[o+68>>2])))));h=H[c+40>>2];j=H[a+24>>2]+N(m,20)|0;k=L[j+8>>2];l=L[j>>2];n=L[j+4>>2];p=O(O(L[h+40>>2]*k)+O(O(L[h+32>>2]*l)+O(n*L[h+36>>2])));I=p;E=O(p*p);p=O(O(L[h+8>>2]*k)+O(O(L[h>>2]*l)+O(n*L[h+4>>2])));n=O(O(L[h+24>>2]*k)+O(O(L[h+16>>2]*l)+O(n*L[h+20>>2])));q=O(O(1)/O(W(O(E+O(O(p*p)+O(n*n))))));k=O(I*q);l=O(p*q);n=O(n*q);if(v>=O(P(O(O(k*L[o+56>>2])+O(O(l*L[o+48>>2])+O(L[o+52>>2]*n)))))){A0(b,a,i,j,d,c,o+160|0,e,f,g);break b}A0(a,b,j,i,c,d,o+96|0,e,f,g);if(!H[f>>2]){break b}p=O(-O(O(L[o+136>>2]*k)+O(O(L[o+104>>2]*l)+O(n*L[o+120>>2]))));q=O(-O(O(L[o+132>>2]*k)+O(O(L[o+100>>2]*l)+O(n*L[o+116>>2]))));k=O(-O(O(L[o+128>>2]*k)+O(O(L[o+96>>2]*l)+O(n*L[o+112>>2]))));i=0;while(1){a=N(i,48)+e|0;b=H[a+20>>2];H[o+16>>2]=H[a+16>>2];H[o+20>>2]=b;b=H[a+4>>2];H[a+16>>2]=H[a>>2];H[a+20>>2]=b;b=H[a+28>>2];H[o+24>>2]=H[a+24>>2];H[o+28>>2]=b;b=H[a+12>>2];H[a+24>>2]=H[a+8>>2];H[a+28>>2]=b;b=H[o+20>>2];H[a>>2]=H[o+16>>2];H[a+4>>2]=b;b=H[o+28>>2];c=H[o+24>>2];L[a+36>>2]=q;L[a+40>>2]=p;H[a+8>>2]=c;H[a+12>>2]=b;L[a+32>>2]=k;i=i+1|0;if(i>>>0>2]){continue}break}}h=1}Oa=o+224|0;return h}function Ep(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;if(!H[a+4656>>2]){e=a+32|0;c=H[e+2352>>2];d=H[e+976>>2]+1164|0;a=S6(b,0,900);H[a+704>>2]=H[c+16>>2]+H[a+704>>2];f=H[c+20>>2]+H[a+708>>2]|0;H[a+708>>2]=f;H[a+732>>2]=H[c+20>>2]+H[a+732>>2];H[a+712>>2]=H[c+24>>2]+H[a+712>>2];H[a+760>>2]=H[c+24>>2]+H[a+760>>2];H[a+716>>2]=H[c+28>>2]+H[a+716>>2];H[a+788>>2]=H[c+28>>2]+H[a+788>>2];H[a+720>>2]=H[c+32>>2]+H[a+720>>2];H[a+816>>2]=H[c+32>>2]+H[a+816>>2];H[a+724>>2]=H[c+36>>2]+H[a+724>>2];H[a+844>>2]=H[c+36>>2]+H[a+844>>2];H[a+728>>2]=H[c+40>>2]+H[a+728>>2];H[a+872>>2]=H[c+40>>2]+H[a+872>>2];H[a+732>>2]=H[c+44>>2]+H[a+732>>2];H[a+708>>2]=f+H[c+44>>2];H[a+736>>2]=H[c+48>>2]+H[a+736>>2];H[a+740>>2]=H[c+52>>2]+H[a+740>>2];H[a+764>>2]=H[c+52>>2]+H[a+764>>2];H[a+744>>2]=H[c+56>>2]+H[a+744>>2];H[a+792>>2]=H[c+56>>2]+H[a+792>>2];H[a+748>>2]=H[c+60>>2]+H[a+748>>2];H[a+820>>2]=H[c+60>>2]+H[a+820>>2];f=c- -64|0;H[a+752>>2]=H[f>>2]+H[a+752>>2];H[a+848>>2]=H[f>>2]+H[a+848>>2];H[a+756>>2]=H[c+68>>2]+H[a+756>>2];H[a+876>>2]=H[c+68>>2]+H[a+876>>2];H[a+760>>2]=H[c+72>>2]+H[a+760>>2];H[a+712>>2]=H[c+72>>2]+H[a+712>>2];H[a+764>>2]=H[c+76>>2]+H[a+764>>2];H[a+740>>2]=H[c+76>>2]+H[a+740>>2];H[a+768>>2]=H[c+80>>2]+H[a+768>>2];H[a+772>>2]=H[c+84>>2]+H[a+772>>2];H[a+796>>2]=H[c+84>>2]+H[a+796>>2];H[a+776>>2]=H[c+88>>2]+H[a+776>>2];H[a+824>>2]=H[c+88>>2]+H[a+824>>2];H[a+780>>2]=H[c+92>>2]+H[a+780>>2];H[a+852>>2]=H[c+92>>2]+H[a+852>>2];H[a+784>>2]=H[c+96>>2]+H[a+784>>2];H[a+880>>2]=H[c+96>>2]+H[a+880>>2];H[a+788>>2]=H[c+100>>2]+H[a+788>>2];H[a+716>>2]=H[c+100>>2]+H[a+716>>2];H[a+792>>2]=H[c+104>>2]+H[a+792>>2];H[a+744>>2]=H[c+104>>2]+H[a+744>>2];H[a+796>>2]=H[c+108>>2]+H[a+796>>2];H[a+772>>2]=H[c+108>>2]+H[a+772>>2];H[a+800>>2]=H[c+112>>2]+H[a+800>>2];H[a+804>>2]=H[c+116>>2]+H[a+804>>2];H[a+828>>2]=H[c+116>>2]+H[a+828>>2];H[a+808>>2]=H[c+120>>2]+H[a+808>>2];H[a+856>>2]=H[c+120>>2]+H[a+856>>2];H[a+812>>2]=H[c+124>>2]+H[a+812>>2];H[a+884>>2]=H[c+124>>2]+H[a+884>>2];H[a+816>>2]=H[c+128>>2]+H[a+816>>2];H[a+720>>2]=H[c+128>>2]+H[a+720>>2];H[a+820>>2]=H[c+132>>2]+H[a+820>>2];H[a+748>>2]=H[c+132>>2]+H[a+748>>2];H[a+824>>2]=H[c+136>>2]+H[a+824>>2];H[a+776>>2]=H[c+136>>2]+H[a+776>>2];H[a+828>>2]=H[c+140>>2]+H[a+828>>2];H[a+804>>2]=H[c+140>>2]+H[a+804>>2];H[a+832>>2]=H[c+144>>2]+H[a+832>>2];H[a+836>>2]=H[c+148>>2]+H[a+836>>2];H[a+860>>2]=H[c+148>>2]+H[a+860>>2];H[a+840>>2]=H[c+152>>2]+H[a+840>>2];H[a+888>>2]=H[c+152>>2]+H[a+888>>2];H[a+108>>2]=H[c>>2];H[a+112>>2]=H[c+4>>2];H[a+116>>2]=H[d>>2];H[a+508>>2]=H[d+392>>2];H[a+312>>2]=H[d+196>>2];c=H[d+4>>2];H[a+144>>2]=c;H[a+120>>2]=c;c=H[d+396>>2];H[a+536>>2]=c;H[a+512>>2]=c;c=H[d+200>>2];H[a+340>>2]=c;H[a+316>>2]=c;c=H[d+8>>2];H[a+172>>2]=c;H[a+124>>2]=c;c=H[d+400>>2];H[a+564>>2]=c;H[a+516>>2]=c;c=H[d+204>>2];H[a+368>>2]=c;H[a+320>>2]=c;c=H[d+12>>2];H[a+200>>2]=c;H[a+128>>2]=c;c=H[d+404>>2];H[a+592>>2]=c;H[a+520>>2]=c;c=H[d+208>>2];H[a+396>>2]=c;H[a+324>>2]=c;c=H[d+16>>2];H[a+228>>2]=c;H[a+132>>2]=c;c=H[d+408>>2];H[a+620>>2]=c;H[a+524>>2]=c;c=H[d+212>>2];H[a+424>>2]=c;H[a+328>>2]=c;c=H[d+20>>2];H[a+256>>2]=c;H[a+136>>2]=c;c=H[d+412>>2];H[a+648>>2]=c;H[a+528>>2]=c;c=H[d+216>>2];H[a+452>>2]=c;H[a+332>>2]=c;c=H[d+24>>2];H[a+284>>2]=c;H[a+140>>2]=c;c=H[d+416>>2];H[a+676>>2]=c;H[a+532>>2]=c;c=H[d+220>>2];H[a+480>>2]=c;H[a+336>>2]=c;H[a+148>>2]=H[d+32>>2];H[a+540>>2]=H[d+424>>2];H[a+344>>2]=H[d+228>>2];c=H[d+36>>2];H[a+176>>2]=c;H[a+152>>2]=c;c=H[d+428>>2];H[a+568>>2]=c;H[a+544>>2]=c;c=H[d+232>>2];H[a+372>>2]=c;H[a+348>>2]=c;c=H[d+40>>2];H[a+204>>2]=c;H[a+156>>2]=c;c=H[d+432>>2];H[a+596>>2]=c;H[a+548>>2]=c;c=H[d+236>>2];H[a+400>>2]=c;H[a+352>>2]=c;c=H[d+44>>2];H[a+232>>2]=c;H[a+160>>2]=c;c=H[d+436>>2];H[a+624>>2]=c;H[a+552>>2]=c;c=H[d+240>>2];H[a+428>>2]=c;H[a+356>>2]=c;c=H[d+48>>2];H[a+260>>2]=c;H[a+164>>2]=c;c=H[d+440>>2];H[a+652>>2]=c;H[a+556>>2]=c;c=H[d+244>>2];H[a+456>>2]=c;H[a+360>>2]=c;c=H[d+52>>2];H[a+288>>2]=c;H[a+168>>2]=c;c=H[d+444>>2];H[a+680>>2]=c;H[a+560>>2]=c;c=H[d+248>>2];H[a+484>>2]=c;H[a+364>>2]=c;H[a+180>>2]=H[d- -64>>2];H[a+572>>2]=H[d+456>>2];H[a+376>>2]=H[d+260>>2];c=H[d+68>>2];H[a+208>>2]=c;H[a+184>>2]=c;c=H[d+460>>2];H[a+600>>2]=c;H[a+576>>2]=c;c=H[d+264>>2];H[a+404>>2]=c;H[a+380>>2]=c;c=H[d+72>>2];H[a+236>>2]=c;H[a+188>>2]=c;c=H[d+464>>2];H[a+628>>2]=c;H[a+580>>2]=c;c=H[d+268>>2];H[a+432>>2]=c;H[a+384>>2]=c;c=H[d+76>>2];H[a+264>>2]=c;H[a+192>>2]=c;c=H[d+468>>2];H[a+656>>2]=c;H[a+584>>2]=c;c=H[d+272>>2];H[a+460>>2]=c;H[a+388>>2]=c;c=H[d+80>>2];H[a+292>>2]=c;H[a+196>>2]=c;c=H[d+472>>2];H[a+684>>2]=c;H[a+588>>2]=c;c=H[d+276>>2];H[a+488>>2]=c;H[a+392>>2]=c;H[a+212>>2]=H[d+96>>2];H[a+604>>2]=H[d+488>>2];H[a+408>>2]=H[d+292>>2];c=H[d+100>>2];H[a+240>>2]=c;H[a+216>>2]=c;c=H[d+492>>2];H[a+632>>2]=c;H[a+608>>2]=c;c=H[d+296>>2];H[a+436>>2]=c;H[a+412>>2]=c;c=H[d+104>>2];H[a+268>>2]=c;H[a+220>>2]=c;c=H[d+496>>2];H[a+660>>2]=c;H[a+612>>2]=c;c=H[d+300>>2];H[a+464>>2]=c;H[a+416>>2]=c;c=H[d+108>>2];H[a+296>>2]=c;H[a+224>>2]=c;c=H[d+500>>2];H[a+688>>2]=c;H[a+616>>2]=c;c=H[d+304>>2];H[a+492>>2]=c;H[a+420>>2]=c;H[a+244>>2]=H[d+128>>2];H[a+636>>2]=H[d+520>>2];H[a+440>>2]=H[d+324>>2];c=H[d+132>>2];H[a+272>>2]=c;H[a+248>>2]=c;c=H[d+524>>2];H[a+664>>2]=c;H[a+640>>2]=c;c=H[d+328>>2];H[a+468>>2]=c;H[a+444>>2]=c;c=H[d+136>>2];H[a+300>>2]=c;H[a+252>>2]=c;c=H[d+528>>2];H[a+692>>2]=c;H[a+644>>2]=c;c=H[d+332>>2];H[a+496>>2]=c;H[a+448>>2]=c;H[a+276>>2]=H[d+160>>2];H[a+668>>2]=H[d+552>>2];H[a+472>>2]=H[d+356>>2];c=H[d+164>>2];H[a+304>>2]=c;H[a+280>>2]=c;c=H[d+556>>2];H[a+696>>2]=c;H[a+672>>2]=c;c=H[d+360>>2];H[a+500>>2]=c;H[a+476>>2]=c;H[a+308>>2]=H[d+192>>2];H[a+700>>2]=H[d+584>>2];H[a+504>>2]=H[d+388>>2];H[a+76>>2]=H[d+588>>2];H[a+80>>2]=H[d+592>>2];H[a+84>>2]=H[d+596>>2];H[a>>2]=H[d+600>>2];H[a+4>>2]=H[d+604>>2];H[a+8>>2]=H[d+608>>2];H[a+60>>2]=H[d+612>>2];H[a+72>>2]=H[d+624>>2]<<14;H[a+64>>2]=H[d+616>>2];H[a+68>>2]=H[d+620>>2];H[a+88>>2]=H[d+628>>2];H[a+92>>2]=H[d+632>>2];H[a+96>>2]=H[d+636>>2];H[a+100>>2]=H[d+640>>2];H[a+104>>2]=H[d+644>>2];H[b+12>>2]=H[e+2664>>2];H[b+16>>2]=H[e+2668>>2];H[b+20>>2]=H[e+2672>>2];H[b+56>>2]=H[e+1236>>2];H[b+52>>2]=H[H[e+980>>2]+368>>2];H[b+24>>2]=H[e+2676>>2];H[b+28>>2]=H[e+2680>>2];H[b+32>>2]=H[e+2684>>2];H[b+36>>2]=H[e+2688>>2];H[b+40>>2]=H[e+2692>>2];H[b+44>>2]=H[e+2696>>2];H[b+48>>2]=H[e+2700>>2];return}o5(H[33808],2,9281,1551,59048,0)}function CB(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=0,s=O(0),t=O(0),u=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=0,C=O(0),D=O(0),E=0,F=0,G=O(0),M=O(0),Q=0,R=0,S=0,T=0,U=0,V=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0;if(I[a+7648|0]){a=1}else{Q=d;F=Oa-16|0;Oa=F;r=a+16|0;E=H[r+636>>2];a=H[r+28>>2];d=1;a:{if(!(E|a)){break a}k=L[Q>>2];if(k==O(3.4028234663852886e38)){j=L[r+664>>2];k=L[r+680>>2];n=O(j-k);s=L[r+660>>2];p=L[r+676>>2];q=O(s-p);t=O(O(j+k)+O(0));p=O(O(s+p)+O(0));j=L[r+656>>2];k=L[r+672>>2];w=O(j-k);x=O(O(j+k)+O(0));if(a){s=O(8.5070586659632215e37);o=O(-8.5070586659632215e37);y=O(-8.5070586659632215e37);z=O(-8.5070586659632215e37);k=O(8.5070586659632215e37);j=O(8.5070586659632215e37);while(1){d=N(A,24)+r|0;u=L[d+180>>2];o=o>u?o:u;u=L[d+176>>2];y=y>u?y:u;u=L[d+172>>2];z=z>u?z:u;u=L[d+168>>2];s=s>2];k=k>2];j=jo?p:o;o=O(z+O(0));x=oq?q:k;w=j>w?w:j;n=n>2];k=L[c>>2];s=L[c+4>>2];q=O(O(f*n)+O(O(O(O(x+w)*O(.5))*k)+O(O(O(p+q)*O(.5))*s)));n=O(O(L[b+8>>2]*n)+O(O(L[b>>2]*k)+O(L[b+4>>2]*s)));k=O(P(O(O(q-j)-n)));j=O(P(O(O(j+q)-n)));k=O(i+(j>k?k:j));L[Q>>2]=k}q=L[c+8>>2];o=O(-q);d=q>o;t=L[c+4>>2];y=O(-t);A=t>y;p=L[c>>2];z=O(-p);R=p>z;n=L[b+8>>2];w=L[b+4>>2];x=L[b>>2];b:{if(k>=O(3.4028234663852886e38)){s=t==O(0)?w:t>=O(0)?O(3.4028234663852886e38):O(-3.4028234663852886e38);k=p==O(0)?x:p>=O(0)?O(3.4028234663852886e38):O(-3.4028234663852886e38);if(q==O(0)){j=n;break b}j=q>=O(0)?O(3.4028234663852886e38):O(-3.4028234663852886e38);break b}j=O(n+O(k*q));s=O(w+O(k*t));k=O(x+O(k*p))}o=d?q:o;y=A?t:y;z=R?p:z;u=jn?n:j;s=s>w?w:s;k=k>x?x:k;if(a){A=0;while(1){d=N(A,24)+r|0;i=L[d+160>>2];h=L[d+172>>2];f=O(O(i+h)*O(.5));h=O(O(h-i)*O(.5));c:{if(!(O(f+h)>=k)|!(O(f-h)<=M)){break c}g=L[d+176>>2];l=L[d+164>>2];i=O(O(g-l)*O(.5));g=O(O(l+g)*O(.5));m=O(w-g);C=O(x-f);f=O(O(p*m)-O(t*C));l=O(-f);if(!(O(g-i)<=G)|(!(O(O(y*h)+O(z*i))>=(f>l?f:l))|!(O(g+i)>=s))){break c}g=L[d+180>>2];l=L[d+168>>2];f=O(O(g-l)*O(.5));g=O(O(l+g)*O(.5));D=O(n-g);l=O(O(t*D)-O(q*m));m=O(-l);if(!(O(g-f)<=u)|(!(O(O(o*i)+O(y*f))>=(l>m?l:m))|!(O(g+f)>=j))){break c}i=O(O(q*C)-O(p*D));g=O(-i);if(!(O(O(o*h)+O(z*f))>=(g>2]>>2]](e,Q,((A<<3)+r|0)+32|0)|0)){break a}a=H[r+28>>2]}A=A+1|0;if(A>>>0>>0){continue}break}}d=1;if(!E){break a}f=L[r+656>>2];i=L[r+672>>2];d=1;if(!(O(f+i)>=k)){break a}d=1;if(!(O(f-i)<=M)){break a}h=L[r+660>>2];m=O(w-h);C=O(x-f);g=O(O(p*m)-O(t*C));l=O(-g);f=L[r+676>>2];d=1;if(!(O(O(y*i)+O(z*f))>=(g>l?g:l))){break a}d=1;if(!(O(h+f)>=s)){break a}d=1;if(!(O(h-f)<=G)){break a}h=L[r+664>>2];D=O(n-h);g=O(O(t*D)-O(q*m));l=O(-g);m=O(o*f);f=L[r+680>>2];d=1;if(!(O(m+O(y*f))>=(g>l?g:l))){break a}d=1;if(!(O(h+f)>=j)){break a}d=1;if(!(O(h-f)<=u)){break a}h=O(O(q*C)-O(p*D));g=O(-h);d=1;if(!(O(O(o*i)+O(z*f))>=(g>2]<<2;aa=a+b|0;i=L[aa>>2];ba=a+c|0;f=L[ba>>2];h=L[Q>>2];L[F+12>>2]=h;f=O(i+O(h*f));a=(B(f=0?a|-2147483648:a^-1;a=(B(f>i?i:f),v(2));a=(a|0)>=0?a|-2147483648:a^-1;ca=H[c+4>>2]>>>30&2|H[c>>2]>>>29&4|H[c+8>>2]>>>31;da=ca<<1;R=J[(da+r|0)+896>>1];ea=1;d:{while(1){S=R&7;fa=(S<<2)+r|0;e:{if(!H[fa+688>>2]){break e}c=(S<<5)+r|0;f=L[c+736>>2];i=L[c+752>>2];if(!(O(f+i)>=k)|!(O(f-i)<=M)){break e}h=L[c+740>>2];m=O(w-h);C=O(x-f);g=O(O(p*m)-O(t*C));l=O(-g);f=L[c+756>>2];if(!(O(O(y*i)+O(z*f))>=(g>l?g:l))|!(O(h+f)>=s)|!(O(h-f)<=G)){break e}h=L[c+744>>2];D=O(n-h);g=O(O(t*D)-O(q*m));l=O(-g);m=O(o*f);f=L[c+760>>2];if(!(O(m+O(y*f))>=(g>l?g:l))|!(O(h+f)>=j)|!(O(h-f)<=u)){break e}h=O(O(q*C)-O(p*D));g=O(-h);if(!(O(O(o*i)+O(z*f))>=(g>1];Y=0;while(1){d=X&7;A=(d<<2)+V|0;f:{if(!H[A+912>>2]){break f}c=(d<<5)+V|0;f=L[c+960>>2];i=L[c+976>>2];if(!(O(f+i)>=k)|!(O(f-i)<=M)){break f}h=L[c+964>>2];m=O(w-h);C=O(x-f);g=O(O(p*m)-O(t*C));l=O(-g);f=L[c+980>>2];if(!(O(O(y*i)+O(z*f))>=(g>l?g:l))|!(O(h+f)>=s)|!(O(h-f)<=G)){break f}h=L[c+968>>2];D=O(n-h);g=O(O(t*D)-O(q*m));l=O(-g);m=O(o*f);f=L[c+984>>2];if(!(O(m+O(y*f))>=(g>l?g:l))|!(O(h+f)>=j)|!(O(h-f)<=u)){break f}h=O(O(q*C)-O(p*D));g=O(-h);if(!(O(O(o*i)+O(z*f))>=(g>2]+H[fa+708>>2]|0;ga=1;Z=(N(S,1120)+r|0)+N(d,224)|0;_=J[(Z+(ca<<1)|0)+2240>>1];T=0;while(1){c=a;d=b;g:{h:{a=_&7;b=(a<<2)+Z|0;U=H[b+2032>>2];if(!U){break h}a=(a<<5)+Z|0;f=L[a+2080>>2];i=L[a+2096>>2];if(!(O(f+i)>=k)|!(O(f-i)<=M)){break h}h=L[a+2084>>2];m=O(w-h);C=O(x-f);g=O(O(p*m)-O(t*C));l=O(-g);f=L[a+2100>>2];if(!(O(O(y*i)+O(z*f))>=(g>l?g:l))|!(O(h+f)>=s)|!(O(h-f)<=G)){break h}h=L[a+2088>>2];D=O(n-h);g=O(O(t*D)-O(q*m));l=O(-g);m=O(o*f);f=L[a+2104>>2];if(!(O(m+O(y*f))>=(g>l?g:l))|!(O(h+f)>=j)|!(O(h-f)<=u)){break h}h=O(O(q*C)-O(p*D));g=O(-h);if(!(O(O(o*i)+O(z*f))>=(g>2]+ha|0;A=H[r+24>>2]+(a<<3)|0;E=H[r+20>>2]+(a<<5)|0;U=E+(U<<5)|0;a=c;b=d;while(1){i:{j:{if(K[E+28>>2]>>0){break j}if(K[E+12>>2]>b>>>0){break g}f=L[E>>2];i=L[E+16>>2];if(!(O(f+i)>=k)|!(O(f-i)<=M)){break j}h=L[E+4>>2];m=O(w-h);C=O(x-f);g=O(O(p*m)-O(t*C));l=O(-g);f=L[E+20>>2];if(!(O(O(y*i)+O(z*f))>=(g>l?g:l))|!(O(h+f)>=s)|!(O(h-f)<=G)){break j}h=L[E+8>>2];D=O(n-h);g=O(O(t*D)-O(q*m));l=O(-g);m=O(o*f);f=L[E+24>>2];if(!(O(m+O(y*f))>=(g>l?g:l))|!(O(h+f)>=j)|!(O(h-f)<=u)){break j}h=O(O(q*C)-O(p*D));g=O(-h);if(!(O(O(o*i)+O(z*f))>=(g>2];if(!(Ra[H[H[e>>2]>>2]](e,F+12|0,A)|0)){break i}f=i;i=L[F+12>>2];if(!(f>i)){break j}j=L[aa>>2];k=O(j+O(i*L[ba>>2]));a=(B(j>k?j:k),v(2));b=(a|0)>=0?a|-2147483648:a^-1;a=(B(j=0?a|-2147483648:a^-1;j=O(n+O(q*i));u=jn?n:j;s=k>w?w:k;k=i>x?x:i}A=A+8|0;E=E+32|0;if((U|0)!=(E|0)){continue}break g}break}a=c;b=d;if(ga){break d}break f}a=c;b=d}_=_>>>3|0;ga=T>>>0<4;T=T+1|0;if((T|0)!=5){continue}break}}X=X>>>3|0;Y=Y+1|0;if((Y|0)!=5){continue}break}}R=R>>>3|0;ea=$>>>0<4;$=$+1|0;if(($|0)!=5){continue}break}L[Q>>2]=L[F+12>>2]}d=!ea}Oa=F+16|0;a=d&1}return a|0}function XC(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,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;a:{b=H[a+268>>2];if(!I[a+337|0]&(b|0)!=6){break a}F[a+337|0]=0;c=H[a+4>>2];if(!(I[a+336|0]?c:0)){c=Oa-16|0;Oa=c;b=H[a+4>>2];if(b){b=NA(b);d=H[33808]+12|0;Ra[H[H[d>>2]+12>>2]](d,b)}H[a+4>>2]=0;b=H[a+284>>2];b:{if(!b){break b}d=H[33808];g=d+12|0;d=(r=g,s=64,t=Ra[H[H[d>>2]+20>>2]](d)|0?38814:55639,u=6600,v=750,q=H[H[g>>2]+8>>2],Ra[q](r|0,s|0,t|0,u|0,v|0)|0);g=MA(d);H[a+4>>2]=d;H[c+4>>2]=b;H[c+12>>2]=0;d=H[a+292>>2];H[c>>2]=4;H[c+8>>2]=d;QA(g,c);H[c+8>>2]=0;H[c>>2]=0;H[c+4>>2]=0;d=H[c+12>>2];if(d){g=H[33808]+12|0;Ra[H[H[g>>2]+12>>2]](g,d)}if(!I[a+336|0]){break b}d=H[a+40>>2];mC(a+312|0,b>>>0>>0?d:b,H[a+4>>2])}Oa=c+16|0;return}if((b|0)!=6){if(!H[a+284>>2]){break a}sC(a+52|0,H[a+292>>2]);XA(c,H[a+292>>2]);return}c=NA(c);b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,c);c=H[a+36>>2];if(c){b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,c)}H[a+268>>2]=0;H[a+36>>2]=0;c=1;b=H[a+44>>2];d=H[a+272>>2];c:{if(b>>>0<=d>>>0){c=-1;if(b>>>0>=d>>>0){break c}}H[a+280>>2]=H[a+280>>2]+c}c=H[a+32>>2];H[a+32>>2]=0;H[a+4>>2]=c;d=a+312|0;b=H[a+40>>2];e=H[a+284>>2];mC(d,b>>>0>e>>>0?b:e,c);if(H[a+344>>2]>0){c=H[a+340>>2];while(1){b=H[c>>2];d:{if(b>>>0>=K[a+316>>2]){break d}e=H[H[d>>2]+(b<<2)>>2];if((e|0)==-1){break d}VA(H[a+4>>2],e);b=H[c>>2]}nC(d,b,H[c+4>>2],H[a+4>>2]);c=c+8|0;if(c>>>0>2]+(H[a+344>>2]<<3)>>>0){continue}break}}H[a+344>>2]=0;c=H[a+356>>2];if(c){while(1){b=H[H[a+352>>2]+(g<<2)>>2];e:{if(b>>>0>=K[a+316>>2]){break e}b=H[H[d>>2]+(b<<2)>>2];if((b|0)==-1){break e}VA(H[a+4>>2],b)}g=g+1|0;if((c|0)!=(g|0)){continue}break}}H[a+356>>2]=0;c=H[a+4>>2];if(!(!c|!H[a+284>>2])){sC(a+52|0,H[a+292>>2]);XA(c,H[a+292>>2])}l=H[a+48>>2]-1|0;b=0;h=Oa-16|0;Oa=h;f=a+52|0;c=f+4|0;d=H[c+4>>2];k=N(d,48)+c|0;g=H[k+12>>2];if(!(!g|!H[g+588>>2])){i=c+N(d,48)|0;e=H[i+52>>2];m=H[i+36>>2];if(!(!m|!e)){e=c+N(d,48)|0;S6(H[e+28>>2],255,m<<2);c=0;g=H[e+24>>2];d=H[e+32>>2];m=d-1|0;if(m){if(d-2>>>0>=3){j=m&-4;d=0;while(1){n=c|1;H[g+(c<<2)>>2]=n;o=g+(n<<2)|0;n=c|2;H[o>>2]=n;o=g+(n<<2)|0;n=c|3;H[o>>2]=n;c=c+4|0;H[g+(n<<2)>>2]=c;d=d+4|0;if((j|0)!=(d|0)){continue}break}}d=m&3;if(d){while(1){o=g+(c<<2)|0;c=c+1|0;H[o>>2]=c;p=p+1|0;if((d|0)!=(p|0)){continue}break}}c=H[e+32>>2]-1|0}else{c=0}H[g+(c<<2)>>2]=-1;H[e+44>>2]=0;H[i+52>>2]=0;g=H[k+12>>2]}H[i+8>>2]=0;KB(g)}i=H[f+204>>2];f:{if(!i){break f}c=-1;g:{h:{i:{d=H[f+200>>2];e=i-1|0;if(H[(d+(e<<3)|0)+4>>2]!=(l|0)){j:{if(H[d+4>>2]!=(l|0)){break j}g=1;while(1){c=b;b=g;if((i|0)==(b|0)){c=e;break j}g=b+1|0;if(H[((b<<3)+d|0)+4>>2]==(l|0)){continue}break}}if((c|0)==-1){break f}m=c+1|0;b=i-m|0;H[f+204>>2]=b;if(!b){b=0;break h}g=0;while(1){b=H[f+196>>2]+N(g,24)|0;i=g+m<<3;k=i+d|0;e=H[H[k>>2]+8>>2];L[b>>2]=L[e>>2];L[b+4>>2]=L[e+4>>2];L[b+8>>2]=L[e+8>>2];L[b+12>>2]=L[e+12>>2];L[b+16>>2]=L[e+16>>2];L[b+20>>2]=L[e+20>>2];e=g<<3;b=e+d|0;H[b+4>>2]=H[k+4>>2];k=H[b>>2];OA(k,1);d=H[f+200>>2];b=i+d|0;H[d+e>>2]=H[b>>2];H[b+4>>2]=0;H[b>>2]=k;b=H[f+204>>2];g=g+1|0;if(b>>>0>g>>>0){continue}break}break i}d=0;c=0;g=0;if(H[f+204>>2]){b=H[f+200>>2];while(1){e=d<<3;OA(H[e+b>>2],1);b=H[f+200>>2];H[(e+b|0)+4>>2]=0;d=d+1|0;if(d>>>0>2]){continue}break}}b=H[f+148>>2];if(!(!b|!H[f+164>>2])){S6(H[f+140>>2],255,b<<2);d=0;b=H[f+136>>2];l=H[f+144>>2];e=l-1|0;if(e){if(l-2>>>0>=3){l=e&-4;while(1){i=d|1;H[b+(d<<2)>>2]=i;o=b+(i<<2)|0;i=d|2;H[o>>2]=i;o=b+(i<<2)|0;i=d|3;H[o>>2]=i;d=d+4|0;H[b+(i<<2)>>2]=d;g=g+4|0;if((l|0)!=(g|0)){continue}break}}g=e&3;if(g){while(1){e=b+(d<<2)|0;d=d+1|0;H[e>>2]=d;c=c+1|0;if((g|0)!=(c|0)){continue}break}}e=H[f+144>>2]-1|0}else{e=0}H[b+(e<<2)>>2]=-1;H[f+164>>2]=0;H[f+156>>2]=0}H[f+204>>2]=0;OA(H[f+168>>2],1);break f}if(c>>>0>>0){break g}}while(1){g=b<<3;OA(H[g+d>>2],1);d=H[f+200>>2];H[(g+d|0)+4>>2]=0;b=b+1|0;if(c>>>0>=b>>>0){continue}break}b=H[f+204>>2]}H[h+4>>2]=b;H[h+12>>2]=0;c=H[f+196>>2];H[h>>2]=4;H[h+8>>2]=c;QA(H[f+168>>2],h);mC(f+172|0,H[f+204>>2],H[f+168>>2]);H[h+8>>2]=0;H[h>>2]=0;H[h+4>>2]=0;c=H[h+12>>2];if(c){b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,c)}H[h+8>>2]=f+128;b=H[f+148>>2];k:{if(!b){break k}g=H[f+140>>2];d=0;l:{while(1){c=g+(d<<2)|0;if(H[c>>2]!=-1){break l}d=d+1|0;H[h+4>>2]=d;if((b|0)!=(d|0)){continue}break}break k}H[h>>2]=c;H[h+4>>2]=d+1;b=H[f+132>>2];if(!b){break k}d=b+N(H[c>>2],20)|0;g=0;while(1){c=H[d+8>>2];m:{if((c|0)==(l|0)){g=g+1|0;break m}H[d+16>>2]=H[d+16>>2]-m}e=H[h>>2];n:{o:{p:{q:{if((c|0)==(l|0)){if(!e){break q}i=H[e>>2];d=i<<2;f=H[h+8>>2];H[e>>2]=H[d+H[f+8>>2]>>2];b=H[f+36>>2]-1|0;H[f+36>>2]=b;H[f+32>>2]=H[f+32>>2]+1;if((b|0)!=(i|0)){e=H[f+4>>2];j=N(i,20);c=e+j|0;b=e+N(b,20)|0;e=H[b+4>>2];H[c>>2]=H[b>>2];H[c+4>>2]=e;e=H[b+12>>2];H[c+8>>2]=H[b+8>>2];H[c+12>>2]=e;H[c+16>>2]=H[b+16>>2];k=H[f+8>>2];H[k+d>>2]=H[k+(H[f+36>>2]<<2)>>2];n=H[f+12>>2];b=j+H[f+4>>2]|0;c=H[b+4>>2];b=H[b>>2];j=-1;e=b+j|0;c=(b^-1)+c|0;d=e;c=d>>>0>>0?c+1|0:c;e=c;b=c>>>22|0;c=d^((c&4194303)<<10|d>>>22);d=b^e;e=d;b=c;c=d<<13|b>>>19;j=b<<13^-1;d=b+j|0;b=(c^-1)+e|0;b=d>>>0>>0?b+1|0:b;c=g7(d^((b&255)<<24|d>>>8),b^b>>>8,9,0);d=Qa;b=d>>>15|0;c=c^((d&32767)<<17|c>>>15);b=b^d;j=c<<27^-1;d=j+c|0;c=((b<<27|c>>>5)^-1)+b|0;b=d;c=b>>>0>>0?c+1|0:c;d=((H[f+20>>2]-1&(b^((c&2147483647)<<1|b>>>31)))<<2)+n|0;e=H[d>>2];c=H[f+36>>2];if((e|0)!=(c|0)){while(1){d=k+(e<<2)|0;e=H[d>>2];if((c|0)!=(e|0)){continue}break}}H[d>>2]=i;e=H[h>>2]}H[f+28>>2]=H[f+28>>2]-1;c=H[e>>2];if((c|0)!=-1){c=H[H[h+8>>2]+4>>2]+N(c,20)|0;break n}c=0;H[h>>2]=0;e=H[h+4>>2];b=H[h+8>>2];f=H[b+20>>2];if(e>>>0>=f>>>0){break n}i=H[b+12>>2];while(1){d=i+(e<<2)|0;if(H[d>>2]!=-1){break o}e=e+1|0;H[h+4>>2]=e;if((e|0)!=(f|0)){continue}break}break n}if(e){break p}}c=0;H[h>>2]=0;e=H[h+4>>2];b=H[h+8>>2];f=H[b+20>>2];if(e>>>0>=f>>>0){break n}i=H[b+12>>2];while(1){d=i+(e<<2)|0;if(H[d>>2]!=-1){break o}e=e+1|0;H[h+4>>2]=e;if((e|0)!=(f|0)){continue}break}break n}b=H[h+8>>2];c=H[b+8>>2]+(H[e>>2]<<2)|0;d=H[c>>2];if((d|0)==-1){c=0;H[h>>2]=0;e=H[h+4>>2];f=H[b+20>>2];if(e>>>0>=f>>>0){break n}i=H[b+12>>2];while(1){d=i+(e<<2)|0;if(H[d>>2]!=-1){break o}e=e+1|0;H[h+4>>2]=e;if((e|0)!=(f|0)){continue}break}break n}H[h>>2]=c;c=H[b+4>>2]+N(d,20)|0;break n}H[h>>2]=d;H[h+4>>2]=e+1;c=H[b+4>>2]+N(H[d>>2],20)|0}d=c;if(c){continue}break}}}Oa=h+16|0;F[a+338|0]=(H[a+156>>2]+H[a+108>>2]|0)!=(0-H[a+216>>2]|0)}}function c0(a,b,c,d,e,f,g,h){var i=0,j=O(0),k=0,l=0,m=O(0),n=O(0),o=0,p=O(0),q=0,r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=0,x=O(0),y=O(0),z=0,A=0,B=O(0),C=O(0),D=O(0),E=0,G=O(0),J=O(0),K=O(0),M=O(0),P=O(0),Q=O(0);i=Oa-320|0;Oa=i;E=H[b+4>>2];m=L[E+20>>2];k=H[a+4>>2];j=L[k+20>>2];u=L[d>>2];w=I[k+32|0];G=L[k+16>>2];z=I[E+32|0];v=L[E+16>>2];H[i+44>>2]=0;J=O((j>m?m:j)*O(.10000000149011612));a:{b:{c:{d:{e:{f:{q=I[g|0];if(q){o=k+48|0;d=0;while(1){c=l<<2;k=I[e+l|0];H[c+(i- -64|0)>>2]=k;A=c+(i+48|0)|0;c=I[f+l|0];H[A>>2]=c;c=H[E+152>>2]+N(c,12)|0;p=L[c>>2];r=L[c+4>>2];n=L[c+8>>2];A=o+(1-k<<4)|0;t=L[A>>2];m=L[A+4>>2];j=L[A+8>>2];c=d;k=c<<4;d=k+(i+144|0)|0;L[d+12>>2]=L[A+12>>2];L[d+8>>2]=j;L[d+4>>2]=m;L[d>>2]=t;d=k+(i+80|0)|0;H[d+12>>2]=0;L[d+8>>2]=n;L[d+4>>2]=r;L[d>>2]=p;k=k+(i+208|0)|0;H[k+12>>2]=0;n=O(j-n);L[k+8>>2]=n;m=O(m-r);L[k+4>>2]=m;j=O(t-p);L[k>>2]=j;d=c+1|0;H[i+44>>2]=d;l=l+1|0;if((q|0)!=(l|0)){continue}break}g:{h:{switch(c-1|0){case 0:t=L[i+216>>2];s=O(L[i+232>>2]-t);n=L[i+208>>2];p=O(L[i+224>>2]-n);m=L[i+212>>2];r=O(L[i+228>>2]-m);j=O(O(s*s)+O(O(p*p)+O(r*r)));if(!(j<=O(1.1920928955078125e-7))){break g}H[i+44>>2]=1;c=H[i+212>>2];H[i+16>>2]=H[i+208>>2];H[i+20>>2]=c;c=H[i+220>>2];H[i+24>>2]=H[i+216>>2];H[i+28>>2]=c;break e;case 1:_W(i+16|0,i+208|0,i+144|0,i+80|0,i- -64|0,i+48|0,i+44|0);break e;case 2:break h;default:break f}}DZ(i+16|0,i+208|0,i+144|0,i+80|0,i- -64|0,i+48|0,i+44|0);break e}H[i+28>>2]=0;j=O(R(O(O(O(O(O(-n)*p)-O(r*m))-O(t*s))/j),O(1)));j=j>O(0)?j:O(0);L[i+24>>2]=t+O(s*j);L[i+20>>2]=m+O(r*j);L[i+16>>2]=n+O(p*j);break e}n=L[c+8>>2];m=L[c>>2];j=L[c+4>>2];H[i+284>>2]=0;c=O(O(n*n)+O(O(m*m)+O(j*j)))>O(0);s=c?n:O(0);L[i+280>>2]=s;p=c?j:O(0);L[i+276>>2]=p;r=c?m:O(1);L[i+272>>2]=r;j=O(O(1)/O(W(O(O(s*s)+O(O(r*r)+O(p*p))))));B=O(s*j);C=O(p*j);D=O(r*j);t=O(3.4028234663852886e38);j=O(0);break d}H[i+28>>2]=0;L[i+24>>2]=n;L[i+20>>2]=m;L[i+16>>2]=j}c=H[i+20>>2];H[i+272>>2]=H[i+16>>2];H[i+276>>2]=c;c=H[i+28>>2];H[i+280>>2]=H[i+24>>2];H[i+284>>2]=c;s=L[i+280>>2];r=L[i+272>>2];p=L[i+276>>2];t=O(W(O(O(s*s)+O(O(r*r)+O(p*p)))));if(!(J>2]}K=j;G=O(u+O((w?G:O(0))+(z?v:O(0))));while(1){H[i+296>>2]=H[i+312>>2];c=H[i+308>>2];H[i+288>>2]=H[i+304>>2];H[i+292>>2]=c;w=H[a+4>>2];q=w+52|0;o=H[i+44>>2]<<2;j=O(-r);k=w+56|0;d=w+68|0;c=w+72|0;z=O(O(O(L[w+48>>2]*j)-O(L[q>>2]*p))-O(L[k>>2]*s))>O(O(O(L[w+64>>2]*j)-O(L[d>>2]*p))-O(L[c>>2]*s));H[o+(i- -64|0)>>2]=z;M=L[(z?k:c)>>2];P=L[(z?w+48|0:w- -64|0)>>2];Q=L[(z?q:d)>>2];d=H[b+4>>2];c=EU(d,i+272|0);H[o+(i+48|0)>>2]=c;c=H[d+152>>2]+N(c,12)|0;v=L[c+8>>2];x=O(M-v);n=L[c>>2];y=O(P-n);m=L[c+4>>2];u=O(Q-m);j=O(O(B*x)+O(O(D*y)+O(C*u)));if(j>G){a=0;if(!e){break a}o=H[i+44>>2];F[g|0]=o;if(!o){break a}l=0;if((o|0)!=1){g=o&-2;d=0;while(1){b=l<<2;c=i- -64|0;F[e+l|0]=H[b+c>>2];h=b;b=i+48|0;F[f+l|0]=H[h+b>>2];k=l|1;h=k<<2;F[e+k|0]=H[c+h>>2];F[f+k|0]=H[b+h>>2];l=l+2|0;d=d+2|0;if((g|0)!=(d|0)){continue}break}}if(!(o&1)){break a}b=l<<2;F[e+l|0]=H[b+(i- -64|0)>>2];F[f+l|0]=H[b+(i+48|0)>>2];break a}q=H[i+44>>2];if(j>O(t*O(.9997749924659729))){i:{if(!e){break i}F[g|0]=q;if(!q){break i}c=0;if((q|0)!=1){g=q&-2;a=0;while(1){b=c<<2;d=i- -64|0;F[c+e|0]=H[b+d>>2];k=b;b=i+48|0;F[c+f|0]=H[k+b>>2];o=c|1;k=o<<2;F[e+o|0]=H[d+k>>2];F[f+o|0]=H[b+k>>2];c=c+2|0;a=a+2|0;if((g|0)!=(a|0)){continue}break}}if(!(q&1)){break i}a=c<<2;F[c+e|0]=H[a+(i- -64|0)>>2];F[c+f|0]=H[a+(i+48|0)>>2]}L[h+32>>2]=D;H[h+44>>2]=0;L[h+40>>2]=B;L[h+36>>2]=C;FU(i+208|0,i+144|0,i+80|0,i+272|0,i+16|0,i,q);a=H[i+20>>2];H[h>>2]=H[i+16>>2];H[h+4>>2]=a;a=H[i+28>>2];H[h+8>>2]=H[i+24>>2];H[h+12>>2]=a;a=H[i+4>>2];H[h+16>>2]=H[i>>2];H[h+20>>2]=a;a=H[i+12>>2];H[h+24>>2]=H[i+8>>2];H[h+28>>2]=a;a=H[i+308>>2];H[h+68>>2]=H[i+304>>2];H[h+72>>2]=a;H[h+76>>2]=H[i+312>>2];L[h+64>>2]=t;a=2;break a}c=q<<4;d=c+(i+144|0)|0;H[d+12>>2]=0;L[d+8>>2]=M;L[d+4>>2]=Q;L[d>>2]=P;d=c+(i+80|0)|0;H[d+12>>2]=0;L[d+8>>2]=v;L[d+4>>2]=m;L[d>>2]=n;c=c+(i+208|0)|0;H[c+12>>2]=0;L[c+8>>2]=x;L[c+4>>2]=u;L[c>>2]=y;H[i+44>>2]=q+1;j:{k:{switch(q-1|0){case 0:v=L[i+216>>2];x=O(L[i+232>>2]-v);n=L[i+208>>2];y=O(L[i+224>>2]-n);m=L[i+212>>2];u=O(L[i+228>>2]-m);j=O(O(x*x)+O(O(y*y)+O(u*u)));if(j<=O(1.1920928955078125e-7)){H[i+44>>2]=1;c=H[i+212>>2];H[i+16>>2]=H[i+208>>2];H[i+20>>2]=c;c=H[i+220>>2];H[i+24>>2]=H[i+216>>2];H[i+28>>2]=c;break j}H[i+28>>2]=0;j=O(R(O(O(O(O(O(-n)*y)-O(u*m))-O(v*x))/j),O(1)));j=j>O(0)?j:O(0);L[i+24>>2]=v+O(x*j);L[i+20>>2]=m+O(u*j);L[i+16>>2]=n+O(y*j);break j;case 1:_W(i+16|0,i+208|0,i+144|0,i+80|0,i- -64|0,i+48|0,i+44|0);break j;case 2:DZ(i+16|0,i+208|0,i+144|0,i+80|0,i- -64|0,i+48|0,i+44|0);break j;default:break k}}H[i+28>>2]=0;L[i+24>>2]=x;L[i+20>>2]=u;L[i+16>>2]=y}c=H[i+20>>2];H[i+272>>2]=H[i+16>>2];H[i+276>>2]=c;c=H[i+28>>2];H[i+280>>2]=H[i+24>>2];H[i+284>>2]=c;n=L[i+280>>2];m=L[i+272>>2];j=L[i+276>>2];v=O(W(O(O(n*n)+O(O(m*m)+O(j*j)))));u=O(O(1)/v);B=O(n*u);C=O(j*u);D=O(m*u);if(!(!(v>J)|!(t>v))){K=L[i+284>>2];s=n;p=j;r=m;t=v;continue}break}c=H[i+44>>2];if(!(t>v)){l:{if(!e){break l}q=c-1|0;F[g|0]=q;if(!q){break l}l=0;if((c|0)!=2){g=q&-2;a=0;while(1){b=l<<2;d=i- -64|0;F[e+l|0]=H[b+d>>2];k=b;b=i+48|0;F[f+l|0]=H[k+b>>2];o=l|1;k=o<<2;F[e+o|0]=H[d+k>>2];F[f+o|0]=H[b+k>>2];l=l+2|0;a=a+2|0;if((g|0)!=(a|0)){continue}break}}if(!(q&1)){break l}a=l<<2;F[e+l|0]=H[a+(i- -64|0)>>2];F[f+l|0]=H[a+(i+48|0)>>2]}H[i+312>>2]=H[i+296>>2];a=H[i+292>>2];H[i+304>>2]=H[i+288>>2];H[i+308>>2]=a;L[i+284>>2]=K;L[i+272>>2]=r;L[i+276>>2]=p;L[i+280>>2]=s;FU(i+208|0,i+144|0,i+80|0,i+272|0,i+16|0,i,c);H[h+60>>2]=0;L[h+56>>2]=B;L[h+52>>2]=C;L[h+48>>2]=D;H[h+44>>2]=0;j=O(O(1)/t);L[h+40>>2]=s*j;L[h+36>>2]=p*j;L[h+32>>2]=r*j;a=H[i+20>>2];H[h>>2]=H[i+16>>2];H[h+4>>2]=a;a=H[i+28>>2];H[h+8>>2]=H[i+24>>2];H[h+12>>2]=a;a=H[i+4>>2];H[h+16>>2]=H[i>>2];H[h+20>>2]=a;a=H[i+12>>2];H[h+24>>2]=H[i+8>>2];H[h+28>>2]=a;L[h+64>>2]=t;a=H[i+292>>2];H[h+68>>2]=H[i+288>>2];H[h+72>>2]=a;H[h+76>>2]=H[i+296>>2];a=4;break a}if(e){break b}a=5;break a}c=H[i+44>>2]}F[g|0]=c;a=5;if(!c){break a}l=0;if((c|0)!=1){h=c&-2;d=0;while(1){b=l<<2;g=i- -64|0;F[e+l|0]=H[b+g>>2];k=b;b=i+48|0;F[f+l|0]=H[k+b>>2];o=l|1;k=o<<2;F[e+o|0]=H[g+k>>2];F[f+o|0]=H[b+k>>2];l=l+2|0;d=d+2|0;if((h|0)!=(d|0)){continue}break}}if(!(c&1)){break a}b=l<<2;F[e+l|0]=H[b+(i- -64|0)>>2];F[f+l|0]=H[b+(i+48|0)>>2]}Oa=i+320|0;return a}function Cz(a,b){var c=O(0),d=0,e=0,f=O(0),g=O(0),h=0,i=0,j=0,k=0,l=O(0),m=O(0),n=0,o=O(0),p=O(0),q=O(0),r=O(0),s=0,t=O(0),u=O(0),v=0,w=O(0),x=O(0),y=O(0),z=0,A=O(0),B=0,C=0,D=O(0),E=O(0),G=O(0),K=O(0),M=O(0),P=O(0),Q=O(0),R=O(0),S=O(0),T=O(0),U=O(0),V=O(0),W=O(0),X=O(0),Y=0,Z=O(0),_=O(0),$=O(0),aa=O(0),ba=O(0),ca=O(0),da=O(0),ea=O(0),fa=O(0),ga=O(0),ha=O(0),ia=O(0),ja=O(0),ka=O(0),la=O(0),ma=O(0),na=O(0),oa=O(0),pa=O(0),qa=O(0),ra=O(0),sa=O(0),ta=O(0),ua=O(0),va=0,wa=O(0),xa=O(0),ya=O(0),za=O(0),Aa=O(0),Ba=0,Ca=O(0),Da=O(0),Ea=O(0),Fa=O(0),Ga=O(0),Ha=O(0),Ia=O(0),Ja=O(0),Ka=O(0),La=O(0),Ma=0,Na=O(0),Pa=O(0),Qa=O(0),Ra=O(0),Sa=O(0),Ta=O(0),Ua=O(0),Va=O(0),Wa=O(0),Xa=0,Ya=0,Za=0,_a=0,$a=O(0),ab=O(0),bb=O(0),cb=O(0),db=O(0),eb=O(0),fb=O(0),gb=O(0),hb=O(0),ib=O(0),jb=O(0),kb=O(0),lb=O(0),mb=O(0),nb=0,ob=0,pb=0,qb=0;h=H[a>>2];i=H[a+32>>2];j=H[a+64>>2];k=H[a+96>>2];d=H[a+24>>2];n=J[a+22>>1];Ya=Oa-16|0;a=Ya;H[a+8>>2]=2139095039;H[a+12>>2]=2139095039;H[a>>2]=2139095039;H[a+4>>2]=2139095039;fb=L[k+28>>2];Z=L[k+24>>2];_=L[k+20>>2];gb=L[j+28>>2];$=L[j+24>>2];aa=L[j+20>>2];hb=L[i+28>>2];ba=L[i+24>>2];ca=L[i+20>>2];ib=L[h+28>>2];da=L[h+24>>2];ea=L[h+20>>2];fa=L[k+16>>2];jb=L[k+12>>2];ga=L[k+8>>2];ha=L[k+4>>2];ia=L[k>>2];ja=L[j+16>>2];kb=L[j+12>>2];ka=L[j+8>>2];la=L[j+4>>2];ma=L[j>>2];na=L[i+16>>2];lb=L[i+12>>2];oa=L[i+8>>2];pa=L[i+4>>2];qa=L[i>>2];ra=L[h+16>>2];mb=L[h+12>>2];sa=L[h+8>>2];ta=L[h+4>>2];ua=L[h>>2];if(n){nb=(n<<4)+d|0;Ta=L[d+76>>2];Ua=L[d+72>>2];Va=L[d+68>>2];Wa=L[d+64>>2];Ma=d+288|0;while(1){a=d;va=a+192|0;v=I[a+1|0];d=v<<4;Ba=va+d|0;s=F[a+3|0]&1;e=d&0-s;d=Ba+N(v,96)|0;Y=e+d|0;B=I[a+2|0];Za=Y+(((B|0)!=0)<<7)|0;_a=Za+(B<<4)|0;C=N(B,96);Ea=L[a+172>>2];P=L[a+168>>2];Q=L[a+164>>2];Fa=L[a+160>>2];Ga=L[a+156>>2];R=L[a+152>>2];Ha=L[a+148>>2];Ia=L[a+144>>2];S=L[a+140>>2];Ja=L[a+136>>2];Ka=L[a+132>>2];La=L[a+128>>2];$a=L[a+108>>2];ab=L[a+104>>2];bb=L[a+100>>2];cb=L[a+96>>2];a:{if(!v){w=O(0);x=O(0);y=O(0);u=O(0);c=O(0);T=O(0);U=O(0);V=O(0);break a}Xa=s?d:Ya;Ca=O(O(O(ua*La)+O(ta*Ia))+O(sa*Fa));D=O(O(O(qa*Ka)+O(pa*Ha))+O(oa*Q));E=O(O(O(ma*Ja)+O(la*R))+O(ka*P));Da=O(O(O(ia*S)+O(ha*Ga))+O(ga*Ea));V=O(0);n=0;U=O(0);T=O(0);c=O(0);u=O(0);y=O(0);x=O(0);w=O(0);while(1){z=Xa+((s?n:0)<<4)|0;f=L[z>>2];W=L[z+4>>2];X=L[z+8>>2];e=va+(n<<4)|0;p=L[e>>2];d=Ba+N(n,96)|0;G=L[d+80>>2];wa=L[d+48>>2];Na=L[d+32>>2];Pa=L[d>>2];Qa=L[d+16>>2];g=L[e+4>>2];K=L[d+84>>2];xa=L[d+52>>2];Ra=L[d+36>>2];l=L[d+4>>2];ya=L[d+20>>2];q=L[e+8>>2];M=L[d+88>>2];za=L[d+56>>2];m=L[d+40>>2];Sa=L[d+8>>2];t=L[d+24>>2];o=L[e+12>>2];r=O(-o);A=L[d+12>>2];db=L[d+28>>2];eb=L[d+44>>2];Aa=O(L[d+92>>2]-O(O(O(O(Da+O(fa*A))+O(_*db))+O(Z*eb))*L[d+60>>2]));r=O(o+(r>2];r=r>2]=r;M=O(M-O(za*O(O(O(E+O(ja*Sa))+O(aa*t))+O($*m))));za=O(-q);M=O(q+(M>za?M:za));X=X>M?M:X;L[e+8>>2]=X;K=O(K-O(xa*O(O(O(D+O(na*l))+O(ca*ya))+O(ba*Ra))));xa=O(-g);K=O(g+(K>xa?K:xa));W=W>K?K:W;L[e+4>>2]=W;G=O(G-O(wa*O(O(O(Ca+O(ra*Pa))+O(ea*Qa))+O(da*Na))));wa=O(-p);G=O(p+(G>wa?G:wa));f=f>G?G:f;L[e>>2]=f;V=O(V+r);U=O(U+X);T=O(T+W);c=O(c+f);o=O(r-o);u=O(u+o);q=O(X-q);y=O(y+q);g=O(W-g);x=O(x+g);p=O(f-p);w=O(w+p);Da=O(Da+O(Ta*o));E=O(E+O(Ua*q));D=O(D+O(Va*g));Ca=O(Ca+O(Wa*p));f=O($a*o);Z=O(Z+O(eb*f));q=O(ab*q);$=O($+O(m*q));g=O(bb*g);ba=O(ba+O(Ra*g));p=O(cb*p);da=O(da+O(Na*p));_=O(_+O(db*f));aa=O(aa+O(t*q));ca=O(ca+O(ya*g));ea=O(ea+O(Qa*p));fa=O(fa+O(A*f));ja=O(ja+O(Sa*q));na=O(na+O(l*g));ra=O(ra+O(Pa*p));Ma=Ma+192|0;n=n+1|0;if((v|0)!=(n|0)){continue}break}}d=C+_a|0;u=O(Ta*u);ga=O(ga+O(Ea*u));y=O(Ua*y);ka=O(ka+O(P*y));x=O(Va*x);oa=O(oa+O(Q*x));w=O(Wa*w);sa=O(sa+O(Fa*w));ha=O(ha+O(Ga*u));la=O(la+O(R*y));pa=O(pa+O(Ha*x));ta=O(ta+O(Ia*w));ia=O(ia+O(S*u));ma=O(ma+O(Ja*y));qa=O(qa+O(Ka*x));ua=O(ua+O(La*w));if(!(!I[b|0]|!B)){Na=O(V*L[a+44>>2]);Pa=O(U*L[a+40>>2]);Qa=O(T*L[a+36>>2]);Ra=O(c*L[a+32>>2]);V=O(V*L[a+60>>2]);w=O(-V);U=O(U*L[a+56>>2]);x=O(-U);T=O(T*L[a+52>>2]);y=O(-T);u=O(c*L[a+48>>2]);Ca=O(-u);Xa=B>>>0>1?B:1;ob=Y+96|0;pb=Y- -64|0;qb=Y+32|0;n=0;B=0;v=0;z=0;Ba=0;while(1){a=N(n,96)+_a|0;l=L[a+48>>2];s=n<<4;e=s+Za|0;D=L[e>>2];ya=L[a+64>>2];C=s&16;s=C+ob|0;E=L[s>>2];va=C+qb|0;Da=L[va>>2];C=C+pb|0;p=L[C>>2];g=L[a+32>>2];q=L[a>>2];Ea=L[a+16>>2];P=L[e+4>>2];m=L[a+52>>2];Sa=L[a+68>>2];Q=L[s+4>>2];Fa=L[va+4>>2];Ga=L[C+4>>2];R=L[a+36>>2];Ha=L[a+20>>2];Ia=L[a+4>>2];S=L[e+8>>2];t=L[a+56>>2];o=L[a+72>>2];Ja=L[s+8>>2];Ka=L[va+8>>2];La=L[C+8>>2];f=L[a+40>>2];W=L[a+24>>2];X=L[a+8>>2];r=L[e+12>>2];G=L[va+12>>2];wa=L[C+12>>2];K=L[s+12>>2];xa=L[a+12>>2];M=L[a+28>>2];za=L[a+44>>2];c=O(O(r-L[a+60>>2])-O(O(O(O(O(ia*G)+O(ha*wa))+O(ga*K))+O(O(O(fa*xa)+O(_*M))+O(Z*za)))*L[a+76>>2]));A=cA?c:A);A=a?Aa:c;L[e+12>>2]=A;c=O(O(S-t)-O(o*O(O(O(O(ma*Ka)+O(la*La))+O(ka*Ja))+O(O(O(ja*X)+O(aa*W))+O($*f)))));t=cU?U:t;t=O(-c);z=(z|0)!=0|Pa<(c>t?c:t);t=z?o:c;L[e+8>>2]=t;c=O(O(P-m)-O(Sa*O(O(O(O(qa*Fa)+O(pa*Ga))+O(oa*Q))+O(O(O(na*Ia)+O(ca*Ha))+O(ba*R)))));m=cT?T:m;m=O(-c);v=(v|0)!=0|Qa<(c>m?c:m);m=v?o:c;L[e+4>>2]=m;s=e;c=O(O(D-l)-O(ya*O(O(O(O(ua*Da)+O(ta*p))+O(sa*E))+O(O(O(ra*q)+O(ea*Ea))+O(da*g)))));l=cu?u:l;l=O(-c);e=(B|0)!=0|Ra<(c>l?c:l);l=e?o:c;L[s>>2]=l;ya=O(A-r);c=O($a*ya);Z=O(Z+O(za*c));r=f;f=O(t-S);S=O(ab*f);$=O($+O(r*S));m=O(m-P);P=O(bb*m);ba=O(ba+O(R*P));l=O(l-D);D=O(cb*l);da=O(da+O(g*D));g=O(Ta*ya);ga=O(ga+O(K*g));R=O(Ua*f);ka=O(ka+O(Ja*R));f=Q;Q=O(Va*m);oa=O(oa+O(f*Q));f=E;E=O(Wa*l);sa=O(sa+O(f*E));_=O(_+O(M*c));aa=O(aa+O(W*S));ca=O(ca+O(Ha*P));ea=O(ea+O(Ea*D));ha=O(ha+O(wa*g));la=O(la+O(La*R));pa=O(pa+O(Ga*Q));ta=O(ta+O(p*E));fa=O(fa+O(xa*c));ja=O(ja+O(X*S));na=O(na+O(Ia*P));ra=O(ra+O(q*D));ia=O(ia+O(G*g));ma=O(ma+O(Ka*R));qa=O(qa+O(Fa*Q));ua=O(ua+O(Da*E));Ba=0-a|0;z=0-z|0;v=0-v|0;B=0-e|0;Ma=Ma+192|0;n=n+1|0;if((Xa|0)!=(n|0)){continue}break}H[Y+12>>2]=Ba;H[Y+8>>2]=z;H[Y+4>>2]=v;H[Y>>2]=B}if(d>>>0>>0){continue}break}}L[h+12>>2]=mb;L[h+8>>2]=sa;L[h+4>>2]=ta;L[h>>2]=ua;L[i+12>>2]=lb;L[i+8>>2]=oa;L[i+4>>2]=pa;L[i>>2]=qa;L[j+12>>2]=kb;L[j+8>>2]=ka;L[j+4>>2]=la;L[j>>2]=ma;L[k+12>>2]=jb;L[k+8>>2]=ga;L[k+4>>2]=ha;L[k>>2]=ia;L[h+28>>2]=ib;L[h+24>>2]=da;L[h+20>>2]=ea;L[h+16>>2]=ra;L[i+28>>2]=hb;L[i+24>>2]=ba;L[i+20>>2]=ca;L[i+16>>2]=na;L[j+28>>2]=gb;L[j+24>>2]=$;L[j+20>>2]=aa;L[j+16>>2]=ja;L[k+28>>2]=fb;L[k+24>>2]=Z;L[k+20>>2]=_;L[k+16>>2]=fa}function k0(a,b,c,d,e){var f=0,g=0,h=O(0),i=O(0),j=O(0),k=O(0),l=0,m=O(0),n=0,o=O(0),p=O(0),q=0,r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),G=O(0),J=0,K=O(0),M=O(0),P=O(0),Q=O(0),R=O(0),S=O(0),T=O(0),U=O(0),V=O(0),X=O(0),Y=O(0),Z=O(0),_=O(0),$=O(0),aa=O(0),ba=O(0),ca=O(0),da=O(0),ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0;f=Oa-96|0;Oa=f;r=L[a+3640>>2];h=L[b+12>>2];i=L[b>>2];K=O(h-i);Y=L[b+28>>2];j=L[b+4>>2];M=O(Y-j);o=L[b+24>>2];P=O(o-i);Q=L[b+16>>2];R=O(Q-j);m=O(O(K*M)-O(P*R));p=L[b+32>>2];k=L[b+8>>2];S=O(p-k);T=L[b+20>>2];U=O(T-k);v=O(O(R*S)-O(M*U));w=O(O(U*P)-O(S*K));da=O(O(m*m)+O(O(v*v)+O(w*w)));u=O(O(1)/O(W(da)));Z=O(m*u);s=L[a+3632>>2];_=O(v*u);t=L[a+3636>>2];u=O(w*u);a:{if(O(O(O(r*Z)+O(O(s*_)+O(t*u)))-O(O(k*Z)+O(O(i*_)+O(j*u))))>2]=k;L[f+84>>2]=j;L[f+80>>2]=i;H[f+92>>2]=0;m=O(O(x*x)+O(O(y*y)+O(z*z)));b=(d&40)!=0;break d}A=O(r-T);B=O(s-h);C=O(t-Q);ba=O(O(S*A)+O(O(P*B)+O(M*C)));V=O(O(U*A)+O(O(K*B)+O(R*C)));if(!(!(V>=O(0))|!(V>=ba))){L[f+88>>2]=T;L[f+84>>2]=Q;L[f+80>>2]=h;H[f+92>>2]=0;m=O(O(A*A)+O(O(B*B)+O(C*C)));k=T;j=Q;i=h;b=(d&24)!=0;break d}D=O(r-p);E=O(s-o);G=O(t-Y);ca=O(O(U*D)+O(O(K*E)+O(R*G)));X=O(O(S*D)+O(O(P*E)+O(M*G)));if(!(!(X>=O(0))|!(X>=ca))){L[f+88>>2]=p;L[f+84>>2]=Y;L[f+80>>2]=o;H[f+92>>2]=0;m=O(O(D*D)+O(O(E*E)+O(G*G)));k=p;j=Y;i=o;b=(d&48)!=0;break d}if(!(!(V=O(0))))){H[f+92>>2]=0;h=O(aa/O(aa-V));k=O(k+O(U*h));L[f+88>>2]=k;j=O(j+O(R*h));L[f+84>>2]=j;i=O(i+O(K*h));L[f+80>>2]=i;h=O(r-k);o=O(h*h);h=O(s-i);p=O(h*h);h=O(t-j);m=O(o+O(p+O(h*h)));b=d>>>3&1;break d}if(!(!(X<=ca)|(!(O(O(m*O(O(B*G)-O(E*C)))+O(O(v*O(O(C*D)-O(G*A)))+O(w*O(O(A*E)-O(D*B)))))>2]=0;i=O(ba-V);i=O(i/O(i+O(ca-X)));k=O(T+O(O(p-T)*i));L[f+88>>2]=k;j=O(Q+O(O(Y-Q)*i));L[f+84>>2]=j;i=O(h+O(O(o-h)*i));L[f+80>>2]=i;h=O(r-k);o=O(h*h);h=O(s-i);p=O(h*h);h=O(t-j);m=O(o+O(p+O(h*h)));b=d>>>4&1;break d}if(!(X=O(0)))){break c}H[f+92>>2]=0;h=O($/O($-X));k=O(k+O(S*h));L[f+88>>2]=k;j=O(j+O(M*h));L[f+84>>2]=j;i=O(i+O(P*h));L[f+80>>2]=i;h=O(r-k);o=O(h*h);h=O(s-i);p=O(h*h);h=O(t-j);m=O(o+O(p+O(h*h)));b=d>>>5&1}n=b;if(!(L[a+3664>>2]>m)){break a}k=O(r-k);h=O(s-i);j=O(t-j);i=O(O(1)/O(W(O(O(k*k)+O(O(h*h)+O(j*j))))));k=O(k*i);L[f+72>>2]=k;j=O(j*i);L[f+68>>2]=j;i=O(h*i);L[f+64>>2]=i;break b}H[f+92>>2]=0;i=O(O(O(m*O(k-r))+O(O(v*O(i-s))+O(w*O(j-t))))/da);j=O(m*i);L[f+88>>2]=r+j;k=O(w*i);L[f+84>>2]=t+k;i=O(v*i);L[f+80>>2]=s+i;m=O(O(j*j)+O(O(i*i)+O(k*k)));if(!(m>2])){break a}L[f+72>>2]=Z;L[f+68>>2]=u;L[f+64>>2]=_;n=1;k=Z;j=u;i=_}H[f+76>>2]=0;if(O(O(k*Z)+O(O(i*_)+O(u*j)))>O(.9959999918937683)){i=O(W(m));b=H[a+3616>>2];e:{if((b|0)==128){break e}l=H[e+4>>2];d=H[e>>2];g=l>>>0>d>>>0;q=g?d:l;g=g?l:d;d=q<<16|g;d=(d<<15^-1)+d|0;d=N(d>>>10^d,9);d=d>>>6^d;d=(d<<11^-1)+d|0;n=(((d>>>16^d)&127)+a|0)+3488|0;d=I[n|0];f:{if((d|0)!=255){while(1){d=d&255;n=(d<<3)+a|0;if((q|0)==H[n+2336>>2]&(g|0)==H[n+2340>>2]){break f}n=(a+d|0)+3360|0;d=I[n|0];if((d|0)!=255){continue}break}}F[n|0]=b;d=b;b=a+2336|0;F[(d+b|0)+1024|0]=255;d=H[a+3616>>2];H[a+3616>>2]=d+1;d=b+(d<<3)|0;H[d>>2]=q;H[d+4>>2]=g;l=H[e+4>>2];b=H[a+3616>>2]}if((b|0)==128){break e}g=H[e+8>>2];d=g>>>0>l>>>0;q=d?l:g;l=d?g:l;d=q<<16|l;d=(d<<15^-1)+d|0;d=N(d>>>10^d,9);d=d>>>6^d;d=(d<<11^-1)+d|0;n=(((d>>>16^d)&127)+a|0)+3488|0;d=I[n|0];g:{if((d|0)!=255){while(1){d=d&255;n=(d<<3)+a|0;if((q|0)==H[n+2336>>2]&(l|0)==H[n+2340>>2]){break g}n=(a+d|0)+3360|0;d=I[n|0];if((d|0)!=255){continue}break}}F[n|0]=b;d=b;b=a+2336|0;F[(d+b|0)+1024|0]=255;d=H[a+3616>>2];H[a+3616>>2]=d+1;d=b+(d<<3)|0;H[d>>2]=q;H[d+4>>2]=l;g=H[e+8>>2];b=H[a+3616>>2]}if((b|0)==128){break e}d=H[e>>2];e=d>>>0>g>>>0;n=e?g:d;g=e?d:g;d=n<<16|g;d=(d<<15^-1)+d|0;d=N(d>>>10^d,9);d=d>>>6^d;d=(d<<11^-1)+d|0;e=(((d>>>16^d)&127)+a|0)+3488|0;d=I[e|0];if((d|0)!=255){while(1){d=d&255;e=(d<<3)+a|0;if((n|0)==H[e+2336>>2]&(g|0)==H[e+2340>>2]){break e}e=(a+d|0)+3360|0;d=I[e|0];if((d|0)!=255){continue}break}}F[e|0]=b;d=b;b=a+2336|0;F[(d+b|0)+1024|0]=255;d=H[a+3616>>2];H[a+3616>>2]=d+1;d=b+(d<<3)|0;H[d>>2]=n;H[d+4>>2]=g}L[f+48>>2]=i;b=H[f+60>>2];H[f+8>>2]=H[f+56>>2];H[f+12>>2]=b;b=H[f+52>>2];H[f>>2]=H[f+48>>2];H[f+4>>2]=b;l0(a,f+80|0,f- -64|0,f,c);break a}d=H[a+3620>>2];b=H[d+4360>>2];g=b+15|0;if(g>>>0>(H[d+4364>>2]&2147483647)>>>0){tY(d,g);d=H[a+3620>>2];b=H[d+4360>>2]}H[d+4360>>2]=g;g=H[d+4356>>2];L[f+16>>2]=m;d=H[a+5736>>2];H[f+32>>2]=d;l=g+(b<<2)|0;h:{if(d>>>0>=(H[a+5740>>2]&2147483647)>>>0){d=a+3680|0;a=H[d+2060>>2]&2147483647;q=a?a<<1:1;b=0;i:{if(!q){break i}a=q<<5;if(!(I[d+2048|0]|a>>>0>2048)){F[d+2048|0]=1;b=d;break i}b=0;if(!a){break i}b=H[33808];g=b+12|0;b=(ga=g,ha=a,ia=Ra[H[H[b>>2]+20>>2]](b)|0?38102:55639,ja=13582,ka=553,fa=H[H[g>>2]+8>>2],Ra[fa](ga|0,ha|0,ia|0,ja|0,ka|0)|0)}a=H[d+2056>>2];if((a|0)>0){ea=b+(a<<5)|0;g=H[d+2052>>2];a=b;while(1){J=H[g+4>>2];H[a>>2]=H[g>>2];H[a+4>>2]=J;J=H[g+28>>2];H[a+24>>2]=H[g+24>>2];H[a+28>>2]=J;J=H[g+20>>2];H[a+16>>2]=H[g+16>>2];H[a+20>>2]=J;J=H[g+12>>2];H[a+8>>2]=H[g+8>>2];H[a+12>>2]=J;g=g+32|0;a=a+32|0;if(ea>>>0>a>>>0){continue}break}a=H[d+2056>>2]}g=H[f+20>>2];a=(a<<5)+b|0;H[a>>2]=H[f+16>>2];H[a+4>>2]=g;g=H[f+44>>2];H[a+24>>2]=H[f+40>>2];H[a+28>>2]=g;g=H[f+36>>2];H[a+16>>2]=H[f+32>>2];H[a+20>>2]=g;g=H[f+28>>2];H[a+8>>2]=H[f+24>>2];H[a+12>>2]=g;j:{if(H[d+2060>>2]<0){break j}a=H[d+2052>>2];if((a|0)==(d|0)){F[d+2048|0]=0;break j}if(!a){break j}g=H[33808]+12|0;Ra[H[H[g>>2]+12>>2]](g,a)}H[d+2060>>2]=q;H[d+2052>>2]=b;H[d+2056>>2]=H[d+2056>>2]+1;break h}b=H[a+5732>>2]+(d<<5)|0;d=H[f+20>>2];H[b>>2]=H[f+16>>2];H[b+4>>2]=d;d=H[f+44>>2];H[b+24>>2]=H[f+40>>2];H[b+28>>2]=d;d=H[f+36>>2];H[b+16>>2]=H[f+32>>2];H[b+20>>2]=d;d=H[f+28>>2];H[b+8>>2]=H[f+24>>2];H[b+12>>2]=d;H[a+5736>>2]=H[a+5736>>2]+1}F[l+56|0]=n;H[l+52>>2]=0;H[l+48>>2]=c;H[l+36>>2]=H[e>>2];H[l+40>>2]=H[e+4>>2];H[l+44>>2]=H[e+8>>2];a=H[f+84>>2];b=H[f+80>>2];h=L[f+88>>2];L[l+32>>2]=m;L[l+28>>2]=m;L[l+24>>2]=m;L[l+20>>2]=k;L[l+16>>2]=j;L[l+12>>2]=i;L[l+8>>2]=h;H[l>>2]=b;H[l+4>>2]=a}Oa=f+96|0}function OP(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,o=0,p=0,q=0,r=0,s=O(0);h=H[a+20>>2];n=Oa-2048|0;Oa=n;e=H[a+28>>2];a=H[H[e+976>>2]+1816>>2];F[a+20|0]=0;c=H[e+1140>>2];F[c+16|0]=0;b=H[e+1012>>2];Ra[H[H[b>>2]+76>>2]](b,a,c,h);c=H[e+2704>>2];i=H[e+1e3>>2];l=H[i+432>>2];if(c>>>0>>0){g=H[e+980>>2]+160|0;j=H[i+428>>2];while(1){a=H[(H[i+184>>2]+N(H[j+(c<<2)>>2]>>>7|0,24)|0)+20>>2];k=a-20|0;f=H[k>>2];b=H[a+36>>2];L[b>>2]=L[a>>2];L[b+4>>2]=L[a+4>>2];L[b+8>>2]=L[a+8>>2];L[b+12>>2]=L[a+12>>2];L[b+16>>2]=L[a+16>>2];L[b+20>>2]=L[a+20>>2];L[b+24>>2]=L[a+24>>2];m=a+-64|0;gG(m,g);k=I[H[k>>2]+9|0];b=H[e+1012>>2];H[n+1024>>2]=H[a+80>>2];Ra[H[H[b>>2]+44>>2]](b,(k|0)==2,n+1024|0);b=J[a+28>>1];if(b&2){vG(m,H[e+980>>2]+160|0);b=J[a+28>>1]}H[f+104>>2]=0;H[f+96>>2]=0;H[f+100>>2]=0;H[f+88>>2]=0;H[f+80>>2]=0;H[f+84>>2]=0;H[f+156>>2]=0;G[a+28>>1]=b&1;c=c+1|0;if((l|0)!=(c|0)){continue}break}}a:{if(!H[e+1172>>2]){break a}b=H[H[e+976>>2]+1156>>2];while(1){a=yq(b,40);c=H[e+1172>>2];f=H[e+1168>>2];i=H[e+16>>2];l=H[e+20>>2];H[a+24>>2]=0;H[a+16>>2]=0;H[a+8>>2]=i;H[a+12>>2]=l;H[a>>2]=120196;H[a+20>>2]=h;H[a+24>>2]=1;H[a+28>>2]=f+(d<<2);c=c-d|0;H[a+32>>2]=c>>>0<256?c:256;if(h){Ra[H[H[h>>2]+16>>2]](h);H[a+16>>2]=H[H[a+20>>2]+16>>2];k=H[a>>2]}else{k=120196}Ra[H[k+20>>2]](a);a=H[e+1172>>2];d=d+256|0;if(a>>>0>d>>>0){continue}break}if(!a){break a}b=H[e+980>>2];c=0;while(1){d=H[H[e+1168>>2]+(c<<2)>>2];b:{if(F[d+92|0]&1){break b}f=H[d+32>>2];if(!f){break b}while(1){i=H[f+8>>2];if((i|0)<0){l=i&2147483647;a=l+32>>>5|0;c:{if(a>>>0<=(H[b+164>>2]&2147483647)>>>0){d=H[b+160>>2];break c}d=H[b+168>>2];d=Ra[H[H[d>>2]+8>>2]](d,a<<2,14905,438)|0;g=H[b+160>>2];d:{if(!g){break d}R6(d,g,H[b+164>>2]<<2);if(H[b+164>>2]<0){break d}g=H[b+160>>2];if(!g){break d}j=H[b+168>>2];Ra[H[H[j>>2]+12>>2]](j,g)}g=H[b+164>>2];S6((g<<2)+d|0,0,a-g<<2);H[b+164>>2]=a;H[b+160>>2]=d}a=(l>>>3&268435452)+d|0;H[a>>2]=H[a>>2]|1<>2];if(f){continue}break}a=H[e+1172>>2]}c=c+1|0;if(c>>>0>>0){continue}break}if(!a){break a}c=0;b=0;while(1){d=a-b|0;i=d>>>0<256?d:256;e:{if(!i){break e}a=a+c|0;d=a>>>0<256?a:256;l=d&1;a=H[e+1168>>2];f=0;if((d|0)!=1){g=d&510;d=0;while(1){j=f<<2;k=n+1024|0;m=a+(b+f<<2)|0;H[j+k>>2]=H[m>>2]- -64;H[j+n>>2]=H[H[m>>2]+144>>2]>>>7;m=k;j=f|1;k=j<<2;j=a+(b+j<<2)|0;H[m+k>>2]=H[j>>2]- -64;H[k+n>>2]=H[H[j>>2]+144>>2]>>>7;f=f+2|0;d=d+2|0;if((g|0)!=(d|0)){continue}break}}if(!l){break e}d=f<<2;a=a+(b+f<<2)|0;H[d+(n+1024|0)>>2]=H[a>>2]- -64;H[d+n>>2]=H[H[a>>2]+144>>2]>>>7}a=H[e+1012>>2];Ra[H[H[a>>2]+28>>2]](a,n+1024|0,n,i);c=c-256|0;a=H[e+1172>>2];b=b+256|0;if(a>>>0>b>>>0){continue}break}}a=0;d=0;c=0;l=Oa-16|0;Oa=l;f=H[e+36>>2];f:{if(!f){break f}i=H[e+24>>2];g=H[H[e+976>>2]+1156>>2];g:{if(!h){while(1){c=H[H[H[i+(a<<2)>>2]>>2]+36>>2]+c|0;h:{if(c>>>0<=1023){a=a+1|0;break h}b=yq(g,48);j=H[H[e+976>>2]+1816>>2];k=H[e+1140>>2];m=H[e+16>>2];q=H[e+20>>2];c=0;H[b+24>>2]=0;H[b+16>>2]=0;H[b+20>>2]=0;H[b+8>>2]=m;H[b+12>>2]=q;H[b+40>>2]=k;H[b+36>>2]=j;a=a+1|0;H[b+32>>2]=a-d;H[b+28>>2]=i+(d<<2);H[b>>2]=119860;H[b+24>>2]=1;d=H[b+16>>2];Ra[H[H[d>>2]+72>>2]](d,b);d=a}if((a|0)!=(f|0)){continue}break}break g}while(1){c=H[H[H[i+(a<<2)>>2]>>2]+36>>2]+c|0;i:{if(c>>>0<=1023){a=a+1|0;break i}b=yq(g,48);j=H[H[e+976>>2]+1816>>2];k=H[e+1140>>2];m=H[e+16>>2];q=H[e+20>>2];c=0;H[b+24>>2]=0;H[b+16>>2]=0;H[b+8>>2]=m;H[b+12>>2]=q;H[b+40>>2]=k;H[b+36>>2]=j;a=a+1|0;H[b+32>>2]=a-d;H[b+28>>2]=i+(d<<2);H[b>>2]=119860;H[b+20>>2]=h;H[b+24>>2]=1;Ra[H[H[h>>2]+16>>2]](h);H[b+16>>2]=H[H[b+20>>2]+16>>2];Ra[H[H[b>>2]+20>>2]](b);d=a}if((a|0)!=(f|0)){continue}break}}if(c){a=yq(g,48);c=H[H[e+976>>2]+1816>>2];b=H[e+1140>>2];g=H[e+16>>2];j=H[e+20>>2];H[a+24>>2]=0;H[a+16>>2]=0;H[a+8>>2]=g;H[a+12>>2]=j;H[a+40>>2]=b;H[a+36>>2]=c;H[a+32>>2]=f-d;H[a+28>>2]=i+(d<<2);H[a>>2]=119860;H[a+20>>2]=h;H[a+24>>2]=1;if(h){Ra[H[H[h>>2]+16>>2]](h);H[a+16>>2]=H[H[a+20>>2]+16>>2];d=H[a>>2]}else{d=119860}Ra[H[d+20>>2]](a)}if(!f){break f}b=H[e+980>>2];F[H[H[e+976>>2]+1816>>2]+20|0]=1;F[H[e+1140>>2]+16|0]=1;d=0;while(1){a=H[H[i+(d<<2)>>2]>>2];c=H[a+32>>2];if(c){while(1){if(I[H[c+28>>2]- -64|0]&5){g=H[c+8>>2];j=H[b+160>>2]+(g>>>3&268435452)|0;H[j>>2]=H[j>>2]|1<>2];if(c){continue}break}}c=H[e+1012>>2];H[l+8>>2]=H[a+144>>2];Ra[H[H[c>>2]+44>>2]](c,0,l+8|0);d=d+1|0;if((f|0)!=(d|0)){continue}break}}Oa=l+16|0;l=H[e+1e3>>2];d=H[l+296>>2];if(d){f=l+168|0;k=H[l+292>>2];i=H[H[e+976>>2]+1156>>2];b=0;while(1){a=yq(i,48);s=L[e+1080>>2];c=H[e+16>>2];g=H[e+20>>2];H[a+24>>2]=0;H[a+16>>2]=0;H[a+8>>2]=c;H[a+12>>2]=g;L[a+40>>2]=s;c=d-b|0;H[a+36>>2]=c>>>0<64?c:64;H[a+32>>2]=k+(b<<2);H[a+28>>2]=f;H[a>>2]=120252;H[a+20>>2]=h;H[a+24>>2]=1;if(h){Ra[H[H[h>>2]+16>>2]](h);H[a+16>>2]=H[H[a+20>>2]+16>>2];m=H[a>>2]}else{m=120252}Ra[H[m+20>>2]](a);b=b- -64|0;if(d>>>0>b>>>0){continue}break}m=d>>>0>1?d:1;q=e+1156|0;h=H[e+980>>2];d=0;while(1){f=0;b=0;c=0;a=0;i=H[H[(H[l+184>>2]+N(H[k+(d<<2)>>2]>>>7|0,24)|0)+20>>2]+16>>2];g=H[i+28>>2];if(g){j=n+1024|0;o=g&1;j:{if((g|0)==1){break j}g=g&-2;while(1){p=b<<2;r=H[p+H[i+24>>2]>>2];if(I[H[r+100>>2]+28|0]&4){H[j+(a<<2)>>2]=r;a=a+1|0}p=H[H[i+24>>2]+(p|4)>>2];if(I[H[p+100>>2]+28|0]&4){H[j+(a<<2)>>2]=p;a=a+1|0}b=b+2|0;c=c+2|0;if((g|0)!=(c|0)){continue}break}}k:{if(!o){break k}c=H[H[i+24>>2]+(b<<2)>>2];if(!(I[H[c+100>>2]+28|0]&4)){break k}H[j+(a<<2)>>2]=c;a=a+1|0}}if(a){while(1){c=(n+1024|0)+(f<<2)|0;b=H[e+1160>>2];l:{if(b>>>0>=(H[e+1164>>2]&2147483647)>>>0){rF(q,c);break l}H[H[e+1156>>2]+(b<<2)>>2]=H[c>>2];H[e+1160>>2]=b+1}f=f+1|0;if((a|0)!=(f|0)){continue}break}}b=0;a=H[i+28>>2];if(a){while(1){f=H[H[H[i+24>>2]+(b<<2)>>2]+32>>2];if(f){while(1){g=H[f+8>>2];if((g|0)<0){j=g&2147483647;c=j+32>>>5|0;m:{if(c>>>0<=(H[h+164>>2]&2147483647)>>>0){a=H[h+160>>2];break m}a=H[h+168>>2];a=Ra[H[H[a>>2]+8>>2]](a,c<<2,14905,438)|0;o=H[h+160>>2];n:{if(!o){break n}R6(a,o,H[h+164>>2]<<2);if(H[h+164>>2]<0){break n}o=H[h+160>>2];if(!o){break n}p=H[h+168>>2];Ra[H[H[p>>2]+12>>2]](p,o)}o=H[h+164>>2];S6((o<<2)+a|0,0,c-o<<2);H[h+164>>2]=c;H[h+160>>2]=a}a=(j>>>3&268435452)+a|0;H[a>>2]=H[a>>2]|1<>2];if(f){continue}break}a=H[i+28>>2]}b=b+1|0;if(b>>>0>>0){continue}break}}d=d+1|0;if((m|0)!=(d|0)){continue}break}}AO(e,0);Oa=n+2048|0}function Iz(a){var b=O(0),c=O(0),d=O(0),e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),F=O(0),G=O(0),I=O(0),J=O(0),K=O(0),M=O(0),N=O(0),P=O(0),Q=O(0),R=O(0),S=O(0),T=O(0),U=O(0),V=O(0),W=O(0),X=O(0),Y=O(0),Z=O(0),_=O(0),$=O(0),aa=O(0),ba=O(0),ca=O(0),da=O(0),ea=O(0),fa=O(0),ga=O(0),ha=O(0),ia=O(0),ja=O(0),ka=O(0),la=O(0),ma=O(0),na=O(0),oa=O(0),pa=O(0),qa=O(0),ra=O(0),sa=O(0),ta=O(0),ua=O(0),va=O(0),wa=O(0),xa=O(0),ya=0,za=O(0),Aa=O(0),Ba=O(0),Ca=O(0),Da=O(0),Ea=O(0),Fa=O(0),Ga=O(0),Ha=O(0),Ia=O(0),Ja=O(0),Ka=O(0),La=O(0),Ma=O(0),Na=O(0),Oa=O(0),Pa=O(0),Qa=O(0),Ra=O(0),Sa=O(0),Ta=O(0),Ua=O(0),Va=O(0),Wa=O(0),Xa=O(0),Ya=O(0),Za=O(0),_a=O(0),$a=O(0),ab=O(0),bb=O(0),cb=O(0),db=O(0),eb=O(0),fb=O(0),gb=O(0),hb=O(0),ib=O(0),jb=O(0),kb=O(0),lb=O(0),mb=O(0),nb=O(0),ob=O(0),pb=O(0),qb=0,rb=O(0),sb=O(0),tb=O(0),ub=O(0),vb=O(0),wb=O(0),xb=O(0),yb=O(0),zb=O(0),Ab=O(0),Bb=O(0),Cb=O(0),Db=O(0),Eb=O(0),Fb=O(0),Gb=O(0),Hb=O(0),Ib=O(0),Jb=O(0),Kb=O(0),Lb=O(0),Mb=O(0),Nb=O(0),Ob=O(0),Pb=O(0),Qb=O(0),Rb=O(0),Sb=O(0),Tb=O(0),Ub=O(0),Vb=O(0),Wb=O(0),Xb=O(0),Yb=O(0),Zb=O(0),_b=O(0),$b=O(0),ac=O(0),bc=O(0);e=H[a+100>>2];z=L[e+16>>2];f=H[a+96>>2];rb=L[f+28>>2];A=L[f+24>>2];B=L[f+20>>2];sb=L[e+12>>2];C=L[e+8>>2];D=L[e+4>>2];E=L[e>>2];g=H[a+68>>2];F=L[g+16>>2];h=H[a+64>>2];tb=L[h+28>>2];G=L[h+24>>2];I=L[h+20>>2];ub=L[g+12>>2];J=L[g+8>>2];K=L[g+4>>2];M=L[g>>2];i=H[a+36>>2];N=L[i+16>>2];j=H[a+32>>2];vb=L[j+28>>2];P=L[j+24>>2];Q=L[j+20>>2];wb=L[i+12>>2];R=L[i+8>>2];S=L[i+4>>2];T=L[i>>2];k=H[a+4>>2];xb=L[k+28>>2];U=L[k+24>>2];V=L[k+20>>2];l=H[a>>2];yb=L[l+28>>2];W=L[l+24>>2];X=L[l+20>>2];zb=L[e+28>>2];Y=L[e+24>>2];Z=L[e+20>>2];Ab=L[g+28>>2];_=L[g+24>>2];$=L[g+20>>2];Bb=L[i+28>>2];aa=L[i+24>>2];ba=L[i+20>>2];ca=L[f+16>>2];Cb=L[f+12>>2];da=L[f+8>>2];ea=L[f+4>>2];fa=L[f>>2];ga=L[h+16>>2];Db=L[h+12>>2];ha=L[h+8>>2];ia=L[h+4>>2];ja=L[h>>2];ka=L[j+16>>2];Eb=L[j+12>>2];la=L[j+8>>2];ma=L[j+4>>2];na=L[j>>2];oa=L[k+16>>2];pa=L[l+16>>2];Fb=L[k+12>>2];qa=L[k+8>>2];ra=L[k+4>>2];sa=L[k>>2];Gb=L[l+12>>2];ta=L[l+8>>2];ua=L[l+4>>2];va=L[l>>2];a=H[a+24>>2];ya=H[a+4>>2];if(ya){Hb=L[a+108>>2];Ib=L[a+104>>2];Jb=L[a+100>>2];Kb=L[a+92>>2];Lb=L[a+88>>2];Mb=L[a+84>>2];Nb=L[a+76>>2];Ob=L[a+72>>2];Pb=L[a+68>>2];Qb=L[a+60>>2];Rb=L[a+56>>2];Sb=L[a+52>>2];Tb=L[a+96>>2];Ub=L[a+80>>2];Vb=L[a+64>>2];Wb=L[a+48>>2];a=a+160|0;while(1){c=L[a+212>>2];d=L[a+228>>2];wa=L[a+196>>2];o=L[a+244>>2];Xb=L[a+148>>2];Yb=L[a+180>>2];za=L[a+36>>2];Aa=L[a+20>>2];p=L[a+84>>2];Ba=L[a+52>>2];Ca=L[a+68>>2];q=L[a+308>>2];Da=L[a+276>>2];Ea=L[a+292>>2];r=L[a+356>>2];Fa=L[a+324>>2];Ga=L[a+340>>2];m=L[a+216>>2];n=L[a+232>>2];Zb=L[a+200>>2];s=L[a+248>>2];_b=L[a+152>>2];$b=L[a+184>>2];Ha=L[a+40>>2];Ia=L[a+24>>2];t=L[a+88>>2];Ja=L[a+56>>2];Ka=L[a+72>>2];u=L[a+312>>2];La=L[a+280>>2];Ma=L[a+296>>2];v=L[a+360>>2];Na=L[a+328>>2];Oa=L[a+344>>2];w=L[a+220>>2];b=L[a+236>>2];xa=L[a+204>>2];Pa=L[a+252>>2];ac=L[a+156>>2];bc=L[a+188>>2];Qa=L[a+44>>2];Ra=L[a+28>>2];Sa=L[a+92>>2];Ta=L[a+60>>2];Ua=L[a+76>>2];Va=L[a+316>>2];Wa=L[a+284>>2];Xa=L[a+300>>2];Ya=L[a+364>>2];Za=L[a+332>>2];_a=L[a+348>>2];$a=L[a+4>>2];ab=L[a+8>>2];bb=L[a+12>>2];x=L[a+208>>2];y=L[a+224>>2];cb=L[a+240>>2];db=L[a>>2];eb=L[a+16>>2];fb=L[a+32>>2];gb=L[a+48>>2];hb=L[a+64>>2];ib=L[a+80>>2];jb=L[a+272>>2];kb=L[a+288>>2];lb=L[a+304>>2];mb=L[a+320>>2];nb=L[a+336>>2];ob=L[a+352>>2];pb=O(O(cb*L[a+192>>2])+O(O(O(O(O(O(O(va*db)+O(ua*eb))+O(ta*fb))+O(O(O(pa*gb)+O(X*hb))+O(W*ib)))-O(O(O(O(sa*jb)+O(ra*kb))+O(qa*lb))+O(O(O(oa*mb)+O(V*nb))+O(U*ob))))*L[a+176>>2])+L[a+144>>2]));y=yy?x:y;L[a+240>>2]=x;xa=O(O(Pa*xa)+O(ac+O(bc*O(O(O(O(O(fa*bb)+O(ea*Ra))+O(da*Qa))+O(O(O(ca*Ta)+O(B*Ua))+O(A*Sa)))-O(O(O(O(E*Wa)+O(D*Xa))+O(C*Va))+O(O(O(z*Za)+O(Z*_a))+O(Y*Ya)))))));b=b>2]=w;b=O(O(s*Zb)+O(_b+O($b*O(O(O(O(O(ja*ab)+O(ia*Ia))+O(ha*Ha))+O(O(O(ga*Ja)+O(I*Ka))+O(G*t)))-O(O(O(O(M*La)+O(K*Ma))+O(J*u))+O(O(O(F*Na)+O($*Oa))+O(_*v)))))));n=nn?m:n;L[a+248>>2]=b;m=O(O(o*wa)+O(Xb+O(Yb*O(O(O(O(O(na*$a)+O(ma*Aa))+O(la*za))+O(O(O(ka*Ba)+O(Q*Ca))+O(P*p)))-O(O(O(O(T*Da)+O(S*Ea))+O(R*q))+O(O(O(N*Fa)+O(ba*Ga))+O(aa*r)))))));d=dd?c:d;L[a+244>>2]=wa;c=O(x-cb);d=O(Tb*c);U=O(U-O(ob*d));m=O(Ub*c);W=O(W+O(ib*m));n=O(Vb*c);qa=O(qa-O(lb*n));c=O(Wb*c);ta=O(ta+O(fb*c));V=O(V-O(nb*d));X=O(X+O(hb*m));ra=O(ra-O(kb*n));ua=O(ua+O(eb*c));oa=O(oa-O(mb*d));pa=O(pa+O(gb*m));sa=O(sa-O(jb*n));va=O(va+O(db*c));c=O(w-Pa);m=O(Hb*c);Y=O(Y-O(Ya*m));d=O(b-s);n=O(Ib*d);_=O(_-O(v*n));b=r;o=O(wa-o);r=O(Jb*o);aa=O(aa-O(b*r));s=O(Kb*c);A=O(A+O(Sa*s));b=t;t=O(Lb*d);G=O(G+O(b*t));b=p;p=O(Mb*o);P=O(P+O(b*p));v=O(Nb*c);C=O(C-O(Va*v));b=u;u=O(Ob*d);J=O(J-O(b*u));b=q;q=O(Pb*o);R=O(R-O(b*q));c=O(Qb*c);da=O(da+O(Qa*c));d=O(Rb*d);ha=O(ha+O(Ha*d));o=O(Sb*o);la=O(la+O(za*o));Z=O(Z-O(_a*m));$=O($-O(Oa*n));ba=O(ba-O(Ga*r));B=O(B+O(Ua*s));I=O(I+O(Ka*t));Q=O(Q+O(Ca*p));D=O(D-O(Xa*v));K=O(K-O(Ma*u));S=O(S-O(Ea*q));ea=O(ea+O(Ra*c));ia=O(ia+O(Ia*d));ma=O(ma+O(Aa*o));z=O(z-O(Za*m));F=O(F-O(Na*n));N=O(N-O(Fa*r));ca=O(ca+O(Ta*s));ga=O(ga+O(Ja*t));ka=O(ka+O(Ba*p));E=O(E-O(Wa*v));M=O(M-O(La*u));T=O(T-O(Da*q));fa=O(fa+O(bb*c));ja=O(ja+O(ab*d));na=O(na+O($a*o));a=a+368|0;qb=qb+1|0;if((ya|0)!=(qb|0)){continue}break}}L[l+12>>2]=Gb;L[l+8>>2]=ta;L[l+4>>2]=ua;L[l>>2]=va;L[j+12>>2]=Eb;L[j+8>>2]=la;L[j+4>>2]=ma;L[j>>2]=na;L[h+12>>2]=Db;L[h+8>>2]=ha;L[h+4>>2]=ia;L[h>>2]=ja;L[f+12>>2]=Cb;L[f+8>>2]=da;L[f+4>>2]=ea;L[f>>2]=fa;L[k+12>>2]=Fb;L[k+8>>2]=qa;L[k+4>>2]=ra;L[k>>2]=sa;L[i+12>>2]=wb;L[i+8>>2]=R;L[i+4>>2]=S;L[i>>2]=T;L[g+12>>2]=ub;L[g+8>>2]=J;L[g+4>>2]=K;L[g>>2]=M;L[e+12>>2]=sb;L[e+8>>2]=C;L[e+4>>2]=D;L[e>>2]=E;L[l+28>>2]=yb;L[l+24>>2]=W;L[l+20>>2]=X;L[l+16>>2]=pa;L[j+28>>2]=vb;L[j+24>>2]=P;L[j+20>>2]=Q;L[j+16>>2]=ka;L[h+28>>2]=tb;L[h+24>>2]=G;L[h+20>>2]=I;L[h+16>>2]=ga;L[f+28>>2]=rb;L[f+24>>2]=A;L[f+20>>2]=B;L[f+16>>2]=ca;L[k+28>>2]=xb;L[k+24>>2]=U;L[k+20>>2]=V;L[k+16>>2]=oa;L[i+28>>2]=Bb;L[i+24>>2]=aa;L[i+20>>2]=ba;L[i+16>>2]=N;L[g+28>>2]=Ab;L[g+24>>2]=_;L[g+20>>2]=$;L[g+16>>2]=F;L[e+28>>2]=zb;L[e+24>>2]=Y;L[e+20>>2]=Z;L[e+16>>2]=z}function rw(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,v=0;o=32;c=Oa-48|0;Oa=c;F[c+12|0]=0;j=c-128|0;Oa=j;H[c+8>>2]=j;l=b-1|0;a:{if((l|0)<=0){break a}while(1){b:{if((l|0)<=(m|0)){break b}while(1){if(l-m>>>0<=4){while(1){f=m;m=f+1|0;b=m;e=f;while(1){h=(b<<5)+a|0;i=J[h+8>>1];g=(e<<5)+a|0;k=J[g+8>>1];e=(((i|0)==65535?J[h+10>>1]:i)&65535)>>>0<(((k|0)==65535?J[g+10>>1]:k)&65535)>>>0?b:e;g=(b|0)<(l|0);b=b+1|0;if(g){continue}break}if((e|0)!=(f|0)){e=(e<<5)+a|0;b=H[e+28>>2];H[c+40>>2]=H[e+24>>2];H[c+44>>2]=b;b=H[e+20>>2];H[c+32>>2]=H[e+16>>2];H[c+36>>2]=b;b=H[e+12>>2];H[c+24>>2]=H[e+8>>2];H[c+28>>2]=b;b=H[e+4>>2];H[c+16>>2]=H[e>>2];H[c+20>>2]=b;f=(f<<5)+a|0;b=H[f+28>>2];H[e+24>>2]=H[f+24>>2];H[e+28>>2]=b;b=H[f+20>>2];H[e+16>>2]=H[f+16>>2];H[e+20>>2]=b;b=H[f+12>>2];H[e+8>>2]=H[f+8>>2];H[e+12>>2]=b;b=H[f+4>>2];H[e>>2]=H[f>>2];H[e+4>>2]=b;b=H[c+44>>2];H[f+24>>2]=H[c+40>>2];H[f+28>>2]=b;b=H[c+36>>2];H[f+16>>2]=H[c+32>>2];H[f+20>>2]=b;b=H[c+28>>2];H[f+8>>2]=H[c+24>>2];H[f+12>>2]=b;b=H[c+20>>2];H[f>>2]=H[c+16>>2];H[f+4>>2]=b}if((l|0)!=(m|0)){continue}break b}}d=((l+m|0)/2<<5)+a|0;b=J[d+8>>1];h=(m<<5)+a|0;f=J[h+10>>1];k=J[h+8>>1];if((((b|0)==65535?J[d+10>>1]:b)&65535)>>>0<(((k|0)==65535?f:k)&65535)>>>0){b=H[h+28>>2];H[c+40>>2]=H[h+24>>2];H[c+44>>2]=b;b=H[h+20>>2];H[c+32>>2]=H[h+16>>2];H[c+36>>2]=b;b=H[h+12>>2];H[c+24>>2]=H[h+8>>2];H[c+28>>2]=b;b=H[h+4>>2];H[c+16>>2]=H[h>>2];H[c+20>>2]=b;b=H[d+28>>2];H[h+24>>2]=H[d+24>>2];H[h+28>>2]=b;b=H[d+20>>2];H[h+16>>2]=H[d+16>>2];H[h+20>>2]=b;b=H[d+12>>2];H[h+8>>2]=H[d+8>>2];H[h+12>>2]=b;b=H[d+4>>2];H[h>>2]=H[d>>2];H[h+4>>2]=b;b=H[c+44>>2];H[d+24>>2]=H[c+40>>2];H[d+28>>2]=b;b=H[c+36>>2];H[d+16>>2]=H[c+32>>2];H[d+20>>2]=b;b=H[c+28>>2];H[d+8>>2]=H[c+24>>2];H[d+12>>2]=b;b=H[c+20>>2];H[d>>2]=H[c+16>>2];H[d+4>>2]=b;k=J[h+8>>1];f=J[h+10>>1]}g=(l<<5)+a|0;b=J[g+10>>1];e=J[g+8>>1];if((((e|0)==65535?b:e)&65535)>>>0<(((k&65535)==65535?f:k)&65535)>>>0){b=H[h+28>>2];H[c+40>>2]=H[h+24>>2];H[c+44>>2]=b;b=H[h+20>>2];H[c+32>>2]=H[h+16>>2];H[c+36>>2]=b;b=H[h+12>>2];H[c+24>>2]=H[h+8>>2];H[c+28>>2]=b;b=H[h+4>>2];H[c+16>>2]=H[h>>2];H[c+20>>2]=b;b=H[g+28>>2];H[h+24>>2]=H[g+24>>2];H[h+28>>2]=b;b=H[g+20>>2];H[h+16>>2]=H[g+16>>2];H[h+20>>2]=b;b=H[g+12>>2];H[h+8>>2]=H[g+8>>2];H[h+12>>2]=b;b=H[g+4>>2];H[h>>2]=H[g>>2];H[h+4>>2]=b;b=H[c+44>>2];H[g+24>>2]=H[c+40>>2];H[g+28>>2]=b;b=H[c+36>>2];H[g+16>>2]=H[c+32>>2];H[g+20>>2]=b;b=H[c+28>>2];H[g+8>>2]=H[c+24>>2];H[g+12>>2]=b;b=H[c+20>>2];H[g>>2]=H[c+16>>2];H[g+4>>2]=b;e=J[g+8>>1];f=J[g+10>>1]}else{f=b}b=J[d+8>>1];if((((e|0)==65535?f:e)&65535)>>>0<(((b|0)==65535?J[d+10>>1]:b)&65535)>>>0){b=H[d+28>>2];H[c+40>>2]=H[d+24>>2];H[c+44>>2]=b;b=H[d+20>>2];H[c+32>>2]=H[d+16>>2];H[c+36>>2]=b;b=H[d+12>>2];H[c+24>>2]=H[d+8>>2];H[c+28>>2]=b;b=H[d+4>>2];H[c+16>>2]=H[d>>2];H[c+20>>2]=b;b=H[g+28>>2];H[d+24>>2]=H[g+24>>2];H[d+28>>2]=b;b=H[g+20>>2];H[d+16>>2]=H[g+16>>2];H[d+20>>2]=b;b=H[g+12>>2];H[d+8>>2]=H[g+8>>2];H[d+12>>2]=b;b=H[g+4>>2];H[d>>2]=H[g>>2];H[d+4>>2]=b;b=H[c+44>>2];H[g+24>>2]=H[c+40>>2];H[g+28>>2]=b;b=H[c+36>>2];H[g+16>>2]=H[c+32>>2];H[g+20>>2]=b;b=H[c+28>>2];H[g+8>>2]=H[c+24>>2];H[g+12>>2]=b;b=H[c+20>>2];H[g>>2]=H[c+16>>2];H[g+4>>2]=b}b=H[d+28>>2];H[c+40>>2]=H[d+24>>2];H[c+44>>2]=b;b=H[d+20>>2];H[c+32>>2]=H[d+16>>2];H[c+36>>2]=b;b=H[d+12>>2];H[c+24>>2]=H[d+8>>2];H[c+28>>2]=b;b=H[d+4>>2];H[c+16>>2]=H[d>>2];H[c+20>>2]=b;k=l-1|0;i=(k<<5)+a|0;f=i;b=H[f+4>>2];H[d>>2]=H[f>>2];H[d+4>>2]=b;b=H[f+28>>2];H[d+24>>2]=H[f+24>>2];H[d+28>>2]=b;b=H[f+20>>2];H[d+16>>2]=H[f+16>>2];H[d+20>>2]=b;b=H[f+12>>2];H[d+8>>2]=H[f+8>>2];H[d+12>>2]=b;b=H[c+44>>2];H[f+24>>2]=H[c+40>>2];H[f+28>>2]=b;b=H[c+36>>2];H[f+16>>2]=H[c+32>>2];H[f+20>>2]=b;b=H[c+28>>2];H[f+8>>2]=H[c+24>>2];H[f+12>>2]=b;b=H[c+20>>2];H[f>>2]=H[c+16>>2];H[f+4>>2]=b;b=m;while(1){f=J[i+8>>1];e=(f|0)==65535?J[i+10>>1]:f;while(1){f=b;b=b+1|0;d=(b<<5)+a|0;g=J[d+8>>1];h=((g|0)==65535?J[d+10>>1]:g)&65535;g=e&65535;if(h>>>0>>0){continue}break}while(1){k=k-1|0;e=(k<<5)+a|0;h=J[e+8>>1];if(g>>>0<(((h|0)==65535?J[e+10>>1]:h)&65535)>>>0){continue}break}if((b|0)<(k|0)){f=H[d+28>>2];H[c+40>>2]=H[d+24>>2];H[c+44>>2]=f;f=H[d+20>>2];H[c+32>>2]=H[d+16>>2];H[c+36>>2]=f;f=H[d+12>>2];H[c+24>>2]=H[d+8>>2];H[c+28>>2]=f;f=H[d+4>>2];H[c+16>>2]=H[d>>2];H[c+20>>2]=f;f=H[e+28>>2];H[d+24>>2]=H[e+24>>2];H[d+28>>2]=f;f=H[e+20>>2];H[d+16>>2]=H[e+16>>2];H[d+20>>2]=f;f=H[e+12>>2];H[d+8>>2]=H[e+8>>2];H[d+12>>2]=f;f=H[e+4>>2];H[d>>2]=H[e>>2];H[d+4>>2]=f;f=H[c+44>>2];H[e+24>>2]=H[c+40>>2];H[e+28>>2]=f;f=H[c+36>>2];H[e+16>>2]=H[c+32>>2];H[e+20>>2]=f;f=H[c+28>>2];H[e+8>>2]=H[c+24>>2];H[e+12>>2]=f;f=H[c+20>>2];H[e>>2]=H[c+16>>2];H[e+4>>2]=f;continue}break}e=H[d+28>>2];H[c+40>>2]=H[d+24>>2];H[c+44>>2]=e;e=H[d+20>>2];H[c+32>>2]=H[d+16>>2];H[c+36>>2]=e;e=H[d+12>>2];H[c+24>>2]=H[d+8>>2];H[c+28>>2]=e;e=H[d+4>>2];H[c+16>>2]=H[d>>2];H[c+20>>2]=e;e=H[i+28>>2];H[d+24>>2]=H[i+24>>2];H[d+28>>2]=e;e=H[i+20>>2];H[d+16>>2]=H[i+16>>2];H[d+20>>2]=e;e=H[i+12>>2];H[d+8>>2]=H[i+8>>2];H[d+12>>2]=e;e=H[i+4>>2];H[d>>2]=H[i>>2];H[d+4>>2]=e;e=H[c+44>>2];H[i+24>>2]=H[c+40>>2];H[i+28>>2]=e;e=H[c+36>>2];H[i+16>>2]=H[c+32>>2];H[i+20>>2]=e;e=H[c+28>>2];H[i+8>>2]=H[c+24>>2];H[i+12>>2]=e;e=H[c+20>>2];H[i>>2]=H[c+16>>2];H[i+4>>2]=e;c:{if((b-m|0)<(l-b|0)){d:{if(o-1>>>0>n>>>0){b=j;break d}e=o<<3;if(e){g=H[33808];b=g+12|0;b=(r=b,s=e,t=Ra[H[H[g>>2]+20>>2]](g)|0?40080:55639,u=14160,v=155,q=H[H[b>>2]+8>>2],Ra[q](r|0,s|0,t|0,u|0,v|0)|0)}else{b=0}e=R6(b,j,n<<2);if(!(!p|!j)){g=H[33808]+12|0;Ra[H[H[g>>2]+12>>2]](g,j)}o=o<<1;p=1;j=e}b=(n<<2)+b|0;H[b>>2]=m;H[b+4>>2]=f;m=f+2|0;break c}h=f+2|0;e:{if(o-1>>>0>n>>>0){b=j;break e}e=o<<3;if(e){g=H[33808];b=g+12|0;b=(v=b,u=e,t=Ra[H[H[g>>2]+20>>2]](g)|0?40080:55639,s=14160,r=155,q=H[H[b>>2]+8>>2],Ra[q](v|0,u|0,t|0,s|0,r|0)|0)}else{b=0}e=R6(b,j,n<<2);if(!(!p|!j)){g=H[33808]+12|0;Ra[H[H[g>>2]+12>>2]](g,j)}o=o<<1;p=1;j=e}b=(n<<2)+b|0;H[b>>2]=h;H[b+4>>2]=l;l=f}n=n+2|0;if((l|0)>(m|0)){continue}break}}if(n){b=n-2|0;m=H[(b<<2)+j>>2];l=H[((n<<2)+j|0)-4>>2];n=b;continue}break}if(!p|!j){break a}a=H[33808]+12|0;Ra[H[H[a>>2]+12>>2]](a,j)}if(I[c+12|0]){H5(H[c+8>>2])}Oa=c+48|0}function EI(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=O(0),n=0,o=0;b=Oa-2768|0;Oa=b;S6(b+2560|0,0,140);F[b+2556|0]=0;F[b+2532|0]=0;F[b+2508|0]=0;F[b+2484|0]=0;F[b+2460|0]=0;F[b+2436|0]=0;F[b+2412|0]=0;F[b+2388|0]=0;F[b+2364|0]=0;F[b+2340|0]=0;F[b+2316|0]=0;F[b+2292|0]=0;F[b+2268|0]=0;F[b+2244|0]=0;F[b+2220|0]=0;F[b+2196|0]=0;F[b+2172|0]=0;F[b+2148|0]=0;F[b+2124|0]=0;F[b+2100|0]=0;F[b+2076|0]=0;F[b+2052|0]=0;F[b+2028|0]=0;F[b+2004|0]=0;F[b+1980|0]=0;F[b+1956|0]=0;F[b+1932|0]=0;F[b+1908|0]=0;F[b+1884|0]=0;F[b+1860|0]=0;F[b+1836|0]=0;F[b+1812|0]=0;F[b+1788|0]=0;F[b+1764|0]=0;F[b+1740|0]=0;F[b+1716|0]=0;F[b+1692|0]=0;F[b+1668|0]=0;F[b+1644|0]=0;F[b+1620|0]=0;F[b+1596|0]=0;F[b+1572|0]=0;F[b+1548|0]=0;F[b+1524|0]=0;F[b+1500|0]=0;F[b+1476|0]=0;F[b+1452|0]=0;F[b+1428|0]=0;F[b+1404|0]=0;F[b+1380|0]=0;F[b+1356|0]=0;F[b+1332|0]=0;F[b+1308|0]=0;F[b+1284|0]=0;F[b+1260|0]=0;F[b+1236|0]=0;F[b+1212|0]=0;F[b+1188|0]=0;F[b+1164|0]=0;F[b+1140|0]=0;F[b+1116|0]=0;F[b+1092|0]=0;F[b+1068|0]=0;F[b+1044|0]=0;G[b+276>>1]=65535;G[b+288>>1]=65535;G[b+300>>1]=65535;G[b+312>>1]=65535;G[b+324>>1]=65535;G[b+336>>1]=65535;G[b+348>>1]=65535;G[b+360>>1]=65535;G[b+264>>1]=65535;H[b+256>>2]=-1;H[b+260>>2]=-1;H[b+268>>2]=-1;H[b+272>>2]=-1;H[b+280>>2]=-1;H[b+284>>2]=-1;H[b+292>>2]=-1;H[b+296>>2]=-1;H[b+304>>2]=-1;H[b+308>>2]=-1;H[b+316>>2]=-1;H[b+320>>2]=-1;H[b+328>>2]=-1;H[b+332>>2]=-1;H[b+340>>2]=-1;H[b+344>>2]=-1;H[b+352>>2]=-1;H[b+356>>2]=-1;G[b+372>>1]=65535;G[b+384>>1]=65535;G[b+396>>1]=65535;G[b+408>>1]=65535;G[b+420>>1]=65535;G[b+432>>1]=65535;G[b+444>>1]=65535;G[b+456>>1]=65535;G[b+468>>1]=65535;H[b+364>>2]=-1;H[b+368>>2]=-1;H[b+376>>2]=-1;H[b+380>>2]=-1;H[b+388>>2]=-1;H[b+392>>2]=-1;H[b+400>>2]=-1;H[b+404>>2]=-1;H[b+412>>2]=-1;H[b+416>>2]=-1;H[b+424>>2]=-1;H[b+428>>2]=-1;H[b+436>>2]=-1;H[b+440>>2]=-1;H[b+448>>2]=-1;H[b+452>>2]=-1;H[b+460>>2]=-1;H[b+464>>2]=-1;G[b+480>>1]=65535;G[b+492>>1]=65535;G[b+504>>1]=65535;G[b+516>>1]=65535;G[b+528>>1]=65535;G[b+540>>1]=65535;G[b+552>>1]=65535;G[b+564>>1]=65535;G[b+576>>1]=65535;H[b+472>>2]=-1;H[b+476>>2]=-1;H[b+484>>2]=-1;H[b+488>>2]=-1;H[b+496>>2]=-1;H[b+500>>2]=-1;H[b+508>>2]=-1;H[b+512>>2]=-1;H[b+520>>2]=-1;H[b+524>>2]=-1;H[b+532>>2]=-1;H[b+536>>2]=-1;H[b+544>>2]=-1;H[b+548>>2]=-1;H[b+556>>2]=-1;H[b+560>>2]=-1;H[b+568>>2]=-1;H[b+572>>2]=-1;G[b+588>>1]=65535;H[b+580>>2]=-1;H[b+584>>2]=-1;G[b+600>>1]=65535;H[b+592>>2]=-1;H[b+596>>2]=-1;G[b+612>>1]=65535;H[b+604>>2]=-1;H[b+608>>2]=-1;G[b+624>>1]=65535;H[b+616>>2]=-1;H[b+620>>2]=-1;G[b+636>>1]=65535;H[b+628>>2]=-1;H[b+632>>2]=-1;G[b+648>>1]=65535;H[b+640>>2]=-1;H[b+644>>2]=-1;G[b+660>>1]=65535;H[b+652>>2]=-1;H[b+656>>2]=-1;G[b+672>>1]=65535;H[b+664>>2]=-1;H[b+668>>2]=-1;G[b+684>>1]=65535;H[b+676>>2]=-1;H[b+680>>2]=-1;G[b+696>>1]=65535;H[b+688>>2]=-1;H[b+692>>2]=-1;G[b+708>>1]=65535;H[b+700>>2]=-1;H[b+704>>2]=-1;G[b+720>>1]=65535;H[b+712>>2]=-1;H[b+716>>2]=-1;G[b+732>>1]=65535;H[b+724>>2]=-1;H[b+728>>2]=-1;G[b+744>>1]=65535;H[b+736>>2]=-1;H[b+740>>2]=-1;G[b+756>>1]=65535;H[b+748>>2]=-1;H[b+752>>2]=-1;G[b+768>>1]=65535;H[b+760>>2]=-1;H[b+764>>2]=-1;G[b+780>>1]=65535;H[b+772>>2]=-1;H[b+776>>2]=-1;G[b+792>>1]=65535;H[b+784>>2]=-1;H[b+788>>2]=-1;G[b+804>>1]=65535;H[b+796>>2]=-1;H[b+800>>2]=-1;G[b+816>>1]=65535;H[b+808>>2]=-1;H[b+812>>2]=-1;G[b+828>>1]=65535;H[b+820>>2]=-1;H[b+824>>2]=-1;G[b+840>>1]=65535;H[b+832>>2]=-1;H[b+836>>2]=-1;G[b+852>>1]=65535;H[b+844>>2]=-1;H[b+848>>2]=-1;G[b+864>>1]=65535;H[b+856>>2]=-1;H[b+860>>2]=-1;G[b+876>>1]=65535;H[b+868>>2]=-1;H[b+872>>2]=-1;G[b+888>>1]=65535;H[b+880>>2]=-1;H[b+884>>2]=-1;G[b+900>>1]=65535;H[b+892>>2]=-1;H[b+896>>2]=-1;G[b+912>>1]=65535;H[b+904>>2]=-1;H[b+908>>2]=-1;G[b+924>>1]=65535;H[b+916>>2]=-1;H[b+920>>2]=-1;G[b+936>>1]=65535;H[b+928>>2]=-1;H[b+932>>2]=-1;G[b+948>>1]=65535;H[b+940>>2]=-1;H[b+944>>2]=-1;G[b+960>>1]=65535;H[b+952>>2]=-1;H[b+956>>2]=-1;G[b+972>>1]=65535;H[b+964>>2]=-1;H[b+968>>2]=-1;G[b+984>>1]=65535;H[b+976>>2]=-1;H[b+980>>2]=-1;G[b+996>>1]=65535;H[b+988>>2]=-1;H[b+992>>2]=-1;G[b+1008>>1]=65535;H[b+1e3>>2]=-1;H[b+1004>>2]=-1;G[b+1020>>1]=65535;H[b+1012>>2]=-1;H[b+1016>>2]=-1;a:{if(!H[a+32>>2]){break a}while(1){d=H[H[a+28>>2]+(l<<2)>>2];d=d?d-4|0:0;j=J[d+56>>1];c=H[d+28>>2];f=H[H[c+28>>2]+68>>2];e=H[d+32>>2];g=H[H[e+28>>2]+68>>2];k=((b+2560|0)+N(f,28)|0)+(g<<2)|0;H[k>>2]=H[k>>2]+1;g=(f|0)>(g|0);f=g?e:c;g=g?c:e;k=H[(N(H[H[f+28>>2]+68>>2],28)+126064|0)+(H[H[g+28>>2]+68>>2]<<2)>>2];n=b+2736|0;XQ(f,n);o=b+2704|0;XQ(g,o);f=Ra[k|0](H[f+28>>2]+68|0,n,H[g+28>>2]+68|0,o,d+40|0)|0;g=I[d+58|0];F[d+58|0]=f;g=g?f?0:16:f?4:0;k=g&j;if(k){f=(b+1024|0)+N(h,24)|0;H[f>>2]=H[33798]+H[c+28>>2];j=H[33798]+H[e+28>>2]|0;F[f+20|0]=0;H[f+16>>2]=g;H[f+8>>2]=j;g=H[H[e+4>>2]+44>>2];j=H[H[c+4>>2]+44>>2];H[f+4>>2]=H[((I[j+9|0]<<2)+135180|0)+40>>2]+j;H[f+12>>2]=g+H[((I[g+9|0]<<2)+135180|0)+40>>2];f=I[j+7|0];j=H[c+32>>2];e=H[e+32>>2];c=(b+256|0)+N(h,12)|0;F[c+9|0]=I[g+7|0];F[c+8|0]=f;H[c+4>>2]=e;H[c>>2]=j}c=(k|0)!=0;e=J[d+56>>1];b:{if(!(e&32)){break b}G[d+56>>1]=e&65503;if(pR(d)){break b}F[d+25|0]=I[d+25|0]&223;H[(i<<2)+b>>2]=d;i=i+1|0}h=c+h|0;l=l+1|0;if(l>>>0>2]){continue}break}if(h){c=H[a+48>>2];e=H[c+1188>>2]&2147483647;f=H[c+1184>>2];g=f+h|0;m=O(O(g>>>0)*O(1.5));c:{if(m=O(0)){d=~~m>>>0;break c}d=0}if(e>>>0>>0){fO(c+1180|0,d)}H[c+1184>>2]=g;H[b+2736>>2]=H[c+1180>>2]+N(f,24);e=H[c+1192>>2];if(d>>>0>(H[e+8>>2]&2147483647)>>>0){gO(e,d);e=H[c+1192>>2]}H[e+4>>2]=g;H[b+2704>>2]=H[e>>2]+N(f,12);R6(H[b+2736>>2],b+1024|0,N(h,24));R6(H[b+2704>>2],b+256|0,N(h,12))}if(!i){break a}h=H[a+44>>2];d=H[h>>2]+i|0;H[h>>2]=d;c=H[a+40>>2]+(d<<2)|0;d=i<<2;R6(c-d|0,b,d)}a=H[H[a+48>>2]+2352>>2];i=0;while(1){d=N(i,28);h=d+(b+2560|0)|0;c=H[h>>2];if(c){e=a+d|0;H[e+16>>2]=c+H[e+16>>2]}c=H[h+4>>2];if(c){e=a+d|0;H[e+20>>2]=c+H[e+20>>2]}c=H[h+8>>2];if(c){e=a+d|0;H[e+24>>2]=c+H[e+24>>2]}c=H[h+12>>2];if(c){e=a+d|0;H[e+28>>2]=c+H[e+28>>2]}c=H[h+16>>2];if(c){e=a+d|0;H[e+32>>2]=c+H[e+32>>2]}c=H[h+20>>2];if(c){e=a+d|0;H[e+36>>2]=c+H[e+36>>2]}h=H[h+24>>2];if(h){d=a+d|0;H[d+40>>2]=h+H[d+40>>2]}i=i+1|0;if((i|0)!=5){continue}break}Oa=b+2768|0}function YU(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=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),F=O(0),G=O(0),H=O(0),I=O(0),J=O(0),K=O(0),M=O(0),Q=O(0),R=O(0),S=O(0),T=O(0),U=O(0),V=O(0),X=O(0),Y=O(0),Z=O(0),_=O(0),$=O(0),aa=O(0),ba=O(0),ca=O(0),da=O(0),ea=O(0),fa=O(0),ga=O(0),ha=O(0),ia=O(0),ja=O(0),ka=O(0),la=O(0);T=L[d+24>>2];U=L[d+20>>2];V=L[d+16>>2];ba=L[c+4>>2];ca=L[c+8>>2];da=L[c+12>>2];q=L[d+8>>2];r=L[d+4>>2];m=L[d+12>>2];g=L[d>>2];c=Oa+-64|0;i=L[f+4>>2];w=O(i+i);l=L[f+8>>2];t=O(w*l);s=L[f>>2];j=O(s+s);x=L[f+12>>2];u=O(j*x);D=O(t-u);L[c+28>>2]=D;E=O(t+u);L[c+20>>2]=E;s=O(O(1)-O(s*j));t=O(i*w);F=O(s-t);L[c+32>>2]=F;h=s;s=O(l+l);u=O(l*s);G=O(h-u);L[c+16>>2]=G;l=O(j*l);w=O(w*x);H=O(l+w);L[c+24>>2]=H;i=O(j*i);j=O(s*x);I=O(i-j);L[c+12>>2]=I;J=O(l-w);L[c+8>>2]=J;K=O(i+j);L[c+4>>2]=K;M=O(O(O(1)-t)-u);L[c>>2]=M;Q=L[f+16>>2];L[c+36>>2]=Q;R=L[f+20>>2];L[c+40>>2]=R;S=L[f+24>>2];L[c+44>>2]=S;X=L[e+4>>2];L[c+48>>2]=X;Y=L[e+8>>2];L[c+52>>2]=Y;Z=L[e+12>>2];L[c+56>>2]=Z;f=0;l=O(g+g);j=O(q*l);i=O(r+r);u=O(m*i);w=O(j-u);t=O(r*i);x=O(q+q);y=O(q*x);s=O(O(O(1)-t)-y);r=O(l*r);z=O(x*m);x=O(r+z);h=O(O(T*w)+O(O(V*s)+O(U*x)));g=O(O(1)-O(g*l));t=O(g-t);u=O(j+u);q=O(i*q);l=O(l*m);B=O(q-l);i=O(P(O(O(t*w)+O(O(u*s)+O(x*B)))));C=O(q+l);z=O(r-z);y=O(g-y);q=O(P(O(O(C*w)+O(O(z*s)+O(x*y)))));r=O(O(da*i)+O(O(ba*O(P(O(O(w*w)+O(O(s*s)+O(x*x))))))+O(ca*q)));m=O(h+r);l=O(O(S*w)+O(O(Q*s)+O(x*R)));j=O(P(O(O(F*w)+O(O(H*s)+O(x*D)))));k=O(P(O(O(J*w)+O(O(M*s)+O(x*K)))));v=O(P(O(O(E*w)+O(O(I*s)+O(x*G)))));g=O(O(Z*j)+O(O(X*k)+O(Y*v)));p=O(l-g);a:{if(mm?m:g;m=mg){m=g;r=y;l=C;q=z}g=O(O(T*t)+O(O(V*u)+O(B*U)));i=O(O(O(P(O(O(t*t)+O(O(u*u)+O(B*B)))))*da)+O(O(i*ba)+O(ca*n)));h=O(g+i);p=O(O(S*t)+O(O(Q*u)+O(B*R)));n=O(P(O(O(F*t)+O(O(H*u)+O(B*D)))));o=O(P(O(O(J*t)+O(O(M*u)+O(B*K)))));$=O(P(O(O(E*t)+O(O(I*u)+O(B*G)))));aa=O(O(n*Z)+O(O(o*X)+O(Y*$)));ea=O(p-aa);if(hi?i:g;if(gi?i:g;if(gi?i:g;if(gi?i:g;if(g>2];v=L[d>>2];h=O(O(s*k)+O(v*ja));p=L[d+8>>2];n=O(O(w*v)+O(p*ka));o=O(O(x*p)+O(k*la));b:{if(!(O(P(h))>O(9.999999974752427e-7)?1:O(P(o))>O(9.999999974752427e-7)|O(P(n))>O(9.999999974752427e-7))){break b}g=O(0);i=O(0);j=O(0);A=O(O(h*h)+O(O(o*o)+O(n*n)));if(A>O(0)){g=O(O(1)/O(W(A)));j=O(h*g);i=O(n*g);g=O(o*g)}h=O(O(T*j)+O(O(V*g)+O(U*i)));n=O(O(O(P(O(O(t*j)+O(O(u*g)+O(B*i)))))*da)+O(O(O(P(O(O(w*j)+O(O(s*g)+O(x*i)))))*ba)+O(ca*O(P(O(O(C*j)+O(O(z*g)+O(y*i))))))));o=O(h+n);A=O(O(S*j)+O(O(Q*g)+O(R*i)));fa=O(O(O(P(O(O(F*j)+O(O(H*g)+O(D*i)))))*Z)+O(O(O(P(O(O(J*j)+O(O(M*g)+O(K*i)))))*X)+O(Y*O(P(O(O(E*j)+O(O(I*g)+O(G*i))))))));ga=O(A-fa);if(on?n:h;if(!(hO(9.999999974752427e-7)?1:O(P(o))>O(9.999999974752427e-7)|O(P(n))>O(9.999999974752427e-7))){break c}g=O(0);i=O(0);j=O(0);A=O(O(h*h)+O(O(o*o)+O(n*n)));if(A>O(0)){g=O(O(1)/O(W(A)));j=O(h*g);i=O(n*g);g=O(o*g)}h=O(O(T*j)+O(O(V*g)+O(U*i)));n=O(O(O(P(O(O(t*j)+O(O(u*g)+O(B*i)))))*da)+O(O(O(P(O(O(w*j)+O(O(s*g)+O(x*i)))))*ba)+O(ca*O(P(O(O(C*j)+O(O(z*g)+O(y*i))))))));o=O(h+n);A=O(O(S*j)+O(O(Q*g)+O(R*i)));fa=O(O(O(P(O(O(F*j)+O(O(H*g)+O(D*i)))))*Z)+O(O(O(P(O(O(J*j)+O(O(M*g)+O(K*i)))))*X)+O(Y*O(P(O(O(E*j)+O(O(I*g)+O(G*i))))))));ga=O(A-fa);if(on?n:h;if(!(hO(9.999999974752427e-7)?1:O(P(k))>O(9.999999974752427e-7)|O(P(v))>O(9.999999974752427e-7))){break d}g=O(0);i=O(0);j=O(0);p=O(O(h*h)+O(O(k*k)+O(v*v)));if(p>O(0)){g=O(O(1)/O(W(p)));j=O(h*g);i=O(v*g);g=O(k*g)}h=O(O(T*j)+O(O(V*g)+O(U*i)));k=O(O(O(P(O(O(t*j)+O(O(u*g)+O(B*i)))))*da)+O(O(O(P(O(O(w*j)+O(O(s*g)+O(x*i)))))*ba)+O(ca*O(P(O(O(C*j)+O(O(z*g)+O(y*i))))))));v=O(h+k);p=O(O(S*j)+O(O(Q*g)+O(R*i)));n=O(O(O(P(O(O(F*j)+O(O(H*g)+O(D*i)))))*Z)+O(O(O(P(O(O(J*j)+O(O(M*g)+O(K*i)))))*X)+O(Y*O(P(O(O(E*j)+O(O(I*g)+O(G*i))))))));o=O(p-n);if(vk?k:h;if(!(h>2]=c?l:O(-l);L[a+4>>2]=c?r:O(-r);L[a>>2]=c?q:O(-q);L[b>>2]=m>O(0)?m:O(0);f=1}return f|0}function jA(a,b,c){a=a|0;b=b|0;c=c|0;var d=O(0),e=O(0),f=O(0),g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=0,F=O(0),G=O(0),K=O(0),M=O(0),P=O(0),Q=O(0),R=O(0),S=O(0),T=O(0),U=O(0),V=O(0),W=O(0),X=O(0),Y=O(0),Z=O(0),_=O(0),$=O(0),aa=O(0),ba=O(0),ca=O(0),da=O(0),ea=O(0),fa=O(0),ga=O(0),ha=O(0),ia=O(0),ja=O(0),ka=O(0),la=O(0),ma=O(0),na=O(0),oa=O(0),pa=O(0),qa=O(0),ra=O(0),sa=O(0),ta=O(0),ua=O(0),va=O(0),wa=O(0),xa=O(0),ya=O(0),za=O(0),Aa=O(0),Ba=O(0),Ca=O(0),Da=O(0),Ea=O(0),Fa=0,Ga=O(0),Ha=O(0),Ia=O(0),Ja=O(0),Ka=O(0),La=O(0),Ma=O(0),Na=O(0),Oa=O(0),Pa=0,Qa=0,Ra=0,Sa=O(0),Ta=O(0),Ua=O(0),Va=O(0),Wa=O(0),Xa=O(0),Ya=O(0),Za=O(0),_a=O(0),$a=O(0),ab=O(0),bb=O(0),cb=O(0),db=O(0),eb=O(0),fb=O(0),gb=O(0),hb=O(0),ib=O(0),jb=O(0),kb=O(0),lb=O(0),mb=O(0),nb=O(0),ob=O(0),pb=O(0),qb=O(0),rb=O(0),sb=O(0),tb=O(0),ub=O(0),vb=O(0),wb=O(0),xb=O(0),yb=O(0),zb=O(0),Ab=O(0),Bb=0,Cb=O(0),Db=O(0),Eb=O(0),Fb=O(0),Gb=O(0),Hb=O(0),Ib=O(0),Jb=O(0),Kb=O(0),Lb=O(0),Mb=O(0),Nb=O(0),Ob=O(0),Pb=O(0),Qb=O(0),Rb=O(0),Sb=O(0),Tb=O(0),Ub=O(0),Vb=O(0),Wb=O(0),Xb=O(0);g=H[a+100>>2];F=L[g+16>>2];h=H[a+96>>2];lb=L[h+28>>2];G=L[h+24>>2];K=L[h+20>>2];mb=L[g+12>>2];M=L[g+8>>2];P=L[g+4>>2];Q=L[g>>2];i=H[a+68>>2];R=L[i+16>>2];j=H[a+64>>2];nb=L[j+28>>2];S=L[j+24>>2];T=L[j+20>>2];ob=L[i+12>>2];U=L[i+8>>2];V=L[i+4>>2];W=L[i>>2];k=H[a+36>>2];X=L[k+16>>2];l=H[a+32>>2];pb=L[l+28>>2];Y=L[l+24>>2];Z=L[l+20>>2];qb=L[k+12>>2];_=L[k+8>>2];$=L[k+4>>2];aa=L[k>>2];m=H[a+4>>2];rb=L[m+28>>2];ba=L[m+24>>2];ca=L[m+20>>2];n=H[a>>2];sb=L[n+28>>2];da=L[n+24>>2];ea=L[n+20>>2];tb=L[g+28>>2];fa=L[g+24>>2];ga=L[g+20>>2];ub=L[i+28>>2];ha=L[i+24>>2];ia=L[i+20>>2];vb=L[k+28>>2];ja=L[k+24>>2];ka=L[k+20>>2];la=L[h+16>>2];wb=L[h+12>>2];ma=L[h+8>>2];na=L[h+4>>2];oa=L[h>>2];pa=L[j+16>>2];xb=L[j+12>>2];qa=L[j+8>>2];ra=L[j+4>>2];sa=L[j>>2];ta=L[l+16>>2];yb=L[l+12>>2];ua=L[l+8>>2];va=L[l+4>>2];wa=L[l>>2];xa=L[m+16>>2];ya=L[n+16>>2];zb=L[m+12>>2];za=L[m+8>>2];Aa=L[m+4>>2];Ba=L[m>>2];Ab=L[n+12>>2];Ca=L[n+8>>2];Da=L[n+4>>2];Ea=L[n>>2];c=J[a+22>>1];if(c){b=H[a+24>>2];Bb=b+(c<<4)|0;while(1){a=b;Qa=a+96|0;Ra=Qa+(I[a+1|0]<<4)|0;Pa=I[a+2|0];b=Ra+N(Pa,192)|0;if(Pa){Cb=L[a+92>>2];Db=L[a+88>>2];Eb=L[a+84>>2];Fb=L[a+80>>2];Gb=L[a+76>>2];Hb=L[a+72>>2];Ib=L[a+68>>2];Jb=L[a+64>>2];Kb=L[a+60>>2];Lb=L[a+56>>2];Mb=L[a+52>>2];Nb=L[a+48>>2];Ob=L[a+44>>2];Pb=L[a+40>>2];Qb=L[a+36>>2];Rb=L[a+32>>2];Sb=L[a+28>>2];Tb=L[a+24>>2];Ub=L[a+20>>2];Vb=L[a+16>>2];E=0;while(1){Fa=(E>>>H[a+12>>2]<<4)+Qa|0;Ga=L[Fa+4>>2];c=N(E,192)+Ra|0;x=L[c+100>>2];Wb=L[c+132>>2];f=L[c+116>>2];y=L[c+84>>2];Sa=L[c+52>>2];Ta=L[c+68>>2];t=L[c+36>>2];Ha=L[c+20>>2];Ia=L[c+4>>2];z=L[c+180>>2];Ua=L[c+148>>2];Va=L[c+164>>2];Ja=L[Fa+8>>2];A=L[c+104>>2];Xb=L[c+136>>2];d=L[c+120>>2];B=L[c+88>>2];Wa=L[c+56>>2];Xa=L[c+72>>2];u=L[c+40>>2];Ka=L[c+24>>2];La=L[c+8>>2];C=L[c+184>>2];Ya=L[c+152>>2];Za=L[c+168>>2];w=L[Fa+12>>2];D=L[c+108>>2];Ma=L[c+140>>2];e=L[c+124>>2];_a=L[c+92>>2];$a=L[c+60>>2];ab=L[c+76>>2];v=L[c+44>>2];Na=L[c+28>>2];Oa=L[c+12>>2];bb=L[c+188>>2];cb=L[c+156>>2];db=L[c+172>>2];r=L[c>>2];s=L[c+16>>2];q=L[c+32>>2];eb=L[c+48>>2];fb=L[c+64>>2];gb=L[c+80>>2];hb=L[c+144>>2];ib=L[c+160>>2];jb=L[c+176>>2];o=L[c+112>>2];kb=L[c+96>>2];p=O(O(O(O(O(O(O(Ea*r)+O(Da*s))+O(Ca*q))+O(O(O(ya*eb)+O(ea*fb))+O(da*gb)))-O(O(O(O(Ba*r)+O(Aa*s))+O(za*q))+O(O(O(xa*hb)+O(ca*ib))+O(ba*jb))))*o)+O(kb-O(o*L[c+128>>2])));o=O(Vb*L[Fa>>2]);p=o>p?p:o;o=O(-o);o=o>2]=o;Ma=O(O(e*O(O(O(O(O(oa*Oa)+O(na*Na))+O(ma*v))+O(O(O(la*$a)+O(K*ab))+O(G*_a)))-O(O(O(O(Q*Oa)+O(P*Na))+O(M*v))+O(O(O(F*cb)+O(ga*db))+O(fa*bb)))))+O(D-O(e*Ma)));e=O(Sb*w);w=e>Ma?Ma:e;e=O(-e);w=e>2]=w;e=O(O(d*O(O(O(O(O(sa*La)+O(ra*Ka))+O(qa*u))+O(O(O(pa*Wa)+O(T*Xa))+O(S*B)))-O(O(O(O(W*La)+O(V*Ka))+O(U*u))+O(O(O(R*Ya)+O(ia*Za))+O(ha*C)))))+O(A-O(d*Xb)));d=O(Tb*Ja);e=d>e?e:d;d=O(-d);Ja=d>2]=Ja;d=O(O(f*O(O(O(O(O(wa*Ia)+O(va*Ha))+O(ua*t))+O(O(O(ta*Sa)+O(Z*Ta))+O(Y*y)))-O(O(O(O(aa*Ia)+O($*Ha))+O(_*t))+O(O(O(X*Ua)+O(ka*Va))+O(ja*z)))))+O(x-O(f*Wb)));f=O(Ub*Ga);d=df?d:f;L[c+100>>2]=Ga;f=O(o-kb);d=O(Fb*f);ba=O(ba-O(jb*d));e=O(Jb*f);da=O(da+O(gb*e));o=O(Nb*f);za=O(za-O(q*o));p=q;q=O(Rb*f);Ca=O(Ca+O(p*q));ca=O(ca-O(ib*d));ea=O(ea+O(fb*e));Aa=O(Aa-O(s*o));Da=O(Da+O(s*q));xa=O(xa-O(hb*d));ya=O(ya+O(eb*e));Ba=O(Ba-O(r*o));Ea=O(Ea+O(r*q));r=O(w-D);f=O(Cb*r);fa=O(fa-O(bb*f));s=O(Ja-A);A=O(Db*s);ha=O(ha-O(C*A));q=O(Ga-x);x=O(Eb*q);ja=O(ja-O(z*x));z=O(Gb*r);G=O(G+O(_a*z));d=O(Hb*s);S=O(S+O(B*d));p=y;y=O(Ib*q);Y=O(Y+O(p*y));B=O(Kb*r);M=O(M-O(v*B));C=O(Lb*s);U=O(U-O(u*C));D=O(Mb*q);_=O(_-O(t*D));p=v;v=O(Ob*r);ma=O(ma+O(p*v));p=u;u=O(Pb*s);qa=O(qa+O(p*u));p=t;t=O(Qb*q);ua=O(ua+O(p*t));ga=O(ga-O(db*f));ia=O(ia-O(Za*A));ka=O(ka-O(Va*x));K=O(K+O(ab*z));T=O(T+O(Xa*d));Z=O(Z+O(Ta*y));P=O(P-O(Na*B));V=O(V-O(Ka*C));$=O($-O(Ha*D));na=O(na+O(Na*v));ra=O(ra+O(Ka*u));va=O(va+O(Ha*t));F=O(F-O(cb*f));R=O(R-O(Ya*A));X=O(X-O(Ua*x));la=O(la+O($a*z));pa=O(pa+O(Wa*d));ta=O(ta+O(Sa*y));Q=O(Q-O(Oa*B));W=O(W-O(La*C));aa=O(aa-O(Ia*D));oa=O(oa+O(Oa*v));sa=O(sa+O(La*u));wa=O(wa+O(Ia*t));E=E+1|0;if((Pa|0)!=(E|0)){continue}break}}if(b>>>0>>0){continue}break}}L[n+12>>2]=Ab;L[n+8>>2]=Ca;L[n+4>>2]=Da;L[n>>2]=Ea;L[l+12>>2]=yb;L[l+8>>2]=ua;L[l+4>>2]=va;L[l>>2]=wa;L[j+12>>2]=xb;L[j+8>>2]=qa;L[j+4>>2]=ra;L[j>>2]=sa;L[h+12>>2]=wb;L[h+8>>2]=ma;L[h+4>>2]=na;L[h>>2]=oa;L[m+12>>2]=zb;L[m+8>>2]=za;L[m+4>>2]=Aa;L[m>>2]=Ba;L[k+12>>2]=qb;L[k+8>>2]=_;L[k+4>>2]=$;L[k>>2]=aa;L[i+12>>2]=ob;L[i+8>>2]=U;L[i+4>>2]=V;L[i>>2]=W;L[g+12>>2]=mb;L[g+8>>2]=M;L[g+4>>2]=P;L[g>>2]=Q;L[n+28>>2]=sb;L[n+24>>2]=da;L[n+20>>2]=ea;L[n+16>>2]=ya;L[l+28>>2]=pb;L[l+24>>2]=Y;L[l+20>>2]=Z;L[l+16>>2]=ta;L[j+28>>2]=nb;L[j+24>>2]=S;L[j+20>>2]=T;L[j+16>>2]=pa;L[h+28>>2]=lb;L[h+24>>2]=G;L[h+20>>2]=K;L[h+16>>2]=la;L[m+28>>2]=rb;L[m+24>>2]=ba;L[m+20>>2]=ca;L[m+16>>2]=xa;L[k+28>>2]=vb;L[k+24>>2]=ja;L[k+20>>2]=ka;L[k+16>>2]=X;L[i+28>>2]=ub;L[i+24>>2]=ha;L[i+20>>2]=ia;L[i+16>>2]=R;L[g+28>>2]=tb;L[g+24>>2]=fa;L[g+20>>2]=ga;L[g+16>>2]=F}function _0(a,b,c,d){var e=0,f=0,g=O(0),h=0,i=O(0),j=0,k=0,l=0,m=O(0),n=0,o=O(0),p=0,q=0,r=0,s=O(0),t=0,u=O(0),v=O(0),w=0,x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=0,D=0,E=O(0),G=0,J=0;i=L[b+44>>2];k=Oa+-64|0;F[k|0]=0;x=O(-3.4028234663852886e38);a:{if(c>>>0<2){break a}e=1;f=c-1|0;r=f&1;b:{if((c|0)==2){f=0;break b}w=f&-2;f=0;while(1){F[e+k|0]=e;n=N(e,48)+b|0;g=L[n+44>>2];l=e+1|0;F[l+k|0]=l;s=L[n+92>>2];q=gs?g:s;p=n?l:q?e:p;f=n?l:q?e:f;e=e+2|0;j=j+2|0;if((w|0)!=(j|0)){continue}break}}if(!r){break a}F[e+k|0]=e;g=L[(N(e,48)+b|0)+44>>2];j=g>2];z=L[f+20>>2];A=L[f+16>>2];n=I[k|0];if(l>>>0>=2){e=N(n,48)+b|0;g=O(L[e+24>>2]-s);o=O(g*g);g=O(L[e+16>>2]-A);E=O(g*g);g=O(L[e+20>>2]-z);g=O(o+O(E+O(g*g)));e=1;while(1){r=I[e+k|0];j=N(r,48)+b|0;m=O(L[j+24>>2]-s);o=O(m*m);m=O(L[j+16>>2]-A);E=O(m*m);m=O(L[j+20>>2]-z);m=O(o+O(E+O(m*m)));j=m>g;g=j?m:g;n=j?r:n;h=j?e:h;e=e+1|0;if((l|0)!=(e|0)){continue}break}}l=c-2|0;F[h+k|0]=I[l+k|0];e=N(n&255,48)+b|0;u=O(L[e+16>>2]-A);g=L[f+36>>2];m=L[f+32>>2];v=O(L[e+20>>2]-z);o=O(O(u*g)-O(m*v));E=o;y=O(o*o);o=L[f+40>>2];B=O(L[e+24>>2]-s);v=O(O(v*o)-O(g*B));u=O(O(B*m)-O(o*u));y=O(y+O(O(v*v)+O(u*u)));B=O(O(1)/O(W(y)));f=y>O(0);y=f?O(E*B):o;u=f?O(u*B):g;v=f?O(v*B):m;g=O(-3.4028234663852886e38);m=O(3.4028234663852886e38);c:{if(!l){f=-1;r=-1;j=-1;break c}e=0;j=-1;r=-1;f=-1;while(1){w=I[e+k|0];h=N(w,48)+b|0;o=O(O(O(L[h+24>>2]-s)*y)+O(O(O(L[h+16>>2]-A)*v)+O(u*O(L[h+20>>2]-z))));h=oO(0))|!h)){f=N(p&255,48)+b|0;s=L[f+16>>2];z=L[f+24>>2];A=L[f+20>>2];g=O(-3.4028234663852886e38);e=0;while(1){l=I[e+k|0];f=N(l,48)+b|0;m=O(O(O(L[f+24>>2]-z)*y)+O(O(O(L[f+16>>2]-s)*v)+O(u*O(L[f+20>>2]-A))));f=m>g;g=f?m:g;j=f?e:j;r=f?l:r;e=e+1|0;if((h|0)!=(e|0)){continue}break}}l=c-4|0;F[j+k|0]=I[l+k|0];d:{e:{f:{g:{d=O(d*O(.019999999552965164));if(!(!(d>i)|!(d>2];if(!(d>2];f=H[a+76>>2];H[f>>2]=H[c>>2];H[f+4>>2]=e;e=H[c+36>>2];H[f+32>>2]=H[c+32>>2];H[f+36>>2]=e;e=H[c+20>>2];H[f+16>>2]=H[c+16>>2];H[f+20>>2]=e;e=H[c+44>>2];H[f+40>>2]=H[c+40>>2];H[f+44>>2]=e;e=H[c+28>>2];H[f+24>>2]=H[c+24>>2];H[f+28>>2]=e;e=H[c+12>>2];H[f+8>>2]=H[c+8>>2];H[f+12>>2]=e;c=N(n&255,48)+b|0;e=H[c+4>>2];f=H[a+76>>2];H[f+48>>2]=H[c>>2];H[f+52>>2]=e;h=H[c+20>>2];e=f- -64|0;H[e>>2]=H[c+16>>2];H[e+4>>2]=h;e=H[c+36>>2];H[f+80>>2]=H[c+32>>2];H[f+84>>2]=e;e=H[c+12>>2];H[f+56>>2]=H[c+8>>2];H[f+60>>2]=e;e=H[c+28>>2];H[f+72>>2]=H[c+24>>2];H[f+76>>2]=e;e=H[c+44>>2];H[f+88>>2]=H[c+40>>2];H[f+92>>2]=e;c=N(q&255,48)+b|0;e=H[c+12>>2];f=H[a+76>>2];H[f+104>>2]=H[c+8>>2];H[f+108>>2]=e;e=H[c+44>>2];H[f+136>>2]=H[c+40>>2];H[f+140>>2]=e;e=H[c+4>>2];H[f+96>>2]=H[c>>2];H[f+100>>2]=e;e=H[c+20>>2];H[f+112>>2]=H[c+16>>2];H[f+116>>2]=e;e=H[c+28>>2];H[f+120>>2]=H[c+24>>2];H[f+124>>2]=e;e=H[c+36>>2];H[f+128>>2]=H[c+32>>2];H[f+132>>2]=e;q=r&255;w=a+76|0;break d}G=l&-2;h=-1;e=0;j=0;while(1){i=L[(N(I[e+k|0],48)+b|0)+44>>2];t=!(ii);i=t?g:i;J=e|1;g=L[(N(I[J+k|0],48)+b|0)+44>>2];D=!(i>g)|!(d>g);h=D?t?h:e:J;g=D?i:g;e=e+2|0;j=j+2|0;if((G|0)!=(j|0)){continue}break}}if(C){i=L[(N(I[e+k|0],48)+b|0)+44>>2];h=g>i?i>>0>=l>>>0){break e}e=h+k|0;a=I[e|0];F[e|0]=p}a=N(a,48)+b|0;h=H[a+4>>2];e=H[f+76>>2];H[e>>2]=H[a>>2];H[e+4>>2]=h;h=H[a+44>>2];H[e+40>>2]=H[a+40>>2];H[e+44>>2]=h;h=H[a+36>>2];H[e+32>>2]=H[a+32>>2];H[e+36>>2]=h;h=H[a+28>>2];H[e+24>>2]=H[a+24>>2];H[e+28>>2]=h;h=H[a+20>>2];H[e+16>>2]=H[a+16>>2];H[e+20>>2]=h;h=H[a+12>>2];H[e+8>>2]=H[a+8>>2];H[e+12>>2]=h;p=n&255;g=L[(N(p,48)+b|0)+44>>2];h:{if(!(d>2];a=!(ii);i=a?g:i;G=e|1;g=L[(N(I[G+k|0],48)+b|0)+44>>2];t=!(i>g)|!(d>g);h=t?a?h:e:G;g=t?i:g;e=e+2|0;j=j+2|0;if((C|0)!=(j|0)){continue}break}}if(D){i=L[(N(I[e+k|0],48)+b|0)+44>>2];h=g>i?i>>0>=l>>>0){break h}a=h+k|0;p=I[a|0];F[a|0]=n}a=N(p,48)+b|0;h=H[a+4>>2];e=H[f+76>>2];H[e+48>>2]=H[a>>2];H[e+52>>2]=h;h=H[a+44>>2];H[e+88>>2]=H[a+40>>2];H[e+92>>2]=h;h=H[a+36>>2];H[e+80>>2]=H[a+32>>2];H[e+84>>2]=h;h=H[a+28>>2];H[e+72>>2]=H[a+24>>2];H[e+76>>2]=h;j=H[a+20>>2];h=e- -64|0;H[h>>2]=H[a+16>>2];H[h+4>>2]=j;h=H[a+12>>2];H[e+56>>2]=H[a+8>>2];H[e+60>>2]=h;n=q&255;g=L[(N(n,48)+b|0)+44>>2];j:{if(!(d>2];a=!(ii);i=a?g:i;C=e|1;g=L[(N(I[C+k|0],48)+b|0)+44>>2];p=!(i>g)|!(d>g);h=p?a?h:e:C;g=p?i:g;e=e+2|0;j=j+2|0;if((D|0)!=(j|0)){continue}break}}if(t){i=L[(N(I[e+k|0],48)+b|0)+44>>2];h=g>i?i>>0>=l>>>0){break j}a=h+k|0;n=I[a|0];F[a|0]=q}a=N(n,48)+b|0;e=H[a+4>>2];f=H[f+76>>2];H[f+96>>2]=H[a>>2];H[f+100>>2]=e;e=H[a+44>>2];H[f+136>>2]=H[a+40>>2];H[f+140>>2]=e;e=H[a+36>>2];H[f+128>>2]=H[a+32>>2];H[f+132>>2]=e;e=H[a+28>>2];H[f+120>>2]=H[a+24>>2];H[f+124>>2]=e;e=H[a+20>>2];H[f+112>>2]=H[a+16>>2];H[f+116>>2]=e;e=H[a+12>>2];H[f+104>>2]=H[a+8>>2];H[f+108>>2]=e;q=r&255;g=L[(N(q,48)+b|0)+44>>2];if(!(d>2];a=!(ii);i=a?g:i;n=e|1;g=L[(N(I[n+k|0],48)+b|0)+44>>2];c=!(i>g)|!(d>g);h=c?a?h:e:n;g=c?i:g;e=e+2|0;j=j+2|0;if((p|0)!=(j|0)){continue}break}}if(f){o=d;d=L[(N(I[e+k|0],48)+b|0)+44>>2];h=dd?e:h:h}if(h>>>0>=l>>>0){break d}a=h+k|0;q=I[a|0];F[a|0]=r}a=N(q,48)+b|0;b=H[a+4>>2];c=H[w>>2];H[c+144>>2]=H[a>>2];H[c+148>>2]=b;b=H[a+44>>2];H[c+184>>2]=H[a+40>>2];H[c+188>>2]=b;b=H[a+36>>2];H[c+176>>2]=H[a+32>>2];H[c+180>>2]=b;b=H[a+28>>2];H[c+168>>2]=H[a+24>>2];H[c+172>>2]=b;b=H[a+20>>2];H[c+160>>2]=H[a+16>>2];H[c+164>>2]=b;b=H[a+12>>2];H[c+152>>2]=H[a+8>>2];H[c+156>>2]=b}function PB(a,b,c,d,e,f){var g=0,h=O(0),i=0,j=0,k=O(0),l=0,m=O(0),n=O(0),o=0,p=O(0),q=0,r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=0,A=O(0),B=O(0),C=O(0),D=O(0),E=0,F=0;o=Oa-16|0;Oa=o;b=b+36|0;j=H[b+(d<<2)>>2];i=H[b+(!d<<2)>>2];p=O(L[i+24>>2]+L[i+8>>2]);b=H[j+36>>2];m=O(p-O(L[b+24>>2]+L[b+8>>2]));r=O(m*m);m=O(L[i+16>>2]+L[i>>2]);n=O(m-O(L[b+16>>2]+L[b>>2]));s=O(n*n);n=O(L[i+20>>2]+L[i+4>>2]);h=O(n-O(L[b+20>>2]+L[b+4>>2]));w=O(r+O(s+O(h*h)));b=H[j+40>>2];h=O(p-O(L[b+24>>2]+L[b+8>>2]));r=O(h*h);h=O(m-O(L[b+16>>2]+L[b>>2]));s=O(h*h);h=O(n-O(L[b+20>>2]+L[b+4>>2]));b=H[(j+36|0)+((w>O(r+O(s+O(h*h))))<<2)>>2];d=H[b+40>>2];if(d){while(1){z=b+36|0;b=H[b+36>>2];h=O(p-O(L[b+24>>2]+L[b+8>>2]));r=O(h*h);h=O(m-O(L[b+16>>2]+L[b>>2]));s=O(h*h);h=O(n-O(L[b+20>>2]+L[b+4>>2]));w=O(r+O(s+O(h*h)));h=O(p-O(L[d+24>>2]+L[d+8>>2]));r=O(h*h);h=O(m-O(L[d+16>>2]+L[d>>2]));s=O(h*h);h=O(n-O(L[d+20>>2]+L[d+4>>2]));b=H[z+((w>O(r+O(s+O(h*h))))<<2)>>2];d=H[b+40>>2];if(d){continue}break}}j=H[c>>2];d=0;a:{b:{g=H[c+4>>2];if(!g){break b}while(1){if(H[j+(d<<2)>>2]==(b|0)){break b}d=d+1|0;if((g|0)!=(d|0)){continue}break}break a}if((d|0)==(g|0)){break a}g=g-1|0;H[c+4>>2]=g;H[j+(d<<2)>>2]=H[j+(g<<2)>>2]}j=H[b+32>>2];H[o+12>>2]=j;z=H[j+36>>2];g=z;if((g|0)==(b|0)){g=H[j+40>>2]}d=H[g+20>>2];H[j+16>>2]=H[g+16>>2];H[j+20>>2]=d;d=H[g+28>>2];H[j+24>>2]=H[g+24>>2];H[j+28>>2]=d;d=H[g+4>>2];H[j>>2]=H[g>>2];H[j+4>>2]=d;d=H[g+12>>2];H[j+8>>2]=H[g+8>>2];H[j+12>>2]=d;c:{if(!H[g+40>>2]){q=H[g+36>>2];d=0;H[j+40>>2]=0;H[j+36>>2]=q;j=H[c>>2];d:{e:{q=H[c+4>>2];if(!q){break e}while(1){if(H[j+(d<<2)>>2]==(g|0)){break e}d=d+1|0;if((q|0)!=(d|0)){continue}break}break d}if((d|0)==(q|0)){break d}q=q-1|0;H[c+4>>2]=q;H[j+(d<<2)>>2]=H[j+(q<<2)>>2]}if((H[c+8>>2]&2147483647)>>>0<=q>>>0){QB(c,o+12|0);break c}H[H[c>>2]+(q<<2)>>2]=H[o+12>>2];H[c+4>>2]=q+1;break c}d=H[g+36>>2];H[j+36>>2]=d;H[d+32>>2]=j;d=H[g+40>>2];H[j+40>>2]=d;H[d+32>>2]=j}d=H[H[o+12>>2]+32>>2];if(d){RB(d,e)}d=H[i+40>>2];f:{if(!d){H[o+8>>2]=i;j=0;q=0;break f}p=O(L[b+16>>2]+L[b>>2]);m=O(L[b+24>>2]+L[b+8>>2]);n=O(L[b+20>>2]+L[b+4>>2]);h=L[d+24>>2];t=L[d+20>>2];j=H[i+36>>2];k=L[j+24>>2];u=L[j+20>>2];v=L[d+8>>2];A=L[d+4>>2];B=L[d>>2];C=L[d+16>>2];w=L[j+8>>2];D=L[j+4>>2];r=L[j>>2];s=L[j+16>>2];q=0;d=1;j=0;g:{if(!f){break g}y=O(O(O(C-B)*O(t-A))*O(h-v));x=O(O(O(s-r)*O(u-D))*O(k-w));if(!(y>O(x*O(3)))){j=0;if(!(x>O(y*O(3)))){break g}}l=1;d=0;j=!(x>y)}k=O(m-O(k+w));x=O(k*k);k=O(p-O(s+r));w=O(k*k);k=O(n-O(u+D));h=O(m-O(h+v));r=O(h*h);h=O(p-O(C+B));s=O(h*h);h=O(n-O(t+A));g=O(x+O(w+O(k*k)))>O(r+O(s+O(h*h)));if(!d){d=H[H[((j<<2)+i|0)+36>>2]+40>>2];q=d?i:0;f=!d&f}i=H[((g<<2)+i|0)+36>>2];H[o+8>>2]=i;d=H[i+40>>2];if(!d){break f}while(1){h=L[d+24>>2];t=L[d+20>>2];g=H[i+36>>2];k=L[g+24>>2];u=L[g+20>>2];v=L[d+8>>2];A=L[d+4>>2];B=L[d>>2];C=L[d+16>>2];w=L[g+8>>2];D=L[g+4>>2];r=L[g>>2];s=L[g+16>>2];h:{if(!(f&1)){break h}y=O(O(O(C-B)*O(t-A))*O(h-v));x=O(O(O(s-r)*O(u-D))*O(k-w));if(!(y>O(x*O(3))|x>O(y*O(3)))){break h}l=1;j=!(x>y)}k=O(m-O(k+w));x=O(k*k);k=O(p-O(s+r));w=O(k*k);k=O(n-O(u+D));h=O(m-O(h+v));r=O(h*h);h=O(p-O(C+B));s=O(h*h);h=O(n-O(t+A));d=O(x+O(w+O(k*k)))>O(r+O(s+O(h*h)));i:{if(q){break i}if(!l){q=0;break i}g=H[H[((j<<2)+i|0)+36>>2]+40>>2];q=g?i:0;f=!g&f}i=H[((d<<2)+i|0)+36>>2];H[o+8>>2]=i;d=H[i+40>>2];if(d){continue}break}}f=H[b+36>>2];l=H[f>>2];d=H[i+36>>2];g=H[d>>2];j:{if(l+g>>>0<=4){if(l){i=1;l=H[f+4>>2];H[d>>2]=g+1;H[(d+(g<<2)|0)+4>>2]=l;if(K[f>>2]>1){while(1){g=H[(f+(i<<2)|0)+4>>2];l=H[d>>2];H[d>>2]=l+1;H[(d+(l<<2)|0)+4>>2]=g;i=i+1|0;if(i>>>0>2]){continue}break}}i=H[o+8>>2]}g=H[c>>2];d=0;k:{l:{m:{f=H[c+4>>2];if(!f){break m}while(1){if(H[g+(d<<2)>>2]==(i|0)){break m}d=d+1|0;if((f|0)!=(d|0)){continue}break}break l}if((d|0)!=(f|0)){break k}}if(f>>>0>=(H[c+8>>2]&2147483647)>>>0){QB(c,o+8|0);break k}H[g+(f<<2)>>2]=i;H[c+4>>2]=f+1}d=H[b+36>>2];if(d){H[a+284>>2]=H[a+284>>2]-1;H[d>>2]=H[a+292>>2];H[a+292>>2]=d}p=L[b>>2];m=L[b+4>>2];n=L[b+8>>2];d=H[o+8>>2];h=L[d+12>>2];t=L[b+12>>2];L[d+12>>2]=h>2];L[d+8>>2]=h>2];L[d+4>>2]=m>n?n:m;m=L[d>>2];L[d>>2]=m>2];m=L[b+24>>2];n=L[d+16>>2];h=L[b+16>>2];t=L[d+20>>2];k=L[d+24>>2];f=H[o+8>>2];u=L[d+28>>2];v=L[b+28>>2];L[f+28>>2]=u>v?u:v;L[f+24>>2]=k>m?k:m;L[f+20>>2]=p>2]=h>2];if(!g){MB(a+296|0);g=H[a+584>>2]}H[a+584>>2]=H[g>>2];H[a+576>>2]=H[a+576>>2]+1;H[o+4>>2]=g;f=g+48|0;H[o>>2]=f;H[g+80>>2]=i;H[g+32>>2]=i;l=H[i+36>>2];d=0;H[g+40>>2]=0;H[g+36>>2]=l;l=H[i+4>>2];H[g>>2]=H[i>>2];H[g+4>>2]=l;E=i+8|0;F=H[E+4>>2];l=g+8|0;H[l>>2]=H[E>>2];H[l+4>>2]=F;l=H[i+20>>2];H[g+16>>2]=H[i+16>>2];H[g+20>>2]=l;l=H[i+28>>2];H[g+24>>2]=H[i+24>>2];H[g+28>>2]=l;l=H[b+36>>2];H[g+88>>2]=0;H[g+84>>2]=l;l=H[b+4>>2];H[g+48>>2]=H[b>>2];H[g+52>>2]=l;E=H[b+12>>2];l=g+56|0;H[l>>2]=H[b+8>>2];H[l+4>>2]=E;l=H[b+20>>2];H[g+64>>2]=H[b+16>>2];H[g+68>>2]=l;l=H[b+28>>2];H[g+72>>2]=H[b+24>>2];H[g+76>>2]=l;H[i+40>>2]=f;H[i+36>>2]=g;p=L[g+56>>2];m=L[g+8>>2];n=L[g+48>>2];h=L[g>>2];t=L[g+52>>2];k=L[g+4>>2];u=L[g+12>>2];v=L[g+60>>2];L[i+12>>2]=u>2]=m>2]=k>2]=h>2];p=L[f+20>>2];i=H[o+4>>2];m=L[i+20>>2];n=L[f+24>>2];h=L[i+24>>2];t=L[f+28>>2];k=L[i+28>>2];b=H[o+8>>2];u=L[i+16>>2];v=L[f+16>>2];L[b+16>>2]=u>v?u:v;L[b+28>>2]=k>t?k:t;L[b+24>>2]=h>n?h:n;L[b+20>>2]=m>p?m:p;OB(b);f=H[c>>2];n:{o:{i=H[c+4>>2];if(!i){break o}while(1){if((b|0)==H[f+(d<<2)>>2]){break o}d=d+1|0;if((i|0)!=(d|0)){continue}break}break n}if((d|0)==(i|0)){break n}i=i-1|0;H[c+4>>2]=i;H[f+(d<<2)>>2]=H[f+(i<<2)>>2]}b=H[c+8>>2]&2147483647;p:{if(i>>>0>=b>>>0){QB(c,o+4|0);b=H[c+8>>2]&2147483647;d=H[c+4>>2];break p}H[H[c>>2]+(i<<2)>>2]=H[o+4>>2];d=i+1|0;H[c+4>>2]=d}if(b>>>0<=d>>>0){QB(c,o);break j}H[H[c>>2]+(d<<2)>>2]=H[o>>2];H[c+4>>2]=d+1}if(z){H[a+576>>2]=H[a+576>>2]-1;H[z>>2]=H[a+584>>2];H[a+584>>2]=z}if(q){PB(a,q,c,j,e,0)}Oa=o+16|0}function vx(a,b,c,d,e){var f=0,g=0,h=O(0),i=0,j=O(0),k=O(0),l=0,m=O(0),n=0,o=O(0),p=O(0),q=O(0),r=0,s=O(0),t=O(0),u=0,v=0,w=O(0),x=O(0),y=O(0),z=O(0),A=0,B=O(0),C=0,D=0,E=0,M=0,P=O(0),Q=O(0),R=O(0),S=0,T=O(0),U=O(0),V=O(0),W=O(0),X=O(0);i=Oa-560|0;Oa=i;v=H[a+16>>2];g=H[a+116>>2];a:{if(!g){H[v+20>>2]=0;H[v+24>>2]=0;H[v+28>>2]=0;f=0;break a}b:{if(!(J[v+8>>1]!=65535|J[v+10>>1]!=65535)){M=96;C=0;break b}M=160;C=1}g=N(g,M);b=Ra[H[H[b>>2]>>2]](b,g- -64|0)|0;f=0;if(b+1>>>0<2){break a}H[v+24>>2]=b;f=g+48|0;G[v+22>>1]=f>>>4;g=H[a+132>>2];G[v+20>>1]=8;H[v+28>>2]=g;S6(b,0,f);f=H[a+116>>2];b=H[v+24>>2];F[b+2|0]=0;F[b+1|0]=f;F[b|0]=C?4:2;j=L[a>>2];L[b+32>>2]=j;L[b+36>>2]=L[a+4>>2];h=L[a+8>>2];L[b+40>>2]=-h;L[b+44>>2]=-L[a+12>>2];L[b+16>>2]=L[a+140>>2];L[b+20>>2]=L[a+144>>2];L[b+24>>2]=L[a+148>>2];p=L[a+120>>2];L[b+4>>2]=p*c;L[b+8>>2]=L[a+124>>2]*c;F[b+3|0]=p!=O(3.4028234663852886e38)|L[a+124>>2]!=O(3.4028234663852886e38);k=j;g=H[a+28>>2];j=L[g+12>>2];L[b+12>>2]=k*j;k=h;l=H[a+32>>2];h=L[l+12>>2];L[b+28>>2]=k*h;tx(i+128|0,H[a+112>>2],i+368|0,i+176|0,f,g+32|0,l+32|0,j,h,a,I[a+136|0]!=0|C,I[a+137|0],1);b=b+48|0;if(H[a+116>>2]){T=c>2];j=I[f+76|0]&32?I[a+138|0]?T:O(1):O(1);p=L[a+128>>2];c:{if(!C){l=D<<4;g=l+(i+368|0)|0;h=L[g>>2];k=L[g+4>>2];m=L[g+8>>2];g=l+(i+176|0)|0;o=L[g>>2];w=L[g+4>>2];x=L[g+8>>2];P=L[f+44>>2];Q=L[f+60>>2];q=L[f>>2];L[b>>2]=q;z=L[f+4>>2];L[b+4>>2]=z;y=L[f+8>>2];L[b+8>>2]=y;s=L[f+32>>2];L[b+16>>2]=s;B=L[f+36>>2];L[b+20>>2]=B;t=L[f+40>>2];L[b+84>>2]=j*Q;L[b+80>>2]=j*P;L[b+56>>2]=x;L[b+52>>2]=w;L[b+48>>2]=o;L[b+40>>2]=m;L[b+36>>2]=k;L[b+32>>2]=h;L[b+24>>2]=t;H[b+88>>2]=0;H[b+92>>2]=0;L[b+64>>2]=L[f+16>>2];L[b+68>>2]=L[f+20>>2];L[b+72>>2]=L[f+24>>2];g=H[a+28>>2];l=H[a+32>>2];j=O(O(O(O(O(O(y*y)+O(O(q*q)+O(z*z)))*L[g+12>>2])*L[a>>2])+O(L[a+4>>2]*O(O(m*m)+O(O(h*h)+O(k*k)))))+O(O(O(O(O(t*t)+O(O(s*s)+O(B*B)))*L[l+12>>2])*L[a+8>>2])+O(L[a+12>>2]*O(O(x*x)+O(O(o*o)+O(w*w))))));k=O(O(O(O(L[g+8>>2]*L[f+8>>2])+O(O(L[g>>2]*L[f>>2])+O(L[g+4>>2]*L[f+4>>2])))+O(O(L[g+24>>2]*L[f+24>>2])+O(O(L[g+16>>2]*L[f+16>>2])+O(L[g+20>>2]*L[f+20>>2]))))-O(O(O(L[l+8>>2]*L[f+40>>2])+O(O(L[l>>2]*L[f+32>>2])+O(L[l+4>>2]*L[f+36>>2])))+O(O(L[l+24>>2]*L[f+56>>2])+O(O(L[l+16>>2]*L[f+48>>2])+O(L[l+20>>2]*L[f+52>>2])))));m=k;break c}h=L[f+44>>2];k=L[f+60>>2];L[b>>2]=L[f>>2];L[b+4>>2]=L[f+4>>2];L[b+8>>2]=L[f+8>>2];L[b+16>>2]=L[f+32>>2];L[b+20>>2]=L[f+36>>2];L[b+24>>2]=L[f+40>>2];L[b+32>>2]=L[f+16>>2];L[b+36>>2]=L[f+20>>2];L[b+40>>2]=L[f+24>>2];L[b+48>>2]=L[f+48>>2];L[b+52>>2]=L[f+52>>2];m=L[f+56>>2];L[b+84>>2]=j*k;L[b+80>>2]=j*h;L[b+56>>2]=m;H[b+88>>2]=0;H[b+92>>2]=0;g=H[a+20>>2];l=H[a+28>>2];G[i+120>>1]=J[v+8>>1];H[i+116>>2]=l;H[i+112>>2]=g;g=H[a+24>>2];l=H[a+32>>2];G[i+104>>1]=J[v+10>>1];H[i+100>>2]=l;H[i+96>>2]=g;l=i- -64|0;A=i+112|0;qx(l,b,b+32|0,A);j=L[b+16>>2];h=L[b+20>>2];L[i+24>>2]=-L[b+24>>2];L[i+20>>2]=-h;L[i+16>>2]=-j;j=L[b+48>>2];h=L[b+52>>2];L[i+8>>2]=-L[b+56>>2];L[i+4>>2]=-h;L[i>>2]=-j;n=i+32|0;E=i+96|0;qx(n,i+16|0,i,E);r=b+96|0;j=L[a>>2];h=L[a+4>>2];u=b+128|0;k=L[a+8>>2];m=L[a+12>>2];g=Oa-32|0;Oa=g;S=J[A+8>>1];d:{if((S|0)==65535){t=L[l>>2];x=L[l+4>>2];o=L[H[A+4>>2]+12>>2];w=O(O(o*L[l+8>>2])*j);L[r+8>>2]=w;x=O(O(o*x)*j);L[r+4>>2]=x;j=O(O(o*t)*j);L[r>>2]=j;t=L[l+20>>2];q=L[l+16>>2];o=O(L[l+24>>2]*h);L[r+24>>2]=o;t=O(t*h);L[r+20>>2]=t;h=O(q*h);L[r+16>>2]=h;break d}A=H[A>>2];o=L[l+20>>2];w=L[l>>2];x=L[l+4>>2];t=L[l+8>>2];q=L[l+16>>2];L[g+24>>2]=L[l+24>>2]*h;L[g+20>>2]=o*h;H[g+28>>2]=0;H[g+12>>2]=0;L[g+16>>2]=q*h;L[g+8>>2]=t*j;L[g+4>>2]=x*j;L[g>>2]=w*j;Ra[H[H[A>>2]+104>>2]](A,S,e,g,r);o=L[r+24>>2];t=L[r+20>>2];h=L[r+16>>2];w=L[r+8>>2];x=L[r+4>>2];j=L[r>>2]}B=L[l+24>>2];P=L[l+20>>2];Q=L[l+16>>2];V=L[l+8>>2];W=L[l+4>>2];X=L[l>>2];r=J[E+8>>1];e:{if((r|0)==65535){s=L[n>>2];y=L[n+4>>2];q=L[H[E+4>>2]+12>>2];z=O(O(q*L[n+8>>2])*k);L[u+8>>2]=z;y=O(O(q*y)*k);L[u+4>>2]=y;k=O(O(q*s)*k);L[u>>2]=k;s=L[n+20>>2];R=L[n+16>>2];q=O(L[n+24>>2]*m);L[u+24>>2]=q;s=O(s*m);L[u+20>>2]=s;m=O(R*m);L[u+16>>2]=m;break e}l=H[E>>2];q=L[n+20>>2];z=L[n>>2];y=L[n+4>>2];s=L[n+8>>2];R=L[n+16>>2];L[g+24>>2]=L[n+24>>2]*m;L[g+20>>2]=q*m;H[g+28>>2]=0;H[g+12>>2]=0;L[g+16>>2]=R*m;L[g+8>>2]=s*k;L[g+4>>2]=y*k;L[g>>2]=z*k;Ra[H[H[l>>2]+104>>2]](l,r,e,g,u);q=L[u+24>>2];s=L[u+20>>2];m=L[u+16>>2];z=L[u+8>>2];y=L[u+4>>2];k=L[u>>2]}Oa=g+32|0;j=O(O(O(O(V*w)+O(O(X*j)+O(W*x)))+O(O(B*o)+O(O(Q*h)+O(P*t))))+O(O(O(L[n+8>>2]*z)+O(O(L[n>>2]*k)+O(L[n+4>>2]*y)))+O(O(L[n+24>>2]*q)+O(O(L[n+16>>2]*m)+O(L[n+20>>2]*s)))));L[b+64>>2]=L[f+16>>2];L[b+68>>2]=L[f+20>>2];L[b+72>>2]=L[f+24>>2];L[b>>2]=L[i+64>>2];L[b+4>>2]=L[i+68>>2];L[b+8>>2]=L[i+72>>2];L[b+32>>2]=L[i+80>>2];L[b+36>>2]=L[i+84>>2];L[b+40>>2]=L[i+88>>2];h=L[i+32>>2];k=L[i+36>>2];L[b+24>>2]=-L[i+40>>2];L[b+20>>2]=-k;L[b+16>>2]=-h;h=L[i+48>>2];k=L[i+52>>2];L[b+56>>2]=-L[i+56>>2];L[b+52>>2]=-k;L[b+48>>2]=-h;g=J[f+76>>1];f:{if(!(g&4|(g&3)==3|J[i+120>>1]==65535)){k=O(0);m=O(0);if(J[i+104>>1]!=65535){break f}}m=nx(i+112|0,f,f+16|0);h=nx(i+96|0,f+32|0,f+48|0);k=O(m-h);if(J[i+120>>1]==65535){break f}m=J[i+104>>1]==65535?O(-h):O(0)}p=p>O(9999999747378752e-21)?p:O(9999999747378752e-21)}p=j<=p?O(0):O(O(1)/j);h=L[f+12>>2];g=J[f+76>>1];g:{if(g&1){o=L[f+64>>2];w=L[f+68>>2];k=O(O(U*o)+O(w*c));o=O(O(O(w*L[f+28>>2])-O(h*o))*c);h:{if(g&2){j=O(O(1)/O(k+O(1)));h=O(p*j);p=O(p*O(-j));break h}h=j!=O(0)?O(O(1)/O(O(k*j)+O(1))):O(0);p=O(-h);j=h}L[b+60>>2]=O(1)-j;j=O(k*p);L[b+44>>2]=j;h=O(o*h);k=h;break g}H[b+60>>2]=1065353216;j=O(-p);L[b+44>>2]=j;i:{if(!(g&4)){break i}k=O(-k);if(!(k>L[f+68>>2])){break i}h=O(O(p*L[f+64>>2])*k);k=h;break g}k=O(p*O(L[f+28>>2]-O(h*d)));L[b+12>>2]=k;h=O(p*O(L[f+28>>2]-O(L[f+72>>2]*d)))}j=O(m*j);L[b+28>>2]=j+h;L[b+12>>2]=k+j;if(g&16){H[b+92>>2]=H[b+92>>2]|2}b=b+M|0;D=D+1|0;if(D>>>0>2]){continue}break}}H[b>>2]=0;H[b+4>>2]=0;f=H[a+116>>2]}Oa=i+560|0;return f}function bD(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=O(0),l=O(0),m=0,n=0,o=O(0),p=0,q=O(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;i=Oa-32|0;Oa=i;c=H[a+4>>2];a:{if(!c){break a}d=H[b+8>>2];g=H[a+284>>2];e=H[b+12>>2];f=H[b+4>>2];H[i+8>>2]=H[b>>2];H[i+12>>2]=f;H[i+24>>2]=g-d;H[i+20>>2]=e;H[i+16>>2]=d;if(!I[a+336|0]){b=c;a=H[b+4>>2];e=i+8|0;c=a+H[e+8>>2]<<2;b:{if(!c){c=0;break b}a=H[33808];c=Ra[H[H[a+12>>2]+8>>2]](a+12|0,c,20591,9670,840)|0;a=H[b+4>>2]}c=R6(c,H[b>>2],a<<2);a=H[b>>2];if(a){d=H[33808];Ra[H[H[d+12>>2]+12>>2]](d+12|0,a)}H[b>>2]=c;a=H[e+8>>2];H[b+44>>2]=a+H[b+44>>2];if(a){d=H[e+12>>2];a=0;while(1){H[c+(H[b+4>>2]+a<<2)>>2]=H[d+(a<<2)>>2]+H[e+16>>2];a=a+1|0;if(a>>>0>2]){continue}break}}a=(H[b+40>>2]+H[e>>2]|0)+1|0;a=(a>>>5|0)+((a&31)!=0)|0;if(a>>>0>K[b+56>>2]){c=H[33808];c=Ra[H[H[c+12>>2]+8>>2]](c+12|0,a<<2,20591,9670,337)|0;d=H[b+56>>2];S6(c+(d<<2)|0,0,a-d<<2);c=R6(c,H[b+52>>2],H[b+56>>2]<<2);d=H[b+52>>2];if(d){g=H[33808];Ra[H[H[g+12>>2]+12>>2]](g+12|0,d)}H[b+56>>2]=a;H[b+52>>2]=c}if(!H[b+36>>2]){c=H[b+40>>2];a=c<<2;c:{if(!a){a=0;break c}c=H[33808];a=Ra[H[H[c+12>>2]+8>>2]](c+12|0,a,20591,9670,859)|0;c=H[b+40>>2]}H[b+36>>2]=a;d=a;a=H[b+8>>2];WA(c,d,a,a,a)}d:{e:{a=H[b+8>>2];c=H[e+4>>2];if(L[a>>2]>L[c>>2]|L[a+4>>2]>L[c+4>>2]|(L[a+12>>2]>2]|L[a+8>>2]>L[c+8>>2])){break e}if(F[a+24|0]&1|(L[a+16>>2]>2]|L[a+20>>2]>2])){break e}c=0;j=H[b+8>>2];f=H[e+4>>2];k=L[f>>2];while(1){d=c;g=a;n=H[a+24>>2];c=n>>>1|0;h=N(c,28);a=h+j|0;f:{if(k>2]){break f}h=h+j|0;if(L[h+4>>2]>L[f+4>>2]|L[h+8>>2]>L[f+8>>2]|(L[h+12>>2]>2]|L[h+16>>2]>2])){break f}if(!(L[h+20>>2]>2])){continue}}g:{if(k>2]){break g}a=a+28|0;if(L[a+4>>2]>L[f+4>>2]|L[a+8>>2]>L[f+8>>2]|(L[a+12>>2]>2]|L[a+16>>2]>2])){break g}if(L[a+20>>2]>2]){break g}c=c+1|0;continue}break}h:{if(n&1){ZA(b,g,e,d);break h}_A(b,g,e,d)}break d}i:{if(F[a+24|0]&1){ZA(b,a,e,0);break i}_A(b,a,e,0)}c=H[e+4>>2];k=L[c>>2];o=L[c+4>>2];a=H[b+8>>2];l=L[a+8>>2];q=L[c+8>>2];L[a+8>>2]=l>2];L[a+4>>2]=l>2];L[a>>2]=k>o?o:k;k=L[c+16>>2];o=L[c+12>>2];l=L[a+20>>2];q=L[c+20>>2];L[a+20>>2]=l>q?l:q;l=L[a+16>>2];L[a+16>>2]=k>2];L[a+12>>2]=k>o?k:o}H[b+4>>2]=H[b+4>>2]+H[e+8>>2];break a}t=H[a+48>>2];e=Oa-32|0;Oa=e;g=a+52|0;h=H[g+204>>2];if((h|0)==H[g+208>>2]){b=h<<1;a=N(b,24)+24|0;if(a){c=H[33808];a=Ra[H[H[c+12>>2]+8>>2]](c+12|0,a,20591,6516,201)|0}else{a=0}a=R6(a,H[g+196>>2],N(H[g+208>>2],24));c=H[g+196>>2];if(c){d=H[33808];Ra[H[H[d+12>>2]+12>>2]](d+12|0,c)}H[g+196>>2]=a;a=b<<3;if(a){c=H[33808];a=Ra[H[H[c+12>>2]+8>>2]](c+12|0,a,20591,6516,208)|0}else{a=0}c=R6(a,H[g+200>>2],H[g+208>>2]<<3);d=H[g+200>>2];if(d){f=H[33808];Ra[H[H[f+12>>2]+12>>2]](f+12|0,d)}H[g+200>>2]=c;h=H[g+208>>2];if(b>>>0>h>>>0){while(1){c=h<<3;H[(c+a|0)+4>>2]=0;a=H[33808];d=Ra[H[H[a>>2]+20>>2]](a)|0?38814:55639;d=Ra[H[H[a+12>>2]+8>>2]](a+12|0,64,d,6516,217)|0;MA(d);a=H[g+200>>2];H[c+a>>2]=d;h=h+1|0;if((b|0)!=(h|0)){continue}break}}H[g+208>>2]=b;h=H[g+204>>2]}H[g+204>>2]=h+1;d=H[H[g+124>>2]+12>>2];f=H[i+24>>2];a=H[g+200>>2]+(h<<3)|0;H[a+4>>2]=t;n=H[a>>2];b=n;j=H[i+16>>2];a=j<<2;j:{if(!a){a=0;c=0;break j}c=H[33808];a=Ra[H[H[c+12>>2]+8>>2]](c+12|0,a,20591,9670,168)|0;j=H[i+16>>2];c=j<<2}H[b+4>>2]=j;H[b>>2]=a;R6(a,H[i+20>>2],c);c=H[33808];p=H[i+8>>2];a=g7(p,0,28,0);j=a+4|0;a=(y=c+12|0,z=Qa?-1:a>>>0>j>>>0?-1:j,A=Ra[H[H[c>>2]+20>>2]](c)|0?39172:55639,B=9670,C=173,x=H[H[c+12>>2]+8>>2],Ra[x](y|0,z|0,A|0,B|0,C|0)|0);H[a>>2]=p;a=a+4|0;H[b+8>>2]=a;c=b;b=H[i+8>>2];H[c+40>>2]=b;R6(a,H[i+12>>2],N(b,28));a=H[g+196>>2]+N(h,24)|0;b=H[i+12>>2];L[a>>2]=L[b>>2];L[a+4>>2]=L[b+4>>2];L[a+8>>2]=L[b+8>>2];L[a+12>>2]=L[b+12>>2];L[a+16>>2]=L[b+16>>2];L[a+20>>2]=L[b+20>>2];mC(g+184|0,H[i+16>>2],n);H[e+20>>2]=0;H[e+12>>2]=H[g+204>>2];a=H[g+196>>2];H[e+8>>2]=4;H[e+16>>2]=a;QA(H[g+168>>2],e+8|0);mC(g+172|0,H[g+204>>2],H[g+168>>2]);H[e+16>>2]=0;H[e+8>>2]=0;H[e+12>>2]=0;a=H[e+20>>2];if(a){b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,a)}if(H[i+16>>2]){w=d+(f<<3)|0;f=g+128|0;while(1){p=-1;p=K[g+188>>2]>r>>>0?H[H[g+184>>2]+(r<<2)>>2]:p;a=w+(r<<3)|0;b=H[a+4>>2];H[e+8>>2]=H[a>>2];H[e+12>>2]=b;b=0;j=H[f+20>>2];k:{l:{if(!j){break l}m=H[f+12>>2];u=H[e+8>>2];b=u;a=0;s=a^-1;d=(b|a)+s|0;v=H[e+12>>2];b=v+(b^-1)|0;c=d;b=c>>>0>>0?b+1|0:b;d=b;a=b>>>22|0;b=c^((b&4194303)<<10|c>>>22);c=a^d;a=b;b=c<<13|a>>>19;d=a<<13^-1;a=a+d|0;c=(b^-1)+c|0;c=a>>>0>>0?c+1|0:c;a=g7(a^((c&255)<<24|a>>>8),c^c>>>8,9,0);b=Qa;c=b>>>15|0;a=a^((b&32767)<<17|a>>>15);c=b^c;b=a;a=c<<27|a>>>5;d=b<<27^-1;b=b+d|0;a=(a^-1)+c|0;a=b>>>0>>0?a+1|0:a;b=j-1&(b^((a&2147483647)<<1|b>>>31));a=H[(b<<2)+m>>2];if((a|0)==-1){break l}c=f+4|0;d=H[f+8>>2];m=H[f+4>>2];while(1){s=m+N(a,20)|0;if(!((u|0)!=H[s>>2]|(v|0)!=H[s+4>>2])){F[e+31|0]=1;break k}a=H[d+(a<<2)>>2];if((a|0)!=-1){continue}break}}F[e+31|0]=0;if(H[f+36>>2]==H[f+16>>2]){a=j?j<<1:16;if(a>>>0>j>>>0){oC(f,a);j=H[f+20>>2]}c=H[e+8>>2];a=0;d=a^-1;b=(c|a)+d|0;a=H[e+12>>2]+(c^-1)|0;a=b>>>0>>0?a+1|0:a;d=a;c=a>>>22|0;a=b^((a&4194303)<<10|b>>>22);c=c^d;d=c;b=a;a=c<<13|a>>>19;m=b<<13^-1;c=b+m|0;b=(a^-1)+d|0;b=c>>>0>>0?b+1|0:b;a=g7(c^((b&255)<<24|c>>>8),b^b>>>8,9,0);c=Qa;b=c>>>15|0;a=a^((c&32767)<<17|a>>>15);b=b^c;d=b;c=b<<27|a>>>5;m=a<<27^-1;b=m+a|0;a=(c^-1)+d|0;a=b>>>0>>0?a+1|0:a;b=j-1&(b^((a&2147483647)<<1|b>>>31))}a=H[f+28>>2];H[f+28>>2]=a+1;b=H[f+12>>2]+(b<<2)|0;H[H[f+8>>2]+(a<<2)>>2]=H[b>>2];H[b>>2]=a;H[f+36>>2]=H[f+36>>2]+1;H[f+32>>2]=H[f+32>>2]+1;c=f+4|0}a=H[c>>2]+N(a,20)|0;if(!I[e+31|0]){b=H[e+12>>2];c=H[e+8>>2];H[a+8>>2]=t;H[a>>2]=c;H[a+4>>2]=b;H[a+16>>2]=h;H[a+12>>2]=p}r=r+1|0;if(r>>>0>2]){continue}break}}a=H[i+24>>2];c=0;if(H[n+4>>2]){b=H[n>>2];while(1){d=b+(c<<2)|0;H[d>>2]=a+H[d>>2];c=c+1|0;if(c>>>0>2]){continue}break}}Oa=e+32|0}Oa=i+32|0}function l1(a,b,c,d,e,f,g,h,i){var j=0,k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=0,B=O(0),C=O(0),D=O(0),E=O(0),J=O(0),K=O(0),M=O(0),P=O(0),Q=O(0),R=O(0),S=O(0),T=O(0),U=O(0),V=O(0),W=0,X=O(0),Y=O(0),Z=O(0);j=Oa-896|0;Oa=j;a:{b:{if(I[i|0]&16){break b}m=L[b+4>>2];n=O(m+m);l=L[b+8>>2];r=O(n*l);q=L[b>>2];o=O(q+q);x=L[b+12>>2];v=O(o*x);L[j+492>>2]=r-v;L[j+484>>2]=r+v;q=O(O(1)-O(q*o));r=O(m*n);L[j+496>>2]=q-r;k=q;q=O(l+l);v=O(l*q);L[j+480>>2]=k-v;l=O(o*l);n=O(n*x);L[j+488>>2]=l+n;m=O(o*m);o=O(q*x);L[j+476>>2]=m-o;L[j+472>>2]=l-n;L[j+468>>2]=m+o;L[j+464>>2]=O(O(1)-r)-v;k=sZ(a,a+12|0,b+16|0,c,j+464|0,0,0);l=L[a+24>>2];if(!(k>2]=0;e=L[d>>2];l=L[d+4>>2];L[h+8>>2]=-L[d+8>>2];L[h+4>>2]=-l;L[h>>2]=-e;c=1;break a}o=L[a+16>>2];n=L[a+20>>2];E=L[a>>2];J=L[a+12>>2];q=L[a+4>>2];x=L[a+8>>2];l=L[c>>2];m=L[c+4>>2];r=L[c+8>>2];L[j+28>>2]=r;L[j+24>>2]=m;L[j+20>>2]=l;L[j+16>>2]=-r;L[j+12>>2]=-m;L[j+8>>2]=-l;F[j+4|0]=1;c=G5(3024,4761,198);H[j>>2]=c;K=O(n-x);Q=O(O(o-q)*O(.5));wU(j+8|0,j+368|0);l=L[b+12>>2];m=O(O(l*l)+O(-.5));x=L[b+24>>2];r=L[b+20>>2];v=L[b+16>>2];o=L[b+4>>2];w=O(-o);n=L[b>>2];t=O(-n);q=L[b+8>>2];u=O(-q);i=0;while(1){A=j+368|0;W=N(i,3)+90704|0;b=A+N(I[W+1|0],12)|0;y=L[b+8>>2];M=L[b+4>>2];P=L[b>>2];b=N(I[W+2|0],12)+A|0;z=L[b+8>>2];C=L[b+4>>2];D=L[b>>2];b=(j+464|0)+N(i,36)|0;A=N(I[W|0],12)+A|0;k=L[A+8>>2];k=O(k+k);p=L[A>>2];p=O(p+p);s=L[A+4>>2];s=O(s+s);B=O(O(q*k)+O(O(n*p)+O(s*o)));L[b+8>>2]=x+O(O(q*B)+O(O(k*m)+O(l*O(O(n*s)+O(p*w)))));L[b+4>>2]=r+O(O(o*B)+O(O(s*m)+O(l*O(O(q*p)+O(k*t)))));L[b>>2]=v+O(O(n*B)+O(O(p*m)+O(l*O(O(o*k)+O(s*u)))));k=O(z+z);p=O(D+D);s=O(C+C);z=O(O(q*k)+O(O(n*p)+O(s*o)));L[b+32>>2]=x+O(O(q*z)+O(O(k*m)+O(l*O(O(n*s)+O(p*w)))));L[b+28>>2]=r+O(O(o*z)+O(O(s*m)+O(l*O(O(q*p)+O(k*t)))));L[b+24>>2]=v+O(O(n*z)+O(O(p*m)+O(l*O(O(o*k)+O(s*u)))));k=O(y+y);p=O(P+P);s=O(M+M);y=O(O(q*k)+O(O(n*p)+O(s*o)));L[b+20>>2]=x+O(O(q*y)+O(O(k*m)+O(l*O(O(n*s)+O(p*w)))));L[b+16>>2]=r+O(O(o*y)+O(O(s*m)+O(l*O(O(q*p)+O(k*t)))));L[b+12>>2]=v+O(O(n*y)+O(O(p*m)+O(l*O(O(o*k)+O(s*u)))));i=i+1|0;if((i|0)!=12){continue}break}R=O(K*O(.5));S=O(O(J-E)*O(.5));i=0;b=j+32|0;while(1){A=(j+464|0)+N(i,36)|0;p=L[A+12>>2];t=L[A>>2];l=O(p-t);P=L[A+28>>2];u=L[A+4>>2];m=O(P-u);M=L[A+24>>2];o=O(M-t);s=L[A+16>>2];n=O(s-u);X=O(O(l*m)-O(o*n));q=n;z=L[A+32>>2];k=L[A+8>>2];n=O(z-k);r=m;y=L[A+20>>2];m=O(y-k);Y=O(O(q*n)-O(r*m));Z=O(O(m*o)-O(n*l));if(!(O(O(X*L[d+8>>2])+O(O(Y*L[d>>2])+O(L[d+4>>2]*Z)))>O(0))){r=O(z-R);v=O(P-Q);w=O(M-S);l=O(y-R);m=O(s-Q);o=O(p-S);n=O(k-R);q=O(u-Q);x=O(t-S);E=O(S+t);t=E;J=O(Q+u);u=J;K=O(R+k);k=K;T=O(S+p);p=T;U=O(Q+s);s=U;V=O(R+y);y=V;C=O(S+M);M=C;D=O(Q+P);P=D;B=O(R+z);z=B;if(!(O(O(X*R)+O(O(Y*S)+O(Q*Z)))>=O(0))){u=q;k=n;p=o;s=m;y=l;M=w;P=v;z=r;t=x}L[c+24>>2]=M;L[c+12>>2]=p;L[c+8>>2]=k;L[c+4>>2]=u;L[c>>2]=t;L[c+32>>2]=z;L[c+28>>2]=P;L[c+20>>2]=y;L[c+16>>2]=s;H[b>>2]=i;L[c+68>>2]=B;L[c- -64>>2]=D;L[c+60>>2]=C;L[c+56>>2]=V;L[c+52>>2]=U;L[c+48>>2]=T;L[c+44>>2]=l;L[c+40>>2]=m;L[c+36>>2]=o;p=O(T-o);t=O(D-m);u=O(C-o);k=O(U-m);z=O(O(O(p*t)-O(u*k))*L[d+8>>2]);y=k;k=O(B-l);s=O(V-l);if(O(z+O(O(O(O(y*k)-O(t*s))*L[d>>2])+O(O(O(s*u)-O(k*p))*L[d+4>>2])))>O(0)){L[c+68>>2]=V;L[c+64>>2]=U;L[c+60>>2]=T;L[c+56>>2]=B;L[c+52>>2]=D;L[c+48>>2]=C}H[b+4>>2]=i;L[c+104>>2]=r;L[c+100>>2]=v;L[c+96>>2]=w;L[c+92>>2]=B;L[c+88>>2]=D;L[c+84>>2]=C;L[c+80>>2]=l;L[c+76>>2]=m;L[c+72>>2]=o;p=O(v-m);s=O(w-o);z=O(O(O(u*p)-O(s*t))*L[d+8>>2]);y=t;t=O(r-l);if(O(z+O(O(O(O(y*t)-O(p*k))*L[d>>2])+O(O(O(k*s)-O(t*u))*L[d+4>>2])))>O(0)){L[c+104>>2]=B;L[c+100>>2]=D;L[c+96>>2]=C;L[c+92>>2]=r;L[c+88>>2]=v;L[c+84>>2]=w}H[b+8>>2]=i;L[c+140>>2]=B;L[c+136>>2]=D;L[c+132>>2]=C;L[c+128>>2]=r;L[c+124>>2]=v;L[c+120>>2]=w;L[c+116>>2]=n;L[c+112>>2]=q;L[c+108>>2]=x;p=O(w-x);t=O(D-q);u=O(C-x);k=O(v-q);z=O(O(O(p*t)-O(u*k))*L[d+8>>2]);y=k;k=O(B-n);s=O(r-n);if(O(z+O(O(O(O(y*k)-O(t*s))*L[d>>2])+O(O(O(s*u)-O(k*p))*L[d+4>>2])))>O(0)){L[c+140>>2]=r;L[c+136>>2]=v;L[c+132>>2]=w;L[c+128>>2]=B;L[c+124>>2]=D;L[c+120>>2]=C}H[b+12>>2]=i;L[c+176>>2]=K;L[c+172>>2]=J;L[c+168>>2]=E;L[c+164>>2]=B;L[c+160>>2]=D;L[c+156>>2]=C;L[c+152>>2]=n;L[c+148>>2]=q;L[c+144>>2]=x;r=O(J-q);v=O(E-x);w=O(K-n);if(O(O(O(O(u*r)-O(v*t))*L[d+8>>2])+O(O(O(O(t*w)-O(r*k))*L[d>>2])+O(O(O(k*v)-O(w*u))*L[d+4>>2])))>O(0)){L[c+176>>2]=B;L[c+172>>2]=D;L[c+168>>2]=C;L[c+164>>2]=K;L[c+160>>2]=J;L[c+156>>2]=E}H[b+16>>2]=i;L[c+212>>2]=l;L[c+208>>2]=m;L[c+204>>2]=o;L[c+200>>2]=V;L[c+196>>2]=U;L[c+192>>2]=T;L[c+188>>2]=K;L[c+184>>2]=J;L[c+180>>2]=E;t=O(T-E);r=O(m-J);v=O(o-E);w=O(U-J);p=O(O(O(t*r)-O(v*w))*L[d+8>>2]);k=w;w=O(l-K);u=O(V-K);if(O(p+O(O(O(O(k*w)-O(r*u))*L[d>>2])+O(O(O(u*v)-O(w*t))*L[d+4>>2])))>O(0)){L[c+212>>2]=V;L[c+208>>2]=U;L[c+204>>2]=T;L[c+200>>2]=l;L[c+196>>2]=m;L[c+192>>2]=o}H[b+20>>2]=i;L[c+248>>2]=n;L[c+244>>2]=q;L[c+240>>2]=x;L[c+236>>2]=l;L[c+232>>2]=m;L[c+228>>2]=o;L[c+224>>2]=K;L[c+220>>2]=J;L[c+216>>2]=E;t=O(q-J);u=O(x-E);p=O(O(O(v*t)-O(u*r))*L[d+8>>2]);k=r;r=O(n-K);if(O(p+O(O(O(O(k*r)-O(t*w))*L[d>>2])+O(O(O(w*u)-O(r*v))*L[d+4>>2])))>O(0)){L[c+248>>2]=l;L[c+244>>2]=m;L[c+240>>2]=o;L[c+236>>2]=n;L[c+232>>2]=q;L[c+228>>2]=x}H[b+24>>2]=i;c=c+252|0;b=b+28|0}i=i+1|0;if((i|0)!=12){continue}break}H[j+488>>2]=0;H[j+492>>2]=0;H[j+496>>2]=0;H[j+500>>2]=0;H[j+480>>2]=0;H[j+484>>2]=0;G[j+476>>1]=0;H[j+472>>2]=-1;H[j+464>>2]=0;H[j+468>>2]=0;H[j+504>>2]=2139095039;i=H[j>>2];l=L[a+12>>2];m=L[a>>2];o=L[a+16>>2];n=L[a+4>>2];L[j+376>>2]=O(L[a+8>>2]+L[a+20>>2])*O(.5);L[j+372>>2]=O(n+o)*O(.5);L[j+368>>2]=O(m+l)*O(.5);c=b;b=j+32|0;c=q1(c-b>>2,i,j+368|0,L[a+24>>2],d,e,0,j+464|0,b,0,0,0,0);if(c){L[f>>2]=L[j+480>>2];L[f+4>>2]=L[j+484>>2];L[f+8>>2]=L[j+488>>2];e=L[j+504>>2];L[h>>2]=L[j+492>>2];L[h+4>>2]=L[j+496>>2];L[h+8>>2]=L[j+500>>2]}if(I[j+4|0]){H5(i)}L[g>>2]=e}Oa=j+896|0;return c}function pN(a,b){var c=0,d=0,e=0,f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=0,l=O(0),m=0,n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=0,t=O(0),u=O(0),v=O(0),w=O(0),x=0,y=O(0),z=0,A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),G=O(0),I=O(0),K=O(0);d=Oa-224|0;Oa=d;oN(a);k=H[a+12>>2];m=H[a+8>>2];s=H[a+64>>2];x=H[a+60>>2];c=(s|0)<(x|0);e=c?k:m;L[d+192>>2]=L[e+36>>2];L[d+196>>2]=L[e+40>>2];L[d+200>>2]=L[e+44>>2];L[d+204>>2]=L[e+48>>2];f=L[e+52>>2];L[d+208>>2]=f;g=L[e+56>>2];L[d+212>>2]=g;h=L[e+60>>2];L[d+216>>2]=h;L[d+160>>2]=L[e+8>>2];L[d+164>>2]=L[e+12>>2];L[d+168>>2]=L[e+16>>2];L[d+172>>2]=L[e+20>>2];i=L[e+24>>2];L[d+176>>2]=i;l=L[e+28>>2];L[d+180>>2]=l;j=L[e+32>>2];L[d+184>>2]=j;h=O(h-j);L[d+88>>2]=h;i=O(f-i);L[d+80>>2]=i;g=O(g-l);L[d+84>>2]=g;k=c?m:k;L[d+128>>2]=L[k+36>>2];L[d+132>>2]=L[k+40>>2];L[d+136>>2]=L[k+44>>2];L[d+140>>2]=L[k+48>>2];f=L[k+52>>2];L[d+144>>2]=f;l=L[k+56>>2];L[d+148>>2]=l;j=L[k+60>>2];L[d+152>>2]=j;L[d+96>>2]=L[k+8>>2];L[d+100>>2]=L[k+12>>2];L[d+104>>2]=L[k+16>>2];L[d+108>>2]=L[k+20>>2];q=L[k+24>>2];L[d+112>>2]=q;o=L[k+28>>2];L[d+116>>2]=o;n=L[k+32>>2];L[d+120>>2]=n;j=O(j-n);L[d+72>>2]=j;q=O(f-q);L[d+64>>2]=q;l=O(l-o);L[d+68>>2]=l;f=L[H[a+52>>2]+52>>2];o=L[k+4>>2];n=L[e+4>>2];H[a+104>>2]=0;h=O(h-j);j=O(h*h);h=O(i-q);g=O(g-l);j=O(j+O(O(h*h)+O(g*g)));g=O(n+o);q=b>g?g:b;a:{if(j<=O(q*q)){H[a+28>>2]=2139095039;b=O(3.4028234663852886e38);break a}b=f>O(0)?f:O(0);b:{c:{switch((c?x:s)-5|0){case 0:c=Oa-400|0;Oa=c;m=H[k>>2];s=m+4|0;yW(c+320|0,s,m+16|0);f=L[d+184>>2];g=L[d+216>>2];h=L[d+176>>2];i=L[d+208>>2];l=O(L[d+212>>2]-L[d+180>>2]);L[c+308>>2]=l;f=O(g-f);L[c+312>>2]=f;h=O(i-h);L[c+304>>2]=h;g=L[d+116>>2];k=d+128|0;i=L[k+20>>2];j=L[d+112>>2];o=L[k+16>>2];n=O(L[k+24>>2]-L[d+120>>2]);L[c+296>>2]=n;g=O(i-g);L[c+292>>2]=g;i=O(o-j);L[c+288>>2]=i;f=O(f-n);L[c+280>>2]=f;g=O(l-g);L[c+276>>2]=g;h=O(h-i);L[c+272>>2]=h;L[c+264>>2]=f;L[c+260>>2]=g;L[c+256>>2]=h;i=O(W(O(O(f*f)+O(O(h*h)+O(g*g)))));if(i>O(0)){j=f;f=O(O(1)/i);L[c+264>>2]=j*f;L[c+260>>2]=g*f;L[c+256>>2]=h*f}H[c+248>>2]=1065353216;H[c+232>>2]=1065353216;H[c+236>>2]=0;H[c+240>>2]=0;H[c+244>>2]=0;H[c+224>>2]=0;H[c+228>>2]=0;H[c+216>>2]=1065353216;H[c+220>>2]=0;x=c+152|0;yU(x,e- -64|0,e+76|0,c+216|0,c+256|0,i);z=c+88|0;dZ(z,x,k,s);L[c+140>>2]=L[c+140>>2]+b;L[c+144>>2]=L[c+144>>2]+b;L[c+136>>2]=L[c+136>>2]+b;L[c+72>>2]=L[e+76>>2];L[c+76>>2]=L[e+80>>2];L[c+80>>2]=L[e+84>>2];f=L[e+68>>2];g=L[e+64>>2];L[c+64>>2]=L[e+72>>2]+b;L[c+60>>2]=f+b;L[c+56>>2]=g+b;H[c+44>>2]=k;L[c+20>>2]=q;H[c+8>>2]=126892;H[c+12>>2]=2;H[c+16>>2]=2139095039;H[c+52>>2]=c+56;H[c+48>>2]=c+72;H[c+40>>2]=c+288;H[c+36>>2]=c+304;H[c+32>>2]=c+272;H[c+28>>2]=c+320;H[c+24>>2]=m;e=H[m+40>>2];Ra[H[(J[e+4>>1]<<2)+126864>>2]](e,z,c+8|0,1,1);Oa=c+400|0;b=L[c+16>>2];break b;case 1:c=Oa-464|0;Oa=c;m=H[k>>2];s=H[m+4>>2];H[c+456>>2]=m;H[c+452>>2]=s;f=L[m+8>>2];g=L[m+12>>2];L[c+448>>2]=O(1)/L[m+16>>2];L[c+440>>2]=O(1)/g;L[c+444>>2]=O(1)/f;H[c+432>>2]=0;H[c+436>>2]=64;F[c+424|0]=1;m=c+168|0;H[c+428>>2]=m;H[c+160>>2]=126820;H[c+164>>2]=m;f=L[d+184>>2];g=L[d+216>>2];h=L[d+176>>2];i=L[d+208>>2];l=O(L[d+212>>2]-L[d+180>>2]);L[c+148>>2]=l;f=O(g-f);L[c+152>>2]=f;g=O(i-h);L[c+144>>2]=g;h=L[d+116>>2];m=d+128|0;i=L[m+20>>2];j=L[d+112>>2];o=L[m+16>>2];n=O(L[m+24>>2]-L[d+120>>2]);L[c+136>>2]=n;h=O(i-h);L[c+132>>2]=h;i=O(o-j);L[c+128>>2]=i;j=L[e+68>>2];o=L[e+80>>2];p=L[e+64>>2];t=L[e+76>>2];A=O(f-n);f=O(A*O(.5));n=O(O(O(P(f))+L[e+72>>2])+b);f=O(f+L[e+84>>2]);L[c+124>>2]=n+f;B=O(l-h);h=O(B*O(.5));l=O(O(j+O(P(h)))+b);h=O(h+o);L[c+120>>2]=l+h;C=O(g-i);g=O(C*O(.5));b=O(O(p+O(P(g)))+b);g=O(g+t);L[c+116>>2]=b+g;L[c+112>>2]=f-n;L[c+108>>2]=h-l;L[c+104>>2]=g-b;XZ(c+440|0,m,c+104|0,1,c+160|0);L[c+88>>2]=L[e+76>>2];L[c+92>>2]=L[e+80>>2];L[c+96>>2]=L[e+84>>2];b=O(3.4028234663852886e38);m=H[c+432>>2];if(m){k=k+8|0;G=O(L[e+72>>2]*O(1.100000023841858));I=O(L[e+68>>2]*O(1.100000023841858));K=O(L[e+64>>2]*O(1.100000023841858));e=0;s=H[c+428>>2];while(1){YZ(c+440|0,k,c+48|0,0,0,H[s+(e<<2)>>2],1,1);f=L[c+60>>2];o=L[c+48>>2];u=O(f-o);g=L[c+76>>2];n=L[c+52>>2];v=O(g-n);h=L[c+72>>2];j=O(h-o);i=L[c+64>>2];w=O(i-n);r=O(O(u*v)-O(j*w));p=O(-r);l=L[c+68>>2];t=L[c+56>>2];D=O(l-t);y=O(D*j);j=L[c+80>>2];E=O(j-t);y=O(y-O(E*u));u=O(-y);w=O(O(w*E)-O(v*D));v=O(-w);r=O(W(O(O(r*r)+O(O(w*w)+O(y*y)))));if(r>O(0)){r=O(O(1)/r);p=O(r*p);v=O(r*v);u=O(r*u)}if(q<=O(O(A*p)+O(O(C*v)+O(B*u)))){L[c+40>>2]=G;L[c+36>>2]=I;L[c+32>>2]=K;p=O(R(t,O(8.5070586659632215e37)));p=l>p?p:l;p=j>p?p:j;t=O(S(t,O(-8.5070586659632215e37)));l=l>2]=O(p+l)*O(.5);j=O(R(n,O(8.5070586659632215e37)));j=i>j?j:i;j=g>j?j:g;n=O(S(n,O(-8.5070586659632215e37)));i=i>2]=O(j+g)*O(.5);i=O(R(o,O(8.5070586659632215e37)));i=f>i?i:f;i=h>i?i:h;o=O(S(o,O(-8.5070586659632215e37)));f=fh?f:h;L[c+16>>2]=O(i+f)*O(.5);L[c+8>>2]=O(O(O(l-p)*O(.5))+O(.009999999776482582))*O(1.100000023841858);L[c+4>>2]=O(O(O(g-j)*O(.5))+O(.009999999776482582))*O(1.100000023841858);L[c>>2]=O(O(O(f-i)*O(.5))+O(.009999999776482582))*O(1.100000023841858);f=qN(c+88|0,c+32|0,c+16|0,c,c+144|0,c+128|0);b=b>2];d:{if((e|0)<0|!(e&2147483647)){break d}e=H[c+428>>2];if((e|0)==(c+168|0)|!e){break d}k=H[33808]+12|0;Ra[H[H[k>>2]+12>>2]](k,e)}Oa=c+464|0;break b;default:break c}}L[d+48>>2]=L[e+76>>2];L[d+52>>2]=L[e+80>>2];L[d+56>>2]=L[e+84>>2];f=L[e+68>>2];g=L[e+72>>2];h=L[e+64>>2];L[d+32>>2]=L[k+76>>2];L[d+36>>2]=L[k+80>>2];L[d+40>>2]=L[k+84>>2];i=L[k+68>>2];l=L[k+72>>2];j=L[k+64>>2];L[d+24>>2]=O(b+g)*O(1.100000023841858);L[d+20>>2]=O(b+f)*O(1.100000023841858);L[d+16>>2]=O(b+h)*O(1.100000023841858);L[d+8>>2]=l*O(1.100000023841858);L[d+4>>2]=i*O(1.100000023841858);L[d>>2]=j*O(1.100000023841858);b=qN(d+48|0,d+16|0,d+32|0,d,d+80|0,d- -64|0)}L[a+28>>2]=b}Oa=d+224|0;return b}function f$(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=0,q=0,r=0,s=O(0),t=O(0),u=O(0),v=0,w=O(0),x=O(0),y=O(0),z=O(0),A=0,B=0,C=0,D=0,E=0,G=0,K=0;e=Oa-736|0;Oa=e;r=0;a:{if(L[a+4>>2]!=O(1)){break a}r=0;if(L[a+8>>2]!=O(1)){break a}r=L[a+12>>2]==O(1)}A=L[c+4>>2]!=O(1)|L[c+8>>2]!=O(1)?A:L[c+12>>2]==O(1);v=a+4|0;C=H[c+36>>2];q=H[a+32>>2];H[e+720>>2]=0;H[e+724>>2]=1065353216;H[e+712>>2]=0;H[e+716>>2]=0;H[e+704>>2]=0;H[e+708>>2]=1065353216;H[e+696>>2]=0;H[e+700>>2]=0;H[e+688>>2]=1065353216;H[e+692>>2]=1065353216;H[e+672>>2]=1065353216;H[e+676>>2]=0;F[e+728|0]=0;H[e+680>>2]=0;H[e+684>>2]=0;H[e+664>>2]=0;H[e+668>>2]=0;H[e+656>>2]=1065353216;H[e+660>>2]=0;if(!r){yW(e+656|0,v,a+16|0)}H[e+640>>2]=0;H[e+644>>2]=1065353216;H[e+632>>2]=0;H[e+636>>2]=0;H[e+624>>2]=0;H[e+628>>2]=1065353216;H[e+616>>2]=0;H[e+620>>2]=0;H[e+608>>2]=1065353216;H[e+612>>2]=1065353216;H[e+592>>2]=1065353216;H[e+596>>2]=0;F[e+648|0]=0;H[e+600>>2]=0;H[e+604>>2]=0;H[e+584>>2]=0;H[e+588>>2]=0;H[e+576>>2]=1065353216;H[e+580>>2]=0;if(!A){yW(e+576|0,c+4|0,c+16|0)}l=L[b+4>>2];k=O(l+l);i=L[b+8>>2];h=O(k*i);g=L[b>>2];n=O(g+g);m=L[b+12>>2];f=O(n*m);L[e+556>>2]=h-f;L[e+548>>2]=h+f;f=O(O(1)-O(g*n));o=O(l*k);L[e+560>>2]=f-o;g=f;f=O(i+i);j=O(i*f);L[e+544>>2]=g-j;i=O(n*i);g=O(k*m);L[e+552>>2]=i+g;h=O(n*l);f=O(f*m);L[e+540>>2]=h-f;L[e+536>>2]=i-g;L[e+532>>2]=h+f;L[e+528>>2]=O(O(1)-o)-j;L[e+564>>2]=L[b+16>>2];L[e+568>>2]=L[b+20>>2];L[e+572>>2]=L[b+24>>2];l=L[d+4>>2];k=O(l+l);i=L[d+8>>2];h=O(k*i);g=L[d>>2];n=O(g+g);m=L[d+12>>2];f=O(n*m);L[e+508>>2]=h-f;L[e+500>>2]=h+f;f=O(O(1)-O(g*n));o=O(l*k);L[e+512>>2]=f-o;g=f;f=O(i+i);j=O(i*f);L[e+496>>2]=g-j;i=O(n*i);g=O(k*m);L[e+504>>2]=i+g;h=O(n*l);f=O(f*m);L[e+492>>2]=h-f;L[e+488>>2]=i-g;L[e+484>>2]=h+f;L[e+480>>2]=O(O(1)-o)-j;L[e+516>>2]=L[d+16>>2];L[e+520>>2]=L[d+20>>2];L[e+524>>2]=L[d+24>>2];i=L[q+16>>2];g=L[e+664>>2];w=L[q+20>>2];h=L[e+676>>2];s=L[q+24>>2];f=L[e+688>>2];k=O(O(O(i*g)+O(w*h))+O(s*f));t=L[q+28>>2];l=L[q+32>>2];n=L[q+36>>2];m=O(O(O(P(O(g*t)))+O(P(O(h*l))))+O(P(O(f*n))));L[e+476>>2]=k+m;g=L[e+660>>2];h=L[e+672>>2];f=L[e+684>>2];o=O(O(O(i*g)+O(w*h))+O(s*f));j=O(O(O(P(O(g*t)))+O(P(O(h*l))))+O(P(O(f*n))));L[e+472>>2]=o+j;h=i;i=L[e+656>>2];g=L[e+668>>2];f=L[e+680>>2];h=O(O(O(h*i)+O(w*g))+O(s*f));f=O(O(O(P(O(i*t)))+O(P(O(g*l))))+O(P(O(f*n))));L[e+468>>2]=h+f;L[e+464>>2]=k-m;L[e+460>>2]=o-j;L[e+456>>2]=h-f;p=e+392|0;a=e+576|0;cZ(p,e+456|0,O(0),e+528|0,e+480|0,a,A);c=a;a=Oa-192|0;Oa=a;H[e+4>>2]=2;H[e+96>>2]=0;H[e+100>>2]=0;H[e+16>>2]=1065353216;D=e- -64|0;r=D;H[r>>2]=0;H[r+4>>2]=0;H[e>>2]=128560;H[e+72>>2]=0;H[e+76>>2]=0;H[e+20>>2]=0;H[e+24>>2]=0;H[e+28>>2]=0;H[e+32>>2]=0;H[e+40>>2]=0;H[e+44>>2]=0;H[e+48>>2]=0;H[e+52>>2]=0;H[e+56>>2]=1065353216;H[e+60>>2]=0;H[e+36>>2]=1065353216;H[e+104>>2]=0;H[e+108>>2]=0;H[e+112>>2]=0;H[e+116>>2]=0;H[e+120>>2]=0;H[e+124>>2]=0;F[e+128|0]=0;H[e+312>>2]=0;H[e+316>>2]=0;H[e+304>>2]=0;H[e+308>>2]=0;H[e+268>>2]=0;H[e+272>>2]=0;H[e+260>>2]=0;H[e+264>>2]=0;H[e+288>>2]=0;H[e+292>>2]=0;H[e+280>>2]=0;H[e+284>>2]=0;F[e+368|0]=0;H[e+296>>2]=1065353216;H[e+300>>2]=0;H[e+276>>2]=1065353216;H[e+256>>2]=1065353216;F[e+369|0]=A;if(!A){g=L[c+32>>2];h=L[c+20>>2];f=L[c+8>>2];E=H[c+12>>2];G=H[c+16>>2];K=H[c+24>>2];B=H[c+28>>2];r=H[c+4>>2];c=H[c>>2];H[e+332>>2]=0;L[e+344>>2]=h;H[e+348>>2]=0;H[e+320>>2]=c;H[e+324>>2]=r;H[e+364>>2]=0;L[e+360>>2]=g;H[e+352>>2]=K;H[e+356>>2]=B;H[e+336>>2]=E;H[e+340>>2]=G;L[e+328>>2]=f}j=L[v>>2];i=L[v+4>>2];g=L[v+8>>2];H[a+188>>2]=0;L[a+184>>2]=g;L[a+180>>2]=i;L[a+176>>2]=j;B=H[v+12>>2];r=H[v+16>>2];c=H[v+24>>2];H[a+168>>2]=H[v+20>>2];H[a+172>>2]=c;H[a+160>>2]=B;H[a+164>>2]=r;F[a+32|0]=0;H[a+24>>2]=0;H[a+28>>2]=0;H[a+16>>2]=0;H[a+20>>2]=0;H[a+8>>2]=0;H[a+12>>2]=0;H[a>>2]=0;H[a+4>>2]=0;H[a+144>>2]=q+16;H[a+152>>2]=H[q+56>>2]+N(I[q+55|0],20);F[a+156|0]=I[q+54|0];h=O(j*L[q+68>>2]);f=O(i*L[q+72>>2]);h=f>=h?h:f;f=O(g*L[q+76>>2]);f=f>=h?h:f;L[a+24>>2]=f*O(.02500000037252903);L[a+16>>2]=f*O(.10000000149011612);L[a+20>>2]=f*O(.05000000074505806);CU(a+176|0,a+160|0,a+48|0,a+96|0,a,j==O(1)&i==O(1)&g==O(1));H[a+148>>2]=H[q+60>>2];R6(e+96|0,a,157);o=L[b+20>>2];j=L[d+20>>2];i=L[b+24>>2];g=L[d+24>>2];w=L[d+8>>2];s=L[d+4>>2];t=L[d+12>>2];k=L[d>>2];u=L[b+12>>2];x=L[b>>2];h=L[b+16>>2];f=L[d+16>>2];y=L[b+4>>2];z=L[b+8>>2];F[e+369|0]=A;H[e+316>>2]=0;H[e+300>>2]=0;H[e+284>>2]=0;H[e+268>>2]=0;f=O(f-h);m=O(f+f);f=O(j-o);j=O(f+f);f=O(g-i);g=O(f+f);h=O(O(O(O(-x)*m)-O(j*y))-O(z*g));f=O(O(u*u)+O(-.5));L[e+312>>2]=O(O(g*f)+O(u*O(O(y*m)-O(x*j))))-O(z*h);L[e+308>>2]=O(O(j*f)+O(u*O(O(x*g)-O(z*m))))-O(y*h);L[e+304>>2]=O(O(m*f)+O(u*O(O(z*j)-O(y*g))))-O(x*h);l=O(O(k*y)+O(O(O(u*w)-O(t*z))-O(x*s)));n=O(O(w*x)+O(O(O(u*s)-O(t*y))-O(z*k)));m=O(n+n);h=O(l*m);g=O(O(z*w)+O(O(y*s)+O(O(u*t)+O(x*k))));o=O(O(s*z)+O(O(O(u*k)-O(t*x))-O(y*w)));k=O(o+o);f=O(g*k);L[e+292>>2]=h-f;j=O(l*k);i=O(g*m);L[e+288>>2]=j+i;L[e+280>>2]=f+h;h=O(k*n);f=g;g=O(l+l);f=O(f*g);L[e+272>>2]=h-f;L[e+264>>2]=j-i;L[e+260>>2]=h+f;f=O(O(1)-O(o*k));h=O(n*m);L[e+296>>2]=f-h;i=f;f=O(l*g);L[e+276>>2]=i-f;L[e+256>>2]=O(O(1)-h)-f;s=L[p+40>>2];t=L[p+44>>2];l=L[p+16>>2];n=L[p+28>>2];k=L[p+20>>2];m=L[p+32>>2];f=L[p+36>>2];o=L[p>>2];j=L[p+12>>2];i=L[p+24>>2];g=L[p+4>>2];h=L[p+8>>2];H[e+76>>2]=0;H[e+60>>2]=0;L[e+56>>2]=m;L[e+52>>2]=k;L[e+48>>2]=h;H[e+44>>2]=0;L[e+40>>2]=n;L[e+36>>2]=l;L[e+32>>2]=g;H[e+28>>2]=0;L[e+24>>2]=i;L[e+20>>2]=j;L[e+16>>2]=o;f=O(-f);L[e+72>>2]=O(O(i*f)-O(n*s))-O(m*t);L[e+68>>2]=O(O(j*f)-O(l*s))-O(k*t);L[D>>2]=O(O(o*f)-O(g*s))-O(h*t);g=L[p+52>>2];h=L[p+56>>2];f=L[p+48>>2];H[e+92>>2]=0;L[e+88>>2]=h+O(.0010000000474974513);L[e+84>>2]=g+O(.0010000000474974513);L[e+80>>2]=f+O(.0010000000474974513);Oa=a+192|0;Ra[H[(J[C+4>>1]<<2)+128572>>2]](C,p,e,1,0);Oa=e+736|0;return I[e+368|0]}function Bu(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=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=0,A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),G=O(0),J=O(0),K=O(0),M=O(0),P=O(0),Q=O(0),R=0,S=O(0),T=O(0),U=O(0),V=O(0),X=O(0),Y=O(0),Z=O(0),_=O(0),$=O(0),aa=O(0),ba=O(0);h=Oa+-64|0;Oa=h;u=L[d+20>>2];q=L[d+24>>2];f=H[f>>2];A=L[d+16>>2];o=L[d+8>>2];B=L[d>>2];C=L[d+4>>2];v=L[d+12>>2];J=L[c+20>>2];K=L[c+24>>2];j=L[c>>2];k=L[c+4>>2];x=L[c+8>>2];i=L[c+12>>2];m=L[c+16>>2];H[h+60>>2]=0;L[h+56>>2]=K;L[h+52>>2]=J;L[h+48>>2]=m;L[h+44>>2]=i;L[h+40>>2]=x;L[h+36>>2]=k;L[h+32>>2]=j;D=L[b+12>>2];R=H[b+40>>2];r=L[R+60>>2];n=L[R+52>>2];P=L[b+8>>2];w=L[R+56>>2];$=L[e+8>>2];E=L[b+4>>2];H[h+28>>2]=0;l=O(j+j);p=O(i+i);s=O(O(x*l)-O(k*p));y=O(O(O(j*l)+O(i*p))+O(-1));l=O(O(l*k)+O(x*p));p=O(O(1)/O(W(O(O(s*s)+O(O(y*y)+O(l*l))))));L[h+24>>2]=p*O(-s);L[h+20>>2]=p*O(-l);L[h+16>>2]=p*O(-y);L[h>>2]=L[e>>2];s=O(O(O(C*x)-O(k*o))+O(O(B*i)-O(v*j)));y=O(s+s);p=O(O(O(o*j)-O(x*B))+O(O(C*i)-O(v*k)));G=O(p+p);S=O(O(1)-O(s*y));T=O(p*G);U=O(S-T);l=O(O(O(B*k)-O(j*C))+O(O(o*i)-O(v*x)));M=O(l+l);t=O(l*M);S=O(S-t);T=O(O(O(1)-T)-t);t=O($*O(.05000000074505806));n=O(E*n);w=O(P*w);n=n<=w?n:w;r=O(D*r);r=O((n<=r?n:r)*O(.25));r=O((r>t?t:r)*O(.20000000298023224));n=O(l*G);w=O(-j);o=O(O(v*i)-O(O(O(B*w)-O(C*k))-O(x*o)));v=O(o*y);B=O(n-v);t=O(l*y);G=O(o*G);C=O(t+G);v=O(n+v);n=O(p*y);M=O(o*M);y=O(n-M);G=O(t-G);M=O(n+M);m=O(A-m);u=O(u-J);q=O(q-K);A=O(O(O(w*m)-O(u*k))-O(x*q));n=O(O(i*i)+O(-.5));J=O(O(O(i*O(O(k*m)-O(j*u)))+O(n*q))-O(x*A));J=O(J+J);K=O(O(O(n*u)+O(i*O(O(j*q)-O(x*m))))-O(k*A));K=O(K+K);i=O(O(O(n*m)+O(i*O(O(x*u)-O(k*q))))-O(j*A));x=O(i+i);c=I[f+64|0];if(c){u=O(r*r);a=c;while(1){e=H[f+76>>2];a=a-1|0;d=e+N(a,48)|0;j=L[d+24>>2];q=L[d+40>>2];i=L[d+8>>2];k=L[d>>2];m=L[d+4>>2];A=O(J+O(O(U*i)+O(O(G*k)+O(v*m))));n=O(x+O(O(C*i)+O(O(T*k)+O(y*m))));w=L[d+16>>2];t=L[d+32>>2];k=O(K+O(O(B*i)+O(O(M*k)+O(S*m))));m=L[d+20>>2];Q=L[d+36>>2];i=O(O(q*O(A-j))+O(O(O(n-w)*t)+O(O(k-m)*Q)));j=O(j-O(A-O(q*i)));q=O(j*j);j=O(w-O(n-O(t*i)));n=O(j*j);j=O(m-O(k-O(Q*i)));a:{if(u>2];H[d>>2]=H[e>>2];H[d+4>>2]=z;z=H[e+44>>2];H[d+40>>2]=H[e+40>>2];H[d+44>>2]=z;z=H[e+36>>2];H[d+32>>2]=H[e+32>>2];H[d+36>>2]=z;z=H[e+28>>2];H[d+24>>2]=H[e+24>>2];H[d+28>>2]=z;z=H[e+20>>2];H[d+16>>2]=H[e+16>>2];H[d+20>>2]=z;z=H[e+12>>2];H[d+8>>2]=H[e+8>>2];H[d+12>>2]=z;break a}L[d+44>>2]=i}if(a){continue}break}a=I[f+64|0]}else{a=0}b:{c:{if((a|0)!=(c|0)){break c}i=O(x-L[f+16>>2]);j=O(-i);k=O(K-L[f+20>>2]);m=O(-k);u=O(J-L[f+24>>2]);q=O(-u);i=i>j?i:j;j=k>m?k:m;j=i>=j?i:j;i=(q=O(0)?i:O(0);if(r<(i<=j?j:i)){break c}if(!(O(O(o*L[f+12>>2])+O(O(l*L[f+8>>2])+O(O(s*L[f>>2])+O(p*L[f+4>>2]))))>2];k=L[b+16>>2];r=L[b+28>>2];j=L[b+20>>2];c=0;H[f+28>>2]=0;L[f+24>>2]=J;L[f+20>>2]=K;L[f+16>>2]=x;L[f+12>>2]=o;L[f+8>>2]=l;L[f+4>>2]=p;L[f>>2]=s;F[f+64|0]=0;d=I[R+38|0];if(d){o=k;k=O(k+k);X=O(O(1)-O(o*k));m=O(j+j);w=O(j*m);l=O(X-w);p=O(D*l);Q=O(m*i);V=O(k*r);o=O(Q-V);s=O(P*o);q=O(k*i);n=O(m*r);m=O(q+n);A=O(E*m);u=O(O(p*l)+O(O(A*m)+O(o*s)));q=O(q-n);n=O(D*q);t=O(i+i);Y=O(i*t);i=O(O(O(1)-w)-Y);w=O(E*i);Z=O(k*j);_=O(t*r);j=O(Z+_);t=O(P*j);r=O(O(n*l)+O(O(w*m)+O(o*t)));k=O(Q+V);Q=O(D*k);aa=O(Q*l);l=O(Z-_);V=O(E*l);E=O(V*m);D=o;o=O(X-Y);m=O(P*o);D=O(aa+O(E+O(D*m)));X=O(O(U*u)+O(O(G*r)+O(v*D)));Y=O(O(B*u)+O(O(M*r)+O(S*D)));Z=O(O(C*u)+O(O(T*r)+O(y*D)));P=O(O(p*k)+O(O(A*l)+O(o*s)));E=O(O(n*k)+O(O(w*l)+O(o*t)));o=O(O(Q*k)+O(O(V*l)+O(o*m)));_=O(O(U*P)+O(O(G*E)+O(v*o)));aa=O(O(B*P)+O(O(M*E)+O(S*o)));ba=O(O(C*P)+O(O(T*E)+O(y*o)));p=O(O(p*q)+O(O(A*i)+O(j*s)));s=O(O(n*q)+O(O(w*i)+O(j*t)));k=v;v=O(O(Q*q)+O(O(V*i)+O(j*m)));U=O(O(U*p)+O(O(G*s)+O(k*v)));B=O(O(B*p)+O(O(M*s)+O(S*v)));C=O(O(C*p)+O(O(T*s)+O(y*v)));e=H[R+40>>2]+N(I[R+39|0],20)|0;y=L[h>>2];a=0;while(1){b=e+N(a,12)|0;i=L[b+8>>2];j=L[b>>2];k=L[b+4>>2];l=O(x+O(O(Z*i)+O(O(C*j)+O(ba*k))));d:{if(!(l>2]=l-l;H[b+12>>2]=0;L[b+44>>2]=l;H[b+36>>2]=0;H[b+40>>2]=0;H[b+28>>2]=0;H[b+32>>2]=1065353216;L[b+8>>2]=O(u*i)+O(O(p*j)+O(P*k));L[b+4>>2]=O(D*i)+O(O(v*j)+O(o*k));L[b>>2]=O(r*i)+O(O(s*j)+O(E*k));l=O(l*O(0));L[b+24>>2]=O(J+O(O(X*i)+O(O(U*j)+O(_*k))))-l;L[b+20>>2]=O(K+O(O(Y*i)+O(O(B*j)+O(aa*k))))-l;c=c+1|0;if(c>>>0<64){break d}_0(f,g,c,$);b=H[f+76>>2];c=H[b+4>>2];H[g>>2]=H[b>>2];H[g+4>>2]=c;c=H[b+44>>2];H[g+40>>2]=H[b+40>>2];H[g+44>>2]=c;c=H[b+36>>2];H[g+32>>2]=H[b+32>>2];H[g+36>>2]=c;c=H[b+28>>2];H[g+24>>2]=H[b+24>>2];H[g+28>>2]=c;c=H[b+20>>2];H[g+16>>2]=H[b+16>>2];H[g+20>>2]=c;c=H[b+12>>2];H[g+8>>2]=H[b+8>>2];H[g+12>>2]=c;b=H[f+76>>2];c=H[b+52>>2];H[g+48>>2]=H[b+48>>2];H[g+52>>2]=c;c=H[b+92>>2];H[g+88>>2]=H[b+88>>2];H[g+92>>2]=c;c=H[b+84>>2];H[g+80>>2]=H[b+80>>2];H[g+84>>2]=c;c=H[b+76>>2];H[g+72>>2]=H[b+72>>2];H[g+76>>2]=c;c=b- -64|0;R=H[c+4>>2];H[g+64>>2]=H[c>>2];H[g+68>>2]=R;c=H[b+60>>2];H[g+56>>2]=H[b+56>>2];H[g+60>>2]=c;b=H[f+76>>2];c=H[b+100>>2];H[g+96>>2]=H[b+96>>2];H[g+100>>2]=c;c=H[b+140>>2];H[g+136>>2]=H[b+136>>2];H[g+140>>2]=c;c=H[b+124>>2];H[g+120>>2]=H[b+120>>2];H[g+124>>2]=c;c=H[b+116>>2];H[g+112>>2]=H[b+112>>2];H[g+116>>2]=c;c=H[b+132>>2];H[g+128>>2]=H[b+128>>2];H[g+132>>2]=c;c=H[b+108>>2];H[g+104>>2]=H[b+104>>2];H[g+108>>2]=c;b=H[f+76>>2];c=H[b+148>>2];H[g+144>>2]=H[b+144>>2];H[g+148>>2]=c;c=H[b+164>>2];H[g+160>>2]=H[b+160>>2];H[g+164>>2]=c;c=H[b+180>>2];H[g+176>>2]=H[b+176>>2];H[g+180>>2]=c;c=H[b+188>>2];H[g+184>>2]=H[b+184>>2];H[g+188>>2]=c;c=H[b+172>>2];H[g+168>>2]=H[b+168>>2];H[g+172>>2]=c;c=H[b+156>>2];H[g+152>>2]=H[b+152>>2];H[g+156>>2]=c;c=4}a=a+1|0;if((d|0)!=(a|0)){continue}break}}Z0(f,g,c,$)}X0(f,g,h+16|0,h+32|0,h);Oa=h- -64|0;return I[f+64|0]!=0|0}function Fy(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;n=32;c=Oa-48|0;Oa=c;F[c+12|0]=0;j=c-128|0;Oa=j;H[c+8>>2]=j;k=b-1|0;a:{if((k|0)<=0){break a}while(1){b:{if((k|0)<=(l|0)){break b}while(1){if(k-l>>>0<=4){while(1){e=l;l=e+1|0;b=l;h=e;while(1){h=K[H[((b<<5)+a|0)+24>>2]+40>>2]>K[H[((h<<5)+a|0)+24>>2]+40>>2]?b:h;d=(b|0)<(k|0);b=b+1|0;if(d){continue}break}if((e|0)!=(h|0)){d=(h<<5)+a|0;b=H[d+28>>2];H[c+40>>2]=H[d+24>>2];H[c+44>>2]=b;b=H[d+20>>2];H[c+32>>2]=H[d+16>>2];H[c+36>>2]=b;b=H[d+12>>2];H[c+24>>2]=H[d+8>>2];H[c+28>>2]=b;b=H[d+4>>2];H[c+16>>2]=H[d>>2];H[c+20>>2]=b;e=(e<<5)+a|0;b=H[e+28>>2];H[d+24>>2]=H[e+24>>2];H[d+28>>2]=b;b=H[e+20>>2];H[d+16>>2]=H[e+16>>2];H[d+20>>2]=b;b=H[e+12>>2];H[d+8>>2]=H[e+8>>2];H[d+12>>2]=b;b=H[e+4>>2];H[d>>2]=H[e>>2];H[d+4>>2]=b;b=H[c+44>>2];H[e+24>>2]=H[c+40>>2];H[e+28>>2]=b;b=H[c+36>>2];H[e+16>>2]=H[c+32>>2];H[e+20>>2]=b;b=H[c+28>>2];H[e+8>>2]=H[c+24>>2];H[e+12>>2]=b;b=H[c+20>>2];H[e>>2]=H[c+16>>2];H[e+4>>2]=b}if((k|0)!=(l|0)){continue}break b}}d=(l<<5)+a|0;b=H[H[d+24>>2]+40>>2];f=((k+l|0)/2<<5)+a|0;if(b>>>0>2]+40>>2]){b=H[d+28>>2];H[c+40>>2]=H[d+24>>2];H[c+44>>2]=b;b=H[d+20>>2];H[c+32>>2]=H[d+16>>2];H[c+36>>2]=b;b=H[d+12>>2];H[c+24>>2]=H[d+8>>2];H[c+28>>2]=b;b=H[d+4>>2];H[c+16>>2]=H[d>>2];H[c+20>>2]=b;b=H[f+28>>2];H[d+24>>2]=H[f+24>>2];H[d+28>>2]=b;b=H[f+20>>2];H[d+16>>2]=H[f+16>>2];H[d+20>>2]=b;b=H[f+12>>2];H[d+8>>2]=H[f+8>>2];H[d+12>>2]=b;b=H[f+4>>2];H[d>>2]=H[f>>2];H[d+4>>2]=b;b=H[c+44>>2];H[f+24>>2]=H[c+40>>2];H[f+28>>2]=b;b=H[c+36>>2];H[f+16>>2]=H[c+32>>2];H[f+20>>2]=b;b=H[c+28>>2];H[f+8>>2]=H[c+24>>2];H[f+12>>2]=b;b=H[c+20>>2];H[f>>2]=H[c+16>>2];H[f+4>>2]=b;h=H[H[d+24>>2]+40>>2]}else{h=b}e=(k<<5)+a|0;b=H[H[e+24>>2]+40>>2];if(h>>>0>>0){b=H[d+28>>2];H[c+40>>2]=H[d+24>>2];H[c+44>>2]=b;b=H[d+20>>2];H[c+32>>2]=H[d+16>>2];H[c+36>>2]=b;b=H[d+12>>2];H[c+24>>2]=H[d+8>>2];H[c+28>>2]=b;b=H[d+4>>2];H[c+16>>2]=H[d>>2];H[c+20>>2]=b;b=H[e+28>>2];H[d+24>>2]=H[e+24>>2];H[d+28>>2]=b;b=H[e+20>>2];H[d+16>>2]=H[e+16>>2];H[d+20>>2]=b;b=H[e+12>>2];H[d+8>>2]=H[e+8>>2];H[d+12>>2]=b;b=H[e+4>>2];H[d>>2]=H[e>>2];H[d+4>>2]=b;b=H[c+44>>2];H[e+24>>2]=H[c+40>>2];H[e+28>>2]=b;b=H[c+36>>2];H[e+16>>2]=H[c+32>>2];H[e+20>>2]=b;b=H[c+28>>2];H[e+8>>2]=H[c+24>>2];H[e+12>>2]=b;b=H[c+20>>2];H[e>>2]=H[c+16>>2];H[e+4>>2]=b;b=H[H[e+24>>2]+40>>2]}if(K[H[f+24>>2]+40>>2]>>0){b=H[f+28>>2];H[c+40>>2]=H[f+24>>2];H[c+44>>2]=b;b=H[f+20>>2];H[c+32>>2]=H[f+16>>2];H[c+36>>2]=b;b=H[f+12>>2];H[c+24>>2]=H[f+8>>2];H[c+28>>2]=b;b=H[f+4>>2];H[c+16>>2]=H[f>>2];H[c+20>>2]=b;b=H[e+28>>2];H[f+24>>2]=H[e+24>>2];H[f+28>>2]=b;b=H[e+20>>2];H[f+16>>2]=H[e+16>>2];H[f+20>>2]=b;b=H[e+12>>2];H[f+8>>2]=H[e+8>>2];H[f+12>>2]=b;b=H[e+4>>2];H[f>>2]=H[e>>2];H[f+4>>2]=b;b=H[c+44>>2];H[e+24>>2]=H[c+40>>2];H[e+28>>2]=b;b=H[c+36>>2];H[e+16>>2]=H[c+32>>2];H[e+20>>2]=b;b=H[c+28>>2];H[e+8>>2]=H[c+24>>2];H[e+12>>2]=b;b=H[c+20>>2];H[e>>2]=H[c+16>>2];H[e+4>>2]=b}b=H[f+28>>2];H[c+40>>2]=H[f+24>>2];H[c+44>>2]=b;b=H[f+20>>2];H[c+32>>2]=H[f+16>>2];H[c+36>>2]=b;b=H[f+12>>2];H[c+24>>2]=H[f+8>>2];H[c+28>>2]=b;b=H[f+4>>2];H[c+16>>2]=H[f>>2];H[c+20>>2]=b;h=k-1|0;i=(h<<5)+a|0;e=i;b=H[e+4>>2];H[f>>2]=H[e>>2];H[f+4>>2]=b;b=H[e+28>>2];H[f+24>>2]=H[e+24>>2];H[f+28>>2]=b;b=H[e+20>>2];H[f+16>>2]=H[e+16>>2];H[f+20>>2]=b;b=H[e+12>>2];H[f+8>>2]=H[e+8>>2];H[f+12>>2]=b;b=H[c+44>>2];H[e+24>>2]=H[c+40>>2];H[e+28>>2]=b;b=H[c+36>>2];H[e+16>>2]=H[c+32>>2];H[e+20>>2]=b;b=H[c+28>>2];H[e+8>>2]=H[c+24>>2];H[e+12>>2]=b;b=H[c+20>>2];H[e>>2]=H[c+16>>2];H[e+4>>2]=b;b=l;while(1){f=H[H[i+24>>2]+40>>2];while(1){e=b;b=b+1|0;g=(b<<5)+a|0;if(K[H[g+24>>2]+40>>2]>f>>>0){continue}break}while(1){h=h-1|0;d=(h<<5)+a|0;if(K[H[d+24>>2]+40>>2]>>0){continue}break}if((b|0)<(h|0)){e=H[g+28>>2];H[c+40>>2]=H[g+24>>2];H[c+44>>2]=e;e=H[g+20>>2];H[c+32>>2]=H[g+16>>2];H[c+36>>2]=e;e=H[g+12>>2];H[c+24>>2]=H[g+8>>2];H[c+28>>2]=e;e=H[g+4>>2];H[c+16>>2]=H[g>>2];H[c+20>>2]=e;e=H[d+28>>2];H[g+24>>2]=H[d+24>>2];H[g+28>>2]=e;e=H[d+20>>2];H[g+16>>2]=H[d+16>>2];H[g+20>>2]=e;e=H[d+12>>2];H[g+8>>2]=H[d+8>>2];H[g+12>>2]=e;e=H[d+4>>2];H[g>>2]=H[d>>2];H[g+4>>2]=e;e=H[c+44>>2];H[d+24>>2]=H[c+40>>2];H[d+28>>2]=e;e=H[c+36>>2];H[d+16>>2]=H[c+32>>2];H[d+20>>2]=e;e=H[c+28>>2];H[d+8>>2]=H[c+24>>2];H[d+12>>2]=e;e=H[c+20>>2];H[d>>2]=H[c+16>>2];H[d+4>>2]=e;continue}break}d=H[g+28>>2];H[c+40>>2]=H[g+24>>2];H[c+44>>2]=d;d=H[g+20>>2];H[c+32>>2]=H[g+16>>2];H[c+36>>2]=d;d=H[g+12>>2];H[c+24>>2]=H[g+8>>2];H[c+28>>2]=d;d=H[g+4>>2];H[c+16>>2]=H[g>>2];H[c+20>>2]=d;d=H[i+28>>2];H[g+24>>2]=H[i+24>>2];H[g+28>>2]=d;d=H[i+20>>2];H[g+16>>2]=H[i+16>>2];H[g+20>>2]=d;d=H[i+12>>2];H[g+8>>2]=H[i+8>>2];H[g+12>>2]=d;d=H[i+4>>2];H[g>>2]=H[i>>2];H[g+4>>2]=d;d=H[c+44>>2];H[i+24>>2]=H[c+40>>2];H[i+28>>2]=d;d=H[c+36>>2];H[i+16>>2]=H[c+32>>2];H[i+20>>2]=d;d=H[c+28>>2];H[i+8>>2]=H[c+24>>2];H[i+12>>2]=d;d=H[c+20>>2];H[i>>2]=H[c+16>>2];H[i+4>>2]=d;c:{if((b-l|0)<(k-b|0)){d:{if(n-1>>>0>m>>>0){b=j;break d}d=n<<3;if(d){h=H[33808];b=h+12|0;b=(q=b,r=d,s=Ra[H[H[h>>2]+20>>2]](h)|0?40080:55639,t=14160,u=155,p=H[H[b>>2]+8>>2],Ra[p](q|0,r|0,s|0,t|0,u|0)|0)}else{b=0}d=R6(b,j,m<<2);if(!(!o|!j)){h=H[33808]+12|0;Ra[H[H[h>>2]+12>>2]](h,j)}n=n<<1;o=1;j=d}b=(m<<2)+b|0;H[b>>2]=l;H[b+4>>2]=e;l=e+2|0;break c}f=e+2|0;e:{if(n-1>>>0>m>>>0){b=j;break e}d=n<<3;if(d){h=H[33808];b=h+12|0;b=(u=b,t=d,s=Ra[H[H[h>>2]+20>>2]](h)|0?40080:55639,r=14160,q=155,p=H[H[b>>2]+8>>2],Ra[p](u|0,t|0,s|0,r|0,q|0)|0)}else{b=0}d=R6(b,j,m<<2);if(!(!o|!j)){h=H[33808]+12|0;Ra[H[H[h>>2]+12>>2]](h,j)}n=n<<1;o=1;j=d}b=(m<<2)+b|0;H[b>>2]=f;H[b+4>>2]=k;k=e}m=m+2|0;if((k|0)>(l|0)){continue}break}}if(m){b=m-2|0;l=H[(b<<2)+j>>2];k=H[((m<<2)+j|0)-4>>2];m=b;continue}break}if(!o|!j){break a}a=H[33808]+12|0;Ra[H[H[a>>2]+12>>2]](a,j)}if(I[c+12|0]){H5(H[c+8>>2])}Oa=c+48|0}function aO(a){var b=0,c=0,d=0,e=0,f=0,g=O(0),h=0,i=0,j=0,k=0,l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=0,s=0,t=0,u=0,v=O(0),w=0,x=0,y=0,z=O(0),A=0,B=0,C=0,D=O(0),E=O(0),G=O(0),M=O(0),Q=O(0);F[a+4620|0]=0;H[a+1092>>2]=H[a+1092>>2]+1;H[a+1196>>2]=H[H[a+2368>>2]+36>>2];b=H[a+976>>2];Ra[H[H[b+212>>2]+44>>2]](b+212|0);H[a+1244>>2]=0;a:{if(!I[a+2660|0]){break a}F[a+2660|0]=0;if(!(L[H[a+976>>2]+1056>>2]!=O(0)|L[H[a+976>>2]+1060>>2]!=O(0)|L[H[a+976>>2]+1064>>2]!=O(0))){if(L[H[a+976>>2]+1068>>2]==O(0)){break a}}H[a+2356>>2]=H[a+2356>>2]|4}h=Oa-144|0;Oa=h;if(L[a+2656>>2]!=O(0)){i=H[a+976>>2];b=h- -64|0;H[b>>2]=0;H[b+4>>2]=0;H[h+56>>2]=0;H[h+60>>2]=0;H[h+48>>2]=0;H[h+52>>2]=0;H[h+80>>2]=0;H[h+84>>2]=0;H[h+72>>2]=0;H[h+76>>2]=1065353216;H[h+88>>2]=0;H[h+92>>2]=0;H[h+100>>2]=0;H[h+104>>2]=0;H[h+96>>2]=1065353216;H[h+108>>2]=0;H[h+112>>2]=0;H[h+120>>2]=0;H[h+124>>2]=0;H[h+116>>2]=1065353216;H[h+128>>2]=0;H[h+132>>2]=0;H[h+136>>2]=1065353216;H[h+40>>2]=0;H[h+44>>2]=0;H[h+140>>2]=i+212;if(L[i+1088>>2]!=O(0)){f=H[a+980>>2];d=Oa+-64|0;Oa=d;H[d+56>>2]=0;H[d+48>>2]=0;H[d+52>>2]=0;H[d+40>>2]=0;H[d+44>>2]=1065353216;H[d+32>>2]=0;H[d+36>>2]=0;e=h+40|0;VT(e,d+32|0);i=H[f+380>>2];if(i){while(1){b=H[H[f+376>>2]+(j<<2)>>2];if(H[b+8>>2]){H[e+4>>2]=-16711936;b=H[H[f+276>>2]+4>>2]+N(H[b>>2],24)|0;L[d>>2]=L[b>>2];L[d+4>>2]=L[b+4>>2];L[d+8>>2]=L[b+8>>2];L[d+12>>2]=L[b+12>>2];L[d+16>>2]=L[b+16>>2];n=L[b+20>>2];F[d+24|0]=1;L[d+20>>2]=n;XT(e,d)}j=j+1|0;if((i|0)!=(j|0)){continue}break}}Oa=d- -64|0}x=H[a+1132>>2];if(x){d=H[a+1100>>2];while(1){j=H[a+976>>2]+212|0;b=Oa-160|0;Oa=b;r=H[H[d+(t<<2)>>2]+60>>2];if(I[H[r+52>>2]]&16){s=H[r+28>>2];i=H[r+24>>2];H[b+152>>2]=0;H[b+144>>2]=0;H[b+148>>2]=0;H[b+136>>2]=0;H[b+140>>2]=1065353216;H[b+128>>2]=0;H[b+132>>2]=0;f=b+128|0;e=i?H[i+36>>2]:f;f=s?H[s+36>>2]:f;s=H[r+48>>2];l=L[s+2656>>2];i=H[s+976>>2];m=L[i+1112>>2];g=L[s+2656>>2];n=L[i+1116>>2];H[b+48>>2]=0;H[b+52>>2]=0;H[b+40>>2]=0;H[b+44>>2]=0;H[b+32>>2]=0;H[b+36>>2]=0;i=b- -64|0;H[i>>2]=0;H[i+4>>2]=0;H[b+56>>2]=0;H[b+60>>2]=1065353216;H[b+72>>2]=0;H[b+76>>2]=0;H[b+84>>2]=0;H[b+88>>2]=0;H[b+80>>2]=1065353216;H[b+92>>2]=0;H[b+96>>2]=0;H[b+104>>2]=0;H[b+108>>2]=0;H[b+100>>2]=1065353216;H[b+112>>2]=0;H[b+116>>2]=0;H[b+120>>2]=1065353216;H[b+24>>2]=0;H[b+28>>2]=0;H[b+124>>2]=j;H[b+8>>2]=105132;g=O(g*n);L[b+16>>2]=g;n=O(l*m);L[b+12>>2]=n;H[b+20>>2]=b+24;i=n!=O(0);Ra[H[H[r+52>>2]+40>>2]](b+8|0,H[r+20>>2],e,f,g!=O(0)?i|2:i)}Oa=b+160|0;t=t+1|0;if((x|0)!=(t|0)){continue}break}}b=H[H[a+976>>2]+1024>>2];Ra[H[H[b>>2]+84>>2]](h,b);k=h+40|0;a=H[H[a+2168>>2]>>2];b:{if(L[a+2656>>2]==O(0)){break b}y=H[a+88>>2];if(!y){break b}C=H[a+52>>2];while(1){f=0;j=0;b=0;c=Oa-128|0;Oa=c;c:{u=H[C>>2]-4|0;e=H[u+56>>2];if(!e){break c}v=K[H[u+28>>2]+4>>2]>2]+4>>2]?O(1):O(-1);s=H[H[u+4>>2]+40>>2];z=L[s+2656>>2];o=O(z*O(.10000000149011612));while(1){d:{e:{if(e){i=H[e+68>>2];f:{if((i|0)<0){a=H[H[H[H[u+4>>2]+40>>2]+976>>2]+1024>>2];a=Ra[H[H[a>>2]+80>>2]](a,i)|0;break f}a=H[h+32>>2]+(H[((i&7)<<2)+h>>2]+(i>>>3|0)<<4)|0}d=H[e+32>>2];w=0;e=0;g:{if(!I[a+12|0]){break g}e=1;if(b){break g}w=H[a+8>>2];A=I[a+13|0];i=H[a+4>>2];e=H[a>>2];a=(d|0)!=0;break d}if(!d){break e}while(1){if((b|0)==(e|0)){i=d- -64|0;e=d+16|0;w=(J[d+4>>1]+15&131056)+d|0;A=1;a=(H[d>>2]!=0)+b|0;break d}e=e+1|0;d=H[d>>2];if(d){continue}break}}w=0}A=0;i=0;e=0;a=b}r=0;d=H[s+976>>2];n=L[d+1068>>2];D=L[d+1060>>2];E=L[d+1064>>2];Q=L[d+1056>>2];B=0;if(e){j=I[e+43|0];B=j&128?32:j&2?64:16;f=i;j=e}if(A){t=(w|0)!=0&n!=O(0);G=O(z*n);n=O(z*D);M=O(z*E);i=0;e=0;while(1){if(i){d=I[j+41|0];f=d>>>0>e>>>0?N(d-e|0,B)+f|0:f;j=j+48|0}i=i+1|0;h:{if(!I[j+41|0]){e=0;break h}f=r?f+B|0:f;i:{j:{if(!t){e=255;g=n;if(D!=O(0)){break j}if(E==O(0)){break i}e=16776960;g=O(P(O(M*L[f+12>>2])));break j}e=16711680;g=O(G*L[w>>2])}if(g==O(0)){break i}H[k+32>>2]=0;H[k>>2]=1;H[k+4>>2]=e;L[c+112>>2]=L[f>>2];L[c+116>>2]=L[f+4>>2];L[c+120>>2]=L[f+8>>2];e=WT(k,c+112|0);p=L[f>>2];q=L[j+16>>2];l=L[f+4>>2];m=L[j+20>>2];L[c+104>>2]=O(v*O(g*L[j+24>>2]))+L[f+8>>2];L[c+100>>2]=l+O(v*O(g*m));L[c+96>>2]=p+O(v*O(g*q));WT(e,c+96|0)}x=Q==O(0);if(!x){g=L[f>>2];p=L[f+4>>2];q=L[f+8>>2];H[k+32>>2]=0;H[k>>2]=1;H[k+4>>2]=-65536;l=O(q+O(0));L[c+88>>2]=l;m=O(p+O(0));L[c+84>>2]=m;L[c+80>>2]=g-o;e=WT(k,c+80|0);L[c+72>>2]=l;L[c+68>>2]=m;L[c+64>>2]=o+g;WT(e,c- -64|0);L[c+56>>2]=l;L[c+52>>2]=p-o;g=O(g+O(0));L[c+48>>2]=g;e=WT(k,c+48|0);L[c+40>>2]=l;L[c+36>>2]=o+p;L[c+32>>2]=g;WT(e,c+32|0);L[c+24>>2]=q-o;L[c+20>>2]=m;L[c+16>>2]=g;e=WT(k,c+16|0);L[c+8>>2]=o+q;L[c+4>>2]=m;L[c>>2]=g;WT(e,c)}r=1;if(I[j+41|0]<2){e=1;break h}e=1;while(1){f=f+B|0;k:{l:{if(t){d=16711680;g=O(G*L[w>>2]);break l}d=255;g=n;if(D!=O(0)){break l}if(E==O(0)){break k}d=16776960;g=O(P(O(M*L[f+12>>2])))}if(g==O(0)){break k}H[k+32>>2]=0;H[k>>2]=1;H[k+4>>2]=d;L[c+112>>2]=L[f>>2];L[c+116>>2]=L[f+4>>2];L[c+120>>2]=L[f+8>>2];d=WT(k,c+112|0);p=L[f>>2];q=L[j+16>>2];l=L[f+4>>2];m=L[j+20>>2];L[c+104>>2]=O(v*O(g*L[j+24>>2]))+L[f+8>>2];L[c+100>>2]=l+O(v*O(g*m));L[c+96>>2]=p+O(v*O(g*q));WT(d,c+96|0)}e=e+1|0;if(!x){g=L[f>>2];p=L[f+4>>2];q=L[f+8>>2];H[k+32>>2]=0;H[k>>2]=1;H[k+4>>2]=-65536;l=O(q+O(0));L[c+88>>2]=l;m=O(p+O(0));L[c+84>>2]=m;L[c+80>>2]=g-o;d=WT(k,c+80|0);L[c+72>>2]=l;L[c+68>>2]=m;L[c+64>>2]=o+g;WT(d,c- -64|0);L[c+56>>2]=l;L[c+52>>2]=p-o;g=O(g+O(0));L[c+48>>2]=g;d=WT(k,c+48|0);L[c+40>>2]=l;L[c+36>>2]=o+p;L[c+32>>2]=g;WT(d,c+32|0);L[c+24>>2]=q-o;L[c+20>>2]=m;L[c+16>>2]=g;d=WT(k,c+16|0);L[c+8>>2]=o+q;L[c+4>>2]=m;L[c>>2]=g;WT(d,c)}if(I[j+41|0]>e>>>0){continue}break}}if((i|0)!=(A|0)){continue}break}}if((a|0)==(b|0)){break c}e=H[u+56>>2];b=a;continue}}Oa=c+128|0;C=C+4|0;y=y-1|0;if(y){continue}break}}}Oa=h+144|0}function j6(a,b,c,d,e,f){a=a|0;b=+b;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,s=0,t=0,u=0,w=0,x=0,y=0,z=0;l=Oa-560|0;Oa=l;H[l+44>>2]=0;A(+b);g=v(1)|0;v(0)|0;a:{if((g|0)<0){s=1;w=1893;b=-b;A(+b);g=v(1)|0;v(0)|0;break a}if(e&2048){s=1;w=1896;break a}s=e&1;w=s?1899:1894;z=!s}b:{if((g&2146435072)==2146435072){d=s+3|0;i6(a,32,c,d,e&-65537);e6(a,w,s);f=f&32;e6(a,b!=b?f?11788:54808:f?17169:54876,3);i6(a,32,c,d,e^8192);i=(c|0)>(d|0)?c:d;break b}u=l+16|0;c:{d:{e:{b=b6(b,l+44|0);b=b+b;if(b!=0){g=H[l+44>>2];H[l+44>>2]=g-1;t=f|32;if((t|0)!=97){break e}break c}t=f|32;if((t|0)==97){break c}k=H[l+44>>2];m=(d|0)<0?6:d;break d}k=g-29|0;H[l+44>>2]=k;b=b*268435456;m=(d|0)<0?6:d}o=(k|0)<0?l+48|0:l+336|0;h=o;while(1){if(b<4294967296&b>=0){d=~~b>>>0}else{d=0}H[h>>2]=d;h=h+4|0;b=(b-+(d>>>0))*1e9;if(b!=0){continue}break}f:{if((k|0)<=0){d=k;g=h;j=o;break f}j=o;d=k;while(1){d=d>>>0<29?d:29;g=h-4|0;g:{if(j>>>0>g>>>0){break g}i=0;while(1){p=H[g>>2];n=d&31;x=i;if((d&63)>>>0>=32){i=p<>>32-n;p=p<>>0

>>0?i+1|0:i;i=h7(n,i,1e9);p=g7(i,Qa,1e9,0);H[g>>2]=n-p;g=g-4|0;if(j>>>0<=g>>>0){continue}break}if(!i){break g}j=j-4|0;H[j>>2]=i}while(1){g=h;if(j>>>0>>0){h=g-4|0;if(!H[h>>2]){continue}}break}d=H[l+44>>2]-d|0;H[l+44>>2]=d;h=g;if((d|0)>0){continue}break}}h=(m+25>>>0)/9|0;if((d|0)<0){n=h+1|0;p=(t|0)==102;while(1){d=0-d|0;i=d>>>0<9?d:9;h:{if(g>>>0>j>>>0){y=1e9>>>i|0;q=-1<>2];H[h>>2]=x+(d>>>i|0);d=N(d&q,y);h=h+4|0;if(h>>>0>>0){continue}break}h=H[j>>2];if(!d){break h}H[g>>2]=d;g=g+4|0;break h}h=H[j>>2]}d=i+H[l+44>>2]|0;H[l+44>>2]=d;j=(!h<<2)+j|0;h=p?o:j;g=(n|0)>2?h+(n<<2)|0:g;if((d|0)<0){continue}break}}d=0;i:{if(g>>>0<=j>>>0){break i}d=N(o-j>>2,9);h=10;i=H[j>>2];if(i>>>0<10){break i}while(1){d=d+1|0;h=N(h,10);if(i>>>0>=h>>>0){continue}break}}h=(m-((t|0)==102?0:d)|0)-((t|0)==103&(m|0)!=0)|0;if((h|0)<(N(g-o>>2,9)-9|0)){i=h+9216|0;n=(i|0)/9|0;k=((((k|0)<0?4:292)+l|0)+(n<<2)|0)-4048|0;h=10;i=i-N(n,9)|0;if((i|0)<=7){while(1){h=N(h,10);i=i+1|0;if((i|0)!=8){continue}break}}n=H[k>>2];p=(n>>>0)/(h>>>0)|0;i=n-N(h,p)|0;q=k+4|0;j:{if(!i&(q|0)==(g|0)){break j}k:{if(!(p&1)){b=9007199254740992;if(!(F[k-4|0]&1)|((h|0)!=1e9|j>>>0>=k>>>0)){break k}}b=9007199254740994}r=(g|0)==(q|0)?1:1.5;q=h>>>1|0;r=i>>>0>>0?.5:(i|0)==(q|0)?r:1.5;if(!(I[w|0]!=45|z)){r=-r;b=-b}i=n-i|0;H[k>>2]=i;if(b+r==b){break j}d=h+i|0;H[k>>2]=d;if(d>>>0>=1e9){while(1){H[k>>2]=0;k=k-4|0;if(k>>>0>>0){j=j-4|0;H[j>>2]=0}d=H[k>>2]+1|0;H[k>>2]=d;if(d>>>0>999999999){continue}break}}d=N(o-j>>2,9);h=10;i=H[j>>2];if(i>>>0<10){break j}while(1){d=d+1|0;h=N(h,10);if(i>>>0>=h>>>0){continue}break}}h=k+4|0;g=g>>>0>h>>>0?h:g}while(1){h=g;i=g>>>0<=j>>>0;if(!i){g=h-4|0;if(!H[g>>2]){continue}}break}l:{if((t|0)!=103){k=e&8;break l}g=m?m:1;k=(g|0)>(d|0)&(d|0)>-5;m=(k?d^-1:-1)+g|0;f=(k?-1:-2)+f|0;k=e&8;if(k){break l}g=-9;m:{if(i){break m}n=H[h-4>>2];if(!n){break m}i=10;g=0;if((n>>>0)%10|0){break m}while(1){k=g;g=g+1|0;i=N(i,10);if(!((n>>>0)%(i>>>0)|0)){continue}break}g=k^-1}i=N(h-o>>2,9);if((f&-33)==70){k=0;g=(g+i|0)-9|0;g=(g|0)>0?g:0;m=(g|0)>(m|0)?m:g;break l}k=0;g=((d+i|0)+g|0)-9|0;g=(g|0)>0?g:0;m=(g|0)>(m|0)?m:g}i=-1;g=k|m;if(((g?2147483645:2147483646)|0)<(m|0)){break b}t=(g|0)!=0;n=(t+m|0)+1|0;p=f&-33;n:{if((p|0)==70){if((2147483647-n|0)<(d|0)){break b}g=(d|0)>0?d:0;break n}g=d>>31;g=h6(g+d^g,0,u);if((u-g|0)<=1){while(1){g=g-1|0;F[g|0]=48;if((u-g|0)<2){continue}break}}q=g-2|0;F[q|0]=f;F[g-1|0]=(d|0)<0?45:43;g=u-q|0;if((g|0)>(2147483647-n|0)){break b}}d=g+n|0;if((d|0)>(s^2147483647)){break b}f=d+s|0;i6(a,32,c,f,e);e6(a,w,s);i6(a,48,c,f,e^65536);o:{p:{q:{if((p|0)==70){g=l+16|0;d=g|8;k=g|9;i=j>>>0>o>>>0?o:j;j=i;while(1){g=h6(H[j>>2],0,k);r:{if((i|0)!=(j|0)){if(l+16>>>0>=g>>>0){break r}while(1){g=g-1|0;F[g|0]=48;if(l+16>>>0>>0){continue}break}break r}if((g|0)!=(k|0)){break r}F[l+24|0]=48;g=d}e6(a,g,k-g|0);j=j+4|0;if(o>>>0>=j>>>0){continue}break}g=0;if(!t){break p}e6(a,61567,1);if((m|0)<=0|h>>>0<=j>>>0){break q}while(1){g=h6(H[j>>2],0,k);if(g>>>0>l+16>>>0){while(1){g=g-1|0;F[g|0]=48;if(l+16>>>0>>0){continue}break}}e6(a,g,(m|0)<9?m:9);g=m-9|0;j=j+4|0;if(h>>>0<=j>>>0){break p}d=(m|0)>9;m=g;if(d){continue}break}break p}s:{if((m|0)<0){break s}i=h>>>0>j>>>0?h:j+4|0;d=l+16|0;o=d|9;d=d|8;h=j;while(1){g=h6(H[h>>2],0,o);if((o|0)==(g|0)){F[l+24|0]=48;g=d}t:{if((h|0)!=(j|0)){if(l+16>>>0>=g>>>0){break t}while(1){g=g-1|0;F[g|0]=48;if(l+16>>>0>>0){continue}break}break t}e6(a,g,1);g=g+1|0;if(!(k|m)){break t}e6(a,61567,1)}x=g;g=o-g|0;e6(a,x,(g|0)<(m|0)?g:m);m=m-g|0;h=h+4|0;if(i>>>0<=h>>>0){break s}if((m|0)>=0){continue}break}}i6(a,48,m+18|0,18,0);e6(a,q,u-q|0);break o}g=m}i6(a,48,g+9|0,9,0)}i6(a,32,c,f,e^8192);i=(c|0)>(f|0)?c:f;break b}m=(f<<26>>31&9)+w|0;u:{if(d>>>0>11){break u}g=12-d|0;r=16;while(1){r=r*16;g=g-1|0;if(g){continue}break}if(I[m|0]==45){b=-(r+(-b-r));break u}b=b+r-r}h=H[l+44>>2];g=h>>31;g=h6(g^g+h,0,u);if((u|0)==(g|0)){F[l+15|0]=48;g=l+15|0}k=s|2;j=f&32;h=H[l+44>>2];o=g-2|0;F[o|0]=f+15;F[g-1|0]=(h|0)<0?45:43;i=e&8;h=l+16|0;while(1){f=h;if(P(b)<2147483648){g=~~b}else{g=-2147483648}F[h|0]=j|I[g+96384|0];b=(b-+(g|0))*16;h=f+1|0;if(!(!(i?1:(d|0)>0|b!=0)|(h-(l+16|0)|0)!=1)){F[f+1|0]=46;h=f+2|0}if(b!=0){continue}break}i=-1;n=u-o|0;f=n+k|0;if((2147483645-f|0)<(d|0)){break b}v:{w:{if(!d){break w}j=h-(l+16|0)|0;if((j-2|0)>=(d|0)){break w}g=d+2|0;break v}j=h-(l+16|0)|0;g=j}d=g+f|0;i6(a,32,c,d,e);e6(a,m,k);i6(a,48,c,d,e^65536);e6(a,l+16|0,j);i6(a,48,g-j|0,0,0);e6(a,o,n);i6(a,32,c,d,e^8192);i=(c|0)>(d|0)?c:d}Oa=l+560|0;return i|0}function d6(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,z=0;h=Oa-80|0;Oa=h;H[h+76>>2]=b;x=h+55|0;t=h+56|0;b=0;a:{b:{c:{d:{e:while(1){if((2147483647-o|0)<(b|0)){break d}o=b+o|0;f:{g:{h:{n=H[h+76>>2];b=n;m=I[b|0];if(m){while(1){i:{i=m&255;j:{if(!i){m=b;break j}if((i|0)!=37){break i}m=b;while(1){if(I[b+1|0]!=37){break j}i=b+2|0;H[h+76>>2]=i;m=m+1|0;j=I[b+2|0];b=i;if((j|0)==37){continue}break}}b=m-n|0;w=2147483647-o|0;if((b|0)>(w|0)){break d}if(a){e6(a,n,b)}if(b){continue e}r=-1;i=1;b=H[h+76>>2];if(!(F[b+1|0]-48>>>0>=10|I[b+2|0]!=36)){r=F[b+1|0]-48|0;v=1;i=3}b=i+b|0;H[h+76>>2]=b;p=0;k=F[b|0];j=k-32|0;k:{if(j>>>0>31){i=b;break k}i=b;l=1<>2]=i;p=l|p;k=F[b+1|0];j=k-32|0;if(j>>>0>=32){break k}b=i;l=1<>>0>=10){break n}b=H[h+76>>2];if(I[b+2|0]!=36){break n}H[((F[b+1|0]<<2)+e|0)-192>>2]=10;q=H[((F[b+1|0]<<3)+d|0)-384>>2];v=1;b=b+3|0;break m}if(v){break h}v=0;q=0;if(a){b=H[c>>2];H[c>>2]=b+4;q=H[b>>2]}b=H[h+76>>2]+1|0}H[h+76>>2]=b;if((q|0)>=0){break l}q=0-q|0;p=p|8192;break l}q=f6(h+76|0);if((q|0)<0){break d}b=H[h+76>>2]}i=0;l=-1;s=0;o:{if(I[b|0]!=46){break o}if(I[b+1|0]==42){p:{q:{if(F[b+2|0]-48>>>0>=10){break q}b=H[h+76>>2];if(I[b+3|0]!=36){break q}H[((F[b+2|0]<<2)+e|0)-192>>2]=10;l=H[((F[b+2|0]<<3)+d|0)-384>>2];b=b+4|0;break p}if(v){break h}if(a){b=H[c>>2];H[c>>2]=b+4;l=H[b>>2]}else{l=0}b=H[h+76>>2]+2|0}H[h+76>>2]=b;s=(l^-1)>>>31|0;break o}H[h+76>>2]=b+1;l=f6(h+76|0);b=H[h+76>>2];s=1}while(1){u=i;m=28;if(F[b|0]-123>>>0<4294967238){break c}k=b+1|0;H[h+76>>2]=k;i=F[b|0];b=k;i=I[(i+N(u,58)|0)+95855|0];if(i-1>>>0<8){continue}break}r:{s:{if((i|0)!=27){if(!i){break c}if((r|0)>=0){H[(r<<2)+e>>2]=i;b=(r<<3)+d|0;i=H[b+4>>2];H[h+64>>2]=H[b>>2];H[h+68>>2]=i;break s}if(!a){break f}g6(h- -64|0,i,c,g);k=H[h+76>>2];break r}if((r|0)>=0){break c}}b=0;if(!a){continue e}}j=p&-65537;i=p&8192?j:p;p=0;r=1883;m=t;t:{u:{v:{w:{x:{y:{z:{A:{B:{C:{D:{E:{F:{G:{H:{I:{b=F[k-1|0];b=u?(b&15)==3?b&-33:b:b;switch(b-88|0){case 11:break t;case 9:case 13:case 14:case 15:break u;case 27:break z;case 12:case 17:break C;case 23:break D;case 0:case 32:break E;case 24:break F;case 22:break G;case 29:break H;case 1:case 2:case 3:case 4:case 5:case 6:case 7:case 8:case 10:case 16:case 18:case 19:case 20:case 21:case 25:case 26:case 28:case 30:case 31:break g;default:break I}}J:{switch(b-65|0){case 0:case 4:case 5:case 6:break u;case 2:break x;case 1:case 3:break g;default:break J}}if((b|0)==83){break y}break g}k=H[h+64>>2];j=H[h+68>>2];r=1883;break B}b=0;K:{switch(u&255){case 0:H[H[h+64>>2]>>2]=o;continue e;case 1:H[H[h+64>>2]>>2]=o;continue e;case 2:i=H[h+64>>2];H[i>>2]=o;H[i+4>>2]=o>>31;continue e;case 3:G[H[h+64>>2]>>1]=o;continue e;case 4:F[H[h+64>>2]]=o;continue e;case 6:H[H[h+64>>2]>>2]=o;continue e;case 7:break K;default:continue e}}i=H[h+64>>2];H[i>>2]=o;H[i+4>>2]=o>>31;continue e}l=l>>>0>8?l:8;i=i|8;b=120}n=t;y=b&32;k=H[h+64>>2];j=H[h+68>>2];if(k|j){while(1){n=n-1|0;F[n|0]=y|I[(k&15)+96384|0];z=!j&k>>>0>15|(j|0)!=0;u=j;j=j>>>4|0;k=(u&15)<<28|k>>>4;if(z){continue}break}}if(!(H[h+64>>2]|H[h+68>>2])|!(i&8)){break A}r=(b>>>4|0)+1883|0;p=2;break A}b=t;k=H[h+64>>2];j=H[h+68>>2];if(k|j){while(1){b=b-1|0;F[b|0]=k&7|48;u=!j&k>>>0>7|(j|0)!=0;n=j;j=j>>>3|0;k=(n&7)<<29|k>>>3;if(u){continue}break}}n=b;if(!(i&8)){break A}b=t-n|0;l=(b|0)<(l|0)?l:b+1|0;break A}b=H[h+68>>2];j=b;k=H[h+64>>2];if((b|0)<0){j=0-(j+((k|0)!=0)|0)|0;k=0-k|0;H[h+64>>2]=k;H[h+68>>2]=j;p=1;r=1883;break B}if(i&2048){p=1;r=1884;break B}p=i&1;r=p?1885:1883}n=h6(k,j,t)}if((l|0)<0?s:0){break d}i=s?i&-65537:i;j=H[h+64>>2];b=H[h+68>>2];if(!(l|(j|b)!=0)){n=t;m=n;l=0;break g}b=!(b|j)+(t-n|0)|0;l=(b|0)<(l|0)?l:b;break g}s=(l|0)<0?2147483647:l;k=s;i=(k|0)!=0;b=H[h+64>>2];n=b?b:61569;m=n;b=n;L:{M:{N:{O:{if(!(b&3)|!k){break O}while(1){if(!I[b|0]){break N}k=k-1|0;i=(k|0)!=0;b=b+1|0;if(!(b&3)){break O}if(k){continue}break}}if(!i){break M}}P:{if(!I[b|0]|k>>>0<4){break P}while(1){i=H[b>>2];if((i^-1)&i-16843009&-2139062144){break P}b=b+4|0;k=k-4|0;if(k>>>0>3){continue}break}}if(!k){break M}while(1){if(!I[b|0]){break L}b=b+1|0;k=k-1|0;if(k){continue}break}}b=0}b=b?b-m|0:s;m=b+n|0;if((l|0)>=0){i=j;l=b;break g}i=j;l=b;if(I[m|0]){break d}break g}if(l){m=H[h+64>>2];break w}b=0;i6(a,32,q,0,i);break v}H[h+12>>2]=0;H[h+8>>2]=H[h+64>>2];m=h+8|0;H[h+64>>2]=m;l=-1}b=0;Q:{while(1){j=H[m>>2];if(!j){break Q}j=n6(h+4|0,j);n=(j|0)<0;if(!(n|j>>>0>l-b>>>0)){m=m+4|0;b=b+j|0;if(l>>>0>b>>>0){continue}break Q}break}if(n){break b}}m=61;if((b|0)<0){break c}i6(a,32,q,b,i);if(!b){b=0;break v}l=0;m=H[h+64>>2];while(1){j=H[m>>2];if(!j){break v}j=n6(h+4|0,j);l=j+l|0;if(l>>>0>b>>>0){break v}e6(a,h+4|0,j);m=m+4|0;if(b>>>0>l>>>0){continue}break}}i6(a,32,q,b,i^8192);b=(b|0)<(q|0)?q:b;continue e}if((l|0)<0?s:0){break d}m=61;b=Ra[f|0](a,M[h+64>>3],q,l,i,b)|0;if((b|0)>=0){continue e}break c}F[h+55|0]=H[h+64>>2];l=1;n=x;i=j;break g}i=b+1|0;H[h+76>>2]=i;m=I[b+1|0];b=i;continue}}if(a){break a}if(!v){break f}b=1;while(1){a=H[(b<<2)+e>>2];if(a){g6((b<<3)+d|0,a,c,g);o=1;b=b+1|0;if((b|0)!=10){continue}break a}break}o=1;if(b>>>0>=10){break a}while(1){if(H[(b<<2)+e>>2]){break h}b=b+1|0;if((b|0)!=10){continue}break}break a}m=28;break c}k=m-n|0;l=(l|0)<(k|0)?k:l;if((l|0)>(2147483647-p|0)){break d}m=61;j=l+p|0;b=(j|0)>(q|0)?j:q;if((w|0)<(b|0)){break c}i6(a,32,b,j,i);e6(a,r,p);i6(a,48,b,j,i^65536);i6(a,48,l,k,0);e6(a,n,k);i6(a,32,b,j,i^8192);continue}break}o=0;break a}m=61}H[33811]=m}o=-1}Oa=h+80|0;return o}function aU(a,b,c,d){var e=O(0),f=O(0),g=O(0),h=0,i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=0,x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0);h=Oa-80|0;Oa=h;a:{b:{c:{d:{e:{f:{g:{switch(H[b>>2]+1|0){case 1:g=L[c+20>>2];e=L[c+16>>2];f=O(O(L[b+4>>2]+O(0))*d);L[a+8>>2]=L[c+24>>2]-f;L[a+4>>2]=g-f;L[a>>2]=e-f;e=L[c+20>>2];d=L[c+16>>2];L[a+20>>2]=f+L[c+24>>2];L[a+16>>2]=f+e;L[a+12>>2]=f+d;break a;case 2:m=L[c>>2];j=O(m+m);g=L[c+8>>2];e=L[c+4>>2];f=L[c+12>>2];k=O(f+f);i=O(O(j*g)-O(e*k));f=O(O(m*j)+O(O(f*k)+O(-1)));g=O(O(g*k)+O(j*e));o=O(O(L[c+24>>2]*i)+O(O(L[c+16>>2]*f)+O(g*L[c+20>>2])));n=O(-o);l=O(P(i));e=O(P(f));m=O(P(g));if(!(!(lO(.9999989867210388))|!(mO(0)){k=O(o+O(0));j=O(-8.5070586659632215e37);break f}j=O(n-O(0));i=O(-8.5070586659632215e37);break c}b=eO(.9999989867210388))))){if(g>O(0)){j=O(-8.5070586659632215e37);k=O(8.5070586659632215e37);g=O(o+O(0));break e}i=O(n-O(0));j=O(-8.5070586659632215e37);break c}j=O(-8.5070586659632215e37);k=O(8.5070586659632215e37);if(!(l>O(.9999989867210388))|(!b|!(mO(0)){g=O(8.5070586659632215e37);e=O(o+O(0));break d}g=O(8.5070586659632215e37);e=O(8.5070586659632215e37);i=O(-8.5070586659632215e37);f=O(n-O(0));break b;case 3:f=L[c+20>>2];k=L[c+16>>2];p=L[c>>2];o=O(p+p);g=L[c+8>>2];e=L[c+4>>2];n=L[c+12>>2];l=O(n+n);m=L[b+8>>2];j=L[b+4>>2];i=O(O(O(O(O(P(O(O(o*g)-O(e*l))))*m)+j)+O(0))*d);L[a+8>>2]=L[c+24>>2]-i;q=f;f=O(O(O(j+O(m*O(P(O(O(g*l)+O(o*e))))))+O(0))*d);L[a+4>>2]=q-f;g=O(O(O(j+O(m*O(P(O(O(p*o)+O(O(n*l)+O(-1)))))))+O(0))*d);L[a>>2]=k-g;e=L[c+20>>2];d=L[c+16>>2];L[a+20>>2]=i+L[c+24>>2];L[a+16>>2]=f+e;L[a+12>>2]=g+d;break a;case 4:A=L[c+20>>2];B=L[c+16>>2];x=L[b+4>>2];g=L[c>>2];u=O(g+g);t=L[c+8>>2];o=O(u*t);v=L[c+4>>2];e=O(v+v);q=L[c+12>>2];n=O(e*q);r=O(x*O(o-n));s=O(-r);l=O(e*t);m=O(u*q);y=L[b+8>>2];p=O(O(l+m)*y);i=O(-p);j=O(O(1)-O(g*u));k=O(v*e);z=L[b+12>>2];f=O(O(j-k)*z);e=O(-f);g=L[c+24>>2];e=O(O(O(O((r>s?r:s)+(i>2]=g+e;L[a+8>>2]=g-e;i=O(u*v);e=O(t+t);f=O(q*e);q=O(x*O(i+f));r=O(-q);g=O(t*e);s=O(y*O(j-g));p=O(-s);j=O(z*O(l-m));e=O(-j);e=O(O(O(O((q>r?q:r)+(p>2]=A+e;m=O(x*O(O(O(1)-k)-g));j=O(-m);k=O(y*O(i-f));i=O(-k);f=O(z*O(o+n));g=O(-f);d=O(O(O(O((jg?f:g))+O(0))*d);L[a+12>>2]=B+d;L[a+4>>2]=A-e;L[a>>2]=B-d;break a;case 5:w=H[b+32>>2];if(F[b+36|0]&1){p=L[c+4>>2];n=O(p+p);i=L[c+8>>2];g=O(n*i);f=L[c>>2];o=O(f+f);l=L[c+12>>2];e=O(o*l);t=O(g-e);L[h+68>>2]=t;u=O(g+e);L[h+60>>2]=u;e=O(O(1)-O(f*o));j=O(p*n);v=O(e-j);L[h+72>>2]=v;f=e;e=O(i+i);k=O(i*e);A=O(f-k);L[h+56>>2]=A;i=O(o*i);f=O(n*l);C=O(i+f);L[h+64>>2]=C;g=O(o*p);e=O(e*l);D=O(g-e);L[h+52>>2]=D;B=O(i-f);L[h+48>>2]=B;x=O(g+e);L[h+44>>2]=x;y=O(O(O(1)-j)-k);L[h+40>>2]=y;if(H[b+12>>2]-1065353216|(H[b+8>>2]-1065353216|H[b+4>>2]-1065353216)){bU(h+40|0,b+4|0);v=L[h+72>>2];t=L[h+68>>2];u=L[h+60>>2];A=L[h+56>>2];D=L[h+52>>2];B=L[h+48>>2];x=L[h+44>>2];y=L[h+40>>2];C=L[h+64>>2];m=L[h+76>>2]}b=H[w+56>>2]+N(I[w+55|0],20)|0;f=L[b>>2];g=L[b+4>>2];e=L[b+8>>2];j=O(O(O(f*B)+O(g*u))+O(e*v));k=O(O(O(f*x)+O(g*A))+O(e*t));i=O(O(O(f*y)+O(g*D))+O(e*C));w=I[w+54|0]-1|0;h:{if(!w){e=i;f=k;g=j;break h}b=b+12|0;z=O(O(O(f*D)+O(g*C))+O(e*m));q=z;g=j;f=k;e=i;while(1){r=L[b>>2];s=L[b+4>>2];l=L[b+8>>2];p=O(O(O(D*r)+O(C*s))+O(m*l));q=po?g:o;n=O(O(O(x*r)+O(A*s))+O(t*l));f=f>n?f:n;l=O(O(O(y*r)+O(D*s))+O(C*l));e=e>l?e:l;z=p>z?z:p;j=j>2];n=L[c+24>>2];q=O(e+O(0));e=L[c+16>>2];m=O(q+e);i=O(O(i-O(0))+e);e=O(O(m+i)*O(.5));l=O(d*O(.5));d=O(l*O(m-i));L[a+12>>2]=e+d;L[a>>2]=e-d;e=O(n+O(g+O(0)));d=O(n+O(j-O(0)));j=O(O(e+d)*O(.5));i=O(l*O(e-d));L[a+20>>2]=j+i;g=O(o+O(f+O(0)));d=O(o+O(k-O(0)));e=O(O(g+d)*O(.5));d=O(l*O(g-d));L[a+16>>2]=e+d;L[a+8>>2]=j-i;L[a+4>>2]=e-d;break a}cU(c,w+16|0,b+4|0,h+40|0,h+24|0);j=L[h+40>>2];i=L[h+24>>2];k=L[h+44>>2];e=L[h+28>>2];f=O(O(L[h+32>>2]+O(0))*d);g=L[h+48>>2];L[a+20>>2]=f+g;e=O(O(e+O(0))*d);L[a+16>>2]=k+e;d=O(O(i+O(0))*d);L[a+12>>2]=j+d;L[a+8>>2]=g-f;L[a+4>>2]=k-e;L[a>>2]=j-d;break a;case 6:cU(c,H[b+36>>2]+32|0,b+4|0,h+40|0,h+24|0);j=L[h+40>>2];i=L[h+24>>2];k=L[h+44>>2];e=L[h+28>>2];f=O(O(L[h+32>>2]+O(0))*d);g=L[h+48>>2];L[a+20>>2]=f+g;e=O(O(e+O(0))*d);L[a+16>>2]=k+e;d=O(O(i+O(0))*d);L[a+12>>2]=j+d;L[a+8>>2]=g-f;L[a+4>>2]=k-e;L[a>>2]=j-d;break a;case 7:f=L[b+12>>2];g=L[b+8>>2];e=L[b+16>>2];H[h+60>>2]=0;H[h+64>>2]=1065353216;H[h+52>>2]=0;H[h+56>>2]=0;L[h+48>>2]=e;L[h+44>>2]=g;L[h+40>>2]=f;cU(c,H[b+4>>2]+16|0,h+40|0,h+24|0,h+8|0);j=L[h+24>>2];i=L[h+8>>2];k=L[h+28>>2];e=L[h+12>>2];f=O(O(L[h+16>>2]+O(0))*d);g=L[h+32>>2];L[a+20>>2]=f+g;e=O(O(e+O(0))*d);L[a+16>>2]=k+e;d=O(O(i+O(0))*d);L[a+12>>2]=j+d;L[a+8>>2]=g-f;L[a+4>>2]=k-e;L[a>>2]=j-d;break a;case 0:case 8:break g;default:break a}}o5(H[33808],32,6146,364,57783,0);break a}g=O(8.5070586659632215e37)}e=O(8.5070586659632215e37)}i=O(-8.5070586659632215e37);f=O(-8.5070586659632215e37);break b}k=O(8.5070586659632215e37);g=O(8.5070586659632215e37);e=O(8.5070586659632215e37);f=O(-8.5070586659632215e37)}if(d!=O(1)){n=O(O(e+f)*O(.5));f=O(O(O(e-f)*O(.5))*d);e=O(n+f);l=O(O(g+i)*O(.5));i=O(O(O(g-i)*O(.5))*d);g=O(l+i);m=O(O(k+j)*O(.5));d=O(O(O(k-j)*O(.5))*d);k=O(m+d);i=O(l-i);j=O(m-d);f=O(n-f)}L[a+12>>2]=k;L[a+8>>2]=f;L[a+4>>2]=i;L[a>>2]=j;L[a+20>>2]=e;L[a+16>>2]=g}Oa=h+80|0}function mr(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=O(0),k=O(0),l=0,m=0,n=O(0),o=0,p=0,q=0,r=O(0),s=O(0),t=O(0);l=Oa-16|0;Oa=l;a:{if(I[a+4801|0]){o5(H[33808],2,9281,2838,59337,0);break a}i=H[a+5932>>2];f=H[a+5936>>2];if(f>>>0>=4){d=f>>>2|0;o=d-1|0;q=d>>>0>1?d:1;m=f&3;p=f-5|0;d=0;while(1){e=d;d=d+4|0;b:{if(g>>>0>>0|f>>>0<=d>>>0){break b}h=0;c=d;if(m){while(1){c=c+1|0;h=h+1|0;if((m|0)!=(h|0)){continue}break}}if(p-(g<<2)>>>0<3){break b}while(1){c=c+4|0;if((f|0)!=(c|0)){continue}break}}c:{d:{e:{f:{e=e<<2;c=H[e+i>>2];switch(Ra[H[H[c>>2]+24>>2]](c)|0){case 0:break e;case 1:break f;default:break d}}L[c+272>>2]=L[c+272>>2]-L[b>>2];L[c+276>>2]=L[c+276>>2]-L[b+4>>2];L[c+280>>2]=L[c+280>>2]-L[b+8>>2];ZF(c- -64|0,b);break c}L[c+96>>2]=L[c+96>>2]-L[b>>2];L[c+100>>2]=L[c+100>>2]-L[b+4>>2];L[c+104>>2]=L[c+104>>2]-L[b+8>>2];break c}L[c+272>>2]=L[c+272>>2]-L[b>>2];L[c+276>>2]=L[c+276>>2]-L[b+4>>2];L[c+280>>2]=L[c+280>>2]-L[b+8>>2];ZF(c- -64|0,b)}g:{h:{i:{j:{c=H[i+(e|4)>>2];switch(Ra[H[H[c>>2]+24>>2]](c)|0){case 1:break i;case 0:break j;default:break h}}L[c+96>>2]=L[c+96>>2]-L[b>>2];L[c+100>>2]=L[c+100>>2]-L[b+4>>2];L[c+104>>2]=L[c+104>>2]-L[b+8>>2];break g}L[c+272>>2]=L[c+272>>2]-L[b>>2];L[c+276>>2]=L[c+276>>2]-L[b+4>>2];L[c+280>>2]=L[c+280>>2]-L[b+8>>2];ZF(c- -64|0,b);break g}L[c+272>>2]=L[c+272>>2]-L[b>>2];L[c+276>>2]=L[c+276>>2]-L[b+4>>2];L[c+280>>2]=L[c+280>>2]-L[b+8>>2];ZF(c- -64|0,b)}k:{l:{m:{n:{c=H[i+(e|8)>>2];switch(Ra[H[H[c>>2]+24>>2]](c)|0){case 1:break m;case 0:break n;default:break l}}L[c+96>>2]=L[c+96>>2]-L[b>>2];L[c+100>>2]=L[c+100>>2]-L[b+4>>2];L[c+104>>2]=L[c+104>>2]-L[b+8>>2];break k}L[c+272>>2]=L[c+272>>2]-L[b>>2];L[c+276>>2]=L[c+276>>2]-L[b+4>>2];L[c+280>>2]=L[c+280>>2]-L[b+8>>2];ZF(c- -64|0,b);break k}L[c+272>>2]=L[c+272>>2]-L[b>>2];L[c+276>>2]=L[c+276>>2]-L[b+4>>2];L[c+280>>2]=L[c+280>>2]-L[b+8>>2];ZF(c- -64|0,b)}o:{p:{q:{r:{c=H[i+(e|12)>>2];switch(Ra[H[H[c>>2]+24>>2]](c)|0){case 1:break q;case 0:break r;default:break p}}L[c+96>>2]=L[c+96>>2]-L[b>>2];L[c+100>>2]=L[c+100>>2]-L[b+4>>2];L[c+104>>2]=L[c+104>>2]-L[b+8>>2];break o}L[c+272>>2]=L[c+272>>2]-L[b>>2];L[c+276>>2]=L[c+276>>2]-L[b+4>>2];L[c+280>>2]=L[c+280>>2]-L[b+8>>2];ZF(c- -64|0,b);break o}L[c+272>>2]=L[c+272>>2]-L[b>>2];L[c+276>>2]=L[c+276>>2]-L[b+4>>2];L[c+280>>2]=L[c+280>>2]-L[b+8>>2];ZF(c- -64|0,b)}g=g+1|0;if((q|0)!=(g|0)){continue}break}}if(d>>>0>>0){while(1){s:{t:{u:{v:{c=H[i+(d<<2)>>2];switch(Ra[H[H[c>>2]+24>>2]](c)|0){case 0:break u;case 1:break v;default:break t}}L[c+272>>2]=L[c+272>>2]-L[b>>2];L[c+276>>2]=L[c+276>>2]-L[b+4>>2];L[c+280>>2]=L[c+280>>2]-L[b+8>>2];ZF(c- -64|0,b);break s}L[c+96>>2]=L[c+96>>2]-L[b>>2];L[c+100>>2]=L[c+100>>2]-L[b+4>>2];L[c+104>>2]=L[c+104>>2]-L[b+8>>2];break s}L[c+272>>2]=L[c+272>>2]-L[b>>2];L[c+276>>2]=L[c+276>>2]-L[b+4>>2];L[c+280>>2]=L[c+280>>2]-L[b+8>>2];ZF(c- -64|0,b)}d=d+1|0;if((f|0)!=(d|0)){continue}break}}if(H[a+5980>>2]){f=H[a+5948>>2];e=0;while(1){c=H[f+(e<<2)>>2];g=H[(Ra[H[H[c>>2]+100>>2]](c)|0)+84>>2];h=0;if(Ra[H[H[c>>2]+76>>2]](c)|0){while(1){w:{x:{y:{z:{d=H[g+(h<<2)>>2];switch(Ra[H[H[d>>2]+24>>2]](d)|0){case 0:break y;case 1:break z;default:break x}}L[d+272>>2]=L[d+272>>2]-L[b>>2];L[d+276>>2]=L[d+276>>2]-L[b+4>>2];L[d+280>>2]=L[d+280>>2]-L[b+8>>2];ZF(d- -64|0,b);break w}L[d+96>>2]=L[d+96>>2]-L[b>>2];L[d+100>>2]=L[d+100>>2]-L[b+4>>2];L[d+104>>2]=L[d+104>>2]-L[b+8>>2];break w}L[d+272>>2]=L[d+272>>2]-L[b>>2];L[d+276>>2]=L[d+276>>2]-L[b+4>>2];L[d+280>>2]=L[d+280>>2]-L[b+8>>2];ZF(d- -64|0,b)}h=h+1|0;if(Ra[H[H[c>>2]+76>>2]](c)>>>0>h>>>0){continue}break}}e=e+1|0;if(e>>>0>2]){continue}break}}g=0;h=0;f=a+32|0;d=H[f+976>>2];m=H[d+1816>>2];c=H[m+12>>2];e=c&2147483647;A:{if(!e){break A}j=L[b+8>>2];k=L[b+4>>2];n=L[b>>2];i=H[m+4>>2];o=c&1;c=0;if((e|0)!=1){q=e-o|0;while(1){p=c<<5;e=p+i|0;L[e+16>>2]=L[e+16>>2]-n;L[e+20>>2]=L[e+20>>2]-k;L[e+24>>2]=L[e+24>>2]-j;e=i+(p|32)|0;L[e+16>>2]=L[e+16>>2]-n;L[e+20>>2]=L[e+20>>2]-k;L[e+24>>2]=L[e+24>>2]-j;c=c+2|0;g=g+2|0;if((q|0)!=(g|0)){continue}break}}if(!o){break A}c=i+(c<<5)|0;L[c+16>>2]=L[c+16>>2]-n;L[c+20>>2]=L[c+20>>2]-k;L[c+24>>2]=L[c+24>>2]-j}F[m+20|0]=1;n=L[d+1140>>2];r=L[d+1136>>2];s=L[d+1128>>2];t=L[d+1132>>2];B:{C:{if(!(!(s!=O(-8.5070586659632215e37)|t!=O(-8.5070586659632215e37))&r==O(-8.5070586659632215e37))){j=L[d+1148>>2];k=L[d+1144>>2];break C}j=L[d+1148>>2];k=L[d+1144>>2];if(n!=O(8.5070586659632215e37)|k!=O(8.5070586659632215e37)){break C}if(j==O(8.5070586659632215e37)){break B}}L[d+1128>>2]=s-L[b>>2];L[d+1132>>2]=t-L[b+4>>2];L[d+1136>>2]=r-L[b+8>>2];L[d+1140>>2]=n-L[b>>2];L[d+1144>>2]=k-L[b+4>>2];L[d+1148>>2]=j-L[b+8>>2]}c=H[f+1140>>2];e=H[c+8>>2];if(e){g=H[c+4>>2];while(1){d=g+N(h,24)|0;L[d>>2]=L[d>>2]-L[b>>2];L[d+4>>2]=L[d+4>>2]-L[b+4>>2];L[d+8>>2]=L[d+8>>2]-L[b+8>>2];L[d+12>>2]=L[d+12>>2]-L[b>>2];L[d+16>>2]=L[d+16>>2]-L[b+4>>2];L[d+20>>2]=L[d+20>>2]-L[b+8>>2];h=h+1|0;if((e|0)!=(h|0)){continue}break}}F[c+16|0]=1;d=H[f+980>>2];c=H[d+272>>2];Ra[H[H[c>>2]+72>>2]](c,b,H[H[d+276>>2]+4>>2],H[H[d+192>>2]+4>>2]);F[d+364|0]=1;e=H[f+1132>>2];D:{if(!e){break D}h=H[f+1100>>2];d=0;if((e|0)!=1){f=e&-2;c=0;while(1){g=d<<2;i=H[H[g+h>>2]+28>>2];Ra[H[H[i>>2]+16>>2]](i,b);g=H[H[h+(g|4)>>2]+28>>2];Ra[H[H[g>>2]+16>>2]](g,b);d=d+2|0;c=c+2|0;if((f|0)!=(c|0)){continue}break}}if(!(e&1)){break D}d=H[H[h+(d<<2)>>2]+28>>2];Ra[H[H[d>>2]+16>>2]](d,b)}d=a+5584|0;c=H[d>>2];Ra[H[H[c>>2]+48>>2]](c,b);c=H[d+36>>2];Ra[H[H[c>>2]+48>>2]](c,b);d=H[d+72>>2];Ra[H[H[d>>2]+44>>2]](d,b);j=L[b>>2];k=L[b+4>>2];L[l+8>>2]=-L[b+8>>2];L[l+4>>2]=-k;L[l>>2]=-j;nr(a+5828|0,l)}Oa=l+16|0}function zY(a,b,c,d,e,f){var g=0,h=O(0),i=O(0),j=0,k=O(0),l=O(0),m=O(0),n=0,o=0,p=O(0),q=0,r=O(0),s=O(0),t=0,u=0,v=O(0),w=O(0),x=O(0),y=O(0),z=0,A=0,B=O(0),C=O(0),D=O(0),E=O(0),F=O(0),G=O(0),J=O(0),K=O(0),M=0,P=0,Q=O(0),R=O(0),S=O(0),T=O(0),U=O(0),V=O(0),W=O(0);j=Oa-96|0;a:{b:{q=H[a+4096>>2]-b|0;if(q>>>0>=5){g=(b<<6)+a|0;if((c|0)==(q|0)){r=L[g+12>>2];e=0;if(c>>>0<2){break a}d=c-1|0;f=d&3;j=0;if(c-2>>>0<3){d=1;l=r;break b}M=d&-4;l=r;d=1;while(1){h=L[((d<<6)+g|0)+12>>2];q=h>2];l=q?h:l;t=k>2];l=t?k:l;o=h>2];l=o?h:l;u=k>2]=1053028119;H[c+92>>2]=0;H[c+80>>2]=0;H[c+84>>2]=-1083407522;o=c- -64|0;H[o>>2]=1064076126;H[o+4>>2]=0;H[c+56>>2]=0;H[c+60>>2]=-1094455528;H[c+40>>2]=1064076126;H[c+44>>2]=0;H[c+32>>2]=0;H[c+36>>2]=1053028117;H[c+16>>2]=1053028118;H[c+20>>2]=0;H[c+72>>2]=-1087044365;H[c+76>>2]=1060439283;H[c+48>>2]=-1287930578;H[c+52>>2]=1065353216;H[c+24>>2]=1060439283;H[c+28>>2]=1060439283;H[c+8>>2]=0;H[c+12>>2]=1064076126;H[c>>2]=1065353216;H[c+4>>2]=0;Q=L[d+28>>2];R=L[d+16>>2];S=L[d+24>>2];T=L[d+12>>2];U=L[d+4>>2];V=L[d>>2];d=0;l=O(-3.4028234663852886e38);r=O(3.4028234663852886e38);m=O(3.4028234663852886e38);v=O(3.4028234663852886e38);s=O(3.4028234663852886e38);y=O(3.4028234663852886e38);p=O(3.4028234663852886e38);w=O(3.4028234663852886e38);x=O(3.4028234663852886e38);C=O(-3.4028234663852886e38);D=O(-3.4028234663852886e38);E=O(-3.4028234663852886e38);F=O(-3.4028234663852886e38);G=O(-3.4028234663852886e38);J=O(-3.4028234663852886e38);K=O(-3.4028234663852886e38);while(1){c=N(I[d+f|0],12)+e|0;k=L[c>>2];i=L[c+4>>2];B=L[c+8>>2];h=O(O(O(k*V)+O(i*T))+O(B*S));k=O(O(O(k*U)+O(i*R))+O(B*Q));i=O(O(h*O(-.9238795042037964))+O(k*O(.38268348574638367)));l=ir?r:i;B=O(k*O(.7071067690849304));i=O(O(h*O(-.7071067690849304))+B);C=im?m:i;W=O(k*O(.9238795042037964));i=O(O(h*O(-.38268351554870605))+W);D=iv?v:i;i=O(O(h*O(-4.371138828673793e-8))+k);E=is?s:i;i=O(O(h*O(.3826834261417389))+W);F=iy?y:i;i=O(O(h*O(.7071067690849304))+B);G=ip?p:i;i=O(O(h*O(.9238795042037964))+O(k*O(.3826834559440613)));J=iw?w:i;h=O(h+O(k*O(0)));K=hx?x:h;d=d+1|0;if((q|0)!=(d|0)){continue}break}h=O(J-w);k=O(K-x);c=h>k;d=c;p=O(G-p);h=c?h:k;c=p>h;d=c?2:d;k=O(F-y);h=c?p:h;c=k>h;d=c?3:d;s=O(E-s);h=c?k:h;c=s>h;d=c?4:d;k=O(D-v);h=c?s:h;c=k>h;d=c?5:d;m=O(C-m);h=c?k:h;c=m>h;c=j+N(O(l-r)>(c?m:h)?7:c?6:d,12)|0;v=L[c>>2];s=L[c+4>>2];y=O(-s);M=q>>>0>1?q:1;h=O(3.4028234663852886e38);k=O(-3.4028234663852886e38);d=0;j=0;c=0;l=O(-3.4028234663852886e38);r=O(3.4028234663852886e38);while(1){o=N(I[d+f|0],12)+e|0;m=L[o>>2];p=L[o+4>>2];w=L[o+8>>2];x=O(O(O(m*V)+O(p*T))+O(w*S));p=O(O(O(m*U)+O(p*R))+O(w*Q));m=O(O(y*x)+O(v*p));o=m>k;k=o?m:k;z=h>m;h=z?m:h;m=O(O(v*x)+O(s*p));u=m>l;l=u?m:l;A=m>>0>1?q:1;j=0;e=0;while(1){c:{if(!((j|0)==(n|0)|(f|0)==(j|0)|(j|0)==(t|0))){if((j|0)!=(o|0)){break c}}c=(e<<6)+g|0;d=(j<<6)+g|0;L[c>>2]=L[d>>2];L[c+4>>2]=L[d+4>>2];L[c+8>>2]=L[d+8>>2];L[c+12>>2]=L[d+12>>2];L[c+16>>2]=L[d+16>>2];L[c+20>>2]=L[d+20>>2];L[c+24>>2]=L[d+24>>2];L[c+28>>2]=L[d+28>>2];L[c+32>>2]=L[d+32>>2];L[c+36>>2]=L[d+36>>2];L[c+40>>2]=L[d+40>>2];u=H[d+48>>2];H[c+44>>2]=H[d+44>>2];H[c+48>>2]=u;u=H[d+56>>2];H[c+52>>2]=H[d+52>>2];H[c+56>>2]=u;H[c+60>>2]=H[d+60>>2];e=e+1|0}j=j+1|0;if((q|0)!=(j|0)){continue}break}H[a+4096>>2]=b+e}return}if(!f){break a}while(1){h=L[((d<<6)+g|0)+12>>2];n=h>2]=r;d=c<<14&1073725440;f=d>>>16|0;c=(f<<6)+g|0;L[g+64>>2]=L[c>>2];L[g+68>>2]=L[c+4>>2];L[g+72>>2]=L[c+8>>2];L[g+76>>2]=L[c+12>>2];L[g+80>>2]=L[c+16>>2];L[g+84>>2]=L[c+20>>2];L[g+88>>2]=L[c+24>>2];L[g+92>>2]=L[c+28>>2];L[g+96>>2]=L[c+32>>2];L[g+100>>2]=L[c+36>>2];L[g+104>>2]=L[c+40>>2];j=H[c+48>>2];H[g+108>>2]=H[c+44>>2];H[g+112>>2]=j;j=H[c+56>>2];H[g+116>>2]=H[c+52>>2];H[g+120>>2]=j;H[g+124>>2]=H[c+60>>2];j=d>>>15|0;c=(j<<6)+g|0;L[g+128>>2]=L[c>>2];L[g+132>>2]=L[c+4>>2];L[g+136>>2]=L[c+8>>2];L[g+140>>2]=L[c+12>>2];L[g+144>>2]=L[c+16>>2];L[g+148>>2]=L[c+20>>2];L[g+152>>2]=L[c+24>>2];L[g+156>>2]=L[c+28>>2];L[g+160>>2]=L[c+32>>2];L[g+164>>2]=L[c+36>>2];L[g+168>>2]=L[c+40>>2];n=H[c+48>>2];H[g+172>>2]=H[c+44>>2];H[g+176>>2]=n;n=H[c+56>>2];H[g+180>>2]=H[c+52>>2];H[g+184>>2]=n;H[g+188>>2]=H[c+60>>2];n=N(d,3)>>>16|0;c=(n<<6)+g|0;L[g+192>>2]=L[c>>2];L[g+196>>2]=L[c+4>>2];L[g+200>>2]=L[c+8>>2];L[g+204>>2]=L[c+12>>2];L[g+208>>2]=L[c+16>>2];L[g+212>>2]=L[c+20>>2];L[g+216>>2]=L[c+24>>2];L[g+220>>2]=L[c+28>>2];L[g+224>>2]=L[c+32>>2];L[g+228>>2]=L[c+36>>2];L[g+232>>2]=L[c+40>>2];d=H[c+48>>2];H[g+236>>2]=H[c+44>>2];H[g+240>>2]=d;d=H[c+56>>2];H[g+244>>2]=H[c+52>>2];H[g+248>>2]=d;H[g+252>>2]=H[c+60>>2];d=4;if(!((e|0)==(n|0)|(e|0)==(j|0)|(!e|(e|0)==(f|0)))){c=(e<<6)+g|0;L[g+256>>2]=L[c>>2];L[g+260>>2]=L[c+4>>2];L[g+264>>2]=L[c+8>>2];L[g+268>>2]=L[c+12>>2];L[g+272>>2]=L[c+16>>2];L[g+276>>2]=L[c+20>>2];L[g+280>>2]=L[c+24>>2];L[g+284>>2]=L[c+28>>2];L[g+288>>2]=L[c+32>>2];L[g+292>>2]=L[c+36>>2];L[g+296>>2]=L[c+40>>2];d=H[c+48>>2];H[g+300>>2]=H[c+44>>2];H[g+304>>2]=d;d=H[c+56>>2];H[g+308>>2]=H[c+52>>2];H[g+312>>2]=d;H[g+316>>2]=H[c+60>>2];d=5}H[a+4096>>2]=b+d}function yB(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=O(0),o=0,p=0,q=0,r=0,s=O(0),t=O(0),u=0,w=0,x=O(0),y=O(0),z=O(0),A=O(0),C=0,D=0,E=O(0);w=Oa-10288|0;Oa=w;d=a+16|0;a:{if(!I[d+7632|0]){break a}F[d+7632|0]=0;e=H[d>>2];if(!e){H[d+636>>2]=0;break a}a=e<<2;if(a){b=H[33808];m=Ra[H[H[b+12>>2]+8>>2]](b+12|0,a,20591,6440,1093)|0}h=H[d+12>>2];a=0;b=0;i=e-1|0;if(i>>>0>=3){j=e&-4;while(1){f=(b<<3)+h|0;H[(b<<2)+m>>2]=H[f>>2];H[f>>2]=b;f=b|1;g=(f<<3)+h|0;H[(f<<2)+m>>2]=H[g>>2];H[g>>2]=f;f=b|2;g=(f<<3)+h|0;H[(f<<2)+m>>2]=H[g>>2];H[g>>2]=f;f=b|3;g=(f<<3)+h|0;H[(f<<2)+m>>2]=H[g>>2];H[g>>2]=f;b=b+4|0;c=c+4|0;if((j|0)!=(c|0)){continue}break}}f=e&3;if(f){while(1){c=(b<<3)+h|0;H[(b<<2)+m>>2]=H[c>>2];H[c>>2]=b;b=b+1|0;a=a+1|0;if((f|0)!=(a|0)){continue}break}}b:{if(e>>>0>256){a=0;f=0;b=e<<3;if(b){f=H[33808];f=Ra[H[H[f+12>>2]+8>>2]](f+12|0,b,20591,6440,1108)|0}b=e<<5;if(b){a=H[33808];a=Ra[H[H[a+12>>2]+8>>2]](a+12|0,b,20591,6440,1109)|0}h=H[d+12>>2];break b}f=w- -8192|0;a=w}g=H[d+8>>2];j=e-1|0;b=g+N(j,24)|0;s=L[b+12>>2];t=L[b+8>>2];x=L[b+4>>2];y=L[b>>2];z=L[b+20>>2];A=L[b+16>>2];if(j){b=0;while(1){c=g+N(b,24)|0;n=L[c+12>>2];s=n>2];t=n>t?t:n;n=L[c+4>>2];x=n>x?x:n;n=L[c>>2];y=n>y?y:n;n=L[c+20>>2];z=n>2];A=n>2]=n;E=O(O(A-x)*O(.5));L[d+676>>2]=E;L[d+672>>2]=O(s-y)*O(.5);L[d+664>>2]=O(z+t)*O(.5);L[d+660>>2]=O(A+x)*O(.5);L[d+656>>2]=O(s+y)*O(.5);o=O(P(E))>>0>=3){l=e&-4;j=0;while(1){i=o<<2;L[(b<<2)+f>>2]=L[i+(g+N(b,24)|0)>>2];k=b|1;L[(k<<2)+f>>2]=L[i+(g+N(k,24)|0)>>2];k=b|2;L[(k<<2)+f>>2]=L[i+(g+N(k,24)|0)>>2];k=b|3;L[(k<<2)+f>>2]=L[i+(g+N(k,24)|0)>>2];b=b+4|0;j=j+4|0;if((l|0)!=(j|0)){continue}break}}j=e&3;if(j){while(1){L[(b<<2)+f>>2]=L[(g+N(b,24)|0)+(o<<2)>>2];b=b+1|0;c=c+1|0;if((j|0)!=(c|0)){continue}break}}l=OT(w+10240|0);j=H[TT(l,f,e)+8>>2];c=0;while(1){k=H[j>>2];i=g+N(k,24)|0;t=L[i+4>>2];x=L[i+16>>2];y=L[i+8>>2];z=L[i+20>>2];A=L[i>>2];b=(c<<5)+a|0;s=L[i+12>>2];L[b+28>>2]=O(O(0)-s)*O(.5);L[b+16>>2]=O(s-A)*O(.5);L[b+12>>2]=O(s+O(0))*O(.5);L[b>>2]=O(A+s)*O(.5);L[b+24>>2]=O(z-y)*O(.5);L[b+20>>2]=O(x-t)*O(.5);L[b+8>>2]=O(y+z)*O(.5);L[b+4>>2]=O(t+x)*O(.5);i=(k<<3)+h|0;k=H[i+4>>2];b=(c<<3)+f|0;H[b>>2]=H[i>>2];H[b+4>>2]=k;j=j+4|0;c=c+1|0;if((e|0)!=(c|0)){continue}break}PT(l);H[d+644>>2]=o;H[d+636>>2]=e;b=H[d+640>>2];if(!(b>>>0>=e>>>0&e>>>0>=b>>>1>>>0)){b=e|e>>>1;b=b>>>2|b;b=b>>>4|b;b=b>>>8|b;b=(b>>>16|b)+1|0;H[d+640>>2]=b;c=H[d+24>>2];if(c){h=H[33808];Ra[H[H[h+12>>2]+12>>2]](h+12|0,c)}c=H[d+20>>2];if(c){h=H[33808];Ra[H[H[h+12>>2]+12>>2]](h+12|0,c)}c=b<<5;if(c){h=H[33808];u=Ra[H[H[h+12>>2]+8>>2]](h+12|0,c,20591,6440,484)|0}else{u=0}H[d+20>>2]=u;b=(b<<3)+15&-16;if(b){c=H[33808];u=Ra[H[H[c+12>>2]+8>>2]](c+12|0,b,20591,6440,485)|0}else{u=0}H[d+24>>2]=u}b=0;j=d+688|0;c=H[d+644>>2];nB(j,L[d+656>>2],L[(d+656|0)+((c|0)==1?8:4)>>2],e,a,f,H[d+20>>2],H[d+24>>2],0,c);i=d+912|0;oB(a,f,j,i,H[d+20>>2],H[d+24>>2],H[d+644>>2]);c=H[d+708>>2];oB(a,f,i,d+2032|0,H[d+20>>2]+(c<<5)|0,H[d+24>>2]+(c<<3)|0,H[d+644>>2]);o=d+1136|0;c=H[d+712>>2];oB(a,f,o,d+3152|0,H[d+20>>2]+(c<<5)|0,H[d+24>>2]+(c<<3)|0,H[d+644>>2]);l=d+1360|0;c=H[d+716>>2];oB(a,f,l,d+4272|0,H[d+20>>2]+(c<<5)|0,H[d+24>>2]+(c<<3)|0,H[d+644>>2]);k=d+1584|0;c=H[d+720>>2];oB(a,f,k,d+5392|0,H[d+20>>2]+(c<<5)|0,H[d+24>>2]+(c<<3)|0,H[d+644>>2]);q=d+1808|0;c=H[d+724>>2];oB(a,f,q,d+6512|0,H[d+20>>2]+(c<<5)|0,H[d+24>>2]+(c<<3)|0,H[d+644>>2]);h=e>>>0>1?e:1;r=H[d+20>>2];p=H[d+644>>2]<<2;while(1){c=r+(b<<5)|0;g=c+p|0;s=L[g>>2];t=L[g+16>>2];g=(B(O(s+t)),v(2));H[c+28>>2]=(g|0)>=0?g|-2147483648:g^-1;u=c;c=(B(O(s-t)),v(2));H[u+12>>2]=(c|0)>=0?c|-2147483648:c^-1;b=b+1|0;if((h|0)!=(b|0)){continue}break}c:{if(e>>>0<=256){break c}if(a){b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,a)}if(!f){break c}a=H[33808];Ra[H[H[a+12>>2]+12>>2]](a+12|0,f)}a=H[d+16>>2];f=H[d+12>>2];g=H[d+24>>2];b=0;if(e>>>0>=2){r=h&-2;c=0;while(1){p=g+(b<<3)|0;C=H[p>>2];D=C<<2;e=H[D+m>>2];H[p>>2]=e;H[f+(C<<3)>>2]=e;if(a){H[a+D>>2]=b}p=b|1;C=g+(p<<3)|0;D=H[C>>2];u=D<<2;e=H[u+m>>2];H[C>>2]=e;H[f+(D<<3)>>2]=e;if(a){H[a+u>>2]=p}b=b+2|0;c=c+2|0;if((r|0)!=(c|0)){continue}break}}d:{if(!(h&1)){break d}c=g+(b<<3)|0;h=H[c>>2];g=h<<2;e=H[g+m>>2];H[c>>2]=e;H[f+(h<<3)>>2]=e;if(!a){break d}H[a+g>>2]=b}a=H[33808];Ra[H[H[a+12>>2]+12>>2]](a+12|0,m);pB(j);pB(i);pB(o);pB(l);pB(k);pB(q);f=0;while(1){c=0;while(1){b=0;a=(N(f,1120)+d|0)+N(c,224)|0;e:{if((((H[a+2036>>2]+H[a+2032>>2]|0)+H[a+2040>>2]|0)+H[a+2044>>2]|0)+H[a+2048>>2]>>>0<=15){b=a+2248|0;H[b>>2]=1183336072;H[b+4>>2]=1183336072;a=a+2240|0;H[a>>2]=1183336072;H[a+4>>2]=1183336072;break e}while(1){H[w+10284>>2]=w+10240;e=H[w+10284>>2];m=H[e>>2]&2147483640;h=H[e+4>>2]&2147483640|1;g=m>>>0>h>>>0;j=g?m:h;i=H[e+8>>2]&2147483640|2;o=j>>>0>i>>>0;l=o?j:i;k=H[e+12>>2]&2147483640|3;q=l>>>0>k>>>0;r=q?l:k;e=H[e+16>>2]&2147483640|4;p=r>>>0>e>>>0;m=g?h:m;h=o?i:j;g=m>>>0>h>>>0;j=g?m:h;i=q?k:l;o=j>>>0>i>>>0;l=o?j:i;k=p?e:r;q=l>>>0>k>>>0;e=p?r:e;r=q?l:k;p=e>>>0>>0;m=g?h:m;h=o?i:j;g=m>>>0>h>>>0;j=g?m:h;i=q?k:l;o=j>>>0>i>>>0;l=p?e:r;k=o?j:i;q=l>>>0>>0;m=g?h:m;h=o?i:j;g=m>>>0>h>>>0;j=q?l:k;i=g?m:h;o=j>>>0>>0;e=p?r:e;l=q?k:l;k=e>>>0>>0;q=k?e:l;r=o?i:j;p=q>>>0>>0;e=k?l:e;l=p?r:q;k=e>>>0>>0;G[(a+(b<<1)|0)+2240>>1]=(k?l:e)<<12&28672|((k?e:l)<<9&3584|((p?q:r)<<6&448|((o?j:i)<<3&56|(g?h:m)&7)));b=b+1|0;if((b|0)!=8){continue}break}}c=c+1|0;if((c|0)!=5){continue}break}f=f+1|0;if((f|0)!=5){continue}break}}Oa=w+10288|0}function p0(a,b,c,d,e,f,g,h,i){var j=0,k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),F=O(0),G=O(0),I=O(0),J=O(0),K=O(0),M=O(0),N=O(0),P=O(0),Q=O(0),R=O(0),S=O(0),T=O(0),U=O(0),V=O(0),X=O(0),Y=O(0),Z=O(0),_=O(0),$=O(0),aa=O(0),ba=O(0),ca=0,da=O(0),ea=O(0),fa=O(0),ga=O(0);j=Oa-112|0;Oa=j;y=L[b>>2];P=L[c>>2];M=L[b+4>>2];E=L[c+4>>2];C=L[b+8>>2];F=L[c+8>>2];H[j+108>>2]=0;z=O(F-C);L[j+104>>2]=z;S=O(E-M);L[j+100>>2]=S;q=O(P-y);L[j+96>>2]=q;r=L[d>>2];A=L[e>>2];G=L[d+4>>2];I=L[e+4>>2];J=L[d+8>>2];v=L[e+8>>2];H[j+92>>2]=0;k=O(v-J);L[j+88>>2]=k;l=O(I-G);L[j+84>>2]=l;n=O(A-r);L[j+80>>2]=n;s=L[f>>2];Q=L[f+4>>2];B=L[f+8>>2];H[j+76>>2]=0;t=O(B-J);L[j+72>>2]=t;w=O(Q-G);L[j+68>>2]=w;D=O(s-r);L[j+64>>2]=D;H[j+60>>2]=0;L[j+56>>2]=B-v;L[j+52>>2]=Q-I;L[j+48>>2]=s-A;s=O(O(O(n*n)+O(l*l))+O(k*k));Q=O(O(O(D*D)+O(w*w))+O(t*t));A=O(O(O(n*D)+O(l*w))+O(k*t));I=O(O(1)/O(O(s*Q)-O(A*A)));B=O(O(n*w)-O(D*l));K=O(O(l*t)-O(w*k));R=O(O(k*D)-O(t*n));v=O(O(1)/O(W(O(O(B*B)+O(O(K*K)+O(R*R))))));a:{b:{o=O(C-J);C=O(B*v);V=O(y-r);y=O(K*v);aa=O(M-G);M=O(R*v);v=O(O(o*C)+O(O(V*y)+O(aa*M)));r=O(O(O(F-J)*C)+O(O(O(P-r)*y)+O(O(E-G)*M)));if(!(O(v*r)>2];P=L[d>>2];R=L[b+8>>2];S=L[b+4>>2];q=L[b>>2];break b}E=O(O(O(-1)/O(O(C*z)+O(O(y*q)+O(S*M))))*v);R=L[b+8>>2];F=O(O(O(z*E)+R)-J);q=L[b>>2];P=L[d>>2];z=O(O(O(E*L[j+96>>2])+q)-P);S=L[b+4>>2];G=L[d+4>>2];B=O(O(O(E*L[j+100>>2])+S)-G);K=O(O(F*k)+O(O(z*n)+O(B*l)));z=O(O(F*t)+O(O(z*D)+O(w*B)));F=O(I*O(O(Q*K)-O(A*z)));if(!(F>=O(-1.1920928955078125e-7))|!(F<=O(1.0000001192092896))){break b}z=O(I*O(O(s*z)-O(A*K)));if(!(z>=O(-1.1920928955078125e-7))|!(z<=O(1.0000001192092896))|!(O(F+z)>2]=E;L[h>>2]=F;L[i>>2]=z;H[a>>2]=0;break a}F=O(r*r);z=O(v*v);E=O(O(L[c>>2]-O(y*r))-P);B=O(O(L[c+4>>2]-O(M*r))-G);r=O(O(L[c+8>>2]-O(C*r))-J);K=O(O(O(E*n)+O(B*l))+O(r*k));r=O(O(O(E*D)+O(B*w))+O(r*t));B=O(I*O(O(Q*K)-O(A*r)));K=O(I*O(O(s*r)-O(A*K)));f=B>=O(-1.1920928955078125e-7)&B<=O(1.0000001192092896)&(K>=O(-1.1920928955078125e-7)&K<=O(1.0000001192092896))&O(B+K)=O(-1.1920928955078125e-7)&R<=O(1.0000001192092896)&(S>=O(-1.1920928955078125e-7)&S<=O(1.0000001192092896))&O(R+S)>2]=b?O(0):O(1);L[h>>2]=b?R:B;L[i>>2]=b?S:K;L[a>>2]=b?z:F;break a}c=j+80|0;I=L[c+8>>2];da=L[e+8>>2];ea=L[e>>2];fa=L[e+4>>2];v=L[j+56>>2];r=L[j+48>>2];G=L[j+52>>2];e=j- -64|0;C=L[e+8>>2];y=L[e>>2];M=L[e+4>>2];k=L[j+104>>2];l=L[j+96>>2];n=L[j+100>>2];s=O(O(k*k)+O(O(l*l)+O(n*n)));q=O(O(1)/s);X=L[c+8>>2];t=L[c>>2];w=L[c+4>>2];x=O(O(k*X)+O(O(l*t)+O(n*w)));ba=O(O(t*t)+O(w*w));p=O(O(X*X)+ba);m=O(O(s*p)-O(x*x));c=j+32|0;V=x;D=L[b+8>>2];Q=L[d+8>>2];U=O(D-Q);J=L[b>>2];P=L[d>>2];T=O(J-P);A=L[b+4>>2];E=L[d+4>>2];u=O(A-E);o=O(O(X*U)+O(O(t*T)+O(w*u)));U=O(O(k*U)+O(O(l*T)+O(n*u)));x=m!=O(0)?O(O(O(x*o)-O(p*U))/m):O(1);x=xO(0)?x:O(0))))):O(1);x=xO(0)?x:O(0);b=s!=O(0);p=b?O(q*O(O(V*x)-U)):O(1);p=pO(0)?p:O(0);L[c+12>>2]=U;m=O(O(C*C)+O(O(y*y)+O(M*M)));p=O(O(k*C)+O(O(l*y)+O(n*M)));T=O(O(s*m)-O(p*p));Y=p;V=O(D-Q);u=V;aa=O(J-P);o=aa;ga=O(A-E);N=ga;Z=O(O(C*u)+O(O(y*o)+O(M*N)));u=O(O(k*u)+O(O(l*o)+O(n*N)));p=T!=O(0)?O(O(O(p*Z)-O(m*u))/T):O(1);p=pO(0)?p:O(0))))):O(1);p=pO(0)?p:O(0);m=b?O(q*O(O(Y*p)-u)):O(1);m=mO(0)?m:O(0);L[c+8>>2]=T;u=O(O(v*v)+O(O(r*r)+O(G*G)));m=O(O(k*v)+O(O(l*r)+O(n*G)));o=O(O(s*u)-O(m*m));_=m;N=O(D-da);Z=O(J-ea);Y=O(A-fa);$=O(O(v*N)+O(O(r*Z)+O(G*Y)));N=O(O(k*N)+O(O(l*Z)+O(n*Y)));m=o!=O(0)?O(O(O(m*$)-O(u*N))/o):O(1);m=mO(0)?m:O(0))))):O(1);m=mO(0)?m:O(0);u=b?O(q*O(O(_*m)-N)):O(1);u=uO(0)?u:O(0);L[c+4>>2]=u;N=s;s=O(O(I*I)+ba);o=O(O(k*I)+O(O(l*t)+O(n*w)));N=O(O(N*s)-O(o*o));ba=q;_=o;q=V;Z=aa;Y=ga;$=O(O(I*q)+O(O(t*Z)+O(w*Y)));q=O(O(k*q)+O(O(l*Z)+O(n*Y)));o=N!=O(0)?O(O(O(o*$)-O(s*q))/N):O(1);o=oO(0)?o:O(0))))):O(1);s=sO(0)?s:O(0);q=b?O(ba*O(O(_*s)-q)):O(1);q=qO(0)?q:O(0);L[c>>2]=q;L[j+28>>2]=x;L[j+24>>2]=p;L[j+20>>2]=m;L[j+16>>2]=s;o=O(O(J+O(l*U))-O(P+O(t*x)));V=O(o*o);o=O(O(A+O(n*U))-O(E+O(w*x)));X=O(O(D+O(k*U))-O(Q+O(X*x)));L[j+12>>2]=V+O(O(o*o)+O(X*X));y=O(O(J+O(l*T))-O(P+O(y*p)));o=O(y*y);y=O(O(A+O(n*T))-O(E+O(M*p)));C=O(O(D+O(k*T))-O(Q+O(C*p)));L[j+8>>2]=o+O(O(y*y)+O(C*C));r=O(O(J+O(l*u))-O(ea+O(r*m)));o=O(r*r);r=O(O(A+O(n*u))-O(fa+O(G*m)));v=O(O(D+O(k*u))-O(da+O(v*m)));L[j+4>>2]=o+O(O(r*r)+O(v*v));l=O(O(J+O(l*q))-O(P+O(t*s)));o=O(l*l);l=O(O(A+O(n*q))-O(E+O(w*s)));k=O(O(D+O(k*q))-O(Q+O(I*s)));L[j>>2]=o+O(O(l*l)+O(k*k));n=L[j+20>>2];k=L[j+8>>2];t=L[j+4>>2];b=k>t;w=L[j>>2];d=!(ww);l=d?b?O(O(1)-n):O(0):L[j+16>>2];n=d?b?n:L[j+24>>2]:O(0);k=d?b?t:k:w;t=L[(d?b?c|4:c|8:c)>>2];c:{if(ca){b=k>z;L[g>>2]=b?O(0):t;L[h>>2]=b?R:l;L[i>>2]=b?S:n;k=b?z:k;break c}if(f){b=k>F;L[g>>2]=b?O(1):t;L[h>>2]=b?B:l;L[i>>2]=b?K:n;k=b?F:k;break c}L[g>>2]=t;L[h>>2]=l;L[i>>2]=n}L[a>>2]=k}Oa=j+112|0}function b0(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p){var q=O(0),r=O(0),s=O(0),t=0,u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=0,A=O(0),B=0,C=0,D=0,E=0,G=O(0),K=0,M=O(0),P=O(0),Q=O(0),R=O(0),S=O(0),T=O(0),U=O(0),V=O(0),X=O(0),Y=O(0),Z=O(0),_=O(0),$=O(0),aa=O(0),ba=O(0),ca=O(0),da=O(0),ea=O(0),fa=O(0),ga=O(0);t=Oa-416|0;Oa=t;K=t+344|0;Q0(lZ(t+120|0,c),K);H[t+88>>2]=0;H[t+92>>2]=0;H[t+84>>2]=1065353216;H[t+96>>2]=0;H[t+100>>2]=0;H[t+104>>2]=1065353216;H[t+108>>2]=0;H[t+68>>2]=0;H[t+72>>2]=0;H[t+64>>2]=1065353216;H[t+76>>2]=0;H[t+80>>2]=0;F[t+44|0]=1;H[t+32>>2]=f;H[t+48>>2]=b;H[t>>2]=125908;b=t- -64|0;H[t+40>>2]=b;H[t+36>>2]=b;b=H[h>>2];D=Oa-32|0;Oa=D;a:{b:{if(o){if(J0(a,K,t,n,D+16|0,k)){c=H[K+24>>2];m=L[k>>2];p=L[k+4>>2];q=L[k+8>>2];H[D+12>>2]=0;L[D+8>>2]=-q;L[D+4>>2]=-p;L[D>>2]=-m;c=c+N(E0(K,t,D),20)|0;break b}o=0;break a}q=L[k>>2];r=L[k+4>>2];s=L[k+8>>2];H[D+28>>2]=0;L[D+24>>2]=-s;L[D+20>>2]=-r;L[D+16>>2]=-q;q=O(p*O(.05000000074505806));p=O(p*O(.009999999776482582));m=mq?q:m);c=H[K+24>>2]+N(c,20)|0}l=Oa+-64|0;Oa=l;u=L[n>>2];v=L[a+80>>2];o=H[t+40>>2];r=L[o+40>>2];s=L[o+36>>2];w=L[o+24>>2];x=L[o+20>>2];y=L[o+32>>2];G=L[o+16>>2];m=L[c+8>>2];A=L[o+8>>2];p=L[c>>2];P=L[o>>2];q=L[c+4>>2];Q=L[o+4>>2];H[l+60>>2]=0;r=O(O(r*m)+O(O(y*p)+O(q*s)));s=O(O(A*m)+O(O(P*p)+O(q*Q)));w=O(O(w*m)+O(O(G*p)+O(q*x)));m=O(O(1)/O(W(O(O(r*r)+O(O(s*s)+O(w*w))))));p=O(r*m);L[l+56>>2]=p;q=O(s*m);L[l+48>>2]=q;m=O(w*m);L[l+52>>2]=m;o=H[t+36>>2];B=H[K+32>>2]+J[c+16>>1]|0;E=H[K+28>>2]+N(I[B|0],12)|0;r=L[E+8>>2];s=L[E>>2];w=L[E+4>>2];x=O(O(L[o+40>>2]*r)+O(O(L[o+8>>2]*s)+O(w*L[o+24>>2])));y=O(O(L[o+32>>2]*r)+O(O(L[o>>2]*s)+O(w*L[o+16>>2])));r=O(O(L[o+36>>2]*r)+O(O(L[o+4>>2]*s)+O(w*L[o+20>>2])));s=O(O(p*L[k+8>>2])+O(O(q*L[k>>2])+O(m*L[k+4>>2])));s=s>O(0)?O(O(1)/s):O(0);w=O(O(O(p*O(L[a+72>>2]-x))+O(O(q*O(L[a+64>>2]-y))+O(m*O(L[a+68>>2]-r))))*s);R=O(v+u);G=O(O(O(p*O(L[a+56>>2]-x))+O(O(q*O(L[a+48>>2]-y))+O(m*O(L[a+52>>2]-r))))*s);C=R>=G;c:{if(!(C|w<=R)){break c}W0(l,l+48|0);o=I[c+18|0];E=(l-(o<<4)|0)-16|0;Oa=E;Ra[H[H[t>>2]+16>>2]](t,B,o,H[K+28>>2],E);P=L[l+36>>2];Q=L[l+20>>2];x=O(3.4028234663852886e38);y=O(-3.4028234663852886e38);T=L[l+4>>2];M=L[l+32>>2];U=L[l+16>>2];S=L[l>>2];B=I[c+18|0];d:{if(!B){p=O(-3.4028234663852886e38);u=O(3.4028234663852886e38);break d}v=L[l+40>>2];A=L[l+24>>2];V=L[l+8>>2];u=O(3.4028234663852886e38);p=O(-3.4028234663852886e38);while(1){o=E+(z<<4)|0;H[o+12>>2]=0;q=L[o+8>>2];r=L[o>>2];s=L[o+4>>2];L[o+8>>2]=O(v*q)+O(O(V*r)+O(s*A));m=O(O(P*q)+O(O(T*r)+O(s*Q)));L[o+4>>2]=m;q=O(O(M*q)+O(O(S*r)+O(s*U)));L[o>>2]=q;y=mq?p:q;x=m>x?x:m;u=q>u?u:q;z=z+1|0;if((B|0)!=(z|0)){continue}break}}e:{if(!C){break e}Y=L[a+56>>2];V=O(Y-O(G*L[k+8>>2]));aa=L[a+48>>2];Z=O(aa-O(G*L[k>>2]));ba=L[a+52>>2];_=O(ba-O(G*L[k+4>>2]));A=O(O(M*V)+O(O(S*Z)+O(_*U)));if(Ay)){break e}o=E+(B-1<<4)|0;q=L[o>>2];m=L[o+4>>2];o=0;z=0;f:{while(1){if(q==A&m==v){break f}s=q;r=m;C=E+(o<<4)|0;q=L[C>>2];m=L[C+4>>2];if(A==q&v==m){break f}g:{if((r>v|0)==(m>v|0)){break g}X=O(m-r);r=O(O(O(s+O(1.1920928955078125e-7))*X)+O(O(v-r)*O(q-s)));s=O(A*X);C=X>O(0);if(!((C?r:s)>=(C?s:r))){break g}if((z|0)==1){break e}z=z+1|0}o=o+1|0;if((B|0)!=(o|0)){continue}break}if(!z){break e}}s=L[d+20>>2];v=L[d+24>>2];r=L[d+36>>2];A=L[d+52>>2];m=L[d+40>>2];q=L[d+56>>2];X=L[d+8>>2];ca=L[d+4>>2];da=L[d>>2];ea=L[d+16>>2];fa=L[d+32>>2];ga=L[d+48>>2];o=N(H[h>>2],48)+g|0;H[o+12>>2]=0;$=m;m=O(Y-q);q=O(aa-ga);Y=r;r=O(ba-A);L[o+8>>2]=O($*m)+O(O(fa*q)+O(Y*r));L[o+4>>2]=O(v*m)+O(O(ea*q)+O(r*s));L[o>>2]=O(X*m)+O(O(da*q)+O(r*ca));o=N(H[h>>2],48)+g|0;L[o+16>>2]=Z;H[o+28>>2]=0;L[o+24>>2]=V;L[o+20>>2]=_;m=L[k+8>>2];z=H[k+4>>2];B=H[k>>2];o=H[h>>2];H[h>>2]=o+1;o=N(o,48)+g|0;H[o+32>>2]=B;H[o+36>>2]=z;L[o+44>>2]=G;L[o+40>>2]=m}if(!(w<=R)){break c}m=u;q=M;M=L[a+72>>2];v=O(M-O(w*L[k+8>>2]));r=S;S=L[a+64>>2];G=O(S-O(w*L[k>>2]));R=L[a+68>>2];A=O(R-O(w*L[k+4>>2]));u=O(O(q*v)+O(O(r*G)+O(A*U)));if(m>u|py){break c}B=I[c+18|0];if(!B){break c}o=E+(B-1<<4)|0;p=L[o>>2];m=L[o+4>>2];o=0;z=0;h:{while(1){r=p;q=m;if(r==u&m==s){break h}C=E+(o<<4)|0;p=L[C>>2];m=L[C+4>>2];if(u==p&s==m){break h}i:{if((q>s|0)==(m>s|0)){break i}x=O(m-q);q=O(O(O(r+O(1.1920928955078125e-7))*x)+O(O(s-q)*O(p-r)));r=O(u*x);C=x>O(0);if(!((C?q:r)>=(C?r:q))){break i}if((z|0)==1){break c}z=z+1|0}o=o+1|0;if((B|0)!=(o|0)){continue}break}if(!z){break c}}r=L[d+20>>2];s=L[d+24>>2];q=L[d+36>>2];u=L[d+52>>2];m=L[d+40>>2];p=L[d+56>>2];x=L[d+8>>2];y=L[d+4>>2];P=L[d>>2];Q=L[d+16>>2];T=L[d+32>>2];U=L[d+48>>2];o=N(H[h>>2],48)+g|0;H[o+12>>2]=0;$=m;m=O(M-p);p=O(S-U);M=q;q=O(R-u);L[o+8>>2]=O($*m)+O(O(T*p)+O(M*q));L[o+4>>2]=O(s*m)+O(O(Q*p)+O(q*r));L[o>>2]=O(x*m)+O(O(P*p)+O(q*y));o=N(H[h>>2],48)+g|0;L[o+16>>2]=G;H[o+28>>2]=0;L[o+24>>2]=v;L[o+20>>2]=A;m=L[k+8>>2];z=H[k+4>>2];E=H[k>>2];o=H[h>>2];H[h>>2]=o+1;o=N(o,48)+g|0;H[o+32>>2]=E;H[o+36>>2]=z;L[o+44>>2]=w;L[o+40>>2]=m}Oa=l- -64|0;o=1;if(H[h>>2]-b>>>0>1){break a}I0(a,K,c,t,d,g,h,n,k)}Oa=D+32|0;if(o){l=H[h>>2];j:{if(!b){break j}if((b|0)==(l|0)){l=b;break j}l=l-1|0;H[h>>2]=l;g=g+48|0}b1(j,g,l);m=L[f+12>>2];p=L[f+8>>2];q=L[f>>2];r=L[f+4>>2];H[k+12>>2]=0;s=L[k+8>>2];w=L[k>>2];u=L[k+4>>2];v=O(O(p*s)+O(O(q*w)+O(r*u)));x=O(O(m*m)+O(-.5));y=O(O(O(m*O(O(q*u)-O(r*w)))+O(x*s))+O(p*v));L[k+8>>2]=y+y;y=O(O(r*v)+O(O(x*u)+O(m*O(O(p*w)-O(s*q)))));L[k+4>>2]=y+y;m=O(O(q*v)+O(O(w*x)+O(m*O(O(r*s)-O(u*p)))));L[k>>2]=m+m;Y0(j,i,k,k,e,a+80|0,n)}Oa=t+416|0;return o}function IM(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;h=Oa-48|0;Oa=h;H[h+44>>2]=b;e=I[b+47|0];f=I[b+46|0];H[h+8>>2]=0;H[h+12>>2]=0;l=H[a+4>>2];a:{if(!b|!I[l+1812|0]){break a}if(I[e+(N(f,7)+116336|0)|0]){if(!(f>>>0>4|e>>>0>4)){b:{if(!(e?f:0)){f=H[l+932>>2];if(!f){m=Oa-16|0;Oa=m;i=l+644|0;f=H[i+284>>2];if(f){e=H[33808];g=Ra[H[H[e>>2]+20>>2]](e)|0?39648:55639;j=Ra[H[H[e+12>>2]+8>>2]](e+12|0,f,g,15259,180)|0}else{j=0}H[m+12>>2]=j;e=H[i+268>>2];c:{if(e>>>0>=(H[i+272>>2]&2147483647)>>>0){g=i+4|0;f=H[g+268>>2]&2147483647;n=f?f<<1:1;e=0;d:{if(!n){break d}f=n<<2;if(!(I[g+256|0]|f>>>0>256)){F[g+256|0]=1;e=g;break d}e=0;if(!f){break d}e=H[33808];k=Ra[H[H[e>>2]+20>>2]](e)|0?39648:55639;e=Ra[H[H[e+12>>2]+8>>2]](e+12|0,f,k,13582,553)|0}f=e;k=H[g+264>>2];p=f+(k<<2)|0;if((k|0)>0){o=H[g+260>>2];while(1){H[e>>2]=H[o>>2];o=o+4|0;e=e+4|0;if(p>>>0>e>>>0){continue}break}}H[p>>2]=H[m+12>>2];e:{if(H[g+268>>2]<0){break e}e=H[g+260>>2];if((e|0)==(g|0)){F[g+256|0]=0;break e}if(!e){break e}k=H[33808];Ra[H[H[k+12>>2]+12>>2]](k+12|0,e);k=H[g+264>>2]}H[g+268>>2]=n;H[g+260>>2]=f;H[g+264>>2]=k+1;break c}H[H[i+264>>2]+(e<<2)>>2]=j;H[i+268>>2]=e+1}f=(j+(H[i+276>>2]<<7)|0)-128|0;if(j>>>0<=f>>>0){e=H[i+288>>2];while(1){H[f>>2]=e;e=f;f=f-128|0;if(j>>>0<=f>>>0){continue}break}H[i+288>>2]=e}Oa=m+16|0;f=H[l+932>>2]}H[l+932>>2]=H[f>>2];H[l+924>>2]=H[l+924>>2]+1;H[f+76>>2]=f+80;F[f+66|0]=0;G[f+64>>1]=256;break b}f=H[l+640>>2];if(!f){m=Oa-16|0;Oa=m;i=l+352|0;f=H[i+284>>2];if(f){e=H[33808];g=Ra[H[H[e>>2]+20>>2]](e)|0?39806:55639;j=Ra[H[H[e+12>>2]+8>>2]](e+12|0,f,g,15259,180)|0}else{j=0}H[m+12>>2]=j;e=H[i+268>>2];f:{if(e>>>0>=(H[i+272>>2]&2147483647)>>>0){g=i+4|0;f=H[g+268>>2]&2147483647;n=f?f<<1:1;e=0;g:{if(!n){break g}f=n<<2;if(!(I[g+256|0]|f>>>0>256)){F[g+256|0]=1;e=g;break g}e=0;if(!f){break g}e=H[33808];k=Ra[H[H[e>>2]+20>>2]](e)|0?39806:55639;e=Ra[H[H[e+12>>2]+8>>2]](e+12|0,f,k,13582,553)|0}f=e;k=H[g+264>>2];p=f+(k<<2)|0;if((k|0)>0){o=H[g+260>>2];while(1){H[e>>2]=H[o>>2];o=o+4|0;e=e+4|0;if(p>>>0>e>>>0){continue}break}}H[p>>2]=H[m+12>>2];h:{if(H[g+268>>2]<0){break h}e=H[g+260>>2];if((e|0)==(g|0)){F[g+256|0]=0;break h}if(!e){break h}k=H[33808];Ra[H[H[k+12>>2]+12>>2]](k+12|0,e);k=H[g+264>>2]}H[g+268>>2]=n;H[g+260>>2]=f;H[g+264>>2]=k+1;break f}H[H[i+264>>2]+(e<<2)>>2]=j;H[i+268>>2]=e+1}f=(j+N(H[i+276>>2],272)|0)-272|0;if(j>>>0<=f>>>0){e=H[i+288>>2];while(1){H[f>>2]=e;e=f;f=f-272|0;if(j>>>0<=f>>>0){continue}break}H[i+288>>2]=e}Oa=m+16|0;f=H[l+640>>2]}H[l+640>>2]=H[f>>2];H[l+632>>2]=H[l+632>>2]+1;H[f+76>>2]=f+80;F[f+66|0]=0;G[f+64>>1]=1024}H[f+24>>2]=2139095039;H[f+28>>2]=0;H[f+16>>2]=2139095039;H[f+20>>2]=2139095039;H[f+56>>2]=0;H[f+60>>2]=1065353216;H[f+48>>2]=0;H[f+52>>2]=0;H[f+40>>2]=0;H[f+44>>2]=1065353216;H[f+32>>2]=0;H[f+36>>2]=0;H[f+8>>2]=0;H[f+12>>2]=1065353216;H[f>>2]=0;H[f+4>>2]=0;H[h+8>>2]=f;F[h+15|0]=I[h+15|0]|1;F[f+64|0]=0;F[f+66|0]=0;H[f+16>>2]=2139095039;H[f+20>>2]=2139095039;H[f+8>>2]=0;H[f+12>>2]=1065353216;H[f>>2]=0;H[f+4>>2]=0;H[f+24>>2]=2139095039;H[f+28>>2]=0;break a}H[h+8>>2]=0;F[h+15|0]=I[h+15|0]|3;break a}F[h+15|0]=0;H[h+8>>2]=0}H[h+24>>2]=0;H[h+28>>2]=0;H[h+16>>2]=0;H[h+20>>2]=0;F[h+29|0]=d;F[h+30|0]=I[b+40|0]<<2&8|((c|0)>0?2:c>>>31|0)|32;c=I[b+43|0];if(c&2){F[b+43|0]=c|64}c=H[a+72>>2];i:{if(c>>>0>=(H[a+76>>2]&2147483647)>>>0){c=0;d=H[a+76>>2]&2147483647;f=d?d<<1:1;j:{if(!f){break j}d=f<<4;if(!d){break j}c=H[33808];e=Ra[H[H[c>>2]+20>>2]](c)|0?23286:55639;c=Ra[H[H[c+12>>2]+8>>2]](c+12|0,d,e,13582,553)|0}d=H[a+72>>2];if((d|0)>0){g=(d<<4)+c|0;e=H[a+68>>2];d=c;while(1){j=H[e+4>>2];H[d>>2]=H[e>>2];H[d+4>>2]=j;j=H[e+12>>2];H[d+8>>2]=H[e+8>>2];H[d+12>>2]=j;e=e+16|0;d=d+16|0;if(g>>>0>d>>>0){continue}break}d=H[a+72>>2]}e=H[h+20>>2];d=(d<<4)+c|0;H[d>>2]=H[h+16>>2];H[d+4>>2]=e;e=H[h+28>>2];H[d+8>>2]=H[h+24>>2];H[d+12>>2]=e;k:{if(H[a+76>>2]<0){break k}d=H[a+68>>2];if(!d){break k}e=H[33808];Ra[H[H[e+12>>2]+12>>2]](e+12|0,d)}H[a+76>>2]=f;H[a+68>>2]=c;break i}d=H[h+20>>2];c=H[a+68>>2]+(c<<4)|0;H[c>>2]=H[h+16>>2];H[c+4>>2]=d;d=H[h+28>>2];H[c+8>>2]=H[h+24>>2];H[c+12>>2]=d}H[a+72>>2]=H[a+72>>2]+1;c=H[a+96>>2];l:{if(c>>>0>=(H[a+100>>2]&2147483647)>>>0){c=0;d=H[a+100>>2]&2147483647;f=d?d<<1:1;m:{if(!f){break m}d=f<<3;if(!d){break m}c=H[33808];e=Ra[H[H[c>>2]+20>>2]](c)|0?38574:55639;c=Ra[H[H[c+12>>2]+8>>2]](c+12|0,d,e,13582,553)|0}d=H[a+96>>2];if((d|0)>0){g=(d<<3)+c|0;e=H[a+92>>2];d=c;while(1){j=H[e+4>>2];H[d>>2]=H[e>>2];H[d+4>>2]=j;e=e+8|0;d=d+8|0;if(g>>>0>d>>>0){continue}break}d=H[a+96>>2]}e=H[h+12>>2];d=(d<<3)+c|0;H[d>>2]=H[h+8>>2];H[d+4>>2]=e;n:{if(H[a+100>>2]<0){break n}d=H[a+92>>2];if(!d){break n}e=H[33808];Ra[H[H[e+12>>2]+12>>2]](e+12|0,d)}H[a+100>>2]=f;H[a+92>>2]=c;break l}d=H[h+12>>2];c=H[a+92>>2]+(c<<3)|0;H[c>>2]=H[h+8>>2];H[c+4>>2]=d}H[a+96>>2]=H[a+96>>2]+1;c=H[a+84>>2];o:{if(c>>>0>=(H[a+88>>2]&2147483647)>>>0){b=0;c=H[a+88>>2]&2147483647;f=c?c<<1:1;p:{if(!f){break p}c=f<<2;if(!c){break p}b=H[33808];d=Ra[H[H[b>>2]+20>>2]](b)|0?49792:55639;b=Ra[H[H[b+12>>2]+8>>2]](b+12|0,c,d,13582,553)|0}d=H[a+84>>2];g=(d<<2)+b|0;if((d|0)>0){e=H[a+80>>2];c=b;while(1){H[c>>2]=H[e>>2];e=e+4|0;c=c+4|0;if(g>>>0>c>>>0){continue}break}}H[g>>2]=H[h+44>>2];q:{if(H[a+88>>2]<0){break q}c=H[a+80>>2];if(!c){break q}d=H[33808];Ra[H[H[d+12>>2]+12>>2]](d+12|0,c);d=H[a+84>>2]}H[a+88>>2]=f;H[a+80>>2]=b;H[a+84>>2]=d+1;break o}H[H[a+80>>2]+(c<<2)>>2]=b;H[a+84>>2]=c+1}H[H[h+44>>2]+68>>2]=H[a+64>>2]|(H[a+72>>2]<<3)+2147483640|-2147483648;Oa=h+48|0}function es(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=O(0),r=0,s=0,t=0,u=0,v=0,w=0,x=0;d=Oa-256|0;Oa=d;H[d+216>>2]=0;H[d+220>>2]=0;H[d+224>>2]=0;H[d+228>>2]=0;H[d+208>>2]=0;H[d+212>>2]=0;G[d+204>>1]=0;H[d+200>>2]=-1;H[d+192>>2]=0;H[d+196>>2]=0;H[d+240>>2]=0;H[d+232>>2]=2139095039;H[d+236>>2]=0;p=H[c+4>>2];g=H[((H[p+4>>2]>>>22&60)+76348|0)+12>>2]+p|0;v=H[((I[g+9|0]<<2)+135180|0)+40>>2]+g|0;m=H[c>>2];w=H[33798]+(m+16|0)|0;h=H[a+20>>2];j=G[h+16>>1];a:{b:{c:{d:{e:{f:{if(!H[H[a+12>>2]+76>>2]){i=I[a+42|0];if(i|(j|0)>=0){break f}break e}if(!I[a+42|0]){break e}t=a+42|0;c=J[a+16>>1];g=2;break c}t=a+42|0;c=J[a+16>>1];g=2;if(i){break c}break d}t=a+42|0;c=J[a+16>>1];g=1}k=H[a+24>>2];g:{n=H[a+32>>2];if(n){break g}i=H[h+12>>2];o=H[h+8>>2];r=H[h+4>>2];e=H[h>>2];if(!(i|(o|(r|e)))|(i&H[m+28>>2]|(o&H[m+24>>2]|(r&H[m+20>>2]|e&H[m+16>>2])))){break g}a=1;break a}if(!(j&4)|!(n?1:k)){break c}G[d+104>>1]=c;h:{if(k){g=Ra[H[H[k>>2]>>2]](k,h,w,v,d+104|0)|0;break h}i=H[n+8>>2];if(!i){c=J[d+104>>1]&432|c&-433;break c}H[d+16>>2]=H[h>>2];H[d+20>>2]=H[h+4>>2];H[d+24>>2]=H[h+8>>2];H[d+28>>2]=H[h+12>>2];H[d+160>>2]=H[m+16>>2];H[d+164>>2]=H[m+20>>2];H[d+168>>2]=H[m+24>>2];H[d+172>>2]=H[m+28>>2];g=Ra[i|0](d+16|0,d+160|0,H[n>>2],H[n+4>>2],d+104|0)|0}if(!g){break b}c=J[d+104>>1]&432|c&-433}k=d+160|0;tg(k,m,p);u=1;q=L[a+28>>2];i=H[a+12>>2];n=H[i+72>>2];l=H[i+80>>2];h=H[i+76>>2];p=H[m+4>>2]&1?H[m+8>>2]- -64|0:m+84|0;r=H[p>>2];e=H[H[H[a+4>>2]+5728>>2]+(r<<2)>>2];i=H[a+8>>2];o=H[i+4>>2];i=H[i>>2];G[d+16>>1]=J[a+36>>1]|c;f=i;x=o;o=h>>>0>l>>>0;i=o?h-l|0:1;n=o?n+(l<<6)|0:d+192|0;p=Ra[e|0](p,k,f,x,q,d+16|0,(r|0)==5?c&32?i:1:i,n)|0;i:{if(!p){u=0;break i}r=j&8;o=d+16|4;i=d- -64|0;while(1){f=n+(s<<6)|0;H[f+4>>2]=w;H[f>>2]=v;c=g;j:{if(I[t|0]){break j}e=H[a+24>>2];k=H[a+32>>2];c=g;if(!(e|k)){break j}c=g;if(!r){break j}if(e){c=Ra[H[H[e>>2]+4>>2]](e,H[a+20>>2],f)|0;break j}e=H[k+12>>2];c=g;if(!e){break j}c=H[a+20>>2];H[d+144>>2]=H[c>>2];H[d+148>>2]=H[c+4>>2];H[d+152>>2]=H[c+8>>2];H[d+156>>2]=H[c+12>>2];H[d+128>>2]=H[m+16>>2];H[d+132>>2]=H[m+20>>2];H[d+136>>2]=H[m+24>>2];H[d+140>>2]=H[m+28>>2];c=Ra[e|0](d+144|0,d+128|0,H[k>>2],H[k+4>>2],f)|0}if(!(!I[a+41|0]|!c)){b=H[f+4>>2];c=H[a+12>>2];H[c+4>>2]=H[f>>2];H[c+8>>2]=b;H[c+12>>2]=H[f+8>>2];g=n+(s<<6)|0;G[c+16>>1]=J[g+12>>1];L[c+20>>2]=L[g+16>>2];L[c+24>>2]=L[g+20>>2];L[c+28>>2]=L[g+24>>2];L[c+32>>2]=L[g+28>>2];L[c+36>>2]=L[g+32>>2];L[c+40>>2]=L[g+36>>2];L[c+44>>2]=L[g+40>>2];b=H[g+48>>2];H[c+48>>2]=H[g+44>>2];H[c+52>>2]=b;b=H[g+56>>2];H[c+56>>2]=H[g+52>>2];H[c+60>>2]=b;H[c- -64>>2]=H[g+60>>2];F[H[a+12>>2]+68|0]=1;break i}k:{l:{switch((I[a+40|0]?1:c)-1|0){case 0:c=H[a+12>>2];e=H[c+76>>2];if(!(L[f+40>>2]<=L[a+28>>2])|(!e|!I[a+38|0])){break k}h=H[c+80>>2];m:{if((e|0)!=(h|0)){break m}e=H[a+20>>2];H[d+104>>2]=H[e>>2];H[d+108>>2]=H[e+4>>2];H[d+112>>2]=H[e+8>>2];H[d+116>>2]=H[e+12>>2];G[d+120>>1]=J[e+16>>1]|32768;G[d+32>>1]=0;H[d+28>>2]=-1;H[d+20>>2]=0;H[d+24>>2]=0;H[d+52>>2]=0;H[d+56>>2]=0;H[d+44>>2]=0;H[d+48>>2]=0;H[d+36>>2]=0;H[d+40>>2]=0;H[d+96>>2]=0;H[d+88>>2]=0;H[d+92>>2]=0;F[d+84|0]=0;H[d+68>>2]=0;H[d+60>>2]=2139095039;H[d+64>>2]=0;H[d+16>>2]=111468;n:{if(I[a+39|0]|!H[c+76>>2]){break n}e=H[a+8>>2];c=H[a+4>>2];G[d+8>>1]=J[a+16>>1];e=ds(c,e,d+16|0,d+8|0,0,d+104|0,H[a+24>>2],H[a+32>>2]);c=H[a+12>>2];if(!e){break n}e=H[o+4>>2];H[c+4>>2]=H[o>>2];H[c+8>>2]=e;H[c+12>>2]=H[o+8>>2];G[c+16>>1]=J[d+32>>1];L[c+20>>2]=L[d+36>>2];L[c+24>>2]=L[d+40>>2];L[c+28>>2]=L[d+44>>2];L[c+32>>2]=L[d+48>>2];L[c+36>>2]=L[d+52>>2];L[c+40>>2]=L[d+56>>2];L[c+44>>2]=L[d+60>>2];e=H[i+4>>2];H[c+48>>2]=H[i>>2];H[c+52>>2]=e;e=H[i+12>>2];H[c+56>>2]=H[i+8>>2];H[c+60>>2]=e;H[c- -64>>2]=H[i+16>>2];c=H[a+12>>2];F[c+68|0]=1;h=0;q=L[d+60>>2];k=H[c+80>>2];o:{if(!k){k=0;break o}e=H[c+72>>2];while(1){j=e+(h<<6)|0;p:{if(L[j+40>>2]>q){k=k-1|0;l=e+(k<<6)|0;c=H[l+4>>2];H[j>>2]=H[l>>2];H[j+4>>2]=c;H[j+8>>2]=H[l+8>>2];G[j+12>>1]=J[l+12>>1];L[j+16>>2]=L[l+16>>2];L[j+20>>2]=L[l+20>>2];L[j+24>>2]=L[l+24>>2];L[j+28>>2]=L[l+28>>2];L[j+32>>2]=L[l+32>>2];L[j+36>>2]=L[l+36>>2];L[j+40>>2]=L[l+40>>2];c=H[l+48>>2];H[j+44>>2]=H[l+44>>2];H[j+48>>2]=c;c=H[l+56>>2];H[j+52>>2]=H[l+52>>2];H[j+56>>2]=c;H[j+60>>2]=H[l+60>>2];break p}h=h+1|0}if((h|0)!=(k|0)){continue}break}c=H[a+12>>2];q=L[d+60>>2]}H[c+80>>2]=k;L[a+28>>2]=q;L[b>>2]=q}F[a+39|0]=1;h=H[c+80>>2];if((h|0)!=H[c+76>>2]){break m}c=Ra[H[H[c>>2]>>2]](c,H[c+72>>2],h)|0;F[a+38|0]=c;if(!c){break i}h=0;c=H[a+12>>2];H[c+80>>2]=0}H[c+80>>2]=h+1;e=H[c+72>>2]+(h<<6)|0;H[e+8>>2]=H[f+8>>2];c=H[f+4>>2];H[e>>2]=H[f>>2];H[e+4>>2]=c;G[e+12>>1]=J[f+12>>1];L[e+16>>2]=L[f+16>>2];L[e+20>>2]=L[f+20>>2];L[e+24>>2]=L[f+24>>2];L[e+28>>2]=L[f+28>>2];L[e+32>>2]=L[f+32>>2];L[e+36>>2]=L[f+36>>2];L[e+40>>2]=L[f+40>>2];c=H[f+48>>2];H[e+44>>2]=H[f+44>>2];H[e+48>>2]=c;c=H[f+56>>2];H[e+52>>2]=H[f+52>>2];H[e+56>>2]=c;H[e+60>>2]=H[f+60>>2];break k;case 1:break l;default:break k}}q=L[f+40>>2];if(!(q<=L[a+28>>2])){break k}L[a+28>>2]=q;L[b>>2]=q;c=H[f+4>>2];e=H[a+12>>2];H[e+4>>2]=H[f>>2];H[e+8>>2]=c;H[e+12>>2]=H[f+8>>2];G[e+16>>1]=J[f+12>>1];L[e+20>>2]=L[f+16>>2];L[e+24>>2]=L[f+20>>2];L[e+28>>2]=L[f+24>>2];L[e+32>>2]=L[f+28>>2];L[e+36>>2]=L[f+32>>2];L[e+40>>2]=L[f+36>>2];L[e+44>>2]=L[f+40>>2];c=H[f+48>>2];H[e+48>>2]=H[f+44>>2];H[e+52>>2]=c;c=H[f+56>>2];H[e+56>>2]=H[f+52>>2];H[e+60>>2]=c;H[e- -64>>2]=H[f+60>>2];F[H[a+12>>2]+68|0]=1}s=s+1|0;u=p>>>0>s>>>0;if((p|0)!=(s|0)){continue}break}}a=!u;break a}a=1}Oa=d+256|0;return a&1}function SJ(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=O(0),r=0,s=0,t=0,u=0,w=0,x=0,y=0,z=0,A=O(0),C=O(0),D=O(0),E=O(0),G=O(0),I=O(0),J=O(0),K=O(0),M=O(0),P=O(0),Q=0,R=0,S=0,T=O(0),U=0,V=0,W=0,X=0,Y=0,Z=0,_=O(0);s=Oa-5168|0;Oa=s;y=H[a+40>>2];a:{if(!y){if(!H[a+88>>2]){break a}RJ(a,b);break a}e=y<<2;U=H[a+8>>2];V=H[a+4>>2];j=H[a+36>>2];while(1){g=H[j+(d<<2)>>2];b:{if((g|0)==-1){break b}if((g|0)<0){c:{if(l){break c}if(!e){l=0;break c}l=H[33808]+12|0;l=Ra[H[H[l>>2]+8>>2]](l,e,20591,10647,1402)|0}g=g&2147483647;L[(o<<2)+l>>2]=L[N(g,24)+V>>2]-L[(g<<2)+U>>2];if(!h){h=H[c>>2];d:{if(h){h=Gw(h,e,1);break d}h=0;if(!e){break d}h=H[33808]+12|0;h=Ra[H[H[h>>2]+8>>2]](h,e,20591,10647,373)|0}}H[((o^-1)+y<<2)+h>>2]=g;o=o+1|0;break b}if(!h){h=H[c>>2];e:{if(h){h=Gw(h,e,1);break e}h=0;if(!e){break e}h=H[33808]+12|0;h=Ra[H[H[h>>2]+8>>2]](h,e,20591,10647,373)|0}}H[(f<<2)+h>>2]=d;f=f+1|0}d=d+1|0;if((y|0)!=(d|0)){continue}break}r=H[a+68>>2];f:{if(f){if(r){z=H[a+56>>2];i=H[z+(H[h>>2]<<3)>>2];W=H[a+84>>2];X=H[a+60>>2];Q=H[a+80>>2];e=H[Q>>2];Y=H[a+64>>2];Z=H[a+36>>2];g=f+r|0;p=g-H[a+88>>2]|0;d=p+6|0;j=d<<3;if(j){n=H[33808]+12|0;n=Ra[H[H[n>>2]+8>>2]](n,j,20591,10647,1521)|0}d=d<<4;if(d){j=H[33808]+12|0;t=Ra[H[H[j>>2]+8>>2]](j,d,20591,10647,1522)|0}d=(p<<3)+n|0;H[d>>2]=-1;H[d+40>>2]=-1;H[d+32>>2]=-1;H[d+24>>2]=-1;H[d+16>>2]=-1;H[d+8>>2]=-1;d=p<<2;if(d){j=H[33808]+12|0;u=Ra[H[H[j>>2]+8>>2]](j,d,20591,10647,1525)|0}if(g){j=0;d=0;while(1){g:{if(e>>>0>>0){m=H[(j<<2)+Y>>2];if((m|0)!=-1){H[(d<<2)+u>>2]=m;e=(d<<3)+n|0;k=(j<<3)+Q|0;H[e>>2]=H[k>>2];H[e+4>>2]=H[k+4>>2];e=(j<<4)+W|0;w=H[e>>2];R=H[e+4>>2];S=H[e+12>>2];k=(d<<4)+t|0;H[k+8>>2]=H[e+8>>2];H[k+12>>2]=S;H[k>>2]=w;H[k+4>>2]=R}e=-1;j=j+1|0;if(r>>>0<=j>>>0){break g}e=H[(j<<3)+Q>>2];break g}i=H[(x<<2)+h>>2];m=H[(i<<2)+Z>>2];H[(d<<2)+u>>2]=m;k=(d<<3)+n|0;w=(i<<3)+z|0;H[k>>2]=H[w>>2];H[k+4>>2]=H[w+4>>2];i=(i<<4)+X|0;w=H[i>>2];R=H[i+4>>2];S=H[i+12>>2];k=(d<<4)+t|0;H[k+8>>2]=H[i+8>>2];H[k+12>>2]=S;H[k>>2]=w;H[k+4>>2]=R;i=-1;x=x+1|0;if(x>>>0>=f>>>0){break g}i=H[(H[(x<<2)+h>>2]<<3)+z>>2]}g=g-1|0;if((m|0)!=-1){H[(m<<2)+b>>2]=H[a>>2]|d<<3|4;d=d+1|0}if(g){continue}break}}d=H[a+84>>2];if(d){f=H[33808]+12|0;Ra[H[H[f>>2]+12>>2]](f,d);H[a+84>>2]=0}d=H[a+80>>2];if(d){f=H[33808]+12|0;Ra[H[H[f>>2]+12>>2]](f,d)}H[a+84>>2]=t;H[a+80>>2]=n;H[a+72>>2]=p;H[a+76>>2]=p;d=H[a+64>>2];if(d){f=H[33808]+12|0;Ra[H[H[f>>2]+12>>2]](f,d)}H[a+88>>2]=0;H[a+68>>2]=p;H[a+64>>2]=u;break f}h:{if(LJ(a+72|0,f)){d=f<<2;if(d){e=H[33808]+12|0;i=Ra[H[H[e>>2]+8>>2]](e,d,20591,10647,1604)|0}else{i=0}d=H[a+64>>2];if(d){e=H[33808]+12|0;Ra[H[H[e>>2]+12>>2]](e,d)}H[a+64>>2]=i;break h}i=H[a+64>>2]}r=H[a+84>>2];n=H[a+60>>2];m=H[a+56>>2];t=H[a+80>>2];d=t+(f<<3)|0;H[d>>2]=-1;H[d+40>>2]=-1;H[d+32>>2]=-1;H[d+24>>2]=-1;H[d+16>>2]=-1;H[d+8>>2]=-1;d=0;while(1){g=d<<2;e=H[g+h>>2];p=H[j+(e<<2)>>2];H[g+i>>2]=p;u=d<<3;g=u+t|0;k=m+(e<<3)|0;H[g>>2]=H[k>>2];H[g+4>>2]=H[k+4>>2];e=n+(e<<4)|0;k=H[e>>2];x=H[e+4>>2];z=H[e+12>>2];g=r+(d<<4)|0;H[g+8>>2]=H[e+8>>2];H[g+12>>2]=z;H[g>>2]=k;H[g+4>>2]=x;H[(p<<2)+b>>2]=u|H[a>>2]|4;d=d+1|0;if((f|0)!=(d|0)){continue}break}H[a+68>>2]=f;break f}if(!r|!H[a+88>>2]){break f}RJ(a,b)}i:{if(o){d=o<<2;f=H[c>>2];j:{k:{if(f){e=Gw(f,d,1);break k}if(!d){e=0;i=0;break j}f=H[33808]+12|0;e=Ra[H[H[f>>2]+8>>2]](f,d,20591,10647,373)|0}f=H[c>>2];if(f){i=Gw(f,d,1);break j}i=0;if(!d){break j}f=H[33808]+12|0;i=Ra[H[H[f>>2]+8>>2]](f,d,20591,10647,373)|0}d=s+5128|0;F[d+32|0]=1;H[d+4>>2]=-2147483648;H[d+8>>2]=0;H[d+12>>2]=0;H[d>>2]=125392;H[d+16>>2]=0;H[d+20>>2]=0;H[d+24>>2]=0;H[d+28>>2]=0;f=s+1024|0;if((e|0)!=0&(i|0)!=0&(f|0)!=0&(s|0)!=0){F[d+32|0]=0;H[d+20>>2]=s;H[d+16>>2]=f;H[d+12>>2]=i;H[d+8>>2]=e;H[d+4>>2]=H[d+4>>2]|-2147483648}f=H[NT(d,l,o)+8>>2];l:{if(LJ(a+48|0,o)){d=H[a+36>>2];if(d){g=H[33808]+12|0;Ra[H[H[g>>2]+12>>2]](g,d)}H[a+36>>2]=l;break l}if(l){d=H[33808]+12|0;Ra[H[H[d>>2]+12>>2]](d,l)}l=H[a+36>>2]}j=H[a+56>>2];d=j+(o<<3)|0;H[d>>2]=-1;H[d+40>>2]=-1;H[d+32>>2]=-1;H[d+24>>2]=-1;H[d+16>>2]=-1;H[d+8>>2]=-1;p=H[a+60>>2];r=H[a>>2];G=O(-3.4028234663852886e38);I=O(3.4028234663852886e38);g=0;J=O(3.4028234663852886e38);K=O(3.4028234663852886e38);M=O(-3.4028234663852886e38);P=O(-3.4028234663852886e38);while(1){d=H[((H[f>>2]^-1)+y<<2)+h>>2];H[(g<<2)+l>>2]=d;n=d<<2;m=g<<3;H[n+b>>2]=m|r;d=N(d,24)+V|0;_=L[d+4>>2];A=L[d+8>>2];C=L[d+16>>2];D=L[d+20>>2];E=L[d>>2];m=j+m|0;q=L[n+U>>2];T=O(q+L[d+12>>2]);d=(B(T),v(2));H[m+4>>2]=(d|0)>=0?d|-2147483648:d^-1;E=O(E-q);d=(B(E),v(2));H[m>>2]=(d|0)>=0?d|-2147483648:d^-1;d=p+(g<<4)|0;D=O(q+D);L[d+12>>2]=D;C=O(q+C);L[d+8>>2]=C;A=O(A-q);L[d+4>>2]=A;q=O(_-q);L[d>>2]=q;G=G>D?G:D;M=M>C?M:C;P=P>T?P:T;I=IJ?J:q;K=K>2]=K;L[a+32>>2]=G;L[a+28>>2]=M;L[a+24>>2]=P;L[a+20>>2]=I;L[a+16>>2]=J;m:{b=H[c>>2];n:{if(b){Lw(b,i);break n}if(!i){break m}b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,i)}b=H[c>>2];if(!b){break m}Lw(b,e);break i}if(e){b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,e)}break i}if(l){b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,l)}b=H[a+60>>2];if(b){d=H[33808]+12|0;Ra[H[H[d>>2]+12>>2]](d,b);H[a+60>>2]=0}b=H[a+56>>2];if(b){d=H[33808]+12|0;Ra[H[H[d>>2]+12>>2]](d,b)}H[a+48>>2]=0;H[a+52>>2]=0;H[a+56>>2]=0;H[a+60>>2]=0;b=H[a+36>>2];if(!b){break i}d=H[33808]+12|0;Ra[H[H[d>>2]+12>>2]](d,b);H[a+36>>2]=0}H[a+40>>2]=o;H[a+44>>2]=o;if(!h){break a}a=H[c>>2];if(a){Lw(a,h);break a}a=H[33808]+12|0;Ra[H[H[a>>2]+12>>2]](a,h)}Oa=s+5168|0}function MP(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=O(0),j=0,k=0,l=O(0),m=O(0),n=O(0),o=0,p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=0,x=0,y=O(0),z=O(0),A=0,B=O(0),C=O(0),D=O(0),E=O(0),M=O(0),P=O(0),Q=0,R=O(0),S=O(0),T=O(0);d=H[a+100>>2];w=Oa-16|0;Oa=w;a=H[d+988>>2];if(a){c=H[a+212>>2];if(c){e=H[a+208>>2];while(1){f=H[e+(b<<2)>>2];g=I[H[f-20>>2]+9|0];a=H[d+1012>>2];H[w+8>>2]=H[f+80>>2];Ra[H[H[a>>2]+44>>2]](a,(g|0)==2,w+8|0);b=b+1|0;if((c|0)!=(b|0)){continue}break}a=H[d+988>>2]}H[a+212>>2]=0}a=H[d+4628>>2];if(a){Lw(H[d+976>>2],a);H[d+4628>>2]=0}f=Oa-32|0;Oa=f;a:{if(!H[d+2344>>2]){break a}k=H[d+4668>>2];if(!k){break a}H[d+2324>>2]=0;g=d+2320|0;if(k>>>0>(H[d+2328>>2]&2147483647)>>>0){b=0;b:{if(!k){break b}c=k<<2;if(!c){break b}a=H[33808];b=Ra[H[H[a>>2]+20>>2]](a)|0?47750:55639;b=Ra[H[H[a+12>>2]+8>>2]](a+12|0,c,b,13582,553)|0}a=H[g+4>>2];if((a|0)>0){e=(a<<2)+b|0;c=H[g>>2];a=b;while(1){H[a>>2]=H[c>>2];c=c+4|0;a=a+4|0;if(e>>>0>a>>>0){continue}break}}c:{if(H[g+8>>2]<0){break c}a=H[g>>2];if(!a){break c}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,a)}H[g+8>>2]=k;H[g>>2]=b}H[d+2336>>2]=0;h=d+2332|0;if(k>>>0>(H[d+2340>>2]&2147483647)>>>0){Uu(h,k)}Q=H[d+4636>>2];while(1){a=H[(A<<2)+Q>>2];d:{if(F[a+92|0]&1){break d}c=H[a+44>>2];a=c;b=H[((I[a+9|0]<<2)+135180|0)+40>>2]+a|0;H[f>>2]=b;a=H[d+2324>>2];e:{if(a>>>0>=(H[d+2328>>2]&2147483647)>>>0){b=0;a=H[g+8>>2]&2147483647;o=a?a<<1:1;f:{if(!o){break f}e=o<<2;if(!e){break f}a=H[33808];b=Ra[H[H[a>>2]+20>>2]](a)|0?47750:55639;b=Ra[H[H[a+12>>2]+8>>2]](a+12|0,e,b,13582,553)|0}e=H[g+4>>2];x=(e<<2)+b|0;if((e|0)>0){j=H[g>>2];a=b;while(1){H[a>>2]=H[j>>2];j=j+4|0;a=a+4|0;if(x>>>0>a>>>0){continue}break}}H[x>>2]=H[f>>2];g:{if(H[g+8>>2]<0){break g}a=H[g>>2];if(!a){break g}e=H[33808];Ra[H[H[e+12>>2]+12>>2]](e+12|0,a);e=H[g+4>>2]}H[g+8>>2]=o;H[g>>2]=b;H[g+4>>2]=e+1;break e}H[H[d+2320>>2]+(a<<2)>>2]=b;H[d+2324>>2]=a+1}R=L[c+32>>2];S=L[c+36>>2];q=L[c+40>>2];y=L[c- -64>>2];z=L[c+72>>2];r=L[c+68>>2];s=L[c+24>>2];l=L[c+56>>2];t=L[c+20>>2];m=L[c+52>>2];n=L[c+28>>2];i=L[c+60>>2];p=L[c+48>>2];u=L[c+16>>2];D=O(O(s*l)+O(O(t*m)+O(O(n*i)+O(p*u))));L[f+12>>2]=D;E=O(O(p*t)+O(O(O(i*s)-O(n*l))-O(u*m)));L[f+8>>2]=E;M=O(O(l*u)+O(O(O(i*t)-O(n*m))-O(s*p)));L[f+4>>2]=M;P=O(O(m*s)+O(O(O(i*u)-O(n*p))-O(t*l)));L[f>>2]=P;T=q;q=O(z*O(-2));y=O(y*O(-2));z=O(r*O(-2));B=O(O(l*q)+O(O(p*y)+O(m*z)));C=O(O(i*i)+O(-.5));r=O(O(l*B)+O(O(q*C)-O(i*O(O(p*z)-O(y*m)))));r=O(r+r);v=O(O(p*B)+O(O(y*C)-O(i*O(O(m*q)-O(z*l)))));v=O(v+v);i=O(O(m*B)+O(O(z*C)-O(i*O(O(l*y)-O(q*p)))));i=O(i+i);l=O(O(s*r)+O(O(u*v)+O(t*i)));m=O(O(n*n)+O(-.5));p=O(T+O(O(s*l)+O(O(r*m)+O(n*O(O(u*i)-O(v*t))))));L[f+24>>2]=p;q=O(S+O(O(t*l)+O(O(i*m)+O(n*O(O(s*v)-O(r*u))))));L[f+20>>2]=q;n=O(R+O(O(u*l)+O(O(v*m)+O(n*O(O(t*r)-O(i*s))))));L[f+16>>2]=n;b=H[d+2336>>2];if(b>>>0>=(H[d+2340>>2]&2147483647)>>>0){c=0;a=H[h+8>>2]&2147483647;x=a?a<<1:1;h:{if(!x){break h}b=N(x,28);if(!b){break h}a=H[33808];c=Ra[H[H[a>>2]+20>>2]](a)|0?33112:55639;c=Ra[H[H[a+12>>2]+8>>2]](a+12|0,b,c,13582,553)|0}o=H[h+4>>2];j=N(o,28)+c|0;e=H[h>>2];if((o|0)>0){b=e;a=c;while(1){L[a>>2]=L[b>>2];L[a+4>>2]=L[b+4>>2];L[a+8>>2]=L[b+8>>2];L[a+12>>2]=L[b+12>>2];L[a+16>>2]=L[b+16>>2];L[a+20>>2]=L[b+20>>2];L[a+24>>2]=L[b+24>>2];b=b+28|0;a=a+28|0;if(j>>>0>a>>>0){continue}break}}L[j>>2]=L[f>>2];L[j+4>>2]=L[f+4>>2];L[j+8>>2]=L[f+8>>2];L[j+12>>2]=L[f+12>>2];L[j+16>>2]=L[f+16>>2];L[j+20>>2]=L[f+20>>2];L[j+24>>2]=L[f+24>>2];if(!(!e|H[h+8>>2]<0)){a=H[33808];Ra[H[H[a+12>>2]+12>>2]](a+12|0,e);o=H[h+4>>2]}H[h+8>>2]=x;H[h>>2]=c;H[h+4>>2]=o+1;break d}a=H[d+2332>>2]+N(b,28)|0;L[a+16>>2]=n;L[a+12>>2]=D;L[a+8>>2]=E;L[a+4>>2]=M;L[a>>2]=P;L[a+24>>2]=p;L[a+20>>2]=q;H[d+2336>>2]=b+1}A=A+1|0;if((k|0)!=(A|0)){continue}break}a=H[d+2324>>2];if(!a){break a}b=H[d+2344>>2];Ra[H[H[b>>2]+20>>2]](b,H[d+2320>>2],H[d+2332>>2],a)}Oa=f+32|0;b=H[d+1288>>2];if(b){A=H[d+1256>>2];while(1){b=b-1|0;f=H[A+(b<<2)>>2];c=H[f+48>>2];if(H[(H[H[c+1004>>2]+168>>2]+(H[f+40>>2]<<5)|0)+12>>2]){F[f+68|0]=I[f+68|0]|8;g=Oa-16|0;Oa=g;e=H[f+52>>2];H[g+12>>2]=e;a=H[c+1244>>2];i:{if(a>>>0>=(H[c+1248>>2]&2147483647)>>>0){a=0;e=c+1240|0;c=H[e+8>>2]&2147483647;k=c?c<<1:1;j:{if(!k){break j}c=k<<2;if(!c){break j}a=H[33808];h=Ra[H[H[a>>2]+20>>2]](a)|0?52306:55639;a=Ra[H[H[a+12>>2]+8>>2]](a+12|0,c,h,13582,553)|0}h=H[e+4>>2];o=(h<<2)+a|0;if((h|0)>0){j=H[e>>2];c=a;while(1){H[c>>2]=H[j>>2];j=j+4|0;c=c+4|0;if(o>>>0>c>>>0){continue}break}}H[o>>2]=H[g+12>>2];k:{if(H[e+8>>2]<0){break k}c=H[e>>2];if(!c){break k}h=H[33808];Ra[H[H[h+12>>2]+12>>2]](h+12|0,c);h=H[e+4>>2]}H[e+8>>2]=k;H[e>>2]=a;H[e+4>>2]=h+1;break i}H[H[c+1240>>2]+(a<<2)>>2]=e;H[c+1244>>2]=a+1}Oa=g+16|0;a=H[f+52>>2];G[a>>1]=J[a>>1]|1;MG(H[f+56>>2]);a=H[f+56>>2];c=H[a>>2];a=H[a+4>>2];YD(K[c+28>>2]>2]?c:a,1,1)}if(b){continue}break}}b=H[d+2376>>2];a=b;if(H[a+36>>2]){e=b+8|0;a=0;while(1){c=H[H[b+32>>2]+(a<<2)>>2];H[w+12>>2]=c;l:{if((c|0)==(H[b+4>>2]-1|0)){H[b+4>>2]=c;break l}f=H[b+12>>2];if(f>>>0>=(H[b+16>>2]&2147483647)>>>0){qm(e,w+12|0);break l}H[H[b+8>>2]+(f<<2)>>2]=c;H[b+12>>2]=H[b+12>>2]+1}a=a+1|0;if(a>>>0>2]){continue}break}a=H[d+2376>>2]}H[b+36>>2]=0;S6(H[a+20>>2],0,H[a+24>>2]<<2);b=H[d+4592>>2];c=H[d+4600>>2]+2|0;if(b>>>0>c>>>0){while(1){b=b-1|0;a=H[H[d+4588>>2]+(b<<2)>>2];H[d+4592>>2]=b;if(a){b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,a);b=H[d+4592>>2]}if(b>>>0>c>>>0){continue}break}}H[d+4600>>2]=0;H[d+4604>>2]=0;H[d+1092>>2]=H[d+1092>>2]+1;Oa=w+16|0}function TW(a,b,c,d,e,f,g,h,i){var j=0,k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=0,s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=0,A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),F=O(0),G=O(0),J=O(0),K=O(0),M=O(0),N=O(0),P=O(0),Q=O(0),S=O(0),T=O(0),U=0,V=O(0),X=O(0),Y=O(0),Z=O(0),_=O(0),$=O(0),aa=O(0);j=Oa-272|0;Oa=j;H[j+264>>2]=0;H[j+268>>2]=0;H[j+256>>2]=0;H[j+260>>2]=0;t=L[d+8>>2];u=L[d+4>>2];y=L[d>>2];F=L[e+8>>2];A=L[e+4>>2];G=L[e>>2];H[j+240>>2]=1;z=H[b+4>>2];q=L[z+52>>2];s=L[z+56>>2];r=H[a+4>>2];v=L[r+72>>2];m=L[r- -64>>2];n=L[r+68>>2];o=L[r+56>>2];w=L[r+52>>2];J=L[r+88>>2];Q=L[r+80>>2];S=L[r+84>>2];C=L[z+48>>2];D=L[r+48>>2];k=L[c+8>>2];l=L[c>>2];p=L[c+4>>2];H[j+196>>2]=0;H[j+200>>2]=0;H[j+204>>2]=0;H[j+208>>2]=0;H[j+212>>2]=0;H[j+216>>2]=0;H[j+220>>2]=0;H[j+224>>2]=0;H[j+228>>2]=0;H[j+232>>2]=0;c=0;H[j+236>>2]=0;H[j+188>>2]=0;H[j+192>>2]=0;K=v;B=J;r=O(O(k*k)+O(O(l*l)+O(p*p)))>O(1.1920928955078125e-7);l=r?l:O(1);E=l;x=r?k:O(0);k=r?p:O(0);l=O(O(1)/O(W(O(O(x*x)+O(O(l*l)+O(k*k))))));N=O(E*l);p=O(-N);k=O(k*l);l=O(x*l);v=O(O(O(m*p)-O(n*k))-O(v*l));J=O(O(O(Q*p)-O(S*k))-O(J*l));r=v>J;p=O(O(O(D*p)-O(w*k))-O(o*l));U=!(p>v)|!(p>J);p=U?r?K:B:o;l=l>O(0)?s:O(-s);o=O(p-l);L[j+184>>2]=o;s=U?r?n:S:w;k=k>O(0)?q:O(-q);n=O(s-k);L[j+180>>2]=n;q=U?r?m:Q:D;v=N>O(0)?C:O(-C);m=O(q-v);L[j+176>>2]=m;H[j+132>>2]=0;H[j+136>>2]=0;H[j+140>>2]=0;H[j+144>>2]=0;H[j+148>>2]=0;H[j+152>>2]=0;H[j+156>>2]=0;H[j+160>>2]=0;H[j+164>>2]=0;H[j+168>>2]=0;H[j+172>>2]=0;H[j+124>>2]=0;H[j+128>>2]=0;L[j+120>>2]=p;L[j+116>>2]=s;L[j+112>>2]=q;H[j+68>>2]=0;H[j+72>>2]=0;H[j+76>>2]=0;H[j+80>>2]=0;H[j+84>>2]=0;H[j+88>>2]=0;H[j+92>>2]=0;H[j+96>>2]=0;H[j+100>>2]=0;H[j+104>>2]=0;H[j+108>>2]=0;H[j+60>>2]=0;H[j+64>>2]=0;L[j+56>>2]=l;L[j+52>>2]=k;L[j+48>>2]=v;k=O(-o);l=O(-n);p=O(-m);w=O(O(o*o)+O(O(m*m)+O(n*n)));q=L[z+24>>2];q=O((qV)){q=p;s=l;v=k;J=m;Q=n;S=o;break b}N=O(q+i);$=O(N*N);i=O(O(G*O(0))+y);C=O(O(A*O(0))+u);D=O(O(F*O(0))+t);v=k;s=l;q=p;while(1){J=m;Q=n;S=o;m=O(O(1)/O(W(O(O(k*k)+O(O(p*p)+O(l*l))))));o=O(p*m);c=H[a+4>>2];x=L[c- -64>>2];y=L[c+72>>2];n=O(k*m);m=O(l*m);u=L[c+68>>2];t=O(O(y*n)+O(O(x*o)+O(m*u)));P=L[c+88>>2];F=L[c+80>>2];G=L[c+84>>2];A=O(O(P*n)+O(O(F*o)+O(m*G)));r=t>A;K=t;E=L[c+56>>2];t=L[c+48>>2];B=L[c+52>>2];T=O(O(E*n)+O(O(t*o)+O(m*B)));c=!(K>2];x=L[z+48>>2];x=o>2];T=m>2];X=nO(0)){c=0;Z=L[e+8>>2];aa=O(n*Z);n=L[e>>2];K=m;m=L[e+4>>2];K=O(aa+O(O(o*n)+O(K*m)));if(K>=O(0)){break a}o=M;M=O(o-O(Y/K));if(M>o){if(M>O(1)){break a}s=L[d+8>>2];q=L[d+4>>2];v=L[d>>2];H[j+92>>2]=0;H[j+76>>2]=0;H[j+60>>2]=0;o=O(v+O(n*M));i=O(o-i);v=O(i+L[j+80>>2]);L[j+80>>2]=v;n=O(q+O(m*M));q=O(n-C);w=O(q+L[j+84>>2]);L[j+84>>2]=w;m=O(s+O(Z*M));s=O(m-D);C=O(s+L[j+88>>2]);L[j+88>>2]=C;D=O(i+L[j+64>>2]);L[j+64>>2]=D;t=O(q+L[j+68>>2]);L[j+68>>2]=t;u=O(s+L[j+72>>2]);L[j+72>>2]=u;i=O(i+L[j+48>>2]);L[j+48>>2]=i;q=O(q+L[j+52>>2]);L[j+52>>2]=q;s=O(s+L[j+56>>2]);L[j+56>>2]=s;y=L[j+112>>2];A=L[j+116>>2];B=L[j+120>>2];H[j+188>>2]=0;L[j+184>>2]=B-s;L[j+180>>2]=A-q;L[j+176>>2]=y-i;i=L[j+128>>2];q=L[j+132>>2];s=L[j+136>>2];H[j+204>>2]=0;L[j+200>>2]=s-u;L[j+196>>2]=q-t;L[j+192>>2]=i-D;i=L[j+144>>2];q=L[j+148>>2];s=L[j+152>>2];H[j+220>>2]=0;L[j+216>>2]=s-C;L[j+212>>2]=q-w;L[j+208>>2]=i-v;E=O(X+m);y=O(P-E);B=O(T+n);u=O(G-B);A=O(x+o);t=O(F-A);q=p;s=l;v=k;i=o;C=n;D=m;k=O(3.4028234663852886e38)}else{k=w}}else{k=w}x=k;r=H[j+240>>2];z=r<<4;c=z+(j+112|0)|0;H[c+12>>2]=0;L[c+8>>2]=P;L[c+4>>2]=G;L[c>>2]=F;c=z+(j+48|0)|0;H[c+12>>2]=0;L[c+8>>2]=E;L[c+4>>2]=B;L[c>>2]=A;c=z+(j+176|0)|0;H[c+12>>2]=0;L[c+8>>2]=y;L[c+4>>2]=u;L[c>>2]=t;H[j+240>>2]=r+1;c:{d:{switch(r-1|0){case 0:o=L[j+184>>2];k=O(L[j+200>>2]-o);n=L[j+176>>2];l=O(L[j+192>>2]-n);m=L[j+180>>2];p=O(L[j+196>>2]-m);w=O(O(k*k)+O(O(l*l)+O(p*p)));if(w<=O(1.1920928955078125e-7)){H[j+240>>2]=1;c=H[j+180>>2];H[j+32>>2]=H[j+176>>2];H[j+36>>2]=c;c=H[j+188>>2];H[j+40>>2]=H[j+184>>2];H[j+44>>2]=c;break c}t=k;k=O(R(O(O(O(O(O(-n)*l)-O(p*m))-O(o*k))/w),O(1)));k=k>O(0)?k:O(0);L[j+40>>2]=o+O(t*k);L[j+36>>2]=m+O(p*k);L[j+32>>2]=n+O(l*k);break c;case 1:GU(j+32|0,j+176|0,j+112|0,j+48|0,j+240|0);break c;case 2:BZ(j+32|0,j+176|0,j+112|0,j+48|0,j+240|0);break c;default:break d}}L[j+40>>2]=y;L[j+36>>2]=u;L[j+32>>2]=t}o=L[j+40>>2];k=O(-o);n=L[j+36>>2];l=O(-n);m=L[j+32>>2];p=O(-m);w=O(O(o*o)+O(O(m*m)+O(n*n)));if($>2]+32|0];t=O(0);u=O(0);d=!(w>V)|c;i=d?v:k;k=d?q:p;l=d?s:l;p=O(W(O(O(i*i)+O(O(k*k)+O(l*l)))));if(!(p<=O(1.1920928955078125e-7))){v=i;i=O(O(1)/p);_=O(v*i);u=O(k*i);t=O(l*i)}H[g+12>>2]=0;L[g+8>>2]=-_;L[g+4>>2]=-t;L[g>>2]=-u;L[f>>2]=M;H[f+12>>2]=H[j+252>>2];d=H[j+248>>2];H[f+4>>2]=H[j+244>>2];H[f+8>>2]=d;H[j+44>>2]=0;L[j+40>>2]=c?S:o;L[j+36>>2]=c?Q:n;L[j+32>>2]=c?J:m;c=H[j+268>>2];e=H[j+264>>2];H[j+24>>2]=e;H[j+28>>2]=c;d=H[j+260>>2];f=H[j+256>>2];H[j+16>>2]=f;H[j+20>>2]=d;H[j+8>>2]=e;H[j+12>>2]=c;H[j>>2]=f;H[j+4>>2]=d;FU(j+176|0,j+112|0,j+48|0,j+32|0,j+16|0,j,H[j+240>>2]);i=L[H[a+4>>2]+16>>2];k=L[j+16>>2];l=L[j+20>>2];p=L[j+24>>2];H[h+12>>2]=0;L[h+8>>2]=p+(b?O(_*i):O(-0));L[h+4>>2]=l+(b?O(t*i):O(-0));L[h>>2]=k+(b?O(u*i):O(-0));c=1}Oa=j+272|0;return c}function UU(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=O(0),h=0,i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),F=O(0),G=O(0),H=O(0),I=O(0),J=O(0),K=O(0),M=O(0),N=O(0),Q=O(0),R=O(0),S=O(0),T=O(0),U=O(0),V=O(0),X=O(0),Y=O(0),Z=O(0);h=Oa-112|0;Oa=h;k=L[d+20>>2];n=L[d+16>>2];t=L[d+24>>2];l=L[d>>2];m=O(l+l);w=L[d+8>>2];x=L[d+4>>2];j=L[d+12>>2];o=O(j+j);p=L[c+8>>2];y=O(O(O(m*w)-O(x*o))*p);L[h+84>>2]=t-y;w=O(p*O(O(w*o)+O(m*x)));L[h+80>>2]=k-w;L[h+72>>2]=y+t;L[h+68>>2]=k+w;k=O(p*O(O(l*m)+O(O(j*o)+O(-1))));L[h+76>>2]=n-k;L[h+64>>2]=n+k;L[h+88>>2]=L[c+4>>2];n=L[f+4>>2];m=O(n+n);k=L[f+8>>2];p=O(m*k);j=L[f>>2];l=O(j+j);o=L[f+12>>2];t=O(l*o);L[h+28>>2]=p-t;L[h+20>>2]=p+t;j=O(O(1)-O(j*l));p=O(n*m);L[h+32>>2]=j-p;g=j;j=O(k+k);t=O(k*j);L[h+16>>2]=g-t;k=O(l*k);m=O(m*o);L[h+24>>2]=k+m;n=O(l*n);l=O(j*o);L[h+12>>2]=n-l;L[h+8>>2]=k-m;L[h+4>>2]=n+l;L[h>>2]=O(O(1)-p)-t;L[h+36>>2]=L[f+16>>2];L[h+40>>2]=L[f+20>>2];L[h+44>>2]=L[f+24>>2];L[h+48>>2]=L[e+4>>2];L[h+52>>2]=L[e+8>>2];L[h+56>>2]=L[e+12>>2];f=0;k=sZ(h- -64|0,h+76|0,h+36|0,h+48|0,h,h+108|0,h+96|0);z=L[h+88>>2];a:{if(k>O(z*z)){break a}b:{c:{if(k==O(0)){j=L[h+32>>2];o=L[h+28>>2];p=L[h+20>>2];t=L[h+16>>2];w=L[h+24>>2];x=L[h+12>>2];y=L[h+8>>2];A=L[h+4>>2];B=L[h>>2];T=L[h+44>>2];U=L[h+40>>2];V=L[h+36>>2];N=L[h+84>>2];Q=L[h+80>>2];R=L[h+76>>2];H=L[h+72>>2];I=L[h+68>>2];J=L[h+64>>2];break c}H=L[h+72>>2];n=L[h+108>>2];N=L[h+84>>2];l=L[h+96>>2];y=L[h+8>>2];m=L[h+100>>2];p=L[h+20>>2];o=L[h+104>>2];j=L[h+32>>2];T=L[h+44>>2];g=O(O(H+O(n*O(N-H)))-O(O(O(O(l*y)+O(m*p))+O(o*j))+T));J=L[h+64>>2];R=L[h+76>>2];B=L[h>>2];x=L[h+12>>2];w=L[h+24>>2];V=L[h+36>>2];S=O(O(J+O(n*O(R-J)))-O(O(O(O(l*B)+O(m*x))+O(o*w))+V));I=L[h+68>>2];Q=L[h+80>>2];A=L[h+4>>2];t=L[h+16>>2];C=o;o=L[h+28>>2];U=L[h+40>>2];n=O(O(I+O(n*O(Q-I)))-O(O(O(O(l*A)+O(m*t))+O(C*o))+U));l=O(W(O(O(g*g)+O(O(S*S)+O(n*n)))));if(l==O(0)){break c}l=O(O(1)/l);L[a+8>>2]=g*l;L[a+4>>2]=n*l;L[a>>2]=S*l;k=O(z-O(W(k)));L[b>>2]=k>O(0)?k:O(0);break b}k=O(O(H*y)+O(O(J*B)+O(A*I)));n=O(O(N*y)+O(O(R*B)+O(A*Q)));c=k>n;m=O(z+(c?k:n));l=O(O(T*y)+O(O(V*B)+O(A*U)));q=O(P(O(O(j*y)+O(O(w*B)+O(o*A)))));S=L[h+56>>2];X=L[h+48>>2];r=O(P(O(O(p*y)+O(O(x*B)+O(t*A)))));Y=L[h+52>>2];g=O(O(q*S)+O(O(O(P(O(O(y*y)+O(O(B*B)+O(A*A)))))*X)+O(r*Y)));i=O(l-g);if(mm?m:g;if(!(mi;D=O(z+(c?g:i));K=O(O(T*p)+O(O(V*x)+O(t*U)));M=O(P(O(O(j*p)+O(O(w*x)+O(o*t)))));r=O(O(M*S)+O(O(r*X)+O(O(P(O(O(p*p)+O(O(x*x)+O(t*t)))))*Y)));C=O(K-r);if(Di?i:g;if(gi;r=O(z+(c?g:i));D=O(O(T*j)+O(O(V*w)+O(o*U)));q=O(O(O(P(O(O(j*j)+O(O(w*w)+O(o*o)))))*S)+O(O(q*X)+O(M*Y)));K=O(D-q);if(ri?i:g;if(gO(0)){C=g;g=O(O(1)/O(W(r)));E=O(C*g);F=O(q*g);G=O(i*g)}g=O(O(G*A)-O(B*F));q=O(O(F*y)-O(A*E));i=O(O(E*B)-O(y*G));if(O(P(g))>O(9.999999974752427e-7)?1:O(P(q))>O(9.999999974752427e-7)|O(P(i))>O(9.999999974752427e-7)){r=O(O(g*g)+O(O(q*q)+O(i*i)));if(r>O(0)){C=g;g=O(O(1)/O(W(r)));s=O(C*g);v=O(i*g);u=O(q*g)}g=O(O(H*s)+O(O(J*u)+O(I*v)));i=O(O(N*s)+O(O(R*u)+O(Q*v)));c=g>i;q=O(z+(c?g:i));r=O(O(T*s)+O(O(V*u)+O(U*v)));D=O(O(O(P(O(O(j*s)+O(O(w*u)+O(o*v)))))*S)+O(O(O(P(O(O(y*s)+O(O(B*u)+O(A*v)))))*X)+O(Y*O(P(O(O(p*s)+O(O(x*u)+O(t*v))))))));K=O(r-D);if(qi?i:g;c=gO(9.999999974752427e-7)?1:O(P(q))>O(9.999999974752427e-7)|O(P(i))>O(9.999999974752427e-7)){u=O(0);v=O(0);s=O(0);M=O(O(g*g)+O(O(q*q)+O(i*i)));if(M>O(0)){C=g;g=O(O(1)/O(W(M)));s=O(C*g);v=O(i*g);u=O(q*g)}g=O(O(H*s)+O(O(J*u)+O(I*v)));i=O(O(N*s)+O(O(R*u)+O(Q*v)));c=g>i;q=O(z+(c?g:i));M=O(O(T*s)+O(O(V*u)+O(U*v)));C=O(O(O(P(O(O(j*s)+O(O(w*u)+O(o*v)))))*S)+O(O(O(P(O(O(y*s)+O(O(B*u)+O(A*v)))))*X)+O(Y*O(P(O(O(p*s)+O(O(x*u)+O(t*v))))))));Z=O(M-C);if(qi?i:g;c=gO(9.999999974752427e-7)?1:O(P(u))>O(9.999999974752427e-7)|O(P(s))>O(9.999999974752427e-7)){G=O(0);F=O(0);E=O(0);v=O(O(g*g)+O(O(u*u)+O(s*s)));if(v>O(0)){C=g;g=O(O(1)/O(W(v)));E=O(C*g);F=O(s*g);G=O(u*g)}g=O(O(H*E)+O(O(J*G)+O(I*F)));s=O(O(N*E)+O(O(R*G)+O(Q*F)));c=g>s;u=O(z+(c?g:s));v=O(O(T*E)+O(O(V*G)+O(U*F)));j=O(O(O(P(O(O(j*E)+O(O(w*G)+O(o*F)))))*S)+O(O(O(P(O(O(y*E)+O(O(B*G)+O(A*F)))))*X)+O(Y*O(P(O(O(p*E)+O(O(x*G)+O(t*F))))))));o=O(v-j);if(uo?o:j;c=j>2]=m>O(0)?m:O(0);b=O(O(k*O(O(O(N+H)*O(.5))-T))+O(O(l*O(O(O(R+J)*O(.5))-V))+O(O(O(O(Q+I)*O(.5))-U)*n)))>2]=b?O(-k):k;L[a+4>>2]=b?O(-n):n;L[a>>2]=b?O(-l):l}f=1}Oa=h+112|0;return f|0}function Cu(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=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),F=O(0),G=O(0),I=O(0),J=O(0),K=O(0),M=O(0),N=O(0),Q=O(0),S=O(0),T=O(0),U=O(0),V=O(0),X=O(0),Y=O(0),Z=O(0);f=Oa-112|0;Oa=f;j=L[b+8>>2];l=L[d+24>>2];F=L[c+24>>2];k=L[d+20>>2];G=L[c+20>>2];i=L[a+8>>2];A=L[e>>2];Q=L[b+4>>2];t=L[a+4>>2];w=L[d+8>>2];p=L[d>>2];x=L[d+4>>2];s=L[d+12>>2];B=L[d+16>>2];I=L[c+16>>2];y=L[c+4>>2];m=L[c>>2];z=L[c+8>>2];q=L[c+12>>2];H[f+108>>2]=0;n=G;G=O(O(G+k)*O(.5));D=O(n-G);J=O(m+m);C=O(q+q);n=O(i*O(O(y*J)+O(z*C)));u=O(D+n);L[f+100>>2]=u;o=F;F=O(O(F+l)*O(.5));r=O(o-F);y=O(i*O(O(J*z)-O(y*C)));z=O(r+y);L[f+104>>2]=z;o=I;I=O(O(I+B)*O(.5));E=O(o-I);i=O(i*O(O(O(m*J)+O(q*C))+O(-1)));m=O(E+i);L[f+96>>2]=m;H[f+92>>2]=0;y=O(r-y);C=O(y-z);L[f+88>>2]=C;z=O(D-n);D=O(z-u);L[f+84>>2]=D;J=O(E-i);E=O(J-m);L[f+80>>2]=E;H[f+76>>2]=0;q=O(l-F);i=O(p+p);m=O(s+s);l=O(j*O(O(w*i)-O(x*m)));o=O(q+l);L[f+72>>2]=o;k=O(k-G);w=O(j*O(O(i*x)+O(w*m)));x=O(k+w);L[f+68>>2]=x;B=O(B-I);j=O(j*O(O(O(p*i)+O(s*m))+O(-1)));i=O(B+j);L[f+64>>2]=i;H[f+60>>2]=0;n=O(k-w);K=O(n-x);L[f+52>>2]=K;u=O(B-j);M=O(u-i);L[f+48>>2]=M;r=O(q-l);o=O(r-o);L[f+56>>2]=o;j=L[f+80>>2];i=L[f+84>>2];p=L[f+88>>2];s=O(O(O(j*j)+O(i*i))+O(p*p));m=L[f+48>>2];q=L[f+52>>2];l=L[f+56>>2];k=O(O(O(j*m)+O(i*q))+O(p*l));w=O(O(O(m*m)+O(q*q))+O(l*l));x=O(O(s*w)-O(k*k));v=s>O(1.1920928955078125e-7)?O(O(1)/s):O(0);a=f- -64|0;s=O(L[f+104>>2]-L[a+8>>2]);B=O(l*s);S=m;m=O(L[f+96>>2]-L[a>>2]);l=O(L[f+100>>2]-L[a+4>>2]);q=O(B+O(O(S*m)+O(l*q)));i=O(O(O(m*j)+O(l*i))+O(s*p));j=O(R(O(O(O(k*q)-O(i*w))/x),O(1)));j=O(R(O((w>O(1.1920928955078125e-7)?O(O(1)/w):O(0))*O(q+O(k*(xO(0)?j:O(0))))),O(1)));j=j>O(0)?j:O(0);i=O(R(O(v*O(O(k*j)-i)),O(1)));i=i>O(0)?i:O(0);L[f+32>>2]=i;L[f+16>>2]=j;p=O(O(L[f+104>>2]+O(L[f+88>>2]*i))-O(O(L[f+56>>2]*j)+L[a+8>>2]));m=O(p*p);p=O(O(L[f+96>>2]+O(L[f+80>>2]*i))-O(L[a>>2]+O(L[f+48>>2]*j)));j=O(O(L[f+100>>2]+O(L[f+84>>2]*i))-O(L[a+4>>2]+O(L[f+52>>2]*j)));L[f>>2]=m+O(O(p*p)+O(j*j));w=O(t+Q);j=O(A+w);x=O(j*j);Q=L[f>>2];e=x>=Q;a:{if(!e){break a}T=O(O(C*C)+O(O(E*E)+O(D*D)));j=O(O(1)/O(W(T)));B=L[f+88>>2];a=T>2];b=p>2];K=L[f+48>>2];D=L[f+84>>2];M=L[f+52>>2];b:{c:{if(!(O(P(O(O((a?O(0):O(j*B))*(b?O(0):O(i*E)))+O(O((a?O(0):O(j*C))*(b?O(0):O(i*K)))+O((a?O(0):O(j*D))*(b?O(0):O(i*M)))))))>O(.9998000264167786))){p=L[f+72>>2];s=L[f+68>>2];m=L[f+64>>2];j=L[f+104>>2];i=L[f+100>>2];q=L[f+96>>2];break c}m=L[f+64>>2];j=O(u-m);s=L[f+68>>2];i=O(n-s);p=L[f+72>>2];l=O(r-p);Y=O(O(O(O(J-m)*j)+O(O(z-s)*i))+O(O(y-p)*l));N=O(O(l*l)+O(O(j*j)+O(i*i)));c=N!=O(0);q=L[f+96>>2];o=i;i=L[f+100>>2];o=O(O(j*O(q-m))+O(o*O(i-s)));j=L[f+104>>2];Z=O(O(o+O(l*O(j-p)))/N);k=O(y-j);o=O(J-q);A=O(z-i);v=O(O(k*k)+O(O(o*o)+O(A*A)));a=v!=O(0);l=a?O(O(O(O(O(u-q)*o)+O(O(n-i)*A))+O(O(r-j)*k))/v):O(0);b=0;k=a?O(O(O(O(O(m-q)*o)+O(O(s-i)*A))+O(O(p-j)*k))/v):O(0);d:{if(!(k>=O(0))|!(k<=O(1))){break d}U=O(j+O(B*k));o=O(U-p);V=O(q+O(C*k));A=O(V-m);X=O(i+O(D*k));k=O(X-s);v=O(O(o*o)+O(O(A*A)+O(k*k)));if(!(v>O(9.999999974752427e-7))|!(x>v)){break d}b=1;a=H[g+4096>>2];H[g+4096>>2]=a+1;a=(a<<6)+g|0;H[a+52>>2]=-1;v=O(W(v));L[a+12>>2]=v-w;S=o;o=O(O(1)/v);v=O(S*o);L[a+8>>2]=v;k=O(k*o);L[a+4>>2]=k;o=O(A*o);L[a>>2]=o;L[a+24>>2]=F+O(U-O(t*v));L[a+20>>2]=G+O(X-O(t*k));L[a+16>>2]=I+O(V-O(t*o))}o=O(Y/N);k=c?Z:O(0);e:{if(!(l>=O(0))|!(l<=O(1))){break e}A=O(j+O(l*B));r=O(A-r);N=O(q+O(l*C));u=O(N-u);v=O(i+O(l*D));l=O(v-n);n=O(O(r*r)+O(O(u*u)+O(l*l)));if(!(n>O(9.999999974752427e-7))|!(n>2];H[g+4096>>2]=a+1;a=(a<<6)+g|0;H[a+52>>2]=-1;n=O(W(n));L[a+12>>2]=n-w;n=O(O(1)/n);r=O(r*n);L[a+8>>2]=r;l=O(l*n);L[a+4>>2]=l;n=O(u*n);L[a>>2]=n;L[a+24>>2]=F+O(A-O(t*r));L[a+20>>2]=G+O(v-O(t*l));L[a+16>>2]=I+O(N-O(t*n));b=b+1|0}l=c?o:O(0);f:{if(!(k>=O(0))|!(k<=O(1))){break f}n=O(j-O(O(k*E)+p));u=O(q-O(O(k*K)+m));k=O(i-O(O(k*M)+s));r=O(O(n*n)+O(O(u*u)+O(k*k)));if(!(r>O(9.999999974752427e-7))|!(r>2];H[g+4096>>2]=a+1;a=(a<<6)+g|0;H[a+52>>2]=-1;r=O(W(r));L[a+12>>2]=r-w;o=n;n=O(O(1)/r);r=O(o*n);L[a+8>>2]=r;k=O(k*n);L[a+4>>2]=k;n=O(u*n);L[a>>2]=n;L[a+24>>2]=F+O(j-O(t*r));L[a+20>>2]=G+O(i-O(t*k));L[a+16>>2]=I+O(q-O(t*n));b=b+1|0}g:{if(!(l>=O(0))|!(l<=O(1))){break g}k=O(y-O(O(l*E)+p));n=O(J-O(O(l*K)+m));l=O(z-O(O(l*M)+s));u=O(O(k*k)+O(O(n*n)+O(l*l)));if(!(u>O(9.999999974752427e-7))|!(u>2];H[g+4096>>2]=a+1;b=(a<<6)+g|0;j=O(W(u));i=O(O(1)/j);m=O(n*i);L[b>>2]=m;p=O(k*i);s=O(y-O(t*p));m=O(J-O(t*m));i=O(l*i);t=O(z-O(t*i));break b}if(b){break a}}l=L[f+32>>2];k=L[f+16>>2];a=H[g+4096>>2];H[g+4096>>2]=a+1;b=(a<<6)+g|0;d=T>O(9.999999974752427e-7);y=O(O(C*l)+q);c=Q>2]=m;p=O(j*q);s=O(z-O(t*p));m=O(y-O(t*m));j=c?O(0):O(W(Q));i=O(i*q);t=O(l-O(t*i))}L[b+8>>2]=p;L[b+4>>2]=i;L[b+12>>2]=j-w;a=(a<<6)+g|0;H[a+52>>2]=-1;L[a+16>>2]=I+m;L[a+24>>2]=F+s;L[a+20>>2]=G+t}Oa=f+112|0;return e|0}function dy(a,b,c,d,e,f,g,h,i,j,k,l,m,n){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;k=k|0;l=O(l);m=m|0;n=n|0;var o=0;f=Oa-160|0;Oa=f;e=H[j+4>>2];H[a+544>>2]=H[j>>2];H[a+548>>2]=e;e=H[j+8>>2];g=H[j+12>>2];h=H[j+16>>2];i=H[j+20>>2];k=H[j+28>>2];n=H[j+24>>2];j=H[j+32>>2];L[a+56>>2]=l==O(0)?O(0):O(O(1)/l);L[a+52>>2]=l;H[a+576>>2]=j;H[a+568>>2]=n;H[a+572>>2]=k;H[a+560>>2]=h;H[a+564>>2]=i;H[a+552>>2]=e;H[a+556>>2]=g;L[a+68>>2]=L[m>>2];L[a+72>>2]=L[m+4>>2];L[a+76>>2]=L[m+8>>2];g=H[b+412>>2];h=H[b+320>>2];if(h){e=H[b+148>>2];i=H[b+316>>2];k=H[b+128>>2];j=0;while(1){m=H[i+(j<<2)>>2];n=(m>>>0)/(e>>>0)|0;m=H[H[k+(n<<2)>>2]+(m-N(e,n)<<2)>>2];if(m){F[m+42|0]=0}j=j+1|0;if((h|0)!=(j|0)){continue}break}}e=H[a+180>>2];H[e+608>>2]=H[b+308>>2];a:{if(g){H[e+604>>2]=H[b+284>>2];h=H[b+344>>2];break a}H[e+604>>2]=0;h=0}H[e+600>>2]=h;H[a+536>>2]=0;e=H[a+336>>2];j=H[e>>2];H[e>>2]=0;if(j){m=j;while(1){e=H[m>>2];nA(m);m=e;if(e){continue}break}while(1){e=H[j>>2];h=H[a+336>>2];H[j>>2]=H[h>>2];H[h>>2]=j;j=e;if(e){continue}break}}if(g){Ra[H[H[d>>2]+16>>2]](d);h=yq(H[a+584>>2],40);e=H[a+600>>2];g=H[a+604>>2];H[h+24>>2]=0;H[h+16>>2]=0;H[h+8>>2]=e;H[h+12>>2]=g;H[h+36>>2]=d;H[h+32>>2]=b;H[h+28>>2]=a;H[h>>2]=113636;H[h+20>>2]=c;H[h+24>>2]=1;if(c){Ra[H[H[c>>2]+16>>2]](c);H[h+16>>2]=H[H[h+20>>2]+16>>2]}H[a+192>>2]=0;H[a+196>>2]=0;H[a+216>>2]=0;H[a+208>>2]=0;H[a+212>>2]=0;H[a+200>>2]=0;n=H[b+304>>2];j=H[b+308>>2];H[a+532>>2]=j;d=a+440|0;k=H[b+296>>2];i=H[b+284>>2];c=i+j|0;e=H[a+448>>2]&2147483647;b:{if(c>>>0<=e>>>0){break b}g=e;e=c+31&-32;if(g>>>0>>0){ey(d,e)}e=c+32&-32;if(e>>>0>(H[a+460>>2]&2147483647)>>>0){fy(a+452|0,e)}if(e>>>0<=(H[a+504>>2]&2147483647)>>>0){break b}Dv(a+496|0,e)}H[f+152>>2]=0;H[f+156>>2]=0;H[f+144>>2]=0;H[f+148>>2]=0;H[f+136>>2]=0;H[f+140>>2]=0;H[f+128>>2]=0;H[f+132>>2]=0;if(c>>>0>(H[d+8>>2]&2147483647)>>>0){ey(d,c)}e=H[d+4>>2];if((e|0)<(c|0)){g=H[d>>2];m=g+(c<<5)|0;g=g+(e<<5)|0;while(1){L[g>>2]=L[f+128>>2];L[g+4>>2]=L[f+132>>2];L[g+8>>2]=L[f+136>>2];H[g+12>>2]=H[f+140>>2];L[g+16>>2]=L[f+144>>2];L[g+20>>2]=L[f+148>>2];L[g+24>>2]=L[f+152>>2];H[g+28>>2]=H[f+156>>2];g=g+32|0;if(m>>>0>g>>>0){continue}break}}H[d+4>>2]=c;m=0;S6(f+16|0,0,112);c=c+1|0;d=a+452|0;if(c>>>0>(H[d+8>>2]&2147483647)>>>0){fy(d,c)}e=H[d+4>>2];if((e|0)<(c|0)){g=H[d>>2];o=g+N(c,112)|0;e=g+N(e,112)|0;while(1){L[e>>2]=L[f+16>>2];L[e+4>>2]=L[f+20>>2];L[e+8>>2]=L[f+24>>2];L[e+12>>2]=L[f+28>>2];L[e+16>>2]=L[f+32>>2];L[e+20>>2]=L[f+36>>2];L[e+24>>2]=L[f+40>>2];L[e+28>>2]=L[f+44>>2];L[e+32>>2]=L[f+48>>2];L[e+36>>2]=L[f+52>>2];L[e+40>>2]=L[f+56>>2];L[e+44>>2]=L[f+60>>2];L[e+48>>2]=L[f+64>>2];L[e+52>>2]=L[f+68>>2];L[e+56>>2]=L[f+72>>2];L[e+60>>2]=L[f+76>>2];L[e- -64>>2]=L[f+80>>2];g=H[f+88>>2];H[e+68>>2]=H[f+84>>2];H[e+72>>2]=g;H[e+76>>2]=H[f+92>>2];L[e+80>>2]=L[f+96>>2];L[e+84>>2]=L[f+100>>2];L[e+88>>2]=L[f+104>>2];L[e+92>>2]=L[f+108>>2];L[e+96>>2]=L[f+112>>2];L[e+100>>2]=L[f+116>>2];L[e+104>>2]=L[f+120>>2];H[e+108>>2]=H[f+124>>2];e=e+112|0;if(o>>>0>e>>>0){continue}break}}H[d+4>>2]=c;H[f+12>>2]=0;gy(a+496|0,i,f+12|0);c=H[a+452>>2];L[c>>2]=L[a+224>>2];L[c+4>>2]=L[a+228>>2];L[c+8>>2]=L[a+232>>2];L[c+12>>2]=L[a+236>>2];L[c+16>>2]=L[a+240>>2];L[c+20>>2]=L[a+244>>2];L[c+24>>2]=L[a+248>>2];L[c+28>>2]=L[a+252>>2];L[c+32>>2]=L[a+256>>2];L[c+36>>2]=L[a+260>>2];L[c+40>>2]=L[a+264>>2];L[c+44>>2]=L[a+268>>2];L[c+48>>2]=L[a+272>>2];L[c+52>>2]=L[a+276>>2];L[c+56>>2]=L[a+280>>2];L[c+60>>2]=L[a+284>>2];L[c- -64>>2]=L[a+288>>2];d=H[a+296>>2];H[c+68>>2]=H[a+292>>2];H[c+72>>2]=d;H[c+76>>2]=H[a+300>>2];L[c+80>>2]=L[a+304>>2];L[c+84>>2]=L[a+308>>2];L[c+88>>2]=L[a+312>>2];L[c+92>>2]=L[a+316>>2];L[c+96>>2]=L[a+320>>2];L[c+100>>2]=L[a+324>>2];L[c+104>>2]=L[a+328>>2];H[c+108>>2]=H[a+332>>2];S6(H[a+440>>2],0,j<<5);if(j){d=b+168|0;while(1){c=yq(H[a+584>>2],48);e=H[a+452>>2];g=H[a+600>>2];o=H[a+604>>2];H[c+24>>2]=0;H[c+16>>2]=0;H[c+8>>2]=g;H[c+12>>2]=o;H[c+36>>2]=d;g=j-m|0;H[c+32>>2]=g>>>0<1024?g:1024;H[c+28>>2]=n+(m<<2);H[c>>2]=113692;H[c+20>>2]=h;H[c+24>>2]=1;H[c+40>>2]=e+N(m,112);Ra[H[H[h>>2]+16>>2]](h);H[c+16>>2]=H[H[c+20>>2]+16>>2];Ra[H[H[c>>2]+20>>2]](c);m=m+1024|0;if(j>>>0>m>>>0){continue}break}}d=H[b+344>>2];c=H[b+340>>2];H[a+348>>2]=0;d=d+(c+(k<<6)|0)|0;b=d+63&-64;if(b>>>0>(H[a+352>>2]&2147483647)>>>0){hy(a+344|0,b)}H[a+348>>2]=d;H[a+360>>2]=0;if(b>>>0>(H[a+364>>2]&2147483647)>>>0){hy(a+356|0,b)}H[a+360>>2]=d;H[a+372>>2]=0;if(b>>>0>(H[a+376>>2]&2147483647)>>>0){hy(a+368|0,b)}H[a+372>>2]=d;H[a+384>>2]=0;if(b>>>0>(H[a+388>>2]&2147483647)>>>0){iy(a+380|0,b)}H[a+384>>2]=d;H[a+524>>2]=0;b=c+63&-64;if(b>>>0>(H[a+528>>2]&2147483647)>>>0){jy(a+520|0,b)}H[a+524>>2]=c;H[a+396>>2]=0;b=i+63&-64;if(b>>>0>(H[a+400>>2]&2147483647)>>>0){ky(a+392|0,b)}H[a+396>>2]=i;H[a+408>>2]=0;if(b>>>0>(H[a+412>>2]&2147483647)>>>0){ly(a+404|0,b)}H[a+408>>2]=i;H[a+420>>2]=0;if(b>>>0>(H[a+424>>2]&2147483647)>>>0){my(a+416|0,b)}H[a+420>>2]=i;H[a+432>>2]=0;d=k+63&-64;if(d>>>0>(H[a+436>>2]&2147483647)>>>0){ny(a+428|0,d)}H[a+432>>2]=k;H[a+512>>2]=0;if(b>>>0>(H[a+516>>2]&2147483647)>>>0){Dv(a+508|0,b)}H[a+512>>2]=i;b=H[a+4>>2];H[b+8>>2]=0;c=c?c-1|0:0;c=c>>>1|c;c=c>>>2|c;c=c>>>4|c;c=c>>>8|c;c=(c>>>16|c)+1|0;if(c>>>0>(H[b+12>>2]&2147483647)>>>0){oy(b,c)}H[a+592>>2]=1-H[a+592>>2];Ra[H[H[h>>2]+20>>2]](h)}Oa=f+160|0}function Qj(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=0,l=O(0),m=0,n=0,o=O(0),p=0,q=O(0),r=O(0),s=O(0),t=0,u=O(0),v=O(0),w=O(0),x=O(0),y=0,z=0,A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),F=O(0),G=O(0),M=O(0),P=O(0),Q=O(0),R=O(0),S=O(0),T=O(0),U=O(0),V=O(0),W=O(0),X=O(0),Y=O(0),Z=O(0),_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=O(0),fa=O(0),ga=O(0),ha=O(0),ia=O(0),ja=O(0),ka=O(0),la=O(0),ma=O(0);t=Oa-32|0;Oa=t;if(I[a+72|0]){Rj(a+12|0)}m=b- -64|0;y=H[a+24>>2];if(y){b=c;c=0;n=Oa-4112|0;Oa=n;k=H[y+16>>2]<<5;S6(n+16|0,0,k);S6(n+2064|0,0,k);k=H[m>>2];m=-2147483648;p=H[y+28>>2];a:{if(!p){break a}z=H[y+24>>2];while(1){if((k|0)==H[z+(c<<2)>>2]){m=c;break a}c=c+1|0;if((p|0)!=(c|0)){continue}break}}f=L[d>>2];g=L[d+4>>2];h=L[d+8>>2];z=0;k=n+16|0;c=k+(m<<5)|0;H[c+12>>2]=0;L[c+8>>2]=-h;L[c+4>>2]=-g;L[c>>2]=-f;f=L[e>>2];g=L[e+4>>2];h=L[e+8>>2];H[c+28>>2]=0;L[c+24>>2]=-h;L[c+20>>2]=-g;L[c+16>>2]=-f;da=n+2064|0;m=Oa-3072|0;Oa=m;$=b+J[b+6>>1]|0;c=J[b+18>>1];aa=(c+b|0)+144|0;e=J[b+4>>1];if(e>>>0>=2){while(1){e=e-1|0;d=e<<5;c=d+k|0;o=L[c+16>>2];q=L[c+20>>2];d=d+$|0;h=L[d+24>>2];i=L[c+8>>2];r=L[c+24>>2];j=L[c>>2];s=L[d+20>>2];g=L[d+16>>2];l=L[c+4>>2];c=m+(e<<4)|0;H[c+12>>2]=0;f=O(r+O(O(j*s)-O(g*l)));L[c+8>>2]=f;g=O(q+O(O(i*g)-O(h*j)));L[c+4>>2]=g;h=O(o+O(O(l*h)-O(s*i)));L[c>>2]=h;c=N(e,160)+aa|0;u=L[c+24>>2];v=L[c+56>>2];D=L[c+88>>2];E=L[c+20>>2];F=L[c+52>>2];G=L[c+84>>2];s=L[d>>2];M=L[c+16>>2];P=L[c+48>>2];Q=L[c+80>>2];w=L[d+4>>2];x=L[d+8>>2];d=k+(I[(b+e|0)- -64|0]<<5)|0;R=L[d>>2];S=L[c>>2];T=L[c+32>>2];U=L[c+64>>2];V=L[d+4>>2];W=L[c+4>>2];A=L[c+36>>2];B=L[c+68>>2];C=L[d+8>>2];Y=L[c+8>>2];X=L[c+40>>2];Z=L[c+72>>2];H[d+12>>2]=0;H[d+28>>2]=0;i=O(i-O(O(h*Y)+O(O(g*X)+O(f*Z))));L[d+8>>2]=C+i;l=O(l-O(O(h*W)+O(O(g*A)+O(f*B))));L[d+4>>2]=V+l;j=O(j-O(O(h*S)+O(O(g*T)+O(f*U))));L[d>>2]=R+j;L[d+16>>2]=O(O(o-O(O(h*M)+O(O(g*P)+O(f*Q))))+O(O(w*i)-O(l*x)))+L[d+16>>2];L[d+20>>2]=O(O(q-O(O(h*E)+O(O(g*F)+O(f*G))))+O(O(x*j)-O(i*s)))+L[d+20>>2];L[d+24>>2]=O(O(r-O(O(h*u)+O(O(g*v)+O(f*D))))+O(O(s*l)-O(j*w)))+L[d+24>>2];if(e>>>0>1){continue}break}c=J[b+18>>1]}c=b+c|0;u=L[c+32>>2];v=L[c>>2];D=L[c+16>>2];E=L[c+36>>2];F=L[c+4>>2];G=L[c+20>>2];M=L[c+40>>2];P=L[c+8>>2];Q=L[c+24>>2];o=L[c+56>>2];q=L[c+48>>2];r=L[c+52>>2];R=L[c+96>>2];S=L[c+112>>2];T=L[c+128>>2];s=L[c+72>>2];w=L[c+64>>2];x=L[c+68>>2];U=L[c+100>>2];V=L[c+116>>2];W=L[c+132>>2];A=L[c+80>>2];f=O(-L[k>>2]);B=L[c+84>>2];g=L[k+4>>2];C=L[c+88>>2];h=L[k+8>>2];i=O(-L[k+16>>2]);j=L[k+20>>2];l=L[k+24>>2];L[m+1048>>2]=O(O(O(A*f)-O(B*g))-O(C*h))+O(O(O(L[c+104>>2]*i)-O(L[c+120>>2]*j))-O(L[c+136>>2]*l));L[m+1044>>2]=O(O(O(w*f)-O(x*g))-O(s*h))+O(O(O(U*i)-O(V*j))-O(W*l));H[m+1036>>2]=0;L[m+1040>>2]=O(O(O(q*f)-O(r*g))-O(o*h))+O(O(O(R*i)-O(S*j))-O(T*l));L[m+1032>>2]=O(O(O(P*f)-O(Q*g))-O(M*h))+O(O(O(o*i)-O(s*j))-O(C*l));L[m+1028>>2]=O(O(O(F*f)-O(G*g))-O(E*h))+O(O(O(r*i)-O(x*j))-O(B*l));L[m+1024>>2]=O(O(O(v*f)-O(D*g))-O(u*h))+O(O(O(q*i)-O(w*j))-O(A*l));d=1;c=J[b+4>>1];if(c>>>0>1){while(1){ba=d<<5;k=ba+$|0;s=L[k+24>>2];w=L[k+16>>2];x=L[k+20>>2];e=N(d,160)+aa|0;D=L[e+128>>2];E=L[e+112>>2];F=L[e+96>>2];G=L[e+24>>2];M=L[e+20>>2];P=L[e+16>>2];Q=L[e+8>>2];R=L[e>>2];S=L[e+4>>2];v=L[e+132>>2];T=L[e+100>>2];U=L[e+116>>2];V=L[e+56>>2];W=L[e+52>>2];A=L[e+48>>2];B=L[e+40>>2];C=L[e+32>>2];Y=L[e+36>>2];p=m+(d<<4)|0;i=L[p+8>>2];o=L[e+136>>2];j=L[p>>2];X=L[e+104>>2];l=L[p+4>>2];Z=L[e+120>>2];ea=L[e+88>>2];fa=L[e+84>>2];ga=L[e+80>>2];ha=L[e+72>>2];ca=m+1024|0;p=ca+(I[(b+d|0)- -64|0]<<5)|0;ia=L[p+8>>2];ja=L[e+64>>2];ka=L[p>>2];f=L[p+20>>2];q=L[k+4>>2];la=L[e+68>>2];ma=L[p+4>>2];r=L[k>>2];g=L[p+24>>2];u=L[k+8>>2];h=L[p+16>>2];e=ba+ca|0;H[e+28>>2]=0;H[e+12>>2]=0;X=O(O(o*i)+O(O(X*j)+O(l*Z)));o=O(ia+O(O(q*h)-O(r*f)));q=O(ka+O(O(u*f)-O(q*g)));r=O(ma+O(O(r*g)-O(u*h)));u=O(X+O(O(O(ha*o)+O(O(ja*q)+O(la*r)))+O(O(ea*g)+O(O(ga*h)+O(f*fa)))));L[e+24>>2]=g-u;v=O(O(O(v*i)+O(O(T*j)+O(l*U)))+O(O(O(B*o)+O(O(C*q)+O(r*Y)))+O(O(V*g)+O(O(A*h)+O(f*W)))));L[e+20>>2]=f-v;f=O(O(O(D*i)+O(O(F*j)+O(l*E)))+O(O(O(Q*o)+O(O(R*q)+O(r*S)))+O(O(G*g)+O(O(P*h)+O(f*M)))));L[e+16>>2]=h-f;L[e+8>>2]=o-O(O(w*v)-O(f*x));L[e+4>>2]=r-O(O(s*f)-O(u*w));L[e>>2]=q-O(O(x*u)-O(v*s));d=d+1|0;if((c|0)!=(d|0)){continue}break}c=J[b+4>>1]}if(c){while(1){c=_<<5;d=c+(m+1024|0)|0;f=L[d>>2];g=L[d+4>>2];h=L[d+8>>2];c=c+da|0;H[c+12>>2]=0;L[c+8>>2]=h+L[c+8>>2];L[c+4>>2]=g+L[c+4>>2];L[c>>2]=f+L[c>>2];f=L[d+16>>2];g=L[d+20>>2];h=L[d+24>>2];H[c+28>>2]=0;L[c+24>>2]=h+L[c+24>>2];L[c+20>>2]=g+L[c+20>>2];L[c+16>>2]=f+L[c+16>>2];_=_+1|0;if(_>>>0>1]){continue}break}}Oa=m+3072|0;if(H[y+16>>2]){while(1){c=(n+2064|0)+(z<<5)|0;f=L[c+16>>2];g=L[c+20>>2];h=L[c+24>>2];i=L[c>>2];j=L[c+4>>2];b=H[H[H[y+24>>2]+(z<<2)>>2]+44>>2];l=L[b+80>>2];o=L[b+84>>2];L[n+8>>2]=L[c+8>>2]+L[b+88>>2];L[n+4>>2]=j+o;L[n>>2]=i+l;DF(b,n);i=L[b+96>>2];j=L[b+100>>2];L[n+8>>2]=h+L[b+104>>2];L[n+4>>2]=g+j;L[n>>2]=f+i;EF(b,n);z=z+1|0;if(z>>>0>2]){continue}break}}Oa=n+4112|0}if(H[a+100>>2]){c=0;while(1){d=c<<2;b=H[d+H[a+96>>2]>>2];L[t+16>>2]=L[b+144>>2];L[t+20>>2]=L[b+148>>2];L[t+24>>2]=L[b+152>>2];L[t>>2]=L[b+160>>2];L[t+4>>2]=L[b+164>>2];L[t+8>>2]=L[b+168>>2];Ra[H[H[b>>2]+160>>2]](b,t+16|0,1);b=H[d+H[a+96>>2]>>2];Ra[H[H[b>>2]+168>>2]](b,t,1);c=c+1|0;if(c>>>0>2]){continue}break}}Oa=t+32|0}function NT(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=O(0),q=O(0),r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;a:{if(!b|!c|(c|0)<0){break a}H[a+24>>2]=H[a+24>>2]+1;S6(H[a+16>>2],0,4096);e=(c<<2)+b|0;f=H[a+16>>2];g=f+3072|0;k=f+2048|0;h=f+1024|0;b:{c:{if(H[a+4>>2]<0){if((b|0)!=(e|0)){p=L[b>>2];d=b;while(1){q=p;j=H[d>>2];p=L[d>>2];if(q>p){break c}j=((j&255)<<2)+f|0;H[j>>2]=H[j>>2]+1;j=h+(I[d+1|0]<<2)|0;H[j>>2]=H[j>>2]+1;j=k+(I[d+2|0]<<2)|0;H[j>>2]=H[j>>2]+1;j=g+(I[d+3|0]<<2)|0;H[j>>2]=H[j>>2]+1;d=d+4|0;if((e|0)!=(d|0)){continue}break}}H[a+28>>2]=H[a+28>>2]+1;c=c>>>0>1?c:1;g=c&7;b=H[a+8>>2];f=0;d=0;if(c-1>>>0>=7){c=c&-8;e=0;while(1){H[b+(d<<2)>>2]=d;k=d|1;H[b+(k<<2)>>2]=k;k=d|2;H[b+(k<<2)>>2]=k;k=d|3;H[b+(k<<2)>>2]=k;k=d|4;H[b+(k<<2)>>2]=k;k=d|5;H[b+(k<<2)>>2]=k;k=d|6;H[b+(k<<2)>>2]=k;k=d|7;H[b+(k<<2)>>2]=k;d=d+8|0;e=e+8|0;if((c|0)!=(e|0)){continue}break}}if(!g){break a}while(1){H[b+(d<<2)>>2]=d;d=d+1|0;f=f+1|0;if((g|0)!=(f|0)){continue}break}break a}if((b|0)==(e|0)){break b}j=H[a+8>>2];p=L[(H[j>>2]<<2)+b>>2];d=b;while(1){n=(I[d|0]<<2)+f|0;H[n>>2]=H[n>>2]+1;n=h+(I[d+1|0]<<2)|0;H[n>>2]=H[n>>2]+1;n=k+(I[d+2|0]<<2)|0;H[n>>2]=H[n>>2]+1;n=g+(I[d+3|0]<<2)|0;H[n>>2]=H[n>>2]+1;d=d+4|0;if((e|0)==(d|0)){break b}q=p;j=j+4|0;p=L[(H[j>>2]<<2)+b>>2];if(!(q>p)){continue}break}}if((d|0)!=(e|0)){while(1){j=(I[d|0]<<2)+f|0;H[j>>2]=H[j>>2]+1;j=h+(I[d+1|0]<<2)|0;H[j>>2]=H[j>>2]+1;j=k+(I[d+2|0]<<2)|0;H[j>>2]=H[j>>2]+1;j=g+(I[d+3|0]<<2)|0;H[j>>2]=H[j>>2]+1;d=d+4|0;if((e|0)!=(d|0)){continue}break}}e=128;while(1){d=e<<2;t=H[g+(d|12)>>2]+(H[g+(d|8)>>2]+(H[g+(d|4)>>2]+(H[d+g>>2]+t|0)|0)|0)|0;e=e+4|0;if((e|0)!=256){continue}break}d=c>>>0>1?c:1;u=d&-4;n=d&3;r=d&-2;s=d&1;v=c<<2;w=v-4|0;y=w&4;j=d-1|0;k=0;while(1){g=(k<<10)+f|0;h=b+k|0;e=I[h|0];d=H[g+(e<<2)>>2]==(c|0);g=d?0:g;d:{e:{f:{if((k|0)!=3){if(!g){k=k+1|0;f=H[a+16>>2];continue}d=H[a+20>>2];e=H[a+12>>2];H[d>>2]=e;f=1;while(1){i=f<<2;l=i+d|0;m=e;e=g+i|0;m=m+(H[e-4>>2]<<2)|0;H[l>>2]=m;i=i+4|0;e=m+(H[e>>2]<<2)|0;H[i+d>>2]=e;e=e+(H[g+i>>2]<<2)|0;H[l+8>>2]=e;f=f+3|0;if((f|0)!=256){continue}break}break f}g:{if(!d){d=H[a+20>>2];e=H[a+12>>2]+(t<<2)|0;H[d>>2]=e;f=1;while(1){m=e;e=f<<2;i=e+g|0;h=m+(H[i-4>>2]<<2)|0;H[d+e>>2]=h;e=e+4|0;h=h+(H[i>>2]<<2)|0;H[e+d>>2]=h;i=f+2<<2;e=h+(H[g+e>>2]<<2)|0;H[i+d>>2]=e;h=f+3|0;if((h|0)!=128){e=e+(H[g+i>>2]<<2)|0;H[d+(h<<2)>>2]=e;f=f+4|0;continue}break}H[d+1020>>2]=H[a+12>>2];f=0;while(1){e=254-f<<2;h=e+d|0;i=255-f<<2;H[h>>2]=H[i+d>>2]+(H[g+i>>2]<<2);if((f|0)==126){e=128;while(1){f=e<<2;h=f+d|0;H[h>>2]=H[h>>2]+(H[g+f>>2]<<2);h=f|4;i=h+d|0;H[i>>2]=H[i>>2]+(H[g+h>>2]<<2);h=f|8;i=h+d|0;H[i>>2]=H[i>>2]+(H[g+h>>2]<<2);f=f|12;h=f+d|0;H[h>>2]=H[h>>2]+(H[g+f>>2]<<2);e=e+4|0;if((e|0)!=256){continue}break}if(H[a+4>>2]<0){g=0;e=0;if(!j){break g}while(1){i=H[(g<<2)+b>>2];l=d+(i>>>22&1020)|0;f=H[l>>2];h=f-4|0;i=(i|0)>=0;H[l>>2]=i?f+4|0:h;H[(i?f:h)>>2]=g;i=g|1;l=H[(i<<2)+b>>2];m=d+(l>>>22&1020)|0;f=H[m>>2];h=f-4|0;l=(l|0)>=0;H[m>>2]=l?f+4|0:h;H[(l?f:h)>>2]=i;g=g+2|0;e=e+2|0;if((r|0)!=(e|0)){continue}break}break g}f=H[a+8>>2];g=0;e=0;if(j){while(1){l=g<<2;m=H[l+f>>2];o=H[(m<<2)+b>>2];x=d+(o>>>22&1020)|0;h=H[x>>2];i=h-4|0;o=(o|0)>=0;H[x>>2]=o?h+4|0:i;H[(o?h:i)>>2]=m;l=H[f+(l|4)>>2];m=H[(l<<2)+b>>2];o=d+(m>>>22&1020)|0;h=H[o>>2];i=h-4|0;m=(m|0)>=0;H[o>>2]=m?h+4|0:i;H[(m?h:i)>>2]=l;g=g+2|0;e=e+2|0;if((r|0)!=(e|0)){continue}break}}if(!s){break e}f=H[f+(g<<2)>>2];e=H[(f<<2)+b>>2];h=d+(e>>>22&1020)|0;d=H[h>>2];g=d-4|0;e=(e|0)>=0;H[h>>2]=e?d+4|0:g;H[(e?d:g)>>2]=f;break e}else{H[d+(253-f<<2)>>2]=H[h>>2]+(H[g+e>>2]<<2);f=f+2|0;continue}}}if(e<<24>>24>=0){break a}h:{if(H[a+4>>2]<0){g=H[a+12>>2];e=0;d=0;f=0;if(j>>>0<3){break h}while(1){h=d<<2;H[h+g>>2]=(d^-1)+c;i=c-d|0;H[(h|4)+g>>2]=i-2;H[(h|8)+g>>2]=i-3;H[(h|12)+g>>2]=i-4;d=d+4|0;f=f+4|0;if((u|0)!=(f|0)){continue}break}break h}g=H[a+12>>2];e=H[a+8>>2];f=0;d=0;i=0;if(j>>>0>=3){while(1){h=d<<2;H[h+g>>2]=H[((d^-1)+c<<2)+e>>2];l=(c-d<<2)+e|0;H[(h|4)+g>>2]=H[l-8>>2];H[(h|8)+g>>2]=H[l-12>>2];H[(h|12)+g>>2]=H[l-16>>2];d=d+4|0;i=i+4|0;if((u|0)!=(i|0)){continue}break}}if(!n){break d}while(1){H[(d<<2)+g>>2]=H[((d^-1)+c<<2)+e>>2];d=d+1|0;f=f+1|0;if((n|0)!=(f|0)){continue}break}break d}if(n){while(1){H[(d<<2)+g>>2]=(d^-1)+c;d=d+1|0;e=e+1|0;if((n|0)!=(e|0)){continue}break}}H[a+4>>2]=H[a+4>>2]&2147483647;e=H[a+8>>2];break d}if(s){e=H[(g<<2)+b>>2];h=d+(e>>>22&1020)|0;d=H[h>>2];f=d-4|0;e=(e|0)>=0;H[h>>2]=e?d+4|0:f;H[(e?d:f)>>2]=g}H[a+4>>2]=H[a+4>>2]&2147483647;break e}i:{if(H[a+4>>2]<0){g=0;f=0;if(!j){break i}while(1){i=d+(I[h+(g<<2)|0]<<2)|0;e=H[i>>2];H[i>>2]=e+4;H[e>>2]=g;i=g|1;l=d+(I[h+(i<<2)|0]<<2)|0;e=H[l>>2];H[l>>2]=e+4;H[e>>2]=i;g=g+2|0;f=f+2|0;if((r|0)!=(f|0)){continue}break}break i}f=H[a+8>>2];g=f;if(!y){e=H[f>>2];i=d+(I[h+(e<<2)|0]<<2)|0;g=H[i>>2];H[i>>2]=g+4;H[g>>2]=e;g=f+4|0}if(!w){break e}e=f+v|0;while(1){i=H[g>>2];l=d+(I[h+(i<<2)|0]<<2)|0;f=H[l>>2];H[l>>2]=f+4;H[f>>2]=i;i=H[g+4>>2];l=d+(I[h+(i<<2)|0]<<2)|0;f=H[l>>2];H[l>>2]=f+4;H[f>>2]=i;g=g+8|0;if((e|0)!=(g|0)){continue}break}break e}if(s){f=d+(I[h+(g<<2)|0]<<2)|0;d=H[f>>2];H[f>>2]=d+4;H[d>>2]=g}H[a+4>>2]=H[a+4>>2]&2147483647}g=H[a+12>>2];e=H[a+8>>2]}H[a+12>>2]=e;H[a+8>>2]=g;k=k+1|0;if((k|0)==4){break a}f=H[a+16>>2];continue}}H[a+28>>2]=H[a+28>>2]+1;return a}return a}function eU(a,b,c,d){var e=O(0),f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=0,t=O(0),u=O(0),v=0,w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),F=O(0),I=O(0),J=O(0),K=O(0),M=O(0),N=O(0),Q=O(0),R=O(0),S=O(0),T=O(0),U=0;s=Oa+-64|0;Oa=s;k=L[c+12>>2];T=O(P(k));a:{if(T>2];l=L[c+4>>2];p=L[c>>2];H[a+48>>2]=0;u=O(l+l);g=O(i*u);f=O(p+p);e=O(f*k);m=O(g-e);L[a+40>>2]=m;h=O(f*i);x=O(u*k);n=O(h+x);L[a+36>>2]=n;o=O(g+e);L[a+32>>2]=o;j=O(f*l);q=O(i+i);r=O(q*k);g=O(j-r);L[a+24>>2]=g;e=O(h-x);L[a+20>>2]=e;h=O(j+r);L[a+16>>2]=h;p=O(O(1)-O(p*f));l=O(l*u);f=O(p-l);L[a+44>>2]=f;B=p;p=O(i*q);i=O(B-p);L[a+28>>2]=i;l=O(O(O(1)-l)-p);L[a+12>>2]=l;break a}H[a+12>>2]=1065353216;H[a+16>>2]=0;H[a+44>>2]=1065353216;H[a+36>>2]=0;H[a+40>>2]=0;H[a+28>>2]=1065353216;H[a+32>>2]=0;H[a+20>>2]=0;H[a+24>>2]=0;f=O(1);i=O(1);l=O(1)}p=L[c+16>>2];L[a+48>>2]=p;u=L[c+20>>2];L[a+52>>2]=u;x=L[c+24>>2];L[a+56>>2]=x;b:{c:{switch(H[b>>2]){case 0:g=L[b+4>>2];H[a+96>>2]=2143289344;d=O(O(O(g+d)+O(0))*O(1.0099999904632568));L[a+92>>2]=x+d;L[a+88>>2]=u+d;L[a+84>>2]=p+d;L[a+80>>2]=x-d;L[a+76>>2]=u-d;L[a+72>>2]=p-d;v=H[c+20>>2];U=H[c+16>>2];d=L[c+24>>2];L[a+112>>2]=g;L[a+108>>2]=d;H[a+100>>2]=U;H[a+104>>2]=v;break b;case 2:g=L[b+8>>2];i=L[b+4>>2];H[a+96>>2]=2143289344;d=O(i+d);e=O(O(O(g*O(P(e)))+d)*O(1.0099999904632568));L[a+92>>2]=x+e;h=O(O(O(g*O(P(h)))+d)*O(1.0099999904632568));L[a+88>>2]=u+h;d=O(O(O(g*O(P(l)))+d)*O(1.0099999904632568));L[a+84>>2]=p+d;L[a+80>>2]=x-e;L[a+76>>2]=u-h;L[a+72>>2]=p-d;l=L[c+16>>2];p=L[c+20>>2];d=L[c>>2];e=O(d+d);n=L[c+8>>2];f=L[c+4>>2];h=O(k+k);u=O(g*O(O(e*n)-O(f*h)));L[a+108>>2]=u+L[c+24>>2];m=p;p=O(g*O(O(n*h)+O(e*f)));L[a+104>>2]=m+p;d=O(g*O(O(d*e)+O(O(k*h)+O(-1))));L[a+100>>2]=l+d;e=L[c+16>>2];h=L[c+20>>2];l=L[c+24>>2];L[a+124>>2]=i;L[a+60>>2]=g;n=O(i*O(1.0099999904632568));L[a+8>>2]=n;L[a+4>>2]=n;L[a>>2]=O(i+g)*O(1.0099999904632568);L[a+120>>2]=l-u;L[a+116>>2]=h-p;L[a+112>>2]=e-d;break b;case 3:k=L[b+4>>2];r=O(k*g);t=O(-r);j=L[b+8>>2];y=O(j*n);A=O(-y);q=L[b+12>>2];w=O(q*p);z=O(-w);L[a+96>>2]=L[a+60>>2]+O(O(O(O((r>t?r:t)+(y>A?y:A))+(w>z?w:z))+d)*O(1.0099999904632568));e=O(k*e);r=O(-e);o=O(j*o);t=O(-o);f=O(q*f);y=O(-f);r=O(O(O(O((e>r?e:r)+(o>t?o:t))+(f>y?f:y))+d)*O(1.0099999904632568));L[a+92>>2]=x+r;e=O(k*h);h=O(-e);i=O(j*i);f=O(-i);m=O(q*m);o=O(-m);f=O(O(O(O((e>h?e:h)+(fo?m:o))+d)*O(1.0099999904632568));L[a+88>>2]=u+f;e=O(k*l);h=O(-e);g=O(j*g);i=O(-g);l=O(q*n);n=O(-l);d=O(O(O(O((e>h?e:h)+(g>i?g:i))+(l>n?l:n))+d)*O(1.0099999904632568));L[a+84>>2]=p+d;L[a+80>>2]=x-r;L[a+76>>2]=u-f;L[a+72>>2]=p-d;L[a+60>>2]=L[b+4>>2];L[a- -64>>2]=L[b+8>>2];L[a+68>>2]=L[b+12>>2];d=L[b+8>>2];g=L[b+4>>2];L[a+8>>2]=L[b+12>>2]*O(1.0099999904632568);L[a+4>>2]=d*O(1.0099999904632568);L[a>>2]=g*O(1.0099999904632568);break b;case 4:break c;default:break b}}k=L[b+12>>2];v=H[b+32>>2];q=L[b+4>>2];j=L[b+8>>2];d:{if(!(q!=O(1)|j!=O(1)|k!=O(1))){k=L[v+16>>2];j=L[v+20>>2];q=L[v+24>>2];r=O(O(O(k*e)+O(j*o))+O(q*f));t=O(O(O(k*h)+O(j*i))+O(q*m));k=O(O(O(k*l)+O(j*g))+O(q*n));j=L[v+32>>2];o=O(o*j);i=O(i*j);g=O(g*j);j=L[v+36>>2];f=O(f*j);m=O(m*j);n=O(n*j);j=L[v+28>>2];e=O(e*j);h=O(h*j);l=O(l*j);break d}z=L[b+16>>2];f=O(z+z);n=L[b+24>>2];E=O(f*n);m=L[b+20>>2];w=O(m+m);C=L[b+28>>2];F=O(w*C);o=O(E-F);r=O(k*o);I=O(m*w);A=O(n+n);J=O(n*A);t=O(O(O(1)-I)-J);y=O(q*t);K=O(f*m);M=O(A*C);m=O(K+M);A=O(j*m);R=L[v+16>>2];S=O(O(o*r)+O(O(t*y)+O(m*A)));N=O(w*n);Q=O(f*C);n=O(N+Q);C=O(k*n);w=O(K-M);K=O(q*w);D=O(O(1)-O(z*f));f=O(D-J);z=O(j*f);J=O(O(o*C)+O(O(t*K)+O(m*z)));M=L[a+32>>2];B=k;k=O(D-I);I=O(B*k);D=O(o*I);o=O(E+F);q=O(q*o);B=m;m=O(N-Q);j=O(j*m);E=O(D+O(O(t*q)+O(B*j)));t=L[a+44>>2];D=O(O(O(e*S)+O(J*M))+O(E*t));F=L[v+20>>2];N=O(O(n*r)+O(O(w*y)+O(f*A)));Q=O(O(n*C)+O(O(w*K)+O(f*z)));n=O(O(n*I)+O(O(w*q)+O(f*j)));w=O(O(O(e*N)+O(Q*M))+O(n*t));B=e;e=O(O(k*r)+O(O(o*y)+O(m*A)));f=O(O(k*C)+O(O(o*K)+O(m*z)));k=O(O(k*I)+O(O(o*q)+O(m*j)));j=O(O(O(B*e)+O(f*M))+O(k*t));m=L[v+24>>2];r=O(O(O(R*D)+O(F*w))+O(j*m));o=L[a+40>>2];q=O(O(O(h*S)+O(i*J))+O(E*o));y=O(O(O(h*N)+O(i*Q))+O(n*o));i=O(O(O(h*e)+O(i*f))+O(k*o));t=O(O(O(R*q)+O(y*F))+O(i*m));h=L[a+36>>2];A=O(O(O(l*S)+O(g*J))+O(E*h));z=O(O(O(l*N)+O(g*Q))+O(n*h));e=O(O(O(l*e)+O(g*f))+O(k*h));k=O(O(O(A*R)+O(z*F))+O(e*m));g=L[v+36>>2];f=O(j*g);m=O(i*g);n=O(e*g);g=L[v+32>>2];o=O(w*g);i=O(y*g);g=O(z*g);l=L[v+28>>2];e=O(D*l);h=O(q*l);l=O(A*l)}H[a+96>>2]=2143289344;x=O(x+r);e=O(O(O(O(O(P(e))+O(P(o)))+O(P(f)))+d)*O(1.0099999904632568));L[a+92>>2]=x+e;f=O(u+t);h=O(O(O(O(O(P(h))+O(P(i)))+O(P(m)))+d)*O(1.0099999904632568));L[a+88>>2]=f+h;i=O(p+k);d=O(O(O(O(O(P(l))+O(P(g)))+O(P(n)))+d)*O(1.0099999904632568));L[a+84>>2]=i+d;L[a+80>>2]=x-e;L[a+76>>2]=f-h;L[a+72>>2]=i-d;fZ(s,b,v,c);L[a+12>>2]=L[s>>2];L[a+16>>2]=L[s+4>>2];L[a+20>>2]=L[s+8>>2];L[a+24>>2]=L[s+12>>2];L[a+28>>2]=L[s+16>>2];L[a+32>>2]=L[s+20>>2];L[a+36>>2]=L[s+24>>2];L[a+40>>2]=L[s+28>>2];L[a+44>>2]=L[s+32>>2];d=L[s+52>>2];g=L[s+48>>2];L[a+8>>2]=L[s+56>>2]*O(1.0099999904632568);L[a+4>>2]=d*O(1.0099999904632568);L[a>>2]=g*O(1.0099999904632568);L[a+48>>2]=L[s+36>>2];L[a+52>>2]=L[s+40>>2];L[a+56>>2]=L[s+44>>2]}G[a+96>>1]=T>1]=H[b>>2];Oa=s- -64|0;return a}function e1(a,b){var c=0,d=0,e=0,f=O(0),g=0,h=O(0),i=0,j=0,k=0,l=0,m=O(0),n=0,o=O(0),p=O(0),q=0,r=0,s=O(0),t=O(0),u=O(0),v=0,w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=0,G=O(0);c=Oa-256|0;Oa=c;f=L[a+44>>2];k=c-(b+15&-16)|0;F[k|0]=0;if(b>>>0>=2){e=1;d=b-1|0;q=d&1;if((b|0)!=2){r=d&-2;d=0;while(1){F[e+k|0]=e;o=L[((e<<6)+a|0)+44>>2];i=e+1|0;F[i+k|0]=i;p=L[((i<<6)+a|0)+44>>2];v=f>o;f=v?o:f;l=p>2]>2];y=L[d+36>>2];z=L[d+32>>2];G=L[d+28>>2];o=L[d+24>>2];p=L[d+20>>2];w=L[d+16>>2];e=H[d+48>>2];H[c+216>>2]=H[d+44>>2];H[c+220>>2]=e;d=I[k|0];if(i>>>0>=2){e=(d<<6)+a|0;f=O(L[e+24>>2]-o);s=O(f*f);f=O(L[e+16>>2]-w);t=O(f*f);f=O(L[e+20>>2]-p);f=O(s+O(t+O(f*f)));e=1;while(1){l=I[e+k|0];j=(l<<6)+a|0;h=O(L[j+24>>2]-o);s=O(h*h);h=O(L[j+16>>2]-w);t=O(h*h);h=O(L[j+20>>2]-p);h=O(s+O(t+O(h*h)));j=h>f;f=j?h:f;n=j?e:n;d=j?l:d;e=e+1|0;if((i|0)!=(e|0)){continue}break}}l=b-2|0;F[k+n|0]=I[l+k|0];i=255;d=((d&255)<<6)+a|0;e=H[d+12>>2];H[c+244>>2]=H[d+8>>2];H[c+248>>2]=e;e=H[d+4>>2];H[c+236>>2]=H[d>>2];H[c+240>>2]=e;A=L[d+20>>2];B=L[d+24>>2];C=L[d+16>>2];e=H[d+48>>2];H[c+144>>2]=H[d+44>>2];H[c+148>>2]=e;e=H[d+40>>2];H[c+136>>2]=H[d+36>>2];H[c+140>>2]=e;e=H[d+32>>2];H[c+128>>2]=H[d+28>>2];H[c+132>>2]=e;h=O(C-w);m=O(A-p);f=O(O(h*y)-O(z*m));t=f;s=O(f*f);f=O(m*x);m=O(B-o);f=O(f-O(y*m));h=O(O(m*z)-O(x*h));u=O(s+O(O(f*f)+O(h*h)));m=O(O(1)/O(W(u)));d=u>O(0);D=d?O(t*m):x;s=d?O(h*m):y;t=d?O(f*m):z;m=O(-3.4028234663852886e38);h=O(3.4028234663852886e38);a:{if(!l){f=O(-3.4028234663852886e38);j=-1;break a}e=0;j=-1;d=-1;f=O(-3.4028234663852886e38);while(1){q=I[e+k|0];i=(q<<6)+a|0;u=O(O(O(L[i+24>>2]-o)*D)+O(O(O(L[i+16>>2]-w)*t)+O(s*O(L[i+20>>2]-p))));i=u>2]=H[d+48>>2];e=H[d+44>>2];H[c+204>>2]=H[d+40>>2];H[c+208>>2]=e;e=H[d+36>>2];H[c+196>>2]=H[d+32>>2];H[c+200>>2]=e;e=H[d+28>>2];H[c+188>>2]=H[d+24>>2];H[c+192>>2]=e;e=H[d+20>>2];H[c+180>>2]=H[d+16>>2];H[c+184>>2]=e;e=H[d+12>>2];H[c+172>>2]=H[d+8>>2];H[c+176>>2]=e;e=H[d+4>>2];H[c+164>>2]=H[d>>2];H[c+168>>2]=e;d=(g|0)==(l|0)?n:g;if(!(!(O(h*f)>O(0))|!l)){e=0;while(1){n=I[e+k|0];g=(n<<6)+a|0;f=O(O(O(L[g+24>>2]-o)*D)+O(O(O(L[g+16>>2]-w)*t)+O(s*O(L[g+20>>2]-p))));g=f>m;m=g?f:m;d=g?e:d;j=g?n:j;e=e+1|0;if((l|0)!=(e|0)){continue}break}}g=b-4|0;F[d+k|0]=I[g+k|0];d=((j&255)<<6)+a|0;H[c+124>>2]=H[d+48>>2];e=H[d+44>>2];H[c+116>>2]=H[d+40>>2];H[c+120>>2]=e;e=H[d+36>>2];H[c+108>>2]=H[d+32>>2];H[c+112>>2]=e;e=H[d+28>>2];H[c+100>>2]=H[d+24>>2];H[c+104>>2]=e;e=H[d+20>>2];H[c+92>>2]=H[d+16>>2];H[c+96>>2]=e;e=H[d+12>>2];H[c+84>>2]=H[d+8>>2];H[c+88>>2]=e;e=H[d+4>>2];H[c+76>>2]=H[d>>2];H[c+80>>2]=e;if(g){n=b&1;b:{if((b|0)==5){f=O(3.4028234663852886e38);d=-1;e=0;break b}l=g&-2;f=O(3.4028234663852886e38);i=-1;e=0;d=-1;j=0;while(1){q=I[e+k|0];h=L[((q<<6)+a|0)+44>>2];b=h>2];g=f>h;d=g?E:b?q:d;f=g?h:f;i=g?r:b?e:i;e=e+2|0;j=j+2|0;if((l|0)!=(j|0)){continue}break}}if(n){b=I[e+k|0];d=L[((b<<6)+a|0)+44>>2]>2]=H[b+48>>2];d=H[b+44>>2];H[c+52>>2]=H[b+40>>2];H[c+56>>2]=d;d=H[b+36>>2];H[c+44>>2]=H[b+32>>2];H[c+48>>2]=d;d=H[b+28>>2];H[c+36>>2]=H[b+24>>2];H[c+40>>2]=d;d=H[b+20>>2];H[c+28>>2]=H[b+16>>2];H[c+32>>2]=d;d=H[b+12>>2];H[c+20>>2]=H[b+8>>2];H[c+24>>2]=d;d=H[b+4>>2];H[c+12>>2]=H[b>>2];H[c+16>>2]=d;b=(v<<6)+a|0;d=H[b>>2];g=H[b+4>>2];e=H[b+8>>2];b=H[b+12>>2];L[a+40>>2]=x;L[a+36>>2]=y;L[a+32>>2]=z;L[a+28>>2]=G;L[a+24>>2]=o;L[a+20>>2]=p;L[a+16>>2]=w;H[a+8>>2]=e;H[a+12>>2]=b;H[a>>2]=d;H[a+4>>2]=g;b=H[c+220>>2];H[a+44>>2]=H[c+216>>2];H[a+48>>2]=b;b=H[c+244>>2];d=H[c+248>>2];g=H[c+236>>2];e=H[c+240>>2];L[a+88>>2]=B;L[a+84>>2]=A;L[a+80>>2]=C;H[a+72>>2]=b;H[a+76>>2]=d;H[a+64>>2]=g;H[a+68>>2]=e;b=H[c+148>>2];H[a+108>>2]=H[c+144>>2];H[a+112>>2]=b;b=H[c+140>>2];H[a+100>>2]=H[c+136>>2];H[a+104>>2]=b;b=H[c+132>>2];H[a+92>>2]=H[c+128>>2];H[a+96>>2]=b;b=H[c+168>>2];H[a+128>>2]=H[c+164>>2];H[a+132>>2]=b;b=H[c+176>>2];H[a+136>>2]=H[c+172>>2];H[a+140>>2]=b;b=H[c+184>>2];H[a+144>>2]=H[c+180>>2];H[a+148>>2]=b;b=H[c+192>>2];H[a+152>>2]=H[c+188>>2];H[a+156>>2]=b;b=H[c+200>>2];H[a+160>>2]=H[c+196>>2];H[a+164>>2]=b;b=H[c+208>>2];H[a+168>>2]=H[c+204>>2];H[a+172>>2]=b;H[a+176>>2]=H[c+212>>2];b=H[c+88>>2];H[a+200>>2]=H[c+84>>2];H[a+204>>2]=b;b=H[c+96>>2];H[a+208>>2]=H[c+92>>2];H[a+212>>2]=b;b=H[c+104>>2];H[a+216>>2]=H[c+100>>2];H[a+220>>2]=b;b=H[c+112>>2];H[a+224>>2]=H[c+108>>2];H[a+228>>2]=b;b=H[c+120>>2];H[a+232>>2]=H[c+116>>2];H[a+236>>2]=b;H[a+240>>2]=H[c+124>>2];b=H[c+80>>2];H[a+192>>2]=H[c+76>>2];H[a+196>>2]=b;b=H[c+16>>2];H[a+256>>2]=H[c+12>>2];H[a+260>>2]=b;b=H[c+24>>2];H[a+264>>2]=H[c+20>>2];H[a+268>>2]=b;b=H[c+32>>2];H[a+272>>2]=H[c+28>>2];H[a+276>>2]=b;b=H[c+40>>2];H[a+280>>2]=H[c+36>>2];H[a+284>>2]=b;b=H[c+48>>2];H[a+288>>2]=H[c+44>>2];H[a+292>>2]=b;b=H[c+56>>2];H[a+296>>2]=H[c+52>>2];H[a+300>>2]=b;H[a+304>>2]=H[c+60>>2];Oa=c+256|0}function sZ(a,b,c,d,e,f,g){var h=O(0),i=O(0),j=0,k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0);j=Oa+-64|0;Oa=j;p=L[b>>2];r=L[b+4>>2];t=L[b+8>>2];h=L[e+16>>2];i=L[e+20>>2];n=L[e>>2];o=L[e+4>>2];v=L[e+8>>2];w=L[e+12>>2];s=L[a+8>>2];k=O(s-L[c+8>>2]);x=L[e+32>>2];y=L[a>>2];u=O(y-L[c>>2]);z=L[e+24>>2];A=L[a+4>>2];q=O(A-L[c+4>>2]);B=L[e+28>>2];l=O(O(k*x)+O(O(u*z)+O(q*B)));L[j+40>>2]=l;m=O(O(k*i)+O(O(u*w)+O(q*h)));L[j+36>>2]=m;k=O(O(k*v)+O(O(u*n)+O(q*o)));L[j+32>>2]=k;q=O(t-s);p=O(p-y);r=O(r-A);u=O(O(x*q)+O(O(z*p)+O(B*r)));L[j+24>>2]=u;w=O(O(q*i)+O(O(p*w)+O(r*h)));L[j+20>>2]=w;v=O(O(q*v)+O(O(p*n)+O(r*o)));L[j+16>>2]=v;a:{if(!(v>2]=h;k=O(-k);L[j+32>>2]=k}b:{if(!(w>2]=i;m=O(-m);L[j+36>>2]=m}c:{if(!(u>2]=n;l=O(-l);L[j+40>>2]=l}H[j+12>>2]=0;d:{if(h>O(0)){if(i>O(0)){if(n>O(0)){q=L[d>>2];p=L[d+4>>2];o=O(l-L[d+8>>2]);L[j+56>>2]=o;m=O(m-p);L[j+52>>2]=m;k=O(k-q);L[j+48>>2]=k;if(O(i*k)>=O(h*m)){if(O(n*k)>=O(h*o)){tZ(0,1,2,j+32|0,j+16|0,d,j+48|0,j+8|0,j+12|0);break d}tZ(2,0,1,j+32|0,j+16|0,d,j+48|0,j+8|0,j+12|0);break d}if(O(n*m)>=O(i*o)){tZ(1,2,0,j+32|0,j+16|0,d,j+48|0,j+8|0,j+12|0);break d}tZ(2,0,1,j+32|0,j+16|0,d,j+48|0,j+8|0,j+12|0);break d}o=L[d>>2];n=O(k-o);t=O(n*i);r=L[d+4>>2];q=O(m-r);s=O(q*h);e:{if(t>=s){L[j+32>>2]=o;p=O(0);q=O(m+r);k=O(t-O(h*q));if(k>=O(0)){L[j+36>>2]=-r;o=O(O(1)/O(O(h*h)+O(i*i)));p=O(O(O(k*k)*o)+O(0));L[j+12>>2]=p;n=O(O(h*n)+O(q*i));break e}o=O(O(1)/h);L[j+36>>2]=m-O(t*o);break e}L[j+36>>2]=r;p=O(0);m=O(k+o);n=O(s-O(i*m));if(n>=O(0)){L[j+32>>2]=-o;o=O(O(1)/O(O(h*h)+O(i*i)));p=O(O(O(n*n)*o)+O(0));L[j+12>>2]=p;n=O(O(h*m)+O(q*i));break e}o=O(O(1)/i);L[j+32>>2]=k-O(s*o);n=q}L[j+8>>2]=o*O(-n);h=L[d+8>>2];k=O(-h);f:{if(l>2]=k;L[j+12>>2]=h;break d}i=L[d>>2];if(n>O(0)){o=O(k-i);t=O(o*n);r=L[d+8>>2];q=O(l-r);s=O(q*h);g:{if(t>=s){L[j+32>>2]=i;p=O(0);k=O(l+r);i=O(t-O(h*k));if(i>=O(0)){L[j+40>>2]=-r;q=O(i*i);i=O(O(1)/O(O(h*h)+O(n*n)));p=O(O(q*i)+O(0));L[j+12>>2]=p;o=O(O(h*o)+O(k*n));break g}i=O(O(1)/h);L[j+40>>2]=l-O(t*i);break g}L[j+40>>2]=r;p=O(0);l=O(k+i);o=O(s-O(n*l));if(o>=O(0)){L[j+32>>2]=-i;i=O(O(1)/O(O(h*h)+O(n*n)));p=O(O(O(o*o)*i)+O(0));L[j+12>>2]=p;o=O(O(h*l)+O(q*n));break g}i=O(O(1)/n);L[j+32>>2]=k-O(s*i);o=q}L[j+8>>2]=i*O(-o);h=L[d+4>>2];k=O(-h);h:{if(m>2]=k;L[j+12>>2]=h;break d}L[j+32>>2]=i;L[j+8>>2]=O(i-k)/h;h=L[d+4>>2];i=O(-h);i:{j:{if(m>2]=i;L[j+12>>2]=k}i=L[d+8>>2];h=O(-i);k:{if(l>2]=h;L[j+12>>2]=l;break d}if(i>O(0)){if(n>O(0)){o=L[d+4>>2];h=O(m-o);t=O(h*n);r=L[d+8>>2];q=O(l-r);s=O(q*i);l:{if(t>=s){L[j+36>>2]=o;p=O(0);q=O(l+r);m=O(t-O(i*q));if(m>=O(0)){L[j+40>>2]=-r;o=O(O(1)/O(O(i*i)+O(n*n)));p=O(O(O(m*m)*o)+O(0));L[j+12>>2]=p;h=O(O(i*h)+O(q*n));break l}o=O(O(1)/i);L[j+40>>2]=l-O(t*o);break l}L[j+40>>2]=r;p=O(0);l=O(m+o);h=O(s-O(n*l));if(h>=O(0)){L[j+36>>2]=-o;o=O(O(1)/O(O(i*i)+O(n*n)));p=O(O(O(h*h)*o)+O(0));L[j+12>>2]=p;h=O(O(i*l)+O(q*n));break l}o=O(O(1)/n);L[j+36>>2]=m-O(s*o);h=q}L[j+8>>2]=o*O(-h);h=L[d>>2];m=O(-h);m:{if(m>k){h=O(k+h);h=O(O(h*h)+p);break m}if(!(h>2]=m;L[j+12>>2]=h;break d}h=L[d+4>>2];L[j+36>>2]=h;L[j+8>>2]=O(h-m)/i;h=L[d>>2];i=O(-h);n:{o:{if(k>2]=i;L[j+12>>2]=m}i=L[d+8>>2];h=O(-i);p:{if(l>2]=h;L[j+12>>2]=l;break d}if(n>O(0)){h=L[d+8>>2];L[j+40>>2]=h;L[j+8>>2]=O(h-l)/n;h=L[d>>2];i=O(-h);q:{r:{if(k>2]=i;L[j+12>>2]=l}i=L[d+4>>2];h=O(-i);s:{if(m>2]=h;L[j+12>>2]=l;break d}i=L[d>>2];n=O(-i);t:{u:{if(n>k){h=O(k+i);h=O(O(h*h)+O(0));break u}h=O(0);if(!(i>2]=n;L[j+12>>2]=h}k=L[d+4>>2];i=O(-k);v:{w:{if(m>2]=i;L[j+12>>2]=h}i=L[d+8>>2];k=O(-i);x:{y:{if(l>2]=k;L[j+12>>2]=l}H[j+8>>2]=0}if(v>2]=-L[j+32>>2]}if(w>2]=-L[j+36>>2]}h=L[j+8>>2];z:{if(h>=O(0)){if(h<=O(1)){if(f){L[f>>2]=h}h=L[j+12>>2];if(!g){break z}i=L[j+36>>2];k=L[j+32>>2];n=L[j+40>>2];L[g+8>>2]=u>2]=i;L[g>>2]=k;break z}if(f){H[f>>2]=1065353216}h=pZ(b,c,d,e,g);break z}if(f){H[f>>2]=0}h=pZ(a,c,d,e,g)}Oa=j- -64|0;return h}function vA(a,b,c,d){var e=0,f=0,g=0,h=0,i=O(0),j=0,k=O(0),l=O(0),m=O(0),n=0;e=Oa-352|0;Oa=e;f=H[a>>2];a:{if((f|0)==H[a+4>>2]){Ra[H[H[f>>2]+152>>2]](f,J[a+8>>1],J[a+10>>1],e+160|0,e+128|0);d=H[e+172>>2];H[e+344>>2]=H[e+168>>2];H[e+348>>2]=d;d=H[e+164>>2];H[e+336>>2]=H[e+160>>2];H[e+340>>2]=d;d=H[e+180>>2];H[e+320>>2]=H[e+176>>2];H[e+324>>2]=d;d=H[e+188>>2];H[e+328>>2]=H[e+184>>2];H[e+332>>2]=d;d=H[e+132>>2];H[e+304>>2]=H[e+128>>2];H[e+308>>2]=d;d=H[e+140>>2];H[e+312>>2]=H[e+136>>2];H[e+316>>2]=d;d=H[e+148>>2];H[e+288>>2]=H[e+144>>2];H[e+292>>2]=d;d=H[e+156>>2];H[e+296>>2]=H[e+152>>2];H[e+300>>2]=d;d=H[a>>2];Ra[H[H[d>>2]+120>>2]](e+96|0,d,J[a+8>>1]);d=H[a+4>>2];Ra[H[H[d>>2]+120>>2]](e- -64|0,d,J[a+10>>1]);d=H[e+116>>2];H[e+256>>2]=H[e+112>>2];H[e+260>>2]=d;d=H[e+108>>2];H[e+280>>2]=H[e+104>>2];H[e+284>>2]=d;d=H[e+100>>2];H[e+272>>2]=H[e+96>>2];H[e+276>>2]=d;d=H[e+124>>2];H[e+264>>2]=H[e+120>>2];H[e+268>>2]=d;d=H[e+68>>2];H[e+240>>2]=H[e+64>>2];H[e+244>>2]=d;d=H[e+76>>2];H[e+248>>2]=H[e+72>>2];H[e+252>>2]=d;d=H[e+84>>2];H[e+224>>2]=H[e+80>>2];H[e+228>>2]=d;d=H[e+92>>2];H[e+232>>2]=H[e+88>>2];H[e+236>>2]=d;d=H[a>>2];d=Ra[H[H[d>>2]+168>>2]](d,J[a+8>>1])|0;f=H[d>>2];g=H[d+4>>2];h=H[d+12>>2];H[e+216>>2]=H[d+8>>2];H[e+220>>2]=h;H[e+208>>2]=f;H[e+212>>2]=g;d=H[a+4>>2];d=Ra[H[H[d>>2]+168>>2]](d,J[a+10>>1])|0;f=H[d>>2];g=H[d+4>>2];h=H[d+12>>2];H[e+200>>2]=H[d+8>>2];H[e+204>>2]=h;H[e+192>>2]=f;H[e+196>>2]=g;break a}g=J[a+8>>1];b:{if((g|0)==65535){g=H[f+4>>2];h=H[f>>2];i=L[f+8>>2];H[e+348>>2]=0;L[e+344>>2]=i;H[e+336>>2]=h;H[e+340>>2]=g;g=H[f+16>>2];h=H[f+20>>2];i=L[f+24>>2];H[e+332>>2]=0;L[e+328>>2]=i;H[e+320>>2]=g;H[e+324>>2]=h;g=H[f+48>>2];h=H[f+52>>2];i=L[f+56>>2];H[e+284>>2]=0;L[e+280>>2]=i;H[e+272>>2]=g;H[e+276>>2]=h;g=H[f+32>>2];h=H[f+36>>2];i=L[f+40>>2];H[e+268>>2]=0;L[e+264>>2]=i;H[e+256>>2]=g;H[e+260>>2]=h;f=(H[a+12>>2]<<6)+d|0;i=L[f+12>>2];k=L[f+8>>2];l=L[f+4>>2];m=L[f>>2];break b}Ra[H[H[f>>2]+156>>2]](e+160|0,f,g);f=H[a>>2];f=Ra[H[H[f>>2]+168>>2]](f,J[a+8>>1])|0;i=L[f+12>>2];k=L[f+8>>2];l=L[f+4>>2];m=L[f>>2];f=H[a>>2];Ra[H[H[f>>2]+120>>2]](e+128|0,f,J[a+8>>1]);f=H[e+172>>2];H[e+344>>2]=H[e+168>>2];H[e+348>>2]=f;f=H[e+164>>2];H[e+336>>2]=H[e+160>>2];H[e+340>>2]=f;f=H[e+180>>2];H[e+320>>2]=H[e+176>>2];H[e+324>>2]=f;f=H[e+188>>2];H[e+328>>2]=H[e+184>>2];H[e+332>>2]=f;f=H[e+132>>2];H[e+272>>2]=H[e+128>>2];H[e+276>>2]=f;f=H[e+140>>2];H[e+280>>2]=H[e+136>>2];H[e+284>>2]=f;f=H[e+148>>2];H[e+256>>2]=H[e+144>>2];H[e+260>>2]=f;f=H[e+156>>2];H[e+264>>2]=H[e+152>>2];H[e+268>>2]=f}L[e+220>>2]=i;L[e+216>>2]=k;L[e+212>>2]=l;L[e+208>>2]=m;f=J[a+10>>1];if((f|0)==65535){f=H[a+4>>2];g=H[f+4>>2];h=H[f>>2];i=L[f+8>>2];H[e+316>>2]=0;L[e+312>>2]=i;H[e+304>>2]=h;H[e+308>>2]=g;i=L[f+24>>2];g=H[f+16>>2];h=H[f+20>>2];H[e+300>>2]=0;L[e+296>>2]=i;H[e+288>>2]=g;H[e+292>>2]=h;i=L[f+56>>2];g=H[f+48>>2];h=H[f+52>>2];H[e+252>>2]=0;L[e+248>>2]=i;H[e+240>>2]=g;H[e+244>>2]=h;i=L[f+40>>2];g=H[f+32>>2];f=H[f+36>>2];H[e+236>>2]=0;L[e+232>>2]=i;H[e+224>>2]=g;H[e+228>>2]=f;d=(H[a+16>>2]<<6)+d|0;f=H[d>>2];g=H[d+4>>2];h=H[d+12>>2];H[e+200>>2]=H[d+8>>2];H[e+204>>2]=h;H[e+192>>2]=f;H[e+196>>2]=g;break a}d=H[a+4>>2];Ra[H[H[d>>2]+156>>2]](e+160|0,d,f);d=H[a+4>>2];d=Ra[H[H[d>>2]+168>>2]](d,J[a+10>>1])|0;f=H[d>>2];g=H[d+4>>2];h=H[d+12>>2];H[e+200>>2]=H[d+8>>2];H[e+204>>2]=h;H[e+192>>2]=f;H[e+196>>2]=g;d=H[a+4>>2];Ra[H[H[d>>2]+120>>2]](e+128|0,d,J[a+10>>1]);d=H[e+172>>2];H[e+312>>2]=H[e+168>>2];H[e+316>>2]=d;d=H[e+164>>2];H[e+304>>2]=H[e+160>>2];H[e+308>>2]=d;d=H[e+180>>2];H[e+288>>2]=H[e+176>>2];H[e+292>>2]=d;d=H[e+188>>2];H[e+296>>2]=H[e+184>>2];H[e+300>>2]=d;d=H[e+132>>2];H[e+240>>2]=H[e+128>>2];H[e+244>>2]=d;d=H[e+140>>2];H[e+248>>2]=H[e+136>>2];H[e+252>>2]=d;d=H[e+148>>2];H[e+224>>2]=H[e+144>>2];H[e+228>>2]=d;d=H[e+156>>2];H[e+232>>2]=H[e+152>>2];H[e+236>>2]=d}uA(a,e+336|0,e+304|0,e+320|0,e+288|0,e+272|0,e+240|0,e+256|0,e+224|0,e+208|0,e+192|0,b,e+160|0,e+128|0,e+96|0,e- -64|0);f=J[a+8>>1];d=H[a>>2];c:{if((d|0)==H[a+4>>2]){Ra[H[H[d>>2]+132>>2]](d,f,e+160|0,e+96|0,J[a+10>>1],e+128|0,e- -64|0,H[c+32>>2],H[c+36>>2]);break c}d:{if((f|0)==65535){f=H[e+336>>2];g=H[e+340>>2];L[d+8>>2]=L[e+344>>2];H[d>>2]=f;H[d+4>>2]=g;b=L[e+328>>2];f=H[e+324>>2];d=H[a>>2];H[d+16>>2]=H[e+320>>2];H[d+20>>2]=f;L[d+24>>2]=b;break d}g=H[c+36>>2];h=H[c+32>>2];n=H[H[d>>2]+128>>2];j=H[e+172>>2];H[e+56>>2]=H[e+168>>2];H[e+60>>2]=j;j=H[e+164>>2];H[e+48>>2]=H[e+160>>2];H[e+52>>2]=j;j=H[e+100>>2];H[e+32>>2]=H[e+96>>2];H[e+36>>2]=j;j=H[e+108>>2];H[e+40>>2]=H[e+104>>2];H[e+44>>2]=j;Ra[n|0](d,f,e+48|0,e+32|0,h,g)}d=J[a+10>>1];if((d|0)==65535){d=H[e+304>>2];f=H[e+308>>2];c=H[a+4>>2];L[c+8>>2]=L[e+312>>2];H[c>>2]=d;H[c+4>>2]=f;b=L[e+296>>2];c=H[e+292>>2];a=H[a+4>>2];H[a+16>>2]=H[e+288>>2];H[a+20>>2]=c;L[a+24>>2]=b;break c}f=H[c+36>>2];c=H[c+32>>2];a=H[a+4>>2];g=H[H[a>>2]+128>>2];h=H[e+140>>2];H[e+24>>2]=H[e+136>>2];H[e+28>>2]=h;h=H[e+132>>2];H[e+16>>2]=H[e+128>>2];H[e+20>>2]=h;h=H[e+68>>2];H[e>>2]=H[e+64>>2];H[e+4>>2]=h;h=H[e+76>>2];H[e+8>>2]=H[e+72>>2];H[e+12>>2]=h;Ra[g|0](a,d,e+16|0,e,c,f)}Oa=e+352|0}function wA(a,b,c){var d=0,e=O(0),f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=0,n=0,o=O(0),p=O(0),q=O(0),r=O(0),s=0,t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),F=O(0),G=O(0),J=O(0),K=O(0),M=O(0),N=O(0),P=O(0),Q=O(0),R=O(0),S=O(0),T=O(0),U=O(0),V=O(0),W=O(0),X=O(0),Y=O(0),Z=O(0),_=O(0),$=O(0),aa=O(0),ba=O(0),ca=O(0),da=O(0),ea=O(0),fa=O(0),ga=O(0),ha=O(0),ia=O(0),ja=O(0),ka=O(0),la=O(0),ma=O(0),na=O(0),oa=O(0),pa=O(0),qa=O(0),ra=O(0),sa=0,ta=O(0),ua=O(0),va=O(0),wa=O(0),xa=O(0),ya=O(0),za=O(0),Aa=O(0),Ba=O(0),Ca=O(0),Da=O(0),Ea=O(0),Fa=O(0),Ga=O(0),Ha=O(0),Ia=O(0),Ja=O(0),Ka=O(0),La=O(0),Ma=O(0),Na=O(0),Oa=O(0),Pa=O(0),Qa=O(0),Ra=O(0),Sa=O(0),Ta=O(0),Ua=O(0),Va=O(0),Wa=O(0),Xa=O(0),Ya=O(0),Za=O(0),_a=O(0),$a=O(0),ab=O(0),bb=O(0),cb=O(0),db=O(0),eb=O(0),fb=O(0),gb=O(0),hb=O(0),ib=O(0),jb=O(0),kb=O(0),lb=O(0);d=H[a+24>>2];if(d){m=H[a+4>>2];w=L[m+24>>2];x=L[m+20>>2];n=H[a>>2];y=L[n+24>>2];z=L[n+20>>2];A=L[m+16>>2];B=L[n+16>>2];C=L[m+8>>2];D=L[m+4>>2];E=L[m>>2];F=L[n+8>>2];G=L[n+4>>2];J=L[n>>2];sa=I[d+1|0];if(sa){U=L[d+120>>2];K=L[n+40>>2];V=L[d+112>>2];M=L[n+32>>2];N=L[n+36>>2];W=L[d+116>>2];X=L[d+168>>2];P=L[m+40>>2];Y=L[d+160>>2];Q=L[m+32>>2];R=L[m+36>>2];Z=L[d+164>>2];Aa=O(L[d+172>>2]+O(O(O(U*K)+O(O(V*M)+O(N*W)))-O(O(X*P)+O(O(Y*Q)+O(R*Z)))));_=L[d+104>>2];$=L[d+96>>2];aa=L[d+100>>2];ba=L[d+152>>2];ca=L[d+144>>2];da=L[d+148>>2];Ba=O(L[d+156>>2]+O(O(O(_*K)+O(O($*M)+O(N*aa)))-O(O(ba*P)+O(O(ca*Q)+O(R*da)))));ea=L[d+88>>2];fa=L[d+80>>2];ga=L[d+84>>2];ha=L[d+136>>2];ia=L[d+128>>2];ja=L[d+132>>2];Ca=O(L[d+140>>2]+O(O(O(ea*K)+O(O(fa*M)+O(N*ga)))-O(O(ha*P)+O(O(ia*Q)+O(R*ja)))));s=(H[a+16>>2]<<6)+b|0;e=L[s+12>>2];i=L[s+8>>2];k=L[d+56>>2];j=L[s>>2];h=L[d+48>>2];o=L[s+4>>2];g=L[d+52>>2];p=O(O(i*k)+O(O(j*h)+O(o*g)));q=O(O(e*e)+O(-.5));l=O(O(O(e*O(O(j*g)-O(h*o)))+O(q*k))+O(i*p));ka=O(l+l);Da=O(O(ka+L[m+56>>2])-k);l=O(O(o*p)+O(O(q*g)+O(e*O(O(i*h)-O(k*j)))));la=O(l+l);Ea=O(O(la+L[m+52>>2])-g);e=O(O(j*p)+O(O(q*h)+O(e*O(O(o*k)-O(g*i)))));ma=O(e+e);Fa=O(O(ma+L[m+48>>2])-h);a=(H[a+12>>2]<<6)+b|0;e=L[a+12>>2];i=L[a+8>>2];k=L[d+40>>2];j=L[a>>2];h=L[d+32>>2];o=L[a+4>>2];g=L[d+36>>2];p=O(O(i*k)+O(O(j*h)+O(o*g)));q=O(O(e*e)+O(-.5));l=O(O(O(e*O(O(j*g)-O(h*o)))+O(q*k))+O(i*p));na=O(l+l);Ga=O(O(na+L[n+56>>2])-k);l=O(O(o*p)+O(O(q*g)+O(e*O(O(i*h)-O(k*j)))));oa=O(l+l);Ha=O(O(oa+L[n+52>>2])-g);e=O(O(j*p)+O(O(q*h)+O(e*O(O(o*k)-O(g*i)))));pa=O(e+e);Ia=O(O(pa+L[n+48>>2])-h);Ja=O(-la);Ka=O(-ma);La=O(-ka);Ma=O(-oa);Na=O(-pa);Oa=O(-na);Pa=L[s+28>>2];Qa=L[a+28>>2];Ra=L[s+60>>2];Sa=L[s+56>>2];Ta=L[s+52>>2];Ua=L[s+48>>2];Va=L[s+44>>2];Wa=L[s+40>>2];Xa=L[s+36>>2];Ya=L[s+32>>2];Za=L[a+60>>2];_a=L[a+56>>2];$a=L[a+52>>2];ab=L[a+48>>2];bb=L[a+44>>2];cb=L[a+40>>2];db=L[a+36>>2];eb=L[a+32>>2];fb=L[d+124>>2];gb=L[d+108>>2];hb=L[d+92>>2];S=L[d+68>>2];T=L[d+60>>2];ta=L[d+28>>2];ua=L[d+12>>2];a=d+176|0;b=0;while(1){o=L[a+4>>2];p=L[a>>2];h=O(O(O(pa*o)+O(p*Ma))+L[a+40>>2]);q=L[a+8>>2];g=O(O(O(oa*q)+O(o*Oa))+L[a+32>>2]);i=O(O(O(na*p)+O(q*Na))+L[a+36>>2]);e=O(O(Za*h)+O(O(db*g)+O(ab*i)));k=O(O(_a*h)+O(O(eb*g)+O(bb*i)));h=O(O($a*h)+O(O(Qa*g)+O(cb*i)));l=L[a+20>>2];u=L[a+16>>2];j=O(O(O(ma*l)+O(u*Ja))+L[a+56>>2]);v=L[a+24>>2];f=O(O(O(la*v)+O(l*La))+L[a+48>>2]);r=O(O(O(ka*u)+O(v*Ka))+L[a+52>>2]);g=O(O(Ra*j)+O(O(Xa*f)+O(Ua*r)));i=O(O(Sa*j)+O(O(Ya*f)+O(Va*r)));j=O(O(Ta*j)+O(O(Pa*f)+O(Wa*r)));qa=L[a+80>>2];d=H[a+84>>2];va=d&64?O(-3.4028234663852886e38):O(-qa);ra=L[a+12>>2];wa=L[a+68>>2];xa=L[a+72>>2];ib=L[a+44>>2];ya=L[a+76>>2];jb=L[a+60>>2];za=L[a+64>>2];kb=L[a+28>>2];lb=L[a+92>>2];if(d&16){f=O(hb*O(O(O(ea*e)+O(ha*g))+O(O(O(fa*h)+O(ia*j))+O(O(ga*k)+O(ja*i)))));r=O(gb*O(O(O(_*e)+O(ba*g))+O(O(O($*h)+O(ca*j))+O(O(aa*k)+O(da*i)))));t=O(fb*O(O(O(U*e)+O(X*g))+O(O(O(V*h)+O(Y*j))+O(O(W*k)+O(Z*i)))));ra=O(ra-O(O(Ca*f)+O(O(Ba*r)+O(Aa*t))));g=O(g-O(O(ha*f)+O(O(ba*r)+O(X*t))));i=O(i-O(O(ja*f)+O(O(da*r)+O(Z*t))));j=O(j-O(O(ia*f)+O(O(ca*r)+O(Y*t))));k=O(k-O(O(ga*f)+O(O(aa*r)+O(W*t))));h=O(h-O(O(fa*f)+O(O($*r)+O(V*t))));e=O(e-O(O(ea*f)+O(O(_*r)+O(U*t))))}f=O(O(O(ta*O(O(v*v)+O(O(u*u)+O(l*l))))-O(O(O(j*O(S*j))+O(i*O(S*i)))+O(g*O(S*g))))+O(O(ua*O(O(q*q)+O(O(p*p)+O(o*o))))+O(O(O(h*O(T*h))+O(k*O(T*k)))+O(e*O(T*e)))));f=f>O(0)?O(O(1)/f):O(0);t=O(O(O(O(O(O(J*p)+O(B*h))-O(O(E*u)+O(A*j)))+O(O(O(G*o)+O(z*k))-O(O(D*l)+O(x*i))))+O(O(O(F*q)+O(y*e))-O(O(C*v)+O(w*g))))*O(ib*f));r=f;f=O(kb*O(O(O(O(O(O(Ga*q)+O(O(Ia*p)+O(Ha*o)))-O(O(Da*v)+O(O(Fa*u)+O(Ea*l))))+ra)+O(lb*O(O(O(e*K)+O(O(h*M)+O(N*k)))-O(O(g*P)+O(O(j*Q)+O(R*i))))))-O(za*c)));f=f>qa?qa:f;f=O(O(jb*ya)+O(t+O(r*O(za+(f>va?f:va)))));f=f>xa?xa:f;f=f>wa?f:wa;L[a+76>>2]=f;r=g;g=O(f-ya);f=O(S*g);w=O(w+O(r*f));x=O(x+O(i*f));A=O(A+O(j*f));f=e;e=O(T*g);y=O(y+O(f*e));z=O(z+O(k*e));B=O(B+O(h*e));e=O(ta*g);C=O(C-O(v*e));D=O(D-O(l*e));E=O(E-O(u*e));e=O(ua*g);F=O(F+O(q*e));G=O(G+O(o*e));J=O(J+O(p*e));a=a+96|0;b=b+1|0;if((sa|0)!=(b|0)){continue}break}}L[n+24>>2]=y;L[n+20>>2]=z;L[n+16>>2]=B;L[n+8>>2]=F;L[n+4>>2]=G;L[n>>2]=J;L[m+24>>2]=w;L[m+20>>2]=x;L[m+16>>2]=A;L[m+8>>2]=C;L[m+4>>2]=D;L[m>>2]=E}}function w_(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),J=O(0),K=O(0),M=O(0),N=O(0),P=O(0),Q=O(0),R=O(0),S=O(0),T=O(0),U=O(0),V=O(0),W=O(0),X=O(0),Y=O(0),Z=O(0),_=O(0),$=O(0),aa=O(0),ba=0,ca=O(0),da=O(0),ea=O(0),fa=O(0),ga=O(0),ha=O(0),ia=O(0);f=Oa-208|0;Oa=f;X=L[d+8>>2];a:{b:{aa=L[d>>2];Y=L[d+4>>2];if(aa!=O(1)|Y!=O(1)){break b}q=O(1);if(X!=O(1)){break b}u=L[c+20>>2];r=L[c+24>>2];x=L[a+40>>2];o=L[a+44>>2];s=L[a+16>>2];k=L[a+20>>2];l=L[a+28>>2];p=L[a+32>>2];X=L[a+52>>2];Y=L[a+8>>2];K=L[a>>2];U=L[a+4>>2];N=L[a+48>>2];E=L[c+16>>2];y=L[a+36>>2];h=L[a+12>>2];g=L[c+8>>2];i=L[c+4>>2];v=L[a+24>>2];m=L[c>>2];j=L[c+12>>2];R=L[a+56>>2];L[f+160>>2]=R;L[f+156>>2]=X;A=O(-m);v=O(v+v);B=O(l+l);p=O(p+p);z=O(O(O(A*v)-O(B*i))-O(g*p));l=O(O(j*j)+O(-.5));C=O(O(O(p*l)+O(j*O(O(i*v)-O(m*B))))-O(g*z));L[f+136>>2]=C;w=O(O(O(B*l)+O(j*O(O(m*p)-O(g*v))))-O(i*z));L[f+132>>2]=w;h=O(h+h);t=O(s+s);n=O(k+k);D=O(O(O(A*h)-O(t*i))-O(g*n));s=O(O(O(n*l)+O(j*O(O(i*h)-O(m*t))))-O(g*D));L[f+124>>2]=s;k=O(O(O(t*l)+O(j*O(O(m*n)-O(g*h))))-O(i*D));L[f+120>>2]=k;y=O(y+y);x=O(x+x);o=O(o+o);J=O(O(O(A*y)-O(x*i))-O(g*o));r=O(r*O(-2));E=O(E*O(-2));u=O(u*O(-2));T=O(O(g*r)+O(O(m*E)+O(i*u)));M=O(O(O(g*T)+O(O(r*l)-O(j*O(O(m*u)-O(E*i)))))+O(O(O(o*l)+O(j*O(O(i*y)-O(m*x))))-O(g*J)));L[f+148>>2]=M;S=O(O(O(i*T)+O(O(u*l)-O(j*O(O(g*E)-O(r*m)))))+O(O(O(x*l)+O(j*O(O(m*o)-O(g*y))))-O(i*J)));L[f+144>>2]=S;L[f+152>>2]=N;v=O(O(O(v*l)+O(j*O(O(g*B)-O(i*p))))-O(m*z));L[f+128>>2]=v;z=O(O(O(h*l)+O(j*O(O(g*t)-O(i*n))))-O(m*D));L[f+116>>2]=z;p=O(K+K);h=O(U+U);t=O(Y+Y);n=O(O(O(A*p)-O(h*i))-O(g*t));A=O(O(O(t*l)+O(j*O(O(i*p)-O(m*h))))-O(g*n));L[f+112>>2]=A;B=O(O(O(h*l)+O(j*O(O(m*t)-O(g*p))))-O(i*n));L[f+108>>2]=B;p=O(O(O(p*l)+O(j*O(O(g*h)-O(i*t))))-O(m*n));L[f+104>>2]=p;i=O(O(O(m*T)+O(O(E*l)-O(j*O(O(i*r)-O(u*g)))))+O(O(O(y*l)+O(j*O(O(g*x)-O(i*o))))-O(m*J)));L[f+140>>2]=i;m=O(0);j=O(0);l=O(0);h=O(1);t=O(0);g=O(0);n=O(0);D=O(1);y=O(O(z*w)-O(v*k));x=O(O(k*C)-O(w*s));o=O(C*z);J=O(O(A*y)+O(O(p*x)+O(B*O(O(s*v)-o))));if(J!=O(0)){g=O(O(1)/J);D=O(O(O(p*k)+O(B*O(-z)))*g);h=O(O(O(p*C)-O(v*A))*g);j=O(O(O(B*s)-O(k*A))*g);q=O(x*g);n=O(g*O(-O(O(p*w)-O(v*B))));t=O(g*O(-O(O(p*s)-O(z*A))));l=O(g*O(-O(o+O(v*O(-s)))));m=O(g*O(-O(O(B*C)-O(A*w))));g=O(y*g)}L[f+200>>2]=D;L[f+196>>2]=n;L[f+188>>2]=t;L[f+184>>2]=h;L[f+192>>2]=g;L[f+180>>2]=l;L[f+168>>2]=q;L[f+172>>2]=m;L[f+176>>2]=j;L[f+76>>2]=R;L[f+72>>2]=X;s=O(-S);L[f+92>>2]=-O(O(O(t*s)-O(i*j))-O(M*D));L[f+88>>2]=-O(O(O(h*s)-O(i*m))-O(M*n));G[f+16>>1]=0;H[f+12>>2]=e;H[f+4>>2]=2;H[f>>2]=128408;L[f+68>>2]=N;L[f+84>>2]=-O(O(O(l*s)-O(i*q))-O(M*g));H[f+8>>2]=f+168;o_(f+104|0,1,b,f,1);break a}ba=f+104|0;dZ(ba,a,c,d);g=L[d+20>>2];z=L[d+24>>2];w=L[d+16>>2];i=L[a+16>>2];m=L[a+20>>2];q=L[a+40>>2];h=L[a+44>>2];t=L[c+20>>2];j=L[a+28>>2];n=L[c+24>>2];l=L[a+32>>2];k=L[c+4>>2];D=L[c+12>>2];y=L[c>>2];s=L[c+8>>2];x=L[d+8>>2];o=L[d+4>>2];J=L[d>>2];r=L[d+12>>2];v=L[a+8>>2];A=L[a>>2];B=L[a+4>>2];p=L[a+12>>2];u=L[a+36>>2];E=L[c+16>>2];C=L[a+24>>2];H[f+92>>2]=0;u=O(-u);L[f- -64>>2]=O(O(O(C*u)-O(j*q))-O(l*h))+O(O(O(C*E)+O(j*t))+O(l*n));L[f+60>>2]=O(O(O(p*u)-O(i*q))-O(m*h))+O(O(O(p*E)+O(i*t))+O(m*n));L[f+56>>2]=O(O(O(A*u)-O(B*q))-O(v*h))+O(O(O(A*E)+O(B*t))+O(v*n));q=O(r+r);V=O(g*q);u=O(w+w);P=O(z*u);h=O(V+P);t=O(J*h);Z=O(u*g);_=O(q*z);n=O(Z-_);E=O(n*o);$=O(O(1)-O(r*q));R=O(w*u);r=O($-R);u=O(r*x);M=O(y+y);ca=O(s*M);K=O(k+k);da=O(D*K);U=O(ca+da);N=O(O(O(h*t)+O(n*E))+O(r*u));ea=O(k*K);W=O(s+s);fa=O(s*W);T=O(O(O(1)-ea)-fa);S=O(g+g);ga=O(g*S);g=O(O(O(1)-R)-ga);R=O(J*g);q=O(q*w);Q=O(S*z);w=O(q+Q);S=O(o*w);z=O(V-P);V=O(x*z);P=O(O(O(h*R)+O(n*S))+O(r*V));ha=O(M*k);ia=O(W*D);W=O(ha-ia);k=O(q-Q);J=O(J*k);Q=n;q=O($-ga);n=O(o*q);Q=O(O(h*J)+O(Q*n));h=O(Z+_);x=O(x*h);o=O(Q+O(r*x));r=O(O(U*N)+O(O(T*P)+O(W*o)));Z=O(K*s);_=O(M*D);s=O(Z-_);D=O(ha+ia);K=O(O(1)-O(y*M));y=O(K-fa);M=O(O(s*N)+O(O(D*P)+O(y*o)));K=O(K-ea);Q=O(K*N);N=O(ca-da);$=O(N*P);P=O(Z+_);o=O(Q+O($+O(P*o)));L[f+52>>2]=O(O(C*r)+O(j*M))+O(l*o);L[f+48>>2]=O(m*o)+O(O(p*r)+O(i*M));L[f+44>>2]=O(v*o)+O(O(A*r)+O(B*M));o=O(O(O(k*t)+O(q*E))+O(h*u));r=O(O(O(k*R)+O(q*S))+O(h*V));k=O(O(O(k*J)+O(q*n))+O(h*x));q=O(O(U*o)+O(O(T*r)+O(W*k)));h=O(O(s*o)+O(O(D*r)+O(y*k)));k=O(O(K*o)+O(O(N*r)+O(P*k)));L[f+40>>2]=O(O(C*q)+O(j*h))+O(l*k);L[f+36>>2]=O(m*k)+O(O(p*q)+O(i*h));L[f+32>>2]=O(v*k)+O(O(A*q)+O(B*h));Q=C;C=O(O(O(g*t)+O(w*E))+O(z*u));k=O(O(O(g*R)+O(w*S))+O(z*V));g=O(O(O(g*J)+O(w*n))+O(z*x));w=O(O(U*C)+O(O(T*k)+O(W*g)));n=j;j=O(O(s*C)+O(O(D*k)+O(y*g)));g=O(O(K*C)+O(O(N*k)+O(P*g)));L[f+28>>2]=O(O(Q*w)+O(n*j))+O(l*g);L[f+24>>2]=O(g*m)+O(O(p*w)+O(i*j));F[f+17|0]=O(O(aa*Y)*X)>2]=e;H[f+4>>2]=2;H[f+84>>2]=0;H[f+88>>2]=0;H[f>>2]=128440;L[f+20>>2]=O(v*g)+O(O(A*w)+O(B*j));H[f+8>>2]=f+168;c=H[a+52>>2];d=H[a+48>>2];L[f+76>>2]=L[a+56>>2];H[f+68>>2]=d;H[f+72>>2]=c;o_(ba,1,b,f,1)}Oa=f+208|0;return I[f+16|0]!=0|0}function tx(a,b,c,d,e,f,g,h,i,j,k,l,m){var n=0,o=0,p=0,q=0,r=O(0),s=0,t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=0,B=0,C=O(0),D=O(0),E=O(0),F=O(0),G=O(0),K=O(0),M=O(0),P=O(0),Q=O(0),R=O(0),S=O(0),T=0,U=O(0),V=O(0),W=0,X=O(0),Y=O(0),Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=O(0),ga=0,ha=0;p=Oa-832|0;Oa=p;a:{if(!e){break a}while(1){A=N(o,80)+b|0;s=0;b:{if(!o){break b}W=J[A+78>>1];n=o;while(1){B=n-1|0;T=H[(B<<2)+a>>2];if(W>>>0>=J[T+78>>1]){s=n;break b}H[(n<<2)+a>>2]=T;n=B;if(n){continue}break}}H[(s<<2)+a>>2]=A;o=o+1|0;if((o|0)!=(e|0)){continue}break}if(!e){break a}n=0;if((e|0)!=1){s=e&-2;A=0;while(1){r=O(0);t=O(0);o=N(n,80)+b|0;if(I[o+76|0]&8){t=L[o+12>>2]}L[o+72>>2]=t;o=N(n|1,80)+b|0;if(I[o+76|0]&8){r=L[o+12>>2]}L[o+72>>2]=r;n=n+2|0;A=A+2|0;if((s|0)!=(A|0)){continue}break}}if(!(e&1)){break a}r=O(0);b=N(n,80)+b|0;if(I[b+76|0]&8){r=L[b+12>>2]}L[b+72>>2]=r}if(e){C=L[g+32>>2];D=L[g+28>>2];E=L[g+20>>2];F=L[g+16>>2];G=L[f+32>>2];u=L[f+28>>2];z=L[f+20>>2];K=L[f+16>>2];M=L[g+24>>2];P=L[g+12>>2];Q=L[g+8>>2];R=L[g+4>>2];S=L[g>>2];U=L[f+24>>2];V=L[f+12>>2];X=L[f+8>>2];Y=L[f+4>>2];fa=L[f>>2];f=0;while(1){b=H[(f<<2)+a>>2];r=L[b+56>>2];t=L[b+52>>2];v=L[b+48>>2];w=L[b+24>>2];x=L[b+20>>2];y=L[b+16>>2];g=f<<4;b=g+c|0;H[b+12>>2]=0;L[b+8>>2]=O(G*w)+O(O(X*y)+O(z*x));L[b+4>>2]=O(u*w)+O(O(Y*y)+O(K*x));L[b>>2]=O(U*w)+O(O(fa*y)+O(V*x));b=d+g|0;H[b+12>>2]=0;L[b+8>>2]=O(C*r)+O(O(Q*v)+O(E*t));L[b+4>>2]=O(D*r)+O(O(R*v)+O(F*t));L[b>>2]=O(M*r)+O(O(S*v)+O(P*t));f=f+1|0;if((f|0)!=(e|0)){continue}break}}c:{if(k){break c}L[p>>2]=L[j>>2]*h;L[p+16>>2]=L[j+8>>2]*i;L[p+32>>2]=L[j+4>>2];L[p+48>>2]=L[j+12>>2];if(!e){break c}ga=l^1;f=0;while(1){b=f;g=b+1|0;n=e>>>0>g>>>0?e:g;j=n-1|0;T=(b<<2)+a|0;g=H[T>>2];o=J[g+78>>1];Z=o>>>8|0;while(1){d:{k=f;if((f|0)==(j|0)){k=j;f=n;break d}f=k+1|0;if(I[H[(f<<2)+a>>2]+79|0]==(Z|0)){continue}}break}e:{f:{g:{switch(Z-1|0){case 7:if(!m){break e}case 3:n=b;h:{if(o&255|n>>>0>k>>>0){break h}j=k+1|0;while(1){if((k|0)==(n|0)){n=j;break h}n=n+1|0;if(!I[H[(n<<2)+a>>2]+78|0]){continue}break}}i:{ba=f-b|0;if(!ba){break i}W=n-b|0;j=b<<4;ca=j+d|0;da=c+j|0;j=0;while(1){u=L[g+56>>2];z=L[g+52>>2];t=L[g+40>>2];i=L[g+36>>2];K=L[g+28>>2];M=L[g+24>>2];P=L[g+20>>2];n=j<<4;s=n+ca|0;U=L[s+12>>2];y=L[s+8>>2];C=L[s+4>>2];D=L[s>>2];B=n+da|0;V=L[B+12>>2];E=L[B+8>>2];F=L[B+4>>2];G=L[B>>2];Q=L[g+48>>2];r=L[g+32>>2];R=L[g+16>>2];S=L[g+12>>2];v=L[g+8>>2];w=L[g+4>>2];x=L[g>>2];ea=j>>>0>>0;if(ea?j:W){ha=j>>>0>W>>>0?W:j;A=0;while(1){o=A<<4;q=o+(p+736|0)|0;_=o+(p+352|0)|0;$=o+(p+640|0)|0;aa=o+(p+256|0)|0;h=O(O(O(O(O(r*L[q>>2])+O(x*L[_>>2]))+O(O(D*L[$>>2])+O(G*L[aa>>2])))+O(O(O(i*L[q+4>>2])+O(w*L[_+4>>2]))+O(O(C*L[$+4>>2])+O(F*L[aa+4>>2]))))+O(O(O(t*L[q+8>>2])+O(v*L[_+8>>2]))+O(O(y*L[$+8>>2])+O(E*L[aa+8>>2]))));q=o+ca|0;U=O(U-O(h*L[q+12>>2]));y=O(y-O(h*L[q+8>>2]));C=O(C-O(h*L[q+4>>2]));D=O(D-O(h*L[q>>2]));q=o+da|0;V=O(V-O(h*L[q+12>>2]));E=O(E-O(h*L[q+8>>2]));F=O(F-O(h*L[q+4>>2]));G=O(G-O(h*L[q>>2]));q=o+(p+448|0)|0;u=O(u-O(h*L[q+8>>2]));z=O(z-O(h*L[q+4>>2]));Q=O(Q-O(h*L[q>>2]));q=o+(p+544|0)|0;t=O(t-O(h*L[q+8>>2]));i=O(i-O(h*L[q+4>>2]));r=O(r-O(h*L[q>>2]));q=o+(p- -64|0)|0;K=O(K-O(h*L[q+12>>2]));M=O(M-O(h*L[q+8>>2]));P=O(P-O(h*L[q+4>>2]));R=O(R-O(h*L[q>>2]));o=o+(p+160|0)|0;S=O(S-O(L[o+12>>2]*h));v=O(v-O(L[o+8>>2]*h));w=O(w-O(L[o+4>>2]*h));x=O(x-O(L[o>>2]*h));A=A+1|0;if((ha|0)!=(A|0)){continue}break}}L[g+12>>2]=S;L[g+8>>2]=v;L[g+4>>2]=w;L[g>>2]=x;o=T+(j<<2)|0;g=H[o>>2];L[g+28>>2]=K;L[g+16>>2]=R;L[g+24>>2]=M;L[g+20>>2]=P;g=H[o>>2];L[g+48>>2]=Q;L[g+32>>2]=r;L[g+56>>2]=u;L[g+52>>2]=z;L[g+40>>2]=t;L[g+36>>2]=i;L[B+12>>2]=V;L[B+8>>2]=E;L[B+4>>2]=F;L[B>>2]=G;L[s+12>>2]=U;L[s+8>>2]=y;L[s+4>>2]=C;L[s>>2]=D;if(ea){g=n+(p+160|0)|0;L[g+12>>2]=S;L[g+8>>2]=v;L[g+4>>2]=w;L[g>>2]=x;g=n+(p- -64|0)|0;L[g+12>>2]=K;L[g+8>>2]=M;L[g+4>>2]=P;L[g>>2]=R;g=n+(p+544|0)|0;H[g+12>>2]=0;L[g+8>>2]=t;L[g+4>>2]=i;L[g>>2]=r;g=n+(p+448|0)|0;H[g+12>>2]=0;L[g+8>>2]=u;L[g+4>>2]=z;L[g>>2]=Q;h=L[p>>2];u=L[p+16>>2];z=L[p+32>>2];K=L[p+48>>2];g=n+(p+736|0)|0;H[g+12>>2]=0;o=n+(p+640|0)|0;H[o+12>>2]=0;s=n+(p+352|0)|0;M=v;v=O(v*h);P=t;t=O(t*u);Q=E;E=O(E*z);R=y;y=O(y*K);S=x;x=O(x*h);U=r;r=O(r*u);V=G;G=O(G*z);X=D;D=O(D*K);Y=w;w=O(w*h);h=i;i=O(i*u);u=F;F=O(F*z);z=C;C=O(C*K);h=O(O(O(O(M*v)+O(P*t))+O(O(Q*E)+O(R*y)))+O(O(O(O(S*x)+O(U*r))+O(O(V*G)+O(X*D)))+O(O(O(Y*w)+O(h*i))+O(O(u*F)+O(z*C)))));h=h>O(0)?O(O(1)/h):O(0);u=O(h*O(0));L[s+12>>2]=u;L[s+8>>2]=v*h;L[s+4>>2]=w*h;L[s>>2]=x*h;n=n+(p+256|0)|0;L[n>>2]=G*h;L[n+4>>2]=F*h;L[n+8>>2]=E*h;L[n+12>>2]=u;L[g>>2]=r*h;L[g+4>>2]=i*h;L[g+8>>2]=t*h;L[o>>2]=D*h;L[o+4>>2]=C*h;L[o+8>>2]=y*h}j=j+1|0;if((ba|0)==(j|0)){break i}g=H[T+(j<<2)>>2];continue}}if(!((Z|0)!=1|ga)){break f}break e;case 0:break g;default:break e}}if(!l){break e}}n=b;j:{if(n>>>0>k>>>0){break j}g=k+1|0;while(1){if(I[H[(n<<2)+a>>2]+78|0]==2){break j}j=(k|0)!=(n|0);n=n+1|0;if(j){continue}break}n=g}if((n+2|0)==(k|0)){g=n<<4;ux((n<<2)+a|0,g+c|0,d+g|0,p)}b=b<<4;ux(T,b+c|0,b+d|0,p)}if(e>>>0>f>>>0){continue}break}}Oa=p+832|0}function IC(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,u=0,v=0,w=0,x=0,y=0,z=0,A=0;k=Oa-32|0;Oa=k;a:{if(!c){break a}F[a+337|0]=1;i=a+52|0;t=a+312|0;u=a+284|0;while(1){h=H[(s<<2)+b>>2];d=H[a+300>>2]+(h<<2)|0;e=H[a+296>>2]+(H[d>>2]<<3)|0;o=H[e+4>>2];H[k+24>>2]=H[e>>2];H[k+28>>2]=o;n=H[d>>2];o=mB(u,h);b:{if(!I[a+336|0]){break b}d=H[a+4>>2];if(!d){break b}F[a+338|0]=1;c:{d:{if(n>>>0>=K[a+316>>2]){h=H[a+296>>2]+(n<<3)|0;d=H[h+4>>2];H[k+16>>2]=H[h>>2];H[k+20>>2]=d;break d}h=H[H[a+312>>2]+(n<<2)>>2];e=H[a+296>>2]+(n<<3)|0;f=H[e+4>>2];H[k+16>>2]=H[e>>2];H[k+20>>2]=f;if((h|0)==-1){break d}VA(d,h);tC(i,n,k+16|0,o,1);break c}r=k+16|0;h=o;m=Oa-32|0;Oa=m;H[m+24>>2]=0;H[m+16>>2]=0;H[m+20>>2]=0;H[m+8>>2]=0;H[m+12>>2]=0;e:{f:{g:{if(!H[i+164>>2]){break g}j=H[i+140>>2];l=H[k+24>>2];e=l;d=0;q=d^-1;g=(e|d)+q|0;p=H[k+28>>2];e=p+(e^-1)|0;f=g;e=f>>>0>>0?e+1|0:e;g=e;d=e>>>22|0;e=f^((e&4194303)<<10|f>>>22);f=d^g;g=f;d=e;e=f<<13|d>>>19;q=d<<13^-1;f=d+q|0;d=(e^-1)+g|0;d=f>>>0>>0?d+1|0:d;e=g7(f^((d&255)<<24|f>>>8),d^d>>>8,9,0);f=Qa;d=f>>>15|0;e=e^((f&32767)<<17|e>>>15);d=d^f;g=j;j=e<<27^-1;f=j+e|0;e=((d<<27|e>>>5)^-1)+d|0;d=f;e=d>>>0>>0?e+1|0:e;e=g+((H[i+148>>2]-1&(d^((e&2147483647)<<1|d>>>31)))<<2)|0;d=H[e>>2];if((d|0)==-1){break g}g=H[i+136>>2];f=H[i+132>>2];j=f+N(d,20)|0;if((l|0)==H[j>>2]&(p|0)==H[j+4>>2]){break f}while(1){e=g+(d<<2)|0;d=H[e>>2];if((d|0)==-1){break g}j=f+N(d,20)|0;if((l|0)!=H[j>>2]|(p|0)!=H[j+4>>2]){continue}break}break f}g=0;break e}d=f+N(d,20)|0;f=H[d+4>>2];H[m+8>>2]=H[d>>2];H[m+12>>2]=f;f=H[d+12>>2];H[m+16>>2]=H[d+8>>2];H[m+20>>2]=f;H[m+24>>2]=H[d+16>>2];l=H[e>>2];f=l<<2;H[e>>2]=H[f+H[i+136>>2]>>2];e=H[i+164>>2]-1|0;H[i+164>>2]=e;H[i+160>>2]=H[i+160>>2]+1;if((e|0)!=(l|0)){g=H[i+132>>2];j=N(l,20);d=g+j|0;e=g+N(e,20)|0;g=H[e+4>>2];H[d>>2]=H[e>>2];H[d+4>>2]=g;g=H[e+12>>2];H[d+8>>2]=H[e+8>>2];H[d+12>>2]=g;H[d+16>>2]=H[e+16>>2];p=H[i+136>>2];H[p+f>>2]=H[p+(H[i+164>>2]<<2)>>2];q=H[i+140>>2];e=j+H[i+132>>2]|0;d=H[e+4>>2];e=H[e>>2];j=-1;g=e+j|0;d=(e^-1)+d|0;f=g;d=f>>>0>>0?d+1|0:d;g=d;e=d>>>22|0;d=f^((d&4194303)<<10|f>>>22);f=e^g;g=f;e=d;d=f<<13|d>>>19;j=e<<13^-1;f=e+j|0;e=(d^-1)+g|0;e=f>>>0>>0?e+1|0:e;d=g7(f^((e&255)<<24|f>>>8),e^e>>>8,9,0);f=Qa;e=f>>>15|0;d=d^((f&32767)<<17|d>>>15);e=e^f;j=d<<27^-1;f=j+d|0;d=((e<<27|d>>>5)^-1)+e|0;e=f;d=e>>>0>>0?d+1|0:d;e=((H[i+148>>2]-1&(e^((d&2147483647)<<1|e>>>31)))<<2)+q|0;d=H[e>>2];f=H[i+164>>2];if((d|0)!=(f|0)){while(1){e=p+(d<<2)|0;d=H[e>>2];if((f|0)!=(d|0)){continue}break}}H[e>>2]=l}H[i+156>>2]=H[i+156>>2]-1;g=1}h:{if(!g){tC(i,n,r,h,0);d=Oa-32|0;Oa=d;H[d+20>>2]=h;H[d+24>>2]=n;H[d+8>>2]=0;H[d+12>>2]=0;e=i+4|0;g=eC((N(H[e+4>>2],48)+e|0)+16|0,d+24|0,d+8|0);f=H[e>>2];g=g?H[e+4>>2]:f;i:{if((f|0)==(g|0)){if(!eC((e+N(f,48)|0)+16|0,d+24|0,d+8|0)){break i}}f=e+N(g,48)|0;H[k+8>>2]=H[f+8>>2];f=UB(H[f+12>>2],H[d+12>>2],H[d+24>>2],H[H[e+104>>2]+8>>2]);j:{if(!f|H[f+40>>2]){break j}l=H[f+36>>2];if(!H[l>>2]){break j}r=(e+N(g,48)|0)+16|0;h=0;while(1){H[d>>2]=H[((h<<2)+l|0)+4>>2];g=dC(r,d,d+31|0);if(!I[d+31|0]){H[g>>2]=H[d>>2]}H[g+4>>2]=f;h=h+1|0;l=H[f+36>>2];if(h>>>0>2]){continue}break}h=H[d+20>>2]}if(H[d+24>>2]==(h|0)){break i}H[d>>2]=0;H[d+4>>2]=0;h=eC((e+N(H[e>>2],48)|0)+16|0,d+20|0,d);f=H[e+4>>2];h=h?H[e>>2]:f;if((f|0)==(h|0)){if(!eC((e+N(f,48)|0)+16|0,d+20|0,d)){break i}}g=H[d+4>>2];f=dC((e+N(h,48)|0)+16|0,d+24|0,d+31|0);if(!I[d+31|0]){l=H[d+24>>2];H[f+4>>2]=0;H[f>>2]=l}H[f+4>>2]=g;VB(H[d+4>>2],H[d+20>>2],H[d+24>>2])}Oa=d+32|0;break h}VA(H[H[i+200>>2]+(H[m+24>>2]<<3)>>2],H[m+20>>2]);e=H[i+168>>2];d=H[m+24>>2];if(d>>>0>2]){g=H[H[i+172>>2]+(d<<2)>>2]}else{g=-1}VA(e,g);d=H[H[i+200>>2]+(H[m+24>>2]<<3)>>2];p=H[d+8>>2]+N(H[m+20>>2],28)|0;e=H[p+24>>2];f=e>>>1&15;k:{if(!f){break k}g=H[d>>2]+(e>>>3&536870908)|0;d=0;while(1){l=g+(d<<2)|0;if((n|0)==H[l>>2]){j=e&-31;e=f-1|0;H[p+24>>2]=j|e<<1;H[l>>2]=-1;if((d|0)==(e|0)){break k}d=g+(e<<2)|0;H[l>>2]=H[d>>2];H[d>>2]=-1;break k}d=d+1|0;if((f|0)!=(d|0)){continue}break}}tC(i,n,r,h,1);F[i+212|0]=1}Oa=m+32|0}nC(t,n,o,H[a+4>>2]);if(!H[a+32>>2]){break b}H[k+12>>2]=o;H[k+8>>2]=n;h=H[a+344>>2];if(h>>>0>=(H[a+348>>2]&2147483647)>>>0){h=0;d=H[a+348>>2]&2147483647;o=d?d<<1:1;l:{if(!o){break l}d=o<<3;if(!d){break l}h=H[33808];e=h+12|0;h=(w=e,x=d,y=Ra[H[H[h>>2]+20>>2]](h)|0?30984:55639,z=13582,A=553,v=H[H[e>>2]+8>>2],Ra[v](w|0,x|0,y|0,z|0,A|0)|0)}d=H[a+344>>2];if((d|0)>0){f=(d<<3)+h|0;e=H[a+340>>2];d=h;while(1){g=H[e+4>>2];H[d>>2]=H[e>>2];H[d+4>>2]=g;e=e+8|0;d=d+8|0;if(f>>>0>d>>>0){continue}break}d=H[a+344>>2]}e=H[k+12>>2];d=(d<<3)+h|0;H[d>>2]=H[k+8>>2];H[d+4>>2]=e;m:{if(H[a+348>>2]<0){break m}d=H[a+340>>2];if(!d){break m}e=H[33808]+12|0;Ra[H[H[e>>2]+12>>2]](e,d)}H[a+348>>2]=o;H[a+340>>2]=h;H[a+344>>2]=H[a+344>>2]+1;break b}d=H[k+12>>2];h=H[a+340>>2]+(h<<3)|0;H[h>>2]=H[k+8>>2];H[h+4>>2]=d;H[a+344>>2]=H[a+344>>2]+1}s=s+1|0;if((s|0)!=(c|0)){continue}break}if(H[a+284>>2]){break a}DC(a);F[a+337|0]=1}Oa=k+32|0}function IW(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=O(f);g=g|0;h=h|0;i=O(i);var j=0,k=O(0),l=O(0),m=O(0),n=0,o=O(0),p=O(0),q=O(0),r=O(0),s=0,t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=0,z=O(0),A=O(0),B=0,C=O(0),D=O(0),E=0,K=O(0),M=O(0),P=O(0),Q=O(0),R=O(0),S=O(0),T=O(0),U=O(0),V=O(0),X=O(0),Y=O(0),Z=0;j=Oa-672|0;Oa=j;y=H[c+32>>2];n=H[a+32>>2];H[j+664>>2]=0;H[j+668>>2]=0;H[j+656>>2]=0;H[j+660>>2]=0;H[j+640>>2]=0;P=L[a+4>>2];Q=L[a+8>>2];R=L[a+12>>2];H[j+636>>2]=0;L[j+632>>2]=R;L[j+628>>2]=Q;L[j+624>>2]=P;s=H[a+16>>2];B=H[a+20>>2];E=H[a+28>>2];H[j+616>>2]=H[a+24>>2];H[j+620>>2]=E;H[j+608>>2]=s;H[j+612>>2]=B;q=L[c+12>>2];s=H[c+8>>2];B=H[c+4>>2];H[j+604>>2]=0;L[j+600>>2]=q;H[j+592>>2]=B;H[j+596>>2]=s;s=H[c+16>>2];B=H[c+20>>2];E=H[c+28>>2];H[j+584>>2]=H[c+24>>2];H[j+588>>2]=E;H[j+576>>2]=s;H[j+580>>2]=B;C=L[b+20>>2];S=L[d+20>>2];D=L[b+24>>2];T=L[d+24>>2];x=L[e+4>>2];m=L[e+8>>2];k=L[b+8>>2];l=L[b>>2];r=L[b+4>>2];u=L[b+12>>2];K=L[b+16>>2];U=L[d+16>>2];q=L[d+8>>2];o=L[d>>2];t=L[d+4>>2];p=L[e>>2];v=L[d+12>>2];H[j+572>>2]=0;m=O(m*f);p=O(p*f);A=O(x*f);w=O(O(q*m)+O(O(o*p)+O(t*A)));x=O(O(v*v)+O(-.5));z=O(O(O(x*m)-O(v*O(O(o*A)-O(t*p))))+O(q*w));L[j+568>>2]=z+z;z=O(O(t*w)+O(O(x*A)-O(v*O(O(q*p)-O(m*o)))));L[j+564>>2]=z+z;m=O(O(o*w)+O(O(x*p)-O(v*O(O(t*m)-O(A*q)))));L[j+560>>2]=m+m;H[j+556>>2]=0;A=O(-o);w=O(K-U);C=O(C-S);D=O(D-T);K=O(O(O(A*w)-O(C*t))-O(q*D));m=O(O(O(v*O(O(t*w)-O(o*C)))+O(x*D))-O(q*K));L[j+552>>2]=m+m;m=O(O(O(x*C)+O(v*O(O(o*D)-O(q*w))))-O(t*K));L[j+548>>2]=m+m;H[j+540>>2]=0;p=O(O(O(r*q)-O(t*k))+O(O(l*v)-O(u*o)));m=O(p+p);z=O(O(O(k*o)-O(q*l))+O(O(r*v)-O(u*t)));M=O(z+z);V=O(O(1)-O(p*m));X=O(z*M);L[j+536>>2]=V-X;p=O(O(O(l*t)-O(o*r))+O(O(k*v)-O(u*q)));Y=O(p*M);k=O(O(u*v)-O(O(O(A*l)-O(r*t))-O(q*k)));l=O(k*m);L[j+532>>2]=Y-l;H[j+524>>2]=0;L[j+520>>2]=Y+l;l=O(p+p);r=O(p*l);L[j+516>>2]=V-r;u=O(O(O(x*w)+O(v*O(O(q*C)-O(t*D))))-O(o*K));L[j+544>>2]=u+u;u=O(p*m);p=O(k*M);L[j+528>>2]=u+p;m=O(z*m);k=O(k*l);L[j+512>>2]=m-k;H[j+508>>2]=0;L[j+504>>2]=u-p;L[j+500>>2]=m+k;L[j+496>>2]=O(O(1)-X)-r;B=n+16|0;s=0;a:{if(L[a+4>>2]!=O(1)){break a}s=0;if(L[a+8>>2]!=O(1)){break a}s=L[a+12>>2]==O(1)}E=y+16|0;F[j+368|0]=0;H[j+360>>2]=0;H[j+364>>2]=0;H[j+352>>2]=0;H[j+356>>2]=0;H[j+344>>2]=0;H[j+348>>2]=0;H[j+336>>2]=0;H[j+340>>2]=0;H[j+480>>2]=B;H[j+488>>2]=H[n+56>>2]+N(I[n+55|0],20);F[j+492|0]=I[n+54|0];k=O(P*L[n+68>>2]);l=O(Q*L[n+72>>2]);k=k<=l?k:l;l=O(R*L[n+76>>2]);k=k<=l?k:l;L[j+360>>2]=k*O(.02500000037252903);L[j+352>>2]=k*O(.10000000149011612);L[j+356>>2]=k*O(.05000000074505806);CU(j+624|0,j+608|0,j+384|0,j+432|0,j+336|0,s);H[j+484>>2]=H[n+60>>2];Z=L[c+4>>2]!=O(1)|L[c+8>>2]!=O(1)?Z:L[c+12>>2]==O(1);F[j+208|0]=0;H[j+204>>2]=0;c=H[j+660>>2];H[j+176>>2]=H[j+656>>2];H[j+180>>2]=c;c=H[j+668>>2];H[j+184>>2]=H[j+664>>2];H[j+188>>2]=c;H[j+320>>2]=E;H[j+328>>2]=H[y+56>>2]+N(I[y+55|0],20);F[j+332|0]=I[y+54|0];k=O(L[y+68>>2]*L[j+592>>2]);l=O(L[y+72>>2]*L[j+596>>2]);k=k<=l?k:l;l=O(L[y+76>>2]*L[j+600>>2]);k=k<=l?k:l;L[j+200>>2]=k*O(.02500000037252903);L[j+196>>2]=k*O(.05000000074505806);L[j+192>>2]=k*O(.10000000149011612);c=j+176|0;CU(j+592|0,j+576|0,j+224|0,j+272|0,c,Z);H[j+324>>2]=H[y+60>>2];y=J[h>>1];n=H[j+516>>2];H[j+80>>2]=H[j+512>>2];H[j+84>>2]=n;n=H[j+508>>2];H[j+72>>2]=H[j+504>>2];H[j+76>>2]=n;n=H[j+524>>2];H[j+88>>2]=H[j+520>>2];H[j+92>>2]=n;n=H[j+532>>2];H[j+96>>2]=H[j+528>>2];H[j+100>>2]=n;n=H[j+540>>2];H[j+104>>2]=H[j+536>>2];H[j+108>>2]=n;n=j+544|0;s=H[n+4>>2];H[j+112>>2]=H[n>>2];H[j+116>>2]=s;s=H[j+556>>2];H[j+120>>2]=H[j+552>>2];H[j+124>>2]=s;s=H[j+500>>2];H[j+64>>2]=H[j+496>>2];H[j+68>>2]=s;k=L[j+68>>2];L[j+68>>2]=L[j+80>>2];H[j+48>>2]=126316;H[j+56>>2]=j+496;H[j+52>>2]=j+336;l=L[j+72>>2];r=L[j+88>>2];L[j+80>>2]=k;L[j+72>>2]=L[j+96>>2];L[j+88>>2]=L[j+100>>2];L[j+100>>2]=r;L[j+96>>2]=l;H[j+40>>2]=126016;H[j+44>>2]=c;y=y&512;c=0;b:{if(!JW(j+48|0,j+40|0,n,j+656|0,j+560|0,j+160|0,j+128|0,j+144|0,i,y>>>9|0)){break b}c=H[d>>2];n=H[d+4>>2];s=H[d+12>>2];H[j+8>>2]=H[d+8>>2];H[j+12>>2]=s;H[j>>2]=c;H[j+4>>2]=n;i=L[d+24>>2];c=H[d+16>>2];d=H[d+20>>2];H[j+28>>2]=0;L[j+24>>2]=i;H[j+16>>2]=c;H[j+20>>2]=d;c=1;if(vW(g,L[e>>2],L[e+4>>2],L[e+8>>2],j+160|0,j+128|0,j+144|0,j,(y|0)!=0,0)){break b}G[g+12>>1]=J[g+12>>1]|1;i=L[j+132>>2];k=L[j+128>>2];l=L[j+136>>2];r=L[j+152>>2];u=L[j+144>>2];m=L[j+148>>2];L[g+40>>2]=L[j+160>>2]*f;p=O(-t);f=O(O(q*r)+O(O(o*u)+O(t*m)));w=O(O(O(v*O(O(o*m)+O(u*p)))+O(x*r))+O(q*f));L[g+24>>2]=T+O(w+w);w=O(O(t*f)+O(O(x*m)+O(v*O(O(q*u)+O(r*A)))));L[g+20>>2]=S+O(w+w);w=O(x*u);u=O(-q);f=O(O(o*f)+O(w+O(v*O(O(t*r)+O(m*u)))));L[g+16>>2]=U+O(f+f);f=O(O(q*l)+O(O(o*k)+O(t*i)));r=O(O(O(v*O(O(o*i)+O(k*p)))+O(x*l))+O(q*f));r=O(r+r);o=O(O(o*f)+O(O(x*k)+O(v*O(O(t*l)+O(i*u)))));o=O(o+o);f=O(O(t*f)+O(O(x*i)+O(v*O(O(q*k)+O(l*A)))));f=O(f+f);i=O(O(1)/O(W(O(O(r*r)+O(O(o*o)+O(f*f))))));L[g+36>>2]=i*O(-r);L[g+32>>2]=i*O(-f);L[g+28>>2]=i*O(-o);wW(g,J[h>>1],a,B,b,L[e>>2],L[e+4>>2],L[e+8>>2]);c=1}Oa=j+672|0;return c|0}function Le(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=O(0),i=0,j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=0,s=0,t=0,u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=0;i=Oa+-64|0;Oa=i;h=L[f+8>>2];k=L[c+8>>2];r=H[f>>2];f=H[f+4>>2];s=H[c+4>>2];c=H[c>>2];L[i+32>>2]=L[d>>2];L[i+36>>2]=L[d+4>>2];L[i+40>>2]=L[d+8>>2];m=L[d+12>>2];L[i+56>>2]=k;H[i+48>>2]=c;H[i+52>>2]=s;L[i+44>>2]=m;L[i>>2]=L[g>>2];L[i+4>>2]=L[g+4>>2];L[i+8>>2]=L[g+8>>2];k=L[g+12>>2];L[i+24>>2]=h;H[i+16>>2]=r;H[i+20>>2]=f;L[i+12>>2]=k;c=H[33808];d=Ra[H[H[c>>2]+20>>2]](c)|0?24504:55639;c=Ra[H[H[c+12>>2]+8>>2]](c+12|0,88,d,5775,49)|0;g=Ra[H[H[a>>2]+20>>2]](a)|0;r=Oa-16|0;Oa=r;G[r+8>>1]=3;f=Oa-32|0;Oa=f;G[c+6>>1]=J[r+8>>1];G[c+4>>1]=261;H[c+76>>2]=0;H[c+16>>2]=0;H[c+12>>2]=130192;H[c>>2]=129924;H[c+8>>2]=0;d=H[33808]+12|0;d=Ra[H[H[d>>2]+8>>2]](d,480,20591,14087,454)|0;h=L[i+44>>2];k=L[i+40>>2];m=L[i+32>>2];j=L[i+36>>2];s=H[i+48>>2];t=H[i+52>>2];L[c+44>>2]=L[i+56>>2];H[c+36>>2]=s;H[c+40>>2]=t;l=j;j=O(O(1)/O(W(O(O(h*h)+O(O(k*k)+O(O(m*m)+O(j*j)))))));L[c+24>>2]=l*j;L[c+28>>2]=k*j;L[c+32>>2]=h*j;L[c+20>>2]=m*j;h=L[i+12>>2];k=L[i+8>>2];m=L[i>>2];j=L[i+4>>2];s=H[i+16>>2];t=H[i+20>>2];L[c+72>>2]=L[i+24>>2];z=c- -64|0;H[z>>2]=s;H[z+4>>2]=t;l=j;j=O(O(1)/O(W(O(O(h*h)+O(O(k*k)+O(O(m*m)+O(j*j)))))));L[c+52>>2]=l*j;L[c+56>>2]=k*j;L[c+60>>2]=h*j;L[c+48>>2]=m*j;u1(f,b);q=L[i+52>>2];u=L[i+56>>2];v=L[i+48>>2];w=L[f+20>>2];x=L[f+24>>2];y=L[f+16>>2];k=L[f+8>>2];l=L[i+40>>2];m=L[f+4>>2];n=L[i+36>>2];h=L[f+12>>2];o=L[i+44>>2];j=L[f>>2];p=L[i+32>>2];L[d+28>>2]=O(k*l)+O(O(m*n)+O(O(h*o)+O(j*p)));L[d+24>>2]=O(p*m)+O(O(O(h*l)-O(o*k))-O(j*n));L[d+20>>2]=O(l*j)+O(O(O(h*n)-O(o*m))-O(k*p));L[d+16>>2]=O(n*k)+O(O(O(h*p)-O(o*j))-O(m*l));l=O(v-y);l=O(l+l);n=O(q-w);n=O(n+n);o=O(u-x);o=O(o+o);p=O(O(O(O(-j)*l)-O(n*m))-O(k*o));q=O(O(h*h)+O(-.5));L[d+40>>2]=O(O(o*q)+O(h*O(O(m*l)-O(j*n))))-O(k*p);L[d+36>>2]=O(O(n*q)+O(h*O(O(j*o)-O(k*l))))-O(m*p);L[d+32>>2]=O(O(l*q)+O(h*O(O(k*n)-O(m*o))))-O(j*p);u1(f,e);q=L[i+20>>2];u=L[i+24>>2];v=L[i+16>>2];w=L[f+20>>2];x=L[f+24>>2];y=L[f+16>>2];k=L[f+8>>2];l=L[i+8>>2];m=L[f+4>>2];n=L[i+4>>2];h=L[f+12>>2];o=L[i+12>>2];j=L[f>>2];p=L[i>>2];L[d+56>>2]=O(k*l)+O(O(m*n)+O(O(h*o)+O(j*p)));L[d+52>>2]=O(p*m)+O(O(O(h*l)-O(o*k))-O(j*n));L[d+48>>2]=O(l*j)+O(O(O(h*n)-O(o*m))-O(k*p));L[d+44>>2]=O(n*k)+O(O(O(h*p)-O(o*j))-O(m*l));l=O(v-y);l=O(l+l);n=O(q-w);n=O(n+n);o=O(u-x);o=O(o+o);p=O(O(O(O(-j)*l)-O(n*m))-O(k*o));q=O(O(h*h)+O(-.5));L[d+68>>2]=O(O(o*q)+O(h*O(O(m*l)-O(j*n))))-O(k*p);L[d+64>>2]=O(O(n*q)+O(h*O(O(j*o)-O(k*l))))-O(m*p);L[d+60>>2]=O(O(l*q)+O(h*O(O(k*n)-O(m*o))))-O(j*p);H[d+8>>2]=1065353216;H[d+12>>2]=1065353216;H[d>>2]=1065353216;H[d+4>>2]=1065353216;H[c+80>>2]=d;Oa=f+32|0;F[c+84|0]=1;H[c+12>>2]=129796;H[c>>2]=129520;d=H[c+80>>2];H[d+212>>2]=0;H[d+216>>2]=1056964608;H[d+96>>2]=0;H[d+100>>2]=0;H[d+88>>2]=0;H[d+92>>2]=0;H[d+80>>2]=0;H[d+84>>2]=0;H[d+300>>2]=1070141403;H[d+292>>2]=1070141403;H[d+296>>2]=-1077342245;H[d+284>>2]=0;H[d+288>>2]=-1077342245;H[d+276>>2]=0;H[d+280>>2]=0;H[d+272>>2]=1056964608;H[d+264>>2]=1070141403;H[d+268>>2]=0;H[d+256>>2]=1036831949;H[d+260>>2]=1070141403;H[d+248>>2]=0;H[d+252>>2]=0;H[d+244>>2]=1056964608;H[d+236>>2]=-1077342245;H[d+240>>2]=0;H[d+228>>2]=1036831949;H[d+232>>2]=1070141403;H[d+220>>2]=0;H[d+224>>2]=0;h=L[g>>2];H[d+124>>2]=2139095039;H[d+112>>2]=0;H[d+116>>2]=0;H[d+104>>2]=0;H[d+108>>2]=0;L[d+120>>2]=h*O(.009999999776482582);h=L[g>>2];H[d+136>>2]=0;H[d+140>>2]=0;H[d+148>>2]=2125114026;H[d+152>>2]=-22369622;H[d+128>>2]=0;L[d+132>>2]=h+h;L[d+464>>2]=h*O(9.999999974752427e-7);h=O(h*O(.009999999776482582));L[d+144>>2]=h>2];H[d+164>>2]=0;H[d+168>>2]=0;H[d+176>>2]=2125114026;H[d+180>>2]=-22369622;H[d+156>>2]=0;L[d+160>>2]=h+h;h=O(h*O(.009999999776482582));L[d+172>>2]=h>2];H[d+192>>2]=0;H[d+196>>2]=0;H[d+204>>2]=2125114026;H[d+208>>2]=-22369622;H[d+392>>2]=2139095039;H[d+304>>2]=0;H[d+308>>2]=0;H[d+312>>2]=2139095039;H[d+316>>2]=0;H[d+320>>2]=0;H[d+324>>2]=0;H[d+328>>2]=2139095039;H[d+332>>2]=0;H[d+336>>2]=0;H[d+340>>2]=0;H[d+344>>2]=2139095039;H[d+348>>2]=0;H[d+352>>2]=0;H[d+356>>2]=0;H[d+360>>2]=2139095039;H[d+364>>2]=0;H[d+368>>2]=0;H[d+372>>2]=0;H[d+376>>2]=2139095039;H[d+380>>2]=0;H[d+384>>2]=0;H[d+388>>2]=0;H[d+184>>2]=0;L[d+188>>2]=h+h;h=O(h*O(.009999999776482582));L[d+200>>2]=h>2]=0;H[d+408>>2]=0;H[d+396>>2]=0;H[d+400>>2]=0;H[d+412>>2]=1065353216;H[d+416>>2]=0;H[d+420>>2]=0;H[d+424>>2]=0;H[d+428>>2]=0;H[d+432>>2]=0;H[d+436>>2]=0;H[d+440>>2]=0;H[d+444>>2]=0;H[d+448>>2]=0;H[d+476>>2]=0;H[d+468>>2]=1343554297;H[d+472>>2]=1078530011;Oa=r+16|0;a=Ra[H[H[a>>2]+108>>2]](a,b,e,c+12|0,129840,480)|0;H[c+76>>2]=a;if(!a){Ra[H[H[c>>2]+16>>2]](c);c=0}Oa=i- -64|0;return c|0}function qY(a,b,c,d,e,f,g,h,i){var j=0,k=0,l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=0,w=O(0),x=O(0),y=O(0),z=0,A=O(0),B=O(0),C=O(0),D=O(0),E=0,K=0,M=0,Q=0,R=O(0),S=O(0),T=O(0),U=O(0),V=O(0),X=O(0),Y=O(0),Z=O(0),_=O(0),$=O(0),aa=O(0),ba=O(0),ca=O(0),da=O(0),ea=O(0),fa=O(0),ga=O(0),ha=O(0),ia=O(0),ja=O(0),ka=O(0),la=O(0),ma=O(0),na=O(0),oa=O(0),pa=O(0),qa=O(0),ra=O(0),sa=O(0);j=Oa-304|0;Oa=j;k=H[a+2188>>2];l=L[g+8>>2];p=O(O(L[a+2176>>2]-O(O(O(O(L[k+8>>2]*d)+O(L[k+20>>2]*e))+O(L[k+32>>2]*f))+L[k+44>>2]))*l);m=L[g>>2];u=O(O(L[a+2168>>2]-O(O(O(O(L[k>>2]*d)+O(L[k+12>>2]*e))+O(L[k+24>>2]*f))+L[k+36>>2]))*m);d=O(L[a+2172>>2]-O(O(O(O(L[k+4>>2]*d)+O(L[k+16>>2]*e))+O(L[k+28>>2]*f))+L[k+40>>2]));f=L[g+4>>2];if(O(p+O(u+O(d*f)))>2]=l;f=O(-f);L[g+4>>2]=f;m=O(-m);L[g>>2]=m}v=H[a+2192>>2];z=H[a+2180>>2];E=H[z+68>>2];k=H[a+2184>>2];e=L[k+20>>2];n=L[k+16>>2];o=L[k+32>>2];r=L[k+28>>2];x=L[k+12>>2];q=L[k+24>>2];d=O(-m);L[j+192>>2]=O(O(L[k>>2]*d)-O(L[k+4>>2]*f))-O(L[k+8>>2]*l);L[j+200>>2]=O(O(q*d)-O(r*f))-O(o*l);L[j+196>>2]=O(O(x*d)-O(n*f))-O(e*l);z=Ra[E|0](z,v,j+192|0)|0;E=H[a+2180>>2];K=H[E+24>>2];v=K+N(z,20)|0;M=I[a+2205|0];a:{if(M){e=L[v+12>>2];l=L[v+8>>2];f=L[v+4>>2];d=L[v>>2];break a}k=H[a+2192>>2];Q=N(z,20)+K|0;e=L[Q+8>>2];f=L[v>>2];l=L[Q+4>>2];d=O(O(L[k+68>>2]*e)+O(O(L[k+60>>2]*f)+O(l*L[k- -64>>2])));n=O(O(L[k+44>>2]*e)+O(O(L[k+36>>2]*f)+O(L[k+40>>2]*l)));f=O(O(L[k+56>>2]*e)+O(O(L[k+48>>2]*f)+O(l*L[k+52>>2])));m=O(O(1)/O(W(O(O(d*d)+O(O(n*n)+O(f*f))))));e=O(L[Q+12>>2]*m);l=O(d*m);f=O(f*m);d=O(n*m)}L[j+300>>2]=e;L[j+296>>2]=l;L[j+292>>2]=f;L[j+288>>2]=d;k=H[a+2184>>2];e=L[k+28>>2];m=L[k+16>>2];n=L[k+4>>2];o=L[k+24>>2];r=L[k>>2];x=L[k+12>>2];X=O(O(O(d*L[k+8>>2])+O(f*L[k+20>>2]))+O(l*L[k+32>>2]));L[j+280>>2]=X;Y=O(O(O(d*r)+O(f*x))+O(l*o));L[j+272>>2]=Y;Z=O(O(O(d*n)+O(f*m))+O(l*e));L[j+276>>2]=Z;R=L[g+8>>2];S=L[g+4>>2];T=L[g>>2];g=H[a+2188>>2];l=L[g+28>>2];m=L[g+16>>2];n=L[g+24>>2];o=L[g>>2];r=L[g+12>>2];x=L[g+4>>2];d=L[b>>2];e=L[b+4>>2];f=L[b+8>>2];_=O(O(O(d*L[g+8>>2])+O(e*L[g+20>>2]))+O(f*L[g+32>>2]));L[j+264>>2]=_;$=O(O(O(d*x)+O(e*m))+O(f*l));L[j+260>>2]=$;aa=O(O(O(d*o)+O(e*r))+O(f*n));L[j+256>>2]=aa;x=O((h<=O(0)?O(-h):O(0))+L[a+2208>>2]);l=O(T*x);L[j+240>>2]=l;m=O(S*x);L[j+244>>2]=m;n=O(R*x);L[j+248>>2]=n;L[j+192>>2]=L[k>>2];L[j+196>>2]=L[k+4>>2];L[j+200>>2]=L[k+8>>2];L[j+204>>2]=L[k+12>>2];L[j+208>>2]=L[k+16>>2];L[j+212>>2]=L[k+20>>2];L[j+216>>2]=L[k+24>>2];L[j+220>>2]=L[k+28>>2];L[j+224>>2]=L[k+32>>2];o=L[k+40>>2];g=H[a+2212>>2];e=L[g+8>>2];f=L[g+4>>2];d=L[g+12>>2];h=L[g>>2];r=L[k+36>>2];A=O(L[k+44>>2]-n);L[j+236>>2]=A;B=O(o-m);L[j+232>>2]=B;U=O(r-l);L[j+228>>2]=U;g=H[a+2216>>2];ba=L[g+20>>2];ca=L[g+24>>2];da=L[g+16>>2];m=L[g+4>>2];ea=O(h*m);l=L[g+12>>2];fa=O(e*l);n=L[g+8>>2];ga=O(d*n);o=L[g>>2];ha=O(f*o);q=O(ea+O(O(fa-ga)-ha));ia=O(e*o);ja=O(l*f);ka=O(d*m);la=O(n*h);y=O(ia+O(O(ja-ka)-la));C=O(y+y);s=O(q*C);r=O(O(n*e)+O(O(m*f)+O(O(l*d)+O(h*o))));ma=O(f*n);na=O(l*h);oa=O(d*o);pa=O(m*e);u=O(ma+O(O(na-oa)-pa));w=O(u+u);t=O(r*w);L[j+172>>2]=s-t;L[j+164>>2]=s+t;s=O(U-da);s=O(s+s);t=O(B-ba);t=O(t+t);p=O(A-ca);p=O(p+p);D=O(O(O(O(-o)*s)-O(t*m))-O(n*p));V=O(O(l*l)+O(-.5));L[j+188>>2]=O(O(p*V)+O(l*O(O(m*s)-O(o*t))))-O(n*D);L[j+184>>2]=O(O(t*V)+O(l*O(O(o*p)-O(n*s))))-O(m*D);u=O(O(1)-O(u*w));qa=O(y*C);L[j+176>>2]=u-qa;sa=u;u=O(q+q);ra=O(q*u);L[j+160>>2]=sa-ra;q=O(q*w);C=O(r*C);L[j+168>>2]=q+C;y=O(y*w);w=O(r*u);L[j+156>>2]=y-w;L[j+152>>2]=q-C;L[j+148>>2]=y+w;L[j+180>>2]=O(O(s*V)+O(l*O(O(n*t)-O(m*p))))-O(o*D);L[j+144>>2]=O(O(1)-qa)-ra;l=O(da-U);n=O(l+l);l=O(ba-B);o=O(l+l);l=O(ca-A);q=O(l+l);y=O(O(O(O(-h)*n)-O(o*f))-O(e*q));t=O(O(d*d)+O(-.5));L[j+140>>2]=O(O(q*t)+O(d*O(O(f*n)-O(h*o))))-O(e*y);L[j+136>>2]=O(O(o*t)+O(d*O(O(h*q)-O(e*n))))-O(f*y);m=O(pa+O(O(oa-na)-ma));l=O(m+m);w=O(la+O(O(ka-ja)-ia));s=O(w+w);p=O(O(1)-O(m*l));D=O(w*s);L[j+128>>2]=p-D;m=O(ha+O(O(ga-fa)-ea));A=O(m*s);B=O(r*l);L[j+124>>2]=A-B;L[j+116>>2]=A+B;u=p;p=O(m+m);A=O(m*p);L[j+112>>2]=u-A;L[j+132>>2]=O(O(n*t)+O(d*O(O(e*o)-O(f*q))))-O(h*y);d=O(m*l);e=O(r*s);L[j+120>>2]=d+e;f=O(w*l);h=O(r*p);L[j+108>>2]=f-h;L[j+104>>2]=d-e;L[j+100>>2]=f+h;L[j+96>>2]=O(O(1)-D)-A;g=N(z,20)+K|0;k=I[g+18|0];v=0;z=0;if(!M){v=j-(N(k,12)+15&8176)|0;Oa=v;z=v-(k+15&496)|0;Oa=z}JY(j+92|0,j+88|0,v,z,(M|0)!=0,H[E+28>>2],H[E+32>>2]+J[g+16>>1]|0,k,H[a+2192>>2]);F[j+86|0]=I[88018];G[j+84>>1]=I[88016]|I[88017]<<8;vY(j+48|0,j+288|0);vY(j+8|0,b);b:{c:{if(O(P(O(O(X*R)+O(O(Y*T)+O(Z*S)))))>O(P(O(O(_*R)+O(O(aa*T)+O(S*$)))))){k=1;if(!wY(I[g+18|0],H[j+92>>2],H[j+88>>2],j+192|0,j+288|0,j+48|0,3,c,j+84|0,H[a+2188>>2],b,j+8|0,j+272|0,j+144|0,j+96|0,i,H[a+2220>>2],1,j+240|0,x)){break c}break b}k=1;if(wY(3,c,j+84|0,H[a+2188>>2],b,j+8|0,I[g+18|0],H[j+92>>2],H[j+88>>2],j+192|0,j+288|0,j+48|0,j+256|0,j+96|0,j+144|0,i,H[a+2220>>2],0,j+240|0,x)){break b}}k=0}Oa=j+304|0;return k}function ow(a,b,c,d,e,f,g,h,i){var j=0,k=0,l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=0,y=0,z=O(0),A=O(0);k=Oa-160|0;Oa=k;a:{if(H[((g<<5)+a|0)+24>>2]==(d|0)){l=L[e+20>>2];m=L[e+24>>2];n=L[h+20>>2];o=L[e>>2];p=L[e+4>>2];q=L[e+8>>2];v=L[e+16>>2];r=L[h>>2];s=L[h+4>>2];t=L[h+8>>2];u=L[h+16>>2];L[k+152>>2]=-L[h+24>>2];L[k+148>>2]=-n;H[k+156>>2]=0;L[k+144>>2]=-u;H[k+140>>2]=0;L[k+136>>2]=-t;L[k+132>>2]=-s;L[k+128>>2]=-r;a=N(g,160);b=N(g,76);e=k+128|0;gw(k+96|0,H[c+284>>2]+N(g,96)|0,(a+H[c+340>>2]|0)+120|0,b+H[c+272>>2]|0,e);L[k+88>>2]=m-L[k+120>>2];L[k+84>>2]=l-L[k+116>>2];H[k+92>>2]=0;H[k+76>>2]=0;L[k+80>>2]=v-L[k+112>>2];L[k+72>>2]=q-L[k+104>>2];L[k+68>>2]=p-L[k+100>>2];L[k+64>>2]=o-L[k+96>>2];h=k+32|0;Uv(h,H[c+224>>2]+N(d,192)|0,k- -64|0);cw(k,(a+H[c+340>>2]|0)+120|0,H[c+236>>2]+N(g,112)|0,H[c+248>>2]+N(g,36)|0,b+H[c+272>>2]|0,e,h);l=L[k+56>>2];a=H[k+52>>2];b=H[k+48>>2];H[f+12>>2]=0;L[f+8>>2]=l;H[f>>2]=b;H[f+4>>2]=a;a=H[k+36>>2];b=H[k+32>>2];l=L[k+40>>2];H[f+28>>2]=0;L[f+24>>2]=l;H[f+16>>2]=b;H[f+20>>2]=a;l=L[k+24>>2];a=H[k+20>>2];b=H[k+16>>2];H[i+12>>2]=0;L[i+8>>2]=l;H[i>>2]=b;H[i+4>>2]=a;a=H[k+4>>2];b=H[k>>2];l=L[k+8>>2];H[i+28>>2]=0;L[i+24>>2]=l;H[i+16>>2]=b;H[i+20>>2]=a;break a}y=a;x=b;j=Oa-448|0;Oa=j;b=d;if((g|0)!=(b|0)){a=d;b=g;while(1){b:{if(a>>>0>>0){b=H[((b<<5)+y|0)+24>>2];break b}a=H[((a<<5)+y|0)+24>>2]}if((a|0)!=(b|0)){continue}break}}m=L[e+20>>2];q=L[e>>2];p=L[e+4>>2];o=L[e+8>>2];n=L[e+16>>2];l=O(-L[e+24>>2]);L[j+184>>2]=l;m=O(-m);L[j+180>>2]=m;a=0;H[j+188>>2]=0;n=O(-n);L[j+176>>2]=n;H[j+172>>2]=0;o=O(-o);L[j+168>>2]=o;p=O(-p);L[j+164>>2]=p;q=O(-q);L[j+160>>2]=q;r=L[h+20>>2];w=L[h>>2];u=L[h+4>>2];t=L[h+8>>2];s=L[h+16>>2];v=O(-L[h+24>>2]);L[j+152>>2]=v;r=O(-r);L[j+148>>2]=r;H[j+156>>2]=0;H[j+140>>2]=0;s=O(-s);L[j+144>>2]=s;t=O(-t);L[j+136>>2]=t;u=O(-u);L[j+132>>2]=u;w=O(-w);L[j+128>>2]=w;e=(d<<5)+x|0;H[e+28>>2]=0;L[e+24>>2]=l;L[e+20>>2]=m;L[e+16>>2]=n;H[e+12>>2]=0;L[e+8>>2]=o;L[e+4>>2]=p;L[e>>2]=q;e=(g<<5)+x|0;H[e+28>>2]=0;L[e+24>>2]=v;L[e+20>>2]=r;L[e+16>>2]=s;H[e+12>>2]=0;L[e+8>>2]=t;L[e+4>>2]=u;L[e>>2]=w;if((b|0)!=(d|0)){while(1){gw(j+96|0,H[c+284>>2]+N(d,96)|0,(H[c+340>>2]+N(d,160)|0)+120|0,H[c+272>>2]+N(d,76)|0,j+160|0);H[j+172>>2]=0;H[j+188>>2]=0;q=L[j+96>>2];L[j+160>>2]=q;p=L[j+100>>2];L[j+164>>2]=p;o=L[j+104>>2];L[j+168>>2]=o;n=L[j+112>>2];L[j+176>>2]=n;m=L[j+116>>2];L[j+180>>2]=m;l=L[j+120>>2];L[j+184>>2]=l;e=H[((d<<5)+y|0)+24>>2];h=(e<<5)+x|0;H[h+28>>2]=0;L[h+16>>2]=n;H[h+12>>2]=0;L[h+8>>2]=o;L[h+4>>2]=p;L[h>>2]=q;L[h+24>>2]=l;L[h+20>>2]=m;H[(j+192|0)+(a<<2)>>2]=d;a=a+1|0;d=e;if((e|0)!=(b|0)){continue}break}}d=a;if((b|0)!=(g|0)){while(1){gw(j+96|0,H[c+284>>2]+N(g,96)|0,(H[c+340>>2]+N(g,160)|0)+120|0,H[c+272>>2]+N(g,76)|0,j+128|0);H[j+140>>2]=0;H[j+156>>2]=0;w=L[j+96>>2];L[j+128>>2]=w;u=L[j+100>>2];L[j+132>>2]=u;t=L[j+104>>2];L[j+136>>2]=t;s=L[j+112>>2];L[j+144>>2]=s;r=L[j+116>>2];L[j+148>>2]=r;v=L[j+120>>2];L[j+152>>2]=v;e=H[((g<<5)+y|0)+24>>2];h=(e<<5)+x|0;H[h+28>>2]=0;L[h+16>>2]=s;H[h+12>>2]=0;L[h+8>>2]=t;L[h+4>>2]=u;L[h>>2]=w;L[h+24>>2]=v;L[h+20>>2]=r;H[(j+192|0)+(d<<2)>>2]=g;d=d+1|0;g=e;if((e|0)!=(b|0)){continue}break}}e=H[c+224>>2];L[j+88>>2]=-O(l+v);L[j+84>>2]=-O(m+r);H[j+92>>2]=0;L[j+80>>2]=-O(n+s);H[j+76>>2]=0;L[j+72>>2]=-O(o+t);L[j+68>>2]=-O(p+u);L[j+64>>2]=-O(q+w);Uv(j+96|0,e+N(b,192)|0,j- -64|0);v=L[j+116>>2];L[j+84>>2]=v;r=L[j+120>>2];L[j+88>>2]=r;s=L[j+96>>2];L[j+64>>2]=s;t=L[j+100>>2];L[j+68>>2]=t;u=L[j+104>>2];L[j+72>>2]=u;z=L[j+108>>2];L[j+76>>2]=z;w=L[j+112>>2];L[j+80>>2]=w;A=L[j+124>>2];L[j+92>>2]=A;l=r;m=v;n=w;o=u;p=t;q=s;if(a>>>0>>0){while(1){d=d-1|0;b=H[(j+192|0)+(d<<2)>>2];cw(j+32|0,(H[c+340>>2]+N(b,160)|0)+120|0,H[c+236>>2]+N(b,112)|0,H[c+248>>2]+N(b,36)|0,H[c+272>>2]+N(b,76)|0,(b<<5)+x|0,j- -64|0);H[j+76>>2]=0;H[j+92>>2]=0;s=L[j+32>>2];L[j+64>>2]=s;t=L[j+36>>2];L[j+68>>2]=t;u=L[j+40>>2];L[j+72>>2]=u;w=L[j+48>>2];L[j+80>>2]=w;v=L[j+52>>2];L[j+84>>2]=v;r=L[j+56>>2];L[j+88>>2]=r;if(a>>>0>>0){continue}break}A=L[j+124>>2];m=L[j+116>>2];n=L[j+112>>2];z=L[j+108>>2];o=L[j+104>>2];p=L[j+100>>2];q=L[j+96>>2];l=L[j+120>>2]}L[j+56>>2]=l;L[j+52>>2]=m;L[j+60>>2]=A;L[j+48>>2]=n;L[j+44>>2]=z;L[j+40>>2]=o;L[j+36>>2]=p;L[j+32>>2]=q;if(a){while(1){a=a-1|0;b=H[(j+192|0)+(a<<2)>>2];cw(j,(H[c+340>>2]+N(b,160)|0)+120|0,H[c+236>>2]+N(b,112)|0,H[c+248>>2]+N(b,36)|0,H[c+272>>2]+N(b,76)|0,(b<<5)+x|0,j+32|0);H[j+44>>2]=0;H[j+60>>2]=0;q=L[j>>2];L[j+32>>2]=q;p=L[j+4>>2];L[j+36>>2]=p;o=L[j+8>>2];L[j+40>>2]=o;n=L[j+16>>2];L[j+48>>2]=n;m=L[j+20>>2];L[j+52>>2]=m;l=L[j+24>>2];L[j+56>>2]=l;if(a){continue}break}}L[f+16>>2]=q;L[f+8>>2]=l;L[f+4>>2]=m;L[f>>2]=n;L[f+24>>2]=o;L[f+20>>2]=p;L[i+24>>2]=u;L[i+20>>2]=t;L[i+16>>2]=s;L[i+8>>2]=r;L[i+4>>2]=v;L[i>>2]=w;Oa=j+448|0}Oa=k+160|0}function qW(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=O(g);h=h|0;i=i|0;j=O(j);var k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=0,r=O(0),s=O(0),t=O(0),u=O(0),v=0,w=0,x=O(0),y=O(0),z=O(0);c=Oa-48|0;Oa=c;k=L[a+4>>2];L[c+32>>2]=L[b+16>>2];L[c+36>>2]=L[b+20>>2];l=L[b+24>>2];L[c+44>>2]=k+j;L[c+40>>2]=l;j=L[f>>2];k=L[f+4>>2];L[c+16>>2]=-L[f+8>>2];L[c+12>>2]=-k;L[c+8>>2]=-j;G[c+24>>1]=J[i>>1];f=0;q=c+8|0;v=h+40|0;d=h+28|0;a=Oa-48|0;Oa=a;x=L[e+24>>2];b=c+32|0;u=L[b+12>>2];o=O(x+u);a:{b:{if(I[c+24|0]&16){t=L[e+12>>2];j=L[e>>2];break b}j=L[e+8>>2];k=O(L[b+8>>2]-j);n=O(L[e+20>>2]-j);j=L[e>>2];l=O(L[b>>2]-j);t=L[e+12>>2];p=O(t-j);m=L[e+4>>2];r=O(L[e+16>>2]-m);m=O(L[b+4>>2]-m);s=O(O(k*n)+O(O(l*p)+O(r*m)));c:{if(s<=O(0)){break c}y=O(O(n*n)+O(O(p*p)+O(r*r)));if(s>=y){k=O(k-n);m=O(m-r);l=O(l-p);break c}z=n;n=O(s/y);k=O(k-O(z*n));m=O(m-O(r*n));l=O(l-O(p*n))}if(!(O(O(k*k)+O(O(l*l)+O(m*m)))>2]=0;g=L[q>>2];j=L[q+4>>2];L[d+8>>2]=-L[q+8>>2];L[d+4>>2]=-j;L[d>>2]=-g;q=1;break a}k=L[e+16>>2];l=L[e+4>>2];if(!(j!=t|k!=l|L[e+8>>2]!=L[e+20>>2])){j=L[q>>2];k=L[q+4>>2];L[a+24>>2]=O(-L[q+8>>2])*g;L[a+20>>2]=O(-k)*g;L[a+16>>2]=O(-j)*g;d:{e:{f:{g:{h:{j=L[e+8>>2];k=L[b+8>>2];l=O(j-k);m=L[e>>2];o=L[b>>2];n=O(m-o);p=L[e+4>>2];r=L[b+4>>2];t=O(p-r);s=O(u+x);s=O(O(O(l*l)+O(O(n*n)+O(t*t)))-O(s*s));if(!(s<=O(0))){k=O(O(O(j+L[a+24>>2])-j)-O(k-k));m=O(O(O(m+L[a+16>>2])-m)-O(o-o));o=O(O(O(p+L[a+20>>2])-p)-O(r-r));j=O(O(k*k)+O(O(m*m)+O(o*o)));if(j!=O(0)){break h}}H[v>>2]=0;break g}k=O(O(k*l)+O(O(m*n)+O(t*o)));k=O(k+k);l=O(O(k*k)+O(s*O(j*O(-4))));if(!(l>=O(0))){break d}j=O(O(1)/O(j+j));m=O(W(l));l=O(j*O(O(-k)-m));k=O(j*O(m-k));q=l>2]=j;if((q?k:l)O(1)){break d}if(j!=O(0)){break f}}k=O(-L[a+24>>2]);l=O(-L[a+20>>2]);j=O(-L[a+16>>2]);break e}k=O(O(O(j*L[a+24>>2])+L[e+8>>2])-L[b+8>>2]);l=O(O(O(j*L[a+20>>2])+L[e+4>>2])-L[b+4>>2]);j=O(O(O(j*L[a+16>>2])+L[e>>2])-L[b>>2])}L[d+8>>2]=k;L[d+4>>2]=l;L[d>>2]=j;w=1;m=O(W(O(O(k*k)+O(O(j*j)+O(l*l)))));if(!(m>O(0))){break d}n=k;k=O(O(1)/m);L[d+8>>2]=n*k;L[d+4>>2]=l*k;L[d>>2]=j*k}q=0;if(!w){break a}L[v>>2]=L[v>>2]*g;j=L[b>>2];k=L[d>>2];l=L[b+4>>2];m=L[d+4>>2];g=L[b+12>>2];L[h+24>>2]=O(g*L[d+8>>2])+L[b+8>>2];L[h+20>>2]=l+O(g*m);L[h+16>>2]=j+O(g*k);q=1;break a}L[a+20>>2]=l;L[a+16>>2]=j;j=L[e+8>>2];L[a+32>>2]=k;L[a+28>>2]=t;L[a+24>>2]=j;L[a+36>>2]=L[e+20>>2];L[a+40>>2]=o;H[a+12>>2]=0;j=O(0);w=WV(b,q,a+16|0,a+28|0,o,a+12|0)^1;k=L[a+12>>2];w=w|!(k>=O(0))|!(g>=k);if(!w){L[v>>2]=k;m=L[q+8>>2];l=L[q+4>>2];o=O(k*L[q>>2]);g=O(L[a+16>>2]-o);L[a+16>>2]=g;n=O(k*l);l=O(L[a+20>>2]-n);L[a+20>>2]=l;m=O(k*m);k=O(L[a+24>>2]-m);L[a+24>>2]=k;n=O(L[a+32>>2]-n);L[a+32>>2]=n;o=O(L[a+28>>2]-o);L[a+28>>2]=o;m=O(O(L[a+36>>2]-m)-k);o=O(o-g);n=O(n-l);p=O(O(O(L[b+8>>2]-k)*m)+O(O(O(L[b>>2]-g)*o)+O(n*O(L[b+4>>2]-l))));i:{if(p<=O(0)){break i}j=O(1);r=O(O(m*m)+O(O(o*o)+O(n*n)));if(r<=p){break i}j=O(p/r)}k=O(k+O(m*j));L[h+24>>2]=k;l=O(l+O(n*j));L[h+20>>2]=l;g=O(g+O(o*j));L[h+16>>2]=g;m=L[b>>2];j=L[b+4>>2];k=O(k-L[b+8>>2]);L[d+8>>2]=k;j=O(l-j);L[d+4>>2]=j;g=O(g-m);L[d>>2]=g;l=O(W(O(O(k*k)+O(O(g*g)+O(j*j)))));if(l>O(0)){l=O(O(1)/l);k=O(k*l);L[d+8>>2]=k;j=O(j*l);L[d+4>>2]=j;g=O(g*l);L[d>>2]=g}l=L[e+24>>2];L[h+16>>2]=L[h+16>>2]-O(l*g);L[h+20>>2]=L[h+20>>2]-O(l*j);L[h+24>>2]=L[h+24>>2]-O(l*k)}q=w^1}Oa=a+48|0;j:{if(!q){break j}f=1;if(I[i+1|0]&2){G[h+12>>1]=3;if(L[h+40>>2]!=O(0)){break j}k:{g=L[e>>2];if(g!=L[e+12>>2]){break k}j=L[e+4>>2];if(j!=L[e+16>>2]){break k}k=L[e+8>>2];if(k!=L[e+20>>2]){break k}L[c+20>>2]=L[e+24>>2];L[c+16>>2]=k;L[c+12>>2]=j;L[c+8>>2]=g;g=O(L[c+16>>2]-L[c+40>>2]);k=O(L[c+8>>2]-L[c+32>>2]);l=O(L[c+12>>2]-L[c+36>>2]);j=O(O(g*g)+O(O(k*k)+O(l*l)));m=O(W(j));n=L[c+20>>2];p=L[c+44>>2];l:{if(j>2]=g;L[h+36>>2]=j;L[h+32>>2]=k;L[h+40>>2]=m-O(p+n);l=L[c+32>>2];m=L[c+36>>2];n=j;j=L[c+44>>2];L[h+24>>2]=O(n*j)+L[c+40>>2];L[h+20>>2]=m+O(k*j);L[h+16>>2]=l+O(g*j);break j}g=O(0);o=L[e+8>>2];k=O(L[e+20>>2]-o);n=L[e>>2];l=O(L[e+12>>2]-n);t=L[c+40>>2];s=L[c+32>>2];p=L[e+4>>2];m=O(L[e+16>>2]-p);x=L[c+36>>2];r=O(O(O(t-o)*k)+O(O(O(s-n)*l)+O(m*O(x-p))));j=O(0);m:{if(r<=O(0)){break m}u=O(O(k*k)+O(O(l*l)+O(m*m)));j=O(1);if(u<=r){break m}j=O(r/u)}r=L[e+24>>2];u=L[c+44>>2];o=O(O(o+O(k*j))-t);l=O(O(n+O(l*j))-s);m=O(O(p+O(m*j))-x);p=O(O(o*o)+O(O(l*l)+O(m*m)));n=O(W(p));j=O(1);k=O(0);if(!(p>2]=j;L[h+36>>2]=k;L[h+32>>2]=g;L[h+40>>2]=n-O(u+r);l=L[c+32>>2];m=L[c+36>>2];n=k;k=L[c+44>>2];L[h+24>>2]=O(n*k)+L[c+40>>2];L[h+20>>2]=m+O(g*k);L[h+16>>2]=l+O(j*k);break j}if(L[h+40>>2]!=O(0)){G[h+12>>1]=3;break j}G[h+12>>1]=2}Oa=c+48|0;return f|0}function yA(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o){var p=O(0),q=0,r=0,s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=0,E=O(0),F=O(0),G=O(0),K=O(0),M=O(0),Q=O(0),R=O(0),S=O(0),T=O(0),U=0,V=O(0),W=O(0),X=O(0),Y=O(0),Z=O(0),_=O(0),$=O(0),aa=0,ba=O(0),ca=O(0),da=O(0),ea=0,fa=O(0),ga=O(0),ha=O(0),ia=O(0),ja=O(0),ka=O(0),la=O(0),ma=O(0),na=O(0),oa=O(0),pa=O(0),qa=O(0),ra=O(0),sa=O(0),ta=O(0),ua=O(0),va=O(0),wa=O(0),xa=O(0),ya=O(0),za=O(0),Aa=O(0),Ba=O(0),Ca=O(0),Da=O(0),Ea=0,Fa=0,Ga=O(0),Ha=O(0),Ia=O(0),Ja=0,Ka=0,La=O(0);a:{r=J[a+22>>1];if(!r){break a}p=L[f+8>>2];x=L[g+8>>2];Ga=O(p-x);y=L[f+4>>2];z=L[g+4>>2];Ha=O(y-z);A=L[f>>2];B=L[g>>2];Ia=O(A-B);a=H[a+24>>2];Ja=a+(r<<4)|0;while(1){aa=a+80|0;q=I[a+2|0];U=aa+N(q,112)|0;Ea=U+((q<<2)+12&2032)|0;ea=I[a+3|0];Ka=ea<<7;b:{if(!q){t=O(0);x=O(0);y=O(0);z=O(0);A=O(0);B=O(0);V=O(0);W=O(0);X=O(0);Y=O(0);Z=O(0);_=O(0);$=O(0);break b}u=L[a+40>>2];v=L[a+32>>2];M=L[a+36>>2];fa=O(O(u*O(p-x))+O(O(v*O(A-B))+O(M*O(y-z))));ga=L[i+8>>2];ha=L[i+4>>2];ia=L[i>>2];w=L[e+8>>2];C=L[e+4>>2];s=L[e>>2];Q=O(-L[a+44>>2]);D=0;x=O(0);y=O(0);z=O(0);A=O(0);B=O(0);V=O(0);W=O(0);X=O(0);Y=O(0);Z=O(0);_=O(0);$=O(0);t=O(0);while(1){r=aa+N(D,112)|0;ja=L[r+96>>2];ka=L[r+104>>2];la=L[r+100>>2];ma=L[r+80>>2];na=L[r+84>>2];oa=L[r+88>>2];pa=L[r+48>>2];qa=L[r+52>>2];ra=L[r+56>>2];Fa=U+(D<<2)|0;E=L[Fa>>2];sa=L[r+28>>2];ta=L[r+36>>2];ua=L[r+12>>2];p=L[r+32>>2];F=L[r+24>>2];G=L[r+20>>2];K=L[r+16>>2];R=L[r+8>>2];S=L[r>>2];T=L[r+4>>2];va=L[c+8>>2];wa=L[d+8>>2];ba=L[b+8>>2];xa=L[c+4>>2];ya=L[d+4>>2];ca=L[b+4>>2];za=L[d>>2];da=L[b>>2];Aa=L[c>>2];Ba=L[h+8>>2];Ca=L[h>>2];Da=L[h+4>>2];H[b+12>>2]=0;La=p;p=O(ua+O(O(fa+O(O(O(Ba*R)+O(O(Ca*S)+O(T*Da)))-O(O(ga*F)+O(O(ia*K)+O(ha*G)))))-O(p*o)));p=O(ta*(n>p?n:p));p=O(sa*O(O(La+(pw?p:w;L[b+8>>2]=ba+O(ra*p);L[b+4>>2]=ca+O(qa*p);L[b>>2]=da+O(pa*p);H[d+12>>2]=0;L[d+8>>2]=O(oa*p)+L[d+8>>2];L[d+4>>2]=O(na*p)+L[d+4>>2];L[d>>2]=O(ma*p)+L[d>>2];w=L[r+64>>2];C=L[r+68>>2];s=L[r+72>>2];H[c+12>>2]=0;L[c+8>>2]=O(p*s)+L[c+8>>2];L[c+4>>2]=O(p*C)+L[c+4>>2];L[c>>2]=O(p*w)+L[c>>2];H[e+12>>2]=0;C=O(O(la*p)+L[e+4>>2]);L[e+4>>2]=C;w=O(O(ka*p)+L[e+8>>2]);L[e+8>>2]=w;s=O(O(ja*p)+L[e>>2]);L[e>>2]=s;E=O(E+p);L[Fa>>2]=E;t=O(t+E);x=O(x+O(F*p));y=O(y+O(G*p));z=O(z+O(K*p));F=O(u*p);W=O(W+F);G=O(M*p);X=O(X+G);K=O(v*p);Y=O(Y+K);A=O(A+O(R*p));B=O(B+O(T*p));V=O(V+O(S*p));Z=O(Z+F);_=O(_+G);$=O($+K);D=D+1|0;if((q|0)!=(D|0)){continue}break}}r=Ea+Ka|0;if(ea){p=L[a+52>>2];p=p>2]);T=O(p*L[a+20>>2]);w=O(-T);D=0;U=0;while(1){q=(D<<7)+Ea|0;da=L[q+112>>2];fa=L[q+120>>2];ga=L[q+116>>2];ha=L[q+96>>2];ia=L[q+100>>2];ja=L[q+104>>2];ka=L[q+64>>2];la=L[q+68>>2];ma=L[q+72>>2];C=L[q+52>>2];na=L[q+48>>2];oa=L[q+12>>2];p=L[q+28>>2];s=L[q+44>>2];M=L[q+24>>2];F=L[q+40>>2];t=L[q+8>>2];G=L[q+20>>2];K=L[q+36>>2];u=L[q+4>>2];R=L[q+16>>2];v=L[q>>2];S=L[q+32>>2];pa=L[h+8>>2];qa=L[h+4>>2];ra=L[h>>2];sa=L[i+8>>2];ta=L[i+4>>2];ua=L[i>>2];va=L[d+8>>2];Q=L[b+8>>2];wa=L[e+8>>2];xa=L[c+8>>2];ya=L[d+4>>2];E=L[b+4>>2];za=L[e+4>>2];Aa=L[c+4>>2];ba=L[b>>2];Ba=L[d>>2];Ca=L[c>>2];Da=L[e>>2];H[b+12>>2]=0;p=O(O(C-O(s*O(O(na*O(oa+O(O(p*o)+O(O(O(t*Ga)+O(O(v*Ia)+O(Ha*u)))+O(O(O(M*pa)+O(O(R*ra)+O(G*qa)))-O(O(F*sa)+O(O(S*ua)+O(K*ta))))))))-p)))-O(s*O(O(O(O(O(v*ba)+O(R*Ba))-O(O(v*Ca)+O(S*Da)))+O(O(O(u*E)+O(G*ya))-O(O(u*Aa)+O(K*za))))+O(O(O(t*Q)+O(M*va))-O(O(t*xa)+O(F*wa))))));s=p>2]=Q+O(ma*p);L[b+4>>2]=E+O(la*p);L[b>>2]=ba+O(ka*p);H[d+12>>2]=0;L[d+8>>2]=L[d+8>>2]+O(ja*p);L[d+4>>2]=L[d+4>>2]+O(ia*p);L[d>>2]=L[d>>2]+O(ha*p);C=L[q+80>>2];Q=L[q+84>>2];E=L[q+88>>2];H[c+12>>2]=0;L[c+8>>2]=O(p*E)+L[c+8>>2];L[c+4>>2]=O(p*Q)+L[c+4>>2];L[c>>2]=O(p*C)+L[c>>2];H[e+12>>2]=0;L[e+4>>2]=O(ga*p)+L[e+4>>2];L[e+8>>2]=O(fa*p)+L[e+8>>2];L[e>>2]=O(da*p)+L[e>>2];L[q+52>>2]=s;x=O(x+O(F*p));y=O(y+O(K*p));z=O(z+O(S*p));t=O(t*p);W=O(W+t);u=O(u*p);X=O(X+u);v=O(v*p);Y=O(Y+v);A=O(A+O(M*p));B=O(B+O(G*p));V=O(V+O(R*p));Z=O(Z+t);_=O(_+u);$=O($+v);U=0-(aa|(U|0)!=0)|0;D=D+1|0;if((ea|0)!=(D|0)){continue}break}H[a+56>>2]=U}p=L[a+24>>2];H[j+12>>2]=0;L[j+8>>2]=O(Z*p)+L[j+8>>2];L[j+4>>2]=O(_*p)+L[j+4>>2];L[j>>2]=O($*p)+L[j>>2];p=L[a+4>>2];H[l+12>>2]=0;L[l+8>>2]=O(A*p)+L[l+8>>2];L[l+4>>2]=O(B*p)+L[l+4>>2];L[l>>2]=O(V*p)+L[l>>2];p=L[a+28>>2];H[k+12>>2]=0;L[k+4>>2]=L[k+4>>2]-O(X*p);L[k>>2]=L[k>>2]-O(Y*p);L[k+8>>2]=L[k+8>>2]-O(W*p);p=L[a+8>>2];H[m+12>>2]=0;L[m+4>>2]=L[m+4>>2]-O(y*p);L[m>>2]=L[m>>2]-O(z*p);L[m+8>>2]=L[m+8>>2]-O(x*p);if(r>>>0>=Ja>>>0){break a}x=L[g+8>>2];z=L[g+4>>2];B=L[g>>2];p=L[f+8>>2];y=L[f+4>>2];A=L[f>>2];a=r;continue}}}function YE(a){var b=0,c=0,d=0,e=0,f=0;f=Oa-16|0;Oa=f;b=H[a+440>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=H[a+432>>2];if(!b){break a}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+428>>2];b:{if((b|0)<0|!(b&2147483647)){break b}b=H[a+420>>2];if(!b){break b}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+416>>2];c:{if((b|0)<0|!(b&2147483647)){break c}b=H[a+408>>2];if(!b){break c}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+404>>2];d:{if((b|0)<0|!(b&2147483647)){break d}b=H[a+396>>2];if(!b){break d}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+384>>2];if(!(!b|H[a+388>>2]<0)){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}H[a+384>>2]=0;b=H[a+380>>2];e:{if((b|0)<0|!(b&2147483647)){break e}b=H[a+372>>2];if(!b){break e}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+364>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+356>>2];f:{if((b|0)<0|!(b&2147483647)){break f}b=H[a+348>>2];if(!b){break f}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+344>>2];g:{if((b|0)<0|!(b&2147483647)){break g}b=H[a+336>>2];if(!b){break g}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+332>>2];h:{if((b|0)<0|!(b&2147483647)){break h}b=H[a+324>>2];if(!b){break h}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+308>>2];if(!(!b|H[a+312>>2]<0)){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}H[a+308>>2]=0;b=H[a+304>>2];i:{if((b|0)<0|!(b&2147483647)){break i}b=H[a+296>>2];if(!b){break i}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+292>>2];j:{if((b|0)<0|!(b&2147483647)){break j}b=H[a+284>>2];if(!b){break j}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+280>>2];k:{if((b|0)<0|!(b&2147483647)){break k}b=H[a+272>>2];if(!b){break k}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+268>>2];l:{if((b|0)<0|!(b&2147483647)){break l}b=H[a+260>>2];if(!b){break l}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+248>>2];m:{if((b|0)<0|!(b&2147483647)){break m}b=H[a+240>>2];if(!b){break m}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+228>>2];if(!(!b|H[a+232>>2]<0)){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}H[a+228>>2]=0;b=H[a+216>>2];if(!(!b|H[a+220>>2]<0)){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}H[a+216>>2]=0;b=H[a+212>>2];n:{if((b|0)<0|!(b&2147483647)){break n}b=H[a+204>>2];if(!b){break n}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+200>>2];o:{if((b|0)<0|!(b&2147483647)){break o}b=H[a+192>>2];if(!b){break o}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+188>>2];p:{if((b|0)<0|!(b&2147483647)){break p}b=H[a+180>>2];if(!b){break p}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+168>>2];q:{if((b|0)<0|!(b&2147483647)){break q}b=H[a+160>>2];if(!b){break q}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+156>>2];r:{if((b|0)<0|!(b&2147483647)){break r}b=H[a+148>>2];if(!b){break r}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+144>>2];s:{if((b|0)<0|!(b&2147483647)){break s}b=H[a+136>>2];if(!b){break s}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+132>>2];t:{if((b|0)<0|!(b&2147483647)){break t}b=H[a+124>>2];if(!b){break t}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+120>>2];u:{if((b|0)<0|!(b&2147483647)){break u}b=H[a+112>>2];if(!b){break u}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+108>>2];v:{if((b|0)<0|!(b&2147483647)){break v}b=H[a+100>>2];if(!b){break v}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=0;c=H[a+96>>2];w:{if((c|0)<0|!(c&2147483647)){break w}c=H[a+88>>2];if(!c){break w}d=H[33808];Ra[H[H[d+12>>2]+12>>2]](d+12|0,c)}d=a- -64|0;c=H[a+68>>2];if(c){while(1){e=H[H[d>>2]+(b<<2)>>2];if(e){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,e);c=H[a+68>>2]}b=b+1|0;if(c>>>0>b>>>0){continue}break}}b=0;H[f+8>>2]=0;c=H[d+4>>2];if((c|0)<0){e=H[d>>2];c=e+(c<<2)|0;while(1){H[c>>2]=H[f+8>>2];c=c+4|0;if(e>>>0>c>>>0){continue}break}}H[d+4>>2]=0;c=H[a+72>>2];x:{if((c|0)<0|!(c&2147483647)){break x}c=H[d>>2];if(!c){break x}d=H[33808];Ra[H[H[d+12>>2]+12>>2]](d+12|0,c)}d=a+40|0;c=H[a+44>>2];if(c){while(1){e=H[H[d>>2]+(b<<2)>>2];if(e){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,e);c=H[a+44>>2]}b=b+1|0;if(c>>>0>b>>>0){continue}break}}H[f+12>>2]=0;b=H[d+4>>2];if((b|0)<0){c=H[d>>2];b=c+(b<<2)|0;while(1){H[b>>2]=H[f+12>>2];b=b+4|0;if(c>>>0>b>>>0){continue}break}}H[d+4>>2]=0;b=H[a+48>>2];y:{if((b|0)<0|!(b&2147483647)){break y}b=H[d>>2];if(!b){break y}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+36>>2];z:{if((b|0)<0|!(b&2147483647)){break z}b=H[a+28>>2];if(!b){break z}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+24>>2];A:{if((b|0)<0|!(b&2147483647)){break A}b=H[a+16>>2];if(!b){break A}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+8>>2];B:{if((b|0)<0|!(b&2147483647)){break B}a=H[a>>2];if(!a){break B}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,a)}Oa=f+16|0}function rX(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=O(d);e=e|0;f=f|0;var g=O(0),h=O(0),i=0,j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=0,q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=0,B=0,C=O(0),D=O(0),E=O(0),G=O(0),I=O(0),J=O(0),M=O(0),P=0,Q=0,R=O(0),S=O(0),T=O(0),U=O(0),V=O(0),W=0,X=O(0),Y=O(0),Z=O(0),_=O(0),$=O(0);i=Oa+-64|0;Oa=i;L[i+60>>2]=d;Q=H[a+36>>2];a:{if(Q){break a}Q=0;A=H[a+20>>2];p=A<<2;if(p){W=H[33808];Q=Ra[H[H[W+12>>2]+8>>2]](W+12|0,p,20591,8894,133)|0;A=H[a+20>>2]}H[a+36>>2]=Q;if(!A){break a}while(1){H[(B<<2)+Q>>2]=B;B=B+1|0;if(B>>>0>2]){continue}break}}n=L[b+16>>2];m=L[b+20>>2];j=L[b+4>>2];h=L[b+8>>2];g=L[b+12>>2];d=L[b>>2];L[i+48>>2]=O(g-d)*O(.5);L[i+56>>2]=O(m-h)*O(.5);L[i+52>>2]=O(n-j)*O(.5);H[i+40>>2]=0;H[i+36>>2]=e;H[i+32>>2]=f;b=H[a+40>>2];H[i+28>>2]=H[a+32>>2];H[i+24>>2]=b;W=H[a+28>>2];L[i+8>>2]=O(m+h)*O(.5);L[i+4>>2]=O(n+j)*O(.5);L[i>>2]=O(g+d)*O(.5);p=Oa-1040|0;Oa=p;d=L[c+8>>2];r=O(d+d);C=O(-r);e=r>C;d=L[c+4>>2];s=O(d+d);o=O(-s);b=o>2];t=O(d+d);n=O(-t);a=n>2];j=L[i+52>>2];h=L[i+48>>2];d=L[i+8>>2];v=O(d+d);d=L[i+4>>2];w=O(d+d);d=L[i>>2];x=O(d+d);g=L[i+60>>2];b:{if(g>=O(3.4028234663852886e38)){d=s==O(0)?w:s>=O(0)?O(3.4028234663852886e38):O(-3.4028234663852886e38);z=t==O(0)?x:t>=O(0)?O(3.4028234663852886e38):O(-3.4028234663852886e38);g=v;if(r==O(0)){break b}g=r>=O(0)?O(3.4028234663852886e38):O(-3.4028234663852886e38);break b}d=O(w+O(s*g));z=O(x+O(t*g));g=O(v+O(r*g))}I=e?r:C;J=b?s:o;M=a?t:n;X=O(m+m);Y=O(j+j);Z=O(h+h);F[p+1024|0]=1;H[p+1032>>2]=256;H[p+1036>>2]=256;H[p+1028>>2]=p;a=H[i+24>>2];H[p>>2]=a;T=gz?x:z;C=g>v?v:g;d=d>w?w:d;z=x>2];g=L[f+12>>2];j=O(h+g);o=O(Z+O(g-h));e:{f:{if(!(O(j+o)>=z)|!(O(j-o)<=V)){break f}h=L[f+16>>2];g=L[f+4>>2];k=O(Y+O(h-g));n=O(g+h);m=O(w-n);j=O(x-j);h=O(O(t*m)-O(s*j));g=O(-h);if(!(O(n-k)<=U)|(!(O(O(J*o)+O(M*k))>=(g=d))){break f}h=L[f+20>>2];g=L[f+8>>2];l=O(X+O(h-g));n=O(g+h);g=O(v-n);m=O(O(s*g)-O(r*m));h=O(-m);if(!(O(n-l)<=T)|(!(O(O(I*k)+O(J*l))>=(h=C))){break f}h=O(O(r*j)-O(t*g));g=O(-h);if(!(O(O(I*o)+O(M*l))>=(g>2];f=H[f+24>>2];if(!(f&1)){while(1){e=a+N(f>>>1|0,28)|0;o=L[e+28>>2];n=L[e+40>>2];_=O(o+n);h=L[e+44>>2];g=L[e+32>>2];q=O(Y+O(h-g));D=O(g+h);m=O(w-D);j=O(x-_);y=O(O(t*m)-O(s*j));k=O(-y);h=L[e+48>>2];g=L[e+36>>2];u=O(X+O(h-g));E=O(g+h);g=O(v-E);l=O(O(s*g)-O(r*m));m=O(-l);h=O(O(r*j)-O(t*g));g=O(-h);j=O(Z+O(n-o));c=O(_+j)>=z&O(_-j)<=V&O(O(J*j)+O(M*q))>=(k=d&O(D-q)<=U&O(O(I*q)+O(J*u))>=(l>m?l:m)&O(E+u)>=C&O(E-u)<=T&O(O(I*j)+O(M*u))>=(g>2];g=L[e+4>>2];$=O(Y+O(h-g));S=O(g+h);o=O(w-S);n=L[e>>2];m=L[e+12>>2];q=O(n+m);j=O(x-q);y=O(O(t*o)-O(s*j));k=O(-y);h=L[e+20>>2];g=L[e+8>>2];G=O(X+O(h-g));u=O(g+h);g=O(v-u);l=O(O(s*g)-O(r*o));o=O(-l);h=O(O(r*j)-O(t*g));g=O(-h);j=O(Z+O(m-n));b=O(q+j)>=z&O(q-j)<=V&O(O(J*j)+O(M*$))>=(k=d&O(S-$)<=U&O(O(I*$)+O(J*G))>=(l>o?l:o)&O(u+G)>=C&O(u-G)<=T&O(O(I*j)+O(M*G))>=(gO(0);H[H[p+1028>>2]+(P<<2)>>2]=e+N(b,28);f=e+N(!b,28)|0;P=P+1|0;if((P|0)!=(H[p+1036>>2]&2147483647)){break g}qX(p,P<<1);break g}if(!(b|c)){break f}f=b?e:e+28|0}f=H[f+24>>2];if(!(f&1)){continue}break}}A=f>>>1&15;if(!A){break f}j=O(v+O(r*R));o=jv?v:j;h=h>w?w:h;g=g>x?x:g;B=H[i+28>>2]+(f>>>3&536870908)|0;e=H[i+32>>2];S=L[i+60>>2];if((A|0)!=1){while(1){b=H[B>>2];c=W+N(b,24)|0;k=L[c>>2];l=L[c+12>>2];y=O(k+l);E=O(Z+O(l-k));h:{if(!(O(y+E)>=z)|!(O(y-E)<=V)){break h}k=L[c+16>>2];l=L[c+4>>2];G=O(Y+O(k-l));q=O(l+k);u=O(w-q);y=O(x-y);k=O(O(t*u)-O(s*y));l=O(-k);if(!(O(q-G)<=U)|(!(O(O(J*E)+O(M*G))>=(k>l?k:l))|!(O(q+G)>=d))){break h}k=L[c+20>>2];l=L[c+8>>2];D=O(X+O(k-l));q=O(l+k);l=O(v-q);u=O(O(s*l)-O(r*u));k=O(-u);if(!(O(q-D)<=T)|(!(O(O(I*G)+O(J*D))>=(k=C))){break h}k=O(O(r*y)-O(t*l));l=O(-k);if(!(O(O(I*E)+O(M*D))>=(k>l?k:l))){break h}c=H[(b<<2)+Q>>2];b=H[i+40>>2];H[i+40>>2]=b+1;H[e+(b<<2)>>2]=c;if(H[i+40>>2]==H[i+36>>2]){break e}if(!(R>2]=R;z=g;d=h;C=j;V=m;U=n;T=o}B=B+4|0;A=A-1|0;if(A){continue}break f}}c=H[(H[B>>2]<<2)+Q>>2];b=H[i+40>>2];H[i+40>>2]=b+1;H[e+(b<<2)>>2]=c;c=H[i+36>>2];b=H[i+40>>2];if(!(R>2]=R;z=g;d=h;C=j;V=m;U=n;T=o}if(P){break d}}a=H[p+1036>>2];i:{if((a|0)<0|!(a&2147483647)){break i}b=H[p+1028>>2];if((b|0)==(p|0)|!b){break i}a=H[33808]+12|0;Ra[H[H[a>>2]+12>>2]](a,b)}Oa=p+1040|0;break c}P=P-1|0;f=H[H[p+1028>>2]+(P<<2)>>2];continue}break}Oa=i- -64|0;return H[i+40>>2]}function sH(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;m=Oa-16|0;Oa=m;H[a+356>>2]=g;H[a+352>>2]=d;F[a+365|0]=I[a+365|0]!=0|e;a:{if(b>>>0<2){break a}H[a+128>>2]=g;H[a+124>>2]=d;H[a+120>>2]=b;H[a+116>>2]=a;H[a+112>>2]=1;H[a+108>>2]=f;if(!f){break a}Ra[H[H[f>>2]+16>>2]](f);H[a+104>>2]=H[H[a+108>>2]+16>>2]}n=a+224|0;b:{if(K[a+232>>2]>=(H[a+236>>2]>>>1&1073741823)>>>0){H[a+232>>2]=0;break b}H[m+8>>2]=0;jH(n,0,m+8|0);kH(n,H[a+232>>2])}i=H[a+136>>2];if(i){e=H[a+140>>2]&2147483647;c:{while(1){j=0;if(!e){break c}e=e-1|0;j=H[i+(e<<2)>>2];if(!j){continue}break}j=(Q(j)|e<<5)^31}o=j>>>5|0;while(1){e=H[i+(k<<2)>>2];if(e){l=k<<5;while(1){h=f7(e)|l;H[m+8>>2]=h;j=H[a+232>>2];d:{if(j>>>0>=(H[a+236>>2]&2147483647)>>>0){oH(n,m+8|0);break d}H[H[a+228>>2]+(j<<2)>>2]=h;H[a+232>>2]=H[a+232>>2]+1}e=e-1&e;if(e){continue}break}}e=(k|0)==(o|0);k=k+1|0;if(!e){continue}break}}p=a+240|0;e:{if(K[a+248>>2]>=(H[a+252>>2]>>>1&1073741823)>>>0){H[a+248>>2]=0;break e}H[m+8>>2]=0;jH(p,0,m+8|0);kH(p,H[a+248>>2])}f:{if(!I[a+364|0]){q=H[a+160>>2];if(q){e=H[a+164>>2]&2147483647;g:{while(1){j=1;if(!e){break g}e=e-1|0;if(!H[q+(e<<2)>>2]){continue}break}j=(e&134217727)+1|0}i=a+388|0;k=0;while(1){o=k<<2;e=H[q+o>>2];if(e){l=k<<5;while(1){h=f7(e);n=h|l;H[m>>2]=n;h:{if(H[H[a+136>>2]+o>>2]>>>h&1){break h}h=H[(H[a+196>>2]+(n<<3)|0)+4>>2];if((h|0)==-1){h=H[a+248>>2];if(h>>>0>=(H[a+252>>2]&2147483647)>>>0){oH(p,m);break h}H[H[a+244>>2]+(h<<2)>>2]=n;H[a+248>>2]=H[a+248>>2]+1;break h}n=H[H[a+376>>2]+(h<<1&-4)>>2];if(H[n+20>>2]!=-1){break h}h=H[a+392>>2];H[n+20>>2]=h;H[m+8>>2]=n;if(h>>>0>=(H[a+396>>2]&2147483647)>>>0){nH(i,m+8|0);break h}H[H[a+388>>2]+(h<<2)>>2]=n;H[a+392>>2]=h+1}e=e-1&e;if(e){continue}break}}k=k+1|0;if((j|0)!=(k|0)){continue}break}}k=H[a+392>>2];if(!k){break f}j=0;while(1){l=H[H[a+388>>2]+(j<<2)>>2];gH(l);i:{if(b>>>0>=2){h=H[l>>2];break i}hH(l,H[H[a+276>>2]+4>>2],H[H[a+192>>2]+4>>2]);h=H[l>>2];e=H[H[a+276>>2]+4>>2]+N(h,24)|0;L[e>>2]=L[l+36>>2];L[e+4>>2]=L[l+40>>2];L[e+8>>2]=L[l+44>>2];L[e+12>>2]=L[l+48>>2];L[e+16>>2]=L[l+52>>2];L[e+20>>2]=L[l+56>>2]}j:{if(H[H[a+136>>2]+(h>>>3&536870908)>>2]>>>h&1){break j}e=H[a+248>>2];if(e>>>0>=(H[a+252>>2]&2147483647)>>>0){oH(p,l);break j}H[H[a+244>>2]+(e<<2)>>2]=h;H[a+248>>2]=H[a+248>>2]+1}j=j+1|0;if((j|0)!=(k|0)){continue}break}if(b>>>0>=2){e=c;o=0;c=k;k:{l:{if(c>>>0>b>>>0){k=(c>>>0)/(b>>>0)|0;break l}if(!c){break k}}l=a+88|0;while(1){i=yq(e,48);h=H[a+556>>2];j=H[a+552>>2];H[i+24>>2]=0;H[i+16>>2]=0;H[i+8>>2]=j;H[i+12>>2]=h;H[i+28>>2]=0;H[i+32>>2]=0;H[i>>2]=115448;H[i+36>>2]=0;H[i+40>>2]=0;H[i+40>>2]=H[a+388>>2];j=c>>>0>>0?c:k;H[i+36>>2]=j;H[i+32>>2]=o;H[i+28>>2]=a;H[i+24>>2]=1;H[i+20>>2]=l;Ra[H[H[a+88>>2]+16>>2]](l);H[i+16>>2]=H[H[i+20>>2]+16>>2];Ra[H[H[i>>2]+20>>2]](i);o=j+o|0;c=c-j|0;if(c){continue}break}}}F[a+365|0]=1;Ey(H[a+244>>2],H[a+248>>2]);break f}c=0;h=Oa-16|0;Oa=h;G[a+364>>1]=256;H[h+8>>2]=0;if(H[a+360>>2]){k=a+240|0;j=a+388|0;while(1){m:{if(H[H[a+180>>2]+(c<<2)>>2]==-1){break m}e=H[(H[a+196>>2]+(c<<3)|0)+4>>2];if((e|0)==-1){if(H[H[a+136>>2]+(c>>>3&536870908)>>2]>>>c&1){break m}e=H[a+248>>2];if(e>>>0>=(H[a+252>>2]&2147483647)>>>0){oH(k,h+8|0);break m}H[H[a+244>>2]+(e<<2)>>2]=c;H[a+248>>2]=H[a+248>>2]+1;break m}if(!(e&1)){break m}e=H[H[a+376>>2]+(e<<1&-4)>>2];if(!H[e+8>>2]){break m}n:{if(H[e+20>>2]!=-1){break n}c=H[a+392>>2];H[e+20>>2]=c;H[h+12>>2]=e;if(c>>>0>=(H[a+396>>2]&2147483647)>>>0){nH(j,h+12|0);break n}H[H[a+388>>2]+(c<<2)>>2]=e;H[a+392>>2]=c+1}gH(e);hH(e,H[H[a+276>>2]+4>>2],H[H[a+192>>2]+4>>2]);c=H[H[a+276>>2]+4>>2]+N(H[e>>2],24)|0;L[c>>2]=L[e+36>>2];L[c+4>>2]=L[e+40>>2];L[c+8>>2]=L[e+44>>2];L[c+12>>2]=L[e+48>>2];L[c+16>>2]=L[e+52>>2];L[c+20>>2]=L[e+56>>2];e=H[h+8>>2];if(H[H[a+136>>2]+(e>>>3&536870908)>>2]>>>e&1){break m}c=H[a+248>>2];if(c>>>0>=(H[a+252>>2]&2147483647)>>>0){oH(k,h+8|0);break m}H[H[a+244>>2]+(c<<2)>>2]=e;H[a+248>>2]=H[a+248>>2]+1}c=H[h+8>>2]+1|0;H[h+8>>2]=c;if(K[a+360>>2]>c>>>0){continue}break}}Oa=h+16|0}i=a+256|0;o:{if(K[a+264>>2]>=(H[a+268>>2]>>>1&1073741823)>>>0){H[a+264>>2]=0;break o}H[m+8>>2]=0;jH(i,0,m+8|0);kH(i,H[a+264>>2])}o=H[a+148>>2];if(o){e=H[a+152>>2]&2147483647;p:{while(1){c=1;if(!e){break p}e=e-1|0;if(!H[o+(e<<2)>>2]){continue}break}c=(e&134217727)+1|0}k=0;while(1){e=H[o+(k<<2)>>2];if(e){l=k<<5;while(1){h=f7(e)|l;H[m+8>>2]=h;j=H[a+264>>2];q:{if(j>>>0>=(H[a+268>>2]&2147483647)>>>0){oH(i,m+8|0);break q}H[H[a+260>>2]+(j<<2)>>2]=h;H[a+264>>2]=H[a+264>>2]+1}e=e-1&e;if(e){continue}break}}k=k+1|0;if((c|0)!=(k|0)){continue}break}}r:{if(b>>>0<=1){rH(a,b,d,f,g);break r}b=H[a+104>>2];Ra[H[H[b>>2]+72>>2]](b,a+88|0)}Oa=m+16|0}function lv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=O(0),j=O(0),k=0,l=O(0),m=0,n=O(0),o=O(0),p=O(0),q=0,r=O(0),s=O(0),t=O(0),u=0,v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=0,C=O(0),D=O(0),E=O(0),F=O(0),G=0,K=0,M=0,P=0,Q=0,R=0,S=O(0),T=O(0),U=O(0),V=O(0),W=O(0),X=O(0),Y=O(0),Z=O(0),_=O(0),$=O(0),aa=O(0),ba=O(0),ca=O(0),da=O(0),ea=O(0),fa=O(0),ga=O(0),ha=O(0),ia=0,ja=0,ka=0,la=O(0),ma=O(0),na=O(0),oa=O(0),pa=O(0),qa=O(0),ra=O(0),sa=O(0),ta=O(0),ua=O(0),va=O(0),wa=O(0),xa=O(0),ya=O(0),za=0,Aa=0,Ba=0;m=Oa-2304|0;Oa=m;f=H[b+100>>2];Q=f+128|0;d=f+J[f+18>>1]|0;ia=d+144|0;h=ia+N(c,160)|0;q=H[h+152>>2];b=q&H[f+8>>2];k=H[h+156>>2];h=k&H[f+12>>2];e=h;if(b|e){u=J[f+6>>1];g=J[f+4>>1]<<5;R=g+Q|0;h=q;q=0-b&b;h=h&0-q;q=0-((0-(((b|0)!=0)+e|0)&e)+((q|0)!=0)|0)&k;a:{if(!(h&1)){d=q;b=h;break a}S=L[d+136>>2];T=L[d+104>>2];U=L[d+120>>2];V=L[d+132>>2];W=L[d+100>>2];X=L[d+116>>2];Y=L[d+112>>2];Z=L[d+128>>2];v=L[d- -64>>2];A=L[d+80>>2];n=L[f+132>>2];C=L[d+84>>2];w=L[d+52>>2];D=L[d+68>>2];r=L[f+136>>2];j=L[f+40>>2];l=L[f+36>>2];E=L[d+88>>2];i=L[f+56>>2];x=L[d+56>>2];s=L[f+48>>2];y=L[d+72>>2];o=L[f+52>>2];_=L[d+96>>2];p=L[f+128>>2];$=L[d+32>>2];aa=L[d>>2];ba=L[d+16>>2];F=L[d+48>>2];ca=L[d+36>>2];da=L[d+4>>2];ea=L[d+20>>2];t=L[d+40>>2];fa=L[d+8>>2];ga=L[f+32>>2];ha=L[d+24>>2];H[f+140>>2]=0;H[f+156>>2]=0;H[f+32>>2]=0;H[f+36>>2]=0;H[f+40>>2]=0;H[f+44>>2]=0;H[f+48>>2]=0;H[f+52>>2]=0;H[f+56>>2]=0;H[f+60>>2]=0;z=r;r=O(-ga);s=O(-s);t=O(O(O(O(fa*r)-O(ha*l))-O(t*j))+O(O(O(x*s)-O(y*o))-O(E*i)));L[f+136>>2]=z+t;z=n;n=O(O(O(O(da*r)-O(ea*l))-O(ca*j))+O(O(O(w*s)-O(D*o))-O(C*i)));L[f+132>>2]=z+n;z=p;p=O(O(O(O(aa*r)-O(ba*l))-O($*j))+O(O(O(F*s)-O(v*o))-O(A*i)));L[f+128>>2]=z+p;w=O(O(O(O(F*r)-O(w*l))-O(x*j))+O(O(O(_*s)-O(Y*o))-O(Z*i)));L[f+144>>2]=w+L[f+144>>2];v=O(O(O(O(v*r)-O(D*l))-O(y*j))+O(O(O(W*s)-O(X*o))-O(V*i)));L[f+148>>2]=v+L[f+148>>2];i=O(O(O(O(A*r)-O(C*l))-O(E*j))+O(O(O(T*s)-O(U*o))-O(S*i)));L[f+152>>2]=i+L[f+152>>2];H[m+28>>2]=0;L[m+24>>2]=i;L[m+20>>2]=v;L[m+16>>2]=w;H[m+12>>2]=0;L[m+8>>2]=t;L[m+4>>2]=n;L[m>>2]=p;H[m+2048>>2]=0;G=H[d+288>>2];K=H[d+292>>2];M=1;d=q-!h|0;b=h-1|0}if(b|d){ja=f+u|0;ka=g+(g+R|0)|0;while(1){e=b;P=(za=f7(e),Aa=f7(d)+32|0,Ba=e,Ba?za:Aa);e=P<<5;k=e+Q|0;S=L[k>>2];T=L[k+4>>2];B=e+ja|0;C=L[B+24>>2];U=L[k+8>>2];D=L[B+16>>2];E=L[B+20>>2];g=N(P,160)+ia|0;V=L[g+136>>2];W=L[g+104>>2];X=L[g+120>>2];Y=L[g+88>>2];Z=L[g+84>>2];_=L[g+80>>2];$=L[g+72>>2];aa=L[g+64>>2];ba=L[g+68>>2];ca=L[g+132>>2];da=L[g+100>>2];ea=L[g+116>>2];fa=L[g+56>>2];ga=L[g+52>>2];ha=L[g+48>>2];z=L[g+40>>2];la=L[g+32>>2];ma=L[g+36>>2];na=L[g+128>>2];u=(P<<4)+ka|0;r=L[u+8>>2];s=L[u+4>>2];oa=L[g+112>>2];pa=L[g+96>>2];A=L[u>>2];qa=L[g+24>>2];ra=L[g+20>>2];sa=L[g+16>>2];ta=L[g+8>>2];e=e+R|0;j=L[e+8>>2];ua=L[g>>2];va=L[e>>2];l=L[e+20>>2];x=L[B+4>>2];wa=L[g+4>>2];xa=L[e+4>>2];y=L[B>>2];ya=L[e+24>>2];F=L[B+8>>2];o=L[e+16>>2];H[k+12>>2]=0;H[k+28>>2]=0;t=O(t+j);j=O(w+o);l=O(v+l);o=O(t+O(O(j*x)-O(y*l)));i=O(i+ya);p=O(O(p+va)+O(O(l*F)-O(x*i)));n=O(O(n+xa)+O(O(i*y)-O(F*j)));x=O(O(O(na*r)+O(O(pa*A)+O(s*oa)))+O(O(O(ta*o)+O(O(ua*p)+O(wa*n)))+O(O(qa*i)+O(O(sa*j)+O(l*ra)))));w=O(j-x);L[k+16>>2]=w+L[k+16>>2];y=O(O(O(ca*r)+O(O(da*A)+O(s*ea)))+O(O(O(z*o)+O(O(la*p)+O(n*ma)))+O(O(fa*i)+O(O(ha*j)+O(l*ga)))));v=O(l-y);L[k+20>>2]=v+L[k+20>>2];j=O(O(O(V*r)+O(O(W*A)+O(s*X)))+O(O(O($*o)+O(O(aa*p)+O(n*ba)))+O(O(Y*i)+O(O(_*j)+O(l*Z)))));i=O(i-j);L[k+24>>2]=i+L[k+24>>2];t=O(o-O(O(D*y)-O(x*E)));L[k+8>>2]=U+t;n=O(n-O(O(C*x)-O(j*D)));L[k+4>>2]=T+n;p=O(p-O(O(E*j)-O(y*C)));L[k>>2]=S+p;H[e+8>>2]=0;H[e+12>>2]=0;H[e+24>>2]=0;H[e+28>>2]=0;H[e+16>>2]=0;H[e+20>>2]=0;H[e>>2]=0;H[e+4>>2]=0;H[u+8>>2]=0;H[u+12>>2]=0;H[u>>2]=0;H[u+4>>2]=0;H[(m+2048|0)+(P<<2)>>2]=M;k=H[g+144>>2];g=H[g+148>>2];e=(M<<5)+m|0;H[e+28>>2]=0;L[e+24>>2]=i;L[e+20>>2]=v;L[e+16>>2]=w;H[e+12>>2]=0;L[e+8>>2]=t;L[e+4>>2]=n;L[e>>2]=p;M=M+1|0;G=k|G;K=g|K;e=b;b=e-1&e;d=d&d-!e;if(b|d){continue}break}}g=h^-1;b=g&G;q=q^-1;d=q&K;if(b|d){while(1){h=b;h=(za=f7(h),Aa=f7(d)+32|0,Ba=h,Ba?za:Aa);e=(H[(m+2048|0)+(I[(h+f|0)- -64|0]<<2)>>2]<<5)+m|0;j=L[e>>2];l=L[e+4>>2];i=L[e+8>>2];h=(h<<5)+R|0;H[h+12>>2]=0;L[h+8>>2]=i+L[h+8>>2];L[h+4>>2]=l+L[h+4>>2];L[h>>2]=j+L[h>>2];j=L[e+16>>2];l=L[e+20>>2];i=L[e+24>>2];H[h+28>>2]=0;L[h+24>>2]=i+L[h+24>>2];L[h+20>>2]=l+L[h+20>>2];L[h+16>>2]=j+L[h+16>>2];h=b;b=h-1&h;d=d&d-!h;if(b|d){continue}break}}b=q&(K|H[f+12>>2]);H[f+8>>2]=g&(G|H[f+8>>2]);H[f+12>>2]=b}b=(c<<5)+Q|0;c=H[b+4>>2];H[a>>2]=H[b>>2];H[a+4>>2]=c;c=H[b+12>>2];H[a+8>>2]=H[b+8>>2];H[a+12>>2]=c;c=H[b+20>>2];H[a+16>>2]=H[b+16>>2];H[a+20>>2]=c;c=H[b+28>>2];H[a+24>>2]=H[b+24>>2];H[a+28>>2]=c;Oa=m+2304|0}function eQ(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,o=O(0),p=0,q=0;i=H[a+20>>2];e=H[a+28>>2];n=H[H[e+976>>2]+1156>>2];a=H[e+4728>>2]&2147483647;a:{if(!a){break a}b=H[e+4724>>2];while(1){g=H[b+(f<<2)>>2];if(g){break a}f=f+1|0;if((a|0)!=(f|0)){continue}break}g=0;f=a}b=yq(n,560);a=H[H[e+1144>>2]+4>>2];o=L[e+1080>>2];c=H[e+1140>>2];d=H[e+16>>2];h=H[e+20>>2];H[b+24>>2]=0;H[b+16>>2]=0;H[b+20>>2]=0;H[b+8>>2]=d;H[b+12>>2]=h;H[b+552>>2]=c;H[b+548>>2]=0;L[b+32>>2]=o;H[b+28>>2]=a;H[b>>2]=119580;d=I[e+1148|0]!=0;h=H[e+980>>2];l=H[e+1e3>>2];b:{if(!g){break b}while(1){c=f7(g)|f<<5;g=g-1&g;c:{if(g){break c}a=f+1|0;j=H[e+4728>>2]&2147483647;a=a>>>0>j>>>0?a:j;m=H[e+4724>>2];while(1){f=f+1|0;if(j>>>0<=f>>>0){g=0;f=a;break c}g=H[m+(f<<2)>>2];if(!g){continue}break}}if((c|0)==-1){break b}a=H[(H[l+184>>2]+N(c&33554431,24)|0)+20>>2];d:{if(!a){break d}d=H[b+548>>2];c=d+1|0;H[b+548>>2]=c;a=a+-64|0;H[((d<<2)+b|0)+36>>2]=a;a=H[a+32>>2];if(a){while(1){if(F[H[a+28>>2]- -64|0]&1){j=H[a+8>>2];m=j&2147483647;d=m+32>>>5|0;e:{if(d>>>0<=(H[h+164>>2]&2147483647)>>>0){c=H[h+160>>2];break e}c=H[h+168>>2];c=Ra[H[H[c>>2]+8>>2]](c,d<<2,14905,438)|0;k=H[h+160>>2];f:{if(!k){break f}R6(c,k,H[h+164>>2]<<2);if(H[h+164>>2]<0){break f}k=H[h+160>>2];if(!k){break f}p=H[h+168>>2];Ra[H[H[p>>2]+12>>2]](p,k)}k=H[h+164>>2];S6((k<<2)+c|0,0,d-k<<2);H[h+164>>2]=d;H[h+160>>2]=c}c=(m>>>3&268435452)+c|0;H[c>>2]=H[c>>2]|1<>2];if(a){continue}break}c=H[b+548>>2]}d=1;if((c|0)!=128){break d}H[b+20>>2]=i;H[b+24>>2]=1;if(i){Ra[H[H[i>>2]+16>>2]](i);H[b+16>>2]=H[H[b+20>>2]+16>>2]}Ra[H[H[b>>2]+20>>2]](b);b=yq(n,560);a=H[H[e+1144>>2]+4>>2];o=L[e+1080>>2];c=H[e+1140>>2];j=H[e+16>>2];m=H[e+20>>2];H[b+24>>2]=0;H[b+16>>2]=0;H[b+20>>2]=0;H[b+8>>2]=j;H[b+12>>2]=m;H[b+552>>2]=c;H[b+548>>2]=0;L[b+32>>2]=o;H[b+28>>2]=a;H[b>>2]=119580}if(g){continue}break}}if(H[b+548>>2]){H[b+20>>2]=i;H[b+24>>2]=1;if(i){Ra[H[H[i>>2]+16>>2]](i);H[b+16>>2]=H[H[b+20>>2]+16>>2]}Ra[H[H[b>>2]+20>>2]](b)}g:{g=H[e+4740>>2];b=g&2147483647;if(!b){break g}c=H[e+4736>>2];a=0;while(1){f=H[c+(a<<2)>>2];if(!f){a=a+1|0;if((b|0)!=(a|0)){continue}break g}break}while(1){c=f7(f)|a<<5;f=f-1&f;h:{if(f){break h}f=a+1|0;g=g&2147483647;b=f>>>0>g>>>0?f:g;j=H[e+4736>>2];while(1){a=a+1|0;if(g>>>0<=a>>>0){f=0;a=b;break h}f=H[j+(a<<2)>>2];if(!f){continue}break}}if((c|0)==-1){break g}c=H[H[(H[l+184>>2]+N(c&33554431,24)|0)+20>>2]+16>>2];if(c){b=yq(n,48);d=H[H[e+1144>>2]+4>>2];o=L[e+1080>>2];g=H[e+1140>>2];j=H[e+16>>2];m=H[e+20>>2];H[b+24>>2]=0;H[b+16>>2]=0;H[b+8>>2]=j;H[b+12>>2]=m;H[b+40>>2]=g;L[b+32>>2]=o;H[b+28>>2]=d;H[b>>2]=119636;H[b+36>>2]=c;H[b+20>>2]=i;H[b+24>>2]=1;if(i){Ra[H[H[i>>2]+16>>2]](i);H[b+16>>2]=H[H[b+20>>2]+16>>2];c=H[b>>2]}else{c=119636}Ra[H[c+20>>2]](b);d=1}if(!f){break g}g=H[e+4740>>2];continue}}F[e+1148|0]=d;l=0;a=0;f=0;b=H[e+2520>>2]&2147483647;i:{if(!b){break i}c=H[e+2516>>2];while(1){f=H[c+(a<<2)>>2];if(f){break i}a=a+1|0;if((b|0)!=(a|0)){continue}break}f=0;a=b}j=H[H[e+976>>2]+1816>>2];m=H[H[e+980>>2]+276>>2];d=yq(n,1064);b=H[e+16>>2];c=H[e+20>>2];H[d+24>>2]=0;H[d+16>>2]=0;H[d+20>>2]=0;H[d+8>>2]=b;H[d+12>>2]=c;H[d+1060>>2]=0;H[d+32>>2]=m;H[d+28>>2]=j;H[d>>2]=119692;j:{if(!f){break j}while(1){p=f7(f);b=a;g=p|b<<5;f=f-1&f;k:{if(f){break k}a=b+1|0;k=H[e+2520>>2]&2147483647;c=a>>>0>k>>>0?a:k;q=H[e+2516>>2];a=b;while(1){a=a+1|0;if(k>>>0<=a>>>0){f=0;a=c;break k}f=H[q+(a<<2)>>2];if(!f){continue}break}}if((g|0)!=-1){c=H[e+980>>2];l:{if(g>>>0>=K[c+200>>2]){break l}k=H[H[c+196>>2]+(g<<3)>>2]&-4;if(!k){break l}g=g+32>>>5|0;m:{if(g>>>0<=(H[h+164>>2]&2147483647)>>>0){c=H[h+160>>2];break m}c=H[h+168>>2];c=Ra[H[H[c>>2]+8>>2]](c,g<<2,14905,438)|0;l=H[h+160>>2];n:{if(!l){break n}R6(c,l,H[h+164>>2]<<2);if(H[h+164>>2]<0){break n}l=H[h+160>>2];if(!l){break n}q=H[h+168>>2];Ra[H[H[q>>2]+12>>2]](q,l)}l=H[h+164>>2];S6((l<<2)+c|0,0,g-l<<2);H[h+164>>2]=g;H[h+160>>2]=c}l=1;b=((b&134217727)<<2)+c|0;H[b>>2]=H[b>>2]|1<>2];c=b+1|0;H[d+1060>>2]=c;H[((b<<2)+d|0)+36>>2]=k;if((c|0)!=256){break l}H[d+20>>2]=i;H[d+24>>2]=1;if(i){Ra[H[H[i>>2]+16>>2]](i);H[d+16>>2]=H[H[d+20>>2]+16>>2]}Ra[H[H[d>>2]+20>>2]](d);d=yq(n,1064);b=H[e+16>>2];c=H[e+20>>2];H[d+24>>2]=0;H[d+16>>2]=0;H[d+20>>2]=0;H[d+8>>2]=b;H[d+12>>2]=c;H[d+1060>>2]=0;H[d+32>>2]=m;H[d+28>>2]=j;H[d>>2]=119692}if(f){continue}}break}if(!l){break j}F[H[e+1140>>2]+16|0]=1;F[H[H[e+976>>2]+1816>>2]+20|0]=1}if(H[d+1060>>2]){H[d+20>>2]=i;H[d+24>>2]=1;if(i){Ra[H[H[i>>2]+16>>2]](i);H[d+16>>2]=H[H[d+20>>2]+16>>2]}Ra[H[H[d>>2]+20>>2]](d)}S6(H[e+2516>>2],0,H[e+2520>>2]<<2)}function c1(a,b,c,d,e){var f=0,g=O(0),h=0,i=0,j=O(0),k=O(0),l=0,m=0,n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=0,u=O(0),v=O(0),w=0,x=O(0),y=0,z=O(0);f=Oa-48|0;l=f;Oa=f;f=f-(d+15&-16)|0;Oa=f;t=S6(f,0,d);g=O(-3.4028234663852886e38);h=-1;f=e;while(1){d=H[f+48>>2];m=H[f+52>>2];if(d>>>0>>0){while(1){i=(d<<6)+c|0;k=L[i+24>>2];n=O(k*k);k=L[i+16>>2];u=O(k*k);k=L[i+20>>2];k=O(n+O(u+O(k*k)));i=k>g;g=i?k:g;h=i?d:h;d=d+1|0;if((m|0)!=(d|0)){continue}break}}f=H[f+16>>2];if(f){continue}break}F[h+t|0]=1;f=(h<<6)+c|0;k=L[f+24>>2];r=L[f+20>>2];v=L[f+16>>2];H[b+48>>2]=H[f+48>>2];d=H[f+44>>2];H[b+40>>2]=H[f+40>>2];H[b+44>>2]=d;d=H[f+36>>2];H[b+32>>2]=H[f+32>>2];H[b+36>>2]=d;d=H[f+28>>2];H[b+24>>2]=H[f+24>>2];H[b+28>>2]=d;d=H[f+20>>2];H[b+16>>2]=H[f+16>>2];H[b+20>>2]=d;d=H[f+12>>2];H[b+8>>2]=H[f+8>>2];H[b+12>>2]=d;d=H[f+4>>2];H[b>>2]=H[f>>2];H[b+4>>2]=d;d=H[e+48>>2];h=(d<<6)+c|0;g=O(L[h+24>>2]-k);n=O(g*g);g=O(L[h+16>>2]-v);u=O(g*g);g=O(L[h+20>>2]-r);g=O(n+O(u+O(g*g)));p=L[f+44>>2];h=d;f=e;while(1){m=H[f+52>>2];if(m>>>0>d>>>0){while(1){i=(d<<6)+c|0;j=O(L[i+24>>2]-k);n=O(j*j);j=O(L[i+16>>2]-v);u=O(j*j);j=O(L[i+20>>2]-r);j=O(n+O(u+O(j*j)));i=j>g;g=i?j:g;h=i?d:h;d=d+1|0;if((m|0)!=(d|0)){continue}break}}f=H[f+16>>2];if(f){d=H[f+48>>2];continue}break}F[h+t|0]=1;d=(h<<6)+c|0;g=L[d+16>>2];n=L[d+20>>2];s=L[d+24>>2];H[b+112>>2]=H[d+48>>2];f=H[d+44>>2];H[b+104>>2]=H[d+40>>2];H[b+108>>2]=f;f=H[d+36>>2];H[b+96>>2]=H[d+32>>2];H[b+100>>2]=f;f=H[d+28>>2];H[b+88>>2]=H[d+24>>2];H[b+92>>2]=f;f=H[d+20>>2];H[b+80>>2]=H[d+16>>2];H[b+84>>2]=f;f=H[d+12>>2];H[b+72>>2]=H[d+8>>2];H[b+76>>2]=f;f=H[d+4>>2];H[b+64>>2]=H[d>>2];H[b+68>>2]=f;q=O(g-v);g=L[b+36>>2];j=L[b+32>>2];o=O(n-r);n=O(O(q*g)-O(j*o));u=n;x=O(n*n);n=L[b+40>>2];z=O(o*n);o=O(s-k);s=O(z-O(g*o));q=O(O(o*j)-O(n*q));x=O(x+O(O(s*s)+O(q*q)));o=O(O(1)/O(W(x)));f=x>O(0);n=f?O(u*o):n;q=f?O(q*o):g;s=f?O(s*o):j;g=L[d+44>>2];o=g>2];w=H[h+52>>2];if(d>>>0>>0){while(1){if(!I[d+t|0]){m=(d<<6)+c|0;j=O(O(O(L[m+24>>2]-k)*n)+O(O(O(L[m+16>>2]-v)*s)+O(q*O(L[m+20>>2]-r))));m=jp;p=y?j:p;i=m?d:i;f=y?d:f}d=d+1|0;if((w|0)!=(d|0)){continue}break}}h=H[h+16>>2];if(h){continue}break}F[f+t|0]=1;d=(f<<6)+c|0;f=H[d+4>>2];H[b+128>>2]=H[d>>2];H[b+132>>2]=f;H[b+176>>2]=H[d+48>>2];f=H[d+44>>2];H[b+168>>2]=H[d+40>>2];H[b+172>>2]=f;f=H[d+36>>2];H[b+160>>2]=H[d+32>>2];H[b+164>>2]=f;f=H[d+28>>2];H[b+152>>2]=H[d+24>>2];H[b+156>>2]=f;f=H[d+20>>2];H[b+144>>2]=H[d+16>>2];H[b+148>>2]=f;f=H[d+12>>2];H[b+136>>2]=H[d+8>>2];H[b+140>>2]=f;j=L[d+44>>2];j=j>2]=j;if(O(g*p)>O(0)){g=O(-3.4028234663852886e38);f=e;while(1){d=H[f+48>>2];m=H[f+52>>2];if(d>>>0>>0){while(1){if(!I[d+t|0]){h=(d<<6)+c|0;p=O(O(O(L[h+24>>2]-k)*n)+O(O(O(L[h+16>>2]-v)*s)+O(q*O(L[h+20>>2]-r))));h=p>g;g=h?p:g;i=h?d:i}d=d+1|0;if((m|0)!=(d|0)){continue}break}}f=H[f+16>>2];if(f){continue}break}}F[i+t|0]=1;d=(i<<6)+c|0;f=H[d+4>>2];H[b+192>>2]=H[d>>2];H[b+196>>2]=f;H[b+240>>2]=H[d+48>>2];f=H[d+44>>2];H[b+232>>2]=H[d+40>>2];H[b+236>>2]=f;f=H[d+36>>2];H[b+224>>2]=H[d+32>>2];H[b+228>>2]=f;f=H[d+28>>2];H[b+216>>2]=H[d+24>>2];H[b+220>>2]=f;f=H[d+20>>2];H[b+208>>2]=H[d+16>>2];H[b+212>>2]=f;f=H[d+12>>2];H[b+200>>2]=H[d+8>>2];H[b+204>>2]=f;g=L[d+44>>2];H[l+32>>2]=2139095039;H[l+16>>2]=2139095039;H[l+8>>2]=0;H[l+12>>2]=0;g=g>2];w=H[e+52>>2];if(d>>>0>>0){while(1){a:{if(I[d+t|0]){break a}k=L[((d<<6)+c|0)+44>>2];b:{if(k>2]){h=H[l+8>>2];i=H[l+20>>2];H[f>>2]=H[l+16>>2];H[f+4>>2]=i;i=H[l+28>>2];H[f+8>>2]=H[l+24>>2];H[f+12>>2]=i;m=0;i=l+16|0;break b}if(!(k>2])){break a}m=1;h=H[l+12>>2];i=f}H[l+12>>2]=h;L[i>>2]=k;H[(l+8|m<<2)>>2]=d}d=d+1|0;if(w>>>0>d>>>0){continue}break}}e=H[e+16>>2];if(e){continue}break}d=(H[l+8>>2]<<6)+c|0;e=H[d+4>>2];H[b+256>>2]=H[d>>2];H[b+260>>2]=e;H[b+304>>2]=H[d+48>>2];e=H[d+44>>2];H[b+296>>2]=H[d+40>>2];H[b+300>>2]=e;e=H[d+36>>2];H[b+288>>2]=H[d+32>>2];H[b+292>>2]=e;e=H[d+28>>2];H[b+280>>2]=H[d+24>>2];H[b+284>>2]=e;e=H[d+20>>2];H[b+272>>2]=H[d+16>>2];H[b+276>>2]=e;e=H[d+12>>2];H[b+264>>2]=H[d+8>>2];H[b+268>>2]=e;k=L[l+16>>2];c=(H[l+12>>2]<<6)+c|0;d=H[c+4>>2];H[b+320>>2]=H[c>>2];H[b+324>>2]=d;d=H[c+20>>2];H[b+336>>2]=H[c+16>>2];H[b+340>>2]=d;d=H[c+36>>2];H[b+352>>2]=H[c+32>>2];H[b+356>>2]=d;H[b+368>>2]=H[c+48>>2];d=H[c+44>>2];H[b+360>>2]=H[c+40>>2];H[b+364>>2]=d;d=H[c+28>>2];H[b+344>>2]=H[c+24>>2];H[b+348>>2]=d;d=H[c+12>>2];H[b+328>>2]=H[c+8>>2];H[b+332>>2]=d;r=L[l+32>>2];g=g>k?k:g;L[a>>2]=g>r?r:g;Oa=l+48|0}function zA(a,b,c,d){var e=0,f=0,g=0,h=0,i=O(0),j=0,k=0,l=0;e=Oa-320|0;Oa=e;f=H[a>>2];a:{if((f|0)==H[a+4>>2]){Ra[H[H[f>>2]+152>>2]](f,J[a+8>>1],J[a+10>>1],e+160|0,e+128|0);f=H[e+172>>2];H[e+312>>2]=H[e+168>>2];H[e+316>>2]=f;f=H[e+164>>2];H[e+304>>2]=H[e+160>>2];H[e+308>>2]=f;f=H[e+180>>2];H[e+288>>2]=H[e+176>>2];H[e+292>>2]=f;f=H[e+188>>2];H[e+296>>2]=H[e+184>>2];H[e+300>>2]=f;f=H[e+132>>2];H[e+272>>2]=H[e+128>>2];H[e+276>>2]=f;f=H[e+140>>2];H[e+280>>2]=H[e+136>>2];H[e+284>>2]=f;f=H[e+148>>2];H[e+256>>2]=H[e+144>>2];H[e+260>>2]=f;f=H[e+156>>2];H[e+264>>2]=H[e+152>>2];H[e+268>>2]=f;f=H[a>>2];Ra[H[H[f>>2]+120>>2]](e+96|0,f,J[a+8>>1]);f=H[a+4>>2];Ra[H[H[f>>2]+120>>2]](e- -64|0,f,J[a+10>>1]);f=H[e+108>>2];H[e+248>>2]=H[e+104>>2];H[e+252>>2]=f;f=H[e+100>>2];H[e+240>>2]=H[e+96>>2];H[e+244>>2]=f;f=H[e+116>>2];H[e+224>>2]=H[e+112>>2];H[e+228>>2]=f;f=H[e+124>>2];H[e+232>>2]=H[e+120>>2];H[e+236>>2]=f;f=H[e+68>>2];H[e+208>>2]=H[e+64>>2];H[e+212>>2]=f;f=H[e+76>>2];H[e+216>>2]=H[e+72>>2];H[e+220>>2]=f;f=H[e+84>>2];H[e+192>>2]=H[e+80>>2];H[e+196>>2]=f;f=H[e+92>>2];H[e+200>>2]=H[e+88>>2];H[e+204>>2]=f;break a}g=J[a+8>>1];b:{if((g|0)==65535){g=H[f+4>>2];h=H[f>>2];i=L[f+8>>2];H[e+316>>2]=0;L[e+312>>2]=i;H[e+304>>2]=h;H[e+308>>2]=g;g=H[f+20>>2];h=H[f+16>>2];i=L[f+24>>2];H[e+300>>2]=0;L[e+296>>2]=i;H[e+288>>2]=h;H[e+292>>2]=g;g=H[f+52>>2];h=H[f+48>>2];i=L[f+56>>2];H[e+252>>2]=0;L[e+248>>2]=i;H[e+240>>2]=h;H[e+244>>2]=g;g=H[f+36>>2];h=H[f+32>>2];i=L[f+40>>2];H[e+236>>2]=0;L[e+232>>2]=i;H[e+224>>2]=h;H[e+228>>2]=g;break b}Ra[H[H[f>>2]+156>>2]](e+160|0,f,g);f=H[a>>2];Ra[H[H[f>>2]+120>>2]](e+128|0,f,J[a+8>>1]);f=H[e+172>>2];H[e+312>>2]=H[e+168>>2];H[e+316>>2]=f;f=H[e+164>>2];H[e+304>>2]=H[e+160>>2];H[e+308>>2]=f;f=H[e+180>>2];H[e+288>>2]=H[e+176>>2];H[e+292>>2]=f;f=H[e+188>>2];H[e+296>>2]=H[e+184>>2];H[e+300>>2]=f;f=H[e+132>>2];H[e+240>>2]=H[e+128>>2];H[e+244>>2]=f;f=H[e+140>>2];H[e+248>>2]=H[e+136>>2];H[e+252>>2]=f;f=H[e+148>>2];H[e+224>>2]=H[e+144>>2];H[e+228>>2]=f;f=H[e+156>>2];H[e+232>>2]=H[e+152>>2];H[e+236>>2]=f}f=J[a+10>>1];if((f|0)==65535){f=H[a+4>>2];g=H[f+4>>2];h=H[f>>2];i=L[f+8>>2];H[e+284>>2]=0;L[e+280>>2]=i;H[e+272>>2]=h;H[e+276>>2]=g;i=L[f+24>>2];g=H[f+20>>2];h=H[f+16>>2];H[e+268>>2]=0;L[e+264>>2]=i;H[e+256>>2]=h;H[e+260>>2]=g;i=L[f+56>>2];g=H[f+52>>2];h=H[f+48>>2];H[e+220>>2]=0;L[e+216>>2]=i;H[e+208>>2]=h;H[e+212>>2]=g;i=L[f+40>>2];g=H[f+36>>2];f=H[f+32>>2];H[e+204>>2]=0;L[e+200>>2]=i;H[e+192>>2]=f;H[e+196>>2]=g;break a}g=H[a+4>>2];Ra[H[H[g>>2]+156>>2]](e+160|0,g,f);f=H[a+4>>2];Ra[H[H[f>>2]+120>>2]](e+128|0,f,J[a+10>>1]);f=H[e+172>>2];H[e+280>>2]=H[e+168>>2];H[e+284>>2]=f;f=H[e+164>>2];H[e+272>>2]=H[e+160>>2];H[e+276>>2]=f;f=H[e+180>>2];H[e+256>>2]=H[e+176>>2];H[e+260>>2]=f;f=H[e+188>>2];H[e+264>>2]=H[e+184>>2];H[e+268>>2]=f;f=H[e+132>>2];H[e+208>>2]=H[e+128>>2];H[e+212>>2]=f;f=H[e+140>>2];H[e+216>>2]=H[e+136>>2];H[e+220>>2]=f;f=H[e+148>>2];H[e+192>>2]=H[e+144>>2];H[e+196>>2]=f;f=H[e+156>>2];H[e+200>>2]=H[e+152>>2];H[e+204>>2]=f}H[e+168>>2]=0;H[e+172>>2]=0;H[e+160>>2]=0;H[e+164>>2]=0;H[e+136>>2]=0;H[e+140>>2]=0;H[e+128>>2]=0;H[e+132>>2]=0;H[e+104>>2]=0;H[e+108>>2]=0;H[e+96>>2]=0;H[e+100>>2]=0;H[e+72>>2]=0;H[e+76>>2]=0;H[e+64>>2]=0;H[e+68>>2]=0;yA(a,e+304|0,e+272|0,e+288|0,e+256|0,e+240|0,e+208|0,e+224|0,e+192|0,e+160|0,e+128|0,e+96|0,e- -64|0,b,c);g=J[a+8>>1];f=H[a>>2];c:{if((f|0)==H[a+4>>2]){Ra[H[H[f>>2]+132>>2]](f,g,e+160|0,e+96|0,J[a+10>>1],e+128|0,e- -64|0,H[d+32>>2],H[d+36>>2]);break c}d:{if((g|0)==65535){g=H[e+308>>2];h=H[e+304>>2];L[f+8>>2]=L[e+312>>2];H[f>>2]=h;H[f+4>>2]=g;b=L[e+296>>2];g=H[e+292>>2];f=H[a>>2];H[f+16>>2]=H[e+288>>2];H[f+20>>2]=g;L[f+24>>2]=b;break d}h=H[d+36>>2];j=H[d+32>>2];l=H[H[f>>2]+128>>2];k=H[e+172>>2];H[e+56>>2]=H[e+168>>2];H[e+60>>2]=k;k=H[e+164>>2];H[e+48>>2]=H[e+160>>2];H[e+52>>2]=k;k=H[e+100>>2];H[e+32>>2]=H[e+96>>2];H[e+36>>2]=k;k=H[e+108>>2];H[e+40>>2]=H[e+104>>2];H[e+44>>2]=k;Ra[l|0](f,g,e+48|0,e+32|0,j,h)}f=J[a+10>>1];if((f|0)==65535){f=H[e+276>>2];g=H[e+272>>2];d=H[a+4>>2];L[d+8>>2]=L[e+280>>2];H[d>>2]=g;H[d+4>>2]=f;b=L[e+264>>2];d=H[e+260>>2];a=H[a+4>>2];H[a+16>>2]=H[e+256>>2];H[a+20>>2]=d;L[a+24>>2]=b;break c}g=H[d+36>>2];d=H[d+32>>2];a=H[a+4>>2];h=H[H[a>>2]+128>>2];j=H[e+140>>2];H[e+24>>2]=H[e+136>>2];H[e+28>>2]=j;j=H[e+132>>2];H[e+16>>2]=H[e+128>>2];H[e+20>>2]=j;j=H[e+68>>2];H[e>>2]=H[e+64>>2];H[e+4>>2]=j;j=H[e+76>>2];H[e+8>>2]=H[e+72>>2];H[e+12>>2]=j;Ra[h|0](a,f,e+16|0,e,d,g)}Oa=e+320|0}function Wy(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,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;l=H[a+36>>2];b=Oa-80|0;Oa=b;o=H[a+32>>2];p=H[o+412>>2];g=H[a+28>>2];B=H[g+108>>2];C=H[g+104>>2];k=yq(H[g+584>>2],32);d=H[g+604>>2];e=H[g+600>>2];H[k+24>>2]=0;H[k+16>>2]=0;H[k+8>>2]=e;H[k+12>>2]=d;H[k+28>>2]=g;H[k>>2]=113748;H[k+20>>2]=l;H[k+24>>2]=1;if(l){Ra[H[H[l>>2]+16>>2]](l);H[k+16>>2]=H[H[k+20>>2]+16>>2]}if(p){u=g+544|0;y=H[o+408>>2];d=0;l=0;while(1){H[b+32>>2]=0;H[b+28>>2]=H[g+428>>2]+(z<<2);e=t<<2;H[b+24>>2]=e+H[g+416>>2];H[b+36>>2]=H[g+520>>2]+(A<<4);c=v<<5;H[b+56>>2]=c+H[g+344>>2];H[b+60>>2]=c+H[g+356>>2];H[b+64>>2]=c+H[g+368>>2];H[b+68>>2]=H[g+380>>2]+(v<<3);H[b+72>>2]=H[g+392>>2]+(t<<5);c=H[g+404>>2];H[b+40>>2]=(d<<2)+y;H[b+76>>2]=c+e;i=H[g+496>>2];H[b+48>>2]=i;H[b+52>>2]=e+H[g+508>>2];w=0;m=0;n=0;e=0;q=0;a:{if(d>>>0>=p>>>0){break a}f=H[o+256>>2];l=d;while(1){if(!(!w|n>>>0>>0)|m>>>0>=B>>>0){break a}c=f+N(H[(l<<2)+y>>2],44)|0;q=H[c+36>>2]+q|0;e=H[c+40>>2]+e|0;w=q+e|0;n=H[c+8>>2]+n|0;m=H[c+12>>2]+m|0;l=l+1|0;if((p|0)!=(l|0)){continue}break}l=p}H[b+44>>2]=l-d;H[b+20>>2]=e;H[b+16>>2]=q;d=m&2147483647;H[b+12>>2]=d|H[b+12>>2]&-2147483648;H[b+8>>2]=n;if((d|0)!=(0-n|0)){r=H[g+532>>2]+t|0;e=H[g+540>>2];x=I[g+65|0];f=H[g+584>>2];j=yq(f,20);H[j>>2]=0;d=H[b+12>>2];H[j+4>>2]=H[b+8>>2];H[j+8>>2]=d;d=H[b+20>>2];H[j+12>>2]=H[b+16>>2];H[j+16>>2]=d;d=yq(f,120);c=H[g+532>>2];h=H[g+600>>2];s=H[g+604>>2];H[d+24>>2]=0;H[d+16>>2]=0;H[d+20>>2]=0;H[d+8>>2]=h;H[d+12>>2]=s;H[d+32>>2]=j;H[d+28>>2]=g;H[d>>2]=113244;h=H[b+28>>2];H[d+36>>2]=H[b+24>>2];H[d+40>>2]=h;h=H[b+36>>2];H[d+44>>2]=H[b+32>>2];H[d+48>>2]=h;h=H[b+44>>2];H[d+52>>2]=H[b+40>>2];H[d+56>>2]=h;h=H[b+52>>2];H[d+60>>2]=H[b+48>>2];H[d+64>>2]=h;h=H[b+60>>2];H[d+68>>2]=H[b+56>>2];H[d+72>>2]=h;h=H[b+68>>2];H[d+76>>2]=H[b+64>>2];H[d+80>>2]=h;h=H[b+76>>2];H[d+84>>2]=H[b+72>>2];H[d+88>>2]=h;F[d+116|0]=x;H[d+112>>2]=u;H[d+108>>2]=e;H[d+104>>2]=i;H[d+100>>2]=o;H[d+96>>2]=c;H[d+92>>2]=r;e=yq(f,104);c=H[g+600>>2];i=H[g+604>>2];H[e+24>>2]=0;H[e+16>>2]=0;H[e+20>>2]=0;H[e+8>>2]=c;H[e+12>>2]=i;H[e+32>>2]=j;H[e+28>>2]=g;H[e>>2]=113412;c=H[b+28>>2];H[e+36>>2]=H[b+24>>2];H[e+40>>2]=c;c=H[b+36>>2];H[e+44>>2]=H[b+32>>2];H[e+48>>2]=c;c=H[b+44>>2];H[e+52>>2]=H[b+40>>2];H[e+56>>2]=c;c=H[b+52>>2];H[e+60>>2]=H[b+48>>2];H[e+64>>2]=c;c=H[b+60>>2];H[e+68>>2]=H[b+56>>2];H[e+72>>2]=c;c=H[b+68>>2];H[e+76>>2]=H[b+64>>2];H[e+80>>2]=c;c=H[b+76>>2];H[e+84>>2]=H[b+72>>2];H[e+88>>2]=c;H[e+96>>2]=u;H[e+92>>2]=r;i=yq(f,48);c=H[g+600>>2];h=H[g+604>>2];H[i+24>>2]=0;H[i+16>>2]=0;H[i+20>>2]=0;H[i+8>>2]=c;H[i+12>>2]=h;F[i+44|0]=x;H[i+40>>2]=u;H[i+36>>2]=r;H[i+32>>2]=j;H[i+28>>2]=g;H[i>>2]=113144;c=yq(f,104);h=H[g+600>>2];s=H[g+604>>2];H[c+24>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=h;H[c+12>>2]=s;H[c+32>>2]=j;H[c+28>>2]=g;H[c>>2]=113468;h=H[b+28>>2];H[c+36>>2]=H[b+24>>2];H[c+40>>2]=h;h=H[b+36>>2];H[c+44>>2]=H[b+32>>2];H[c+48>>2]=h;h=H[b+44>>2];H[c+52>>2]=H[b+40>>2];H[c+56>>2]=h;h=H[b+52>>2];H[c+60>>2]=H[b+48>>2];H[c+64>>2]=h;h=H[b+60>>2];H[c+68>>2]=H[b+56>>2];H[c+72>>2]=h;h=H[b+68>>2];H[c+76>>2]=H[b+64>>2];H[c+80>>2]=h;h=H[b+76>>2];H[c+84>>2]=H[b+72>>2];H[c+88>>2]=h;H[c+96>>2]=o+168;H[c+92>>2]=r;f=yq(f,104);h=H[g+600>>2];s=H[g+604>>2];H[f+24>>2]=0;H[f+16>>2]=0;H[f+20>>2]=0;H[f+8>>2]=h;H[f+12>>2]=s;H[f+32>>2]=j;H[f+28>>2]=g;H[f>>2]=113580;j=H[b+28>>2];H[f+36>>2]=H[b+24>>2];H[f+40>>2]=j;j=H[b+36>>2];H[f+44>>2]=H[b+32>>2];H[f+48>>2]=j;j=H[b+44>>2];H[f+52>>2]=H[b+40>>2];H[f+56>>2]=j;j=H[b+52>>2];H[f+60>>2]=H[b+48>>2];H[f+64>>2]=j;j=H[b+60>>2];H[f+68>>2]=H[b+56>>2];H[f+72>>2]=j;j=H[b+68>>2];H[f+76>>2]=H[b+64>>2];H[f+80>>2]=j;j=H[b+76>>2];H[f+84>>2]=H[b+72>>2];H[f+88>>2]=j;F[f+96|0]=x;H[f+92>>2]=r;H[e+20>>2]=k;H[e+24>>2]=1;if(k){Ra[H[H[k>>2]+16>>2]](k);H[e+16>>2]=H[H[e+20>>2]+16>>2]}H[c+20>>2]=e;H[c+24>>2]=1;Ra[H[H[e>>2]+16>>2]](e);H[c+16>>2]=H[H[c+20>>2]+16>>2];Ra[H[H[e>>2]+20>>2]](e);H[i+20>>2]=c;H[i+24>>2]=1;Ra[H[H[c>>2]+16>>2]](c);H[i+16>>2]=H[H[i+20>>2]+16>>2];Ra[H[H[c>>2]+20>>2]](c);H[f+20>>2]=i;H[f+24>>2]=1;Ra[H[H[i>>2]+16>>2]](i);H[f+16>>2]=H[H[f+20>>2]+16>>2];Ra[H[H[i>>2]+20>>2]](i);H[d+20>>2]=f;H[d+24>>2]=1;Ra[H[H[f>>2]+16>>2]](f);H[d+16>>2]=H[H[d+20>>2]+16>>2];Ra[H[H[f>>2]+20>>2]](f);Ra[H[H[d>>2]+20>>2]](d)}A=q+A|0;z=m+z|0;t=n+t|0;v=(v+w|0)+(m<<6)|0;d=l;if(p>>>0>d>>>0){continue}break}}Ra[H[H[k>>2]+20>>2]](k);Oa=b+80|0;a=H[a+36>>2];Ra[H[H[a>>2]+20>>2]](a)}function m$(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=O(0),i=0,j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=0,D=O(0),E=0;g=Oa-288|0;Oa=g;a:{b:{if(F[a+9|0]&1){C=I[a+12|0];i=C?e:d;h=L[i+8>>2];l=L[i>>2];m=L[i+4>>2];i=H[a+20>>2];k=L[i+40>>2];w=L[i+28>>2];x=L[i+16>>2];y=L[i+36>>2];s=L[c+8>>2];t=L[i+24>>2];u=L[c>>2];j=L[i>>2];n=L[c+4>>2];o=L[i+12>>2];z=L[i+4>>2];A=L[i+44>>2];p=L[i+8>>2];c=C?d:e;q=L[c>>2];B=L[i+20>>2];r=L[c+4>>2];v=L[i+32>>2];D=L[c+8>>2];L[g+80>>2]=A+O(O(O(p*q)+O(B*r))+O(v*D));L[g+76>>2]=k+O(O(O(z*q)+O(x*r))+O(w*D));L[g+68>>2]=A+O(O(O(p*l)+O(B*m))+O(v*h));L[g- -64>>2]=k+O(O(O(z*l)+O(x*m))+O(w*h));L[g+48>>2]=y+O(O(O(u*j)+O(n*o))+O(s*t));L[g+72>>2]=y+O(O(O(j*q)+O(o*r))+O(t*D));L[g+60>>2]=y+O(O(O(j*l)+O(o*m))+O(t*h));L[g+56>>2]=A+O(O(O(u*p)+O(n*B))+O(s*v));L[g+52>>2]=k+O(O(O(u*z)+O(n*x))+O(s*w));H[g+144>>2]=2139095039;d=k1(g+48|0,H[a+48>>2]+48|0,H[a+52>>2],a+164|0,L[a+24>>2],g+144|0,!I[a+176|0]);if(d){h=L[g+144>>2];if(!(h<=L[a+24>>2])){break b}L[a+24>>2]=h;L[f>>2]=h*L[a+16>>2];l=L[g+48>>2];m=L[g+52>>2];k=L[g+56>>2];H[a+124>>2]=0;L[a+120>>2]=k;L[a+116>>2]=m;L[a+112>>2]=l;c=H[a+56>>2];w=L[c>>2];x=L[c+4>>2];y=L[c+8>>2];H[a+140>>2]=0;F[a+10|0]=1;L[a+136>>2]=-y;L[a+132>>2]=-x;L[a+128>>2]=-w;H[a+160>>2]=H[b+8>>2];L[a+64>>2]=l;L[a+68>>2]=m;L[a+72>>2]=k;L[a+76>>2]=L[g+60>>2];L[a+80>>2]=L[g+64>>2];L[a+84>>2]=L[g+68>>2];L[a+88>>2]=L[g+72>>2];L[a+92>>2]=L[g+76>>2];L[a+96>>2]=L[g+80>>2];if(h!=O(0)){break b}F[a+11|0]=1}a=!d;break a}H[g+224>>2]=0;i=H[a+20>>2];h=L[i+44>>2];t=L[i+8>>2];E=I[a+12|0];C=E?d:e;l=L[C>>2];u=L[i+20>>2];m=L[C+4>>2];j=L[i+32>>2];k=L[C+8>>2];w=O(h+O(O(O(t*l)+O(u*m))+O(j*k)));n=L[i+40>>2];o=L[i+4>>2];z=L[i+16>>2];A=L[i+28>>2];x=O(n+O(O(O(o*l)+O(z*m))+O(A*k)));s=L[i+36>>2];p=L[i>>2];q=L[i+12>>2];B=L[i+24>>2];y=O(s+O(O(O(p*l)+O(q*m))+O(B*k)));d=E?e:d;k=L[d>>2];r=L[d+4>>2];v=L[d+8>>2];l=O(h+O(O(O(t*k)+O(u*r))+O(j*v)));m=O(n+O(O(O(o*k)+O(z*r))+O(A*v)));k=O(s+O(O(O(p*k)+O(q*r))+O(B*v)));r=L[c>>2];v=O(r*p);p=L[c+4>>2];v=O(v+O(p*q));q=L[c+8>>2];s=O(O(v+O(q*B))+s);t=O(O(O(O(r*t)+O(p*u))+O(q*j))+h);u=O(O(O(O(r*o)+O(p*z))+O(q*A))+n);if(!I[a+176|0]){h=O(y-k);j=O(u-m);n=O(s-k);o=O(x-m);r=O(O(O(h*j)-O(n*o))*L[a+152>>2]);p=o;o=O(t-l);q=j;j=O(w-l);if(O(r+O(O(O(O(p*o)-O(q*j))*L[a+144>>2])+O(O(O(j*n)-O(o*h))*L[a+148>>2])))>=O(0)){break b}}H[g+216>>2]=0;H[g+220>>2]=0;H[g+208>>2]=0;H[g+212>>2]=0;c=H[a+48>>2];h=L[c+52>>2];j=L[c+56>>2];n=L[c+48>>2];H[g+204>>2]=0;L[g+200>>2]=j;L[g+196>>2]=h;F[g+176|0]=0;H[g+172>>2]=3;H[g+144>>2]=0;H[g+148>>2]=0;H[g+152>>2]=0;H[g+156>>2]=0;L[g+192>>2]=n;h=h>=n?n:h;h=h<=j?h:j;j=O(h*O(.05000000074505806));L[g+168>>2]=j;L[g+164>>2]=j;L[g+160>>2]=h*O(.15000000596046448);H[g+140>>2]=0;L[g+136>>2]=w;L[g+132>>2]=x;L[g+128>>2]=y;H[g+124>>2]=0;L[g+120>>2]=l;L[g+116>>2]=m;L[g+112>>2]=k;H[g+108>>2]=0;L[g+104>>2]=t;L[g+100>>2]=u;F[g+80|0]=0;H[g+72>>2]=2139095039;H[g+76>>2]=5;H[g+60>>2]=0;H[g+64>>2]=0;H[g+68>>2]=2139095039;L[g+96>>2]=s;h=O(O(O(s+k)+y)*O(.33333298563957214));L[g+48>>2]=h;j=O(O(O(u+m)+x)*O(.33333298563957214));L[g+52>>2]=j;n=O(O(O(t+l)+w)*O(.33333298563957214));L[g+56>>2]=n;H[g+24>>2]=126656;H[g+28>>2]=g+48;H[g+16>>2]=126608;H[g+20>>2]=g+144;H[g+12>>2]=0;L[g+8>>2]=n-L[g+152>>2];L[g+4>>2]=j-L[g+148>>2];L[g>>2]=h-L[g+144>>2];c:{c=TW(g+24|0,g+16|0,g,g+208|0,a+144|0,g+240|0,g+256|0,g+272|0,L[a+60>>2]);if(c){h=L[g+240>>2];d=H[g+276>>2];H[a+112>>2]=H[g+272>>2];H[a+116>>2]=d;d=H[g+284>>2];H[a+120>>2]=H[g+280>>2];H[a+124>>2]=d;d=H[g+260>>2];H[g+32>>2]=H[g+256>>2];H[g+36>>2]=d;d=H[g+268>>2];H[g+40>>2]=H[g+264>>2];H[g+44>>2]=d;F[a+10|0]=1;H[a+160>>2]=H[b+8>>2];if(!(h<=L[g+224>>2])){break c}F[a+11|0]=1;H[f>>2]=0;b=H[g+236>>2];H[a+40>>2]=H[g+232>>2];H[a+44>>2]=b;b=H[g+228>>2];H[a+32>>2]=H[g+224>>2];H[a+36>>2]=b;H[a+24>>2]=0;b=H[a+56>>2];h=L[b>>2];l=L[b+4>>2];m=L[b+8>>2];H[a+140>>2]=0;L[a+136>>2]=-m;L[a+132>>2]=-l;L[a+128>>2]=-h}a=c^1;break a}H[a+156>>2]=0;j=O(h*L[a+24>>2]);L[a+24>>2]=j;L[a+144>>2]=h*L[a+144>>2];L[a+32>>2]=h*L[a+32>>2];L[a+148>>2]=h*L[a+148>>2];L[a+152>>2]=h*L[a+152>>2];b=H[g+44>>2];H[a+136>>2]=H[g+40>>2];H[a+140>>2]=b;b=H[g+36>>2];H[a+128>>2]=H[g+32>>2];H[a+132>>2]=b;h=O(j*L[a+16>>2]);if(h>2]){L[f>>2]=h}L[a+64>>2]=s;L[a+96>>2]=w;L[a+92>>2]=x;L[a+88>>2]=y;L[a+84>>2]=l;L[a+80>>2]=m;L[a+76>>2]=k;L[a+72>>2]=t;L[a+68>>2]=u}a=1}Oa=g+288|0;return a|0}function KX(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=e|0;f=f|0;g=O(g);h=h|0;i=i|0;j=O(j);k=k|0;l=O(l);var m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=0,y=O(0),z=O(0),A=0,B=O(0),C=O(0),D=O(0),E=0,G=O(0),J=0,K=O(0),M=O(0),P=O(0),Q=O(0),R=0;k=Oa-576|0;Oa=k;b=H[b>>2];a=H[a>>2];F[k+192|0]=0;H[k+184>>2]=0;H[k+188>>2]=0;H[k+176>>2]=0;H[k+180>>2]=0;H[k+168>>2]=0;H[k+172>>2]=0;H[k+160>>2]=0;H[k+164>>2]=0;x=H[a+40>>2];j=L[a+4>>2];l=L[a+8>>2];q=L[a+12>>2];H[k+12>>2]=0;L[k+8>>2]=q;L[k+4>>2]=l;L[k>>2]=j;A=H[a+16>>2];E=H[a+20>>2];J=H[a+28>>2];H[k+344>>2]=H[a+24>>2];H[k+348>>2]=J;H[k+336>>2]=A;H[k+340>>2]=E;H[k+304>>2]=x;H[k+312>>2]=H[x+40>>2]+N(I[x+39|0],20);F[k+316|0]=I[x+38|0];m=O(j*L[x+52>>2]);s=O(l*L[x+56>>2]);m=m<=s?m:s;s=O(q*L[x+60>>2]);m=m<=s?m:s;L[k+184>>2]=m*O(.02500000037252903);L[k+176>>2]=m*O(.10000000149011612);L[k+180>>2]=m*O(.05000000074505806);A=k+336|0;E=k+160|0;CU(k,A,k+208|0,k+256|0,E,j==O(1)&l==O(1)&q==O(1));H[k+308>>2]=H[x+44>>2];F[k+32|0]=0;H[k+24>>2]=0;H[k+28>>2]=0;H[k+16>>2]=0;H[k+20>>2]=0;H[k+8>>2]=0;H[k+12>>2]=0;H[k>>2]=0;H[k+4>>2]=0;a=H[b+40>>2];j=L[b+4>>2];l=L[b+8>>2];q=L[b+12>>2];H[k+348>>2]=0;L[k+344>>2]=q;L[k+340>>2]=l;L[k+336>>2]=j;x=H[b+16>>2];J=H[b+20>>2];R=H[b+28>>2];H[k+504>>2]=H[b+24>>2];H[k+508>>2]=R;H[k+496>>2]=x;H[k+500>>2]=J;H[k+144>>2]=a;H[k+152>>2]=H[a+40>>2]+N(I[a+39|0],20);F[k+156|0]=I[a+38|0];m=O(j*L[a+52>>2]);s=O(l*L[a+56>>2]);m=m<=s?m:s;s=O(q*L[a+60>>2]);m=m<=s?m:s;L[k+24>>2]=m*O(.02500000037252903);L[k+16>>2]=m*O(.10000000149011612);L[k+20>>2]=m*O(.05000000074505806);b=k+496|0;CU(A,b,k+48|0,k+96|0,k,j==O(1)&l==O(1)&q==O(1));H[k+148>>2]=H[a+44>>2];H[k+568>>2]=0;H[k+572>>2]=0;H[k+560>>2]=0;H[k+564>>2]=0;K=L[f+20>>2];B=L[e+20>>2];z=L[f+24>>2];C=L[e+24>>2];o=L[c+8>>2];t=L[c>>2];u=L[c+4>>2];r=L[c+12>>2];q=L[d+12>>2];m=L[d>>2];M=L[f+16>>2];D=L[e+16>>2];j=L[d+4>>2];l=L[d+8>>2];H[k+556>>2]=0;H[k+540>>2]=0;H[k+524>>2]=0;G=O(-m);n=O(D-M);p=O(B-K);w=O(C-z);y=O(O(O(G*n)-O(p*j))-O(l*w));s=O(O(q*q)+O(-.5));v=O(O(O(q*O(O(j*n)-O(m*p)))+O(s*w))-O(l*y));L[k+552>>2]=v+v;v=O(O(O(s*p)+O(q*O(O(m*w)-O(l*n))))-O(j*y));L[k+548>>2]=v+v;a=k+544|0;n=O(O(O(s*n)+O(q*O(O(l*p)-O(j*w))))-O(m*y));L[a>>2]=n+n;p=O(O(O(u*l)-O(j*o))+O(O(t*q)-O(r*m)));n=O(p+p);w=O(O(O(o*m)-O(l*t))+O(O(u*q)-O(r*j)));y=O(w+w);v=O(O(1)-O(p*n));P=O(w*y);L[k+536>>2]=v-P;p=O(O(O(t*j)-O(m*u))+O(O(o*q)-O(r*l)));Q=O(p*y);o=O(O(r*q)-O(O(O(G*t)-O(u*j))-O(l*o)));t=O(o*n);L[k+532>>2]=Q-t;u=O(p*n);r=O(o*y);L[k+528>>2]=u+r;L[k+520>>2]=Q+t;t=O(p+p);p=O(p*t);L[k+516>>2]=v-p;n=O(w*n);o=O(o*t);L[k+512>>2]=n-o;H[k+508>>2]=0;L[k+504>>2]=u-r;L[k+500>>2]=n+o;L[k+496>>2]=O(O(1)-P)-p;u=L[d+20>>2];r=L[c+20>>2];o=L[d+24>>2];t=L[c+24>>2];n=L[d+16>>2];p=L[c+16>>2];H[k+492>>2]=0;y=O(t-C);o=O(O(o-z)-y);C=O(p-D);t=O(O(n-M)-C);B=O(r-B);u=O(O(u-K)-B);r=O(O(l*o)+O(O(m*t)+O(j*u)));n=O(O(O(s*o)-O(q*O(O(m*u)-O(j*t))))+O(l*r));L[k+488>>2]=n+n;n=O(O(j*r)+O(O(s*u)-O(q*O(O(l*t)-O(o*m)))));L[k+484>>2]=n+n;o=O(O(m*r)+O(O(s*t)-O(q*O(O(j*o)-O(u*l)))));L[k+480>>2]=o+o;H[k+416>>2]=0;H[k+336>>2]=126316;H[k+344>>2]=b;H[k+340>>2]=E;b=H[k+516>>2];H[k+368>>2]=H[k+512>>2];H[k+372>>2]=b;b=H[k+524>>2];H[k+376>>2]=H[k+520>>2];H[k+380>>2]=b;b=H[k+508>>2];H[k+360>>2]=H[k+504>>2];H[k+364>>2]=b;b=H[k+532>>2];H[k+384>>2]=H[k+528>>2];H[k+388>>2]=b;b=H[k+540>>2];H[k+392>>2]=H[k+536>>2];H[k+396>>2]=b;b=H[a+4>>2];H[k+400>>2]=H[a>>2];H[k+404>>2]=b;b=H[k+556>>2];H[k+408>>2]=H[k+552>>2];H[k+412>>2]=b;b=H[k+500>>2];H[k+352>>2]=H[k+496>>2];H[k+356>>2]=b;o=L[k+356>>2];L[k+356>>2]=L[k+368>>2];t=L[k+376>>2];u=L[k+360>>2];L[k+360>>2]=L[k+384>>2];L[k+376>>2]=L[k+388>>2];L[k+384>>2]=u;L[k+388>>2]=t;L[k+368>>2]=o;H[k+328>>2]=126016;H[k+332>>2]=k;o=O(3.4028234663852886e38);if(JW(A,k+328|0,a,k+560|0,k+480|0,k+464|0,k+432|0,k+448|0,O(g+O(0)),1)){o=L[k+464>>2];g=L[k+456>>2];t=L[k+448>>2];u=L[k+452>>2];r=L[k+440>>2];n=L[k+432>>2];p=L[k+436>>2];w=O(O(l*r)+O(O(m*n)+O(j*p)));D=O(-j);v=O(O(O(q*O(O(m*p)+O(n*D)))+O(s*r))+O(l*w));L[h+8>>2]=v+v;v=O(O(j*w)+O(O(s*p)+O(q*O(O(l*n)+O(r*G)))));L[h+4>>2]=v+v;v=p;p=O(-l);r=O(O(m*w)+O(O(s*n)+O(q*O(O(j*r)+O(v*p)))));L[h>>2]=r+r;r=o>O(0)?o:O(0);v=z;n=O(O(l*g)+O(O(m*t)+O(j*u)));z=O(O(O(q*O(O(m*u)+O(t*D)))+O(s*g))+O(l*n));L[i+8>>2]=O(y*r)+O(v+O(z+z));l=O(O(j*n)+O(O(s*u)+O(q*O(O(l*t)+O(g*G)))));L[i+4>>2]=O(B*r)+O(K+O(l+l));g=O(O(m*n)+O(O(s*t)+O(q*O(O(j*g)+O(u*p)))));L[i>>2]=O(C*r)+O(M+O(g+g))}Oa=k+576|0;return O(o)}function pY(a,b,c,d,e,f,g,h,i,j,k){var l=0,m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),G=O(0),J=O(0),K=O(0),M=O(0),N=O(0),Q=O(0),R=O(0),S=O(0),T=O(0),U=O(0),V=O(0),W=O(0),X=O(0),Y=O(0),Z=O(0),_=O(0),$=O(0),aa=O(0),ba=O(0),ca=O(0),da=O(0),ea=0;l=Oa-6752|0;Oa=l;ea=H[c+4>>2];H[l+6744>>2]=c;H[l+6740>>2]=ea;p=L[c+8>>2];m=L[c+12>>2];L[l+6736>>2]=O(1)/L[c+16>>2];L[l+6728>>2]=O(1)/m;L[l+6732>>2]=O(1)/p;o=L[d+4>>2];t=O(o+o);p=L[d+8>>2];q=O(t*p);v=L[d>>2];m=O(v+v);n=L[d+12>>2];s=O(m*n);G=O(q-s);L[l+6708>>2]=G;M=O(q+s);L[l+6700>>2]=M;q=O(O(1)-O(v*m));s=O(o*t);N=O(q-s);L[l+6712>>2]=N;r=q;q=O(p+p);A=O(p*q);Q=O(r-A);L[l+6696>>2]=Q;B=O(m*p);t=O(t*n);R=O(B+t);L[l+6704>>2]=R;S=O(O(O(1)-s)-A);L[l+6680>>2]=S;m=O(m*o);q=O(q*n);T=O(m-q);L[l+6692>>2]=T;U=O(m+q);L[l+6684>>2]=U;V=O(B-t);L[l+6688>>2]=V;A=L[d+16>>2];L[l+6716>>2]=A;B=L[d+20>>2];L[l+6720>>2]=B;C=L[d+24>>2];L[l+6724>>2]=C;t=L[e+4>>2];w=O(t+t);m=L[e+8>>2];r=O(w*m);s=L[e>>2];u=O(s+s);q=L[e+12>>2];x=O(u*q);L[l+6660>>2]=r-x;L[l+6652>>2]=r+x;r=O(O(1)-O(s*u));x=O(t*w);L[l+6664>>2]=r-x;z=r;r=O(m+m);D=O(m*r);L[l+6648>>2]=z-D;y=O(u*m);w=O(w*q);L[l+6656>>2]=y+w;u=O(u*t);r=O(r*q);L[l+6644>>2]=u-r;L[l+6640>>2]=y-w;L[l+6636>>2]=u+r;L[l+6632>>2]=O(O(1)-x)-D;r=L[e+16>>2];L[l+6668>>2]=r;x=L[e+20>>2];L[l+6672>>2]=x;D=L[e+24>>2];L[l+6676>>2]=D;H[l+6628>>2]=1088;F[l+6616|0]=1;c=l+2264|0;H[l+6620>>2]=c;H[l+1312>>2]=0;H[l+24>>2]=127412;H[l+28>>2]=c;S6(l+1184|0,255,128);H[l+2084>>2]=0;S6(l+1956|0,255,128);H[l+2248>>2]=i;H[l+2244>>2]=e;H[l+2240>>2]=d;L[l+2236>>2]=g;F[l+2233|0]=k;L[l+2228>>2]=h;L[l+2224>>2]=f;H[l+2220>>2]=j;H[l+2208>>2]=a;f=O(r-A);f=O(f+f);g=O(x-B);g=O(g+g);h=O(D-C);h=O(h+h);u=O(O(O(O(-v)*f)-O(g*o))-O(p*h));w=O(O(n*n)+O(-.5));L[l+2180>>2]=O(O(h*w)+O(n*O(O(o*f)-O(v*g))))-O(p*u);L[l+2176>>2]=O(O(g*w)+O(n*O(O(v*h)-O(p*f))))-O(o*u);L[l+2172>>2]=O(O(f*w)+O(n*O(O(p*g)-O(o*h))))-O(v*u);y=O(t*p);J=O(n*s);E=O(q*v);K=O(o*m);f=O(y+O(O(J-E)-K));g=O(f+f);z=O(m*v);W=O(n*t);X=O(q*o);Y=O(p*s);u=O(z+O(O(W-X)-Y));w=O(u+u);Z=O(O(1)-O(f*g));_=O(u*w);L[l+2168>>2]=Z-_;$=O(s*o);aa=O(n*m);ba=O(q*p);ca=O(v*t);h=O($+O(O(aa-ba)-ca));da=O(h*w);f=O(O(m*p)+O(O(t*o)+O(O(q*n)+O(v*s))));p=O(f*g);L[l+2164>>2]=da-p;o=O(h*g);n=O(f*w);L[l+2160>>2]=o+n;L[l+2156>>2]=da+p;v=h;h=O(h+h);p=O(v*h);L[l+2152>>2]=Z-p;g=O(u*g);h=O(f*h);L[l+2148>>2]=g-h;L[l+2144>>2]=o-n;L[l+2140>>2]=g+h;L[l+2136>>2]=O(O(1)-_)-p;g=O(A-r);g=O(g+g);h=O(B-x);h=O(h+h);p=O(C-D);p=O(p+p);o=O(O(O(O(-s)*g)-O(h*t))-O(m*p));n=O(O(q*q)+O(-.5));v=O(O(O(p*n)+O(q*O(O(t*g)-O(s*h))))-O(m*o));L[l+2132>>2]=v;u=O(O(O(h*n)+O(q*O(O(s*p)-O(m*g))))-O(t*o));L[l+2128>>2]=u;t=O(O(O(g*n)+O(q*O(O(m*h)-O(t*p))))-O(s*o));L[l+2124>>2]=t;p=O(K+O(O(E-J)-y));m=O(p+p);h=O(Y+O(O(X-W)-z));o=O(h+h);n=O(O(1)-O(p*m));E=O(h*o);q=O(n-E);L[l+2120>>2]=q;g=O(ca+O(O(ba-aa)-$));r=O(g*o);x=O(f*m);s=O(r-x);L[l+2116>>2]=s;y=O(g*m);o=O(f*o);w=O(y+o);L[l+2112>>2]=w;r=O(r+x);L[l+2108>>2]=r;z=n;n=O(g+g);K=O(g*n);x=O(z-K);L[l+2104>>2]=x;m=O(h*m);n=O(f*n);D=O(m-n);L[l+2100>>2]=D;y=O(y-o);L[l+2096>>2]=y;J=O(m+n);L[l+2092>>2]=J;E=O(O(O(1)-E)-K);L[l+2088>>2]=E;H[l+2216>>2]=l+6632;H[l+2212>>2]=l+6680;c=l+2252|0;F[c|0]=0;H[l+6624>>2]=0;m=L[a>>2];o=L[a+4>>2];n=L[a+8>>2];L[l+2204>>2]=C+O(O(O(V*m)+O(M*o))+O(N*n));L[l+2200>>2]=B+O(O(O(U*m)+O(Q*o))+O(G*n));L[l+2196>>2]=A+O(O(O(S*m)+O(T*o))+O(R*n));L[l+2192>>2]=v+O(O(O(y*m)+O(r*o))+O(q*n));L[l+2188>>2]=u+O(O(O(J*m)+O(x*o))+O(s*n));L[l+2184>>2]=t+O(O(O(E*m)+O(D*o))+O(w*n));a=l+6728|0;H[l+2256>>2]=a;o=L[b+12>>2];n=L[b>>2];A=O(O(o-n)*O(.5));z=r;C=L[b+16>>2];r=L[b+4>>2];B=O(O(C-r)*O(.5));G=O(O(P(O(y*A)))+O(P(O(z*B))));z=q;m=L[b+20>>2];y=L[b+8>>2];q=O(O(m-y)*O(.5));G=O(G+O(P(O(z*q))));z=v;m=O(O(y+m)*O(.5));m=O(m+m);o=O(O(n+o)*O(.5));o=O(o+o);n=O(O(r+C)*O(.5));n=O(n+n);v=O(O(g*m)+O(O(p*o)+O(h*n)));C=O(O(f*f)+O(-.5));r=O(z+O(O(g*v)+O(O(m*C)+O(f*O(O(p*n)-O(o*h))))));L[l+20>>2]=G+r;s=O(O(O(P(O(J*A)))+O(P(O(x*B))))+O(P(O(s*q))));u=O(u+O(O(h*v)+O(O(n*C)+O(f*O(O(g*o)-O(m*p))))));L[l+16>>2]=s+u;q=O(O(O(P(O(E*A)))+O(P(O(D*B))))+O(P(O(w*q))));f=O(t+O(O(p*v)+O(O(o*C)+O(f*O(O(h*m)-O(n*g))))));L[l+12>>2]=q+f;L[l+8>>2]=r-G;L[l+4>>2]=u-s;L[l>>2]=f-q;b=a;a=l+24|0;XZ(b,e,l,0,a);nY(a|4);b=I[c|0];a=H[l+6628>>2];a:{if((a|0)<0|!(a&2147483647)){break a}a=H[l+6620>>2];if((a|0)==(l+2264|0)|!a){break a}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,a)}Oa=l+6752|0;return(b|0)!=0}function QW(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=O(g);h=h|0;i=i|0;j=O(j);var k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),I=O(0),K=O(0),M=O(0),N=O(0),P=O(0),Q=O(0),R=O(0),S=O(0);c=Oa-384|0;Oa=c;H[c+368>>2]=0;H[c+360>>2]=0;H[c+364>>2]=0;H[c+352>>2]=0;H[c+356>>2]=0;w=L[e+52>>2];v=L[e+56>>2];B=L[d+20>>2];u=L[b+20>>2];C=L[d+24>>2];x=L[b+24>>2];Q=L[f+4>>2];R=L[f>>2];S=L[f+8>>2];D=L[e+48>>2];E=L[a+4>>2];I=L[a+8>>2];K=L[a+12>>2];k=L[b+8>>2];m=L[b>>2];r=L[b+4>>2];o=L[b+12>>2];s=L[d+12>>2];t=L[d>>2];M=L[d+16>>2];l=L[b+16>>2];n=L[d+4>>2];q=L[d+8>>2];H[c+348>>2]=0;H[c+332>>2]=0;H[c+316>>2]=0;A=O(-t);l=O(l-M);p=O(u-B);x=O(x-C);z=O(O(O(A*l)-O(p*n))-O(q*x));u=O(O(s*s)+O(-.5));y=O(O(O(s*O(O(n*l)-O(t*p)))+O(u*x))-O(q*z));L[c+344>>2]=y+y;y=O(O(O(u*p)+O(s*O(O(t*x)-O(q*l))))-O(n*z));L[c+340>>2]=y+y;a=c+336|0;l=O(O(O(u*l)+O(s*O(O(q*p)-O(n*x))))-O(t*z));L[a>>2]=l+l;p=O(O(O(r*q)-O(n*k))+O(O(m*s)-O(o*t)));l=O(p+p);x=O(O(O(k*t)-O(q*m))+O(O(r*s)-O(o*n)));z=O(x+x);y=O(O(1)-O(p*l));N=O(x*z);L[c+328>>2]=y-N;p=O(O(O(m*n)-O(t*r))+O(O(k*s)-O(o*q)));P=O(p*z);k=O(O(o*s)-O(O(O(A*m)-O(r*n))-O(q*k)));m=O(k*l);L[c+324>>2]=P-m;r=O(p*l);o=O(k*z);L[c+320>>2]=r+o;L[c+312>>2]=P+m;m=O(p+p);p=O(p*m);L[c+308>>2]=y-p;l=O(x*l);k=O(k*m);L[c+304>>2]=l-k;H[c+300>>2]=0;L[c+296>>2]=r-o;L[c+292>>2]=l+k;L[c+288>>2]=O(O(1)-N)-p;H[c+284>>2]=0;L[c+280>>2]=K;L[c+276>>2]=I;F[c+256|0]=0;H[c+252>>2]=3;H[c+224>>2]=0;H[c+228>>2]=0;H[c+232>>2]=0;H[c+236>>2]=0;L[c+272>>2]=E;k=E<=I?E:I;k=k<=K?k:K;m=O(k*O(.05000000074505806));L[c+248>>2]=m;L[c+244>>2]=m;L[c+240>>2]=k*O(.15000000596046448);H[c+220>>2]=0;L[c+216>>2]=v;L[c+212>>2]=w;F[c+192|0]=0;H[c+188>>2]=3;H[c+160>>2]=0;H[c+164>>2]=0;H[c+168>>2]=0;H[c+172>>2]=0;L[c+208>>2]=D;k=w>=D?D:w;k=k<=v?k:v;m=O(k*O(.05000000074505806));L[c+184>>2]=m;L[c+180>>2]=m;L[c+176>>2]=k*O(.15000000596046448);H[c+156>>2]=0;k=O(S*g);m=O(R*g);r=O(Q*g);o=O(O(q*k)+O(O(t*m)+O(n*r)));l=O(O(q*o)+O(O(k*u)-O(s*O(O(t*r)-O(m*n)))));L[c+152>>2]=l+l;l=O(O(n*o)+O(O(r*u)-O(s*O(O(q*m)-O(k*t)))));L[c+148>>2]=l+l;k=O(O(t*o)+O(O(m*u)-O(s*O(O(n*k)-O(r*q)))));L[c+144>>2]=k+k;d=J[i>>1];H[c+16>>2]=126268;H[c+24>>2]=c+288;H[c+20>>2]=c+224;b=H[c+308>>2];H[c+48>>2]=H[c+304>>2];H[c+52>>2]=b;b=H[c+316>>2];H[c+56>>2]=H[c+312>>2];H[c+60>>2]=b;b=H[c+300>>2];H[c+40>>2]=H[c+296>>2];H[c+44>>2]=b;e=H[c+324>>2];b=c- -64|0;H[b>>2]=H[c+320>>2];H[b+4>>2]=e;e=H[c+332>>2];H[c+72>>2]=H[c+328>>2];H[c+76>>2]=e;e=H[a+4>>2];H[c+80>>2]=H[a>>2];H[c+84>>2]=e;e=H[c+348>>2];H[c+88>>2]=H[c+344>>2];H[c+92>>2]=e;e=H[c+292>>2];H[c+32>>2]=H[c+288>>2];H[c+36>>2]=e;k=L[c+36>>2];L[c+36>>2]=L[c+48>>2];m=L[c+56>>2];r=L[c+40>>2];L[c+40>>2]=L[b>>2];L[c+56>>2]=L[c+68>>2];L[b>>2]=r;L[c+68>>2]=m;L[c+48>>2]=k;H[c+8>>2]=126608;H[c+12>>2]=c+160;b=a;a=d&512;b=RW(c+16|0,c+8|0,b,c+352|0,c+144|0,c+128|0,c+96|0,c+112|0,j,a>>>9|0);a:{if(!b){break a}j=O(-q);k=O(-n);G[h+12>>1]=2;v=L[c+128>>2];if(v<=L[c+368>>2]){if(a){G[h+12>>1]=3;g=L[c+100>>2];m=L[c+96>>2];r=L[c+104>>2];o=L[c+120>>2];l=L[c+112>>2];p=L[c+116>>2];L[h+40>>2]=v;w=O(O(q*o)+O(O(t*l)+O(n*p)));v=O(O(O(s*O(O(t*p)+O(l*k)))+O(u*o))+O(q*w));L[h+24>>2]=C+O(v+v);v=O(O(n*w)+O(O(u*p)+O(s*O(O(q*l)+O(o*A)))));L[h+20>>2]=B+O(v+v);o=O(O(t*w)+O(O(u*l)+O(s*O(O(n*o)+O(p*j)))));L[h+16>>2]=M+O(o+o);l=O(O(s*O(O(t*g)+O(m*k)))+O(u*r));k=O(O(q*r)+O(O(t*m)+O(n*g)));o=O(l+O(q*k));o=O(o+o);j=O(O(t*k)+O(O(u*m)+O(s*O(O(n*r)+O(g*j)))));j=O(j+j);g=O(O(n*k)+O(O(u*g)+O(s*O(O(q*m)+O(r*A)))));g=O(g+g);n=O(O(1)/O(W(O(O(o*o)+O(O(j*j)+O(g*g))))));L[h+36>>2]=n*O(-o);L[h+32>>2]=n*O(-g);L[h+28>>2]=n*O(-j);break a}H[h+40>>2]=0;g=L[f>>2];j=L[f+4>>2];L[h+36>>2]=-L[f+8>>2];L[h+32>>2]=-j;L[h+28>>2]=-g;break a}G[h+12>>1]=3;m=L[c+100>>2];r=L[c+96>>2];o=L[c+104>>2];l=L[c+120>>2];p=L[c+112>>2];w=L[c+116>>2];L[h+40>>2]=v*g;g=O(O(q*l)+O(O(t*p)+O(n*w)));v=O(O(O(s*O(O(t*w)+O(p*k)))+O(u*l))+O(q*g));L[h+24>>2]=C+O(v+v);v=O(O(n*g)+O(O(u*w)+O(s*O(O(q*p)+O(l*A)))));L[h+20>>2]=B+O(v+v);g=O(O(t*g)+O(O(u*p)+O(s*O(O(n*l)+O(w*j)))));L[h+16>>2]=M+O(g+g);g=O(O(q*o)+O(O(t*r)+O(n*m)));k=O(O(O(s*O(O(t*m)+O(r*k)))+O(u*o))+O(q*g));k=O(k+k);j=O(O(t*g)+O(O(u*r)+O(s*O(O(n*o)+O(m*j)))));j=O(j+j);g=O(O(n*g)+O(O(u*m)+O(s*O(O(q*r)+O(o*A)))));g=O(g+g);n=O(O(1)/O(W(O(O(k*k)+O(O(j*j)+O(g*g))))));L[h+36>>2]=n*O(-k);L[h+32>>2]=n*O(-g);L[h+28>>2]=n*O(-j)}Oa=c+384|0;return b|0}function AW(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=O(g);h=h|0;i=i|0;j=O(j);var k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=0,y=0,z=O(0),A=O(0),B=O(0),C=O(0),D=0,E=0,K=O(0),M=O(0);c=Oa-544|0;Oa=c;y=H[a+32>>2];H[c+536>>2]=0;H[c+540>>2]=0;H[c+528>>2]=0;H[c+532>>2]=0;H[c+512>>2]=0;r=L[d+20>>2];t=L[d+24>>2];s=L[d+8>>2];o=L[d>>2];u=L[d+4>>2];q=L[d+12>>2];p=L[d+16>>2];C=L[b+20>>2];A=L[b+24>>2];m=L[b>>2];l=L[b+4>>2];n=L[b+8>>2];k=L[b+12>>2];K=L[b+16>>2];H[c+508>>2]=0;L[c+504>>2]=A;L[c+500>>2]=C;L[c+496>>2]=K;L[c+492>>2]=k;L[c+488>>2]=n;L[c+484>>2]=l;L[c+480>>2]=m;H[c+476>>2]=0;H[c+460>>2]=0;H[c+444>>2]=0;B=O(-m);p=O(p-K);r=O(r-C);t=O(t-A);v=O(O(O(B*p)-O(r*l))-O(n*t));z=O(O(k*k)+O(-.5));w=O(O(O(k*O(O(l*p)-O(m*r)))+O(z*t))-O(n*v));L[c+472>>2]=w+w;w=O(O(O(z*r)+O(k*O(O(m*t)-O(n*p))))-O(l*v));L[c+468>>2]=w+w;d=c+464|0;p=O(O(O(z*p)+O(k*O(O(n*r)-O(l*t))))-O(m*v));L[d>>2]=p+p;v=O(O(O(u*n)-O(l*s))+O(O(o*k)-O(q*m)));p=O(v+v);r=O(O(O(s*m)-O(n*o))+O(O(u*k)-O(q*l)));t=O(r+r);v=O(O(1)-O(v*p));z=O(r*t);L[c+456>>2]=v-z;m=O(O(O(o*l)-O(m*u))+O(O(s*k)-O(q*n)));w=O(m*t);k=O(O(q*k)-O(O(O(B*o)-O(u*l))-O(n*s)));l=O(k*p);L[c+452>>2]=w-l;n=O(m*p);s=O(k*t);L[c+448>>2]=n+s;L[c+440>>2]=w+l;l=O(m+m);m=O(m*l);L[c+436>>2]=v-m;o=O(r*p);k=O(k*l);L[c+432>>2]=o-k;H[c+428>>2]=0;L[c+424>>2]=n-s;L[c+420>>2]=o+k;L[c+416>>2]=O(O(1)-z)-m;k=L[e+52>>2];l=L[e+56>>2];n=L[e+48>>2];m=L[a+4>>2];s=L[a+8>>2];o=L[a+12>>2];H[c+412>>2]=0;L[c+408>>2]=o;L[c+404>>2]=s;L[c+400>>2]=m;e=H[a+16>>2];D=H[a+20>>2];E=H[a+28>>2];H[c+392>>2]=H[a+24>>2];H[c+396>>2]=E;H[c+384>>2]=e;H[c+388>>2]=D;H[c+380>>2]=0;L[c+376>>2]=l;L[c+372>>2]=k;F[c+352|0]=0;H[c+348>>2]=3;H[c+320>>2]=0;H[c+324>>2]=0;H[c+328>>2]=0;H[c+332>>2]=0;L[c+368>>2]=n;k=k>=n?n:k;k=k<=l?k:l;l=O(k*O(.05000000074505806));L[c+344>>2]=l;L[c+340>>2]=l;L[c+336>>2]=k*O(.15000000596046448);F[c+192|0]=0;H[c+184>>2]=0;H[c+188>>2]=0;H[c+176>>2]=0;H[c+180>>2]=0;H[c+168>>2]=0;H[c+172>>2]=0;H[c+160>>2]=0;H[c+164>>2]=0;D=y+16|0;H[c+304>>2]=D;H[c+312>>2]=H[y+56>>2]+N(I[y+55|0],20);F[c+316|0]=I[y+54|0];k=O(m*L[y+68>>2]);l=O(s*L[y+72>>2]);k=k<=l?k:l;l=O(o*L[y+76>>2]);k=k<=l?k:l;L[c+184>>2]=k*O(.02500000037252903);L[c+176>>2]=k*O(.10000000149011612);L[c+180>>2]=k*O(.05000000074505806);E=c+160|0;CU(c+400|0,c+384|0,c+208|0,c+256|0,E,m==O(1)&s==O(1)&o==O(1));H[c+308>>2]=H[y+60>>2];t=L[f+4>>2];v=L[f+8>>2];z=L[f>>2];H[c+156>>2]=0;k=L[c+488>>2];o=O(O(-v)*g);l=L[c+480>>2];u=O(O(-z)*g);q=O(O(-t)*g);n=L[c+484>>2];p=O(O(k*o)+O(O(l*u)+O(q*n)));m=L[c+492>>2];s=O(O(m*m)+O(-.5));r=O(O(k*p)+O(O(o*s)-O(m*O(O(l*q)-O(u*n)))));L[c+152>>2]=r+r;r=O(O(n*p)+O(O(q*s)-O(m*O(O(k*u)-O(o*l)))));L[c+148>>2]=r+r;o=O(O(l*p)+O(O(u*s)-O(m*O(O(n*o)-O(q*k)))));L[c+144>>2]=o+o;y=J[i>>1];H[c+16>>2]=126268;H[c+24>>2]=c+416;H[c+20>>2]=c+320;e=H[c+436>>2];H[c+48>>2]=H[c+432>>2];H[c+52>>2]=e;e=H[c+444>>2];H[c+56>>2]=H[c+440>>2];H[c+60>>2]=e;e=H[c+428>>2];H[c+40>>2]=H[c+424>>2];H[c+44>>2]=e;x=H[c+452>>2];e=c- -64|0;H[e>>2]=H[c+448>>2];H[e+4>>2]=x;x=H[c+460>>2];H[c+72>>2]=H[c+456>>2];H[c+76>>2]=x;x=H[d+4>>2];H[c+80>>2]=H[d>>2];H[c+84>>2]=x;x=H[c+476>>2];H[c+88>>2]=H[c+472>>2];H[c+92>>2]=x;x=H[c+420>>2];H[c+32>>2]=H[c+416>>2];H[c+36>>2]=x;o=L[c+36>>2];L[c+36>>2]=L[c+48>>2];u=L[c+56>>2];q=L[c+40>>2];L[c+40>>2]=L[e>>2];L[c+56>>2]=L[c+68>>2];L[e>>2]=q;L[c+68>>2]=u;L[c+48>>2]=o;H[c+8>>2]=126016;H[c+12>>2]=E;x=d;d=y&512;e=0;a:{if(!BW(c+16|0,c+8|0,x,c+528|0,c+144|0,c+128|0,c+96|0,c+112|0,j,d>>>9|0)){break a}e=1;if(vW(h,L[f>>2],L[f+4>>2],L[f+8>>2],c+128|0,c+96|0,c+112|0,c+480|0,(d|0)!=0,1)){break a}G[h+12>>1]=J[h+12>>1]|1;j=L[c+100>>2];o=L[c+96>>2];u=L[c+104>>2];q=L[c+120>>2];p=L[c+112>>2];r=L[c+116>>2];g=O(L[c+128>>2]*g);L[h+40>>2]=g;M=O(v*g);w=A;v=O(-n);A=O(O(k*q)+O(O(l*p)+O(n*r)));B=O(O(O(m*O(O(l*r)+O(p*v)))+O(s*q))+O(k*A));L[h+24>>2]=M+O(w+O(B+B));B=O(t*g);w=C;C=O(-l);t=O(O(n*A)+O(O(s*r)+O(m*O(O(k*p)+O(q*C)))));L[h+20>>2]=B+O(w+O(t+t));w=O(z*g);g=O(s*p);p=O(-k);g=O(O(l*A)+O(g+O(m*O(O(n*q)+O(r*p)))));L[h+16>>2]=w+O(K+O(g+g));g=O(O(k*u)+O(O(l*o)+O(n*j)));q=O(O(O(m*O(O(l*j)+O(o*v)))+O(s*u))+O(k*g));q=O(q+q);l=O(O(l*g)+O(O(o*s)+O(m*O(O(n*u)+O(j*p)))));l=O(l+l);g=O(O(n*g)+O(O(s*j)+O(m*O(O(k*o)+O(u*C)))));g=O(g+g);j=O(O(1)/O(W(O(O(q*q)+O(O(l*l)+O(g*g))))));L[h+36>>2]=q*j;L[h+32>>2]=g*j;L[h+28>>2]=l*j;wW(h,J[i>>1],a,D,b,L[f>>2],L[f+4>>2],L[f+8>>2]);e=1}Oa=c+544|0;return e|0}function SF(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;a:{j=I[a+44|0];d=I[c|0];if((j|0)==(d|0)){break a}F[a+44|0]=d;f=d&1;h=j&1;k=f&!h;e=H[a>>2];b:{if(!e){break b}i=I[c|0]&16;if((i|0)!=(j&16)){d=Oa-16|0;Oa=d;c:{if(K[e+152>>2]>4294967293){break c}g=H[e+40>>2];if(i&16){H[d+4>>2]=e;g=rg(g+4632|0,d+4|0,d+11|0);if(I[d+11|0]){break c}H[g>>2]=H[d+4>>2];break c}H[d+12>>2]=e;Pf(g+4632|0,d+12|0)}Oa=d+16|0}d:{if(k){d=H[a+176>>2];if(!d){d=H[b+288>>2];if(!d){HF(b);d=H[b+288>>2]}H[b+288>>2]=H[d>>2];H[b+280>>2]=H[b+280>>2]+1}F[d+24|0]=0;F[d+25|0]=0;F[d+26|0]=0;F[d+27|0]=0;F[d+28|0]=0;F[d+29|0]=0;F[d+30|0]=0;F[d+31|0]=0;F[d|0]=0;F[d+1|0]=0;F[d+2|0]=0;F[d+3|0]=0;F[d+4|0]=0;F[d+5|0]=0;F[d+6|0]=0;F[d+7|0]=0;F[d+56|0]=0;F[d+57|0]=0;F[d+58|0]=0;F[d+59|0]=0;F[d+60|0]=0;F[d+61|0]=0;F[d+62|0]=0;F[d+63|0]=0;F[d+48|0]=0;F[d+49|0]=0;F[d+50|0]=0;F[d+51|0]=0;F[d+52|0]=0;F[d+53|0]=0;F[d+54|0]=0;F[d+55|0]=0;F[d+40|0]=0;F[d+41|0]=0;F[d+42|0]=0;F[d+43|0]=0;F[d+44|0]=0;F[d+45|0]=0;F[d+46|0]=0;F[d+47|0]=0;F[d+32|0]=0;F[d+33|0]=0;F[d+34|0]=0;F[d+35|0]=0;F[d+36|0]=0;F[d+37|0]=0;F[d+38|0]=0;F[d+39|0]=0;F[d+16|0]=0;F[d+17|0]=0;F[d+18|0]=0;F[d+19|0]=0;F[d+20|0]=0;F[d+21|0]=0;F[d+22|0]=0;F[d+23|0]=0;F[d+8|0]=0;F[d+9|0]=0;F[d+10|0]=0;F[d+11|0]=0;F[d+12|0]=0;F[d+13|0]=0;F[d+14|0]=0;F[d+15|0]=0;F[d+31|0]=1;L[d+48>>2]=L[a+120>>2];L[d+52>>2]=L[a+124>>2];L[d+32>>2]=L[a+128>>2];L[d+36>>2]=L[a+132>>2];L[d+40>>2]=L[a+136>>2];L[d+44>>2]=L[a+140>>2];L[d+56>>2]=L[a+112>>2];L[d+60>>2]=L[a+116>>2];H[a+136>>2]=0;H[a+140>>2]=0;H[a+128>>2]=0;H[a+132>>2]=0;H[a+120>>2]=0;H[a+124>>2]=0;H[a+176>>2]=d;H[a+112>>2]=2139095039;H[a+116>>2]=2139095039;if(K[e+152>>2]<=4294967293){UN(H[e+40>>2],e)}b=H[e+164>>2];if(b){CG(b,H[H[e+40>>2]+1136>>2])}YD(e,5,4);b=H[H[e+40>>2]+1e3>>2];d=H[e+144>>2];VE(b+168|0,d);VE(b+640|0,d);b=H[e+32>>2];if(b){while(1){cR(b);b=H[b>>2];if(b){continue}break}}break d}if(!(h&!f)){break d}d=H[a+176>>2];if(d){L[a+140>>2]=L[d+44>>2];L[a+128>>2]=L[d+32>>2];L[a+132>>2]=L[d+36>>2];L[a+136>>2]=L[d+40>>2];L[a+120>>2]=L[d+48>>2];L[a+124>>2]=L[d+52>>2];L[a+112>>2]=L[d+56>>2];L[a+116>>2]=L[d+60>>2];H[b+280>>2]=H[b+280>>2]-1;H[d>>2]=H[b+288>>2];H[b+288>>2]=d;H[a+176>>2]=0}b=H[H[e+40>>2]+1e3>>2];d=H[e+144>>2];WE(b+168|0,d);WE(b+640|0,d);b=H[e+44>>2];d=H[b+176>>2];e:{if(F[H[e+100>>2]+28|0]>=0){f:{if(!d|I[H[b+176>>2]+31|0]==1){break f}b=H[b+176>>2];if(!b){break f}H[b+56>>2]=0;H[b+48>>2]=0;H[b+52>>2]=0;H[b+40>>2]=0;H[b+32>>2]=0;H[b+36>>2]=0;H[b+24>>2]=0;H[b+16>>2]=0;H[b+20>>2]=0;H[b+8>>2]=0;H[b>>2]=0;H[b+4>>2]=0}F[e+150|0]=1;break e}g:{if(!d|I[H[b+176>>2]+31|0]==1){break g}b=H[b+176>>2];if(!b){break g}H[b+56>>2]=0;H[b+48>>2]=0;H[b+52>>2]=0;H[b+40>>2]=0;H[b+32>>2]=0;H[b+36>>2]=0}F[e+150|0]=I[e+150|0]&251}b=H[e+164>>2];if(b){CG(b,H[H[e+40>>2]+1136>>2])}YD(e,5,6);G[e+148>>1]=J[e+148>>1]&63995;if(K[e+152>>2]<=4294967293){UN(H[e+40>>2],e)}b=H[e+32>>2];if(b){while(1){cR(b);b=H[b>>2];if(b){continue}break}}}b=j&32;if((b|0)==(I[c|0]&32)){break b}if(b){g=H[e+144>>2];d=g>>>7|0;b=H[e+40>>2];h:{i:{if(I[H[e+44>>2]+9|0]==2){if(d>>>0>=H[b+4740>>2]<<5>>>0){break h}b=b+4736|0;break i}if(d>>>0>=H[b+4728>>2]<<5>>>0){break h}b=b+4724|0}b=H[b>>2]+(g>>>10&4194300)|0;g=H[b>>2];l=b,m=j7(-2,d)&g,H[l>>2]=m}G[e+92>>1]=J[e+92>>1]&65471;break b}j:{if(k){break j}g=H[e+144>>2]>>>7|0;b=H[e+40>>2];if(I[H[e+44>>2]+9|0]==2){h=g+32>>>5|0;k:{if(h>>>0<=(H[b+4740>>2]&2147483647)>>>0){d=H[b+4736>>2];break k}d=H[33808]+12|0;d=Ra[H[H[d>>2]+8>>2]](d,h<<2,20591,14905,438)|0;f=H[b+4736>>2];l:{if(!f){break l}R6(d,f,H[b+4740>>2]<<2);if(H[b+4740>>2]<0){break l}f=H[b+4736>>2];if(!f){break l}i=H[33808]+12|0;Ra[H[H[i>>2]+12>>2]](i,f)}f=H[b+4740>>2];S6((f<<2)+d|0,0,h-f<<2);H[b+4740>>2]=h;H[b+4736>>2]=d}b=(g>>>3&536870908)+d|0;H[b>>2]=H[b>>2]|1<>>5|0;m:{if(h>>>0<=(H[b+4728>>2]&2147483647)>>>0){d=H[b+4724>>2];break m}d=H[33808]+12|0;d=Ra[H[H[d>>2]+8>>2]](d,h<<2,20591,14905,438)|0;f=H[b+4724>>2];n:{if(!f){break n}R6(d,f,H[b+4728>>2]<<2);if(H[b+4728>>2]<0){break n}f=H[b+4724>>2];if(!f){break n}i=H[33808]+12|0;Ra[H[H[i>>2]+12>>2]](i,f)}f=H[b+4728>>2];S6((f<<2)+d|0,0,h-f<<2);H[b+4728>>2]=h;H[b+4724>>2]=d}b=(g>>>3&536870908)+d|0;H[b>>2]=H[b>>2]|1<>1]=J[e+92>>1]|64}if(k){TF(a)}if(!e){break a}a=j&3;b=I[c|0]&3;if(!((a|0)==3|(b|0)!=3)){a=H[e+32>>2];if(a){while(1){$Q(a);a=H[a>>2];if(a){continue}break}}return}if((b|0)==3|(a|0)!=3){break a}oG(e)}}function AK(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=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=O(0),w=0,x=0,y=0,z=0,A=0,C=O(0),D=O(0),E=O(0),I=O(0),M=O(0);a=H[a+88>>2];q=H[a+8>>2];a:{b:{if((q|0)!=-1){l=H[a+12>>2]+N(q,40)|0;H[a+8>>2]=H[l+36>>2];break b}q=H[a>>2];if(q>>>0>=256){o5(H[33808],16,10568,2106,60754,0);q=-1;break a}H[a>>2]=q+1;m=H[a+16>>2];h=m+1|0;f=H[a+20>>2]&2147483647;c:{if(h>>>0<=f>>>0){break c}g=f;f=f?f<<1:2;f=f>>>0>h>>>0?f:h;if(g>>>0>=f>>>0){break c}rK(a+12|0,f);m=H[a+16>>2]}H[a+16>>2]=h;l=H[a+12>>2]+N(m,40)|0}h=H[33808];f=Ra[H[H[h>>2]+20>>2]](h)|0?32896:55639;f=Ra[H[H[h+12>>2]+8>>2]](h+12|0,13008,f,10568,2114)|0;H[f+32>>2]=0;H[f+36>>2]=0;H[f>>2]=0;H[f+4>>2]=0;H[f+76>>2]=0;H[f+80>>2]=0;H[f+72>>2]=-1;H[f+64>>2]=0;H[f+68>>2]=0;F[f+53|0]=0;F[f+54|0]=0;F[f+55|0]=0;F[f+56|0]=0;F[f+57|0]=0;F[f+58|0]=0;F[f+59|0]=0;F[f+60|0]=0;H[f+48>>2]=0;H[f+52>>2]=0;H[f+40>>2]=0;H[f+44>>2]=0;H[f+8>>2]=0;H[f+12>>2]=0;H[f+16>>2]=0;H[f+20>>2]=0;F[f+21|0]=0;F[f+22|0]=0;F[f+23|0]=0;F[f+24|0]=0;F[f+25|0]=0;F[f+26|0]=0;F[f+27|0]=0;F[f+28|0]=0;H[f+84>>2]=0;H[f+88>>2]=0;H[f+92>>2]=0;H[f+96>>2]=0;H[f+100>>2]=0;H[f+104>>2]=0;H[f+108>>2]=0;H[f+112>>2]=0;H[f+116>>2]=0;H[f+120>>2]=0;H[f+124>>2]=0;H[f+128>>2]=0;OT(f+132|0);H[f+12976>>2]=0;H[f+12980>>2]=0;G[f+168>>1]=256;h=f+12984|0;H[h>>2]=0;H[h+4>>2]=0;H[f+12992>>2]=0;h=H[b>>2];H[l+4>>2]=((h|0)>=0?h|-2147483648:h^-1)>>>1;h=H[b+4>>2];H[l+8>>2]=((h|0)>=0?h|-2147483648:h^-1)>>>1;h=H[b+8>>2];H[l+12>>2]=((h|0)>=0?h|-2147483648:h^-1)>>>1;h=H[b+12>>2];H[l+16>>2]=((h|0)>=0?h|-2147483648:h^-1)>>>1;h=H[b+16>>2];H[l+20>>2]=((h|0)>=0?h|-2147483648:h^-1)>>>1;h=H[b+20>>2];H[l+28>>2]=f;H[l+24>>2]=((h|0)>=0?h|-2147483648:h^-1)>>>1;H[l+36>>2]=H[b+24>>2];tK(H[a>>2],H[a+12>>2]);if(c){h=Oa-32|0;Oa=h;k=a;y=H[a+4216>>2];if(y){z=H[k+24>>2];c=H[k+12>>2];m=H[k+4220>>2];d:{while(1){b=1;if(!m){break d}m=m-1|0;if(!H[(m<<2)+y>>2]){continue}break}b=(m&134217727)+1|0}while(1){m=H[(x<<2)+y>>2];if(m){A=x<<5;while(1){e:{f:{g:{h:{i:{i=N(f7(m)|A,12)+z|0;g=J[i+4>>1];switch(g|0){case 0:break f;case 1:break i;default:break h}}i=i+8|0;break g}i=H[(k+N(g,12)|0)+92>>2]+(H[i+8>>2]<<2)|0}g=H[(N(J[i+2>>1],40)+c|0)+28>>2];a=H[g+76>>2]+(J[i>>1]<<3)|0;n=H[a+4>>2];g=H[(n&1?96:100)+g>>2]+N(H[a>>2],24)|0;a=H[g+12>>2];H[h+16>>2]=H[g+8>>2];H[h+20>>2]=a;a=H[g+20>>2];H[h+24>>2]=H[g+16>>2];H[h+28>>2]=a;a=H[g+4>>2];H[h+8>>2]=H[g>>2];H[h+12>>2]=a;j=H[h+20>>2];break e}a=H[i>>2];g=N(a,24)+d|0;C=L[g+16>>2];D=L[g+20>>2];E=L[g>>2];I=L[g+4>>2];M=L[g+8>>2];u=L[(a<<2)+e>>2];a=(B(O(L[g+12>>2]+u)),v(2));j=((a|0)>=0?a|-2147483648:a^-1)>>>1|0;H[h+20>>2]=j;a=(B(O(M-u)),v(2));H[h+16>>2]=((a|0)>=0?a|-2147483648:a^-1)>>>1;a=(B(O(I-u)),v(2));H[h+12>>2]=((a|0)>=0?a|-2147483648:a^-1)>>>1;a=(B(O(E-u)),v(2));H[h+8>>2]=((a|0)>=0?a|-2147483648:a^-1)>>>1;a=(B(O(D+u)),v(2));H[h+28>>2]=((a|0)>=0?a|-2147483648:a^-1)>>>1;a=(B(O(C+u)),v(2));H[h+24>>2]=((a|0)>=0?a|-2147483648:a^-1)>>>1;n=H[i+8>>2]}j:{if(K[l+16>>2]>2]|K[l+4>>2]>j>>>0|(K[h+24>>2]>2]|K[l+20>>2]>2])){break j}if(K[h+28>>2]>2]|K[l+24>>2]>2]){break j}t=h+8|0;i=0;a=Oa-1040|0;Oa=a;r=n>>>2|0;w=H[k+24>>2];o=n>>>7|0;k:{if(o>>>0>2]){p=r&31;j=H[k+76>>2];break k}g=H[33808];p=r&31;s=(r+128>>>5|0)+((p|0)!=0)|0;j=Ra[H[H[g+12>>2]+8>>2]](g+12|0,s<<2,20591,10568,274)|0;g=H[k+80>>2];if(g){R6(j,H[k+76>>2],g<<2);i=H[k+80>>2]}g=s-i|0;if(g){S6((i<<2)+j|0,0,g<<2)}i=H[k+76>>2];if(i){g=H[33808];Ra[H[H[g+12>>2]+12>>2]](g+12|0,i)}H[k+80>>2]=s;H[k+76>>2]=j}i=n&1;g=(o<<2)+j|0;H[g>>2]=H[g>>2]|1<>1];l:{m:{if((j|0)==1){g=s+8|0;break m}if(!j){break l}g=H[(k+N(j,12)|0)+92>>2]+(H[s+8>>2]<<2)|0}R6(a,g,j<<2)}i=nK(f,t,n,i);o=j<<2;g=o+a|0;G[g+2>>1]=q;G[g>>1]=i;if(j>>>0>=2){i=H[(w+N(r,12)|0)+8>>2];g=(k+o|0)+3176|0;H[H[(k+N(j,12)|0)+92>>2]+(i<<2)>>2]=H[g>>2];H[g>>2]=i}p=j+1|0;n:{if(!j){H[(w+N(r,12)|0)+8>>2]=H[a>>2];break n}t=k+N(p,12)|0;o=t+92|0;g=(k+(p<<2)|0)+3176|0;i=H[g>>2];o:{if((i|0)!=-1){H[(w+N(r,12)|0)+8>>2]=i;n=H[o>>2]+(i<<2)|0;H[g>>2]=H[n>>2];break o}n=H[t+96>>2];H[(w+N(r,12)|0)+8>>2]=n;i=n+p|0;g=H[t+100>>2]&2147483647;p:{if(i>>>0<=g>>>0){break p}j=g;g=g?g<<1:2;g=g>>>0>i>>>0?g:i;if(j>>>0>=g>>>0){break p}Dv(o,g);n=H[t+96>>2]}g=H[o>>2];H[t+96>>2]=i;n=g+(n<<2)|0}R6(n,a,p<<2)}G[s+4>>1]=p;Oa=a+1040|0}m=m-1&m;if(m){continue}break}}x=x+1|0;if((b|0)!=(x|0)){continue}break}}Oa=h+32|0}}return q|0}function Aq(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;j=Oa-16|0;Oa=j;a:{if(H[a+4656>>2]){o5(H[33808],2,9281,2308,19755,0);break a}G[j+6>>1]=0;c=a+4872|0;Bq(c,0,j+6|0);Cq(c,H[a+4876>>2]);H[j+8>>2]=0;c=a+4884|0;Dq(c,0,j+8|0);Eq(c,H[a+4888>>2]);H[j+12>>2]=0;c=a+4896|0;Fq(c,0,j+12|0);Gq(c,H[a+4900>>2]);g=a+32|0;f=Oa-32|0;Oa=f;b:{if(b){dO(g,1);b=H[g+2168>>2];H[b+60>>2]=-1;H[b+48>>2]=0;fI(b,1);eO(g);break b}fI(H[g+2168>>2],1)}NN(g);b=H[g+2168>>2];H[b+60>>2]=-1;H[b+48>>2]=0;c=H[b+56>>2];if((c|0)!=H[b+52>>2]){d=H[b+44>>2];if(d){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,d);c=H[b+56>>2]}c:{if(!c){c=0;d=0;break c}d=H[33808];c=Ra[H[H[d+12>>2]+8>>2]](d+12|0,c,20591,14814,169)|0;d=H[b+56>>2]}H[b+52>>2]=d;H[b+44>>2]=c}F[f+28|0]=0;b=g+1180|0;c=H[b+4>>2];if((c|0)<0){d=H[b>>2];c=d+N(c,24)|0;while(1){e=H[f+12>>2];H[c>>2]=H[f+8>>2];H[c+4>>2]=e;H[c+16>>2]=H[f+24>>2];e=H[f+20>>2];H[c+8>>2]=H[f+16>>2];H[c+12>>2]=e;F[c+20|0]=I[f+28|0];c=c+24|0;if(d>>>0>c>>>0){continue}break}}H[b+4>>2]=0;fO(b,H[g+1184>>2]);c=H[g+1192>>2];G[f+16>>1]=65535;H[f+8>>2]=-1;H[f+12>>2]=-1;b=H[c+4>>2];if((b|0)<0){d=H[c>>2];b=d+N(b,12)|0;while(1){e=H[f+12>>2];H[b>>2]=H[f+8>>2];H[b+4>>2]=e;H[b+8>>2]=H[f+16>>2];b=b+12|0;if(d>>>0>b>>>0){continue}break}}H[c+4>>2]=0;gO(c,H[c+4>>2]);d=g+1244|0;H[d>>2]=0;H[f+8>>2]=0;c=g+1240|0;b=H[c+4>>2];if((b|0)<0){e=H[c>>2];b=e+(b<<2)|0;while(1){H[b>>2]=H[f+8>>2];b=b+4|0;if(e>>>0>b>>>0){continue}break}}H[c+4>>2]=0;b=c;c=0;i=H[d>>2];d:{if(!i){break d}d=i<<2;if(!d){break d}c=H[33808];e=c+12|0;c=(m=e,n=d,o=Ra[H[H[c>>2]+20>>2]](c)|0?52306:55639,p=13582,q=553,l=H[H[e>>2]+8>>2],Ra[l](m|0,n|0,o|0,p|0,q|0)|0)}d=H[b+4>>2];if((d|0)>0){k=(d<<2)+c|0;e=H[b>>2];d=c;while(1){H[d>>2]=H[e>>2];e=e+4|0;d=d+4|0;if(k>>>0>d>>>0){continue}break}}e:{if(H[b+8>>2]<0){break e}d=H[b>>2];if(!d){break e}e=H[33808]+12|0;Ra[H[H[e>>2]+12>>2]](e,d)}H[b+8>>2]=i;H[b>>2]=c;hO(g);d=g+2284|0;b=0;i=H[g+2288>>2];f:{if(!i){break f}c=i<<2;if(!c){break f}b=H[33808];e=Ra[H[H[b>>2]+20>>2]](b)|0?48830:55639;b=Ra[H[H[b+12>>2]+8>>2]](b+12|0,c,e,13582,553)|0}c=H[d+4>>2];if((c|0)>0){k=(c<<2)+b|0;e=H[d>>2];c=b;while(1){H[c>>2]=H[e>>2];e=e+4|0;c=c+4|0;if(k>>>0>c>>>0){continue}break}}g:{if(H[d+8>>2]<0){break g}c=H[d>>2];if(!c){break g}e=H[33808];Ra[H[H[e+12>>2]+12>>2]](e+12|0,c)}H[d+8>>2]=i;H[d>>2]=b;b=H[g+2368>>2];if(H[b+36>>2]){d=b+8|0;while(1){c=H[H[b+32>>2]+(h<<2)>>2];H[f+8>>2]=c;h:{if((c|0)==(H[b+4>>2]-1|0)){H[b+4>>2]=c;break h}e=H[b+12>>2];if(e>>>0>=(H[b+16>>2]&2147483647)>>>0){qm(d,f+8|0);break h}H[H[b+8>>2]+(e<<2)>>2]=c;H[b+12>>2]=H[b+12>>2]+1}h=h+1|0;if(h>>>0>2]){continue}break}}h=0;H[b+36>>2]=0;H[f+8>>2]=0;c=b+32|0;gy(c,0,f+8|0);Dv(c,H[b+36>>2]);b=H[g+2372>>2];if(H[b+36>>2]){d=b+8|0;while(1){c=H[H[b+32>>2]+(h<<2)>>2];H[f+8>>2]=c;i:{if((c|0)==(H[b+4>>2]-1|0)){H[b+4>>2]=c;break i}e=H[b+12>>2];if(e>>>0>=(H[b+16>>2]&2147483647)>>>0){qm(d,f+8|0);break i}H[H[b+8>>2]+(e<<2)>>2]=c;H[b+12>>2]=H[b+12>>2]+1}h=h+1|0;if(h>>>0>2]){continue}break}}H[b+36>>2]=0;H[f+8>>2]=0;c=b+32|0;gy(c,0,f+8|0);Dv(c,H[b+36>>2]);iO(g);H[f+16>>2]=0;H[f+20>>2]=0;H[f+8>>2]=0;H[f+12>>2]=0;c=g+2420|0;b=H[c+4>>2];if((b|0)<0){d=H[c>>2];b=d+(b<<4)|0;while(1){h=H[f+12>>2];H[b>>2]=H[f+8>>2];H[b+4>>2]=h;h=H[f+20>>2];H[b+8>>2]=H[f+16>>2];H[b+12>>2]=h;b=b+16|0;if(d>>>0>b>>>0){continue}break}}H[c+4>>2]=0;b=c;d=0;e=H[g+2424>>2];j:{if(!e){break j}h=e<<4;if(!h){break j}c=H[33808];d=c+12|0;d=(q=d,p=h,o=Ra[H[H[c>>2]+20>>2]](c)|0?27016:55639,n=13582,m=553,l=H[H[d>>2]+8>>2],Ra[l](q|0,p|0,o|0,n|0,m|0)|0)}c=H[b+4>>2];if((c|0)>0){i=(c<<4)+d|0;h=H[b>>2];c=d;while(1){k=H[h+4>>2];H[c>>2]=H[h>>2];H[c+4>>2]=k;k=H[h+12>>2];H[c+8>>2]=H[h+8>>2];H[c+12>>2]=k;h=h+16|0;c=c+16|0;if(i>>>0>c>>>0){continue}break}}k:{if(H[b+8>>2]<0){break k}c=H[b>>2];if(!c){break k}h=H[33808]+12|0;Ra[H[H[h>>2]+12>>2]](h,c)}H[b+8>>2]=e;H[b>>2]=d;PN(g+24|0,H[g+28>>2]);WN(g+52|0,H[g+56>>2]);WN(g- -64|0,H[g+68>>2]);WN(g+76|0,H[g+80>>2]);b=H[g+976>>2];c=H[b+140>>2];if(c){while(1){c=c-1|0;d=H[H[b+136>>2]+(c<<2)>>2];H[b+140>>2]=c;if(d){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,d);c=H[b+140>>2]}H[b+164>>2]=H[b+164>>2]-1;if(c){continue}break}}Oa=f+32|0;b=Oa-16|0;Oa=b;a=a+5584|0;if(!H[a+20>>2]){H[b+12>>2]=0;c=a+16|0;gy(c,0,b+12|0);Dv(c,H[a+20>>2])}if(!H[a+56>>2]){H[b+12>>2]=0;c=a+52|0;gy(c,0,b+12|0);Dv(c,H[a+56>>2])}Oa=b+16|0}Oa=j+16|0}function pX(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=O(d);e=e|0;f=f|0;var g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=0,m=O(0),n=O(0),o=0,p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=0,B=0,C=O(0),D=O(0),E=O(0),G=O(0),I=O(0),J=O(0),M=0,P=0,Q=O(0),R=O(0),S=O(0),T=O(0),U=O(0),V=O(0),W=0,X=O(0);l=Oa-48|0;Oa=l;L[l+44>>2]=d;P=H[a+36>>2];a:{if(P){break a}P=0;A=H[a+20>>2];o=A<<2;if(o){W=H[33808];P=Ra[H[H[W+12>>2]+8>>2]](W+12|0,o,20591,8894,133)|0;A=H[a+20>>2]}H[a+36>>2]=P;if(!A){break a}while(1){H[(B<<2)+P>>2]=B;B=B+1|0;if(B>>>0>2]){continue}break}}H[l+40>>2]=0;H[l+36>>2]=e;H[l+32>>2]=f;e=H[a+40>>2];H[l+28>>2]=H[a+32>>2];H[l+24>>2]=e;W=H[a+28>>2];H[l+8>>2]=0;H[l>>2]=0;H[l+4>>2]=0;o=Oa-1040|0;Oa=o;d=L[c+8>>2];p=O(d+d);m=O(-p);f=m>2];q=O(d+d);k=O(-q);e=k>2];r=O(d+d);h=O(-r);a=h>2];u=O(d+d);d=L[b+4>>2];v=O(d+d);d=L[b>>2];w=O(d+d);g=L[l+44>>2];b:{if(g>=O(3.4028234663852886e38)){d=q==O(0)?v:q>=O(0)?O(3.4028234663852886e38):O(-3.4028234663852886e38);y=r==O(0)?w:r>=O(0)?O(3.4028234663852886e38):O(-3.4028234663852886e38);g=u;if(p==O(0)){break b}g=p>=O(0)?O(3.4028234663852886e38):O(-3.4028234663852886e38);break b}d=O(v+O(q*g));y=O(w+O(r*g));g=O(u+O(p*g))}G=f?p:m;I=e?q:k;J=a?r:h;F[o+1024|0]=1;H[o+1032>>2]=256;H[o+1036>>2]=256;H[o+1028>>2]=o;a=H[l+24>>2];H[o>>2]=a;S=gy?w:y;V=g>u?u:g;d=d>v?v:d;y=w>2];g=L[c>>2];x=O(h-g);k=O(g+h);e:{f:{if(!(O(x+k)>=y)|!(O(k-x)<=U)){break f}h=L[c+16>>2];g=L[c+4>>2];i=O(h-g);n=O(g+h);m=O(v-n);k=O(w-k);h=O(O(r*m)-O(q*k));g=O(-h);if(!(O(n-i)<=T)|(!(O(O(I*x)+O(J*i))>=(g=d))){break f}h=L[c+20>>2];g=L[c+8>>2];j=O(h-g);n=O(g+h);g=O(u-n);m=O(O(q*g)-O(p*m));h=O(-m);if(!(O(n-j)<=S)|(!(O(O(G*i)+O(I*j))>=(h=V))){break f}h=O(O(p*k)-O(r*g));g=O(-h);if(!(O(O(G*x)+O(J*j))>=(g>2];c=H[c+24>>2];if(!(c&1)){while(1){e=a+N(c>>>1|0,28)|0;n=L[e+40>>2];k=L[e+28>>2];s=O(n-k);h=L[e+44>>2];g=L[e+32>>2];t=O(h-g);C=O(g+h);m=O(v-C);R=O(k+n);k=O(w-R);j=O(O(r*m)-O(q*k));x=O(-j);h=L[e+48>>2];g=L[e+36>>2];i=O(h-g);z=O(g+h);g=O(u-z);n=O(O(q*g)-O(p*m));m=O(-n);h=O(O(p*k)-O(r*g));g=O(-h);c=O(R-s)<=U&O(s+R)>=y&O(O(I*s)+O(J*t))>=(j>x?j:x)&O(t+C)>=d&O(C-t)<=T&O(O(G*t)+O(I*i))>=(m=V&O(z-i)<=S&O(O(G*s)+O(J*i))>=(g>2];k=L[e>>2];X=O(n-k);h=L[e+16>>2];g=L[e+4>>2];D=O(h-g);s=O(g+h);m=O(v-s);t=O(k+n);k=O(w-t);j=O(O(r*m)-O(q*k));x=O(-j);h=L[e+20>>2];g=L[e+8>>2];E=O(h-g);i=O(g+h);g=O(u-i);n=O(O(q*g)-O(p*m));m=O(-n);h=O(O(p*k)-O(r*g));g=O(-h);b=O(t-X)<=U&O(X+t)>=y&O(O(I*X)+O(J*D))>=(j>x?j:x)&O(D+s)>=d&O(s-D)<=T&O(O(G*D)+O(I*E))>=(m=V&O(i-E)<=S&O(O(G*X)+O(J*E))>=(gO(0);H[H[o+1028>>2]+(M<<2)>>2]=e+N(b,28);c=e+N(!b,28)|0;M=M+1|0;if((M|0)!=(H[o+1036>>2]&2147483647)){break g}qX(o,M<<1);break g}if(!(b|c)){break f}c=b?e:e+28|0}c=H[c+24>>2];if(!(c&1)){continue}break}}A=c>>>1&15;if(!A){break f}k=O(u+O(p*Q));x=ku?u:k;h=h>v?v:h;g=g>w?w:g;B=H[l+28>>2]+(c>>>3&536870908)|0;e=H[l+32>>2];R=L[l+44>>2];if((A|0)!=1){while(1){b=H[B>>2];c=W+N(b,24)|0;i=L[c+12>>2];j=L[c>>2];C=O(i-j);t=O(j+i);h:{if(!(O(C+t)>=y)|!(O(t-C)<=U)){break h}i=L[c+16>>2];j=L[c+4>>2];D=O(i-j);z=O(j+i);s=O(v-z);t=O(w-t);i=O(O(r*s)-O(q*t));j=O(-i);if(!(O(z-D)<=T)|(!(O(O(I*C)+O(J*D))>=(i>j?i:j))|!(O(D+z)>=d))){break h}i=L[c+20>>2];j=L[c+8>>2];E=O(i-j);z=O(j+i);j=O(u-z);s=O(O(q*j)-O(p*s));i=O(-s);if(!(O(z-E)<=S)|(!(O(O(G*D)+O(I*E))>=(i=V))){break h}i=O(O(p*t)-O(r*j));j=O(-i);if(!(O(O(G*C)+O(J*E))>=(i>j?i:j))){break h}c=H[(b<<2)+P>>2];b=H[l+40>>2];H[l+40>>2]=b+1;H[e+(b<<2)>>2]=c;if(H[l+40>>2]==H[l+36>>2]){break e}if(!(Q>2]=Q;y=g;d=h;V=k;U=m;T=n;S=x}B=B+4|0;A=A-1|0;if(A){continue}break f}}c=H[(H[B>>2]<<2)+P>>2];b=H[l+40>>2];H[l+40>>2]=b+1;H[e+(b<<2)>>2]=c;c=H[l+36>>2];b=H[l+40>>2];if(!(Q>2]=Q;y=g;d=h;V=k;U=m;T=n;S=x}if(M){break d}}a=H[o+1036>>2];i:{if((a|0)<0|!(a&2147483647)){break i}b=H[o+1028>>2];if((b|0)==(o|0)|!b){break i}a=H[33808]+12|0;Ra[H[H[a>>2]+12>>2]](a,b)}Oa=o+1040|0;break c}M=M-1|0;c=H[H[o+1028>>2]+(M<<2)>>2];continue}break}Oa=l+48|0;return H[l+40>>2]}function hS(a,b,c,d,e,f){var g=0,h=0,i=0,j=0,k=0,l=0,m=O(0),n=0,o=0,p=0,q=O(0),r=0,s=0,t=0,u=0,v=0,w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=0,C=0;g=Oa-160|0;Oa=g;H[g+152>>2]=0;H[g+156>>2]=0;H[g+144>>2]=H[e>>2];H[g+148>>2]=H[e+4>>2];l=I[e+8|0];F[g+155|0]=l>>>3&1;F[g+154|0]=l>>>2&1;l=H[b>>2];l=Ra[H[H[l>>2]+360>>2]](l)|0;a:{b:{if((l|0)!=H[a+312>>2]){H[a+312>>2]=l;break b}if(M[a+48>>3]>M[d>>3]|M[a+56>>3]>M[d+8>>3]|(M[a+72>>3]>3]|M[a- -64>>3]>M[d+16>>3])){break b}if(M[a+80>>3]>3]|M[a+88>>3]>3]){break b}l=-16711936;f=H[a+324>>2];if(!(f&128)){break a}H[a+324>>2]=f&-129;f=H[a+112>>2];c:{if(!I[a+328|0]){break c}h=H[a+36>>2];if(!h|(f|0)==(h|0)){break c}s=h<<2;h=H[a+32>>2];s=s+h|0;f=h+(f<<2)|0;while(1){if(H[f+8>>2]){dT(H[a+332>>2],H[f+4>>2]);f=H[(H[f>>2]<<2)+86160>>2]+f|0;if((s|0)!=(f|0)){continue}}break}f=H[a+112>>2]}H[a+36>>2]=f;f=H[a+116>>2];H[a+24>>2]=f;H[a+12>>2]=f;F[g+152|0]=0;if(I[e+8|0]&2){F[g+153|0]=1}e=a+48|0;rR(b,e,a+8|0,a+20|0,a+32|0,g+144|0,a+240|0,a+320|0);d:{if(!I[a+328|0]){break d}b=H[a+36>>2];if(!b){break d}f=H[a+112>>2];if((f|0)==(b|0)){break d}h=b<<2;b=H[a+32>>2];h=h+b|0;f=b+(f<<2)|0;while(1){if(!H[f+8>>2]){break d}cT(H[a+332>>2],H[f+4>>2]);f=H[(H[f>>2]<<2)+86160>>2]+f|0;if((h|0)!=(f|0)){continue}break}}gS(a,c,e);G[a+318>>1]=J[a+318>>1]+1;break a}l=H[d+44>>2];H[a+88>>2]=H[d+40>>2];H[a+92>>2]=l;h=H[d+20>>2];l=a- -64|0;H[l>>2]=H[d+16>>2];H[l+4>>2]=h;h=H[d+36>>2];H[a+80>>2]=H[d+32>>2];H[a+84>>2]=h;h=H[d+12>>2];H[a+56>>2]=H[d+8>>2];H[a+60>>2]=h;h=H[d+28>>2];H[a+72>>2]=H[d+24>>2];H[a+76>>2]=h;h=H[d+4>>2];H[a+48>>2]=H[d>>2];H[a+52>>2]=h;i=M[l>>3];j=M[a+88>>3];n=(i+j)*.5;m=L[a+304>>2];o=+O(m*O(O(j-i)*O(.5)));i=n+o;M[a+88>>3]=i;j=M[a+56>>3];k=M[a+80>>3];t=(j+k)*.5;u=+O(m*O(O(k-j)*O(.5)));j=t+u;M[a+80>>3]=j;k=M[a+48>>3];p=M[a+72>>3];v=(k+p)*.5;p=+O(m*O(O(p-k)*O(.5)));k=v+p;M[a+72>>3]=k;n=n-o;M[l>>3]=n;o=t-u;M[a+56>>3]=o;t=v-p;M[a+48>>3]=t;l=a+48|0;m=O(0);q=L[f+8>>2];w=L[f>>2];x=L[f+4>>2];e:{if(!(w!=O(0)|x!=O(0))&q==O(0)){break e}A=O(O(q*q)+O(O(w*w)+O(x*x)));if(A>O(0)){m=O(O(1)/O(W(A)));y=O(q*m);z=O(x*m);m=O(w*m)}r=i;q=O(O(O(P(O(O(O(i-n)*y)+O(O(O(k-t)*m)+O(z*O(j-o))))))-O(P(O(O(O(M[d+40>>3]-M[d+16>>3])*y)+O(O(O(M[d+24>>3]-M[d>>3])*m)+O(z*O(M[d+32>>3]-M[d+8>>3])))))))*O(.44999998807907104));i=+O(y*q);u=r+i;M[a+88>>3]=u;r=j;j=+O(z*q);p=r+j;M[a+80>>3]=p;r=k;k=+O(m*q);v=r+k;M[a+72>>3]=v;i=n+i;M[a+64>>3]=i;j=o+j;M[a+56>>3]=j;k=t+k;M[a+48>>3]=k;r=k;k=M[d>>3];if(r>k){M[l>>3]=k}k=j;j=M[d+8>>3];if(k>j){M[a+56>>3]=j}j=i;i=M[d+16>>3];if(j>i){M[a+64>>3]=i}i=M[d+24>>3];if(i>v){M[a+72>>3]=i}i=M[d+32>>3];if(i>p){M[a+80>>3]=i}i=M[d+40>>3];if(!(i>u)){break e}M[a+88>>3]=i}f:{if(!I[a+328|0]){break f}h=H[a+36>>2];if(!h){break f}f=H[a+32>>2];h=f+(h<<2)|0;while(1){if(!H[f+8>>2]){break f}dT(H[a+332>>2],H[f+4>>2]);f=H[(H[f>>2]<<2)+86160>>2]+f|0;if((h|0)!=(f|0)){continue}break}}H[a+96>>2]=0;H[a+100>>2]=0;H[a+36>>2]=0;H[a+24>>2]=0;H[a+12>>2]=0;H[a+104>>2]=0;H[a+108>>2]=0;G[a+316>>1]=J[a+316>>1]+1;if(F[e+8|0]&1){F[g+152|0]=1}F[g+153|0]=0;f=a+8|0;h=a+20|0;s=a+32|0;B=a+240|0;C=a+320|0;rR(b,l,f,h,s,g+144|0,B,C);H[a+112>>2]=H[a+36>>2];H[a+116>>2]=H[a+12>>2];F[g+152|0]=0;if(I[e+8|0]&2){F[g+153|0]=1}rR(b,l,f,h,s,g+144|0,B,C);g:{if(!I[a+328|0]){break g}b=H[a+36>>2];if(!b){break g}f=H[a+32>>2];b=f+(b<<2)|0;while(1){if(!H[f+8>>2]){break g}cT(H[a+332>>2],H[f+4>>2]);f=H[(H[f>>2]<<2)+86160>>2]+f|0;if((b|0)!=(f|0)){continue}break}}gS(a,c,l);H[a+324>>2]=H[a+324>>2]&-129;l=-65536}b=H[a>>2];h:{if(!b){break h}H[g+136>>2]=1065353216;H[g+128>>2]=0;H[g+132>>2]=0;H[g+120>>2]=0;H[g+124>>2]=0;c=g- -64|0;H[c>>2]=0;H[c+4>>2]=0;H[g+56>>2]=0;H[g+60>>2]=0;H[g+48>>2]=0;H[g+52>>2]=0;H[g+80>>2]=0;H[g+84>>2]=0;H[g+72>>2]=0;H[g+76>>2]=1065353216;H[g+88>>2]=0;H[g+92>>2]=0;H[g+100>>2]=0;H[g+104>>2]=0;H[g+96>>2]=1065353216;H[g+108>>2]=0;H[g+112>>2]=0;H[g+116>>2]=1065353216;H[g+140>>2]=b;H[g+40>>2]=0;H[g+44>>2]=0;b=H[a+4>>2];if(b&1){b=g+40|0;H[b+4>>2]=-65281;i=M[d+32>>3];j=M[d>>3];k=M[d+8>>3];n=M[d+16>>3];o=M[d+24>>3];L[g+28>>2]=M[d+40>>3];L[g+24>>2]=i;F[g+32|0]=1;L[g+20>>2]=o;L[g+16>>2]=n;L[g+12>>2]=k;L[g+8>>2]=j;XT(b,g+8|0);b=H[a+4>>2]}if(!(b&2)){break h}b=g+40|0;H[b+4>>2]=l;i=M[a+56>>3];j=M[a- -64>>3];k=M[a+72>>3];n=M[a+80>>3];o=M[a+48>>3];L[g+28>>2]=M[a+88>>3];L[g+24>>2]=n;F[g+32|0]=1;L[g+20>>2]=k;L[g+16>>2]=j;L[g+12>>2]=i;L[g+8>>2]=o;XT(b,g+8|0)}Oa=g+160|0} -function lu(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=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),F=O(0),G=O(0),I=O(0),J=O(0),K=O(0),M=0,Q=0,R=0,S=0,T=0,U=0,V=0;h=Oa-144|0;Oa=h;f=a;v=L[a+8>>2];m=L[c+20>>2];o=L[d+20>>2];k=L[c+16>>2];i=L[d+16>>2];C=L[c+8>>2];y=L[c>>2];s=L[c+4>>2];z=L[c+12>>2];V=b;l=O(L[d+24>>2]-L[c+24>>2]);A=L[d>>2];D=O(A+A);j=L[d+8>>2];n=L[d+4>>2];E=L[d+12>>2];F=O(E+E);J=L[b+8>>2];q=O(O(O(D*j)-O(n*F))*J);w=O(l-q);L[h+92>>2]=w;o=O(o-m);n=O(J*O(O(j*F)+O(D*n)));B=O(o-n);L[h+88>>2]=B;G=O(q+l);L[h+80>>2]=G;I=O(n+o);L[h+76>>2]=I;l=O(q*O(-2));L[h+116>>2]=l;r=O(n*O(-2));L[h+112>>2]=r;K=O(y+y);p=O(z+z);x=O(v*O(O(C*K)-O(s*p)));L[h+56>>2]=x;u=O(-x);L[h+68>>2]=u;s=O(v*O(O(C*p)+O(K*s)));L[h+52>>2]=s;q=O(-s);L[h- -64>>2]=q;i=O(i-k);k=O(J*O(O(A*D)+O(O(E*F)+O(-1))));m=O(i-k);L[h+84>>2]=m;n=O(x*O(-2));L[h+104>>2]=n;o=O(s*O(-2));L[h+100>>2]=o;j=O(k*O(-2));L[h+108>>2]=j;p=O(v*O(O(y*K)+O(O(z*p)+O(-1))));L[h+48>>2]=p;t=O(p*O(-2));L[h+96>>2]=t;k=O(k+i);L[h+72>>2]=k;i=O(-p);L[h+60>>2]=i;L[h+8>>2]=u-x;L[h+4>>2]=q-s;L[h>>2]=i-p;L[h+136>>2]=w-G;L[h+132>>2]=B-I;L[h+128>>2]=m-k;J=uZ(h+48|0,h,h+72|0,h+128|0,h+44|0,h+40|0);s=L[a+4>>2];A=O(s+L[b+4>>2]);i=O(A+L[e>>2]);E=O(i*i);U=J>=E;a:{if(U){break a}k=O(W(O(O(l*l)+O(O(j*j)+O(r*r)))));L[h+132>>2]=k;v=O(W(O(O(n*n)+O(O(t*t)+O(o*o)))));L[h+128>>2]=v;if(v!=O(0)){i=O(O(1)/v);n=O(n*i);L[h+104>>2]=n;o=O(o*i);L[h+100>>2]=o;t=O(t*i);L[h+96>>2]=t}if(k!=O(0)){i=O(O(1)/k);l=O(i*l);L[h+116>>2]=l;r=O(i*r);L[h+112>>2]=r;j=O(j*i);L[h+108>>2]=j}if(O(P(O(O(n*l)+O(O(t*j)+O(o*r)))))>O(.9998000264167786)){L[h+36>>2]=k*O(.0010000000474974513);r=O(v*O(.0010000000474974513));L[h+32>>2]=r;a=H[g+4096>>2];l=n;j=o;e=0;while(1){d=h+48|0;M=d+N(e,24)|0;y=L[M+8>>2];z=L[M+4>>2];b=N(e,12);x=L[b+(h+96|0)>>2];C=L[M>>2];Q=b+h|0;b=1-e|0;R=d+N(b,24)|0;m=L[R>>2];L[Q>>2]=m;k=L[R+4>>2];L[Q+4>>2]=k;i=L[R+8>>2];L[Q+8>>2]=i;M=(e|0)==1?f:V;S=N(b,12)+h|0;d=(h+128|0)+(e<<2)|0;i=O(O(l*O(i-y))+O(O(x*O(m-C))+O(O(k-z)*j)));K=O(-r);b:{if(!(i>=K)){b=a;break b}if(!(i<=O(r+L[d>>2]))){b=a;break b}L[S>>2]=C+O(i*x);L[S+4>>2]=z+O(i*j);L[S+8>>2]=y+O(i*l);p=L[h+20>>2];m=O(p-L[h+8>>2]);w=L[h+12>>2];F=O(w-L[h>>2]);B=L[h+16>>2];k=O(B-L[h+4>>2]);i=O(O(m*m)+O(O(F*F)+O(k*k)));if(!(i>O(9.999999974752427e-7))){b=a;break b}if(!(i>>0>63){b=a;break c}D=L[M+4>>2];G=L[c+16>>2];I=L[c+20>>2];u=L[c+24>>2];b=a+1|0;H[g+4096>>2]=b;a=(a<<6)+g|0;q=O(W(i));i=O(O(1)/q);m=O(m*i);L[a+8>>2]=m;k=O(k*i);L[a+4>>2]=k;i=O(F*i);L[a>>2]=i;H[a+52>>2]=-1;L[a+12>>2]=q-A;L[a+24>>2]=u+O(p-O(m*D));L[a+20>>2]=I+O(B-O(k*D));L[a+16>>2]=G+O(w-O(i*D))}T=T+1|0}m=L[R+12>>2];L[Q>>2]=m;k=L[R+16>>2];L[Q+4>>2]=k;i=L[R+20>>2];L[Q+8>>2]=i;i=O(O(l*O(i-y))+O(O(x*O(m-C))+O(O(k-z)*j)));d:{if(!(i>=K)){a=b;break d}if(!(i<=O(r+L[d>>2]))){a=b;break d}L[S>>2]=C+O(i*x);L[S+4>>2]=z+O(i*j);L[S+8>>2]=y+O(i*l);B=L[h+20>>2];i=O(B-L[h+8>>2]);G=L[h+12>>2];w=O(G-L[h>>2]);I=L[h+16>>2];l=O(I-L[h+4>>2]);j=O(O(i*i)+O(O(w*w)+O(l*l)));if(!(j>O(9.999999974752427e-7))){a=b;break d}if(!(j>>0>63){a=b;break e}p=L[M+4>>2];u=L[c+16>>2];q=L[c+20>>2];m=L[c+24>>2];a=b+1|0;H[g+4096>>2]=a;b=(b<<6)+g|0;k=O(W(j));j=O(O(1)/k);i=O(i*j);L[b+8>>2]=i;l=O(l*j);L[b+4>>2]=l;j=O(w*j);L[b>>2]=j;H[b+52>>2]=-1;L[b+12>>2]=k-A;L[b+24>>2]=m+O(B-O(i*p));L[b+20>>2]=q+O(I-O(l*p));L[b+16>>2]=u+O(G-O(j*p))}T=T+1|0}e=e+1|0;if((e|0)!=2){r=L[(h+32|0)+(e<<2)>>2];b=(h+96|0)+N(e,12)|0;l=L[b+8>>2];j=L[b+4>>2];continue}break}if(T){break a}}j=L[h+56>>2];k=L[h+44>>2];q=O(j+O(k*O(L[h+68>>2]-j)));j=L[h+80>>2];l=L[h+40>>2];u=O(q-O(j+O(l*O(L[h+92>>2]-j))));j=L[h+48>>2];m=O(j+O(k*O(L[h+60>>2]-j)));j=L[h+72>>2];i=O(m-O(j+O(l*O(L[h+84>>2]-j))));j=L[h+52>>2];k=O(j+O(k*O(L[h+64>>2]-j)));j=L[h+76>>2];l=O(k-O(j+O(l*O(L[h+88>>2]-j))));j=O(O(u*u)+O(O(i*i)+O(l*l)));f:{if(jO(9.999999974752427e-7)){break f}t=O(1);n=O(0);o=O(0);break f}j=O(O(1)/O(W(j)));n=O(u*j);o=O(l*j);t=O(i*j)}a=H[g+4096>>2];if(a>>>0>63){break a}i=L[c+16>>2];l=L[c+20>>2];j=L[c+24>>2];H[g+4096>>2]=a+1;a=(a<<6)+g|0;L[a+8>>2]=n;L[a+4>>2]=o;L[a>>2]=t;H[a+52>>2]=-1;L[a+12>>2]=O(W(J))-A;L[a+24>>2]=O(q+j)-O(s*n);L[a+20>>2]=O(k+l)-O(s*o);L[a+16>>2]=O(m+i)-O(s*t)}Oa=h+144|0;return!U|0}function T4(a,b,c,d,e,f,g){var h=O(0),i=O(0),j=0,k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=0,D=O(0),E=O(0),F=O(0),G=O(0),I=O(0),J=O(0),K=O(0),M=O(0),Q=O(0),R=O(0),S=O(0),T=0,U=O(0),V=O(0),X=O(0),Y=0,Z=0,_=0;j=Oa-80|0;Oa=j;T=H[a+40>>2];C=H[a+36>>2];L[e+8>>2]=L[a+44>>2];H[e>>2]=C;H[e+4>>2]=T;k=L[a+40>>2];h=L[a+36>>2];L[j+48>>2]=-L[a+44>>2];L[j+44>>2]=-k;L[j+40>>2]=-h;e=j+40|0;R4(a,e);L[d>>2]=L[a+48>>2];L[j+40>>2]=L[a>>2];L[j+44>>2]=L[a+4>>2];L[j+48>>2]=L[a+8>>2];L[j+52>>2]=L[a+12>>2];L[j+56>>2]=L[a+16>>2];L[j+60>>2]=L[a+20>>2];L[j+64>>2]=L[a+24>>2];L[j+68>>2]=L[a+28>>2];L[j+72>>2]=L[a+32>>2];v=L[e+32>>2];B=L[e+28>>2];w=L[e+20>>2];x=L[e+16>>2];D=L[e+24>>2];E=L[e+12>>2];F=L[e+8>>2];G=L[e+4>>2];y=L[e>>2];a=Oa+-64|0;k=O(1);while(1){a:{p=O(o+o);s=O(p*m);l=O(q+q);z=O(l*k);h=O(s+z);r=O(l*m);t=O(p*k);i=O(r-t);n=O(O(1)-O(o*p));I=O(q*l);l=O(n-I);K=O(O(O(h*y)+O(i*G))+O(l*F));M=O(O(O(h*E)+O(i*x))+O(l*w));Q=O(O(O(h*D)+O(i*B))+O(l*v));U=O(O(O(h*K)+O(i*M))+O(l*Q));L[a+40>>2]=U;R=O(p*q);A=O(m+m);V=O(A*k);p=O(R-V);X=O(m*A);n=O(n-X);r=O(r+t);A=O(O(O(p*y)+O(n*G))+O(r*F));u=O(O(O(p*E)+O(n*x))+O(r*w));S=O(O(O(p*D)+O(n*B))+O(r*v));L[a+36>>2]=O(O(h*A)+O(i*u))+O(l*S);J=h;h=O(O(O(1)-I)-X);t=O(R+V);s=O(s-z);z=O(O(O(h*y)+O(t*G))+O(s*F));I=i;i=O(O(O(h*E)+O(t*x))+O(s*w));R=l;l=O(O(O(h*D)+O(t*B))+O(s*v));L[a+32>>2]=O(O(J*z)+O(I*i))+O(R*l);I=O(O(O(p*A)+O(n*u))+O(r*S));L[a+24>>2]=I;L[a+20>>2]=O(O(p*z)+O(n*i))+O(r*l);z=O(O(O(h*z)+O(t*i))+O(s*l));L[a+8>>2]=z;i=O(O(O(h*K)+O(t*M))+O(s*Q));L[a+16>>2]=i;h=O(O(O(h*A)+O(t*u))+O(s*S));L[a+12>>2]=h;l=O(O(O(p*K)+O(n*M))+O(r*Q));L[a+28>>2]=l;i=O(P(i));h=O(P(h));e=i>h?1:2;n=h;h=O(P(l));e=h>i?n>>1|0)|0)+1|0;T=C&3;Y=(a+8|0)+N(T,12)|0;C=(C+(T>>>1|0)|0)+1&3;Z=C<<2;h=L[Y+Z>>2];if(h==O(0)){break a}i=O(L[(T<<2)+Y>>2]-L[Z+((a+8|0)+N(C,12)|0)>>2]);h=O(h+h);if(O(P(i))>O(O(P(h))*O(2e6))){break a}h=O(i/h);i=O(P(h));b:{if(i>O(1e3)){H[a+56>>2]=0;H[a+48>>2]=0;H[a+52>>2]=0;L[(a+48|0)+(e<<2)>>2]=O(1)/O(h*O(4));h=O(1);break b}H[a+56>>2]=0;H[a+48>>2]=0;H[a+52>>2]=0;i=O(O(1)/O(i+O(W(O(O(h*h)+O(1))))));i=O(O(1)/O(W(O(O(i*i)+O(1)))));l=O(W(O(O(O(1)-i)*O(.5))));L[(a+48|0)+(e<<2)>>2]=h>=O(0)?l:O(-l);h=O(W(O(O(i+O(1))*O(.5))))}i=L[a+48>>2];l=L[a+52>>2];p=L[a+56>>2];n=O(O(O(O(k*h)-O(i*o))-O(q*l))-O(m*p));J=n;R=O(n*n);n=O(O(O(o*l)+O(O(k*p)+O(m*h)))-O(i*q));r=O(O(O(q*p)+O(O(k*i)+O(o*h)))-O(l*m));q=O(O(O(m*i)+O(O(k*l)+O(q*h)))-O(p*o));h=O(O(1)/O(W(O(R+O(O(n*n)+O(O(r*r)+O(q*q)))))));k=O(J*h);m=O(n*h);q=O(q*h);o=O(r*h);_=_+1|0;if((_|0)!=24){continue}}break}L[c+12>>2]=k;L[c+8>>2]=m;L[c+4>>2]=q;L[c>>2]=o;L[j+24>>2]=U;L[j+20>>2]=I;L[j+16>>2]=z;k=L[j+16>>2];L[b>>2]=k;h=L[j+20>>2];L[b+4>>2]=h;m=L[j+24>>2];L[b+8>>2]=m;if(!(!(!(k>O(0))|!(h>O(0)))&m>O(0))){a=H[33808];H[j>>2]=g;o5(a,2,5194,84,60860,j);Ra[H[H[f>>2]+40>>2]](j+16|0,f,O(1.0099999904632568));Ra[H[H[f>>2]+76>>2]](j+40|0,f);h=L[j+40>>2];p=O(-h);i=O(p-h);m=L[j+48>>2];l=O(-m);y=O(i*l);k=L[j+52>>2];q=L[j+44>>2];x=O(-q);o=O(x-q);K=O(k*o);n=L[j+28>>2];r=L[j+16>>2];D=O(O(n-r)*O(.5));M=O(k*i);Q=O(o*l);t=L[j+32>>2];s=L[j+20>>2];E=O(O(t-s)*O(.5));A=O(O(h*i)+O(1));u=O(o*x);o=L[j+36>>2];v=L[j+24>>2];F=O(O(o-v)*O(.5));w=O(O(O(P(O(O(y-K)*D)))+O(P(O(O(M+Q)*E))))+O(P(O(O(A-u)*F))));J=p;p=O(O(r+n)*O(.5));p=O(p+p);n=O(O(s+t)*O(.5));n=O(n+n);o=O(O(v+o)*O(.5));r=O(o+o);t=O(O(O(J*p)-O(n*q))-O(m*r));s=O(L[j- -64>>2]*O(-2));v=O(L[j+56>>2]*O(-2));B=O(L[j+60>>2]*O(-2));G=O(O(m*s)+O(O(h*v)+O(B*q)));o=O(O(k*k)+O(-.5));S=O(O(O(m*G)+O(O(s*o)-O(k*O(O(h*B)-O(v*q)))))+O(O(O(r*o)+O(k*O(O(q*p)-O(h*n))))-O(m*t)));w=O(O(O(w+S)-O(S-w))*O(.5));J=O(O(1)-u);u=O(l-m);l=O(u*l);x=O(i*x);u=O(k*u);i=O(O(O(P(O(O(J-l)*D)))+O(P(O(O(x-u)*E))))+O(P(O(O(y+K)*F))));y=O(O(O(h*G)+O(O(v*o)-O(k*O(O(q*s)-O(B*m)))))+O(O(O(p*o)+O(k*O(O(m*n)-O(q*r))))-O(h*t)));i=O(O(O(i+y)-O(y-i))*O(.5));l=O(O(O(P(O(O(x+u)*D)))+O(P(O(O(A-l)*E))))+O(P(O(O(Q-M)*F))));k=O(O(O(q*G)+O(O(B*o)-O(k*O(O(m*v)-O(s*h)))))+O(O(O(n*o)+O(k*O(O(h*r)-O(m*p))))-O(q*t)));k=O(O(O(l+k)-O(k-l))*O(.5));m=O(O((w!=O(0)?w:O(1))*O((i!=O(0)?i:O(1))*(k!=O(0)?k:O(1))))*O(8));h=O(L[d>>2]/m);q=O(i*i);o=O(k*k);k=O(m*O(.3333333432674408));L[b+8>>2]=h*O(O(q+o)*k);m=O(w*w);L[b+4>>2]=h*O(O(m+q)*k);L[b>>2]=h*O(O(m+o)*k);H[c+8>>2]=0;H[c+12>>2]=1065353216;H[c>>2]=0;H[c+4>>2]=0}Oa=j+80|0}function rq(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;e=Ra[H[H[b>>2]+12>>2]](b)|0;i=Ra[H[H[b>>2]+8>>2]](b)|0;g=a+4|0;j=i+H[a+8>>2]|0;if(j>>>0>(H[a+12>>2]&2147483647)>>>0){a:{if(!j){break a}d=j<<4;if(!d){break a}c=H[33808];f=c+12|0;f=(m=f,n=d,o=Ra[H[H[c>>2]+20>>2]](c)|0?23648:55639,p=13582,q=553,l=H[H[f>>2]+8>>2],Ra[l](m|0,n|0,o|0,p|0,q|0)|0)}h=H[g>>2];c=H[g+4>>2];if((c|0)>0){k=(c<<4)+f|0;d=h;c=f;while(1){L[c>>2]=L[d>>2];L[c+4>>2]=L[d+4>>2];L[c+8>>2]=L[d+8>>2];H[c+12>>2]=H[d+12>>2];d=d+16|0;c=c+16|0;if(k>>>0>c>>>0){continue}break}}if(!(!h|H[g+8>>2]<0)){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,h)}H[g+8>>2]=j;H[g>>2]=f}if((i|0)>0){f=(i<<4)+e|0;while(1){d=H[a+8>>2];b:{if(d>>>0>=(H[a+12>>2]&2147483647)>>>0){sq(g,e);break b}c=H[a+4>>2]+(d<<4)|0;L[c>>2]=L[e>>2];L[c+4>>2]=L[e+4>>2];L[c+8>>2]=L[e+8>>2];H[c+12>>2]=H[e+12>>2];H[a+8>>2]=d+1}e=e+16|0;if(f>>>0>e>>>0){continue}break}}e=Ra[H[H[b>>2]+20>>2]](b)|0;c=Ra[H[H[b>>2]+16>>2]](b)|0;d=a+16|0;f=c+H[a+20>>2]|0;if(f>>>0>(H[a+24>>2]&2147483647)>>>0){Cj(d,f)}if((c|0)>0){h=(c<<5)+e|0;while(1){f=H[a+20>>2];c:{if(f>>>0>=(H[a+24>>2]&2147483647)>>>0){tq(d,e);break c}c=H[a+16>>2]+(f<<5)|0;L[c>>2]=L[e>>2];L[c+4>>2]=L[e+4>>2];L[c+8>>2]=L[e+8>>2];H[c+12>>2]=H[e+12>>2];L[c+16>>2]=L[e+16>>2];L[c+20>>2]=L[e+20>>2];L[c+24>>2]=L[e+24>>2];H[c+28>>2]=H[e+28>>2];H[a+20>>2]=f+1}e=e+32|0;if(h>>>0>e>>>0){continue}break}}e=Ra[H[H[b>>2]+28>>2]](b)|0;j=Ra[H[H[b>>2]+24>>2]](b)|0;g=a+28|0;i=j+H[g+4>>2]|0;if(i>>>0>(H[g+8>>2]&2147483647)>>>0){f=0;d:{if(!i){break d}d=N(i,48);if(!d){break d}c=H[33808];f=Ra[H[H[c>>2]+20>>2]](c)|0?37984:55639;f=Ra[H[H[c+12>>2]+8>>2]](c+12|0,d,f,13582,553)|0}h=H[g>>2];c=H[g+4>>2];if((c|0)>0){k=N(c,48)+f|0;d=h;c=f;while(1){L[c>>2]=L[d>>2];L[c+4>>2]=L[d+4>>2];L[c+8>>2]=L[d+8>>2];H[c+12>>2]=H[d+12>>2];L[c+16>>2]=L[d+16>>2];L[c+20>>2]=L[d+20>>2];L[c+24>>2]=L[d+24>>2];H[c+28>>2]=H[d+28>>2];L[c+32>>2]=L[d+32>>2];L[c+36>>2]=L[d+36>>2];L[c+40>>2]=L[d+40>>2];H[c+44>>2]=H[d+44>>2];d=d+48|0;c=c+48|0;if(k>>>0>c>>>0){continue}break}}if(!(!h|H[g+8>>2]<0)){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,h)}H[g+8>>2]=i;H[g>>2]=f}if((j|0)>0){f=N(j,48)+e|0;while(1){d=H[g+4>>2];e:{if(d>>>0>=(H[g+8>>2]&2147483647)>>>0){Wr(g,e);break e}c=H[g>>2]+N(d,48)|0;L[c>>2]=L[e>>2];L[c+4>>2]=L[e+4>>2];L[c+8>>2]=L[e+8>>2];H[c+12>>2]=H[e+12>>2];L[c+16>>2]=L[e+16>>2];L[c+20>>2]=L[e+20>>2];L[c+24>>2]=L[e+24>>2];H[c+28>>2]=H[e+28>>2];L[c+32>>2]=L[e+32>>2];L[c+36>>2]=L[e+36>>2];L[c+40>>2]=L[e+40>>2];H[c+44>>2]=H[e+44>>2];H[g+4>>2]=d+1}e=e+48|0;if(f>>>0>e>>>0){continue}break}}e=Ra[H[H[b>>2]+36>>2]](b)|0;f=Ra[H[H[b>>2]+32>>2]](b)|0;h=f+H[a+44>>2]|0;if(h>>>0>(H[a+48>>2]&2147483647)>>>0){c=0;f:{if(!h){break f}d=N(h,24);if(!d){break f}b=H[33808];c=b+12|0;c=(q=c,p=d,o=Ra[H[H[b>>2]+20>>2]](b)|0?23176:55639,n=13582,m=553,l=H[H[c>>2]+8>>2],Ra[l](q|0,p|0,o|0,n|0,m|0)|0)}b=H[a+44>>2];if((b|0)>0){g=N(b,24)+c|0;b=H[a+40>>2];d=c;while(1){L[d>>2]=L[b>>2];L[d+4>>2]=L[b+4>>2];L[d+8>>2]=L[b+8>>2];i=H[b+16>>2];H[d+12>>2]=H[b+12>>2];H[d+16>>2]=i;H[d+20>>2]=H[b+20>>2];b=b+24|0;d=d+24|0;if(g>>>0>d>>>0){continue}break}}g:{if(H[a+48>>2]<0){break g}b=H[a+40>>2];if(!b){break g}d=H[33808]+12|0;Ra[H[H[d>>2]+12>>2]](d,b)}H[a+48>>2]=h;H[a+40>>2]=c}if((f|0)>0){g=N(f,24)+e|0;while(1){b=H[a+44>>2];h:{if(b>>>0>=(H[a+48>>2]&2147483647)>>>0){c=0;b=H[a+48>>2]&2147483647;h=b?b<<1:1;i:{if(!h){break i}d=N(h,24);if(!d){break i}b=H[33808];c=b+12|0;c=(m=c,n=d,o=Ra[H[H[b>>2]+20>>2]](b)|0?23176:55639,p=13582,q=553,l=H[H[c>>2]+8>>2],Ra[l](m|0,n|0,o|0,p|0,q|0)|0)}b=H[a+44>>2];if((b|0)>0){b=N(b,24)+c|0;f=H[a+40>>2];d=c;while(1){L[d>>2]=L[f>>2];L[d+4>>2]=L[f+4>>2];L[d+8>>2]=L[f+8>>2];i=H[f+16>>2];H[d+12>>2]=H[f+12>>2];H[d+16>>2]=i;H[d+20>>2]=H[f+20>>2];f=f+24|0;d=d+24|0;if(b>>>0>d>>>0){continue}break}b=H[a+44>>2]}b=N(b,24)+c|0;L[b>>2]=L[e>>2];L[b+4>>2]=L[e+4>>2];L[b+8>>2]=L[e+8>>2];H[b+20>>2]=H[e+20>>2];d=H[e+16>>2];H[b+12>>2]=H[e+12>>2];H[b+16>>2]=d;j:{if(H[a+48>>2]<0){break j}b=H[a+40>>2];if(!b){break j}d=H[33808]+12|0;Ra[H[H[d>>2]+12>>2]](d,b)}H[a+48>>2]=h;H[a+40>>2]=c;break h}b=H[a+40>>2]+N(b,24)|0;L[b>>2]=L[e>>2];L[b+4>>2]=L[e+4>>2];L[b+8>>2]=L[e+8>>2];c=H[e+16>>2];H[b+12>>2]=H[e+12>>2];H[b+16>>2]=c;H[b+20>>2]=H[e+20>>2]}H[a+44>>2]=H[a+44>>2]+1;e=e+24|0;if(g>>>0>e>>>0){continue}break}}}function th(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=O(0),g=0,h=O(0),i=O(0),j=O(0),k=0,l=0,m=0,n=O(0),o=0,p=0,q=0,r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=0,y=0,z=O(0),A=O(0),B=0,C=0,D=0,E=0,G=0,J=0,K=0;g=Oa-32|0;Oa=g;d=H[a+100>>2];a:{b:{if(b){if(d){break b}c=0;o5(H[33808],8,15966,332,63082,0);break a}if(!d){break b}c=0;o5(H[33808],8,15966,338,63023,0);break a}H[a+116>>2]=H[a+116>>2]+1;h=L[c+12>>2];i=L[c+8>>2];j=L[c>>2];n=L[c+4>>2];f=O(O(1)/O(W(O(O(h*h)+O(O(i*i)+O(O(j*j)+O(n*n)))))));L[g+12>>2]=h*f;L[g+8>>2]=i*f;L[g+4>>2]=n*f;L[g>>2]=j*f;L[g+16>>2]=L[c+16>>2];L[g+20>>2]=L[c+20>>2];L[g+24>>2]=L[c+24>>2];c:{if(!H[33770]){o5(H[33808],8,4393,324,61273,0);c=0;break c}k=b;e=Oa+-64|0;Oa=e;p=H[33768];b=H[p+3336>>2];if(!b){q=Oa-16|0;Oa=q;l=p+3048|0;c=H[l+284>>2];if(c){b=H[33808];d=b+12|0;o=(D=d,E=c,G=Ra[H[H[b>>2]+20>>2]](b)|0?34594:55639,J=15259,K=180,C=H[H[d>>2]+8>>2],Ra[C](D|0,E|0,G|0,J|0,K|0)|0)}else{o=0}H[q+12>>2]=o;b=H[l+268>>2];d:{if(b>>>0>=(H[l+272>>2]&2147483647)>>>0){d=l+4|0;c=H[d+268>>2]&2147483647;x=c?c<<1:1;b=0;e:{if(!x){break e}c=x<<2;if(!(I[d+256|0]|c>>>0>256)){F[d+256|0]=1;b=d;break e}b=0;if(!c){break e}b=H[33808];m=Ra[H[H[b>>2]+20>>2]](b)|0?34594:55639;b=Ra[H[H[b+12>>2]+8>>2]](b+12|0,c,m,13582,553)|0}m=H[d+264>>2];B=b+(m<<2)|0;if((m|0)>0){y=H[d+260>>2];c=b;while(1){H[c>>2]=H[y>>2];y=y+4|0;c=c+4|0;if(B>>>0>c>>>0){continue}break}}H[B>>2]=H[q+12>>2];f:{if(H[d+268>>2]<0){break f}c=H[d+260>>2];if((c|0)==(d|0)){F[d+256|0]=0;break f}if(!c){break f}m=H[33808];Ra[H[H[m+12>>2]+12>>2]](m+12|0,c);m=H[d+264>>2]}H[d+268>>2]=x;H[d+260>>2]=b;H[d+264>>2]=m+1;break d}H[H[l+264>>2]+(b<<2)>>2]=o;H[l+268>>2]=b+1}c=(N(H[l+276>>2],384)+o|0)-384|0;if(o>>>0<=c>>>0){b=H[l+288>>2];while(1){H[c>>2]=b;b=c;c=b-384|0;if(o>>>0<=c>>>0){continue}break}H[l+288>>2]=b}Oa=q+16|0;b=H[p+3336>>2]}H[p+3336>>2]=H[b>>2];c=p+3328|0;H[c>>2]=H[c>>2]+1;c=Oa-16|0;Oa=c;H[b+4>>2]=65549;H[b+8>>2]=0;H[b>>2]=104852;H[b+16>>2]=0;H[b+12>>2]=0;H[b>>2]=104256;H[b+8>>2]=0;H[b+20>>2]=0;H[b+24>>2]=65536;H[b+28>>2]=0;H[b+32>>2]=65536;H[b+36>>2]=-1;H[b+40>>2]=0;H[b+56>>2]=0;H[b>>2]=103952;H[b+48>>2]=0;H[b+52>>2]=0;BF(b- -64|0,2,g);L[b+256>>2]=L[b+80>>2];d=H[b+88>>2];H[b+260>>2]=H[b+84>>2];H[b+264>>2]=d;d=H[b+96>>2];H[b+268>>2]=H[b+92>>2];H[b+272>>2]=d;d=H[b+104>>2];H[b+276>>2]=H[b+100>>2];H[b+280>>2]=d;d=H[b+148>>2];H[b+284>>2]=H[b+144>>2];H[b+288>>2]=d;L[b+292>>2]=L[b+152>>2];d=H[b+164>>2];H[b+296>>2]=H[b+160>>2];H[b+300>>2]=d;L[b+304>>2]=L[b+168>>2];d=H[b+52>>2];f=L[b+220>>2];H[b+312>>2]=1;H[b+316>>2]=0;L[b+308>>2]=f;H[b+356>>2]=0;H[b+328>>2]=k;H[b+324>>2]=0;H[b+320>>2]=a;H[b>>2]=103544;H[b+368>>2]=-1;H[b+360>>2]=4;H[b+364>>2]=-1;H[b+352>>2]=b+332;F[b+348|0]=1;H[b+52>>2]=d&-251658241|67108864;g:{if(!k){break g}H[c+12>>2]=b;d=H[k+356>>2];if(d>>>0>=(H[k+360>>2]&2147483647)>>>0){Zj(k+332|0,c+12|0);break g}H[H[k+352>>2]+(d<<2)>>2]=b;H[k+356>>2]=d+1}Oa=c+16|0;h:{if(k){Ra[H[H[k>>2]+112>>2]](e,k);n=L[g+8>>2];r=L[g+4>>2];s=L[g+12>>2];t=L[g>>2];h=L[e>>2];f=O(L[g+16>>2]-L[e+16>>2]);u=O(f+f);f=O(L[g+20>>2]-L[e+20>>2]);v=O(f+f);i=L[e+4>>2];j=L[e+8>>2];f=O(L[g+24>>2]-L[e+24>>2]);w=O(f+f);z=O(O(O(O(-h)*u)-O(v*i))-O(j*w));f=L[e+12>>2];A=O(O(f*f)+O(-.5));L[e+56>>2]=O(O(w*A)+O(f*O(O(i*u)-O(h*v))))-O(j*z);L[e+52>>2]=O(O(v*A)+O(f*O(O(h*w)-O(j*u))))-O(i*z);L[e+44>>2]=O(j*n)+O(O(i*r)+O(O(f*s)+O(h*t)));L[e+40>>2]=O(t*i)+O(O(O(f*n)-O(s*j))-O(h*r));L[e+36>>2]=O(n*h)+O(O(O(f*r)-O(s*i))-O(j*t));L[e+32>>2]=O(r*j)+O(O(O(f*t)-O(s*h))-O(i*n));L[e+48>>2]=O(O(u*A)+O(f*O(O(j*v)-O(i*w))))-O(h*z);c=0;H[e+24>>2]=0;H[e+16>>2]=0;H[e+20>>2]=0;H[e+8>>2]=0;H[e+12>>2]=1065353216;H[e>>2]=0;H[e+4>>2]=0;d=Ra[H[H[a>>2]+108>>2]](a,k,e+32|0,b,e)|0;if(!d){Ra[H[H[b>>2]+16>>2]](b);o5(H[33808],32,4393,207,61187,0);break h}H[b+324>>2]=d}c=b}Oa=e- -64|0}if(!c){c=0;break a}i:{if((H[a+16>>2]>>>30|0)-3>>>0<4294967294){break i}b=H[a+12>>2];if(!b){break i}b=b-16|0;if(!b){break i}d=b+16|0;Dt(d,c+48|0,0,0,0);nt(c+20|0,b,c,0,0,0);b=Ra[H[H[c>>2]+252>>2]](c)|0;if(b){Ot(d,Ra[H[H[b>>2]+48>>2]](b)|0)}if(H[c+16>>2]){qg(c+12|0)}b=Ra[H[H[c>>2]+248>>2]](c)|0;b=H[(Ra[H[H[b>>2]+100>>2]](b)|0)+12>>2];if(b){C=c,K=uF(b,H[c- -64>>2]),H[C+364>>2]=K}}H[g>>2]=c;b=H[a+100>>2];if(b>>>0>=(H[a+104>>2]&2147483647)>>>0){Zj(a+76|0,g);break a}H[H[a+96>>2]+(b<<2)>>2]=c;H[a+100>>2]=b+1}Oa=g+32|0;return c|0}function p1(a,b,c,d,e,f,g,h){var i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=0,s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),G=O(0),I=O(0),J=0;r=Oa-48|0;Oa=r;F[g|0]=0;i=L[a+16>>2];k=L[a>>2];m=L[a+12>>2];l=L[a+4>>2];s=L[a+8>>2];j=O(L[a+20>>2]-s);L[r+40>>2]=j;i=O(i-l);L[r+36>>2]=i;n=O(m-k);L[r+32>>2]=n;m=L[a+28>>2];o=L[a+24>>2];s=O(L[a+32>>2]-s);L[r+24>>2]=s;v=O(m-l);L[r+20>>2]=v;o=O(o-k);L[r+16>>2]=o;a:{b:{if(h){z=L[r+24>>2];s=L[c+8>>2];j=L[a+8>>2];l=O(s-j);A=L[r+16>>2];v=L[c>>2];i=L[a>>2];m=O(v-i);o=L[c+4>>2];k=L[a+4>>2];n=O(o-k);B=L[r+20>>2];t=O(O(z*l)+O(O(A*m)+O(n*B)));C=L[r+40>>2];D=L[r+32>>2];x=L[r+36>>2];u=O(O(C*l)+O(O(D*m)+O(n*x)));c:{if(u<=O(0)&t<=O(0)){break c}l=L[a+20>>2];p=O(s-l);m=L[a+12>>2];q=O(v-m);n=L[a+16>>2];w=O(o-n);E=O(O(z*p)+O(O(A*q)+O(B*w)));p=O(O(C*p)+O(O(D*q)+O(x*w)));if(!(!(p>=O(0))|!(p>=E))){i=m;k=n;j=l;break c}G=O(O(u*E)-O(t*p));if(!(!(p<=O(0))|(!(G<=O(0))|!(u>=O(0))))){l=O(u/O(u-p));j=O(j+O(l*C));k=O(k+O(l*x));i=O(i+O(l*D));break c}w=s;s=L[a+32>>2];q=O(w-s);w=v;v=L[a+24>>2];y=O(w-v);w=o;o=L[a+28>>2];I=O(w-o);w=O(O(C*q)+O(O(D*y)+O(x*I)));q=O(O(z*q)+O(O(A*y)+O(B*I)));if(!(!(q>=O(0))|!(q>=w))){i=v;k=o;j=s;break c}u=O(O(w*t)-O(q*u));if(!(!(q<=O(0))|(!(u<=O(0))|!(t>=O(0))))){l=O(t/O(t-q));j=O(j+O(l*z));k=O(k+O(l*B));i=O(i+O(l*A));break c}d:{y=O(O(p*q)-O(E*w));if(!(y<=O(0))){break d}t=O(E-p);if(!(t>=O(0))){break d}p=O(w-q);if(!(p>=O(0))){break d}i=O(t/O(t+p));j=O(l+O(O(s-l)*i));k=O(n+O(O(o-n)*i));i=O(m+O(O(v-m)*i));break c}m=O(O(1)/O(G+O(y+u)));l=O(G*m);m=O(u*m);j=O(O(z*l)+O(j+O(C*m)));k=O(O(B*l)+O(k+O(x*m)));i=O(O(A*l)+O(i+O(D*m)))}L[r+8>>2]=j;L[r+4>>2]=k;L[r>>2]=i;j=O(L[r+8>>2]-L[c+8>>2]);i=O(j*j);j=O(L[r>>2]-L[c>>2]);k=O(j*j);j=O(L[r+4>>2]-L[c+4>>2]);if(O(i+O(k+O(j*j)))<=O(d*d)){H[f>>2]=0;break b}i=L[r+36>>2];n=L[r+32>>2];o=L[r+16>>2];v=L[r+20>>2];s=L[r+24>>2];j=L[r+40>>2]}m=L[e>>2];t=L[e+4>>2];A=O(O(m*v)-O(o*t));k=L[e+8>>2];B=O(O(t*s)-O(v*k));C=O(O(k*o)-O(s*m));l=O(O(j*A)+O(O(n*B)+O(C*i)));if(l>O(-9999999747378752e-21)&l>2]*d);q=O(L[b>>2]*d);u=O(L[b+4>>2]*d);b=O(O(k*p)+O(O(m*q)+O(u*t)))>=O(0);z=O(O(1)/l);w=k;k=L[a>>2];q=O(O(L[c>>2]-(b?O(-q):q))-k);l=L[a+4>>2];u=O(O(L[c+4>>2]-(b?O(-u):u))-l);D=O(O(q*i)-O(n*u));x=m;y=i;m=L[a+8>>2];i=O(O(L[c+8>>2]-(b?O(-p):p))-m);p=O(O(u*j)-O(y*i));n=O(O(i*n)-O(j*q));j=O(z*O(O(w*D)+O(O(x*p)+O(t*n))));i=O(z*O(O(i*A)+O(O(q*B)+O(C*u))));b=iO(1)|(jO(1)))){d=O(z*O(O(s*D)+O(O(o*p)+O(v*n))));if(d>2]=d;J=1;F[g|0]=1;break a}e:{f:{g:{h:{if(b){if(j>2];s=O(m-n);v=L[a+32>>2];o=O(O(O(1)-i)-j);u=O(O(O(i*n)+O(j*v))+O(o*m));x=O(s*O(u-n));n=L[a+12>>2];t=O(k-n);p=L[a+24>>2];z=O(O(O(i*n)+O(j*p))+O(o*k));y=O(t*O(z-n));n=L[a+16>>2];q=O(l-n);w=j;j=L[a+28>>2];o=O(O(O(i*n)+O(w*j))+O(o*l));if(!(O(x+O(y+O(q*O(o-n))))O(1))){b=0;g=2;break e}n=L[a+32>>2];s=O(n-m);v=L[a+20>>2];o=O(O(O(1)-i)-j);q=O(O(O(i*v)+O(j*n))+O(o*m));x=O(s*O(q-m));m=L[a+24>>2];t=O(m-k);p=L[a+12>>2];u=O(O(O(i*p)+O(j*m))+O(o*k));y=O(t*O(u-k));k=i;i=L[a+16>>2];w=j;j=L[a+28>>2];o=O(O(O(k*i)+O(w*j))+O(o*l));k=O(j-l);if(O(x+O(y+O(O(o-l)*k)))O(1))){break f}n=L[a+20>>2];s=O(n-m);v=L[a+32>>2];o=O(O(O(1)-i)-j);q=O(O(O(i*n)+O(j*v))+O(o*m));x=O(s*O(q-m));m=L[a+12>>2];t=O(m-k);p=L[a+24>>2];u=O(O(O(i*m)+O(j*p))+O(o*k));y=O(t*O(u-k));k=i;i=L[a+16>>2];w=j;j=L[a+28>>2];o=O(O(O(k*i)+O(w*j))+O(o*l));k=O(i-l);if(O(x+O(y+O(O(o-l)*k)))>2]=L[r>>2];break b}b=0;g=1}if(!WV(c,e,N(b,12)+a|0,N(g,12)+a|0,d,r)){break a}d=L[r>>2];if(!(d>=O(0))){break a}L[f>>2]=d}J=1}Oa=r+48|0;return J}function bx(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=O(0),i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=O(0),r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;e=Oa-1328|0;Oa=e;a:{if(I[a+488|0]){o5(H[33808],8,10222,1211,65748,0);break a}j=a+112|0;Hw(a,j);g=H[a+448>>2];t=H[a+468>>2];x=S6(H[d+40>>2],0,N(t,c)<<2);m=I[H[a+476>>2]];l=H[d+52>>2];H[e+1320>>2]=0;d=e+1312|0;H[d>>2]=0;H[d+4>>2]=0;d=e+1304|0;H[d>>2]=0;H[d+4>>2]=0;d=e+1296|0;H[d>>2]=0;H[d+4>>2]=0;d=e+1288|0;H[d>>2]=0;H[d+4>>2]=0;H[e+1280>>2]=0;H[e+1284>>2]=0;y=Fw(l,g,e+1280|0);r=H[e+1292>>2];p=H[a+468>>2];n=(p<<3)+15&-16;g=H[l+4>>2];d=H[l+8>>2];f=H[(g+(d<<2)|0)-4>>2];if((n|0)<=(f-H[l+16>>2]|0)){f=f-n|0;H[e+320>>2]=f;b:{if(d>>>0>=(H[l+12>>2]&2147483647)>>>0){Xr(l+4|0,e+320|0);break b}H[g+(d<<2)>>2]=f;H[l+8>>2]=d+1}u=H[e+320>>2]}if(!c){break a}n=m&1;v=p<<2;m=v+u|0;q=O(O(1)/L[a+464>>2]);z=p&-4;w=p&3;A=p-1>>>0<3;while(1){f=N(s,12)+b|0;d=H[f+8>>2];S6(e+320|0,0,960);H[e+1260>>2]=2139095039;H[e+1244>>2]=-8388609;H[e+1180>>2]=2139095039;H[e+1164>>2]=-8388609;H[e+1100>>2]=2139095039;H[e+1084>>2]=-8388609;H[e+1020>>2]=2139095039;H[e+1004>>2]=-8388609;H[e+940>>2]=2139095039;H[e+924>>2]=-8388609;H[e+860>>2]=2139095039;H[e+844>>2]=-8388609;H[e+780>>2]=2139095039;H[e+764>>2]=-8388609;H[e+700>>2]=2139095039;H[e+684>>2]=-8388609;H[e+620>>2]=2139095039;H[e+604>>2]=-8388609;H[e+540>>2]=2139095039;H[e+524>>2]=-8388609;H[e+460>>2]=2139095039;H[e+444>>2]=-8388609;H[e+380>>2]=2139095039;H[e+364>>2]=-8388609;c:{if(H[d+24>>2]){g=H[d+32>>2];L[e+288>>2]=L[g>>2];L[e+292>>2]=L[g+4>>2];L[e+296>>2]=L[g+8>>2];L[e+300>>2]=L[g+12>>2];L[e+304>>2]=L[g+16>>2];L[e+308>>2]=L[g+20>>2];h=L[g+24>>2];break c}H[e+304>>2]=0;H[e+308>>2]=0;H[e+296>>2]=0;H[e+300>>2]=1065353216;H[e+288>>2]=0;H[e+292>>2]=0;h=O(0)}L[e+312>>2]=h;d:{if(H[d+28>>2]){g=H[d+36>>2];L[e+256>>2]=L[g>>2];L[e+260>>2]=L[g+4>>2];L[e+264>>2]=L[g+8>>2];L[e+268>>2]=L[g+12>>2];L[e+272>>2]=L[g+16>>2];L[e+276>>2]=L[g+20>>2];h=L[g+24>>2];break d}H[e+272>>2]=0;H[e+276>>2]=0;H[e+264>>2]=0;H[e+268>>2]=1065353216;H[e+256>>2]=0;H[e+260>>2]=0;h=O(0)}L[e+280>>2]=h;H[e+248>>2]=0;H[e+240>>2]=0;H[e+244>>2]=0;o=Ra[H[d+12>>2]](e+320|0,e+240|0,12,e+192|0,H[d+20>>2],e+288|0,e+256|0,(J[d+10>>1]&512)>>>9|0,e+224|0,e+208|0)|0;i=H[f+4>>2];f=H[f>>2];g=S6(u,0,v);e:{if(!o){break e}f:{if((f|0)==-2147483648){break f}k=0;if((i|0)==-2147483648){break f}while(1){d=(e+320|0)+N(k,80)|0;L[e+160>>2]=L[d>>2];L[e+164>>2]=L[d+4>>2];h=L[d+8>>2];H[e+172>>2]=0;L[e+168>>2]=h;L[e+176>>2]=L[d+16>>2];L[e+180>>2]=L[d+20>>2];h=L[d+24>>2];H[e+188>>2]=0;L[e+184>>2]=h;L[e+128>>2]=L[d+32>>2];L[e+132>>2]=L[d+36>>2];h=L[d+40>>2];H[e+140>>2]=0;L[e+136>>2]=h;L[e+144>>2]=L[d+48>>2];L[e+148>>2]=L[d+52>>2];h=L[d+56>>2];H[e+156>>2]=0;L[e+152>>2]=h;g:{if(f>>>0<=i>>>0){$w(a,n,f,i,r,e+160|0,e+128|0,e+96|0,e- -64|0,g);break g}$w(a,n,i,f,r,e+128|0,e+160|0,e- -64|0,e+96|0,g)}k=k+1|0;if((o|0)!=(k|0)){continue}break}break e}d=0;if((f|0)==-2147483648){while(1){f=(e+320|0)+N(d,80)|0;L[e+160>>2]=L[f+32>>2];L[e+164>>2]=L[f+36>>2];h=L[f+40>>2];H[e+172>>2]=0;L[e+168>>2]=h;L[e+176>>2]=L[f+48>>2];L[e+180>>2]=L[f+52>>2];h=L[f+56>>2];H[e+188>>2]=0;L[e+184>>2]=h;ax(e+32|0,a,n,i,r,e+160|0,g);d=d+1|0;if((o|0)!=(d|0)){continue}break e}}while(1){i=(e+320|0)+N(d,80)|0;L[e+160>>2]=L[i>>2];L[e+164>>2]=L[i+4>>2];h=L[i+8>>2];H[e+172>>2]=0;L[e+168>>2]=h;L[e+176>>2]=L[i+16>>2];L[e+180>>2]=L[i+20>>2];h=L[i+24>>2];H[e+188>>2]=0;L[e+184>>2]=h;ax(e,a,n,f,r,e+160|0,g);d=d+1|0;if((o|0)!=(d|0)){continue}break}}h:{if(!p){break h}i=0;d=0;o=0;if(!A){while(1){f=d<<2;L[f+m>>2]=q*L[g+f>>2];k=f|4;L[k+m>>2]=q*L[g+k>>2];k=f|8;L[k+m>>2]=q*L[g+k>>2];f=f|12;L[f+m>>2]=q*L[g+f>>2];d=d+4|0;o=o+4|0;if((z|0)!=(o|0)){continue}break}}if(!w){break h}while(1){f=d<<2;L[f+m>>2]=q*L[g+f>>2];d=d+1|0;i=i+1|0;if((w|0)!=(i|0)){continue}break}}uw(j);H[e+1308>>2]=m;H[e+1296>>2]=0;H[e+1304>>2]=0;H[e+1312>>2]=(N(s,t)<<2)+x;i:{if(n){H[e+168>>2]=0;H[e+160>>2]=0;H[e+164>>2]=0;d=e+1280|0;zw(j,d);S6(H[e+1288>>2],0,H[a+448>>2]<<5);vw(j,e+160|0,d);Mw(j,d);Ow(j,d);Nw(j,d);break i}H[e+168>>2]=0;H[e+160>>2]=0;H[e+164>>2]=0;d=e+1280|0;zw(j,d);S6(H[e+1288>>2],0,H[a+448>>2]<<5);vw(j,e+160|0,d);Mw(j,d);Ow(j,d);Qw(j,d);Rw(j,d)}Lw(l,g);Lw(l,y);s=s+1|0;if((s|0)!=(c|0)){continue}break}}Oa=e+1328|0}function YZ(a,b,c,d,e,f,g,h){var i=O(0),j=0,k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=0,v=0,w=O(0),x=0,y=O(0),z=0,A=0,B=0,C=O(0),D=O(0),E=0,J=0,K=O(0),M=O(0);x=Oa-16|0;Oa=x;j=H[a+16>>2];k=L[j+16>>2];A=L[j+12>>2]>2];j=f>>>1|0;a:{if(F[(H[v+60>>2]+(j<<2)|0)+2|0]<0){if(!u){u=j+H[v+44>>2]|0;H[x+4>>2]=u;H[B>>2]=j;z=u+1|0;break a}u=j+1|0;H[x+4>>2]=u;H[B>>2]=H[v+44>>2]+u;z=j;break a}if(!u){H[x+4>>2]=j;H[B>>2]=j+1;z=j+H[v+44>>2]|0;u=j;break a}z=j+1|0;J=H[v+44>>2];u=z+J|0;H[x+4>>2]=u;H[B>>2]=j+J}H[E>>2]=z;if(e){z=H[v+60>>2];j=f>>>1|0;J=F[(z+(j<<2)|0)+2|0];B=(A?8:0)+e|0;H[B>>2]=-1;E=f&1;A=(A?0:8)+e|0;b:{c:{if((J|0)<0){if(!E){H[e+4>>2]=f+1;H[A>>2]=-1;e=H[v+44>>2];if((j>>>0)%(e>>>0)|0){H[B>>2]=f-1;e=H[v+44>>2]}if((H[v+40>>2]-2|0)==((j>>>0)/(e>>>0)|0)){break b}e=e+j|0;e=e<<1|I[(z+(e<<2)|0)+2|0]>>>7;break c}H[e+4>>2]=f-1;H[A>>2]=-1;e=H[v+44>>2];if((j>>>0)%(e>>>0)>>>0>>0){H[B>>2]=f+1;e=H[v+44>>2]}if(j>>>0>>0){break b}e=j-e|0;e=e<<1|((I[(z+(e<<2)|0)+2|0]^-1)&128)>>>7;break c}if(!E){H[e+4>>2]=f+1;H[A>>2]=-1;e=H[v+44>>2];if(j>>>0>=e-1>>>0){e=j-e|0;H[B>>2]=e<<1|((I[(z+(e<<2)|0)+2|0]^-1)&128)>>>7;e=H[v+44>>2]}if(!((j>>>0)%(e>>>0)|0)){break b}e=f-1|0;break c}H[e+4>>2]=f-1;H[A>>2]=-1;e=H[v+44>>2];if((H[v+40>>2]-2|0)!=((j>>>0)/(e>>>0)|0)){e=e+j|0;H[B>>2]=e<<1|I[(z+(e<<2)|0)+2|0]>>>7;e=H[v+44>>2]}if(e-2>>>0<=(j>>>0)%(e>>>0)>>>0){break b}e=f+1|0}H[A>>2]=e}}if(d){H[d>>2]=u;H[d+4>>2]=H[x+8>>2];H[d+8>>2]=H[x+12>>2]}d:{if(h){k=L[b+12>>2];q=O(O(k*k)+O(-.5));d=H[a+12>>2];e=H[d+60>>2];d=H[d+44>>2];o=L[b+4>>2];w=O(-o);p=L[b>>2];C=O(-p);n=L[b+8>>2];D=O(-n);a=H[a+16>>2];r=L[a+16>>2];s=L[a+8>>2];t=L[a+12>>2];if(!g){i=O(r*O((u>>>0)%(d>>>0)>>>0));i=O(i+i);l=O(t*O((u>>>0)/(d>>>0)>>>0));l=O(l+l);m=O(s*O(G[e+(u<<2)>>1]));m=O(m+m);y=O(O(n*i)+O(O(p*l)+O(m*o)));L[c+8>>2]=O(n*y)+O(O(i*q)+O(k*O(O(p*m)+O(l*w))));L[c+4>>2]=O(o*y)+O(O(m*q)+O(k*O(O(n*l)+O(i*C))));L[c>>2]=O(p*y)+O(O(l*q)+O(k*O(O(o*i)+O(m*D))));a=H[x+8>>2];b=(a>>>0)/(d>>>0)|0;i=O(r*O(a-N(b,d)>>>0));i=O(i+i);l=O(t*O(b>>>0));l=O(l+l);m=O(s*O(G[e+(a<<2)>>1]));m=O(m+m);y=O(O(n*i)+O(O(p*l)+O(m*o)));L[c+20>>2]=O(n*y)+O(O(i*q)+O(k*O(O(p*m)+O(l*w))));L[c+16>>2]=O(o*y)+O(O(m*q)+O(k*O(O(n*l)+O(i*C))));L[c+12>>2]=O(p*y)+O(O(l*q)+O(k*O(O(o*i)+O(m*D))));a=H[x+12>>2];b=(a>>>0)/(d>>>0)|0;r=O(r*O(a-N(b,d)>>>0));r=O(r+r);t=O(t*O(b>>>0));t=O(t+t);s=O(s*O(G[e+(a<<2)>>1]));s=O(s+s);i=O(O(n*r)+O(O(p*t)+O(s*o)));w=O(O(n*i)+O(O(r*q)+O(k*O(O(p*s)+O(t*w)))));n=O(O(o*i)+O(O(s*q)+O(k*O(O(n*t)+O(r*C)))));k=O(O(p*i)+O(O(t*q)+O(k*O(O(o*r)+O(s*D)))));break d}K=L[b+20>>2];M=L[b+16>>2];a=(u>>>0)/(d>>>0)|0;i=O(r*O(u-N(a,d)>>>0));i=O(i+i);l=O(t*O(a>>>0));l=O(l+l);m=O(s*O(G[e+(u<<2)>>1]));m=O(m+m);y=O(O(n*i)+O(O(p*l)+O(m*o)));L[c+8>>2]=L[b+24>>2]+O(O(n*y)+O(O(i*q)+O(k*O(O(p*m)+O(l*w)))));L[c+4>>2]=K+O(O(o*y)+O(O(m*q)+O(k*O(O(n*l)+O(i*C)))));L[c>>2]=M+O(O(p*y)+O(O(l*q)+O(k*O(O(o*i)+O(m*D)))));K=L[b+20>>2];M=L[b+16>>2];a=H[x+8>>2];f=(a>>>0)/(d>>>0)|0;i=O(r*O(a-N(d,f)>>>0));i=O(i+i);l=O(t*O(f>>>0));l=O(l+l);m=O(s*O(G[e+(a<<2)>>1]));m=O(m+m);y=O(O(n*i)+O(O(p*l)+O(m*o)));L[c+20>>2]=L[b+24>>2]+O(O(n*y)+O(O(i*q)+O(k*O(O(p*m)+O(l*w)))));L[c+16>>2]=K+O(O(o*y)+O(O(m*q)+O(k*O(O(n*l)+O(i*C)))));L[c+12>>2]=M+O(O(p*y)+O(O(l*q)+O(k*O(O(o*i)+O(m*D)))));a=H[x+12>>2];f=(a>>>0)/(d>>>0)|0;r=O(r*O(a-N(d,f)>>>0));r=O(r+r);t=O(t*O(f>>>0));t=O(t+t);s=O(s*O(G[e+(a<<2)>>1]));s=O(s+s);i=O(O(n*r)+O(O(p*t)+O(s*o)));w=O(L[b+24>>2]+O(O(n*i)+O(O(r*q)+O(k*O(O(p*s)+O(t*w))))));n=O(L[b+20>>2]+O(O(o*i)+O(O(s*q)+O(k*O(O(n*t)+O(r*C))))));k=O(L[b+16>>2]+O(O(p*i)+O(O(t*q)+O(k*O(O(o*r)+O(s*D))))));break d}w=L[b+24>>2];e=H[a+12>>2];d=H[e+44>>2];a=H[a+16>>2];q=L[a+16>>2];k=L[a+12>>2];n=L[b+16>>2];o=g?L[b+20>>2]:O(0);p=L[a+8>>2];a=H[e+60>>2];L[c+4>>2]=o+O(p*O(G[a+(u<<2)>>1]));n=g?n:O(0);b=(u>>>0)/(d>>>0)|0;L[c>>2]=n+O(k*O(b>>>0));w=g?w:O(0);L[c+8>>2]=w+O(q*O(u-N(b,d)>>>0));b=H[x+8>>2];e=G[a+(b<<2)>>1];f=(b>>>0)/(d>>>0)|0;L[c+12>>2]=n+O(k*O(f>>>0));L[c+16>>2]=o+O(p*O(e|0));L[c+20>>2]=w+O(q*O(b-N(d,f)>>>0));b=H[x+12>>2];e=(b>>>0)/(d>>>0)|0;k=O(n+O(k*O(e>>>0)));n=O(o+O(p*O(G[a+(b<<2)>>1])));w=O(w+O(q*O(b-N(d,e)>>>0)))}L[c+24>>2]=k;L[c+32>>2]=w;L[c+28>>2]=n;Oa=x+16|0}function qD(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=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=0,o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),I=O(0),K=O(0),M=O(0),P=O(0),Q=0,R=O(0),S=O(0),T=O(0),U=O(0),V=O(0),W=0,X=O(0),Y=O(0),Z=0,_=0,$=0;n=Oa+-64|0;Oa=n;if(H[a+592>>2]){g=L[b+84>>2];r=L[b+76>>2];o=L[b+88>>2];p=L[b+72>>2];q=L[b+92>>2];s=L[b+80>>2];L[n+56>>2]=O(q-s)*O(.5);L[n+52>>2]=O(o-r)*O(.5);L[n+48>>2]=O(g-p)*O(.5);L[n+40>>2]=O(q+s)*O(.5);L[n+36>>2]=O(o+r)*O(.5);L[n+32>>2]=O(g+p)*O(.5);G[n+28>>1]=J[f>>1];H[n+24>>2]=e;H[n+16>>2]=c;H[n+8>>2]=115132;H[n+20>>2]=n+48;H[n+12>>2]=n+32;_=H[a+644>>2];$=H[a+640>>2];W=n+8|0;e=Oa-1056|0;Oa=e;g=L[c+8>>2];o=O(g+g);A=O(-o);b=o>A;g=L[c+4>>2];p=O(g+g);B=O(-p);f=p>B;g=L[c>>2];q=O(g+g);C=O(-q);c=q>C;I=L[n+56>>2];K=L[n+52>>2];M=L[n+48>>2];g=L[n+40>>2];r=O(g+g);g=L[n+36>>2];s=O(g+g);g=L[n+32>>2];y=O(g+g);g=L[d>>2];a:{if(g>=O(3.4028234663852886e38)){v=p==O(0)?s:p>=O(0)?O(3.4028234663852886e38):O(-3.4028234663852886e38);w=q==O(0)?y:q>=O(0)?O(3.4028234663852886e38):O(-3.4028234663852886e38);g=r;if(o==O(0)){break a}g=o>=O(0)?O(3.4028234663852886e38):O(-3.4028234663852886e38);break a}v=O(s+O(p*g));w=O(y+O(q*g));g=O(r+O(o*g))}A=b?o:A;B=f?p:B;C=c?q:C;T=O(I+I);U=O(K+K);V=O(M+M);F[e+1040|0]=1;H[e+1048>>2]=256;H[e+1052>>2]=256;H[e+1044>>2]=e+16;c=H[a+592>>2];H[e+16>>2]=c;I=gv?s:v;M=y>w?y:w;g=g>r?r:g;v=s>2];l=L[c>>2];i=O(j+l);l=O(V+O(j-l));d:{if(!(O(i+l)>=w)|!(O(i-l)<=M)){break d}m=L[c+20>>2];h=L[c+4>>2];j=O(U+O(m-h));m=O(m+h);k=O(s-m);t=O(y-i);i=O(O(q*k)-O(p*t));h=O(-i);if(!(O(m-j)<=K)|(!(O(O(B*l)+O(C*j))>=(i>h?i:h))|!(O(m+j)>=v))){break d}m=L[c+24>>2];h=L[c+8>>2];i=O(T+O(m-h));m=O(m+h);x=O(r-m);h=O(O(p*x)-O(o*k));k=O(-h);if(!(O(m-i)<=I)|(!(O(O(A*j)+O(B*i))>=(h>k?h:k))|!(O(m+i)>=g))){break d}j=O(O(o*t)-O(q*x));m=O(-j);if(!(O(O(A*l)+O(C*i))>=(j>m?j:m))){break d}m=L[d>>2];L[e+12>>2]=m;if(H[c+40>>2]){while(1){a=H[c+36>>2];k=L[a- -64>>2];R=L[a+48>>2];j=O(k+R);l=L[a+68>>2];m=L[a+52>>2];i=O(U+O(l-m));m=O(l+m);u=O(s-m);D=O(y-j);t=O(O(q*u)-O(p*D));x=O(-t);h=L[a+72>>2];E=L[a+56>>2];l=O(T+O(h-E));h=O(h+E);z=O(r-h);u=O(O(p*z)-O(o*u));E=O(-u);D=O(O(o*D)-O(q*z));z=O(-D);k=O(V+O(k-R));b=O(j+k)>=w&O(j-k)<=M&O(O(B*k)+O(C*i))>=(t>x?t:x)&O(m+i)>=v&O(m-i)<=K&O(O(A*i)+O(B*l))>=(u>E?u:E)&O(h+l)>=g&O(h-l)<=I&O(O(A*k)+O(C*l))>=(z>2];k=L[a+4>>2];i=O(U+O(l-k));k=O(l+k);u=O(s-k);X=L[a+16>>2];Y=L[a>>2];t=O(X+Y);P=O(y-t);E=O(O(q*u)-O(p*P));D=O(-E);x=L[a+24>>2];z=L[a+8>>2];l=O(T+O(x-z));x=O(x+z);S=O(r-x);z=O(O(p*S)-O(o*u));R=O(-z);P=O(O(o*P)-O(q*S));S=O(-P);u=O(V+O(X-Y));c=O(t+u)>=w&O(t-u)<=M&O(O(B*u)+O(C*i))>=(D=v&O(k-i)<=K&O(O(A*i)+O(B*l))>=(z>R?z:R)&O(x+l)>=g&O(x-l)<=I&O(O(A*u)+O(C*l))>=(P>S?P:S);e:{if(!(!c|!b)){b=O(O(O(h-x)*o)+O(O(O(j-t)*q)+O(p*O(m-k))))>O(0);H[H[e+1044>>2]+(f<<2)>>2]=a+N(b,48);c=a+N(!b,48)|0;f=f+1|0;if((f|0)!=(H[e+1052>>2]&2147483647)){break e}iC(e+16|0,f<<1);break e}if(!(b|c)){break d}c=c?a:a+48|0}if(H[c+40>>2]){continue}break}m=L[d>>2]}a=H[c+36>>2];b=H[a>>2];if(!b){break d}c=a+4|0;a=b;while(1){Z=H[c>>2];f:{if(b>>>0>=2){Q=N(Z,24)+$|0;j=L[Q>>2];l=L[Q+12>>2];i=O(j+l);l=O(V+O(l-j));if(!(O(i+l)>=w)|!(O(i-l)<=M)){break f}h=L[Q+16>>2];k=L[Q+4>>2];j=O(U+O(h-k));h=O(k+h);t=O(s-h);x=O(y-i);i=O(O(q*t)-O(p*x));k=O(-i);if(!(O(h-j)<=K)|(!(O(O(B*l)+O(C*j))>=(i>k?i:k))|!(O(h+j)>=v))){break f}h=L[Q+20>>2];k=L[Q+8>>2];i=O(T+O(h-k));h=O(k+h);u=O(r-h);k=O(O(p*u)-O(o*t));t=O(-k);if(!(O(h-i)<=I)|(!(O(O(A*j)+O(B*i))>=(k>t?k:t))|!(O(h+i)>=g))){break f}j=O(O(o*x)-O(q*u));h=O(-j);if(!(O(O(A*l)+O(C*i))>=(j>h?j:h))){break f}}if(!(Ra[H[H[W>>2]+8>>2]](W,e+12|0,N(Z,44)+_|0)|0)){break c}j=L[e+12>>2];if(!(j>2]=j;g=O(r+O(o*j));I=gv?s:v;w=O(y+O(q*j));M=y>w?y:w;g=g>r?r:g;v=s>2]+(f<<2)>>2];continue}break}a=0}b=H[e+1052>>2];g:{if((b|0)<0|!(b&2147483647)){break g}b=H[e+1044>>2];if((b|0)==(e+16|0)|!b){break g}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}Oa=e+1056|0}else{a=1}Oa=n- -64|0;return a|0}function Dw(a,b,c,d,e,f,g,h){a=a|0;b=O(b);c=O(c);d=d|0;e=e|0;f=f|0;g=g|0;h=O(h);var i=0,j=0,k=O(0),l=0,m=0,n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=0,z=O(0),A=O(0),B=0,C=O(0),D=O(0),E=O(0),G=O(0),J=0,K=O(0),M=O(0),N=O(0),P=O(0),Q=O(0),R=O(0),S=O(0),T=O(0),U=O(0),V=O(0),W=O(0),X=O(0),Y=O(0),Z=O(0),_=O(0),$=O(0),aa=O(0),ba=O(0),ca=O(0),da=0,ea=0,fa=0,ga=0,ha=0,ia=0;i=Oa-144|0;Oa=i;da=H[a+448>>2];if(H[a+660>>2]?1:H[a+292>>2]|H[a+304>>2]){B=H[a+264>>2];j=H[a+228>>2];ea=H[a+444>>2];J=H[a+420>>2];l=H[a+408>>2];m=I[H[a+476>>2]];H[i+104>>2]=0;H[i+108>>2]=0;H[i+96>>2]=0;H[i+100>>2]=0;H[i+88>>2]=0;H[i+92>>2]=0;H[i+80>>2]=0;H[i+84>>2]=0;fa=m&1;if(!fa){K=L[a+560>>2];X=L[a+572>>2];Y=L[a+584>>2];Z=L[a+564>>2];_=L[a+576>>2];$=L[a+588>>2];aa=L[a+568>>2];ba=L[a+580>>2];ca=L[a+592>>2];v=L[a+620>>2];w=L[a+608>>2];C=L[a+596>>2];x=L[a+524>>2];M=L[a+528>>2];N=L[a+532>>2];P=L[a+624>>2];Q=L[a+612>>2];D=L[a+600>>2];R=L[a+536>>2];S=L[a+540>>2];T=L[a+544>>2];r=L[a+548>>2];s=L[B+16>>2];E=O(-s);t=L[a+552>>2];u=L[B+20>>2];k=L[a+556>>2];q=L[B+24>>2];n=O(-L[B+4>>2]);o=L[B>>2];p=L[B+8>>2];V=O(O(O(O(r*E)-O(t*u))-O(k*q))+O(O(O(L[a+616>>2]*n)-O(o*L[a+604>>2]))-O(p*L[a+628>>2])));L[i+104>>2]=V;W=O(O(O(O(R*E)-O(S*u))-O(T*q))+O(O(O(Q*n)-O(o*D))-O(p*P)));L[i+100>>2]=W;v=O(O(O(O(x*E)-O(M*u))-O(N*q))+O(O(O(w*n)-O(o*C))-O(p*v)));L[i+96>>2]=v;w=O(O(O(T*n)-O(o*N))-O(p*k));k=O(-u);w=O(w+O(O(O(ba*k)-O(s*aa))-O(q*ca)));L[i+88>>2]=w;C=O(O(O(O(S*n)-O(o*M))-O(p*t))+O(O(O(_*k)-O(s*Z))-O(q*$)));L[i+84>>2]=C;k=O(O(O(O(R*n)-O(o*x))-O(p*r))+O(O(O(X*k)-O(s*K))-O(q*Y)));L[i+80>>2]=k}P=L[j+20>>2];Q=L[j>>2];D=L[j+4>>2];r=L[j+8>>2];t=L[j+16>>2];L[i+136>>2]=V+L[j+24>>2];L[i+132>>2]=W+P;H[i+140>>2]=0;L[i+128>>2]=v+t;H[i+124>>2]=0;L[i+120>>2]=w+r;L[i+116>>2]=C+D;L[i+112>>2]=k+Q;H[i+72>>2]=0;H[i+76>>2]=0;m=i- -64|0;H[m>>2]=0;H[m+4>>2]=0;H[i+56>>2]=0;H[i+60>>2]=0;H[i+48>>2]=0;H[i+52>>2]=0;j=H[l>>2];a:{if(!j){q=O(0);k=O(0);break a}k=f?O(0):O(-3.4028234663852886e38);l=H[a+312>>2];m=Ra[H[H[a>>2]+168>>2]](a,0)|0;J=H[J>>2];while(1){Aw(H[a+656>>2]+(J<<5)|0,i+112|0,i+48|0,i+80|0,l,m,g,h,k);J=J+1|0;y=y+1|0;if((j|0)!=(y|0)){continue}break}U=L[i+72>>2];q=L[i+68>>2];G=L[i+64>>2];z=L[i+52>>2];A=L[i+48>>2];k=L[i+56>>2]}y=0;H[i+44>>2]=0;H[i+40>>2]=0;m=H[ea>>2];l=H[ea+4>>2];b:{if(!(m|l)){break b}if(!fa){while(1){j=m;Cw(i,a,b,c,d,e,f,g,h,(ga=f7(j),ha=f7(l)+32|0,ia=j,ia?ga:ha),i+80|0,i+44|0,i+40|0);n=L[i+24>>2];U=O(n+U);u=L[i+20>>2];q=O(u+q);x=L[i+16>>2];G=O(x+G);o=L[i+8>>2];k=O(o+k);t=L[i+4>>2];z=O(t+z);p=L[i>>2];A=O(p+A);m=j-1&j;l=l&l-!j;if(!(m|l)){break b}X=L[a+628>>2];Y=L[a+616>>2];Z=L[a+604>>2];_=L[a+624>>2];$=L[a+612>>2];aa=L[a+600>>2];ba=L[a+620>>2];ca=L[a+608>>2];V=L[a+596>>2];M=L[a+556>>2];N=L[a+544>>2];R=L[a+532>>2];W=L[a+592>>2];v=L[a+580>>2];w=L[a+568>>2];S=L[a+552>>2];T=L[a+540>>2];E=L[a+528>>2];C=L[a+588>>2];P=L[a+576>>2];Q=L[a+564>>2];D=L[a+536>>2];s=O(-t);r=L[a+524>>2];t=L[a+548>>2];K=O(-u);L[i+80>>2]=O(O(O(O(D*s)-O(p*r))-O(o*t))+O(O(O(L[a+572>>2]*K)-O(x*L[a+560>>2]))-O(n*L[a+584>>2])))+L[i+80>>2];L[i+84>>2]=O(O(O(O(T*s)-O(p*E))-O(o*S))+O(O(O(P*K)-O(x*Q))-O(n*C)))+L[i+84>>2];L[i+88>>2]=O(O(O(O(N*s)-O(p*R))-O(o*M))+O(O(O(v*K)-O(x*w))-O(n*W)))+L[i+88>>2];v=r;r=O(-x);L[i+96>>2]=O(O(O(O(v*r)-O(E*u))-O(R*n))+O(O(O(ca*s)-O(p*V))-O(o*ba)))+L[i+96>>2];L[i+100>>2]=O(O(O(O(D*r)-O(T*u))-O(N*n))+O(O(O($*s)-O(p*aa))-O(o*_)))+L[i+100>>2];L[i+104>>2]=O(O(O(O(t*r)-O(S*u))-O(M*n))+O(O(O(Y*s)-O(p*Z))-O(o*X)))+L[i+104>>2];continue}}while(1){j=m;Cw(i,a,b,c,d,e,f,g,h,(ga=f7(j),ha=f7(l)+32|0,ia=j,ia?ga:ha),i+80|0,i+44|0,i+40|0);U=O(L[i+24>>2]+U);q=O(L[i+20>>2]+q);G=O(L[i+16>>2]+G);k=O(L[i+8>>2]+k);z=O(L[i+4>>2]+z);A=O(L[i>>2]+A);m=j-1&j;l=l&l-!j;if(m|l){continue}break}}L[i+64>>2]=G;L[i+56>>2]=k;L[i+52>>2]=z;L[i+48>>2]=A;L[d+24>>2]=U;L[d+20>>2]=q;L[d+16>>2]=G;L[d+8>>2]=k;L[d+4>>2]=z;L[d>>2]=A;c:{if(!da){break c}while(1){e=y<<5;f=e+B|0;L[f>>2]=A+L[f>>2];L[f+4>>2]=z+L[f+4>>2];L[f+8>>2]=k+L[f+8>>2];e=d+e|0;L[f+16>>2]=L[e+16>>2]+L[f+16>>2];L[f+20>>2]=L[e+20>>2]+L[f+20>>2];L[f+24>>2]=L[e+24>>2]+L[f+24>>2];y=y+1|0;if((da|0)==(y|0)){break c}e=(y<<5)+d|0;k=L[e+8>>2];z=L[e+4>>2];A=L[e>>2];continue}}F[a+489|0]=1}Oa=i+144|0}function Hv(a){a=a|0;var b=0,c=0,d=0;H[a>>2]=112672;d=H[a+664>>2];a:{if((d|0)<0|!(d&2147483647)){break a}d=H[a+656>>2];if(!d){break a}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,d)}d=H[a+648>>2];b:{if((d|0)<0|!(d&2147483647)){break b}d=H[a+640>>2];if(!d){break b}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,d)}d=a+112|0;b=H[d+340>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b);H[d+340>>2]=0}b=H[d+344>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b);H[d+344>>2]=0}b=H[d+348>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b);H[d+348>>2]=0}b=H[d+404>>2];c:{if((b|0)<0|!(b&2147483647)){break c}b=H[d+396>>2];if(!b){break c}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[d+392>>2];d:{if((b|0)<0|!(b&2147483647)){break d}b=H[d+384>>2];if(!b){break d}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[d+328>>2];e:{if((b|0)<0|!(b&2147483647)){break e}b=H[d+320>>2];if(!b){break e}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[d+316>>2];f:{if((b|0)<0|!(b&2147483647)){break f}b=H[d+308>>2];if(!b){break f}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[d+304>>2];g:{if((b|0)<0|!(b&2147483647)){break g}b=H[d+296>>2];if(!b){break g}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[d+292>>2];h:{if((b|0)<0|!(b&2147483647)){break h}b=H[d+284>>2];if(!b){break h}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[d+280>>2];i:{if((b|0)<0|!(b&2147483647)){break i}b=H[d+272>>2];if(!b){break i}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[d+268>>2];j:{if((b|0)<0|!(b&2147483647)){break j}b=H[d+260>>2];if(!b){break j}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[d+256>>2];k:{if((b|0)<0|!(b&2147483647)){break k}b=H[d+248>>2];if(!b){break k}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[d+244>>2];l:{if((b|0)<0|!(b&2147483647)){break l}b=H[d+236>>2];if(!b){break l}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[d+232>>2];m:{if((b|0)<0|!(b&2147483647)){break m}b=H[d+224>>2];if(!b){break m}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[d+220>>2];n:{if((b|0)<0|!(b&2147483647)){break n}b=H[d+212>>2];if(!b){break n}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[d+208>>2];o:{if((b|0)<0|!(b&2147483647)){break o}b=H[d+200>>2];if(!b){break o}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[d+196>>2];p:{if((b|0)<0|!(b&2147483647)){break p}b=H[d+188>>2];if(!b){break p}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[d+184>>2];q:{if((b|0)<0|!(b&2147483647)){break q}b=H[d+176>>2];if(!b){break q}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[d+172>>2];r:{if((b|0)<0|!(b&2147483647)){break r}b=H[d+164>>2];if(!b){break r}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[d+160>>2];s:{if((b|0)<0|!(b&2147483647)){break s}b=H[d+152>>2];if(!b){break s}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[d+148>>2];t:{if((b|0)<0|!(b&2147483647)){break t}b=H[d+140>>2];if(!b){break t}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[d+136>>2];u:{if((b|0)<0|!(b&2147483647)){break u}b=H[d+128>>2];if(!b){break u}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[d+124>>2];v:{if((b|0)<0|!(b&2147483647)){break v}b=H[d+116>>2];if(!b){break v}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[d+112>>2];w:{if((b|0)<0|!(b&2147483647)){break w}b=H[d+104>>2];if(!b){break w}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[d+100>>2];x:{if((b|0)<0|!(b&2147483647)){break x}b=H[d+92>>2];if(!b){break x}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[d+88>>2];y:{if((b|0)<0|!(b&2147483647)){break y}b=H[d+80>>2];if(!b){break y}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[d+76>>2];z:{if((b|0)<0|!(b&2147483647)){break z}b=H[d+68>>2];if(!b){break z}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[d- -64>>2];A:{if((b|0)<0|!(b&2147483647)){break A}b=H[d+56>>2];if(!b){break A}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[d+52>>2];B:{if((b|0)<0|!(b&2147483647)){break B}b=H[d+44>>2];if(!b){break B}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[d+40>>2];C:{if((b|0)<0|!(b&2147483647)){break C}d=H[d+32>>2];if(!d){break C}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,d)}H[a>>2]=112452;d=H[a+88>>2];D:{if((d|0)<0|!(d&2147483647)){break D}d=H[a+80>>2];if(!d){break D}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,d)}return a|0}function GL(a,b,c,d,e,f,g,h){var i=0,j=0,k=0,l=O(0),m=0,n=0,o=0,p=0,q=0,r=0,s=O(0),t=0,u=0,v=0,w=O(0);s=O(O(1)/e);p=H[b+56>>2];a:{b:{c:{if(H[d+11968>>2]){n=1;k=H[c+4>>2];if(f>>>0<=1){break b}q=p<<6;break c}if(H[c+4>>2]&2147483647){while(1){b=H[d+12144>>2]+N(k,52)|0;l=O(0);j=0;if(f){while(1){h=H[b>>2];Ra[H[H[h>>2]+136>>2]](h,e,s,H[d+12048>>2],H[d+12060>>2],0,1,l);h=H[(H[H[b>>2]+24>>2]<<2)+135140>>2];if(h){Ra[h|0](b,e,H[d+12060>>2])}l=O(l+e);j=j+1|0;if((j|0)!=(f|0)){continue}break}}h=H[(H[H[b>>2]+24>>2]<<2)+135132>>2];if(h){Ra[h|0](b,L[a+56>>2])}j=0;if(g){while(1){h=H[b>>2];Ra[H[H[h>>2]+136>>2]](h,e,s,H[d+12048>>2],H[d+12060>>2],1,1,l);j=j+1|0;if((j|0)!=(g|0)){continue}break}}b=H[b>>2];Ra[H[H[b>>2]+140>>2]](b,1);k=k+1|0;if(k>>>0<(H[c+4>>2]&2147483647)>>>0){continue}break}}b=H[c>>2];if(!b){break a}c=p<<6;f=c+H[a+484>>2]|0;c=c+H[a+472>>2]|0;e=L[a+52>>2];d=0;while(1){d=d+1|0;a=d<<6;FL(a+c|0,a+f|0,e);if((b|0)!=(d|0)){continue}break}break a}while(1){i=0;if(k&2147483647){while(1){j=H[H[d+12144>>2]+N(i,52)>>2];Ra[H[H[j>>2]+136>>2]](j,e,s,H[d+12048>>2],H[d+12060>>2],0,1,l);i=i+1|0;if(i>>>0<(H[c+4>>2]&2147483647)>>>0){continue}break}}j=H[a+484>>2];m=H[d+11968>>2];if(m){o=H[b+44>>2];r=H[b+36>>2];i=0;if((m|0)!=1){v=m&-2;k=0;while(1){t=i<<3;u=t+o|0;Ra[H[(J[u+6>>1]<<2)+117248>>2]](u,r,j,O(-3.4028234663852886e38),l,h);t=o+(t|8)|0;Ra[H[(J[t+6>>1]<<2)+117248>>2]](t,r,j,O(-3.4028234663852886e38),l,h);i=i+2|0;k=k+2|0;if((v|0)!=(k|0)){continue}break}}if(m&1){i=o+(i<<3)|0;Ra[H[(J[i+6>>1]<<2)+117248>>2]](i,r,j,O(-3.4028234663852886e38),l,h)}j=H[a+484>>2]}k=H[c>>2];if(k){j=j+q|0;m=q+H[a+472>>2]|0;i=0;while(1){i=i+1|0;o=i<<6;FL(o+m|0,j+o|0,e);if((i|0)!=(k|0)){continue}break}}i=0;k=H[c+4>>2];if(k&2147483647){while(1){j=H[d+12144>>2]+N(i,52)|0;m=H[(H[H[j>>2]+24>>2]<<2)+135140>>2];if(m){Ra[m|0](j,e,H[d+12060>>2]);k=H[c+4>>2]}i=i+1|0;if(i>>>0<(k&2147483647)>>>0){continue}break}}l=O(l+e);n=n+1|0;if((n|0)!=(f|0)){continue}break}}if(k&2147483647){i=0;while(1){f=H[H[d+12144>>2]+N(i,52)>>2];Ra[H[H[f>>2]+136>>2]](f,e,s,H[d+12048>>2],H[d+12060>>2],0,1,l);i=i+1|0;if(i>>>0<(H[c+4>>2]&2147483647)>>>0){continue}break}}j=H[a+484>>2];f=H[d+11968>>2];if(f){m=H[b+44>>2];o=H[b+36>>2];i=0;if((f|0)!=1){r=f&-2;k=0;while(1){n=i<<3;q=n+m|0;Ra[H[(J[q+6>>1]<<2)+117344>>2]](q,o,j,l,h);n=m+(n|8)|0;Ra[H[(J[n+6>>1]<<2)+117344>>2]](n,o,j,l,h);i=i+2|0;k=k+2|0;if((r|0)!=(k|0)){continue}break}}if(f&1){f=m+(i<<3)|0;Ra[H[(J[f+6>>1]<<2)+117344>>2]](f,o,j,l,h)}j=H[a+484>>2]}w=L[a+56>>2];f=H[c>>2];if(f){i=p<<6;j=i+j|0;k=i+H[a+472>>2]|0;i=0;while(1){i=i+1|0;p=i<<6;FL(p+k|0,j+p|0,e);if((f|0)!=(i|0)){continue}break}}j=H[c+4>>2];d:{if(!(j&2147483647)){break d}i=0;while(1){f=H[d+12144>>2]+N(i,52)|0;k=H[(H[H[f>>2]+24>>2]<<2)+135140>>2];if(k){Ra[k|0](f,e,H[d+12060>>2]);j=H[c+4>>2]}i=i+1|0;f=j&2147483647;if(i>>>0>>0){continue}break}if(!f){break d}i=0;while(1){f=H[d+12144>>2]+N(i,52)|0;k=H[(H[H[f>>2]+24>>2]<<2)+135132>>2];if(k){Ra[k|0](f,w);j=H[c+4>>2]}i=i+1|0;if(i>>>0<(j&2147483647)>>>0){continue}break}}e:{if(!g){break e}l=O(l+e);o=0;while(1){i=0;if(j&2147483647){while(1){f=H[H[d+12144>>2]+N(i,52)>>2];Ra[H[H[f>>2]+136>>2]](f,e,s,H[d+12048>>2],H[d+12060>>2],0,1,l);i=i+1|0;if(i>>>0<(H[c+4>>2]&2147483647)>>>0){continue}break}}f=H[d+11968>>2];f:{if(!f){break f}j=H[a+484>>2];p=H[b+44>>2];m=H[b+36>>2];i=0;if((f|0)!=1){r=f&-2;k=0;while(1){n=i<<3;q=n+p|0;Ra[H[(J[q+6>>1]<<2)+117248>>2]](q,m,j,O(0),l,h);n=p+(n|8)|0;Ra[H[(J[n+6>>1]<<2)+117248>>2]](n,m,j,O(0),l,h);i=i+2|0;k=k+2|0;if((r|0)!=(k|0)){continue}break}}if(!(f&1)){break f}f=p+(i<<3)|0;Ra[H[(J[f+6>>1]<<2)+117248>>2]](f,m,j,O(0),l,h)}o=o+1|0;if((o|0)==(g|0)){break e}j=H[c+4>>2];continue}}a=H[d+11968>>2];g:{if(!a){break g}f=H[b+36>>2];b=H[b+44>>2];i=0;if((a|0)!=1){g=a&-2;k=0;while(1){h=i<<3;j=h+b|0;Ra[H[(J[j+6>>1]<<2)+117296>>2]](j,f,0);h=b+(h|8)|0;Ra[H[(J[h+6>>1]<<2)+117296>>2]](h,f,0);i=i+2|0;k=k+2|0;if((g|0)!=(k|0)){continue}break}}if(!(a&1)){break g}a=b+(i<<3)|0;Ra[H[(J[a+6>>1]<<2)+117296>>2]](a,f,0)}if(!(H[c+4>>2]&2147483647)){break a}i=0;while(1){a=H[H[d+12144>>2]+N(i,52)>>2];Ra[H[H[a>>2]+140>>2]](a,1);i=i+1|0;if(i>>>0<(H[c+4>>2]&2147483647)>>>0){continue}break}}}function WD(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;m=H[a+28>>2];a:{if((m|0)!=H[a+24>>2]){c=H[a+20>>2];d=m;break a}d=m+1|0;b:{if(d>>>0>>0){break b}o=4;c=a+4|0;if(d>>>0<=4){break b}i=H[a+40>>2];c:{d:{e:{f:{g:{c=m>>>1|m;c=c>>>2|c;c=c>>>4|c;c=c>>>8|c;o=(c>>>16|c)+1|0;d=o;switch(d-8|0){case 24:break e;case 8:break f;case 0:break g;default:break d}}c=H[i+388>>2];if(!c){j=Oa-16|0;Oa=j;g=i+100|0;d=H[g+284>>2];if(d){c=H[33808];e=Ra[H[H[c>>2]+20>>2]](c)|0?45580:55639;h=Ra[H[H[c+12>>2]+8>>2]](c+12|0,d,e,15259,180)|0}else{h=0}H[j+12>>2]=h;c=H[g+268>>2];h:{if(c>>>0>=(H[g+272>>2]&2147483647)>>>0){e=g+4|0;d=H[e+268>>2]&2147483647;k=d?d<<1:1;c=0;i:{if(!k){break i}d=k<<2;if(!(I[e+256|0]|d>>>0>256)){F[e+256|0]=1;c=e;break i}c=0;if(!d){break i}c=H[33808];f=c+12|0;c=(q=f,r=d,s=Ra[H[H[c>>2]+20>>2]](c)|0?45580:55639,t=13582,u=553,p=H[H[f>>2]+8>>2],Ra[p](q|0,r|0,s|0,t|0,u|0)|0)}d=c;f=H[e+264>>2];n=c+(f<<2)|0;if((f|0)>0){l=H[e+260>>2];while(1){H[c>>2]=H[l>>2];l=l+4|0;c=c+4|0;if(n>>>0>c>>>0){continue}break}}H[n>>2]=H[j+12>>2];j:{if(H[e+268>>2]<0){break j}c=H[e+260>>2];if((c|0)==(e|0)){F[e+256|0]=0;break j}if(!c){break j}f=H[33808]+12|0;Ra[H[H[f>>2]+12>>2]](f,c);f=H[e+264>>2]}H[e+268>>2]=k;H[e+260>>2]=d;H[e+264>>2]=f+1;break h}H[H[g+264>>2]+(c<<2)>>2]=h;H[g+268>>2]=c+1}d=(h+(H[g+276>>2]<<5)|0)-32|0;if(h>>>0<=d>>>0){c=H[g+288>>2];while(1){H[d>>2]=c;c=d;d=c-32|0;if(h>>>0<=d>>>0){continue}break}H[g+288>>2]=c}Oa=j+16|0;c=H[i+388>>2]}H[i+388>>2]=H[c>>2];H[i+380>>2]=H[i+380>>2]+1;break c}c=H[i+680>>2];if(!c){j=Oa-16|0;Oa=j;g=i+392|0;d=H[g+284>>2];if(d){c=H[33808];e=Ra[H[H[c>>2]+20>>2]](c)|0?46046:55639;h=Ra[H[H[c+12>>2]+8>>2]](c+12|0,d,e,15259,180)|0}else{h=0}H[j+12>>2]=h;c=H[g+268>>2];k:{if(c>>>0>=(H[g+272>>2]&2147483647)>>>0){e=g+4|0;d=H[e+268>>2]&2147483647;k=d?d<<1:1;c=0;l:{if(!k){break l}d=k<<2;if(!(I[e+256|0]|d>>>0>256)){F[e+256|0]=1;c=e;break l}c=0;if(!d){break l}c=H[33808];f=c+12|0;c=(u=f,t=d,s=Ra[H[H[c>>2]+20>>2]](c)|0?46046:55639,r=13582,q=553,p=H[H[f>>2]+8>>2],Ra[p](u|0,t|0,s|0,r|0,q|0)|0)}d=c;f=H[e+264>>2];n=c+(f<<2)|0;if((f|0)>0){l=H[e+260>>2];while(1){H[c>>2]=H[l>>2];l=l+4|0;c=c+4|0;if(n>>>0>c>>>0){continue}break}}H[n>>2]=H[j+12>>2];m:{if(H[e+268>>2]<0){break m}c=H[e+260>>2];if((c|0)==(e|0)){F[e+256|0]=0;break m}if(!c){break m}f=H[33808]+12|0;Ra[H[H[f>>2]+12>>2]](f,c);f=H[e+264>>2]}H[e+268>>2]=k;H[e+260>>2]=d;H[e+264>>2]=f+1;break k}H[H[g+264>>2]+(c<<2)>>2]=h;H[g+268>>2]=c+1}d=(h+(H[g+276>>2]<<6)|0)+-64|0;if(h>>>0<=d>>>0){c=H[g+288>>2];while(1){H[d>>2]=c;c=d;d=c+-64|0;if(h>>>0<=d>>>0){continue}break}H[g+288>>2]=c}Oa=j+16|0;c=H[i+680>>2]}H[i+680>>2]=H[c>>2];H[i+672>>2]=H[i+672>>2]+1;break c}c=H[i+972>>2];if(!c){j=Oa-16|0;Oa=j;g=i+684|0;d=H[g+284>>2];if(d){c=H[33808];e=Ra[H[H[c>>2]+20>>2]](c)|0?47172:55639;h=Ra[H[H[c+12>>2]+8>>2]](c+12|0,d,e,15259,180)|0}else{h=0}H[j+12>>2]=h;c=H[g+268>>2];n:{if(c>>>0>=(H[g+272>>2]&2147483647)>>>0){e=g+4|0;d=H[e+268>>2]&2147483647;k=d?d<<1:1;c=0;o:{if(!k){break o}d=k<<2;if(!(I[e+256|0]|d>>>0>256)){F[e+256|0]=1;c=e;break o}c=0;if(!d){break o}c=H[33808];f=c+12|0;c=(q=f,r=d,s=Ra[H[H[c>>2]+20>>2]](c)|0?47172:55639,t=13582,u=553,p=H[H[f>>2]+8>>2],Ra[p](q|0,r|0,s|0,t|0,u|0)|0)}d=c;f=H[e+264>>2];n=c+(f<<2)|0;if((f|0)>0){l=H[e+260>>2];while(1){H[c>>2]=H[l>>2];l=l+4|0;c=c+4|0;if(n>>>0>c>>>0){continue}break}}H[n>>2]=H[j+12>>2];p:{if(H[e+268>>2]<0){break p}c=H[e+260>>2];if((c|0)==(e|0)){F[e+256|0]=0;break p}if(!c){break p}f=H[33808]+12|0;Ra[H[H[f>>2]+12>>2]](f,c);f=H[e+264>>2]}H[e+268>>2]=k;H[e+260>>2]=d;H[e+264>>2]=f+1;break n}H[H[g+264>>2]+(c<<2)>>2]=h;H[g+268>>2]=c+1}d=(h+(H[g+276>>2]<<7)|0)-128|0;if(h>>>0<=d>>>0){c=H[g+288>>2];while(1){H[d>>2]=c;c=d;d=c-128|0;if(h>>>0<=d>>>0){continue}break}H[g+288>>2]=c}Oa=j+16|0;c=H[i+972>>2]}H[i+972>>2]=H[c>>2];H[i+964>>2]=H[i+964>>2]+1;break c}c=0;d=d<<2;if(!d){break c}c=H[33808];c=Ra[H[H[c+12>>2]+8>>2]](c+12|0,d,20591,9345,1342)|0}}d=H[a+20>>2];q:{if(!d){break q}R6(c,d,m<<2);d=H[a+20>>2];if((d|0)==(a+4|0)){break q}$N(H[a+40>>2],d,H[a+24>>2])}H[a+20>>2]=c;H[a+24>>2]=o;d=H[a+28>>2]}H[a+28>>2]=d+1;H[(d<<2)+c>>2]=b;H[(H[b>>2]==(a|0)?12:16)+b>>2]=m} -function Wm(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;a=H[33808];d=Ra[H[H[a>>2]+20>>2]](a)|0?36838:55639;g=Ra[H[H[a+12>>2]+8>>2]](a+12|0,52,d,6215,560)|0;H[g+4>>2]=196624;F[g+48|0]=1;H[g+40>>2]=0;H[g+44>>2]=0;H[g>>2]=114360;H[g+8>>2]=0;H[g+12>>2]=0;H[g+16>>2]=0;H[g+20>>2]=0;H[g+24>>2]=0;H[g+28>>2]=0;H[g+32>>2]=0;H[g+36>>2]=0;a=0;e=Oa-144|0;Oa=e;a:{b:{if(!c){break b}r=1;c:{while(1){l=a+1|0;d:{if(l>>>0>=c>>>0){break d}p=0;k=0;h=0;i=H[(l<<2)+b>>2];f=i;d=f+319|0;h=d>>>0<319?1:h;j=d;d=h>>>6|0;h=h<<26|j>>>6;j=d;d=h;f=f>>>6|0;h=j-(d>>>0>>0)|0;o=d-f|0;j=h;d=o+1|0;h=d?h:h+1|0;f=d;d=0;q=d;s=f&7;if(d|s){while(1){d=f;f=d-1|0;h=h-!d|0;i=i- -64|0;d=k;k=p+1|0;d=k?d:d+1|0;p=k;k=d;if((s|0)!=(p|0)|(q|0)!=(d|0)){continue}break}}if(!j&o>>>0<7){break d}while(1){i=i+512|0;h=h-(f>>>0<8)|0;f=f-8|0;if(h|f){continue}break}}e:{d=(a<<2)+b|0;a=H[d>>2];h=J[a+4>>1];switch(H[H[((h<<2)+73232|0)+72>>2]+(a+4|0)>>2]>>>30|0){case 0:case 3:break e;default:break c}}f:{k=Ra[H[H[a>>2]+92>>2]](a)|0;if(k){i=0;g:{if((h|0)!=6){f=0;while(1){Ra[H[H[a>>2]+96>>2]](a,e+16|0,1,i)|0;j=H[e+16>>2];Ra[H[H[j>>2]+156>>2]](e,j);j=(I[e|0]&2)>>>1|0;f=j|f;m=j+m|0;i=i+1|0;if((k|0)!=(i|0)){continue}break}break g}f=0;while(1){Ra[H[H[a>>2]+96>>2]](a,e+16|0,1,i)|0;j=H[e+16>>2];Ra[H[H[j>>2]+156>>2]](e,j);j=(I[e|0]&2)>>>1|0;f=j|f;n=j+n|0;i=i+1|0;if((k|0)!=(i|0)){continue}break}}if(f&1){break f}}o5(H[33808],4,8814,190,63278,0);break a}h:{i:{switch(h-5|0){case 1:i=H[d>>2]+40|0;if(!H[i>>2]){break h}o5(H[33808],4,8814,199,63206,0);break a;case 0:i=H[d>>2]+40|0;if(!H[i>>2]){break h}o5(H[33808],4,8814,209,63206,0);break a;default:break i}}o5(H[33808],4,8814,216,62917,0);break a}r=c>>>0>l>>>0;H[i>>2]=g;a=l;if((a|0)!=(c|0)){continue}break}i=0;a=0;j:{if(!n){break j}d=N(n,24)+24|0;a=0;if(!d){break j}a=H[33808]+12|0;a=Ra[H[H[a>>2]+8>>2]](a,d,20591,8814,227)|0}k:{if(!m){break k}d=N(m,24)+24|0;if(!d){break k}f=H[33808]+12|0;i=Ra[H[H[f>>2]+8>>2]](f,d,20591,8814,227)|0}j=H[28586];p=H[28587];f=0;n=0;m=0;while(1){l:{m:{n:{d=H[(f<<2)+b>>2];switch(J[d+4>>1]-5|0){case 0:break m;case 1:break n;default:break l}}o=Ra[H[H[d>>2]+92>>2]](d)|0;if(!o){break l}q=d+48|0;k=d+20|0;h=N(m,24)+a|0;d=0;while(1){l=H[(d<<2)+(J[k+4>>1]==1?k:H[k>>2])>>2];Ra[H[H[l>>2]+156>>2]](e+16|0,l);if(I[e+16|0]&2){Ra[j|0](h,l+32|0,q);m=m+1|0;h=h+24|0}d=d+1|0;if((o|0)!=(d|0)){continue}break}break l}o=Ra[H[H[d>>2]+92>>2]](d)|0;if(!o){break l}q=d+48|0;k=d+20|0;h=N(n,24)+i|0;d=0;while(1){l=H[(d<<2)+(J[k+4>>1]==1?k:H[k>>2])>>2];Ra[H[H[l>>2]+156>>2]](e+16|0,l);if(I[e+16|0]&2){Ra[p|0](h,l+32|0,q);n=n+1|0;h=h+24|0}d=d+1|0;if((o|0)!=(d|0)){continue}break}}f=f+1|0;if((f|0)!=(c|0)){continue}break}break b}o5(H[33808],4,8814,167,63343,0);break a}d=MA(e+16|0);MA(e+80|0);H[g+24>>2]=m;o:{if(!m){break o}H[e+8>>2]=a;H[e+4>>2]=m;f=0;H[e+12>>2]=0;H[e>>2]=4;QA(d,e);d=H[e+56>>2];H[g+8>>2]=d;d=N(d,28);p:{if(!d){d=0;h=0;break p}h=H[33808]+12|0;d=Ra[H[H[h>>2]+8>>2]](h,d,20591,8814,267)|0;h=N(H[g+8>>2],28)}H[g+16>>2]=d;R6(d,H[e+24>>2],h);d=H[g+24>>2]<<2;q:{if(!d){d=0;break q}f=H[33808]+12|0;d=Ra[H[H[f>>2]+8>>2]](f,d,20591,8814,269)|0;f=H[g+24>>2]<<2}H[g+32>>2]=d;R6(d,H[e+16>>2],f);if(a){d=H[33808]+12|0;Ra[H[H[d>>2]+12>>2]](d,a)}H[e+8>>2]=0;H[e>>2]=0;H[e+4>>2]=0;a=H[e+12>>2];if(!a){break o}d=H[33808]+12|0;Ra[H[H[d>>2]+12>>2]](d,a)}H[g+28>>2]=n;r:{if(!n){break r}H[e+8>>2]=i;H[e+4>>2]=n;f=0;H[e+12>>2]=0;H[e>>2]=4;QA(e+80|0,e);a=H[e+120>>2];H[g+12>>2]=a;a=N(a,28);s:{if(!a){d=0;a=0;break s}d=H[33808]+12|0;d=Ra[H[H[d>>2]+8>>2]](d,a,20591,8814,267)|0;a=N(H[g+12>>2],28)}H[g+20>>2]=d;R6(d,H[e+88>>2],a);a=H[g+28>>2]<<2;t:{if(!a){d=0;break t}d=H[33808]+12|0;d=Ra[H[H[d>>2]+8>>2]](d,a,20591,8814,269)|0;f=H[g+28>>2]<<2}H[g+36>>2]=d;R6(d,H[e+80>>2],f);if(i){a=H[33808]+12|0;Ra[H[H[a>>2]+12>>2]](a,i)}H[e+8>>2]=0;H[e>>2]=0;H[e+4>>2]=0;a=H[e+12>>2];if(!a){break r}d=H[33808]+12|0;Ra[H[H[d>>2]+12>>2]](d,a)}H[g+40>>2]=c;a=c<<2;u:{if(!a){i=0;a=0;break u}c=H[33808]+12|0;i=Ra[H[H[c>>2]+8>>2]](c,a,20591,8814,279)|0;a=H[g+40>>2]<<2}H[g+44>>2]=i;R6(i,b,a);NA(e+80|0);NA(e+16|0)}Oa=e+144|0;if(!((r^-1)&1)){Ra[H[H[g>>2]+16>>2]](g);g=0}return g|0}function x_(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=0,D=0,E=0;f=Oa-240|0;Oa=f;j=L[d+8>>2];g=L[d>>2];i=L[d+4>>2];a:{if(!(g!=O(1)|i!=O(1)|j!=O(1))){G[f+144>>1]=0;H[f+140>>2]=e;H[f+132>>2]=2;H[f+128>>2]=128472;H[f+136>>2]=f- -64;l=L[a+24>>2];j=L[c+8>>2];q=L[c+24>>2];i=O(L[a+8>>2]-q);h=O(i+i);i=L[c>>2];s=L[c+16>>2];g=O(L[a>>2]-s);k=O(g+g);u=L[c+20>>2];g=O(L[a+4>>2]-u);n=O(g+g);g=L[c+4>>2];p=O(O(j*h)+O(O(i*k)+O(n*g)));m=L[c+12>>2];o=O(O(m*m)+O(-.5));r=O(O(j*p)+O(O(h*o)-O(m*O(O(i*n)-O(k*g)))));L[f+156>>2]=r;t=O(O(g*p)+O(O(n*o)-O(m*O(O(j*k)-O(h*i)))));L[f+152>>2]=t;v=O(O(i*p)+O(O(k*o)-O(m*O(O(g*h)-O(n*j)))));L[f+148>>2]=v;n=L[a+16>>2];h=L[a+20>>2];k=L[a+12>>2];L[f+172>>2]=l;h=O(h-q);h=O(h+h);k=O(k-s);k=O(k+k);n=O(n-u);n=O(n+n);p=O(O(j*h)+O(O(i*k)+O(g*n)));q=O(O(j*p)+O(O(h*o)-O(m*O(O(i*n)-O(k*g)))));L[f+168>>2]=q;s=O(O(g*p)+O(O(n*o)-O(m*O(O(j*k)-O(h*i)))));L[f+164>>2]=s;g=O(O(i*p)+O(O(k*o)-O(m*O(O(g*h)-O(n*j)))));L[f+160>>2]=g;j=O(q-r);L[f+184>>2]=j;i=O(s-t);L[f+180>>2]=i;g=O(g-v);m=O(O(j*j)+O(O(g*g)+O(i*i)));L[f+188>>2]=m;L[f+192>>2]=m!=O(0)?O(O(1)/m):O(0);L[f+176>>2]=g;L[f+8>>2]=l;L[f+4>>2]=l;L[f>>2]=l;L[f+208>>2]=j;L[f+204>>2]=i;L[f+200>>2]=g;a=Oa-288|0;Oa=a;i=L[b+60>>2];c=I[b+64|0];d=H[b+28>>2];e=H[b+24>>2];H[a+36>>2]=128116;H[a+56>>2]=f;H[a+32>>2]=128092;D=a,E=k7(e,d),H[D+48>>2]=E;H[a+52>>2]=Qa;H[a+44>>2]=c>>>1&1;H[a+40>>2]=f+128;c=f+148|0;g=L[c>>2];L[a+60>>2]=g;m=L[c+4>>2];L[a- -64>>2]=m;o=L[c+8>>2];L[a+68>>2]=o;d=f+200|0;l=L[d>>2];L[a+72>>2]=l;h=L[d+4>>2];L[a+76>>2]=h;j=L[d+8>>2];H[a+112>>2]=0;H[a+116>>2]=0;G[a+108>>1]=0;H[a+104>>2]=-1;L[a+88>>2]=i;F[a+84|0]=1;L[a+80>>2]=j;H[a+120>>2]=0;H[a+124>>2]=0;H[a+128>>2]=0;H[a+132>>2]=0;H[a+144>>2]=0;H[a+136>>2]=2139095039;H[a+140>>2]=0;H[a+96>>2]=0;H[a+100>>2]=0;L[a+92>>2]=1;e=H[f+132>>2];F[a+208|0]=0;F[a+209|0]=(e|0)==1;e=H[f+4>>2];C=H[f>>2];i=L[f+8>>2];H[a+268>>2]=0;L[a+264>>2]=j;L[a+260>>2]=h;H[a+252>>2]=0;L[a+248>>2]=o;L[a+244>>2]=m;H[a+236>>2]=0;L[a+232>>2]=i;L[a+256>>2]=l;L[a+240>>2]=g;H[a+224>>2]=C;H[a+228>>2]=e;i$(b+112|0,c,d,a+32|0,f,O(1));H[a+36>>2]=128116;H[a+32>>2]=128092;if(I[a+208|0]){b=H[a+40>>2];Ra[H[H[b>>2]>>2]](b,a+96|0,a+160|0,a+172|0,a+184|0,a+92|0,a+196|0)|0}Oa=a+288|0;break a}o=L[d+12>>2];m=O(o+o);l=L[d+16>>2];h=O(l+l);v=O(O(1)-O(o*m));w=O(l*h);k=O(v-w);n=O(j*k);o=L[d+20>>2];x=O(m*o);r=L[d+24>>2];y=O(h*r);p=O(x+y);q=O(g*p);u=O(h*o);t=O(m*r);h=O(u-t);s=O(i*h);L[f+232>>2]=O(k*n)+O(O(p*q)+O(h*s));u=O(u+t);t=O(j*u);z=O(m*l);l=O(o+o);A=O(r*l);m=O(z-A);r=O(g*m);B=O(o*l);o=O(v-B);v=O(i*o);L[f+228>>2]=O(k*t)+O(O(p*r)+O(h*v));L[f+220>>2]=O(u*n)+O(O(m*q)+O(o*s));L[f+216>>2]=O(u*t)+O(O(m*r)+O(o*v));l=O(x-y);x=O(l*n);n=O(O(O(1)-w)-B);w=O(n*q);q=O(z+A);L[f+208>>2]=x+O(w+O(q*s));L[f+204>>2]=O(l*t)+O(O(n*r)+O(q*v));r=k;k=O(j*l);s=p;p=O(g*n);t=h;h=O(i*q);L[f+224>>2]=O(r*k)+O(O(s*p)+O(t*h));L[f+212>>2]=O(u*k)+O(O(m*p)+O(o*h));L[f+200>>2]=O(l*k)+O(O(n*p)+O(q*h));F[f+145|0]=O(O(g*i)*j)>2]=e;H[f+132>>2]=2;H[f+128>>2]=128504;H[f+136>>2]=f+200;p=L[a+24>>2];j=L[c+8>>2];q=L[c+24>>2];i=O(L[a+8>>2]-q);l=O(i+i);i=L[c>>2];s=L[c+16>>2];g=O(L[a>>2]-s);h=O(g+g);u=L[c+20>>2];g=O(L[a+4>>2]-u);k=O(g+g);g=L[c+4>>2];n=O(O(j*l)+O(O(i*h)+O(k*g)));m=L[c+12>>2];o=O(O(m*m)+O(-.5));r=O(O(j*n)+O(O(l*o)-O(m*O(O(i*k)-O(h*g)))));L[f+156>>2]=r;t=O(O(g*n)+O(O(k*o)-O(m*O(O(j*h)-O(l*i)))));L[f+152>>2]=t;v=O(O(i*n)+O(O(h*o)-O(m*O(O(g*l)-O(k*j)))));L[f+148>>2]=v;k=L[a+16>>2];l=L[a+20>>2];h=L[a+12>>2];L[f+172>>2]=p;l=O(l-q);l=O(l+l);h=O(h-s);h=O(h+h);k=O(k-u);k=O(k+k);n=O(O(j*l)+O(O(i*h)+O(g*k)));p=O(O(j*n)+O(O(l*o)-O(m*O(O(i*k)-O(h*g)))));L[f+168>>2]=p;q=O(O(g*n)+O(O(k*o)-O(m*O(O(j*h)-O(l*i)))));L[f+164>>2]=q;g=O(O(i*n)+O(O(h*o)-O(m*O(O(g*l)-O(k*j)))));L[f+160>>2]=g;j=O(p-r);L[f+184>>2]=j;i=O(q-t);L[f+180>>2]=i;g=O(g-v);L[f+176>>2]=g;j=O(O(j*j)+O(O(g*g)+O(i*i)));L[f+188>>2]=j;L[f+192>>2]=j!=O(0)?O(O(1)/j):O(0);zU(f,a);a=f- -64|0;dZ(a,f,c,d);o_(a,1,b,f+128|0,1)}Oa=f+240|0;return I[f+144|0]!=0|0}function Zl(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0;H[a>>2]=106624;if(H[a+872>>2]){d=Oa-32|0;Oa=d;H[d+24>>2]=0;H[d+16>>2]=0;H[d+20>>2]=0;b=H[a+880>>2];if(b){while(1){H[d+8>>2]=b;a:{if((f&2147483647)>>>0<=c>>>0){c=0;b=H[d+24>>2]&2147483647;g=b?b<<1:1;b:{if(!g){break b}e=g<<2;if(!e){break b}c=H[33808];b=Ra[H[H[c>>2]+20>>2]](c)|0?46512:55639;c=Ra[H[H[c+12>>2]+8>>2]](c+12|0,e,b,13582,553)|0}f=H[d+20>>2];e=(f<<2)+c|0;if((f|0)>0){h=H[d+16>>2];b=c;while(1){H[b>>2]=H[h>>2];h=h+4|0;b=b+4|0;if(e>>>0>b>>>0){continue}break}}H[e>>2]=H[d+8>>2];c:{if(H[d+24>>2]<0){break c}e=H[d+16>>2];if(!e){break c}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,e);f=H[d+20>>2]}H[d+24>>2]=g;H[d+16>>2]=c;H[d+20>>2]=f+1;break a}H[H[d+16>>2]+(c<<2)>>2]=b;H[d+20>>2]=c+1}b=H[H[a+880>>2]>>2];H[a+880>>2]=b;if(b){c=H[d+20>>2];f=H[d+24>>2];continue}break}c=H[d+16>>2];e=H[d+20>>2]}else{e=0}b=d+8|0;$l(c,e,b);$l(H[a+856>>2],H[a+860>>2],b);b=H[d+24>>2];d:{if((b|0)<0|!(b&2147483647)){break d}c=H[d+16>>2];if(!c){break d}b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,c)}Oa=d+32|0}b=H[a+860>>2];if(b){c=H[a+856>>2];g=c+(b<<2)|0;while(1){e=H[c>>2];if(e){b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,e)}c=c+4|0;if((g|0)!=(c|0)){continue}break}}b=H[a+864>>2];e:{if((b|0)<0|!(b&2147483647)){break e}c=H[a+856>>2];if((c|0)==(a+596|0)){F[a+852|0]=0;break e}if(!c){break e}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,c)}if(H[a+580>>2]){c=0;f=0;d=Oa-32|0;Oa=d;H[d+24>>2]=0;H[d+16>>2]=0;H[d+20>>2]=0;b=H[a+588>>2];if(b){while(1){H[d+8>>2]=b;f:{if((f&2147483647)>>>0<=c>>>0){c=0;b=H[d+24>>2]&2147483647;g=b?b<<1:1;g:{if(!g){break g}e=g<<2;if(!e){break g}c=H[33808];b=Ra[H[H[c>>2]+20>>2]](c)|0?45882:55639;c=Ra[H[H[c+12>>2]+8>>2]](c+12|0,e,b,13582,553)|0}f=H[d+20>>2];e=(f<<2)+c|0;if((f|0)>0){h=H[d+16>>2];b=c;while(1){H[b>>2]=H[h>>2];h=h+4|0;b=b+4|0;if(e>>>0>b>>>0){continue}break}}H[e>>2]=H[d+8>>2];h:{if(H[d+24>>2]<0){break h}e=H[d+16>>2];if(!e){break h}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,e);f=H[d+20>>2]}H[d+24>>2]=g;H[d+16>>2]=c;H[d+20>>2]=f+1;break f}H[H[d+16>>2]+(c<<2)>>2]=b;H[d+20>>2]=c+1}b=H[H[a+588>>2]>>2];H[a+588>>2]=b;if(b){c=H[d+20>>2];f=H[d+24>>2];continue}break}c=H[d+16>>2];e=H[d+20>>2]}else{e=0}b=d+8|0;am(c,e,b);am(H[a+564>>2],H[a+568>>2],b);b=H[d+24>>2];i:{if((b|0)<0|!(b&2147483647)){break i}c=H[d+16>>2];if(!c){break i}b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,c)}Oa=d+32|0}b=H[a+568>>2];if(b){c=H[a+564>>2];g=c+(b<<2)|0;while(1){e=H[c>>2];if(e){b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,e)}c=c+4|0;if((g|0)!=(c|0)){continue}break}}b=H[a+572>>2];j:{if((b|0)<0|!(b&2147483647)){break j}c=H[a+564>>2];if((c|0)==(a+304|0)){F[a+560|0]=0;break j}if(!c){break j}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,c)}if(H[a+288>>2]){c=0;f=0;d=Oa-32|0;Oa=d;H[d+24>>2]=0;H[d+16>>2]=0;H[d+20>>2]=0;b=H[a+296>>2];if(b){while(1){H[d+8>>2]=b;k:{if((f&2147483647)>>>0<=c>>>0){c=0;b=H[d+24>>2]&2147483647;g=b?b<<1:1;l:{if(!g){break l}e=g<<2;if(!e){break l}c=H[33808];b=Ra[H[H[c>>2]+20>>2]](c)|0?46190:55639;c=Ra[H[H[c+12>>2]+8>>2]](c+12|0,e,b,13582,553)|0}f=H[d+20>>2];e=(f<<2)+c|0;if((f|0)>0){h=H[d+16>>2];b=c;while(1){H[b>>2]=H[h>>2];h=h+4|0;b=b+4|0;if(e>>>0>b>>>0){continue}break}}H[e>>2]=H[d+8>>2];m:{if(H[d+24>>2]<0){break m}e=H[d+16>>2];if(!e){break m}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,e);f=H[d+20>>2]}H[d+24>>2]=g;H[d+16>>2]=c;H[d+20>>2]=f+1;break k}H[H[d+16>>2]+(c<<2)>>2]=b;H[d+20>>2]=c+1}b=H[H[a+296>>2]>>2];H[a+296>>2]=b;if(b){c=H[d+20>>2];f=H[d+24>>2];continue}break}c=H[d+16>>2];e=H[d+20>>2]}else{e=0}b=d+8|0;bm(c,e,b);bm(H[a+272>>2],H[a+276>>2],b);b=H[d+24>>2];n:{if((b|0)<0|!(b&2147483647)){break n}c=H[d+16>>2];if(!c){break n}b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,c)}Oa=d+32|0}b=H[a+276>>2];if(b){c=H[a+272>>2];g=c+(b<<2)|0;while(1){e=H[c>>2];if(e){b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,e)}c=c+4|0;if((g|0)!=(c|0)){continue}break}}b=H[a+280>>2];o:{if((b|0)<0|!(b&2147483647)){break o}c=H[a+272>>2];if((c|0)==(a+12|0)){F[a+268|0]=0;break o}if(!c){break o}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,c)}c=H[a+4>>2];if(c){b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,c)}return a|0}function HQ(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=O(0),p=O(0),q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;n=Oa-16|0;Oa=n;q=H[H[a+4>>2]+40>>2];c=H[q+976>>2];r=H[a+44>>2];t=r&2048;s=t>>>11|0;a:{if(!b){d=H[c+328>>2];b:{if(!d){e=N(H[c+312>>2],80);c:{if(!e){break c}d=H[33808];h=Ra[H[H[d>>2]+20>>2]](d)|0?29214:55639;k=Ra[H[H[d+12>>2]+8>>2]](d+12|0,e,h,15391,236)|0;if(!k){break c}d=H[c+316>>2];f=d+1|0;h=H[c+312>>2];i=N(f,h);e=H[c+344>>2];d:{if(i>>>0<=e<<5>>>0){e=H[c+332>>2];break d}d=(i<<1)+31>>>5|0;if(d>>>0>(e&2147483647)>>>0){e=H[33808];e=Ra[H[H[e+12>>2]+8>>2]](e+12|0,d<<2,20591,14969,438)|0;h=H[c+340>>2];e:{if(!h){break e}R6(e,h,H[c+344>>2]<<2);if(H[c+344>>2]<0){break e}h=H[c+340>>2];if(!h){break e}i=H[33808];Ra[H[H[i+12>>2]+12>>2]](i+12|0,h)}h=H[c+344>>2];S6(e+(h<<2)|0,0,d-h<<2);H[c+344>>2]=d;H[c+340>>2]=e}d=H[c+324>>2];if(d){e=H[33808];Ra[H[H[e+12>>2]+12>>2]](e+12|0,d)}e=0;d=c;i=f<<3;j=N(i,H[c+312>>2]);if(j){h=H[33808];l=Ra[H[H[h>>2]+20>>2]](h)|0?29214:55639;h=Ra[H[H[h+12>>2]+8>>2]](h+12|0,j,l,15391,248)|0}else{h=0}H[d+324>>2]=h;if(i){d=H[33808];e=Ra[H[H[d>>2]+20>>2]](d)|0?29214:55639;e=Ra[H[H[d+12>>2]+8>>2]](d+12|0,i,e,15391,250)|0}d=H[c+332>>2];f:{if(!d){break f}R6(e,d,f<<2);d=H[c+332>>2];if(!d){break f}f=H[33808];Ra[H[H[f+12>>2]+12>>2]](f+12|0,d)}H[c+332>>2]=e;d=H[c+316>>2];f=d+1|0;h=H[c+312>>2]}H[c+316>>2]=f;H[(d<<2)+e>>2]=k;e=H[c+328>>2];f=h-1|0;if((f|0)>=0){d=N(d,h);while(1){h=vJ(k+N(f,80)|0,d+f|0);H[H[c+324>>2]+(e<<2)>>2]=h;e=e+1|0;h=(f|0)>0;f=f-1|0;if(h){continue}break}}H[c+328>>2]=e;f=1}if(!f){break b}d=H[c+328>>2]}g=d-1|0;H[c+328>>2]=g;g=H[H[c+324>>2]+(g<<2)>>2];d=H[g+48>>2];f=H[c+340>>2]+(d>>>3&536870908)|0;H[f>>2]=H[f>>2]|1<>2]=0;H[g+36>>2]=0;F[g+42|0]=0;f=H[g+48>>2];d=H[c+940>>2];g:{if(f>>>0>>0){break g}e=d&2147483647;d=(f<<1)+256>>>5&134217720;if(e>>>0>=d>>>0){break g}f=H[33808];f=Ra[H[H[f+12>>2]+8>>2]](f+12|0,d<<2,20591,14969,438)|0;e=H[c+936>>2];h:{if(!e){break h}R6(f,e,H[c+940>>2]<<2);if(H[c+940>>2]<0){break h}e=H[c+936>>2];if(!e){break h}h=H[33808];Ra[H[H[h+12>>2]+12>>2]](h+12|0,e)}e=H[c+940>>2];S6(f+(e<<2)|0,0,d-e<<2);H[c+940>>2]=d;H[c+936>>2]=f;f=H[g+48>>2]}d=H[c+936>>2]+(f>>>3&536870908)|0;H[d>>2]=H[d>>2]|1<>2];d=H[c+952>>2];i:{if(f>>>0>>0){break i}e=d&2147483647;d=(f<<1)+256>>>5&134217720;if(e>>>0>=d>>>0){break i}f=H[33808];f=Ra[H[H[f+12>>2]+8>>2]](f+12|0,d<<2,20591,14969,438)|0;e=H[c+948>>2];j:{if(!e){break j}R6(f,e,H[c+952>>2]<<2);if(H[c+952>>2]<0){break j}e=H[c+948>>2];if(!e){break j}h=H[33808];Ra[H[H[h+12>>2]+12>>2]](h+12|0,e)}e=H[c+952>>2];S6(f+(e<<2)|0,0,d-e<<2);H[c+952>>2]=d;H[c+948>>2]=f;f=H[g+48>>2]}c=H[c+948>>2]+(f>>>3&536870908)|0;H[c>>2]=H[c>>2]|1<>2]=0;H[b+36>>2]=0;F[b+42|0]=0;c=b}g=H[a+44>>2];u=g&32768;v=g&98304;h=v?u?1:-1:0;k=g&262144;w=!k&(r&448)!=0;f=r&2;x=f>>>1|0;y=g&131072;g=H[a+32>>2];i=I[H[H[g+4>>2]+44>>2]+9|0];d=H[a+28>>2];s=I[H[H[d+4>>2]+44>>2]+9|0];l=n+8|0;e=H[d+4>>2];m=I[H[e+44>>2]+9|0]-1>>>0<2?e:0;z=I[H[m+44>>2]+10|0];e=H[g+4>>2];e=I[H[e+44>>2]+9|0]-1>>>0<2?e:0;if(e){j=H[e+44>>2];A=F[j+44|0]&1;j=I[j+10|0]}else{j=0}PO(l,q,z,j);j=H[d+28>>2];l=H[g+28>>2];H[c+12>>2]=a;H[c+4>>2]=e?e- -64|0:0;H[c>>2]=m- -64;H[c+28>>2]=l+32;H[c+24>>2]=j+32;H[c+16>>2]=H[H[d+4>>2]+44>>2]+16;H[c+20>>2]=H[H[g+4>>2]+44>>2]+16;e=H[d+28>>2];m=H[g+28>>2];L[c+52>>2]=L[e+128>>2]+L[m+128>>2];F[c+44|0]=I[n+8|0];F[c+45|0]=I[n+9|0];F[c+46|0]=H[j+68>>2];F[c+47|0]=H[l+68>>2];H[c+56>>2]=H[d+8>>2]&2147483647;H[c+60>>2]=H[g+8>>2]&2147483647;o=L[e+132>>2];p=L[m+132>>2];L[c+72>>2]=o>p?o:p;o=L[m+136>>2];p=L[e+136>>2];g=((s|0)==2)<<3;g=(i|0)==2?g|16:g;g=s?g|32:g;g=i?g|64:g;g=r>>>1&512|(f|k?g:g|2);g=A?g|1024:g;g=k?g|2048:g;g=(f|y)!=0|(t?g|4096:g);g=w?g|256:g;G[c+40>>1]=f?g|128:g;H[c+68>>2]=-1;H[c+8>>2]=t>>>10|x;L[c+76>>2]=o>2]=c;F[c+43|0]=(h|0)>0?2:!u&(v|0)!=0;if(!b){b=H[a+60>>2];d=H[q+1e3>>2];f=H[d+148>>2];g=(b>>>0)/(f>>>0)|0;H[H[H[d+128>>2]+(g<<2)>>2]+(b-N(f,g)<<2)>>2]=c;H[c- -64>>2]=b;b=H[H[q+976>>2]+1024>>2];Ra[H[H[b>>2]+28>>2]](b,H[a+56>>2],h,0)}Oa=n+16|0}function k1(a,b,c,d,e,f,g){var h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=0,u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),F=O(0),G=O(0),H=O(0),I=O(0),J=O(0),K=O(0),M=O(0),Q=O(0),R=O(0),S=O(0),T=O(0),U=0;t=Oa-16|0;Oa=t;r=L[a+20>>2];s=L[a+32>>2];j=L[a+8>>2];p=L[a>>2];h=O(L[a+12>>2]-p);i=L[a+4>>2];k=O(L[a+28>>2]-i);p=O(L[a+24>>2]-p);i=O(L[a+16>>2]-i);n=O(O(h*k)-O(p*i));L[t+8>>2]=n;r=O(r-j);j=O(s-j);s=O(O(r*p)-O(j*h));L[t+4>>2]=s;j=O(O(i*j)-O(k*r));L[t>>2]=j;Oa=t+16|0;a:{if(g){g=0;if(O(O(n*L[c+8>>2])+O(O(j*L[c>>2])+O(s*L[c+4>>2])))>=O(0)){break a}}j=L[t+8>>2];E=L[b+8>>2];h=L[t>>2];F=L[b>>2];G=L[b+4>>2];i=L[t+4>>2];v=O(O(O(P(j))*E)+O(O(O(P(h))*F)+O(G*O(P(i)))));r=L[a+8>>2];s=L[a>>2];p=L[a+4>>2];k=O(O(r*j)+O(O(s*h)+O(i*p)));w=L[a+20>>2];x=L[a+12>>2];y=L[a+16>>2];n=O(O(w*j)+O(O(x*h)+O(i*y)));z=k>n?k:n;A=L[a+32>>2];B=L[a+24>>2];C=L[a+28>>2];u=O(O(A*j)+O(O(B*h)+O(i*C)));l=O(O(-v)-(u=O(0);u=L[c+8>>2];v=L[c>>2];z=L[c+4>>2];j=O(O(u*j)+O(O(v*h)+O(z*i)));b:{c:{d:{if(!(O(P(j))j?j:h;if(i>O(3.4028234663852886e38)){break c}j=hO(-3.4028234663852886e38)?i:O(-3.4028234663852886e38);break d}if(!b){break c}n=O(3.4028234663852886e38);j=O(-3.4028234663852886e38)}h=s>x?s:x;h=O(O(-F)-(h>B?h:B));i=s=O(0);e:{if(!(O(P(v))>2]);h=O(h*k);i=O(i*k);k=hn){break c}h=h>i?h:i;if(hy?p:y;h=O(O(-G)-(h>C?h:C));i=p=O(0);f:{if(!(O(P(z))>2]);h=O(h*k);i=O(i*k);k=hn){break c}h=h>i?h:i;if(hw?r:w;h=O(O(-E)-(h>A?h:A));i=r=O(0);g:{if(!(O(P(u))>2]);h=O(h*k);i=O(i*k);k=hn){break c}h=h>i?h:i;if(h>2];h:{i=O(L[b+4>>2]-i);K=O(i*i);h=O(L[b+8>>2]-h);H=O(O(h*h)+O(0));if(!(O(K+H)>=O(9.999999974752427e-7))){break h}l=O(-h);D=O(O(O(P(i))*E)+O(O(F*O(0))+O(G*O(P(l)))));m=O(O(r*i)+O(O(s*O(0))+O(p*l)));o=O(O(w*i)+O(O(x*O(0))+O(y*l)));I=m>o?m:o;q=O(O(A*i)+O(O(B*O(0))+O(C*l)));I=O(O(-D)-(q=O(0);d=b&d;l=O(O(u*i)+O(O(v*O(0))+O(z*l)));if(!(O(P(l))n){break c}l=l>m?l:m;if(ll?l:n;break h}if(b){break h}a=0;break b}i:{k=O(J-k);J=O(k*k);if(!(O(J+H)>=O(9.999999974752427e-7))){break i}l=O(-k);H=O(O(O(P(l))*E)+O(O(O(P(h))*F)+Q));m=O(O(r*l)+O(O(s*h)+T));o=O(O(w*l)+O(O(x*h)+S));D=m>o?m:o;q=O(O(A*l)+O(O(B*h)+R));D=O(O(-H)-(q=O(0);d=b&d;h=O(O(u*l)+O(O(v*h)+M));if(!(O(P(h))n){break c}h=h>l?h:l;if(h=O(9.999999974752427e-7))){break j}h=O(-i);o=O(O(E*O(0))+O(O(O(P(h))*F)+O(G*O(P(k)))));i=O(O(r*O(0))+O(O(s*h)+O(p*k)));l=O(O(w*O(0))+O(O(x*h)+O(y*k)));q=i>l?i:l;m=O(O(A*O(0))+O(O(B*h)+O(C*k)));q=O(O(-o)-(m=O(0);d=b&d;h=O(O(u*O(0))+O(O(v*h)+O(z*k)));if(!(O(P(h))n){break c}h=h>i?h:i;if(h>2];i=L[b+4>>2];k=L[b>>2];continue}break}if(e>2]=j;U=1}a=U}g=a}return g}function SB(a,b,c,d){var e=0,f=0,g=0,h=0,i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=0,r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),F=O(0),G=0,I=0,J=0,K=O(0),M=O(0);h=Oa-48|0;Oa=h;f=N(b,24)+c|0;i=L[f>>2];m=L[f+4>>2];n=L[f+8>>2];H[h+44>>2]=0;L[h+40>>2]=n;L[h+36>>2]=m;L[h+32>>2]=i;w=L[f+12>>2];x=L[f+16>>2];y=L[f+20>>2];H[h+28>>2]=0;L[h+24>>2]=y;L[h+20>>2]=x;L[h+16>>2]=w;e=H[a+588>>2];a:{if(!e){e=H[a+292>>2];if(!e){NB(a+4|0);e=H[a+292>>2]}H[a+292>>2]=H[e>>2];H[a+284>>2]=H[a+284>>2]+1;H[e+8>>2]=0;H[e+12>>2]=0;H[e+4>>2]=b;H[e>>2]=1;H[e+16>>2]=0;b=H[a+584>>2];if(!b){MB(a+296|0);b=H[a+584>>2]}H[a+584>>2]=H[b>>2];H[a+588>>2]=b;H[a+576>>2]=H[a+576>>2]+1;c=H[h+44>>2];H[b+8>>2]=H[h+40>>2];H[b+12>>2]=c;c=H[h+36>>2];H[b>>2]=H[h+32>>2];H[b+4>>2]=c;c=H[h+20>>2];b=H[a+588>>2];H[b+16>>2]=H[h+16>>2];H[b+20>>2]=c;c=H[h+28>>2];H[b+24>>2]=H[h+24>>2];H[b+28>>2]=c;H[H[a+588>>2]+36>>2]=e;H[H[a+588>>2]+40>>2]=0;e=H[a+588>>2];H[e+32>>2]=0;break a}f=H[e+40>>2];if(!f){f=H[e+36>>2];g=H[f>>2];if(g>>>0<=3){H[f>>2]=g+1;H[(f+(g<<2)|0)+4>>2]=b;k=L[e+12>>2];L[e+12>>2]=k>2];L[e+8>>2]=k>2];L[e+4>>2]=m>n?n:m;m=L[e>>2];L[e>>2]=i>m?m:i;i=L[e+16>>2];L[e+16>>2]=i>w?i:w;i=L[e+20>>2];L[e+20>>2]=i>x?i:x;i=L[e+24>>2];L[e+24>>2]=i>y?i:y;i=L[e+28>>2];L[e+28>>2]=i>O(0)?i:O(0);OB(e);e=H[a+588>>2];break a}f=H[d+4>>2];if(!(!f|(e|0)!=H[H[d>>2]>>2])){H[d+4>>2]=f-1}b=LB(a,e,b,h+32|0,h+16|0,c);H[h+12>>2]=b;c=a;a=H[b+32>>2];H[c+588>>2]=a;e=H[a+36>>2];if((b|0)==(e|0)){e=H[a+40>>2]}H[h+8>>2]=e;b:{if(H[e+40>>2]){break b}a=H[d+4>>2];if(a>>>0>=(H[d+8>>2]&2147483647)>>>0){QB(d,h+8|0);break b}H[H[d>>2]+(a<<2)>>2]=e;H[d+4>>2]=a+1}a=H[d+4>>2];if(a>>>0>=(H[d+8>>2]&2147483647)>>>0){QB(d,h+12|0);e=H[h+12>>2];break a}H[H[d>>2]+(a<<2)>>2]=H[h+12>>2];H[d+4>>2]=a+1;e=H[h+12>>2];break a}k=O(n+y);g=H[e+36>>2];j=L[g+24>>2];s=L[g+8>>2];u=O(k-O(j+s));o=O(u*u);u=O(i+w);l=L[g+16>>2];z=L[g>>2];v=O(u-O(l+z));p=O(v*v);v=O(m+x);A=L[g+20>>2];B=L[g+4>>2];r=O(v-O(A+B));C=O(o+O(p+O(r*r)));r=L[f+24>>2];D=L[f+8>>2];o=O(k-O(r+D));K=O(o*o);o=L[f+16>>2];E=L[f>>2];p=O(u-O(o+E));M=O(p*p);p=L[f+20>>2];F=L[f+4>>2];t=O(v-O(p+F));g=C>O(K+O(M+O(t*t)));j=O(O(O(l-z)*O(A-B))*O(j-s));s=O(O(O(o-E)*O(p-F))*O(r-D));I=O(j*O(3))O(s*O(3));J=I&(j>s^-1);c:{if(!I){f=1;break c}f=H[H[(e+(J<<2)|0)+36>>2]+40>>2];G=f?e:0;f=!f}g=H[(e+(g<<2)|0)+36>>2];H[h+12>>2]=g;e=H[g+40>>2];if(e){while(1){j=L[e+24>>2];s=L[e+20>>2];q=H[g+36>>2];l=L[q+24>>2];z=L[q+20>>2];A=L[e+8>>2];B=L[e+4>>2];r=L[e>>2];D=L[e+16>>2];o=L[q+8>>2];E=L[q+4>>2];p=L[q>>2];F=L[q+16>>2];d:{if(!f){break d}C=O(O(O(D-r)*O(s-B))*O(j-A));t=O(O(O(F-p)*O(z-E))*O(l-o));if(!(C>O(t*O(3))|O(C*O(3))C)}l=O(k-O(l+o));o=O(l*l);l=O(u-O(F+p));p=O(l*l);l=O(v-O(z+E));j=O(k-O(j+A));t=O(j*j);j=O(u-O(D+r));r=O(j*j);j=O(v-O(s+B));e=O(o+O(p+O(l*l)))>O(t+O(r+O(j*j)));e:{if(G){break e}if(!I){G=0;break e}q=H[H[((J<<2)+g|0)+36>>2]+40>>2];G=q?g:0;f=!q&f}g=H[((e<<2)+g|0)+36>>2];H[h+12>>2]=g;e=H[g+40>>2];if(e){continue}break}}f=H[g+36>>2];e=H[f>>2];f:{if(e>>>0<=3){H[f>>2]=e+1;H[(f+(e<<2)|0)+4>>2]=b;k=L[g+12>>2];L[g+12>>2]=k>2];L[g+8>>2]=k>2];L[g+4>>2]=m>n?n:m;m=L[g>>2];L[g>>2]=i>m?m:i;i=L[g+16>>2];L[g+16>>2]=i>w?i:w;i=L[g+20>>2];L[g+20>>2]=i>x?i:x;i=L[g+24>>2];L[g+24>>2]=i>y?i:y;i=L[g+28>>2];L[g+28>>2]=i>O(0)?i:O(0);OB(g);e=H[h+12>>2];b=H[d+4>>2];if(b){f=H[d>>2];if(H[f>>2]==(e|0)){break f}if(b>>>0>=(H[d+8>>2]&2147483647)>>>0){QB(d,h+12|0);break f}H[f+(b<<2)>>2]=e;H[d+4>>2]=b+1;break f}if(!(H[d+8>>2]&2147483647)){QB(d,h+12|0);break f}H[H[d>>2]>>2]=e;H[d+4>>2]=1;break f}f=H[d+4>>2];if(!(!f|H[H[d>>2]>>2]!=(g|0))){H[d+4>>2]=f-1}e=LB(a,g,b,h+32|0,h+16|0,c);q=H[e+32>>2];b=q+36|0;g=H[d+8>>2]&2147483647;f=H[d+4>>2];g:{if(g>>>0<=f>>>0){QB(d,b);g=H[d+8>>2]&2147483647;b=H[d+4>>2];break g}H[H[d>>2]+(f<<2)>>2]=H[b>>2];b=f+1|0;H[d+4>>2]=b}f=q+40|0;if(b>>>0>=g>>>0){QB(d,f);break f}H[H[d>>2]+(b<<2)>>2]=H[f>>2];H[d+4>>2]=b+1}if(!G){break a}PB(a,G,d,J,c,1);e=0}Oa=h+48|0;return e}function JX(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=e|0;f=f|0;g=O(g);h=h|0;i=i|0;j=O(j);k=k|0;l=O(l);var m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=0,D=O(0),E=O(0),G=O(0),J=O(0),K=O(0),M=0,P=0;k=Oa-480|0;Oa=k;b=H[b>>2];a=H[a>>2];F[k+192|0]=0;H[k+188>>2]=3;H[k+168>>2]=0;H[k+172>>2]=0;H[k+160>>2]=0;H[k+164>>2]=0;j=L[a+4>>2];l=L[a+8>>2];q=L[a+12>>2];H[k+220>>2]=0;L[k+216>>2]=q;L[k+212>>2]=l;L[k+208>>2]=j;j=j<=l?j:l;j=j<=q?j:q;L[k+184>>2]=j*O(.05000000074505806);L[k+180>>2]=j*O(.004999999888241291);L[k+176>>2]=j*O(.009999999776482582);F[k+32|0]=0;H[k+24>>2]=0;H[k+28>>2]=0;H[k+16>>2]=0;H[k+20>>2]=0;H[k+8>>2]=0;H[k+12>>2]=0;H[k>>2]=0;H[k+4>>2]=0;a=H[b+40>>2];j=L[b+4>>2];l=L[b+8>>2];q=L[b+12>>2];H[k+252>>2]=0;L[k+248>>2]=q;L[k+244>>2]=l;L[k+240>>2]=j;C=H[b+16>>2];M=H[b+20>>2];P=H[b+28>>2];H[k+408>>2]=H[b+24>>2];H[k+412>>2]=P;H[k+400>>2]=C;H[k+404>>2]=M;H[k+144>>2]=a;H[k+152>>2]=H[a+40>>2]+N(I[a+39|0],20);F[k+156|0]=I[a+38|0];o=O(j*L[a+52>>2]);u=O(l*L[a+56>>2]);o=o<=u?o:u;u=O(q*L[a+60>>2]);o=o<=u?o:u;L[k+24>>2]=o*O(.02500000037252903);L[k+16>>2]=o*O(.10000000149011612);L[k+20>>2]=o*O(.05000000074505806);b=k+240|0;C=k+400|0;CU(b,C,k+48|0,k+96|0,k,j==O(1)&l==O(1)&q==O(1));H[k+148>>2]=H[a+44>>2];H[k+472>>2]=0;H[k+476>>2]=0;H[k+464>>2]=0;H[k+468>>2]=0;E=L[f+20>>2];z=L[e+20>>2];y=L[f+24>>2];A=L[e+24>>2];n=L[c+8>>2];s=L[c>>2];t=L[c+4>>2];r=L[c+12>>2];q=L[d+12>>2];o=L[d>>2];G=L[f+16>>2];B=L[e+16>>2];j=L[d+4>>2];l=L[d+8>>2];H[k+460>>2]=0;H[k+444>>2]=0;H[k+428>>2]=0;D=O(-o);m=O(B-G);p=O(z-E);w=O(A-y);x=O(O(O(D*m)-O(p*j))-O(l*w));u=O(O(q*q)+O(-.5));v=O(O(O(q*O(O(j*m)-O(o*p)))+O(u*w))-O(l*x));L[k+456>>2]=v+v;v=O(O(O(u*p)+O(q*O(O(o*w)-O(l*m))))-O(j*x));L[k+452>>2]=v+v;a=k+448|0;m=O(O(O(u*m)+O(q*O(O(l*p)-O(j*w))))-O(o*x));L[a>>2]=m+m;p=O(O(O(t*l)-O(j*n))+O(O(s*q)-O(r*o)));m=O(p+p);w=O(O(O(n*o)-O(l*s))+O(O(t*q)-O(r*j)));x=O(w+w);v=O(O(1)-O(p*m));J=O(w*x);L[k+440>>2]=v-J;p=O(O(O(s*j)-O(o*t))+O(O(n*q)-O(r*l)));K=O(p*x);n=O(O(r*q)-O(O(O(D*s)-O(t*j))-O(l*n)));s=O(n*m);L[k+436>>2]=K-s;t=O(p*m);r=O(n*x);L[k+432>>2]=t+r;L[k+424>>2]=K+s;s=O(p+p);p=O(p*s);L[k+420>>2]=v-p;m=O(w*m);n=O(n*s);L[k+416>>2]=m-n;H[k+412>>2]=0;L[k+408>>2]=t-r;L[k+404>>2]=m+n;L[k+400>>2]=O(O(1)-J)-p;t=L[d+20>>2];r=L[c+20>>2];n=L[d+24>>2];s=L[c+24>>2];m=L[d+16>>2];p=L[c+16>>2];H[k+396>>2]=0;x=O(s-A);n=O(O(n-y)-x);A=O(p-B);s=O(O(m-G)-A);z=O(r-z);t=O(O(t-E)-z);r=O(O(l*n)+O(O(o*s)+O(j*t)));m=O(O(O(u*n)-O(q*O(O(o*t)-O(j*s))))+O(l*r));L[k+392>>2]=m+m;m=O(O(j*r)+O(O(u*t)-O(q*O(O(l*s)-O(n*o)))));L[k+388>>2]=m+m;n=O(O(o*r)+O(O(u*s)-O(q*O(O(j*n)-O(t*l)))));L[k+384>>2]=n+n;H[k+320>>2]=0;H[k+240>>2]=126268;H[k+248>>2]=C;H[k+244>>2]=k+160;c=H[k+420>>2];H[k+272>>2]=H[k+416>>2];H[k+276>>2]=c;c=H[k+428>>2];H[k+280>>2]=H[k+424>>2];H[k+284>>2]=c;c=H[k+412>>2];H[k+264>>2]=H[k+408>>2];H[k+268>>2]=c;c=H[k+436>>2];H[k+288>>2]=H[k+432>>2];H[k+292>>2]=c;c=H[k+444>>2];H[k+296>>2]=H[k+440>>2];H[k+300>>2]=c;c=H[a+4>>2];H[k+304>>2]=H[a>>2];H[k+308>>2]=c;c=H[k+460>>2];H[k+312>>2]=H[k+456>>2];H[k+316>>2]=c;c=H[k+404>>2];H[k+256>>2]=H[k+400>>2];H[k+260>>2]=c;n=L[k+260>>2];L[k+260>>2]=L[k+272>>2];s=L[k+280>>2];t=L[k+264>>2];L[k+264>>2]=L[k+288>>2];L[k+280>>2]=L[k+292>>2];L[k+288>>2]=t;L[k+292>>2]=s;L[k+272>>2]=n;H[k+232>>2]=126016;H[k+236>>2]=k;n=O(3.4028234663852886e38);if(BW(b,k+232|0,a,k+464|0,k+384|0,k+368|0,k+336|0,k+352|0,O(g+O(0)),1)){n=L[k+368>>2];g=L[k+360>>2];s=L[k+352>>2];t=L[k+356>>2];r=L[k+344>>2];m=L[k+336>>2];p=L[k+340>>2];w=O(O(l*r)+O(O(o*m)+O(j*p)));B=O(-j);v=O(O(O(q*O(O(o*p)+O(m*B)))+O(u*r))+O(l*w));L[h+8>>2]=v+v;v=O(O(j*w)+O(O(u*p)+O(q*O(O(l*m)+O(r*D)))));L[h+4>>2]=v+v;v=p;p=O(-l);r=O(O(o*w)+O(O(u*m)+O(q*O(O(j*r)+O(v*p)))));L[h>>2]=r+r;r=n>O(0)?n:O(0);v=y;m=O(O(l*g)+O(O(o*s)+O(j*t)));y=O(O(O(q*O(O(o*t)+O(s*B)))+O(u*g))+O(l*m));L[i+8>>2]=O(x*r)+O(v+O(y+y));l=O(O(j*m)+O(O(u*t)+O(q*O(O(l*s)+O(g*D)))));L[i+4>>2]=O(z*r)+O(E+O(l+l));g=O(O(o*m)+O(O(u*s)+O(q*O(O(j*g)+O(t*p)))));L[i>>2]=O(A*r)+O(G+O(g+g))}Oa=k+480|0;return O(n)}function wm(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;a=Oa-16|0;Oa=a;F[a+8|0]=I[f|0];l=H[33768];p=b;n=e;b=0;f=Oa-32|0;Oa=f;H[f+16>>2]=0;H[f+20>>2]=4;H[f+12>>2]=f;F[f+8|0]=1;G[f+24>>1]=0;if((H[f+20>>2]&2147483647)>>>0>>0){e=0;a:{if(!d){break a}g=d<<1;if(!(I[f+8|0]|g>>>0>8)){F[f+8|0]=1;e=f;break a}e=0;if(!g){break a}e=H[33808];h=Ra[H[H[e>>2]+20>>2]](e)|0?23546:55639;e=Ra[H[H[e+12>>2]+8>>2]](e+12|0,g,h,13582,553)|0}g=H[f+12>>2];h=H[f+16>>2];if((h|0)>0){m=e+(h<<1)|0;h=g;i=e;while(1){G[i>>1]=J[h>>1];h=h+2|0;i=i+2|0;if(m>>>0>i>>>0){continue}break}}b:{if(H[f+20>>2]<0){break b}if((f|0)==(g|0)){F[f+8|0]=0;break b}if(!g){break b}h=H[33808];Ra[H[H[h+12>>2]+12>>2]](h+12|0,g)}H[f+20>>2]=d;H[f+12>>2]=e}e=H[f+16>>2];if((e|0)<(d|0)){g=H[f+12>>2];h=g+(d<<1)|0;e=g+(e<<1)|0;while(1){G[e>>1]=J[f+24>>1];e=e+2|0;if(h>>>0>e>>>0){continue}break}}H[f+16>>2]=d;c:{if((d|0)==1){G[H[f+12>>2]>>1]=J[H[c>>2]+52>>1];break c}if(!d){break c}e=H[f+12>>2];if(d-1>>>0>=3){g=d&65532;while(1){G[e+(b<<1)>>1]=J[H[(b<<2)+c>>2]+52>>1];h=b|1;G[e+(h<<1)>>1]=J[H[(h<<2)+c>>2]+52>>1];h=b|2;G[e+(h<<1)>>1]=J[H[(h<<2)+c>>2]+52>>1];h=b|3;G[e+(h<<1)>>1]=J[H[(h<<2)+c>>2]+52>>1];b=b+4|0;j=j+4|0;if((g|0)!=(j|0)){continue}break}}g=d&3;if(!g){break c}while(1){G[e+(b<<1)>>1]=J[H[(b<<2)+c>>2]+52>>1];b=b+1|0;k=k+1|0;if((g|0)!=(k|0)){continue}break}}q=H[f+12>>2];c=H[l+1560>>2];if(!c){h=Oa-16|0;Oa=h;i=l+1272|0;c=H[i+284>>2];if(c){b=H[33808];e=Ra[H[H[b>>2]+20>>2]](b)|0?37318:55639;g=Ra[H[H[b+12>>2]+8>>2]](b+12|0,c,e,15259,180)|0}else{g=0}H[h+12>>2]=g;b=H[i+268>>2];d:{if(b>>>0>=(H[i+272>>2]&2147483647)>>>0){e=i+4|0;c=H[e+268>>2]&2147483647;m=c?c<<1:1;b=0;e:{if(!m){break e}c=m<<2;if(!(I[e+256|0]|c>>>0>256)){F[e+256|0]=1;b=e;break e}b=0;if(!c){break e}b=H[33808];j=Ra[H[H[b>>2]+20>>2]](b)|0?37318:55639;b=Ra[H[H[b+12>>2]+8>>2]](b+12|0,c,j,13582,553)|0}c=b;k=H[e+264>>2];o=b+(k<<2)|0;if((k|0)>0){j=H[e+260>>2];while(1){H[b>>2]=H[j>>2];j=j+4|0;b=b+4|0;if(o>>>0>b>>>0){continue}break}}H[o>>2]=H[h+12>>2];f:{if(H[e+268>>2]<0){break f}b=H[e+260>>2];if((b|0)==(e|0)){F[e+256|0]=0;break f}if(!b){break f}j=H[33808];Ra[H[H[j+12>>2]+12>>2]](j+12|0,b);k=H[e+264>>2]}H[e+268>>2]=m;H[e+260>>2]=c;H[e+264>>2]=k+1;break d}H[H[i+264>>2]+(b<<2)>>2]=g;H[i+268>>2]=b+1}c=(g+N(H[i+276>>2],208)|0)-208|0;if(g>>>0<=c>>>0){b=H[i+288>>2];while(1){H[c>>2]=b;b=c;c=b-208|0;if(g>>>0<=c>>>0){continue}break}H[i+288>>2]=b}Oa=h+16|0;c=H[l+1560>>2]}H[l+1560>>2]=H[c>>2];b=l+1552|0;H[b>>2]=H[b>>2]+1;F[f+24|0]=I[a+8|0];e=Oa-16|0;Oa=e;H[c+4>>2]=196615;H[c+8>>2]=0;H[c+20>>2]=0;H[c+16>>2]=1;H[c+12>>2]=111772;H[c>>2]=111580;b=I[f+24|0];H[c+40>>2]=0;H[c+32>>2]=0;H[c+36>>2]=0;F[e+8|0]=b;b=c+48|0;H[b>>2]=0;H[b+4>>2]=0;H[b+136>>2]=0;H[b+128>>2]=0;H[b+132>>2]=0;H[b+24>>2]=0;H[b+28>>2]=0;H[b+16>>2]=0;H[b+20>>2]=0;H[b+8>>2]=0;H[b+12>>2]=0;g=b+68|0;H[g>>2]=-1;F[b+65|0]=1;h=H[33794];hU(g,p);H[b+56>>2]=0;H[b+48>>2]=0;H[b+52>>2]=0;H[b+40>>2]=0;H[b+44>>2]=1065353216;H[b+32>>2]=0;H[b+36>>2]=0;L[b+60>>2]=L[h>>2]*O(.019999999552965164);F[b- -64|0]=I[e+8|0];DQ(b,q,d);b=H[c+36>>2];H[c+36>>2]=b&-251658241|(n?16777216:33554432);H[c+196>>2]=n?-2147483648:0;H[c+192>>2]=0;H[c+8>>2]=0;g:{h:{i:{j:{k:{g=c+116|0;switch(H[g>>2]-4|0){case 1:break i;case 2:break j;case 0:break k;default:break g}}b=H[(b&1?H[c+40>>2]- -64|0:g)+32>>2];if(!b){break g}b=b+8|0;break h}b=H[(b&1?H[c+40>>2]- -64|0:g)+4>>2];if(!b){break g}b=b+8|0;break h}b=H[(b&1?H[c+40>>2]- -64|0:g)+36>>2];if(!b){break g}b=b+8|0}H[b+4>>2]=H[b+4>>2]+1}Oa=e+16|0;if(d){g=c+48|0;b=0;while(1){h=H[33772];l:{if(I[c+36|0]&2){e=H[c+40>>2];e=J[e+124>>1]==1?e+120|0:H[H[c+32>>2]+4856>>2]+(H[e+120>>2]<<1)|0;break l}e=EQ(g)}e=H[H[h+40>>2]+(J[e+(b<<1)>>1]<<2)>>2];H[e+16>>2]=H[e+16>>2]+1;b=b+1|0;if((d|0)!=(b|0)){continue}break}}H[f+24>>2]=c;b=rg(l+640|0,f+24|0,f+31|0);if(!I[f+31|0]){H[b>>2]=H[f+24>>2]}b=H[f+20>>2];m:{if((b|0)<0|!(b&2147483647)){break m}b=H[f+12>>2];if((b|0)==(f|0)|!b){break m}d=H[33808];Ra[H[H[d+12>>2]+12>>2]](d+12|0,b)}Oa=f+32|0;Oa=a+16|0;return c|0}function dL(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;H[a+88>>2]=H[b>>2];h=H[b+4>>2];H[a+92>>2]=h;H[a+104>>2]=H[b+8>>2];H[a+108>>2]=H[b+12>>2];H[a+96>>2]=H[b+16>>2];H[a+100>>2]=H[b+20>>2];H[a+112>>2]=H[b+24>>2];H[a+116>>2]=H[b+28>>2];H[a+120>>2]=H[b+32>>2];H[a+124>>2]=H[b+36>>2];c=H[a+128>>2];j=H[b+40>>2];if(c>>>0>>0){b=(j<<3)+15&-16;a:{if(!b){h=0;b=0;break a}h=H[33808]+12|0;h=Ra[H[H[h>>2]+8>>2]](h,b,20591,7350,540)|0;g=H[33808]+12|0;i=Ra[H[H[g>>2]+8>>2]](g,b,20591,7350,541)|0;g=H[33808]+12|0;b=Ra[H[H[g>>2]+8>>2]](g,b,20591,7350,542)|0}d=c<<3;k=R6(h,H[a+132>>2],d);g=R6(i,H[a+136>>2],d);i=R6(b,H[a+140>>2],d);b=c+1|0;if(j-c&1){c=c<<3;d=c+h|0;H[d>>2]=1073741823;H[d+4>>2]=1073741823;d=c+g|0;H[d>>2]=1073741823;H[d+4>>2]=1073741823;c=c+i|0;H[c>>2]=1073741823;H[c+4>>2]=1073741823;c=b}if((b|0)!=(j|0)){while(1){b=c<<3;d=b+h|0;H[d>>2]=1073741823;H[d+4>>2]=1073741823;d=b+g|0;H[d>>2]=1073741823;H[d+4>>2]=1073741823;d=b+i|0;H[d>>2]=1073741823;H[d+4>>2]=1073741823;b=b+8|0;d=b+h|0;H[d>>2]=1073741823;H[d+4>>2]=1073741823;d=b+g|0;H[d>>2]=1073741823;H[d+4>>2]=1073741823;b=b+i|0;H[b>>2]=1073741823;H[b+4>>2]=1073741823;c=c+2|0;if((j|0)!=(c|0)){continue}break}}b=H[a+132>>2];if(b){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}b=H[a+136>>2];if(b){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}b=H[a+140>>2];if(b){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}H[a+140>>2]=i;H[a+136>>2]=g;H[a+132>>2]=k;H[a+128>>2]=j;b=H[a+168>>2];if(b){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}b=j+15&-16;if(b){c=H[33808]+12|0;b=Ra[H[H[c>>2]+8>>2]](c,b,20591,7350,567)|0}else{b=0}H[a+168>>2]=b;h=H[a+92>>2]}d=H[a+188>>2]+h<<1;k=d+2|0;if(k>>>0>K[a+196>>2]){g=(k<<2)+15&-16;if(g){b=H[33808]+12|0;m=Ra[H[H[b>>2]+8>>2]](b,g,20591,7350,575)|0;b=H[33808]+12|0;n=Ra[H[H[b>>2]+8>>2]](b,g,20591,7350,576)|0;b=H[33808]+12|0;o=Ra[H[H[b>>2]+8>>2]](b,g,20591,7350,577)|0;b=H[33808]+12|0;p=Ra[H[H[b>>2]+8>>2]](b,g,20591,7350,578)|0;b=H[33808]+12|0;q=Ra[H[H[b>>2]+8>>2]](b,g,20591,7350,579)|0;b=H[33808]+12|0;j=Ra[H[H[b>>2]+8>>2]](b,g,20591,7350,580)|0}else{j=0}b=H[a+180>>2];if(b){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}b=H[a+184>>2];if(b){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}b:{if(!g){H[a+180>>2]=0;c=0;h=0;break b}b=H[33808]+12|0;s=a,t=Ra[H[H[b>>2]+8>>2]](b,g,20591,7350,585)|0,H[s+180>>2]=t;b=H[33808]+12|0;c=Ra[H[H[b>>2]+8>>2]](b,g,20591,7350,586)|0;h=H[a+180>>2]}H[a+184>>2]=c;b=1;if(d>>>0>=3){r=d&-4;i=0;while(1){f=b-1|0;H[h+(f<<2)>>2]=b;e=b<<2;H[e+c>>2]=f;f=b+1|0;H[h+e>>2]=f;e=f<<2;H[e+c>>2]=b;l=h+e|0;e=b+2|0;H[l>>2]=e;l=e<<2;H[l+c>>2]=f;f=b+3|0;H[h+l>>2]=f;H[(f<<2)+c>>2]=e;b=b+4|0;i=i+4|0;if((r|0)!=(i|0)){continue}break}}f=d&2|1;i=0;while(1){e=b-1|0;H[h+(e<<2)>>2]=b;H[(b<<2)+c>>2]=e;b=b+1|0;i=i+1|0;if((f|0)!=(i|0)){continue}break}b=d|1;H[h+(b<<2)>>2]=b;H[c>>2]=0;b=R6(m,H[a+144>>2],(H[a+188>>2]<<3)+8|0);c=R6(n,H[a+148>>2],(H[a+188>>2]<<3)+8|0);h=R6(o,H[a+152>>2],(H[a+188>>2]<<3)+8|0);i=R6(p,H[a+156>>2],(H[a+188>>2]<<3)+8|0);d=R6(q,H[a+160>>2],(H[a+188>>2]<<3)+8|0);j=R6(j,H[a+164>>2],(H[a+188>>2]<<3)+8|0);f=H[a+144>>2];if(f){e=H[33808]+12|0;Ra[H[H[e>>2]+12>>2]](e,f)}f=H[a+148>>2];if(f){e=H[33808]+12|0;Ra[H[H[e>>2]+12>>2]](e,f)}f=H[a+152>>2];if(f){e=H[33808]+12|0;Ra[H[H[e>>2]+12>>2]](e,f)}f=H[a+156>>2];if(f){e=H[33808]+12|0;Ra[H[H[e>>2]+12>>2]](e,f)}f=H[a+160>>2];if(f){e=H[33808]+12|0;Ra[H[H[e>>2]+12>>2]](e,f)}f=H[a+164>>2];if(f){e=H[33808]+12|0;Ra[H[H[e>>2]+12>>2]](e,f)}H[a+196>>2]=k;H[a+164>>2]=j;H[a+160>>2]=d;H[a+156>>2]=i;H[a+152>>2]=h;H[a+148>>2]=c;H[a+144>>2]=b;b=H[a+172>>2];if(b){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}b=H[a+176>>2];if(b){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}if(g){b=H[33808]+12|0;b=Ra[H[H[b>>2]+8>>2]](b,g,20591,7350,619)|0}else{b=0}H[a+172>>2]=b;b=k<<3;if(b){c=H[33808]+12|0;b=Ra[H[H[c>>2]+8>>2]](c,b,20591,7350,620)|0}else{b=0}H[a+176>>2]=b}b=0;S6(H[a+168>>2],0,H[a+128>>2]);if(H[a+108>>2]){while(1){F[H[a+168>>2]+H[H[a+104>>2]+(b<<2)>>2]|0]=1;b=b+1|0;if(b>>>0>2]){continue}break}}H[a+188>>2]=H[a+188>>2]+H[a+92>>2]}function LP(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;g=H[a+100>>2];F[g+1148|0]=0;b=H[g+976>>2];a=H[b+1024>>2];Ra[H[H[a>>2]+24>>2]](a);a=H[b+1024>>2];Ra[H[H[a>>2]+76>>2]](a);a=H[b+304>>2];f=H[a>>2];H[a>>2]=0;a:{if(!f){break a}i=b+984|0;j=b+972|0;a=f;while(1){h=H[a>>2];H[b+996>>2]=H[b+996>>2]+H[a+7220>>2];H[b+1e3>>2]=H[b+1e3>>2]+H[a+7216>>2];H[b+1008>>2]=H[b+1008>>2]+H[a+7224>>2];H[b+1012>>2]=H[b+1012>>2]+H[a+7228>>2];c=H[a+304>>2];e=H[a+108>>2];H[b+1164>>2]=e+H[b+1164>>2];H[b+1556>>2]=c+H[b+1556>>2];c=e+H[b+1752>>2]|0;H[b+1752>>2]=c;e=H[a+308>>2];d=H[a+112>>2];H[b+1168>>2]=d+H[b+1168>>2];c=c+d|0;H[b+1752>>2]=c;H[b+1560>>2]=e+H[b+1560>>2];e=H[a+312>>2];d=H[a+116>>2];H[b+1172>>2]=d+H[b+1172>>2];c=c+d|0;H[b+1752>>2]=c;H[b+1564>>2]=e+H[b+1564>>2];e=H[a+316>>2];d=H[a+120>>2];H[b+1176>>2]=d+H[b+1176>>2];c=c+d|0;H[b+1752>>2]=c;H[b+1568>>2]=e+H[b+1568>>2];e=H[a+320>>2];d=H[a+124>>2];H[b+1180>>2]=d+H[b+1180>>2];c=c+d|0;H[b+1752>>2]=c;H[b+1572>>2]=e+H[b+1572>>2];e=H[a+324>>2];d=H[a+128>>2];H[b+1184>>2]=d+H[b+1184>>2];c=c+d|0;H[b+1752>>2]=c;H[b+1576>>2]=e+H[b+1576>>2];e=H[a+328>>2];d=H[a+132>>2];H[b+1188>>2]=d+H[b+1188>>2];c=c+d|0;H[b+1752>>2]=c;H[b+1580>>2]=e+H[b+1580>>2];e=H[a+336>>2];d=H[a+140>>2];H[b+1196>>2]=d+H[b+1196>>2];c=c+d|0;H[b+1752>>2]=c;H[b+1588>>2]=e+H[b+1588>>2];e=H[a+340>>2];d=H[a+144>>2];H[b+1200>>2]=d+H[b+1200>>2];c=c+d|0;H[b+1752>>2]=c;H[b+1592>>2]=e+H[b+1592>>2];e=H[a+344>>2];d=H[a+148>>2];H[b+1204>>2]=d+H[b+1204>>2];c=c+d|0;H[b+1752>>2]=c;H[b+1596>>2]=e+H[b+1596>>2];e=H[a+348>>2];d=H[a+152>>2];H[b+1208>>2]=d+H[b+1208>>2];c=c+d|0;H[b+1752>>2]=c;H[b+1600>>2]=e+H[b+1600>>2];e=H[a+352>>2];d=H[a+156>>2];H[b+1212>>2]=d+H[b+1212>>2];c=c+d|0;H[b+1752>>2]=c;H[b+1604>>2]=e+H[b+1604>>2];e=H[a+356>>2];d=H[a+160>>2];H[b+1216>>2]=d+H[b+1216>>2];c=c+d|0;H[b+1752>>2]=c;H[b+1608>>2]=e+H[b+1608>>2];e=H[a+368>>2];d=H[a+172>>2];H[b+1228>>2]=d+H[b+1228>>2];c=c+d|0;H[b+1752>>2]=c;H[b+1620>>2]=e+H[b+1620>>2];e=H[a+372>>2];d=H[a+176>>2];H[b+1232>>2]=d+H[b+1232>>2];c=c+d|0;H[b+1752>>2]=c;H[b+1624>>2]=e+H[b+1624>>2];e=H[a+376>>2];d=H[a+180>>2];H[b+1236>>2]=d+H[b+1236>>2];c=c+d|0;H[b+1752>>2]=c;H[b+1628>>2]=e+H[b+1628>>2];e=H[a+380>>2];d=H[a+184>>2];H[b+1240>>2]=d+H[b+1240>>2];c=c+d|0;H[b+1752>>2]=c;H[b+1632>>2]=e+H[b+1632>>2];e=H[a+384>>2];d=H[a+188>>2];H[b+1244>>2]=d+H[b+1244>>2];c=c+d|0;H[b+1752>>2]=c;H[b+1636>>2]=e+H[b+1636>>2];e=H[a+400>>2];d=H[a+204>>2];H[b+1260>>2]=d+H[b+1260>>2];c=c+d|0;H[b+1752>>2]=c;H[b+1652>>2]=e+H[b+1652>>2];e=H[a+404>>2];d=H[a+208>>2];H[b+1264>>2]=d+H[b+1264>>2];c=c+d|0;H[b+1752>>2]=c;H[b+1656>>2]=e+H[b+1656>>2];e=H[a+408>>2];d=H[a+212>>2];H[b+1268>>2]=d+H[b+1268>>2];c=c+d|0;H[b+1752>>2]=c;H[b+1660>>2]=e+H[b+1660>>2];e=H[a+412>>2];d=H[a+216>>2];H[b+1272>>2]=d+H[b+1272>>2];c=c+d|0;H[b+1752>>2]=c;H[b+1664>>2]=e+H[b+1664>>2];e=H[a+432>>2];d=H[a+236>>2];H[b+1292>>2]=d+H[b+1292>>2];c=c+d|0;H[b+1752>>2]=c;H[b+1684>>2]=e+H[b+1684>>2];e=H[a+436>>2];d=H[a+240>>2];H[b+1296>>2]=d+H[b+1296>>2];c=c+d|0;H[b+1752>>2]=c;H[b+1688>>2]=e+H[b+1688>>2];e=H[a+440>>2];d=H[a+244>>2];H[b+1300>>2]=d+H[b+1300>>2];c=c+d|0;H[b+1752>>2]=c;H[b+1692>>2]=e+H[b+1692>>2];e=H[a+464>>2];d=H[a+268>>2];H[b+1324>>2]=d+H[b+1324>>2];c=c+d|0;H[b+1752>>2]=c;H[b+1716>>2]=e+H[b+1716>>2];e=H[a+468>>2];d=H[a+272>>2];H[b+1328>>2]=d+H[b+1328>>2];c=c+d|0;H[b+1752>>2]=c;H[b+1720>>2]=e+H[b+1720>>2];e=H[a+496>>2];d=H[a+300>>2];H[b+1356>>2]=d+H[b+1356>>2];H[b+1752>>2]=c+d;H[b+1748>>2]=e+H[b+1748>>2];H[b+1756>>2]=H[b+1756>>2]+H[a+7144>>2];H[b+1760>>2]=H[b+1760>>2]+H[a+7148>>2];H[b+1780>>2]=H[b+1780>>2]+H[a+7140>>2];H[a+7148>>2]=0;H[a+7140>>2]=0;H[a+7144>>2]=0;S6(a+108|0,0,392);zJ(j,H[a+7192>>2],H[a+7196>>2]&2147483647);zJ(i,H[a+7204>>2],H[a+7208>>2]&2147483647);H[b+1828>>2]=H[b+1828>>2]+H[a+7168>>2];a=a+7164|0;c=H[a>>2];e=H[b+1824>>2];H[b+1824>>2]=c>>>0>e>>>0?c:e;H[a>>2]=0;H[a+4>>2]=0;a=h;if(a){continue}break}if(!f){break a}while(1){a=H[f>>2];h=H[b+304>>2];H[f>>2]=H[h>>2];H[h>>2]=f;f=a;if(a){continue}break}}if(I[g+2282|0]){Lx(H[g+976>>2]+24|0)}}function tW(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=O(g);h=h|0;i=i|0;j=O(j);var k=0,l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=0,D=O(0),E=0,K=O(0),M=O(0),P=O(0),Q=O(0),R=O(0),S=O(0),T=O(0),U=O(0),V=O(0),X=O(0),Y=O(0),Z=O(0),_=O(0),$=0;k=Oa-448|0;Oa=k;C=H[a+32>>2];H[k+440>>2]=0;H[k+444>>2]=0;H[k+432>>2]=0;H[k+436>>2]=0;H[k+416>>2]=0;P=L[f+8>>2];Q=L[f+4>>2];x=L[d+20>>2];y=L[d+24>>2];R=L[f>>2];u=L[d+16>>2];q=L[d+8>>2];n=L[d>>2];o=L[d+4>>2];p=L[d+12>>2];s=L[b+20>>2];z=L[b+24>>2];t=L[b>>2];m=L[b+4>>2];r=L[b+8>>2];l=L[b+12>>2];A=L[b+16>>2];H[k+412>>2]=0;L[k+408>>2]=z;L[k+404>>2]=s;L[k+400>>2]=A;L[k+396>>2]=l;L[k+392>>2]=r;L[k+388>>2]=m;L[k+384>>2]=t;v=L[e+24>>2];w=L[c+8>>2];S=L[a+4>>2];T=L[a+8>>2];U=L[a+12>>2];H[k+380>>2]=0;L[k+376>>2]=U;L[k+372>>2]=T;L[k+368>>2]=S;c=H[a+16>>2];d=H[a+20>>2];E=H[a+28>>2];H[k+360>>2]=H[a+24>>2];H[k+364>>2]=E;H[k+352>>2]=c;H[k+356>>2]=d;H[k+332>>2]=0;H[k+316>>2]=0;B=O(-t);A=O(u-A);x=O(x-s);z=O(y-z);y=O(O(O(B*A)-O(x*m))-O(r*z));K=O(O(l*l)+O(-.5));s=O(O(O(l*O(O(m*A)-O(t*x)))+O(K*z))-O(r*y));M=O(s+s);L[k+264>>2]=M;s=O(O(O(n*m)-O(t*o))+O(O(q*l)-O(p*r)));D=O(O(O(o*r)-O(m*q))+O(O(n*l)-O(p*t)));u=O(D+D);V=O(s*u);B=O(O(p*l)-O(O(O(B*n)-O(o*m))-O(r*q)));n=O(O(O(q*t)-O(r*n))+O(O(o*l)-O(p*m)));o=O(n+n);p=O(B*o);D=O(O(1)-O(D*u));X=O(n*o);q=O(w*O(0));Y=O(s*o);Z=O(B*u);_=O(O(O(D-X)*q)+O(O(w*O(V-p))+O(O(Y+Z)*q)));L[k+328>>2]=M-_;o=O(O(O(K*x)+O(l*O(O(t*z)-O(r*A))))-O(m*y));o=O(o+o);L[k+260>>2]=o;n=O(n*u);u=O(s+s);B=O(B*u);s=O(s*u);u=O(O(O(Y-Z)*q)+O(O(w*O(n+B))+O(O(D-s)*q)));L[k+324>>2]=o-u;L[k+312>>2]=M+_;L[k+308>>2]=o+u;L[k+336>>2]=v;H[k+268>>2]=0;H[k+284>>2]=4;F[k+288|0]=1;L[k+280>>2]=v;L[k+276>>2]=v;L[k+272>>2]=v;l=O(O(O(K*A)+O(l*O(O(r*x)-O(m*z))))-O(t*y));l=O(l+l);L[k+256>>2]=l;m=O(O(O(V+p)*q)+O(O(w*O(O(O(1)-X)-s))+O(O(n-B)*q)));L[k+320>>2]=l-m;L[k+304>>2]=l+m;d=C+16|0;c=0;a:{if(L[a+4>>2]!=O(1)){break a}c=0;if(L[a+8>>2]!=O(1)){break a}c=L[a+12>>2]==O(1)}F[k+128|0]=0;H[k+120>>2]=0;H[k+124>>2]=0;H[k+112>>2]=0;H[k+116>>2]=0;H[k+104>>2]=0;H[k+108>>2]=0;H[k+96>>2]=0;H[k+100>>2]=0;H[k+240>>2]=d;H[k+248>>2]=H[C+56>>2]+N(I[C+55|0],20);F[k+252|0]=I[C+54|0];l=O(S*L[C+68>>2]);m=O(T*L[C+72>>2]);l=l<=m?l:m;m=O(U*L[C+76>>2]);l=l<=m?l:m;L[k+120>>2]=l*O(.02500000037252903);L[k+112>>2]=l*O(.10000000149011612);L[k+116>>2]=l*O(.05000000074505806);E=k+96|0;CU(k+368|0,k+352|0,k+144|0,k+192|0,E,c);H[k+244>>2]=H[C+60>>2];H[k+92>>2]=0;l=L[k+392>>2];n=O(O(-P)*g);m=L[k+384>>2];o=O(O(-R)*g);p=O(O(-Q)*g);r=L[k+388>>2];v=O(O(l*n)+O(O(m*o)+O(p*r)));t=L[k+396>>2];q=O(O(t*t)+O(-.5));w=O(O(l*v)+O(O(n*q)-O(t*O(O(m*p)-O(o*r)))));L[k+88>>2]=w+w;w=O(O(r*v)+O(O(p*q)-O(t*O(O(l*o)-O(n*m)))));L[k+84>>2]=w+w;n=O(O(m*v)+O(O(o*q)-O(t*O(O(r*n)-O(p*l)))));L[k+80>>2]=n+n;c=J[i>>1];H[k+24>>2]=125948;H[k+28>>2]=k+256;H[k+16>>2]=126016;H[k+20>>2]=E;H[k+12>>2]=0;L[k+8>>2]=L[k+264>>2]-L[k+104>>2];L[k+4>>2]=L[k+260>>2]-L[k+100>>2];L[k>>2]=L[k+256>>2]-L[k+96>>2];c=c&512;b:{if(!uW(k+24|0,k+16|0,k,k+432|0,k+80|0,k- -64|0,k+32|0,k+48|0,O(L[e+24>>2]+j),c>>>9|0)){break b}$=1;if(vW(h,L[f>>2],L[f+4>>2],L[f+8>>2],k- -64|0,k+32|0,k+48|0,k+384|0,(c|0)!=0,1)){break b}G[h+12>>1]=J[h+12>>1]|1;j=L[k+36>>2];n=L[k+32>>2];o=L[k+40>>2];A=L[k+400>>2];x=L[k+404>>2];s=L[k+408>>2];p=L[k+56>>2];v=L[k+48>>2];w=L[k+52>>2];g=O(L[k+64>>2]*g);L[h+40>>2]=g;u=s;z=O(-r);s=O(O(l*p)+O(O(m*v)+O(r*w)));y=O(O(O(t*O(O(m*w)+O(v*z)))+O(q*p))+O(l*s));L[h+24>>2]=O(P*g)+O(u+O(y+y));u=x;x=O(-m);y=O(O(r*s)+O(O(q*w)+O(t*O(O(l*v)+O(p*x)))));L[h+20>>2]=O(Q*g)+O(u+O(y+y));u=O(R*g);g=O(q*v);v=O(-l);g=O(O(m*s)+O(g+O(t*O(O(r*p)+O(w*v)))));L[h+16>>2]=u+O(A+O(g+g));g=O(O(l*o)+O(O(m*n)+O(r*j)));p=O(O(O(t*O(O(m*j)+O(n*z)))+O(q*o))+O(l*g));p=O(p+p);m=O(O(m*g)+O(O(q*n)+O(t*O(O(r*o)+O(j*v)))));m=O(m+m);g=O(O(r*g)+O(O(q*j)+O(t*O(O(l*n)+O(o*x)))));g=O(g+g);j=O(O(1)/O(W(O(O(p*p)+O(O(m*m)+O(g*g))))));L[h+36>>2]=p*j;L[h+32>>2]=g*j;L[h+28>>2]=m*j;wW(h,J[i>>1],a,d,b,L[f>>2],L[f+4>>2],L[f+8>>2])}Oa=k+448|0;return $|0}function zu(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=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),G=O(0),J=O(0),K=O(0),M=O(0),P=O(0),Q=O(0),R=O(0),S=O(0),T=O(0),U=O(0);h=Oa-160|0;Oa=h;f=H[f>>2];t=L[d+20>>2];x=L[d+24>>2];q=L[d>>2];r=L[d+4>>2];u=L[d+8>>2];m=L[d+12>>2];v=L[d+16>>2];a=0;H[h+156>>2]=0;L[h+152>>2]=x;L[h+148>>2]=t;L[h+144>>2]=v;L[h+140>>2]=m;L[h+136>>2]=u;L[h+132>>2]=r;L[h+128>>2]=q;y=L[c+20>>2];w=L[c+24>>2];A=L[c+16>>2];j=L[c+4>>2];i=L[c>>2];k=L[c+8>>2];n=L[c+12>>2];H[h+124>>2]=0;l=O(i+i);o=O(n+n);s=O(O(O(i*l)+O(n*o))+O(-1));p=O(O(l*k)-O(j*o));l=O(O(l*j)+O(k*o));o=O(O(1)/O(W(O(O(p*p)+O(O(s*s)+O(l*l))))));s=O(s*o);L[h+112>>2]=s;l=O(l*o);L[h+116>>2]=l;o=O(p*o);L[h+120>>2]=o;H[h+108>>2]=0;L[h+104>>2]=-o;L[h+100>>2]=-l;L[h+96>>2]=-s;J=L[e>>2];L[h+80>>2]=J;z=L[b+4>>2];L[h+64>>2]=z;B=L[b+8>>2];L[h+48>>2]=z*O(.0010000000474974513);s=O(O(O(r*k)-O(j*u))+O(O(q*n)-O(m*i)));p=O(s+s);K=O(s*p);o=O(O(O(q*j)-O(i*r))+O(O(u*n)-O(m*k)));C=O(o*p);E=O(-i);l=O(O(m*n)-O(O(O(q*E)-O(r*j))-O(k*u)));v=O(v-A);y=O(t-y);x=O(x-w);w=O(O(O(E*v)-O(y*j))-O(k*x));A=O(O(n*n)+O(-.5));t=O(O(O(n*O(O(j*v)-O(i*y)))+O(A*x))-O(k*w));t=O(t+t);q=O(O(O(u*i)-O(k*q))+O(O(r*n)-O(m*j)));u=O(q*p);r=O(O(O(A*y)+O(n*O(O(i*x)-O(k*v))))-O(j*w));r=O(r+r);n=O(O(O(A*v)+O(n*O(O(k*y)-O(j*x))))-O(i*w));n=O(n+n);b=I[f+64|0];if(b){i=O(O(1)-K);j=O(q+q);k=O(q*j);v=O(i-k);D=i;i=O(o+o);m=O(o*i);y=O(D-m);x=O(O(O(1)-k)-m);k=O(o*j);m=O(l*p);p=O(k-m);j=O(l*j);w=O(C+j);A=O(k+m);i=O(l*i);E=O(u-i);S=O(C-j);T=O(u+i);j=O(z*O(.05000000074505806));U=O(j*j);a=b;while(1){d=H[f+76>>2];a=a-1|0;c=d+N(a,48)|0;i=L[c+24>>2];M=L[c+40>>2];j=L[c+8>>2];k=L[c>>2];m=L[c+4>>2];G=O(t+O(O(v*j)+O(O(S*k)+O(A*m))));P=O(n+O(O(w*j)+O(O(x*k)+O(E*m))));Q=L[c+16>>2];D=L[c+32>>2];k=O(r+O(O(p*j)+O(O(T*k)+O(y*m))));m=L[c+20>>2];R=L[c+36>>2];j=O(O(M*O(G-i))+O(O(O(P-Q)*D)+O(O(k-m)*R)));i=O(i-O(G-O(M*j)));G=O(i*i);i=O(Q-O(P-O(D*j)));D=O(i*i);i=O(m-O(k-O(R*j)));a:{if(O(G+O(D+O(i*i)))>U){e=I[f+64|0]-1|0;F[f+64|0]=e;d=d+N(e&255,48)|0;e=H[d+4>>2];H[c>>2]=H[d>>2];H[c+4>>2]=e;e=H[d+44>>2];H[c+40>>2]=H[d+40>>2];H[c+44>>2]=e;e=H[d+36>>2];H[c+32>>2]=H[d+32>>2];H[c+36>>2]=e;e=H[d+28>>2];H[c+24>>2]=H[d+24>>2];H[c+28>>2]=e;e=H[d+20>>2];H[c+16>>2]=H[d+16>>2];H[c+20>>2]=e;e=H[d+12>>2];H[c+8>>2]=H[d+8>>2];H[c+12>>2]=e;break a}L[c+44>>2]=j}if(a){continue}break}a=I[f+64|0]}b:{c:{if((a&255)!=(b|0)){break c}j=O(n-L[f+16>>2]);i=O(-j);k=O(r-L[f+20>>2]);m=O(-k);p=O(t-L[f+24>>2]);v=O(-p);j=im?k:m;i=i<=j?j:i;j=(p>v?p:v)>=O(0)?j:O(0);if(O(L[h+64>>2]*O(.019999999552965164))<(i>=j?i:j)){break c}if(!(O(O(l*L[f+12>>2])+O(O(o*L[f+8>>2])+O(O(s*L[f>>2])+O(q*L[f+4>>2]))))>2]=n;L[f+12>>2]=l;L[f+8>>2]=o;L[f+4>>2]=q;L[f>>2]=s;F[f+64|0]=0;H[f+28>>2]=0;L[f+24>>2]=t;L[f+20>>2]=r;B=O(J+z);i=O(n+i);if(B>i){H[h+44>>2]=0;y=O(t+C);k=O(y-t);u=O(i-n);x=O(r+v);m=O(x-r);p=O(O(o*k)+O(O(s*u)+O(q*m)));z=O(O(l*l)+O(-.5));w=O(O(O(z*k)-O(l*O(O(s*m)-O(u*q))))+O(o*p));L[h+40>>2]=w+w;w=O(O(q*p)+O(O(z*m)-O(l*O(O(o*u)-O(k*s)))));L[h+36>>2]=w+w;k=O(O(s*p)+O(O(z*u)-O(l*O(O(q*k)-O(m*o)))));L[h+32>>2]=k+k;H[h+28>>2]=0;k=O(i*O(0));L[h+24>>2]=y-k;L[h+20>>2]=x-k;L[h+16>>2]=i-i;L[h+12>>2]=i;H[h+8>>2]=0;H[h>>2]=1065353216;H[h+4>>2]=0;a1(f,h+32|0,h+16|0,h,h+48|0)}if(!(j>2]=0;u=O(t-C);i=O(u-t);n=O(j-n);m=O(r-v);k=O(m-r);t=O(O(o*i)+O(O(s*n)+O(q*k)));r=O(O(l*l)+O(-.5));p=O(O(O(r*i)-O(l*O(O(s*k)-O(n*q))))+O(o*t));L[h+40>>2]=p+p;p=O(O(q*t)+O(O(r*k)-O(l*O(O(o*n)-O(i*s)))));L[h+36>>2]=p+p;l=O(O(s*t)+O(O(r*n)-O(l*O(O(q*i)-O(k*o)))));L[h+32>>2]=l+l;H[h+28>>2]=0;l=O(j*O(0));L[h+24>>2]=u-l;L[h+20>>2]=m-l;L[h+16>>2]=j-j;L[h+12>>2]=j;H[h+8>>2]=0;H[h>>2]=1065353216;H[h+4>>2]=0;a1(f,h+32|0,h+16|0,h,h+48|0)}Y0(f,g,h+96|0,h+112|0,h+128|0,h- -64|0,h+80|0);Oa=h+160|0;return I[f+64|0]!=0|0}function mp(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=Oa-48|0;Oa=f;k=Ra[H[H[b>>2]+76>>2]](b)|0;e=Ra[H[H[b>>2]+100>>2]](b)|0;if(H[e+88>>2]){h=H[H[e+84>>2]>>2]}else{h=0}c=h;e=Oa-32|0;Oa=e;if(O(Ra[H[H[c>>2]+120>>2]](c))==O(0)){o5(H[33808],2,9281,844,55932,0);Ra[H[H[c>>2]+116>>2]](c,O(1))}Ra[H[H[c>>2]+132>>2]](e+16|0,c);if(!(!(L[e+16>>2]==O(0)|L[e+20>>2]==O(0))&L[e+24>>2]!=O(0))){o5(H[33808],2,9281,851,61576,0);H[e+8>>2]=1065353216;H[e>>2]=1065353216;H[e+4>>2]=1065353216;Ra[H[H[c>>2]+128>>2]](c,e)}Oa=e+32|0;e=1;a:{if(L[h+284>>2]!=O(0)|L[h+288>>2]!=O(0)|(L[h+292>>2]!=O(0)|L[h+296>>2]!=O(0))){break a}if(L[h+300>>2]!=O(0)){break a}e=L[h+304>>2]!=O(0)}i=a+16|0;Dt(i,h+48|0,0,0,0);nt(h+20|0,a,h,0,0,0);n=Ra[H[H[b>>2]+100>>2]](b)|0;c=n;l=i+5012|0;d=Oa-16|0;Oa=d;H[c>>2]=i;g=H[c+4>>2];b:{if(!I[i+4785|0]){H[c+4>>2]=g&268435455|-2147483648;j=i+16|0;l=c+12|0;if(H[c+88>>2]){g=H[H[c+84>>2]>>2];g=g?g+48|0:0}else{g=0}mO(j,l,g+16|0);break b}j=g&1073741823;if(g>>>0>=3221225472){H[c+4>>2]=j|-2147483648;if(g&268435456){break b}H[d+4>>2]=c;Pf(l,d+4|0);break b}H[c+4>>2]=j|1073741824;H[d+8>>2]=c;g=rg(l,d+8|0,d+15|0);if(I[d+15|0]){break b}H[g>>2]=H[d+8>>2]}Oa=d+16|0;F[c+60|0]=L[c+56>>2]==O(0);l=H[n+12>>2];if(l){r=h,s=uF(l,H[h- -64>>2]),H[r+364>>2]=s}H[h+368>>2]=0;c=Ra[H[H[h>>2]+252>>2]](h)|0;if(c){Ot(i,Ra[H[H[c>>2]+48>>2]](c)|0)}if(H[h+16>>2]){qg(h+12|0)}o=k<<2;F[f+12|0]=o>>>0>1024;c:{if(o>>>0>=1025){g=G5(o,9281,888);break c}g=f-(o+15&-16)|0;Oa=g}H[f+8>>2]=g;H[g>>2]=h;p=k-1|0;if(p){k=1;while(1){j=H[H[f+8>>2]+(m<<2)>>2];c=H[j+356>>2];d=H[j+352>>2];if(Ra[H[H[j>>2]+260>>2]](j)|0){q=c?d:0;c=e;g=0;while(1){d=H[q+(g<<2)>>2];if(O(Ra[H[H[d>>2]+120>>2]](d))==O(0)){o5(H[33808],2,9281,844,55932,0);Ra[H[H[d>>2]+116>>2]](d,O(1))}Ra[H[H[d>>2]+132>>2]](f+32|0,d);if(!(!(L[f+32>>2]==O(0)|L[f+36>>2]==O(0))&L[f+40>>2]!=O(0))){o5(H[33808],2,9281,851,61576,0);H[f+24>>2]=1065353216;H[f+16>>2]=1065353216;H[f+20>>2]=1065353216;Ra[H[H[d>>2]+128>>2]](d,f+16|0)}e=1;if(!(c&1)){e=0;d:{if(L[d+284>>2]!=O(0)|L[d+288>>2]!=O(0)|(L[d+292>>2]!=O(0)|L[d+296>>2]!=O(0))){break d}if(L[d+300>>2]!=O(0)){break d}e=L[d+304>>2]==O(0)}e=e^1}Dt(i,d+48|0,0,0,0);nt(d+20|0,a,d,0,0,0);c=Ra[H[H[d>>2]+252>>2]](d)|0;if(c){Ot(i,Ra[H[H[c>>2]+48>>2]](c)|0)}if(H[d+16>>2]){qg(d+12|0)}c=Ra[H[H[d>>2]+248>>2]](d)|0;c=H[(Ra[H[H[c>>2]+100>>2]](c)|0)+12>>2];if(c){r=d,s=uF(c,H[d- -64>>2]),H[r+364>>2]=s}H[H[f+8>>2]+(k<<2)>>2]=d;k=k+1|0;c=e;g=g+1|0;if(Ra[H[H[j>>2]+260>>2]](j)>>>0>g>>>0){continue}break}}m=m+1|0;if((p|0)!=(m|0)){continue}break}}if(!(!(e&1)|L[n+56>>2]!=O(0))){ei(n,1,0)}H[f+32>>2]=b;e=rg(a+5944|0,f+32|0,f+16|0);if(!I[f+16|0]){H[e>>2]=H[f+32>>2]}e:{if(!l){break e}yF(l);H[H[f+8>>2]>>2]=h;if(!p){break e}e=1;m=0;while(1){i=H[H[f+8>>2]+(m<<2)>>2];c=H[i+356>>2];d=H[i+352>>2];if(Ra[H[H[i>>2]+260>>2]](i)|0){g=c?d:0;k=0;while(1){d=H[g+(k<<2)>>2];c=Ra[H[H[d>>2]+264>>2]](d)|0;j=H[l>>2];r=d,s=Ra[H[H[j>>2]+32>>2]](j,c)|0,H[r+368>>2]=s;f:{if(J[b+4>>1]!=12){break f}g:{h:{c=Ra[H[H[d>>2]+252>>2]](d)|0;switch((Ra[H[H[c>>2]+60>>2]](c)|0)-3|0){case 0:break f;case 1:break h;default:break g}}o5(H[33808],2,9281,952,1525,0);Ra[H[H[c>>2]+56>>2]](c,3);H[d+368>>2]=0}if((Ra[H[H[c>>2]+68>>2]](c,3)|Ra[H[H[c>>2]+68>>2]](c,4)|Ra[H[H[c>>2]+68>>2]](c,5)|Ra[H[H[c>>2]+68>>2]](c,1)|Ra[H[H[c>>2]+68>>2]](c,2)|Ra[H[H[c>>2]+68>>2]](c,0))&255){break f}o5(H[33808],2,9281,973,1425,0);Ra[H[H[c>>2]+56>>2]](c,3);H[d+368>>2]=0}H[H[f+8>>2]+(e<<2)>>2]=d;e=e+1|0;k=k+1|0;if(Ra[H[H[i>>2]+260>>2]](i)>>>0>k>>>0){continue}break}}m=m+1|0;if((p|0)!=(m|0)){continue}break}}i:{if(J[b+4>>1]!=12){break i}if(F[n+48|0]&1){e=H[h- -64>>2];if(e){F[H[e+100>>2]+159|0]=1}}c=a+32|0;a=Oa-16|0;Oa=a;e=H[n+12>>2];if(e){h=H[e>>2];c=H[c+1012>>2];H[a+8>>2]=H[e+48>>2];Ra[H[H[c>>2]+32>>2]](c,h,a+8|0)}Oa=a+16|0;if(!H[b+124>>2]){break i}a=0;while(1){e=H[H[b+120>>2]+(a<<2)>>2];vF(l,H[(Ra[H[H[e>>2]+104>>2]](e)|0)+88>>2]);a=a+1|0;if(a>>>0>2]){continue}break}}if(o>>>0>=1025){H5(H[f+8>>2])}Oa=f+48|0}function Z$(a,b,c,d,e,f,g,h,i,j,k,l,m,n){var o=0,p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=0,x=O(0),y=O(0),z=0,A=0,B=0,C=O(0),D=O(0),E=0,G=0;o=Oa-672|0;Oa=o;a:{if(!f){break a}z=I[h+64|0];if(z){w=1;B=H[h+76>>2];p=L[B+40>>2];r=L[B+36>>2];s=L[B+32>>2];b:{if((z|0)==1){break b}A=z-1|0;E=A&1;if((z|0)!=2){G=A&-2;z=0;while(1){A=N(w,48)+B|0;s=O(O(s+L[A+32>>2])+L[A+80>>2]);p=O(O(p+L[A+40>>2])+L[A+88>>2]);r=O(O(r+L[A+36>>2])+L[A+84>>2]);w=w+2|0;z=z+2|0;if((G|0)!=(z|0)){continue}break}}if(!E){break b}w=N(w,48)+B|0;s=O(s+L[w+32>>2]);p=O(p+L[w+40>>2]);r=O(r+L[w+36>>2])}q=p;p=O(O(1)/O(W(O(O(p*p)+O(O(s*s)+O(r*r))))));q=O(q*p);v=O(s*p);p=O(r*p)}else{p=O(0)}r=L[k>>2];L[o+32>>2]=n;L[o+48>>2]=r*O(.05000000074505806);k=H[o+60>>2];H[o+24>>2]=H[o+56>>2];H[o+28>>2]=k;k=H[o+44>>2];H[o+8>>2]=H[o+40>>2];H[o+12>>2]=k;k=H[o+36>>2];H[o>>2]=H[o+32>>2];H[o+4>>2]=k;k=H[o+52>>2];H[o+16>>2]=H[o+48>>2];H[o+20>>2]=k;e=G0(a,b,e,f,i,o+16|0,o,g,h);x=L[g+40>>2];y=L[g+32>>2];t=L[g+36>>2];if(e?1:I[h+64|0]>>0|O(O(q*x)+O(O(v*y)+O(p*t)))>2];a=H[a+4>>2];f=H[a+52>>2];j=H[a+48>>2];L[o+592>>2]=L[a+56>>2];H[o+584>>2]=j;H[o+588>>2]=f;f=o+600|0;Q0(lZ(o+352|0,o+584|0),f);H[o+632>>2]=90304;j=o+280|0;R0(b,m,j);H[o+248>>2]=0;H[o+252>>2]=0;H[o+244>>2]=1065353216;H[o+256>>2]=0;H[o+260>>2]=0;H[o+264>>2]=1065353216;H[o+268>>2]=0;H[o+228>>2]=0;H[o+232>>2]=0;H[o+224>>2]=1065353216;H[o+236>>2]=0;H[o+240>>2]=0;F[o+204|0]=1;H[o+192>>2]=c;H[o+208>>2]=a;H[o+160>>2]=125908;c=o+224|0;H[o+200>>2]=c;H[o+196>>2]=c;F[o+140|0]=m;H[o+136>>2]=b+96;H[o+132>>2]=b+48;H[o+128>>2]=d;H[o+144>>2]=b;H[o+96>>2]=m?125820:125868;H[o+92>>2]=0;z=B0(f,j,o+160|0,o+96|0,i,o+92|0,l,g+32|0,g,g+16|0,L[a+16>>2],L[b+16>>2],e,n);if(!z){break a}a=H[o+92>>2];if(a){Z0(h,i,a,n);b=H[h+76>>2];n=L[b+32>>2];p=n;u=L[b+36>>2];r=u;q=L[b+40>>2];s=q;a=I[h+64|0];c:{if(a>>>0<2){break c}w=1;c=a-1|0;e=c&1;s=q;r=u;p=n;if((a|0)!=2){c=c&-2;g=0;while(1){a=b+N(w,48)|0;p=O(O(p+L[a+32>>2])+L[a+80>>2]);s=O(O(s+L[a+40>>2])+L[a+88>>2]);r=O(O(r+L[a+36>>2])+L[a+84>>2]);w=w+2|0;g=g+2|0;if((c|0)!=(g|0)){continue}break}}if(!e){break c}a=b+N(w,48)|0;p=O(p+L[a+32>>2]);s=O(s+L[a+40>>2]);r=O(r+L[a+36>>2])}x=L[d+4>>2];y=L[d+8>>2];t=L[d>>2];v=L[d+12>>2];H[o+76>>2]=0;a=O(O(s*s)+O(O(p*p)+O(r*r)))>O(1.1920928955078125e-7);s=a?s:q;n=a?p:n;p=a?r:u;r=O(O(y*s)+O(O(t*n)+O(x*p)));u=O(O(v*v)+O(-.5));q=O(O(y*r)+O(O(v*O(O(t*p)-O(n*x)))+O(s*u)));q=O(q+q);C=q;D=O(q*q);q=O(O(t*r)+O(O(v*O(O(x*s)-O(p*y)))+O(n*u)));q=O(q+q);n=O(O(x*r)+O(O(v*O(O(y*n)-O(s*t)))+O(p*u)));n=O(n+n);p=O(O(1)/O(W(O(D+O(O(q*q)+O(n*n))))));L[o+72>>2]=C*p;L[o+68>>2]=n*p;L[o+64>>2]=q*p;X0(h,i,o- -64|0,d,l);break a}if(e){break a}b=H[h+76>>2];n=L[b+32>>2];p=n;u=L[b+36>>2];r=u;q=L[b+40>>2];s=q;a=I[h+64|0];d:{if(a>>>0<2){break d}w=1;c=a-1|0;e=c&1;s=q;r=u;p=n;if((a|0)!=2){c=c&-2;g=0;while(1){a=b+N(w,48)|0;p=O(O(p+L[a+32>>2])+L[a+80>>2]);s=O(O(s+L[a+40>>2])+L[a+88>>2]);r=O(O(r+L[a+36>>2])+L[a+84>>2]);w=w+2|0;g=g+2|0;if((c|0)!=(g|0)){continue}break}}if(!e){break d}a=b+N(w,48)|0;p=O(p+L[a+32>>2]);s=O(s+L[a+40>>2]);r=O(r+L[a+36>>2])}x=L[d+4>>2];y=L[d+8>>2];t=L[d>>2];v=L[d+12>>2];H[o+76>>2]=0;a=O(O(s*s)+O(O(p*p)+O(r*r)))>O(1.1920928955078125e-7);s=a?s:q;n=a?p:n;p=a?r:u;r=O(O(y*s)+O(O(t*n)+O(x*p)));u=O(O(v*v)+O(-.5));q=O(O(y*r)+O(O(v*O(O(t*p)-O(n*x)))+O(s*u)));q=O(q+q);C=q;D=O(q*q);q=O(O(t*r)+O(O(v*O(O(x*s)-O(p*y)))+O(n*u)));q=O(q+q);n=O(O(x*r)+O(O(v*O(O(y*n)-O(s*t)))+O(p*u)));n=O(n+n);p=O(O(1)/O(W(O(D+O(O(q*q)+O(n*n))))));L[o+72>>2]=C*p;L[o+68>>2]=n*p;L[o+64>>2]=q*p;X0(h,i,o- -64|0,d,l);break a}r=L[d+4>>2];s=L[d+8>>2];u=L[d>>2];n=L[d+12>>2];H[o+364>>2]=0;q=O(q+x);v=O(v+y);p=O(p+t);x=O(O(s*q)+O(O(u*v)+O(r*p)));y=O(O(n*n)+O(-.5));t=O(O(s*x)+O(O(n*O(O(u*p)-O(v*r)))+O(q*y)));t=O(t+t);C=t;D=O(t*t);t=O(O(u*x)+O(O(n*O(O(r*q)-O(p*s)))+O(v*y)));t=O(t+t);n=O(O(r*x)+O(O(n*O(O(s*v)-O(q*u)))+O(p*y)));n=O(n+n);p=O(O(1)/O(W(O(D+O(O(t*t)+O(n*n))))));L[o+360>>2]=C*p;L[o+356>>2]=n*p;L[o+352>>2]=t*p;X0(h,i,o+352|0,d,l);z=1}Oa=o+672|0;return z}function DU(a,b,c,d,e,f,g,h){var i=0,j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=0,q=O(0),r=O(0),s=O(0),t=O(0),u=0,v=0,w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=0,D=0,E=O(0),F=O(0),G=O(0),J=O(0),K=O(0),M=O(0),P=O(0),Q=O(0),T=O(0);i=Oa-288|0;Oa=i;H[i+76>>2]=0;n=L[c+8>>2];j=L[c>>2];k=L[c+4>>2];H[i+60>>2]=0;c=O(O(n*n)+O(O(j*j)+O(k*k)))>O(0);l=c?n:O(0);L[i+56>>2]=l;k=c?k:O(0);L[i+52>>2]=k;m=c?j:O(1);L[i+48>>2]=m;n=L[d>>2];d=H[a+4>>2];u=I[d+32|0];c=H[b+4>>2];v=I[c+32|0];x=O((u?L[d+16>>2]:O(0))+(v?L[c+16>>2]:O(0)));E=O(n+x);n=O(O(1)/O(W(O(O(l*l)+O(O(m*m)+O(k*k))))));r=O(l*n);s=O(k*n);t=O(m*n);n=L[c+20>>2];j=L[d+20>>2];F=O(S(O((j>n?n:j)*O(.10000000149011612)),O(9.999999974752427e-7)));n=O(3.4028234663852886e38);a:{while(1){p=H[i+60>>2];H[i+24>>2]=H[i+56>>2];H[i+28>>2]=p;p=H[i+52>>2];H[i+16>>2]=H[i+48>>2];H[i+20>>2]=p;j=L[d+56>>2];q=L[d+52>>2];o=L[d+72>>2];y=L[d+68>>2];w=L[d+48>>2];z=L[d+64>>2];A=L[c+56>>2];B=L[c+52>>2];G=L[c+72>>2];D=c- -64|0;J=L[D>>2];K=L[c+68>>2];M=L[c+88>>2];P=L[c+80>>2];Q=L[c+84>>2];T=L[c+48>>2];H[i+284>>2]=0;L[i+280>>2]=O(M*l)+O(O(P*m)+O(k*Q));L[i+276>>2]=O(G*l)+O(O(J*m)+O(k*K));L[i+272>>2]=O(A*l)+O(O(T*m)+O(k*B));p=EU(c,i+272|0);m=O(-m);d=O(O(O(w*m)-O(q*k))-O(j*l))>O(O(O(z*m)-O(y*k))-O(o*l));A=d?j:o;p=H[c+152>>2]+N(p,12)|0;j=L[p+8>>2];l=L[p>>2];k=L[p+4>>2];B=O(O(L[c+88>>2]*j)+O(O(L[c+56>>2]*l)+O(k*L[c+72>>2])));m=O(A-B);w=d?w:z;z=O(O(L[c+80>>2]*j)+O(O(L[c+48>>2]*l)+O(k*L[D>>2])));o=O(w-z);q=d?q:y;k=O(O(L[c+84>>2]*j)+O(O(L[c+52>>2]*l)+O(k*L[c+68>>2])));j=O(q-k);l=O(O(r*m)+O(O(t*o)+O(s*j)));if(l>E){break a}if(!(!(l>x)|!(l>O(n*O(.9997749924659729))))){FU(i+208|0,i+144|0,i+80|0,i+48|0,i+272|0,i,H[i+76>>2]);j=L[H[a+4>>2]+16>>2];l=L[i+272>>2];k=L[i+276>>2];m=L[i+280>>2];H[e+12>>2]=0;L[e+8>>2]=m-(u?O(r*j):O(0));L[e+4>>2]=k-(u?O(s*j):O(0));L[e>>2]=l-(u?O(t*j):O(0));j=L[H[b+4>>2]+16>>2];l=L[i>>2];k=L[i+4>>2];m=L[i+8>>2];H[f+12>>2]=0;L[f+8>>2]=m+(v?O(r*j):O(-0));L[f+4>>2]=k+(v?O(s*j):O(-0));L[f>>2]=l+(v?O(t*j):O(-0));L[h>>2]=S(O(n-x),O(0));H[g+12>>2]=0;L[g+8>>2]=-r;L[g+4>>2]=-s;L[g>>2]=-t;C=1;break a}d=H[i+76>>2];p=d<<4;c=p+(i+144|0)|0;H[c+12>>2]=0;L[c+8>>2]=A;L[c+4>>2]=q;L[c>>2]=w;c=p+(i+80|0)|0;H[c+12>>2]=0;L[c+8>>2]=B;L[c+4>>2]=k;L[c>>2]=z;c=p+(i+208|0)|0;H[c+12>>2]=0;L[c+8>>2]=m;L[c+4>>2]=j;L[c>>2]=o;H[i+76>>2]=d+1;b:{c:{switch(d-1|0){case 0:m=L[i+216>>2];j=O(L[i+232>>2]-m);q=L[i+208>>2];l=O(L[i+224>>2]-q);o=L[i+212>>2];k=O(L[i+228>>2]-o);y=O(O(j*j)+O(O(l*l)+O(k*k)));if(y<=O(1.1920928955078125e-7)){H[i+76>>2]=1;c=H[i+212>>2];H[i+272>>2]=H[i+208>>2];H[i+276>>2]=c;c=H[i+220>>2];H[i+280>>2]=H[i+216>>2];H[i+284>>2]=c;break b}H[i+284>>2]=0;w=j;j=O(R(O(O(O(O(O(-q)*l)-O(k*o))-O(m*j))/y),O(1)));j=j>O(0)?j:O(0);L[i+280>>2]=m+O(w*j);L[i+276>>2]=o+O(k*j);L[i+272>>2]=q+O(l*j);break b;case 1:GU(i+272|0,i+208|0,i+144|0,i+80|0,i+76|0);break b;case 2:BZ(i+272|0,i+208|0,i+144|0,i+80|0,i+76|0);break b;default:break c}}H[i+284>>2]=0;L[i+280>>2]=m;L[i+276>>2]=j;L[i+272>>2]=o}c=H[i+276>>2];H[i+48>>2]=H[i+272>>2];H[i+52>>2]=c;c=H[i+284>>2];H[i+56>>2]=H[i+280>>2];H[i+60>>2]=c;l=L[i+56>>2];m=L[i+48>>2];k=L[i+52>>2];j=O(W(O(O(l*l)+O(O(m*m)+O(k*k)))));if(!(!(j>F)|!(j>2];d=H[a+4>>2];n=j;continue}break}if(j>2]=0;a=H[i+276>>2];H[h+4>>2]=H[i+272>>2];H[h+8>>2]=a;H[h+12>>2]=H[i+280>>2];C=2;break a}l=L[H[b+4>>2]+16>>2];k=L[H[a+4>>2]+16>>2];FU(i+208|0,i+144|0,i+80|0,i+16|0,i+272|0,i,H[i+76>>2]);j=L[H[a+4>>2]+16>>2];m=L[i+272>>2];q=L[i+276>>2];o=L[i+280>>2];H[e+12>>2]=0;L[e+8>>2]=o-(u?O(r*j):O(0));L[e+4>>2]=q-(u?O(s*j):O(0));L[e>>2]=m-(u?O(t*j):O(0));j=L[H[b+4>>2]+16>>2];m=L[i>>2];q=L[i+4>>2];o=L[i+8>>2];H[f+12>>2]=0;L[f+8>>2]=o+(v?O(r*j):O(-0));L[f+4>>2]=q+(v?O(s*j):O(-0));L[f>>2]=m+(v?O(t*j):O(-0));H[g+12>>2]=0;L[g+8>>2]=-r;L[g+4>>2]=-s;L[g>>2]=-t;n=O(S(O(n-x),O(0)));L[h>>2]=n;a=H[i+40>>2];H[h+4>>2]=H[i+36>>2];H[h+8>>2]=a;H[h+12>>2]=H[i+44>>2];C=n>(x>O(0)?x:O((k>l?l:k)*O(.20000000298023224)))?1:2}Oa=i+288|0;return C}function uZ(a,b,c,d,e,f){var g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=0,o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0);n=Oa+-64|0;Oa=n;g=L[b>>2];L[n+48>>2]=g;i=L[b+4>>2];L[n+52>>2]=i;h=L[b+8>>2];L[n+56>>2]=h;j=L[a>>2];s=L[a+4>>2];L[n+40>>2]=O(h*O(.5))+L[a+8>>2];L[n+36>>2]=s+O(i*O(.5));L[n+32>>2]=j+O(g*O(.5));t=O(W(O(O(h*h)+O(O(g*g)+O(i*i)))));s=t;if(t!=O(0)){w=O(O(1)/t);L[n+56>>2]=h*w;L[n+52>>2]=i*w;L[n+48>>2]=g*w;s=O(t*O(.5))}g=L[d>>2];L[n+16>>2]=g;i=L[d+4>>2];L[n+20>>2]=i;h=L[d+8>>2];L[n+24>>2]=h;j=L[c>>2];u=L[c+4>>2];L[n+8>>2]=O(h*O(.5))+L[c+8>>2];L[n+4>>2]=u+O(i*O(.5));L[n>>2]=j+O(g*O(.5));v=O(W(O(O(h*h)+O(O(g*g)+O(i*i)))));u=v;if(v!=O(0)){x=O(O(1)/v);L[n+24>>2]=h*x;L[n+20>>2]=i*x;L[n+16>>2]=g*x;u=O(v*O(.5))}g=s;i=u;h=O(L[n+40>>2]-L[n+8>>2]);j=O(L[n+32>>2]-L[n>>2]);l=O(L[n+36>>2]-L[n+4>>2]);m=O(O(h*h)+O(O(j*j)+O(l*l)));o=L[n+56>>2];p=L[n+48>>2];r=L[n+52>>2];k=O(O(h*o)+O(O(j*p)+O(l*r)));q=h;h=L[n+24>>2];y=j;j=L[n+16>>2];z=l;l=L[n+20>>2];q=O(O(q*h)+O(O(y*j)+O(z*l)));o=O(O(o*h)+O(O(p*j)+O(r*l)));r=O(P(O(O(1)-O(o*o))));a:{if(r>=O(9.999999974752427e-7)){l=O(-q);j=O(r*i);p=O(-o);h=O(O(p*k)+q);q=O(O(o*q)-k);y=O(r*g);if(q>=O(-y)){z=O(-j);if(q<=y){if(h>=z){if(h<=j){i=O(O(1)/r);g=O(q*i);i=O(h*i);k=O(m+O(O(g*O(O(k+k)+O(g+O(p*i))))+O(i*O(O(l+l)+O(i+O(p*g))))));break a}j=O(O(p*i)+k);h=O(-j);if(g=h){k=O(m+O(O(j*h)+O(O(O(l+l)+i)*i)));g=h;break a}k=O(m+O(O(g*O(g-O(h+h)))+O(O(O(l+l)+i)*i)));break a}j=O(O(o*i)+k);h=O(-j);i=O(-i);if(g=h){k=O(m+O(O(j*h)+O(O(O(l+l)+i)*i)));g=h;break a}k=O(m+O(O(g*O(g-O(h+h)))+O(O(O(l+l)+i)*i)));break a}if(h>=z){if(h<=j){j=O(O(p*g)+l);h=O(-j);if(i=h){k=O(m+O(O(j*h)+O(O(O(l+l)+i)*i)));g=h;break a}j=O(O(p*g)+l);h=O(-j);if(i=j){k=O(m+O(O(o*j)+O(O(O(l+l)+h)*h)));i=h;g=j;break a}l=O(O(p*g)+l);j=O(-l);if(j>i){k=O(m+O(O(i*O(i-O(j+j)))+O(O(O(k+k)+g)*g)));break a}if(i>=l){k=O(m+O(O(l*j)+O(O(O(k+k)+g)*g)));i=j;break a}k=O(m+O(O(h*O(h-O(j+j)))+O(O(O(k+k)+g)*g)));i=h;break a}if(h>=O(-j)){if(h<=j){j=O(O(o*g)+l);h=O(-j);g=O(-g);if(ig){k=O(m+O(O(g*O(g-O(h+h)))+O(O(O(l+l)+i)*i)));break a}if(g>=j){k=O(m+O(O(j*h)+O(O(O(l+l)+i)*i)));g=h;break a}h=O(-g);j=O(O(o*g)+l);g=O(-j);if(ig){k=O(m+O(O(g*O(g-O(j+j)))+O(O(O(l+l)+h)*h)));i=h;break a}if(g>=p){k=O(m+O(O(p*j)+O(O(O(l+l)+h)*h)));i=h;g=j;break a}j=O(-g);l=O(O(o*g)+l);g=O(-l);if(ih){g=O(-h);break b}g=O(-j);if(!(h>2]=g}if(f){L[f>>2]=i}i=O(S(k,O(0)));if(e){L[e>>2]=t!=O(0)?O(w*O(s+L[e>>2])):O(0)}if(f){L[f>>2]=v!=O(0)?O(x*O(u+L[f>>2])):O(0)}Oa=n- -64|0;return i}function D0(a,b,c,d,e,f,g,h,i,j){var k=0,l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=0,u=O(0),v=O(0),w=O(0),x=0,y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),F=O(0),G=0,I=0,J=O(0),K=O(0),M=O(0),P=O(0),Q=O(0),R=O(0),S=O(0),T=O(0),U=O(0),V=O(0),X=O(0),Y=0,Z=O(0),_=O(0),$=O(0),aa=O(0),ba=O(0),ca=O(0),da=O(0),ea=O(0),fa=O(0);k=Oa-6368|0;Oa=k;C=L[h>>2];I=k+6360|0;H[I>>2]=H[h+12>>2];x=H[h+8>>2];H[k+6352>>2]=H[h+4>>2];H[k+6356>>2]=x;J=L[b+48>>2];K=L[b+52>>2];M=L[b+56>>2];P=L[a+48>>2];Q=L[a+52>>2];R=L[a+56>>2];S=L[f+52>>2];o=L[f+36>>2];p=L[f+20>>2];T=L[f+56>>2];q=L[f+40>>2];r=L[f+24>>2];U=L[a+44>>2];V=L[b+44>>2];s=L[a>>2];X=L[f+48>>2];D=L[f+32>>2];u=L[f>>2];v=L[f+16>>2];E=L[a+4>>2];z=L[f+4>>2];F=L[a+8>>2];l=L[b+8>>2];A=L[f+8>>2];m=L[b>>2];n=L[b+4>>2];H[k+6284>>2]=0;F=O(O(T+O(O(q*l)+O(O(A*m)+O(n*r))))-F);L[k+6280>>2]=F;E=O(O(S+O(O(o*l)+O(O(z*m)+O(n*p))))-E);L[k+6276>>2]=E;D=O(O(X+O(O(D*l)+O(O(u*m)+O(n*v))))-s);L[k+6272>>2]=D;x=k+6272|0;Ra[H[H[c>>2]+8>>2]](k+6256|0,c,x);o=L[e+36>>2];p=L[e+20>>2];n=L[e+40>>2];m=L[e+24>>2];q=L[e+32>>2];r=L[e>>2];s=L[e+16>>2];u=L[e+4>>2];l=L[e+8>>2];H[k+6252>>2]=0;w=l;l=O(-L[k+6272>>2]);y=m;m=L[k+6276>>2];v=n;n=L[k+6280>>2];L[k+6248>>2]=O(O(w*l)-O(y*m))-O(v*n);L[k+6244>>2]=O(O(u*l)-O(p*m))-O(o*n);L[k+6240>>2]=O(O(r*l)-O(s*m))-O(q*n);t=k+6240|0;Ra[H[H[d>>2]+8>>2]](k+6224|0,d,t);o=L[e+52>>2];p=L[e+36>>2];q=L[e+20>>2];l=L[e+56>>2];m=L[e+40>>2];n=L[e+24>>2];r=L[e+48>>2];s=L[e+32>>2];u=L[e>>2];v=L[e+16>>2];z=L[e+4>>2];A=L[e+8>>2];H[k+6220>>2]=0;w=l;l=L[k+6264>>2];B=O(m*l);m=L[k+6256>>2];y=n;n=L[k+6260>>2];L[k+6216>>2]=w+O(B+O(O(A*m)+O(y*n)));L[k+6212>>2]=o+O(O(p*l)+O(O(z*m)+O(n*q)));L[k+6208>>2]=r+O(O(s*l)+O(O(u*m)+O(n*v)));o=L[f+52>>2];p=L[f+36>>2];q=L[f+20>>2];l=L[f+56>>2];m=L[f+40>>2];n=L[f+24>>2];r=L[f+48>>2];s=L[f+32>>2];u=L[f>>2];v=L[f+16>>2];z=L[f+4>>2];A=L[f+8>>2];H[k+6204>>2]=0;w=l;l=L[k+6232>>2];B=O(m*l);m=L[k+6224>>2];y=n;n=L[k+6228>>2];L[k+6200>>2]=w+O(B+O(O(A*m)+O(y*n)));L[k+6196>>2]=o+O(O(p*l)+O(O(z*m)+O(n*q)));L[k+6192>>2]=r+O(O(s*l)+O(O(u*m)+O(n*v)));H[k+3112>>2]=0;H[k+32>>2]=0;z0(a,c,k+3112|0,k+6192|0,x);z0(b,d,k+32|0,k+6208|0,t);x=H[k+3112>>2];a:{b:{if(!x){b=0;break b}Y=H[k+32>>2];if(!Y){b=0;break b}u=O(-R);v=O(-Q);z=O(-P);A=O(-M);_=O(-K);$=O(-J);b=1;while(1){a=(k+3112|0)+N(G,12)|0;y=L[a+8>>2];aa=O(-y);B=L[a+4>>2];ba=O(-B);Z=L[a+12>>2];ca=O(-Z);a=0;while(1){t=(k+32|0)+N(a,12)|0;l=L[t+12>>2];m=L[t+4>>2];n=L[t+8>>2];p=O(O(L[f+36>>2]*l)+O(O(L[f+4>>2]*m)+O(n*L[f+20>>2])));q=O(O(L[f+32>>2]*l)+O(O(L[f>>2]*m)+O(n*L[f+16>>2])));o=O(O(B*p)+O(q*aa));l=O(O(L[f+40>>2]*l)+O(O(L[f+8>>2]*m)+O(n*L[f+24>>2])));m=O(O(y*l)+O(p*ca));n=O(O(Z*q)+O(l*ba));l=O(O(o*o)+O(O(m*m)+O(n*n)));c:{if(l>2]=0;w=o;o=O(O(1)/O(W(l)));l=O(w*o);L[k+24>>2]=l;m=O(m*o);L[k+16>>2]=m;n=O(n*o);L[k+20>>2]=n;q=L[e+40>>2];r=L[e+8>>2];s=L[e+24>>2];p=L[e+32>>2];w=L[e>>2];da=L[e+16>>2];o=L[e+36>>2];ea=L[e+4>>2];fa=L[e+20>>2];H[k+12>>2]=0;o=O(O(o*l)+O(O(ea*m)+O(n*fa)));L[k+4>>2]=o;p=O(O(p*l)+O(O(w*m)+O(n*da)));L[k>>2]=p;q=O(O(q*l)+O(O(r*m)+O(n*s)));L[k+8>>2]=q;r=O(O(l*(l>O(0)?R:u))+O(O(m*(m>O(0)?P:z))+O(n*(n>O(0)?Q:v))));r=r>U?r:U;s=O(-r);l=O(O(F*l)+O(O(D*m)+O(E*n)));m=O(O(q*(q>O(0)?M:A))+O(O(p*(p>O(0)?J:$))+O(o*(o>O(0)?K:_))));m=m>V?m:V;n=O(l+m);l=O(l-m);if(O((nC){break c}Ra[H[H[c>>2]+12>>2]](c,k+16|0,k+6336|0,k+6320|0);l=L[k+24>>2];m=L[k+16>>2];n=L[k+20>>2];Ra[H[H[d>>2]+12>>2]](d,k,k+6304|0,k+6288|0);m=O(O(T*l)+O(O(X*m)+O(S*n)));l=O(m+L[k+6304>>2]);L[k+6304>>2]=l;m=O(m+L[k+6288>>2]);L[k+6288>>2]=m;n=L[k+6320>>2];o=L[g>>2];if(l>O(n+o)|L[k+6336>>2]>O(m+o)){break a}l=O(n-l);if(!(l>2];H[i>>2]=H[k+16>>2];H[i+4>>2]=t;t=H[k+28>>2];H[i+8>>2]=H[k+24>>2];H[i+12>>2]=t;H[j>>2]=2;C=l}a=a+1|0;if((Y|0)!=(a|0)){continue}break}G=G+1|0;b=x>>>0>G>>>0;if((x|0)!=(G|0)){continue}break}}L[h>>2]=C;H[h+12>>2]=H[I>>2];a=H[k+6356>>2];H[h+4>>2]=H[k+6352>>2];H[h+8>>2]=a}Oa=k+6368|0;return(b^-1)&1}function Wl(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;a:{if(b>>>0<=16){b=H[a+296>>2];if(!b){h=Oa-16|0;Oa=h;e=a+8|0;c=H[e+284>>2];if(c){b=H[33808];d=b+12|0;g=(m=d,n=c,o=Ra[H[H[b>>2]+20>>2]](b)|0?46190:55639,p=15259,q=180,l=H[H[d>>2]+8>>2],Ra[l](m|0,n|0,o|0,p|0,q|0)|0)}else{g=0}H[h+12>>2]=g;b=H[e+268>>2];b:{if(b>>>0>=(H[e+272>>2]&2147483647)>>>0){d=e+4|0;c=H[d+268>>2]&2147483647;i=c?c<<1:1;b=0;c:{if(!i){break c}c=i<<2;if(!(I[d+256|0]|c>>>0>256)){F[d+256|0]=1;b=d;break c}b=0;if(!c){break c}b=H[33808];f=Ra[H[H[b>>2]+20>>2]](b)|0?46190:55639;b=Ra[H[H[b+12>>2]+8>>2]](b+12|0,c,f,13582,553)|0}f=H[d+264>>2];k=b+(f<<2)|0;if((f|0)>0){j=H[d+260>>2];c=b;while(1){H[c>>2]=H[j>>2];j=j+4|0;c=c+4|0;if(k>>>0>c>>>0){continue}break}}H[k>>2]=H[h+12>>2];d:{if(H[d+268>>2]<0){break d}c=H[d+260>>2];if((c|0)==(d|0)){F[d+256|0]=0;break d}if(!c){break d}f=H[33808];Ra[H[H[f+12>>2]+12>>2]](f+12|0,c);f=H[d+264>>2]}H[d+268>>2]=i;H[d+260>>2]=b;H[d+264>>2]=f+1;break b}H[H[e+264>>2]+(b<<2)>>2]=g;H[e+268>>2]=b+1}b=(g+(H[e+276>>2]<<4)|0)-16|0;if(g>>>0<=b>>>0){c=H[e+288>>2];while(1){H[b>>2]=c;c=b;b=b-16|0;if(g>>>0<=b>>>0){continue}break}H[e+288>>2]=c}Oa=h+16|0;b=H[a+296>>2]}H[a+296>>2]=H[b>>2];H[a+288>>2]=H[a+288>>2]+1;H[b+8>>2]=0;H[b+12>>2]=0;H[b>>2]=0;H[b+4>>2]=0;break a}if(b>>>0<=64){b=H[a+588>>2];if(!b){h=Oa-16|0;Oa=h;e=a+300|0;c=H[e+284>>2];if(c){b=H[33808];d=b+12|0;g=(q=d,p=c,o=Ra[H[H[b>>2]+20>>2]](b)|0?45882:55639,n=15259,m=180,l=H[H[d>>2]+8>>2],Ra[l](q|0,p|0,o|0,n|0,m|0)|0)}else{g=0}H[h+12>>2]=g;b=H[e+268>>2];e:{if(b>>>0>=(H[e+272>>2]&2147483647)>>>0){d=e+4|0;c=H[d+268>>2]&2147483647;i=c?c<<1:1;b=0;f:{if(!i){break f}c=i<<2;if(!(I[d+256|0]|c>>>0>256)){F[d+256|0]=1;b=d;break f}b=0;if(!c){break f}b=H[33808];f=Ra[H[H[b>>2]+20>>2]](b)|0?45882:55639;b=Ra[H[H[b+12>>2]+8>>2]](b+12|0,c,f,13582,553)|0}f=H[d+264>>2];k=b+(f<<2)|0;if((f|0)>0){j=H[d+260>>2];c=b;while(1){H[c>>2]=H[j>>2];j=j+4|0;c=c+4|0;if(k>>>0>c>>>0){continue}break}}H[k>>2]=H[h+12>>2];g:{if(H[d+268>>2]<0){break g}c=H[d+260>>2];if((c|0)==(d|0)){F[d+256|0]=0;break g}if(!c){break g}f=H[33808];Ra[H[H[f+12>>2]+12>>2]](f+12|0,c);f=H[d+264>>2]}H[d+268>>2]=i;H[d+260>>2]=b;H[d+264>>2]=f+1;break e}H[H[e+264>>2]+(b<<2)>>2]=g;H[e+268>>2]=b+1}b=(g+(H[e+276>>2]<<6)|0)+-64|0;if(g>>>0<=b>>>0){c=H[e+288>>2];while(1){H[b>>2]=c;c=b;b=b+-64|0;if(g>>>0<=b>>>0){continue}break}H[e+288>>2]=c}Oa=h+16|0;b=H[a+588>>2]}H[a+588>>2]=H[b>>2];H[a+580>>2]=H[a+580>>2]+1;H[b+56>>2]=0;H[b+60>>2]=0;H[b+48>>2]=0;H[b+52>>2]=0;H[b+40>>2]=0;H[b+44>>2]=0;H[b+32>>2]=0;H[b+36>>2]=0;H[b+24>>2]=0;H[b+28>>2]=0;H[b+16>>2]=0;H[b+20>>2]=0;H[b+8>>2]=0;H[b+12>>2]=0;H[b>>2]=0;H[b+4>>2]=0;break a}if(b>>>0<=256){b=H[a+880>>2];if(!b){h=Oa-16|0;Oa=h;e=a+592|0;c=H[e+284>>2];if(c){b=H[33808];d=b+12|0;g=(m=d,n=c,o=Ra[H[H[b>>2]+20>>2]](b)|0?46512:55639,p=15259,q=180,l=H[H[d>>2]+8>>2],Ra[l](m|0,n|0,o|0,p|0,q|0)|0)}else{g=0}H[h+12>>2]=g;b=H[e+268>>2];h:{if(b>>>0>=(H[e+272>>2]&2147483647)>>>0){d=e+4|0;c=H[d+268>>2]&2147483647;i=c?c<<1:1;b=0;i:{if(!i){break i}c=i<<2;if(!(I[d+256|0]|c>>>0>256)){F[d+256|0]=1;b=d;break i}b=0;if(!c){break i}b=H[33808];f=Ra[H[H[b>>2]+20>>2]](b)|0?46512:55639;b=Ra[H[H[b+12>>2]+8>>2]](b+12|0,c,f,13582,553)|0}f=H[d+264>>2];k=b+(f<<2)|0;if((f|0)>0){j=H[d+260>>2];c=b;while(1){H[c>>2]=H[j>>2];j=j+4|0;c=c+4|0;if(k>>>0>c>>>0){continue}break}}H[k>>2]=H[h+12>>2];j:{if(H[d+268>>2]<0){break j}c=H[d+260>>2];if((c|0)==(d|0)){F[d+256|0]=0;break j}if(!c){break j}f=H[33808];Ra[H[H[f+12>>2]+12>>2]](f+12|0,c);f=H[d+264>>2]}H[d+268>>2]=i;H[d+260>>2]=b;H[d+264>>2]=f+1;break h}H[H[e+264>>2]+(b<<2)>>2]=g;H[e+268>>2]=b+1}b=(g+(H[e+276>>2]<<8)|0)-256|0;if(g>>>0<=b>>>0){c=H[e+288>>2];while(1){H[b>>2]=c;c=b;b=b-256|0;if(g>>>0<=b>>>0){continue}break}H[e+288>>2]=c}Oa=h+16|0;b=H[a+880>>2]}H[a+880>>2]=H[b>>2];H[a+872>>2]=H[a+872>>2]+1;S6(b,0,256);break a}a=b<<2;if(!a){b=0;break a}b=H[33808];b=Ra[H[H[b+12>>2]+8>>2]](b+12|0,a,20591,14735,60)|0}return b|0}function nK(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;j=Oa-32|0;Oa=j;i=H[a+72>>2];a:{if((i|0)!=-1){H[a+72>>2]=H[H[a+76>>2]+((i&65535)<<3)>>2];e=H[a+64>>2];break a}e=H[a+64>>2];i=e;if(H[a+68>>2]!=(e|0)){break a}e=H[a+68>>2];f=e+128|0;g=(f|0)!=(f&536870911)?-1:f<<3;if(g){i=H[33808];h=Ra[H[H[i>>2]+20>>2]](i)|0?21158:55639;i=Ra[H[H[i+12>>2]+8>>2]](i+12|0,g,h,10568,870)|0}else{i=0}b:{if(!f){break b}g=(e<<3)+1016|0;h=(g>>>3|0)+1&7;c:{if(!h){e=i;break c}e=i;while(1){H[e+4>>2]=-1;e=e+8|0;k=k+1|0;if((h|0)!=(k|0)){continue}break}}if(g>>>0<56){break b}g=i+(f<<3)|0;while(1){H[e+4>>2]=-1;H[e+60>>2]=-1;H[e+52>>2]=-1;H[e+44>>2]=-1;H[e+36>>2]=-1;H[e+28>>2]=-1;H[e+20>>2]=-1;H[e+12>>2]=-1;e=e- -64|0;if((g|0)!=(e|0)){continue}break}}e=H[a+64>>2];if(e){R6(i,H[a+76>>2],e<<3)}e=H[a+76>>2];if(e){g=H[33808];Ra[H[H[g+12>>2]+12>>2]](g+12|0,e)}H[a+68>>2]=f;H[a+76>>2]=i;e=H[a+64>>2];i=e}H[a+64>>2]=e+1;d:{if(d){e=H[a+84>>2];f=H[a+80>>2];if((e|0)==(f|0)){e=H[a+96>>2];g=f+128|0;h=(o=-1,p=g7(g,0,24,0),q=Qa,q?o:p);if(h){d=H[33808];k=Ra[H[H[d>>2]+20>>2]](d)|0?42994:55639;d=Ra[H[H[d+12>>2]+8>>2]](d+12|0,h,k,10568,884)|0}else{d=0}if(f){R6(d,e,N(f,24))}if(e){f=H[33808];Ra[H[H[f+12>>2]+12>>2]](f+12|0,e)}H[a+96>>2]=d;e=H[a+104>>2];f=H[a+84>>2];d=g<<1;if(d){h=H[33808];d=Ra[H[H[h+12>>2]+8>>2]](h+12|0,d,20591,10568,893)|0}else{d=0}if(f){R6(d,e,f<<1)}if(e){f=H[33808];Ra[H[H[f+12>>2]+12>>2]](f+12|0,e)}H[a+80>>2]=g;H[a+104>>2]=d;e=H[a+84>>2]}H[a+84>>2]=e+1;f=H[b+20>>2];d=H[a+96>>2]+N(e,24)|0;H[d+16>>2]=H[b+16>>2];H[d+20>>2]=f;f=H[b+12>>2];H[d+8>>2]=H[b+8>>2];H[d+12>>2]=f;f=H[b+4>>2];H[d>>2]=H[b>>2];H[d+4>>2]=f;G[H[a+104>>2]+(e<<1)>>1]=i;F[a+168|0]=1;d=H[a+128>>2];k=e>>>5|0;e:{if(d>>>0>k>>>0){h=e&31;b=H[a+124>>2];break e}f=0;b=0;h=e&31;g=(e+128>>>5|0)+((h|0)!=0)|0;if(g){b=H[33808];b=Ra[H[H[b+12>>2]+8>>2]](b+12|0,g<<2,20591,10568,274)|0;d=H[a+128>>2]}if(d){R6(b,H[a+124>>2],d<<2);f=H[a+128>>2]}d=g-f|0;if(d){S6((f<<2)+b|0,0,d<<2)}d=H[a+124>>2];if(d){f=H[33808];Ra[H[H[f+12>>2]+12>>2]](f+12|0,d)}H[a+128>>2]=g;H[a+124>>2]=b}b=(k<<2)+b|0;H[b>>2]=H[b>>2]|1<>2]+((i&65535)<<3)|0;H[a+4>>2]=c;H[a>>2]=e;break d}e=H[a+92>>2];f=H[a+88>>2];if((e|0)==(f|0)){e=H[a+100>>2];g=f+128|0;h=(o=-1,p=g7(g,0,24,0),q=Qa,q?o:p);if(h){d=H[33808];k=Ra[H[H[d>>2]+20>>2]](d)|0?42994:55639;d=Ra[H[H[d+12>>2]+8>>2]](d+12|0,h,k,10568,884)|0}else{d=0}if(f){R6(d,e,N(f,24))}if(e){f=H[33808];Ra[H[H[f+12>>2]+12>>2]](f+12|0,e)}H[a+100>>2]=d;e=H[a+108>>2];f=H[a+92>>2];d=g<<1;if(d){h=H[33808];d=Ra[H[H[h+12>>2]+8>>2]](h+12|0,d,20591,10568,893)|0}else{d=0}if(f){R6(d,e,f<<1)}if(e){f=H[33808];Ra[H[H[f+12>>2]+12>>2]](f+12|0,e)}H[a+88>>2]=g;H[a+108>>2]=d;d=H[a+112>>2];if(d){e=H[33808];Ra[H[H[e+12>>2]+12>>2]](e+12|0,d);H[a+112>>2]=0}d=(g<<2)+4|0;if(d){e=H[33808];d=Ra[H[H[e+12>>2]+8>>2]](e+12|0,d,20591,10568,974)|0}else{d=0}H[a+112>>2]=d;e=H[a+92>>2]}H[a+92>>2]=e+1;f=H[b+20>>2];g=N(e,24);d=g+H[a+100>>2]|0;H[d+16>>2]=H[b+16>>2];H[d+20>>2]=f;f=H[b+12>>2];H[d+8>>2]=H[b+8>>2];H[d+12>>2]=f;f=H[b+4>>2];H[d>>2]=H[b>>2];H[d+4>>2]=f;k=H[a+108>>2];m=k+(e<<1)|0;G[m>>1]=i;n=H[a+76>>2];h=n+((i&65535)<<3)|0;H[h+4>>2]=c;H[h>>2]=e;d=H[a+100>>2];f=H[a+116>>2];f:{if((f|0)!=(e|0)){c=d+N(f,24)|0;l=H[c+20>>2];H[j+24>>2]=H[c+16>>2];H[j+28>>2]=l;l=H[c+12>>2];H[j+16>>2]=H[c+8>>2];H[j+20>>2]=l;l=H[c+4>>2];H[j+8>>2]=H[c>>2];H[j+12>>2]=l;l=H[b+20>>2];H[c+16>>2]=H[b+16>>2];H[c+20>>2]=l;l=H[b+12>>2];H[c+8>>2]=H[b+8>>2];H[c+12>>2]=l;l=H[b+4>>2];H[c>>2]=H[b>>2];H[c+4>>2]=l;c=H[j+20>>2];b=d+g|0;H[b+8>>2]=H[j+16>>2];H[b+12>>2]=c;c=H[j+28>>2];H[b+16>>2]=H[j+24>>2];H[b+20>>2]=c;c=H[j+12>>2];H[b>>2]=H[j+8>>2];H[b+4>>2]=c;c=k+(f<<1)|0;b=J[c>>1];G[c>>1]=i;G[m>>1]=b;H[(b<<3)+n>>2]=e;H[h>>2]=f;break f}c=d+g|0;d=H[b+4>>2];H[c>>2]=H[b>>2];H[c+4>>2]=d;d=H[b+20>>2];H[c+16>>2]=H[b+16>>2];H[c+20>>2]=d;d=H[b+12>>2];H[c+8>>2]=H[b+8>>2];H[c+12>>2]=d}F[a+169|0]=1;H[a+120>>2]=0;H[a+116>>2]=H[a+116>>2]+1}Oa=j+32|0;return i&65535}function eA(a){var b=0,c=0,d=0,e=0,f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=0,m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),F=O(0),G=O(0),K=O(0),M=O(0),N=O(0),P=O(0),Q=O(0),R=O(0),S=O(0),T=O(0),U=O(0),V=O(0),W=O(0),X=O(0),Y=O(0),Z=O(0),_=0,$=0,aa=O(0),ba=O(0),ca=O(0),da=O(0),ea=O(0),fa=0,ga=O(0),ha=O(0),ia=O(0),ja=O(0),ka=O(0),la=O(0),ma=O(0),na=O(0),oa=O(0),pa=O(0),qa=O(0),ra=O(0),sa=O(0),ta=O(0),ua=O(0),va=O(0),wa=O(0),xa=O(0),ya=O(0),za=O(0),Aa=O(0),Ba=O(0),Ca=O(0),Da=O(0),Ea=O(0),Fa=O(0),Ga=O(0),Ha=O(0),Ia=O(0),Ja=O(0),Ka=O(0),La=O(0),Ma=O(0),Na=O(0),Oa=O(0),Pa=0,Qa=0,Ra=O(0),Sa=O(0),Ta=O(0),Ua=O(0),Va=O(0),Wa=O(0),Xa=O(0),Ya=O(0),Za=O(0),_a=O(0);b=H[a+96>>2];Ha=L[b+28>>2];w=L[b+24>>2];x=L[b+20>>2];c=H[a+64>>2];Ia=L[c+28>>2];y=L[c+24>>2];z=L[c+20>>2];d=H[a+32>>2];Ja=L[d+28>>2];A=L[d+24>>2];B=L[d+20>>2];e=H[a>>2];Ka=L[e+28>>2];C=L[e+24>>2];D=L[e+20>>2];E=L[b+16>>2];La=L[b+12>>2];F=L[b+8>>2];G=L[b+4>>2];K=L[b>>2];M=L[c+16>>2];Ma=L[c+12>>2];N=L[c+8>>2];P=L[c+4>>2];Q=L[c>>2];R=L[d+16>>2];Na=L[d+12>>2];S=L[d+8>>2];T=L[d+4>>2];U=L[d>>2];V=L[e+16>>2];Oa=L[e+12>>2];W=L[e+8>>2];X=L[e+4>>2];Y=L[e>>2];a:{a=H[a+24>>2];l=J[a+2>>1];if(!l){break a}Pa=a+l|0;while(1){fa=a+160|0;_=I[a+1|0];$=fa+(_<<7)|0;ga=L[a+76>>2];ha=L[a+72>>2];ia=L[a+68>>2];ja=L[a+64>>2];ka=L[a+60>>2];la=L[a+56>>2];ma=L[a+52>>2];na=L[a+48>>2];oa=L[a+44>>2];pa=L[a+40>>2];qa=L[a+36>>2];ra=L[a+32>>2];sa=L[a+92>>2];ta=L[a+88>>2];ua=L[a+84>>2];va=L[a+80>>2];b:{if(!_){o=O(0);p=O(0);q=O(0);r=O(0);break b}Qa=((l&65535)+a|0)+96|0;Ra=L[a+124>>2];Sa=L[a+120>>2];Ta=L[a+116>>2];Ua=L[a+112>>2];aa=O(O(O(Y*ra)+O(X*na))+O(W*ja));ba=O(O(O(U*qa)+O(T*ma))+O(S*ia));ca=O(O(O(Q*pa)+O(P*la))+O(N*ha));da=O(O(O(K*oa)+O(G*ka))+O(F*ga));r=O(0);l=0;q=O(0);p=O(0);o=O(0);while(1){a=(l<<7)+fa|0;m=L[a+116>>2];g=L[a+52>>2];wa=L[a+36>>2];xa=L[a+20>>2];ya=L[a+4>>2];Va=L[a+100>>2];Wa=L[a+84>>2];f=L[a+68>>2];t=L[a+120>>2];h=L[a+56>>2];za=L[a+40>>2];Aa=L[a+24>>2];Ba=L[a+8>>2];Xa=L[a+104>>2];Ya=L[a+88>>2];i=L[a+72>>2];u=L[a+124>>2];j=L[a+60>>2];Ca=L[a+44>>2];Da=L[a+28>>2];Ea=L[a+12>>2];Z=L[a+108>>2];Za=L[a+92>>2];k=L[a+76>>2];ea=L[a+48>>2];n=O(-ea);v=L[a+64>>2];_a=O(O(v*L[a+80>>2])-L[a+96>>2]);s=v;v=L[a>>2];Fa=L[a+16>>2];Ga=L[a+32>>2];s=O(_a-O(s*O(aa+O(O(O(V*v)+O(D*Fa))+O(C*Ga)))));n=O(ea+(n>2];n=n>2]=n;k=O(O(O(k*Za)-Z)-O(k*O(da+O(O(O(E*Ea)+O(x*Da))+O(w*Ca)))));Z=O(-j);k=O(j+(k>Z?k:Z));u=k>2]=u;i=O(O(O(i*Ya)-Xa)-O(i*O(ca+O(O(O(M*Ba)+O(z*Aa))+O(y*za)))));k=O(-h);i=O(h+(i>k?i:k));t=i>2]=t;f=O(O(O(f*Wa)-Va)-O(f*O(ba+O(O(O(R*ya)+O(B*xa))+O(A*wa)))));i=O(-g);f=O(g+(f>i?f:i));m=f>2]=m;a=(l<<4)+Qa|0;L[a+12>>2]=u;L[a+8>>2]=t;L[a+4>>2]=m;L[a>>2]=n;f=O(n-ea);o=O(o+f);j=O(u-j);r=O(r+j);h=O(t-h);q=O(q+h);g=O(m-g);p=O(p+g);aa=O(aa+O(va*f));m=O(Ua*f);C=O(C+O(Ga*m));D=O(D+O(Fa*m));V=O(V+O(v*m));da=O(da+O(sa*j));ca=O(ca+O(ta*h));ba=O(ba+O(ua*g));j=O(Ra*j);w=O(w+O(Ca*j));h=O(Sa*h);y=O(y+O(za*h));g=O(Ta*g);A=O(A+O(wa*g));x=O(x+O(Da*j));z=O(z+O(Aa*h));B=O(B+O(xa*g));E=O(E+O(Ea*j));M=O(M+O(Ba*h));R=O(R+O(ya*g));l=l+1|0;if((_|0)!=(l|0)){continue}break}}r=O(sa*r);F=O(F+O(ga*r));q=O(ta*q);N=O(N+O(ha*q));p=O(ua*p);S=O(S+O(ia*p));o=O(va*o);W=O(W+O(ja*o));G=O(G+O(ka*r));P=O(P+O(la*q));T=O(T+O(ma*p));X=O(X+O(na*o));K=O(K+O(oa*r));Q=O(Q+O(pa*q));U=O(U+O(qa*p));Y=O(Y+O(ra*o));if($>>>0>=Pa>>>0){break a}l=J[$+2>>1];a=$;continue}}L[e+12>>2]=Oa;L[e+8>>2]=W;L[e+4>>2]=X;L[e>>2]=Y;L[d+12>>2]=Na;L[d+8>>2]=S;L[d+4>>2]=T;L[d>>2]=U;L[c+12>>2]=Ma;L[c+8>>2]=N;L[c+4>>2]=P;L[c>>2]=Q;L[b+12>>2]=La;L[b+8>>2]=F;L[b+4>>2]=G;L[b>>2]=K;L[e+28>>2]=Ka;L[e+24>>2]=C;L[e+20>>2]=D;L[e+16>>2]=V;L[d+28>>2]=Ja;L[d+24>>2]=A;L[d+20>>2]=B;L[d+16>>2]=R;L[c+28>>2]=Ia;L[c+24>>2]=y;L[c+20>>2]=z;L[c+16>>2]=M;L[b+28>>2]=Ha;L[b+24>>2]=w;L[b+20>>2]=x;L[b+16>>2]=E}function LZ(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=0,n=O(0),o=O(0),p=O(0),q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=O(0),B=O(0),C=0,D=0,E=0,M=0,P=0,Q=0,R=0,S=0;t=Oa-224|0;Oa=t;x=Ra[H[H[a>>2]+36>>2]](a)|0;C=Ra[H[H[a>>2]+32>>2]](a)|0;n=L[a+88>>2];o=L[a+84>>2];j=(c|0)>0?c:0;f=H[d>>2]+c|0;f=(f|0)>0?f:0;E=f>>>0>>0?f:C;a:{if(j>>>0>=E>>>0){break a}M=(b|0)>0?b:0;f=H[d+4>>2]+b|0;f=(f|0)>0?f:0;P=f>>>0>>0?f:x;if(M>>>0>=P>>>0){break a}h=H[a+60>>2];while(1){Q=(j|0)!=0;R=j-c|0;S=N(j,x);k=M;while(1){q=k+S|0;D=q<<2;w=D+h|0;f=H[d+16>>2]+((k-b|0)+N(H[d+4>>2],R)<<2)|0;f=J[f>>1]|J[f+2>>1]<<16;G[w>>1]=f;G[w+2>>1]=f>>>16;b:{c:{if(F[a+68|0]&1){if(!j|!k|(H[a+40>>2]-1>>>0<=j>>>0|H[a+44>>2]-1>>>0<=k>>>0)){break c}}f=0;l=H[a+40>>2];r=H[a+44>>2];h=t+96|0;d:{e:{if(!j){g=0;if(r-1>>>0>k>>>0){break e}break d}H[h+12>>2]=k;i=j-1|0;H[h+8>>2]=i;s=q-r|0;H[h+4>>2]=s;m=N(s,3);H[h>>2]=m+2;f=1;if(r-1>>>0<=k>>>0){break d}g=1;if(F[(H[a+60>>2]+(s<<2)|0)+2|0]<0){break e}H[h+28>>2]=k;H[h+24>>2]=i;H[h+20>>2]=s;H[h+16>>2]=m+1;g=2}f=h+(g<<4)|0;H[f+12>>2]=k;H[f+8>>2]=j;H[f+4>>2]=q;m=N(q,3);H[f>>2]=m;f=g+1|0;if(l-1>>>0<=j>>>0|F[(H[a+60>>2]+(q<<2)|0)+2|0]>=0){break d}f=h+(f<<4)|0;H[f+12>>2]=k;H[f+8>>2]=j;H[f+4>>2]=q;H[f>>2]=m+1;f=g+2|0}f:{g:{h:{i:{if(l-1>>>0>j>>>0){g=h+(f<<4)|0;H[g+12>>2]=k;H[g+8>>2]=j;H[g+4>>2]=q;H[g>>2]=N(q,3)+2;g=f+1|0;if(k){break i}break f}if(!k){break g}i=q-1|0;break h}i=q-1|0;if(F[(H[a+60>>2]+(i<<2)|0)+2|0]<0){f=g;break h}g=h+(g<<4)|0;H[g+12>>2]=k-1;H[g+8>>2]=j;H[g+4>>2]=i;H[g>>2]=N(i,3)+1;f=f+2|0}g=h+(f<<4)|0;m=k-1|0;H[g+12>>2]=m;H[g+8>>2]=j;H[g+4>>2]=i;H[g>>2]=N(i,3);g=f+1|0;if(!j){break f}i=(r^-1)+q|0;if(F[(H[a+60>>2]+(i<<2)|0)+2|0]>=0){break f}g=h+(g<<4)|0;H[g+12>>2]=m;H[g+8>>2]=j-1;H[g+4>>2]=i;H[g>>2]=N(i,3)+1;f=f+2|0}g=f}m=g;if(!g){break c}s=H[a+44>>2];y=s-1|0;z=H[a+40>>2]-1|0;u=H[a+60>>2];h=0;i=t;while(1){f=(t+96|0)+(h<<4)|0;r=H[f+12>>2];l=H[f+8>>2];g=0;j:{k:{l:{m:{n:{v=H[f+4>>2];switch(H[f>>2]+N(v,-3)|0){case 0:break l;case 1:break m;case 2:break n;default:break j}}if(l>>>0>=z>>>0){break j}if(r){H[i>>2]=(v<<1)-1;f=1}else{f=0}if(r>>>0>=y>>>0){g=f;break j}l=v<<1;g=f+1|0;break k}if(l>>>0>=z>>>0|r>>>0>=y>>>0){break j}f=1;g=v<<1;H[i>>2]=g;l=g|1;g=2;break k}if(r>>>0>=y>>>0){break j}if(l){f=v-s|0;H[i>>2]=f<<1|((I[(u+(f<<2)|0)+2|0]^-1)&128)>>>7;f=1}else{f=0}if(l>>>0>=z>>>0){g=f;break j}l=v<<1;g=f+1|0;if(F[(u+(v<<2)|0)+2|0]>=0){break k}l=l|1;g=f+1|0}H[(f<<2)+i>>2]=l}H[(t- -64|0)+(h<<2)>>2]=g;i=i+8|0;g=1;h=h+1|0;if((m|0)!=(h|0)){continue}break}f=0;h=t;o:{p:{while(1){i=H[h>>2];l=I[(u+(i<<1&-4)|0)+(i&1?3:2)|0]&127;q:{if(K[(t- -64|0)+(f<<2)>>2]<=1){if((l|0)==127){break q}break o}i=H[h+4>>2];i=I[(u+(i<<1&-4)|0)+(i&1?3:2)|0]&127;if((l|0)!=127){if((i|0)==127){break o}h=h+8|0;g=0;f=f+1|0;if((m|0)!=(f|0)){continue}break p}if((i|0)!=127){break o}}h=h+8|0;f=f+1|0;if((m|0)!=(f|0)){continue}break}if(g&1){break c}}m=u+D|0;f=G[m>>1]<<1;h=0;g=j>>>0>>0&Q;h=g?f-(G[u+(q+s<<2)>>1]+G[u+(q-s<<2)>>1]|0)|0:h;r:{if(!(!k|k>>>0>=y>>>0)){f=f-(G[m+4>>1]+G[m-4>>1]|0)|0;break r}f=0;if(!g){break o}}if(!(L[a+64>>2]=0){break c}}F[w+3|0]=I[w+3|0]|128;break b}F[w+3|0]=I[w+3|0]&127}h=H[a+60>>2];p=O(G[D+h>>1]);n=np?p:o;k=k+1|0;if((P|0)!=(k|0)){continue}break}j=j+1|0;if((E|0)!=(j|0)){continue}break}}s:{if(!e){break s}b=N(x,C);if(!b){o=O(3.4028234663852886e38);n=O(-3.4028234663852886e38);break s}e=H[a+60>>2];d=b&1;t:{if((b|0)==1){h=0;n=O(-3.4028234663852886e38);o=O(3.4028234663852886e38);break t}c=b&-2;h=0;n=O(-3.4028234663852886e38);o=O(3.4028234663852886e38);g=0;while(1){b=h<<2;A=O(G[e+(b|4)>>1]);B=O(G[b+e>>1]);p=nB?B:o;o=p>A?A:p;h=h+2|0;g=g+2|0;if((c|0)!=(g|0)){continue}break}}if(!d){break s}p=O(G[e+(h<<2)>>1]);n=np?p:o}L[a+88>>2]=n;L[a+84>>2]=o;L[a+32>>2]=O(n-o)*O(.5);L[a+20>>2]=O(n+o)*O(.5);H[a+92>>2]=H[a+92>>2]+1;Oa=t+224|0;return 1}function mY(a,b,c,d,e,f,g,h,i,j,k){var l=0,m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),G=0,K=0,M=0,N=0,P=0,Q=0,R=0,S=0,T=0,U=O(0),V=O(0),W=O(0),X=O(0),Y=O(0),Z=O(0),_=O(0),$=O(0),aa=O(0),ba=O(0),ca=O(0),da=O(0),ea=O(0),fa=O(0),ga=0;l=Oa-6784|0;Oa=l;K=l+6764|0;m=L[d+4>>2];u=O(m+m);t=L[d+8>>2];v=O(u*t);q=L[d>>2];o=O(q+q);r=L[d+12>>2];w=O(o*r);L[K>>2]=v-w;M=l+6756|0;L[M>>2]=v+w;N=l+6768|0;v=O(O(1)-O(q*o));w=O(m*u);L[N>>2]=v-w;P=l+6752|0;s=v;v=O(t+t);p=O(t*v);L[P>>2]=s-p;n=O(o*t);u=O(u*r);L[l+6760>>2]=n+u;o=O(o*m);v=O(v*r);L[l+6748>>2]=o-v;L[l+6744>>2]=n-u;L[l+6740>>2]=o+v;L[l+6736>>2]=O(O(1)-w)-p;z=L[d+16>>2];L[l+6772>>2]=z;Q=l+6776|0;C=L[d+20>>2];L[Q>>2]=C;R=l+6780|0;A=L[d+24>>2];L[R>>2]=A;u=L[e+4>>2];n=O(u+u);o=L[e+8>>2];s=O(n*o);w=L[e>>2];p=O(w+w);v=L[e+12>>2];x=O(p*v);L[l+6716>>2]=s-x;L[l+6708>>2]=s+x;s=O(O(1)-O(w*p));x=O(u*n);L[l+6720>>2]=s-x;y=s;s=O(o+o);B=O(o*s);L[l+6704>>2]=y-B;y=O(p*o);n=O(n*v);L[l+6712>>2]=y+n;p=O(p*u);s=O(s*v);L[l+6700>>2]=p-s;L[l+6696>>2]=y-n;L[l+6692>>2]=p+s;L[l+6688>>2]=O(O(1)-x)-B;B=L[e+16>>2];L[l+6724>>2]=B;y=L[e+20>>2];L[l+6728>>2]=y;E=L[e+24>>2];L[l+6732>>2]=E;G=l+6624|0;S=l+6736|0;T=l+6688|0;cZ(G,b,L[f>>2],S,T,i,k);b=H[c+40>>2];H[l+6620>>2]=1088;F[l+6608|0]=1;c=l+2256|0;H[l+6612>>2]=c;ga=H[b+56>>2];p=L[f>>2];n=L[f+8>>2];s=L[f+4>>2];H[l+1292>>2]=0;H[l>>2]=127372;H[l+8>>2]=c;H[l+4>>2]=2;S6(l+1164|0,255,128);H[l+2064>>2]=0;S6(l+1936|0,255,128);H[l+2228>>2]=g;H[l+2224>>2]=e;H[l+2220>>2]=d;L[l+2216>>2]=s;F[l+2213|0]=j;L[l+2208>>2]=n;L[l+2204>>2]=p;H[l+2200>>2]=h;H[l+2188>>2]=a;p=O(B-z);p=O(p+p);n=O(y-C);n=O(n+n);s=O(E-A);s=O(s+s);x=O(O(O(O(-q)*p)-O(n*m))-O(t*s));D=O(O(r*r)+O(-.5));L[l+2160>>2]=O(O(s*D)+O(r*O(O(m*p)-O(q*n))))-O(t*x);L[l+2156>>2]=O(O(n*D)+O(r*O(O(q*s)-O(t*p))))-O(m*x);L[l+2152>>2]=O(O(p*D)+O(r*O(O(t*n)-O(m*s))))-O(q*x);D=O(u*t);U=O(r*w);V=O(v*q);W=O(m*o);n=O(D+O(O(U-V)-W));p=O(n+n);X=O(o*q);Y=O(r*u);Z=O(v*m);_=O(t*w);s=O(X+O(O(Y-Z)-_));x=O(s+s);$=O(O(1)-O(n*p));aa=O(s*x);L[l+2148>>2]=$-aa;ba=O(w*m);ca=O(r*o);da=O(v*t);ea=O(q*u);n=O(ba+O(O(ca-da)-ea));fa=O(n*x);t=O(O(o*t)+O(O(u*m)+O(O(v*r)+O(q*w))));m=O(t*p);L[l+2144>>2]=fa-m;r=O(n*p);q=O(t*x);L[l+2140>>2]=r+q;L[l+2136>>2]=fa+m;m=O(n+n);n=O(n*m);L[l+2132>>2]=$-n;p=O(s*p);m=O(t*m);L[l+2128>>2]=p-m;L[l+2124>>2]=r-q;L[l+2120>>2]=p+m;L[l+2116>>2]=O(O(1)-aa)-n;m=O(z-B);m=O(m+m);r=O(C-y);r=O(r+r);q=O(A-E);q=O(q+q);p=O(O(O(O(-w)*m)-O(r*u))-O(o*q));n=O(O(v*v)+O(-.5));s=O(O(O(q*n)+O(v*O(O(u*m)-O(w*r))))-O(o*p));L[l+2112>>2]=s;x=O(O(O(r*n)+O(v*O(O(w*q)-O(o*m))))-O(u*p));L[l+2108>>2]=x;v=O(O(O(m*n)+O(v*O(O(o*r)-O(u*q))))-O(w*p));L[l+2104>>2]=v;m=O(W+O(O(V-U)-D));o=O(m+m);r=O(_+O(O(Z-Y)-X));u=O(r+r);q=O(O(1)-O(m*o));w=O(r*u);p=O(q-w);L[l+2100>>2]=p;m=O(ea+O(O(da-ca)-ba));n=O(m*u);z=O(t*o);C=O(n-z);L[l+2096>>2]=C;A=O(m*o);u=O(t*u);B=O(A+u);L[l+2092>>2]=B;n=O(n+z);L[l+2088>>2]=n;y=q;q=m;m=O(m+m);q=O(q*m);z=O(y-q);L[l+2084>>2]=z;o=O(r*o);t=O(t*m);r=O(o-t);L[l+2080>>2]=r;u=O(A-u);L[l+2076>>2]=u;A=O(o+t);L[l+2072>>2]=A;q=O(O(O(1)-w)-q);L[l+2068>>2]=q;H[l+2196>>2]=T;H[l+2192>>2]=S;c=l+2232|0;F[c|0]=0;H[l+6616>>2]=0;t=L[a>>2];o=L[a+4>>2];m=L[a+8>>2];L[l+2184>>2]=O(O(O(t*L[l+6744>>2])+O(o*L[M>>2]))+O(m*L[N>>2]))+L[R>>2];L[l+2180>>2]=O(O(O(t*L[l+6740>>2])+O(o*L[P>>2]))+O(m*L[K>>2]))+L[Q>>2];L[l+2176>>2]=O(O(O(t*L[l+6736>>2])+O(o*L[l+6748>>2]))+O(m*L[l+6760>>2]))+L[l+6772>>2];L[l+2172>>2]=s+O(O(O(u*t)+O(n*o))+O(p*m));L[l+2168>>2]=x+O(O(O(A*t)+O(z*o))+O(C*m));L[l+2164>>2]=v+O(O(O(q*t)+O(r*o))+O(B*m));H[l+2248>>2]=b;F[l+2244|0]=k;H[l+2240>>2]=ga;H[l+2236>>2]=i;H[l+2252>>2]=G;Ra[H[(J[b+4>>1]<<2)+127384>>2]](b,G,l,0,1);nY(l+8|0);b=I[c|0];a=H[l+6620>>2];a:{if((a|0)<0|!(a&2147483647)){break a}a=H[l+6612>>2];if((a|0)==(l+2256|0)|!a){break a}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,a)}Oa=l+6784|0;return(b|0)!=0}function ju(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=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),F=O(0),G=O(0),I=O(0),J=O(0),K=O(0),M=O(0),N=O(0),P=O(0),Q=O(0),R=O(0),S=O(0);a=Oa-48|0;s=L[d+8>>2];B=L[c>>2];o=L[c+12>>2];t=L[d+4>>2];w=L[d+12>>2];u=L[c+4>>2];D=L[c+8>>2];l=L[d>>2];i=O(O(s*B)+O(O(O(o*t)-O(w*u))-O(D*l)));j=O(O(t*D)+O(O(O(o*l)-O(w*B))-O(u*s)));C=O(j+j);y=O(O(D*s)+O(O(u*t)+O(O(o*w)+O(l*B))));A=O(O(l*u)+O(O(O(o*s)-O(w*D))-O(B*t)));z=O(A+A);k=L[b+8>>2];p=O(O(O(i*C)-O(y*z))*k);j=L[b+4>>2];q=i;i=O(i+i);x=O(j*O(O(O(1)-O(q*i))-O(A*z)));m=O(p-x);q=O(O(A*C)+O(y*i));i=L[b+12>>2];v=O(q*i);A=L[e>>2];C=L[d+16>>2];y=O(C-L[c+16>>2]);n=O(y+y);y=L[d+20>>2];z=O(y-L[c+20>>2]);r=O(z+z);z=L[d+24>>2];q=O(z-L[c+24>>2]);q=O(q+q);n=O(A-O(O(O(n*O(O(o*o)+O(-.5)))+O(o*O(O(D*r)-O(u*q))))-O(B*O(O(O(O(-B)*n)-O(r*u))-O(D*q)))));F=O(O(m-v)-n);L[a+20>>2]=F;G=O(O(v+m)-n);L[a+16>>2]=G;m=O(x-p);I=O(O(m-v)-n);L[a+12>>2]=I;J=O(O(v+m)-n);L[a+8>>2]=J;m=O(p+x);K=O(O(m-v)-n);L[a+4>>2]=K;M=O(O(v+m)-n);L[a>>2]=M;p=O(O(-x)-p);N=O(O(p-v)-n);L[a+28>>2]=N;P=O(O(v+p)-n);L[a+24>>2]=P;q=O(t+t);p=O(s*q);r=O(l+l);x=O(w*r);v=O(p-x);m=O(r*s);E=O(q*w);n=O(m+E);p=O(p+x);Q=O(r*t);R=O(s+s);S=O(w*R);w=O(Q-S);x=O(m-E);m=O(Q+S);l=O(O(1)-O(l*r));r=O(t*q);t=O(l-r);q=l;l=O(s*R);s=O(q-l);l=O(O(O(1)-r)-l);q=O(B+B);E=O(o+o);r=O(-O(O(D*q)-O(u*E)));u=O(-O(O(D*E)+O(q*u)));o=O(-O(O(B*q)+O(O(o*E)+O(-1))));H[a+44>>2]=a;a=H[a+44>>2];a:{if(H[a>>2]>=0){break a}b=H[g+4096>>2];if(b>>>0>63){break a}H[g+4096>>2]=b+1;b=(b<<6)+g|0;L[b+8>>2]=r;L[b+4>>2]=u;L[b>>2]=o;H[b+52>>2]=-1;L[b+12>>2]=A+M;L[b+24>>2]=z+O(O(O(x*j)+O(p*k))+O(t*i));L[b+20>>2]=y+O(O(O(m*j)+O(s*k))+O(v*i));L[b+16>>2]=C+O(O(O(l*j)+O(w*k))+O(n*i))}b:{if(H[a+4>>2]>=0){break b}b=H[g+4096>>2];if(b>>>0>63){break b}H[g+4096>>2]=b+1;b=(b<<6)+g|0;L[b+8>>2]=r;L[b+4>>2]=u;L[b>>2]=o;H[b+52>>2]=-1;L[b+12>>2]=A+K;L[b+24>>2]=z+O(O(O(x*j)+O(p*k))-O(t*i));L[b+20>>2]=y+O(O(O(m*j)+O(s*k))-O(v*i));L[b+16>>2]=C+O(O(O(l*j)+O(w*k))-O(n*i))}c:{if(H[a+8>>2]>=0){break c}b=H[g+4096>>2];if(b>>>0>63){break c}H[g+4096>>2]=b+1;b=(b<<6)+g|0;L[b+8>>2]=r;L[b+4>>2]=u;L[b>>2]=o;H[b+52>>2]=-1;L[b+12>>2]=A+J;L[b+24>>2]=z+O(O(O(x*j)-O(p*k))+O(t*i));L[b+20>>2]=y+O(O(O(m*j)-O(s*k))+O(v*i));L[b+16>>2]=C+O(O(O(l*j)-O(w*k))+O(n*i))}d:{if(H[a+12>>2]>=0){break d}b=H[g+4096>>2];if(b>>>0>63){break d}H[g+4096>>2]=b+1;b=(b<<6)+g|0;L[b+8>>2]=r;L[b+4>>2]=u;L[b>>2]=o;H[b+52>>2]=-1;L[b+12>>2]=A+I;L[b+24>>2]=z+O(O(O(x*j)-O(p*k))-O(t*i));L[b+20>>2]=y+O(O(O(m*j)-O(s*k))-O(v*i));L[b+16>>2]=C+O(O(O(l*j)-O(w*k))-O(n*i))}e:{if(H[a+16>>2]>=0){break e}b=H[g+4096>>2];if(b>>>0>63){break e}H[g+4096>>2]=b+1;b=(b<<6)+g|0;L[b+8>>2]=r;L[b+4>>2]=u;L[b>>2]=o;H[b+52>>2]=-1;L[b+12>>2]=A+G;L[b+24>>2]=z+O(O(O(p*k)-O(x*j))+O(t*i));L[b+20>>2]=y+O(O(O(s*k)-O(m*j))+O(v*i));L[b+16>>2]=C+O(O(O(w*k)-O(l*j))+O(n*i))}f:{if(H[a+20>>2]>=0){break f}b=H[g+4096>>2];if(b>>>0>63){break f}H[g+4096>>2]=b+1;b=(b<<6)+g|0;L[b+8>>2]=r;L[b+4>>2]=u;L[b>>2]=o;H[b+52>>2]=-1;L[b+12>>2]=A+F;L[b+24>>2]=z+O(O(O(p*k)-O(x*j))-O(t*i));L[b+20>>2]=y+O(O(O(s*k)-O(m*j))-O(v*i));L[b+16>>2]=C+O(O(O(w*k)-O(l*j))-O(n*i))}g:{if(H[a+24>>2]>=0){break g}b=H[g+4096>>2];if(b>>>0>63){break g}H[g+4096>>2]=b+1;b=(b<<6)+g|0;L[b+8>>2]=r;L[b+4>>2]=u;L[b>>2]=o;H[b+52>>2]=-1;L[b+12>>2]=A+P;B=O(-k);L[b+24>>2]=z+O(O(O(p*B)-O(x*j))+O(t*i));L[b+20>>2]=y+O(O(O(s*B)-O(m*j))+O(v*i));L[b+16>>2]=C+O(O(O(w*B)-O(l*j))+O(n*i))}h:{if(H[a+28>>2]>=0){a=H[g+4096>>2];break h}b=H[g+4096>>2];if(b>>>0>63){a=b;break h}a=b+1|0;H[g+4096>>2]=a;b=(b<<6)+g|0;L[b+8>>2]=r;L[b+4>>2]=u;L[b>>2]=o;H[b+52>>2]=-1;L[b+12>>2]=A+N;k=O(-k);L[b+24>>2]=z+O(O(O(p*k)-O(x*j))-O(t*i));L[b+20>>2]=y+O(O(O(s*k)-O(m*j))-O(v*i));L[b+16>>2]=C+O(O(O(w*k)-O(l*j))-O(n*i))}return(a|0)!=0|0}function nD(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=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=0,z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),I=0,K=O(0),M=O(0),P=O(0),Q=O(0),R=O(0),S=O(0),T=0,U=0,V=0,W=0;y=Oa-48|0;Oa=y;if(H[a+592>>2]){H[y+40>>2]=0;H[y+32>>2]=0;H[y+36>>2]=0;G[y+28>>1]=J[f>>1];H[y+24>>2]=e;H[y+16>>2]=c;H[y+12>>2]=b;H[y+8>>2]=115104;H[y+20>>2]=y+32;V=H[a+644>>2];W=H[a+640>>2];T=y+8|0;e=Oa-1056|0;Oa=e;g=L[c+8>>2];p=O(g+g);A=O(-p);f=p>A;g=L[c+4>>2];q=O(g+g);B=O(-q);I=q>B;g=L[c>>2];r=O(g+g);C=O(-r);c=r>C;g=L[b+8>>2];v=O(g+g);g=L[b+4>>2];w=O(g+g);g=L[b>>2];x=O(g+g);g=L[d>>2];a:{if(g>=O(3.4028234663852886e38)){s=q==O(0)?w:q>=O(0)?O(3.4028234663852886e38):O(-3.4028234663852886e38);t=r==O(0)?x:r>=O(0)?O(3.4028234663852886e38):O(-3.4028234663852886e38);g=v;if(p==O(0)){break a}g=p>=O(0)?O(3.4028234663852886e38):O(-3.4028234663852886e38);break a}s=O(w+O(q*g));t=O(x+O(r*g));g=O(v+O(p*g))}A=f?p:A;B=I?q:B;C=c?r:C;F[e+1040|0]=1;H[e+1048>>2]=256;H[e+1052>>2]=256;H[e+1044>>2]=e+16;c=H[a+592>>2];H[e+16>>2]=c;M=gs?w:s;Q=x>t?x:t;g=g>v?v:g;s=w>2];h=L[c>>2];m=O(i-h);h=O(i+h);d:{if(!(O(m+h)>=t)|!(O(h-m)<=Q)){break d}l=L[c+20>>2];j=L[c+4>>2];i=O(l-j);l=O(l+j);k=O(w-l);n=O(x-h);h=O(O(r*k)-O(q*n));j=O(-h);if(!(O(l-i)<=P)|(!(O(O(B*m)+O(C*i))>=(h>j?h:j))|!(O(i+l)>=s))){break d}l=L[c+24>>2];j=L[c+8>>2];h=O(l-j);l=O(l+j);u=O(v-l);j=O(O(q*u)-O(p*k));k=O(-j);if(!(O(l-h)<=M)|(!(O(O(A*i)+O(B*h))>=(j>k?j:k))|!(O(h+l)>=g))){break d}i=O(O(p*n)-O(r*u));l=O(-i);if(!(O(O(A*m)+O(C*h))>=(i>l?i:l))){break d}l=L[d>>2];L[e+12>>2]=l;if(H[c+40>>2]){while(1){a=H[c+36>>2];m=L[a- -64>>2];j=L[a+48>>2];i=O(m-j);l=L[a+68>>2];k=L[a+52>>2];h=O(l-k);l=O(l+k);o=O(w-l);j=O(m+j);D=O(x-j);n=O(O(r*o)-O(q*D));u=O(-n);k=L[a+72>>2];E=L[a+56>>2];m=O(k-E);k=O(k+E);z=O(v-k);o=O(O(q*z)-O(p*o));E=O(-o);D=O(O(p*D)-O(r*z));z=O(-D);b=O(j-i)<=Q&O(i+j)>=t&O(O(B*i)+O(C*h))>=(n>u?n:u)&O(h+l)>=s&O(l-h)<=P&O(O(A*h)+O(B*m))>=(o>E?o:E)&O(m+k)>=g&O(k-m)<=M&O(O(A*i)+O(C*m))>=(z>2];u=L[a>>2];i=O(m-u);n=L[a+20>>2];o=L[a+4>>2];h=O(n-o);n=O(n+o);z=O(w-n);u=O(m+u);K=O(x-u);E=O(O(r*z)-O(q*K));D=O(-E);o=L[a+24>>2];R=L[a+8>>2];m=O(o-R);o=O(o+R);S=O(v-o);z=O(O(q*S)-O(p*z));R=O(-z);K=O(O(p*K)-O(r*S));S=O(-K);c=O(u-i)<=Q&O(i+u)>=t&O(O(B*i)+O(C*h))>=(D=s&O(n-h)<=P&O(O(A*h)+O(B*m))>=(z>R?z:R)&O(m+o)>=g&O(o-m)<=M&O(O(A*i)+O(C*m))>=(K>S?K:S);e:{if(!(!c|!b)){b=O(O(O(k-o)*p)+O(O(O(j-u)*r)+O(q*O(l-n))))>O(0);H[H[e+1044>>2]+(f<<2)>>2]=a+N(b,48);c=a+N(!b,48)|0;f=f+1|0;if((f|0)!=(H[e+1052>>2]&2147483647)){break e}iC(e+16|0,f<<1);break e}if(!(b|c)){break d}c=c?a:a+48|0}if(H[c+40>>2]){continue}break}l=L[d>>2]}b=H[c+36>>2];a=H[b>>2];if(!a){break d}c=b+4|0;b=a;while(1){U=H[c>>2];f:{if(a>>>0>=2){I=N(U,24)+W|0;i=L[I+12>>2];h=L[I>>2];m=O(i-h);h=O(h+i);if(!(O(m+h)>=t)|!(O(h-m)<=Q)){break f}j=L[I+16>>2];k=L[I+4>>2];i=O(j-k);j=O(k+j);n=O(w-j);u=O(x-h);h=O(O(r*n)-O(q*u));k=O(-h);if(!(O(j-i)<=P)|(!(O(O(B*m)+O(C*i))>=(h>k?h:k))|!(O(i+j)>=s))){break f}j=L[I+20>>2];k=L[I+8>>2];h=O(j-k);j=O(k+j);o=O(v-j);k=O(O(q*o)-O(p*n));n=O(-k);if(!(O(j-h)<=M)|(!(O(O(A*i)+O(B*h))>=(k>n?k:n))|!(O(h+j)>=g))){break f}i=O(O(p*u)-O(r*o));j=O(-i);if(!(O(O(A*m)+O(C*h))>=(i>j?i:j))){break f}}if(!(Ra[H[H[T>>2]+8>>2]](T,e+12|0,N(U,44)+V|0)|0)){break c}i=L[e+12>>2];if(!(i>2]=i;g=O(v+O(p*i));M=gs?w:s;t=O(x+O(r*i));Q=x>t?x:t;g=g>v?v:g;s=w>2]+(f<<2)>>2];continue}break}a=0}b=H[e+1052>>2];g:{if((b|0)<0|!(b&2147483647)){break g}b=H[e+1044>>2];if((b|0)==(e+16|0)|!b){break g}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}Oa=e+1056|0}else{a=1}Oa=y+48|0;return a|0}function LW(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=O(g);h=h|0;i=i|0;j=O(j);var k=0,l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),I=O(0),K=O(0),M=O(0),N=O(0),P=O(0),Q=O(0),R=O(0),S=O(0),T=O(0),U=O(0),V=O(0),W=O(0);k=Oa-288|0;Oa=k;H[k+272>>2]=0;H[k+264>>2]=0;H[k+268>>2]=0;H[k+256>>2]=0;H[k+260>>2]=0;E=L[b+20>>2];w=L[d+20>>2];I=L[b+24>>2];z=L[d+24>>2];P=L[f+4>>2];Q=L[f>>2];R=L[f+8>>2];A=L[e+24>>2];K=L[b+16>>2];x=L[d+16>>2];v=L[c+8>>2];u=L[b>>2];m=L[d+8>>2];o=L[b+8>>2];l=L[d>>2];t=L[b+12>>2];n=L[d+4>>2];r=L[b+4>>2];p=L[d+12>>2];q=L[a+4>>2];y=L[a+8>>2];s=L[a+12>>2];H[k+252>>2]=0;L[k+248>>2]=s;L[k+244>>2]=y;F[k+224|0]=0;H[k+220>>2]=3;H[k+192>>2]=0;H[k+196>>2]=0;H[k+200>>2]=0;H[k+204>>2]=0;L[k+240>>2]=q;q=q<=y?q:y;q=q<=s?q:s;y=O(q*O(.05000000074505806));L[k+216>>2]=y;L[k+212>>2]=y;L[k+208>>2]=q*O(.15000000596046448);H[k+172>>2]=0;H[k+156>>2]=0;y=O(-u);x=O(x-K);w=O(w-E);z=O(z-I);M=O(O(O(y*x)-O(w*r))-O(o*z));q=O(O(t*t)+O(-.5));s=O(O(O(t*O(O(r*x)-O(u*w)))+O(q*z))-O(o*M));N=O(s+s);L[k+104>>2]=N;s=O(O(O(l*r)-O(u*n))+O(O(m*t)-O(p*o)));C=O(O(O(n*o)-O(r*m))+O(O(l*t)-O(p*u)));B=O(C+C);S=O(s*B);D=O(O(p*t)-O(O(O(y*l)-O(n*r))-O(o*m)));l=O(O(O(m*u)-O(o*l))+O(O(n*t)-O(p*r)));n=O(l+l);p=O(D*n);C=O(O(1)-O(C*B));T=O(l*n);m=O(v*O(0));U=O(s*n);V=O(D*B);W=O(O(O(C-T)*m)+O(O(v*O(S-p))+O(m*O(U+V))));L[k+168>>2]=N-W;n=O(O(O(q*w)+O(t*O(O(u*z)-O(o*x))))-O(r*M));n=O(n+n);L[k+100>>2]=n;B=O(l*B);l=O(s+s);D=O(D*l);s=O(s*l);l=O(O(O(U-V)*m)+O(O(v*O(B+D))+O(m*O(C-s))));L[k+164>>2]=n-l;L[k+152>>2]=N+W;L[k+148>>2]=n+l;L[k+176>>2]=A;H[k+108>>2]=0;H[k+124>>2]=4;F[k+128|0]=1;L[k+120>>2]=A;L[k+116>>2]=A;L[k+112>>2]=A;l=O(O(O(q*x)+O(t*O(O(o*w)-O(r*z))))-O(u*M));l=O(l+l);L[k+96>>2]=l;m=O(O(O(S+p)*m)+O(O(v*O(O(O(1)-T)-s))+O(m*O(B-D))));L[k+160>>2]=l-m;L[k+144>>2]=l+m;H[k+92>>2]=0;m=O(O(-R)*g);v=O(O(-Q)*g);l=O(O(-P)*g);n=O(O(o*m)+O(O(u*v)+O(r*l)));p=O(O(o*n)+O(O(m*q)-O(t*O(O(u*l)-O(v*r)))));L[k+88>>2]=p+p;p=O(O(r*n)+O(O(l*q)-O(t*O(O(o*v)-O(m*u)))));L[k+84>>2]=p+p;m=O(O(u*n)+O(O(v*q)-O(t*O(O(r*m)-O(l*o)))));L[k+80>>2]=m+m;a=J[i>>1];H[k+64>>2]=2139095039;H[k+24>>2]=125948;H[k+28>>2]=k+96;H[k+16>>2]=126608;H[k+20>>2]=k+192;H[k+12>>2]=0;L[k+8>>2]=L[k+104>>2]-L[k+200>>2];L[k+4>>2]=L[k+100>>2]-L[k+196>>2];L[k>>2]=L[k+96>>2]-L[k+192>>2];a=a&512;b=MW(k+24|0,k+16|0,k,k+256|0,k+80|0,k- -64|0,k+32|0,k+48|0,O(A+j),a>>>9|0);a:{if(!b){break a}A=O(-o);m=O(-r);G[h+12>>1]=2;j=L[k+64>>2];if(j<=L[k+272>>2]){if(a){G[h+12>>1]=3;g=L[k+56>>2];v=L[k+48>>2];l=L[k+52>>2];n=L[k+40>>2];p=L[k+32>>2];s=L[k+36>>2];L[h+40>>2]=j;x=O(O(o*n)+O(O(u*p)+O(r*s)));w=O(O(O(t*O(O(u*s)+O(p*m)))+O(q*n))+O(o*x));w=O(w+w);L[h+36>>2]=w;z=O(O(r*x)+O(O(q*s)+O(t*O(O(o*p)+O(n*y)))));z=O(z+z);L[h+32>>2]=z;n=O(O(u*x)+O(O(q*p)+O(t*O(O(r*n)+O(s*A)))));n=O(n+n);L[h+28>>2]=n;p=O(O(t*O(O(u*l)+O(v*m)))+O(q*g));m=O(O(o*g)+O(O(u*v)+O(r*l)));p=O(p+O(o*m));L[h+24>>2]=O(I+O(p+p))-O(j*w);o=O(O(r*m)+O(O(q*l)+O(t*O(O(o*v)+O(g*y)))));L[h+20>>2]=O(E+O(o+o))-O(j*z);g=O(O(u*m)+O(O(q*v)+O(t*O(O(r*g)+O(l*A)))));L[h+16>>2]=O(K+O(g+g))-O(j*n);break a}H[h+40>>2]=0;g=L[f>>2];j=L[f+4>>2];L[h+36>>2]=-L[f+8>>2];L[h+32>>2]=-j;L[h+28>>2]=-g;break a}G[h+12>>1]=3;v=L[k+56>>2];l=L[k+48>>2];n=L[k+52>>2];p=L[k+40>>2];s=L[k+32>>2];x=L[k+36>>2];g=O(j*g);L[h+40>>2]=g;j=O(O(o*p)+O(O(u*s)+O(r*x)));w=O(O(O(t*O(O(u*x)+O(s*m)))+O(q*p))+O(o*j));L[h+36>>2]=w+w;w=O(O(r*j)+O(O(q*x)+O(t*O(O(o*s)+O(p*y)))));L[h+32>>2]=w+w;j=O(O(u*j)+O(O(q*s)+O(t*O(O(r*p)+O(x*A)))));L[h+28>>2]=j+j;j=O(O(o*v)+O(O(u*l)+O(r*n)));m=O(O(O(t*O(O(u*n)+O(l*m)))+O(q*v))+O(o*j));L[h+24>>2]=O(R*g)+O(I+O(m+m));o=O(O(r*j)+O(O(q*n)+O(t*O(O(o*l)+O(v*y)))));L[h+20>>2]=O(P*g)+O(E+O(o+o));m=O(Q*g);g=O(O(u*j)+O(O(q*l)+O(t*O(O(r*v)+O(n*A)))));L[h+16>>2]=m+O(K+O(g+g))}Oa=k+288|0;return b|0}function XU(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=O(0),h=O(0),i=0,j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=0,D=O(0),E=O(0),F=0,G=O(0),I=O(0),J=O(0),K=O(0),M=O(0),N=O(0),Q=0,R=0,S=O(0),T=O(0),U=O(0),V=O(0),W=O(0);i=Oa-4320|0;Oa=i;j=L[d+20>>2];k=L[d+16>>2];r=L[d+24>>2];l=L[d>>2];m=O(l+l);q=L[d+8>>2];t=L[d+4>>2];u=L[d+12>>2];h=O(u+u);g=L[c+8>>2];o=O(O(O(m*q)-O(t*h))*g);L[i+20>>2]=r-o;q=O(g*O(O(q*h)+O(m*t)));L[i+16>>2]=j-q;L[i+8>>2]=o+r;L[i+4>>2]=j+q;j=O(g*O(O(l*m)+O(O(u*h)+O(-1))));L[i+12>>2]=k-j;L[i>>2]=k+j;L[i+24>>2]=L[c+4>>2];C=i+4288|0;HT(C,i,i+12|0,i+4316|0);H[i+4232>>2]=-1;L[i+56>>2]=L[i+4316>>2];L[i+52>>2]=L[i+24>>2];H[i+48>>2]=2;Q=i+4232|0;R=i+48|0;hU(Q,R);H[i+4176>>2]=-1;F=i+4176|0;hU(F,e);H[i+4168>>2]=0;H[i+4172>>2]=0;d=0;H[i+4144>>2]=0;H[i+40>>2]=1065353216;H[i+32>>2]=0;H[i+36>>2]=0;c=Oa-192|0;Oa=c;z=L[Q+4>>2];w=L[i+32>>2];j=L[f+8>>2];k=L[Q+8>>2];q=L[C>>2];m=O(q+q);o=L[C+8>>2];x=L[C+4>>2];t=L[C+12>>2];u=O(t+t);s=O(k*O(O(m*o)-O(x*u)));E=L[f+24>>2];K=L[C+24>>2];p=O(E-K);l=O(O(-s)-p);h=O(l+l);l=L[f>>2];n=O(k*O(O(q*m)+O(O(t*u)+O(-1))));G=L[f+16>>2];M=L[C+16>>2];v=O(G-M);g=O(O(-n)-v);g=O(g+g);A=O(k*O(O(o*u)+O(m*x)));I=L[f+20>>2];N=L[C+20>>2];D=O(I-N);k=O(O(-A)-D);r=O(k+k);k=L[f+4>>2];y=O(O(j*h)+O(O(l*g)+O(r*k)));m=L[f+12>>2];u=O(O(m*m)+O(-.5));B=O(O(j*y)+O(O(h*u)-O(m*O(O(l*r)-O(g*k)))));L[c+188>>2]=B;J=O(O(k*y)+O(O(r*u)-O(m*O(O(j*g)-O(h*l)))));L[c+184>>2]=J;s=O(s-p);s=O(s+s);p=O(n-v);p=O(p+p);n=O(A-D);n=O(n+n);v=O(O(j*s)+O(O(l*p)+O(k*n)));A=O(O(l*v)+O(O(p*u)-O(m*O(O(k*s)-O(n*j)))));L[c+168>>2]=A;r=O(O(l*y)+O(O(g*u)-O(m*O(O(k*h)-O(r*j)))));L[c+180>>2]=r;y=O(O(k*v)+O(O(n*u)-O(m*O(O(j*p)-O(s*l)))));L[c+172>>2]=y;s=O(O(j*v)+O(O(s*u)-O(m*O(O(l*n)-O(p*k)))));L[c+176>>2]=s;e=H[F+4>>2];H[c+160>>2]=F;H[c+156>>2]=e;h=L[F+8>>2];g=L[F+12>>2];L[c+152>>2]=O(1)/L[F+16>>2];L[c+144>>2]=O(1)/g;L[c+148>>2]=O(1)/h;L[c+132>>2]=z;L[c+128>>2]=w;h=O(z+w);L[c+124>>2]=h;L[c+84>>2]=E;L[c+80>>2]=I;L[c+76>>2]=G;g=O(l+l);n=O(O(1)-O(l*g));p=O(k+k);z=O(k*p);L[c+72>>2]=n-z;w=O(p*j);v=O(m*g);L[c+68>>2]=w-v;D=O(g*j);p=O(m*p);L[c- -64>>2]=D+p;L[c+60>>2]=v+w;v=n;n=O(j+j);w=O(j*n);L[c+56>>2]=v-w;g=O(g*k);n=O(m*n);L[c+52>>2]=g-n;L[c+48>>2]=D-p;L[c+44>>2]=g+n;L[c+40>>2]=O(O(1)-z)-w;L[c+116>>2]=h+O(P(O(O(s-B)*O(.5))));L[c+112>>2]=h+O(P(O(O(y-J)*O(.5))));L[c+108>>2]=h+O(P(O(O(A-r)*O(.5))));L[c+100>>2]=O(s+B)*O(.5);L[c+96>>2]=O(y+J)*O(.5);L[c+92>>2]=O(A+r)*O(.5);H[c+88>>2]=c+168;H[c+32>>2]=127340;H[c+140>>2]=f;e=c+144|0;H[c+136>>2]=e;H[c+36>>2]=R;g=O(M-G);s=O(g+g);g=O(N-I);p=O(g+g);g=O(K-E);n=O(g+g);z=O(O(O(O(-l)*s)-O(p*k))-O(j*n));y=O(O(x*j)+O(O(O(m*q)-O(t*l))-O(k*o)));w=O(y+y);g=O(O(q*k)+O(O(O(m*o)-O(t*j))-O(l*x)));G=O(w*g);r=O(O(j*o)+O(O(k*x)+O(O(m*t)+O(q*l))));q=O(O(o*l)+O(O(O(m*x)-O(t*k))-O(j*q)));x=O(q+q);I=O(r*x);o=O(h+L[Q+8>>2]);E=O(O(o+o)*O(.5));B=O(r*w);J=O(x*g);t=O(O(h+h)*O(.5));v=O(O(1)-O(y*w));A=O(q*x);K=O(O(O(P(O(O(G-I)*E)))+O(P(O(O(B+J)*t))))+O(P(O(O(v-A)*t))));h=O(O(h-h)*O(.5));h=O(h+h);M=O(g*h);o=O(O(o-o)*O(.5));o=O(o+o);N=O(q*h);x=O(M+O(O(y*o)+N));D=O(O(r*r)+O(-.5));S=O(h*D);h=O(y*h);T=O(O(O(O(n*u)+O(m*O(O(k*s)-O(l*p))))-O(j*z))+O(O(g*x)+O(S+O(r*O(h-O(o*q))))));L[c+28>>2]=K+T;w=O(w*q);U=O(g+g);V=O(r*U);W=v;v=O(g*U);B=O(O(O(P(O(O(w+V)*E)))+O(P(O(O(W-v)*t))))+O(P(O(O(J-B)*t))));h=O(O(O(O(p*u)+O(m*O(O(l*n)-O(j*s))))-O(k*z))+O(O(q*x)+O(S+O(r*O(O(g*o)-h)))));L[c+24>>2]=B+h;g=O(O(O(P(O(O(O(O(1)-A)-v)*E)))+O(P(O(O(w-V)*t))))+O(P(O(O(G+I)*t))));j=O(O(O(O(s*u)+O(m*O(O(p*j)-O(k*n))))-O(l*z))+O(O(y*x)+O(O(o*D)+O(r*O(N-M)))));L[c+20>>2]=g+j;L[c+16>>2]=T-K;L[c+12>>2]=h-B;L[c+8>>2]=j-g;XZ(e,f,c+8|0,0,c+32|0);Oa=c+192|0;a:{if(!H[R+4096>>2]){break a}if(!NU(a,b,H[i+4144>>2],i+48|0)){break a}d=H[i+4144>>2]!=0}Oa=i+4320|0;return d|0}function _y(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,o=0,p=0,q=0,r=O(0),s=0,t=0,u=0,v=0,w=0,x=0;c=H[a+28>>2];H[H[c+4>>2]+8>>2]=H[c+536>>2];c=Oa-32|0;Oa=c;j=H[a+28>>2];i=j+12|0;f=H[j+4>>2];$y(i,f);e=H[a+28>>2];b=e+464|0;h=H[e+592>>2];q=H[b+(1-h<<2)>>2];h=H[b+(h<<2)>>2];H[h+8>>2]=0;if(H[j+36>>2]){while(1){b=H[j+28>>2]+(d<<3)|0;r=L[b+4>>2];b=H[f+4>>2]+(H[b>>2]<<5)|0;a:{if(!(r>O(L[b+8>>2]*L[e+52>>2]))){break a}L[b+20>>2]=r;e=H[h+8>>2];if(e>>>0>=(H[h+12>>2]&2147483647)>>>0){az(h,b);break a}g=H[b+4>>2];e=H[h+4>>2]+(e<<5)|0;H[e>>2]=H[b>>2];H[e+4>>2]=g;g=H[b+28>>2];H[e+24>>2]=H[b+24>>2];H[e+28>>2]=g;g=H[b+20>>2];H[e+16>>2]=H[b+16>>2];H[e+20>>2]=g;g=H[b+12>>2];H[e+8>>2]=H[b+8>>2];H[e+12>>2]=g;H[h+8>>2]=H[h+8>>2]+1}e=H[a+28>>2];d=d+1|0;if(d>>>0>2]){continue}break}}f=H[e+8>>2];H[f+8>>2]=0;m=H[h+8>>2];b:{c:{d:{o=H[q+8>>2];if(o){$y(i,q);g=m+o|0;n=e+472|0;if(g>>>0>(H[n+8>>2]&2147483647)>>>0){Dv(n,g);H[n+4>>2]=g;break d}H[n+4>>2]=g;if(g){break d}s=1;break c}if(m>>>0>(H[f+12>>2]&2147483647)>>>0){oy(f,m)}H[f+8>>2]=m;R6(H[f+4>>2],H[h+4>>2],m<<5);break b}a=H[n>>2];e=0;if(g-1>>>0>=7){d=g&-8;while(1){b=e<<2;H[b+a>>2]=1;H[a+(b|4)>>2]=1;H[a+(b|8)>>2]=1;H[a+(b|12)>>2]=1;H[a+(b|16)>>2]=1;H[a+(b|20)>>2]=1;H[a+(b|24)>>2]=1;H[a+(b|28)>>2]=1;e=e+8|0;k=k+8|0;if((d|0)!=(k|0)){continue}break}}b=g&7;if(!b){break c}while(1){H[a+(e<<2)>>2]=1;e=e+1|0;s=s+1|0;if((b|0)!=(s|0)){continue}break}s=0}if(m){v=H[j+32>>2];e=H[j+16>>2];w=H[j+28>>2];x=H[h+4>>2];k=0;while(1){p=(k<<5)+x|0;t=H[p+12>>2];a=t>>>7|0;u=H[p+16>>2];b=u>>>7|0;l=-1;i=b+l|0;a=(b^-1)+a|0;d=i;a=d>>>0>>0?a+1|0:a;i=a;b=a>>>22|0;a=d^((a&4194303)<<10|d>>>22);d=b^i;i=d;b=a;a=d<<13|a>>>19;l=b<<13^-1;d=b+l|0;b=(a^-1)+i|0;b=d>>>0>>0?b+1|0:b;a=g7(d^((b&255)<<24|d>>>8),b^b>>>8,9,0);d=Qa;b=d>>>15|0;a=a^((d&32767)<<17|a>>>15);b=b^d;l=a<<27^-1;d=l+a|0;a=((b<<27|a>>>5)^-1)+b|0;b=d;a=b>>>0>>0?a+1|0:a;d=H[(((b^((a&2147483647)<<1|b>>>31))>>>0)%K[j+20>>2]<<2)+e>>2];e:{if((d|0)==-1){break e}b=H[p>>2];i=H[q+4>>2];while(1){p=H[(d<<3)+w>>2];a=(p<<5)+i|0;if(!(!(H[a+12>>2]!=(t|0)|H[a+16>>2]!=(u|0))&H[a>>2]==(b|0))){d=H[v+(d<<2)>>2];if((d|0)!=-1){continue}break e}break}a=H[n>>2];H[a+(p<<2)>>2]=0;H[a+(k+o<<2)>>2]=0}k=k+1|0;if((m|0)!=(k|0)){continue}break}}if(s){break b}d=0;while(1){f:{if(H[H[n>>2]+(d<<2)>>2]){g:{if(d>>>0>>0){a=H[q+4>>2];H[c+12>>2]=-128;H[c+16>>2]=-128;a=a+(d<<5)|0;b=H[a+12>>2];H[c+8>>2]=H[a+8>>2];H[c+12>>2]=b;b=H[a+28>>2];H[c+24>>2]=H[a+24>>2];H[c+28>>2]=b;b=H[a+20>>2];H[c+16>>2]=H[a+16>>2];H[c+20>>2]=b;b=H[a+4>>2];H[c>>2]=H[a>>2];H[c+4>>2]=b;r=O(0);break g}a=H[h+4>>2];H[c+12>>2]=-128;H[c+16>>2]=-128;a=a+(d-o<<5)|0;b=H[a+28>>2];H[c+24>>2]=H[a+24>>2];H[c+28>>2]=b;b=H[a+20>>2];H[c+16>>2]=H[a+16>>2];H[c+20>>2]=b;b=H[a+12>>2];H[c+8>>2]=H[a+8>>2];H[c+12>>2]=b;b=H[a+4>>2];H[c>>2]=H[a>>2];H[c+4>>2]=b;r=L[a+20>>2]}L[c+20>>2]=r;a=H[f+8>>2];if(a>>>0>=(H[f+12>>2]&2147483647)>>>0){az(f,c);break f}b=H[c+4>>2];a=H[f+4>>2]+(a<<5)|0;H[a>>2]=H[c>>2];H[a+4>>2]=b;b=H[c+28>>2];H[a+24>>2]=H[c+24>>2];H[a+28>>2]=b;b=H[c+20>>2];H[a+16>>2]=H[c+16>>2];H[a+20>>2]=b;b=H[c+12>>2];H[a+8>>2]=H[c+8>>2];H[a+12>>2]=b;H[f+8>>2]=H[f+8>>2]+1;break f}if(d>>>0>=o>>>0){break f}a=H[q+4>>2];H[c+12>>2]=-128;H[c+16>>2]=-128;a=a+(d<<5)|0;b=H[a+12>>2];H[c+8>>2]=H[a+8>>2];H[c+12>>2]=b;b=H[a+28>>2];H[c+24>>2]=H[a+24>>2];H[c+28>>2]=b;b=H[a+20>>2];H[c+16>>2]=H[a+16>>2];H[c+20>>2]=b;b=H[a+4>>2];H[c>>2]=H[a>>2];H[c+4>>2]=b;L[c+20>>2]=L[a+20>>2];a=H[f+8>>2];if(a>>>0>=(H[f+12>>2]&2147483647)>>>0){az(f,c);break f}b=H[c+4>>2];a=H[f+4>>2]+(a<<5)|0;H[a>>2]=H[c>>2];H[a+4>>2]=b;b=H[c+28>>2];H[a+24>>2]=H[c+24>>2];H[a+28>>2]=b;b=H[c+20>>2];H[a+16>>2]=H[c+16>>2];H[a+20>>2]=b;b=H[c+12>>2];H[a+8>>2]=H[c+8>>2];H[a+12>>2]=b;H[f+8>>2]=H[f+8>>2]+1}d=d+1|0;if((g|0)!=(d|0)){continue}break}}Oa=c+32|0}function gS(a,b,c){var d=0,e=0,f=0,g=O(0),h=0,i=0,j=O(0),k=O(0),l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=O(0),t=O(0),u=0,w=O(0),x=0,y=0,z=0,B=O(0),C=0,D=0,E=0,F=0,G=0,I=0,J=O(0),K=O(0),P=O(0),Q=O(0),R=O(0),S=O(0),T=O(0),U=O(0),V=O(0),W=0,X=0,Y=0,Z=0,_=0;d=Oa-160|0;Oa=d;I=a+32|0;n=M[c>>3];l=M[c+24>>3];C=(n+l)*.5;o=M[c+16>>3];p=M[c+40>>3];D=(o+p)*.5;x=M[c+8>>3];y=M[c+32>>3];E=(x+y)*.5;z=H[b>>2];a:{if(!z){r=E;u=C;m=D;break a}g=O(l);j=O(n);Q=O(O(g-j)*O(.5));R=O(O(j+g)*O(.5));g=O(p);j=O(o);S=O(O(g-j)*O(.5));t=O(y);k=O(x);T=O(O(t-k)*O(.5));U=O(O(j+g)*O(.5));V=O(O(k+t)*O(.5));F=d+60|0;W=d+72|0;X=H[b+8>>2];Y=H[b+4>>2];while(1){e=N(q,56)+Y|0;g=L[e+44>>2];t=L[e+48>>2];k=L[e+36>>2];j=L[e+40>>2];m=M[e>>3];r=M[e+8>>3];L[d+68>>2]=M[e+16>>3];L[d+64>>2]=r;L[d+60>>2]=m;s=k;k=O(k+k);s=O(O(1)-O(s*k));w=O(j+j);J=O(j*w);L[d+56>>2]=s-J;K=O(w*g);B=O(k*t);L[d+52>>2]=K-B;P=O(k*g);w=O(w*t);L[d+48>>2]=P+w;L[d+44>>2]=K+B;B=s;s=g;g=O(g+g);s=O(s*g);L[d+40>>2]=B-s;j=O(k*j);g=O(g*t);L[d+36>>2]=j-g;L[d+32>>2]=P-w;L[d+28>>2]=j+g;L[d+24>>2]=O(O(1)-J)-s;L[d+72>>2]=L[e+24>>2];L[d+76>>2]=L[e+28>>2];L[d+80>>2]=L[e+32>>2];L[d+152>>2]=U;L[d+148>>2]=V;L[d+144>>2]=R;L[d+136>>2]=S;L[d+132>>2]=T;L[d+128>>2]=Q;H[d+120>>2]=1065353216;H[d+112>>2]=0;H[d+116>>2]=0;H[d+104>>2]=1065353216;H[d+108>>2]=0;H[d+96>>2]=0;H[d+100>>2]=0;H[d+88>>2]=1065353216;H[d+92>>2]=0;if(_Z(W,F,d+24|0,d+128|0,d+144|0,d+88|0)){h=H[a+36>>2];f=h+23|0;i=H[a+40>>2]&2147483647;b:{if(f>>>0<=i>>>0){break b}G=i;i=i?i<<1:2;i=f>>>0>>0?i:f;if(G>>>0>=i>>>0){break b}Dv(I,i);h=H[a+36>>2]}H[a+36>>2]=f;f=H[a+32>>2]+(h<<2)|0;H[f>>2]=0;h=H[(q<<2)+X>>2];A(+D);i=v(1)|0;Z=f,_=v(0)|0,H[Z+28>>2]=_;H[f+32>>2]=i;A(+E);i=v(1)|0;Z=f,_=v(0)|0,H[Z+20>>2]=_;H[f+24>>2]=i;A(+C);i=v(1)|0;Z=f,_=v(0)|0,H[Z+12>>2]=_;H[f+16>>2]=i;H[f+8>>2]=0;H[f+4>>2]=h;h=H[e+4>>2];H[f+36>>2]=H[e>>2];H[f+40>>2]=h;h=H[e+12>>2];H[f+44>>2]=H[e+8>>2];H[f+48>>2]=h;h=H[e+20>>2];H[f+52>>2]=H[e+16>>2];H[f+56>>2]=h;L[f+60>>2]=L[e+24>>2];L[f- -64>>2]=L[e+28>>2];L[f+68>>2]=L[e+32>>2];L[f+72>>2]=L[e+36>>2];L[f+76>>2]=L[e+40>>2];L[f+80>>2]=L[e+44>>2];L[f+84>>2]=L[e+48>>2]}q=q+1|0;if((z|0)!=(q|0)){continue}break}x=M[c+8>>3];y=M[c+32>>3];r=(x+y)*.5;n=M[c>>3];l=M[c+24>>3];u=(n+l)*.5;o=M[c+16>>3];p=M[c+40>>3];m=(o+p)*.5}z=H[b+20>>2];F=H[b+16>>2];i=H[b+12>>2];L[d+96>>2]=O(p-o)*O(.5);L[d+92>>2]=O(y-x)*O(.5);L[d+88>>2]=O(l-n)*O(.5);c:{if(!i){break c}j=O(m);t=O(r);k=O(u);q=0;while(1){f=F+N(q,56)|0;r=M[f>>3];u=M[f+24>>3];b=r>2];m=+g;d:{if((b?r:u)-m>l|M[c>>3]>(b?u:r)+m){break d}l=M[f+8>>3];n=M[f+32>>3];b=l>3]<(b?l:n)-m|M[c+8>>3]>(b?n:l)+m){break d}o=M[f+16>>3];p=M[f+40>>3];b=o>3]<(b?o:p)-m|M[c+16>>3]>(b?p:o)+m){break d}L[d+152>>2]=o;L[d+148>>2]=l;L[d+144>>2]=r;L[d+136>>2]=p;L[d+132>>2]=n;L[d+128>>2]=u;L[d+16>>2]=j;L[d+12>>2]=t;L[d+8>>2]=k;H[d+56>>2]=1065353216;H[d+48>>2]=0;H[d+52>>2]=0;H[d+40>>2]=1065353216;H[d+44>>2]=0;H[d+32>>2]=0;H[d+36>>2]=0;H[d+24>>2]=1065353216;H[d+28>>2]=0;if(sZ(d+144|0,d+128|0,d+8|0,d+88|0,d+24|0,0,0)>O(g*g)){break d}h=H[a+36>>2];b=h+23|0;e=H[a+40>>2]&2147483647;e:{if(b>>>0<=e>>>0){break e}G=e;e=e?e<<1:2;e=b>>>0>>0?e:b;if(G>>>0>=e>>>0){break e}Dv(I,e);h=H[a+36>>2]}H[a+36>>2]=b;b=H[a+32>>2]+(h<<2)|0;H[b>>2]=1;e=H[z+(q<<2)>>2];A(+D);h=v(1)|0;Z=b,_=v(0)|0,H[Z+28>>2]=_;H[b+32>>2]=h;A(+E);h=v(1)|0;Z=b,_=v(0)|0,H[Z+20>>2]=_;H[b+24>>2]=h;A(+C);h=v(1)|0;Z=b,_=v(0)|0,H[Z+12>>2]=_;H[b+16>>2]=h;H[b+8>>2]=0;H[b+4>>2]=e;e=H[f+4>>2];H[b+36>>2]=H[f>>2];H[b+40>>2]=e;e=H[f+12>>2];H[b+44>>2]=H[f+8>>2];H[b+48>>2]=e;e=H[f+20>>2];H[b+52>>2]=H[f+16>>2];H[b+56>>2]=e;e=H[f+28>>2];H[b+60>>2]=H[f+24>>2];H[b+64>>2]=e;e=H[f+36>>2];H[b+68>>2]=H[f+32>>2];H[b+72>>2]=e;e=H[f+44>>2];H[b+76>>2]=H[f+40>>2];H[b+80>>2]=e;H[b+84>>2]=H[f+48>>2]}q=q+1|0;if((i|0)==(q|0)){break c}l=M[c+24>>3];continue}}Oa=d+160|0}function SC(a,b,c,d,e,f,g,h){var i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=0,q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=0,E=O(0),G=O(0),I=0,J=O(0),K=O(0),M=O(0),P=O(0),Q=O(0),R=O(0),S=0,T=O(0),U=O(0),V=O(0),W=O(0),X=O(0),Y=O(0),Z=O(0),_=0;p=Oa-1056|0;Oa=p;i=L[e+8>>2];s=O(i+i);C=O(-s);D=s>C;i=L[e+4>>2];t=O(i+i);E=O(-t);I=t>E;i=L[e>>2];u=O(i+i);G=O(-u);e=u>G;M=L[g+8>>2];P=L[g+4>>2];Q=L[g>>2];i=L[d+8>>2];y=O(i+i);i=L[d+4>>2];z=O(i+i);i=L[d>>2];A=O(i+i);i=L[f>>2];a:{if(i>=O(3.4028234663852886e38)){v=t==O(0)?z:t>=O(0)?O(3.4028234663852886e38):O(-3.4028234663852886e38);w=u==O(0)?A:u>=O(0)?O(3.4028234663852886e38):O(-3.4028234663852886e38);i=y;if(s==O(0)){break a}i=s>=O(0)?O(3.4028234663852886e38):O(-3.4028234663852886e38);break a}v=O(z+O(t*i));w=O(A+O(u*i));i=O(y+O(s*i))}C=D?s:C;E=I?t:E;G=e?u:G;V=O(M+M);W=O(P+P);X=O(Q+Q);F[p+1040|0]=1;H[p+1048>>2]=256;H[p+1052>>2]=256;H[p+1044>>2]=p+16;g=H[c+8>>2];H[p+16>>2]=g;M=iv?z:v;Q=A>w?A:w;i=i>y?y:i;v=z>2];n=L[d+12>>2];k=O(l+n);n=O(X+O(n-l));d:{if(!(O(k+n)>=w)|!(O(k-n)<=Q)){break d}o=L[d+16>>2];j=L[d+4>>2];l=O(W+O(o-j));o=O(j+o);m=O(z-o);q=O(A-k);k=O(O(u*m)-O(t*q));j=O(-k);if(!(O(o-l)<=P)|(!(O(O(E*n)+O(G*l))>=(k>j?k:j))|!(O(o+l)>=v))){break d}o=L[d+20>>2];j=L[d+8>>2];k=O(V+O(o-j));o=O(j+o);x=O(y-o);j=O(O(t*x)-O(s*m));m=O(-j);if(!(O(o-k)<=M)|(!(O(O(C*l)+O(E*k))>=(j>m?j:m))|!(O(o+k)>=i))){break d}l=O(O(s*q)-O(u*x));o=O(-l);if(!(O(O(C*n)+O(G*k))>=(l>o?l:o))){break d}o=L[f>>2];L[p+12>>2]=o;d=H[d+24>>2];if(!(d&1)){while(1){d=g+N(d>>>1|0,28)|0;m=L[d+28>>2];T=L[d+40>>2];l=O(m+T);n=L[d+44>>2];o=L[d+32>>2];k=O(W+O(n-o));o=O(o+n);r=O(z-o);J=O(A-l);q=O(O(u*r)-O(t*J));x=O(-q);j=L[d+48>>2];K=L[d+36>>2];n=O(V+O(j-K));j=O(K+j);B=O(y-j);r=O(O(t*B)-O(s*r));K=O(-r);J=O(O(s*J)-O(u*B));B=O(-J);m=O(X+O(T-m));D=O(l+m)>=w&O(l-m)<=Q&O(O(E*m)+O(G*k))>=(q>x?q:x)&O(o+k)>=v&O(o-k)<=P&O(O(C*k)+O(E*n))>=(r>K?r:K)&O(j+n)>=i&O(j-n)<=M&O(O(C*m)+O(G*n))>=(B>2];m=L[d+4>>2];k=O(W+O(n-m));m=O(m+n);r=O(z-m);Y=L[d>>2];Z=L[d+12>>2];q=O(Y+Z);R=O(A-q);K=O(O(u*r)-O(t*R));J=O(-K);x=L[d+20>>2];B=L[d+8>>2];n=O(V+O(x-B));x=O(B+x);U=O(y-x);B=O(O(t*U)-O(s*r));T=O(-B);R=O(O(s*R)-O(u*U));U=O(-R);r=O(X+O(Z-Y));I=O(q+r)>=w&O(q-r)<=Q&O(O(E*r)+O(G*k))>=(J=v&O(m-k)<=P&O(O(C*k)+O(E*n))>=(B>T?B:T)&O(x+n)>=i&O(x-n)<=M&O(O(C*r)+O(G*n))>=(R>U?R:U);e:{if(!(!I|!D)){D=O(O(O(j-x)*s)+O(O(O(l-q)*u)+O(t*O(o-m))))>O(0);H[H[p+1044>>2]+(e<<2)>>2]=d+N(D,28);d=d+N(!D,28)|0;e=e+1|0;if((e|0)!=(H[p+1052>>2]&2147483647)){break e}QC(p+16|0,e<<1);break e}if(!(D|I)){break d}d=I?d:d+28|0}d=H[d+24>>2];if(!(d&1)){continue}break}o=L[f>>2]}D=d>>>1&15;if(!D){break d}d=H[c>>2]+(d>>>3&536870908)|0;I=D;while(1){_=H[d>>2];f:{if(D>>>0>=2){S=N(_,24)+b|0;l=L[S>>2];n=L[S+12>>2];k=O(l+n);n=O(X+O(n-l));if(!(O(k+n)>=w)|!(O(k-n)<=Q)){break f}j=L[S+16>>2];m=L[S+4>>2];l=O(W+O(j-m));j=O(m+j);q=O(z-j);x=O(A-k);k=O(O(u*q)-O(t*x));m=O(-k);if(!(O(j-l)<=P)|(!(O(O(E*n)+O(G*l))>=(k>m?k:m))|!(O(j+l)>=v))){break f}j=L[S+20>>2];m=L[S+8>>2];k=O(V+O(j-m));j=O(m+j);r=O(y-j);m=O(O(t*r)-O(s*q));q=O(-m);if(!(O(j-k)<=M)|(!(O(O(C*l)+O(E*k))>=(m>q?m:q))|!(O(j+k)>=i))){break f}l=O(O(s*x)-O(u*r));j=O(-l);if(!(O(O(C*n)+O(G*k))>=(l>j?l:j))){break f}}if(!(Ra[H[H[h>>2]>>2]](h,p+12|0,(_<<3)+a|0)|0)){break c}l=L[p+12>>2];if(!(l>2]=l;i=O(y+O(s*l));M=iv?z:v;w=O(A+O(u*l));Q=A>w?A:w;i=i>y?y:i;v=z>2]+(e<<2)>>2];continue}break}d=0}a=H[p+1052>>2];g:{if((a|0)<0|!(a&2147483647)){break g}a=H[p+1044>>2];if((a|0)==(p+16|0)|!a){break g}b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,a)}Oa=p+1056|0;return d}function mO(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;g=Oa-16|0;Oa=g;k=c;c=H[33808];d=Ra[H[H[c>>2]+20>>2]](c)|0?33480:55639;d=Ra[H[H[c+12>>2]+8>>2]](c+12|0,68,d,9345,1746)|0;c=d;H[c+12>>2]=0;H[c+16>>2]=0;i=b;H[c+8>>2]=b;j=a;H[c+4>>2]=a;H[c>>2]=0;H[c+52>>2]=0;H[c+56>>2]=0;H[c+20>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+32>>2]=0;H[c+36>>2]=0;H[c+40>>2]=0;H[c+44>>2]=0;H[c+48>>2]=-128;H[c+60>>2]=0;H[c+64>>2]=0;pF(c+12|0,16);if(!(H[c+44>>2]&2147483632)){a=H[33808];b=Ra[H[H[a>>2]+20>>2]](a)|0?50684:55639;a=Ra[H[H[a+12>>2]+8>>2]](a+12|0,64,b,13582,553)|0;b=H[d+40>>2];if((b|0)>0){c=a+(b<<2)|0;e=H[d+36>>2];b=a;while(1){H[b>>2]=H[e>>2];e=e+4|0;b=b+4|0;if(c>>>0>b>>>0){continue}break}}a:{if(H[d+44>>2]<0){break a}b=H[d+36>>2];if(!b){break a}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}H[d+44>>2]=16;H[d+36>>2]=a}if(!(H[d+32>>2]&2147483632)){a=H[33808];b=Ra[H[H[a>>2]+20>>2]](a)|0?50570:55639;a=Ra[H[H[a+12>>2]+8>>2]](a+12|0,64,b,13582,553)|0;b=H[d+28>>2];if((b|0)>0){e=a+(b<<2)|0;b=H[d+24>>2];c=a;while(1){H[c>>2]=H[b>>2];b=b+4|0;c=c+4|0;if(e>>>0>c>>>0){continue}break}}b:{if(H[d+32>>2]<0){break b}b=H[d+24>>2];if(!b){break b}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}H[d+32>>2]=16;H[d+24>>2]=a}a=H[d+4>>2];e=0;h=Oa-16|0;Oa=h;c:{if(!I[H[d+8>>2]+40|0]){f=H[a+2400>>2];a=H[f+288>>2];d:{if(a){break d}a=H[f+284>>2]+67|0;e:{if(!a){break e}b=H[33808];a=Ra[H[H[b+12>>2]+8>>2]](b+12|0,a,20591,15259,180)|0;if(!a){break e}e=a+67&-64;H[e-4>>2]=e-a}H[h+8>>2]=e;a=H[f+268>>2];f:{if(a>>>0>=(H[f+272>>2]&2147483647)>>>0){SO(f+4|0,h+8|0);break f}H[H[f+264>>2]+(a<<2)>>2]=e;H[f+268>>2]=a+1}b=H[f+288>>2];c=(N(H[f+276>>2],192)+e|0)-192|0;if(e>>>0>c>>>0){a=b;break d}while(1){a=c;H[a>>2]=b;b=a;c=a-192|0;if(e>>>0<=c>>>0){continue}break}}H[f+288>>2]=H[a>>2];H[f+280>>2]=H[f+280>>2]+1;H[a+96>>2]=0;G[a+92>>1]=1;H[a+80>>2]=0;H[a+84>>2]=0;H[a+20>>2]=0;H[a+24>>2]=1;H[a+16>>2]=d;H[a+88>>2]=0;H[a>>2]=112252;S6(a+100|0,0,84);break c}f=H[a+2404>>2];a=H[f+288>>2];g:{if(a){break g}a=H[f+284>>2]+67|0;h:{if(!a){break h}b=H[33808];a=Ra[H[H[b+12>>2]+8>>2]](b+12|0,a,20591,15259,180)|0;if(!a){break h}e=a+67&-64;H[e-4>>2]=e-a}H[h+12>>2]=e;a=H[f+268>>2];i:{if(a>>>0>=(H[f+272>>2]&2147483647)>>>0){SO(f+4|0,h+12|0);break i}H[H[f+264>>2]+(a<<2)>>2]=e;H[f+268>>2]=a+1}b=H[f+288>>2];c=(N(H[f+276>>2],704)+e|0)-704|0;if(e>>>0>c>>>0){a=b;break g}while(1){a=c;H[a>>2]=b;b=a;c=a-704|0;if(e>>>0<=c>>>0){continue}break}}H[f+288>>2]=H[a>>2];H[f+280>>2]=H[f+280>>2]+1;H[a+96>>2]=0;G[a+92>>1]=1;H[a+80>>2]=0;H[a+84>>2]=0;H[a+20>>2]=0;H[a+24>>2]=0;H[a+16>>2]=d;H[a+88>>2]=0;H[a>>2]=112672;S6(a+144|0,0,300);H[a+460>>2]=0;H[a+464>>2]=0;H[a+452>>2]=0;H[a+456>>2]=0;F[a+488|0]=1;H[a+468>>2]=-1;H[a+472>>2]=0;H[a+112>>2]=0;H[a+116>>2]=0;H[a+120>>2]=0;H[a+124>>2]=0;H[a+128>>2]=0;H[a+132>>2]=0;H[a+136>>2]=0;H[a+140>>2]=0;H[a+496>>2]=0;H[a+500>>2]=0;H[a+504>>2]=0;H[a+508>>2]=0;H[a+512>>2]=0;H[a+516>>2]=0;H[a+640>>2]=0;H[a+644>>2]=0;F[a+645|0]=0;F[a+646|0]=0;F[a+647|0]=0;F[a+648|0]=0;F[a+649|0]=0;F[a+650|0]=0;F[a+651|0]=0;F[a+652|0]=0;H[a+656>>2]=0;H[a+660>>2]=0;H[a+664>>2]=0;H[a+668>>2]=0}Oa=h+16|0;H[d>>2]=a;c=H[j+1e3>>2];b=H[c+4>>2];j:{if(b){e=b-1|0;b=H[H[c>>2]+(e<<2)>>2];H[c+4>>2]=e;break j}b=H[c+12>>2];H[c+12>>2]=b+1}b=b<<7;AE(c+168|0,a,b);AE(c+640|0,a,b);H[d+48>>2]=b;a=H[d>>2];k:{if(!a){o5(H[33808],32,7857,71,57302,0);break k}F[a+93|0]=1;qF(d,H[k>>2],0,0);H[H[d+8>>2]>>2]=d;b=H[H[d+4>>2]+1004>>2];a=H[d>>2];H[a+28>>2]=0;H[a+32>>2]=0;H[a+20>>2]=b;H[a+36>>2]=0;H[a+40>>2]=0;H[a+44>>2]=0;H[a+48>>2]=0;H[a+52>>2]=0;H[a+56>>2]=0;b=a- -64|0;H[b>>2]=0;H[b+4>>2]=0;H[a+60>>2]=i+4;H[a+72>>2]=0;H[a+76>>2]=0}a=d;l:{if(!H[d>>2]){tF(a);a=H[33808];Ra[H[H[a+12>>2]+12>>2]](a+12|0,d);break l}H[g+8>>2]=i;a=rg(j+1200|0,g+8|0,g+15|0);if(I[g+15|0]){break l}H[a>>2]=H[g+8>>2]}Oa=g+16|0}function Ew(a){a=a|0;var b=O(0),c=O(0),d=O(0),e=O(0),f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=0,n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=0,t=0,u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=0,E=0,F=0,G=0,J=0,K=0,M=0,P=0,Q=0,R=O(0),S=O(0),T=O(0);tw(a,a+112|0,0);t=1;D=H[a+448>>2];if(D>>>0>1){E=H[a+372>>2];K=H[a+432>>2];M=H[a+456>>2];P=H[a+228>>2];Q=H[a+180>>2];F=H[a+444>>2];while(1){G=(H[(N(t,80)+M|0)+72>>2]<<2)+Q|0;a=(t<<4)+K|0;e=L[a+12>>2];f=L[a+8>>2];i=L[a+4>>2];h=L[a>>2];J=t<<5;s=J+F|0;m=H[s+20>>2];k=L[m+16>>2];a=H[s+16>>2];l=L[m+24>>2];p=L[m+20>>2];z=L[m+52>>2];A=L[m+48>>2];B=L[m+44>>2];s=H[((H[s+24>>2]<<5)+F|0)+16>>2];R=L[s+16>>2];q=L[s+12>>2];r=L[s+8>>2];u=L[s+4>>2];v=L[s>>2];S=L[s+24>>2];T=L[s+20>>2];a:{b:{c:{d:{switch(I[m+270|0]){default:k=O(-d);l=O(-c);e=O(-g);break a;case 0:b=O(l+l);d=O(k+k);c=O(p+p);g=O(O(f*b)+O(O(h*d)+O(c*i)));j=O(O(e*e)+O(-.5));k=L[G>>2];m=N(t,76)+E|0;n=O(O(O(O(f*g)+O(O(b*j)+O(e*O(O(h*c)-O(d*i)))))-z)+O(k*L[m+20>>2]));o=O(O(O(O(i*g)+O(O(c*j)+O(e*O(O(f*d)-O(b*h)))))-A)+O(k*L[m+16>>2]));b=O(O(O(O(h*g)+O(O(d*j)+O(e*O(O(i*b)-O(c*f)))))-B)+O(k*L[m+12>>2]));break c;case 1:m=N(t,76)+E|0;b=L[m+8>>2];g=O(L[G>>2]*O(-.5));c=Z5(g);b=O(b*c);d=O(c*L[m+4>>2]);c=O(c*L[m>>2]);g=T5(g);if(g>2];g=L[a+8>>2];j=L[a+4>>2];C=L[a>>2];m=P+J|0;b=L[m+8>>2];n=L[m>>2];w=L[m+4>>2];d=O(O(b*b)+O(O(n*n)+O(w*w)));e:{if(d>2]=e;i=O(h*f);L[a+8>>2]=i;h=O(l*f);L[a+4>>2]=h;f=O(k*f);L[a>>2]=f;k=O(n+n);l=O(j+j);p=O(o+o);q=O(O(i*k)+O(O(f*l)+O(p*h)));r=O(O(e*e)+O(-.5));L[a+24>>2]=S+O(O(i*q)+O(O(k*r)+O(e*O(O(f*p)-O(l*h)))));L[a+20>>2]=T+O(O(h*q)+O(O(p*r)+O(e*O(O(i*l)-O(k*f)))));L[a+16>>2]=R+O(O(f*q)+O(O(l*r)+O(e*O(O(h*k)-O(p*i)))));t=t+1|0;if((D|0)!=(t|0)){continue}break}}}function tw(a,b,c){var d=0,e=0,f=O(0),g=O(0),h=O(0),i=O(0),j=0,k=O(0),l=O(0),m=O(0),n=O(0),o=0,p=O(0),q=O(0),r=O(0),s=0,t=0,u=O(0),v=0,w=O(0),x=O(0),y=O(0),z=O(0),A=0,B=O(0),C=O(0),D=0,E=0,G=O(0),J=O(0),K=0,M=0,P=0,Q=0,R=O(0),S=O(0),T=O(0);if(c?1:I[a+93|0]){o=1;E=H[b+336>>2];if(E>>>0>1){s=H[b+348>>2];P=H[b+344>>2];Q=H[b+332>>2];while(1){t=N(o,80)+P|0;d=H[((o<<5)+Q|0)+20>>2];Kv(t,d,c);e=H[a+432>>2];j=I[d+269|0];if(c?1:j&2){j=H[b+260>>2];e=e+(o<<4)|0;f=L[d+36>>2];h=L[d+8>>2];m=L[d+32>>2];g=L[d+4>>2];l=L[d+40>>2];p=L[d+12>>2];q=L[d>>2];r=L[d+28>>2];i=O(O(f*h)+O(O(m*g)+O(O(l*p)+O(q*r))));n=i;u=O(i*i);i=O(O(q*m)+O(O(O(p*f)-O(l*h))-O(r*g)));k=O(O(g*f)+O(O(O(p*r)-O(l*q))-O(m*h)));h=O(O(h*r)+O(O(O(p*m)-O(l*g))-O(f*q)));f=O(O(1)/O(W(O(u+O(O(i*i)+O(O(k*k)+O(h*h)))))));L[e+12>>2]=n*f;L[e+8>>2]=i*f;L[e+4>>2]=h*f;L[e>>2]=k*f;e=j+N(o,76)|0;f=O(0);h=O(0);i=O(0);k=O(0);m=O(0);A=0;u=L[d+52>>2];z=O(-u);B=L[d+48>>2];G=O(-B);C=L[d+44>>2];J=O(-C);a:{b:{switch(I[d+270|0]){case 0:h=L[d+36>>2];f=L[t+20>>2];m=O(f+f);g=L[d+28>>2];f=L[t+12>>2];l=O(f+f);f=L[t+16>>2];p=O(f+f);q=L[d+32>>2];r=O(O(h*m)+O(O(g*l)+O(p*q)));f=L[d+40>>2];n=O(O(f*f)+O(-.5));u=O(O(h*r)+O(O(m*n)+O(f*O(O(g*p)-O(l*q)))));z=O(O(g*r)+O(O(l*n)+O(f*O(O(q*m)-O(p*h)))));f=O(O(q*r)+O(O(p*n)+O(f*O(O(h*l)-O(m*g)))));h=O(O(u*u)+O(O(z*z)+O(f*f)));if(h>O(0)){h=O(O(1)/O(W(h)));k=O(u*h);i=O(f*h);n=O(z*h)}else{n=O(0)}L[e+12>>2]=n;H[e+8>>2]=0;H[e>>2]=0;H[e+4>>2]=0;H[e+72>>2]=1;L[e+20>>2]=k;L[e+16>>2]=i;break a;case 1:l=L[d+36>>2];g=L[t+8>>2];p=O(g+g);q=L[d+28>>2];g=L[t>>2];r=O(g+g);g=L[t+4>>2];i=O(g+g);k=L[d+32>>2];n=O(O(l*p)+O(O(q*r)+O(i*k)));g=L[d+40>>2];w=O(O(g*g)+O(-.5));x=O(O(l*n)+O(O(p*w)+O(g*O(O(q*i)-O(r*k)))));y=O(O(q*n)+O(O(r*w)+O(g*O(O(k*p)-O(i*l)))));g=O(O(k*n)+O(O(i*w)+O(g*O(O(l*r)-O(p*q)))));l=O(O(x*x)+O(O(y*y)+O(g*g)));if(l>O(0)){f=O(O(1)/O(W(l)));m=O(x*f);h=O(g*f);f=O(y*f)}L[e+8>>2]=m;L[e+4>>2]=h;L[e>>2]=f;H[e+72>>2]=1;L[e+20>>2]=O(f*G)+O(C*h);L[e+16>>2]=O(m*J)+O(u*f);L[e+12>>2]=O(h*z)+O(B*m);break a;case 2:D=I[t+76|0];H[e+72>>2]=D;if(!D){break a}m=L[d+40>>2];l=O(O(m*m)+O(-.5));p=L[d+32>>2];R=O(-p);q=L[d+36>>2];S=O(-q);r=L[d+28>>2];T=O(-r);while(1){g=O(0);f=O(0);h=O(0);K=N(A,24);j=K+t|0;i=L[j+8>>2];i=O(i+i);k=L[j>>2];k=O(k+k);n=L[j+4>>2];n=O(n+n);w=O(O(q*i)+O(O(r*k)+O(n*p)));x=O(O(q*w)+O(O(i*l)+O(m*O(O(r*n)+O(k*R)))));y=O(O(r*w)+O(O(k*l)+O(m*O(O(p*i)+O(n*S)))));i=O(O(p*w)+O(O(n*l)+O(m*O(O(q*k)+O(i*T)))));k=O(O(x*x)+O(O(y*y)+O(i*i)));if(k>O(0)){g=O(O(1)/O(W(k)));h=O(x*g);f=O(i*g);g=O(y*g)}j=e+K|0;L[j+12>>2]=O(f*z)+O(B*h);L[j+8>>2]=h;L[j+4>>2]=f;L[j>>2]=g;L[j+20>>2]=O(g*G)+O(C*f);L[j+16>>2]=O(h*J)+O(u*g);A=A+1|0;if((D|0)!=(A|0)){continue}break};break a;case 3:break b;default:break a}}H[e+72>>2]=0}j=I[d+269|0]&-3;F[d+269|0]=j}if(j&8){if(I[d+258|0]){L[N(o,96)+s>>2]=L[d+224>>2];e=1}else{e=0}if(I[d+259|0]){L[(N(o,96)+s|0)+(e<<2)>>2]=L[d+228>>2];e=e+1|0}if(I[d+260|0]){L[(N(o,96)+s|0)+(e<<2)>>2]=L[d+232>>2];e=e+1|0}if(I[d+261|0]){L[(N(o,96)+s|0)+(e<<2)>>2]=L[d+236>>2];e=e+1|0}if(I[d+262|0]){L[(N(o,96)+s|0)+(e<<2)>>2]=L[d+240>>2];e=e+1|0}if(I[d+263|0]){L[(N(o,96)+s|0)+(e<<2)>>2]=L[d+244>>2]}j=j&247;F[d+269|0]=j}if(j&4){if(I[d+258|0]){L[(N(o,96)+s|0)+12>>2]=L[d+200>>2];e=1}else{e=0}if(I[d+259|0]){L[((N(o,96)+s|0)+(e<<2)|0)+12>>2]=L[d+204>>2];e=e+1|0}if(I[d+260|0]){L[((N(o,96)+s|0)+(e<<2)|0)+12>>2]=L[d+208>>2];e=e+1|0}if(I[d+261|0]){L[((N(o,96)+s|0)+(e<<2)|0)+12>>2]=L[d+212>>2];e=e+1|0}if(I[d+262|0]){L[((N(o,96)+s|0)+(e<<2)|0)+12>>2]=L[d+216>>2];e=e+1|0}if(I[d+263|0]){L[((N(o,96)+s|0)+(e<<2)|0)+12>>2]=L[d+220>>2]}F[d+269|0]=j&251}e=I[d+270|0];H[t+72>>2]=v&255;F[d+268|0]=v;M=(e|0)==2|M;v=I[t+76|0]+v|0;o=o+1|0;if((E|0)!=(o|0)){continue}break}v=v&255}if(H[a+468>>2]!=(v|0)){Fv(a+112|0,v);H[a+468>>2]=v}F[a+93|0]=0;F[a+652|0]=M&1}}function jC(a,b,c,d,e,f,g,h){var i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=0,q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),G=O(0),I=O(0),J=0,K=O(0),M=O(0),P=O(0),Q=O(0),R=O(0),S=O(0),T=0,U=O(0),V=O(0),W=O(0),X=O(0),Y=O(0);p=Oa-1056|0;Oa=p;i=L[e+8>>2];s=O(i+i);C=O(-s);J=s>C;i=L[e+4>>2];t=O(i+i);D=O(-t);T=t>D;i=L[e>>2];u=O(i+i);E=O(-u);e=u>E;K=L[g+8>>2];M=L[g+4>>2];P=L[g>>2];i=L[d+8>>2];y=O(i+i);i=L[d+4>>2];z=O(i+i);i=L[d>>2];A=O(i+i);i=L[f>>2];a:{if(i>=O(3.4028234663852886e38)){v=t==O(0)?z:t>=O(0)?O(3.4028234663852886e38):O(-3.4028234663852886e38);w=u==O(0)?A:u>=O(0)?O(3.4028234663852886e38):O(-3.4028234663852886e38);i=y;if(s==O(0)){break a}i=s>=O(0)?O(3.4028234663852886e38):O(-3.4028234663852886e38);break a}v=O(z+O(t*i));w=O(A+O(u*i));i=O(y+O(s*i))}C=J?s:C;D=T?t:D;E=e?u:E;U=O(K+K);V=O(M+M);W=O(P+P);F[p+1040|0]=1;H[p+1048>>2]=256;H[p+1052>>2]=256;H[p+1044>>2]=p+16;d=H[c+588>>2];H[p+16>>2]=d;K=iv?z:v;P=A>w?A:w;i=i>y?y:i;v=z>2];n=L[d>>2];k=O(l+n);n=O(W+O(l-n));d:{if(!(O(k+n)>=w)|!(O(k-n)<=P)){break d}o=L[d+20>>2];j=L[d+4>>2];l=O(V+O(o-j));o=O(o+j);m=O(z-o);q=O(A-k);k=O(O(u*m)-O(t*q));j=O(-k);if(!(O(o-l)<=M)|(!(O(O(D*n)+O(E*l))>=(k>j?k:j))|!(O(o+l)>=v))){break d}o=L[d+24>>2];j=L[d+8>>2];k=O(U+O(o-j));o=O(o+j);x=O(y-o);j=O(O(t*x)-O(s*m));m=O(-j);if(!(O(o-k)<=K)|(!(O(O(C*l)+O(D*k))>=(j>m?j:m))|!(O(o+k)>=i))){break d}l=O(O(s*q)-O(u*x));o=O(-l);if(!(O(O(C*n)+O(E*k))>=(l>o?l:o))){break d}o=L[f>>2];L[p+12>>2]=o;if(H[d+40>>2]){while(1){c=H[d+36>>2];m=L[c- -64>>2];R=L[c+48>>2];l=O(m+R);n=L[c+68>>2];o=L[c+52>>2];k=O(V+O(n-o));o=O(n+o);r=O(z-o);G=O(A-l);q=O(O(u*r)-O(t*G));x=O(-q);j=L[c+72>>2];I=L[c+56>>2];n=O(U+O(j-I));j=O(j+I);B=O(y-j);r=O(O(t*B)-O(s*r));I=O(-r);G=O(O(s*G)-O(u*B));B=O(-G);m=O(W+O(m-R));d=O(l+m)>=w&O(l-m)<=P&O(O(D*m)+O(E*k))>=(q>x?q:x)&O(o+k)>=v&O(o-k)<=M&O(O(C*k)+O(D*n))>=(r>I?r:I)&O(j+n)>=i&O(j-n)<=K&O(O(C*m)+O(E*n))>=(B>2];m=L[c+4>>2];k=O(V+O(n-m));m=O(n+m);r=O(z-m);X=L[c+16>>2];Y=L[c>>2];q=O(X+Y);Q=O(A-q);I=O(O(u*r)-O(t*Q));G=O(-I);x=L[c+24>>2];B=L[c+8>>2];n=O(U+O(x-B));x=O(x+B);S=O(y-x);B=O(O(t*S)-O(s*r));R=O(-B);Q=O(O(s*Q)-O(u*S));S=O(-Q);r=O(W+O(X-Y));g=O(q+r)>=w&O(q-r)<=P&O(O(D*r)+O(E*k))>=(G=v&O(m-k)<=M&O(O(C*k)+O(D*n))>=(B>R?B:R)&O(x+n)>=i&O(x-n)<=K&O(O(C*r)+O(E*n))>=(Q>S?Q:S);e:{if(!(!g|!d)){d=O(O(O(j-x)*s)+O(O(O(l-q)*u)+O(t*O(o-m))))>O(0);H[H[p+1044>>2]+(e<<2)>>2]=c+N(d,48);d=c+N(!d,48)|0;e=e+1|0;if((e|0)!=(H[p+1052>>2]&2147483647)){break e}iC(p+16|0,e<<1);break e}if(!(d|g)){break d}d=g?c:c+48|0}if(H[d+40>>2]){continue}break}o=L[f>>2]}c=H[d+36>>2];g=H[c>>2];if(!g){break d}d=c+4|0;c=g;while(1){T=H[d>>2];f:{if(g>>>0>=2){J=N(T,24)+b|0;l=L[J>>2];n=L[J+12>>2];k=O(l+n);n=O(W+O(n-l));if(!(O(k+n)>=w)|!(O(k-n)<=P)){break f}j=L[J+16>>2];m=L[J+4>>2];l=O(V+O(j-m));j=O(m+j);q=O(z-j);x=O(A-k);k=O(O(u*q)-O(t*x));m=O(-k);if(!(O(j-l)<=M)|(!(O(O(D*n)+O(E*l))>=(k>m?k:m))|!(O(j+l)>=v))){break f}j=L[J+20>>2];m=L[J+8>>2];k=O(U+O(j-m));j=O(m+j);r=O(y-j);m=O(O(t*r)-O(s*q));q=O(-m);if(!(O(j-k)<=K)|(!(O(O(C*l)+O(D*k))>=(m>q?m:q))|!(O(j+k)>=i))){break f}l=O(O(s*x)-O(u*r));j=O(-l);if(!(O(O(C*n)+O(E*k))>=(l>j?l:j))){break f}}if(!(Ra[H[H[h>>2]>>2]](h,p+12|0,(T<<3)+a|0)|0)){break c}l=L[p+12>>2];if(!(l>2]=l;i=O(y+O(s*l));K=iv?z:v;w=O(A+O(u*l));P=A>w?A:w;i=i>y?y:i;v=z>2]+(e<<2)>>2];continue}break}c=0}a=H[p+1052>>2];g:{if((a|0)<0|!(a&2147483647)){break g}a=H[p+1044>>2];if((a|0)==(p+16|0)|!a){break g}b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,a)}Oa=p+1056|0;return c}function _u(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=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=0,s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),F=O(0),G=O(0),K=O(0),M=O(0),P=O(0),Q=O(0),R=O(0),S=O(0),T=O(0),U=O(0),V=O(0),W=O(0),X=O(0),Y=O(0),Z=O(0),_=O(0),$=O(0),aa=O(0),ba=O(0),ca=O(0),da=O(0);d=Oa-160|0;Oa=d;r=H[a+100>>2];a:{if(I[(r+c|0)- -64|0]==(b|0)){v=L[e+24>>2];a=((J[r+18>>1]+r|0)+144|0)+N(c,160)|0;w=L[a+24>>2];x=L[a+56>>2];s=L[a+88>>2];t=L[a+16>>2];A=L[a+48>>2];B=L[a+80>>2];c=(J[r+6>>1]+r|0)+(c<<5)|0;o=L[c+4>>2];C=L[e+20>>2];D=L[a+20>>2];E=L[a+52>>2];F=L[a+84>>2];p=L[c+8>>2];q=L[c>>2];G=L[a+8>>2];K=L[a+40>>2];M=L[a+72>>2];P=L[a>>2];Q=L[a+32>>2];R=L[a+64>>2];S=L[e+16>>2];T=L[e+8>>2];U=L[e>>2];k=L[f+8>>2];i=L[c+20>>2];l=L[f+4>>2];n=L[c+24>>2];y=L[f+16>>2];m=O(O(O(k*i)-O(l*n))-y);V=O(-l);j=L[f>>2];u=L[c+16>>2];z=L[f+20>>2];n=O(O(O(j*n)-O(k*u))-z);i=O(O(l*u)-O(j*i));u=L[f+24>>2];l=O(i-u);i=O(V-O(O(L[a+4>>2]*m)+O(O(n*L[a+36>>2])+O(l*L[a+68>>2]))));L[d+116>>2]=L[e+4>>2]-i;j=O(O(-j)-O(O(P*m)+O(O(n*Q)+O(l*R))));L[d+112>>2]=U-j;H[d+124>>2]=0;k=O(O(-k)-O(O(m*G)+O(O(n*K)+O(l*M))));L[d+120>>2]=T-k;L[d+100>>2]=C-O(O(O(-z)-O(O(m*D)+O(O(n*E)+O(l*F))))+O(O(p*j)-O(k*q)));L[d+96>>2]=S-O(O(O(-y)-O(O(m*t)+O(O(n*A)+O(l*B))))+O(O(o*k)-O(i*p)));H[d+108>>2]=0;L[d+104>>2]=v-O(O(O(-u)-O(O(m*w)+O(O(n*x)+O(l*s))))+O(O(q*i)-O(j*o)));e=H[d+116>>2];H[d+16>>2]=H[d+112>>2];H[d+20>>2]=e;e=H[d+124>>2];H[d+24>>2]=H[d+120>>2];H[d+28>>2]=e;e=H[d+100>>2];H[d>>2]=H[d+96>>2];H[d+4>>2]=e;e=H[d+108>>2];H[d+8>>2]=H[d+104>>2];H[d+12>>2]=e;zv(d+128|0,r,b,d+16|0,d);b=H[d+132>>2];H[g>>2]=H[d+128>>2];H[g+4>>2]=b;b=H[d+140>>2];H[g+8>>2]=H[d+136>>2];H[g+12>>2]=b;b=H[d+148>>2];H[g+16>>2]=H[d+144>>2];H[g+20>>2]=b;b=H[d+156>>2];H[g+24>>2]=H[d+152>>2];H[g+28>>2]=b;v=L[c+24>>2];w=L[c+16>>2];x=L[c+20>>2];A=L[a+128>>2];B=L[a+96>>2];C=L[a+112>>2];D=L[a+8>>2];E=L[a+4>>2];F=L[a>>2];G=L[a+16>>2];K=L[a+20>>2];M=L[a+24>>2];t=L[a+132>>2];P=L[a+100>>2];Q=L[a+116>>2];R=L[a+40>>2];S=L[a+36>>2];T=L[a+32>>2];U=L[a+48>>2];y=L[a+52>>2];u=L[a+56>>2];z=L[a+136>>2];W=L[a+104>>2];X=L[a+120>>2];k=L[a+72>>2];Y=L[g+8>>2];Z=L[a+68>>2];i=L[c>>2];_=L[a+64>>2];j=L[c+4>>2];s=L[c+8>>2];$=L[a+80>>2];aa=L[a+84>>2];o=L[g+20>>2];ba=L[a+88>>2];p=L[g+24>>2];ca=L[g+4>>2];da=L[g>>2];q=L[g+16>>2];H[h+28>>2]=0;H[h+12>>2]=0;V=k;k=O(Y-O(O(i*o)-O(q*j)));j=O(da-O(O(j*p)-O(o*s)));i=O(ca-O(O(s*q)-O(p*i)));s=O(O(O(O(V*k)+O(O(_*j)+O(Z*i)))+O(O(ba*p)+O(O($*q)+O(o*aa))))+O(O(z*l)+O(O(W*m)+O(n*X))));L[h+24>>2]=p-s;t=O(O(O(O(R*k)+O(O(T*j)+O(i*S)))+O(O(u*p)+O(O(U*q)+O(o*y))))+O(O(t*l)+O(O(P*m)+O(n*Q))));L[h+20>>2]=o-t;m=O(O(O(O(D*k)+O(O(F*j)+O(E*i)))+O(O(M*p)+O(O(G*q)+O(o*K))))+O(O(A*l)+O(O(B*m)+O(n*C))));L[h+16>>2]=q-m;L[h+8>>2]=k-O(O(w*t)-O(m*x));L[h+4>>2]=i-O(O(v*m)-O(s*w));L[h>>2]=j-O(O(x*s)-O(t*v));break a}a=H[e+4>>2];H[d+80>>2]=H[e>>2];H[d+84>>2]=a;a=H[e+12>>2];H[d+88>>2]=H[e+8>>2];H[d+92>>2]=a;a=H[e+20>>2];H[d+64>>2]=H[e+16>>2];H[d+68>>2]=a;a=H[e+28>>2];H[d+72>>2]=H[e+24>>2];H[d+76>>2]=a;a=d+128|0;zv(a,r,b,d+80|0,d- -64|0);b=H[d+140>>2];H[g+8>>2]=H[d+136>>2];H[g+12>>2]=b;b=H[d+132>>2];H[g>>2]=H[d+128>>2];H[g+4>>2]=b;b=H[d+156>>2];H[g+24>>2]=H[d+152>>2];H[g+28>>2]=b;b=H[d+148>>2];H[g+16>>2]=H[d+144>>2];H[g+20>>2]=b;b=H[f+12>>2];H[d+56>>2]=H[f+8>>2];H[d+60>>2]=b;b=H[f+4>>2];H[d+48>>2]=H[f>>2];H[d+52>>2]=b;b=H[f+28>>2];H[d+40>>2]=H[f+24>>2];H[d+44>>2]=b;b=H[f+20>>2];H[d+32>>2]=H[f+16>>2];H[d+36>>2]=b;zv(a,r,c,d+48|0,d+32|0);a=H[d+132>>2];H[h>>2]=H[d+128>>2];H[h+4>>2]=a;a=H[d+140>>2];H[h+8>>2]=H[d+136>>2];H[h+12>>2]=a;a=H[d+148>>2];H[h+16>>2]=H[d+144>>2];H[h+20>>2]=a;a=H[d+156>>2];H[h+24>>2]=H[d+152>>2];H[h+28>>2]=a}Oa=d+160|0}function q0(a,b,c,d){var e=0,f=O(0),g=0,h=O(0),i=O(0),j=O(0),k=0,l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=0,s=0,t=O(0),u=O(0),v=0,w=O(0),x=0,y=O(0),z=O(0),A=0,B=0,C=O(0);e=Oa-160|0;Oa=e;f=L[b>>2];i=L[b+4>>2];j=L[b+8>>2];H[e+156>>2]=0;L[e+152>>2]=j;L[e+148>>2]=i;L[e+144>>2]=f;m=L[b+16>>2];l=L[b+20>>2];h=L[b+12>>2];H[e+140>>2]=0;L[e+136>>2]=l;L[e+132>>2]=m;L[e+128>>2]=h;n=L[b+28>>2];o=L[b+32>>2];w=L[b+24>>2];H[e+124>>2]=0;L[e+120>>2]=o;L[e+116>>2]=n;L[e+112>>2]=w;H[e+108>>2]=0;p=O(l-j);q=O(w-f);y=O(o-j);h=O(h-f);l=O(O(p*q)-O(y*h));t=l;u=h;h=O(n-i);z=q;q=O(m-i);m=O(O(u*h)-O(z*q));h=O(O(q*y)-O(h*p));l=O(O(1)/O(W(O(O(m*m)+O(O(h*h)+O(l*l))))));p=O(t*l);L[e+100>>2]=p;h=O(h*l);L[e+96>>2]=h;m=O(m*l);L[e+104>>2]=m;b=H[a+3664>>2];a:{if(O(O(O(L[b+8>>2]*m)+O(O(L[b>>2]*h)+O(p*L[b+4>>2])))-O(O(j*m)+O(O(f*h)+O(i*p))))>2];if(!(j>2])){break a}k=a+3648|0;b:{c:{d:{e:{i=L[e+64>>2];if(i>2];if(fO(.9999989867210388))){break e}if(!(d&48)){break c}break d}f=L[e+48>>2];if(i>O(.9999989867210388)){if(!(f=O(.9998999834060669))){break c}if(d&16){break d}break c}if(!(d&32)){break c}}if(j==O(0)){b=H[e+108>>2];H[e+24>>2]=H[e+104>>2];H[e+28>>2]=b;b=H[e+100>>2];H[e+16>>2]=H[e+96>>2];H[e+20>>2]=b;break b}b=H[a+3664>>2];j=L[b+56>>2];h=L[b+72>>2];m=L[b+52>>2];p=L[b+68>>2];l=L[b+48>>2];q=L[b+64>>2];H[e+28>>2]=0;t=j;u=O(h-j);j=L[e+80>>2];h=O(O(1)-O(i+f));o=O(O(t+O(u*j))-O(O(h*L[e+152>>2])+O(O(o*f)+O(i*L[e+136>>2]))));t=o;u=O(o*o);o=O(O(l+O(O(q-l)*j))-O(O(L[e+144>>2]*h)+O(O(w*f)+O(i*L[e+128>>2]))));f=O(O(m+O(O(p-m)*j))-O(O(L[e+148>>2]*h)+O(O(n*f)+O(i*L[e+132>>2]))));i=O(O(1)/O(W(O(u+O(O(o*o)+O(f*f))))));L[e+24>>2]=t*i;L[e+20>>2]=f*i;L[e+16>>2]=o*i;break b}b=H[e+108>>2];H[e+24>>2]=H[e+104>>2];H[e+28>>2]=b;b=H[e+100>>2];H[e+16>>2]=H[e+96>>2];H[e+20>>2]=b}v=H[a+2324>>2];d=e+144|0;g=e+128|0;A=e+112|0;b=e+16|0;r=H[a+3664>>2];s=r+48|0;x=r- -64|0;r=a+2324|0;o0(d,g,A,e+96|0,b,c,s,x,a+3632|0,H[a+2320>>2],r);s=H[a+3664>>2];x=s+48|0;s=s- -64|0;B=H[a+2320>>2];m0(x,s,k,b,c,d,g,B,r);m0(x,s,k,b,c,g,A,B,r);m0(x,s,k,b,c,d,A,B,r);g=H[a+2324>>2];if((v|0)==(g|0)){break a}H[e>>2]=2139095039;if(g>>>0>v>>>0){c=v;while(1){b=H[a+2320>>2]+(c<<6)|0;n=L[b+44>>2];f=L[b+8>>2];i=L[b>>2];j=L[b+4>>2];o=L[a+2304>>2];w=L[a+2288>>2];m=L[a+2256>>2];l=L[a+2272>>2];h=L[a+2308>>2];p=L[a+2292>>2];q=L[a+2260>>2];y=L[a+2276>>2];t=L[a+2312>>2];u=L[a+2296>>2];z=L[a+2264>>2];C=L[a+2280>>2];H[b+12>>2]=0;L[b+8>>2]=t+O(O(u*f)+O(O(z*i)+O(j*C)));L[b+4>>2]=h+O(O(p*f)+O(O(q*i)+O(j*y)));L[b>>2]=o+O(O(w*f)+O(O(m*i)+O(j*l)));f=L[e>>2];L[e>>2]=f>n?n:f;c=c+1|0;g=H[a+2324>>2];if(c>>>0>>0){continue}break}}if(g>>>0>v>>>0){b=v;while(1){c=b;f:{b=b+1|0;if(g>>>0<=b>>>0){break f}d=H[a+2320>>2];c=d+(c<<6)|0;f=L[c+16>>2];i=L[c+24>>2];j=L[c+20>>2];c=b;while(1){k=(c<<6)+d|0;n=O(L[k+24>>2]-i);h=O(n*n);n=O(L[k+16>>2]-f);l=O(n*n);n=O(L[k+20>>2]-j);if(L[a+2240>>2]>O(h+O(l+O(n*n)))){d=((g<<6)+d|0)+-64|0;g=H[d+4>>2];H[k>>2]=H[d>>2];H[k+4>>2]=g;H[k+48>>2]=H[d+48>>2];g=H[d+44>>2];H[k+40>>2]=H[d+40>>2];H[k+44>>2]=g;g=H[d+36>>2];H[k+32>>2]=H[d+32>>2];H[k+36>>2]=g;g=H[d+28>>2];H[k+24>>2]=H[d+24>>2];H[k+28>>2]=g;g=H[d+20>>2];H[k+16>>2]=H[d+16>>2];H[k+20>>2]=g;g=H[d+12>>2];H[k+8>>2]=H[d+8>>2];H[k+12>>2]=g;g=H[r>>2]-1|0;H[r>>2]=g;c=c-1|0}c=c+1|0;if(c>>>0>=g>>>0){break f}d=H[a+2320>>2];continue}}if(b>>>0>>0){continue}break}}h0(a,e+16|0,e,v);if(K[a+2324>>2]<=15){break a}e0(a,3,1)}Oa=e+160|0}function UJ(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,z=0,A=O(0),B=O(0),C=0,D=0,E=0,G=0,J=0,K=0,M=0,N=O(0),P=O(0),Q=0;h=Oa-128|0;Oa=h;l=H[e+40>>2];a:{b:{c:{if(!f){break c}d:{e:{if(l){o=H[c>>2];t=H[e+60>>2];u=H[e+56>>2];f=H[e+68>>2];if(f){VJ(b,o,l,f,u,H[e+80>>2],t,H[e+84>>2],H[e+36>>2],H[e+64>>2])}M=H[e+36>>2];if(l>>>0>=5001){f=(l<<3)+240|0;k=H[a>>2];f:{if(k){k=Gw(k,f,1);break f}if(!f){f=l<<4;k=0;break e}k=H[33808]+12|0;k=Ra[H[H[k>>2]+8>>2]](k,f,20591,10647,373)|0}f=l<<4;j=H[a>>2];if(!j){break e}s=Gw(j,f,1);break d}WJ(b,l,u,t,M,o);break c}if(g){break b}break a}s=0;if(!f){break d}j=H[33808]+12|0;s=Ra[H[H[j>>2]+8>>2]](j,f,20591,10647,373)|0}A=L[e+16>>2];N=L[e+28>>2];B=L[e+20>>2];P=L[e+32>>2];j=0;H[h+112>>2]=0;H[h+104>>2]=0;H[h+108>>2]=0;H[h+96>>2]=0;H[h+100>>2]=0;B=O(O(P+B)*O(.5));A=O(O(N+A)*O(.5));f=l<<2;g:{h:{p=H[a>>2];i:{j:{if(p){j=Gw(p,f,1);break j}if(!f){break i}j=H[33808]+12|0;j=Ra[H[H[j>>2]+8>>2]](j,f,20591,10647,373)|0}f=H[a>>2];if(f){break h}}f=H[33808]+12|0;p=Ra[H[H[f>>2]+8>>2]](f,l,20591,10647,373)|0;break g}p=Gw(f,l,1)}f=0;while(1){i=t+(f<<4)|0;i=I[((B>2])<<2|L[i>>2]>A|(B>L[i+12>>2])<<3|(A>L[i+8>>2])<<1)+79456|0];F[f+p|0]=i;i=(h+96|0)+(i<<2)|0;H[i>>2]=H[i>>2]+1;f=f+1|0;if((l|0)!=(f|0)){continue}break}f=H[h+96>>2];i=H[h+108>>2];q=H[h+104>>2];r=H[h+100>>2];H[h+64>>2]=k;x=((f<<3)+k|0)+48|0;H[h+68>>2]=x;H[h+32>>2]=s;C=(f<<4)+s|0;H[h+36>>2]=C;H[h>>2]=j;D=(f<<2)+j|0;H[h+4>>2]=D;E=(r<<4)+C|0;H[h+40>>2]=E;y=((r<<3)+x|0)+48|0;H[h+72>>2]=y;G=(r<<2)+D|0;H[h+8>>2]=G;J=(q<<4)+E|0;H[h+44>>2]=J;K=(q<<2)+G|0;H[h+12>>2]=K;r=(i<<4)+J|0;H[h+48>>2]=r;z=((q<<3)+y|0)+48|0;H[h+76>>2]=z;q=(i<<2)+K|0;H[h+16>>2]=q;i=((i<<3)+z|0)+48|0;H[h+80>>2]=i;f=0;H[h+112>>2]=0;H[h+104>>2]=0;H[h+108>>2]=0;H[h+96>>2]=0;H[h+100>>2]=0;while(1){m=I[f+p|0]<<2;v=m+(h+96|0)|0;n=H[v>>2];H[v>>2]=n+1;v=H[m+(h+32|0)>>2];w=H[m+(h- -64|0)>>2];H[H[h+m>>2]+(n<<2)>>2]=H[(f<<2)+M>>2];m=w+(n<<3)|0;w=u+(f<<3)|0;H[m>>2]=H[w>>2];H[m+4>>2]=H[w+4>>2];m=t+(f<<4)|0;w=H[m>>2];Q=H[m+4>>2];n=(n<<4)+v|0;v=H[m+12>>2];H[n+8>>2]=H[m+8>>2];H[n+12>>2]=v;H[n>>2]=w;H[n+4>>2]=Q;f=f+1|0;if((l|0)!=(f|0)){continue}break}f=H[a>>2];k:{if(f){Lw(f,p);break k}f=H[33808]+12|0;Ra[H[H[f>>2]+12>>2]](f,p)}f=(H[h+96>>2]<<3)+k|0;H[f>>2]=-1;H[f+40>>2]=-1;H[f+32>>2]=-1;H[f+24>>2]=-1;H[f+16>>2]=-1;H[f+8>>2]=-1;f=(H[h+100>>2]<<3)+x|0;H[f>>2]=-1;H[f+40>>2]=-1;H[f+32>>2]=-1;H[f+24>>2]=-1;H[f+16>>2]=-1;H[f+8>>2]=-1;f=(H[h+104>>2]<<3)+y|0;H[f>>2]=-1;H[f+40>>2]=-1;H[f+32>>2]=-1;H[f+24>>2]=-1;H[f+16>>2]=-1;H[f+8>>2]=-1;f=(H[h+108>>2]<<3)+z|0;H[f>>2]=-1;H[f+40>>2]=-1;H[f+32>>2]=-1;H[f+24>>2]=-1;H[f+16>>2]=-1;H[f+8>>2]=-1;f=i+(H[h+112>>2]<<3)|0;H[f>>2]=-1;H[f+40>>2]=-1;H[f+32>>2]=-1;H[f+24>>2]=-1;H[f+16>>2]=-1;H[f+8>>2]=-1;p=H[h+96>>2];WJ(b,p,k,s,j,o);t=H[h+100>>2];WJ(b,t,x,C,D,o);n=H[h+104>>2];WJ(b,n,y,E,G,o);u=H[h+108>>2];WJ(b,u,z,J,K,o);f=H[h+112>>2];WJ(b,f,i,r,q,o);VJ(b,o,p,f,k,i,H[h+32>>2],r,j,q);VJ(b,o,t,f,x,i,C,r,D,q);VJ(b,o,n,f,y,i,E,r,G,q);VJ(b,o,u,f,z,i,J,r,K,q);l:{m:{f=H[a>>2];n:{if(f){Lw(f,j);break n}if(!j){break m}f=H[33808]+12|0;Ra[H[H[f>>2]+12>>2]](f,j)}f=H[a>>2];if(!f){break m}Lw(f,s);break l}if(!s){break l}f=H[33808]+12|0;Ra[H[H[f>>2]+12>>2]](f,s)}a=H[a>>2];if(a){Lw(a,k);break c}if(!k){break c}a=H[33808]+12|0;Ra[H[H[a>>2]+12>>2]](a,k)}if(!g){break a}if(!l){break b}a=H[d+40>>2];if(a){VJ(b,H[c>>2],l,a,H[e+56>>2],H[d+56>>2],H[e+60>>2],H[d+60>>2],H[e+36>>2],H[d+36>>2])}a=H[d+68>>2];if(!a){break b}VJ(b,H[c>>2],l,a,H[e+56>>2],H[d+80>>2],H[e+60>>2],H[d+84>>2],H[e+36>>2],H[d+64>>2])}a=H[d+40>>2];if(!a){break a}f=H[e+68>>2];if(!f){break a}VJ(b,H[c>>2],f,a,H[e+80>>2],H[d+56>>2],H[e+84>>2],H[d+60>>2],H[e+64>>2],H[d+36>>2])}Oa=h+128|0}function UC(a,b,c,d,e,f,g){var h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=0,q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=0,A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),G=0,I=O(0),J=0,K=O(0),M=O(0),P=O(0),Q=O(0),R=0,S=O(0),T=O(0),U=O(0),V=O(0),W=O(0),X=O(0),Y=O(0),Z=O(0),_=O(0),$=O(0),aa=O(0),ba=O(0),ca=0;p=Oa-1056|0;Oa=p;m=L[e+8>>2];m=O(m+m);A=O(-m);z=m>A;n=L[e+4>>2];n=O(n+n);B=O(-n);G=n>B;o=L[e>>2];o=O(o+o);I=O(-o);e=o>I;q=L[d+8>>2];q=O(q+q);r=L[d+4>>2];r=O(r+r);s=L[d>>2];s=O(s+s);w=L[f>>2];a:{if(w>=O(3.4028234663852886e38)){u=n==O(0)?r:n>=O(0)?O(3.4028234663852886e38):O(-3.4028234663852886e38);v=o==O(0)?s:o>=O(0)?O(3.4028234663852886e38):O(-3.4028234663852886e38);x=q;if(m==O(0)){break a}x=m>=O(0)?O(3.4028234663852886e38):O(-3.4028234663852886e38);break a}u=O(r+O(n*w));v=O(s+O(o*w));x=O(q+O(m*w))}w=z?m:A;A=G?n:B;B=e?o:I;F[p+1040|0]=1;H[p+1048>>2]=256;H[p+1052>>2]=256;H[p+1044>>2]=p+16;e=H[c+8>>2];H[p+16>>2]=e;I=q>x?q:x;S=r>u?r:u;T=s>v?s:v;x=q>2];j=L[d>>2];t=O(i-j);j=O(j+i);d:{if(!(O(t+j)>=v)|!(O(j-t)<=T)){break d}l=L[d+16>>2];h=L[d+4>>2];i=O(l-h);l=O(h+l);k=O(r-l);y=O(s-j);j=O(O(o*k)-O(n*y));h=O(-j);if(!(O(l-i)<=S)|(!(O(O(A*t)+O(B*i))>=(h=u))){break d}l=L[d+20>>2];h=L[d+8>>2];j=O(l-h);l=O(h+l);C=O(q-l);h=O(O(n*C)-O(m*k));k=O(-h);if(!(O(l-j)<=I)|(!(O(O(w*i)+O(A*j))>=(h>k?h:k))|!(O(j+l)>=x))){break d}i=O(O(m*y)-O(o*C));l=O(-i);if(!(O(O(w*t)+O(B*j))>=(i>l?i:l))){break d}l=L[f>>2];L[p+12>>2]=l;d=H[d+24>>2];if(!(d&1)){while(1){d=e+N(d>>>1|0,28)|0;t=L[d+40>>2];l=L[d+28>>2];i=O(t-l);h=L[d+44>>2];k=L[d+32>>2];j=O(h-k);y=O(k+h);h=O(r-y);C=O(l+t);l=O(s-C);W=O(O(o*h)-O(n*l));_=O(-W);k=L[d+48>>2];D=L[d+36>>2];t=O(k-D);D=O(D+k);k=O(q-D);X=O(O(n*k)-O(m*h));$=O(-X);Y=O(O(m*l)-O(o*k));aa=O(-Y);k=L[d+12>>2];K=L[d>>2];l=O(k-K);M=L[d+16>>2];E=L[d+4>>2];h=O(M-E);M=O(E+M);P=O(r-M);K=O(K+k);Q=O(s-K);Z=O(O(o*P)-O(n*Q));ba=O(-Z);E=L[d+20>>2];U=L[d+8>>2];k=O(E-U);E=O(U+E);V=O(q-E);P=O(O(n*V)-O(m*P));U=O(-P);Q=O(O(m*Q)-O(o*V));V=O(-Q);z=O(K-l)<=T&O(l+K)>=v&O(O(A*l)+O(B*h))>=(Z>ba?Z:ba)&O(h+M)>=u&O(M-h)<=S&O(O(w*h)+O(A*k))>=(P>U?P:U)&O(k+E)>=x&O(E-k)<=I&O(O(w*l)+O(B*k))>=(Q>V?Q:V);G=O(C-i)<=T&O(i+C)>=v&O(O(A*i)+O(B*j))>=(W>_?W:_)&O(j+y)>=u&O(y-j)<=S&O(O(w*j)+O(A*t))>=(X>$?X:$)&O(t+D)>=x&O(D-t)<=I&O(O(w*i)+O(B*t))>=(Y>aa?Y:aa);e:{if(!(!z|!G)){z=O(O(O(D-E)*m)+O(O(O(C-K)*o)+O(n*O(y-M))))>O(0);H[H[p+1044>>2]+(J<<2)>>2]=d+N(z,28);d=d+N(!z,28)|0;J=J+1|0;if((J|0)!=(H[p+1052>>2]&2147483647)){break e}QC(p+16|0,J<<1);break e}if(!(z|G)){break d}d=z?d:d+28|0}d=H[d+24>>2];if(!(d&1)){continue}break}l=L[f>>2]}z=d>>>1&15;if(!z){break d}d=H[c>>2]+(d>>>3&536870908)|0;G=z;while(1){ca=H[d>>2];f:{if(z>>>0>=2){R=N(ca,24)+b|0;i=L[R+12>>2];j=L[R>>2];t=O(i-j);j=O(j+i);if(!(O(t+j)>=v)|!(O(j-t)<=T)){break f}h=L[R+16>>2];k=L[R+4>>2];i=O(h-k);h=O(k+h);y=O(r-h);C=O(s-j);j=O(O(o*y)-O(n*C));k=O(-j);if(!(O(h-i)<=S)|(!(O(O(A*t)+O(B*i))>=(j>k?j:k))|!(O(i+h)>=u))){break f}h=L[R+20>>2];k=L[R+8>>2];j=O(h-k);h=O(k+h);D=O(q-h);k=O(O(n*D)-O(m*y));y=O(-k);if(!(O(h-j)<=I)|(!(O(O(w*i)+O(A*j))>=(k>y?k:y))|!(O(j+h)>=x))){break f}i=O(O(m*C)-O(o*D));h=O(-i);if(!(O(O(w*t)+O(B*j))>=(i>h?i:h))){break f}}if(!(Ra[H[H[g>>2]>>2]](g,p+12|0,(ca<<3)+a|0)|0)){break c}i=L[p+12>>2];if(!(i>2]=i;u=O(q+O(m*i));I=q>u?q:u;v=O(r+O(n*i));S=r>v?r:v;i=O(s+O(o*i));T=is?s:i}d=d+4|0;G=G-1|0;if(G){continue}break}}d=1;if(!J){break b}J=J-1|0;d=H[H[p+1044>>2]+(J<<2)>>2];continue}break}d=0}b=d;a=H[p+1052>>2];g:{if((a|0)<0|!(a&2147483647)){break g}a=H[p+1044>>2];if((a|0)==(p+16|0)|!a){break g}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,a)}Oa=p+1056|0;return b}function fv(a,b,c,d,e){var f=0,g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),F=O(0),G=O(0),I=O(0),J=O(0),K=O(0),M=O(0),N=O(0),P=O(0),Q=O(0),R=O(0),T=O(0),U=O(0),V=O(0),X=O(0),Y=O(0),Z=O(0),_=O(0),$=O(0),aa=O(0),ba=O(0);f=Oa-240|0;Oa=f;Mu(f,b,c,f+144|0);i=L[d>>2];h=L[d+4>>2];g=L[e>>2];j=L[d+8>>2];H[f+12>>2]=0;k=O(O(j*g)+L[f+8>>2]);L[f+8>>2]=k;h=O(O(h*g)+L[f+4>>2]);L[f+4>>2]=h;i=O(O(i*g)+L[f>>2]);L[f>>2]=i;j=L[d+20>>2];l=L[d+24>>2];n=L[d+16>>2];H[f+28>>2]=0;m=O(O(g*l)+L[f+24>>2]);L[f+24>>2]=m;j=O(O(g*j)+L[f+20>>2]);L[f+20>>2]=j;L[f+16>>2]=O(g*n)+L[f+16>>2];l=L[d+36>>2];n=L[d+40>>2];q=L[d+32>>2];H[f+44>>2]=0;C=O(O(g*n)+L[f+40>>2]);L[f+40>>2]=C;L[f+36>>2]=O(g*l)+L[f+36>>2];L[f+32>>2]=O(g*q)+L[f+32>>2];M=L[f+212>>2];N=L[f+216>>2];P=L[f+224>>2];Q=L[f+228>>2];R=L[f+232>>2];u=L[f+180>>2];v=L[f+184>>2];w=L[f+192>>2];x=L[f+196>>2];y=L[f+200>>2];n=L[f+164>>2];l=L[f+168>>2];T=L[f+208>>2];r=L[f+176>>2];q=L[f+144>>2];s=L[f+148>>2];t=L[f+152>>2];o=L[f+160>>2];H[f+140>>2]=0;H[f+124>>2]=0;H[f+108>>2]=0;H[f+92>>2]=0;H[f+76>>2]=0;g=O(W(O(S(O(O(1)/i),O(0)))));L[f+72>>2]=l*g;L[f+68>>2]=g*n;h=O(h*g);i=O(W(O(S(O(O(1)/O(j-O(h*h))),O(0)))));j=O(O(g*h)*i);L[f+104>>2]=O(y*i)-O(l*j);L[f+100>>2]=O(i*x)-O(j*n);L[f+96>>2]=O(i*w)-O(j*o);L[f+88>>2]=O(i*v)-O(j*t);L[f+84>>2]=O(i*u)-O(j*s);k=O(k*g);m=O(O(m-O(h*k))*i);h=O(W(O(S(O(O(1)/O(O(C-O(m*m))-O(k*k))),O(0)))));p=l;l=O(O(O(m*j)-O(g*k))*h);k=O(O(i*h)*O(-m));L[f+136>>2]=O(p*l)+O(O(y*k)+O(h*R));L[f+132>>2]=O(l*n)+O(O(k*x)+O(h*Q));L[f+128>>2]=O(l*o)+O(O(k*w)+O(h*P));L[f+120>>2]=O(t*l)+O(O(k*v)+O(h*N));L[f+116>>2]=O(s*l)+O(O(u*k)+O(h*M));H[f+60>>2]=0;L[f+64>>2]=g*o;L[f+56>>2]=g*t;L[f+52>>2]=g*s;L[f+48>>2]=g*q;L[f+80>>2]=O(i*r)-O(j*q);L[f+112>>2]=O(q*l)+O(O(r*k)+O(h*T));C=L[b- -64>>2];M=L[b+68>>2];N=L[b+72>>2];P=L[b+80>>2];Q=L[b+84>>2];R=L[b+88>>2];T=L[b+100>>2];V=L[b+104>>2];X=L[b+112>>2];Y=L[b+116>>2];Z=L[b+120>>2];D=L[b+128>>2];g=L[f+132>>2];E=L[b+132>>2];i=L[f+68>>2];h=L[f+100>>2];j=L[f+136>>2];l=L[f+104>>2];F=L[b+136>>2];k=L[f+72>>2];A=L[b+20>>2];B=L[b+24>>2];p=L[b+36>>2];G=L[b+40>>2];n=L[f+116>>2];I=L[b+52>>2];q=L[f+84>>2];s=L[f+120>>2];z=L[b+56>>2];t=L[f+88>>2];o=L[f+128>>2];m=L[f+96>>2];_=L[b>>2];$=L[b+4>>2];aa=L[b+8>>2];ba=L[b+16>>2];J=L[b+32>>2];u=L[f+112>>2];K=L[b+48>>2];v=L[f+48>>2];w=L[f+80>>2];x=L[f+52>>2];y=L[f+56>>2];U=L[b+96>>2];r=L[f+64>>2];H[a+140>>2]=0;H[a+124>>2]=0;H[a+108>>2]=0;H[a+92>>2]=0;H[a+76>>2]=0;H[a+60>>2]=0;H[a+44>>2]=0;H[a+28>>2]=0;H[a+12>>2]=0;L[a+96>>2]=O(O(U-O(r*r))-O(m*m))-O(o*o);L[a+56>>2]=O(O(z-O(y*r))-O(t*m))-O(s*o);L[a+52>>2]=O(O(I-O(x*r))-O(q*m))-O(n*o);L[a+48>>2]=O(O(K-O(v*r))-O(w*m))-O(u*o);L[a+40>>2]=O(O(G-O(y*y))-O(t*t))-O(s*s);z=p;p=O(x*y);G=O(q*t);I=O(n*s);L[a+36>>2]=O(O(z-p)-G)-I;z=O(v*y);U=O(J-z);J=O(w*t);K=O(u*s);L[a+32>>2]=O(U-J)-K;L[a+24>>2]=O(O(B-p)-G)-I;L[a+20>>2]=O(O(A-O(x*x))-O(q*q))-O(n*n);A=O(v*x);B=O(w*q);p=O(u*n);L[a+16>>2]=O(O(ba-A)-B)-p;L[a+8>>2]=O(O(aa-z)-J)-K;L[a+4>>2]=O(O($-A)-B)-p;L[a>>2]=O(O(_-O(v*v))-O(w*w))-O(u*u);L[a+136>>2]=O(O(F-O(k*k))-O(l*l))-O(j*j);p=E;E=O(i*k);F=O(h*l);A=O(g*j);L[a+132>>2]=O(O(p-E)-F)-A;z=D;D=O(r*k);B=O(m*l);p=O(o*j);L[a+128>>2]=O(O(z-D)-B)-p;L[a+120>>2]=O(O(Z-E)-F)-A;L[a+116>>2]=O(O(Y-O(i*i))-O(h*h))-O(g*g);r=O(r*i);m=O(m*h);o=O(o*g);L[a+112>>2]=O(O(X-r)-m)-o;L[a+104>>2]=O(O(V-D)-B)-p;L[a+100>>2]=O(O(T-r)-m)-o;L[a+88>>2]=O(O(R-O(y*k))-O(t*l))-O(s*j);L[a+84>>2]=O(O(Q-O(x*k))-O(q*l))-O(n*j);L[a+80>>2]=O(O(P-O(v*k))-O(w*l))-O(u*j);L[a+72>>2]=O(O(N-O(y*i))-O(t*h))-O(s*g);L[a+68>>2]=O(O(M-O(x*i))-O(q*h))-O(n*g);L[a- -64>>2]=O(O(C-O(v*i))-O(w*h))-O(u*g);Oa=f+240|0}function t0(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o){var p=O(0),q=0,r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=0,y=O(0),z=O(0),A=0,B=0,C=0,D=O(0),E=O(0),G=0,J=0;q=Oa-384|0;Oa=q;a:{if(!f){break a}A=I[h+64|0];if(A){x=1;C=H[h+76>>2];p=L[C+40>>2];s=L[C+36>>2];t=L[C+32>>2];b:{if((A|0)==1){break b}B=A-1|0;G=B&1;if((A|0)!=2){J=B&-2;A=0;while(1){B=N(x,48)+C|0;t=O(O(t+L[B+32>>2])+L[B+80>>2]);p=O(O(p+L[B+40>>2])+L[B+88>>2]);s=O(O(s+L[B+36>>2])+L[B+84>>2]);x=x+2|0;A=A+2|0;if((J|0)!=(A|0)){continue}break}}if(!G){break b}x=N(x,48)+C|0;t=O(t+L[x+32>>2]);p=O(p+L[x+40>>2]);s=O(s+L[x+36>>2])}r=p;p=O(O(1)/O(W(O(O(p*p)+O(O(t*t)+O(s*s))))));r=O(r*p);w=O(t*p);p=O(s*p)}else{p=O(0)}s=L[k>>2];L[q+32>>2]=o;L[q+48>>2]=s*O(.05000000074505806);k=H[q+60>>2];H[q+24>>2]=H[q+56>>2];H[q+28>>2]=k;k=H[q+44>>2];H[q+8>>2]=H[q+40>>2];H[q+12>>2]=k;k=H[q+36>>2];H[q>>2]=H[q+32>>2];H[q+4>>2]=k;k=H[q+52>>2];H[q+16>>2]=H[q+48>>2];H[q+20>>2]=k;e=G0(a,b,e,f,i,q+16|0,q,g,h);y=L[g+40>>2];z=L[g+32>>2];u=L[g+36>>2];if(e?1:I[h+64|0]>>0|O(O(r*y)+O(O(w*z)+O(p*u)))>2];a=H[a+4>>2];f=q+304|0;R0(a,m,f);j=q+232|0;R0(b,n,j);F[q+204|0]=m;H[q+200>>2]=a+96;H[q+196>>2]=a+48;H[q+192>>2]=c;H[q+208>>2]=a;H[q+160>>2]=m?125820:125868;F[q+140|0]=n;H[q+136>>2]=b+96;H[q+132>>2]=b+48;H[q+128>>2]=d;H[q+144>>2]=b;H[q+96>>2]=n?125820:125868;H[q+92>>2]=0;A=B0(f,j,q+160|0,q+96|0,i,q+92|0,l,g+32|0,g,g+16|0,L[a+16>>2],L[b+16>>2],e,o);if(!A){break a}a=H[q+92>>2];if(a){Z0(h,i,a,o);b=H[h+76>>2];o=L[b+32>>2];p=o;v=L[b+36>>2];s=v;r=L[b+40>>2];t=r;a=I[h+64|0];c:{if(a>>>0<2){break c}x=1;c=a-1|0;e=c&1;t=r;s=v;p=o;if((a|0)!=2){c=c&-2;g=0;while(1){a=b+N(x,48)|0;p=O(O(p+L[a+32>>2])+L[a+80>>2]);t=O(O(t+L[a+40>>2])+L[a+88>>2]);s=O(O(s+L[a+36>>2])+L[a+84>>2]);x=x+2|0;g=g+2|0;if((c|0)!=(g|0)){continue}break}}if(!e){break c}a=b+N(x,48)|0;p=O(p+L[a+32>>2]);t=O(t+L[a+40>>2]);s=O(s+L[a+36>>2])}y=L[d+4>>2];z=L[d+8>>2];u=L[d>>2];w=L[d+12>>2];H[q+76>>2]=0;a=O(O(t*t)+O(O(p*p)+O(s*s)))>O(1.1920928955078125e-7);t=a?t:r;o=a?p:o;p=a?s:v;s=O(O(z*t)+O(O(u*o)+O(y*p)));v=O(O(w*w)+O(-.5));r=O(O(z*s)+O(O(w*O(O(u*p)-O(o*y)))+O(t*v)));r=O(r+r);D=r;E=O(r*r);r=O(O(u*s)+O(O(w*O(O(y*t)-O(p*z)))+O(o*v)));r=O(r+r);o=O(O(y*s)+O(O(w*O(O(z*o)-O(t*u)))+O(p*v)));o=O(o+o);p=O(O(1)/O(W(O(E+O(O(r*r)+O(o*o))))));L[q+72>>2]=D*p;L[q+68>>2]=o*p;L[q+64>>2]=r*p;X0(h,i,q- -64|0,d,l);break a}if(e){break a}b=H[h+76>>2];o=L[b+32>>2];p=o;v=L[b+36>>2];s=v;r=L[b+40>>2];t=r;a=I[h+64|0];d:{if(a>>>0<2){break d}x=1;c=a-1|0;e=c&1;t=r;s=v;p=o;if((a|0)!=2){c=c&-2;g=0;while(1){a=b+N(x,48)|0;p=O(O(p+L[a+32>>2])+L[a+80>>2]);t=O(O(t+L[a+40>>2])+L[a+88>>2]);s=O(O(s+L[a+36>>2])+L[a+84>>2]);x=x+2|0;g=g+2|0;if((c|0)!=(g|0)){continue}break}}if(!e){break d}a=b+N(x,48)|0;p=O(p+L[a+32>>2]);t=O(t+L[a+40>>2]);s=O(s+L[a+36>>2])}y=L[d+4>>2];z=L[d+8>>2];u=L[d>>2];w=L[d+12>>2];H[q+76>>2]=0;a=O(O(t*t)+O(O(p*p)+O(s*s)))>O(1.1920928955078125e-7);t=a?t:r;o=a?p:o;p=a?s:v;s=O(O(z*t)+O(O(u*o)+O(y*p)));v=O(O(w*w)+O(-.5));r=O(O(z*s)+O(O(w*O(O(u*p)-O(o*y)))+O(t*v)));r=O(r+r);D=r;E=O(r*r);r=O(O(u*s)+O(O(w*O(O(y*t)-O(p*z)))+O(o*v)));r=O(r+r);o=O(O(y*s)+O(O(w*O(O(z*o)-O(t*u)))+O(p*v)));o=O(o+o);p=O(O(1)/O(W(O(E+O(O(r*r)+O(o*o))))));L[q+72>>2]=D*p;L[q+68>>2]=o*p;L[q+64>>2]=r*p;X0(h,i,q- -64|0,d,l);break a}s=L[d+4>>2];t=L[d+8>>2];v=L[d>>2];o=L[d+12>>2];H[q+316>>2]=0;r=O(r+y);w=O(w+z);p=O(p+u);y=O(O(t*r)+O(O(v*w)+O(s*p)));z=O(O(o*o)+O(-.5));u=O(O(t*y)+O(O(o*O(O(v*p)-O(w*s)))+O(r*z)));u=O(u+u);D=u;E=O(u*u);u=O(O(v*y)+O(O(o*O(O(s*r)-O(p*t)))+O(w*z)));u=O(u+u);o=O(O(s*y)+O(O(o*O(O(t*w)-O(r*v)))+O(p*z)));o=O(o+o);p=O(O(1)/O(W(O(E+O(O(u*u)+O(o*o))))));L[q+312>>2]=D*p;L[q+308>>2]=o*p;L[q+304>>2]=u*p;X0(h,i,q+304|0,d,l);A=1}Oa=q+384|0;return A}function PW(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=O(g);h=h|0;i=i|0;j=O(j);var k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),I=O(0),K=O(0),M=O(0),N=O(0),P=O(0),Q=O(0),R=O(0),S=O(0),T=O(0),U=O(0),V=O(0);c=Oa-288|0;Oa=c;v=L[a+4>>2];u=L[a+8>>2];a=0;H[c+272>>2]=0;H[c+264>>2]=0;H[c+268>>2]=0;H[c+256>>2]=0;H[c+260>>2]=0;E=L[d+20>>2];z=L[b+20>>2];I=L[d+24>>2];A=L[b+24>>2];n=L[e+52>>2];x=L[e+56>>2];T=L[f+4>>2];U=L[f>>2];V=L[f+8>>2];K=L[d+16>>2];w=L[b+16>>2];s=L[d>>2];l=L[b+8>>2];m=L[d+8>>2];k=L[b>>2];r=L[d+12>>2];p=L[b+4>>2];q=L[d+4>>2];t=L[b+12>>2];o=L[e+48>>2];H[c+252>>2]=0;L[c+248>>2]=x;L[c+244>>2]=n;F[c+224|0]=0;H[c+220>>2]=3;H[c+192>>2]=0;H[c+196>>2]=0;H[c+200>>2]=0;H[c+204>>2]=0;L[c+240>>2]=o;n=n>=o?o:n;n=n<=x?n:x;x=O(n*O(.05000000074505806));L[c+216>>2]=x;L[c+212>>2]=x;L[c+208>>2]=n*O(.15000000596046448);H[c+172>>2]=0;H[c+156>>2]=0;x=O(-s);w=O(w-K);z=O(z-E);A=O(A-I);M=O(O(O(x*w)-O(z*q))-O(m*A));n=O(O(r*r)+O(-.5));o=O(O(O(r*O(O(q*w)-O(s*z)))+O(n*A))-O(m*M));D=O(o+o);L[c+104>>2]=D;o=O(O(O(k*q)-O(s*p))+O(O(l*r)-O(t*m)));B=O(O(O(p*m)-O(q*l))+O(O(k*r)-O(t*s)));y=O(B+B);N=O(o*y);C=O(O(t*r)-O(O(O(x*k)-O(p*q))-O(m*l)));k=O(O(O(l*s)-O(m*k))+O(O(p*r)-O(t*q)));p=O(k+k);t=O(C*p);B=O(O(1)-O(B*y));P=O(k*p);l=O(u*O(0));Q=O(o*p);R=O(C*y);S=O(O(O(B-P)*l)+O(O(u*O(N-t))+O(l*O(Q+R))));L[c+168>>2]=D-S;p=O(O(O(n*z)+O(r*O(O(s*A)-O(m*w))))-O(q*M));p=O(p+p);L[c+100>>2]=p;y=O(k*y);k=O(o+o);C=O(C*k);o=O(o*k);k=O(O(O(Q-R)*l)+O(O(u*O(y+C))+O(l*O(B-o))));L[c+164>>2]=p-k;L[c+152>>2]=D+S;L[c+148>>2]=p+k;L[c+176>>2]=v;H[c+108>>2]=0;H[c+124>>2]=4;F[c+128|0]=1;L[c+120>>2]=v;L[c+116>>2]=v;L[c+112>>2]=v;k=O(O(O(n*w)+O(r*O(O(m*z)-O(q*A))))-O(s*M));k=O(k+k);L[c+96>>2]=k;l=O(O(O(N+t)*l)+O(O(u*O(O(O(1)-P)-o))+O(l*O(y-C))));L[c+160>>2]=k-l;L[c+144>>2]=k+l;H[c+92>>2]=0;l=O(V*g);u=O(U*g);t=O(T*g);o=O(O(m*l)+O(O(s*u)+O(q*t)));w=O(O(m*o)+O(O(l*n)-O(r*O(O(s*t)-O(u*q)))));L[c+88>>2]=w+w;w=O(O(q*o)+O(O(t*n)-O(r*O(O(m*u)-O(l*s)))));L[c+84>>2]=w+w;l=O(O(s*o)+O(O(u*n)-O(r*O(O(q*l)-O(t*m)))));L[c+80>>2]=l+l;b=J[i>>1];H[c+28>>2]=0;L[c+24>>2]=D-L[c+200>>2];L[c+20>>2]=p-L[c+196>>2];L[c+16>>2]=k-L[c+192>>2];H[c+8>>2]=125948;H[c+12>>2]=c+96;H[c>>2]=126608;H[c+4>>2]=c+192;b=b&512;if(MW(c+8|0,c,c+16|0,c+256|0,c+80|0,c- -64|0,c+32|0,c+48|0,O(v+j),b>>>9|0)){j=O(-m);v=O(-q);G[h+12>>1]=2;w=L[c+64>>2];a:{if(w<=L[c+272>>2]){if(b){G[h+12>>1]=3;g=L[c+56>>2];l=L[c+48>>2];u=L[c+52>>2];k=L[c+40>>2];p=L[c+32>>2];t=L[c+36>>2];L[h+40>>2]=w;o=O(O(m*k)+O(O(s*p)+O(q*t)));L[h+36>>2]=O(O(O(r*O(O(s*t)+O(p*v)))+O(n*k))+O(m*o))*O(-2);L[h+32>>2]=O(O(q*o)+O(O(n*t)+O(r*O(O(m*p)+O(k*x)))))*O(-2);L[h+28>>2]=O(O(s*o)+O(O(n*p)+O(r*O(O(q*k)+O(t*j)))))*O(-2);k=O(O(r*O(O(s*u)+O(l*v)))+O(n*g));v=O(O(m*g)+O(O(s*l)+O(q*u)));k=O(k+O(m*v));L[h+24>>2]=I+O(k+k);m=O(O(q*v)+O(O(n*u)+O(r*O(O(m*l)+O(g*x)))));L[h+20>>2]=E+O(m+m);g=O(O(s*v)+O(O(n*l)+O(r*O(O(q*g)+O(u*j)))));L[h+16>>2]=K+O(g+g);break a}H[h+40>>2]=0;g=L[f>>2];j=L[f+4>>2];L[h+36>>2]=-L[f+8>>2];L[h+32>>2]=-j;L[h+28>>2]=-g;break a}G[h+12>>1]=3;l=L[c+56>>2];u=L[c+48>>2];k=L[c+52>>2];p=L[c+40>>2];t=L[c+32>>2];o=L[c+36>>2];L[h+40>>2]=w*g;g=O(O(m*p)+O(O(s*t)+O(q*o)));L[h+36>>2]=O(O(O(r*O(O(s*o)+O(t*v)))+O(n*p))+O(m*g))*O(-2);L[h+32>>2]=O(O(q*g)+O(O(n*o)+O(r*O(O(m*t)+O(p*x)))))*O(-2);L[h+28>>2]=O(O(s*g)+O(O(n*t)+O(r*O(O(q*p)+O(o*j)))))*O(-2);g=O(O(m*l)+O(O(s*u)+O(q*k)));v=O(O(O(r*O(O(s*k)+O(u*v)))+O(n*l))+O(m*g));L[h+24>>2]=I+O(v+v);m=O(O(q*g)+O(O(n*k)+O(r*O(O(m*u)+O(l*x)))));L[h+20>>2]=E+O(m+m);g=O(O(s*g)+O(O(n*u)+O(r*O(O(q*l)+O(k*j)))));L[h+16>>2]=K+O(g+g)}a=1}Oa=c+288|0;return a|0}function IX(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=e|0;f=f|0;g=O(g);h=h|0;i=i|0;j=O(j);k=k|0;l=O(l);var m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),G=O(0),I=O(0);k=Oa-384|0;Oa=k;b=H[b>>2];a=H[a>>2];F[k+96|0]=0;H[k+92>>2]=3;H[k+72>>2]=0;H[k+76>>2]=0;H[k+64>>2]=0;H[k+68>>2]=0;j=L[a+4>>2];l=L[a+8>>2];p=L[a+12>>2];H[k+124>>2]=0;L[k+120>>2]=p;L[k+116>>2]=l;L[k+112>>2]=j;j=j<=l?j:l;j=j<=p?j:p;L[k+88>>2]=j*O(.05000000074505806);L[k+84>>2]=j*O(.004999999888241291);L[k+80>>2]=j*O(.009999999776482582);F[k+32|0]=0;H[k+28>>2]=3;H[k+8>>2]=0;H[k+12>>2]=0;H[k>>2]=0;H[k+4>>2]=0;j=L[b+4>>2];l=L[b+8>>2];p=L[b+12>>2];H[k+60>>2]=0;L[k+56>>2]=p;L[k+52>>2]=l;L[k+48>>2]=j;j=j<=l?j:l;j=j<=p?j:p;L[k+24>>2]=j*O(.05000000074505806);L[k+20>>2]=j*O(.004999999888241291);L[k+16>>2]=j*O(.009999999776482582);H[k+376>>2]=0;H[k+380>>2]=0;H[k+368>>2]=0;H[k+372>>2]=0;D=L[f+20>>2];z=L[e+20>>2];y=L[f+24>>2];A=L[e+24>>2];n=L[c+8>>2];r=L[c>>2];s=L[c+4>>2];q=L[c+12>>2];p=L[d+12>>2];u=L[d>>2];E=L[f+16>>2];B=L[e+16>>2];j=L[d+4>>2];l=L[d+8>>2];H[k+364>>2]=0;H[k+348>>2]=0;H[k+332>>2]=0;C=O(-u);m=O(B-E);o=O(z-D);v=O(A-y);x=O(O(O(C*m)-O(o*j))-O(l*v));w=O(O(p*p)+O(-.5));t=O(O(O(p*O(O(j*m)-O(u*o)))+O(w*v))-O(l*x));L[k+360>>2]=t+t;t=O(O(O(w*o)+O(p*O(O(u*v)-O(l*m))))-O(j*x));L[k+356>>2]=t+t;a=k+352|0;m=O(O(O(w*m)+O(p*O(O(l*o)-O(j*v))))-O(u*x));L[a>>2]=m+m;o=O(O(O(s*l)-O(j*n))+O(O(r*p)-O(q*u)));m=O(o+o);v=O(O(O(n*u)-O(l*r))+O(O(s*p)-O(q*j)));x=O(v+v);t=O(O(1)-O(o*m));G=O(v*x);L[k+344>>2]=t-G;o=O(O(O(r*j)-O(u*s))+O(O(n*p)-O(q*l)));I=O(o*x);n=O(O(q*p)-O(O(O(C*r)-O(s*j))-O(l*n)));r=O(n*m);L[k+340>>2]=I-r;s=O(o*m);q=O(n*x);L[k+336>>2]=s+q;L[k+328>>2]=I+r;r=O(o+o);o=O(o*r);L[k+324>>2]=t-o;m=O(v*m);n=O(n*r);L[k+320>>2]=m-n;H[k+316>>2]=0;L[k+312>>2]=s-q;L[k+308>>2]=m+n;L[k+304>>2]=O(O(1)-G)-o;s=L[d+20>>2];q=L[c+20>>2];n=L[d+24>>2];r=L[c+24>>2];m=L[d+16>>2];o=L[c+16>>2];H[k+300>>2]=0;x=O(r-A);n=O(O(n-y)-x);A=O(o-B);r=O(O(m-E)-A);z=O(q-z);s=O(O(s-D)-z);q=O(O(l*n)+O(O(u*r)+O(j*s)));m=O(O(O(w*n)-O(p*O(O(u*s)-O(j*r))))+O(l*q));L[k+296>>2]=m+m;m=O(O(j*q)+O(O(w*s)-O(p*O(O(l*r)-O(n*u)))));L[k+292>>2]=m+m;n=O(O(u*q)+O(O(w*r)-O(p*O(O(j*n)-O(s*l)))));L[k+288>>2]=n+n;H[k+224>>2]=0;H[k+144>>2]=126268;H[k+152>>2]=k+304;H[k+148>>2]=k- -64;b=H[k+324>>2];H[k+176>>2]=H[k+320>>2];H[k+180>>2]=b;b=H[k+332>>2];H[k+184>>2]=H[k+328>>2];H[k+188>>2]=b;b=H[k+316>>2];H[k+168>>2]=H[k+312>>2];H[k+172>>2]=b;b=H[k+340>>2];H[k+192>>2]=H[k+336>>2];H[k+196>>2]=b;b=H[k+348>>2];H[k+200>>2]=H[k+344>>2];H[k+204>>2]=b;b=H[a+4>>2];H[k+208>>2]=H[a>>2];H[k+212>>2]=b;b=H[k+364>>2];H[k+216>>2]=H[k+360>>2];H[k+220>>2]=b;b=H[k+308>>2];H[k+160>>2]=H[k+304>>2];H[k+164>>2]=b;n=L[k+164>>2];L[k+164>>2]=L[k+176>>2];r=L[k+184>>2];s=L[k+168>>2];L[k+168>>2]=L[k+192>>2];L[k+184>>2]=L[k+196>>2];L[k+192>>2]=s;L[k+196>>2]=r;L[k+176>>2]=n;H[k+136>>2]=126608;H[k+140>>2]=k;n=O(3.4028234663852886e38);if(RW(k+144|0,k+136|0,a,k+368|0,k+288|0,k+272|0,k+240|0,k+256|0,O(g+O(0)),1)){n=L[k+272>>2];g=L[k+264>>2];r=L[k+256>>2];s=L[k+260>>2];q=L[k+248>>2];m=L[k+240>>2];o=L[k+244>>2];v=O(O(l*q)+O(O(u*m)+O(j*o)));B=O(-j);t=O(O(O(p*O(O(u*o)+O(m*B)))+O(w*q))+O(l*v));L[h+8>>2]=t+t;t=O(O(j*v)+O(O(w*o)+O(p*O(O(l*m)+O(q*C)))));L[h+4>>2]=t+t;t=o;o=O(-l);q=O(O(u*v)+O(O(w*m)+O(p*O(O(j*q)+O(t*o)))));L[h>>2]=q+q;q=n>O(0)?n:O(0);t=y;m=O(O(l*g)+O(O(u*r)+O(j*s)));y=O(O(O(p*O(O(u*s)+O(r*B)))+O(w*g))+O(l*m));L[i+8>>2]=O(x*q)+O(t+O(y+y));l=O(O(j*m)+O(O(w*s)+O(p*O(O(l*r)+O(g*C)))));L[i+4>>2]=O(z*q)+O(D+O(l+l));g=O(O(u*m)+O(O(w*r)+O(p*O(O(j*g)+O(s*o)))));L[i>>2]=O(A*q)+O(E+O(g+g))}Oa=k+384|0;return O(n)}function YV(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=O(e);f=f|0;g=g|0;h=h|0;var i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=0,s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),F=O(0),K=O(0),M=O(0),P=O(0),Q=O(0),R=O(0),S=O(0),T=O(0),U=O(0),V=O(0),X=O(0),Y=O(0),Z=O(0),_=O(0),$=O(0),aa=O(0),ba=0,ca=0,da=O(0);g=Oa-112|0;Oa=g;r=H[a+32>>2];m=L[a+4>>2];i=L[a+8>>2];L[g+40>>2]=O(1)/L[a+12>>2];L[g+36>>2]=O(1)/i;L[g+32>>2]=O(1)/m;L[g+44>>2]=L[a+16>>2];L[g+48>>2]=L[a+20>>2];L[g+52>>2]=L[a+24>>2];L[g+56>>2]=L[a+28>>2];n=L[b+8>>2];p=O(L[b+24>>2]*O(-2));l=L[b>>2];k=O(L[b+16>>2]*O(-2));j=O(L[b+20>>2]*O(-2));o=L[b+4>>2];m=O(O(n*p)+O(O(l*k)+O(j*o)));q=L[b+12>>2];i=O(O(q*q)+O(-.5));L[g+24>>2]=O(n*m)+O(O(p*i)-O(q*O(O(l*j)-O(k*o))));L[g+20>>2]=O(o*m)+O(O(j*i)-O(q*O(O(n*k)-O(p*l))));L[g+12>>2]=q;L[g+8>>2]=-n;L[g+4>>2]=-o;L[g>>2]=-l;L[g+16>>2]=O(l*m)+O(O(k*i)-O(q*O(O(o*p)-O(j*n))));ZV(g- -64|0,g+32|0,g);ba=H[r+56>>2];ca=I[r+55|0];j=L[g+104>>2];m=L[g+108>>2];t=L[c+8>>2];u=L[c>>2];z=L[c+4>>2];P=L[g+92>>2];Q=L[g+80>>2];R=L[g+96>>2];q=L[d+8>>2];n=L[d>>2];S=L[g+84>>2];l=L[d+4>>2];i=L[g+100>>2];T=L[g+88>>2];U=L[g+64>>2];V=L[g+76>>2];X=L[g+68>>2];Y=L[g+72>>2];H[h+8>>2]=-1;a:{b:{c:{if(ca){w=O(O(O(Y*n)+O(S*l))+O(R*q));da=O(O(O(X*n)+O(Q*l))+O(P*q));x=O(O(O(U*n)+O(V*l))+O(T*q));A=O(O(O(O(u*Y)+O(z*S))+O(t*R))+m);y=O(O(O(O(u*X)+O(z*Q))+O(t*P))+j);B=O(O(O(O(u*U)+O(z*V))+O(t*T))+i);c=0;o=O(3.4028234663852886e38);m=O(-3.4028234663852886e38);d=1;while(1){r=N(c,20)+ba|0;p=L[r+8>>2];k=L[r>>2];i=L[r+4>>2];j=O(L[r+12>>2]+O(O(A*p)+O(O(B*k)+O(y*i))));k=O(O(p*w)+O(O(k*x)+O(da*i)));i=O(O(-j)/k);r=j>O(0);d:{if(k>O(1.0000000116860974e-7)){o=i>o?o:i;break d}if(km)){break d}H[h+8>>2]=c;m=i;break d}if(!r){break d}d=0;break a}d=!r&d;c=c+1|0;if((ca|0)!=(c|0)){continue}break}if(!d){break c}}H[h+48>>2]=0;H[h+8>>2]=-1;H[h+40>>2]=0;H[h+44>>2]=0;L[h+16>>2]=u;L[h+36>>2]=-q;L[h+32>>2]=-l;L[h+28>>2]=-n;L[h+24>>2]=t;L[h+20>>2]=z;d=3;break b}d=0;if(!(O(e+O(-9999999747378752e-21))>m)|(!(mO(0)))){break a}d=1024;c=J[f>>1];if(c&1){z=L[b+16>>2];q=L[b+20>>2];i=L[a+16>>2];C=O(i+i);j=L[a+24>>2];n=O(C*j);s=L[a+20>>2];e=O(s+s);v=L[a+28>>2];l=O(e*v);D=O(n+l);Z=L[a+4>>2];_=O(D*Z);o=O(e*j);p=O(C*v);E=O(o-p);t=L[a+8>>2];$=O(E*t);k=O(O(1)-O(i*C));e=O(s*e);F=O(k-e);u=L[a+12>>2];aa=O(F*u);K=L[b+8>>2];A=O(A+O(w*m));B=O(B+O(x*m));i=O(O(1)-e);e=O(j+j);j=O(j*e);M=O(i-j);i=O(C*s);e=O(e*v);s=O(i+e);w=O(n-l);l=O(y+O(da*m));x=O(i-e);y=O(k-j);v=O(o+p);e=O(O(A*O(O(O(D*_)+O(E*$))+O(F*aa)))+O(O(B*O(O(O(M*_)+O(s*$))+O(w*aa)))+O(l*O(O(O(x*_)+O(y*$))+O(v*aa)))));n=O(e+e);o=L[b>>2];j=O(Z*M);i=O(s*t);e=O(w*u);e=O(O(A*O(O(O(D*j)+O(E*i))+O(F*e)))+O(O(B*O(O(O(M*j)+O(s*i))+O(w*e)))+O(l*O(O(O(x*j)+O(y*i))+O(v*e)))));p=O(e+e);k=L[b+4>>2];j=O(Z*x);i=O(y*t);e=O(v*u);e=O(O(A*O(O(O(D*j)+O(E*i))+O(F*e)))+O(O(B*O(O(O(M*j)+O(s*i))+O(w*e)))+O(l*O(O(O(x*j)+O(y*i))+O(v*e)))));j=O(e+e);i=O(O(K*n)+O(O(o*p)+O(k*j)));l=L[b+12>>2];e=O(O(l*l)+O(-.5));L[h+24>>2]=L[b+24>>2]+O(O(K*i)+O(O(n*e)+O(l*O(O(o*j)-O(p*k)))));L[h+20>>2]=q+O(O(k*i)+O(O(j*e)+O(l*O(O(K*p)-O(n*o)))));L[h+16>>2]=z+O(O(o*i)+O(O(p*e)+O(l*O(O(k*n)-O(j*K)))));d=1025}H[h+44>>2]=0;H[h+48>>2]=0;L[h+40>>2]=m;H[h+28>>2]=0;H[h+32>>2]=0;H[h+36>>2]=0;if(!(c&2)){break b}a=N(H[h+8>>2],20)+ba|0;m=L[a+8>>2];i=L[a>>2];e=L[a+4>>2];k=O(O(R*m)+O(O(T*i)+O(P*e)));L[h+36>>2]=k;j=O(O(S*m)+O(O(V*i)+O(Q*e)));L[h+32>>2]=j;i=O(O(Y*m)+O(O(U*i)+O(X*e)));L[h+28>>2]=i;d=d|2;e=O(W(O(O(k*k)+O(O(i*i)+O(j*j)))));if(!(e>O(0))){break b}e=O(O(1)/e);L[h+36>>2]=k*e;L[h+32>>2]=j*e;L[h+28>>2]=i*e}G[h+12>>1]=d;d=1}Oa=g+112|0;return d|0}function qw(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p){a=a|0;b=O(b);c=O(c);d=O(d);e=O(e);f=f|0;g=g|0;h=O(h);i=O(i);j=O(j);k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=O(p);var q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=O(0),A=0,B=0,C=0,D=0,E=0,M=O(0),P=O(0),Q=O(0),R=0;o=Oa-256|0;Oa=o;H[o+236>>2]=m;H[o+248>>2]=g+12088;H[o+244>>2]=g+11824;H[o+240>>2]=g+11852;H[o+232>>2]=113028;H[o+224>>2]=0;H[o+216>>2]=0;H[o+220>>2]=0;H[o+208>>2]=0;H[o+212>>2]=1065353216;H[o+200>>2]=0;H[o+204>>2]=0;rw(H[a+656>>2],H[a+660>>2]);if(H[a+660>>2]){while(1){E=w<<5;m=E+H[a+656>>2]|0;v=J[m+10>>1];r=J[m+8>>1];u=(r|0)==65535;R=u?v:r;a:{if(J[m+22>>1]==1){A=H[m+4>>2];t=H[m+12>>2];x=H[m+16>>2];r=H[m+24>>2];y=H[r+68>>2];B=H[((y&7)<<2)+f>>2];q=H[r+20>>2];C=H[m>>2];D=H[f+32>>2];s=H[r+16>>2];L[o+60>>2]=L[s>>2];L[o+64>>2]=L[s+4>>2];L[o+68>>2]=L[s+8>>2];L[o+72>>2]=L[s+12>>2];L[o+76>>2]=L[s+16>>2];L[o+80>>2]=L[s+20>>2];L[o+84>>2]=L[s+24>>2];L[o+88>>2]=L[q>>2];L[o+92>>2]=L[q+4>>2];L[o+96>>2]=L[q+8>>2];L[o+100>>2]=L[q+12>>2];L[o+104>>2]=L[q+16>>2];L[o+108>>2]=L[q+20>>2];L[o+112>>2]=L[q+24>>2];H[o+124>>2]=H[r+12>>2];s=D+(B+(y>>>3|0)<<4)|0;q=H[s+8>>2];v=N((v|0)==65535?x:0,48)+k|0;H[o+56>>2]=v;y=N(u?t:0,48)+k|0;H[o+52>>2]=y;H[o+48>>2]=(x<<6)+l;H[o+44>>2]=(t<<6)+l;H[o+40>>2]=A;H[o+36>>2]=C;H[o+32>>2]=m;H[o+156>>2]=q;q=J[r+40>>1];F[o+137|0]=q>>>2&1;F[o+138|0]=q>>>8&1;t=q&8;H[o+116>>2]=t?8:1;x=q&16;u=8;b:{if(x){break b}u=4;if(q&1024){break b}u=q&64?1:2}H[o+120>>2]=u;z=L[(x?H[r+20>>2]+128|0:v+12|0)>>2];M=L[(t?H[r+16>>2]+128|0:y+12|0)>>2];q=I[r+44|0];P=I[r+45|0]?O(1):O(0);L[o+28>>2]=P;Q=q?O(1):O(0);L[o+16>>2]=Q;L[o+20>>2]=Q;L[o+24>>2]=P;L[o+140>>2]=L[r+52>>2];H[o+148>>2]=H[r+36>>2];q=I[r+42|0];L[o+176>>2]=z>M?M:z;H[o+144>>2]=2139095039;F[o+152|0]=q;L[o+180>>2]=L[r+72>>2];L[o+184>>2]=L[r+76>>2];qA(o+16|0,s,g,d,e,i,j,h,o+232|0);G[m+20>>1]=I[s+12|0];H[m+28>>2]=H[s+8>>2];H[r+36>>2]=H[o+148>>2];F[r+42|0]=I[o+152|0];break a}r=o+200|0;s=r;q=H[m+24>>2];t=H[q+24>>2];if(t){s=H[t+36>>2]}A=J[q+8>>1];y=H[q+20>>2];B=H[q+12>>2];t=H[q+28>>2];if(t){r=H[t+36>>2]}C=H[m+4>>2];t=H[m+12>>2];x=H[m+16>>2];D=H[m>>2];H[o+12>>2]=A;H[o+8>>2]=y;H[o+4>>2]=B;H[o+32>>2]=m;H[o>>2]=q;L[o+60>>2]=L[s>>2];L[o+64>>2]=L[s+4>>2];L[o+68>>2]=L[s+8>>2];L[o+72>>2]=L[s+12>>2];L[o+76>>2]=L[s+16>>2];L[o+80>>2]=L[s+20>>2];L[o+84>>2]=L[s+24>>2];L[o+88>>2]=L[r>>2];L[o+92>>2]=L[r+4>>2];L[o+96>>2]=L[r+8>>2];L[o+100>>2]=L[r+12>>2];L[o+104>>2]=L[r+16>>2];L[o+108>>2]=L[r+20>>2];z=L[r+24>>2];s=(v|0)==65535;H[o+56>>2]=N(s?x:0,48)+k;H[o+52>>2]=N(u?t:0,48)+k;H[o+48>>2]=(x<<6)+l;H[o+44>>2]=(t<<6)+l;H[o+40>>2]=C;H[o+36>>2]=D;L[o+112>>2]=z;L[o+132>>2]=L[q>>2];L[o+136>>2]=L[q+4>>2];H[o+144>>2]=(H[q+40>>2]<<5)+n;r=J[q+10>>1];F[o+151|0]=r>>>9&1;v=r&255;F[o+149|0]=v>>>7;F[o+148|0]=r>>>8&1;F[o+150|0]=v>>>5&1;z=L[q+44>>2];H[o+120>>2]=s?1:8;H[o+116>>2]=u?1:8;L[o+140>>2]=z;tA(o,o+16|0,o+232|0,b,c,d,e,p)}c:{if(H[m+24>>2]){r=(R&65535)<<2;m=r+H[a+408>>2]|0;q=H[m>>2];if(!q){H[r+H[a+420>>2]>>2]=w;q=H[m>>2]}H[m>>2]=q+1;break c}q=H[a+660>>2];r=w+1|0;d:{if(q>>>0<=r>>>0){break d}q=H[a+656>>2];m=q+E|0;r=q+(r<<5)|0;q=H[r+4>>2];H[m>>2]=H[r>>2];H[m+4>>2]=q;q=H[r+28>>2];H[m+24>>2]=H[r+24>>2];H[m+28>>2]=q;q=H[r+20>>2];H[m+16>>2]=H[r+16>>2];H[m+20>>2]=q;q=H[r+12>>2];H[m+8>>2]=H[r+8>>2];H[m+12>>2]=q;q=H[a+660>>2];r=w+2|0;if(q>>>0<=r>>>0){break d}while(1){q=H[a+656>>2]+(r<<5)|0;s=H[q+4>>2];H[m+32>>2]=H[q>>2];H[m+36>>2]=s;s=H[q+28>>2];H[m+56>>2]=H[q+24>>2];H[m+60>>2]=s;s=H[q+20>>2];H[m+48>>2]=H[q+16>>2];H[m+52>>2]=s;s=H[q+12>>2];H[m+40>>2]=H[q+8>>2];H[m+44>>2]=s;m=m+32|0;q=H[a+660>>2];r=r+1|0;if(q>>>0>r>>>0){continue}break}}H[a+660>>2]=q-1;w=w-1|0}w=w+1|0;if(w>>>0>2]){continue}break}}Oa=o+256|0} -function sR(a,b,c,d){var e=0,f=O(0),g=O(0),h=0,i=O(0),j=O(0),k=0,l=O(0),m=O(0),n=O(0),o=0,p=0,q=0,r=O(0),s=0,t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0);k=Oa-16|0;Oa=k;u=L[a+44>>2];a:{if(u==O(0)){break a}l=L[b+12>>2];v=L[b>>2];i=O(l-v);z=L[b+28>>2];w=L[b+4>>2];j=O(z-w);A=L[b+24>>2];f=O(A-v);m=L[b+16>>2];g=O(m-w);n=O(O(i*j)-O(f*g));y=g;B=L[b+32>>2];g=L[b+8>>2];r=O(B-g);x=L[b+20>>2];t=O(x-g);j=O(O(y*r)-O(j*t));i=O(O(t*f)-O(r*i));f=O(W(O(O(n*n)+O(O(j*j)+O(i*i)))));if(f>O(0)){f=O(O(1)/f);n=O(n*f);i=O(i*f);j=O(j*f)}y=n;n=L[a+28>>2];t=L[a+20>>2];f=O(j*t);j=L[a+24>>2];i=O(O(y*n)+O(f+O(i*j)));if(!(i>=O(0))|!(i>2])){break a}f=O(u*n);n=O(f+g);r=O(u*j);j=O(r+w);t=O(u*t);i=O(t+v);a=H[c+8>>2]&2147483647;p=H[c+4>>2];o=p+2|0;b:{if(a>>>0>=o>>>0){e=p;break b}h=a?a<<1:2;h=h>>>0>o>>>0?h:o;e=p;if(h>>>0<=a>>>0){break b}tR(c,h);a=H[c+8>>2]&2147483647;e=H[c+4>>2]}y=O(f+x);C=O(r+m);D=O(t+l);s=p+1|0;H[c+4>>2]=s;h=H[c>>2];e=h+N(e,36)|0;L[e+24>>2]=i;L[e+12>>2]=l;L[e+8>>2]=g;L[e+4>>2]=w;L[e>>2]=v;L[e+32>>2]=n;L[e+28>>2]=j;L[e+20>>2]=x;L[e+16>>2]=m;g=L[b+20>>2];l=L[b+16>>2];m=L[b+12>>2];q=p+3|0;c:{if(q>>>0<=a>>>0){break c}e=a?a<<1:2;e=e>>>0>q>>>0?e:q;if(e>>>0<=a>>>0){break c}tR(c,e);a=H[c+8>>2]&2147483647;h=H[c>>2];s=H[c+4>>2]}u=O(f+B);v=O(r+z);w=O(t+A);H[c+4>>2]=o;e=N(s,36)+h|0;L[e+24>>2]=D;L[e+12>>2]=m;L[e+8>>2]=n;L[e+4>>2]=j;L[e>>2]=i;L[e+32>>2]=y;L[e+28>>2]=C;L[e+20>>2]=g;L[e+16>>2]=l;g=L[b+20>>2];l=L[b+16>>2];m=L[b+12>>2];s=p+4|0;d:{if(s>>>0<=a>>>0){break d}e=a?a<<1:2;e=e>>>0>s>>>0?e:s;if(e>>>0<=a>>>0){break d}tR(c,e);a=H[c+8>>2]&2147483647;h=H[c>>2];o=H[c+4>>2]}H[c+4>>2]=q;e=N(o,36)+h|0;L[e+24>>2]=w;L[e+12>>2]=m;L[e+8>>2]=y;L[e+4>>2]=C;L[e>>2]=D;L[e+32>>2]=u;L[e+28>>2]=v;L[e+20>>2]=g;L[e+16>>2]=l;g=L[b+32>>2];l=L[b+28>>2];m=L[b+24>>2];x=L[b+20>>2];f=L[b+16>>2];r=L[b+12>>2];o=p+5|0;e:{if(o>>>0<=a>>>0){break e}e=a?a<<1:2;e=e>>>0>o>>>0?e:o;if(e>>>0<=a>>>0){break e}tR(c,e);a=H[c+8>>2]&2147483647;h=H[c>>2];q=H[c+4>>2]}H[c+4>>2]=s;e=N(q,36)+h|0;L[e+24>>2]=m;L[e+12>>2]=r;L[e+8>>2]=u;L[e+4>>2]=v;L[e>>2]=w;L[e+32>>2]=g;L[e+28>>2]=l;L[e+20>>2]=x;L[e+16>>2]=f;g=L[b+8>>2];l=L[b+4>>2];m=L[b>>2];x=L[b+32>>2];f=L[b+28>>2];r=L[b+24>>2];q=p+6|0;f:{if(q>>>0<=a>>>0){break f}e=a?a<<1:2;e=e>>>0>q>>>0?e:q;if(e>>>0<=a>>>0){break f}tR(c,e);a=H[c+8>>2]&2147483647;h=H[c>>2];s=H[c+4>>2]}H[c+4>>2]=o;e=N(s,36)+h|0;L[e+24>>2]=m;L[e+12>>2]=r;L[e+8>>2]=n;L[e+4>>2]=j;L[e>>2]=i;L[e+32>>2]=g;L[e+28>>2]=l;L[e+20>>2]=x;L[e+16>>2]=f;g=L[b+32>>2];l=L[b+28>>2];m=L[b+24>>2];b=p+7|0;g:{if(b>>>0<=a>>>0){break g}e=a;a=a?a<<1:2;a=a>>>0>b>>>0?a:b;if(e>>>0>=a>>>0){break g}tR(c,a);h=H[c>>2];o=H[c+4>>2]}H[c+4>>2]=q;a=N(o,36)+h|0;L[a+24>>2]=m;L[a+12>>2]=w;L[a+8>>2]=n;L[a+4>>2]=j;L[a>>2]=i;L[a+32>>2]=g;L[a+28>>2]=l;L[a+20>>2]=u;L[a+16>>2]=v;H[k+12>>2]=-1;a=H[d+4>>2];h:{if(a>>>0>=(H[d+8>>2]&2147483647)>>>0){qm(d,k+12|0);b=H[d+4>>2];break h}H[H[d>>2]+(a<<2)>>2]=-1;b=H[d+4>>2]+1|0;H[d+4>>2]=b}i:{if((H[d+8>>2]&2147483647)>>>0<=b>>>0){qm(d,k+12|0);b=H[d+4>>2];break i}H[H[d>>2]+(b<<2)>>2]=H[k+12>>2];b=H[d+4>>2]+1|0;H[d+4>>2]=b}j:{if((H[d+8>>2]&2147483647)>>>0<=b>>>0){qm(d,k+12|0);b=H[d+4>>2];break j}H[H[d>>2]+(b<<2)>>2]=H[k+12>>2];b=H[d+4>>2]+1|0;H[d+4>>2]=b}k:{if((H[d+8>>2]&2147483647)>>>0<=b>>>0){qm(d,k+12|0);b=H[d+4>>2];break k}H[H[d>>2]+(b<<2)>>2]=H[k+12>>2];b=H[d+4>>2]+1|0;H[d+4>>2]=b}l:{if((H[d+8>>2]&2147483647)>>>0<=b>>>0){qm(d,k+12|0);b=H[d+4>>2];break l}H[H[d>>2]+(b<<2)>>2]=H[k+12>>2];b=H[d+4>>2]+1|0;H[d+4>>2]=b}m:{if((H[d+8>>2]&2147483647)>>>0<=b>>>0){qm(d,k+12|0);break m}H[H[d>>2]+(b<<2)>>2]=H[k+12>>2];H[d+4>>2]=H[d+4>>2]+1}p=6}Oa=k+16|0;return p}function kA(a,b,c){a=a|0;b=b|0;c=c|0;var d=O(0),e=O(0),f=0,g=0,h=0,i=0,j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=0,p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),F=O(0),G=O(0),K=O(0),M=O(0),P=O(0),Q=O(0),R=O(0),S=O(0),T=O(0),U=0,V=O(0),W=O(0),X=O(0),Y=O(0),Z=0,_=O(0),$=O(0),aa=O(0),ba=O(0),ca=0,da=0,ea=O(0),fa=O(0),ga=O(0),ha=O(0),ia=O(0),ja=O(0),ka=O(0),la=O(0),ma=O(0),na=O(0),oa=O(0),pa=O(0),qa=O(0),ra=O(0),sa=O(0),ta=O(0),ua=O(0),va=O(0),wa=O(0),xa=O(0),ya=O(0),za=O(0),Aa=O(0),Ba=O(0),Ca=O(0),Da=O(0),Ea=O(0),Fa=O(0),Ga=O(0),Ha=O(0),Ia=O(0),Ja=O(0),Ka=O(0),La=O(0),Ma=0,Na=O(0),Oa=O(0),Pa=O(0),Qa=O(0),Ra=O(0),Sa=O(0),Ta=O(0),Ua=O(0),Va=O(0);f=H[a+96>>2];Ea=L[f+28>>2];q=L[f+24>>2];r=L[f+20>>2];g=H[a+64>>2];Fa=L[g+28>>2];s=L[g+24>>2];t=L[g+20>>2];h=H[a+32>>2];Ga=L[h+28>>2];u=L[h+24>>2];v=L[h+20>>2];i=H[a>>2];Ha=L[i+28>>2];w=L[i+24>>2];x=L[i+20>>2];y=L[f+16>>2];Ia=L[f+12>>2];z=L[f+8>>2];A=L[f+4>>2];B=L[f>>2];C=L[g+16>>2];Ja=L[g+12>>2];D=L[g+8>>2];E=L[g+4>>2];F=L[g>>2];G=L[h+16>>2];Ka=L[h+12>>2];K=L[h+8>>2];M=L[h+4>>2];P=L[h>>2];Q=L[i+16>>2];La=L[i+12>>2];R=L[i+8>>2];S=L[i+4>>2];T=L[i>>2];c=J[a+22>>1];if(c){b=H[a+24>>2];Ma=b+(c<<4)|0;while(1){a=b;ca=a+96|0;da=ca+(I[a+1|0]<<4)|0;Z=I[a+2|0];b=da+N(Z,144)|0;if(Z){Na=L[a+76>>2];Oa=L[a+72>>2];Pa=L[a+68>>2];Qa=L[a+64>>2];_=L[a+44>>2];$=L[a+40>>2];aa=L[a+36>>2];ba=L[a+32>>2];Ra=L[a+28>>2];Sa=L[a+24>>2];Ta=L[a+20>>2];Ua=L[a+16>>2];o=0;while(1){U=(o>>>H[a+12>>2]<<4)+ca|0;V=L[U+4>>2];c=N(o,144)+da|0;l=L[c+100>>2];Va=L[c+132>>2];d=L[c+116>>2];ea=L[c+36>>2];fa=L[c+20>>2];ga=L[c+4>>2];ha=L[c+84>>2];ia=L[c+52>>2];ja=L[c+68>>2];n=L[U+8>>2];m=L[c+104>>2];W=L[c+136>>2];e=L[c+120>>2];ka=L[c+40>>2];la=L[c+24>>2];ma=L[c+8>>2];na=L[c+88>>2];oa=L[c+56>>2];pa=L[c+72>>2];X=L[U+12>>2];qa=L[c+108>>2];Y=L[c+140>>2];j=L[c+124>>2];ra=L[c+44>>2];sa=L[c+28>>2];ta=L[c+12>>2];ua=L[c+92>>2];va=L[c+60>>2];wa=L[c+76>>2];xa=L[c>>2];ya=L[c+16>>2];za=L[c+32>>2];Aa=L[c+48>>2];Ba=L[c+64>>2];Ca=L[c+80>>2];k=L[c+112>>2];Da=L[c+96>>2];p=O(O(O(O(O(O(T*xa)+O(S*ya))+O(R*za))+O(O(O(Q*Aa)+O(x*Ba))+O(w*Ca)))*k)+O(Da-O(k*L[c+128>>2])));k=O(Ua*L[U>>2]);p=k>p?p:k;k=O(-k);k=k>2]=k;Y=O(O(j*O(O(O(O(B*ta)+O(A*sa))+O(z*ra))+O(O(O(y*va)+O(r*wa))+O(q*ua))))+O(qa-O(j*Y)));j=O(Ra*X);X=j>Y?Y:j;j=O(-j);j=j>2]=j;W=O(O(e*O(O(O(O(F*ma)+O(E*la))+O(D*ka))+O(O(O(C*oa)+O(t*pa))+O(s*na))))+O(m-O(e*W)));e=O(Sa*n);n=e>W?W:e;e=O(-e);n=e>2]=n;e=O(O(d*O(O(O(O(P*ga)+O(M*fa))+O(K*ea))+O(O(O(G*ia)+O(v*ja))+O(u*ha))))+O(l-O(d*Va)));d=O(Ta*V);e=d>e?e:d;d=O(-d);V=d>2]=V;d=O(k-Da);R=O(R+O(O(ba*za)*d));S=O(S+O(O(ba*ya)*d));T=O(T+O(O(ba*xa)*d));e=O(Qa*d);w=O(w+O(Ca*e));d=O(j-qa);z=O(z+O(O(_*ra)*d));m=O(n-m);D=O(D+O(O($*ka)*m));l=O(V-l);K=O(K+O(O(aa*ea)*l));x=O(x+O(Ba*e));A=O(A+O(O(_*sa)*d));E=O(E+O(O($*la)*m));M=O(M+O(O(aa*fa)*l));Q=O(Q+O(Aa*e));B=O(B+O(O(_*ta)*d));F=O(F+O(O($*ma)*m));P=O(P+O(O(aa*ga)*l));d=O(Na*d);q=O(q+O(ua*d));m=O(Oa*m);s=O(s+O(na*m));l=O(Pa*l);u=O(u+O(ha*l));r=O(r+O(wa*d));t=O(t+O(pa*m));v=O(v+O(ja*l));y=O(y+O(va*d));C=O(C+O(oa*m));G=O(G+O(ia*l));o=o+1|0;if((Z|0)!=(o|0)){continue}break}}if(b>>>0>>0){continue}break}}L[i+12>>2]=La;L[i+8>>2]=R;L[i+4>>2]=S;L[i>>2]=T;L[h+12>>2]=Ka;L[h+8>>2]=K;L[h+4>>2]=M;L[h>>2]=P;L[g+12>>2]=Ja;L[g+8>>2]=D;L[g+4>>2]=E;L[g>>2]=F;L[f+12>>2]=Ia;L[f+8>>2]=z;L[f+4>>2]=A;L[f>>2]=B;L[i+28>>2]=Ha;L[i+24>>2]=w;L[i+20>>2]=x;L[i+16>>2]=Q;L[h+28>>2]=Ga;L[h+24>>2]=u;L[h+20>>2]=v;L[h+16>>2]=G;L[g+28>>2]=Fa;L[g+24>>2]=s;L[g+20>>2]=t;L[g+16>>2]=C;L[f+28>>2]=Ea;L[f+24>>2]=q;L[f+20>>2]=r;L[f+16>>2]=y}function Jw(a,b,c){var d=O(0),e=0,f=O(0),g=O(0),h=0,i=O(0),j=O(0),k=O(0),l=0,m=O(0),n=O(0),o=0,p=0,q=O(0),r=0,s=O(0),t=0,u=O(0),v=O(0),w=O(0),x=0,y=0,z=0,A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),G=O(0),J=0,K=O(0),M=O(0),Q=O(0),R=0,S=0,T=0,U=0,V=0,W=O(0),X=O(0),Y=O(0),Z=O(0),_=O(0),$=O(0),aa=O(0),ba=O(0),ca=O(0),da=O(0),ea=O(0),fa=O(0),ga=0,ha=0,ia=0,ja=0,ka=0,la=0;y=Oa-32|0;Oa=y;r=1;V=H[c+8>>2];p=H[c+4>>2];l=H[c>>2];k=L[b+352>>2];S=H[b+336>>2];if(!(F[H[b+364>>2]]&1)){K=L[b+448>>2];M=L[b+460>>2];Q=L[b+472>>2];W=L[b+452>>2];X=L[b+464>>2];Y=L[b+476>>2];Z=L[b+456>>2];_=L[b+468>>2];$=L[b+480>>2];D=L[b+508>>2];aa=L[b+484>>2];ba=L[b+496>>2];m=L[b+416>>2];q=L[b+420>>2];E=L[b+512>>2];ca=L[b+488>>2];da=L[b+500>>2];u=L[b+424>>2];v=L[b+428>>2];A=L[b+432>>2];G=L[b+516>>2];ea=L[b+492>>2];fa=L[b+504>>2];B=L[b+436>>2];C=L[b+440>>2];h=H[c+12>>2];d=L[h+20>>2];s=L[b+444>>2];f=L[h+24>>2];w=L[b+412>>2];g=L[h+8>>2];i=L[h>>2];j=L[h+4>>2];n=L[h+16>>2];H[p+28>>2]=0;H[p+12>>2]=0;G=O(O(O(O(ea*i)+O(fa*j))+O(G*g))+O(O(s*f)+O(O(B*n)+O(C*d))));L[p+24>>2]=-G;E=O(O(O(O(ca*i)+O(da*j))+O(E*g))+O(O(A*f)+O(O(u*n)+O(v*d))));L[p+20>>2]=-E;D=O(O(O(O(aa*i)+O(ba*j))+O(D*g))+O(O(q*f)+O(O(w*n)+O(m*d))));L[p+16>>2]=-D;q=O(O(O(O(q*i)+O(A*j))+O(s*g))+O(O(O(Z*n)+O(_*d))+O($*f)));L[p+8>>2]=-q;m=O(O(O(O(m*i)+O(v*j))+O(C*g))+O(O(O(W*n)+O(X*d))+O(Y*f)));L[p+4>>2]=-m;d=O(O(O(O(w*i)+O(u*j))+O(B*g))+O(O(O(K*n)+O(M*d))+O(Q*f)));L[p>>2]=-d;L[l>>2]=L[l>>2]-O(k*d);L[l+4>>2]=L[l+4>>2]-O(k*m);L[l+8>>2]=L[l+8>>2]-O(k*q);L[l+16>>2]=L[l+16>>2]-O(k*D);L[l+20>>2]=L[l+20>>2]-O(k*E);L[l+24>>2]=L[l+24>>2]-O(k*G)}if(S>>>0>1){ga=H[c+24>>2];ha=H[c+28>>2];while(1){o=H[b+340>>2]+N(r,160)|0;d=L[o+124>>2];J=r<<5;e=J+H[b+332>>2]|0;c=(H[e+24>>2]<<5)+p|0;q=L[c>>2];f=L[o+120>>2];u=L[c+4>>2];A=O(O(O(d*q)-O(f*u))+L[c+24>>2]);v=L[c+8>>2];g=O(f*v);f=L[o+128>>2];B=O(O(g-O(f*q))+L[c+20>>2]);C=O(O(O(f*u)-O(d*v))+L[c+16>>2]);c=H[b+344>>2]+N(r,80)|0;h=I[c+76|0];a:{if(h){T=H[c+72>>2]<<2;U=T+ha|0;ia=H[e+20>>2];c=0;while(1){e=c<<2;x=e+y|0;d=L[(e+o|0)+132>>2];e=o+(c<<5)|0;L[x>>2]=d-O(O(O(L[e+24>>2]*v)+O(O(L[e+16>>2]*q)+O(u*L[e+20>>2])))+O(O(L[e+8>>2]*A)+O(O(L[e>>2]*C)+O(B*L[e+4>>2]))));c=c+1|0;if((h|0)!=(c|0)){continue}break}ja=h&254;ka=h&1;t=H[a+360>>2];e=0;while(1){o=e<<2;z=o+U|0;H[z>>2]=0;d=O(0);c=0;R=0;if((h|0)!=1){while(1){x=t+N(r,36)|0;d=O(O(L[o+(x+N(c,12)|0)>>2]*L[(c<<2)+y>>2])+d);L[z>>2]=d;la=x;x=c|1;d=O(O(L[o+(la+N(x,12)|0)>>2]*L[(x<<2)+y>>2])+d);L[z>>2]=d;c=c+2|0;R=R+2|0;if((ja|0)!=(R|0)){continue}break}}if(ka){L[z>>2]=O(L[o+((t+N(r,36)|0)+N(c,12)|0)>>2]*L[(c<<2)+y>>2])+d}e=e+1|0;if((h|0)!=(e|0)){continue}break}m=O(0);if(!h){f=O(0);g=O(0);i=O(0);j=O(0);n=O(0);break a}o=ga+T|0;z=H[b+272>>2];c=0;n=O(0);j=O(0);i=O(0);g=O(0);f=O(0);while(1){s=L[ia+264>>2];t=c<<2;e=t+U|0;t=o+t|0;w=L[t>>2];d=O(O(L[e>>2]*k)+w);if(s>2]=O(d-w)/k}L[t>>2]=d;d=L[e>>2];e=(z+N(r,76)|0)+N(c,24)|0;j=O(j+O(d*L[e+12>>2]));i=O(i+O(d*L[e+8>>2]));g=O(g+O(d*L[e+4>>2]));f=O(f+O(d*L[e>>2]));m=O(m+O(d*L[e+20>>2]));n=O(n+O(d*L[e+16>>2]));c=c+1|0;if((h|0)!=(c|0)){continue}break}break a}f=O(0);g=O(0);i=O(0);j=O(0);n=O(0);m=O(0)}c=J+V|0;d=L[c+20>>2];s=L[c+24>>2];w=L[c>>2];K=L[c+4>>2];M=L[c+8>>2];Q=L[c+16>>2];c=p+J|0;H[c+28>>2]=0;H[c+12>>2]=0;j=O(j+O(C+Q));L[c+16>>2]=j;i=O(i+O(v+M));L[c+8>>2]=i;g=O(g+O(u+K));L[c+4>>2]=g;f=O(f+O(q+w));L[c>>2]=f;m=O(m+O(A+s));L[c+24>>2]=m;d=O(n+O(B+d));L[c+20>>2]=d;c=l+J|0;L[c>>2]=O(k*f)+L[c>>2];L[c+4>>2]=O(k*g)+L[c+4>>2];L[c+8>>2]=O(k*i)+L[c+8>>2];L[c+16>>2]=O(k*j)+L[c+16>>2];L[c+20>>2]=O(k*d)+L[c+20>>2];L[c+24>>2]=O(k*m)+L[c+24>>2];r=r+1|0;if((S|0)!=(r|0)){continue}break}}Oa=y+32|0}function Ku(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,k=O(0),l=0,m=O(0),n=O(0),o=0,p=0,q=0,r=O(0),s=O(0),t=O(0),u=O(0),v=0,w=0,x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=0,J=0,K=O(0),M=O(0);i=Oa-560|0;Oa=i;q=H[a+40>>2];J=H[f>>2];k=L[c+24>>2];f=H[c>>2];j=H[c+4>>2];l=H[c+8>>2];v=H[c+12>>2];o=H[c+20>>2];w=H[c+16>>2];H[i+556>>2]=0;L[i+552>>2]=k;H[i+544>>2]=w;H[i+548>>2]=o;H[i+536>>2]=l;H[i+540>>2]=v;H[i+528>>2]=f;H[i+532>>2]=j;f=0;a:{if(L[b+4>>2]!=O(1)){break a}f=0;if(L[b+8>>2]!=O(1)){break a}f=L[b+12>>2]==O(1)}H[i+512>>2]=0;H[i+516>>2]=1065353216;H[i+504>>2]=0;H[i+508>>2]=0;H[i+496>>2]=0;H[i+500>>2]=1065353216;H[i+488>>2]=0;H[i+492>>2]=0;H[i+480>>2]=1065353216;H[i+484>>2]=1065353216;H[i+464>>2]=1065353216;H[i+468>>2]=0;F[i+520|0]=0;H[i+472>>2]=0;H[i+476>>2]=0;H[i+456>>2]=0;H[i+460>>2]=0;H[i+448>>2]=1065353216;H[i+452>>2]=0;if(!f){yW(i+448|0,b+4|0,b+16|0)}H[i+432>>2]=0;H[i+436>>2]=1065353216;H[i+424>>2]=0;H[i+428>>2]=0;H[i+416>>2]=0;H[i+420>>2]=1065353216;H[i+408>>2]=0;H[i+412>>2]=0;H[i+400>>2]=1065353216;H[i+404>>2]=1065353216;H[i+384>>2]=1065353216;H[i+388>>2]=0;F[i+440|0]=0;H[i+392>>2]=0;H[i+396>>2]=0;H[i+376>>2]=0;H[i+380>>2]=0;H[i+368>>2]=1065353216;H[i+372>>2]=0;j=i+368|0;v=L[a+4>>2]==O(1)&L[a+8>>2]==O(1)&L[a+12>>2]==O(1);if(!v){yW(j,a+4|0,a+16|0)}k=L[j+16>>2];m=L[j+28>>2];n=L[j+24>>2];r=L[j>>2];A=L[j+12>>2];B=L[j+4>>2];l=H[a+40>>2];x=L[l>>2];s=L[j+8>>2];y=L[l+4>>2];t=L[j+20>>2];z=L[l+8>>2];u=L[j+32>>2];K=O(O(O(x*s)+O(y*t))+O(z*u));C=s;s=L[l+12>>2];D=t;t=L[l+16>>2];M=u;u=L[l+20>>2];C=O(O(O(P(O(C*s)))+O(P(O(D*t))))+O(P(O(M*u))));L[i+364>>2]=K+C;D=O(O(O(x*B)+O(y*k))+O(z*m));k=O(O(O(P(O(B*s)))+O(P(O(k*t))))+O(P(O(m*u))));L[i+360>>2]=D+k;m=O(O(O(x*r)+O(y*A))+O(z*n));n=O(O(O(P(O(r*s)))+O(P(O(A*t))))+O(P(O(n*u))));L[i+356>>2]=m+n;L[i+352>>2]=K-C;L[i+348>>2]=D-k;L[i+344>>2]=m-n;r=L[j+16>>2];A=L[j+28>>2];B=L[j+24>>2];x=L[j>>2];y=L[j+12>>2];z=L[j+4>>2];k=L[l+24>>2];m=L[l+28>>2];n=L[l+32>>2];L[i+280>>2]=O(O(k*L[j+8>>2])+O(m*L[j+20>>2]))+O(n*L[j+32>>2]);L[i+276>>2]=O(O(k*z)+O(m*r))+O(n*A);L[i+272>>2]=O(O(k*x)+O(m*y))+O(n*B);j=I[l+38|0];H[i+284>>2]=j;p=I[l+39|0];H[i+288>>2]=p;o=G[l+36>>1];w=o&32767;H[i+292>>2]=w;E=H[l+40>>2];H[i+296>>2]=E;p=N(p,20)+E|0;H[i+300>>2]=p;p=p+N(j,12)|0;H[i+308>>2]=p;j=N(j,3);E=j+(p+(o<<1&65534)|0)|0;o=(o|0)>=0;H[i+312>>2]=o?0:E;H[i+304>>2]=(j+(p+(w<<1)|0)|0)+(o?0:w<<2);H[i+332>>2]=H[l+44>>2];j=H[l+52>>2];H[i+316>>2]=H[l+48>>2];H[i+320>>2]=j;j=H[l+60>>2];H[i+324>>2]=H[l+56>>2];H[i+328>>2]=j;j=H[a+16>>2];l=H[a+20>>2];o=H[a+28>>2];H[i+264>>2]=H[a+24>>2];H[i+268>>2]=o;H[i+256>>2]=j;H[i+260>>2]=l;k=L[a+8>>2];m=L[a+12>>2];n=L[a+4>>2];H[i+252>>2]=0;L[i+248>>2]=m;L[i+244>>2]=k;L[i+240>>2]=n;r=O(L[e+8>>2]*O(.05000000074505806));n=O(n*L[q+52>>2]);k=O(k*L[q+56>>2]);k=k>=n?n:k;m=O(m*L[q+60>>2]);k=k<=m?k:m;m=O(k*O(.25));L[i+224>>2]=m>r?r:m;F[i+96|0]=0;H[i+88>>2]=0;H[i+92>>2]=0;H[i+80>>2]=0;H[i+84>>2]=0;H[i+72>>2]=0;H[i+76>>2]=0;H[i+64>>2]=0;H[i+68>>2]=0;H[i+208>>2]=q;H[i+216>>2]=H[q+40>>2]+N(I[q+39|0],20);a=I[q+38|0];L[i+88>>2]=k*O(.02500000037252903);L[i+80>>2]=k*O(.10000000149011612);L[i+84>>2]=k*O(.05000000074505806);F[i+220|0]=a;a=i+112|0;j=i+160|0;CU(i+240|0,i+256|0,a,j,i- -64|0,v);H[i+212>>2]=H[q+44>>2];b:{if(v){F[i+44|0]=1;H[i+40>>2]=j;H[i+36>>2]=a;H[i>>2]=125820;H[i+32>>2]=i+528;H[i+48>>2]=i- -64;a=x0(i+272|0,i,i+224|0,i+344|0,b,c,d,L[e>>2],g,i+368|0,i+448|0,1,f,J,h);break b}F[i+44|0]=0;H[i+40>>2]=j;H[i+36>>2]=a;H[i>>2]=125868;H[i+32>>2]=i+528;H[i+48>>2]=i- -64;a=x0(i+272|0,i,i+224|0,i+344|0,b,c,d,L[e>>2],g,i+368|0,i+448|0,0,f,J,h)}Oa=i+560|0;return a|0}function TV(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=O(e);f=f|0;g=g|0;h=h|0;var i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=0,q=O(0),r=0,s=O(0),t=0,u=0,v=0,w=0,y=O(0),z=O(0),A=0;g=Oa+-64|0;Oa=g;j=L[b+8>>2];i=O(L[c+8>>2]-L[b+24>>2]);l=O(i+i);i=L[b>>2];k=O(L[c>>2]-L[b+16>>2]);m=O(k+k);k=O(L[c+4>>2]-L[b+20>>2]);o=O(k+k);k=L[b+4>>2];s=O(O(j*l)+O(O(i*m)+O(o*k)));n=L[b+12>>2];q=O(O(n*n)+O(-.5));L[g+56>>2]=O(j*s)+O(O(l*q)-O(n*O(O(i*o)-O(m*k))));L[g+52>>2]=O(k*s)+O(O(o*q)-O(n*O(O(j*m)-O(l*i))));L[g+48>>2]=O(i*s)+O(O(m*q)-O(n*O(O(k*l)-O(o*j))));l=L[d+8>>2];l=O(l+l);m=L[d>>2];m=O(m+m);o=L[d+4>>2];o=O(o+o);s=O(O(j*l)+O(O(i*m)+O(k*o)));L[g+40>>2]=O(j*s)+O(O(l*q)-O(n*O(O(i*o)-O(m*k))));L[g+36>>2]=O(k*s)+O(O(o*q)-O(n*O(O(j*m)-O(l*i))));L[g+32>>2]=O(i*s)+O(O(m*q)-O(n*O(O(k*l)-O(o*j))));j=L[a+4>>2];i=L[a+8>>2];L[g+8>>2]=-L[a+12>>2];L[g+4>>2]=-i;L[g>>2]=-j;t=a+4|0;r=Oa-16|0;H[r>>2]=-1082130432;H[r+4>>2]=-1082130432;i=L[g+48>>2];j=L[g>>2];a:{b:{if(i>2]=j;j=L[g+32>>2];if(!H[g+32>>2]){j=O(-1);break a}j=O(O(L[g>>2]-L[g+48>>2])/j);break b}p=1;j=O(-1);l=i;i=L[t>>2];if(!(l>i)){break a}L[g+16>>2]=i;p=0;i=L[g+32>>2];if(!H[g+32>>2]){break a}j=O(O(L[t>>2]-L[g+48>>2])/i)}L[r>>2]=j}u=g+4|0;c:{d:{e:{i=L[g+52>>2];k=L[g+4>>2];if(!(i>2];if(!(l>i)){break c}L[g+20>>2]=i;p=H[g+36>>2];if(!p){break d}a=t+4|0;break e}L[g+20>>2]=k;a=u;p=H[g+36>>2];if(p){break e}p=0;k=O(-1);break c}k=O(O(L[a>>2]-L[g+52>>2])/(x(2,p),C()));L[r+4>>2]=k}p=0}v=g+8|0;f:{g:{h:{i:{j:{i=L[g+56>>2];n=L[g+8>>2];if(!(i>2];if(!(l>i)){break j}L[g+24>>2]=i;p=H[g+40>>2];if(p){a=t+8|0;break i}i=O(-1);break h}L[g+24>>2]=n;a=v;p=H[g+40>>2];if(p){break i}i=O(-1);break h}if(!p){i=O(-1);break h}L[g+16>>2]=L[g+48>>2];L[g+20>>2]=L[g+52>>2];L[g+24>>2]=L[g+56>>2];H[g+12>>2]=0;p=1;break g}i=O(O(L[a>>2]-L[g+56>>2])/(x(2,p),C()));L[r+8>>2]=i}p=0;a=j>2]>2];r=H[r>>2];if((r|0)<0){break g}k:{if(a){i=O(O(j*L[g+32>>2])+L[g+48>>2]);L[g+16>>2]=i;if(i>2]+O(-9999999747378752e-21))|i>O(L[t>>2]+O(9999999747378752e-21))){break g}if((a|0)==1){break k}}i=O(O(j*L[g+36>>2])+L[g+52>>2]);L[g+20>>2]=i;if(i>2]+O(-9999999747378752e-21))|i>O(L[t+4>>2]+O(9999999747378752e-21))){break g}}if(!w){j=O(O(j*L[g+40>>2])+L[g+56>>2]);L[g+24>>2]=j;if(j>2]+O(-9999999747378752e-21))|j>O(L[t+8>>2]+O(9999999747378752e-21))){break g}}H[g+12>>2]=r;p=a+1|0;break f}}l:{if(!p){break l}j=L[g+12>>2];if(j>e){break l}H[h+44>>2]=0;H[h+48>>2]=0;H[h+8>>2]=-1;L[h+40>>2]=j;a=0;f=J[f>>1];if(f&1){m:{if(j!=O(0)){y=L[b+24>>2];z=L[b+16>>2];i=L[b+8>>2];e=L[g+24>>2];k=O(e+e);n=L[b>>2];e=L[g+16>>2];q=O(e+e);l=L[b+4>>2];e=L[g+20>>2];m=O(e+e);o=O(O(i*k)+O(O(n*q)+O(l*m)));e=L[b+12>>2];s=O(O(e*e)+O(-.5));L[h+20>>2]=L[b+20>>2]+O(O(l*o)+O(O(m*s)+O(e*O(O(i*q)-O(k*n)))));L[h+16>>2]=z+O(O(n*o)+O(O(q*s)+O(e*O(O(l*k)-O(m*i)))));e=O(y+O(O(i*o)+O(O(k*s)+O(e*O(O(n*m)-O(q*l))))));break m}L[h+16>>2]=L[c>>2];L[h+20>>2]=L[c+4>>2];e=L[c+8>>2]}L[h+24>>2]=e;a=1}n:{if(f&2){a=a|2;if(j==O(0)){e=L[d>>2];j=L[d+4>>2];L[h+36>>2]=-L[d+8>>2];L[h+32>>2]=-j;L[h+28>>2]=-e;break n}H[g+8>>2]=0;H[g>>2]=0;H[g+4>>2]=0;c=(p<<2)-4|0;L[c+g>>2]=L[c+(g+16|0)>>2]>O(0)?O(1):O(-1);j=L[b+8>>2];e=L[g+8>>2];i=O(e+e);k=L[b>>2];e=L[g>>2];n=O(e+e);e=L[g+4>>2];q=O(e+e);l=L[b+4>>2];m=O(O(j*i)+O(O(k*n)+O(q*l)));e=L[b+12>>2];o=O(O(e*e)+O(-.5));L[h+36>>2]=O(j*m)+O(O(i*o)+O(e*O(O(k*q)-O(n*l))));L[h+32>>2]=O(l*m)+O(O(q*o)+O(e*O(O(j*n)-O(i*k))));L[h+28>>2]=O(k*m)+O(O(n*o)+O(e*O(O(l*i)-O(q*j))));break n}H[h+28>>2]=0;H[h+32>>2]=0;H[h+36>>2]=0}G[h+12>>1]=a;A=1}Oa=g- -64|0;return A|0}function HN(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=O(0),l=O(0),m=0,n=0,o=0,p=0,q=0;f=Oa+-64|0;Oa=f;i=H[a+28>>2];o=H[i+292>>2];if(o){while(1){a=m;m=a+H[H[i+288>>2]+(n<<2)>>2]|0;a:{if(a>>>0>=m>>>0){break a}while(1){e=H[H[i+276>>2]+(a<<2)>>2];if(L[e+28>>2]>O(1)){break a}b:{if(!I[e+68|0]){break b}d=H[e+52>>2];H[d+8>>2]=H[d+8>>2]|4;j=H[d+48>>2];g=j+32>>>5|0;c=H[i+312>>2];b=H[c+976>>2]&2147483647;h=I[d+43|0];c:{if(!(h&2)){d:{if(b>>>0>=g>>>0){b=H[c+972>>2];break d}b=H[33808];b=Ra[H[H[b+12>>2]+8>>2]](b+12|0,g<<2,20591,14969,438)|0;d=H[c+972>>2];e:{if(!d){break e}R6(b,d,H[c+976>>2]<<2);if(H[c+976>>2]<0){break e}d=H[c+972>>2];if(!d){break e}h=H[33808];Ra[H[H[h+12>>2]+12>>2]](h+12|0,d)}d=H[c+976>>2];S6((d<<2)+b|0,0,g-d<<2);H[c+976>>2]=g;H[c+972>>2]=b;d=H[e+52>>2];h=I[d+43|0]}b=(j>>>3&536870908)+b|0;H[b>>2]=H[b>>2]|1<>2];Ra[H[H[b>>2]+36>>2]](b,d);b=H[i+320>>2];Ra[H[H[b>>2]+28>>2]](b,H[e+52>>2],1,0);p=p+1|0;d=H[e+52>>2];break c}f:{if(b>>>0>=g>>>0){b=H[c+972>>2];break f}b=H[33808];b=Ra[H[H[b+12>>2]+8>>2]](b+12|0,g<<2,20591,14969,438)|0;d=H[c+972>>2];g:{if(!d){break g}R6(b,d,H[c+976>>2]<<2);if(H[c+976>>2]<0){break g}d=H[c+972>>2];if(!d){break g}h=H[33808];Ra[H[H[h+12>>2]+12>>2]](h+12|0,d)}d=H[c+976>>2];S6((d<<2)+b|0,0,g-d<<2);H[c+976>>2]=g;H[c+972>>2]=b;d=H[e+52>>2];h=I[d+43|0]}b=(j>>>3&536870908)+b|0;H[b>>2]=H[b>>2]|1<>1];h:{if(b&1){break h}if(!(b&256)){break b}if(H[H[d+16>>2]+92>>2]!=2139095039?b&32:0){break h}if(!(b&64)|H[H[d+20>>2]+92>>2]==2139095039){break b}}h=H[d+48>>2];j=h+32>>>5|0;c=H[i+312>>2];i:{if(j>>>0<=(H[c+964>>2]&2147483647)>>>0){g=H[c+960>>2];break i}b=H[33808];g=Ra[H[H[b+12>>2]+8>>2]](b+12|0,j<<2,20591,14969,438)|0;b=H[c+960>>2];j:{if(!b){break j}R6(g,b,H[c+964>>2]<<2);if(H[c+964>>2]<0){break j}b=H[c+960>>2];if(!b){break j}d=H[33808];Ra[H[H[d+12>>2]+12>>2]](d+12|0,b)}b=H[c+964>>2];S6((b<<2)+g|0,0,j-b<<2);H[c+964>>2]=j;H[c+960>>2]=g;d=H[e+52>>2];b=J[d+40>>1]}c=(h>>>3&536870908)+g|0;H[c>>2]=H[c>>2]|1<>2];L[c+544>>2]=L[e+36>>2];L[c+548>>2]=L[e+40>>2];L[c+552>>2]=L[e+44>>2];k=L[e+20>>2];l=L[e+16>>2];L[c+536>>2]=-L[e+24>>2];L[c+532>>2]=-k;L[c+528>>2]=-l;g=H[e+72>>2];H[c+540>>2]=0;H[c+580>>2]=g;L[c+588>>2]=L[e+88>>2];L[c+584>>2]=L[e+80>>2];k=L[e+84>>2];H[c+568>>2]=0;H[c+560>>2]=0;H[c+564>>2]=0;L[c+572>>2]=k;H[c+556>>2]=2139095039;G[f+56>>1]=J[e+76>>1];G[f+58>>1]=J[e+78>>1];d=H[d+32>>2];k:{if(Tx(c+528|0,1,c,f+41|0,f+48|0,f+44|0,f+42|0,f+52|0,4,H[c+7188>>2],(b&128)>>>7|0,1,f+56|0,f+40|0,16,0,0,0,0,0,0,(g|0)!=-1)){c=J[f+42>>1];b=H[f+48>>2];G[b+6>>1]=0;G[b+4>>1]=c;H[H[e+52>>2]+32>>2]=b;if(d){G[d+6>>1]=1}H[b>>2]=d;L[H[f+52>>2]>>2]=L[e+96>>2];break k}if(!d){H[H[e+52>>2]+32>>2]=0;break k}G[d+6>>1]=1}if(I[H[e+52>>2]+40|0]&24){break b}k=L[e+96>>2];if(k==O(0)){break b}H[f+28>>2]=0;L[f+12>>2]=k;k=O(3.4028234663852886e38);l=O(3.4028234663852886e38);b=H[e>>2];if(b){l=L[H[b+36>>2]+92>>2]}b=H[e+4>>2];if(b){k=L[H[b+36>>2]+92>>2]}L[f+16>>2]=k>l?l:k;b=H[H[e+8>>2]+100>>2];H[f+20>>2]=b;e=H[H[e+12>>2]+100>>2];H[f+24>>2]=e;if(b>>>0>e>>>0){H[f+24>>2]=b;H[f+20>>2]=e}b=H[i+316>>2];e=H[b+8>>2];if(e>>>0>=(H[b+12>>2]&2147483647)>>>0){az(b,f+8|0);break b}c=H[f+12>>2];e=H[b+4>>2]+(e<<5)|0;H[e>>2]=H[f+8>>2];H[e+4>>2]=c;c=H[f+36>>2];H[e+24>>2]=H[f+32>>2];H[e+28>>2]=c;c=H[f+28>>2];H[e+16>>2]=H[f+24>>2];H[e+20>>2]=c;c=H[f+20>>2];H[e+8>>2]=H[f+16>>2];H[e+12>>2]=c;H[b+8>>2]=H[b+8>>2]+1}a=a+1|0;if((m|0)!=(a|0)){continue}break}}n=n+1|0;if((o|0)!=(n|0)){continue}break}}a=H[i+312>>2];H[a+1e3>>2]=H[a+1e3>>2]+p;H[a+1004>>2]=H[a+1004>>2]+q;Oa=f- -64|0}function kC(a,b,c,d,e,f,g){var h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=0,r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=0,G=O(0),I=O(0),J=0,K=O(0),M=O(0),P=O(0),Q=O(0),R=O(0),S=O(0),T=0;q=Oa-1056|0;Oa=q;h=L[e+8>>2];r=O(h+h);B=O(-r);E=r>B;h=L[e+4>>2];s=O(h+h);C=O(-s);J=s>C;h=L[e>>2];t=O(h+h);D=O(-t);e=t>D;h=L[d+8>>2];x=O(h+h);h=L[d+4>>2];y=O(h+h);h=L[d>>2];z=O(h+h);h=L[f>>2];a:{if(h>=O(3.4028234663852886e38)){u=s==O(0)?y:s>=O(0)?O(3.4028234663852886e38):O(-3.4028234663852886e38);v=t==O(0)?z:t>=O(0)?O(3.4028234663852886e38):O(-3.4028234663852886e38);h=x;if(r==O(0)){break a}h=r>=O(0)?O(3.4028234663852886e38):O(-3.4028234663852886e38);break a}u=O(y+O(s*h));v=O(z+O(t*h));h=O(x+O(r*h))}B=E?r:B;C=J?s:C;D=e?t:D;F[q+1040|0]=1;H[q+1048>>2]=256;H[q+1052>>2]=256;H[q+1044>>2]=q+16;d=H[c+588>>2];H[q+16>>2]=d;M=hu?y:u;Q=z>v?z:v;h=h>x?x:h;u=y>2];i=L[d>>2];n=O(j-i);i=O(j+i);d:{if(!(O(n+i)>=v)|!(O(i-n)<=Q)){break d}m=L[d+20>>2];k=L[d+4>>2];j=O(m-k);m=O(m+k);l=O(y-m);o=O(z-i);i=O(O(t*l)-O(s*o));k=O(-i);if(!(O(m-j)<=P)|(!(O(O(C*n)+O(D*j))>=(i>k?i:k))|!(O(j+m)>=u))){break d}m=L[d+24>>2];k=L[d+8>>2];i=O(m-k);m=O(m+k);w=O(x-m);k=O(O(s*w)-O(r*l));l=O(-k);if(!(O(m-i)<=M)|(!(O(O(B*j)+O(C*i))>=(k>l?k:l))|!(O(i+m)>=h))){break d}j=O(O(r*o)-O(t*w));m=O(-j);if(!(O(O(B*n)+O(D*i))>=(j>m?j:m))){break d}m=L[f>>2];L[q+12>>2]=m;if(H[d+40>>2]){while(1){d=H[d+36>>2];n=L[d- -64>>2];k=L[d+48>>2];j=O(n-k);m=L[d+68>>2];l=L[d+52>>2];i=O(m-l);m=O(m+l);p=O(y-m);k=O(n+k);G=O(z-k);o=O(O(t*p)-O(s*G));w=O(-o);l=L[d+72>>2];I=L[d+56>>2];n=O(l-I);l=O(l+I);A=O(x-l);p=O(O(s*A)-O(r*p));I=O(-p);G=O(O(r*G)-O(t*A));A=O(-G);e=O(k-j)<=Q&O(j+k)>=v&O(O(C*j)+O(D*i))>=(o>w?o:w)&O(i+m)>=u&O(m-i)<=P&O(O(B*i)+O(C*n))>=(p>I?p:I)&O(n+l)>=h&O(l-n)<=M&O(O(B*j)+O(D*n))>=(A>2];w=L[d>>2];j=O(n-w);o=L[d+20>>2];p=L[d+4>>2];i=O(o-p);o=O(o+p);A=O(y-o);w=O(n+w);K=O(z-w);I=O(O(t*A)-O(s*K));G=O(-I);p=L[d+24>>2];R=L[d+8>>2];n=O(p-R);p=O(p+R);S=O(x-p);A=O(O(s*S)-O(r*A));R=O(-A);K=O(O(r*K)-O(t*S));S=O(-K);E=O(w-j)<=Q&O(j+w)>=v&O(O(C*j)+O(D*i))>=(G=u&O(o-i)<=P&O(O(B*i)+O(C*n))>=(A>R?A:R)&O(n+p)>=h&O(p-n)<=M&O(O(B*j)+O(D*n))>=(K>S?K:S);e:{if(!(!E|!e)){e=O(O(O(l-p)*r)+O(O(O(k-w)*t)+O(s*O(m-o))))>O(0);H[H[q+1044>>2]+(c<<2)>>2]=d+N(e,48);d=d+N(!e,48)|0;c=c+1|0;if((c|0)!=(H[q+1052>>2]&2147483647)){break e}iC(q+16|0,c<<1);break e}if(!(e|E)){break d}d=E?d:d+48|0}if(H[d+40>>2]){continue}break}m=L[f>>2]}d=H[d+36>>2];E=H[d>>2];if(!E){break d}d=d+4|0;e=E;while(1){T=H[d>>2];f:{if(E>>>0>=2){J=N(T,24)+b|0;j=L[J+12>>2];i=L[J>>2];n=O(j-i);i=O(i+j);if(!(O(n+i)>=v)|!(O(i-n)<=Q)){break f}k=L[J+16>>2];l=L[J+4>>2];j=O(k-l);k=O(l+k);o=O(y-k);w=O(z-i);i=O(O(t*o)-O(s*w));l=O(-i);if(!(O(k-j)<=P)|(!(O(O(C*n)+O(D*j))>=(i>l?i:l))|!(O(j+k)>=u))){break f}k=L[J+20>>2];l=L[J+8>>2];i=O(k-l);k=O(l+k);p=O(x-k);l=O(O(s*p)-O(r*o));o=O(-l);if(!(O(k-i)<=M)|(!(O(O(B*j)+O(C*i))>=(l>o?l:o))|!(O(i+k)>=h))){break f}j=O(O(r*w)-O(t*p));k=O(-j);if(!(O(O(B*n)+O(D*i))>=(j>k?j:k))){break f}}if(!(Ra[H[H[g>>2]>>2]](g,q+12|0,(T<<3)+a|0)|0)){break c}j=L[q+12>>2];if(!(j>2]=j;h=O(x+O(r*j));M=hu?y:u;v=O(z+O(t*j));Q=z>v?z:v;h=h>x?x:h;u=y>2]+(c<<2)>>2];continue}break}d=0}a=H[q+1052>>2];g:{if((a|0)<0|!(a&2147483647)){break g}a=H[q+1044>>2];if((a|0)==(q+16|0)|!a){break g}b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,a)}Oa=q+1056|0;return d}function cq(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;m=Oa-16|0;Oa=m;e=c?d:J[a+24>>1];q=e<<2;d=q>>>0>1024;F[m+12|0]=d;a:{b:{c:{if(!d){f=m-(q+15&-16)|0;Oa=f;H[m+8>>2]=f;break c}f=G5(q,15891,417);H[m+8>>2]=f;if(!f){break b}}d:{e:{if(c){if(!e){break d}d=0;while(1){a=H[(i<<2)+c>>2];k=a+32|0;h=H[b+4>>2];f:{g:{if(!(h&8)){break g}a=H[a+36>>2];if((a&251658240)!=16777216){a=H[b+8>>2];if(!a){a=Tt(H[b>>2],h>>>24&15);H[b+8>>2]=a}h=H[a+28>>2];if(!h){break g}g=H[a+24>>2];a=0;while(1){if((k|0)==H[g+(a<<2)>>2]){break f}a=a+1|0;if((h|0)!=(a|0)){continue}break}break g}if((a&-1073741824)==1073741824){break f}}H[(d<<2)+f>>2]=k;d=d+1|0}i=i+1|0;if((e|0)==(i|0)){break e}f=H[m+8>>2];continue}}if(!e){break d}k=J[a+24>>1]==1?a+20|0:H[a+20>>2];f=0;d=0;while(1){a=H[k+(f<<2)>>2];c=H[a+36>>2];h:{if(!(I[(c&64?H[a+40>>2]+52|0:a+112|0)|0]&5)){break h}i=a+32|0;h=H[m+8>>2];a=H[b+4>>2];i:{if(!(a&8)){break i}if((c&251658240)!=16777216){c=H[b+8>>2];if(!c){c=Tt(H[b>>2],a>>>24&15);H[b+8>>2]=c}g=H[c+28>>2];if(!g){break i}c=H[c+24>>2];a=0;while(1){if((i|0)==H[c+(a<<2)>>2]){break h}a=a+1|0;if((g|0)!=(a|0)){continue}break}break i}if((c&-1073741824)==1073741824){break h}}H[h+(d<<2)>>2]=i;d=d+1|0}f=f+1|0;if((e|0)!=(f|0)){continue}break}}if(!d){break d}f=H[m+8>>2];c=0;h=0;k=Oa-32|0;Oa=k;j:{k:{l:{m:{a=H[b+4>>2];switch((a>>>30|0)-2|0){case 1:break k;case 0:break m;default:break l}}if(I[H[b>>2]+4785|0]){break k}}if(!d){break j}while(1){e=H[f+(c<<2)>>2];H[k+16>>2]=128;F[k+8|0]=0;UI(H[((a>>>22&60)+76348|0)+12>>2]+b|0,e+16|0,k+16|0,k+8|0,0);c=c+1|0;if((d|0)==(c|0)){break j}a=H[b+4>>2];continue}}i=H[b+8>>2];if(!i){i=Tt(H[b>>2],a>>>24&15);H[b+8>>2]=i}c=H[i+88>>2];n:{if(!c){if((d|0)==1){a=H[f>>2];H[i+88>>2]=1;H[i+84>>2]=a;break n}a=H[b>>2];g=H[a+4872>>2];H[k+24>>2]=0;Dq(a+4868|0,d+g|0,k+24|0);a=H[a+4868>>2];if(!a){break j}o:{if(!d){break o}a=a+(g<<2)|0;c=0;if(d-1>>>0>=3){n=d&-4;while(1){e=c<<2;H[e+a>>2]=H[e+f>>2];o=e|4;H[o+a>>2]=H[f+o>>2];o=e|8;H[o+a>>2]=H[f+o>>2];e=e|12;H[e+a>>2]=H[e+f>>2];c=c+4|0;l=l+4|0;if((n|0)!=(l|0)){continue}break}}e=d&3;if(!e){break o}while(1){n=c<<2;H[n+a>>2]=H[f+n>>2];c=c+1|0;h=h+1|0;if((e|0)!=(h|0)){continue}break}}H[i+88>>2]=d;H[i+84>>2]=g;break n}a=H[b>>2];n=H[a+4872>>2];H[k+28>>2]=0;o=c+d|0;Dq(a+4868|0,n+o|0,k+28|0);a=H[a+4868>>2];if(!a){break j}e=a+(n<<2)|0;c=H[i+88>>2];p:{if((c|0)==1){H[e>>2]=H[i+84>>2];if(!d){break p}a=0;if(d-1>>>0>=3){l=d&-4;g=0;while(1){c=a<<2;j=c|4;H[j+e>>2]=H[c+f>>2];p=c|8;H[p+e>>2]=H[f+j>>2];c=c|12;H[c+e>>2]=H[f+p>>2];a=a+4|0;H[e+(a<<2)>>2]=H[c+f>>2];g=g+4|0;if((l|0)!=(g|0)){continue}break}}d=d&3;if(!d){break p}while(1){c=a+1|0;H[e+(c<<2)>>2]=H[f+(a<<2)>>2];a=c;h=h+1|0;if((d|0)!=(h|0)){continue}break}break p}q:{if(!c){break q}h=H[H[b>>2]+4868>>2]+(H[i+84>>2]<<2)|0;a=0;if(c-1>>>0>=3){l=c&-4;while(1){g=a<<2;H[g+e>>2]=H[g+h>>2];j=g|4;H[j+e>>2]=H[h+j>>2];j=g|8;H[j+e>>2]=H[h+j>>2];g=g|12;H[g+e>>2]=H[g+h>>2];a=a+4|0;p=p+4|0;if((l|0)!=(p|0)){continue}break}}g=c&3;if(!g){break q}while(1){l=a<<2;H[l+e>>2]=H[h+l>>2];a=a+1|0;r=r+1|0;if((g|0)!=(r|0)){continue}break}}if(!d){break p}h=0;a=0;if(d-1>>>0>=3){l=d&-4;g=0;while(1){H[e+(a+c<<2)>>2]=H[f+(a<<2)>>2];j=a|1;H[e+(j+c<<2)>>2]=H[f+(j<<2)>>2];j=a|2;H[e+(j+c<<2)>>2]=H[f+(j<<2)>>2];j=a|3;H[e+(j+c<<2)>>2]=H[f+(j<<2)>>2];a=a+4|0;g=g+4|0;if((l|0)!=(g|0)){continue}break}}d=d&3;if(!d){break p}while(1){H[e+(a+c<<2)>>2]=H[f+(a<<2)>>2];a=a+1|0;h=h+1|0;if((d|0)!=(h|0)){continue}break}}H[i+88>>2]=o;H[i+84>>2]=n}$t(H[b>>2],b);H[b+4>>2]=H[b+4>>2]|32}Oa=k+32|0}if(q>>>0<1025){break a}}H5(H[m+8>>2])}Oa=m+16|0;return 1}function S5(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=Oa-16|0;Oa=o;s=(B(a),v(2));c=s&2147483647;a:{if(c>>>0<=1305022426){i=+a;d=i*.6366197723675814+6755399441055744+-6755399441055744;q=i+d*-1.5707963109016418+d*-1.5893254773528196e-8;M[b>>3]=q;c=q<-.7853981852531433;if(P(d)<2147483648){e=~~d}else{e=-2147483648}if(c){d=d+-1;M[b>>3]=i+d*-1.5707963109016418+d*-1.5893254773528196e-8;e=e-1|0;break a}if(!(q>.7853981852531433)){break a}d=d+1;M[b>>3]=i+d*-1.5707963109016418+d*-1.5893254773528196e-8;e=e+1|0;break a}if(c>>>0>=2139095040){M[b>>3]=O(a-a);break a}e=c;c=(c>>>23|0)-150|0;M[o+8>>3]=(x(2,e-(c<<23)|0),C());t=o+8|0;g=Oa-560|0;Oa=g;e=(c-3|0)/24|0;r=(e|0)>0?e:0;j=c+N(r,-24)|0;l=H[23268];if((l|0)>=0){e=l+1|0;c=r;while(1){M[(g+320|0)+(f<<3)>>3]=(c|0)<0?0:+H[(c<<2)+93088>>2];c=c+1|0;f=f+1|0;if((e|0)!=(f|0)){continue}break}}k=j-24|0;f=(l|0)>0?l:0;e=0;while(1){d=0;c=0;while(1){d=M[(c<<3)+t>>3]*M[(g+320|0)+(e-c<<3)>>3]+d;c=c+1|0;if((c|0)!=1){continue}break}M[(e<<3)+g>>3]=d;c=(e|0)==(f|0);e=e+1|0;if(!c){continue}break}z=47-j|0;u=48-j|0;A=j-25|0;e=l;b:{while(1){d=M[(e<<3)+g>>3];c=0;f=e;n=(e|0)<=0;if(!n){while(1){m=(g+480|0)+(c<<2)|0;i=d*5.960464477539063e-8;c:{if(P(i)<2147483648){h=~~i;break c}h=-2147483648}i=+(h|0);d=i*-16777216+d;d:{if(P(d)<2147483648){h=~~d;break d}h=-2147483648}H[m>>2]=h;f=f-1|0;d=M[(f<<3)+g>>3]+i;c=c+1|0;if((e|0)!=(c|0)){continue}break}}d=W6(d,k);d=d+T(d*.125)*-8;e:{if(P(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=H[f+476>>2];c=h>>u;p=f;f=h-(c<>2]=f;m=c+m|0;h=f>>z;break i}if(k){break h}h=H[((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){p=(g+480|0)+(c<<2)|0;n=H[p>>2];y=16777215;j:{k:{if(f){break k}y=16777216;if(n){break k}f=0;break j}H[p>>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;H[n+476>>2]=H[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-W6(1,k)}if(d==0){f=0;n:{c=e;if((l|0)>=(c|0)){break n}while(1){c=c-1|0;f=H[(g+480|0)+(c<<2)>>2]|f;if((c|0)>(l|0)){continue}break}if(!f){break n}j=k;while(1){j=j-24|0;e=e-1|0;if(!H[(g+480|0)+(e<<2)>>2]){continue}break}break b}c=1;while(1){f=c;c=c+1|0;if(!H[(g+480|0)+(l-f<<2)>>2]){continue}break}f=e+f|0;while(1){e=e+1|0;M[(g+320|0)+(e<<3)>>3]=H[(e+r<<2)+93088>>2];c=0;d=0;while(1){d=M[(c<<3)+t>>3]*M[(g+320|0)+(e-c<<3)>>3]+d;c=c+1|0;if((c|0)!=1){continue}break}M[(e<<3)+g>>3]=d;if((e|0)<(f|0)){continue}break}e=f;continue}break}d=W6(d,24-j|0);o:{if(d>=16777216){k=(g+480|0)+(e<<2)|0;i=d*5.960464477539063e-8;p:{if(P(i)<2147483648){c=~~i;break p}c=-2147483648}d=+(c|0)*-16777216+d;q:{if(P(d)<2147483648){f=~~d;break q}f=-2147483648}H[k>>2]=f;e=e+1|0;break o}if(P(d)<2147483648){c=~~d}else{c=-2147483648}j=k}H[(g+480|0)+(e<<2)>>2]=c}d=W6(1,j);r:{if((e|0)<0){break r}c=e;while(1){f=c;M[(c<<3)+g>>3]=d*+H[(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}c=e;while(1){f=c;j=e-c|0;d=0;c=0;while(1){s:{d=M[(c<<3)+95856>>3]*M[(c+f<<3)+g>>3]+d;if((c|0)>=(l|0)){break s}k=c>>>0>>0;c=c+1|0;if(k){continue}}break}M[(g+160|0)+(j<<3)>>3]=d;c=f-1|0;if((f|0)>0){continue}break}}d=0;if((e|0)>=0){while(1){c=e;e=c-1|0;d=d+M[(g+160|0)+(c<<3)>>3];if(c){continue}break}}M[o>>3]=h?-d:d;Oa=g+560|0;e=m&7;d=M[o>>3];if((s|0)<0){M[b>>3]=-d;e=0-e|0;break a}M[b>>3]=d}Oa=o+16|0;return e}function nB(a,b,c,d,e,f,g,h,i,j){var k=0,l=O(0),m=0,n=O(0),o=O(0),p=O(0),q=0,r=0,s=0,t=0,u=0,v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),F=O(0),G=O(0),J=O(0);k=Oa-160|0;Oa=k;H[a+16>>2]=0;H[a+8>>2]=0;H[a+12>>2]=0;H[a>>2]=0;H[a+4>>2]=0;H[k+104>>2]=2122317823;H[k+108>>2]=0;H[k+24>>2]=-25165825;H[k+28>>2]=0;H[k+120>>2]=2122317823;H[k+124>>2]=0;H[k+40>>2]=-25165825;H[k+44>>2]=0;H[k+136>>2]=2122317823;H[k+140>>2]=0;H[k+56>>2]=-25165825;H[k+60>>2]=0;H[k+152>>2]=2122317823;H[k+156>>2]=0;H[k+80>>2]=2122317823;H[k+84>>2]=2122317823;H[k+88>>2]=2122317823;H[k+92>>2]=0;H[k>>2]=-25165825;H[k+4>>2]=-25165825;H[k+8>>2]=-25165825;H[k+12>>2]=0;H[k+96>>2]=2122317823;H[k+100>>2]=2122317823;H[k+16>>2]=-25165825;H[k+20>>2]=-25165825;H[k+112>>2]=2122317823;H[k+116>>2]=2122317823;H[k+32>>2]=-25165825;H[k+36>>2]=-25165825;H[k+128>>2]=2122317823;H[k+132>>2]=2122317823;H[k+48>>2]=-25165825;H[k+52>>2]=-25165825;H[k+144>>2]=2122317823;H[k+148>>2]=2122317823;H[k+72>>2]=-25165825;H[k+76>>2]=0;H[k+64>>2]=-25165825;H[k+68>>2]=-25165825;if(d){q=i?16:0;r=((j|0)==1?2:1)<<2;while(1){t=(s<<5)+e|0;n=L[t+r>>2];l=L[r+(t+16|0)>>2];i=(O(n-l)>c)<<2|q|(O(n+l)>2];l=L[t+16>>2];v=O(n-l);w=O(n+l);j=I[(i|v>b|(w>2];y=L[m+4>>2];z=L[m+8>>2];A=L[m+12>>2];i=i+(k+80|0)|0;B=L[i>>2];C=L[i+4>>2];D=L[i+8>>2];E=L[t+4>>2];F=L[t+20>>2];G=L[t+8>>2];J=L[t+24>>2];o=L[i+12>>2];p=L[t+12>>2];n=L[t+28>>2];l=O(p-n);L[i+12>>2]=l>o?o:l;l=O(G-J);L[i+8>>2]=l>D?D:l;l=O(E-F);L[i+4>>2]=l>C?C:l;L[i>>2]=v>B?B:v;l=O(p+n);L[m+12>>2]=l>2]=l>2]=l>2]=w>2]=j;i=(j<<2)+a|0;H[i>>2]=H[i>>2]+1;s=s+1|0;if((s|0)!=(d|0)){continue}break}m=H[a+8>>2];r=H[a+4>>2];s=H[a+12>>2];q=H[a>>2]}H[a+20>>2]=0;r=q+r|0;H[a+28>>2]=r;H[a+24>>2]=q;m=m+r|0;H[a+32>>2]=m;i=m+s|0;H[a+36>>2]=i;if(d){while(1){m=(u<<5)+e|0;q=H[m+12>>2];i=(q<<2)+a|0;r=H[i+20>>2];H[i+20>>2]=r+1;j=H[m>>2];i=H[m+4>>2];b=L[m+8>>2];s=(r<<5)+g|0;H[s+12>>2]=q;L[s+8>>2]=b;H[s>>2]=j;H[s+4>>2]=i;q=H[m+16>>2];j=H[m+20>>2];i=H[m+28>>2];H[s+24>>2]=H[m+24>>2];H[s+28>>2]=i;H[s+16>>2]=q;H[s+20>>2]=j;j=(u<<3)+f|0;i=H[j+4>>2];q=(r<<3)+h|0;H[q>>2]=H[j>>2];H[q+4>>2]=i;u=u+1|0;if((u|0)!=(d|0)){continue}break}q=H[a>>2];r=q+H[a+4>>2]|0;m=r+H[a+8>>2]|0;i=m+H[a+12>>2]|0}H[a+36>>2]=i;H[a+32>>2]=m;H[a+28>>2]=r;H[a+24>>2]=q;H[a+20>>2]=0;o=L[k>>2];p=L[k+80>>2];n=L[k+4>>2];l=L[k+84>>2];c=L[k+8>>2];b=L[k+88>>2];L[a+72>>2]=O(c-b)*O(.5);L[a+68>>2]=O(n-l)*O(.5);L[a- -64>>2]=O(o-p)*O(.5);L[a+56>>2]=O(b+c)*O(.5);L[a+52>>2]=O(l+n)*O(.5);L[a+48>>2]=O(p+o)*O(.5);o=L[k+16>>2];p=L[k+96>>2];n=L[k+20>>2];l=L[k+100>>2];c=L[k+24>>2];b=L[k+104>>2];L[a+104>>2]=O(c-b)*O(.5);L[a+100>>2]=O(n-l)*O(.5);L[a+96>>2]=O(o-p)*O(.5);L[a+88>>2]=O(b+c)*O(.5);L[a+84>>2]=O(l+n)*O(.5);L[a+80>>2]=O(p+o)*O(.5);o=L[k+32>>2];p=L[k+112>>2];n=L[k+36>>2];l=L[k+116>>2];c=L[k+40>>2];b=L[k+120>>2];L[a+136>>2]=O(c-b)*O(.5);L[a+132>>2]=O(n-l)*O(.5);L[a+128>>2]=O(o-p)*O(.5);L[a+120>>2]=O(b+c)*O(.5);L[a+116>>2]=O(l+n)*O(.5);L[a+112>>2]=O(p+o)*O(.5);o=L[k+48>>2];p=L[k+128>>2];n=L[k+52>>2];l=L[k+132>>2];c=L[k+56>>2];b=L[k+136>>2];L[a+168>>2]=O(c-b)*O(.5);L[a+164>>2]=O(n-l)*O(.5);L[a+160>>2]=O(o-p)*O(.5);L[a+152>>2]=O(b+c)*O(.5);L[a+148>>2]=O(l+n)*O(.5);L[a+144>>2]=O(p+o)*O(.5);o=L[k+64>>2];p=L[k+144>>2];n=L[k+68>>2];l=L[k+148>>2];c=L[k+72>>2];b=L[k+152>>2];L[a+200>>2]=O(c-b)*O(.5);L[a+196>>2]=O(n-l)*O(.5);L[a+192>>2]=O(o-p)*O(.5);L[a+184>>2]=O(b+c)*O(.5);L[a+180>>2]=O(l+n)*O(.5);L[a+176>>2]=O(p+o)*O(.5);Oa=k+160|0}function BY(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,o=O(0),p=0,q=O(0),r=O(0);p=Oa-256|0;Oa=p;m=H[a+24>>2];if(m){a:{c=m-1|0;if((c|0)<=0){break a}j=a+2076|0;while(1){b:{c:{if((c|0)<=(k|0)){break c}while(1){if(c-k>>>0<=4){while(1){f=k;k=f+1|0;b=k;i=f;while(1){i=L[j+(b<<3)>>2]>2]?b:i;d=(b|0)<(c|0);b=b+1|0;if(d){continue}break}if((f|0)!=(i|0)){e=j+(i<<3)|0;i=H[e>>2];d=H[e+4>>2];f=j+(f<<3)|0;b=H[f+4>>2];H[e>>2]=H[f>>2];H[e+4>>2]=b;H[f>>2]=i;H[f+4>>2]=d}if((c|0)!=(k|0)){continue}break c}}g=j+((c+k|0)/2<<3)|0;o=L[g>>2];e=j+(k<<3)|0;q=L[e>>2];if(o>2];d=H[e>>2];f=H[e+4>>2];b=H[g+4>>2];H[e>>2]=H[g>>2];H[e+4>>2]=b;H[g>>2]=d;H[g+4>>2]=f;r=L[e>>2]}else{r=q}i=((c<<3)+a|0)+2076|0;q=L[i>>2];if(r>q){q=L[e>>2];d=H[e>>2];f=H[e+4>>2];b=H[i+4>>2];H[e>>2]=H[i>>2];H[e+4>>2]=b;H[i>>2]=d;H[i+4>>2]=f;o=L[g>>2]}if(o>q){d=H[g>>2];f=H[g+4>>2];b=H[i+4>>2];H[g>>2]=H[i>>2];H[g+4>>2]=b;H[i>>2]=d;H[i+4>>2]=f}o=L[g>>2];d=H[g>>2];f=H[g+4>>2];i=c-1|0;h=((i<<3)+a|0)+2076|0;b=H[h+4>>2];H[g>>2]=H[h>>2];H[g+4>>2]=b;H[h>>2]=d;H[h+4>>2]=f;b=k;while(1){f=b;b=b+1|0;l=((b<<3)+a|0)+2076|0;if(L[l>>2]>2]>o){continue}break}g=H[l>>2];e=H[l+4>>2];if((b|0)<(i|0)){f=H[d+4>>2];H[l>>2]=H[d>>2];H[l+4>>2]=f;H[d>>2]=g;H[d+4>>2]=e;o=L[h>>2];continue}break}d=H[h+4>>2];H[l>>2]=H[h>>2];H[l+4>>2]=d;H[h>>2]=g;H[h+4>>2]=e;d:{if((b-k|0)<(c-b|0)){b=(n<<2)+p|0;H[b>>2]=k;H[b+4>>2]=f;k=f+2|0;break d}b=(n<<2)+p|0;H[b>>2]=f+2;H[b+4>>2]=c;c=f}n=n+2|0;if((c|0)>(k|0)){continue}break}break b}if(!n){break a}}b=n-2|0;k=H[(b<<2)+p>>2];c=H[((n<<2)+p|0)-4>>2];n=b;continue}}i=m>>>0>1?m:1;f=a+2592|0;k=0;while(1){n=(k<<3)+a|0;m=(H[n+2080>>2]<<5)+a|0;h=H[m+56>>2];j=H[m+52>>2];l=H[m+48>>2];e:{f:{g:{switch(H[m+40>>2]){case 0:c=H[a+2588>>2];b=f;while(1){if(!c){break f}if((l|0)==H[b>>2]|(l|0)==H[b+4>>2]){break e}c=c-1|0;d=H[b+8>>2];b=b+12|0;if((d|0)!=(l|0)){continue}break};break e;case 1:c=H[a+2588>>2];b=f;while(1){if(!c){break f}if(H[b>>2]==(j|0)|H[b+4>>2]==(j|0)){break e}c=c-1|0;d=H[b+8>>2];b=b+12|0;if((d|0)!=(j|0)){continue}break};break e;case 2:c=H[a+2588>>2];b=f;while(1){if(!c){break f}if(H[b>>2]==(h|0)|H[b+4>>2]==(h|0)){break e}c=c-1|0;d=H[b+8>>2];b=b+12|0;if((d|0)!=(h|0)){continue}break};break e;case 3:b=f;c=H[a+2588>>2];if(!c){break f}while(1){g=H[b+8>>2];e=H[b+4>>2];d=H[b>>2];h:{if((d|0)==(l|0)){if((e|0)==(j|0)){break e}if((g|0)!=(j|0)){break h}break e}if((e|0)==(l|0)){if((d|0)==(j|0)){break e}if((g|0)!=(j|0)){break h}break e}if((g|0)!=(l|0)){break h}if((e|0)==(j|0)|(d|0)==(j|0)){break e}}b=b+12|0;c=c-1|0;if(c){continue}break};break f;case 4:b=f;c=H[a+2588>>2];if(!c){break f}while(1){g=H[b+8>>2];e=H[b+4>>2];d=H[b>>2];i:{if((d|0)==(j|0)){if((e|0)==(h|0)){break e}if((g|0)!=(h|0)){break i}break e}if((e|0)==(j|0)){if((d|0)==(h|0)){break e}if((g|0)!=(h|0)){break i}break e}if((g|0)!=(j|0)){break i}if((e|0)==(h|0)|(d|0)==(h|0)){break e}}b=b+12|0;c=c-1|0;if(c){continue}break};break f;case 5:break g;default:break e}}b=f;c=H[a+2588>>2];if(!c){break f}while(1){g=H[b+8>>2];e=H[b+4>>2];d=H[b>>2];j:{if((d|0)==(l|0)){if((e|0)==(h|0)){break e}if((g|0)!=(h|0)){break j}break e}if((e|0)==(l|0)){if((d|0)==(h|0)){break e}if((g|0)!=(h|0)){break j}break e}if((g|0)!=(l|0)){break j}if((e|0)==(h|0)|(d|0)==(h|0)){break e}}b=b+12|0;c=c-1|0;if(c){continue}break}}DY(a,m+28|0,L[n+2076>>2],H[m+44>>2])}b=H[a+2588>>2];if(b>>>0<=63){H[a+2588>>2]=b+1;b=N(b,12)+a|0;H[b+2600>>2]=h;H[b+2596>>2]=j;H[b+2592>>2]=l}k=k+1|0;if((i|0)!=(k|0)){continue}break}}Oa=p+256|0}function VU(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=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=0,D=0,E=O(0),G=O(0),J=O(0),K=O(0),M=O(0),P=O(0),Q=O(0),R=O(0),S=O(0),T=O(0),U=0,V=0;g=Oa-496|0;Oa=g;t=L[d+24>>2];J=L[d+20>>2];s=L[c+4>>2];K=L[d+16>>2];r=L[c+8>>2];M=L[d+8>>2];q=L[d+12>>2];P=L[d+4>>2];w=L[d>>2];c=H[e+32>>2];h=L[e+4>>2];k=L[e+8>>2];n=L[e+12>>2];H[g+348>>2]=0;L[g+344>>2]=n;L[g+340>>2]=k;L[g+336>>2]=h;C=H[e+16>>2];D=H[e+20>>2];U=H[e+28>>2];H[g+328>>2]=H[e+24>>2];H[g+332>>2]=U;H[g+320>>2]=C;H[g+324>>2]=D;F[g+192|0]=0;H[g+184>>2]=0;H[g+188>>2]=0;H[g+176>>2]=0;H[g+180>>2]=0;H[g+168>>2]=0;H[g+172>>2]=0;H[g+160>>2]=0;H[g+164>>2]=0;H[g+304>>2]=c+16;H[g+312>>2]=H[c+56>>2]+N(I[c+55|0],20);F[g+316|0]=I[c+54|0];j=O(h*L[c+68>>2]);i=O(k*L[c+72>>2]);j=i>=j?j:i;i=O(n*L[c+76>>2]);j=i>=j?j:i;L[g+184>>2]=j*O(.02500000037252903);L[g+176>>2]=j*O(.10000000149011612);L[g+180>>2]=j*O(.05000000074505806);C=g+208|0;D=g+256|0;CU(g+336|0,g+320|0,C,D,g+160|0,h==O(1)&k==O(1)&n==O(1));H[g+308>>2]=H[c+60>>2];x=L[d+20>>2];B=L[d+24>>2];l=L[f+20>>2];u=L[f+24>>2];y=L[d+16>>2];i=L[d>>2];o=L[d+4>>2];p=L[d+8>>2];m=L[d+12>>2];j=L[f>>2];k=L[f+4>>2];n=L[f+8>>2];h=L[f+12>>2];v=L[f+16>>2];H[g+156>>2]=0;L[g+152>>2]=u;L[g+148>>2]=l;L[g+144>>2]=v;L[g+140>>2]=h;L[g+136>>2]=n;L[g+132>>2]=k;L[g+128>>2]=j;H[g+120>>2]=0;H[g+124>>2]=0;H[g+112>>2]=0;H[g+116>>2]=0;H[g+96>>2]=0;H[g+76>>2]=0;H[g+60>>2]=0;z=O(-j);v=O(y-v);x=O(x-l);u=O(B-u);B=O(O(O(z*v)-O(x*k))-O(n*u));E=O(O(h*h)+O(-.5));l=O(O(O(h*O(O(k*v)-O(j*x)))+O(E*u))-O(n*B));G=O(l+l);L[g+8>>2]=G;l=O(O(O(i*k)-O(j*o))+O(O(p*h)-O(m*n)));A=O(O(O(o*n)-O(k*p))+O(O(i*h)-O(m*j)));y=O(A+A);Q=O(l*y);z=O(O(m*h)-O(O(O(z*i)-O(o*k))-O(n*p)));o=O(O(O(p*j)-O(n*i))+O(O(o*h)-O(m*k)));m=O(o+o);R=O(z*m);A=O(O(1)-O(A*y));S=O(o*m);i=O(w+w);p=O(q+q);T=O(r*O(O(M*i)-O(P*p)));t=O(O(t-T)-O(T+t));q=O(r*O(O(w*i)+O(O(q*p)+O(-1))));q=O(O(K-q)-O(K+q));i=O(r*O(O(M*p)+O(i*P)));i=O(O(J-i)-O(J+i));p=O(O(W(O(O(t*t)+O(O(q*q)+O(i*i)))))*O(.5));i=O(p*O(0));r=O(l*m);q=O(z*y);w=O(O(O(A-S)*i)+O(O(O(Q-R)*p)+O(i*O(r+q))));L[g+72>>2]=G-w;m=O(O(O(E*x)+O(h*O(O(j*u)-O(n*v))))-O(k*B));m=O(m+m);L[g+4>>2]=m;t=O(O(r-q)*i);o=O(o*y);r=O(l+l);q=O(z*r);l=O(l*r);r=O(t+O(O(O(o+q)*p)+O(i*O(A-l))));L[g+68>>2]=m-r;L[g+56>>2]=G+w;L[g+52>>2]=m+r;L[g+80>>2]=s;H[g+12>>2]=0;H[g+28>>2]=4;F[g+32|0]=1;L[g+24>>2]=s;L[g+20>>2]=s;L[g+16>>2]=s;h=O(O(O(E*v)+O(h*O(O(n*x)-O(k*u))))-O(j*B));h=O(h+h);L[g>>2]=h;k=O(O(O(Q+R)*i)+O(O(O(O(O(1)-S)-l)*p)+O(i*O(o-q))));L[g+64>>2]=h-k;L[g+48>>2]=h+k;a:{if(!(L[e+4>>2]==O(1)&L[e+8>>2]==O(1))){R0(g+160|0,0,g+424|0);c=125868;break a}h=L[e+12>>2];R0(g+160|0,h==O(1),g+424|0);c=125868;if(h!=O(1)){break a}V=1;c=125820}F[g+396|0]=V;H[g+392>>2]=D;H[g+388>>2]=C;H[g+352>>2]=c;H[g+384>>2]=g+128;H[g+400>>2]=g+160;d=Oa-48|0;Oa=d;H[d+32>>2]=0;e=g+352|0;c=J0(g,g+424|0,e,d+32|0,d,d+16|0);if(c){e=H[e+32>>2];h=L[e+12>>2];k=L[e+8>>2];n=L[e>>2];j=L[e+4>>2];i=L[d+24>>2];s=L[d+16>>2];o=L[d+20>>2];H[g+124>>2]=0;p=O(O(h*h)+O(-.5));m=O(O(k*i)+O(O(n*s)+O(j*o)));l=O(O(O(h*O(O(n*o)-O(s*j)))+O(i*p))+O(k*m));L[g+120>>2]=l+l;l=O(O(j*m)+O(O(p*o)+O(h*O(O(k*s)-O(i*n)))));L[g+116>>2]=l+l;h=O(O(n*m)+O(O(s*p)+O(h*O(O(j*i)-O(o*k)))));L[g+112>>2]=h+h;e=H[d+12>>2];H[g+104>>2]=H[d+8>>2];H[g+108>>2]=e;e=H[d+4>>2];H[g+96>>2]=H[d>>2];H[g+100>>2]=e}Oa=d+48|0;if(c){h=L[g+96>>2];L[b>>2]=h>O(0)?h:O(0);b=H[g+112>>2];d=H[g+116>>2];L[a+8>>2]=L[g+120>>2];H[a>>2]=b;H[a+4>>2]=d}Oa=g+496|0;return c|0}function sw(a,b,c,d,e,f,g,h,i,j,k,l,m){a=a|0;b=O(b);c=O(c);d=d|0;e=e|0;f=O(f);g=O(g);h=O(h);i=O(i);j=O(j);k=k|0;l=l|0;m=m|0;var n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=O(0),w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=O(0),E=0,M=0,P=0,Q=0,R=0,S=0,T=0,U=0;n=Oa-256|0;Oa=n;H[n+236>>2]=l;H[n+248>>2]=e+12088;H[n+244>>2]=e+11824;H[n+240>>2]=e+11852;H[n+232>>2]=113028;A=n+224|0;H[A>>2]=0;H[n+216>>2]=0;H[n+220>>2]=0;H[n+208>>2]=0;H[n+212>>2]=1065353216;H[n+200>>2]=0;H[n+204>>2]=0;B=H[e+12048>>2];rw(H[a+656>>2],H[a+660>>2]);if(H[a+660>>2]){E=n+220|0;M=n+216|0;P=n+212|0;Q=n+208|0;R=n+200|4;while(1){C=r<<5;l=C+H[a+656>>2]|0;s=J[l+10>>1];o=J[l+8>>1];x=(o|0)==65535;S=x?s:o;a:{if(J[l+22>>1]==1){p=H[l+24>>2];t=H[p+68>>2];y=H[((t&7)<<2)+d>>2];o=H[l+12>>2];z=H[d+32>>2];H[n+48>>2]=N((s|0)==65535?H[l+16>>2]:0,112)+k;H[n+44>>2]=N(x?o:0,112)+k;q=H[p+16>>2];s=I[q+28|0];o=H[p+20>>2];if(o){s=I[o+28|0]|s}L[n+52>>2]=L[q>>2];L[n+56>>2]=L[q+4>>2];L[n+60>>2]=L[q+8>>2];L[n+64>>2]=L[q+12>>2];L[n+68>>2]=L[q+16>>2];L[n+72>>2]=L[q+20>>2];L[n+76>>2]=L[q+24>>2];L[n+80>>2]=L[(o?o:n+200|0)>>2];L[n+84>>2]=L[(o?o+4|0:R)>>2];L[n+88>>2]=L[(o?o+8|0:Q)>>2];L[n+92>>2]=L[(o?o+12|0:P)>>2];L[n+96>>2]=L[(o?o+16|0:M)>>2];L[n+100>>2]=L[(o?o+20|0:E)>>2];L[n+104>>2]=L[(o?o+24|0:A)>>2];H[n+128>>2]=H[p+12>>2];q=z+(y+(t>>>3|0)<<4)|0;H[n+160>>2]=H[q+8>>2];H[n+32>>2]=l;H[n+36>>2]=H[l>>2];H[n+40>>2]=H[l+4>>2];o=J[p+40>>1];F[n+141|0]=o>>>2&1;F[n+142|0]=o>>>8&1;H[n+108>>2]=o&8?8:1;u=8;b:{if(o&16){break b}u=4;if(o&1024){break b}u=o&64?1:2}H[n+112>>2]=u;o=I[p+44|0];v=I[p+45|0]?O(1):O(0);L[n+28>>2]=v;D=o?O(1):O(0);L[n+16>>2]=D;L[n+20>>2]=D;L[n+24>>2]=v;L[n+144>>2]=L[p+52>>2];H[n+152>>2]=H[p+36>>2];o=I[p+42|0];L[n+148>>2]=s&32?j:O(3.4028234663852886e38);F[n+156|0]=o;xx(n+16|0,q,e,c,g,h,f,i,n+232|0,B);G[l+20>>1]=I[q+12|0];H[l+28>>2]=H[q+8>>2];H[p+36>>2]=H[n+152>>2];F[p+42|0]=I[n+156|0];break a}o=n+200|0;q=o;p=H[l+24>>2];t=H[p+24>>2];if(t){q=H[t+36>>2]}t=J[p+8>>1];y=H[p+20>>2];z=H[p+12>>2];w=H[p+28>>2];if(w){o=H[w+36>>2]}w=H[l+4>>2];T=H[l+12>>2];U=H[l+16>>2];u=H[l>>2];H[n+12>>2]=t;H[n+8>>2]=y;H[n+4>>2]=z;H[n+32>>2]=l;H[n>>2]=p;L[n+52>>2]=L[q>>2];L[n+56>>2]=L[q+4>>2];L[n+60>>2]=L[q+8>>2];L[n+64>>2]=L[q+12>>2];L[n+68>>2]=L[q+16>>2];L[n+72>>2]=L[q+20>>2];L[n+76>>2]=L[q+24>>2];L[n+80>>2]=L[o>>2];L[n+84>>2]=L[o+4>>2];L[n+88>>2]=L[o+8>>2];L[n+92>>2]=L[o+12>>2];L[n+96>>2]=L[o+16>>2];L[n+100>>2]=L[o+20>>2];v=L[o+24>>2];H[n+48>>2]=N((s|0)==65535?U:0,112)+k;H[n+44>>2]=N(x?T:0,112)+k;L[n+104>>2]=v;H[n+40>>2]=w;H[n+36>>2]=u;L[n+136>>2]=L[p>>2];L[n+140>>2]=L[p+4>>2];H[n+148>>2]=(H[p+40>>2]<<5)+m;o=J[p+10>>1];F[n+155|0]=o>>>9&1;q=o&255;F[n+153|0]=q>>>7;F[n+152|0]=o>>>8&1;F[n+154|0]=q>>>5&1;L[n+144>>2]=L[p+44>>2];wx(n,n+16|0,n+232|0,b,c,B)}c:{if(H[l+24>>2]){o=(S&65535)<<2;l=o+H[a+408>>2]|0;p=H[l>>2];if(!p){H[o+H[a+420>>2]>>2]=r;p=H[l>>2]}H[l>>2]=p+1;break c}p=H[a+660>>2];o=r+1|0;d:{if(p>>>0<=o>>>0){break d}p=H[a+656>>2];l=p+C|0;o=p+(o<<5)|0;p=H[o+4>>2];H[l>>2]=H[o>>2];H[l+4>>2]=p;p=H[o+28>>2];H[l+24>>2]=H[o+24>>2];H[l+28>>2]=p;p=H[o+20>>2];H[l+16>>2]=H[o+16>>2];H[l+20>>2]=p;p=H[o+12>>2];H[l+8>>2]=H[o+8>>2];H[l+12>>2]=p;o=r+2|0;p=H[a+660>>2];if(o>>>0>=p>>>0){break d}while(1){p=H[a+656>>2]+(o<<5)|0;q=H[p+4>>2];H[l+32>>2]=H[p>>2];H[l+36>>2]=q;q=H[p+28>>2];H[l+56>>2]=H[p+24>>2];H[l+60>>2]=q;q=H[p+20>>2];H[l+48>>2]=H[p+16>>2];H[l+52>>2]=q;q=H[p+12>>2];H[l+40>>2]=H[p+8>>2];H[l+44>>2]=q;l=l+32|0;o=o+1|0;p=H[a+660>>2];if(o>>>0

>>0){continue}break}}H[a+660>>2]=p-1;r=r-1|0}r=r+1|0;if(r>>>0>2]){continue}break}}Oa=n+256|0}function M$(a,b){a=a|0;b=b|0;var c=O(0),d=0,e=O(0),f=O(0),g=O(0),h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=O(0),p=0,q=0,r=0,s=0,t=O(0);k=Oa-16|0;Oa=k;a:{if(I[b+64|0]&2){j=H[b+28>>2];H[k+4>>2]=H[b+24>>2];H[k+8>>2]=j;H[k>>2]=129156;break a}j=H[b+28>>2];H[k+4>>2]=H[b+24>>2];H[k+8>>2]=j;H[k>>2]=129196}h=a;i=Oa-48|0;Oa=i;b:{j=H[b+192>>2];if((j|0)<=0){break b}p=H[b+200>>2];q=p;while(1){m=j-1|0;n=0;while(1){a=(N(m,112)+q|0)+(n<<2)|0;c:{if(L[a>>2]>L[a+48>>2]){break c}d=H[a+96>>2];if(d&1){Ra[H[H[k>>2]>>2]](k,d-1|0,i,i+32|0);e=L[i+36>>2];f=L[i+40>>2];c=L[i+32>>2];g=L[i+4>>2];o=L[i+8>>2];L[a>>2]=L[i>>2];L[a+32>>2]=o;L[a+16>>2]=g;L[a+48>>2]=c;L[a+80>>2]=f;L[a- -64>>2]=e;break c}l=a- -64|0;d:{e:{f:{g:{d=d+p|0;e=L[d>>2];h:{i:{if(e>L[d+48>>2]){e=L[d+4>>2];if(e>L[d+52>>2]){break g}L[a>>2]=e;L[a+16>>2]=L[d+20>>2];L[a+32>>2]=L[d+36>>2];f=L[d+52>>2];L[a+48>>2]=f;L[l>>2]=L[d+68>>2];c=L[d+84>>2];break i}L[a>>2]=e;L[a+16>>2]=L[d+16>>2];L[a+32>>2]=L[d+32>>2];f=L[d+48>>2];L[a+48>>2]=f;L[l>>2]=L[d+64>>2];L[a+80>>2]=L[d+80>>2];c=L[d+4>>2];if(c>L[d+52>>2]){break h}e=c>e?e:c;L[a>>2]=e;c=L[a+16>>2];g=L[d+20>>2];L[a+16>>2]=c>2];g=L[d+36>>2];L[a+32>>2]=c>2];f=c>2]=f;c=L[l>>2];g=L[d+68>>2];L[l>>2]=c>g?c:g;c=L[a+80>>2];g=L[d+84>>2];c=c>g?c:g}L[a+80>>2]=c}c=L[d+8>>2];if(c>L[d+56>>2]){break e}e=c>e?e:c;L[a>>2]=e;c=L[a+16>>2];g=L[d+24>>2];L[a+16>>2]=c>2];g=L[d+40>>2];L[a+32>>2]=c>2];f=c>2]=f;c=L[l>>2];g=L[d+72>>2];L[l>>2]=c>g?c:g;c=L[a+80>>2];g=L[d+88>>2];c=c>g?c:g;break f}e=L[d+8>>2];if(e>L[d+56>>2]){break d}L[a>>2]=e;L[a+16>>2]=L[d+24>>2];L[a+32>>2]=L[d+40>>2];f=L[d+56>>2];L[a+48>>2]=f;L[l>>2]=L[d+72>>2];c=L[d+88>>2]}L[a+80>>2]=c}c=L[d+12>>2];if(c>L[d+60>>2]){break c}L[a>>2]=c>e?e:c;e=L[a+16>>2];c=L[d+28>>2];L[a+16>>2]=c>e?e:c;e=L[a+32>>2];c=L[d+44>>2];L[a+32>>2]=c>e?e:c;e=L[d+60>>2];L[a+48>>2]=e>2];f=L[d+76>>2];L[l>>2]=e>f?e:f;e=L[a+80>>2];f=L[d+92>>2];L[a+80>>2]=e>f?e:f;break c}e=L[d+12>>2];if(e>L[d+60>>2]){break c}L[a>>2]=e;L[a+16>>2]=L[d+28>>2];L[a+32>>2]=L[d+44>>2];L[a+48>>2]=L[d+60>>2];L[l>>2]=L[d+76>>2];L[a+80>>2]=L[d+92>>2]}n=n+1|0;if((n|0)!=4){continue}break}if((j|0)<2){break b}q=H[b+200>>2];j=m;continue}}j:{if(!h|!H[b+180>>2]){break j}h$(H[b+200>>2],i);a=H[i+4>>2];j=H[i>>2];L[h+8>>2]=L[i+8>>2];H[h>>2]=j;H[h+4>>2]=a;e=L[i+20>>2];a=H[i+16>>2];H[h+12>>2]=H[i+12>>2];H[h+16>>2]=a;L[h+20>>2]=e;a=1;if(K[b+180>>2]<=1){break j}while(1){h$(H[b+200>>2]+N(a,112)|0,i);e=L[i>>2];f=L[i+4>>2];c=L[h+8>>2];g=L[i+8>>2];L[h+8>>2]=c>2];L[h+4>>2]=c>2];L[h>>2]=e>f?f:e;e=L[i+16>>2];f=L[i+20>>2];c=L[h+12>>2];g=L[i+12>>2];L[h+12>>2]=c>g?c:g;c=L[h+20>>2];L[h+20>>2]=c>f?c:f;f=L[h+16>>2];L[h+16>>2]=e>>0>2]){continue}break}}Oa=i+48|0;a=H[b+196>>2];k:{if(a&2){break k}H[b+196>>2]=a|2;if(!H[b+56>>2]){break k}j=Ra[H[H[b>>2]+40>>2]](b)|0;if(!j){break k}a=0;if(j-1>>>0>=3){m=j&-4;while(1){d=H[b+56>>2]+a|0;F[d|0]=I[d|0]|56;d=H[b+56>>2]+(a|1)|0;F[d|0]=I[d|0]|56;d=H[b+56>>2]+(a|2)|0;F[d|0]=I[d|0]|56;d=H[b+56>>2]+(a|3)|0;F[d|0]=I[d|0]|56;a=a+4|0;r=r+4|0;if((m|0)!=(r|0)){continue}break}}j=j&3;if(!j){break k}while(1){m=H[b+56>>2]+a|0;F[m|0]=I[m|0]|56;a=a+1|0;s=s+1|0;if((j|0)!=(s|0)){continue}break}}e=L[h+16>>2];f=L[h+20>>2];c=L[h+4>>2];g=L[h+8>>2];o=L[h+12>>2];t=L[h>>2];L[b+44>>2]=O(o-t)*O(.5);L[b+32>>2]=O(t+o)*O(.5);L[b+52>>2]=O(f-g)*O(.5);L[b+48>>2]=O(e-c)*O(.5);L[b+40>>2]=O(g+f)*O(.5);L[b+36>>2]=O(c+e)*O(.5);Oa=k+16|0}function WV(a,b,c,d,e,f){var g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=0,q=O(0),r=O(0),s=0,t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0);s=Oa-32|0;Oa=s;o=L[a+8>>2];h=L[c+8>>2];g=O(o-h);l=O(L[d+8>>2]-h);n=L[a>>2];h=L[c>>2];k=O(n-h);i=O(L[d>>2]-h);h=L[c+4>>2];j=O(L[d+4>>2]-h);t=L[a+4>>2];h=O(t-h);m=O(O(g*l)+O(O(k*i)+O(j*h)));a:{if(m<=O(0)){break a}u=O(O(l*l)+O(O(i*i)+O(j*j)));if(u<=m){g=O(g-l);h=O(h-j);k=O(k-i);break a}v=l;l=O(m/u);g=O(g-O(v*l));h=O(h-O(j*l));k=O(k-O(i*l))}g=O(O(W(O(O(g*g)+O(O(k*k)+O(h*h)))))-e);b:{if(g<=O(0)){H[f>>2]=0;a=1;break b}h=L[b+4>>2];k=L[b>>2];x=g>O(10)?O(g+O(-10)):O(0);L[s+16>>2]=o+O(x*L[b+8>>2]);L[s+12>>2]=t+O(x*h);L[s+8>>2]=n+O(x*k);a=s+8|0;p=s+24|0;m=L[d+8>>2];k=L[c+8>>2];h=O(m-k);o=L[d>>2];w=L[c>>2];i=O(o-w);n=L[d+4>>2];q=L[c+4>>2];j=O(n-q);l=O(W(O(O(h*h)+O(O(i*i)+O(j*j)))));if(l!=O(0)){g=O(O(1)/l);h=O(h*g);j=O(j*g);i=O(i*g)}c:{if(l<=O(9.999999974752427e-7)){g=L[a+8>>2];h=O(g-k);i=O(h*h);h=L[a>>2];k=O(h-w);j=O(k*k);k=L[a+4>>2];l=O(k-q);l=O(i+O(j+O(l*l)));g=O(g-m);i=O(g*g);g=O(h-o);j=O(g*g);g=O(k-n);g=O(i+O(j+O(g*g)));g=O((gO(0))){break d}g=O(h*h);if(O(P(i))>=O(P(j))){g=O(O(1)/O(W(O(O(i*i)+g))));m=O(i*g);g=O(g*O(-h));break d}g=O(O(1)/O(W(O(O(j*j)+g))));m=O(g*O(-j));o=O(h*g);g=O(0)}n=O(O(i*o)-O(g*j));t=O(O(j*m)-O(o*h));u=O(O(h*g)-O(m*i));r=O(W(O(O(n*n)+O(O(t*t)+O(u*u)))));if(r>O(0)){r=O(O(1)/r);n=O(n*r);u=O(u*r);t=O(t*r)}r=O(L[a+8>>2]-k);v=O(L[a>>2]-w);q=O(L[a+4>>2]-q);k=O(O(h*r)+O(O(i*v)+O(j*q)));w=O(O(n*r)+O(O(t*v)+O(u*q)));q=O(O(m*r)+O(O(g*v)+O(o*q)));r=O(e*e);e=L[b+8>>2];v=i;i=L[b>>2];y=j;j=L[b+4>>2];h=O(O(h*e)+O(O(v*i)+O(y*j)));m=O(O(m*e)+O(O(g*i)+O(o*j)));i=O(O(n*e)+O(O(t*i)+O(u*j)));j=O(W(O(O(h*h)+O(O(m*m)+O(i*i)))));e=j!=O(0)?O(O(1)/j):O(0);g=O(h*e);e:{if(O(P(g))>=O(.9999998807907104)|j=O(0)))){g=O(W(g));L[p>>2]=e*O(k+g);L[p+4>>2]=e*O(-O(O(l-k)+g));a=2;break c}d=0;if(!(h>O(0))|!(g>=O(0))){break e}g=O(W(g));L[p+4>>2]=e*O(O(l-k)+g);L[p>>2]=e*O(-O(k+g));a=2;break c}d=0;j=O(m*e);i=O(i*e);h=O(O(q*j)+O(w*i));m=O(O(O(q*q)+O(w*w))-r);i=O(O(j*j)+O(i*i));j=O(O(h*h)-O(m*i));if(jO(0)){a=0;i=O(O(1)/i);j=O(W(j));o=O(i*O(O(-h)-j));n=O(O(o*g)+k);b=!(n>=O(-.0010000000474974513));v=n;n=O(l+O(.0010000000474974513));b=b|!(v<=n);if(!b){L[p>>2]=e*o;a=1}i=O(i*O(j-h));j=O(O(i*g)+k);if(!(j>=O(-.0010000000474974513))|!(j<=n)){break f}d=2;L[(a<<2)+p>>2]=e*i;a=1;if(!b){break e}break f}a=0;i=O(O(-h)/i);j=O(O(i*g)+k);if(!(j>=O(0))|!(j<=l)){break f}L[p>>2]=e*i;a=1;break c}h=O(O(k*g)+h);j=O(O(k*k)+m);i=O(O(h*h)-j);g:{if(i>O(0)){i=O(W(i));m=O(O(-h)-i);h:{if(!(O(O(m*g)+k)<=O(0))){c=a;break h}d=2;L[(a<<2)+p>>2]=e*m;c=1;if(a){break e}}i=O(i-h);if(!(O(O(i*g)+k)<=O(0))){b=c;break g}d=2;L[(c<<2)+p>>2]=e*i;b=1;if(!c){break g}break e}if(i!=O(0)){b=a;break g}if(!(O(k-O(h*g))<=O(0))){b=a;break g}d=2;L[(a<<2)+p>>2]=e*O(-h);b=1;if(a){break e}}h=O(h-O(g*l));i=O(O(h*h)-O(O(l*O(l-O(k+k)))+j));if(i>O(0)){i=O(W(i));j=O(O(-h)-i);i:{j:{if(!(l<=O(O(j*g)+k))){a=b;break j}L[(b<<2)+p>>2]=e*j;a=1;if(b){break i}}h=O(i-h);if(!(l<=O(O(h*g)+k))){break c}L[(a<<2)+p>>2]=e*h;d=1;if(!a){break e}}a=2;break c}a=b;if(i!=O(0)){break c}k:{if(!(l<=O(k-O(h*g)))){break k}d=2;L[(b<<2)+p>>2]=e*O(-h);a=1;if(b){break e}}d=a}a=d}if(a){e=L[s+24>>2];g=L[s+28>>2];L[f>>2]=x+((a|0)==1?e:e>2]){break a}m=H[a+188>>2];H[a+188>>2]=H[a+192>>2];e=H[a+132>>2];f=H[a+96>>2];l=H[a+156>>2];i=H[a+144>>2];b=-1;while(1){d=e+(H[f+(h<<2)>>2]<<3)|0;c=H[d+4>>2];d=H[d>>2];H[(d<<2)+l>>2]=1073741821;H[(c<<2)+l>>2]=1073741821;b=b>>>0>d>>>0?d:b;g=H[a+100>>2];h=h+1|0;if(g>>>0>h>>>0){continue}break}j=(H[a+188>>2]<<1)+2|0;if((j|0)!=(b|0)){h=H[a+132>>2];c=b;while(1){b:{if((b|0)==(j|0)){break b}while(1){e=b<<2;f=e+l|0;if(H[f>>2]==1073741821){b=b+1|0;if((j|0)!=(b|0)){continue}break b}break}c:{if((b|0)==(c|0)){break c}d=c<<2;H[d+i>>2]=H[e+i>>2];e=d+l|0;d=H[f>>2];H[e>>2]=d;if((d&-2)==1073741822){break c}H[(h+(d<<2&-8)|0)+((d&1)<<2)>>2]=c}c=c+1|0;b=b+1|0;if((j|0)!=(b|0)){continue}}break}g=H[a+100>>2]}i=H[a+160>>2];h=H[a+148>>2];d:{e:{if(!g){g=(H[a+188>>2]<<1)+2|0;b=-1;break e}e=H[a+96>>2];f=H[a+136>>2];g=0;b=-1;while(1){d=f+(H[e+(g<<2)>>2]<<3)|0;c=H[d+4>>2];d=H[d>>2];H[i+(d<<2)>>2]=1073741821;H[i+(c<<2)>>2]=1073741821;b=b>>>0>d>>>0?d:b;g=g+1|0;j=H[a+100>>2];if(g>>>0>>0){continue}break}g=(H[a+188>>2]<<1)+2|0;if((g|0)==(b|0)){break d}}c=b;f:while(1){g:{if((b|0)==(g|0)){break g}while(1){e=b<<2;f=e+i|0;if(H[f>>2]!=1073741821){h:{if((b|0)==(c|0)){break h}d=c<<2;H[d+h>>2]=H[e+h>>2];e=d+i|0;d=H[f>>2];H[e>>2]=d;if((d&-2)==1073741822){break h}H[(H[a+136>>2]+(d<<2&-8)|0)+((d&1)<<2)>>2]=c}c=c+1|0;b=b+1|0;if((g|0)!=(b|0)){continue f}break g}b=b+1|0;if((g|0)!=(b|0)){continue}break}}break}j=H[a+100>>2]}i=H[a+164>>2];h=H[a+152>>2];i:{j:{if(!j){g=(H[a+188>>2]<<1)+2|0;b=-1;break j}e=H[a+96>>2];f=H[a+140>>2];g=0;b=-1;while(1){d=f+(H[e+(g<<2)>>2]<<3)|0;c=H[d+4>>2];d=H[d>>2];H[i+(d<<2)>>2]=1073741821;H[i+(c<<2)>>2]=1073741821;b=b>>>0>d>>>0?d:b;g=g+1|0;j=H[a+100>>2];if(g>>>0>>0){continue}break}g=(H[a+188>>2]<<1)+2|0;if((g|0)==(b|0)){break i}}c=b;k:while(1){l:{if((b|0)==(g|0)){break l}while(1){e=b<<2;f=e+i|0;if(H[f>>2]!=1073741821){m:{if((b|0)==(c|0)){break m}d=c<<2;H[d+h>>2]=H[e+h>>2];e=d+i|0;d=H[f>>2];H[e>>2]=d;if((d&-2)==1073741822){break m}H[(H[a+140>>2]+(d<<2&-8)|0)+((d&1)<<2)>>2]=c}c=c+1|0;b=b+1|0;if((g|0)!=(b|0)){continue k}break l}b=b+1|0;if((g|0)!=(b|0)){continue}break}}break}j=H[a+100>>2]}if(j){h=H[a+140>>2];e=H[a+136>>2];f=H[a+132>>2];d=H[a+96>>2];b=0;while(1){i=H[d+(b<<2)>>2]<<3;c=i+f|0;H[c>>2]=1073741821;H[c+4>>2]=1073741821;c=e+i|0;H[c>>2]=1073741821;H[c+4>>2]=1073741821;c=h+i|0;H[c>>2]=1073741821;H[c+4>>2]=1073741821;b=b+1|0;if(b>>>0>2]){continue}break}}b=H[a+128>>2];f=(b>>>5|0)+1|0;c=k;n:{if(b>>>0<=4095){j=f<<2;b=k+24|0;break n}b=H[33808]+12|0;j=f<<2;b=Ra[H[H[b>>2]+8>>2]](b,j,20591,15107,56)|0}d=b;H[c+536>>2]=d;b=0;S6(d,0,j);H[k+12>>2]=f|-2147483648;e=H[k+536>>2];H[k+8>>2]=e;if(H[a+100>>2]){f=H[a+96>>2];while(1){d=H[f+(b<<2)>>2];c=e+(d>>>3&536870908)|0;H[c>>2]=H[c>>2]|1<>>0>2]){continue}break}}h=0;e=a+216|0;d=H[e+28>>2];if(d){while(1){c=H[e+20>>2]+(h<<3)|0;f=H[c+4>>2];b=H[c>>2];c=H[k+8>>2];o:{if(H[c+(f>>>3&536870908)>>2]>>>f&1?1:H[(b>>>3&536870908)+c>>2]>>>b&1){c=b|f<<16;c=(c<<15^-1)+c|0;c=N(c>>10^c,9);c=c>>6^c;c=(c<<11^-1)+c|0;TK(e,H[e+36>>2]&(c>>16^c),h);d=H[e+28>>2];break o}h=h+1|0}if(d>>>0>h>>>0){continue}break}}c=m-H[a+100>>2]|0;H[a+188>>2]=c;H[a+192>>2]=c-H[a+92>>2];c=H[k+8>>2];if(!(!c|H[k+12>>2]<0)){a=H[33808]+12|0;Ra[H[H[a>>2]+12>>2]](a,c)}c=H[k+536>>2];if((c|0)==(k+24|0)|!c){break a}a=H[33808]+12|0;Ra[H[H[a>>2]+12>>2]](a,c)}Oa=k+544|0}function jS(a,b,c,d,e,f,g,h,i,j,k,l,m){var n=0,o=O(0),p=0,q=O(0),r=O(0),s=0,t=O(0),u=0,v=O(0),w=O(0),x=O(0),y=0,z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),G=O(0),J=0,K=O(0),N=O(0),Q=O(0),R=0,S=0,T=0,U=0,V=O(0),X=0;n=Oa-112|0;Oa=n;T=H[b+324>>2];F[a|0]=0;U=M[e+24>>3];y=M[e+16>>3];K=L[b+264>>2];R=+K;N=L[b+260>>2];S=+N;u=M[e+8>>3];V=L[e+32>>2];p=T&-258;t=L[b+280>>2];q=L[f+8>>2];Q=L[b+268>>2];v=L[f>>2];o=L[f+4>>2];w=O(O(q*Q)+O(O(v*N)+O(K*o)));a:{if(w>O(0)){H[b+324>>2]=p|256;t=k?t:O(0);break a}H[b+324>>2]=p}X=H[b+240>>2];H[n+104>>2]=0;H[n+96>>2]=0;H[n+100>>2]=0;H[n+88>>2]=0;H[n+80>>2]=0;H[n+84>>2]=0;r=q;q=O(Q*w);D=O(r-q);r=o;o=O(K*w);E=O(r-o);r=O(N*w);G=O(v-r);b:{if(w<=O(0)){J=n+80|4;L[n+80>>2]=r;z=q;A=o;B=r;r=O(0);v=O(0);p=n+88|0;break b}J=n+96|4;L[n+96>>2]=r;C=o;v=q;p=n+104|0}L[J>>2]=o;L[p>>2]=q;L[n+68>>2]=E;L[n+64>>2]=G;L[n+72>>2]=D;x=O(P(G));q=O(P(E));o=O(P(D));J=x>O(9.999999974752427e-7)|k|q>O(9.999999974752427e-7)|o>O(9.999999974752427e-7);if((J|0)==1){L[n+104>>2]=O(Q*t)+v;L[n+100>>2]=O(K*t)+C;L[n+96>>2]=O(N*t)+r}y=U*+Q+(u*S+y*R);k=n+16|0;s=e+8|0;Ra[H[H[e>>2]+8>>2]](e,b,k,s,f);hS(b,c,g,k,i,n- -64|0);H[b+96>>2]=0;H[n+12>>2]=0;k=0;c:{if(I[b+324|0]&2){break c}k=0;if(!iS(b,c,d,g,e,n+96|0,n- -64|0,I[b+300|0]?1:x>O(9.999999974752427e-7)?1:q>O(9.999999974752427e-7)?1:o>O(9.999999974752427e-7)?1:10,n+12|0,h,i,0,l,m)|!H[n+12>>2]){break c}F[a|0]=2;o=O(M[e+24>>3]*+L[b+268>>2]+(M[e+8>>3]*+L[b+260>>2]+M[e+16>>3]*+L[b+264>>2])-y);t=o>2]=1;H[b+324>>2]=H[b+324>>2]&-9;H[n+12>>2]=0;p=n- -64|0;if(!(!iS(b,c,d,g,e,p,p,10,n+12|0,h,i,1,l,m)|!H[n+12>>2])){k=k|1;F[a|0]=k}d:{if(!j|H[e+36>>2]!=1){break d}p=H[b+324>>2];if(p&8){break d}q=O(O(D*D)+O(O(G*G)+O(E*E)));o=O(W(q));x=L[e+40>>2];if(!(oO(0)){o=O(O(1)/o);v=O(D*o);r=O(G*o);C=O(E*o)}L[n+8>>2]=x*v;L[n+4>>2]=x*C;L[n>>2]=x*r;H[b+324>>2]=p&-9;H[n+12>>2]=0;p=H[s+20>>2];H[n+32>>2]=H[s+16>>2];H[n+36>>2]=p;p=H[s+12>>2];H[n+24>>2]=H[s+8>>2];H[n+28>>2]=p;p=H[s+4>>2];H[n+16>>2]=H[s>>2];H[n+20>>2]=p;iS(b,c,d,g,e,n,n- -64|0,1,n+12|0,h,i,3,l,m);p=H[n+36>>2];H[s+16>>2]=H[n+32>>2];H[s+20>>2]=p;p=H[n+28>>2];H[s+8>>2]=H[n+24>>2];H[s+12>>2]=p;p=H[n+20>>2];H[s>>2]=H[n+16>>2];H[s+4>>2]=p}H[b+96>>2]=2;H[n+12>>2]=0;if(J){q=L[b+260>>2];o=L[b+264>>2];L[n+88>>2]=z-O(t*L[b+268>>2]);L[n+84>>2]=A-O(t*o);L[n+80>>2]=B-O(t*q)}u=y-+V;H[b+324>>2]=H[b+324>>2]&-5;H[m>>2]=0;H[l>>2]=0;H[b+176>>2]=-1;e:{f:{g:{if(!(!iS(b,c,d,g,e,n+80|0,n- -64|0,(T&2)>>>1|0?(X|0)==1?10:1:1,n+12|0,h,i,2,l,m)|!H[n+12>>2])){if(w<=O(0)){F[a|0]=k|4}if(!I[b+297|0]){break e}k=H[b+324>>2];if((k&56)!=8){break g}o=O(O(L[b+140>>2]*L[b+268>>2])+O(O(L[b+132>>2]*L[b+260>>2])+O(L[b+136>>2]*L[b+264>>2])));if(!(o>=O(0))|!(o>2])|(!j|!(+L[b+308>>2]>u+ +t))){break g}a=k|1;H[b+324>>2]=a;if(k&2){break f}break e}if(!I[b+297|0]){break e}}a=H[b+324>>2]}if(!(a&4)|a&48|(!(w<=O(0))|!(L[b+280>>2]>2]-u)))){break e}z=L[b+268>>2];A=L[b+260>>2];B=L[b+264>>2];o=O(O(L[b+128>>2]*z)+O(O(L[b+120>>2]*A)+O(L[b+124>>2]*B)));if(!(o>=O(0))|!(o>2])){break e}H[b+324>>2]=a|1;if(!(a&2)){break e}H[b+324>>2]=a|65;C=L[f+8>>2];q=L[f>>2];o=L[f+4>>2];R=M[e+24>>3];S=M[e+8>>3];u=M[e+16>>3];H[n+12>>2]=0;u=R*+z+(S*+A+u*+B);o=O((u>y?O(u-y):O(0))+O(P(O(O(C*z)+O(O(q*A)+O(B*o))))));L[n+24>>2]=o*O(-z);L[n+20>>2]=o*O(-B);L[n+16>>2]=o*O(-A);iS(b,c,d,g,e,n+16|0,n- -64|0,10,n+12|0,h>o?O(o/O(10)):h,i,0,l,m);H[b+324>>2]=H[b+324>>2]&-65}Oa=n+112|0}function ty(a,b,c,d,e,f){var g=O(0),h=0,i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0);h=H[a+36>>2];t=L[h+140>>2];a:{b:{c:{d:{e:{if(c){i=L[h+8>>2];g=L[e+24>>2];k=O(g+g);m=L[h>>2];g=L[e+16>>2];j=O(g+g);g=L[e+20>>2];l=O(g+g);n=L[h+4>>2];o=O(O(i*k)+O(O(m*j)+O(l*n)));v=L[e+8>>2];w=L[e>>2];u=L[e+4>>2];g=L[h+124>>2];x=g==O(0)?O(1):g;g=L[h+12>>2];q=O(O(g*g)+O(-.5));r=O(O(i*o)+O(O(k*q)-O(g*O(O(m*l)-O(j*n)))));p=L[h+120>>2];y=p>O(0)?O(O(1)/p):O(1);p=O(O(m*o)+O(O(j*q)-O(g*O(O(n*k)-O(l*i)))));s=L[h+112>>2];s=s>O(0)?O(O(1)/s):O(1);z=L[h+116>>2];z=z>O(0)?O(O(1)/z):O(1);m=O(O(n*o)+O(O(l*q)-O(g*O(O(i*j)-O(k*m)))));k=O(O(O(O(v*v)+O(O(w*w)+O(u*u)))+O(x*O(O(O(r*r)*y)+O(O(O(p*p)*s)+O(z*O(m*m))))))*O(.5));g=O(0);if(f){c=H[h+152>>2];g=O((c>>>0<10?c:10)>>>0)}j=L[h+136>>2];i=O(L[a+60>>2]-b);l=i>O(0)?i:O(0);L[a+60>>2]=l;i=O(R(O(L[a+76>>2]+b),O(1)));if(k>=O(g*j)){H[a+60>>2]=1069547520;j=f?i:O(1);break e}j=O(1);if(!f){break e}if(g>O(1)){g=O(O(b*O(-.5))+O(1));L[h+72>>2]=g*L[h+72>>2];L[h+68>>2]=g*L[h+68>>2];L[h+64>>2]=g*L[h+64>>2];L[h+80>>2]=g*L[h+80>>2];L[h+84>>2]=g*L[h+84>>2];L[h+88>>2]=g*L[h+88>>2];i=O(O((f?i:O(1))*O(.75))+O(.02500000037252903))}g=L[h+136>>2];L[a+76>>2]=i;f=a+28|0;c=G[a+28>>1]&1;if(!(k>2]=L[a>>2];L[h+4>>2]=L[a+4>>2];L[h+8>>2]=L[a+8>>2];L[h+12>>2]=L[a+12>>2];L[h+16>>2]=L[a+16>>2];L[h+20>>2]=L[a+20>>2];L[h+24>>2]=L[a+24>>2];c=c?1:3;break c}if(d){g=O(1);f:{if(!f){break f}c=H[h+152>>2];if(c>>>0<2){break f}g=O(O(1)/O(c>>>0))}L[a+76>>2]=g}if(!(tt)){break b}o=L[h+120>>2];v=L[h+116>>2];j=L[e+24>>2];n=L[e+20>>2];w=L[h+112>>2];i=L[h>>2];l=L[e+16>>2];g=L[h+12>>2];k=L[h+4>>2];m=L[h+8>>2];r=L[e+8>>2];q=L[e+4>>2];u=O(L[e>>2]+L[a+48>>2]);L[a+48>>2]=u;q=O(q+L[a+52>>2]);L[a+52>>2]=q;r=O(r+L[a+56>>2]);L[a+56>>2]=r;j=O(j+j);l=O(l+l);n=O(n+n);p=O(O(m*j)+O(O(i*l)+O(k*n)));x=O(O(g*g)+O(-.5));y=O(O(O(i*p)+O(O(l*x)-O(g*O(O(k*j)-O(n*m)))))+L[a+64>>2]);L[a+64>>2]=y;s=O(O(O(k*p)+O(O(n*x)-O(g*O(O(m*l)-O(j*i)))))+L[a+68>>2]);L[a+68>>2]=s;g=O(O(O(m*p)+O(O(j*x)-O(g*O(O(i*n)-O(l*k)))))+L[a+72>>2]);L[a+72>>2]=g;i=O(O(O(g*g)*(o>O(0)?O(O(1)/o):O(1)))+O(O(O(y*y)*(w>O(0)?O(O(1)/w):O(1)))+O((v>O(0)?O(O(1)/v):O(1))*O(s*s))));g=L[h+124>>2];i=O(O(O(O(r*r)+O(O(u*u)+O(q*q)))+O(i*(g==O(0)?O(1):g)))*O(.5));k=O(H[h+148>>2]+1>>>0);g=O(L[h+132>>2]*k);if(!(i>=g)){break b}H[a+72>>2]=0;H[a+64>>2]=0;H[a+68>>2]=0;H[a+56>>2]=0;H[a+48>>2]=0;H[a+52>>2]=0;if(g!=O(0)){g=O(i/g);g=O((g>2]=b;G[a+28>>1]=(t==O(0))<<3;return b}L[a+76>>2]=j;f=a+28|0;c=G[a+28>>1]&1}c=c<<2}G[f>>1]=c;if(!(tt)){break b}g=O(w+L[a+48>>2]);L[a+48>>2]=g;i=O(p+L[a+64>>2]);L[a+64>>2]=i;j=O(u+L[a+52>>2]);L[a+52>>2]=j;l=O(v+L[a+56>>2]);L[a+56>>2]=l;m=O(m+L[a+68>>2]);L[a+68>>2]=m;n=O(r+L[a+72>>2]);L[a+72>>2]=n;o=L[h+132>>2];if(!(k>=o)){break b}g=O(O(O(O(l*l)+O(O(g*g)+O(j*j)))+O(x*O(O(O(n*n)*y)+O(O(O(i*i)*s)+O(z*O(m*m))))))*O(.5));i=O(H[h+148>>2]+1>>>0);k=O(o*i);if(!(g>=k)){break b}H[a+72>>2]=0;H[a+64>>2]=0;H[a+68>>2]=0;H[a+56>>2]=0;H[a+48>>2]=0;H[a+52>>2]=0;if(o!=O(0)){g=O(g/k);g=O((g>2]=b;if(t!=O(0)){break a}G[f>>1]=c|8;return b}b=O(t-b);b=b>O(0)?b:O(0);L[h+144>>2]=b}return b}function j1(a,b,c,d,e,f,g,h){var i=0,j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=0,t=0,u=O(0),v=O(0),w=O(0),x=0,y=0,z=0,A=0;i=Oa-192|0;Oa=i;a:{b:{if(I[h|0]&16){break b}L[i+96>>2]=L[c>>2];L[i+100>>2]=L[c+4>>2];k=L[c+8>>2];L[i+108>>2]=b;L[i+104>>2]=k;if(!c_(i+96|0,a)){break b}H[f>>2]=0;b=L[d>>2];e=L[d+4>>2];L[g+8>>2]=-L[d+8>>2];L[g+4>>2]=-e;L[g>>2]=-b;t=1;break a}AU(i+96|0,a+36|0,a+48|0,a,a+12|0,a+24|0);z=i+76|0;h=125584;while(1){A=I[h+1|0];x=i+96|0;s=x+N(I[h|0],12)|0;L[i+64>>2]=L[s>>2];L[i+68>>2]=L[s+4>>2];L[i+72>>2]=L[s+8>>2];s=N(A,12)+x|0;L[i+76>>2]=L[s>>2];L[i+80>>2]=L[s+4>>2];k=L[s+8>>2];L[i+88>>2]=b;L[i+84>>2]=k;c:{if(!WV(c,d,i- -64|0,z,b,i+48|0)){break c}k=L[i+48>>2];if(!(k>=O(0))|!(e>=k)){break c}q=L[i+72>>2];j=O(L[i+84>>2]-q);r=L[i+64>>2];l=O(L[i+76>>2]-r);p=O(O(k*L[d+8>>2])+L[c+8>>2]);u=O(O(k*L[d>>2])+L[c>>2]);m=L[i+68>>2];n=O(L[i+80>>2]-m);v=O(O(k*L[d+4>>2])+L[c+4>>2]);o=O(O(O(p-q)*j)+O(O(O(u-r)*l)+O(n*O(v-m))));e=O(0);d:{if(o<=O(0)){break d}w=O(O(j*j)+O(O(l*l)+O(n*n)));e=O(1);if(w<=o){break d}e=O(o/w)}j=O(O(q+O(j*e))-p);L[g+8>>2]=j;n=O(O(m+O(n*e))-v);L[g+4>>2]=n;e=O(O(r+O(l*e))-u);L[g>>2]=e;t=1;l=O(W(O(O(j*j)+O(O(e*e)+O(n*n)))));if(l>O(0)){m=j;j=O(O(1)/l);L[g+8>>2]=m*j;L[g+4>>2]=n*j;L[g>>2]=e*j}e=k}h=h+2|0;y=y+1|0;if((y|0)!=12){continue}break}k=L[a+16>>2];j=L[a+20>>2];l=L[a+8>>2];n=L[a+4>>2];q=L[a>>2];r=L[a+12>>2];u=L[a+32>>2];m=O(L[c+8>>2]-L[a+44>>2]);v=L[a+24>>2];o=O(L[c>>2]-L[a+36>>2]);w=L[a+28>>2];p=O(L[c+4>>2]-L[a+40>>2]);L[i+72>>2]=O(u*m)+O(O(v*o)+O(w*p));L[i+68>>2]=O(j*m)+O(O(r*o)+O(k*p));L[i+64>>2]=O(l*m)+O(O(q*o)+O(n*p));m=L[d+8>>2];o=L[d>>2];p=L[d+4>>2];L[i+56>>2]=O(u*m)+O(O(v*o)+O(w*p));L[i+52>>2]=O(j*m)+O(O(r*o)+O(k*p));L[i+48>>2]=O(l*m)+O(O(q*o)+O(n*p));k=L[a+48>>2];j=L[a+52>>2];L[i+28>>2]=j;l=L[a+56>>2];L[i+32>>2]=l;k=O(k+b);L[i+24>>2]=k;L[i+16>>2]=-l;L[i+12>>2]=-j;L[i+8>>2]=-k;c=a_(i+8|0,i+24|0,i- -64|0,i+48|0,i+44|0,i+40|0);e:{if((c|0)==-1){break e}k=L[i+44>>2];if(!(k>=O(-9999999747378752e-21))|!(e>=k)){break e}n=L[a+24>>2];q=L[a>>2];r=L[a+12>>2];m=L[a+28>>2];o=L[a+4>>2];p=L[a+16>>2];c=N(c,12)+90624|0;e=L[c>>2];j=L[c+4>>2];l=L[c+8>>2];L[g+8>>2]=O(O(e*L[a+8>>2])+O(j*L[a+20>>2]))+O(l*L[a+32>>2]);L[g+4>>2]=O(O(e*o)+O(j*p))+O(l*m);L[g>>2]=O(O(e*q)+O(j*r))+O(l*n);e=k>O(0)?k:O(0);t=1}k=L[a+48>>2];L[i+24>>2]=k;j=L[a+52>>2];l=L[a+56>>2];L[i+32>>2]=l;j=O(j+b);L[i+28>>2]=j;L[i+16>>2]=-l;L[i+12>>2]=-j;L[i+8>>2]=-k;c=a_(i+8|0,i+24|0,i- -64|0,i+48|0,i+44|0,i+40|0);f:{if((c|0)==-1){break f}k=L[i+44>>2];if(!(k>=O(-9999999747378752e-21))|!(e>=k)){break f}n=L[a+24>>2];q=L[a>>2];r=L[a+12>>2];m=L[a+28>>2];o=L[a+4>>2];p=L[a+16>>2];c=N(c,12)+90624|0;e=L[c>>2];j=L[c+4>>2];l=L[c+8>>2];L[g+8>>2]=O(O(e*L[a+8>>2])+O(j*L[a+20>>2]))+O(l*L[a+32>>2]);L[g+4>>2]=O(O(e*o)+O(j*p))+O(l*m);L[g>>2]=O(O(e*q)+O(j*r))+O(l*n);e=k>O(0)?k:O(0);t=1}k=L[a+48>>2];L[i+24>>2]=k;j=L[a+52>>2];L[i+28>>2]=j;b=O(L[a+56>>2]+b);L[i+32>>2]=b;L[i+16>>2]=-b;L[i+12>>2]=-j;L[i+8>>2]=-k;c=a_(i+8|0,i+24|0,i- -64|0,i+48|0,i+44|0,i+40|0);g:{if((c|0)==-1){break g}b=L[i+44>>2];if(!(b>=O(-9999999747378752e-21))|!(b<=e)){break g}l=L[a+24>>2];n=L[a>>2];q=L[a+12>>2];r=L[a+28>>2];m=L[a+4>>2];o=L[a+16>>2];c=N(c,12)+90624|0;e=L[c>>2];k=L[c+4>>2];j=L[c+8>>2];L[g+8>>2]=O(O(e*L[a+8>>2])+O(k*L[a+20>>2]))+O(j*L[a+32>>2]);L[g+4>>2]=O(O(e*m)+O(k*o))+O(j*r);L[g>>2]=O(O(e*n)+O(k*q))+O(j*l);e=b>O(0)?b:O(0);t=1}L[f>>2]=e}Oa=i+192|0;return t}function n_(a,b,c,d,e,f){var g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),F=O(0),G=O(0),H=O(0),I=O(0),J=O(0),K=O(0),M=O(0);A=L[b+8>>2];t=L[e+8>>2];h=O(A-t);n=L[f+8>>2];B=L[b>>2];u=L[e>>2];j=O(B-u);o=L[f>>2];C=L[b+4>>2];D=L[e+4>>2];g=O(C-D);r=L[f+4>>2];s=O(O(h*n)+O(O(j*o)+O(g*r)));a:{if(s<=O(0)){break a}y=O(O(n*n)+O(O(o*o)+O(r*r)));if(y<=s){h=O(h-n);g=O(g-r);j=O(j-o);break a}s=O(s/y);h=O(h-O(n*s));g=O(g-O(r*s));j=O(j-O(o*s))}b=1;I=L[e+24>>2];b:{if(O(O(h*h)+O(O(j*j)+O(g*g)))<=O(I*I)){break b}b=0;j=L[a+8>>2];g=L[a>>2];h=L[a+4>>2];z=O(I*O(W(O(O(j*j)+O(O(g*g)+O(h*h))))));l=O(O(t*j)+O(O(u*g)+O(D*h)));J=L[e+20>>2];K=L[e+12>>2];M=L[e+16>>2];m=O(O(J*j)+O(O(K*g)+O(h*M)));a=l>m;s=L[d+8>>2];y=L[d>>2];E=L[d+4>>2];i=O(O(s*j)+O(O(y*g)+O(h*E)));F=L[c+8>>2];G=L[c>>2];H=L[c+4>>2];k=O(O(F*j)+O(O(G*g)+O(h*H)));j=O(O(A*j)+O(O(B*g)+O(C*h)));g=j>k?k:j;if(O(z+(a?l:m))<(g>i?i:g)){break b}j=j(i>j?i:j)){break b}i=O(F-A);p=O(t-A);k=O(G-B);v=O(u-B);w=O(D-C);l=O(H-C);q=O(O(i*p)+O(O(k*v)+O(w*l)));g=O(-O(O(n*p)+O(O(o*v)+O(w*r))));j=L[f+16>>2];x=O(O(i*i)+O(O(k*k)+O(l*l)));z=L[f+12>>2];m=O(O(i*n)+O(O(k*o)+O(r*l)));h=O(O(x*z)-O(m*m));if(h!=O(0)){h=O(O(O(q*z)+O(m*g))/h)}else{h=O(0)}h=O(R(O(S(h,O(0))),O(1)));g=O(j*O(O(h*m)+g));c:{if(gO(1))){break c}g=O(1);h=O(R(O(S(O(O(q+m)/x),O(0))),O(1)))}i=O(O(p+O(n*g))-O(i*h));k=O(O(v+O(o*g))-O(k*h));g=O(O(w+O(r*g))-O(l*h));m=O(I*O(W(O(O(i*i)+O(O(k*k)+O(g*g))))));q=O(O(t*i)+O(O(u*k)+O(D*g)));p=O(O(J*i)+O(O(K*k)+O(M*g)));a=q>p;h=O(O(s*i)+O(O(y*k)+O(E*g)));l=O(O(F*i)+O(O(G*k)+O(H*g)));g=O(O(A*i)+O(O(B*k)+O(C*g)));i=g>l?l:g;if(O(m+(a?q:p))<(h(gO(1))){break d}g=O(1);h=O(R(O(S(O(O(q+m)/x),O(0))),O(1)))}i=O(O(p+O(n*g))-O(i*h));k=O(O(v+O(o*g))-O(k*h));g=O(O(w+O(r*g))-O(l*h));m=O(I*O(W(O(O(i*i)+O(O(k*k)+O(g*g))))));q=O(O(t*i)+O(O(u*k)+O(D*g)));p=O(O(J*i)+O(O(K*k)+O(M*g)));a=q>p;h=O(O(s*i)+O(O(y*k)+O(E*g)));l=O(O(F*i)+O(O(G*k)+O(H*g)));g=O(O(A*i)+O(O(B*k)+O(C*g)));i=g>l?l:g;if(O(m+(a?q:p))<(h(gO(1))){break e}g=O(1);h=O(R(O(S(O(O(q+m)/x),O(0))),O(1)))}j=O(O(p+O(n*g))-O(i*h));n=O(O(v+O(o*g))-O(k*h));g=O(O(w+O(r*g))-O(l*h));r=O(I*O(W(O(O(j*j)+O(O(n*n)+O(g*g))))));t=O(O(t*j)+O(O(u*n)+O(D*g)));u=O(O(J*j)+O(O(K*n)+O(M*g)));a=t>u;h=O(O(s*j)+O(O(y*n)+O(E*g)));o=O(O(F*j)+O(O(G*n)+O(H*g)));j=O(O(A*j)+O(O(B*n)+O(C*g)));g=j>o?o:j;j=jh?h:g)^-1)&!(O((a?u:t)-r)>(h>j?h:j))}return b}function nY(a){var b=0,c=0,d=O(0),e=O(0),f=O(0),g=O(0),h=O(0),i=0,j=0,k=0,l=O(0),m=O(0),n=0,o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=0,u=O(0),v=O(0),w=0,x=0,y=0,z=0,A=0;n=Oa-32|0;Oa=n;b=H[a>>2];c=H[b+4360>>2];if(!(!c|c>>>0<17)){w=H[b+4356>>2];x=(c>>>0)/17|0;y=a+2164|0;z=a+2160|0;while(1){c=N(t,68)+w|0;i=H[c+40>>2];A=H[c>>2];j=H[c+48>>2];k=H[c+44>>2];a:{b:{c:{d:{e:{f:{g:{h:{e=L[c+12>>2];l=O(L[c+24>>2]-e);o=O(L[c+36>>2]-e);d=L[c+4>>2];p=O(L[c+16>>2]-d);q=O(L[c+28>>2]-d);g=L[c+8>>2];r=O(L[c+20>>2]-g);s=O(L[c+32>>2]-g);f=O(O(l*o)+O(O(p*q)+O(r*s)));h=O(e-L[y>>2]);d=O(d-L[a+2156>>2]);g=O(g-L[z>>2]);e=O(O(h*o)+O(O(d*q)+O(g*s)));d=O(O(h*l)+O(O(d*p)+O(g*r)));g=O(O(o*o)+O(O(q*q)+O(s*s)));u=O(O(f*e)-O(d*g));h=O(O(l*l)+O(O(p*p)+O(r*r)));m=O(O(f*d)-O(e*h));v=O(O(h*g)-O(f*f));if(O(u+m)<=O(P(v))){if(u=O(0)){break g}if(g<=O(-e)){break e}break d}if(e>=O(0)){break g}if(!(g<=O(-e))){break d}break e}if(!(m=O(0)){break g}if(!(h<=O(-d))){break c}break f}i:{if(ud){if(O(g+O(h-O(f+f)))<=O(m-d)){break f}break i}if(m<=O(0)){break e}if(!(e>=O(0))){break d}break g}if(me){if(O(g+O(h-O(f+f)))<=O(m-e)){break e}break i}if(m<=O(0)){break f}if(!(d>=O(0))){break c}break g}e=O(O(O(g+e)-f)-d);if(e<=O(0)){break e}if(e>=O(g+O(h-O(f+f)))){break f}}b=j>>>0>k>>>0;i=b?k:j;j=b?j:k;b=i<<16|j;b=(b<<15^-1)+b|0;b=N(b>>>10^b,9);b=b>>>6^b;b=(b<<11^-1)+b|0;b=I[(((b>>>16^b)&127)+a|0)+1156|0];if((b|0)==255){break b}while(1){k=(b<<3)+a|0;if((i|0)==H[k+4>>2]&(j|0)==H[k+8>>2]){break a}b=I[(a+b|0)+1028|0];if((b|0)!=255){continue}break}break b}if(v!=O(0)){break b}}b=I[((i&127)+a|0)+1928|0];if((b|0)==255){break b}while(1){if((i|0)==H[((b<<2)+a|0)+1288>>2]){break a}b=I[(a+b|0)+1800|0];if((b|0)!=255){continue}break}break b}b=I[((k&127)+a|0)+1928|0];if((b|0)==255){break b}while(1){if((k|0)==H[((b<<2)+a|0)+1288>>2]){break a}b=I[(a+b|0)+1800|0];if((b|0)!=255){continue}break}break b}b=I[((j&127)+a|0)+1928|0];if((b|0)==255){break b}while(1){if((j|0)==H[((b<<2)+a|0)+1288>>2]){break a}b=I[(a+b|0)+1800|0];if((b|0)!=255){continue}break}break b}b=i>>>0>>0;k=b?i:j;i=b?j:i;b=k<<16|i;b=(b<<15^-1)+b|0;b=N(b>>>10^b,9);b=b>>>6^b;b=(b<<11^-1)+b|0;b=I[(((b>>>16^b)&127)+a|0)+1156|0];if((b|0)==255){break b}while(1){j=(b<<3)+a|0;if((k|0)==H[j+4>>2]&(i|0)==H[j+8>>2]){break a}b=I[(a+b|0)+1028|0];if((b|0)!=255){continue}break}break b}b=i>>>0>>0;j=b?i:k;i=b?k:i;b=j<<16|i;b=(b<<15^-1)+b|0;b=N(b>>>10^b,9);b=b>>>6^b;b=(b<<11^-1)+b|0;b=I[(((b>>>16^b)&127)+a|0)+1156|0];if((b|0)==255){break b}while(1){k=(b<<3)+a|0;if((j|0)==H[k+4>>2]&(i|0)==H[k+8>>2]){break a}b=I[(a+b|0)+1028|0];if((b|0)!=255){continue}break}}f=O(0);e=O(0);d=O(0);g=O(O(p*s)-O(q*r));h=O(O(r*o)-O(s*l));l=O(O(l*q)-O(o*p));o=O(O(g*g)+O(O(h*h)+O(l*l)));if(o>O(0)){f=O(O(1)/O(W(o)));d=O(g*f);e=O(l*f);f=O(h*f)}L[n+24>>2]=d;L[n+16>>2]=f;L[n+20>>2]=e;g=L[c+12>>2];h=O(g*d);b=c+4|0;d=L[b>>2];l=O(d*f);f=L[c+8>>2];L[n+28>>2]=-O(h+O(l+O(e*f)));e=L[c+28>>2];h=L[c+16>>2];l=L[c+32>>2];o=L[c+20>>2];p=L[c+36>>2];q=L[c+24>>2];L[n>>2]=L[c+52>>2];L[n+4>>2]=L[c+56>>2];L[n+8>>2]=L[c+60>>2];if(!qY(a,n+16|0,b,O(O(e+O(d+h))*O(.3333333432674408)),O(O(l+O(f+o))*O(.3333333432674408)),O(O(p+O(g+q))*O(.3333333432674408)),n,L[c+64>>2],A)){break a}F[a+2224|0]=1}t=t+1|0;if((x|0)!=(t|0)){continue}break}}Oa=n+32|0}function DZ(a,b,c,d,e,f,g){var h=0,i=O(0),j=0,k=O(0),l=0,m=0,n=O(0),o=O(0),p=O(0),q=0,r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=0,z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),F=0,G=O(0),I=O(0),J=O(0),K=O(0),M=O(0),N=O(0),Q=O(0),R=0,S=0;h=Oa-144|0;Oa=h;s=L[b+16>>2];r=L[b>>2];t=O(s-r);G=L[b+36>>2];w=L[b+4>>2];z=O(G-w);I=L[b+32>>2];B=O(I-r);A=L[b+20>>2];C=O(A-w);n=O(O(t*z)-O(B*C));J=L[b+40>>2];x=L[b+8>>2];D=O(J-x);u=L[b+24>>2];E=O(u-x);k=O(O(C*D)-O(z*E));i=O(O(E*B)-O(D*t));K=O(O(1)/O(W(O(O(n*n)+O(O(k*k)+O(i*i))))));M=L[b+56>>2];o=O(M-x);N=L[b+48>>2];p=O(N-r);Q=L[b+52>>2];v=O(Q-w);a:{if(O(P(O(O(O(n*K)*o)+O(O(O(k*K)*p)+O(v*O(i*K))))))>2]=3;_W(a,b,c,d,e,f,g);break a}q=O(O(O(n*x)+O(O(k*r)+O(w*i)))*O(O(n*M)+O(O(k*N)+O(Q*i))))>=O(-9.999999974752427e-7);H[h+128>>2]=q?-1:0;n=O(O(p*C)-O(t*v));k=O(O(v*E)-O(C*o));i=O(O(o*t)-O(E*p));n=O(O(O(n*x)+O(O(k*r)+O(w*i)))*O(O(n*J)+O(O(k*I)+O(G*i))));H[h+136>>2]=n>=O(-9.999999974752427e-7)?-1:0;k=O(O(B*v)-O(p*z));i=O(O(z*o)-O(v*D));o=O(O(D*p)-O(o*B));j=O(O(O(k*x)+O(O(i*r)+O(w*o)))*O(O(k*u)+O(O(i*s)+O(A*o))))>=O(-9.999999974752427e-7);H[h+132>>2]=j?-1:0;k=O(N-s);i=O(G-A);o=O(I-s);p=O(Q-A);v=O(O(k*i)-O(o*p));z=O(v*u);t=p;p=O(J-u);u=O(M-u);i=O(O(t*p)-O(i*u));t=O(i*s);s=O(O(u*o)-O(p*k));r=O(O(z+O(t+O(A*s)))*O(O(v*x)+O(O(i*r)+O(w*s))));H[h+140>>2]=r>=O(-9.999999974752427e-7)?-1:0;if(!(j|q|(n>=O(-9.999999974752427e-7)|r>=O(-9.999999974752427e-7)))){H[a>>2]=0;H[a+4>>2]=0;H[a+8>>2]=0;H[a+12>>2]=0;break a}H[h+120>>2]=H[22155];q=H[22154];H[h+112>>2]=H[22153];H[h+116>>2]=q;CZ(h+96|0,b,h+128|0,h+112|0,g);q=H[h+112>>2];F=H[h+116>>2];j=F<<4;g=j+b|0;m=H[g+4>>2];H[h+80>>2]=H[g>>2];H[h+84>>2]=m;m=H[g+12>>2];H[h+88>>2]=H[g+8>>2];H[h+92>>2]=m;y=H[h+120>>2];m=y<<4;g=m+b|0;l=H[g+4>>2];H[h+64>>2]=H[g>>2];H[h+68>>2]=l;l=H[g+12>>2];H[h+72>>2]=H[g+8>>2];H[h+76>>2]=l;g=c+j|0;l=H[g+12>>2];H[h+56>>2]=H[g+8>>2];H[h+60>>2]=l;l=H[g+4>>2];H[h+48>>2]=H[g>>2];H[h+52>>2]=l;g=c+m|0;l=H[g+12>>2];H[h+40>>2]=H[g+8>>2];H[h+44>>2]=l;l=H[g+4>>2];H[h+32>>2]=H[g>>2];H[h+36>>2]=l;g=d+j|0;j=H[g+12>>2];H[h+24>>2]=H[g+8>>2];H[h+28>>2]=j;j=H[g+4>>2];H[h+16>>2]=H[g>>2];H[h+20>>2]=j;g=d+m|0;j=H[g+12>>2];H[h+8>>2]=H[g+8>>2];H[h+12>>2]=j;j=H[g+4>>2];H[h>>2]=H[g>>2];H[h+4>>2]=j;g=q<<2;j=H[g+f>>2];m=F<<2;F=H[m+f>>2];y=y<<2;l=H[y+f>>2];S=H[e+g>>2];m=H[e+m>>2];y=H[e+y>>2];q=q<<4;g=q+b|0;R=H[g+4>>2];H[b>>2]=H[g>>2];H[b+4>>2]=R;R=H[g+12>>2];H[b+8>>2]=H[g+8>>2];H[b+12>>2]=R;g=H[h+92>>2];H[b+24>>2]=H[h+88>>2];H[b+28>>2]=g;g=H[h+84>>2];H[b+16>>2]=H[h+80>>2];H[b+20>>2]=g;g=H[h+76>>2];H[b+40>>2]=H[h+72>>2];H[b+44>>2]=g;g=H[h+68>>2];H[b+32>>2]=H[h+64>>2];H[b+36>>2]=g;b=c+q|0;g=H[b+4>>2];H[c>>2]=H[b>>2];H[c+4>>2]=g;g=H[b+12>>2];H[c+8>>2]=H[b+8>>2];H[c+12>>2]=g;b=H[h+60>>2];H[c+24>>2]=H[h+56>>2];H[c+28>>2]=b;b=H[h+52>>2];H[c+16>>2]=H[h+48>>2];H[c+20>>2]=b;b=H[h+36>>2];H[c+32>>2]=H[h+32>>2];H[c+36>>2]=b;b=H[h+44>>2];H[c+40>>2]=H[h+40>>2];H[c+44>>2]=b;b=d+q|0;c=H[b+4>>2];H[d>>2]=H[b>>2];H[d+4>>2]=c;c=H[b+12>>2];H[d+8>>2]=H[b+8>>2];H[d+12>>2]=c;b=H[h+20>>2];H[d+16>>2]=H[h+16>>2];H[d+20>>2]=b;b=H[h+28>>2];H[d+24>>2]=H[h+24>>2];H[d+28>>2]=b;b=H[h+12>>2];H[d+40>>2]=H[h+8>>2];H[d+44>>2]=b;b=H[h+4>>2];H[d+32>>2]=H[h>>2];H[d+36>>2]=b;H[e+8>>2]=y;H[e+4>>2]=m;H[e>>2]=S;H[f+8>>2]=l;H[f+4>>2]=F;H[f>>2]=j;b=H[h+108>>2];H[a+8>>2]=H[h+104>>2];H[a+12>>2]=b;b=H[h+100>>2];H[a>>2]=H[h+96>>2];H[a+4>>2]=b}Oa=h+144|0}function eK(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;d=H[b+24>>2];c=H[a+4>>2];f=H[b+36>>2];H[c+232>>2]=f;H[c+228>>2]=d;H[c+104>>2]=f;H[c+100>>2]=d;H[c+12>>2]=f;H[c+8>>2]=d;d=H[b+40>>2];if(K[c+320>>2]>>0){MJ(c+316|0,d)}H[a+32>>2]=H[b+28>>2];H[a+36>>2]=H[b+32>>2];k=H[b+20>>2];if(k){i=H[b+16>>2];while(1){c=0;f=0;d=H[a+4>>2];e=H[d+328>>2];g=H[i>>2];l=g>>>5|0;a:{if(e>>>0>l>>>0){h=g&31;c=H[d+324>>2];break a}h=g&31;j=(g+128>>>5|0)+((h|0)!=0)|0;if(j){c=H[33808];c=Ra[H[H[c+12>>2]+8>>2]](c+12|0,j<<2,20591,10647,855)|0;e=H[d+328>>2]}if(e){R6(c,H[d+324>>2],e<<2);f=H[d+328>>2]}e=j-f|0;if(e){S6((f<<2)+c|0,0,e<<2)}f=H[d+324>>2];if(f){e=H[33808];Ra[H[H[e+12>>2]+12>>2]](e+12|0,f)}H[d+328>>2]=j;H[d+324>>2]=c}c=(l<<2)+c|0;H[c>>2]=H[c>>2]|1<>2];b:{if(l>>>0>>0){h=g&31;c=H[d+332>>2];break b}f=0;c=0;h=g&31;j=(g+128>>>5|0)+((h|0)!=0)|0;if(j){c=H[33808];c=Ra[H[H[c+12>>2]+8>>2]](c+12|0,j<<2,20591,10647,855)|0;e=H[d+336>>2]}if(e){R6(c,H[d+332>>2],e<<2);f=H[d+336>>2]}e=j-f|0;if(e){S6((f<<2)+c|0,0,e<<2)}f=H[d+332>>2];if(f){e=H[33808];Ra[H[H[e+12>>2]+12>>2]](e+12|0,f)}H[d+336>>2]=j;H[d+332>>2]=c}c=(l<<2)+c|0;H[c>>2]=H[c>>2]|1<>2]+(g<<2)|0;f=H[h>>2];switch(f&3){case 1:break e;case 0:break f;default:break d}}c=d+4|0;break c}c=d+224|0;break c}c=d+96|0}d=f>>>3|0;g:{if(f&4){H[H[c+64>>2]+(d<<2)>>2]=-1;H[c+88>>2]=H[c+88>>2]+1;break g}H[H[c+36>>2]+(d<<2)>>2]=-1}H[h>>2]=-1;i=i+4|0;k=k-1|0;if(k){continue}break}}c=Oa-1584|0;Oa=c;i=H[b+4>>2];h:{if(!i){break h}k=H[b+28>>2];f=H[b>>2];H[c+1064>>2]=0;H[c+1068>>2]=0;H[c+544>>2]=0;H[c+548>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;d=c+544|0;H[c+12>>2]=d;H[c+8>>2]=d;H[c>>2]=c+1064;H[c+4>>2]=c+24;while(1){h=H[a+4>>2];e=H[f>>2];l=H[k+(e<<2)>>2]&3;d=H[(c|l<<2)>>2];g=H[d+4>>2];H[d+4>>2]=e>>>0>g>>>0?e:g;g=d+8|0;j=H[d>>2];H[g+(j<<2)>>2]=e;i=i-1|0;e=j+1|0;i:{if((e|0)==128){H[d>>2]=0;j:{switch(l|0){case 0:XJ(h,g,128,H[d+4>>2]);H[d+4>>2]=0;break i;case 1:ZJ(h,g,128,H[d+4>>2]);H[d+4>>2]=0;break i;default:break j}}YJ(h,g,128,H[d+4>>2]);H[d+4>>2]=0;break i}H[d>>2]=e}f=f+4|0;if(i){continue}break}d=H[c+1064>>2];if(d){XJ(H[a+4>>2],c+1072|0,d,H[c+1068>>2])}d=H[c+24>>2];if(d){ZJ(H[a+4>>2],c+32|0,d,H[c+28>>2])}d=H[c+544>>2];if(!d){break h}YJ(H[a+4>>2],c+552|0,d,H[c+548>>2])}Oa=c+1584|0;i=H[b+8>>2];k:{if(!i){break k}k=H[b+12>>2];if(!k){break k}while(1){c=0;f=0;b=H[a+4>>2];e=H[b+328>>2];d=H[i>>2];l=d>>>5|0;l:{if(e>>>0>l>>>0){h=d&31;c=H[b+324>>2];break l}h=d&31;g=(d+128>>>5|0)+((h|0)!=0)|0;if(g){c=H[33808];c=Ra[H[H[c+12>>2]+8>>2]](c+12|0,g<<2,20591,10647,855)|0;e=H[b+328>>2]}if(e){R6(c,H[b+324>>2],e<<2);f=H[b+328>>2]}e=g-f|0;if(e){S6((f<<2)+c|0,0,e<<2)}f=H[b+324>>2];if(f){e=H[33808];Ra[H[H[e+12>>2]+12>>2]](e+12|0,f)}H[b+328>>2]=g;H[b+324>>2]=c}c=(l<<2)+c|0;H[c>>2]=H[c>>2]|1<>2]+(d<<2)|0;switch(H[c>>2]&3){case 1:break o;case 0:break p;default:break n}}QJ(b+4|0,c,d);break m}QJ(b+224|0,c,d);break m}QJ(b+96|0,c,d)}i=i+4|0;k=k-1|0;if(k){continue}break}}a=H[a+4>>2];if(H[a+44>>2]|H[a+92>>2]?1:H[a+136>>2]|H[a+184>>2]|(H[a+264>>2]|H[a+312>>2])){if(H[a+44>>2]|H[a+92>>2]){SJ(a+4|0,H[a+316>>2],a)}SJ(a+96|0,H[a+316>>2],a);SJ(a+224|0,H[a+316>>2],a);if(I[a+220|0]){b=H[a+200>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}H[a+200>>2]=0;b=H[a+196>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}H[a+196>>2]=0}H[a+192>>2]=-2147483648}}function dw(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=O(0),k=0,l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=0,v=0,w=O(0),x=O(0),y=O(0),z=0,A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),F=O(0),G=O(0),J=O(0),K=0,M=0,P=0,Q=O(0),R=O(0),S=O(0),T=O(0),U=O(0),V=O(0),W=O(0),X=O(0),Y=O(0),Z=O(0),_=O(0),$=0,aa=0,ba=0,ca=0;f=Oa-96|0;Oa=f;h=H[a+444>>2];u=H[a+264>>2];i=I[H[a+476>>2]];H[f+88>>2]=0;H[f+92>>2]=0;H[f+80>>2]=0;H[f+84>>2]=0;H[f+72>>2]=0;H[f+76>>2]=0;H[f+64>>2]=0;H[f+68>>2]=0;if(!(i&1)){C=L[a+560>>2];D=L[a+572>>2];E=L[a+584>>2];Q=L[a+564>>2];R=L[a+576>>2];S=L[a+588>>2];T=L[a+568>>2];U=L[a+580>>2];V=L[a+592>>2];W=L[a+620>>2];X=L[a+608>>2];Y=L[a+596>>2];w=L[a+524>>2];r=L[a+528>>2];m=L[a+532>>2];s=L[a+624>>2];Z=L[a+612>>2];_=L[a+600>>2];A=L[a+536>>2];B=L[a+540>>2];y=L[a+544>>2];F=L[a+548>>2];t=L[u+16>>2];n=O(-t);G=L[a+552>>2];l=L[u+20>>2];J=L[a+556>>2];j=L[u+24>>2];o=O(-L[u+4>>2]);p=L[u>>2];q=L[u+8>>2];x=O(O(O(O(F*n)-O(G*l))-O(J*j))+O(O(O(L[a+616>>2]*o)-O(p*L[a+604>>2]))-O(q*L[a+628>>2])));L[f+88>>2]=x;s=O(O(O(O(A*n)-O(B*l))-O(y*j))+O(O(O(Z*o)-O(p*_))-O(q*s)));L[f+84>>2]=s;n=O(O(O(O(w*n)-O(r*l))-O(m*j))+O(O(O(X*o)-O(p*Y))-O(q*W)));L[f+80>>2]=n;y=O(O(O(y*o)-O(p*m))-O(q*J));m=O(-l);l=O(y+O(O(O(U*m)-O(t*T))-O(j*V)));L[f+72>>2]=l;r=O(O(O(O(B*o)-O(p*r))-O(q*G))+O(O(O(R*m)-O(t*Q))-O(j*S)));L[f+68>>2]=r;j=O(O(O(O(A*o)-O(p*w))-O(q*F))+O(O(O(D*m)-O(t*C))-O(j*E)));L[f+64>>2]=j}i=(c<<5)+h|0;K=H[i+8>>2];h=(b<<5)+h|0;g=H[h+8>>2];k=K&g;g=k^g;M=H[i+12>>2];h=H[h+12>>2];P=M&h;i=P;z=i^h;h=k-1|0;i=i-!k|0;if(h|i){while(1){$=H[a+452>>2];v=(aa=f7(h),ba=f7(i)+32|0,ca=h,ca?aa:ba);cw(f+32|0,($+N(v,160)|0)+120|0,H[a+348>>2]+N(v,112)|0,H[a+360>>2]+N(v,36)|0,H[a+384>>2]+N(v,76)|0,(v<<5)+u|0,f- -64|0);H[f+76>>2]=0;H[f+92>>2]=0;j=L[f+32>>2];L[f+64>>2]=j;r=L[f+36>>2];L[f+68>>2]=r;l=L[f+40>>2];L[f+72>>2]=l;n=L[f+48>>2];L[f+80>>2]=n;s=L[f+52>>2];L[f+84>>2]=s;x=L[f+56>>2];L[f+88>>2]=x;v=h;h=h&h-1;i=i&i-!v;if(h|i){continue}break}}h=k^K;i=M^P;L[f+56>>2]=x;L[f+52>>2]=s;H[f+60>>2]=0;L[f+48>>2]=n;H[f+44>>2]=0;L[f+40>>2]=l;L[f+36>>2]=r;L[f+32>>2]=j;o=x;p=s;q=n;t=l;w=r;m=j;if(g|z){while(1){v=H[a+452>>2];k=(aa=f7(g),ba=f7(z)+32|0,ca=g,ca?aa:ba);cw(f,(v+N(k,160)|0)+120|0,H[a+348>>2]+N(k,112)|0,H[a+360>>2]+N(k,36)|0,H[a+384>>2]+N(k,76)|0,(k<<5)+u|0,f- -64|0);H[f+76>>2]=0;H[f+92>>2]=0;m=L[f>>2];L[f+64>>2]=m;w=L[f+4>>2];L[f+68>>2]=w;t=L[f+8>>2];L[f+72>>2]=t;q=L[f+16>>2];L[f+80>>2]=q;p=L[f+20>>2];L[f+84>>2]=p;o=L[f+24>>2];L[f+88>>2]=o;k=g;g=g&g-1;z=z&z-!k;if(g|z){continue}break}}if(h|i){while(1){k=H[a+452>>2];g=h;g=(aa=f7(g),ba=f7(i)+32|0,ca=g,ca?aa:ba);cw(f,(k+N(g,160)|0)+120|0,H[a+348>>2]+N(g,112)|0,H[a+360>>2]+N(g,36)|0,H[a+384>>2]+N(g,76)|0,(g<<5)+u|0,f+32|0);H[f+44>>2]=0;H[f+60>>2]=0;j=L[f>>2];L[f+32>>2]=j;r=L[f+4>>2];L[f+36>>2]=r;l=L[f+8>>2];L[f+40>>2]=l;n=L[f+16>>2];L[f+48>>2]=n;s=L[f+20>>2];L[f+52>>2]=s;x=L[f+24>>2];L[f+56>>2]=x;g=h;h=g-1&g;i=i&i-!g;if(h|i){continue}break}}b=H[a+228>>2]+(b<<5)|0;A=L[b+20>>2];B=L[b+24>>2];y=L[b+16>>2];C=L[b>>2];D=L[b+4>>2];E=L[b+8>>2];H[d+28>>2]=0;L[d+24>>2]=E+t;L[d+20>>2]=D+w;L[d+16>>2]=C+m;H[d+12>>2]=0;L[d>>2]=y+q;L[d+8>>2]=B+o;L[d+4>>2]=A+p;a=H[a+228>>2]+(c<<5)|0;o=L[a+20>>2];p=L[a+24>>2];q=L[a+16>>2];t=L[a>>2];w=L[a+4>>2];m=L[a+8>>2];H[e+28>>2]=0;L[e+24>>2]=m+l;L[e+20>>2]=w+r;L[e+16>>2]=t+j;H[e+12>>2]=0;L[e>>2]=q+n;L[e+8>>2]=p+x;L[e+4>>2]=o+s;Oa=f+96|0}function j4(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=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0);c=Oa-176|0;Oa=c;H[c+60>>2]=a;H[c+56>>2]=a;a=H[e+12>>2];H[d+8>>2]=H[e+8>>2];H[d+12>>2]=a;a=H[e+4>>2];H[d>>2]=H[e>>2];H[d+4>>2]=a;$1(c+144|0,c+112|0,e,f,g);k=L[f+20>>2];m=L[f+16>>2];o=L[c+132>>2];l=L[c+128>>2];n=L[c+136>>2];L[b+8>>2]=n-L[f+24>>2];L[b+4>>2]=o-k;L[b>>2]=l-m;k=L[f+20>>2];m=L[f+16>>2];L[c+72>>2]=n-L[f+24>>2];L[c+68>>2]=o-k;L[c+64>>2]=l-m;k=L[g+20>>2];m=L[g+24>>2];p=L[g+16>>2];r=L[c+164>>2];L[c+92>>2]=r;L[c+108>>2]=n;L[c+104>>2]=o;s=L[c+168>>2];L[c+96>>2]=s;L[c+84>>2]=n-m;L[c+80>>2]=o-k;t=L[c+160>>2];L[c+88>>2]=t;L[c+100>>2]=l;L[c+76>>2]=l-p;k=L[c+156>>2];u=L[c+124>>2];m=L[c+152>>2];v=L[c+120>>2];p=L[c+144>>2];w=L[c+112>>2];q=L[c+148>>2];x=L[c+116>>2];if(O(O(k*u)+O(O(m*v)+O(O(p*w)+O(q*x))))>2]=-u;L[c+120>>2]=-v;L[c+116>>2]=-x;L[c+112>>2]=-w}a:{if(!(I[e+116|0]&2)){d=1;a=6;break a}d=L[e+104>>2]>=L[e+100>>2];a=d?7:6}n=O(n-s);n=O(n+n);l=O(l-t);l=O(l+l);o=O(o-r);o=O(o+o);r=O(O(m*n)+O(O(p*l)+O(o*q)));s=O(O(k*k)+O(-.5));L[c+48>>2]=O(m*r)+O(O(n*s)-O(k*O(O(p*o)-O(l*q))));L[c+44>>2]=O(q*r)+O(O(o*s)-O(k*O(O(m*l)-O(n*p))));L[c+40>>2]=O(p*r)+O(O(l*s)-O(k*O(O(q*n)-O(o*m))));d2(c+56|0,c+144|0,c+112|0,c+40|0,a,7,c+24|0,c+8|0);o=L[f+16>>2];l=L[f+20>>2];k=L[c+24>>2];n=L[c+28>>2];L[i+8>>2]=L[c+32>>2]+L[f+24>>2];L[i+4>>2]=n+l;L[i>>2]=k+o;o=L[g+16>>2];l=L[g+20>>2];k=L[c+8>>2];n=L[c+12>>2];L[j+8>>2]=L[c+16>>2]+L[g+24>>2];L[j+4>>2]=n+l;L[j>>2]=k+o;b:{if(d){break b}k=L[c+152>>2];n=L[c+144>>2];l=L[c+148>>2];r=O(l*O(0));p=O(O(k*O(0))+O(O(n+n)+r));m=L[c+156>>2];q=O(O(m*m)+O(-.5));s=O(q*O(0));o=O(O(k*p)+O(s+O(m*O(O(n*O(0))-O(l+l)))));l=O(O(l*p)+O(s+O(m*O(O(k+k)+O(n*O(-0))))));k=O(O(n*p)+O(O(q+q)+O(m*O(r+O(k*O(-0))))));r=L[e+100>>2];n=L[c+40>>2];p=L[e+96>>2];q=L[e+88>>2];m=L[e+92>>2];d=m>O(0);if(rO(0)?O(0):p))){a=H[c+60>>2];H[c+60>>2]=a+80;L[a+8>>2]=o;L[a+4>>2]=l;L[a>>2]=k;G[a+78>>1]=0;m=L[c+72>>2];p=L[c+64>>2];q=L[c+68>>2];L[a+40>>2]=o;L[a+36>>2]=l;L[a+32>>2]=k;L[a+24>>2]=O(p*l)-O(k*q);L[a+20>>2]=O(m*k)-O(o*p);L[a+16>>2]=O(q*o)-O(l*m);m=L[c+84>>2];p=L[c+76>>2];q=L[c+80>>2];r=O(r-n);L[a+12>>2]=r;L[a+56>>2]=O(p*l)-O(k*q);L[a+52>>2]=O(m*k)-O(o*p);L[a+48>>2]=O(q*o)-O(l*m);b=J[a+76>>1];m=L[e+88>>2];c:{if(d|m>O(0)){L[a+64>>2]=m;L[a+68>>2]=L[e+92>>2];b=b|17;break c}G[a+78>>1]=2049;L[a+64>>2]=L[e+80>>2];L[a+68>>2]=L[e+84>>2];b=b|(r>O(0)?24:16);if(!(L[e+80>>2]>O(0))){break c}b=b|4}H[a+44>>2]=0;G[a+76>>1]=b;p=L[e+96>>2];q=L[e+88>>2];m=L[e+92>>2]}v=L[e+104>>2];if(!(O(-v)O(0)?O(0):q>O(0)?O(0):p)-n))){break b}a=H[c+60>>2];H[c+60>>2]=a+80;p=O(-o);L[a+8>>2]=p;q=O(-l);L[a+4>>2]=q;r=O(-k);L[a>>2]=r;G[a+78>>1]=0;s=L[c+72>>2];t=L[c+64>>2];u=L[c+68>>2];L[a+40>>2]=p;L[a+36>>2]=q;L[a+32>>2]=r;L[a+24>>2]=O(t*q)+O(k*u);L[a+20>>2]=O(s*r)+O(o*t);L[a+16>>2]=O(u*p)+O(l*s);s=L[c+84>>2];t=L[c+76>>2];u=L[c+80>>2];n=O(n-v);L[a+12>>2]=n;L[a+56>>2]=O(t*q)+O(k*u);L[a+52>>2]=O(s*r)+O(o*t);L[a+48>>2]=O(u*p)+O(l*s);b=J[a+76>>1];o=L[e+88>>2];d:{if(m>O(0)|o>O(0)){L[a+64>>2]=o;L[a+68>>2]=L[e+92>>2];b=b|17;break d}G[a+78>>1]=2049;L[a+64>>2]=L[e+80>>2];L[a+68>>2]=L[e+84>>2];b=b|(n>O(0)?24:16);if(!(L[e+80>>2]>O(0))){break d}b=b|4}H[a+44>>2]=0;G[a+76>>1]=b}Oa=c+176|0;return(H[c+60>>2]-H[c+56>>2]|0)/80|0}function Dt(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0,k=0,l=0;g=a+4932|0;f=Oa-288|0;Oa=f;a:{if(!c){H[b>>2]=a;c=H[b+4>>2];b:{if(!I[a+4785|0]){H[b+4>>2]=c&268435455|-2147483648;Et(a+16|0,b,d,e);break b}d=c&1073741823;if(c>>>0>=3221225472){H[b+4>>2]=d|-2147483648;if(c&268435456){break b}H[f+16>>2]=b;Pf(g,f+16|0);break b}H[b+4>>2]=d|1073741824;H[f+16>>2]=b;c=rg(g,f+16|0,f+12|0);if(I[f+12|0]){break b}H[c>>2]=H[f+16>>2]}c:{d:{if(L[b+260>>2]!=O(0)|L[b+236>>2]!=O(0)|(L[b+240>>2]!=O(0)|L[b+244>>2]!=O(0))){break d}if(L[b+248>>2]!=O(0)|L[b+252>>2]!=O(0)){break d}c=1;if(L[b+256>>2]==O(0)){break c}}c=0}H[b+264>>2]=c;if(!I[a+4785|0]){break a}F[f+272|0]=1;H[f+280>>2]=0;H[f+284>>2]=64;H[f+276>>2]=f+16;a=0;c=Jn(b,f+12|0,0);e:{if(!c){break e}d=H[b+4>>2]&-1073741824;b=H[b>>2];if((c|0)!=1){i=c&-2;e=0;while(1){h=a<<2;g=H[h+H[f+12>>2]>>2];j=H[(g+32|0)+4>>2];if((j&251658240)==16777216){H[g+32>>2]=b;H[g+36>>2]=d|j&1073741823}g=H[H[f+12>>2]+(h|4)>>2];h=H[(g+32|0)+4>>2];if((h&251658240)==16777216){H[g+32>>2]=b;H[g+36>>2]=d|h&1073741823}a=a+2|0;e=e+2|0;if((i|0)!=(e|0)){continue}break}}if(!(c&1)){break e}a=H[H[f+12>>2]+(a<<2)>>2];c=H[(a+32|0)+4>>2];if((c&251658240)!=16777216){break e}H[a+32>>2]=b;H[a+36>>2]=d|c&1073741823}a=H[f+284>>2];if((a|0)<0|!(a&2147483647)){break a}a=H[f+276>>2];if((a|0)==(f+16|0)|!a){break a}b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,a);break a}c=Oa-288|0;Oa=c;H[b>>2]=a;d=H[b+4>>2];f:{if(!I[a+4785|0]){H[b+4>>2]=d&268435455|-2147483648;F[c+272|0]=1;H[c+280>>2]=0;H[c+284>>2]=64;H[c+276>>2]=c+16;a=0;e=Jn(b,c+12|0,0);g:{if(!e){break g}g=H[b>>2];if((e|0)!=1){h=e&-2;d=0;while(1){j=a<<2;i=H[j+H[c+12>>2]>>2];k=H[i+36>>2];if((k&251658240)==16777216){H[i+32>>2]=g;H[i+36>>2]=k&1073741823|-2147483648}i=H[H[c+12>>2]+(j|4)>>2];j=H[i+36>>2];if((j&251658240)==16777216){H[i+32>>2]=g;H[i+36>>2]=j&1073741823|-2147483648}a=a+2|0;d=d+2|0;if((h|0)!=(d|0)){continue}break}}if(!(e&1)){break g}a=H[H[c+12>>2]+(a<<2)>>2];d=H[a+36>>2];if((d&251658240)!=16777216){break g}H[a+32>>2]=g;H[a+36>>2]=d&1073741823|-2147483648}a=H[c+284>>2];if((a|0)<0|!(a&2147483647)){break f}a=H[c+276>>2];if((a|0)==(c+16|0)|!a){break f}d=H[33808];Ra[H[H[d+12>>2]+12>>2]](d+12|0,a);break f}a=d&1073741823;h:{if(d>>>0>=3221225472){H[b+4>>2]=a|-2147483648;if(d&268435456){break h}H[c+16>>2]=b;Pf(g,c+16|0);break h}H[b+4>>2]=a|1073741824;H[c+16>>2]=b;a=rg(g,c+16|0,c+12|0);if(I[c+12|0]){break h}H[a>>2]=H[c+16>>2]}F[c+272|0]=1;H[c+280>>2]=0;H[c+284>>2]=64;H[c+276>>2]=c+16;a=0;e=Jn(b,c+12|0,0);i:{if(!e){break i}g=H[b+4>>2]&-1073741824;i=H[b>>2];if((e|0)!=1){j=e&-2;d=0;while(1){k=a<<2;h=H[k+H[c+12>>2]>>2];l=H[h+36>>2];if((l&251658240)==16777216){H[h+32>>2]=i;H[h+36>>2]=g|l&1073741823}h=H[H[c+12>>2]+(k|4)>>2];k=H[h+36>>2];if((k&251658240)==16777216){H[h+32>>2]=i;H[h+36>>2]=g|k&1073741823}a=a+2|0;d=d+2|0;if((j|0)!=(d|0)){continue}break}}if(!(e&1)){break i}a=H[H[c+12>>2]+(a<<2)>>2];d=H[a+36>>2];if((d&251658240)!=16777216){break i}H[a+32>>2]=i;H[a+36>>2]=g|d&1073741823}a=H[c+284>>2];if((a|0)<0|!(a&2147483647)){break f}a=H[c+276>>2];if((a|0)==(c+16|0)|!a){break f}d=H[33808];Ra[H[H[d+12>>2]+12>>2]](d+12|0,a)}Oa=c+288|0;j:{k:{if(L[b+260>>2]!=O(0)|L[b+236>>2]!=O(0)|(L[b+240>>2]!=O(0)|L[b+244>>2]!=O(0))){break k}if(L[b+248>>2]!=O(0)|L[b+252>>2]!=O(0)){break k}a=1;if(L[b+256>>2]==O(0)){break j}}a=0}H[b+264>>2]=a}Oa=f+288|0}function gz(a,b,c,d,e,f,g){var h=0,i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=0,q=0,r=0,s=0,t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=0,A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),F=O(0),K=0,M=O(0),P=O(0),Q=0,R=0,S=0,T=0,U=0,V=O(0),W=O(0),X=O(0),Y=O(0),Z=O(0),_=O(0),$=O(0),aa=O(0),ba=O(0),ca=O(0);p=Oa-32|0;R=H[a+7688>>2];if(R>>>0>f>>>0){C=L[c+12>>2];P=O(O(C*C)+O(-.5));V=O(e*e);D=L[c+4>>2];W=O(-D);E=L[c>>2];X=O(-E);F=L[c+8>>2];Y=O(-F);while(1){a:{b:{c:{s=N(f,104)+a|0;K=s+2818|0;h=J[K>>1];d:{if(!((h|0)!=2&H[((f<<2)+a|0)+7424>>2]!=65535)){if(!H[((f<<2)+a|0)+7296>>2]){break a}h=N(f,24)+a|0;e=O(L[h+6548>>2]-L[h+6536>>2]);i=O(e*e);e=O(L[h+6540>>2]-L[h+6528>>2]);j=O(e*e);e=O(L[h+6544>>2]-L[h+6532>>2]);i=O(i+O(j+O(e*e)));e=O(L[s+2864>>2]-L[s+2876>>2]);j=O(e*e);e=O(L[s+2856>>2]-L[s+2868>>2]);k=O(e*e);e=O(L[s+2860>>2]-L[s+2872>>2]);if(i<=O(O(j+O(k+O(e*e)))*O(4))){break a}h=0;G[K>>1]=0;break d}if((h|0)==1){break c}}e=L[p+8>>2];w=L[p+4>>2];z=0;break b}x=L[c+16>>2];y=L[c+20>>2];e=L[s+2864>>2];j=O(e+e);e=L[s+2856>>2];i=O(e+e);e=L[s+2860>>2];m=O(e+e);t=O(O(F*j)+O(O(E*i)+O(m*D)));e=O(L[c+24>>2]+O(O(F*t)+O(O(j*P)+O(C*O(O(E*m)+O(i*W))))));L[p+8>>2]=e;w=O(y+O(O(D*t)+O(O(m*P)+O(C*O(O(F*i)+O(j*X))))));L[p+4>>2]=w;u=O(x+O(O(E*t)+O(O(i*P)+O(C*O(O(D*j)+O(m*Y))))));L[p>>2]=u;h=1;z=1}q=(f<<2)+a|0;r=H[q+7424>>2];if((r|0)!=65535){S=q+7556|0;T=q+7558|0;m=O(0);A=L[p+8>>2];n=L[p+4>>2];k=L[p>>2];t=L[p+12>>2];x=L[p+16>>2];y=L[p+20>>2];while(1){Q=N(r,44)+a|0;U=I[Q+5|0];if(U){r=0;while(1){q=J[Q>>1]+r|0;h=(q<<6)+b|0;e:{if(!(L[h+12>>2]>1]=q;z=1;A=L[h+24>>2];e=A;n=L[h+20>>2];w=n;k=L[h+16>>2];u=k;break e;case 1:z=1;j=L[h+24>>2];i=O(j-e);l=O(i*i);i=L[h+16>>2];m=O(i-u);o=O(m*m);v=L[h+20>>2];m=O(v-w);m=O(l+O(o+O(m*m)));if(!(V>1]=q;z=2;y=j;x=v;t=i;break e;default:break f}}j=L[h+24>>2];i=O(j-e);o=O(i*i);v=L[h+16>>2];i=O(v-u);B=O(i*i);i=L[h+20>>2];l=O(i-w);l=O(o+O(B+O(l*l)));o=O(j-y);B=O(o*o);o=O(v-t);M=O(o*o);o=O(i-x);o=O(B+O(M+O(o*o)));if(l>o){if(!(m>1]=q;y=j;x=i;t=v;m=l;break e}if(!(m>1]=q;A=j;e=j;n=i;w=i;k=v;u=k;m=o}r=r+1|0;if((U|0)!=(r|0)){continue}break}}r=J[Q+2>>1];if((r|0)!=65535){continue}break}L[p+20>>2]=y;L[p+16>>2]=x;L[p+12>>2]=t;L[p+8>>2]=A;L[p+4>>2]=n;L[p>>2]=k;h=J[K>>1]}h=h&65535;if(z>>>0>h>>>0){e=L[d+12>>2];i=O(O(e*e)+O(-.5));j=L[c+12>>2];m=O(O(j*j)+O(-.5));t=L[d+4>>2];Z=O(-t);x=L[d>>2];_=O(-x);y=L[d+8>>2];$=O(-y);v=L[c+4>>2];aa=O(-v);w=L[c>>2];ba=O(-w);A=L[c+8>>2];ca=O(-A);while(1){q=N(h,12);r=q+s|0;q=p+q|0;u=L[q+8>>2];n=O(u-L[c+24>>2]);n=O(n+n);B=L[q>>2];k=O(B-L[c+16>>2]);k=O(k+k);M=L[q+4>>2];l=O(M-L[c+20>>2]);l=O(l+l);o=O(O(A*n)+O(O(w*k)+O(l*v)));L[r+2864>>2]=O(A*o)+O(O(n*m)-O(j*O(O(w*l)+O(k*aa))));L[r+2860>>2]=O(v*o)+O(O(l*m)-O(j*O(O(A*k)+O(n*ba))));L[r+2856>>2]=O(w*o)+O(O(k*m)-O(j*O(O(v*n)+O(l*ca))));n=O(u-L[d+24>>2]);n=O(n+n);k=O(B-L[d+16>>2]);k=O(k+k);l=O(M-L[d+20>>2]);u=O(l+l);l=O(O(y*n)+O(O(x*k)+O(u*t)));L[r+2888>>2]=O(y*l)+O(O(n*i)-O(e*O(O(x*u)+O(k*Z))));L[r+2884>>2]=O(t*l)+O(O(u*i)-O(e*O(O(y*k)+O(n*_))));L[r+2880>>2]=O(x*l)+O(O(k*i)-O(e*O(O(t*n)+O(u*$))));h=h+1|0;if((z|0)!=(h|0)){continue}break}}if(!z){H[s+2888>>2]=0;h=s+2880|0;H[h>>2]=0;H[h+4>>2]=0;H[s+2864>>2]=0;h=s+2856|0;H[h>>2]=0;H[h+4>>2]=0}G[K>>1]=z}f=f+1|0;if((R|0)!=(f|0)){continue}break}}}function VE(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;g=Oa-16|0;Oa=g;H[g+8>>2]=b;c=H[a+16>>2];m=b>>>7|0;h=c+N(m,24)|0;f=I[h+4|0];a:{if(f&4){break a}b=H[a+204>>2]+(m<<2)|0;i=H[b>>2];p=H[a+88>>2];H[b>>2]=-1;b=c+N(H[g+8>>2]>>>7|0,24)|0;e=H[b+8>>2];d=N(i,44)+p|0;H[(e>>>0<4294967168?(c+N(e>>>7|0,24)|0)+12|0:d+4|0)>>2]=H[b+12>>2];e=H[b+12>>2];H[(e>>>0<4294967168?(c+N(e>>>7|0,24)|0)+8|0:d)>>2]=H[b+8>>2];d=d+(I[b+5|0]<<2)|0;H[d+8>>2]=H[d+8>>2]-1;H[b+8>>2]=-128;H[b+12>>2]=-128;b:{c:{if(f&2){q=H[g+8>>2];b=q>>>7|0;l=I[(c+N(b,24)|0)+5|0];d=N(l,12)+a|0;k=H[a+28>>2];b=k+(b<<2)|0;e=H[b>>2];j=(l<<2)+a|0;n=H[j+252>>2];d:{if(e>>>0>=n>>>0){d=H[d+112>>2];break d}d=H[d+112>>2];n=H[(d+(n<<2)|0)-4>>2];o=k+(n>>>5&134217724)|0;H[b>>2]=H[o>>2];H[o>>2]=e;H[(e<<2)+d>>2]=n;H[(H[b>>2]<<2)+d>>2]=q;H[j+252>>2]=H[j+252>>2]-1;e=H[b>>2]}l=N(l,12)+a|0;j=H[((H[l+116>>2]<<2)+d|0)-4>>2];H[k+(j>>>5&134217724)>>2]=e;H[(H[b>>2]<<2)+d>>2]=j;H[l+116>>2]=H[l+116>>2]-1;break c}if(!(f&32)){break b}b=H[a+28>>2];d=H[a+324>>2];e=H[(d+(H[a+328>>2]<<2)|0)-4>>2];H[b+(e>>>5&134217724)>>2]=H[b+(H[g+8>>2]>>>5&134217724)>>2];H[d+(H[b+(H[g+8>>2]>>>5&134217724)>>2]<<2)>>2]=e;H[a+328>>2]=H[a+328>>2]-1;f=f&223;b=b+(H[g+8>>2]>>>5&134217724)|0}H[b>>2]=33554431}b=f&249|4;F[h+4|0]=b;c=c+N(m,24)|0;if(H[c+16>>2]){H[H[a+28>>2]+(H[g+8>>2]>>>5&134217724)>>2]=H[a+328>>2];f=H[a+328>>2];e:{if(f>>>0>=(H[a+332>>2]&2147483647)>>>0){_E(a+324|0,g+8|0);b=I[h+4|0];break e}H[H[a+324>>2]+(f<<2)>>2]=H[g+8>>2];H[a+328>>2]=H[a+328>>2]+1}F[h+4|0]=b|32}d=N(i,44)+p|0;m=H[d+8>>2];l=H[d+12>>2];c=H[c>>2];if((c|0)!=-1){while(1){b=H[a+84>>2];f=(c>>>0)/(b>>>0)|0;f=H[H[H[a+64>>2]+(f<<2)>>2]+(c-N(b,f)<<3)>>2];c=c>>>1|0;H[g+4>>2]=c;e=H[a+40>>2];b=H[a+60>>2];h=(c>>>0)/(b>>>0)|0;c=H[e+(h<<2)>>2]+(c-N(b,h)<<4)|0;k=H[c+12>>2];h=H[c+8>>2];f:{if((h|0)!=-1){j=(h>>>0)/(b>>>0)|0;b=(H[e+(j<<2)>>2]+(h-N(b,j)<<4)|0)+12|0;break f}b=(d+(H[c>>2]<<2)|0)+28|0}H[b>>2]=k;h=H[c+8>>2];b=H[c+12>>2];g:{if((b|0)!=-1){k=H[a+60>>2];j=(b>>>0)/(k>>>0)|0;H[(H[e+(j<<2)>>2]+(b-N(k,j)<<4)|0)+8>>2]=h;b=H[c>>2];break g}b=H[c>>2];H[(d+(b<<2)|0)+20>>2]=h}b=d+(b<<2)|0;H[b+36>>2]=H[b+36>>2]-1;H[c+12>>2]=-1;H[c+8>>2]=-1;HE(a,H[g+4>>2]);FE(a,H[g+4>>2]);e=J[c+4>>1];b=e&65534;G[c+4>>1]=b;if(e&4){NE(a,H[g+4>>2]);b=J[c+4>>1]&-5;G[c+4>>1]=b;e=(H[c>>2]<<2)+a|0;H[e+172>>2]=H[e+172>>2]-1}h:{i:{if(!(b&2)){if(b&8){break h}e=N(H[c>>2],12)+a|0;h=e+284|0;k=H[e+288>>2];if(k>>>0>=(H[e+292>>2]&2147483647)>>>0){qm(h,g+4|0);b=J[c+4>>1]|8;break i}H[H[h>>2]+(k<<2)>>2]=H[g+4>>2];H[e+288>>2]=H[e+288>>2]+1;b=b|8;break i}b=b|32}G[c+4>>1]=b}c=f;if((c|0)!=-1){continue}break}}if((m|0)!=(0-l|0)){break a}c=H[a+100>>2];f=N(i,44);b=f+p|0;H[b+20>>2]=-1;H[b+24>>2]=-1;H[b+28>>2]=-1;H[b+32>>2]=-1;H[b+36>>2]=0;H[b+40>>2]=0;H[c+(i<<2)>>2]=0;j:{if(H[b+16>>2]==-1){c=j7(-2,i);b=H[a+216>>2];f=i>>>5|0;d=H[b+(f<<2)>>2];break j}c=H[a+88>>2];b=c+f|0;f=H[a+240>>2];d=H[(f+(H[a+244>>2]<<2)|0)-4>>2];H[(c+N(d,44)|0)+16>>2]=H[b+16>>2];H[f+(H[b+16>>2]<<2)>>2]=d;H[a+244>>2]=H[a+244>>2]-1;H[b+16>>2]=-1;b=H[a+216>>2];f=i>>>5|0;d=b+(f<<2)|0;o=d;c=j7(-2,i);d=c&H[d>>2];H[o>>2]=d}H[(f<<2)+b>>2]=c&d;H[g+12>>2]=i;if(H[a+12>>2]==(i|0)){H[a+12>>2]=i-1;break a}b=H[a+4>>2];if(b>>>0>=(H[a+8>>2]&2147483647)>>>0){qm(a,g+12|0);break a}H[H[a>>2]+(b<<2)>>2]=i;H[a+4>>2]=H[a+4>>2]+1}Oa=g+16|0}function Nu(a,b,c,d,e){var f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),F=O(0),G=O(0),I=O(0),J=O(0),K=O(0),M=O(0),N=O(0),P=O(0),Q=O(0),R=O(0),S=O(0),T=O(0),U=O(0),V=O(0),W=O(0),X=O(0),Y=O(0),Z=O(0),_=O(0),$=O(0),aa=O(0),ba=O(0),ca=O(0),da=O(0),ea=O(0),fa=O(0),ga=O(0),ha=O(0),ia=O(0),ja=O(0),ka=O(0),la=O(0),ma=O(0),na=O(0),oa=O(0),pa=O(0),qa=O(0),ra=O(0),sa=O(0);U=L[b+20>>2];V=L[b+24>>2];W=L[b+36>>2];X=L[b+40>>2];Y=L[b+52>>2];Z=L[b+56>>2];_=L[b+68>>2];$=L[b+72>>2];aa=L[b+84>>2];ba=L[b+88>>2];ca=L[b+100>>2];da=L[b+104>>2];ea=L[b+112>>2];fa=L[b+116>>2];ga=L[b+120>>2];ha=L[b+128>>2];ia=L[b+132>>2];ja=L[b+136>>2];ka=L[b- -64>>2];la=L[b+80>>2];f=L[c+20>>2];g=L[c+24>>2];B=L[d+36>>2];C=L[d+68>>2];D=L[d+40>>2];E=L[d+72>>2];m=L[d+48>>2];n=L[d+80>>2];o=L[d+20>>2];p=L[d+52>>2];q=L[d+84>>2];r=L[d+24>>2];i=L[c+36>>2];s=L[d+56>>2];j=L[c+40>>2];t=L[d+88>>2];ma=L[b+4>>2];na=L[b+8>>2];oa=L[b+96>>2];pa=L[b>>2];qa=L[b+16>>2];ra=L[b+32>>2];sa=L[b+48>>2];k=L[c+16>>2];F=L[d+4>>2];G=L[d+8>>2];u=L[d+16>>2];l=L[c+32>>2];I=L[c>>2];J=L[d>>2];K=L[c+4>>2];M=L[d+32>>2];h=L[c+8>>2];N=L[d+64>>2];H[e+92>>2]=0;H[e+76>>2]=0;H[e+60>>2]=0;H[e+44>>2]=0;H[e+28>>2]=0;H[e+12>>2]=0;v=O(O(J*I)+O(O(M*K)+O(N*h)));L[e>>2]=v;P=O(O(r*l)+O(O(s*i)+O(t*j)));L[e+88>>2]=P;Q=O(O(o*l)+O(O(p*i)+O(q*j)));L[e+84>>2]=Q;R=O(O(u*l)+O(O(m*i)+O(n*j)));L[e+80>>2]=R;w=O(O(G*l)+O(O(D*i)+O(E*j)));L[e+72>>2]=w;x=O(O(F*l)+O(O(B*i)+O(C*j)));L[e+68>>2]=x;y=O(O(J*l)+O(O(M*i)+O(N*j)));L[e+64>>2]=y;S=O(O(r*k)+O(O(s*f)+O(t*g)));L[e+56>>2]=S;T=O(O(o*k)+O(O(p*f)+O(q*g)));L[e+52>>2]=T;i=O(O(u*k)+O(O(m*f)+O(n*g)));L[e+48>>2]=i;z=O(O(G*k)+O(O(D*f)+O(E*g)));L[e+40>>2]=z;A=O(O(F*k)+O(O(B*f)+O(C*g)));L[e+36>>2]=A;f=O(O(J*k)+O(O(M*f)+O(N*g)));L[e+32>>2]=f;j=O(O(r*I)+O(O(s*K)+O(t*h)));L[e+24>>2]=j;k=O(O(o*I)+O(O(p*K)+O(q*h)));L[e+20>>2]=k;l=O(O(u*I)+O(O(m*K)+O(n*h)));L[e+16>>2]=l;g=O(O(G*I)+O(O(D*K)+O(E*h)));L[e+8>>2]=g;h=O(O(F*I)+O(O(B*K)+O(C*h)));L[e+4>>2]=h;H[a+140>>2]=0;H[a+124>>2]=0;H[a+108>>2]=0;H[a+92>>2]=0;H[a+76>>2]=0;H[a+60>>2]=0;H[a+44>>2]=0;H[a+28>>2]=0;H[a+12>>2]=0;L[a+80>>2]=O(O(la-O(r*v))-O(s*f))-O(t*y);L[a- -64>>2]=O(O(ka-O(o*v))-O(p*f))-O(q*y);L[a+48>>2]=O(O(sa-O(u*v))-O(m*f))-O(n*y);L[a+32>>2]=O(O(ra-O(G*v))-O(D*f))-O(E*y);L[a+16>>2]=O(O(qa-O(F*v))-O(B*f))-O(C*y);L[a>>2]=O(O(pa-O(J*v))-O(M*f))-O(N*y);L[a+136>>2]=O(O(ja-O(r*j))-O(s*S))-O(t*P);L[a+132>>2]=O(O(ia-O(r*k))-O(s*T))-O(t*Q);L[a+128>>2]=O(O(ha-O(r*l))-O(s*i))-O(t*R);L[a+120>>2]=O(O(ga-O(o*j))-O(p*S))-O(q*P);L[a+116>>2]=O(O(fa-O(o*k))-O(p*T))-O(q*Q);L[a+112>>2]=O(O(ea-O(o*l))-O(p*i))-O(q*R);L[a+104>>2]=O(O(da-O(u*j))-O(m*S))-O(n*P);L[a+100>>2]=O(O(ca-O(u*k))-O(m*T))-O(n*Q);L[a+96>>2]=O(O(oa-O(u*l))-O(m*i))-O(n*R);L[a+88>>2]=O(O(ba-O(r*g))-O(s*z))-O(t*w);L[a+84>>2]=O(O(aa-O(r*h))-O(s*A))-O(t*x);L[a+72>>2]=O(O($-O(o*g))-O(p*z))-O(q*w);L[a+68>>2]=O(O(_-O(o*h))-O(p*A))-O(q*x);L[a+56>>2]=O(O(Z-O(u*g))-O(m*z))-O(n*w);L[a+52>>2]=O(O(Y-O(u*h))-O(m*A))-O(n*x);L[a+40>>2]=O(O(X-O(G*g))-O(D*z))-O(E*w);L[a+36>>2]=O(O(W-O(G*h))-O(D*A))-O(E*x);L[a+24>>2]=O(O(V-O(F*g))-O(B*z))-O(C*w);L[a+20>>2]=O(O(U-O(F*h))-O(B*A))-O(C*x);L[a+8>>2]=O(O(na-O(J*g))-O(M*z))-O(N*w);L[a+4>>2]=O(O(ma-O(J*h))-O(M*A))-O(N*x)}function EW(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=O(f);g=g|0;h=h|0;i=O(i);var j=0,k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=0,y=0,z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),K=0,M=0,P=O(0),Q=0;j=Oa-448|0;Oa=j;x=H[c+32>>2];H[j+440>>2]=0;H[j+444>>2]=0;H[j+432>>2]=0;H[j+436>>2]=0;H[j+416>>2]=0;z=L[c+8>>2];A=L[c+12>>2];B=L[c+4>>2];H[j+412>>2]=0;L[j+408>>2]=A;L[j+404>>2]=z;L[j+400>>2]=B;y=H[c+16>>2];K=H[c+20>>2];M=H[c+28>>2];H[j+392>>2]=H[c+24>>2];H[j+396>>2]=M;H[j+384>>2]=y;H[j+388>>2]=K;p=L[b+20>>2];C=L[d+20>>2];u=L[b+24>>2];D=L[d+24>>2];s=L[e+4>>2];n=L[e+8>>2];v=L[a+4>>2];P=L[b+16>>2];E=L[d+16>>2];q=L[d+8>>2];o=L[d>>2];r=L[d+4>>2];k=L[e>>2];t=L[d+12>>2];H[j+380>>2]=0;n=O(n*f);k=O(k*f);l=O(s*f);m=O(O(q*n)+O(O(o*k)+O(r*l)));s=O(O(t*t)+O(-.5));w=O(O(O(s*n)-O(t*O(O(o*l)-O(r*k))))+O(q*m));L[j+376>>2]=w+w;w=O(O(r*m)+O(O(s*l)-O(t*O(O(q*k)-O(n*o)))));L[j+372>>2]=w+w;n=O(O(o*m)+O(O(s*k)-O(t*O(O(r*n)-O(l*q)))));L[j+368>>2]=n+n;w=O(-o);l=O(P-E);m=O(p-C);p=O(u-D);u=O(O(O(w*l)-O(m*r))-O(q*p));n=O(O(O(t*O(O(r*l)-O(o*m)))+O(s*p))-O(q*u));n=O(n+n);k=O(O(O(s*m)+O(t*O(O(o*p)-O(q*l))))-O(r*u));k=O(k+k);l=O(O(O(s*l)+O(t*O(O(q*m)-O(r*p))))-O(o*u));l=O(l+l);y=x+16|0;b=0;a:{if(L[c+4>>2]!=O(1)){break a}b=0;if(L[c+8>>2]!=O(1)){break a}b=L[c+12>>2]==O(1)}F[j+240|0]=0;H[j+232>>2]=0;H[j+236>>2]=0;H[j+224>>2]=0;H[j+228>>2]=0;H[j+216>>2]=0;H[j+220>>2]=0;H[j+208>>2]=0;H[j+212>>2]=0;H[j+352>>2]=y;H[j+360>>2]=H[x+56>>2]+N(I[x+55|0],20);F[j+364|0]=I[x+54|0];m=O(B*L[x+68>>2]);p=O(z*L[x+72>>2]);m=m<=p?m:p;p=O(A*L[x+76>>2]);m=m<=p?m:p;L[j+232>>2]=m*O(.02500000037252903);L[j+224>>2]=m*O(.10000000149011612);L[j+228>>2]=m*O(.05000000074505806);c=j+208|0;CU(j+400|0,j+384|0,j+256|0,j+304|0,c,b);H[j+356>>2]=H[x+60>>2];H[j+188>>2]=0;L[j+184>>2]=n;L[j+180>>2]=k;H[j+172>>2]=0;L[j+168>>2]=n;L[j+164>>2]=k;L[j+192>>2]=v;H[j+124>>2]=0;L[j+120>>2]=n;L[j+116>>2]=k;L[j+112>>2]=l;H[j+140>>2]=4;L[j+176>>2]=l;L[j+160>>2]=l;F[j+144|0]=1;L[j+136>>2]=v;L[j+132>>2]=v;L[j+128>>2]=v;b=J[h>>1];H[j+56>>2]=125948;H[j+60>>2]=j+112;H[j+48>>2]=126016;H[j+52>>2]=c;H[j+44>>2]=0;L[j+40>>2]=n-L[j+216>>2];L[j+36>>2]=k-L[j+212>>2];L[j+32>>2]=l-L[j+208>>2];i=O(L[a+4>>2]+i);a=b&512;b:{if(!uW(j+56|0,j+48|0,j+32|0,j+432|0,j+368|0,j+96|0,j- -64|0,j+80|0,i,a>>>9|0)){break b}b=H[d>>2];c=H[d+4>>2];h=H[d+12>>2];H[j+8>>2]=H[d+8>>2];H[j+12>>2]=h;H[j>>2]=b;H[j+4>>2]=c;i=L[d+24>>2];b=H[d+16>>2];c=H[d+20>>2];H[j+28>>2]=0;L[j+24>>2]=i;H[j+16>>2]=b;H[j+20>>2]=c;Q=1;if(vW(g,L[e>>2],L[e+4>>2],L[e+8>>2],j+96|0,j- -64|0,j+80|0,j,(a|0)!=0,0)){break b}G[g+12>>1]=J[g+12>>1]|1;i=L[j+68>>2];v=L[j+64>>2];n=L[j+72>>2];k=L[j+88>>2];l=L[j+80>>2];m=L[j+84>>2];p=L[j+96>>2];H[g+8>>2]=-1;L[g+40>>2]=p*f;p=O(-r);f=O(O(q*k)+O(O(o*l)+O(r*m)));u=O(O(O(t*O(O(o*m)+O(l*p)))+O(s*k))+O(q*f));L[g+24>>2]=D+O(u+u);u=O(O(r*f)+O(O(s*m)+O(t*O(O(q*l)+O(k*w)))));L[g+20>>2]=C+O(u+u);u=O(s*l);l=O(-q);f=O(O(o*f)+O(u+O(t*O(O(r*k)+O(m*l)))));L[g+16>>2]=E+O(f+f);f=O(O(q*n)+O(O(o*v)+O(r*i)));k=O(O(O(t*O(O(o*i)+O(v*p)))+O(s*n))+O(q*f));k=O(k+k);o=O(O(o*f)+O(O(s*v)+O(t*O(O(r*n)+O(i*l)))));o=O(o+o);f=O(O(r*f)+O(O(s*i)+O(t*O(O(q*v)+O(n*w)))));f=O(f+f);i=O(O(1)/O(W(O(O(k*k)+O(O(o*o)+O(f*f))))));L[g+36>>2]=i*O(-k);L[g+32>>2]=i*O(-f);L[g+28>>2]=i*O(-o)}Oa=j+448|0;return Q|0}function d2(a,b,c,d,e,f,g,h){var i=O(0),j=O(0),k=0,l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=0,A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),F=O(0),I=O(0),K=O(0),M=0,N=0,P=O(0),Q=O(0),R=O(0),S=O(0),T=O(0);B=L[a+28>>2];C=L[a+24>>2];v=L[a+16>>2];w=L[a+12>>2];D=L[a+20>>2];x=L[a+8>>2];k=H[a+4>>2];z=k;a:{if(!e){break a}l=L[b>>2];n=O(l+l);o=L[b+12>>2];q=O(n*o);j=L[b+4>>2];p=O(j+j);i=L[b+8>>2];s=O(p*i);u=O(n*i);E=O(p*o);m=O(u-E);A=O(n*j);t=O(i+i);F=O(t*o);o=O(A+F);I=O(j*p);K=O(i*t);i=O(O(O(1)-I)-K);t=O(0);z=e&1;if(z){j=L[d>>2];r=O(O(0)-O(m*j));y=O(O(0)-O(o*j));t=O(O(0)-O(i*j))}j=O(s+q);p=O(A-F);A=O(O(1)-O(l*n));n=O(A-K);M=e&2;if(M){l=L[d+4>>2];r=O(r-O(j*l));y=O(y-O(n*l));t=O(t-O(p*l))}l=O(s-q);q=O(u+E);s=O(A-I);N=e&4;if(N){u=L[d+8>>2];r=O(r-O(s*u));y=O(y-O(l*u));t=O(t-O(q*u))}v=O(v+r);w=O(w+y);x=O(x+t);e=k;if(z){t=L[d>>2];L[k+40>>2]=m;L[k+36>>2]=o;L[k+32>>2]=i;L[k+8>>2]=m;L[k+4>>2]=o;L[k>>2]=i;G[k+78>>1]=2048;L[k+56>>2]=O(D*o)-O(i*C);L[k+52>>2]=O(B*i)-O(m*D);L[k+48>>2]=O(C*m)-O(o*B);L[k+24>>2]=O(x*o)-O(i*w);L[k+20>>2]=O(v*i)-O(m*x);L[k+16>>2]=O(w*m)-O(o*v);L[k+12>>2]=-t;e=k+80|0}if(M){m=L[d+4>>2];L[e+40>>2]=j;L[e+36>>2]=n;L[e+32>>2]=p;L[e+8>>2]=j;L[e+4>>2]=n;L[e>>2]=p;G[e+78>>1]=2048;L[e+56>>2]=O(D*n)-O(p*C);L[e+52>>2]=O(B*p)-O(j*D);L[e+48>>2]=O(C*j)-O(n*B);L[e+24>>2]=O(x*n)-O(p*w);L[e+20>>2]=O(v*p)-O(j*x);L[e+16>>2]=O(w*j)-O(n*v);L[e+12>>2]=-m;e=e+80|0}z=e;if(!N){break a}m=L[d+8>>2];L[e+40>>2]=s;L[e+36>>2]=l;L[e+32>>2]=q;L[e+8>>2]=s;L[e+4>>2]=l;L[e>>2]=q;G[e+78>>1]=2048;L[e+56>>2]=O(D*l)-O(q*C);L[e+52>>2]=O(B*q)-O(s*D);L[e+48>>2]=O(C*s)-O(l*B);L[e+24>>2]=O(x*l)-O(q*w);L[e+20>>2]=O(v*q)-O(s*x);L[e+16>>2]=O(w*s)-O(l*v);L[e+12>>2]=-m;z=e+80|0}e=z;b:{if(!f){break b}p=L[b+12>>2];m=L[c+12>>2];s=O(p*m);n=L[b+8>>2];o=L[c+8>>2];t=O(n*o);i=L[b>>2];l=L[c>>2];r=O(i*l);j=L[b+4>>2];q=L[c+4>>2];y=O(j*q);u=O(t+O(r+y));b=O(s+u)!=O(0);s=O(s-u);u=O(p*l);E=O(n*q);I=O(j*m);K=O(p*q);A=O(I+K);P=O(n*l);Q=O(o*i);F=O(P+Q);R=O(n*m);S=O(p*o);p=O(R+S);l=O(l*j);q=O(i*q);n=O(l+q);if(f&1){r=O(O(O(r+r)+s)*O(.5));r=b?r:O(r+O(1.1920928955078125e-7));L[e+48>>2]=r;H[e+32>>2]=0;H[e+36>>2]=0;L[e+16>>2]=r;H[e+8>>2]=0;H[e>>2]=0;H[e+4>>2]=0;G[e+78>>1]=2048;r=O(O(F-A)*O(.5));L[e+56>>2]=r;T=O(O(p+n)*O(.5));L[e+52>>2]=T;H[e+40>>2]=0;L[e+24>>2]=r;L[e+20>>2]=T;G[e+76>>1]=J[e+76>>1]|64;L[e+12>>2]=-O(E+O(O(O(-j)*o)+O(u+O(m*O(-i)))));e=e+80|0}m=O(u+O(i*m));o=O(O(j*o)+E);if(f&2){i=O(O(n-p)*O(.5));L[e+48>>2]=i;H[e+32>>2]=0;H[e+36>>2]=0;L[e+16>>2]=i;H[e+8>>2]=0;H[e>>2]=0;H[e+4>>2]=0;G[e+78>>1]=2048;i=O(O(m+o)*O(.5));L[e+56>>2]=i;j=O(O(O(y+y)+s)*O(.5));j=b?j:O(j+O(1.1920928955078125e-7));L[e+52>>2]=j;H[e+40>>2]=0;L[e+24>>2]=i;L[e+20>>2]=j;L[e+12>>2]=-O(Q+O(O(K-I)-P));G[e+76>>1]=J[e+76>>1]|64;e=e+80|0}if(!(f&4)){break b}i=O(O(F+A)*O(.5));L[e+48>>2]=i;H[e+32>>2]=0;H[e+36>>2]=0;L[e+16>>2]=i;H[e+8>>2]=0;H[e>>2]=0;H[e+4>>2]=0;G[e+78>>1]=2048;i=O(O(O(t+t)+s)*O(.5));i=b?i:O(i+O(1.1920928955078125e-7));L[e+56>>2]=i;m=O(O(o-m)*O(.5));L[e+52>>2]=m;H[e+40>>2]=0;L[e+24>>2]=i;L[e+20>>2]=m;L[e+12>>2]=-O(l+O(O(S-R)-q));G[e+76>>1]=J[e+76>>1]|64;e=e+80|0}L[g+8>>2]=v;L[g+4>>2]=w;L[g>>2]=x;L[h+8>>2]=B;L[h+4>>2]=C;L[h>>2]=D;if(e>>>0>k>>>0){while(1){G[k+76>>1]=J[k+76>>1]|16;k=k+80|0;if(e>>>0>k>>>0){continue}break}}H[a+4>>2]=e}function H0(a,b,c,d,e,f){var g=0,h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=0,t=0,u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),F=O(0),G=0;g=Oa-208|0;Oa=g;s=H[c+32>>2];w=L[s+20>>2];t=H[d+32>>2];v=L[t+20>>2];z=L[s+24>>2];A=L[t+24>>2];E=L[s+16>>2];F=L[t+16>>2];j=L[t+8>>2];n=L[s>>2];i=L[t>>2];k=L[s+8>>2];p=L[t+4>>2];h=L[s+12>>2];q=L[t+12>>2];l=L[s+4>>2];H[g+204>>2]=0;H[g+188>>2]=0;H[g+172>>2]=0;m=O(O(O(k*p)-O(l*j))+O(O(h*i)-O(n*q)));o=O(m+m);r=O(O(O(n*j)-O(k*i))+O(O(h*p)-O(l*q)));u=O(r+r);y=O(O(1)-O(m*o));B=O(r*u);L[g+184>>2]=y-B;m=O(O(O(l*i)-O(n*p))+O(O(h*j)-O(k*q)));C=O(m*u);D=i;i=O(-n);x=O(O(h*q)-O(O(O(D*i)-O(p*l))-O(k*j)));j=O(x*o);L[g+180>>2]=C-j;L[g+168>>2]=C+j;D=y;y=O(m+m);C=O(m*y);L[g+164>>2]=D-C;j=O(F-E);D=O(i*j);i=O(v-w);p=O(A-z);q=O(O(D-O(i*l))-O(k*p));w=O(O(h*h)+O(-.5));v=O(O(O(h*O(O(l*j)-O(n*i)))+O(w*p))-O(k*q));L[g+200>>2]=v+v;v=O(O(O(w*i)+O(h*O(O(n*p)-O(k*j))))-O(l*q));L[g+196>>2]=v+v;H[g+156>>2]=0;m=O(m*o);u=O(x*u);L[g+176>>2]=m+u;o=O(r*o);r=O(x*y);L[g+160>>2]=o-r;L[g+152>>2]=m-u;L[g+148>>2]=o+r;L[g+144>>2]=O(O(1)-B)-C;h=O(O(O(w*j)+O(h*O(O(k*i)-O(l*p))))-O(n*q));L[g+192>>2]=h+h;o=L[t+20>>2];m=L[s+20>>2];x=L[t+24>>2];w=L[s+24>>2];j=L[s+8>>2];i=L[s>>2];p=L[s+4>>2];q=L[s+12>>2];h=L[t+12>>2];n=L[t>>2];r=L[t+16>>2];u=L[s+16>>2];k=L[t+4>>2];l=L[t+8>>2];H[g+140>>2]=0;H[g+124>>2]=0;H[g+108>>2]=0;E=O(-n);r=O(u-r);u=O(m-o);x=O(w-x);w=O(O(O(E*r)-O(u*k))-O(l*x));A=O(O(h*h)+O(-.5));o=O(O(O(h*O(O(k*r)-O(n*u)))+O(A*x))-O(l*w));L[g+136>>2]=o+o;o=O(O(O(A*u)+O(h*O(O(n*x)-O(l*r))))-O(k*w));L[g+132>>2]=o+o;m=O(O(O(l*p)-O(k*j))+O(O(h*i)-O(n*q)));o=O(m+m);v=O(O(O(n*j)-O(l*i))+O(O(h*p)-O(k*q)));z=O(v+v);F=O(O(1)-O(m*o));y=O(v*z);L[g+120>>2]=F-y;m=O(O(O(k*i)-O(n*p))+O(O(h*j)-O(l*q)));B=O(m*z);j=O(O(h*q)-O(O(O(E*i)-O(p*k))-O(l*j)));i=O(j*o);L[g+116>>2]=B-i;L[g+104>>2]=B+i;i=O(m+m);p=O(m*i);L[g+100>>2]=F-p;H[g+92>>2]=0;h=O(O(O(A*r)+O(h*O(O(l*u)-O(k*x))))-O(n*w));L[g+128>>2]=h+h;h=O(m*o);k=O(j*z);L[g+112>>2]=h+k;l=O(v*o);n=O(j*i);L[g+96>>2]=l-n;L[g+88>>2]=h-k;L[g+84>>2]=l+n;L[g+80>>2]=O(O(1)-y)-p;H[g+76>>2]=0;H[g+48>>2]=2139095039;H[g+40>>2]=0;H[g+44>>2]=0;H[g+32>>2]=0;H[g+36>>2]=0;H[g+16>>2]=0;a:{if(!C0(a,b,c,d,g+80|0,g+144|0,g+16|0,g+48|0,g+12|0,g+32|0,0,g+76|0)){break a}if(!C0(b,a,d,c,g+144|0,g+80|0,g+16|0,g+48|0,g+8|0,g+32|0,1,g+76|0)){break a}if(!D0(a,b,c,d,g+80|0,g+144|0,g+16|0,g+48|0,g+32|0,g+76|0)){break a}a=H[g+52>>2];H[e>>2]=H[g+48>>2];H[e+4>>2]=a;a=H[g+60>>2];H[e+8>>2]=H[g+56>>2];H[e+12>>2]=a;b:{if(H[g+76>>2]==1){a=H[d+32>>2];h=L[a+12>>2];k=L[a+8>>2];l=L[g+40>>2];n=L[a>>2];j=L[g+32>>2];i=L[a+4>>2];p=L[g+36>>2];q=O(O(k*l)+O(O(n*j)+O(i*p)));o=O(O(h*h)+O(-.5));m=O(O(O(h*O(O(n*p)-O(j*i)))+O(o*l))+O(k*q));m=O(m+m);r=O(O(i*q)+O(O(o*p)+O(h*O(O(k*j)-O(l*n)))));r=O(r+r);h=O(O(n*q)+O(O(j*o)+O(h*O(O(i*l)-O(p*k)))));h=O(h+h);break b}a=H[c+32>>2];h=L[a+12>>2];k=L[a+8>>2];l=L[g+40>>2];n=L[a>>2];j=L[g+32>>2];i=L[a+4>>2];p=L[g+36>>2];q=O(O(k*l)+O(O(n*j)+O(i*p)));o=O(O(h*h)+O(-.5));m=O(O(O(O(h*O(O(n*p)-O(j*i)))+O(o*l))+O(k*q))*O(-2));r=O(O(O(i*q)+O(O(o*p)+O(h*O(O(k*j)-O(l*n)))))*O(-2));h=O(O(O(n*q)+O(O(j*o)+O(h*O(O(i*l)-O(p*k)))))*O(-2))}H[f+12>>2]=0;L[f+8>>2]=m;L[f+4>>2]=r;L[f>>2]=h;G=1}Oa=g+208|0;return G}function Rv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=O(0),g=0,h=O(0),i=0,j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=0,s=O(0),t=O(0),u=O(0),v=0,w=0,x=O(0),y=O(0),z=0,A=0,B=0,C=0,D=0,E=O(0),G=O(0),J=O(0);d=I[c|0];if(d&1){R6(H[b+12>>2],H[a+156>>2],H[a+468>>2]<<2);d=I[c|0]}if(d&2){R6(H[b+16>>2],H[a+144>>2],H[a+468>>2]<<2);d=I[c|0]}if(d&4){R6(H[b+20>>2],H[a+180>>2],H[a+468>>2]<<2);d=I[c|0]}if(d&8){R6(H[b+24>>2],H[a+192>>2],H[a+468>>2]<<2);d=I[c|0]}a:{if(!(d&16)){break a}r=H[a+448>>2];if(!r){break a}v=H[a+228>>2];w=H[b+28>>2];while(1){i=e<<5;g=i+w|0;i=i+v|0;L[g>>2]=L[i+16>>2];L[g+4>>2]=L[i+20>>2];L[g+8>>2]=L[i+24>>2];L[g+16>>2]=L[i>>2];L[g+20>>2]=L[i+4>>2];L[g+24>>2]=L[i+8>>2];e=e+1|0;if((r|0)!=(e|0)){continue}break}}b:{if(!(d&32)){break b}v=H[a+448>>2];h=L[a+464>>2];if(h>O(0)){h=O(O(1)/h);A=H[a+168>>2];w=H[a+448>>2];B=H[a+456>>2];d=H[a+240>>2];c:{if(F[H[a+476>>2]]&1){H[d+16>>2]=0;H[d+8>>2]=0;H[d+12>>2]=0;H[d>>2]=0;H[d+24>>2]=0;H[d+28>>2]=0;m=O(0);break c}f=L[a+132>>2];e=H[a+228>>2];l=L[e+20>>2];j=L[a+116>>2];n=L[e+4>>2];k=L[a+136>>2];o=L[e+24>>2];p=L[e>>2];m=L[a+120>>2];q=L[e+8>>2];t=L[a+112>>2];L[d+16>>2]=h*O(L[e+16>>2]-L[a+128>>2]);L[d+8>>2]=h*O(q-m);L[d>>2]=h*O(p-t);L[d+24>>2]=h*O(o-k);l=O(h*O(l-f));m=O(h*O(n-j))}L[d+4>>2]=m;L[d+20>>2]=l;g=1;if(w>>>0>1){while(1){e=N(g,80)+B|0;z=I[e+76|0];if(z){C=(H[e+72>>2]<<2)+A|0;D=H[a+384>>2];e=d+(g<<5)|0;l=L[e+24>>2];j=L[e+20>>2];n=L[e+16>>2];k=L[e+8>>2];o=L[e+4>>2];p=L[e>>2];r=0;while(1){i=(N(g,76)+D|0)+N(r,24)|0;m=L[i+8>>2];q=L[i+4>>2];f=O(h*L[(r<<2)+C>>2]);p=O(O(f*L[i>>2])+p);L[e>>2]=p;o=O(O(f*q)+o);L[e+4>>2]=o;k=O(O(f*m)+k);L[e+8>>2]=k;m=L[i+20>>2];q=L[i+16>>2];n=O(O(f*L[i+12>>2])+n);L[e+16>>2]=n;j=O(O(f*q)+j);L[e+20>>2]=j;l=O(O(f*m)+l);L[e+24>>2]=l;r=r+1|0;if((z|0)!=(r|0)){continue}break}}g=g+1|0;if((w|0)!=(g|0)){continue}break}}}if(!v){break b}i=H[a+240>>2];r=H[b+32>>2];e=0;while(1){g=e<<5;d=g+r|0;g=g+i|0;L[d>>2]=L[g+16>>2];L[d+4>>2]=L[g+20>>2];L[d+8>>2]=L[g+24>>2];L[d+16>>2]=L[g>>2];L[d+20>>2]=L[g+4>>2];L[d+24>>2]=L[g+8>>2];e=e+1|0;if((v|0)!=(e|0)){continue}break}}if(I[c|0]&64){d=H[a+228>>2];c=H[H[a+444>>2]+16>>2];E=L[c+16>>2];G=L[c+20>>2];m=L[c+24>>2];q=L[c+48>>2];t=L[c+56>>2];s=L[c+52>>2];b=H[b+36>>2];l=L[c+8>>2];j=L[c+40>>2];n=L[c+4>>2];k=L[c+36>>2];h=L[c+12>>2];f=L[c+44>>2];o=L[c+32>>2];p=L[c>>2];L[b+12>>2]=O(l*j)+O(O(n*k)+O(O(h*f)+O(o*p)));L[b+8>>2]=O(o*n)+O(O(O(f*l)-O(h*j))-O(p*k));L[b+4>>2]=O(j*p)+O(O(O(f*n)-O(h*k))-O(l*o));L[b>>2]=O(k*l)+O(O(O(f*p)-O(h*o))-O(n*j));J=m;m=O(t*O(-2));q=O(q*O(-2));t=O(s*O(-2));x=O(O(j*m)+O(O(o*q)+O(k*t)));y=O(O(f*f)+O(-.5));s=O(O(j*x)+O(O(m*y)-O(f*O(O(o*t)-O(q*k)))));s=O(s+s);u=O(O(o*x)+O(O(q*y)-O(f*O(O(k*m)-O(t*j)))));u=O(u+u);f=O(O(k*x)+O(O(t*y)-O(f*O(O(j*q)-O(m*o)))));f=O(f+f);j=O(O(l*s)+O(O(p*u)+O(n*f)));k=O(O(h*h)+O(-.5));L[b+24>>2]=J+O(O(l*j)+O(O(s*k)+O(h*O(O(p*f)-O(u*n)))));L[b+20>>2]=G+O(O(n*j)+O(O(f*k)+O(h*O(O(l*u)-O(s*p)))));L[b+16>>2]=E+O(O(p*j)+O(O(u*k)+O(h*O(O(n*s)-O(f*l)))));L[b+28>>2]=L[d+16>>2];L[b+32>>2]=L[d+20>>2];L[b+36>>2]=L[d+24>>2];L[b+40>>2]=L[d>>2];L[b+44>>2]=L[d+4>>2];L[b+48>>2]=L[d+8>>2];a=H[a+240>>2];L[b+52>>2]=L[a+16>>2];L[b+56>>2]=L[a+20>>2];L[b+60>>2]=L[a+24>>2];L[b+64>>2]=L[a>>2];L[b+68>>2]=L[a+4>>2];L[b+72>>2]=L[a+8>>2]}}function yw(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=O(0),j=0,k=0,l=0,m=O(0),n=O(0),o=O(0),p=0,q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=O(0),D=O(0),E=0,G=0,J=0,K=0,M=0,P=0,Q=0,R=0,S=O(0),T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0;Ra[H[H[a>>2]+52>>2]](a);Y=H[a+452>>2];Z=H[a+444>>2];V=H[a+448>>2];f=Ra[H[H[a>>2]+28>>2]](a)|0;v=1;g=H[a+448>>2];T=F[H[a+476>>2]]&1;U=T?0:6;H[d>>2]=f+U;W=U-6|0;H[c>>2]=W+N(g,6);if(!T){g=H[b+4>>2];H[g+4>>2]=0;H[g+8>>2]=0;H[g>>2]=1065353216;H[g+12>>2]=0;H[g+16>>2]=0;H[g+20>>2]=0;c=H[d>>2];f=g+(c<<2)|0;H[f>>2]=0;H[f+4>>2]=1065353216;H[f+8>>2]=0;H[f+12>>2]=0;H[f+16>>2]=0;H[f+20>>2]=0;f=g+(c<<3)|0;H[f>>2]=0;H[f+4>>2]=0;H[f+8>>2]=1065353216;H[f+12>>2]=0;H[f+16>>2]=0;H[f+20>>2]=0;f=g+N(c,12)|0;H[f>>2]=0;H[f+4>>2]=0;H[f+8>>2]=0;H[f+12>>2]=1065353216;H[f+16>>2]=0;H[f+20>>2]=0;f=g+(c<<4)|0;H[f>>2]=0;H[f+4>>2]=0;H[f+8>>2]=0;H[f+12>>2]=0;H[f+16>>2]=1065353216;H[f+20>>2]=0;c=g+N(c,20)|0;H[c>>2]=0;H[c+4>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;H[c+16>>2]=0;H[c+20>>2]=1065353216;j=6}if(V>>>0>1){f=H[a+456>>2];h=H[d>>2];k=H[b+4>>2];g=j;while(1){Q=N(v,160)+Y|0;c=(v<<5)+Z|0;E=H[c+16>>2];L[Q+144>>2]=L[E+76>>2];a:{b:{e=H[c+24>>2];if(e){c=f+N(e,80)|0;break b}c=f;if(!T){break b}G=j+5|0;J=j+4|0;K=j+3|0;M=j+2|0;P=j|1;break a}_=N(h,j);G=j+5|0;$=N(G,h);J=j+4|0;p=N(J,h);K=j+3|0;B=N(K,h);M=j+2|0;R=N(M,h);P=j|1;l=N(P,h);e=N(e,6)+W|0;w=N(e,h);X=I[c+76|0]+(H[c+72>>2]+U|0)|0;x=N(e+2|0,h);y=N(e|1,h);z=N(e+5|0,h);A=N(e+4|0,h);e=N(e+3|0,h);c=0;while(1){q=L[(c+e<<2)+k>>2];m=L[Q+120>>2];C=L[(c+A<<2)+k>>2];o=L[Q+128>>2];i=L[Q+124>>2];n=L[(c+z<<2)+k>>2];L[(c+_<<2)+k>>2]=L[(c+w<<2)+k>>2]+O(O(C*o)-O(i*n));L[(c+l<<2)+k>>2]=O(O(n*m)-O(o*q))+L[(c+y<<2)+k>>2];L[(c+R<<2)+k>>2]=O(O(q*i)-O(m*C))+L[(c+x<<2)+k>>2];L[(c+B<<2)+k>>2]=q;L[(c+p<<2)+k>>2]=C;L[(c+$<<2)+k>>2]=n;c=c+1|0;if(X>>>0>=c>>>0){continue}break}c=X+1|0;if(g>>>0<=c>>>0){break a}e=H[d>>2];w=N(e,G);x=N(e,J);y=N(e,K);z=N(e,M);A=N(e,P);e=N(e,j);l=H[b+4>>2];while(1){H[l+(c+e<<2)>>2]=0;H[l+(c+A<<2)>>2]=0;H[l+(c+z<<2)>>2]=0;H[l+(c+y<<2)>>2]=0;H[l+(c+x<<2)>>2]=0;H[l+(c+w<<2)>>2]=0;c=c+1|0;if(g>>>0>c>>>0){continue}break}}c=H[b+4>>2];R=I[(f+N(v,80)|0)+76|0];if(R){e=H[d>>2];l=N(e,G);w=N(e,J);x=N(e,K);y=N(e,M);z=N(e,P);A=N(e,j);e=H[a+372>>2];B=0;while(1){p=(e+N(v,76)|0)+N(B,24)|0;C=L[p>>2];n=L[p+8>>2];o=L[p+4>>2];r=L[E+8>>2];i=L[p+20>>2];S=O(i+i);s=L[E>>2];i=L[p+12>>2];q=O(i+i);t=L[E+4>>2];i=L[p+16>>2];m=O(i+i);i=O(O(r*S)+O(O(s*q)+O(t*m)));u=L[E+12>>2];D=O(O(u*u)+O(-.5));L[(g+A<<2)+c>>2]=O(s*i)+O(O(q*D)+O(u*O(O(t*S)-O(m*r))));L[(g+z<<2)+c>>2]=O(t*i)+O(O(m*D)+O(u*O(O(r*q)-O(S*s))));L[(g+y<<2)+c>>2]=O(r*i)+O(O(S*D)+O(u*O(O(s*m)-O(q*t))));m=O(n+n);n=O(C+C);o=O(o+o);i=O(O(r*m)+O(O(s*n)+O(t*o)));L[(g+x<<2)+c>>2]=O(s*i)+O(O(n*D)+O(u*O(O(t*m)-O(o*r))));L[(g+w<<2)+c>>2]=O(t*i)+O(O(o*D)+O(u*O(O(r*n)-O(m*s))));L[(g+l<<2)+c>>2]=O(r*i)+O(O(m*D)+O(u*O(O(s*o)-O(n*t))));g=g+1|0;B=B+1|0;if((R|0)!=(B|0)){continue}break}c=H[b+4>>2]}if(g>>>0>>0){l=N(h,G);w=N(h,J);x=N(h,K);y=N(h,M);z=N(h,P);A=N(h,j);e=g;while(1){H[(e+A<<2)+c>>2]=0;H[(e+z<<2)+c>>2]=0;H[(e+y<<2)+c>>2]=0;H[(e+x<<2)+c>>2]=0;H[(e+w<<2)+c>>2]=0;H[(e+l<<2)+c>>2]=0;e=e+1|0;if((h|0)!=(e|0)){continue}break}}j=j+6|0;v=v+1|0;if((V|0)!=(v|0)){continue}break}}}function Ke(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=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=0,s=0,t=0,u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=0,A=0,B=0,C=0,D=0,E=0,F=0;h=Oa+-64|0;Oa=h;i=L[f+8>>2];k=L[c+8>>2];s=H[f>>2];f=H[f+4>>2];r=H[c+4>>2];c=H[c>>2];L[h+32>>2]=L[d>>2];L[h+36>>2]=L[d+4>>2];L[h+40>>2]=L[d+8>>2];m=L[d+12>>2];L[h+56>>2]=k;H[h+48>>2]=c;H[h+52>>2]=r;L[h+44>>2]=m;L[h>>2]=L[g>>2];L[h+4>>2]=L[g+4>>2];L[h+8>>2]=L[g+8>>2];k=L[g+12>>2];L[h+24>>2]=i;H[h+16>>2]=s;H[h+20>>2]=f;L[h+12>>2]=k;g=Oa-16|0;Oa=g;c=H[33808];d=c+12|0;c=(B=d,C=84,D=Ra[H[H[c>>2]+20>>2]](c)|0?24378:55639,E=5691,F=45,A=H[H[d>>2]+8>>2],Ra[A](B|0,C|0,D|0,E|0,F|0)|0);s=Ra[H[H[a>>2]+20>>2]](a)|0;G[g+8>>1]=3;f=Oa-32|0;Oa=f;G[c+6>>1]=J[g+8>>1];G[c+4>>1]=258;H[c+76>>2]=0;H[c+16>>2]=0;H[c+12>>2]=132180;H[c>>2]=131968;H[c+8>>2]=0;d=H[33808];d=Ra[H[H[d+12>>2]+8>>2]](d+12|0,128,20591,14087,454)|0;i=L[h+44>>2];k=L[h+40>>2];m=L[h+32>>2];j=L[h+36>>2];r=H[h+48>>2];t=H[h+52>>2];L[c+44>>2]=L[h+56>>2];H[c+36>>2]=r;H[c+40>>2]=t;l=j;j=O(O(1)/O(W(O(O(i*i)+O(O(k*k)+O(O(m*m)+O(j*j)))))));L[c+24>>2]=l*j;L[c+28>>2]=k*j;L[c+32>>2]=i*j;L[c+20>>2]=m*j;i=L[h+12>>2];k=L[h+8>>2];m=L[h>>2];j=L[h+4>>2];r=H[h+16>>2];t=H[h+20>>2];L[c+72>>2]=L[h+24>>2];z=c- -64|0;H[z>>2]=r;H[z+4>>2]=t;l=j;j=O(O(1)/O(W(O(O(i*i)+O(O(k*k)+O(O(m*m)+O(j*j)))))));L[c+52>>2]=l*j;L[c+56>>2]=k*j;L[c+60>>2]=i*j;L[c+48>>2]=m*j;u1(f,b);q=L[h+52>>2];u=L[h+56>>2];v=L[h+48>>2];w=L[f+20>>2];x=L[f+24>>2];y=L[f+16>>2];k=L[f+8>>2];l=L[h+40>>2];m=L[f+4>>2];n=L[h+36>>2];i=L[f+12>>2];o=L[h+44>>2];j=L[f>>2];p=L[h+32>>2];L[d+28>>2]=O(k*l)+O(O(m*n)+O(O(i*o)+O(j*p)));L[d+24>>2]=O(p*m)+O(O(O(i*l)-O(o*k))-O(j*n));L[d+20>>2]=O(l*j)+O(O(O(i*n)-O(o*m))-O(k*p));L[d+16>>2]=O(n*k)+O(O(O(i*p)-O(o*j))-O(m*l));l=O(v-y);l=O(l+l);n=O(q-w);n=O(n+n);o=O(u-x);o=O(o+o);p=O(O(O(O(-j)*l)-O(n*m))-O(k*o));q=O(O(i*i)+O(-.5));L[d+40>>2]=O(O(o*q)+O(i*O(O(m*l)-O(j*n))))-O(k*p);L[d+36>>2]=O(O(n*q)+O(i*O(O(j*o)-O(k*l))))-O(m*p);L[d+32>>2]=O(O(l*q)+O(i*O(O(k*n)-O(m*o))))-O(j*p);u1(f,e);q=L[h+20>>2];u=L[h+24>>2];v=L[h+16>>2];w=L[f+20>>2];x=L[f+24>>2];y=L[f+16>>2];k=L[f+8>>2];l=L[h+8>>2];m=L[f+4>>2];n=L[h+4>>2];i=L[f+12>>2];o=L[h+12>>2];j=L[f>>2];p=L[h>>2];L[d+56>>2]=O(k*l)+O(O(m*n)+O(O(i*o)+O(j*p)));L[d+52>>2]=O(p*m)+O(O(O(i*l)-O(o*k))-O(j*n));L[d+48>>2]=O(l*j)+O(O(O(i*n)-O(o*m))-O(k*p));L[d+44>>2]=O(n*k)+O(O(O(i*p)-O(o*j))-O(m*l));l=O(v-y);l=O(l+l);n=O(q-w);n=O(n+n);o=O(u-x);o=O(o+o);p=O(O(O(O(-j)*l)-O(n*m))-O(k*o));q=O(O(i*i)+O(-.5));L[d+68>>2]=O(O(o*q)+O(i*O(O(m*l)-O(j*n))))-O(k*p);L[d+64>>2]=O(O(n*q)+O(i*O(O(j*o)-O(k*l))))-O(m*p);L[d+60>>2]=O(O(l*q)+O(i*O(O(k*n)-O(m*o))))-O(j*p);H[d+8>>2]=1065353216;H[d+12>>2]=1065353216;H[d>>2]=1065353216;H[d+4>>2]=1065353216;H[c+80>>2]=d;Oa=f+32|0;H[c+12>>2]=131864;H[c>>2]=131644;i=L[s>>2];d=H[c+80>>2];G[d+116>>1]=0;H[d+108>>2]=1343554297;H[d+112>>2]=1078530011;H[d+100>>2]=2125114026;H[d+104>>2]=-22369622;H[d+88>>2]=0;H[d+92>>2]=0;H[d+80>>2]=0;L[d+84>>2]=i+i;i=O(i*O(.009999999776482582));L[d+96>>2]=i>2]+108>>2]](a,b,e,c+12|0,131620,128)|0;H[c+76>>2]=a;if(!a){Ra[H[H[c>>2]+16>>2]](c);c=0}Oa=g+16|0;Oa=h- -64|0;return c|0}function fZ(a,b,c,d){var e=O(0),f=0,g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),F=O(0),G=O(0),I=O(0),J=O(0),K=O(0),M=O(0),N=O(0),P=O(0),Q=O(0),R=O(0),S=O(0),T=O(0),U=O(0),V=O(0),W=O(0),X=O(0),Y=O(0),Z=O(0),_=0,$=O(0),aa=O(0),ba=O(0),ca=O(0);f=Oa-80|0;Oa=f;h=L[b+12>>2];q=L[b+4>>2];m=L[b+8>>2];a:{if(!(q!=O(1)|m!=O(1)|h!=O(1))){G=L[d+20>>2];I=L[d+24>>2];m=L[c+20>>2];b=H[c+32>>2];_=H[c+28>>2];J=L[d+16>>2];x=L[c+24>>2];y=L[c+16>>2];h=L[d+4>>2];i=L[d>>2];e=L[d+12>>2];g=L[d+8>>2];L[a+56>>2]=L[c+36>>2];H[a+48>>2]=_;H[a+52>>2]=b;n=O(i+i);j=O(h*n);k=O(g+g);o=O(e*k);l=O(j+o);L[a+4>>2]=l;s=O(n*g);q=O(h+h);p=O(e*q);v=O(s-p);L[a+8>>2]=v;j=O(j-o);L[a+12>>2]=j;o=O(q*g);e=O(n*e);r=O(o+e);L[a+20>>2]=r;s=O(s+p);L[a+24>>2]=s;e=O(o-e);L[a+28>>2]=e;i=O(O(1)-O(i*n));g=O(g*k);n=O(i-g);L[a+16>>2]=n;h=O(h*q);i=O(i-h);L[a+32>>2]=i;g=O(O(O(1)-h)-g);L[a>>2]=g;L[a+44>>2]=I+O(O(O(y*v)+O(m*r))+O(i*x));L[a+36>>2]=J+O(O(O(y*g)+O(m*j))+O(s*x));L[a+40>>2]=G+O(O(O(y*l)+O(m*n))+O(e*x));break a}x=L[c+28>>2];$=L[d+20>>2];aa=L[d+24>>2];G=L[c+20>>2];y=L[c+32>>2];ba=L[d+16>>2];I=L[c+24>>2];J=L[c+16>>2];e=L[b+16>>2];i=O(e+e);j=L[b+20>>2];g=O(j+j);C=O(O(1)-O(e*i));D=O(j*g);k=O(C-D);o=O(k*h);e=L[b+24>>2];E=O(i*e);A=L[b+28>>2];w=O(g*A);l=O(E+w);s=O(q*l);z=O(g*e);F=O(i*A);p=O(z-F);v=O(m*p);t=L[d>>2];r=O(t+t);n=L[d+8>>2];R=O(r*n);u=L[d+4>>2];B=O(u+u);M=L[d+12>>2];S=O(B*M);N=O(R-S);K=L[c+36>>2];g=O(K*O(0));T=O(O(1)-O(t*r));U=O(u*B);P=O(T-U);Q=O(O(k*o)+O(O(l*s)+O(p*v)));t=O(E-w);E=O(t*h);w=O(e+e);V=O(e*w);e=O(O(O(1)-D)-V);D=O(q*e);W=O(i*j);X=O(w*A);i=O(W+X);A=O(m*i);w=O(O(k*E)+O(O(l*D)+O(p*A)));Y=O(B*n);Z=O(r*M);B=O(Y+Z);ca=k;j=O(z+F);k=O(j*h);z=l;h=O(W-X);l=O(q*h);q=p;p=m;m=O(C-V);p=O(p*m);C=O(O(ca*k)+O(O(z*l)+O(q*p)));q=O(O(P*Q)+O(O(N*w)+O(B*C)));z=O(O(t*o)+O(O(e*s)+O(i*v)));F=O(O(t*E)+O(O(e*D)+O(i*A)));t=O(O(t*k)+O(O(e*l)+O(i*p)));i=O(O(P*z)+O(O(N*F)+O(B*t)));s=O(O(j*o)+O(O(h*s)+O(m*v)));v=O(O(j*E)+O(O(h*D)+O(m*A)));l=O(O(j*k)+O(O(h*l)+O(m*p)));m=O(O(P*s)+O(O(N*v)+O(B*l)));L[f+32>>2]=O(K*q)+O(O(i*g)+O(m*g));h=O(Y-Z);o=O(r*u);e=O(n+n);u=O(M*e);j=O(o+u);r=O(n*e);k=O(T-r);e=O(O(h*Q)+O(O(j*w)+O(k*C)));n=O(O(h*z)+O(O(j*F)+O(k*t)));j=O(O(h*s)+O(O(j*v)+O(k*l)));L[f+28>>2]=O(K*e)+O(O(n*g)+O(j*g));h=O(y*O(0));L[f+20>>2]=O(h*q)+O(O(h*i)+O(y*m));L[f+16>>2]=O(h*e)+O(O(h*n)+O(y*j));L[f+44>>2]=aa+O(O(I*q)+O(O(J*i)+O(G*m)));L[f+40>>2]=$+O(O(I*e)+O(O(J*n)+O(G*j)));p=O(R+S);r=O(O(O(1)-U)-r);u=O(o-u);k=O(O(p*Q)+O(O(r*w)+O(u*C)));o=O(O(p*z)+O(O(r*F)+O(u*t)));l=O(O(p*s)+O(O(r*v)+O(u*l)));L[f+24>>2]=O(K*k)+O(O(o*g)+O(l*g));L[f+12>>2]=O(h*k)+O(O(h*o)+O(y*l));g=O(x*O(0));L[f+8>>2]=O(g*q)+O(O(x*i)+O(g*m));L[f+4>>2]=O(g*e)+O(O(x*n)+O(g*j));L[f>>2]=O(g*k)+O(O(x*o)+O(g*l));L[f+36>>2]=ba+O(O(I*k)+O(O(J*o)+O(G*l)));D5(f- -64|0,f);b=H[f+68>>2];c=H[f+64>>2];g=L[f+72>>2];L[a>>2]=L[f>>2];L[a+4>>2]=L[f+4>>2];L[a+8>>2]=L[f+8>>2];L[a+12>>2]=L[f+12>>2];L[a+16>>2]=L[f+16>>2];L[a+20>>2]=L[f+20>>2];L[a+24>>2]=L[f+24>>2];L[a+28>>2]=L[f+28>>2];L[a+32>>2]=L[f+32>>2];L[a+36>>2]=L[f+36>>2];L[a+40>>2]=L[f+40>>2];h=L[f+44>>2];L[a+56>>2]=g;H[a+48>>2]=c;H[a+52>>2]=b;L[a+44>>2]=h}Oa=f+80|0}function gx(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=O(0),h=0,i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=0,o=O(0),p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),F=O(0),G=O(0),J=0,K=0,M=0,P=0,Q=O(0),R=O(0),S=O(0),T=O(0),U=O(0),V=O(0),W=O(0),X=O(0),Y=O(0),Z=O(0),_=O(0),$=O(0),aa=O(0),ba=O(0),ca=O(0),da=O(0),ea=O(0),fa=O(0);d=Oa+-64|0;Oa=d;a:{if(I[a+488|0]){o5(H[33808],8,10222,2024,65846,0);break a}p=H[a+468>>2];e=H[a+448>>2];u=H[b+8>>2];n=H[b+52>>2];H[d+56>>2]=0;H[d+48>>2]=0;H[d+52>>2]=0;H[d+40>>2]=0;H[d+44>>2]=0;H[d+32>>2]=0;H[d+36>>2]=0;H[d+24>>2]=0;H[d+28>>2]=0;H[d+16>>2]=0;H[d+20>>2]=0;J=Fw(n,e,d+16|0);b=0;h=p<<2;q=h+15&-16;c=H[n+4>>2];e=H[n+8>>2];f=H[(c+(e<<2)|0)-4>>2];if((q|0)<=(f-H[n+16>>2]|0)){b=f-q|0;H[d>>2]=b;b:{if(e>>>0>=(H[n+12>>2]&2147483647)>>>0){Xr(n+4|0,d);break b}H[c+(e<<2)>>2]=b;H[n+8>>2]=e+1}b=H[d>>2]}H[d+40>>2]=0;H[d+44>>2]=b;H[d+32>>2]=0;e=I[H[a+476>>2]];q=S6(b,0,h);c:{if(!p){break c}b=0;if(!(e&1)){e=a+112|0;while(1){H[d+48>>2]=(N(b,p)<<2)+u;f=(b<<2)+q|0;H[f>>2]=1065353216;H[d+8>>2]=0;H[d>>2]=0;H[d+4>>2]=0;c=d+16|0;zw(e,c);S6(H[d+24>>2],0,H[a+448>>2]<<5);vw(e,d,c);Mw(e,c);Ow(e,c);Qw(e,c);Rw(e,c);H[f>>2]=0;b=b+1|0;if((p|0)!=(b|0)){continue}break}break c}while(1){H[d+48>>2]=(N(b,p)<<2)+u;v=(b<<2)+q|0;H[v>>2]=1065353216;w=H[a+448>>2];r=d+16|0;K=H[r+28>>2];e=H[r+12>>2];s=H[r+4>>2];c=s;H[c+16>>2]=0;H[c+20>>2]=0;H[c>>2]=0;H[c+4>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;H[e>>2]=0;H[e+4>>2]=0;H[e+8>>2]=0;H[e+12>>2]=0;H[e+16>>2]=0;H[e+20>>2]=0;H[e+24>>2]=0;H[e+28>>2]=0;x=a+112|0;f=1;if(w>>>0>1){while(1){h=H[x+340>>2]+N(f,160)|0;i=L[h+124>>2];t=f<<5;c=s+(H[(t+H[a+444>>2]|0)+24>>2]<<5)|0;k=L[c>>2];g=L[h+120>>2];l=L[c+4>>2];o=O(O(O(i*k)-O(g*l))+L[c+24>>2]);m=g;g=L[c+8>>2];j=L[h+128>>2];m=O(O(O(m*g)-O(j*k))+L[c+20>>2]);i=O(O(O(j*l)-O(i*g))+L[c+16>>2]);c=H[a+456>>2]+N(f,80)|0;y=I[c+76|0];if(y){M=(H[c+72>>2]<<2)+K|0;P=H[a+384>>2];h=0;while(1){j=L[(h<<2)+M>>2];c=(N(f,76)+P|0)+N(h,24)|0;i=O(i+O(j*L[c+12>>2]));g=O(g+O(j*L[c+8>>2]));l=O(l+O(j*L[c+4>>2]));k=O(k+O(j*L[c>>2]));o=O(o+O(j*L[c+20>>2]));m=O(m+O(j*L[c+16>>2]));h=h+1|0;if((y|0)!=(h|0)){continue}break}}c=s+t|0;H[c+28>>2]=0;L[c+16>>2]=i;H[c+12>>2]=0;L[c+8>>2]=g;L[c+4>>2]=l;L[c>>2]=k;L[c+24>>2]=o;L[c+20>>2]=m;c=H[a+348>>2]+N(f,112)|0;Q=L[c+60>>2];R=L[c+48>>2];S=L[c+36>>2];T=L[c- -64>>2];U=L[c+40>>2];V=L[c+52>>2];W=L[c+68>>2];X=L[c+44>>2];Y=L[c+56>>2];Z=L[c+96>>2];_=L[c+84>>2];$=L[c+72>>2];j=L[c+8>>2];z=L[c>>2];A=L[c+4>>2];B=L[c+20>>2];C=L[c+16>>2];D=L[c+12>>2];aa=L[c+100>>2];ba=L[c+76>>2];ca=L[c+88>>2];E=L[c+32>>2];F=L[c+28>>2];G=L[c+24>>2];da=L[c+104>>2];ea=L[c+80>>2];fa=L[c+92>>2];c=e+t|0;H[c+28>>2]=0;H[c+12>>2]=0;L[c+24>>2]=O(O(E*o)+O(O(G*i)+O(m*F)))+O(O(O(k*ea)+O(l*fa))+O(g*da));L[c+20>>2]=O(O(B*o)+O(O(D*i)+O(m*C)))+O(O(O(k*ba)+O(l*ca))+O(g*aa));L[c+16>>2]=O(O(j*o)+O(O(z*i)+O(m*A)))+O(O(O(k*$)+O(l*_))+O(g*Z));L[c+8>>2]=O(O(O(k*j)+O(l*B))+O(g*E))+O(O(O(i*X)+O(m*Y))+O(o*W));L[c+4>>2]=O(O(O(k*A)+O(l*C))+O(g*F))+O(O(O(i*U)+O(m*V))+O(o*T));L[c>>2]=O(O(O(k*z)+O(l*D))+O(g*G))+O(O(O(i*S)+O(m*R))+O(o*Q));f=f+1|0;if((w|0)!=(f|0)){continue}break}}Nw(x,r);H[v>>2]=0;b=b+1|0;if((p|0)!=(b|0)){continue}break}}Lw(n,q);Lw(n,J)}Oa=d- -64|0}function He(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=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=0,s=0,t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=0,z=0,A=0,B=0,C=0,D=0,E=0;h=Oa+-64|0;Oa=h;j=L[f+8>>2];k=L[c+8>>2];r=H[f>>2];f=H[f+4>>2];s=H[c+4>>2];c=H[c>>2];L[h+32>>2]=L[d>>2];L[h+36>>2]=L[d+4>>2];L[h+40>>2]=L[d+8>>2];m=L[d+12>>2];L[h+56>>2]=k;H[h+48>>2]=c;H[h+52>>2]=s;L[h+44>>2]=m;L[h>>2]=L[g>>2];L[h+4>>2]=L[g+4>>2];L[h+8>>2]=L[g+8>>2];k=L[g+12>>2];L[h+24>>2]=j;H[h+16>>2]=r;H[h+20>>2]=f;L[h+12>>2]=k;g=Oa-16|0;Oa=g;c=H[33808];d=c+12|0;c=(A=d,B=84,C=Ra[H[H[c>>2]+20>>2]](c)|0?24012:55639,D=5445,E=45,z=H[H[d>>2]+8>>2],Ra[z](A|0,B|0,C|0,D|0,E|0)|0);Ra[H[H[a>>2]+20>>2]](a)|0;G[g+8>>1]=3;f=Oa-32|0;Oa=f;G[c+6>>1]=J[g+8>>1];G[c+4>>1]=257;H[c+76>>2]=0;H[c+16>>2]=0;H[c+12>>2]=132832;H[c>>2]=132596;H[c+8>>2]=0;d=H[33808];d=Ra[H[H[d+12>>2]+8>>2]](d+12|0,144,20591,14087,454)|0;j=L[h+44>>2];k=L[h+40>>2];m=L[h+32>>2];i=L[h+36>>2];r=H[h+48>>2];s=H[h+52>>2];L[c+44>>2]=L[h+56>>2];H[c+36>>2]=r;H[c+40>>2]=s;l=i;i=O(O(1)/O(W(O(O(j*j)+O(O(k*k)+O(O(m*m)+O(i*i)))))));L[c+24>>2]=l*i;L[c+28>>2]=k*i;L[c+32>>2]=j*i;L[c+20>>2]=m*i;j=L[h+12>>2];k=L[h+8>>2];m=L[h>>2];i=L[h+4>>2];r=H[h+16>>2];s=H[h+20>>2];L[c+72>>2]=L[h+24>>2];y=c- -64|0;H[y>>2]=r;H[y+4>>2]=s;l=i;i=O(O(1)/O(W(O(O(j*j)+O(O(k*k)+O(O(m*m)+O(i*i)))))));L[c+52>>2]=l*i;L[c+56>>2]=k*i;L[c+60>>2]=j*i;L[c+48>>2]=m*i;u1(f,b);q=L[h+52>>2];t=L[h+56>>2];u=L[h+48>>2];v=L[f+20>>2];w=L[f+24>>2];x=L[f+16>>2];k=L[f+8>>2];l=L[h+40>>2];m=L[f+4>>2];n=L[h+36>>2];j=L[f+12>>2];o=L[h+44>>2];i=L[f>>2];p=L[h+32>>2];L[d+28>>2]=O(k*l)+O(O(m*n)+O(O(j*o)+O(i*p)));L[d+24>>2]=O(p*m)+O(O(O(j*l)-O(o*k))-O(i*n));L[d+20>>2]=O(l*i)+O(O(O(j*n)-O(o*m))-O(k*p));L[d+16>>2]=O(n*k)+O(O(O(j*p)-O(o*i))-O(m*l));l=O(u-x);l=O(l+l);n=O(q-v);n=O(n+n);o=O(t-w);o=O(o+o);p=O(O(O(O(-i)*l)-O(n*m))-O(k*o));q=O(O(j*j)+O(-.5));L[d+40>>2]=O(O(o*q)+O(j*O(O(m*l)-O(i*n))))-O(k*p);L[d+36>>2]=O(O(n*q)+O(j*O(O(i*o)-O(k*l))))-O(m*p);L[d+32>>2]=O(O(l*q)+O(j*O(O(k*n)-O(m*o))))-O(i*p);u1(f,e);q=L[h+20>>2];t=L[h+24>>2];u=L[h+16>>2];v=L[f+20>>2];w=L[f+24>>2];x=L[f+16>>2];k=L[f+8>>2];l=L[h+8>>2];m=L[f+4>>2];n=L[h+4>>2];j=L[f+12>>2];o=L[h+12>>2];i=L[f>>2];p=L[h>>2];L[d+56>>2]=O(k*l)+O(O(m*n)+O(O(j*o)+O(i*p)));L[d+52>>2]=O(p*m)+O(O(O(j*l)-O(o*k))-O(i*n));L[d+48>>2]=O(l*i)+O(O(O(j*n)-O(o*m))-O(k*p));L[d+44>>2]=O(n*k)+O(O(O(j*p)-O(o*i))-O(m*l));l=O(u-x);l=O(l+l);n=O(q-v);n=O(n+n);o=O(t-w);o=O(o+o);p=O(O(O(O(-i)*l)-O(n*m))-O(k*o));q=O(O(j*j)+O(-.5));L[d+68>>2]=O(O(o*q)+O(j*O(O(m*l)-O(i*n))))-O(k*p);L[d+64>>2]=O(O(n*q)+O(j*O(O(i*o)-O(k*l))))-O(m*p);L[d+60>>2]=O(O(l*q)+O(j*O(O(k*n)-O(m*o))))-O(i*p);H[d+8>>2]=1065353216;H[d+12>>2]=1065353216;H[d>>2]=1065353216;H[d+4>>2]=1065353216;H[c+80>>2]=d;Oa=f+32|0;H[c+12>>2]=132492;H[c>>2]=132248;d=H[c+80>>2];H[d+124>>2]=1078530011;G[d+128>>1]=0;H[d+88>>2]=1065353216;H[d+92>>2]=0;H[d+80>>2]=0;H[d+84>>2]=2139095039;H[d+116>>2]=-1077342245;H[d+120>>2]=1343554297;H[d+108>>2]=1036831949;H[d+112>>2]=1070141403;H[d+100>>2]=0;H[d+104>>2]=0;H[d+96>>2]=1056964608;a=Ra[H[H[a>>2]+108>>2]](a,b,e,c+12|0,132224,144)|0;H[c+76>>2]=a;if(!a){Ra[H[H[c>>2]+16>>2]](c);c=0}Oa=g+16|0;Oa=h- -64|0;return c|0}function v_(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=0,z=O(0),A=O(0),B=O(0),C=O(0);f=Oa-256|0;Oa=f;g=L[d+8>>2];l=L[d>>2];h=L[d+4>>2];a:{if(!(l!=O(1)|h!=O(1)|g!=O(1))){G[f+16>>1]=0;H[f+12>>2]=e;H[f+4>>2]=2;H[f>>2]=128332;H[f+8>>2]=f- -64;h=L[c+8>>2];g=O(L[a+8>>2]-L[c+24>>2]);l=O(g+g);m=L[c>>2];g=O(L[a>>2]-L[c+16>>2]);i=O(g+g);g=O(L[a+4>>2]-L[c+20>>2]);j=O(g+g);k=L[c+4>>2];n=O(O(h*l)+O(O(m*i)+O(j*k)));g=L[c+12>>2];o=O(O(g*g)+O(-.5));p=O(O(h*n)+O(O(l*o)-O(g*O(O(m*j)-O(i*k)))));L[f+32>>2]=p;q=O(O(k*n)+O(O(j*o)-O(g*O(O(h*i)-O(l*m)))));L[f+28>>2]=q;h=O(O(m*n)+O(O(i*o)-O(g*O(O(k*l)-O(j*h)))));L[f+24>>2]=h;g=L[a+12>>2];L[f+20>>2]=g*g;L[f+224>>2]=p;L[f+220>>2]=q;L[f+216>>2]=h;H[f+184>>2]=0;H[f+176>>2]=1065353216;H[f+180>>2]=0;g=g>O(.0010000000474974513)?g:O(.0010000000474974513);L[f+168>>2]=g;L[f+164>>2]=g;L[f+160>>2]=g;s_(f+216|0,f+176|0,O(0),1,b,f,f+160|0);a=I[f+16|0];break a}i=L[d+12>>2];m=O(i+i);j=L[d+16>>2];k=O(j+j);v=O(O(1)-O(i*m));w=O(j*k);n=O(v-w);o=O(g*n);i=L[d+20>>2];x=O(m*i);r=L[d+24>>2];z=O(k*r);p=O(x+z);q=O(l*p);u=O(k*i);s=O(m*r);k=O(u-s);t=O(h*k);L[f+248>>2]=O(n*o)+O(O(p*q)+O(k*t));u=O(u+s);s=O(g*u);A=O(m*j);j=O(i+i);B=O(r*j);m=O(A-B);r=O(l*m);C=O(i*j);i=O(v-C);v=O(h*i);L[f+244>>2]=O(n*s)+O(O(p*r)+O(k*v));L[f+236>>2]=O(u*o)+O(O(m*q)+O(i*t));L[f+232>>2]=O(u*s)+O(O(m*r)+O(i*v));j=O(x-z);x=O(j*o);o=O(O(O(1)-w)-C);w=O(o*q);q=O(A+B);L[f+224>>2]=x+O(w+O(q*t));L[f+220>>2]=O(j*s)+O(O(o*r)+O(q*v));r=n;n=O(g*j);s=p;p=O(l*o);t=k;k=O(h*q);L[f+240>>2]=O(r*n)+O(O(s*p)+O(t*k));L[f+228>>2]=O(u*n)+O(O(m*p)+O(i*k));L[f+216>>2]=O(j*n)+O(O(o*p)+O(q*k));F[f+193|0]=O(O(l*h)*g)>2]=e;H[f+176>>2]=128376;H[f+184>>2]=f+216;F[f+192|0]=0;H[f+180>>2]=2;h=L[c+8>>2];p=L[a+8>>2];g=O(p-L[c+24>>2]);l=O(g+g);m=L[c>>2];q=L[a>>2];g=O(q-L[c+16>>2]);i=O(g+g);t=L[a+4>>2];g=O(t-L[c+20>>2]);j=O(g+g);k=L[c+4>>2];n=O(O(h*l)+O(O(m*i)+O(j*k)));g=L[c+12>>2];o=O(O(g*g)+O(-.5));L[f+208>>2]=O(h*n)+O(O(l*o)-O(g*O(O(m*j)-O(i*k))));L[f+204>>2]=O(k*n)+O(O(j*o)-O(g*O(O(h*i)-O(l*m))));L[f+200>>2]=O(m*n)+O(O(i*o)-O(g*O(O(k*l)-O(j*h))));g=L[a+12>>2];L[f+196>>2]=g*g;L[f+120>>2]=g;L[f+116>>2]=g;L[f+108>>2]=p;L[f+104>>2]=t;H[f+96>>2]=1065353216;H[f+80>>2]=1065353216;H[f+84>>2]=0;L[f+112>>2]=g;L[f+100>>2]=q;H[f+88>>2]=0;H[f+92>>2]=0;H[f+72>>2]=0;H[f+76>>2]=0;H[f+64>>2]=1065353216;H[f+68>>2]=0;dZ(f,f- -64|0,c,d);g=L[f+52>>2];h=L[f+56>>2];e=g>=h;a=L[f+48>>2]>=(g>h?g:h);d=a?2:e?2:1;c=N(d,12)+f|0;m=L[c>>2];i=L[c+4>>2];y=d<<2;d=f+48|0;g=L[y+d>>2];j=L[c+8>>2];y=a?0:e?1:2;c=N(y,12)+f|0;k=L[c>>2];n=L[c+4>>2];e=N(a,12)+f|0;o=L[e>>2];p=L[e+4>>2];h=L[(d|a<<2)>>2];q=L[e+8>>2];t=L[f+40>>2];u=L[f+44>>2];r=L[f+36>>2];l=L[d+(y<<2)>>2];s=O(l*L[c+8>>2]);L[f+152>>2]=s;L[f+168>>2]=u-s;n=O(l*n);L[f+148>>2]=n;L[f+164>>2]=t-n;l=O(l*k);L[f+144>>2]=l;L[f+160>>2]=r-l;L[f+136>>2]=O(O(h*O(P(q)))+O(g*O(P(j))))+O(.0010000000474974513);L[f+132>>2]=O(O(h*O(P(p)))+O(g*O(P(i))))+O(.0010000000474974513);L[f+128>>2]=O(O(h*O(P(o)))+O(g*O(P(m))))+O(.0010000000474974513);s_(f+160|0,f+144|0,O(2),1,b,f+176|0,f+128|0);a=I[f+192|0]}Oa=f+256|0;return(a&255)!=0|0}function BZ(a,b,c,d,e){var f=0,g=0,h=O(0),i=O(0),j=0,k=0,l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),F=O(0),G=O(0),I=O(0),J=0;f=Oa-144|0;Oa=f;p=L[b+16>>2];o=L[b>>2];q=O(p-o);B=L[b+36>>2];t=L[b+4>>2];v=O(B-t);C=L[b+32>>2];x=O(C-o);w=L[b+20>>2];y=O(w-t);l=O(O(q*v)-O(x*y));D=L[b+40>>2];u=L[b+8>>2];z=O(D-u);r=L[b+24>>2];A=O(r-u);i=O(O(y*z)-O(v*A));h=O(O(A*x)-O(z*q));E=O(O(1)/O(W(O(O(l*l)+O(O(i*i)+O(h*h))))));F=L[b+56>>2];m=O(F-u);G=L[b+48>>2];n=O(G-o);I=L[b+52>>2];s=O(I-t);a:{if(O(P(O(O(O(l*E)*m)+O(O(O(i*E)*n)+O(s*O(h*E))))))>2]=3;GU(a,b,c,d,e);break a}g=O(O(O(l*u)+O(O(i*o)+O(t*h)))*O(O(l*F)+O(O(i*G)+O(I*h))))>=O(-9.999999974752427e-7);H[f+128>>2]=g?-1:0;l=O(O(n*y)-O(q*s));i=O(O(s*A)-O(y*m));h=O(O(m*q)-O(A*n));l=O(O(O(l*u)+O(O(i*o)+O(t*h)))*O(O(l*D)+O(O(i*C)+O(B*h))));H[f+136>>2]=l>=O(-9.999999974752427e-7)?-1:0;i=O(O(x*s)-O(n*v));h=O(O(v*m)-O(s*z));m=O(O(z*n)-O(m*x));j=O(O(O(i*u)+O(O(h*o)+O(t*m)))*O(O(i*r)+O(O(h*p)+O(w*m))))>=O(-9.999999974752427e-7);H[f+132>>2]=j?-1:0;i=O(G-p);h=O(B-w);m=O(C-p);n=O(I-w);s=O(O(i*h)-O(m*n));v=O(s*r);q=n;n=O(D-r);r=O(F-r);h=O(O(q*n)-O(h*r));q=O(h*p);p=O(O(r*m)-O(n*i));o=O(O(v+O(q+O(w*p)))*O(O(s*u)+O(O(h*o)+O(t*p))));H[f+140>>2]=o>=O(-9.999999974752427e-7)?-1:0;if(!(g|j|(l>=O(-9.999999974752427e-7)|o>=O(-9.999999974752427e-7)))){H[a>>2]=0;H[a+4>>2]=0;H[a+8>>2]=0;H[a+12>>2]=0;break a}H[f+120>>2]=H[22155];g=H[22154];H[f+112>>2]=H[22153];H[f+116>>2]=g;CZ(f+96|0,b,f+128|0,f+112|0,e);J=H[f+112>>2];g=H[f+116>>2]<<4;e=g+b|0;j=H[e+4>>2];H[f+80>>2]=H[e>>2];H[f+84>>2]=j;j=H[e+12>>2];H[f+88>>2]=H[e+8>>2];H[f+92>>2]=j;j=H[f+120>>2]<<4;e=j+b|0;k=H[e+4>>2];H[f+64>>2]=H[e>>2];H[f+68>>2]=k;k=H[e+12>>2];H[f+72>>2]=H[e+8>>2];H[f+76>>2]=k;e=c+g|0;k=H[e+12>>2];H[f+56>>2]=H[e+8>>2];H[f+60>>2]=k;k=H[e+4>>2];H[f+48>>2]=H[e>>2];H[f+52>>2]=k;e=c+j|0;k=H[e+12>>2];H[f+40>>2]=H[e+8>>2];H[f+44>>2]=k;k=H[e+4>>2];H[f+32>>2]=H[e>>2];H[f+36>>2]=k;e=d+g|0;g=H[e+12>>2];H[f+24>>2]=H[e+8>>2];H[f+28>>2]=g;g=H[e+4>>2];H[f+16>>2]=H[e>>2];H[f+20>>2]=g;e=d+j|0;g=H[e+4>>2];H[f>>2]=H[e>>2];H[f+4>>2]=g;j=H[e+8>>2];k=H[e+12>>2];g=J<<4;e=g+b|0;J=H[e+4>>2];H[b>>2]=H[e>>2];H[b+4>>2]=J;H[f+8>>2]=j;H[f+12>>2]=k;j=H[e+12>>2];H[b+8>>2]=H[e+8>>2];H[b+12>>2]=j;e=H[f+92>>2];H[b+24>>2]=H[f+88>>2];H[b+28>>2]=e;e=H[f+84>>2];H[b+16>>2]=H[f+80>>2];H[b+20>>2]=e;e=H[f+68>>2];H[b+32>>2]=H[f+64>>2];H[b+36>>2]=e;e=H[f+76>>2];H[b+40>>2]=H[f+72>>2];H[b+44>>2]=e;b=c+g|0;e=H[b+4>>2];H[c>>2]=H[b>>2];H[c+4>>2]=e;e=H[b+12>>2];H[c+8>>2]=H[b+8>>2];H[c+12>>2]=e;b=H[f+60>>2];H[c+24>>2]=H[f+56>>2];H[c+28>>2]=b;b=H[f+52>>2];H[c+16>>2]=H[f+48>>2];H[c+20>>2]=b;b=H[f+36>>2];H[c+32>>2]=H[f+32>>2];H[c+36>>2]=b;b=H[f+44>>2];H[c+40>>2]=H[f+40>>2];H[c+44>>2]=b;b=d+g|0;c=H[b>>2];e=H[b+4>>2];g=H[b+12>>2];H[d+8>>2]=H[b+8>>2];H[d+12>>2]=g;H[d>>2]=c;H[d+4>>2]=e;b=H[f+28>>2];H[d+24>>2]=H[f+24>>2];H[d+28>>2]=b;b=H[f+20>>2];H[d+16>>2]=H[f+16>>2];H[d+20>>2]=b;b=H[f+12>>2];H[d+40>>2]=H[f+8>>2];H[d+44>>2]=b;b=H[f+4>>2];H[d+32>>2]=H[f>>2];H[d+36>>2]=b;b=H[f+108>>2];H[a+8>>2]=H[f+104>>2];H[a+12>>2]=b;b=H[f+100>>2];H[a>>2]=H[f+96>>2];H[a+4>>2]=b}Oa=f+144|0}function lM(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,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;n=Oa-48|0;Oa=n;b=H[a+40>>2];if(H[b+11896>>2]){g=H[a+32>>2];s=H[g+44>>2];k=H[g+36>>2];e=H[b+11892>>2];while(1){t=q<<2;i=H[t+e>>2]+c|0;a:{if(i>>>0>c>>>0){j=0;l=c;while(1){g=d;f=J[((l<<3)+s|0)+4>>1];b:{if(!f){break b}p=f+h|0;while(1){b=(h<<5)+k|0;c:{if(!J[b+22>>1]){f=f-1|0;break c}if((d|0)!=(h|0)){m=H[b+4>>2];e=(d<<5)+k|0;H[e>>2]=H[b>>2];H[e+4>>2]=m;m=H[b+28>>2];H[e+24>>2]=H[b+24>>2];H[e+28>>2]=m;m=H[b+20>>2];H[e+16>>2]=H[b+16>>2];H[e+20>>2]=m;m=H[b+12>>2];H[e+8>>2]=H[b+8>>2];H[e+12>>2]=m}d=d+1|0}h=h+1|0;if((p&65535)!=(h&65535)){continue}break}e=f&65535;if(!e){break b}p=(u<<3)+s|0;G[p+4>>1]=f;H[p>>2]=g;b=I[H[((g<<5)+k|0)+24>>2]];d:{if((b|0)!=5){break d}b=5;if(e>>>0<2){break d}f=e-1|0;m=f&3;e:{if(e-2>>>0<3){e=1;break e}v=f&-4;f=0;e=1;while(1){w=b;b=(e+g<<5)+k|0;b=I[H[b+120>>2]]==1?1:I[H[b+88>>2]]==1?1:I[H[b+56>>2]]==1?1:I[H[b+24>>2]]==1?1:w;e=e+4|0;f=f+4|0;if((v|0)!=(f|0)){continue}break}}f=0;if(!m){break d}while(1){b=I[H[((e+g<<5)+k|0)+24>>2]]==1?1:b;e=e+1|0;f=f+1|0;if((m|0)!=(f|0)){continue}break}}G[p+6>>1]=b&255;j=j+1|0;u=u+1|0}l=l+1|0;if((i|0)!=(l|0)){continue}break}b=H[a+40>>2];e=H[b+11892>>2];c=H[t+e>>2]+c|0;break a}j=0;c=i}H[(o<<2)+e>>2]=j;r=j+r|0;o=((j|0)!=0)+o|0;q=q+1|0;if(q>>>0>2]){continue}break}}H[b+11968>>2]=r;H[b+11896>>2]=o;c=H[H[a+36>>2]+4>>2];i=c&2147483647;f:{if(!i){d=0;H[b+12064>>2]=0;H[b+12052>>2]=0;break f}l=c&3;g=H[b+12144>>2];c=0;h=0;d=0;if(i-1>>>0>=3){i=i-l|0;f=0;while(1){e=I[(g+N(h|3,52)|0)+48|0];j=I[(g+N(h|2,52)|0)+48|0];k=I[(g+N(h|1,52)|0)+48|0];o=I[(g+N(h,52)|0)+48|0];d=d>>>0>>0?o:d;d=d>>>0>>0?k:d;d=d>>>0>>0?j:d;d=d>>>0>>0?e:d;h=h+4|0;f=f+4|0;if((i|0)!=(f|0)){continue}break}}if(l){while(1){i=I[(g+N(h,52)|0)+48|0];d=d>>>0>>0?i:d;h=h+1|0;c=c+1|0;if((l|0)!=(c|0)){continue}break}}H[b+12052>>2]=0;if((H[b+12056>>2]&2147483647)>>>0>>0){Cv(b+12048|0,d);b=H[a+40>>2]}H[b+12064>>2]=0;H[b+12052>>2]=d;if((H[b+12068>>2]&2147483647)>>>0>=d>>>0){break f}Cv(b+12060|0,d);b=H[a+40>>2]}H[b+12064>>2]=d;H[n+40>>2]=H[b+12048>>2];H[n+44>>2]=H[b+12060>>2];g:{if(H[b+11896>>2]){c=H[a+16>>2];c=Ra[H[H[c>>2]+4>>2]](c)|0;d=Ra[H[H[c>>2]+4>>2]](c)|0;c=H[a+40>>2];b=H[c+11896>>2];b=((b+r|0)-1>>>0)/(b>>>0)|0;h:{if(d>>>0>=2){b=b+7|0;if(b>>>0>15){break h}}b=H[a+44>>2];d=H[a+32>>2];g=H[a+36>>2];a=H[a+28>>2];GL(b,d,g,c,L[a+92>>2],H[a+80>>2],H[a+84>>2],n+8|0);break g}c=H[a+28>>2];H[c+100>>2]=0;H[c+104>>2]=0;H[c+116>>2]=0;H[c+120>>2]=0;H[c+108>>2]=0;H[c+112>>2]=0;c=b>>>3|0;b=c>>>0>d>>>0?d:c;g=yq(H[H[a+44>>2]+620>>2],N(b,48));e=0;while(1){l=H[a+36>>2];i=H[a+40>>2];f=H[a+28>>2];h=H[a+32>>2];d=H[a+44>>2];j=H[d+632>>2];k=H[d+636>>2];c=g+N(e,48)|0;H[c+24>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=j;H[c+12>>2]=k;H[c>>2]=118356;H[c+28>>2]=f;H[c+32>>2]=h;H[c+44>>2]=d;H[c+36>>2]=l;H[c+40>>2]=i;d=H[a+20>>2];H[c+24>>2]=1;H[c+20>>2]=d;if(d){Ra[H[H[d>>2]+16>>2]](d);H[c+16>>2]=H[H[c+20>>2]+16>>2];d=H[c>>2]}else{d=118356}Ra[H[d+20>>2]](c);e=e+1|0;if((b|0)!=(e|0)){continue}break}break g}c=H[a+44>>2];d=H[a+32>>2];g=H[a+36>>2];a=H[a+28>>2];GL(c,d,g,b,L[a+92>>2],H[a+80>>2],H[a+84>>2],n+8|0)}Oa=n+48|0}function f2(a,b,c,d,e,f,g){var h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),F=O(0),G=O(0),H=O(0),I=O(0),J=O(0),K=O(0);a:{if(g){E=L[c+20>>2];y=L[c+24>>2];s=L[e+24>>2];F=L[e+20>>2];z=L[f- -64>>2];A=L[f+60>>2];G=L[f+68>>2];H=L[c+16>>2];I=L[e+16>>2];i=L[c+12>>2];m=L[e+8>>2];l=L[f+52>>2];u=L[e+4>>2];k=L[f+48>>2];j=L[e+12>>2];h=L[f+56>>2];r=L[f+44>>2];n=L[e>>2];q=O(O(m*l)+O(O(u*k)+O(O(j*h)+O(r*n))));o=O(O(k*m)+O(O(O(h*n)-O(j*r))-O(u*l)));v=L[c>>2];w=L[c+4>>2];p=O(O(l*n)+O(O(O(h*u)-O(j*k))-O(m*r)));x=L[c+8>>2];t=O(O(r*u)+O(O(O(h*m)-O(j*l))-O(n*k)));B=O(O(O(O(i*q)-O(o*v))-O(w*p))-O(x*t));L[b+12>>2]=B;C=O(O(O(v*p)+O(O(i*t)+O(q*x)))-O(o*w));L[b+8>>2]=C;D=O(O(O(x*o)+O(O(i*p)+O(q*w)))-O(t*v));L[b+4>>2]=D;q=O(O(O(w*t)+O(O(i*o)+O(q*v)))-O(p*x));L[b>>2]=q;J=y;K=s;o=O(G*O(-2));p=O(A*O(-2));t=O(z*O(-2));z=O(O(l*o)+O(O(r*p)+O(k*t)));A=O(O(h*h)+O(-.5));y=O(O(l*z)+O(O(o*A)-O(h*O(O(r*t)-O(p*k)))));y=O(y+y);s=O(O(r*z)+O(O(p*A)-O(h*O(O(k*o)-O(t*l)))));s=O(s+s);h=O(O(k*z)+O(O(t*A)-O(h*O(O(l*p)-O(o*r)))));h=O(h+h);r=O(O(m*y)+O(O(n*s)+O(u*h)));o=O(O(j*j)+O(-.5));l=O(K+O(O(m*r)+O(O(y*o)+O(j*O(O(n*h)-O(s*u))))));l=O(l+l);k=O(I+O(O(n*r)+O(O(s*o)+O(j*O(O(u*y)-O(h*m))))));k=O(k+k);j=O(F+O(O(u*r)+O(O(h*o)+O(j*O(O(m*s)-O(y*n))))));j=O(j+j);h=O(O(x*l)+O(O(v*k)+O(w*j)));m=O(O(i*i)+O(-.5));L[b+24>>2]=J+O(O(x*h)+O(O(l*m)+O(i*O(O(v*j)-O(k*w)))));L[b+20>>2]=E+O(O(w*h)+O(O(j*m)+O(i*O(O(x*k)-O(l*v)))));L[b+16>>2]=H+O(O(v*h)+O(O(k*m)+O(i*O(O(w*l)-O(j*x)))));i=O(W(O(O(B*B)+O(O(C*C)+O(O(q*q)+O(D*D))))));if(i==O(0)){break a}i=O(O(1)/i);L[b+12>>2]=B*i;L[b+8>>2]=C*i;L[b+4>>2]=D*i;L[b>>2]=q*i;return}E=L[d+20>>2];F=L[d+24>>2];s=L[e+24>>2];G=L[e+20>>2];y=L[f+40>>2];z=L[f+32>>2];A=L[f+36>>2];H=L[d+16>>2];I=L[e+16>>2];i=L[d+12>>2];j=L[e+12>>2];h=L[f+28>>2];m=L[e>>2];l=L[f+16>>2];u=L[e+4>>2];k=L[f+20>>2];r=L[e+8>>2];n=L[f+24>>2];q=O(O(O(O(j*h)-O(m*l))-O(u*k))-O(r*n));o=O(O(O(u*n)+O(O(j*O(-l))-O(h*m)))-O(k*r));v=L[d>>2];w=L[d+4>>2];p=O(O(O(r*l)+O(O(j*O(-k))-O(h*u)))-O(n*m));x=L[d+8>>2];t=O(O(O(m*k)+O(O(j*O(-n))-O(h*r)))-O(l*u));B=O(O(O(O(i*q)-O(o*v))-O(w*p))-O(x*t));L[a+12>>2]=B;C=O(O(O(w*t)+O(O(i*o)+O(q*v)))-O(p*x));L[a>>2]=C;D=O(O(O(v*p)+O(O(i*t)+O(q*x)))-O(o*w));L[a+8>>2]=D;o=O(O(O(x*o)+O(O(i*p)+O(q*w)))-O(t*v));L[a+4>>2]=o;p=O(y*O(-2));t=O(z*O(-2));y=O(A*O(-2));z=O(O(n*p)+O(O(l*t)+O(k*y)));A=O(O(h*h)+O(-.5));q=O(O(O(n*z)+O(O(p*A)-O(h*O(O(l*y)-O(t*k)))))-s);q=O(q+q);s=O(O(O(l*z)+O(O(t*A)-O(h*O(O(k*p)-O(y*n)))))-I);s=O(s+s);h=O(O(O(k*z)+O(O(y*A)-O(h*O(O(n*t)-O(p*l)))))-G);h=O(h+h);l=O(O(O(O(-m)*s)-O(h*u))-O(r*q));p=O(O(j*j)+O(-.5));k=O(O(O(q*p)+O(j*O(O(u*s)-O(m*h))))-O(r*l));k=O(k+k);n=O(O(O(s*p)+O(j*O(O(r*h)-O(u*q))))-O(m*l));n=O(n+n);j=O(O(O(h*p)+O(j*O(O(m*q)-O(r*s))))-O(u*l));j=O(j+j);h=O(O(x*k)+O(O(v*n)+O(w*j)));m=O(O(i*i)+O(-.5));L[a+24>>2]=F+O(O(x*h)+O(O(k*m)+O(i*O(O(v*j)-O(n*w)))));L[a+20>>2]=E+O(O(w*h)+O(O(j*m)+O(i*O(O(x*n)-O(k*v)))));L[a+16>>2]=H+O(O(v*h)+O(O(n*m)+O(i*O(O(w*k)-O(j*x)))));i=O(W(O(O(B*B)+O(O(D*D)+O(O(C*C)+O(o*o))))));if(i==O(0)){break a}i=O(O(1)/i);L[a+12>>2]=B*i;L[a+8>>2]=D*i;L[a+4>>2]=o*i;L[a>>2]=C*i}}function dM(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,o=0,p=0,q=0,r=0,s=0;g=Oa+-64|0;Oa=g;b=H[a+40>>2];j=H[b+12144>>2];c=H[a+28>>2];d=H[c+8>>2];if(!(!(d&2147483647)|!(d&2147483646))){h=H[a+32>>2];i=H[c+88>>2];l=i+I[j+49|0]|0;b=i;k=1;while(1){i=i- -64|0;d=b- -64|0;m=I[(j+N(k,52)|0)+49|0];if(d+m>>>0>d>>>0){if(m&1){c=h+(d<<5)|0;f=H[c+4>>2];e=h+(l<<5)|0;H[e>>2]=H[c>>2];H[e+4>>2]=f;f=H[c+28>>2];H[e+24>>2]=H[c+24>>2];H[e+28>>2]=f;f=H[c+20>>2];H[e+16>>2]=H[c+16>>2];H[e+20>>2]=f;f=H[c+12>>2];H[e+8>>2]=H[c+8>>2];H[e+12>>2]=f;l=l+1|0;c=b+65|0}else{c=d}if((m|0)!=1){m=i+m|0;while(1){b=h+(c<<5)|0;f=H[b+4>>2];e=h+(l<<5)|0;H[e>>2]=H[b>>2];H[e+4>>2]=f;f=H[b+28>>2];H[e+24>>2]=H[b+24>>2];H[e+28>>2]=f;f=H[b+20>>2];H[e+16>>2]=H[b+16>>2];H[e+20>>2]=f;f=H[b+12>>2];H[e+8>>2]=H[b+8>>2];H[e+12>>2]=f;f=H[b+36>>2];H[e+32>>2]=H[b+32>>2];H[e+36>>2]=f;f=H[b+60>>2];H[e+56>>2]=H[b+56>>2];H[e+60>>2]=f;f=H[b+44>>2];H[e+40>>2]=H[b+40>>2];H[e+44>>2]=f;f=H[b+52>>2];H[e+48>>2]=H[b+48>>2];H[e+52>>2]=f;l=l+2|0;c=c+2|0;if((m|0)!=(c|0)){continue}break}}c=H[a+28>>2]}b=d;k=k+1|0;if(k>>>0<(H[c+8>>2]&2147483647)>>>0){continue}break}b=H[a+40>>2]}e=0;H[b+11896>>2]=0;i=H[b+11956>>2];H[g>>2]=0;gy(b+11892|0,1,g);c=H[a+40>>2];H[H[c+11892>>2]>>2]=0;d=H[a+36>>2];H[g+12>>2]=j;H[g+8>>2]=64;H[g>>2]=d;H[g+20>>2]=H[a+32>>2];H[g+16>>2]=H[c+12148>>2];d=H[a+28>>2];b=H[d+4>>2];H[g+24>>2]=i;H[g+4>>2]=b;H[g+28>>2]=H[d+56>>2];d=H[d+60>>2];H[g+44>>2]=0;H[g+32>>2]=d;F[g+56|0]=0;H[g+52>>2]=c+11916;H[g+48>>2]=c+11892;H[g+36>>2]=0;H[g+40>>2]=0;c=Ux(g);h=H[a+40>>2];H[h+12104>>2]=c;j=H[g+36>>2];H[h+11868>>2]=j;H[h+11876>>2]=H[g+40>>2];p=H[g+44>>2];H[h+11880>>2]=p;r=j+p|0;q=H[h+11956>>2];a:{if(!j){f=H[H[a+28>>2]- -64>>2];break a}s=I[g+56|0]?1:4;a=H[a+28>>2];m=H[a+56>>2];f=H[a- -64>>2];o=H[H[h+11892>>2]>>2];b=0;k=0;i=0;while(1){a=o-b|0;l=a>>>0>>0?a:s;b:{if(!l){c=0;break b}a=m+(b<<5)|0;d=J[a+22>>1];c:{d:{if(J[a+8>>1]!=65535|J[a+10>>1]!=65535){break d}e:{if((d|0)!=1){if((i|0)==-1|(d|0)!=2|l>>>0<=1){break d}break e}a=1;if((i|0)==-1){c=1;break c}c=1;if(l>>>0<2){break c}}c=1;f:{a=m+(b+1<<5)|0;g:{if((d|0)!=J[a+22>>1]|J[a+8>>1]!=65535|J[a+10>>1]!=65535){break g}a=l&65535;if(a>>>0<3){break f}c=2;n=m+(b+2<<5)|0;if((d|0)!=J[n+22>>1]|J[n+8>>1]!=65535|J[n+10>>1]!=65535){break g}if(a>>>0<4){break f}c=3;n=m+(b+3<<5)|0;if((d|0)!=J[n+22>>1]|J[n+8>>1]!=65535|J[n+10>>1]!=65535){break g}if(a>>>0<5){break f}c=4;a=m+(b+4<<5)|0;if((d|0)!=J[a+22>>1]){break g}c=(J[a+8>>1]&J[a+10>>1])!=65535?4:l}a=d;break c}a=d;c=l;break c}a=d;c=1}d=(e<<3)+f|0;G[d+6>>1]=a;G[d+4>>1]=c;H[d>>2]=b;k=k+1|0;e=e+1|0}b=(c&65535)+b|0;if(!((j|0)==(o|0)|(o|0)!=(b|0))){a=H[h+11892>>2];H[a+(i<<2)>>2]=k;i=i+1|0;o=H[a+(i<<2)>>2];k=0}if(b>>>0>>0){continue}break}if(!j){break a}H[H[h+11892>>2]+(i<<2)>>2]=k}H[h+11896>>2]=H[h+12104>>2];c=e;h:{if((q|0)==(r|0)){break h}a=q-r|0;d=a&1;i:{if((j|0)==((p^-1)+q|0)){b=0;break i}i=a&-2;b=0;k=0;while(1){a=(c<<3)+f|0;H[a+4>>2]=262145;H[a>>2]=b+j;H[a+12>>2]=262145;H[a+8>>2]=j+(b|1);b=b+2|0;c=c+2|0;k=k+2|0;if((i|0)!=(k|0)){continue}break}}if(!d){break h}a=(c<<3)+f|0;H[a+4>>2]=262145;H[a>>2]=b+j;c=c+1|0}H[h+12072>>2]=e;H[h+11968>>2]=c;H[h+12076>>2]=c-e;Oa=g- -64|0}function Z4(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=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0);c=Oa-176|0;Oa=c;H[c+60>>2]=a;H[c+56>>2]=a;h=H[e+12>>2];H[d+8>>2]=H[e+8>>2];H[d+12>>2]=h;h=H[e+4>>2];H[d>>2]=H[e>>2];H[d+4>>2]=h;$1(c+144|0,c+112|0,e,f,g);l=L[f+20>>2];m=L[f+16>>2];k=L[c+132>>2];q=L[c+128>>2];t=L[c+136>>2];L[b+8>>2]=t-L[f+24>>2];L[b+4>>2]=k-l;L[b>>2]=q-m;l=L[f+20>>2];m=L[f+16>>2];L[c+72>>2]=t-L[f+24>>2];L[c+68>>2]=k-l;L[c+64>>2]=q-m;l=L[g+20>>2];m=L[g+24>>2];n=L[g+16>>2];v=L[c+164>>2];L[c+92>>2]=v;L[c+108>>2]=t;L[c+104>>2]=k;w=L[c+168>>2];L[c+96>>2]=w;L[c+84>>2]=t-m;L[c+80>>2]=k-l;x=L[c+160>>2];L[c+88>>2]=x;L[c+100>>2]=q;L[c+76>>2]=q-n;o=L[c+124>>2];l=L[c+156>>2];r=L[c+120>>2];m=L[c+152>>2];s=L[c+112>>2];p=L[c+144>>2];u=L[c+116>>2];n=L[c+148>>2];if(O(O(o*l)+O(O(r*m)+O(O(s*p)+O(u*n))))>2]=o;r=O(-r);L[c+120>>2]=r;u=O(-u);L[c+116>>2]=u;s=O(-s);L[c+112>>2]=s}if(I[e+112|0]&2){k=O(O(m*r)+O(O(n*u)+O(O(l*o)+O(p*s))));q=O(O(s*n)+O(O(O(l*r)-O(o*m))-O(p*u)));t=O(O(r*p)+O(O(O(l*u)-O(o*n))-O(m*s)));v=O(0);p=O(O(u*m)+O(O(O(l*s)-O(o*p))-O(n*r)));a:{if(p==O(0)){m=O(1);n=O(0);l=O(0);break a}l=O(O(1)/O(W(O(O(k*k)+O(O(O(p*p)+O(0))+O(0))))));m=O(k*l);n=O(l*O(0));l=O(p*l)}o=O(n*q);r=O(t*n);L[c+52>>2]=o+O(r+O(O(k*m)+O(p*l)));L[c+40>>2]=o+O(O(O(p*m)-O(k*l))-r);k=O(k*O(-n));n=O(n*p);L[c+48>>2]=O(l*t)+O(O(k+O(q*m))-n);L[c+44>>2]=n+O(O(k+O(t*m))-O(q*l));b=H[e+104>>2];d=H[e+100>>2];L[c+16>>2]=L[e+92>>2]>O(0)|L[e+88>>2]>O(0)?v:L[e+96>>2];H[c+8>>2]=d;H[c+12>>2]=b;b:{if(!a2(c+8|0,c+40|0,c+24|0,c+20|0)){m=L[c+152>>2];n=L[c+148>>2];p=L[c+144>>2];l=L[c+156>>2];break b}H[c+60>>2]=a+80;m=L[c+152>>2];k=L[c+32>>2];l=L[c+156>>2];p=L[c+144>>2];o=L[c+28>>2];n=L[c+148>>2];q=L[c+24>>2];r=L[c+20>>2];H[a+40>>2]=0;H[a+32>>2]=0;H[a+36>>2]=0;H[a+8>>2]=0;H[a>>2]=0;H[a+4>>2]=0;G[a+78>>1]=0;L[a+12>>2]=r;b=J[a+76>>1];d=b|64;G[a+76>>1]=d;k=O(k+k);q=O(q+q);o=O(o+o);s=O(O(m*k)+O(O(p*q)+O(n*o)));u=O(O(l*l)+O(-.5));t=O(O(m*s)+O(O(k*u)+O(l*O(O(p*o)-O(q*n)))));L[a+56>>2]=t;v=O(O(n*s)+O(O(o*u)+O(l*O(O(m*q)-O(k*p)))));L[a+52>>2]=v;k=O(O(p*s)+O(O(q*u)+O(l*O(O(n*k)-O(o*m)))));L[a+48>>2]=k;L[a+24>>2]=t;L[a+20>>2]=v;L[a+16>>2]=k;k=L[e+88>>2];c:{if(L[e+92>>2]>O(0)|k>O(0)){L[a+64>>2]=k;L[a+68>>2]=L[e+92>>2];b=b|81;break c}G[a+78>>1]=2049;L[a+64>>2]=L[e+80>>2];L[a+68>>2]=L[e+84>>2];b=d|(r>O(0)?24:16);if(!(L[e+80>>2]>O(0))){break c}b=b|4}H[a+44>>2]=0;G[a+76>>1]=b}w=L[c+168>>2];t=L[c+136>>2];v=L[c+164>>2];x=L[c+160>>2];q=L[c+128>>2];k=L[c+132>>2]}o=O(t-w);o=O(o+o);q=O(q-x);q=O(q+q);k=O(k-v);k=O(k+k);r=O(O(m*o)+O(O(p*q)+O(k*n)));s=O(O(l*l)+O(-.5));L[c+16>>2]=O(m*r)+O(O(o*s)-O(l*O(O(p*k)-O(q*n))));L[c+12>>2]=O(n*r)+O(O(k*s)-O(l*O(O(m*q)-O(o*p))));L[c+8>>2]=O(p*r)+O(O(q*s)-O(l*O(O(n*o)-O(k*m))));d2(c+56|0,c+144|0,c+112|0,c+8|0,7,0,c+40|0,c+24|0);l=L[f+16>>2];m=L[f+20>>2];n=L[c+40>>2];p=L[c+44>>2];L[i+8>>2]=L[c+48>>2]+L[f+24>>2];L[i+4>>2]=p+m;L[i>>2]=n+l;l=L[g+16>>2];m=L[g+20>>2];n=L[c+24>>2];p=L[c+28>>2];L[j+8>>2]=L[c+32>>2]+L[g+24>>2];L[j+4>>2]=p+m;L[j>>2]=n+l;Oa=c+176|0;return(H[c+60>>2]-H[c+56>>2]|0)/80|0}function i$(a,b,c,d,e,f){var g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=0,q=0,r=0,s=0,t=0,u=O(0),w=O(0),y=O(0),z=O(0),A=O(0),D=O(0),E=O(0),F=O(0),G=O(0),I=O(0),J=0,K=0,M=O(0),P=O(0),Q=O(0),R=O(0),S=0,T=O(0),U=O(0),V=0,W=O(0),X=O(0),Y=O(0),Z=O(0),_=O(0),$=O(0),aa=O(0),ba=O(0),ca=O(0),da=O(0),ea=O(0),fa=O(0);q=Oa-528|0;Oa=q;p=H[a+68>>2];r=p-1|0;a:{if((r|0)<0){break a}s=q+16|4;if(r>>>0>=3){V=p&-4;while(1){t=K<<2;J=N(r,112);H[t+s>>2]=J;H[(t|4)+s>>2]=J-112;H[(t|8)+s>>2]=J-224;H[(t|12)+s>>2]=J-336;r=r-4|0;K=K+4|0;S=S+4|0;if((S|0)!=(V|0)){continue}break}}J=p&3;if(J){t=0;while(1){H[(K<<2)+s>>2]=N(r,112);r=r-1|0;K=K+1|0;t=t+1|0;if((J|0)!=(t|0)){continue}break}}if(!p){break a}g=L[c+8>>2];m=O(-g);g=g>m?g:m;g=(x(2,(B(g>O(9.999999717180685e-10)?g:O(9.999999717180685e-10)),v(2))|H[c+8>>2]&-2147483648),C());m=O(O(1)/g);m=O(m*O(O(2)-O(m*g)));u=O(O(0)-O(L[b+8>>2]*m));g=L[c+4>>2];n=O(-g);g=g>n?g:n;g=(x(2,(B(g>O(9.999999717180685e-10)?g:O(9.999999717180685e-10)),v(2))|H[c+4>>2]&-2147483648),C());n=O(O(1)/g);n=O(n*O(O(2)-O(n*g)));w=O(O(0)-O(L[b+4>>2]*n));g=L[c>>2];o=O(-g);g=g>o?g:o;g=(x(2,(B(g>O(9.999999717180685e-10)?g:O(9.999999717180685e-10)),v(2))|H[c>>2]&-2147483648),C());o=O(O(1)/g);o=O(o*O(O(2)-O(o*g)));y=O(O(0)-O(L[b>>2]*o));z=O(L[e+8>>2]+O(1.0000000116860974e-7));A=O(L[e+4>>2]+O(1.0000000116860974e-7));D=O(L[e>>2]+O(1.0000000116860974e-7));b=H[a+88>>2];while(1){c=(q+16|0)+(p<<2)|0;a=H[c>>2];b:{if(a&1){H[q+12>>2]=a-1;L[q+8>>2]=f;if(!(Ra[H[H[d>>2]>>2]](d,1,q+12|0,q+8|0)|0)){break a}g=L[q+8>>2];if(g!=f){f=g}p=p-1|0;break b}a=a+b|0;W=L[a+44>>2];X=L[a+92>>2];T=L[a+60>>2];U=L[a+12>>2];Y=L[a+28>>2];Z=L[a+76>>2];_=L[a+40>>2];$=L[a+88>>2];E=L[a+56>>2];M=L[a+8>>2];aa=L[a+24>>2];ba=L[a+72>>2];ca=L[a+36>>2];da=L[a+84>>2];F=L[a+52>>2];P=L[a+4>>2];ea=L[a+20>>2];fa=L[a+68>>2];i=L[a+32>>2];j=L[a+80>>2];G=L[a>>2];Q=L[a+48>>2];k=L[a+16>>2];l=L[a+64>>2];H[c>>2]=H[a+96>>2];g=O(y+O(o*O(G-D)));h=O(y+O(o*O(D+Q)));I=gR?I:R;i=O(u+O(m*O(i-z)));j=O(u+O(m*O(z+j)));R=iR?I:R;g=g>h?g:h;h=k>l?k:l;g=gj?i:j;g=gg|(gQ|f>2]=H[a+100>>2];g=O(y+O(o*O(P-D)));h=O(y+O(o*O(D+F)));i=gj?i:j;i=O(u+O(m*O(ca-z)));j=O(u+O(m*O(z+da)));Q=iQ?G:Q;g=g>h?g:h;h=k>l?k:l;g=gj?i:j;g=gg^-1)&(!(g>2]=H[a+104>>2];g=O(y+O(o*O(M-D)));h=O(y+O(o*O(D+E)));i=gj?i:j;i=O(u+O(m*O(_-z)));j=O(u+O(m*O(z+$)));P=iP?F:P;g=g>h?g:h;h=k>l?k:l;g=gj?i:j;g=gg^-1)&(!(g>2]=H[a+108>>2];g=O(y+O(o*O(U-D)));h=O(y+O(o*O(D+T)));i=gj?i:j;i=O(u+O(m*O(W-z)));j=O(u+O(m*O(z+X)));M=iM?E:M;g=g>h?g:h;h=k>l?k:l;g=gj?i:j;g=gg^-1)&(!(g>2];h=L[b+8>>2];f=L[b>>2];c=L[b+4>>2];d=O(O(1)/O(W(O(O(g*g)+O(O(h*h)+O(O(f*f)+O(c*c)))))));i=O(g*d);L[e+44>>2]=i;j=O(h*d);L[e+40>>2]=j;c=O(c*d);L[e+36>>2]=c;f=O(f*d);L[e+32>>2]=f;d=L[b+16>>2];L[e+48>>2]=d;g=L[b+20>>2];L[e+52>>2]=g;h=L[b+24>>2];L[e+56>>2]=h;b=H[a+316>>2]&1024?H[a+56>>2]+144|0:a+112|0;l=L[b+8>>2];m=L[b+4>>2];p=L[b+12>>2];q=L[b>>2];o=L[b+24>>2];u=L[b+20>>2];z=L[b+16>>2];bi(a,e+32|0);d=O(z-d);d=O(d+d);g=O(u-g);g=O(g+g);h=O(o-h);h=O(h+h);o=O(O(O(O(-f)*d)-O(g*c))-O(j*h));u=O(O(i*i)+O(-.5));z=O(O(O(h*u)+O(i*O(O(c*d)-O(f*g))))-O(j*o));B=O(O(O(g*u)+O(i*O(O(f*h)-O(j*d))))-O(c*o));u=O(O(O(d*u)+O(i*O(O(j*g)-O(c*h))))-O(f*o));d=O(O(j*l)+O(O(c*m)+O(O(i*p)+O(f*q))));g=O(O(q*c)+O(O(O(i*l)-O(p*j))-O(f*m)));h=O(O(l*f)+O(O(O(i*m)-O(p*c))-O(j*q)));i=O(O(m*j)+O(O(O(i*q)-O(p*f))-O(c*l)));b=H[a+324>>2];a:{if(!b){j=O(O(d*d)+O(-.5));break a}k=Ra[H[H[b>>2]+48>>2]](b)|0;b=H[k+8>>2];v=H[k+4>>2];n=v&2?b:k+16|0;c=L[n+36>>2];f=L[n+32>>2];l=L[n+40>>2];m=L[n+28>>2];j=L[n+52>>2];p=O(j+j);j=L[n+44>>2];q=O(j+j);j=L[n+48>>2];o=O(j+j);r=O(O(g*p)+O(O(i*q)+O(h*o)));j=O(O(d*d)+O(-.5));s=O(z+O(O(g*r)+O(O(p*j)+O(d*O(O(i*o)-O(q*h))))));L[e+24>>2]=s;t=O(B+O(O(h*r)+O(O(o*j)+O(d*O(O(g*q)-O(p*i))))));L[e+20>>2]=t;w=O(O(O(O(d*l)-O(m*i))-O(h*f))-O(g*c));L[e+12>>2]=w;x=O(O(O(i*f)+O(O(d*c)+O(g*l)))-O(m*h));L[e+8>>2]=x;y=O(O(O(g*m)+O(O(d*f)+O(h*l)))-O(c*i));L[e+4>>2]=y;c=O(O(O(h*c)+O(O(d*m)+O(i*l)))-O(f*g));L[e>>2]=c;f=O(u+O(O(i*r)+O(O(q*j)+O(d*O(O(h*p)-O(o*g))))));L[e+16>>2]=f;b:{c:{switch((v>>>30|0)-2|0){case 0:if(I[H[k>>2]+4785|0]){break b}break;case 1:break b;default:break c}}cE(k+12|0,e);break a}if(!b){b=Tt(H[k>>2],v>>>24&15);H[k+8>>2]=b}L[b+52>>2]=s;L[b+48>>2]=t;L[b+44>>2]=f;L[b+40>>2]=w;L[b+36>>2]=x;L[b+32>>2]=y;L[b+28>>2]=c;$t(H[k>>2],k);H[k+4>>2]=H[k+4>>2]|2}p=O(-h);q=O(-i);o=O(-g);if(H[a+356>>2]){v=0;while(1){b=H[H[a+352>>2]+(v<<2)>>2];k=Ra[H[H[b>>2]+252>>2]](b)|0;b=H[k+16>>2];A=H[k+12>>2];n=A&1?b:k+24|0;r=L[n+24>>2];s=L[n+20>>2];t=L[n+16>>2];c=L[n+8>>2];f=L[n+4>>2];l=L[n+12>>2];m=L[n>>2];w=O(O(o*c)+O(O(p*f)+O(O(d*l)+O(m*q))));L[e+12>>2]=w;x=O(O(O(i*f)+O(O(d*c)+O(g*l)))-O(m*h));L[e+8>>2]=x;y=O(O(O(g*m)+O(O(d*f)+O(h*l)))-O(c*i));L[e+4>>2]=y;m=O(O(O(h*c)+O(O(d*m)+O(i*l)))-O(f*g));L[e>>2]=m;c=O(r+r);f=O(t+t);l=O(s+s);r=O(O(g*c)+O(O(i*f)+O(h*l)));s=O(z+O(O(g*r)+O(O(c*j)+O(d*O(O(i*l)+O(f*p))))));L[e+24>>2]=s;t=O(B+O(O(h*r)+O(O(l*j)+O(d*O(O(g*f)+O(c*q))))));L[e+20>>2]=t;c=O(u+O(O(i*r)+O(O(f*j)+O(d*O(O(h*c)+O(l*o))))));L[e+16>>2]=c;n=k+8|0;d:{e:{f:{switch((A>>>30|0)-2|0){case 0:if(I[H[n>>2]+4785|0]){break e}break;case 1:break e;default:break f}}bE(k+20|0,e);break d}if(!b){b=Tt(H[k+8>>2],A>>>24&15);H[k+16>>2]=b;s=L[e+24>>2];t=L[e+20>>2];w=L[e+12>>2];x=L[e+8>>2];y=L[e+4>>2];m=L[e>>2];c=L[e+16>>2]}L[b+24>>2]=s;L[b+20>>2]=t;L[b+16>>2]=c;L[b+12>>2]=w;L[b+8>>2]=x;L[b+4>>2]=y;L[b>>2]=m;$t(H[k+8>>2],n);H[k+12>>2]=H[k+12>>2]|1}v=v+1|0;if(v>>>0>2]){continue}break}}Oa=e- -64|0}function WT(a,b){var c=0,d=0,e=0,f=0,g=0,h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=0,p=0,q=O(0),r=O(0),s=O(0),t=O(0),u=O(0);c=Oa-48|0;Oa=c;k=L[a+84>>2];n=L[a+68>>2];q=L[a+52>>2];m=L[a+88>>2];r=L[a+72>>2];s=L[a+40>>2];t=L[a+56>>2];u=L[a+36>>2];l=L[b>>2];i=L[b+4>>2];j=L[b+8>>2];h=O(O(O(O(l*L[a+44>>2])+O(i*L[a+60>>2]))+O(j*L[a+76>>2]))+L[a+92>>2]);L[b+8>>2]=h;m=O(m+O(O(O(l*s)+O(i*t))+O(j*r)));L[b+4>>2]=m;l=O(k+O(O(O(l*u)+O(i*q))+O(j*n)));L[b>>2]=l;d=H[a+32>>2]+1|0;H[a+32>>2]=d;a:{b:{c:{d:{e:{f:{switch(H[a>>2]){case 0:d=H[a+100>>2];L[c+8>>2]=h;L[c+4>>2]=m;L[c>>2]=l;g=H[a+4>>2];H[c+12>>2]=g;f=H[d+8>>2];if(f>>>0>=(H[d+12>>2]&2147483647)>>>0){sq(d+4|0,c);break e}e=H[d+4>>2]+(f<<4)|0;H[e+12>>2]=g;L[e+8>>2]=h;L[e+4>>2]=m;L[e>>2]=l;H[d+8>>2]=f+1;break e;case 1:if((d|0)!=2){break d}e=H[a+100>>2];i=L[a+8>>2];L[c>>2]=i;j=L[a+12>>2];L[c+4>>2]=j;k=L[a+16>>2];L[c+8>>2]=k;f=H[a+4>>2];L[c+24>>2]=h;L[c+20>>2]=m;H[c+28>>2]=f;L[c+16>>2]=l;H[c+12>>2]=f;g=H[e+20>>2];if(g>>>0<(H[e+24>>2]&2147483647)>>>0){break c}tq(e+16|0,c);break b;case 2:if(d>>>0<2){break a}e=H[a+100>>2];i=L[a+8>>2];L[c>>2]=i;j=L[a+12>>2];L[c+4>>2]=j;k=L[a+16>>2];L[c+8>>2]=k;f=H[a+4>>2];L[c+24>>2]=h;L[c+20>>2]=m;H[c+28>>2]=f;L[c+16>>2]=l;H[c+12>>2]=f;g=H[e+20>>2];if(g>>>0>=(H[e+24>>2]&2147483647)>>>0){tq(e+16|0,c);break e}d=H[e+16>>2]+(g<<5)|0;H[d+12>>2]=f;L[d+8>>2]=k;L[d+4>>2]=j;L[d>>2]=i;L[d+16>>2]=L[c+16>>2];L[d+20>>2]=L[c+20>>2];h=L[c+24>>2];H[d+28>>2]=f;L[d+24>>2]=h;H[e+20>>2]=g+1;break e;case 3:if((d|0)!=3){break d}e=H[a+100>>2];i=L[a+20>>2];L[c>>2]=i;j=L[a+24>>2];L[c+4>>2]=j;k=L[a+28>>2];L[c+8>>2]=k;f=H[a+4>>2];H[c+12>>2]=f;L[c+16>>2]=L[a+8>>2];L[c+20>>2]=L[a+12>>2];n=L[a+16>>2];L[c+40>>2]=h;L[c+36>>2]=m;L[c+24>>2]=n;H[c+44>>2]=f;L[c+32>>2]=l;H[c+28>>2]=f;g=H[e+32>>2];if(g>>>0>=(H[e+36>>2]&2147483647)>>>0){Wr(e+28|0,c);break b}d=H[e+28>>2]+N(g,48)|0;H[d+12>>2]=f;L[d+8>>2]=k;L[d+4>>2]=j;L[d>>2]=i;L[d+16>>2]=L[c+16>>2];L[d+20>>2]=L[c+20>>2];h=L[c+24>>2];H[d+28>>2]=f;L[d+24>>2]=h;L[d+32>>2]=L[c+32>>2];L[d+36>>2]=L[c+36>>2];h=L[c+40>>2];H[d+44>>2]=f;L[d+40>>2]=h;H[e+32>>2]=g+1;break b;case 4:break f;default:break d}}if(d>>>0<3){break d}e=H[a+100>>2];g=a+8|0;o=a+20|0;p=d&1;d=p?g:o;i=L[d>>2];L[c>>2]=i;j=L[d+4>>2];L[c+4>>2]=j;k=L[d+8>>2];L[c+8>>2]=k;f=H[a+4>>2];H[c+12>>2]=f;d=p?o:g;L[c+16>>2]=L[d>>2];L[c+20>>2]=L[d+4>>2];n=L[d+8>>2];L[c+40>>2]=h;L[c+36>>2]=m;L[c+24>>2]=n;H[c+44>>2]=f;L[c+32>>2]=l;H[c+28>>2]=f;g=H[e+32>>2];if(g>>>0>=(H[e+36>>2]&2147483647)>>>0){Wr(e+28|0,c);break e}d=H[e+28>>2]+N(g,48)|0;H[d+12>>2]=f;L[d+8>>2]=k;L[d+4>>2]=j;L[d>>2]=i;L[d+16>>2]=L[c+16>>2];L[d+20>>2]=L[c+20>>2];h=L[c+24>>2];H[d+28>>2]=f;L[d+24>>2]=h;L[d+32>>2]=L[c+32>>2];L[d+36>>2]=L[c+36>>2];h=L[c+40>>2];H[d+44>>2]=f;L[d+40>>2]=h;H[e+32>>2]=g+1}d=H[a+32>>2]}if(d>>>0<2){break a}L[a+20>>2]=L[a+8>>2];d=H[a+16>>2];H[a+24>>2]=H[a+12>>2];H[a+28>>2]=d;break a}d=H[e+16>>2]+(g<<5)|0;H[d+12>>2]=f;L[d+8>>2]=k;L[d+4>>2]=j;L[d>>2]=i;L[d+16>>2]=L[c+16>>2];L[d+20>>2]=L[c+20>>2];h=L[c+24>>2];H[d+28>>2]=f;L[d+24>>2]=h;H[e+20>>2]=g+1}H[a+32>>2]=0}L[a+8>>2]=L[b>>2];L[a+12>>2]=L[b+4>>2];L[a+16>>2]=L[b+8>>2];Oa=c+48|0;return a}function Ie(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=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=0,s=0,t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=0,z=0,A=0,B=0,C=0,D=0,E=0;h=Oa+-64|0;Oa=h;j=L[f+8>>2];k=L[c+8>>2];r=H[f>>2];f=H[f+4>>2];s=H[c+4>>2];c=H[c>>2];L[h+32>>2]=L[d>>2];L[h+36>>2]=L[d+4>>2];L[h+40>>2]=L[d+8>>2];m=L[d+12>>2];L[h+56>>2]=k;H[h+48>>2]=c;H[h+52>>2]=s;L[h+44>>2]=m;L[h>>2]=L[g>>2];L[h+4>>2]=L[g+4>>2];L[h+8>>2]=L[g+8>>2];k=L[g+12>>2];L[h+24>>2]=j;H[h+16>>2]=r;H[h+20>>2]=f;L[h+12>>2]=k;g=Oa-16|0;Oa=g;c=H[33808];d=c+12|0;c=(A=d,B=84,C=Ra[H[H[c>>2]+20>>2]](c)|0?23886:55639,D=5361,E=47,z=H[H[d>>2]+8>>2],Ra[z](A|0,B|0,C|0,D|0,E|0)|0);Ra[H[H[a>>2]+20>>2]](a)|0;G[g+8>>1]=3;f=Oa-32|0;Oa=f;G[c+6>>1]=J[g+8>>1];G[c+4>>1]=256;H[c+76>>2]=0;H[c+16>>2]=0;H[c+12>>2]=133420;H[c>>2]=133216;H[c+8>>2]=0;d=H[33808];d=Ra[H[H[d+12>>2]+8>>2]](d+12|0,128,20591,14087,454)|0;j=L[h+44>>2];k=L[h+40>>2];m=L[h+32>>2];i=L[h+36>>2];r=H[h+48>>2];s=H[h+52>>2];L[c+44>>2]=L[h+56>>2];H[c+36>>2]=r;H[c+40>>2]=s;l=i;i=O(O(1)/O(W(O(O(j*j)+O(O(k*k)+O(O(m*m)+O(i*i)))))));L[c+24>>2]=l*i;L[c+28>>2]=k*i;L[c+32>>2]=j*i;L[c+20>>2]=m*i;j=L[h+12>>2];k=L[h+8>>2];m=L[h>>2];i=L[h+4>>2];r=H[h+16>>2];s=H[h+20>>2];L[c+72>>2]=L[h+24>>2];y=c- -64|0;H[y>>2]=r;H[y+4>>2]=s;l=i;i=O(O(1)/O(W(O(O(j*j)+O(O(k*k)+O(O(m*m)+O(i*i)))))));L[c+52>>2]=l*i;L[c+56>>2]=k*i;L[c+60>>2]=j*i;L[c+48>>2]=m*i;u1(f,b);q=L[h+52>>2];t=L[h+56>>2];u=L[h+48>>2];v=L[f+20>>2];w=L[f+24>>2];x=L[f+16>>2];k=L[f+8>>2];l=L[h+40>>2];m=L[f+4>>2];n=L[h+36>>2];j=L[f+12>>2];o=L[h+44>>2];i=L[f>>2];p=L[h+32>>2];L[d+28>>2]=O(k*l)+O(O(m*n)+O(O(j*o)+O(i*p)));L[d+24>>2]=O(p*m)+O(O(O(j*l)-O(o*k))-O(i*n));L[d+20>>2]=O(l*i)+O(O(O(j*n)-O(o*m))-O(k*p));L[d+16>>2]=O(n*k)+O(O(O(j*p)-O(o*i))-O(m*l));l=O(u-x);l=O(l+l);n=O(q-v);n=O(n+n);o=O(t-w);o=O(o+o);p=O(O(O(O(-i)*l)-O(n*m))-O(k*o));q=O(O(j*j)+O(-.5));L[d+40>>2]=O(O(o*q)+O(j*O(O(m*l)-O(i*n))))-O(k*p);L[d+36>>2]=O(O(n*q)+O(j*O(O(i*o)-O(k*l))))-O(m*p);L[d+32>>2]=O(O(l*q)+O(j*O(O(k*n)-O(m*o))))-O(i*p);u1(f,e);q=L[h+20>>2];t=L[h+24>>2];u=L[h+16>>2];v=L[f+20>>2];w=L[f+24>>2];x=L[f+16>>2];k=L[f+8>>2];l=L[h+8>>2];m=L[f+4>>2];n=L[h+4>>2];j=L[f+12>>2];o=L[h+12>>2];i=L[f>>2];p=L[h>>2];L[d+56>>2]=O(k*l)+O(O(m*n)+O(O(j*o)+O(i*p)));L[d+52>>2]=O(p*m)+O(O(O(j*l)-O(o*k))-O(i*n));L[d+48>>2]=O(l*i)+O(O(O(j*n)-O(o*m))-O(k*p));L[d+44>>2]=O(n*k)+O(O(O(j*p)-O(o*i))-O(m*l));l=O(u-x);l=O(l+l);n=O(q-v);n=O(n+n);o=O(t-w);o=O(o+o);p=O(O(O(O(-i)*l)-O(n*m))-O(k*o));q=O(O(j*j)+O(-.5));L[d+68>>2]=O(O(o*q)+O(j*O(O(m*l)-O(i*n))))-O(k*p);L[d+64>>2]=O(O(n*q)+O(j*O(O(i*o)-O(k*l))))-O(m*p);L[d+60>>2]=O(O(l*q)+O(j*O(O(k*n)-O(m*o))))-O(i*p);H[d+8>>2]=1065353216;H[d+12>>2]=1065353216;H[d>>2]=1065353216;H[d+4>>2]=1065353216;H[c+80>>2]=d;Oa=f+32|0;H[c+12>>2]=133112;H[c>>2]=132900;d=H[c+80>>2];G[d+112>>1]=0;H[d+80>>2]=0;H[d+84>>2]=1056964608;H[d+96>>2]=1036831949;H[d+100>>2]=1070141403;H[d+88>>2]=0;H[d+92>>2]=0;H[d+104>>2]=1070141403;H[d+108>>2]=1343554297;a=Ra[H[H[a>>2]+108>>2]](a,b,e,c+12|0,132876,128)|0;H[c+76>>2]=a;if(!a){Ra[H[H[c>>2]+16>>2]](c);c=0}Oa=g+16|0;Oa=h- -64|0;return c|0}function FV(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=0,w=O(0),x=O(0),y=O(0),z=O(0),A=0,C=0,D=0,E=O(0),F=O(0),G=O(0),K=O(0),M=0,Q=O(0);e=Oa-96|0;Oa=e;a=H[c+32>>2];m=L[b+8>>2];n=L[b+4>>2];l=L[b+12>>2];k=L[b>>2];f=L[d+8>>2];o=O(L[d+24>>2]*O(-2));i=L[d>>2];p=O(L[d+16>>2]*O(-2));q=O(L[d+20>>2]*O(-2));h=L[d+4>>2];s=O(O(f*o)+O(O(i*p)+O(q*h)));g=L[b+16>>2];r=O(g+g);g=L[b+20>>2];w=O(g+g);g=L[b+24>>2];x=O(g+g);y=O(O(O(O(-i)*r)-O(w*h))-O(f*x));g=L[d+12>>2];j=O(O(g*g)+O(-.5));L[e+48>>2]=O(O(f*s)+O(O(o*j)-O(g*O(O(i*q)-O(p*h)))))+O(O(O(x*j)+O(g*O(O(h*r)-O(i*w))))-O(f*y));L[e+44>>2]=O(O(h*s)+O(O(q*j)-O(g*O(O(f*p)-O(o*i)))))+O(O(O(w*j)+O(g*O(O(i*x)-O(f*r))))-O(h*y));L[e+36>>2]=O(f*m)+O(O(h*n)+O(O(g*l)+O(i*k)));L[e+32>>2]=O(k*h)+O(O(O(g*m)-O(l*f))-O(i*n));L[e+28>>2]=O(m*i)+O(O(O(g*n)-O(l*h))-O(f*k));L[e+24>>2]=O(n*f)+O(O(O(g*k)-O(l*i))-O(h*m));L[e+40>>2]=O(O(i*s)+O(O(p*j)-O(g*O(O(h*o)-O(q*f)))))+O(O(O(r*j)+O(g*O(O(f*w)-O(h*x))))-O(i*y));xU(e+8|0,e+24|0);l=L[c+16>>2];i=O(l+l);f=L[c+24>>2];p=O(i*f);h=L[c+20>>2];k=O(h+h);o=L[c+28>>2];q=O(k*o);g=O(p+q);s=L[c+4>>2];j=O(g*s);z=O(k*f);F=O(i*o);m=O(z-F);r=L[c+8>>2];n=O(m*r);G=O(O(1)-O(l*i));t=O(h*k);l=O(G-t);w=L[c+12>>2];k=O(l*w);x=L[e+16>>2];Q=O(O(O(O(g*j)+O(m*n))+O(l*k))*x);y=L[e+8>>2];E=O(O(1)-t);t=O(f+f);K=O(f*t);f=O(E-K);i=O(i*h);h=O(t*o);o=O(i+h);p=O(p-q);E=O(y*O(O(O(f*j)+O(o*n))+O(p*k)));t=L[e+12>>2];q=O(i-h);h=O(q*j);j=O(G-K);h=O(h+O(j*n));n=O(z+F);i=O(Q+O(E+O(t*O(h+O(n*k)))));L[e+88>>2]=i;h=O(s*q);k=O(j*r);z=O(n*w);h=O(O(x*O(O(O(g*h)+O(m*k))+O(l*z)))+O(O(y*O(O(O(f*h)+O(o*k))+O(p*z)))+O(t*O(O(O(q*h)+O(j*k))+O(n*z)))));L[e+84>>2]=h;k=g;g=O(s*f);s=m;m=O(o*r);r=l;l=O(p*w);g=O(O(x*O(O(O(k*g)+O(s*m))+O(r*l)))+O(O(y*O(O(O(f*g)+O(o*m))+O(p*l)))+O(t*O(O(O(q*g)+O(j*m))+O(n*l)))));L[e+80>>2]=g;c=H[a+56>>2]+N(I[a+55|0],20)|0;b=H[a+60>>2];a:{if(!b){a=I[a+54|0];b:{if(!(a&1)){f=O(3.4028234663852886e38);b=a;break b}f=O(R(O(O(L[c+8>>2]*i)+O(O(L[c>>2]*g)+O(h*L[c+4>>2]))),O(3.4028234663852886e38)));c=c+12|0;b=a-1|0}if((a|0)==1){break a}while(1){j=O(O(L[c+8>>2]*i)+O(O(L[c>>2]*g)+O(h*L[c+4>>2])));f=f>2]*i)+O(O(L[c+12>>2]*g)+O(h*L[c+16>>2])));f=f>1];M=e+80|0;A=(B(h),v(2))&2147483647;u=(B(g),v(2))&2147483647;d=(B(i),v(2))&2147483647;c:{if(!(A>>>0<=u>>>0|A>>>0<=d>>>0)){A=0;u=2;d=1;break c}if(d>>>0<=u>>>0){A=2;u=1;d=0;break c}A=1;u=0;d=2}D=M+(d<<2)|0;f=L[D>>2];D=N(C,d<<1|H[D>>2]>>>31);j=O(O(C-1>>>0)*O(.5));m=O(O(1)/O(P(f)));f=O(O(j*O(O(L[(u<<2)+M>>2]*m)+O(1)))+O(.5));d:{if(f=O(0)){d=~~f>>>0;break d}d=0}C=N(C,d+D|0);u=H[b+4>>2];f=O(O(j*O(O(m*L[(e+80|0)+(A<<2)>>2])+O(1)))+O(.5));e:{if(f=O(0)){d=~~f>>>0;break e}d=0}d=d+C|0;H[e+76>>2]=I[u+d|0];H[e+72>>2]=I[d+(u+J[b+2>>1]|0)|0];L[e+64>>2]=-i;L[e+60>>2]=-h;L[e+56>>2]=-g;gZ(e+76|0,e+56|0,c,b);gZ(e+72|0,e+80|0,c,H[a+60>>2]);a=N(H[e+76>>2],12)+c|0;f=O(O(L[a+8>>2]*L[e+88>>2])+O(O(L[a>>2]*L[e+80>>2])+O(L[a+4>>2]*L[e+84>>2])))}Oa=e+96|0;return O(-L[e+20>>2])>=f|0}function wy(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,o=0,p=0,q=0,r=0,s=0,t=0;h=H[H[a+32>>2]>>2];k=H[h+11868>>2];d=H[h+11880>>2];t=k+d|0;s=H[h+11956>>2];a:{if(!k){n=h+11964|0;break a}o=I[a+44|0]?1:4;n=h+11964|0;j=H[H[h+11892>>2]>>2];while(1){b=j-g|0;b=b>>>0>>0?b:o;b:{if(!b){e=0;break b}i=H[h+11964>>2];e=1;p=H[h+11960>>2];c=p+(g<<5)|0;c:{if(J[c+8>>1]!=65535|J[c+10>>1]!=65535){break c}l=J[c+22>>1];d:{if((l|0)!=1){if((m|0)==-1|(l|0)!=2){break c}if(b>>>0>1){break d}break c}if((m|0)==-1|b>>>0<2){break c}}c=p+(g+1<<5)|0;if((l|0)!=J[c+22>>1]|J[c+8>>1]!=65535|J[c+10>>1]!=65535){break c}e=b;q=b&65535;if(q>>>0<3){break c}e=2;c=p+(g+2<<5)|0;if((l|0)!=J[c+22>>1]|J[c+8>>1]!=65535|J[c+10>>1]!=65535){break c}e=b;if(q>>>0<4){break c}e=3;c=p+(g+3<<5)|0;if((l|0)!=J[c+22>>1]|J[c+8>>1]!=65535|J[c+10>>1]!=65535){break c}e=b;if(q>>>0<5){break c}e=4;c=p+(g+4<<5)|0;if((l|0)!=J[c+22>>1]){break c}e=(J[c+8>>1]&J[c+10>>1])!=65535?4:b}b=i+(f<<3)|0;G[b+4>>1]=e;H[b>>2]=g;r=r+1|0;f=f+1|0}g=(e&65535)+g|0;if(!((j|0)==(k|0)|(j|0)!=(g|0))){b=H[h+11892>>2];H[b+(m<<2)>>2]=r;m=m+1|0;j=H[b+(m<<2)>>2];r=0}if(g>>>0>>0){continue}break}if(!k){break a}H[H[h+11892>>2]+(m<<2)>>2]=r}H[h+11896>>2]=H[h+12104>>2];c=f;e:{if((s|0)==(t|0)){break e}b=s-t|0;i=b&3;e=H[n>>2];j=0;g=0;if((s+(k^-1)|0)-d>>>0>=3){b=b&-4;m=0;while(1){d=e+(c<<3)|0;G[d+4>>1]=1;H[d>>2]=g+k;G[d+12>>1]=1;H[d+8>>2]=(g|1)+k;G[d+20>>1]=1;H[d+16>>2]=(g|2)+k;G[d+28>>1]=1;H[d+24>>2]=(g|3)+k;g=g+4|0;c=c+4|0;m=m+4|0;if((b|0)!=(m|0)){continue}break}}if(!i){break e}while(1){b=e+(c<<3)|0;G[b+4>>1]=1;H[b>>2]=g+k;g=g+1|0;c=c+1|0;j=j+1|0;if((i|0)!=(j|0)){continue}break}}H[h+12072>>2]=f;H[h+11968>>2]=c;H[h+12076>>2]=c-f;r=H[h+11960>>2];b=H[a+16>>2];b=Ra[H[H[b>>2]+4>>2]](b)|0;f=Ra[H[H[b>>2]+4>>2]](b)|0;e=c+63|0;f:{if(e>>>0<64){break f}b=c+15>>>4|0;i=b>>>0>1?b:1;b=e>>>6|0;i=b>>>0>>0?i:b;if(!i){break f}p=((c+i|0)-1>>>0)/(i>>>0)|0;j=0;f=i;while(1){b=i-j|0;b=b>>>0<64?b:64;s=yq(H[H[a+28>>2]+584>>2],b<<6);if(b){t=f>>>0<64?f:64;e=0;while(1){l=H[a+28>>2];n=H[l+452>>2];o=H[a+40>>2];q=H[l+600>>2];d=H[l+604>>2];b=s+(e<<6)|0;H[b+24>>2]=0;H[b+16>>2]=0;H[b+20>>2]=0;H[b+8>>2]=q;H[b+12>>2]=d;d=N(p,e+j|0);H[b+52>>2]=d;H[b+48>>2]=o;H[b+44>>2]=l;H[b+40>>2]=h;H[b+36>>2]=n;H[b+32>>2]=r;H[b+28>>2]=k;H[b>>2]=113804;d=d+p|0;H[b+56>>2]=c>>>0>d>>>0?d:c;d=H[a+20>>2];H[b+20>>2]=d;H[b+24>>2]=1;if(d){Ra[H[H[d>>2]+16>>2]](d);H[b+16>>2]=H[H[b+20>>2]+16>>2];d=H[b>>2]}else{d=113804}Ra[H[d+20>>2]](b);e=e+1|0;if((t|0)!=(e|0)){continue}break}}f=f+-64|0;j=j- -64|0;if(i>>>0>j>>>0){continue}break}}o=H[H[a+32>>2]+8>>2]&2147483647;if(o){e=0;while(1){b=yq(H[H[a+28>>2]+584>>2],56);q=H[h+11936>>2];n=H[a+28>>2];d=H[n+452>>2];c=H[a+40>>2];i=H[n+600>>2];f=H[n+604>>2];H[b+24>>2]=0;H[b+16>>2]=0;H[b+20>>2]=0;H[b+8>>2]=i;H[b+12>>2]=f;H[b+48>>2]=c;H[b+44>>2]=n;H[b+40>>2]=h;H[b+36>>2]=d;f=o-e|0;H[b+32>>2]=f>>>0<32?f:32;H[b+28>>2]=q+(e<<2);H[b>>2]=113860;f=H[a+20>>2];H[b+20>>2]=f;H[b+24>>2]=1;if(f){Ra[H[H[f>>2]+16>>2]](f);H[b+16>>2]=H[H[b+20>>2]+16>>2];f=H[b>>2]}else{f=113860}Ra[H[f+20>>2]](b);e=e+32|0;if(o>>>0>e>>>0){continue}break}}}function Rw(a,b){var c=0,d=0,e=O(0),f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=0,n=0,o=0,p=0,q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),F=O(0),G=O(0),J=O(0),K=O(0),M=O(0),P=O(0),Q=O(0),R=O(0),S=O(0),T=O(0),U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=O(0),aa=O(0),ba=O(0),ca=O(0),da=O(0),ea=O(0),fa=0,ga=0;c=Oa-112|0;Oa=c;X=H[b+32>>2];m=H[b+4>>2];p=H[b+12>>2];U=H[b+20>>2];Sw(c,U);e=L[p+24>>2];h=L[p+20>>2];q=L[c+60>>2];r=L[c+48>>2];s=L[c- -64>>2];A=L[c+40>>2];B=L[c+52>>2];C=L[c+68>>2];D=L[c+44>>2];E=L[c+56>>2];F=L[c+96>>2];G=L[c+84>>2];k=L[c+20>>2];t=L[c+16>>2];J=L[c+100>>2];K=L[c+76>>2];M=L[c+88>>2];l=L[c+32>>2];i=L[p+16>>2];u=L[c+28>>2];P=L[c+104>>2];j=L[p+8>>2];Q=L[c+80>>2];f=L[p>>2];R=L[c+92>>2];g=L[p+4>>2];S=L[c+36>>2];v=L[c+8>>2];w=L[c>>2];x=L[c+4>>2];T=L[c+72>>2];y=L[c+12>>2];z=L[c+24>>2];H[m+28>>2]=0;H[m+12>>2]=0;L[m+24>>2]=-O(O(O(l*e)+O(O(z*i)+O(u*h)))+O(O(O(f*Q)+O(g*R))+O(j*P)));L[m+20>>2]=-O(O(O(k*e)+O(O(y*i)+O(t*h)))+O(O(O(f*K)+O(g*M))+O(j*J)));L[m+16>>2]=-O(O(O(v*e)+O(O(w*i)+O(x*h)))+O(O(O(f*T)+O(g*G))+O(j*F)));L[m+8>>2]=-O(O(O(O(f*v)+O(g*k))+O(j*l))+O(O(O(i*D)+O(h*E))+O(e*C)));L[m+4>>2]=-O(O(O(O(f*x)+O(g*t))+O(j*u))+O(O(O(i*A)+O(h*B))+O(e*s)));L[m>>2]=-O(O(O(O(f*w)+O(g*y))+O(j*z))+O(O(O(i*S)+O(h*r))+O(e*q)));o=1;V=H[a+336>>2];if(V>>>0>1){Y=H[a+344>>2];Z=H[a+340>>2];_=H[a+332>>2];while(1){d=o<<5;b=(H[(d+_|0)+24>>2]<<5)+m|0;t=L[b+16>>2];l=L[b+20>>2];n=N(o,160)+Z|0;g=L[n+128>>2];j=L[b+24>>2];k=L[n+124>>2];f=L[n+120>>2];e=L[b>>2];h=L[b+4>>2];i=L[b+8>>2];n=0;b=d+m|0;H[b+28>>2]=0;H[b+12>>2]=0;L[b+8>>2]=i;L[b+4>>2]=h;L[b>>2]=e;j=O(j+O(O(k*e)-O(f*h)));L[b+24>>2]=j;f=O(l+O(O(f*i)-O(g*e)));L[b+20>>2]=f;g=O(t+O(O(g*h)-O(k*i)));L[b+16>>2]=g;d=d+p|0;A=L[d>>2];b=N(o,112)+U|0;B=L[b+60>>2];C=L[b+36>>2];D=L[b+48>>2];E=L[d+4>>2];F=L[b- -64>>2];G=L[b+40>>2];J=L[b+52>>2];K=L[d+8>>2];M=L[b+68>>2];P=L[b+44>>2];Q=L[b+56>>2];s=L[d+16>>2];R=L[b+96>>2];S=L[b+72>>2];T=L[b+84>>2];k=L[b+8>>2];t=L[b>>2];l=L[b+4>>2];r=L[d+20>>2];$=L[b+100>>2];aa=L[b+76>>2];ba=L[b+88>>2];u=L[b+20>>2];v=L[b+12>>2];w=L[b+16>>2];q=L[d+24>>2];ca=L[b+104>>2];da=L[b+80>>2];ea=L[b+92>>2];x=L[b+32>>2];y=L[b+24>>2];z=L[b+28>>2];H[d+28>>2]=0;H[d+12>>2]=0;q=O(q+O(O(O(x*j)+O(O(y*g)+O(f*z)))+O(O(O(e*da)+O(h*ea))+O(i*ca))));L[d+24>>2]=q;r=O(r+O(O(O(u*j)+O(O(v*g)+O(f*w)))+O(O(O(e*aa)+O(h*ba))+O(i*$))));L[d+20>>2]=r;s=O(s+O(O(O(k*j)+O(O(t*g)+O(f*l)))+O(O(O(e*S)+O(h*T))+O(i*R))));L[d+16>>2]=s;k=O(K+O(O(O(O(e*k)+O(h*u))+O(i*x))+O(O(O(g*P)+O(f*Q))+O(j*M))));L[d+8>>2]=k;l=O(E+O(O(O(O(e*l)+O(h*w))+O(i*z))+O(O(O(g*G)+O(f*J))+O(j*F))));L[d+4>>2]=l;e=O(A+O(O(O(O(e*t)+O(h*v))+O(i*y))+O(O(O(g*C)+O(f*D))+O(j*B))));L[d>>2]=e;a:{b=N(o,80)+Y|0;W=I[b+76|0];if(!W){break a}fa=(H[b+72>>2]<<2)+X|0;ga=H[a+272>>2];while(1){b=(N(o,76)+ga|0)+N(n,24)|0;L[(n<<2)+fa>>2]=O(O(L[b+20>>2]*k)+O(O(L[b+12>>2]*e)+O(L[b+16>>2]*l)))+O(O(L[b+8>>2]*q)+O(O(L[b>>2]*s)+O(L[b+4>>2]*r)));n=n+1|0;if((W|0)==(n|0)){break a}q=L[d+24>>2];r=L[d+20>>2];s=L[d+16>>2];k=L[d+8>>2];l=L[d+4>>2];e=L[d>>2];continue}}o=o+1|0;if((V|0)!=(o|0)){continue}break}}Oa=c+112|0}function j0(a,b,c,d,e,f,g,h,i,j,k){var l=0,m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),G=O(0),I=O(0);l=Oa-224|0;Oa=l;H[l+216>>2]=1065353216;H[l+220>>2]=0;H[l+208>>2]=0;H[l+212>>2]=0;H[l+200>>2]=0;H[l+204>>2]=0;H[l+196>>2]=1065353216;H[l+180>>2]=0;H[l+184>>2]=0;H[l+176>>2]=1065353216;H[l+188>>2]=0;H[l+192>>2]=0;p=L[i+48>>2];q=L[i+32>>2];y=L[c+8>>2];t=L[i>>2];o=L[c>>2];w=L[c+4>>2];u=L[i+16>>2];n=O(p+O(O(q*y)+O(O(t*o)+O(w*u))));s=L[c+20>>2];z=L[c+12>>2];x=L[c+16>>2];r=O(p+O(O(q*s)+O(O(t*z)+O(x*u))));A=L[i+56>>2];B=L[i+40>>2];C=L[c+32>>2];D=L[i+8>>2];E=L[c+24>>2];G=L[c+28>>2];I=L[i+24>>2];v=O(A+O(O(B*C)+O(O(D*E)+O(G*I))));m=O(A+O(O(B*y)+O(O(D*o)+O(w*I))));q=O(p+O(O(q*C)+O(O(t*E)+O(G*u))));t=O(A+O(O(B*s)+O(O(D*z)+O(x*I))));A=L[i+52>>2];B=L[i+36>>2];p=O(B*C);C=L[i+4>>2];D=L[i+20>>2];u=O(A+O(p+O(O(C*E)+O(G*D))));p=O(A+O(O(B*y)+O(O(C*o)+O(w*D))));y=O(A+O(O(B*s)+O(O(C*z)+O(x*D))));a:{if(!g){w=O(r-n);s=O(u-p);z=O(q-n);x=O(y-p);o=O(O(w*s)-O(z*x));A=o;C=O(o*o);o=x;x=O(v-m);B=s;s=O(t-m);o=O(O(o*x)-O(B*s));w=O(O(s*z)-O(x*w));s=O(O(1)/O(W(O(C+O(O(o*o)+O(w*w))))));z=O(A*s);o=O(o*s);w=O(w*s);if(O(O(O(L[b+24>>2]*z)+O(O(L[b+16>>2]*o)+O(w*L[b+20>>2])))-O(O(m*z)+O(O(n*o)+O(p*w))))>2]=0;L[l+168>>2]=v;L[l+164>>2]=u;L[l+160>>2]=q;H[l+156>>2]=0;L[l+152>>2]=t;L[l+148>>2]=y;L[l+144>>2]=r;H[l+140>>2]=0;L[l+136>>2]=m;L[l+132>>2]=p;F[l+112|0]=0;H[l+104>>2]=2139095039;H[l+108>>2]=5;H[l+92>>2]=0;H[l+96>>2]=0;H[l+100>>2]=2139095039;L[l+88>>2]=O(v+O(m+t))*O(.33333298563957214);L[l+84>>2]=O(u+O(p+y))*O(.33333298563957214);L[l+128>>2]=n;L[l+80>>2]=O(q+O(n+r))*O(.33333298563957214);F[l+60|0]=1;H[l+48>>2]=h;H[l+16>>2]=129328;c=l+176|0;H[l+56>>2]=c;H[l+52>>2]=c;g=l+80|0;H[l+64>>2]=g;h=l+16|0;c=Oa-96|0;Oa=c;v=L[g+80>>2];q=L[g- -64>>2];r=L[g+68>>2];t=L[g+88>>2];u=L[g+84>>2];n=L[g+52>>2];m=L[g+56>>2];y=L[g+72>>2];p=L[g+48>>2];H[c+60>>2]=0;o=O(r-n);t=O(t-m);u=O(u-n);y=O(y-m);r=O(O(o*t)-O(u*y));s=r;q=O(q-p);x=O(q*u);u=O(v-p);v=O(x-O(u*o));o=O(r*r);r=O(O(y*u)-O(t*q));q=O(O(1)/O(W(O(O(v*v)+O(o+O(r*r))))));t=O(s*q);L[c+48>>2]=t;v=O(v*q);L[c+56>>2]=v;r=O(r*q);L[c+52>>2]=r;Ra[H[H[b>>2]+12>>2]](b,c+48|0,c+80|0,c- -64|0);q=L[f>>2];n=O(O(v*m)+O(O(t*p)+O(n*r)));m=L[c+80>>2];b:{if(n>O(q+L[c+64>>2])?1:O(q+n)>2]=0;i=H[c+52>>2];H[c>>2]=H[c+48>>2];H[c+4>>2]=i;i=H[c+60>>2];H[c+8>>2]=H[c+56>>2];H[c+12>>2]=i;L[c+16>>2]=O(n-m)+O(-1.1920928955078125e-7);if(!S0(a,h,b,f,c+16|0,c- -64|0,c,c+44|0)){break b}if(!T0(g,e,a,h,b,f,c+16|0,c,c+44|0)){break b}n=L[g+56>>2];p=O(L[g+72>>2]-n);m=L[g+48>>2];r=O(L[g+80>>2]-m);v=O(L[g+88>>2]-n);m=O(L[g+64>>2]-m);n=O(O(p*r)-O(v*m));o=n;s=m;m=L[g+52>>2];q=O(L[g+84>>2]-m);x=r;r=O(L[g+68>>2]-m);m=O(O(s*q)-O(x*r));p=O(O(r*v)-O(q*p));n=O(O(1)/O(W(O(O(m*m)+O(O(p*p)+O(n*n))))));L[c+84>>2]=o*n;L[c+80>>2]=p*n;H[c+92>>2]=0;L[c+88>>2]=m*n;e=H[c+84>>2];H[l>>2]=H[c+80>>2];H[l+4>>2]=e;e=H[c+92>>2];H[l+8>>2]=H[c+88>>2];H[l+12>>2]=e;h=H[a+24>>2];e=a;a=c+80|0;U0(g,d,e,h+N(E0(e,b,a),20)|0,b,j,k,f,a)}Oa=c+96|0}Oa=l+224|0}function FW(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=O(f);g=g|0;h=h|0;i=O(i);var j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=0,B=O(0),C=0,D=O(0),E=O(0),F=O(0),K=O(0),M=O(0),P=O(0),Q=O(0),R=O(0),S=O(0),T=O(0),U=O(0),V=O(0),W=O(0),X=O(0),Y=0,Z=0;a=Oa-96|0;Oa=a;A=H[c+32>>2];H[g+8>>2]=-1;C=I[A+54|0];Y=I[A+55|0];A=H[A+56>>2];h=J[h>>1];yW(a+16|0,c+4|0,c+16|0);xU(a,b);B=O(L[a+12>>2]-i);L[a+12>>2]=B;L[g+40>>2]=f;a:{if(!C){b=0;break a}Z=h&512;s=L[d+12>>2];o=O(O(s*s)+O(-.5));D=L[a+48>>2];E=L[a+44>>2];F=L[a+36>>2];K=L[a+32>>2];j=L[d+4>>2];M=O(-j);l=L[d>>2];P=O(-l);p=L[d+8>>2];Q=O(-p);r=L[a+8>>2];t=L[a+4>>2];u=L[a>>2];R=L[a+40>>2];S=L[a+28>>2];T=L[a+24>>2];U=L[a+20>>2];V=L[a+16>>2];h=A+N(Y,20)|0;b=0;while(1){b:{i=L[h+4>>2];k=L[h>>2];q=L[h+8>>2];m=L[d+24>>2];W=L[d+20>>2];z=L[d+16>>2];v=L[e+8>>2];w=L[e>>2];x=L[e+4>>2];y=O(O(v*r)+O(O(w*u)+O(x*t)));c:{if(y>O(-1.0000000116860974e-7)&yO(0))|!(f>=i)){break c}L[g+36>>2]=r;L[g+32>>2]=t;L[g+28>>2]=u;L[g+24>>2]=q+O(v*i);L[g+20>>2]=k+O(x*i);L[g+16>>2]=z+O(w*i);G[g+12>>1]=3;L[g+40>>2]=i;b=1;f=i}h=h+12|0;C=C-1|0;if(C){continue}break a}break}if(Z){G[g+12>>1]=3;b=Oa-80|0;Oa=b;e=H[c+32>>2];yW(b,c+4|0,c+16|0);t=L[d+8>>2];c=H[e+56>>2]+N(I[e+55|0],20)|0;i=L[c>>2];B=L[b+8>>2];s=L[c+4>>2];D=L[b+20>>2];j=L[c+8>>2];E=L[b+32>>2];f=O(O(O(i*B)+O(s*D))+O(j*E));f=O(f+f);u=L[d>>2];F=L[b>>2];K=L[b+12>>2];M=L[b+24>>2];o=O(O(O(i*F)+O(s*K))+O(j*M));o=O(o+o);P=L[b+4>>2];Q=L[b+16>>2];R=L[b+28>>2];i=O(O(O(i*P)+O(s*Q))+O(j*R));j=O(i+i);k=L[d+4>>2];l=O(O(t*f)+O(O(u*o)+O(j*k)));S=L[a+12>>2];T=L[d+24>>2];q=L[d+12>>2];m=O(O(q*q)+O(-.5));i=O(T+O(O(t*l)+O(O(f*m)+O(q*O(O(u*j)-O(o*k))))));v=L[a+8>>2];U=L[d+16>>2];s=O(U+O(O(u*l)+O(O(o*m)+O(q*O(O(k*f)-O(j*t))))));w=L[a>>2];V=L[d+20>>2];o=O(V+O(O(k*l)+O(O(j*m)+O(q*O(O(t*o)-O(f*u))))));x=L[a+4>>2];f=O(S+O(O(i*v)+O(O(s*w)+O(o*x))));d=1;h=I[e+54|0];if(h>>>0>1){W=O(-k);z=O(-u);X=O(-t);while(1){e=c+N(d,12)|0;j=L[e>>2];l=L[e+4>>2];n=L[e+8>>2];p=O(O(O(B*j)+O(D*l))+O(E*n));p=O(p+p);r=O(O(O(F*j)+O(K*l))+O(M*n));r=O(r+r);j=O(O(O(P*j)+O(Q*l))+O(R*n));n=O(j+j);y=O(O(t*p)+O(O(u*r)+O(k*n)));j=O(T+O(O(t*y)+O(O(p*m)+O(q*O(O(u*n)+O(r*W))))));l=O(U+O(O(u*y)+O(O(r*m)+O(q*O(O(k*p)+O(n*X))))));p=O(V+O(O(k*y)+O(O(n*m)+O(q*O(O(t*r)+O(p*z))))));r=O(S+O(O(j*v)+O(O(l*w)+O(x*p))));if(r>2]=f;L[g+28>>2]=w;L[g+36>>2]=v;L[g+32>>2]=x;j=L[a>>2];l=L[a+4>>2];L[g+24>>2]=i-O(f*L[a+8>>2]);L[g+20>>2]=o-O(f*l);L[g+16>>2]=s-O(f*j);Oa=b+80|0;b=1;break a}G[g+12>>1]=2;H[g+40>>2]=0;L[g+36>>2]=-v;L[g+32>>2]=-x;L[g+28>>2]=-w;b=1}Oa=a+96|0;return b&1}function OW(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=O(g);h=h|0;i=i|0;j=O(j);var k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0);c=Oa-288|0;Oa=c;H[c+272>>2]=0;H[c+264>>2]=0;H[c+268>>2]=0;H[c+256>>2]=0;H[c+260>>2]=0;z=L[d+20>>2];o=L[b+20>>2];A=L[d+24>>2];m=L[b+24>>2];k=L[e+52>>2];w=L[e+56>>2];x=L[f+4>>2];y=L[f>>2];C=L[f+8>>2];t=L[a+4>>2];q=L[d+12>>2];r=L[d>>2];B=L[d+16>>2];s=L[b+16>>2];p=L[d+4>>2];l=L[d+8>>2];n=L[e+48>>2];H[c+252>>2]=0;L[c+248>>2]=w;L[c+244>>2]=k;F[c+224|0]=0;H[c+220>>2]=3;H[c+192>>2]=0;H[c+196>>2]=0;H[c+200>>2]=0;H[c+204>>2]=0;L[c+240>>2]=n;k=k>=n?n:k;k=k<=w?k:w;w=O(k*O(.05000000074505806));L[c+216>>2]=w;L[c+212>>2]=w;L[c+208>>2]=k*O(.15000000596046448);H[c+172>>2]=0;w=O(-r);n=O(s-B);o=O(o-z);m=O(m-A);s=O(O(O(w*n)-O(o*p))-O(l*m));k=O(O(q*q)+O(-.5));u=O(O(O(q*O(O(p*n)-O(r*o)))+O(k*m))-O(l*s));u=O(u+u);L[c+168>>2]=u;v=O(O(O(k*o)+O(q*O(O(r*m)-O(l*n))))-O(p*s));v=O(v+v);L[c+164>>2]=v;H[c+156>>2]=0;L[c+152>>2]=u;L[c+148>>2]=v;L[c+176>>2]=t;H[c+108>>2]=0;L[c+104>>2]=u;L[c+100>>2]=v;n=O(O(O(k*n)+O(q*O(O(l*o)-O(p*m))))-O(r*s));n=O(n+n);L[c+96>>2]=n;H[c+124>>2]=4;L[c+160>>2]=n;L[c+144>>2]=n;F[c+128|0]=1;L[c+120>>2]=t;L[c+116>>2]=t;L[c+112>>2]=t;H[c+92>>2]=0;o=O(C*g);m=O(y*g);s=O(x*g);x=O(O(l*o)+O(O(r*m)+O(p*s)));y=O(O(l*x)+O(O(o*k)-O(q*O(O(r*s)-O(m*p)))));L[c+88>>2]=y+y;y=O(O(p*x)+O(O(s*k)-O(q*O(O(l*m)-O(o*r)))));L[c+84>>2]=y+y;o=O(O(r*x)+O(O(m*k)-O(q*O(O(p*o)-O(s*l)))));L[c+80>>2]=o+o;a=J[i>>1];H[c+28>>2]=0;L[c+24>>2]=u-L[c+200>>2];L[c+20>>2]=v-L[c+196>>2];L[c+16>>2]=n-L[c+192>>2];H[c+8>>2]=125948;H[c+12>>2]=c+96;H[c>>2]=126608;H[c+4>>2]=c+192;a=a&512;b=MW(c+8|0,c,c+16|0,c+256|0,c+80|0,c- -64|0,c+32|0,c+48|0,O(t+j),a>>>9|0);a:{if(!b){break a}j=O(-l);t=O(-p);G[h+12>>1]=2;x=L[c+64>>2];if(x<=L[c+272>>2]){if(a){G[h+12>>1]=3;g=L[c+56>>2];n=L[c+48>>2];o=L[c+52>>2];m=L[c+40>>2];s=L[c+32>>2];u=L[c+36>>2];L[h+40>>2]=x;v=O(O(l*m)+O(O(r*s)+O(p*u)));L[h+36>>2]=O(O(O(q*O(O(r*u)+O(s*t)))+O(k*m))+O(l*v))*O(-2);L[h+32>>2]=O(O(p*v)+O(O(k*u)+O(q*O(O(l*s)+O(m*w)))))*O(-2);L[h+28>>2]=O(O(r*v)+O(O(k*s)+O(q*O(O(p*m)+O(u*j)))))*O(-2);m=O(O(q*O(O(r*o)+O(n*t)))+O(k*g));t=O(O(l*g)+O(O(r*n)+O(p*o)));m=O(m+O(l*t));L[h+24>>2]=A+O(m+m);l=O(O(p*t)+O(O(k*o)+O(q*O(O(l*n)+O(g*w)))));L[h+20>>2]=z+O(l+l);g=O(O(r*t)+O(O(k*n)+O(q*O(O(p*g)+O(o*j)))));L[h+16>>2]=B+O(g+g);break a}H[h+40>>2]=0;g=L[f>>2];j=L[f+4>>2];L[h+36>>2]=-L[f+8>>2];L[h+32>>2]=-j;L[h+28>>2]=-g;break a}G[h+12>>1]=3;n=L[c+56>>2];o=L[c+48>>2];m=L[c+52>>2];s=L[c+40>>2];u=L[c+32>>2];v=L[c+36>>2];L[h+40>>2]=x*g;g=O(O(l*s)+O(O(r*u)+O(p*v)));L[h+36>>2]=O(O(O(q*O(O(r*v)+O(u*t)))+O(k*s))+O(l*g))*O(-2);L[h+32>>2]=O(O(p*g)+O(O(k*v)+O(q*O(O(l*u)+O(s*w)))))*O(-2);L[h+28>>2]=O(O(r*g)+O(O(k*u)+O(q*O(O(p*s)+O(v*j)))))*O(-2);g=O(O(l*n)+O(O(r*o)+O(p*m)));t=O(O(O(q*O(O(r*m)+O(o*t)))+O(k*n))+O(l*g));L[h+24>>2]=A+O(t+t);l=O(O(p*g)+O(O(k*m)+O(q*O(O(l*o)+O(n*w)))));L[h+20>>2]=z+O(l+l);g=O(O(r*g)+O(O(k*o)+O(q*O(O(p*n)+O(m*j)))));L[h+16>>2]=B+O(g+g)}Oa=c+288|0;return b|0}function ZU(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=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=0,v=O(0),w=O(0),x=0,y=0,z=O(0),A=0,B=0,C=0;g=Oa-912|0;Oa=g;k=L[d+4>>2];s=O(k+k);h=L[d+8>>2];l=O(s*h);t=L[d>>2];r=O(t+t);m=L[d+12>>2];j=O(r*m);p=O(l-j);o=O(r*h);n=O(s*m);i=O(o+n);l=O(l+j);q=O(r*k);v=O(h+h);w=O(v*m);m=O(q-w);j=O(o-n);o=O(q+w);n=O(O(1)-O(t*r));r=O(h*v);h=O(n-r);q=O(k*s);k=O(O(O(1)-q)-r);v=L[d+24>>2];w=L[d+20>>2];r=L[c+12>>2];s=L[c+8>>2];t=L[c+4>>2];z=L[d+16>>2];n=O(n-q);a:{if(n>2]=0;L[g+360>>2]=r;L[g+356>>2]=s;F[g+336|0]=0;H[g+332>>2]=3;H[g+304>>2]=0;H[g+308>>2]=0;H[g+312>>2]=0;H[g+316>>2]=0;L[g+352>>2]=t;i=s>=t?t:s;i=i<=r?i:r;l=O(i*O(.05000000074505806));L[g+328>>2]=l;L[g+324>>2]=l;L[g+320>>2]=i*O(.15000000596046448);d=H[e+32>>2];i=L[e+4>>2];l=L[e+8>>2];m=L[e+12>>2];H[g+300>>2]=0;L[g+296>>2]=m;L[g+292>>2]=l;L[g+288>>2]=i;x=H[e+16>>2];y=H[e+20>>2];u=H[e+28>>2];H[g+280>>2]=H[e+24>>2];H[g+284>>2]=u;H[g+272>>2]=x;H[g+276>>2]=y;F[g+144|0]=0;H[g+136>>2]=0;H[g+140>>2]=0;H[g+128>>2]=0;H[g+132>>2]=0;H[g+120>>2]=0;H[g+124>>2]=0;H[g+112>>2]=0;H[g+116>>2]=0;H[g+256>>2]=d+16;H[g+264>>2]=H[d+56>>2]+N(I[d+55|0],20);F[g+268|0]=I[d+54|0];j=O(i*L[d+68>>2]);o=O(l*L[d+72>>2]);j=j<=o?j:o;o=O(m*L[d+76>>2]);j=j<=o?j:o;L[g+136>>2]=j*O(.02500000037252903);L[g+128>>2]=j*O(.10000000149011612);L[g+132>>2]=j*O(.05000000074505806);x=g+160|0;y=g+208|0;CU(g+288|0,g+272|0,x,y,g+112|0,i==O(1)&l==O(1)&m==O(1));H[g+260>>2]=H[d+60>>2];i=L[f+24>>2];d=H[f>>2];u=H[f+4>>2];A=H[f+8>>2];B=H[f+12>>2];C=H[f+20>>2];f=H[f+16>>2];H[g+108>>2]=0;L[g+104>>2]=v;L[g+100>>2]=w;L[g+96>>2]=z;L[g+92>>2]=h;L[g+88>>2]=k;L[g+84>>2]=n;L[g+80>>2]=p;H[g+76>>2]=0;L[g+72>>2]=i;H[g+64>>2]=f;H[g+68>>2]=C;H[g+56>>2]=A;H[g+60>>2]=B;H[g+48>>2]=d;H[g+52>>2]=u;H[g+40>>2]=0;H[g+44>>2]=0;H[g+32>>2]=0;H[g+36>>2]=0;H[g+16>>2]=0;c=L[e+4>>2]!=O(1)|L[e+8>>2]!=O(1)?c:L[e+12>>2]==O(1);L[g+8>>2]=r;L[g+4>>2]=s;L[g>>2]=t;d=g+840|0;Q0(lZ(g+616|0,g),d);H[g+872>>2]=90304;e=g+112|0;f=g+544|0;R0(e,c,f);H[g+520>>2]=0;H[g+524>>2]=0;H[g+516>>2]=1065353216;H[g+528>>2]=0;H[g+532>>2]=0;H[g+536>>2]=1065353216;H[g+540>>2]=0;H[g+500>>2]=0;H[g+504>>2]=0;H[g+496>>2]=1065353216;H[g+508>>2]=0;H[g+512>>2]=0;F[g+476|0]=1;H[g+432>>2]=125908;u=g+496|0;H[g+472>>2]=u;H[g+468>>2]=u;H[g+464>>2]=g+80;H[g+480>>2]=g+304;F[g+412|0]=c;H[g+408>>2]=y;H[g+404>>2]=x;H[g+368>>2]=c?125820:125868;H[g+400>>2]=g+48;H[g+416>>2]=e;c=H0(d,f,g+432|0,g+368|0,g+16|0,g+32|0);if(c){h=L[g+16>>2];L[b>>2]=h>O(0)?h:O(0);b=H[g+32>>2];d=H[g+36>>2];L[a+8>>2]=L[g+40>>2];H[a>>2]=b;H[a+4>>2]=d}Oa=g+912|0;return c|0}function Je(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=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=0,s=0,t=0,u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=0,A=0,B=0,C=0,D=0,E=0,F=0;h=Oa+-64|0;Oa=h;j=L[f+8>>2];k=L[c+8>>2];s=H[f>>2];f=H[f+4>>2];r=H[c+4>>2];c=H[c>>2];L[h+32>>2]=L[d>>2];L[h+36>>2]=L[d+4>>2];L[h+40>>2]=L[d+8>>2];m=L[d+12>>2];L[h+56>>2]=k;H[h+48>>2]=c;H[h+52>>2]=r;L[h+44>>2]=m;L[h>>2]=L[g>>2];L[h+4>>2]=L[g+4>>2];L[h+8>>2]=L[g+8>>2];k=L[g+12>>2];L[h+24>>2]=j;H[h+16>>2]=s;H[h+20>>2]=f;L[h+12>>2]=k;g=Oa-16|0;Oa=g;c=H[33808];d=c+12|0;c=(B=d,C=84,D=Ra[H[H[c>>2]+20>>2]](c)|0?24136:55639,E=5528,F=45,A=H[H[d>>2]+8>>2],Ra[A](B|0,C|0,D|0,E|0,F|0)|0);s=Ra[H[H[a>>2]+20>>2]](a)|0;G[g+8>>1]=3;f=Oa-32|0;Oa=f;G[c+6>>1]=J[g+8>>1];G[c+4>>1]=260;H[c+76>>2]=0;H[c+16>>2]=0;H[c+12>>2]=131028;H[c>>2]=130804;H[c+8>>2]=0;d=H[33808];d=Ra[H[H[d+12>>2]+8>>2]](d+12|0,112,20591,14087,454)|0;j=L[h+44>>2];k=L[h+40>>2];m=L[h+32>>2];i=L[h+36>>2];r=H[h+48>>2];t=H[h+52>>2];L[c+44>>2]=L[h+56>>2];H[c+36>>2]=r;H[c+40>>2]=t;l=i;i=O(O(1)/O(W(O(O(j*j)+O(O(k*k)+O(O(m*m)+O(i*i)))))));L[c+24>>2]=l*i;L[c+28>>2]=k*i;L[c+32>>2]=j*i;L[c+20>>2]=m*i;j=L[h+12>>2];k=L[h+8>>2];m=L[h>>2];i=L[h+4>>2];r=H[h+16>>2];t=H[h+20>>2];L[c+72>>2]=L[h+24>>2];z=c- -64|0;H[z>>2]=r;H[z+4>>2]=t;l=i;i=O(O(1)/O(W(O(O(j*j)+O(O(k*k)+O(O(m*m)+O(i*i)))))));L[c+52>>2]=l*i;L[c+56>>2]=k*i;L[c+60>>2]=j*i;L[c+48>>2]=m*i;u1(f,b);q=L[h+52>>2];u=L[h+56>>2];v=L[h+48>>2];w=L[f+20>>2];x=L[f+24>>2];y=L[f+16>>2];k=L[f+8>>2];l=L[h+40>>2];m=L[f+4>>2];n=L[h+36>>2];j=L[f+12>>2];o=L[h+44>>2];i=L[f>>2];p=L[h+32>>2];L[d+28>>2]=O(k*l)+O(O(m*n)+O(O(j*o)+O(i*p)));L[d+24>>2]=O(p*m)+O(O(O(j*l)-O(o*k))-O(i*n));L[d+20>>2]=O(l*i)+O(O(O(j*n)-O(o*m))-O(k*p));L[d+16>>2]=O(n*k)+O(O(O(j*p)-O(o*i))-O(m*l));l=O(v-y);l=O(l+l);n=O(q-w);n=O(n+n);o=O(u-x);o=O(o+o);p=O(O(O(O(-i)*l)-O(n*m))-O(k*o));q=O(O(j*j)+O(-.5));L[d+40>>2]=O(O(o*q)+O(j*O(O(m*l)-O(i*n))))-O(k*p);L[d+36>>2]=O(O(n*q)+O(j*O(O(i*o)-O(k*l))))-O(m*p);L[d+32>>2]=O(O(l*q)+O(j*O(O(k*n)-O(m*o))))-O(i*p);u1(f,e);q=L[h+20>>2];u=L[h+24>>2];v=L[h+16>>2];w=L[f+20>>2];x=L[f+24>>2];y=L[f+16>>2];k=L[f+8>>2];l=L[h+8>>2];m=L[f+4>>2];n=L[h+4>>2];j=L[f+12>>2];o=L[h+12>>2];i=L[f>>2];p=L[h>>2];L[d+56>>2]=O(k*l)+O(O(m*n)+O(O(j*o)+O(i*p)));L[d+52>>2]=O(p*m)+O(O(O(j*l)-O(o*k))-O(i*n));L[d+48>>2]=O(l*i)+O(O(O(j*n)-O(o*m))-O(k*p));L[d+44>>2]=O(n*k)+O(O(O(j*p)-O(o*i))-O(m*l));l=O(v-y);l=O(l+l);n=O(q-w);n=O(n+n);o=O(u-x);o=O(o+o);p=O(O(O(O(-i)*l)-O(n*m))-O(k*o));q=O(O(j*j)+O(-.5));L[d+68>>2]=O(O(o*q)+O(j*O(O(m*l)-O(i*n))))-O(k*p);L[d+64>>2]=O(O(n*q)+O(j*O(O(i*o)-O(k*l))))-O(m*p);L[d+60>>2]=O(O(l*q)+O(j*O(O(k*n)-O(m*o))))-O(i*p);H[d+8>>2]=1065353216;H[d+12>>2]=1065353216;H[d>>2]=1065353216;H[d+4>>2]=1065353216;H[c+80>>2]=d;Oa=f+32|0;H[c+12>>2]=130700;H[c>>2]=130468;d=H[c+80>>2];H[d+92>>2]=0;H[d+96>>2]=0;H[d+80>>2]=0;H[d+84>>2]=0;j=L[s>>2];G[d+100>>1]=2;L[d+88>>2]=j*O(.02500000037252903);a=Ra[H[H[a>>2]+108>>2]](a,b,e,c+12|0,130444,112)|0;H[c+76>>2]=a;if(!a){Ra[H[H[c>>2]+16>>2]](c);c=0}Oa=g+16|0;Oa=h- -64|0;return c|0}function b1(a,b,c){var d=0,e=0,f=0,g=0,h=O(0),i=0,j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=0,p=O(0),q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=O(0);a:{if(c>>>0<=2){if(!c){break a}g=H[b+4>>2];f=H[a+76>>2];H[f>>2]=H[b>>2];H[f+4>>2]=g;g=H[b+12>>2];H[f+8>>2]=H[b+8>>2];H[f+12>>2]=g;g=H[b+20>>2];f=H[a+76>>2];H[f+16>>2]=H[b+16>>2];H[f+20>>2]=g;g=H[b+28>>2];H[f+24>>2]=H[b+24>>2];H[f+28>>2]=g;g=H[b+36>>2];f=H[a+76>>2];H[f+32>>2]=H[b+32>>2];H[f+36>>2]=g;g=H[b+44>>2];H[f+40>>2]=H[b+40>>2];H[f+44>>2]=g;if((c|0)==1){break a}g=H[b+52>>2];f=H[a+76>>2];H[f+48>>2]=H[b+48>>2];H[f+52>>2]=g;g=H[b+60>>2];H[f+56>>2]=H[b+56>>2];H[f+60>>2]=g;d=b- -64|0;e=H[d+4>>2];f=H[a+76>>2];g=f- -64|0;H[g>>2]=H[d>>2];H[g+4>>2]=e;g=H[b+76>>2];H[f+72>>2]=H[b+72>>2];H[f+76>>2]=g;g=H[b+84>>2];f=H[a+76>>2];H[f+80>>2]=H[b+80>>2];H[f+84>>2]=g;g=H[b+92>>2];H[f+88>>2]=H[b+88>>2];H[f+92>>2]=g;F[a+64|0]=c;return}d=Oa+-64|0;Oa=d;f=c;o=S6(d,0,c);q=c>>>0<2;b:{if(q){break b}d=f-1|0;r=d&3;h=L[b+44>>2];c=0;c:{if(f-2>>>0<3){d=1;break c}w=d&-4;d=1;while(1){i=N(d,48)+b|0;j=L[i+188>>2];k=L[i+44>>2];s=k>2];h=s?k:h;t=m>2];h=t?m:h;i=kj;h=u?j:h;e=u?d+3|0:i?d+2|0:t?d+1|0:s?d:e;d=d+4|0;v=v+4|0;if((w|0)!=(v|0)){continue}break}}if(!r){break b}while(1){j=L[(N(d,48)+b|0)+44>>2];i=j>2];d=H[a+76>>2];H[d>>2]=H[c>>2];H[d+4>>2]=i;i=H[c+44>>2];H[d+40>>2]=H[c+40>>2];H[d+44>>2]=i;i=H[c+36>>2];H[d+32>>2]=H[c+32>>2];H[d+36>>2]=i;i=H[c+28>>2];H[d+24>>2]=H[c+24>>2];H[d+28>>2]=i;i=H[c+20>>2];H[d+16>>2]=H[c+16>>2];H[d+20>>2]=i;i=H[c+12>>2];H[d+8>>2]=H[c+8>>2];H[d+12>>2]=i;F[e+o|0]=1;c=H[a+76>>2];if(!q){j=L[c+24>>2];h=O(L[b+24>>2]-j);l=O(h*h);k=L[c+16>>2];h=O(L[b+16>>2]-k);n=O(h*h);m=L[c+20>>2];h=O(L[b+20>>2]-m);h=O(l+O(n+O(h*h)));d=1;while(1){e=N(d,48)+b|0;l=O(L[e+24>>2]-j);n=O(l*l);l=O(L[e+16>>2]-k);p=O(l*l);l=O(L[e+20>>2]-m);l=O(n+O(p+O(l*l)));e=l>h;h=e?l:h;g=e?d:g;d=d+1|0;if((f|0)!=(d|0)){continue}break}}d=N(g,48)+b|0;e=H[d+4>>2];H[c+48>>2]=H[d>>2];H[c+52>>2]=e;e=H[d+44>>2];H[c+88>>2]=H[d+40>>2];H[c+92>>2]=e;e=H[d+36>>2];H[c+80>>2]=H[d+32>>2];H[c+84>>2]=e;e=H[d+28>>2];H[c+72>>2]=H[d+24>>2];H[c+76>>2]=e;i=H[d+20>>2];e=c- -64|0;H[e>>2]=H[d+16>>2];H[e+4>>2]=i;e=H[d+12>>2];H[c+56>>2]=H[d+8>>2];H[c+60>>2]=e;F[g+o|0]=1;d:{if(!f){break d}h=L[d+44>>2];e=H[a+76>>2];d=0;c=g;while(1){e:{if(I[d+o|0]){break e}i=N(d,48)+b|0;j=L[i+24>>2];k=O(L[e+24>>2]-j);n=O(k*k);k=L[i+16>>2];m=O(L[e+16>>2]-k);p=O(m*m);m=L[i+20>>2];l=O(L[e+20>>2]-m);j=O(L[e+72>>2]-j);x=O(j*j);j=O(L[e+64>>2]-k);k=O(j*j);j=O(L[e+68>>2]-m);if(!(O(n+O(p+O(l*l)))>O(x+O(k+O(j*j))))){break e}c=h>L[i+44>>2]?d:c}d=d+1|0;if((f|0)!=(d|0)){continue}break}if((c|0)==(g|0)){break d}b=N(c,48)+b|0;c=H[b+4>>2];H[e+48>>2]=H[b>>2];H[e+52>>2]=c;c=H[b+44>>2];H[e+88>>2]=H[b+40>>2];H[e+92>>2]=c;c=H[b+36>>2];H[e+80>>2]=H[b+32>>2];H[e+84>>2]=c;c=H[b+28>>2];H[e+72>>2]=H[b+24>>2];H[e+76>>2]=c;f=H[b+20>>2];c=e- -64|0;H[c>>2]=H[b+16>>2];H[c+4>>2]=f;c=H[b+12>>2];H[e+56>>2]=H[b+8>>2];H[e+60>>2]=c}Oa=o- -64|0;c=2}F[a+64|0]=c}function BU(a,b,c,d,e,f,g){var h=0,i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=0,A=0,B=O(0);h=Oa-448|0;Oa=h;p=L[d+8>>2];n=L[d>>2];o=L[d+4>>2];i=L[f>>2];k=L[f+4>>2];l=L[f+8>>2];H[h+380>>2]=0;L[h+376>>2]=l;L[h+372>>2]=k;L[h+368>>2]=i;d=H[f+12>>2];z=H[f+16>>2];A=H[f+24>>2];H[h+360>>2]=H[f+20>>2];H[h+364>>2]=A;H[h+352>>2]=d;H[h+356>>2]=z;F[h+224|0]=0;H[h+216>>2]=0;H[h+220>>2]=0;H[h+208>>2]=0;H[h+212>>2]=0;H[h+200>>2]=0;H[h+204>>2]=0;H[h+192>>2]=0;H[h+196>>2]=0;H[h+336>>2]=e+16;H[h+344>>2]=H[e+56>>2]+N(I[e+55|0],20);F[h+348|0]=I[e+54|0];j=O(i*L[e+68>>2]);m=O(k*L[e+72>>2]);j=j<=m?j:m;m=O(l*L[e+76>>2]);j=j<=m?j:m;L[h+216>>2]=j*O(.02500000037252903);L[h+208>>2]=j*O(.10000000149011612);L[h+212>>2]=j*O(.05000000074505806);d=h+192|0;CU(h+368|0,h+352|0,h+240|0,h+288|0,d,i==O(1)&k==O(1)&l==O(1));H[h+340>>2]=H[e+60>>2];k=L[g>>2];i=O(n-L[g+16>>2]);n=O(i+i);i=O(o-L[g+20>>2]);o=O(i+i);l=L[g+4>>2];j=L[g+8>>2];i=O(p-L[g+24>>2]);m=O(i+i);r=O(O(O(O(-k)*n)-O(o*l))-O(j*m));i=L[g+12>>2];x=O(O(i*i)+O(-.5));L[h+180>>2]=O(O(o*x)+O(i*O(O(k*m)-O(j*n))))-O(l*r);H[h+188>>2]=0;H[h+172>>2]=0;H[h+156>>2]=0;L[h+184>>2]=O(O(m*x)+O(i*O(O(l*n)-O(k*o))))-O(j*r);s=O(l*O(0));q=O(i*O(0));u=O(k*O(0));p=O(s+O(O(q-j)-u));t=O(j*O(0));v=O(u+O(O(q-l)-t));y=O(v+v);w=O(p*y);u=O(t+O(s+O(u+i)));q=O(t+O(O(q-k)-s));s=O(q+q);t=O(u*s);L[h+164>>2]=w-t;L[h+152>>2]=w+t;q=O(O(1)-O(q*s));t=O(v*y);L[h+168>>2]=q-t;B=q;q=O(p+p);w=O(p*q);L[h+148>>2]=B-w;L[h+176>>2]=O(O(n*x)+O(i*O(O(j*o)-O(l*m))))-O(k*r);H[h+140>>2]=0;i=O(p*s);k=O(u*y);L[h+160>>2]=i+k;l=O(v*s);j=O(u*q);L[h+144>>2]=l-j;L[h+136>>2]=i-k;L[h+132>>2]=l+j;L[h+128>>2]=O(O(1)-t)-w;H[h+56>>2]=0;H[h+60>>2]=4;e=H[h+180>>2];H[h+32>>2]=H[h+176>>2];H[h+36>>2]=e;e=H[h+188>>2];H[h+40>>2]=H[h+184>>2];H[h+44>>2]=e;H[h+112>>2]=0;e=H[h+188>>2];H[h+88>>2]=H[h+184>>2];H[h+92>>2]=e;e=H[h+180>>2];H[h+80>>2]=H[h+176>>2];H[h+84>>2]=e;e=H[h+188>>2];H[h+104>>2]=H[h+184>>2];H[h+108>>2]=e;F[h+64|0]=1;H[h+48>>2]=0;H[h+52>>2]=0;e=H[h+180>>2];H[h+96>>2]=H[h+176>>2];H[h+100>>2]=e;H[h+24>>2]=125948;H[h+28>>2]=h+32;H[h+16>>2]=126016;H[h+20>>2]=d;H[h>>2]=2139095039;d=DU(h+24|0,h+16|0,h+176|0,h,h+432|0,h+416|0,h+400|0,h+384|0);a:{if((d|0)==2){H[c>>2]=0;break a}i=L[h+384>>2];L[c>>2]=i*i;c=H[h+400>>2];e=H[h+404>>2];L[a+8>>2]=L[h+408>>2];H[a>>2]=c;H[a+4>>2]=e;c=H[h+416>>2];e=H[h+420>>2];L[b+8>>2]=L[h+424>>2];H[b>>2]=c;H[b+4>>2]=e;i=L[g+8>>2];k=L[a+8>>2];n=O(k+k);k=L[g>>2];l=L[a>>2];o=O(l+l);l=L[g+4>>2];j=L[a+4>>2];m=O(j+j);r=O(O(i*n)+O(O(k*o)+O(l*m)));j=L[g+12>>2];p=O(O(j*j)+O(-.5));L[a+4>>2]=O(l*r)+O(O(m*p)+O(j*O(O(i*o)-O(n*k))));L[a>>2]=O(k*r)+O(O(o*p)+O(j*O(O(l*n)-O(m*i))));L[a+8>>2]=O(i*r)+O(O(n*p)+O(j*O(O(k*m)-O(o*l))));v=L[g+24>>2];s=L[g+16>>2];n=L[b+8>>2];n=O(n+n);o=L[b>>2];o=O(o+o);m=L[b+4>>2];m=O(m+m);r=O(O(i*n)+O(O(k*o)+O(l*m)));L[b+4>>2]=L[g+20>>2]+O(O(l*r)+O(O(m*p)+O(j*O(O(i*o)-O(n*k)))));L[b>>2]=s+O(O(k*r)+O(O(o*p)+O(j*O(O(l*n)-O(m*i)))));L[b+8>>2]=v+O(O(i*r)+O(O(n*p)+O(j*O(O(k*m)-O(o*l)))))}Oa=h+448|0;return(d|0)==2}function MN(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;l=32;c=Oa-32|0;Oa=c;F[c+12|0]=0;h=c-128|0;Oa=h;H[c+8>>2]=h;i=b-1|0;a:{if((i|0)<=0){break a}while(1){b:{if((i|0)<=(j|0)){break b}while(1){if(i-j>>>0<=4){while(1){e=j;j=e+1|0;b=j;d=e;while(1){d=K[N(b,12)+a>>2]>2]?b:d;f=(b|0)<(i|0);b=b+1|0;if(f){continue}break}if((d|0)!=(e|0)){b=N(d,12)+a|0;H[c+24>>2]=H[b+8>>2];d=H[b+4>>2];H[c+16>>2]=H[b>>2];H[c+20>>2]=d;e=N(e,12)+a|0;H[b+8>>2]=H[e+8>>2];d=H[e+4>>2];H[b>>2]=H[e>>2];H[b+4>>2]=d;H[e+8>>2]=H[c+24>>2];b=H[c+20>>2];H[e>>2]=H[c+16>>2];H[e+4>>2]=b}if((i|0)!=(j|0)){continue}break b}}d=N(j,12)+a|0;b=H[d>>2];e=N((i+j|0)/2|0,12)+a|0;if(b>>>0>K[e>>2]){H[c+24>>2]=H[d+8>>2];b=H[d+4>>2];H[c+16>>2]=H[d>>2];H[c+20>>2]=b;H[d+8>>2]=H[e+8>>2];b=H[e+4>>2];H[d>>2]=H[e>>2];H[d+4>>2]=b;H[e+8>>2]=H[c+24>>2];b=H[c+20>>2];H[e>>2]=H[c+16>>2];H[e+4>>2]=b;g=H[d>>2]}else{g=b}f=N(i,12)+a|0;b=H[f>>2];if(g>>>0>b>>>0){H[c+24>>2]=H[d+8>>2];b=H[d+4>>2];H[c+16>>2]=H[d>>2];H[c+20>>2]=b;H[d+8>>2]=H[f+8>>2];b=H[f+4>>2];H[d>>2]=H[f>>2];H[d+4>>2]=b;H[f+8>>2]=H[c+24>>2];b=H[c+20>>2];H[f>>2]=H[c+16>>2];H[f+4>>2]=b;b=H[f>>2]}if(K[e>>2]>b>>>0){H[c+24>>2]=H[e+8>>2];b=H[e+4>>2];H[c+16>>2]=H[e>>2];H[c+20>>2]=b;H[e+8>>2]=H[f+8>>2];b=H[f+4>>2];H[e>>2]=H[f>>2];H[e+4>>2]=b;H[f+8>>2]=H[c+24>>2];b=H[c+20>>2];H[f>>2]=H[c+16>>2];H[f+4>>2]=b}H[c+24>>2]=H[e+8>>2];b=H[e+4>>2];H[c+16>>2]=H[e>>2];H[c+20>>2]=b;d=i-1|0;g=N(d,12)+a|0;b=g;f=H[b+4>>2];H[e>>2]=H[b>>2];H[e+4>>2]=f;H[e+8>>2]=H[b+8>>2];H[b+8>>2]=H[c+24>>2];b=H[c+20>>2];H[g>>2]=H[c+16>>2];H[g+4>>2]=b;b=j;while(1){o=H[g>>2];while(1){e=b;b=b+1|0;f=N(b,12)+a|0;if(K[f>>2]>>0){continue}break}while(1){d=d-1|0;m=N(d,12)+a|0;if(K[m>>2]>o>>>0){continue}break}if((b|0)<(d|0)){H[c+24>>2]=H[f+8>>2];e=H[f+4>>2];H[c+16>>2]=H[f>>2];H[c+20>>2]=e;H[f+8>>2]=H[m+8>>2];e=H[m+4>>2];H[f>>2]=H[m>>2];H[f+4>>2]=e;H[m+8>>2]=H[c+24>>2];e=H[c+20>>2];H[m>>2]=H[c+16>>2];H[m+4>>2]=e;continue}break}H[c+24>>2]=H[f+8>>2];d=H[f+4>>2];H[c+16>>2]=H[f>>2];H[c+20>>2]=d;H[f+8>>2]=H[g+8>>2];d=H[g+4>>2];H[f>>2]=H[g>>2];H[f+4>>2]=d;H[g+8>>2]=H[c+24>>2];d=H[c+20>>2];H[g>>2]=H[c+16>>2];H[g+4>>2]=d;c:{if((b-j|0)<(i-b|0)){d:{if(l-1>>>0>k>>>0){b=h;break d}d=l<<3;if(d){b=H[33808];f=b+12|0;b=(q=f,r=d,s=Ra[H[H[b>>2]+20>>2]](b)|0?32762:55639,t=14160,u=155,p=H[H[f>>2]+8>>2],Ra[p](q|0,r|0,s|0,t|0,u|0)|0)}else{b=0}d=R6(b,h,k<<2);if(!(!n|!h)){f=H[33808]+12|0;Ra[H[H[f>>2]+12>>2]](f,h)}l=l<<1;n=1;h=d}b=(k<<2)+b|0;H[b>>2]=j;H[b+4>>2]=e;j=e+2|0;break c}f=e+2|0;e:{if(l-1>>>0>k>>>0){b=h;break e}d=l<<3;if(d){b=H[33808];g=b+12|0;b=(u=g,t=d,s=Ra[H[H[b>>2]+20>>2]](b)|0?32762:55639,r=14160,q=155,p=H[H[g>>2]+8>>2],Ra[p](u|0,t|0,s|0,r|0,q|0)|0)}else{b=0}d=R6(b,h,k<<2);if(!(!n|!h)){g=H[33808]+12|0;Ra[H[H[g>>2]+12>>2]](g,h)}l=l<<1;n=1;h=d}b=(k<<2)+b|0;H[b>>2]=f;H[b+4>>2]=i;i=e}k=k+2|0;if((i|0)>(j|0)){continue}break}}if(k){b=k-2|0;j=H[(b<<2)+h>>2];i=H[((k<<2)+h|0)-4>>2];k=b;continue}break}if(!n|!h){break a}a=H[33808]+12|0;Ra[H[H[a>>2]+12>>2]](a,h)}if(I[c+12|0]){H5(H[c+8>>2])}Oa=c+32|0}function zB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=O(0),h=O(0),i=0,j=0;a=a+16|0;f=H[a+28>>2];if(f){while(1){c=a+N(e,24)|0;L[c+160>>2]=L[c+160>>2]-L[b>>2];L[c+164>>2]=L[c+164>>2]-L[b+4>>2];L[c+168>>2]=L[c+168>>2]-L[b+8>>2];L[c+172>>2]=L[c+172>>2]-L[b>>2];L[c+176>>2]=L[c+176>>2]-L[b+4>>2];L[c+180>>2]=L[c+180>>2]-L[b+8>>2];e=e+1|0;if((f|0)!=(e|0)){continue}break}}L[a+656>>2]=L[a+656>>2]-L[b>>2];L[a+660>>2]=L[a+660>>2]-L[b+4>>2];L[a+664>>2]=L[a+664>>2]-L[b+8>>2];f=H[a+644>>2];c=(a+656|0)+(f<<2)|0;g=L[c>>2];h=L[c+16>>2];c=(B(O(g-h)),v(2));H[a+668>>2]=(c|0)>=0?c|-2147483648:c^-1;c=(B(O(g+h)),v(2));H[a+684>>2]=(c|0)>=0?c|-2147483648:c^-1;d=H[a>>2];if(d){i=H[a+8>>2];e=0;while(1){c=i+N(e,24)|0;L[c>>2]=L[c>>2]-L[b>>2];L[c+4>>2]=L[c+4>>2]-L[b+4>>2];L[c+8>>2]=L[c+8>>2]-L[b+8>>2];L[c+12>>2]=L[c+12>>2]-L[b>>2];L[c+16>>2]=L[c+16>>2]-L[b+4>>2];L[c+20>>2]=L[c+20>>2]-L[b+8>>2];e=e+1|0;if((d|0)!=(e|0)){continue}break}}d=H[a+636>>2];if(d){i=H[a+20>>2];e=0;j=f<<2;while(1){c=i+(e<<5)|0;L[c>>2]=L[c>>2]-L[b>>2];L[c+4>>2]=L[c+4>>2]-L[b+4>>2];L[c+8>>2]=L[c+8>>2]-L[b+8>>2];f=c+j|0;g=L[f>>2];h=L[f+16>>2];f=(B(O(g+h)),v(2));H[c+28>>2]=(f|0)>=0?f|-2147483648:f^-1;f=c;c=(B(O(g-h)),v(2));H[f+12>>2]=(c|0)>=0?c|-2147483648:c^-1;e=e+1|0;if((d|0)!=(e|0)){continue}break}}L[a+736>>2]=L[a+736>>2]-L[b>>2];L[a+740>>2]=L[a+740>>2]-L[b+4>>2];L[a+744>>2]=L[a+744>>2]-L[b+8>>2];L[a+768>>2]=L[a+768>>2]-L[b>>2];L[a+772>>2]=L[a+772>>2]-L[b+4>>2];L[a+776>>2]=L[a+776>>2]-L[b+8>>2];L[a+800>>2]=L[a+800>>2]-L[b>>2];L[a+804>>2]=L[a+804>>2]-L[b+4>>2];L[a+808>>2]=L[a+808>>2]-L[b+8>>2];L[a+832>>2]=L[a+832>>2]-L[b>>2];L[a+836>>2]=L[a+836>>2]-L[b+4>>2];L[a+840>>2]=L[a+840>>2]-L[b+8>>2];L[a+864>>2]=L[a+864>>2]-L[b>>2];L[a+868>>2]=L[a+868>>2]-L[b+4>>2];L[a+872>>2]=L[a+872>>2]-L[b+8>>2];f=0;e=0;while(1){c=a+N(e,224)|0;L[c+960>>2]=L[c+960>>2]-L[b>>2];L[c+964>>2]=L[c+964>>2]-L[b+4>>2];L[c+968>>2]=L[c+968>>2]-L[b+8>>2];L[c+992>>2]=L[c+992>>2]-L[b>>2];L[c+996>>2]=L[c+996>>2]-L[b+4>>2];L[c+1e3>>2]=L[c+1e3>>2]-L[b+8>>2];d=c+1024|0;L[d>>2]=L[d>>2]-L[b>>2];d=c+1028|0;L[d>>2]=L[d>>2]-L[b+4>>2];d=c+1032|0;L[d>>2]=L[d>>2]-L[b+8>>2];d=c+1056|0;L[d>>2]=L[d>>2]-L[b>>2];d=c+1060|0;L[d>>2]=L[d>>2]-L[b+4>>2];d=c+1064|0;L[d>>2]=L[d>>2]-L[b+8>>2];d=c+1088|0;L[d>>2]=L[d>>2]-L[b>>2];d=c+1092|0;L[d>>2]=L[d>>2]-L[b+4>>2];c=c+1096|0;L[c>>2]=L[c>>2]-L[b+8>>2];e=e+1|0;if((e|0)!=5){continue}break}while(1){e=0;while(1){c=(a+N(f,1120)|0)+N(e,224)|0;d=c+2080|0;L[d>>2]=L[d>>2]-L[b>>2];d=c+2084|0;L[d>>2]=L[d>>2]-L[b+4>>2];d=c+2088|0;L[d>>2]=L[d>>2]-L[b+8>>2];d=c+2112|0;L[d>>2]=L[d>>2]-L[b>>2];d=c+2116|0;L[d>>2]=L[d>>2]-L[b+4>>2];d=c+2120|0;L[d>>2]=L[d>>2]-L[b+8>>2];d=c+2144|0;L[d>>2]=L[d>>2]-L[b>>2];d=c+2148|0;L[d>>2]=L[d>>2]-L[b+4>>2];d=c+2152|0;L[d>>2]=L[d>>2]-L[b+8>>2];d=c+2176|0;L[d>>2]=L[d>>2]-L[b>>2];d=c+2180|0;L[d>>2]=L[d>>2]-L[b+4>>2];d=c+2184|0;L[d>>2]=L[d>>2]-L[b+8>>2];d=c+2208|0;L[d>>2]=L[d>>2]-L[b>>2];d=c+2212|0;L[d>>2]=L[d>>2]-L[b+4>>2];c=c+2216|0;L[c>>2]=L[c>>2]-L[b+8>>2];e=e+1|0;if((e|0)!=5){continue}break}f=f+1|0;if((f|0)!=5){continue}break}}function Qi(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;if(H[a+40>>2]){o5(H[33808],8,15891,247,64080,0);fB(H[a+40>>2],a)}j=a+20|0;k=JT(j,b);if((k|0)!=-1){d=vg(a);a:{if(!d|!(I[(I[b+36|0]&64?H[b+40>>2]+52|0:b+112|0)|0]&2)){break a}KD(d+5584|0,H[j+16>>2],H[(k<<2)+(J[j+12>>1]==1?j+8|0:H[j+8>>2])>>2]);if(H[j+16>>2]==-1|J[j+4>>1]!=1){break a}H[j+16>>2]=-1;d=J[a+4>>1];if((d&65527)!=5){break a}b:{switch(d-5|0){case 0:case 8:break b;default:break a}}d=H[a- -64>>2];if(K[d+152>>2]<=4294967293){e=H[d+40>>2];f=H[d+156>>2];H[d+156>>2]=-2;h=H[e+44>>2]-1|0;if((h|0)!=(f|0)){i=H[e+40>>2];g=H[i+(h<<2)>>2];H[i+(f<<2)>>2]=g;H[H[g>>2]+152>>2]=f}H[e+44>>2]=h}G[d+148>>1]=J[d+148>>1]&61439}e=b+32|0;p=H[b+16>>2]==1;h=Oa-16|0;Oa=h;f=H[((J[a+4>>1]<<2)+73232|0)+72>>2]+a|0;a=H[f+4>>2];c:{if(a>>>0<1073741824){break c}l=H[f>>2];if(!I[l+4785|0]){d=f+H[((a>>>22&60)+76348|0)+12>>2]|0;if(!(I[(a&1?H[f+8>>2]:d+8|0)|0]&8)){TI(d,e+16|0,c);et(e)}a=H[e+4>>2];if((a&251658240)!=16777216){break c}H[e>>2]=0;H[e+4>>2]=a&1073741823;break c}if((a&-1073741824)==1073741824){a=H[e+4>>2];if((a&251658240)!=16777216){break c}H[e>>2]=0;H[e+4>>2]=a&1073741823;break c}d=H[f+8>>2];if(!d){d=Tt(l,a>>>24&15);H[f+8>>2]=d;a=H[f+4>>2]}d:{if(!(a&32)){break d}g=H[d+88>>2];if((g|0)==1){if((e|0)!=H[d+84>>2]){break d}H[d+84>>2]=0;H[d+88>>2]=0;H[f+4>>2]=H[f+4>>2]&-33;break d}e:{f:{g:{if(g){i=H[l+4868>>2]+(H[d+84>>2]<<2)|0;n=g&1;if((g|0)==1){a=0;break g}q=g&-2;a=0;while(1){m=i+(a<<2)|0;h:{if((e|0)!=H[m>>2]){a=a+1|0;break h}g=g-1|0;H[m>>2]=H[i+(g<<2)>>2]}m=i+(a<<2)|0;i:{if((e|0)!=H[m>>2]){a=a+1|0;break i}g=g-1|0;H[m>>2]=H[i+(g<<2)>>2]}o=o+2|0;if((o|0)!=(q|0)){continue}break}break g}H[d+88>>2]=0;break f}j:{if(!n){break j}n=i+(a<<2)|0;if((e|0)!=H[n>>2]){a=a+1|0;break j}H[n>>2]=H[(i+(g<<2)|0)-4>>2]}H[d+88>>2]=a;switch(a|0){case 1:break e;case 0:break f;default:break d}}H[d+84>>2]=0;H[f+4>>2]=H[f+4>>2]&-33;break d}H[d+84>>2]=H[i>>2]}g=H[d+24>>2];a=0;k:{l:{m:{n:{i=H[d+28>>2];if(!i){break n}while(1){if((e|0)==H[g+(a<<2)>>2]){break n}a=a+1|0;if((i|0)!=(a|0)){continue}break}break m}if((a|0)==(i|0)){break m}c=i-1|0;H[d+28>>2]=c;H[g+(a<<2)>>2]=H[g+(c<<2)>>2];a=H[e+4>>2];if((a&251658240)!=16777216){break k}H[e+4>>2]=a&1073741823|-2147483648;break l}o:{if(!(I[(f+H[((H[f+4>>2]>>>22&60)+76348|0)+12>>2]|0)+8|0]&8)){F[h+12|0]=c;H[h+8>>2]=e;a=H[d+76>>2];if(a>>>0>=(H[d+80>>2]&2147483647)>>>0){kt(d+36|0,h+8|0);break o}c=H[h+12>>2];a=H[d+72>>2]+(a<<3)|0;H[a>>2]=H[h+8>>2];H[a+4>>2]=c;H[d+76>>2]=H[d+76>>2]+1;break o}if(p){if(!(I[e+7|0]&16)){break o}xt(l+4816|0,e);H[e+4>>2]=H[e+4>>2]&-268435457;break o}F[h+12|0]=0;H[h+8>>2]=e;a=H[d+76>>2];if(a>>>0>=(H[d+80>>2]&2147483647)>>>0){kt(d+36|0,h+8|0);break o}c=H[h+12>>2];a=H[d+72>>2]+(a<<3)|0;H[a>>2]=H[h+8>>2];H[a+4>>2]=c;H[d+76>>2]=H[d+76>>2]+1}a=H[e+4>>2];if((a&251658240)!=16777216){break k}H[e+4>>2]=a|-1073741824}H[e>>2]=l}$t(H[f>>2],f);H[f+4>>2]=H[f+4>>2]|8}Oa=h+16|0;a=H[H[33768]+476>>2];MT(j,k,a);MT(j+8|0,k,a);bt(b)}if((k|0)==-1){o5(H[33808],8,15891,253,62853,0)}}function S_(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=0,l=0,m=O(0),n=O(0),o=O(0),p=0,q=0,r=O(0),s=O(0),t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=O(0),B=O(0),C=O(0),D=O(0),E=0,K=0;e=Oa-160|0;Oa=e;H[e+120>>2]=0;H[e+124>>2]=0;H[e+128>>2]=0;H[e+132>>2]=0;H[e+112>>2]=0;H[e+116>>2]=0;G[e+108>>1]=0;H[e+104>>2]=-1;H[e+96>>2]=0;H[e+100>>2]=0;H[e+144>>2]=0;H[e+136>>2]=2139095039;H[e+140>>2]=0;a:{if(!b){break a}w=a- -64|0;x=a+224|0;y=a+208|0;z=1;while(1){l=H[(u<<2)+c>>2];E=l>>>5|0;K=l>>>1&15;v=0;while(1){p=v+E|0;b:{if(H[a+12>>2]){k=H[a+16>>2]+N(p,6)|0;l=J[k+4>>1];q=J[k+2>>1];k=J[k>>1];break b}k=H[a+16>>2]+N(p,12)|0;l=H[k+8>>2];q=H[k+4>>2];k=H[k>>2]}t=H[a+20>>2];H[e+92>>2]=l;H[e+84>>2]=k;H[e+88>>2]=q;l=t+N(l,12)|0;f=L[l>>2];q=t+N(q,12)|0;g=L[q>>2];k=t+N(k,12)|0;m=L[k>>2];i=L[l+4>>2];h=L[q+4>>2];j=L[k+4>>2];n=L[l+8>>2];o=L[q+8>>2];r=L[k+8>>2];A=L[a+60>>2];B=L[a+192>>2];C=L[a+196>>2];D=L[a+200>>2];H[e+44>>2]=0;s=o>r?r:o;L[e+40>>2]=(n>s?s:n)-D;s=h>j?j:h;L[e+36>>2]=(i>s?s:i)-C;s=g>m?m:g;L[e+32>>2]=(f>s?s:f)-B;H[e+28>>2]=0;o=o>2]=D+(n>2]=C+(h>i?h:i);g=g>2]=B+(f>2]=A+O(O(S(A,O(1)))*O(.0010000000474974513));f=L[x>>2];i=O(-f);g=L[x+4>>2];h=O(-g);m=L[x+8>>2];j=O(-m);t=e- -64|0;i=f>i?f:i;i=i>O(9.999999717180685e-10)?i:O(9.999999717180685e-10);i=O(O(1)/(f>=O(0)?i:O(-i)));n=L[y>>2];f=O(i*O(L[e+16>>2]-n));i=O(i*O(L[e+32>>2]-n));n=fh?g:h;h=h>O(9.999999717180685e-10)?h:O(9.999999717180685e-10);h=O(O(1)/(g>=O(0)?h:O(-h)));o=L[y+4>>2];g=O(h*O(L[e+20>>2]-o));h=O(h*O(L[e+36>>2]-o));o=gO(9.999999717180685e-10)?j:O(9.999999717180685e-10);j=O(O(1)/(m>=O(0)?j:O(-j)));r=L[y+8>>2];m=O(j*O(L[e+24>>2]-r));j=O(j*O(L[e+40>>2]-r));r=j>m?m:j;o=o>r?o:r;n=n>o?n:o;L[t>>2]=n>O(0)?n:O(0);n=L[e>>2];m=jh?g:h;g=g>m?m:g;f=f>i?f:i;f=f>g?g:f;f=f>n?n:f;L[e+48>>2]=f;if(f>L[t>>2]){f=L[a+60>>2];L[e+136>>2]=f;H[e+140>>2]=0;H[e+144>>2]=0;G[e+108>>1]=1;H[e+104>>2]=p;c:{if(I[a+177|0]){if(!(f>2])){break c}p=H[e+100>>2];H[w>>2]=H[e+96>>2];H[w+4>>2]=p;H[w+8>>2]=H[e+104>>2];G[a+76>>1]=1;L[a+80>>2]=L[e+112>>2];L[a+84>>2]=L[e+116>>2];L[a+88>>2]=L[e+120>>2];L[a+92>>2]=L[e+124>>2];L[a+96>>2]=L[e+128>>2];g=L[e+132>>2];L[a+104>>2]=f;L[a+100>>2]=g;H[a+124>>2]=H[e+156>>2];p=H[e+152>>2];H[a+116>>2]=H[e+148>>2];H[a+120>>2]=p;p=H[e+144>>2];H[a+108>>2]=H[e+140>>2];H[a+112>>2]=p;g=L[d>>2];L[d>>2]=f>2]=L[k>>2];L[a+132>>2]=L[k+4>>2];L[a+136>>2]=L[k+8>>2];L[a+140>>2]=L[q>>2];L[a+144>>2]=L[q+4>>2];L[a+148>>2]=L[q+8>>2];L[a+152>>2]=L[l>>2];L[a+156>>2]=L[l+4>>2];L[a+160>>2]=L[l+8>>2];H[a+164>>2]=H[e+84>>2];H[a+168>>2]=H[e+88>>2];l=H[e+92>>2];F[a+176|0]=1;H[a+172>>2]=l;break c}L[e+64>>2]=L[d>>2];p=H[a+8>>2];if(!(Ra[H[H[p>>2]>>2]](p,e+96|0,k,q,l,e- -64|0,e+84|0)|0)){break a}f=L[e+64>>2];if(!(f>2])){break c}L[d>>2]=f;L[a+60>>2]=f}if(!H[H[a+8>>2]+4>>2]){break a}}l=(v|0)==(K|0);v=v+1|0;if(!l){continue}break}u=u+1|0;z=u>>>0>>0;if((b|0)!=(u|0)){continue}break}}Oa=e+160|0;return(z^-1)&1}function Vt(a){var b=0,c=0,d=O(0),e=0,f=O(0),g=O(0),h=O(0),i=0,j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=0,v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),M=O(0),N=O(0);e=Oa-48|0;Oa=e;i=H[a+4>>2];u=H[a+268>>2];a:{if(!(u&1048576)){L[a+208>>2]=L[a+32>>2];b=H[a+40>>2];H[a+212>>2]=H[a+36>>2];H[a+216>>2]=b;b=H[a+48>>2];H[a+220>>2]=H[a+44>>2];H[a+224>>2]=b;b=H[a+56>>2];H[a+228>>2]=H[a+52>>2];H[a+232>>2]=b;break a}if(!(u&2097152)){CF(a+16|0,a+208|0);break a}c=H[a+8>>2];if(!c){c=Tt(H[a>>2],i>>>24&15);H[a+8>>2]=c}v=L[c+148>>2];w=L[c+152>>2];x=L[c+144>>2];y=L[c+156>>2];N=L[a+48>>2];f=L[a+52>>2];j=L[a- -64>>2];d=O(L[c+160>>2]-L[a+80>>2]);p=O(d+d);d=O(L[c+164>>2]-L[a+84>>2]);q=O(d+d);k=L[a+68>>2];l=L[a+72>>2];d=O(L[c+168>>2]-L[a+88>>2]);r=O(d+d);s=O(O(O(O(-j)*p)-O(q*k))-O(l*r));m=L[a+40>>2];g=L[a+76>>2];t=O(O(g*g)+O(-.5));d=O(O(O(r*t)+O(g*O(O(k*p)-O(j*q))))-O(l*s));z=O(d+d);n=L[a+32>>2];d=O(O(O(p*t)+O(g*O(O(l*q)-O(k*r))))-O(j*s));A=O(d+d);d=O(O(O(q*t)+O(g*O(O(j*r)-O(l*p))))-O(k*s));B=O(d+d);o=L[a+36>>2];M=O(O(m*z)+O(O(n*A)+O(B*o)));h=L[a+44>>2];d=O(O(h*h)+O(-.5));p=O(O(O(m*M)+O(O(z*d)+O(O(O(n*B)-O(A*o))*h)))+L[a+56>>2]);L[e+40>>2]=p;q=O(f+O(O(o*M)+O(O(B*d)+O(h*O(O(m*A)-O(z*n))))));L[e+36>>2]=q;C=O(O(l*w)+O(O(k*v)+O(O(g*y)+O(j*x))));D=O(O(v*l)+O(O(O(g*x)-O(y*j))-O(k*w)));E=O(O(w*j)+O(O(O(g*v)-O(y*k))-O(l*x)));f=O(O(x*k)+O(O(O(g*w)-O(y*l))-O(j*v)));r=O(O(O(O(h*C)-O(n*D))-O(o*E))-O(m*f));L[e+28>>2]=r;s=O(O(O(n*E)+O(O(h*f)+O(C*m)))-O(D*o));L[e+24>>2]=s;t=O(O(O(m*D)+O(O(h*E)+O(C*o)))-O(f*n));L[e+20>>2]=t;f=O(O(O(o*f)+O(O(h*D)+O(n*C)))-O(E*m));L[e+16>>2]=f;d=O(N+O(O(n*M)+O(O(A*d)+O(h*O(O(o*z)-O(B*m))))));L[e+32>>2]=d;L[a+232>>2]=p;L[a+228>>2]=q;L[a+224>>2]=d;L[a+220>>2]=r;L[a+216>>2]=s;L[a+212>>2]=t;L[a+208>>2]=f;CF(a+16|0,e+16|0)}b:{if(!(i&1)){break b}b=H[a+8>>2];if(!b){b=Tt(H[a>>2],I[a+7|0]&15);H[a+8>>2]=b}i=I[b|0]&8;b=I[a+24|0]&8;if(!(i|!b)){At(H[a>>2],a,1);break b}if(!i|b){break b}zt(H[a>>2],a,1)}c:{if(!(u&-131072001)){break c}c=H[a+8>>2];if(!c){c=Tt(H[a>>2],I[a+7|0]&15);H[a+8>>2]=c}b=H[a+268>>2];if(b&1){MF(a+16|0,L[c+92>>2]);b=H[a+268>>2]}if(b&2){NF(a+16|0,c+96|0);b=H[a+268>>2]}if(b&4){OF(a+16|0,L[c+108>>2]);b=H[a+268>>2]}if(b&8){PF(a+16|0,L[c+112>>2]);b=H[a+268>>2]}if(b&16){QF(a+16|0,L[c+116>>2]);b=H[a+268>>2]}if(b&32){RF(a+16|0,L[c+120>>2]);b=H[a+268>>2]}if(b&64){XF(a+16|0,L[c+124>>2]);b=H[a+268>>2]}if(b&512){i=J[c+136>>1];G[a+62>>1]=i;b=H[a+16>>2];if(b){G[b+94>>1]=i}b=H[a+268>>2]}if(b&256){L[a+124>>2]=L[c+132>>2]}if(b&1024){FF(a+16|0,c+144|0);b=H[a+268>>2]}if(b&4096){YF(a+16|0,L[c+176>>2]);b=H[a+268>>2]}if(b&2048){L[a+108>>2]=L[c+172>>2]}if(b&8192){VF(a+16|0,L[c+180>>2]);b=H[a+268>>2]}if(b&128){L[a+92>>2]=L[c+128>>2]}if(!(u&16384)){break c}b=H[H[a>>2]+2428>>2];F[e+8|0]=I[c+268|0];SF(a+16|0,b,e+8|0)}St(a);b=a+16|0;d:{if(!(u&33554432)){b=H[b>>2];if(b){b=K[b+152>>2]>4294967293}else{b=1}if(K[a+4>>2]>3221225471){break d}H[a+264>>2]=b;break d}TF(b)}Yt(a);H[a+8>>2]=0;H[a+268>>2]=0;H[a+4>>2]=I[a+7|0]<<24;Oa=e+48|0}function zv(a,b,c,d,e){var f=0,g=0,h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=0,s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=0,z=0,A=O(0),B=O(0),C=0,D=0,E=O(0),F=O(0),G=O(0),K=O(0),M=O(0),P=O(0),Q=O(0),R=O(0),S=O(0),T=O(0),U=O(0),V=O(0);y=Oa-1280|0;Oa=y;C=J[b+6>>1]+b|0;f=J[b+18>>1]+b|0;D=f+144|0;k=O(-L[e+8>>2]);n=O(-L[e+4>>2]);p=O(-L[e>>2]);h=O(-L[d+8>>2]);i=O(-L[d+4>>2]);j=O(-L[d>>2]);if(c){while(1){z=(c<<5)+C|0;l=L[z+24>>2];q=L[z+20>>2];m=L[z+16>>2];g=(y+256|0)+(r<<4)|0;H[g+12>>2]=0;o=O(k+O(O(j*q)-O(m*i)));L[g+8>>2]=o;m=O(n+O(O(h*m)-O(l*j)));L[g+4>>2]=m;l=O(p+O(O(i*l)-O(q*h)));L[g>>2]=l;g=N(c,160)+D|0;u=L[g+16>>2];v=L[g+80>>2];w=L[g+48>>2];x=L[g+20>>2];A=L[g+84>>2];B=L[g+52>>2];q=L[z+8>>2];E=L[g+8>>2];F=L[g+72>>2];G=L[g+40>>2];K=L[g+24>>2];M=L[g+88>>2];P=L[g+56>>2];s=L[z>>2];Q=L[g+4>>2];R=L[g+68>>2];S=L[g+36>>2];t=L[z+4>>2];T=L[g>>2];U=L[g+64>>2];V=L[g+32>>2];H[(r<<2)+y>>2]=c;i=O(O(O(i-O(o*R))-O(m*S))-O(l*Q));j=O(O(O(j-O(o*U))-O(m*V))-O(l*T));k=O(O(O(O(k-O(o*M))-O(m*P))-O(l*K))+O(O(s*i)-O(t*j)));h=O(O(O(h-O(o*F))-O(m*G))-O(l*E));n=O(O(O(O(n-O(o*A))-O(m*B))-O(l*x))+O(O(q*j)-O(s*h)));p=O(O(O(O(p-O(o*v))-O(m*w))-O(l*u))+O(O(t*h)-O(i*q)));r=r+1|0;c=I[(b+c|0)- -64|0];if(c){continue}break}H[d+12>>2]=0;L[d+8>>2]=h;L[d+4>>2]=i;L[d>>2]=j;H[e+12>>2]=0;L[e+8>>2]=k;L[e+4>>2]=n;L[e>>2]=p}q=L[f+88>>2];t=L[f+80>>2];s=L[f+84>>2];o=O(-O(O(O(q*h)+O(O(t*j)+O(i*s)))+O(O(L[f+136>>2]*k)+O(O(L[f+104>>2]*p)+O(n*L[f+120>>2])))));u=L[f+72>>2];v=L[f- -64>>2];w=L[f+68>>2];m=O(-O(O(O(u*h)+O(O(v*j)+O(i*w)))+O(O(L[f+132>>2]*k)+O(O(L[f+100>>2]*p)+O(n*L[f+116>>2])))));x=L[f+56>>2];A=L[f+48>>2];B=L[f+52>>2];l=O(-O(O(O(x*h)+O(O(A*j)+O(i*B)))+O(O(L[f+128>>2]*k)+O(O(L[f+96>>2]*p)+O(n*L[f+112>>2])))));q=O(-O(O(O(L[f+40>>2]*h)+O(O(L[f+8>>2]*j)+O(i*L[f+24>>2])))+O(O(q*k)+O(O(x*p)+O(n*u)))));s=O(-O(O(O(L[f+36>>2]*h)+O(O(L[f+4>>2]*j)+O(i*L[f+20>>2])))+O(O(s*k)+O(O(B*p)+O(n*w)))));i=O(-O(O(O(L[f+32>>2]*h)+O(O(L[f>>2]*j)+O(i*L[f+16>>2])))+O(O(t*k)+O(O(A*p)+O(n*v)))));if(r){while(1){r=r-1|0;b=H[(r<<2)+y>>2];c=(b<<5)+C|0;j=L[c>>2];k=L[c+4>>2];h=O(q-O(O(j*m)-O(l*k)));v=L[c+16>>2];b=N(b,160)+D|0;n=O(k*o);k=L[c+8>>2];i=O(i-O(n-O(m*k)));j=O(s-O(O(k*l)-O(o*j)));d=(y+256|0)+(r<<4)|0;k=L[d+8>>2];n=L[d>>2];p=L[d+4>>2];t=O(O(O(O(h*L[b+40>>2])+O(O(L[b+32>>2]*i)+O(j*L[b+36>>2])))+O(O(L[b+56>>2]*o)+O(O(L[b+48>>2]*l)+O(m*L[b+52>>2]))))+O(O(L[b+132>>2]*k)+O(O(L[b+100>>2]*n)+O(p*L[b+116>>2]))));u=O(O(O(O(h*L[b+8>>2])+O(O(L[b>>2]*i)+O(L[b+4>>2]*j)))+O(O(L[b+24>>2]*o)+O(O(L[b+16>>2]*l)+O(m*L[b+20>>2]))))+O(O(L[b+128>>2]*k)+O(O(L[b+96>>2]*n)+O(p*L[b+112>>2]))));w=L[c+20>>2];q=O(h-O(O(v*t)-O(u*w)));x=L[c+24>>2];h=O(O(O(O(h*L[b+72>>2])+O(O(L[b+64>>2]*i)+O(j*L[b+68>>2])))+O(O(L[b+88>>2]*o)+O(O(L[b+80>>2]*l)+O(m*L[b+84>>2]))))+O(O(L[b+136>>2]*k)+O(O(L[b+104>>2]*n)+O(p*L[b+120>>2]))));s=O(j-O(O(x*u)-O(h*v)));i=O(i-O(O(w*h)-O(t*x)));o=O(o-h);m=O(m-t);l=O(l-u);if(r){continue}break}}L[a+16>>2]=l;H[a+12>>2]=0;L[a+8>>2]=q;L[a+4>>2]=s;L[a>>2]=i;H[a+28>>2]=0;L[a+24>>2]=o;L[a+20>>2]=m;Oa=y+1280|0}function NC(a,b,c,d,e){var f=0,g=O(0),h=O(0),i=O(0),j=O(0),k=0,l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=0,u=O(0),v=O(0),w=O(0),x=0,y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=0,E=O(0),G=O(0),I=O(0),J=O(0),K=O(0),M=O(0),P=O(0),Q=0,R=0,S=O(0);k=Oa-1056|0;Oa=k;F[k+1040|0]=1;H[k+1048>>2]=256;H[k+1052>>2]=256;H[k+1044>>2]=k+16;Q=H[c+8>>2];H[k+16>>2]=Q;t=1;a:{while(1){t=t-1|0;f=H[H[k+1044>>2]+(t<<2)>>2];i=L[f>>2];l=L[f+12>>2];n=O(i+l);i=O(l-i);m=L[f+8>>2];j=L[f+20>>2];l=O(m+j);g=L[f+4>>2];h=L[f+16>>2];r=O(g+h);m=O(j-m);j=O(h-g);while(1){b:{g=L[d+96>>2];h=O(n*O(.5));u=O(i*O(.5));i=L[d+48>>2];n=O(u+i);if(!(g<=O(h+n))){break b}o=L[d+112>>2];if(!(o>=O(h-n))){break b}y=L[d+4>>2];s=O(r*O(.5));u=O(y-s);z=L[d+16>>2];E=L[d>>2];A=O(E-h);h=L[d+32>>2];v=O(O(u*z)-O(A*h));B=O(-v);G=L[d+80>>2];I=L[d+52>>2];r=O(O(j*O(.5))+I);J=L[d+64>>2];if(!(O(O(n*G)+O(r*J))>=(v>B?v:B))){break b}v=L[d+100>>2];if(!(v<=O(s+r))){break b}B=L[d+116>>2];if(!(B>=O(s-r))){break b}s=L[d+8>>2];w=O(l*O(.5));p=O(s-w);K=L[d+20>>2];q=u;u=L[d+36>>2];j=O(O(p*K)-O(q*u));C=O(-j);M=L[d+84>>2];q=O(m*O(.5));m=L[d+56>>2];l=O(q+m);P=L[d+68>>2];if(!(O(O(r*M)+O(l*P))>=(j>C?j:C))){break b}C=L[d+104>>2];if(!(C<=O(w+l))){break b}j=L[d+120>>2];if(!(j>=O(w-l))){break b}w=L[d+24>>2];q=O(A*w);A=L[d+40>>2];p=O(q-O(p*A));q=O(-p);r=L[d+88>>2];S=O(l*r);l=L[d+72>>2];if(!(O(S+O(n*l))>=(p>q?p:q))){break b}f=H[f+24>>2];x=f>>>1|0;if(f&1){D=H[c>>2]+(f>>>3&536870908)|0;c:{d:{x=x&15;switch(x|0){case 0:break b;case 1:break d;default:break c}}if(Ra[H[H[e>>2]>>2]](e,k+12|0,(H[D>>2]<<3)+a|0)|0){break b}a=0;break a}while(1){e:{q=g;R=H[D>>2];f=N(R,24)+b|0;n=L[f>>2];p=L[f+12>>2];g=O(O(n+p)*O(.5));n=O(O(O(p-n)*O(.5))+i);if(!(q<=O(g+n))|!(O(g-n)<=o)){break e}o=L[f+16>>2];p=L[f+4>>2];i=O(O(O(o-p)*O(.5))+I);o=O(O(p+o)*O(.5));y=O(y-o);q=O(y*z);z=O(E-g);g=O(q-O(z*h));h=O(-g);if(!(O(o-i)<=B)|(!(O(O(n*G)+O(i*J))>=(g>h?g:h))|!(O(o+i)>=v))){break e}g=L[f+20>>2];h=L[f+8>>2];m=O(O(O(g-h)*O(.5))+m);g=O(O(h+g)*O(.5));s=O(s-g);h=O(O(s*K)-O(y*u));o=O(-h);if(!(O(g-m)<=j)|(!(O(O(i*M)+O(m*P))>=(h>o?h:o))|!(O(g+m)>=C))){break e}i=O(O(z*w)-O(s*A));j=O(-i);if(!(O(O(m*r)+O(n*l))>=(i>j?i:j))){break e}if(Ra[H[H[e>>2]>>2]](e,k+12|0,(R<<3)+a|0)|0){break e}a=0;break a}x=x-1|0;if(!x){break b}D=D+4|0;j=L[d+120>>2];B=L[d+116>>2];o=L[d+112>>2];C=L[d+104>>2];v=L[d+100>>2];g=L[d+96>>2];l=L[d+72>>2];P=L[d+68>>2];J=L[d+64>>2];r=L[d+88>>2];M=L[d+84>>2];G=L[d+80>>2];w=L[d+24>>2];K=L[d+20>>2];z=L[d+16>>2];A=L[d+40>>2];u=L[d+36>>2];h=L[d+32>>2];s=L[d+8>>2];y=L[d+4>>2];E=L[d>>2];m=L[d+56>>2];I=L[d+52>>2];i=L[d+48>>2];continue}}f=N(x,28)+Q|0;H[H[k+1044>>2]+(t<<2)>>2]=f+28;t=t+1|0;if((t|0)==(H[k+1052>>2]&2147483647)){QC(k+16|0,t<<1)}i=L[f>>2];l=L[f+12>>2];n=O(i+l);i=O(l-i);m=L[f+8>>2];j=L[f+20>>2];l=O(m+j);g=L[f+4>>2];h=L[f+16>>2];r=O(g+h);m=O(j-m);j=O(h-g);continue}break}if(t){continue}break}a=1}b=H[k+1052>>2];f:{if((b|0)<0|!(b&2147483647)){break f}b=H[k+1044>>2];if((b|0)==(k+16|0)|!b){break f}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}Oa=k+1056|0;return a}function N6(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=H[a-4>>2];a=b&-8;f=d+a|0;b:{if(b&1){break b}if(!(b&3)){break a}b=H[d>>2];d=d-b|0;if(d>>>0>>0<=255){e=H[d+8>>2];b=b>>>3|0;c=H[d+12>>2];if((c|0)==(e|0)){i=136084,j=H[34021]&j7(-2,b),H[i>>2]=j;break b}H[e+12>>2]=c;H[c+8>>2]=e;break b}h=H[d+24>>2];b=H[d+12>>2];c:{if((d|0)!=(b|0)){c=H[d+8>>2];H[c+12>>2]=b;H[b+8>>2]=c;break c}d:{e=d+20|0;c=H[e>>2];if(c){break d}e=d+16|0;c=H[e>>2];if(c){break d}b=0;break c}while(1){g=e;b=c;e=b+20|0;c=H[e>>2];if(c){continue}e=b+16|0;c=H[b+16>>2];if(c){continue}break}H[g>>2]=0}if(!h){break b}e=H[d+28>>2];c=(e<<2)+136388|0;e:{if(H[c>>2]==(d|0)){H[c>>2]=b;if(b){break e}i=136088,j=H[34022]&j7(-2,e),H[i>>2]=j;break b}H[h+(H[h+16>>2]==(d|0)?16:20)>>2]=b;if(!b){break b}}H[b+24>>2]=h;c=H[d+16>>2];if(c){H[b+16>>2]=c;H[c+24>>2]=b}c=H[d+20>>2];if(!c){break b}H[b+20>>2]=c;H[c+24>>2]=b;break b}b=H[f+4>>2];if((b&3)!=3){break b}H[34023]=a;H[f+4>>2]=b&-2;H[d+4>>2]=a|1;H[a+d>>2]=a;return}if(d>>>0>=f>>>0){break a}b=H[f+4>>2];if(!(b&1)){break a}f:{if(!(b&2)){if(H[34027]==(f|0)){H[34027]=d;a=H[34024]+a|0;H[34024]=a;H[d+4>>2]=a|1;if(H[34026]!=(d|0)){break a}H[34023]=0;H[34026]=0;return}if(H[34026]==(f|0)){H[34026]=d;a=H[34023]+a|0;H[34023]=a;H[d+4>>2]=a|1;H[a+d>>2]=a;return}a=(b&-8)+a|0;g:{if(b>>>0<=255){e=H[f+8>>2];b=b>>>3|0;c=H[f+12>>2];if((c|0)==(e|0)){i=136084,j=H[34021]&j7(-2,b),H[i>>2]=j;break g}H[e+12>>2]=c;H[c+8>>2]=e;break g}h=H[f+24>>2];b=H[f+12>>2];h:{if((f|0)!=(b|0)){c=H[f+8>>2];H[c+12>>2]=b;H[b+8>>2]=c;break h}i:{e=f+20|0;c=H[e>>2];if(c){break i}e=f+16|0;c=H[e>>2];if(c){break i}b=0;break h}while(1){g=e;b=c;e=b+20|0;c=H[e>>2];if(c){continue}e=b+16|0;c=H[b+16>>2];if(c){continue}break}H[g>>2]=0}if(!h){break g}e=H[f+28>>2];c=(e<<2)+136388|0;j:{if(H[c>>2]==(f|0)){H[c>>2]=b;if(b){break j}i=136088,j=H[34022]&j7(-2,e),H[i>>2]=j;break g}H[h+(H[h+16>>2]==(f|0)?16:20)>>2]=b;if(!b){break g}}H[b+24>>2]=h;c=H[f+16>>2];if(c){H[b+16>>2]=c;H[c+24>>2]=b}c=H[f+20>>2];if(!c){break g}H[b+20>>2]=c;H[c+24>>2]=b}H[d+4>>2]=a|1;H[a+d>>2]=a;if(H[34026]!=(d|0)){break f}H[34023]=a;return}H[f+4>>2]=b&-2;H[d+4>>2]=a|1;H[a+d>>2]=a}if(a>>>0<=255){a=a>>>3|0;b=(a<<3)+136124|0;c=H[34021];a=1<>2]}H[b+8>>2]=d;H[a+12>>2]=d;H[d+12>>2]=b;H[d+8>>2]=a;return}e=31;H[d+16>>2]=0;H[d+20>>2]=0;if(a>>>0<=16777215){b=a>>>8|0;g=b+1048320>>>16&8;b=b<>>16&4;b=b<>>16&2;b=(b<>>15|0)-(c|(e|g))|0;e=(b<<1|a>>>b+21&1)+28|0}H[d+28>>2]=e;g=(e<<2)+136388|0;l:{m:{c=H[34022];b=1<>2]=d;H[d+24>>2]=g;break n}e=a<<((e|0)==31?0:25-(e>>>1|0)|0);b=H[g>>2];while(1){c=b;if((H[b+4>>2]&-8)==(a|0)){break m}b=e>>>29|0;e=e<<1;g=c+(b&4)|0;b=H[g+16>>2];if(b){continue}break}H[g+16>>2]=d;H[d+24>>2]=c}H[d+12>>2]=d;H[d+8>>2]=d;break l}a=H[c+8>>2];H[a+12>>2]=d;H[c+8>>2]=d;H[d+24>>2]=0;H[d+12>>2]=c;H[d+8>>2]=a}a=H[34029]-1|0;H[34029]=a?a:-1}}function sC(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=O(0),j=0,k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=0,q=0;g=Oa-16|0;Oa=g;if(I[a+212|0]){a:{b:{e=H[a+204>>2];if(e){while(1){e=e-1|0;c=H[H[a+200>>2]+(e<<3)>>2];XA(c,b);c=H[c+8>>2];k=L[c>>2];h=H[c>>2];c:{if((h&2139095040)==2139095040){i=L[c+4>>2];break c}i=L[c+4>>2];if((H[c+4>>2]&2139095040)==2139095040){break c}l=L[c+8>>2];if((H[c+8>>2]&2139095040)==2139095040){break c}m=L[c+12>>2];if((H[c+12>>2]&2139095040)==2139095040){break c}n=L[c+16>>2];if((H[c+16>>2]&2139095040)==2139095040){break c}o=L[c+20>>2];if((H[c+20>>2]&2139095040)==2139095040){break c}if(!(!(!(k<=m)|!(i<=n))&l<=o)){if(k!=O(8.5070586659632215e37)|i!=O(8.5070586659632215e37)|(l!=O(8.5070586659632215e37)|m!=O(-8.5070586659632215e37))){break c}if(n!=O(-8.5070586659632215e37)|o!=O(-8.5070586659632215e37)){break c}}j=j+1|0}d=H[a+196>>2]+N(e,24)|0;L[d+4>>2]=i;H[d>>2]=h;L[d+8>>2]=L[c+8>>2];L[d+12>>2]=L[c+12>>2];L[d+16>>2]=L[c+16>>2];L[d+20>>2]=L[c+20>>2];if(e){continue}break}b=H[a+204>>2];if((b|0)!=(j|0)){break b}}XA(H[a+168>>2],H[a+196>>2]);break a}c=H[33808]+12|0;h=Ra[H[H[c>>2]+8>>2]](c,b<<2|1,20591,6516,300)|0;if(H[a+204>>2]){e=H[a+200>>2];c=0;b=0;while(1){f=b<<3;q=f+e|0;p=H[q>>2];d=H[p+8>>2];m=L[d>>2];d:{e:{if((H[d>>2]&2139095040)==2139095040){break e}l=L[d+4>>2];if((H[d+4>>2]&2139095040)==2139095040){break e}n=L[d+8>>2];if((H[d+8>>2]&2139095040)==2139095040){break e}i=L[d+12>>2];if((H[d+12>>2]&2139095040)==2139095040){break e}o=L[d+16>>2];if((H[d+16>>2]&2139095040)==2139095040){break e}k=L[d+20>>2];if((H[d+20>>2]&2139095040)==2139095040){break e}if(!(!(!(i>=m)|!(l<=o))&k>=n)){if(m!=O(8.5070586659632215e37)|l!=O(8.5070586659632215e37)|(n!=O(8.5070586659632215e37)|i!=O(-8.5070586659632215e37))){break e}if(o!=O(-8.5070586659632215e37)|k!=O(-8.5070586659632215e37)){break e}}if((b|0)!=(c|0)){d=(c<<3)+e|0;p=H[d>>2];e=H[q+4>>2];H[d>>2]=H[q>>2];H[d+4>>2]=e;e=H[a+200>>2];H[f+e>>2]=p;f=H[a+196>>2];d=f+N(c,24)|0;f=f+N(b,24)|0;L[d>>2]=L[f>>2];L[d+4>>2]=L[f+4>>2];L[d+8>>2]=L[f+8>>2];L[d+12>>2]=L[f+12>>2];L[d+16>>2]=L[f+16>>2];L[d+20>>2]=L[f+20>>2]}H[h+(b<<2)>>2]=c;c=c+1|0;break d}OA(p,1);e=H[a+200>>2];H[(f+e|0)+4>>2]=0}H[h+(H[a+204>>2]<<2)>>2]=b;b=b+1|0;if(b>>>0>2]){continue}break}}H[a+204>>2]=j;f:{if(j){H[g+4>>2]=j;H[g+12>>2]=0;b=H[a+196>>2];H[g>>2]=4;H[g+8>>2]=b;QA(H[a+168>>2],g);mC(a+172|0,H[a+204>>2],H[a+168>>2]);H[g+8>>2]=0;H[g>>2]=0;H[g+4>>2]=0;b=H[g+12>>2];if(b){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}if(!H[a+144>>2]){break f}c=0;d=H[a+140>>2];b=H[d>>2];if((b|0)==-1){e=H[a+148>>2];while(1){c=c+1|0;if((e|0)==(c|0)){break f}b=H[d+(c<<2)>>2];if((b|0)==-1){continue}break}}d=H[a+148>>2];e=H[a+136>>2];j=H[a+132>>2];while(1){f=j+N(b,20)|0;H[f+16>>2]=H[h+(H[f+16>>2]<<2)>>2];b=H[e+(b<<2)>>2];if((b|0)!=-1){continue}f=H[a+140>>2];while(1){c=c+1|0;if((d|0)==(c|0)){break f}b=H[f+(c<<2)>>2];if((b|0)==-1){continue}break}continue}}OA(H[a+168>>2],1)}if(!h){break a}b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,h)}F[a+212|0]=0}Oa=g+16|0}function XZ(a,b,c,d,e){var f=O(0),g=O(0),h=O(0),i=O(0),j=0,k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=0,q=0,r=O(0),s=0,t=0,u=0,v=0,w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),F=O(0),J=O(0),K=0,M=0,Q=O(0),R=O(0),S=O(0),V=O(0),W=O(0),X=O(0),Y=O(0),Z=O(0),_=0,$=0,aa=0;v=Oa-256|0;Oa=v;a:{if(d&1){f=L[b>>2];k=O(-f);m=O(k-f);l=L[b+8>>2];n=O(-l);Q=O(m*n);g=L[b+12>>2];i=L[b+4>>2];y=O(-i);h=O(y-i);R=O(g*h);o=L[c+12>>2];r=L[c>>2];D=O(O(o-r)*O(.5));B=O(g*m);C=O(h*n);z=L[c+16>>2];w=L[c+4>>2];E=O(O(z-w)*O(.5));S=O(O(f*m)+O(1));V=O(h*y);h=L[c+20>>2];x=L[c+8>>2];F=O(O(h-x)*O(.5));W=O(O(O(P(O(O(Q-R)*D)))+O(P(O(O(B+C)*E))))+O(P(O(O(S-V)*F))));A=k;k=O(O(r+o)*O(.5));k=O(k+k);o=O(O(w+z)*O(.5));o=O(o+o);h=O(O(x+h)*O(.5));r=O(h+h);z=O(O(O(A*k)-O(o*i))-O(l*r));w=O(L[b+24>>2]*O(-2));x=O(L[b+16>>2]*O(-2));A=O(L[b+20>>2]*O(-2));J=O(O(l*w)+O(O(f*x)+O(A*i)));h=O(O(g*g)+O(-.5));X=O(O(O(l*J)+O(O(w*h)-O(g*O(O(f*A)-O(x*i)))))+O(O(O(r*h)+O(g*O(O(i*k)-O(f*o))))-O(l*z)));Y=O(W+X);y=O(m*y);m=O(n-l);Z=O(g*m);n=O(m*n);B=O(O(O(P(O(O(y+Z)*D)))+O(P(O(O(S-n)*E))))+O(P(O(O(C-B)*F))));C=O(O(O(i*J)+O(O(A*h)-O(g*O(O(l*x)-O(w*f)))))+O(O(O(o*h)+O(g*O(O(f*r)-O(l*k))))-O(i*z)));m=O(B+C);n=O(O(O(P(O(O(O(O(1)-V)-n)*D)))+O(P(O(O(y-Z)*E))))+O(P(O(O(Q+R)*F))));g=O(O(O(f*J)+O(O(x*h)-O(g*O(O(i*w)-O(A*l)))))+O(O(O(k*h)+O(g*O(O(l*o)-O(i*r))))-O(f*z)));f=O(n+g);l=O(C-B);i=O(g-n);g=O(X-W);break a}Y=L[c+20>>2];m=L[c+16>>2];f=L[c+12>>2];l=L[c+4>>2];i=L[c>>2];g=L[c+8>>2]}k=f;f=L[a>>2];h=O(k*f);i=O(i*f);c=H[a+16>>2];s=L[c+12>>2]>2];j=H[p+40>>2];b=j-1|0;n=O(b>>>0);b:{if(f>n){break b}k=L[a+8>>2];o=O(Y*k);k=O(g*k);q=L[c+16>>2]>2];c=t-1|0;r=O(c>>>0);if(g>r){break b}i=s?i:h;if(iO(u>>>0)){break c}f=O(T(f));if(f=O(0)){u=~~f>>>0;break c}u=0}j=i>n;f=O(U(i));d:{if(f=O(0)){q=~~f>>>0;break d}q=0}K=j?b:q;b=0;e:{if(gO(b>>>0)){break e}g=O(T(g));if(g=O(0)){b=~~g>>>0;break e}b=0}j=h>r;q=K-u|0;g=O(U(h));f:{if(g=O(0)){s=~~g>>>0;break f}s=0}M=j?c:s;_=M-b|0;if(!(N(q,_)<<1)){break b}f=L[a+4>>2];q=0;g:{if(u>>>0>=K>>>0|b>>>0>=M>>>0){break g}g=O(m*f);f=O(l*f);$=d&2;d=N(t,u)+b|0;j=0;h:{while(1){s=b;while(1){t=H[p+60>>2];c=d;d=c+1|0;l=O(G[t+(d<<2)>>1]);p=t+(c+H[p+44>>2]<<2)|0;i=O(G[p>>1]);h=O(G[p+4>>1]);p=c<<2;aa=p+t|0;m=O(G[aa>>1]);i:{if(!(!(gg)|!(gi)|(!(f>m)|!(f>l)))){if(f>h){break i}}if((I[aa+2|0]&127)!=127){if(j>>>0>=64){Ra[H[H[e>>2]+8>>2]](e,j,v)|0;j=0}H[(j<<2)+v>>2]=c<<1;q=q+1|0;j=j+1|0;if($){break h}t=H[H[a+12>>2]+60>>2]}if((I[(p+t|0)+3|0]&127)==127){break i}if(j>>>0>=64){Ra[H[H[e>>2]+8>>2]](e,j,v)|0;j=0}H[(j<<2)+v>>2]=c<<1|1;q=q+1|0;j=j+1|0;if($){break h}}p=H[a+12>>2];s=s+1|0;if((M|0)!=(s|0)){continue}break}d=H[p+44>>2]+(d-_|0)|0;u=u+1|0;if((K|0)!=(u|0)){continue}break}if(!j){break g}}Ra[H[H[e>>2]+8>>2]](e,j,v)|0}}Oa=v+256|0}function Fe(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=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=0,s=0,t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=0,z=0,A=0,B=0,C=0,D=0,E=0;h=Oa+-64|0;Oa=h;j=L[f+8>>2];k=L[c+8>>2];r=H[f>>2];f=H[f+4>>2];s=H[c+4>>2];c=H[c>>2];L[h+32>>2]=L[d>>2];L[h+36>>2]=L[d+4>>2];L[h+40>>2]=L[d+8>>2];m=L[d+12>>2];L[h+56>>2]=k;H[h+48>>2]=c;H[h+52>>2]=s;L[h+44>>2]=m;L[h>>2]=L[g>>2];L[h+4>>2]=L[g+4>>2];L[h+8>>2]=L[g+8>>2];k=L[g+12>>2];L[h+24>>2]=j;H[h+16>>2]=r;H[h+20>>2]=f;L[h+12>>2]=k;g=Oa-16|0;Oa=g;c=H[33808];d=c+12|0;c=(A=d,B=84,C=Ra[H[H[c>>2]+20>>2]](c)|0?24260:55639,D=5611,E=45,z=H[H[d>>2]+8>>2],Ra[z](A|0,B|0,C|0,D|0,E|0)|0);Ra[H[H[a>>2]+20>>2]](a)|0;G[g+8>>1]=3;f=Oa-32|0;Oa=f;G[c+6>>1]=J[g+8>>1];G[c+4>>1]=259;H[c+76>>2]=0;H[c+16>>2]=0;H[c+12>>2]=131576;H[c>>2]=131392;H[c+8>>2]=0;d=H[33808];d=Ra[H[H[d+12>>2]+8>>2]](d+12|0,96,20591,14087,454)|0;j=L[h+44>>2];k=L[h+40>>2];m=L[h+32>>2];i=L[h+36>>2];r=H[h+48>>2];s=H[h+52>>2];L[c+44>>2]=L[h+56>>2];H[c+36>>2]=r;H[c+40>>2]=s;l=i;i=O(O(1)/O(W(O(O(j*j)+O(O(k*k)+O(O(m*m)+O(i*i)))))));L[c+24>>2]=l*i;L[c+28>>2]=k*i;L[c+32>>2]=j*i;L[c+20>>2]=m*i;j=L[h+12>>2];k=L[h+8>>2];m=L[h>>2];i=L[h+4>>2];r=H[h+16>>2];s=H[h+20>>2];L[c+72>>2]=L[h+24>>2];y=c- -64|0;H[y>>2]=r;H[y+4>>2]=s;l=i;i=O(O(1)/O(W(O(O(j*j)+O(O(k*k)+O(O(m*m)+O(i*i)))))));L[c+52>>2]=l*i;L[c+56>>2]=k*i;L[c+60>>2]=j*i;L[c+48>>2]=m*i;u1(f,b);q=L[h+52>>2];t=L[h+56>>2];u=L[h+48>>2];v=L[f+20>>2];w=L[f+24>>2];x=L[f+16>>2];k=L[f+8>>2];l=L[h+40>>2];m=L[f+4>>2];n=L[h+36>>2];j=L[f+12>>2];o=L[h+44>>2];i=L[f>>2];p=L[h+32>>2];L[d+28>>2]=O(k*l)+O(O(m*n)+O(O(j*o)+O(i*p)));L[d+24>>2]=O(p*m)+O(O(O(j*l)-O(o*k))-O(i*n));L[d+20>>2]=O(l*i)+O(O(O(j*n)-O(o*m))-O(k*p));L[d+16>>2]=O(n*k)+O(O(O(j*p)-O(o*i))-O(m*l));l=O(u-x);l=O(l+l);n=O(q-v);n=O(n+n);o=O(t-w);o=O(o+o);p=O(O(O(O(-i)*l)-O(n*m))-O(k*o));q=O(O(j*j)+O(-.5));L[d+40>>2]=O(O(o*q)+O(j*O(O(m*l)-O(i*n))))-O(k*p);L[d+36>>2]=O(O(n*q)+O(j*O(O(i*o)-O(k*l))))-O(m*p);L[d+32>>2]=O(O(l*q)+O(j*O(O(k*n)-O(m*o))))-O(i*p);u1(f,e);q=L[h+20>>2];t=L[h+24>>2];u=L[h+16>>2];v=L[f+20>>2];w=L[f+24>>2];x=L[f+16>>2];k=L[f+8>>2];l=L[h+8>>2];m=L[f+4>>2];n=L[h+4>>2];j=L[f+12>>2];o=L[h+12>>2];i=L[f>>2];p=L[h>>2];L[d+56>>2]=O(k*l)+O(O(m*n)+O(O(j*o)+O(i*p)));L[d+52>>2]=O(p*m)+O(O(O(j*l)-O(o*k))-O(i*n));L[d+48>>2]=O(l*i)+O(O(O(j*n)-O(o*m))-O(k*p));L[d+44>>2]=O(n*k)+O(O(O(j*p)-O(o*i))-O(m*l));l=O(u-x);l=O(l+l);n=O(q-v);n=O(n+n);o=O(t-w);o=O(o+o);p=O(O(O(O(-i)*l)-O(n*m))-O(k*o));q=O(O(j*j)+O(-.5));L[d+68>>2]=O(O(o*q)+O(j*O(O(m*l)-O(i*n))))-O(k*p);L[d+64>>2]=O(O(n*q)+O(j*O(O(i*o)-O(k*l))))-O(m*p);L[d+60>>2]=O(O(l*q)+O(j*O(O(k*n)-O(m*o))))-O(i*p);H[d+8>>2]=1065353216;H[d+12>>2]=1065353216;H[d>>2]=1065353216;H[d+4>>2]=1065353216;H[c+80>>2]=d;Oa=f+32|0;H[c+12>>2]=131288;H[c>>2]=131096;d=H[c+80>>2];H[d+80>>2]=1343554297;H[d+84>>2]=1078530011;a=Ra[H[H[a>>2]+108>>2]](a,b,e,c+12|0,131072,96)|0;H[c+76>>2]=a;if(!a){Ra[H[H[c>>2]+16>>2]](c);c=0}Oa=g+16|0;Oa=h- -64|0;return c|0}function zX(a,b,c){var d=O(0),e=O(0),f=O(0),g=0,h=O(0),i=O(0),j=0,k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=0,v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=0,D=O(0),E=0,G=O(0),K=O(0),M=O(0),P=0,Q=0,R=O(0),S=0,T=0,U=0,V=O(0);E=H[a+12>>2];a:{if(!E){d=L[a+48>>2];f=L[a+44>>2];e=L[a+40>>2];w=L[a+72>>2];x=L[a+68>>2];n=L[a+64>>2];break a}k=L[c+12>>2];v=O(O(k*k)+O(-.5));g=H[a+4>>2];T=H[a+8>>2];r=L[c+4>>2];G=O(-r);s=L[c>>2];K=O(-s);t=L[c+8>>2];M=O(-t);C=H[H[a>>2]+40>>2];U=I[C+64|0]&2;P=H[C+24>>2];while(1){j=H[(Q<<2)+T>>2];b:{if(U){j=H[C+28>>2]+N(j,6)|0;u=J[j+4>>1];S=J[j+2>>1];j=J[j>>1];break b}j=H[C+28>>2]+N(j,12)|0;u=H[j+8>>2];S=H[j+4>>2];j=H[j>>2]}u=N(u,12)+P|0;n=L[u+8>>2];w=L[u>>2];x=L[u+4>>2];u=N(S,12)+P|0;m=L[u+8>>2];q=L[u>>2];y=L[u+4>>2];o=L[c+24>>2];p=L[c+20>>2];j=N(j,12)+P|0;d=L[j>>2];f=L[j+4>>2];h=L[j+8>>2];e=O(O(O(d*L[g+8>>2])+O(f*L[g+20>>2]))+O(h*L[g+32>>2]));e=O(e+e);i=O(O(O(d*L[g>>2])+O(f*L[g+12>>2]))+O(h*L[g+24>>2]));i=O(i+i);d=O(O(O(d*L[g+4>>2])+O(f*L[g+16>>2]))+O(h*L[g+28>>2]));h=O(d+d);l=O(O(t*e)+O(O(s*i)+O(r*h)));d=O(L[c+16>>2]+O(O(s*l)+O(O(i*v)+O(k*O(O(r*e)+O(h*M))))));z=O(L[a+64>>2]+d);L[a+64>>2]=z;f=O(p+O(O(r*l)+O(O(h*v)+O(k*O(O(t*i)+O(e*K))))));A=O(L[a+68>>2]+f);L[a+68>>2]=A;e=O(o+O(O(t*l)+O(O(e*v)+O(k*O(O(s*h)+O(i*G))))));i=O(e+L[a+72>>2]);L[a+72>>2]=i;h=L[a+40>>2];h=d>h?h:d;L[a+40>>2]=h;l=L[a+44>>2];l=f>l?l:f;L[a+44>>2]=l;o=L[a+48>>2];o=e>o?o:e;L[a+48>>2]=o;p=L[a+52>>2];p=d>2]=p;d=L[a+56>>2];B=d>f?d:f;L[a+56>>2]=B;d=L[a+60>>2];R=d>e?d:e;L[a+60>>2]=R;V=L[c+16>>2];f=L[c+20>>2];D=i;d=O(O(O(q*L[g+8>>2])+O(y*L[g+20>>2]))+O(m*L[g+32>>2]));e=O(d+d);d=O(O(O(q*L[g>>2])+O(y*L[g+12>>2]))+O(m*L[g+24>>2]));i=O(d+d);d=O(O(O(q*L[g+4>>2])+O(y*L[g+16>>2]))+O(m*L[g+28>>2]));m=O(d+d);q=O(O(t*e)+O(O(s*i)+O(r*m)));d=O(L[c+24>>2]+O(O(t*q)+O(O(e*v)+O(k*O(O(s*m)+O(i*G))))));D=O(D+d);L[a+72>>2]=D;f=O(f+O(O(r*q)+O(O(m*v)+O(k*O(O(t*i)+O(e*K))))));A=O(A+f);L[a+68>>2]=A;e=O(V+O(O(s*q)+O(O(i*v)+O(k*O(O(r*e)+O(m*M))))));z=O(z+e);L[a+64>>2]=z;q=d>2]=q;y=f>2]=y;i=e>2]=i;o=d>o?o:d;L[a+48>>2]=o;l=f>l?l:f;L[a+44>>2]=l;h=e>h?h:e;L[a+40>>2]=h;B=L[c+16>>2];f=L[c+20>>2];d=O(O(O(w*L[g+8>>2])+O(x*L[g+20>>2]))+O(n*L[g+32>>2]));e=O(d+d);d=O(O(O(w*L[g>>2])+O(x*L[g+12>>2]))+O(n*L[g+24>>2]));m=O(d+d);d=O(O(O(w*L[g+4>>2])+O(x*L[g+16>>2]))+O(n*L[g+28>>2]));n=O(d+d);p=O(O(t*e)+O(O(s*m)+O(r*n)));d=O(L[c+24>>2]+O(O(t*p)+O(O(e*v)+O(k*O(O(s*n)+O(m*G))))));w=O(D+d);L[a+72>>2]=w;f=O(f+O(O(r*p)+O(O(n*v)+O(k*O(O(t*m)+O(e*K))))));x=O(A+f);L[a+68>>2]=x;e=O(B+O(O(s*p)+O(O(m*v)+O(k*O(O(r*e)+O(n*M))))));n=O(z+e);L[a+64>>2]=n;L[a+60>>2]=d>2]=f>2]=eo?o:d;L[a+48>>2]=d;f=f>l?l:f;L[a+44>>2]=f;e=e>h?h:e;L[a+40>>2]=e;Q=Q+1|0;if((E|0)!=(Q|0)){continue}break}}F[a+76|0]=1;k=O(O(1)/O(N(E,3)>>>0));L[a+72>>2]=k*w;L[a+68>>2]=k*x;L[a+64>>2]=k*n;L[b+8>>2]=d;L[b+4>>2]=f;L[b>>2]=e;L[b+12>>2]=L[a+52>>2];L[b+16>>2]=L[a+56>>2];L[b+20>>2]=L[a+60>>2]}function gC(a,b,c,d,e){var f=O(0),g=O(0),h=O(0),i=O(0),j=0,k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=0,t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=0,C=0,D=O(0),E=O(0),G=O(0),I=O(0),J=O(0),K=O(0),M=O(0),P=O(0),Q=0;j=Oa-1056|0;Oa=j;F[j+1040|0]=1;H[j+1048>>2]=256;H[j+1052>>2]=256;H[j+1044>>2]=j+16;H[j+16>>2]=H[c+588>>2];s=1;a:{while(1){s=s-1|0;c=H[H[j+1044>>2]+(s<<2)>>2];h=L[c+16>>2];k=L[c>>2];m=O(h+k);h=O(h-k);l=L[c+24>>2];i=L[c+8>>2];k=O(l+i);f=L[c+20>>2];g=L[c+4>>2];q=O(f+g);l=O(l-i);i=O(f-g);while(1){b:{f=L[d+96>>2];g=O(m*O(.5));n=O(h*O(.5));h=L[d+48>>2];m=O(n+h);if(!(f<=O(g+m))){break b}o=L[d+112>>2];if(!(o>=O(g-m))){break b}v=L[d+4>>2];r=O(q*O(.5));w=O(v-r);x=L[d+16>>2];D=L[d>>2];y=O(D-g);g=L[d+32>>2];t=O(O(w*x)-O(y*g));z=O(-t);E=L[d+80>>2];G=L[d+52>>2];q=O(O(i*O(.5))+G);I=L[d+64>>2];if(!(O(O(m*E)+O(q*I))>=(t>z?t:z))){break b}t=L[d+100>>2];if(!(t<=O(r+q))){break b}z=L[d+116>>2];if(!(z>=O(r-q))){break b}r=L[d+8>>2];u=O(k*O(.5));p=O(r-u);J=L[d+20>>2];n=w;w=L[d+36>>2];i=O(O(p*J)-O(n*w));A=O(-i);K=L[d+84>>2];n=O(l*O(.5));l=L[d+56>>2];k=O(n+l);M=L[d+68>>2];if(!(O(O(q*K)+O(k*M))>=(i>A?i:A))){break b}A=L[d+104>>2];if(!(A<=O(u+k))){break b}i=L[d+120>>2];if(!(i>=O(u-k))){break b}u=L[d+24>>2];n=O(y*u);y=L[d+40>>2];p=O(n-O(p*y));P=O(-p);q=L[d+88>>2];n=O(k*q);k=L[d+72>>2];if(!(O(n+O(m*k))>=(p>P?p:P))){break b}if(!H[c+40>>2]){c=H[c+36>>2];B=c+4|0;c:{d:{C=H[c>>2];switch(C|0){case 0:break b;case 1:break d;default:break c}}if(Ra[H[H[e>>2]>>2]](e,j+12|0,(H[B>>2]<<3)+a|0)|0){break b}a=0;break a}while(1){e:{n=f;Q=H[B>>2];c=N(Q,24)+b|0;m=L[c>>2];p=L[c+12>>2];f=O(O(m+p)*O(.5));m=O(O(O(p-m)*O(.5))+h);if(!(n<=O(f+m))|!(O(f-m)<=o)){break e}o=L[c+16>>2];p=L[c+4>>2];h=O(O(O(o-p)*O(.5))+G);o=O(O(p+o)*O(.5));v=O(v-o);n=O(v*x);x=O(D-f);f=O(n-O(x*g));g=O(-f);if(!(O(o-h)<=z)|(!(O(O(m*E)+O(h*I))>=(f>g?f:g))|!(O(o+h)>=t))){break e}f=L[c+20>>2];g=L[c+8>>2];l=O(O(O(f-g)*O(.5))+l);f=O(O(g+f)*O(.5));r=O(r-f);g=O(O(r*J)-O(v*w));o=O(-g);if(!(O(f-l)<=i)|(!(O(O(h*K)+O(l*M))>=(g>o?g:o))|!(O(f+l)>=A))){break e}h=O(O(x*u)-O(r*y));i=O(-h);if(!(O(O(l*q)+O(m*k))>=(h>i?h:i))){break e}if(Ra[H[H[e>>2]>>2]](e,j+12|0,(Q<<3)+a|0)|0){break e}a=0;break a}C=C-1|0;if(!C){break b}B=B+4|0;i=L[d+120>>2];z=L[d+116>>2];o=L[d+112>>2];A=L[d+104>>2];t=L[d+100>>2];f=L[d+96>>2];k=L[d+72>>2];M=L[d+68>>2];I=L[d+64>>2];q=L[d+88>>2];K=L[d+84>>2];E=L[d+80>>2];u=L[d+24>>2];J=L[d+20>>2];x=L[d+16>>2];y=L[d+40>>2];w=L[d+36>>2];g=L[d+32>>2];r=L[d+8>>2];v=L[d+4>>2];D=L[d>>2];l=L[d+56>>2];G=L[d+52>>2];h=L[d+48>>2];continue}}c=H[c+36>>2];H[H[j+1044>>2]+(s<<2)>>2]=c+48;s=s+1|0;if((s|0)==(H[j+1052>>2]&2147483647)){iC(j+16|0,s<<1)}h=L[c+16>>2];k=L[c>>2];m=O(h+k);h=O(h-k);l=L[c+24>>2];i=L[c+8>>2];k=O(l+i);f=L[c+20>>2];g=L[c+4>>2];q=O(f+g);l=O(l-i);i=O(f-g);continue}break}if(s){continue}break}a=1}b=H[j+1052>>2];f:{if((b|0)<0|!(b&2147483647)){break f}b=H[j+1044>>2];if((b|0)==(j+16|0)|!b){break f}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}Oa=j+1056|0;return a}function Ls(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;k=Oa-16|0;Oa=k;if(I[a+36|0]&2){d=J[H[a+40>>2]+124>>1]}else{m=H[a+116>>2];d=1;a:{if(m-7>>>0<4294967294){break a}d=J[a+168>>1];if((m|0)==5){break a}d=J[a+148>>1]}}m=d;l=m&65535;F[k+12|0]=l>>>0>256;b:{if(l>>>0>=257){i=G5(l<<2,9142,410);break b}i=k-((l<<2)+15&524272)|0;Oa=i}H[k+8>>2]=i;f=H[33772];c:{if(I[a+36|0]&2){e=H[a+40>>2];d=J[e+124>>1];e=(d|0)==1?e+120|0:H[H[a+32>>2]+4856>>2]+(H[e+120>>2]<<1)|0;break c}e=EQ(a+48|0);g=H[a+116>>2];d=1;d:{if(g-7>>>0<4294967294){break d}d=J[a+168>>1];if((g|0)==5){break d}d=J[a+148>>1]}}g=a+32|0;h=d>>>0>>0?d:l;e:{if(!h){break e}a=0;if((h|0)!=1){n=h&65534;d=0;while(1){H[(a<<2)+i>>2]=H[H[f+40>>2]+(J[(a<<1)+e>>1]<<2)>>2];j=a|1;H[(j<<2)+i>>2]=H[H[f+40>>2]+(J[(j<<1)+e>>1]<<2)>>2];a=a+2|0;d=d+2|0;if((n|0)!=(d|0)){continue}break}}if(!(h&1)){break e}H[(a<<2)+i>>2]=H[H[f+40>>2]+(J[(a<<1)+e>>1]<<2)>>2]}i=Oa-16|0;Oa=i;f:{g:{h:{i:{d=H[g+4>>2];switch((d>>>30|0)-2|0){case 1:break g;case 0:break i;default:break h}}if(I[H[g>>2]+4785|0]){break g}}f=0;h=0;a=Oa-32|0;d=a;Oa=a;j:{k:{if((c|0)==1){G[d+30>>1]=J[H[b>>2]+52>>1];DQ(g+16|0,d+30|0,1);break k}F[d+20|0]=c>>>0>512;l:{m:{if(c>>>0>=513){e=G5(c<<1,9206,48);H[d+16>>2]=e;if(!e){break m}break l}e=a-((c<<1)+15&262128)|0;Oa=e;H[d+16>>2]=e;if(c){break l}DQ(g+16|0,e,c);break k}a=0;o5(H[33808],16,9206,57,58709,0);H5(e);break j}a=0;if(c-1>>>0>=3){n=c&65532;while(1){G[(a<<1)+e>>1]=J[H[(a<<2)+b>>2]+52>>1];j=a|1;G[(j<<1)+e>>1]=J[H[(j<<2)+b>>2]+52>>1];j=a|2;G[(j<<1)+e>>1]=J[H[(j<<2)+b>>2]+52>>1];j=a|3;G[(j<<1)+e>>1]=J[H[(j<<2)+b>>2]+52>>1];a=a+4|0;f=f+4|0;if((n|0)!=(f|0)){continue}break}}f=c&3;if(f){while(1){G[(a<<1)+e>>1]=J[H[(a<<2)+b>>2]+52>>1];a=a+1|0;h=h+1|0;if((f|0)!=(h|0)){continue}break}}DQ(g+16|0,e,c);if(c>>>0<513){break k}H5(e)}a=1;e=H[g>>2];if(!e){break j}e=H[H[e+992>>2]+1024>>2];Ra[H[H[e>>2]+64>>2]](e,g+48|0)}Oa=d+32|0;break f}a=H[g+8>>2];if(!a){a=Tt(H[g>>2],d>>>24&15);H[g+8>>2]=a}n:{if((c|0)==1){G[a+124>>1]=1;G[a+120>>1]=J[H[b>>2]+52>>1];break n}f=H[g>>2];d=H[f+4860>>2];e=0;G[i+14>>1]=0;Bq(f+4856|0,c+d|0,i+14|0);f=H[f+4856>>2];G[a+124>>1]=c;H[a+120>>2]=d;if(!c){break n}d=f+(d<<1)|0;if(c-1>>>0>=3){f=c&65532;a=0;while(1){G[d+(e<<1)>>1]=J[H[(e<<2)+b>>2]+52>>1];h=e|1;G[d+(h<<1)>>1]=J[H[(h<<2)+b>>2]+52>>1];h=e|2;G[d+(h<<1)>>1]=J[H[(h<<2)+b>>2]+52>>1];h=e|3;G[d+(h<<1)>>1]=J[H[(h<<2)+b>>2]+52>>1];e=e+4|0;a=a+4|0;if((f|0)!=(a|0)){continue}break}}f=c&3;if(!f){break n}a=0;while(1){G[d+(e<<1)>>1]=J[H[(e<<2)+b>>2]+52>>1];e=e+1|0;a=a+1|0;if((f|0)!=(a|0)){continue}break}}$t(H[g>>2],g);H[g+4>>2]=H[g+4>>2]|2;a=1}Oa=i+16|0;o:{if(!a){break o}if(c){a=0;while(1){d=H[(a<<2)+b>>2];H[d+16>>2]=H[d+16>>2]+1;a=a+1|0;if((c|0)!=(a|0)){continue}break}}if(!(m&65535)){break o}a=0;d=H[k+8>>2];while(1){b=H[d+(a<<2)>>2];c=H[b+16>>2]-1|0;H[b+16>>2]=c;if(!c){Ra[H[H[b+12>>2]+8>>2]](b+12|0)}a=a+1|0;if((l|0)!=(a|0)){continue}break}}if((m&65535)>>>0>=257){H5(H[k+8>>2])}Oa=k+16|0}function xz(a,b){var c=0,d=0,e=0,f=0,g=O(0),h=0,i=0,j=0;c=Oa-224|0;Oa=c;d=H[a>>2];a:{if((d|0)==H[a+4>>2]){Ra[H[H[d>>2]+152>>2]](d,J[a+8>>1],J[a+10>>1],c+128|0,c+96|0);d=H[c+140>>2];H[c+216>>2]=H[c+136>>2];H[c+220>>2]=d;d=H[c+132>>2];H[c+208>>2]=H[c+128>>2];H[c+212>>2]=d;d=H[c+148>>2];H[c+192>>2]=H[c+144>>2];H[c+196>>2]=d;d=H[c+156>>2];H[c+200>>2]=H[c+152>>2];H[c+204>>2]=d;d=H[c+100>>2];H[c+176>>2]=H[c+96>>2];H[c+180>>2]=d;d=H[c+108>>2];H[c+184>>2]=H[c+104>>2];H[c+188>>2]=d;d=H[c+116>>2];H[c+160>>2]=H[c+112>>2];H[c+164>>2]=d;d=H[c+124>>2];H[c+168>>2]=H[c+120>>2];H[c+172>>2]=d;break a}e=J[a+8>>1];b:{if((e|0)==65535){e=H[d+4>>2];f=H[d>>2];g=L[d+8>>2];H[c+220>>2]=0;L[c+216>>2]=g;H[c+208>>2]=f;H[c+212>>2]=e;e=H[d+20>>2];f=H[d+16>>2];g=L[d+24>>2];H[c+204>>2]=0;L[c+200>>2]=g;H[c+192>>2]=f;H[c+196>>2]=e;break b}Ra[H[H[d>>2]+156>>2]](c+128|0,d,e);d=H[c+140>>2];H[c+216>>2]=H[c+136>>2];H[c+220>>2]=d;d=H[c+132>>2];H[c+208>>2]=H[c+128>>2];H[c+212>>2]=d;d=H[c+148>>2];H[c+192>>2]=H[c+144>>2];H[c+196>>2]=d;d=H[c+156>>2];H[c+200>>2]=H[c+152>>2];H[c+204>>2]=d}d=J[a+10>>1];if((d|0)==65535){d=H[a+4>>2];e=H[d+4>>2];f=H[d>>2];g=L[d+8>>2];H[c+188>>2]=0;L[c+184>>2]=g;H[c+176>>2]=f;H[c+180>>2]=e;g=L[d+24>>2];e=H[d+20>>2];d=H[d+16>>2];H[c+172>>2]=0;L[c+168>>2]=g;H[c+160>>2]=d;H[c+164>>2]=e;break a}e=H[a+4>>2];Ra[H[H[e>>2]+156>>2]](c+128|0,e,d);d=H[c+140>>2];H[c+184>>2]=H[c+136>>2];H[c+188>>2]=d;d=H[c+132>>2];H[c+176>>2]=H[c+128>>2];H[c+180>>2]=d;d=H[c+148>>2];H[c+160>>2]=H[c+144>>2];H[c+164>>2]=d;d=H[c+156>>2];H[c+168>>2]=H[c+152>>2];H[c+172>>2]=d}H[c+136>>2]=0;H[c+140>>2]=0;H[c+128>>2]=0;H[c+132>>2]=0;H[c+104>>2]=0;H[c+108>>2]=0;H[c+96>>2]=0;H[c+100>>2]=0;H[c+88>>2]=0;H[c+92>>2]=0;H[c+80>>2]=0;H[c+84>>2]=0;H[c+72>>2]=0;H[c+76>>2]=0;H[c+64>>2]=0;H[c+68>>2]=0;wz(a,c+208|0,c+176|0,c+192|0,c+160|0,c+128|0,c+96|0,c+80|0,c- -64|0);e=J[a+8>>1];d=H[a>>2];c:{if((d|0)==H[a+4>>2]){Ra[H[H[d>>2]+132>>2]](d,e,c+128|0,c+80|0,J[a+10>>1],c+96|0,c- -64|0,H[b+32>>2],H[b+36>>2]);break c}d:{if((e|0)==65535){e=H[c+212>>2];f=H[c+208>>2];L[d+8>>2]=L[c+216>>2];H[d>>2]=f;H[d+4>>2]=e;g=L[c+200>>2];e=H[c+196>>2];d=H[a>>2];H[d+16>>2]=H[c+192>>2];H[d+20>>2]=e;L[d+24>>2]=g;break d}f=H[b+36>>2];h=H[b+32>>2];j=H[H[d>>2]+128>>2];i=H[c+140>>2];H[c+56>>2]=H[c+136>>2];H[c+60>>2]=i;i=H[c+132>>2];H[c+48>>2]=H[c+128>>2];H[c+52>>2]=i;i=H[c+84>>2];H[c+32>>2]=H[c+80>>2];H[c+36>>2]=i;i=H[c+92>>2];H[c+40>>2]=H[c+88>>2];H[c+44>>2]=i;Ra[j|0](d,e,c+48|0,c+32|0,h,f)}d=J[a+10>>1];if((d|0)==65535){d=H[c+180>>2];e=H[c+176>>2];b=H[a+4>>2];L[b+8>>2]=L[c+184>>2];H[b>>2]=e;H[b+4>>2]=d;g=L[c+168>>2];b=H[c+164>>2];a=H[a+4>>2];H[a+16>>2]=H[c+160>>2];H[a+20>>2]=b;L[a+24>>2]=g;break c}e=H[b+36>>2];b=H[b+32>>2];a=H[a+4>>2];f=H[H[a>>2]+128>>2];h=H[c+108>>2];H[c+24>>2]=H[c+104>>2];H[c+28>>2]=h;h=H[c+100>>2];H[c+16>>2]=H[c+96>>2];H[c+20>>2]=h;h=H[c+68>>2];H[c>>2]=H[c+64>>2];H[c+4>>2]=h;h=H[c+76>>2];H[c+8>>2]=H[c+72>>2];H[c+12>>2]=h;Ra[f|0](a,d,c+16|0,c,b,e)}Oa=c+224|0}function uA(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p){var q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),F=O(0),G=O(0),J=O(0),K=O(0),M=O(0),N=O(0),P=O(0),Q=O(0),R=O(0),S=O(0),T=O(0),U=O(0),V=O(0),W=O(0),X=O(0),Y=O(0),Z=O(0),_=O(0),$=O(0),aa=O(0),ba=O(0);a=H[a+24>>2];if(I[a+1|0]){w=L[k+8>>2];q=L[a+56>>2];x=L[k>>2];s=L[a+48>>2];t=L[a+52>>2];y=L[k+4>>2];z=O(O(w*q)+O(O(x*s)+O(t*y)));u=L[k+12>>2];A=O(O(u*u)+O(-.5));v=O(O(w*z)+O(O(u*O(O(x*t)-O(s*y)))+O(q*A)));Y=O(O(O(v+v)+L[g+8>>2])-q);v=O(O(y*z)+O(O(u*O(O(w*s)-O(q*x)))+O(t*A)));Z=O(O(L[g+4>>2]+O(v+v))-t);q=O(O(x*z)+O(O(u*O(O(y*q)-O(t*w)))+O(s*A)));_=O(O(L[g>>2]+O(q+q))-s);w=L[j+8>>2];q=L[a+40>>2];x=L[j>>2];s=L[a+32>>2];t=L[a+36>>2];y=L[j+4>>2];z=O(O(w*q)+O(O(x*s)+O(t*y)));u=L[j+12>>2];A=O(O(u*u)+O(-.5));v=O(O(w*z)+O(O(u*O(O(x*t)-O(s*y)))+O(q*A)));$=O(O(O(v+v)+L[f+8>>2])-q);v=O(O(y*z)+O(O(u*O(O(w*s)-O(q*x)))+O(t*A)));aa=O(O(O(v+v)+L[f+4>>2])-t);q=O(O(x*z)+O(O(u*O(O(y*q)-O(t*w)))+O(s*A)));ba=O(O(L[f>>2]+O(q+q))-s);j=a+176|0;k=0;s=O(0);t=O(0);u=O(0);w=O(0);x=O(0);y=O(0);z=O(0);A=O(0);v=O(0);while(1){q=L[j+80>>2];D=L[j+8>>2];E=L[j>>2];F=L[j+4>>2];G=L[j+24>>2];J=L[j+16>>2];K=L[j+20>>2];M=L[j+40>>2];N=L[j+32>>2];P=L[j+36>>2];Q=L[j+56>>2];R=L[j+48>>2];S=L[j+52>>2];B=L[j+64>>2];r=O(L[j+28>>2]*O(O(O(O(O(O($*D)+O(O(ba*E)+O(aa*F)))-O(O(Y*G)+O(O(_*J)+O(Z*K))))+L[j+12>>2])+O(L[j+92>>2]*O(O(O(M*L[h+8>>2])+O(O(N*L[h>>2])+O(P*L[h+4>>2])))-O(O(Q*L[i+8>>2])+O(O(R*L[i>>2])+O(S*L[i+4>>2]))))))-O(B*l)));r=q>2];T=L[j+76>>2];U=L[j+88>>2];q=H[j+84>>2]&64?O(-3.4028234663852886e38):O(-q);q=O(O(L[j+60>>2]*T)+O(O(U*O(B+(q>2])*O(O(O(O(O(E*L[b>>2])+O(N*L[d>>2]))-O(O(J*L[c>>2])+O(R*L[e>>2])))+O(O(O(F*L[b+4>>2])+O(P*L[d+4>>2]))-O(O(K*L[c+4>>2])+O(S*L[e+4>>2]))))+O(O(O(D*L[b+8>>2])+O(M*L[d+8>>2]))-O(O(G*L[c+8>>2])+O(Q*L[e+8>>2])))))));q=q>2];q=q>2]=q;r=L[j+104>>2];B=L[j+100>>2];C=L[j+96>>2];H[b+12>>2]=0;q=O(q-T);L[b+4>>2]=L[b+4>>2]+O(B*q);L[b+8>>2]=L[b+8>>2]+O(r*q);L[b>>2]=L[b>>2]+O(C*q);r=L[j+112>>2];B=L[j+116>>2];C=L[j+120>>2];H[d+12>>2]=0;L[d+8>>2]=O(q*C)+L[d+8>>2];L[d+4>>2]=O(q*B)+L[d+4>>2];L[d>>2]=O(r*q)+L[d>>2];r=L[j+132>>2];B=L[j+136>>2];C=L[j+128>>2];H[c+12>>2]=0;L[c+8>>2]=O(q*B)+L[c+8>>2];L[c+4>>2]=O(q*r)+L[c+4>>2];L[c>>2]=O(q*C)+L[c>>2];r=L[j+144>>2];B=L[j+148>>2];C=L[j+152>>2];H[e+12>>2]=0;L[e+8>>2]=O(q*C)+L[e+8>>2];L[e+4>>2]=O(q*B)+L[e+4>>2];L[e>>2]=O(q*r)+L[e>>2];v=O(v+O(Q*q));A=O(A+O(S*q));z=O(z+O(R*q));u=O(u+O(G*q));t=O(t+O(K*q));s=O(s+O(J*q));y=O(y+O(M*q));x=O(x+O(P*q));w=O(w+O(N*q));V=O(V+O(D*q));W=O(W+O(F*q));X=O(X+O(E*q));j=j+160|0;k=k+1|0;if(k>>>0>2];H[m+12>>2]=0;L[m+8>>2]=V*l;L[m+4>>2]=W*l;L[m>>2]=X*l;l=L[a+64>>2];H[n+12>>2]=0;L[n+8>>2]=u*l;L[n+4>>2]=t*l;L[n>>2]=s*l;l=L[a+60>>2];H[o+12>>2]=0;L[o+8>>2]=y*l;L[o+4>>2]=x*l;L[o>>2]=w*l;l=L[a+68>>2];H[p+12>>2]=0;L[p+8>>2]=v*l;L[p+4>>2]=A*l;L[p>>2]=z*l}function uH(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;o=Oa-16|0;Oa=o;if(b){H[a+68>>2]=b;H[a+72>>2]=1;Ra[H[H[b>>2]+16>>2]](b);H[a- -64>>2]=H[H[a+68>>2]+16>>2];H[a+32>>2]=1;e=a+48|0;H[a+28>>2]=e;Ra[H[H[a+48>>2]+16>>2]](e);H[a+24>>2]=H[H[a+28>>2]+16>>2]}H[a+400>>2]=H[a+400>>2]+1;if(H[a+264>>2]?1:H[a+232>>2]|H[a+248>>2]){e=H[a+272>>2];Ra[H[H[e>>2]+48>>2]](e,c)}a:{if(K[a+308>>2]>=(H[a+312>>2]>>>1&1073741823)>>>0){H[a+308>>2]=0;break a}c=a+304|0;vH(c,o);wH(c,H[a+308>>2])}b:{if(K[a+332>>2]>=(H[a+336>>2]>>>1&1073741823)>>>0){H[a+332>>2]=0;break b}c=a+328|0;vH(c,o);wH(c,H[a+332>>2])}c:{if(K[a+320>>2]>=(H[a+324>>2]>>>1&1073741823)>>>0){H[a+320>>2]=0;break c}c=a+316|0;vH(c,o);wH(c,H[a+320>>2])}d:{if(K[a+344>>2]>=(H[a+348>>2]>>>1&1073741823)>>>0){H[a+344>>2]=0;break d}c=a+340|0;vH(c,o);wH(c,H[a+344>>2])}c=H[a+272>>2];k=Ra[H[H[c>>2]+60>>2]](c)|0;c=H[a+272>>2];c=Ra[H[H[c>>2]+64>>2]](c)|0;if(k){h=1073741823;e=1073741823;while(1){k=k-1|0;n=H[c>>2];p=H[c+4>>2];if(!((n|0)==(e|0)&(p|0)==(h|0))){h=Oa-16|0;Oa=h;f=H[a+196>>2];e=H[c+4>>2];g=H[(f+(e<<3)|0)+4>>2];i=H[c>>2];l=H[((i<<3)+f|0)+4>>2];e:{if(!((l|0)!=-1|(g|0)!=-1)){g=H[(i<<3)+f>>2];if(g>>>0<4){break e}f=H[(e<<3)+f>>2];if(f>>>0<4){break e}H[h+4>>2]=e;H[h>>2]=i;e=f&3;f=g&3;e=N(e>>>0>f>>>0?e:f,12)+a|0;f=e+328|0;i=H[e+332>>2];if(i>>>0>=(H[e+336>>2]&2147483647)>>>0){tH(f,h);break e}f=H[f>>2]+N(i,12)|0;i=H[h+4>>2];H[f>>2]=H[h>>2];H[f+4>>2]=i;H[f+8>>2]=H[h+8>>2];H[e+332>>2]=H[e+332>>2]+1;break e}g=((l|0)==-1?404:(g|0)==-1?404:444)+a|0;m=H[g+8>>2];j=e>>>0>>0;l=j?e:i;i=j?i:e;e=l&65535|i<<16;e=(e<<15^-1)+e|0;e=N(e>>>10^e,9);e=e>>>6^e;e=(e<<11^-1)+e|0;e=H[H[g+12>>2]+((H[g+20>>2]-1&(e>>>16^e))<<2)>>2];g=H[g+4>>2];j=N(e,12)+g|0;if(!(H[j>>2]==(l|0)&(i|0)==H[j+4>>2])){while(1){e=H[m+(e<<2)>>2];j=g+N(e,12)|0;if((l|0)!=H[j>>2]|H[j+4>>2]!=(i|0)){continue}break}}f:{i=H[(g+N(e,12)|0)+8>>2];l=H[i+16>>2];if(!l){break f}e=0;while(1){g=H[i+28>>2]+(e<<3)|0;m=H[g>>2]&2147483647;j=H[(m<<3)+f>>2];g:{if(j>>>0<4){break g}q=f;f=H[g+4>>2]&2147483647;g=H[q+(f<<3)>>2];if(g>>>0<4){break g}H[h+4>>2]=f;H[h>>2]=m;f=g&3;g=j&3;f=N(f>>>0>g>>>0?f:g,12)+a|0;g=f+328|0;m=H[f+332>>2];if(m>>>0>=(H[f+336>>2]&2147483647)>>>0){tH(g,h);break g}g=H[g>>2]+N(m,12)|0;m=H[h+4>>2];H[g>>2]=H[h>>2];H[g+4>>2]=m;H[g+8>>2]=H[h+8>>2];H[f+332>>2]=H[f+332>>2]+1}e=e+1|0;if((l|0)==(e|0)){break f}f=H[a+196>>2];continue}}F[i+36|0]=1}Oa=h+16|0;h=p;e=n}c=c+8|0;if(k){continue}break}}h:{if(b){c=a+8|0;e=H[a+392>>2];if(e){k=0;while(1){b=yq(d,40);h=H[a+388>>2];n=H[a+556>>2];p=H[a+552>>2];H[b+24>>2]=0;H[b+16>>2]=0;H[b+8>>2]=p;H[b+12>>2]=n;n=e-k|0;H[b+32>>2]=n>>>0<16?n:16;H[b>>2]=115728;H[b+20>>2]=c;H[b+24>>2]=1;H[b+28>>2]=h+(k<<2);Ra[H[H[a+8>>2]+16>>2]](c);H[b+16>>2]=H[H[b+20>>2]+16>>2];Ra[H[H[b>>2]+20>>2]](b);k=k+16|0;if(e>>>0>k>>>0){continue}break}}H[a+36>>2]=d;b=H[a- -64>>2];Ra[H[H[b>>2]+72>>2]](b,a+48|0);a=H[a+24>>2];Ra[H[H[a>>2]+72>>2]](a,c);break h}xH(a,0,d);yH(a)}Oa=o+16|0}function Mu(a,b,c,d){var e=O(0),f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),F=O(0),G=O(0),I=O(0),J=O(0),K=O(0),M=O(0),N=O(0),P=O(0),Q=O(0),R=O(0),S=O(0),T=O(0),U=O(0),V=O(0),W=O(0),X=O(0),Y=O(0),Z=O(0),_=O(0),$=O(0),aa=O(0),ba=O(0),ca=O(0),da=O(0),ea=O(0),fa=O(0),ga=O(0),ha=O(0),ia=O(0),ja=O(0);h=L[c+20>>2];i=L[c+24>>2];e=L[c+36>>2];q=L[c+40>>2];r=L[c+56>>2];s=L[c+48>>2];t=L[c+52>>2];R=L[b+20>>2];S=L[b+36>>2];T=L[b+24>>2];U=L[b+40>>2];j=L[b+52>>2];k=L[b+56>>2];z=L[b+112>>2];V=L[b+128>>2];l=L[b- -64>>2];A=L[b+68>>2];B=L[b+72>>2];C=L[b+132>>2];W=L[b+100>>2];X=L[b+116>>2];D=L[b+80>>2];E=L[b+84>>2];f=L[c+68>>2];F=L[b+88>>2];g=L[c+72>>2];G=L[b+136>>2];v=L[c+88>>2];Y=L[b+104>>2];w=L[c+80>>2];Z=L[b+120>>2];x=L[c+84>>2];m=L[c+8>>2];n=L[c>>2];o=L[c+4>>2];p=L[c+16>>2];u=L[c+32>>2];_=L[b+32>>2];$=L[b+16>>2];aa=L[b>>2];ba=L[b+4>>2];ca=L[b+8>>2];I=L[b+48>>2];da=L[b+96>>2];y=L[c+64>>2];H[d+92>>2]=0;H[d+76>>2]=0;H[d+60>>2]=0;H[d+44>>2]=0;H[d+28>>2]=0;H[d+12>>2]=0;J=O(O(O(F*g)+O(O(D*y)+O(f*E)))+O(O(G*v)+O(O(Y*w)+O(x*Z))));L[d+88>>2]=J;K=O(O(O(B*g)+O(O(l*y)+O(f*A)))+O(O(C*v)+O(O(W*w)+O(x*X))));L[d+84>>2]=K;M=O(O(O(k*g)+O(O(I*y)+O(f*j)))+O(O(V*v)+O(O(da*w)+O(x*z))));L[d+80>>2]=M;N=O(O(O(U*g)+O(O(ca*y)+O(f*T)))+O(O(F*v)+O(O(k*w)+O(x*B))));L[d+72>>2]=N;P=O(O(O(S*g)+O(O(ba*y)+O(f*R)))+O(O(E*v)+O(O(j*w)+O(x*A))));L[d+68>>2]=P;Q=O(O(O(_*g)+O(O(aa*y)+O(f*$)))+O(O(D*v)+O(O(I*w)+O(x*l))));L[d+64>>2]=Q;ea=O(O(O(F*q)+O(O(D*u)+O(e*E)))+O(O(G*r)+O(O(Y*s)+O(t*Z))));L[d+56>>2]=ea;fa=O(O(O(B*q)+O(O(l*u)+O(e*A)))+O(O(C*r)+O(O(W*s)+O(t*X))));L[d+52>>2]=fa;ga=O(O(O(k*q)+O(O(I*u)+O(e*j)))+O(O(V*r)+O(O(da*s)+O(t*z))));L[d+48>>2]=ga;ha=O(O(O(U*q)+O(O(ca*u)+O(e*T)))+O(O(F*r)+O(O(k*s)+O(t*B))));L[d+40>>2]=ha;ia=O(O(O(S*q)+O(O(ba*u)+O(e*R)))+O(O(E*r)+O(O(j*s)+O(t*A))));L[d+36>>2]=ia;ja=O(O(O(_*q)+O(O(aa*u)+O(e*$)))+O(O(D*r)+O(O(I*s)+O(t*l))));L[d+32>>2]=ja;G=O(O(O(F*m)+O(O(D*n)+O(o*E)))+O(O(G*i)+O(O(Y*p)+O(h*Z))));L[d+24>>2]=G;C=O(O(O(B*m)+O(O(l*n)+O(o*A)))+O(O(C*i)+O(O(W*p)+O(h*X))));L[d+20>>2]=C;z=O(O(O(k*m)+O(O(I*n)+O(o*j)))+O(O(V*i)+O(O(da*p)+O(h*z))));L[d+16>>2]=z;k=O(O(O(U*m)+O(O(ca*n)+O(o*T)))+O(O(F*i)+O(O(k*p)+O(h*B))));L[d+8>>2]=k;j=O(O(O(S*m)+O(O(ba*n)+O(o*R)))+O(O(E*i)+O(O(j*p)+O(h*A))));L[d+4>>2]=j;l=O(O(O(_*m)+O(O(aa*n)+O(o*$)))+O(O(D*i)+O(O(I*p)+O(h*l))));L[d>>2]=l;H[a+44>>2]=0;H[a+28>>2]=0;H[a+12>>2]=0;L[a+40>>2]=O(O(g*N)+O(O(y*Q)+O(f*P)))+O(O(v*J)+O(O(w*M)+O(x*K)));f=O(O(O(q*N)+O(O(u*Q)+O(e*P)))+O(O(r*J)+O(O(s*M)+O(t*K))));L[a+36>>2]=f;g=O(O(O(m*N)+O(O(n*Q)+O(o*P)))+O(O(i*J)+O(O(p*M)+O(h*K))));L[a+32>>2]=g;L[a+24>>2]=f;L[a+20>>2]=O(O(q*ha)+O(O(u*ja)+O(e*ia)))+O(O(r*ea)+O(O(s*ga)+O(t*fa)));e=O(O(O(m*ha)+O(O(n*ja)+O(o*ia)))+O(O(i*ea)+O(O(p*ga)+O(h*fa))));L[a+16>>2]=e;L[a+8>>2]=g;L[a+4>>2]=e;L[a>>2]=O(O(m*k)+O(O(n*l)+O(o*j)))+O(O(i*G)+O(O(p*z)+O(h*C)))}function qB(a,b,c,d){var e=0,f=O(0),g=O(0),h=O(0),i=0,j=O(0),k=O(0),l=O(0),m=0,n=O(0),o=O(0),p=O(0),q=0,r=0,s=0,t=O(0),u=0,v=0,w=0,x=0,y=0,z=0;i=Oa-32|0;Oa=i;a:{if(H[a+28>>2]){while(1){e=N(m,24)+a|0;f=L[e+172>>2];g=L[e+160>>2];h=L[e+176>>2];j=L[e+164>>2];k=L[e+180>>2];l=L[e+168>>2];L[i+24>>2]=O(k-l)*O(.5);L[i+20>>2]=O(h-j)*O(.5);L[i+16>>2]=O(f-g)*O(.5);L[i+8>>2]=O(l+k)*O(.5);L[i+4>>2]=O(j+h)*O(.5);L[i>>2]=O(g+f)*O(.5);b:{if(!rB(b,i)){break b}H[i>>2]=-1082130432;if(Ra[H[H[c>>2]>>2]](c,i,((m<<3)+a|0)+32|0)|0){break b}e=0;break a}m=m+1|0;if(m>>>0>2]){continue}break}}e=1;if(!H[a+636>>2]){break a}if(!rB(b,a+656|0)){break a}e=(H[a+644>>2]<<2)+d|0;d=H[e>>2];y=(d|0)>=0?d|-2147483648:d^-1;d=H[e+12>>2];z=(d|0)>=0?d|-2147483648:d^-1;u=1;while(1){c:{v=(r<<2)+a|0;d:{if(!H[v+688>>2]){break d}if(!rB(b,((r<<5)+a|0)+736|0)){break d}s=0;while(1){d=N(r,224)+a|0;w=d+(s<<2)|0;e:{if(!H[w+912>>2]){break e}if(!rB(b,(d+(s<<5)|0)+960|0)){break e}m=0;x=1;while(1){f:{e=(N(r,1120)+a|0)+N(s,224)|0;q=e+(m<<2)|0;d=H[q+2032>>2];g:{if(!d){break g}e=e+(m<<5)|0;f=O(L[b+16>>2]-L[e+2080>>2]);j=L[e+2096>>2];n=O(j+L[b+128>>2]);if(f>n){break g}g=O(L[b+20>>2]-L[e+2084>>2]);k=L[e+2100>>2];o=O(k+L[b+132>>2]);if(g>o){break g}h=O(L[b+24>>2]-L[e+2088>>2]);l=L[e+2104>>2];p=O(l+L[b+136>>2]);if(fp|(g>2])+O(g*L[b+48>>2]))+O(h*L[b+64>>2]));o=O(O(l*L[b+112>>2])+O(O(k*L[b+96>>2])+O(O(j*L[b+80>>2])+L[b>>2])));if(n>o){break g}p=O(O(O(f*L[b+36>>2])+O(g*L[b+52>>2]))+O(h*L[b+68>>2]));t=O(O(l*L[b+116>>2])+O(O(k*L[b+100>>2])+O(O(j*L[b+84>>2])+L[b+4>>2])));if(p>t){break g}f=O(O(O(f*L[b+40>>2])+O(g*L[b+56>>2]))+O(h*L[b+72>>2]));g=O(O(l*L[b+120>>2])+O(O(k*L[b+104>>2])+O(O(j*L[b+88>>2])+L[b+8>>2])));if(ng|(p>2]+(H[w+932>>2]+H[v+708>>2]|0)|0;e=H[a+20>>2]+(q<<5)|0;q=H[a+24>>2]+(q<<3)|0;while(1){h:{if(K[e+28>>2]>>0){break h}if(K[e+12>>2]>z>>>0){break g}f=O(L[b+16>>2]-L[e>>2]);j=L[e+16>>2];n=O(j+L[b+128>>2]);if(f>n){break h}g=O(L[b+20>>2]-L[e+4>>2]);k=L[e+20>>2];o=O(k+L[b+132>>2]);if(g>o){break h}h=O(L[b+24>>2]-L[e+8>>2]);l=L[e+24>>2];p=O(l+L[b+136>>2]);if(fp|(g>2])+O(g*L[b+48>>2]))+O(h*L[b+64>>2]));o=O(O(l*L[b+112>>2])+O(O(k*L[b+96>>2])+O(O(j*L[b+80>>2])+L[b>>2])));if(n>o){break h}p=O(O(O(f*L[b+36>>2])+O(g*L[b+52>>2]))+O(h*L[b+68>>2]));t=O(O(l*L[b+116>>2])+O(O(k*L[b+100>>2])+O(O(j*L[b+84>>2])+L[b+4>>2])));if(p>t){break h}f=O(O(O(f*L[b+40>>2])+O(g*L[b+56>>2]))+O(h*L[b+72>>2]));g=O(O(l*L[b+120>>2])+O(O(k*L[b+104>>2])+O(O(j*L[b+88>>2])+L[b+8>>2])));if(ng|(p>2]=-1082130432;if(!(Ra[H[H[c>>2]>>2]](c,i,q)|0)){break f}}q=q+8|0;e=e+32|0;d=d-1|0;if(d){continue}break}}x=m>>>0<4;m=m+1|0;if((m|0)!=5){continue}break e}break}if(x){break c}}s=s+1|0;if((s|0)!=5){continue}break}}u=r>>>0<4;r=r+1|0;if((r|0)!=5){continue}}break}e=!u}Oa=i+32|0;return e&1}function oT(a,b,c){var d=0,e=0,f=0,g=0,h=O(0),i=O(0),j=0,k=0;e=Oa-32|0;Oa=e;H[a>>2]=125172;g=a+8|0;d=g;H[d>>2]=0;H[d+4>>2]=0;H[d+20>>2]=0;H[d+24>>2]=0;F[d+59|0]=1;F[d+60|0]=0;H[d+8>>2]=0;H[d+12>>2]=0;H[d+16>>2]=1065353216;H[d+28>>2]=0;H[d+32>>2]=0;H[d+36>>2]=0;H[d+40>>2]=0;H[d+44>>2]=0;H[d+48>>2]=0;F[d+51|0]=0;F[d+52|0]=0;F[d+53|0]=0;F[d+54|0]=0;F[d+55|0]=0;F[d+56|0]=0;F[d+57|0]=0;F[d+58|0]=0;f=I[b+92|0];d=a+88|0;H[d>>2]=0;H[d+4>>2]=0;H[d+152>>2]=0;H[d+240>>2]=0;H[d+244>>2]=0;H[d+8>>2]=0;H[d+12>>2]=0;H[d+16>>2]=0;H[d+20>>2]=0;H[d+24>>2]=0;H[d+28>>2]=0;H[d+32>>2]=0;H[d+36>>2]=0;H[d+40>>2]=0;H[d+172>>2]=0;F[d+168|0]=f;H[d+160>>2]=0;H[d+164>>2]=0;F[d+156|0]=f;H[d+248>>2]=0;H[d+252>>2]=0;H[d+260>>2]=0;H[d+264>>2]=0;H[d+256>>2]=1065353216;H[d+268>>2]=0;H[d+272>>2]=0;H[d+276>>2]=0;H[d+280>>2]=0;H[d+284>>2]=0;H[d+288>>2]=0;F[d+291|0]=0;F[d+292|0]=0;F[d+293|0]=0;F[d+294|0]=0;F[d+295|0]=0;F[d+296|0]=0;F[d+297|0]=0;F[d+298|0]=0;H[d+312>>2]=-1;F[d+299|0]=1;F[d+300|0]=0;H[d+324>>2]=0;H[d+316>>2]=0;H[d+320>>2]=0;H[d+332>>2]=0;F[d+328|0]=f;H[d+48>>2]=-1;H[d+52>>2]=2146435071;H[d+56>>2]=-1;H[d+60>>2]=2146435071;f=d- -64|0;H[f>>2]=-1;H[f+4>>2]=2146435071;H[d+72>>2]=-1;H[d+76>>2]=-1048577;H[d+80>>2]=-1;H[d+84>>2]=-1048577;H[d+88>>2]=-1;H[d+92>>2]=-1048577;H[d+112>>2]=0;H[d+116>>2]=0;H[d+104>>2]=0;H[d+108>>2]=0;H[d+96>>2]=0;H[d+100>>2]=0;H[d+176>>2]=-1;H[d+236>>2]=0;H[d+228>>2]=0;H[d+232>>2]=0;H[d+220>>2]=0;H[d+224>>2]=0;H[d+212>>2]=0;H[d+216>>2]=0;H[d+204>>2]=0;H[d+208>>2]=0;H[d+196>>2]=0;H[d+200>>2]=0;H[d+188>>2]=0;H[d+192>>2]=0;H[d+180>>2]=0;H[d+184>>2]=0;H[d+120>>2]=0;H[d+124>>2]=0;H[d+304>>2]=1069547520;H[d+128>>2]=0;H[d+132>>2]=0;H[d+136>>2]=0;H[d+140>>2]=0;H[d+144>>2]=0;H[d+148>>2]=0;H[a+488>>2]=0;H[a+492>>2]=0;H[a+484>>2]=-1;H[a+480>>2]=c;H[a+496>>2]=0;H[a+500>>2]=0;H[a+504>>2]=0;H[a+508>>2]=0;G[a+512>>1]=0;d=H[33808];c=Ra[H[H[d>>2]+20>>2]](d)|0?33606:55639;j=a,k=Ra[H[H[d+12>>2]+8>>2]](d+12|0,28,c,13721,113)|0,H[j+516>>2]=k;c=Oa-16|0;Oa=c;Oa=c+16|0;H[a+4>>2]=2147483647;H[a+520>>2]=0;H[g>>2]=H[b+84>>2];h=L[b+44>>2];L[a+40>>2]=h;L[a+44>>2]=L[b+56>>2];L[a+48>>2]=L[b+60>>2];L[a+52>>2]=L[b+48>>2];i=L[b+52>>2];F[a+65|0]=h!=O(0);L[a+56>>2]=i;H[a+72>>2]=H[b+76>>2];H[a+76>>2]=H[b+80>>2];c=H[b+96>>2];H[a+424>>2]=0;H[a+80>>2]=c;c=H[b+12>>2];H[a+432>>2]=H[b+8>>2];H[a+436>>2]=c;c=H[b+20>>2];H[a+440>>2]=H[b+16>>2];H[a+444>>2]=c;c=H[b+28>>2];H[a+448>>2]=H[b+24>>2];H[a+452>>2]=c;L[a+504>>2]=L[b+64>>2];L[a+508>>2]=L[b+68>>2];L[a+392>>2]=L[b+72>>2];c=I[b+92|0];H[a+456>>2]=0;H[a+460>>2]=0;H[a+36>>2]=0;H[a+28>>2]=0;H[a+32>>2]=0;F[a+514|0]=c;H[a+464>>2]=0;H[a+468>>2]=0;H[a+472>>2]=0;H[a+476>>2]=0;if(!(!(L[b+32>>2]!=O(0)|L[b+36>>2]!=O(0))&L[b+40>>2]==O(0))){H[e+8>>2]=0;H[e>>2]=1065353216;H[e+4>>2]=0;C5(e+16|0,e,b+32|0);L[a+12>>2]=L[e+16>>2];L[a+16>>2]=L[e+20>>2];L[a+20>>2]=L[e+24>>2];L[a+24>>2]=L[e+28>>2];L[a+28>>2]=L[b+32>>2];L[a+32>>2]=L[b+36>>2];L[a+36>>2]=L[b+40>>2]}Oa=e+32|0;return a}function xI(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;i=Oa-16|0;Oa=i;e=H[b+4>>2];g=H[c+4>>2];f=K[e+48>>2]>K[g+48>>2];j=f?g:e;H[i>>2]=H[j+48>>2];k=f?e:g;H[i+4>>2]=H[k+48>>2];g=a+1916|0;e=H[g+20>>2];a:{b:{if(!e){break b}m=H[i>>2];n=H[i+4>>2];f=m&65535|n<<16;f=(f<<15^-1)+f|0;f=N(f>>>10^f,9);f=f>>>6^f;f=(f<<11^-1)+f|0;h=e-1&(f>>>16^f);f=H[H[g+12>>2]+(h<<2)>>2];if((f|0)==-1){break b}l=g+4|0;p=H[g+8>>2];q=H[g+4>>2];while(1){o=N(f,12)+q|0;if(!((m|0)!=H[o>>2]|H[o+4>>2]!=(n|0))){F[i+15|0]=1;break a}f=H[(f<<2)+p>>2];if((f|0)!=-1){continue}break}}F[i+15|0]=0;if(H[g+36>>2]==H[g+16>>2]){f=e?e<<1:16;if(f>>>0>e>>>0){lH(g,f);e=H[g+20>>2]}f=e-1|0;e=J[i>>1]|H[i+4>>2]<<16;e=(e<<15^-1)+e|0;e=N(e>>>10^e,9);e=e>>>6^e;e=(e<<11^-1)+e|0;h=f&(e>>>16^e)}f=H[g+28>>2];H[g+28>>2]=f+1;e=H[g+12>>2]+(h<<2)|0;H[H[g+8>>2]+(f<<2)>>2]=H[e>>2];H[e>>2]=f;H[g+36>>2]=H[g+36>>2]+1;H[g+32>>2]=H[g+32>>2]+1;l=g+4|0}e=H[l>>2]+N(f,12)|0;c:{d:{e:{f:{if(!I[i+15|0]){g=H[i+4>>2];f=H[i>>2];H[e+8>>2]=0;H[e>>2]=f;H[e+4>>2]=g;f=e+8|0;break f}f=e+8|0;e=H[e+8>>2];if(e){break e}}if(!d){e=H[a+400>>2];if(!e){g=Oa-16|0;Oa=g;j=a+112|0;c=H[j+284>>2];if(c){b=H[33808];d=b+12|0;e=(s=d,t=c,u=Ra[H[H[b>>2]+20>>2]](b)|0?27154:55639,v=15259,w=180,r=H[H[d>>2]+8>>2],Ra[r](s|0,t|0,u|0,v|0,w|0)|0)}else{e=0}H[g+12>>2]=e;b=H[j+268>>2];g:{if(b>>>0>=(H[j+272>>2]&2147483647)>>>0){d=j+4|0;c=H[d+268>>2]&2147483647;l=c?c<<1:1;b=0;h:{if(!l){break h}c=l<<2;if(!(I[d+256|0]|c>>>0>256)){F[d+256|0]=1;b=d;break h}b=0;if(!c){break h}b=H[33808];h=Ra[H[H[b>>2]+20>>2]](b)|0?27154:55639;b=Ra[H[H[b+12>>2]+8>>2]](b+12|0,c,h,13582,553)|0}k=H[d+264>>2];m=b+(k<<2)|0;if((k|0)>0){h=H[d+260>>2];c=b;while(1){H[c>>2]=H[h>>2];h=h+4|0;c=c+4|0;if(m>>>0>c>>>0){continue}break}}H[m>>2]=H[g+12>>2];i:{if(H[d+268>>2]<0){break i}c=H[d+260>>2];if((c|0)==(d|0)){F[d+256|0]=0;break i}if(!c){break i}h=H[33808];Ra[H[H[h+12>>2]+12>>2]](h+12|0,c);k=H[d+264>>2]}H[d+268>>2]=l;H[d+260>>2]=b;H[d+264>>2]=k+1;break g}H[H[j+264>>2]+(b<<2)>>2]=e;H[j+268>>2]=b+1}b=(e+(H[j+276>>2]<<3)|0)-8|0;if(e>>>0<=b>>>0){c=H[j+288>>2];while(1){H[b>>2]=c;c=b;b=b-8|0;if(e>>>0<=b>>>0){continue}break}H[j+288>>2]=c}Oa=g+16|0;e=H[a+400>>2]}H[a+400>>2]=H[e>>2];H[a+392>>2]=H[a+392>>2]+1;G[e+4>>1]=0;G[e>>1]=0;G[e+2>>1]=0;break d}g=H[c+4>>2];h=H[b+4>>2];e=H[a+692>>2];if(!e){yI(a+404|0);e=H[a+692>>2]}H[a+692>>2]=H[e>>2];H[a+684>>2]=H[a+684>>2]+1;H[e+16>>2]=0;H[e+12>>2]=g;H[e+8>>2]=h;G[e+4>>1]=0;H[e>>2]=1;H[f>>2]=e}if(!d|G[e>>1]&1){break c}d=H[j+28>>2];c=H[c+4>>2];g=H[b+4>>2];b=H[j+20>>2];e=H[a+692>>2];if(!e){yI(a+404|0);e=H[a+692>>2]}H[a+692>>2]=H[e>>2];H[a+684>>2]=H[a+684>>2]+1;H[e+16>>2]=0;H[e+12>>2]=c;H[e+8>>2]=g;G[e+4>>1]=0;H[e>>2]=1;a=H[f>>2];G[e+2>>1]=J[a+2>>1];G[e+4>>1]=J[a+4>>1];if(!d){break d}while(1){d=d-1|0;a=H[b>>2];if(!((k|0)!=H[a>>2]&(k|0)!=H[a+4>>2]|I[a+20|0]|!H[a+44>>2])){H[a+44>>2]=e}b=b+4|0;if(d){continue}break}}H[f>>2]=e}Oa=i+16|0;return e}function nI(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;h=Oa-48|0;Oa=h;WG(b+4|0,e);if(I[b+25|0]&16){e=H[b+36>>2];oI(H[a>>2],H[b+28>>2],H[b+32>>2],e,c&1);i=H[a+108>>2];H[H[i>>2]+(e<<2)>>2]=H[i+12>>2];H[i+12>>2]=e}a:{b:{switch(I[b+24|0]){case 1:F[h+44|0]=0;G[h+16>>1]=65535;H[h+8>>2]=-1;H[h+12>>2]=-1;e=I[b+58|0];F[b+58|0]=0;c:{if(!(J[b+56>>1]&((e|0)!=0)<<4)){break c}d=H[b+32>>2];f=H[b+28>>2];H[h+24>>2]=H[33798]+H[f+28>>2];g=H[33798]+H[d+28>>2]|0;F[h+44|0]=c<<2&4;H[h+40>>2]=e<<4;H[h+32>>2]=g;c=H[H[d+4>>2]+44>>2];e=H[H[f+4>>2]+44>>2];H[h+28>>2]=H[((I[e+9|0]<<2)+135180|0)+40>>2]+e;H[h+36>>2]=c+H[((I[c+9|0]<<2)+135180|0)+40>>2];e=I[e+7|0];f=H[f+32>>2];d=H[d+32>>2];F[h+17|0]=I[c+7|0];F[h+16|0]=e;H[h+12>>2]=d;H[h+8>>2]=f;c=H[a>>2];d=H[c+1184>>2];d:{if(d>>>0>=(H[c+1188>>2]&2147483647)>>>0){d=0;e=c+1180|0;c=H[e+8>>2]&2147483647;g=c?c<<1:1;e:{if(!g){break e}f=N(g,24);if(!f){break e}c=H[33808];d=c+12|0;d=(l=d,m=f,n=Ra[H[H[c>>2]+20>>2]](c)|0?27268:55639,o=13582,p=553,k=H[H[d>>2]+8>>2],Ra[k](l|0,m|0,n|0,o|0,p|0)|0)}c=H[e+4>>2];if((c|0)>0){i=N(c,24)+d|0;f=H[e>>2];c=d;while(1){j=H[f+4>>2];H[c>>2]=H[f>>2];H[c+4>>2]=j;H[c+16>>2]=H[f+16>>2];j=H[f+12>>2];H[c+8>>2]=H[f+8>>2];H[c+12>>2]=j;F[c+20|0]=I[f+20|0];f=f+24|0;c=c+24|0;if(i>>>0>c>>>0){continue}break}c=H[e+4>>2]}f=H[h+28>>2];c=N(c,24)+d|0;H[c>>2]=H[h+24>>2];H[c+4>>2]=f;H[c+16>>2]=H[h+40>>2];f=H[h+36>>2];H[c+8>>2]=H[h+32>>2];H[c+12>>2]=f;F[c+20|0]=I[h+44|0];f:{if(H[e+8>>2]<0){break f}c=H[e>>2];if(!c){break f}f=H[33808]+12|0;Ra[H[H[f>>2]+12>>2]](f,c)}H[e+8>>2]=g;H[e>>2]=d;H[e+4>>2]=H[e+4>>2]+1;break d}e=H[h+28>>2];d=H[c+1180>>2]+N(d,24)|0;H[d>>2]=H[h+24>>2];H[d+4>>2]=e;H[d+16>>2]=H[h+40>>2];e=H[h+36>>2];H[d+8>>2]=H[h+32>>2];H[d+12>>2]=e;F[d+20|0]=I[h+44|0];H[c+1184>>2]=H[c+1184>>2]+1}g=H[H[a>>2]+1192>>2];c=H[g+4>>2];if(c>>>0>=(H[g+8>>2]&2147483647)>>>0){d=0;c=H[g+8>>2]&2147483647;i=c?c<<1:1;g:{if(!i){break g}e=N(i,12);if(!e){break g}c=H[33808];d=c+12|0;d=(p=d,o=e,n=Ra[H[H[c>>2]+20>>2]](c)|0?41810:55639,m=13582,l=553,k=H[H[d>>2]+8>>2],Ra[k](p|0,o|0,n|0,m|0,l|0)|0)}c=H[g+4>>2];if((c|0)>0){c=N(c,12)+d|0;f=H[g>>2];e=d;while(1){j=H[f+4>>2];H[e>>2]=H[f>>2];H[e+4>>2]=j;H[e+8>>2]=H[f+8>>2];f=f+12|0;e=e+12|0;if(c>>>0>e>>>0){continue}break}c=H[g+4>>2]}e=H[h+12>>2];c=N(c,12)+d|0;H[c>>2]=H[h+8>>2];H[c+4>>2]=e;H[c+8>>2]=H[h+16>>2];h:{if(H[g+8>>2]<0){break h}c=H[g>>2];if(!c){break h}e=H[33808]+12|0;Ra[H[H[e>>2]+12>>2]](e,c)}H[g+8>>2]=i;H[g>>2]=d;H[g+4>>2]=H[g+4>>2]+1;break c}d=H[h+12>>2];c=H[g>>2]+N(c,12)|0;H[c>>2]=H[h+8>>2];H[c+4>>2]=d;H[c+8>>2]=H[h+16>>2];H[g+4>>2]=H[g+4>>2]+1}Ra[H[H[b>>2]>>2]](b)|0;c=a+1268|0;H[c>>2]=H[c>>2]-1;a=a+1276|0;H[b>>2]=H[a>>2];H[a>>2]=b;break a;case 2:Ra[H[H[b>>2]>>2]](b)|0;c=a+1852|0;H[c>>2]=H[c>>2]-1;a=a+1860|0;H[b>>2]=H[a>>2];H[a>>2]=b;break a;case 0:break b;default:break a}}if(c&3){pI(a,b,c,d,f,g)}Ra[H[H[b>>2]>>2]](b)|0;H[a+976>>2]=H[a+976>>2]-1;H[b>>2]=H[a+984>>2];H[a+984>>2]=b}Oa=h+48|0}function rA(a,b,c){var d=O(0),e=0,f=0,g=0,h=O(0),i=O(0),j=O(0),k=O(0),l=0,m=O(0),n=O(0),o=0,p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),F=O(0),G=O(0),K=O(0),M=O(0),Q=O(0),S=O(0),T=0,U=O(0),V=0,W=O(0),X=O(0),Y=O(0),Z=O(0),_=O(0),$=O(0),aa=O(0),ba=O(0),ca=O(0),da=O(0),ea=0,fa=0,ga=O(0),ha=O(0),ia=0,ja=0,ka=0,la=O(0),ma=O(0),na=O(0),oa=O(0),pa=O(0);f=H[a+4>>2];p=L[f+24>>2];q=L[f+20>>2];g=H[a>>2];r=L[g+24>>2];s=L[g+20>>2];t=L[f+16>>2];u=L[g+16>>2];v=L[f+8>>2];w=L[f+4>>2];x=L[f>>2];y=L[g+8>>2];z=L[g+4>>2];A=L[g>>2];e=J[a+22>>1];if(e){X=O(L[g+56>>2]-L[f+56>>2]);Y=O(L[g+52>>2]-L[f+52>>2]);a=H[a+24>>2];ja=a+(e<<4)|0;Z=O(L[g+48>>2]-L[f+48>>2]);_=L[f+40>>2];$=L[f+36>>2];aa=L[g+40>>2];ba=L[g+36>>2];ca=L[f+32>>2];da=L[g+32>>2];while(1){T=a+80|0;o=I[a+2|0];ea=T+N(o,48)|0;fa=ea+((o<<2)+12&2032)|0;V=I[a+3|0];ka=V<<6;F=L[a+48>>2];G=L[a+12>>2];ga=L[a+8>>2];ha=L[a+4>>2];h=O(0);if(o){i=L[a+40>>2];j=L[a+32>>2];m=L[a+36>>2];W=O(O(X*i)+O(O(Z*j)+O(Y*m)));U=O(F*i);B=O(F*m);la=O(F*j);ma=O(G*i);na=O(G*m);oa=O(G*j);K=O(-L[a+44>>2]);l=0;while(1){e=N(l,48)+T|0;d=L[e+32>>2];ia=(l<<2)+ea|0;k=L[ia>>2];M=O(-k);pa=d;C=L[e+8>>2];D=L[e>>2];E=L[e+4>>2];n=L[e+24>>2];S=L[e+16>>2];Q=L[e+20>>2];d=O(L[e+12>>2]+O(O(W+O(O(O(aa*C)+O(O(da*D)+O(ba*E)))-O(O(_*n)+O(O(ca*S)+O($*Q)))))-O(d*c)));d=O(L[e+36>>2]*(b>d?b:d));d=O(L[e+28>>2]*O(O(pa+(dM?d:M)),O(3.4028234663852886e38)));L[ia>>2]=d;h=O(h+d);d=O(d-k);v=O(v-O(U*d));w=O(w-O(B*d));x=O(x-O(la*d));y=O(y+O(ma*d));z=O(z+O(na*d));A=O(A+O(oa*d));k=O(ga*d);p=O(p-O(n*k));q=O(q-O(Q*k));t=O(t-O(S*k));d=O(ha*d);r=O(r+O(C*d));s=O(s+O(E*d));u=O(u+O(D*d));l=l+1|0;if((o|0)!=(l|0)){continue}break}}if(V){S=O(h*L[a+16>>2]);Q=O(h*L[a+20>>2]);W=O(-Q);l=0;o=0;while(1){e=(l<<6)+fa|0;m=L[e+56>>2];n=O(m*W);U=L[e+52>>2];d=L[e+44>>2];h=L[e+8>>2];i=L[e>>2];j=L[e+4>>2];K=L[e+24>>2];k=L[e+16>>2];M=L[e+20>>2];C=L[e+40>>2];D=L[e+32>>2];E=L[e+36>>2];B=L[e+28>>2];d=O(O(U-O(d*O(O(L[e+48>>2]*O(L[e+12>>2]+O(O(O(O(h*X)+O(O(i*Z)+O(Y*j)))+O(O(O(K*aa)+O(O(k*da)+O(ba*M)))-O(O(C*_)+O(O(D*ca)+O($*E)))))-O(B*c))))-B)))-O(d*O(O(O(O(O(A*i)+O(u*k))-O(O(x*i)+O(t*D)))+O(O(O(z*j)+O(s*M))-O(O(w*j)+O(q*E))))+O(O(O(y*h)+O(r*K))-O(O(v*h)+O(p*C))))));n=dO(S*m);d=e?n>2]=d;d=O(d-U);v=O(v-O(O(F*h)*d));w=O(w-O(O(F*j)*d));x=O(x-O(O(F*i)*d));y=O(y+O(O(G*h)*d));z=O(z+O(O(G*j)*d));A=O(A+O(O(G*i)*d));h=O(ga*d);p=O(p-O(C*h));q=O(q-O(E*h));t=O(t-O(D*h));d=O(ha*d);r=O(r+O(K*d));s=O(s+O(M*d));u=O(u+O(k*d));o=0-(e|(o|0)!=0)|0;l=l+1|0;if((V|0)!=(l|0)){continue}break}H[a+56>>2]=o}a=fa+ka|0;if(ja>>>0>a>>>0){continue}break}}L[g+8>>2]=y;L[g+4>>2]=z;L[g>>2]=A;L[f+8>>2]=v;L[f+4>>2]=w;L[f>>2]=x;L[g+24>>2]=r;L[g+20>>2]=s;L[g+16>>2]=u;L[f+24>>2]=p;L[f+20>>2]=q;L[f+16>>2]=t}function EL(a,b,c,d,e,f,g,h,i,j,k){var l=0,m=O(0),n=O(0),o=O(0),p=0,q=O(0),r=O(0),s=O(0),t=0,u=O(0),v=O(0),w=O(0),x=0,y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=0,K=O(0),M=O(0),P=O(0),Q=O(0),R=O(0),S=0,T=O(0),U=O(0),V=0,X=0,Y=O(0),Z=O(0),_=O(0),$=O(0),aa=O(0),ba=O(0),ca=O(0),da=O(0),ea=0,fa=O(0);if(g){while(1){t=S<<2;l=H[t+a>>2];p=J[l+30>>1];m=O(O(1)-O(L[l+108>>2]*i));n=O(O(1)-O(L[l+104>>2]*i));y=L[l+80>>2];s=L[l+64>>2];v=L[l+100>>2];w=L[l+88>>2];C=L[l+84>>2];u=L[l+72>>2];r=L[l+68>>2];if(!I[l+157|0]){o=L[H[b+t>>2]+76>>2];u=O(u+O(o*O(L[h+8>>2]*i)));r=O(r+O(o*O(L[h+4>>2]*i)));s=O(s+O(o*O(L[h>>2]*i)))}U=L[l+96>>2];q=m>=O(0)?m:O(0);m=O(q*w);o=O(q*C);q=O(q*y);n=n>=O(0)?n:O(0);u=O(n*u);s=O(n*s);r=O(n*r);n=O(O(u*u)+O(O(s*s)+O(r*r)));if(n>v){n=O(W(O(v/n)));u=O(u*n);r=O(r*n);s=O(s*n)}n=O(O(m*m)+O(O(q*q)+O(o*o)));if(n>U){n=O(W(O(U/n)));m=O(m*n);q=O(q*n);o=O(o*n)}x=p>>>8|0;V=x>>>0>>0?V:x;p=p&255;X=p>>>0>>0?X:p;L[l+88>>2]=m;L[l+84>>2]=o;L[l+80>>2]=q;L[l+72>>2]=u;L[l+68>>2]=r;L[l+64>>2]=s;ba=L[l+124>>2];ca=L[l+76>>2];da=L[l+128>>2];ea=H[f+t>>2];fa=L[l+92>>2];E=I[l+158|0];S=S+1|0;p=S<<6;t=p+c|0;x=N(S,48)+e|0;o=L[l>>2];n=O(o+o);m=L[l+8>>2];K=O(n*m);v=L[l+4>>2];r=O(v+v);y=L[l+12>>2];M=O(r*y);s=O(K-M);p=d+p|0;z=O(O(1)-O(o*n));A=O(v*r);u=O(z-A);o=L[l+120>>2];o=o==O(0)?O(0):O(W(o));q=L[l+112>>2];q=q==O(0)?O(0):O(W(q));P=O(r*m);B=O(n*y);r=O(P+B);w=L[l+116>>2];w=w==O(0)?O(0):O(W(w));L[p+60>>2]=O(O(u*o)*u)+O(O(O(s*q)*s)+O(r*O(r*w)));D=O(n*v);v=O(m+m);T=O(y*v);n=O(D+T);C=O(n*q);Q=O(m*v);v=O(z-Q);z=O(v*w);y=O(P-B);R=O(y*o);L[p+44>>2]=O(R*y)+O(O(C*n)+O(v*z));P=O(D-T);m=O(P*w);K=O(K+M);B=O(K*o);M=O(O(O(1)-A)-Q);A=O(M*q);L[p+28>>2]=O(B*K)+O(O(A*M)+O(P*m));D=O(O(B*y)+O(O(A*n)+O(v*m)));L[p+40>>2]=D;L[p+32>>2]=D;m=O(O(B*u)+O(O(A*s)+O(r*m)));L[p+52>>2]=m;L[p+36>>2]=m;m=O(O(R*u)+O(O(C*s)+O(r*z)));L[p+56>>2]=m;L[p+48>>2]=m;L[p+16>>2]=L[l+16>>2];L[p+20>>2]=L[l+20>>2];m=L[l+24>>2];H[p+8>>2]=0;H[p+12>>2]=1065353216;H[p>>2]=0;H[p+4>>2]=0;L[p+24>>2]=m;B=o==O(0)?O(0):O(O(1)/o);Z=O(y*B);A=q==O(0)?O(0):O(O(1)/q);_=O(n*A);D=w==O(0)?O(0):O(O(1)/w);$=O(v*D);T=O(O(Z*u)+O(O(_*s)+O(r*$)));Q=O(K*B);R=O(M*A);Y=O(P*D);aa=O(O(Q*u)+O(O(R*s)+O(r*Y)));m=L[l+88>>2];o=L[l+84>>2];q=L[l+80>>2];l=l- -64|0;w=L[l+8>>2];C=L[l+4>>2];z=L[l>>2];if(E){o=E&16?O(0):o;q=E&8?O(0):q;w=E&4?O(0):w;C=E&2?O(0):C;z=E&1?O(0):z;m=E&32?O(0):m}H[t+48>>2]=0;H[t+52>>2]=0;L[t+8>>2]=w;L[t+4>>2]=C;L[t>>2]=z;F[t+62|0]=0;G[t+60>>1]=E;H[t+28>>2]=0;H[t+32>>2]=0;H[t+56>>2]=0;H[t+36>>2]=0;H[t+40>>2]=0;L[t+44>>2]=W(U);L[t+24>>2]=O(O(aa*q)+O(T*o))+O(O(O(O(u*B)*u)+O(O(O(s*A)*s)+O(r*O(r*D))))*m);s=O(O(Q*y)+O(O(R*n)+O(v*Y)));L[t+20>>2]=O(O(s*q)+O(O(O(Z*y)+O(O(_*n)+O(v*$)))*o))+O(T*m);L[t+16>>2]=O(O(O(O(Q*K)+O(O(R*M)+O(P*Y)))*q)+O(s*o))+O(aa*m);L[x>>2]=z;L[x+4>>2]=C;L[x+8>>2]=w;L[x+16>>2]=q;L[x+20>>2]=o;L[x+24>>2]=m;L[x+12>>2]=da;L[x+40>>2]=fa;L[x+28>>2]=ca;L[x+32>>2]=ba;H[x+36>>2]=ea;if((g|0)!=(S|0)){continue}break}}H[j>>2]=X;H[k>>2]=V}function Bt(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0;f=a+4892|0;e=Oa-288|0;Oa=e;a:{if(!c){H[b>>2]=a;c=H[b+4>>2];b:{if(!I[a+4785|0]){H[b+4>>2]=c&268435455|-2147483648;Ct(a+16|0,b,d);break b}d=c&1073741823;if(c>>>0>=3221225472){H[b+4>>2]=d|-2147483648;if(c&268435456){break b}H[e+16>>2]=b;Pf(f,e+16|0);break b}H[b+4>>2]=d|1073741824;H[e+16>>2]=b;c=rg(f,e+16|0,e+12|0);if(I[e+12|0]){break b}H[c>>2]=H[e+16>>2]}if(!I[a+4785|0]){break a}F[e+272|0]=1;H[e+280>>2]=0;H[e+284>>2]=64;H[e+276>>2]=e+16;c=$n(b,e+12|0);c:{if(!c){break c}d=H[b+4>>2]&-1073741824;b=H[b>>2];a=0;if((c|0)!=1){h=c&-2;while(1){g=a<<2;f=H[g+H[e+12>>2]>>2];j=H[(f+32|0)+4>>2];if((j&251658240)==16777216){H[f+32>>2]=b;H[f+36>>2]=d|j&1073741823}f=H[H[e+12>>2]+(g|4)>>2];g=H[(f+32|0)+4>>2];if((g&251658240)==16777216){H[f+32>>2]=b;H[f+36>>2]=d|g&1073741823}a=a+2|0;i=i+2|0;if((h|0)!=(i|0)){continue}break}}if(!(c&1)){break c}a=H[H[e+12>>2]+(a<<2)>>2];c=H[(a+32|0)+4>>2];if((c&251658240)!=16777216){break c}H[a+32>>2]=b;H[a+36>>2]=d|c&1073741823}a=H[e+284>>2];if((a|0)<0|!(a&2147483647)){break a}a=H[e+276>>2];if((a|0)==(e+16|0)|!a){break a}b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,a);break a}c=Oa-288|0;Oa=c;H[b>>2]=a;d=H[b+4>>2];d:{if(!I[a+4785|0]){H[b+4>>2]=d&268435455|-2147483648;F[c+272|0]=1;H[c+280>>2]=0;H[c+284>>2]=64;H[c+276>>2]=c+16;d=$n(b,c+12|0);e:{if(!d){break e}f=H[b>>2];a=0;if((d|0)!=1){g=d&-2;b=0;while(1){j=a<<2;h=H[j+H[c+12>>2]>>2];i=H[h+36>>2];if((i&251658240)==16777216){H[h+32>>2]=f;H[h+36>>2]=i&1073741823|-2147483648}h=H[H[c+12>>2]+(j|4)>>2];j=H[h+36>>2];if((j&251658240)==16777216){H[h+32>>2]=f;H[h+36>>2]=j&1073741823|-2147483648}a=a+2|0;b=b+2|0;if((g|0)!=(b|0)){continue}break}}if(!(d&1)){break e}a=H[H[c+12>>2]+(a<<2)>>2];b=H[a+36>>2];if((b&251658240)!=16777216){break e}H[a+32>>2]=f;H[a+36>>2]=b&1073741823|-2147483648}a=H[c+284>>2];if((a|0)<0|!(a&2147483647)){break d}a=H[c+276>>2];if((a|0)==(c+16|0)|!a){break d}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,a);break d}a=d&1073741823;f:{if(d>>>0>=3221225472){H[b+4>>2]=a|-2147483648;if(d&268435456){break f}H[c+16>>2]=b;Pf(f,c+16|0);break f}H[b+4>>2]=a|1073741824;H[c+16>>2]=b;a=rg(f,c+16|0,c+12|0);if(I[c+12|0]){break f}H[a>>2]=H[c+16>>2]}F[c+272|0]=1;H[c+280>>2]=0;H[c+284>>2]=64;H[c+276>>2]=c+16;d=$n(b,c+12|0);g:{if(!d){break g}f=H[b+4>>2]&-1073741824;h=H[b>>2];a=0;if((d|0)!=1){j=d&-2;b=0;while(1){i=a<<2;g=H[i+H[c+12>>2]>>2];k=H[g+36>>2];if((k&251658240)==16777216){H[g+32>>2]=h;H[g+36>>2]=f|k&1073741823}g=H[H[c+12>>2]+(i|4)>>2];i=H[g+36>>2];if((i&251658240)==16777216){H[g+32>>2]=h;H[g+36>>2]=f|i&1073741823}a=a+2|0;b=b+2|0;if((j|0)!=(b|0)){continue}break}}if(!(d&1)){break g}a=H[H[c+12>>2]+(a<<2)>>2];b=H[a+36>>2];if((b&251658240)!=16777216){break g}H[a+32>>2]=h;H[a+36>>2]=f|b&1073741823}a=H[c+284>>2];if((a|0)<0|!(a&2147483647)){break d}a=H[c+276>>2];if((a|0)==(c+16|0)|!a){break d}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,a)}Oa=c+288|0}Oa=e+288|0}function L0(a,b,c,d,e,f,g,h){var i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=0,o=O(0),p=0,q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=0,z=O(0),A=O(0),B=O(0),C=0,D=O(0),E=O(0),F=O(0),G=O(0),I=O(0),J=O(0),K=O(0),M=O(0),Q=O(0),R=O(0),S=O(0);q=L[a+56>>2];r=L[a+52>>2];s=L[a+48>>2];n=H[c+40>>2];F=L[n>>2];K=L[h>>2];k=O(-K);G=L[n+16>>2];D=L[h+4>>2];I=L[n+32>>2];E=L[h+8>>2];M=O(O(O(F*k)-O(G*D))-O(I*E));J=L[n+8>>2];u=L[n+24>>2];v=L[n+40>>2];Q=O(O(O(J*k)-O(u*D))-O(v*E));w=L[n+4>>2];x=L[n+20>>2];o=L[n+36>>2];R=O(O(O(w*k)-O(x*D))-O(o*E));S=O(L[a+80>>2]+L[g>>2]);n=H[b+24>>2];k=O(0);y=H[b+16>>2];a:{if(y){z=O(O(v*q)+O(O(J*s)+O(u*r)));A=O(O(o*q)+O(O(w*s)+O(x*r)));B=O(O(I*q)+O(O(F*s)+O(G*r)));j=O(1);C=1;b:{while(1){c:{g=N(p,20)+n|0;t=L[g+8>>2];l=L[g>>2];i=L[g+4>>2];m=O(L[g+12>>2]+O(O(t*z)+O(O(l*B)+O(A*i))));i=O(O(t*Q)+O(O(l*M)+O(R*i)));d:{if(O(P(i))O(0))){break d}break c}l=O(O(-m)/i);g=il?l:j;k=g?k>>0>p>>>0;if((p|0)!=(y|0)){continue}break b}break}k=O(0)}if(C){break a}}if(!(k<=S)){break a}u=L[d+20>>2];v=L[d+24>>2];w=L[d+36>>2];x=L[d+52>>2];t=L[d+40>>2];m=L[d+56>>2];z=L[d+8>>2];A=L[d+4>>2];B=L[d>>2];l=L[d+16>>2];i=L[d+32>>2];j=L[d+48>>2];g=N(H[f>>2],48)+e|0;H[g+12>>2]=0;m=O(q-m);o=i;i=O(s-j);j=O(r-x);L[g+8>>2]=O(t*m)+O(O(o*i)+O(w*j));L[g+4>>2]=O(v*m)+O(O(l*i)+O(j*u));L[g>>2]=O(z*m)+O(O(B*i)+O(j*A));i=L[a+52>>2];j=L[a+56>>2];g=N(H[f>>2],48)+e|0;L[g+16>>2]=L[a+48>>2]-O(K*k);H[g+28>>2]=0;L[g+24>>2]=j-O(E*k);L[g+20>>2]=i-O(D*k);j=L[h+8>>2];C=H[h+4>>2];n=H[h>>2];g=H[f>>2];H[f>>2]=g+1;g=N(g,48)+e|0;H[g+32>>2]=n;H[g+36>>2]=C;L[g+44>>2]=k;L[g+40>>2]=j;c=H[c+40>>2];v=L[c+40>>2];u=L[c+24>>2];o=L[c+36>>2];x=L[c+20>>2];n=H[b+24>>2];y=H[b+16>>2];J=L[c+8>>2];w=L[c+4>>2];I=L[c+32>>2];G=L[c+16>>2];F=L[c>>2]}q=L[a+64>>2];r=L[a+68>>2];s=L[a+72>>2];j=O(0);e:{if(y){z=O(O(v*s)+O(O(J*q)+O(r*u)));A=O(O(o*s)+O(O(w*q)+O(r*x)));B=O(O(I*s)+O(O(F*q)+O(r*G)));o=O(1);p=0;C=1;f:{while(1){g:{b=N(p,20)+n|0;t=L[b+8>>2];l=L[b>>2];i=L[b+4>>2];m=O(L[b+12>>2]+O(O(t*z)+O(O(l*B)+O(A*i))));i=O(O(t*Q)+O(O(l*M)+O(R*i)));h:{if(O(P(i))O(0))){break h}break g}l=O(O(-m)/i);b=io){break g}p=p+1|0;C=y>>>0>p>>>0;if((p|0)!=(y|0)){continue}break f}break}j=k}if(C){break e}}if(!(j<=S)){break e}u=L[d+20>>2];v=L[d+24>>2];w=L[d+36>>2];x=L[d+52>>2];t=L[d+40>>2];m=L[d+56>>2];z=L[d+8>>2];A=L[d+4>>2];B=L[d>>2];l=L[d+16>>2];i=L[d+32>>2];k=L[d+48>>2];b=N(H[f>>2],48)+e|0;H[b+12>>2]=0;m=O(s-m);o=i;i=O(q-k);k=O(r-x);L[b+8>>2]=O(t*m)+O(O(o*i)+O(w*k));L[b+4>>2]=O(v*m)+O(O(l*i)+O(k*u));L[b>>2]=O(z*m)+O(O(B*i)+O(k*A));i=L[a+68>>2];k=L[a+72>>2];b=N(H[f>>2],48)+e|0;L[b+16>>2]=L[a+64>>2]-O(K*j);H[b+28>>2]=0;L[b+24>>2]=k-O(E*j);L[b+20>>2]=i-O(D*j);k=L[h+8>>2];c=H[h+4>>2];b=H[h>>2];a=H[f>>2];H[f>>2]=a+1;a=N(a,48)+e|0;H[a+32>>2]=b;H[a+36>>2]=c;L[a+44>>2]=j;L[a+40>>2]=k}}function VO(a,b,c,d,e,f,g,h,i,j,k,l){var 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;y=H[d>>2];n=H[b>>2];w=a-n|0;p=w;n=(n<<2)+j|0;m=H[f+328>>2];q=p-m|0;o=p>>>0>>0?0:q;j=p-o|0;t=R6(n,H[f+324>>2]+(m-j<<2)|0,j<<2);n=f;r=H[f+328>>2]-j|0;H[f+328>>2]=r;a:{if(m>>>0

>>0){m=o-1|0;f=H[n+312>>2];p=m+f|0;b:{if(m>>>0>p>>>0){break b}m=N(f,80);if(!m){break a}f=(p>>>0)/(f>>>0)|0;z=f>>>0>1?f:1;while(1){f=H[33808];p=f+12|0;u=(B=p,C=m,D=Ra[H[H[f>>2]+20>>2]](f)|0?29214:55639,E=15329,F=135,A=H[H[p>>2]+8>>2],Ra[A](B|0,C|0,D|0,E|0,F|0)|0);if(!u){break a}f=H[n+312>>2];m=H[n+316>>2];p=m+1|0;s=N(f,p);o=H[n+344>>2];c:{if(s>>>0<=o<<5>>>0){o=H[n+332>>2];break c}f=(s<<1)+31>>>5|0;if(f>>>0>(o&2147483647)>>>0){m=H[33808]+12|0;m=Ra[H[H[m>>2]+8>>2]](m,f<<2,20591,14905,438)|0;o=H[n+340>>2];d:{if(!o){break d}R6(m,o,H[n+344>>2]<<2);if(H[n+344>>2]<0){break d}o=H[n+340>>2];if(!o){break d}s=H[33808]+12|0;Ra[H[H[s>>2]+12>>2]](s,o)}o=H[n+344>>2];S6(m+(o<<2)|0,0,f-o<<2);H[n+344>>2]=f;H[n+340>>2]=m}f=H[n+324>>2];if(f){m=H[33808]+12|0;Ra[H[H[m>>2]+12>>2]](m,f)}o=0;f=p<<3;s=N(f,H[n+312>>2]);if(s){m=H[33808];v=m+12|0;m=(F=v,E=s,D=Ra[H[H[m>>2]+20>>2]](m)|0?29214:55639,C=15329,B=147,A=H[H[v>>2]+8>>2],Ra[A](F|0,E|0,D|0,C|0,B|0)|0)}else{m=0}H[n+324>>2]=m;if(f){m=H[33808];o=m+12|0;o=(B=o,C=f,D=Ra[H[H[m>>2]+20>>2]](m)|0?29214:55639,E=15329,F=149,A=H[H[o>>2]+8>>2],Ra[A](B|0,C|0,D|0,E|0,F|0)|0)}f=H[n+332>>2];e:{if(!f){break e}R6(o,f,p<<2);f=H[n+332>>2];if(!f){break e}p=H[33808]+12|0;Ra[H[H[p>>2]+12>>2]](p,f)}H[n+332>>2]=o;m=H[n+316>>2];p=m+1|0;f=H[n+312>>2]}H[n+316>>2]=p;H[(m<<2)+o>>2]=u;o=N(f,m);m=f-1|0;if((q|0)<=(m|0)){while(1){f=vJ(N(m,80)+u|0,m+o|0);H[H[n+324>>2]+(r<<2)>>2]=f;r=r+1|0;m=m-1|0;if((q|0)<=(m|0)){continue}break}}f=j;if((m|0)>=0){s=(j<<2)+t|0;v=j+1|0;p=m;while(1){f=p;A=s+(f<<2)|0,F=vJ(N(f,80)+u|0,f+o|0),H[A>>2]=F;p=f-1|0;if(f){continue}break}f=m+v|0}x=x+1|0;if((x|0)==(z|0)){j=f;break b}q=(j+q|0)-f|0;j=f;m=N(H[n+312>>2],80);if(m){continue}break}break a}H[n+328>>2]=r}f:{if(!j){break f}n=H[n+340>>2];f=0;if((j|0)!=1){m=j&-2;p=0;while(1){q=f<<2;r=H[H[q+t>>2]+48>>2];o=n+(r>>>3&536870908)|0;H[o>>2]=H[o>>2]|1<>2]+48>>2];r=n+(q>>>3&536870908)|0;H[r>>2]=H[r>>2]|1<>2]+48>>2];j=n+(f>>>3&536870908)|0;H[j>>2]=H[j>>2]|1<>2];if(!j){vI(n);j=H[g+984>>2]}H[g+984>>2]=H[j>>2];H[g+976>>2]=H[g+976>>2]+1;H[(H[b>>2]+f<<2)+k>>2]=j;f=f+1|0;if((w|0)!=(f|0)){continue}break}}k=c-y|0;if(k){n=g+1572|0;f=0;while(1){j=H[g+1860>>2];if(!j){tI(n);j=H[g+1860>>2]}H[g+1860>>2]=H[j>>2];H[g+1852>>2]=H[g+1852>>2]+1;H[(H[d>>2]+f<<2)+l>>2]=j;f=f+1|0;if((k|0)!=(f|0)){continue}break}}H[b>>2]=a;H[d>>2]=c;H[h+24>>2]=1;H[h+52>>2]=e;H[h+20>>2]=i;if(i){Ra[H[H[i>>2]+16>>2]](i);H[h+16>>2]=H[H[h+20>>2]+16>>2]}Ra[H[H[h>>2]+20>>2]](h)}function k$(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=O(0),i=O(0),j=0,k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=0,u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),K=O(0),M=O(0),N=O(0),Q=O(0);g=Oa-144|0;Oa=g;t=I[a+12|0];j=t?e:d;h=L[j+8>>2];i=L[j>>2];l=L[j+4>>2];j=H[a+24>>2];k=L[j+40>>2];o=L[j+28>>2];m=L[j+16>>2];n=L[j+36>>2];q=L[c+8>>2];r=L[j+24>>2];v=L[c>>2];w=L[j>>2];x=L[c+4>>2];y=L[j+12>>2];z=L[j+4>>2];A=L[j+44>>2];B=L[j+8>>2];c=t?d:e;s=L[c>>2];C=L[j+20>>2];D=L[c+4>>2];E=L[j+32>>2];K=L[c+8>>2];N=O(A+O(O(O(B*s)+O(C*D))+O(E*K)));L[g+112>>2]=N;Q=O(k+O(O(O(z*s)+O(m*D))+O(o*K)));L[g+108>>2]=Q;u=O(A+O(O(O(B*i)+O(C*l))+O(E*h)));L[g+100>>2]=u;p=O(k+O(O(O(z*i)+O(m*l))+O(o*h)));L[g+96>>2]=p;M=O(n+O(O(O(v*w)+O(x*y))+O(q*r)));L[g+80>>2]=M;s=O(n+O(O(O(w*s)+O(y*D))+O(r*K)));L[g+104>>2]=s;l=O(n+O(O(O(w*i)+O(y*l))+O(r*h)));L[g+92>>2]=l;i=O(A+O(O(O(v*B)+O(x*C))+O(q*E)));L[g+88>>2]=i;h=O(k+O(O(O(v*z)+O(x*m))+O(q*o)));L[g+84>>2]=h;H[g+56>>2]=0;H[g+60>>2]=0;c=g- -64|0;H[c>>2]=0;H[c+4>>2]=0;H[g+48>>2]=0;H[g+52>>2]=0;G[g+44>>1]=0;H[g+40>>2]=-1;H[g+32>>2]=0;H[g+36>>2]=0;H[g+72>>2]=2139095039;k=L[H[a+20>>2]+40>>2];o=O(k+O(O(S(k,O(1)))*O(.0010000000474974513)));d=H[a+40>>2];a:{b:{if(I[a+49|0]){c=J[a+8>>1];j=c&128;t=I[a+48|0];e=H[a+44>>2];k=L[d+24>>2];c:{if(c&16){break c}l=O(l-M);m=O(Q-h);n=O(s-M);q=O(p-h);h=O(O(l*m)-O(n*q));r=O(u-i);p=O(r*n);n=O(N-i);i=O(p-O(n*l));l=O(O(q*n)-O(m*r));if(!(j|t)){c=1;if(O(O(h*L[e+8>>2])+O(O(l*L[e>>2])+O(i*L[e+4>>2])))>O(0)){break a}}qZ(g+120|0,d,g+80|0,g+92|0,g+104|0,g+140|0,g+136|0);m=O(L[g+128>>2]-L[d+8>>2]);u=O(m*m);m=O(L[g+120>>2]-L[d>>2]);p=O(m*m);m=O(L[g+124>>2]-L[d+4>>2]);if(!(O(u+O(p+O(m*m)))<=O(k*k))){break c}k=O(0);o=O(0);m=O(0);n=O(O(h*h)+O(O(l*l)+O(i*i)));if(n>O(0)){p=h;h=O(O(1)/O(W(n)));m=O(p*h);o=O(i*h);k=O(l*h)}L[g+24>>2]=m;L[g+20>>2]=o;L[g+16>>2]=k;G[g+44>>1]=1026;H[g+40>>2]=0;h=L[e>>2];i=L[e+4>>2];L[g+68>>2]=-L[e+8>>2];L[g- -64>>2]=-i;H[g+72>>2]=0;L[g+60>>2]=-h;break b}c=1;if(q1(1,g+80|0,d,k,e,o,0,g+32|0,g+16|0,(t|0)!=0,(j|0)!=0,0,0)){break b}break a}e=H[a+44>>2];G[g+8>>1]=J[a+8>>1];c=1;if(!n1(1,g+80|0,d,e,o,0,g+32|0,g+16|0,g+8|0,I[a+48|0],0)){break a}}h=L[g+72>>2];d:{if(h>L[a+28>>2]){break d}c=H[a+44>>2];l=O(-O(P(O(O(L[g+24>>2]*L[c+8>>2])+O(O(L[g+16>>2]*L[c>>2])+O(L[g+20>>2]*L[c+4>>2]))))));i=L[a+36>>2];k=O(O(S(h>i?h:i,O(1)))*O(.0010000000474974513));e:{if(h>2];if(c&k>l|k==l&h>2]=l;L[f>>2]=h*L[a+16>>2];i=L[a+36>>2];L[a+36>>2]=h>i?i:h;d=J[g+44>>1];c=H[a+20>>2];L[c+40>>2]=h;G[c+12>>1]=d;L[c+28>>2]=L[g+60>>2];L[c+32>>2]=L[g- -64>>2];L[c+36>>2]=L[g+68>>2];L[c+16>>2]=L[g+48>>2];L[c+20>>2]=L[g+52>>2];L[c+24>>2]=L[g+56>>2];H[c+8>>2]=H[b+8>>2];F[a+10|0]=1;if(L[g+72>>2]==O(0)){F[a+11|0]=1;c=0;break a}c=0;if(I[a+8|0]&64){break a}}c=1}Oa=g+144|0;return c|0}function WE(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;e=Oa-48|0;Oa=e;o=H[a+16>>2];m=b>>>7|0;l=o+N(m,24)|0;g=I[l+4|0];a:{if(!(g&4)){break a}d=H[l>>2];if((d|0)!=-1){while(1){i=H[a+84>>2];c=(d>>>0)/(i>>>0)|0;i=H[H[H[a+64>>2]+(c<<2)>>2]+(d-N(c,i)<<3)>>2];f=d^1;h=H[a+448>>2];c=H[h+20>>2];j=(f>>>0)/(c>>>0)|0;h=H[H[H[h>>2]+(j<<2)>>2]+(f-N(c,j)<<2)>>2];g=d>>>1|0;H[e>>2]=g;k=H[a+40>>2];j=H[a+60>>2];c=(g>>>0)/(j>>>0)|0;c=H[k+(c<<2)>>2]+(g-N(c,j)<<4)|0;b:{if(h>>>0>4294967167){break b}n=H[H[a+204>>2]+(h>>>5&134217724)>>2];if((n|0)==-1){break b}h=H[c+12>>2];g=H[a+88>>2];f=H[c+8>>2];c:{if((f|0)!=-1){d=(f>>>0)/(j>>>0)|0;d=(H[k+(d<<2)>>2]+(f-N(d,j)<<4)|0)+12|0;break c}d=((g+N(n,44)|0)+(H[c>>2]<<2)|0)+28|0}H[d>>2]=h;j=H[c+8>>2];f=H[c+12>>2];d:{if((f|0)!=-1){h=H[a+60>>2];d=(f>>>0)/(h>>>0)|0;H[(H[k+(d<<2)>>2]+(f-N(d,h)<<4)|0)+8>>2]=j;d=H[c>>2];break d}d=H[c>>2];H[((g+N(n,44)|0)+(d<<2)|0)+20>>2]=j}d=(g+N(n,44)|0)+(d<<2)|0;H[d+36>>2]=H[d+36>>2]-1;H[c+12>>2]=-1;H[c+8>>2]=-1;g=H[e>>2]}HE(a,g);FE(a,H[e>>2]);d=J[c+4>>1];g=d&65534;G[c+4>>1]=g;if(d&4){G[c+4>>1]=d&65530;NE(a,H[e>>2]);d=(H[c>>2]<<2)+a|0;H[d+172>>2]=H[d+172>>2]-1;g=J[c+4>>1]}e:{f:{if(!(g&2)){if(g&8){break e}f=N(H[c>>2],12)+a|0;h=f+284|0;d=H[f+288>>2];if(d>>>0>=(H[f+292>>2]&2147483647)>>>0){qm(h,e);d=J[c+4>>1]|8;break f}H[H[h>>2]+(d<<2)>>2]=H[e>>2];H[f+288>>2]=H[f+288>>2]+1;d=g|8;break f}d=g|32}G[c+4>>1]=d}d=i;if((d|0)!=-1){continue}break}g=I[l+4|0]}g:{if(g&32){break g}f=H[a+28>>2];k=f+(m<<2)|0;if(H[k>>2]==33554431){break g}c=N(m,24);j=c+o|0;h=H[j+16>>2];H[j+16>>2]=0;h:{if(H[(c+H[a+16>>2]|0)+16>>2]){break h}d=H[k>>2];if((d|0)==33554431){break h}i=H[a+136>>2];c=H[(i+(H[a+140>>2]<<2)|0)-4>>2];H[f+(c>>>5&134217724)>>2]=d;H[i+(H[k>>2]<<2)>>2]=c;H[a+140>>2]=H[a+140>>2]-1;H[k>>2]=33554431}H[j+16>>2]=h}F[l+4|0]=g&251;c=H[a+4>>2];i:{if(c){c=c-1|0;d=H[H[a>>2]+(c<<2)>>2];H[a+4>>2]=c;break i}d=H[a+12>>2];H[a+12>>2]=d+1}f=a+88|0;if((H[a+96>>2]&2147483647)==(d|0)){c=d<<1;h=c|1;if(h>>>0>d>>>0){wE(f,h)}k=c+32>>>5|0;if(k>>>0>(H[a+220>>2]&2147483647)>>>0){c=H[33808]+12|0;j=Ra[H[H[c>>2]+8>>2]](c,k<<2,20591,14969,438)|0;c=H[a+216>>2];j:{if(!c){break j}R6(j,c,H[a+220>>2]<<2);if(H[a+220>>2]<0){break j}i=H[a+216>>2];if(!i){break j}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,i)}c=H[a+220>>2];S6(j+(c<<2)|0,0,k-c<<2);H[a+220>>2]=k;H[a+216>>2]=j}H[e>>2]=0;gy(a+100|0,h,e)}i=H[a+216>>2]+(d>>>3&536870908)|0;c=H[i>>2];p=i,q=j7(-2,d)&c,H[p>>2]=q;c=H[a+92>>2];H[e+24>>2]=-1;H[e+28>>2]=-1;H[e+32>>2]=-1;H[e+16>>2]=-1;H[e+20>>2]=-1;H[e>>2]=-128;H[e+4>>2]=-128;H[e+36>>2]=0;H[e+40>>2]=0;H[e+8>>2]=0;H[e+12>>2]=0;i=d+1|0;xE(f,c>>>0>i>>>0?c:i,e);c=H[a+92>>2];H[e>>2]=0;gy(a+100|0,c>>>0>i>>>0?c:i,e);c=H[a+88>>2]+N(d,44)|0;H[c+4>>2]=b;H[c>>2]=b;H[(c+(I[(N(m,24)+o|0)+5|0]<<2)|0)+8>>2]=1;H[H[a+204>>2]+(m<<2)>>2]=d;H[H[a+100>>2]+(d<<2)>>2]=0;c=I[l+4|0];if(!(c&2)){break a}F[l+4|0]=c&253;yE(a,b)}Oa=e+48|0}function JP(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,o=0;d=Oa-16|0;Oa=d;a:{b:{j=H[a+28>>2];b=H[j+1e3>>2]+640|0;if(H[b+328>>2]){i=b+136|0;l=b+240|0;k=H[b+244>>2];while(1){a=H[H[b+324>>2]+(g<<2)>>2];H[d>>2]=a;c=a>>>7|0;h=c<<2;a=H[h+H[b+204>>2]>>2];f=H[b+16>>2]+N(c,24)|0;e=I[f+4|0]&-33;F[f+4|0]=e;c:{if((a|0)!=-1){e=1<>2]+(a>>>3&536870908)|0;if(!(e&H[f>>2])){H[d+8>>2]=a;c=H[b+88>>2];H[f>>2]=e|H[f>>2];e=c+N(a,44)|0;a=H[b+244>>2];H[e+16>>2]=a;d:{if(a>>>0>=(H[b+248>>2]&2147483647)>>>0){qm(l,d+8|0);break d}H[H[b+240>>2]+(a<<2)>>2]=H[d+8>>2];H[b+244>>2]=H[b+244>>2]+1}c=H[d>>2]>>>7|0}H[H[b+28>>2]+(c<<2)>>2]=33554431;ME(b,H[d>>2]);break c}F[f+4|0]=e|2;H[h+H[b+28>>2]>>2]=H[b+140>>2];a=H[b+140>>2];e:{if(a>>>0>=(H[b+144>>2]&2147483647)>>>0){_E(i,d);break e}H[H[b+136>>2]+(a<<2)>>2]=H[d>>2];H[b+140>>2]=H[b+140>>2]+1}a=H[f>>2];if((a|0)==-1){break c}while(1){f=H[b+84>>2];c=(a>>>0)/(f>>>0)|0;f=a-N(c,f)|0;e=H[H[b+64>>2]+(c<<2)>>2];h=a^1;m=H[b+448>>2];o=H[m+20>>2];c=(h>>>0)/(o>>>0)|0;f:{g:{c=H[H[H[m>>2]+(c<<2)>>2]+(h-N(c,o)<<2)>>2];if(c>>>0<=4294967167){c=H[H[b+204>>2]+(c>>>5&134217724)>>2];if((c|0)!=-1){break g}}c=a>>>1|0;a=H[b+60>>2];h=(c>>>0)/(a>>>0)|0;a=H[H[b+40>>2]+(h<<2)>>2]+(c-N(a,h)<<4)|0;if(I[a+4|0]&4|H[a>>2]==1){break f}DE(b,c);G[a+4>>1]=J[a+4>>1]|4;break f}h=1<>2]+(c>>>3&536870908)|0;if(h&H[a>>2]){break f}H[d+12>>2]=c;m=H[b+88>>2];H[a>>2]=h|H[a>>2];a=H[b+244>>2];H[(m+N(c,44)|0)+16>>2]=a;if(a>>>0>=(H[b+248>>2]&2147483647)>>>0){qm(l,d+12|0);break f}H[H[b+240>>2]+(a<<2)>>2]=H[d+12>>2];H[b+244>>2]=H[b+244>>2]+1}a=H[e+(f<<3)>>2];if((a|0)!=-1){continue}break}}g=g+1|0;if(g>>>0>2]){continue}break}break b}H[b+328>>2]=0;break a}H[b+328>>2]=0;g=H[b+244>>2];if(k>>>0>=g>>>0){break a}while(1){a=H[H[b+88>>2]+N(H[H[b+240>>2]+(k<<2)>>2],44)>>2];c=a>>>7|0;if((c|0)!=33554431){while(1){ME(b,a);a=H[(H[b+16>>2]+N(c,24)|0)+8>>2];c=a>>>7|0;if((c|0)!=33554431){continue}break}g=H[b+244>>2]}k=k+1|0;if(k>>>0>>0){continue}break}}Oa=d+16|0;h:{b=H[j+1e3>>2];f=H[b+792>>2];if(!f){break h}l=H[b+788>>2];a=b;while(1){e=H[a+44>>2];c=H[l+(n<<2)>>2];a=H[a- -64>>2];d=(c>>>0)/(a>>>0)|0;d=H[H[e+(d<<2)>>2]+(c-N(a,d)<<2)>>2];i:{if(!d|I[d+21|0]&32){break i}a=H[b+700>>2];g=(c>>>0)/(a>>>0)|0;if(!(I[(H[H[b+680>>2]+(g<<2)>>2]+(c-N(a,g)<<4)|0)+4|0]&4)){break i}j:{k:{switch(I[d+20|0]){case 1:if(pR(d-4|0)){break j}break i;case 4:if(NG(d)){break j}break i;case 5:if(nE(d)){break j}break i;case 0:break k;default:break i}}if(!GQ(d-4|0,0)){break i}}c=I[d+20|0];if(c>>>0>2){break i}g=(c<<2)+j|0;a=H[g+88>>2];c=N(c,12)+j|0;if(a>>>0>2]){e=H[c+52>>2];i=e+(a<<2)|0;k=H[i>>2];h=i;i=e;d=H[d+8>>2];e=d<<2;i=H[i+e>>2];H[h>>2]=i;H[e+H[c+52>>2]>>2]=k;H[k+8>>2]=d;H[i+8>>2]=a;a=H[g+88>>2]}H[g+88>>2]=a+1}n=n+1|0;if((f|0)==(n|0)){break h}a=H[j+1e3>>2];continue}}a=H[H[j+976>>2]+1024>>2];Ra[H[H[a>>2]+20>>2]](a,L[j+1080>>2],j+2752|0)}function T0(a,b,c,d,e,f,g,h,i){var j=O(0),k=0,l=0,m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=0,x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=0,D=O(0),E=O(0),F=O(0),G=O(0),K=O(0),M=O(0),P=0,Q=0;l=Oa-144|0;Oa=l;M=L[g>>2];H[l+136>>2]=H[g+12>>2];k=H[g+8>>2];H[l+128>>2]=H[g+4>>2];H[l+132>>2]=k;k=H[e+40>>2];o=L[k+40>>2];x=L[a+88>>2];p=L[k+8>>2];y=L[a+80>>2];n=L[k+24>>2];s=L[a+84>>2];r=O(O(o*x)+O(O(p*y)+O(n*s)));D=L[k+36>>2];z=L[k+4>>2];E=L[k+20>>2];A=O(O(D*x)+O(O(z*y)+O(E*s)));B=L[a+72>>2];m=O(o*B);F=L[a- -64>>2];G=L[a+68>>2];j=O(O(p*F)+O(n*G));K=L[a+56>>2];u=L[a+48>>2];v=L[a+52>>2];t=O(O(o*K)+O(O(p*u)+O(v*n)));q=O(O(D*K)+O(O(z*u)+O(v*E)));o=L[k+32>>2];p=L[k>>2];n=L[k+16>>2];s=O(O(o*x)+O(O(p*y)+O(n*s)));u=O(O(o*K)+O(O(p*u)+O(v*n)));if(b&32){H[l+28>>2]=0;L[l+24>>2]=r-t;L[l+20>>2]=A-q;L[l+16>>2]=s-u;w=1}v=O(m+j);m=O(O(D*B)+O(O(z*F)+O(E*G)));j=O(O(o*B)+O(O(p*F)+O(n*G)));if(b&8){a=(l+16|0)+(w<<4)|0;H[a+12>>2]=0;L[a+8>>2]=t-v;L[a+4>>2]=q-m;L[a>>2]=u-j;w=w+1|0}a:{b:{c:{d:{if(b&16){a=(l+16|0)+(w<<4)|0;H[a+12>>2]=0;L[a+8>>2]=v-r;L[a+4>>2]=m-A;L[a>>2]=j-s;w=w+1|0;break d}if(!w){break c}}a=H[c+16>>2];if(a){o=O(j-u);p=O(A-q);n=O(s-u);j=O(m-q);m=O(O(o*p)-O(n*j));q=m;s=O(m*m);m=O(r-t);r=O(j*m);j=O(v-t);p=O(r-O(p*j));m=O(O(j*n)-O(m*o));j=O(O(1)/O(W(O(s+O(O(p*p)+O(m*m))))));A=O(q*j);x=O(m*j);y=O(p*j);while(1){C=H[c+24>>2]+N(P,20)|0;e:{if(O(O(L[C+8>>2]*A)+O(O(L[C>>2]*y)+O(x*L[C+4>>2])))>O(0)){break e}b=I[C+18|0];if(!b){break e}Q=H[c+32>>2]+J[C+16>>1]|0;a=b-1|0;b=0;while(1){k=N(I[a+Q|0],12);a=H[c+28>>2];k=k+a|0;a=a+N(I[b+Q|0],12)|0;s=O(L[k+4>>2]-L[a+4>>2]);D=O(-s);z=O(L[k>>2]-L[a>>2]);E=O(-z);B=O(L[k+8>>2]-L[a+8>>2]);F=O(-B);a=0;while(1){k=(l+16|0)+(a<<4)|0;m=L[k>>2];j=L[k+8>>2];t=O(O(B*m)+O(j*E));q=O(s*j);j=L[k+4>>2];q=O(q+O(j*F));r=O(O(z*j)+O(m*D));j=O(-r);f:{g:{if(!((jO(0))){break f}k=H[e+40>>2];G=L[k+40>>2];K=L[k+36>>2];u=L[k+24>>2];v=L[k+20>>2];o=L[k+32>>2];p=L[k+16>>2];n=L[k+8>>2];m=L[k>>2];j=L[k+4>>2];H[l+12>>2]=0;o=O(O(G*r)+O(O(o*q)+O(t*K)));m=O(O(n*r)+O(O(m*q)+O(t*j)));j=O(O(u*r)+O(O(p*q)+O(t*v)));n=O(O(1)/O(W(O(O(o*o)+O(O(m*m)+O(j*j))))));L[l+8>>2]=o*n;L[l+4>>2]=j*n;L[l>>2]=m*n;Ra[H[H[d>>2]+12>>2]](d,l,l+112|0,l+96|0);Ra[H[H[e>>2]+12>>2]](e,l,l+80|0,l- -64|0);j=L[l+80>>2];n=L[l+96>>2];m=L[f>>2];if(j>O(n+m)|L[l+112>>2]>O(m+L[l+64>>2])){break b}j=O(n-j);if(!(j>2];H[h>>2]=H[l>>2];H[h+4>>2]=k;k=H[l+12>>2];H[h+8>>2]=H[l+8>>2];H[h+12>>2]=k;H[i>>2]=2;M=j}a=a+1|0;if((w|0)!=(a|0)){continue}break}a=b;b=a+1|0;if(b>>>0>2]}P=P+1|0;if(P>>>0>>0){continue}break}}L[g>>2]=M;H[g+12>>2]=H[l+136>>2];a=H[l+132>>2];H[g+4>>2]=H[l+128>>2];H[g+8>>2]=a}a=1;break a}a=0}Oa=l+144|0;return a}function ku(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=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=0,E=O(0),G=O(0),J=O(0),K=O(0),M=O(0),P=O(0),Q=O(0),R=O(0),S=O(0),T=O(0),U=0,V=O(0),W=O(0);f=Oa-80|0;Oa=f;a=H[b+40>>2];D=0;a:{if(L[b+4>>2]!=O(1)){break a}D=0;if(L[b+8>>2]!=O(1)){break a}D=L[b+12>>2]==O(1)}o=L[d>>2];p=L[c>>2];n=L[d+12>>2];j=L[c+12>>2];u=L[d+4>>2];q=L[c+4>>2];v=L[d+8>>2];i=L[c+8>>2];k=L[c+24>>2];r=L[d+24>>2];l=L[c+20>>2];z=L[d+20>>2];m=L[c+16>>2];Q=L[d+16>>2];d=I[a+39|0];U=H[a+40>>2];h=I[a+38|0];a=f- -64|0;H[a>>2]=0;H[a+4>>2]=1065353216;H[f+56>>2]=0;H[f+60>>2]=0;H[f+48>>2]=0;H[f+52>>2]=1065353216;H[f+40>>2]=0;H[f+44>>2]=0;H[f+32>>2]=1065353216;H[f+36>>2]=1065353216;H[f+16>>2]=1065353216;H[f+20>>2]=0;F[f+72|0]=0;H[f+24>>2]=0;H[f+28>>2]=0;H[f+8>>2]=0;H[f+12>>2]=0;H[f>>2]=1065353216;H[f+4>>2]=0;R=k;S=l;T=m;s=j;t=i;A=O(1);B=O(1);C=O(1);if(!D){yW(f,b+4|0,b+16|0);R=L[c+24>>2];S=L[c+20>>2];s=L[c+12>>2];A=L[f+32>>2];E=L[f+28>>2];w=L[f+24>>2];x=L[f+20>>2];B=L[f+16>>2];G=L[f+12>>2];y=L[f+8>>2];J=L[f+4>>2];C=L[f>>2];T=L[c+16>>2];t=L[c+8>>2]}b:{if(!h){c=0;break b}m=O(Q-m);m=O(m+m);l=O(z-l);l=O(l+l);k=O(r-k);k=O(k+k);r=O(O(O(O(-p)*m)-O(l*q))-O(i*k));z=O(O(j*j)+O(-.5));Q=O(O(O(k*z)+O(j*O(O(q*m)-O(p*l))))-O(i*r));V=O(O(O(l*z)+O(j*O(O(p*k)-O(i*m))))-O(q*r));z=O(O(O(m*z)+O(j*O(O(i*l)-O(q*k))))-O(p*r));d=U+N(d,20)|0;k=O(O(o*q)+O(O(O(j*v)-O(n*i))-O(p*u)));m=O(O(u*i)+O(O(O(j*o)-O(n*p))-O(q*v)));l=O(m+m);K=O(k*l);r=O(O(i*v)+O(O(q*u)+O(O(j*n)+O(p*o))));j=O(O(v*p)+O(O(O(j*u)-O(n*q))-O(i*o)));i=O(j+j);n=O(r*i);p=O(K-n);o=O(r*l);u=O(k*i);q=O(o+u);m=O(O(1)-O(m*l));v=O(j*i);i=O(m-v);W=O(O(O(p*w)+O(q*E))+O(i*A));P=O(l*j);l=O(k+k);r=O(r*l);j=O(P+r);M=m;m=O(k*l);k=O(M-m);l=O(u-o);u=O(O(O(j*w)+O(k*E))+O(l*A));m=O(O(O(1)-v)-m);o=O(P-r);n=O(K+n);v=O(O(O(m*w)+O(o*E))+O(n*A));A=O(O(O(p*G)+O(q*B))+O(i*x));E=O(O(O(j*G)+O(k*B))+O(l*x));B=O(O(O(m*G)+O(o*B))+O(n*x));p=O(O(O(p*C)+O(q*J))+O(i*y));q=O(O(O(j*C)+O(k*J))+O(l*y));m=O(O(O(m*C)+O(o*J))+O(n*y));j=L[c+4>>2];k=O(j+j);o=O(k*t);l=L[c>>2];i=O(l+l);n=O(i*s);C=O(o-n);w=O(i*t);x=O(k*s);G=O(w+x);o=O(o+n);n=O(i*j);y=O(t+t);s=O(y*s);J=O(n-s);i=O(O(1)-O(l*i));j=O(j*k);l=O(i-j);M=i;i=O(t*y);y=O(M-i);w=O(w-x);x=O(-w);n=O(n+s);r=O(-n);K=O(O(O(1)-j)-i);P=O(-K);M=L[e>>2];b=H[g+4096>>2];c=0;while(1){h=h-1|0;i=L[d>>2];t=L[d+4>>2];s=L[d+8>>2];j=O(z+O(O(O(m*i)+O(B*t))+O(v*s)));c:{if(!(j<=M)){break c}c=1;if(b>>>0>63){break c}a=b+1|0;H[g+4096>>2]=a;b=(b<<6)+g|0;L[b+8>>2]=x;L[b+4>>2]=r;L[b>>2]=P;H[b+52>>2]=-1;L[b+12>>2]=j;k=O(Q+O(O(O(p*i)+O(A*t))+O(W*s)));i=O(V+O(O(O(q*i)+O(E*t))+O(u*s)));L[b+24>>2]=R+O(O(l*k)+O(O(w*j)+O(o*i)));L[b+20>>2]=S+O(O(C*k)+O(O(n*j)+O(y*i)));L[b+16>>2]=T+O(O(G*k)+O(O(K*j)+O(J*i)));b=a}d=d+12|0;if(h){continue}break}}Oa=f+80|0;return c|0}function O6(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;f=a+b|0;c=H[a+4>>2];a:{b:{if(c&1){break b}if(!(c&3)){break a}c=H[a>>2];b=c+b|0;c:{a=a-c|0;if((a|0)!=H[34026]){if(c>>>0<=255){e=H[a+8>>2];c=c>>>3|0;d=H[a+12>>2];if((d|0)!=(e|0)){break c}i=136084,j=H[34021]&j7(-2,c),H[i>>2]=j;break b}h=H[a+24>>2];c=H[a+12>>2];d:{if((c|0)!=(a|0)){d=H[a+8>>2];H[d+12>>2]=c;H[c+8>>2]=d;break d}e:{e=a+20|0;d=H[e>>2];if(d){break e}e=a+16|0;d=H[e>>2];if(d){break e}c=0;break d}while(1){g=e;c=d;e=c+20|0;d=H[e>>2];if(d){continue}e=c+16|0;d=H[c+16>>2];if(d){continue}break}H[g>>2]=0}if(!h){break b}e=H[a+28>>2];d=(e<<2)+136388|0;f:{if(H[d>>2]==(a|0)){H[d>>2]=c;if(c){break f}i=136088,j=H[34022]&j7(-2,e),H[i>>2]=j;break b}H[h+(H[h+16>>2]==(a|0)?16:20)>>2]=c;if(!c){break b}}H[c+24>>2]=h;d=H[a+16>>2];if(d){H[c+16>>2]=d;H[d+24>>2]=c}d=H[a+20>>2];if(!d){break b}H[c+20>>2]=d;H[d+24>>2]=c;break b}c=H[f+4>>2];if((c&3)!=3){break b}H[34023]=b;H[f+4>>2]=c&-2;H[a+4>>2]=b|1;H[f>>2]=b;return}H[e+12>>2]=d;H[d+8>>2]=e}c=H[f+4>>2];g:{if(!(c&2)){if(H[34027]==(f|0)){H[34027]=a;b=H[34024]+b|0;H[34024]=b;H[a+4>>2]=b|1;if(H[34026]!=(a|0)){break a}H[34023]=0;H[34026]=0;return}if(H[34026]==(f|0)){H[34026]=a;b=H[34023]+b|0;H[34023]=b;H[a+4>>2]=b|1;H[a+b>>2]=b;return}b=(c&-8)+b|0;h:{if(c>>>0<=255){e=H[f+8>>2];c=c>>>3|0;d=H[f+12>>2];if((d|0)==(e|0)){i=136084,j=H[34021]&j7(-2,c),H[i>>2]=j;break h}H[e+12>>2]=d;H[d+8>>2]=e;break h}h=H[f+24>>2];c=H[f+12>>2];i:{if((f|0)!=(c|0)){d=H[f+8>>2];H[d+12>>2]=c;H[c+8>>2]=d;break i}j:{d=f+20|0;e=H[d>>2];if(e){break j}d=f+16|0;e=H[d>>2];if(e){break j}c=0;break i}while(1){g=d;c=e;d=c+20|0;e=H[d>>2];if(e){continue}d=c+16|0;e=H[c+16>>2];if(e){continue}break}H[g>>2]=0}if(!h){break h}e=H[f+28>>2];d=(e<<2)+136388|0;k:{if(H[d>>2]==(f|0)){H[d>>2]=c;if(c){break k}i=136088,j=H[34022]&j7(-2,e),H[i>>2]=j;break h}H[h+(H[h+16>>2]==(f|0)?16:20)>>2]=c;if(!c){break h}}H[c+24>>2]=h;d=H[f+16>>2];if(d){H[c+16>>2]=d;H[d+24>>2]=c}d=H[f+20>>2];if(!d){break h}H[c+20>>2]=d;H[d+24>>2]=c}H[a+4>>2]=b|1;H[a+b>>2]=b;if(H[34026]!=(a|0)){break g}H[34023]=b;return}H[f+4>>2]=c&-2;H[a+4>>2]=b|1;H[a+b>>2]=b}if(b>>>0<=255){b=b>>>3|0;c=(b<<3)+136124|0;d=H[34021];b=1<>2]}H[c+8>>2]=a;H[b+12>>2]=a;H[a+12>>2]=c;H[a+8>>2]=b;return}e=31;H[a+16>>2]=0;H[a+20>>2]=0;if(b>>>0<=16777215){c=b>>>8|0;g=c+1048320>>>16&8;c=c<>>16&4;c=c<>>16&2;c=(c<>>15|0)-(d|(e|g))|0;e=(c<<1|b>>>c+21&1)+28|0}H[a+28>>2]=e;g=(e<<2)+136388|0;m:{d=H[34022];c=1<>2]=a;H[a+24>>2]=g;break n}e=b<<((e|0)==31?0:25-(e>>>1|0)|0);c=H[g>>2];while(1){d=c;if((H[c+4>>2]&-8)==(b|0)){break m}c=e>>>29|0;e=e<<1;g=d+(c&4)|0;c=H[g+16>>2];if(c){continue}break}H[g+16>>2]=a;H[a+24>>2]=d}H[a+12>>2]=a;H[a+8>>2]=a;return}b=H[d+8>>2];H[b+12>>2]=a;H[d+8>>2]=a;H[a+24>>2]=0;H[a+12>>2]=d;H[a+8>>2]=b}}function M_(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=O(0),g=0,h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=0,n=O(0),o=O(0),p=0,q=O(0),r=O(0),s=0,t=0,u=O(0),v=O(0),w=0,x=0,y=0,z=0,A=0,B=0,C=O(0),D=O(0),E=O(0),K=O(0),M=O(0),Q=0,R=O(0),S=0,T=0,U=0;e=Oa-80|0;Oa=e;H[e+40>>2]=0;H[e+44>>2]=0;H[e+48>>2]=0;H[e+52>>2]=0;H[e+32>>2]=0;H[e+36>>2]=0;G[e+28>>1]=0;H[e+24>>2]=-1;H[e+16>>2]=0;H[e+20>>2]=0;a:{if(!b){break a}w=a+108|0;Q=a- -64|0;x=e+60|0;S=1;while(1){g=H[(y<<2)+c>>2];T=g>>>5|0;U=g>>>1&15;z=0;while(1){p=z+T|0;b:{if(H[a+12>>2]){g=H[a+16>>2]+N(p,6)|0;A=J[g+4>>1];B=J[g>>1];g=J[g+2>>1];break b}g=H[a+16>>2]+N(p,12)|0;A=H[g+8>>2];B=H[g>>2];g=H[g+4>>2]}m=H[a+20>>2];H[e+4>>2]=B;H[e+8>>2]=g;H[e+12>>2]=A;s=m+N(g,12)|0;t=m+N(B,12)|0;i=L[t+8>>2];h=O(L[s+8>>2]-i);C=L[a+40>>2];m=m+N(A,12)|0;j=L[t+4>>2];D=O(L[m+4>>2]-j);k=L[t>>2];E=O(L[m>>2]-k);K=L[a+44>>2];q=O(O(C*D)-O(E*K));r=O(L[s>>2]-k);M=O(L[m+8>>2]-i);o=L[a+48>>2];R=O(O(K*M)-O(D*o));n=O(L[s+4>>2]-j);u=O(O(o*E)-O(M*C));f=O(O(h*q)+O(O(r*R)+O(n*u)));l=L[a+56>>2];c:{d:{if(!I[a+52|0]){if(f>2]-i);k=O(L[a+28>>2]-k);j=O(L[a+32>>2]-j);i=O(O(v*q)+O(O(k*R)+O(u*j)));l=O(l*f);q=O(-l);if(i>2]=f*i;L[e+56>>2]=f*O(O(M*o)+O(O(E*n)+O(D*r)));f=O(f*h);break d}if(O(P(f))>2]-i);k=O(L[a+28>>2]-k);j=O(L[a+32>>2]-j);i=O(v*O(O(f*q)+O(O(k*R)+O(u*j))));q=O(-l);if(if|l>2]=i;L[e+56>>2]=v*O(O(M*o)+O(O(E*n)+O(D*h)))}L[e+64>>2]=f;f=L[e+56>>2];if(f>2])){break c}G[e+28>>1]=1;H[e+24>>2]=p;e:{if(I[a+177|0]){if(!(f>2])){break e}p=H[e+20>>2];H[Q>>2]=H[e+16>>2];H[Q+4>>2]=p;H[Q+8>>2]=H[e+24>>2];G[a+76>>1]=1;L[a+80>>2]=L[e+32>>2];L[a+84>>2]=L[e+36>>2];L[a+88>>2]=L[e+40>>2];L[a+92>>2]=L[e+44>>2];L[a+96>>2]=L[e+48>>2];h=L[e+52>>2];L[a+104>>2]=f;L[a+100>>2]=h;H[w+16>>2]=H[x+16>>2];p=H[x+12>>2];H[w+8>>2]=H[x+8>>2];H[w+12>>2]=p;p=H[x+4>>2];H[w>>2]=H[x>>2];H[w+4>>2]=p;h=L[d>>2];L[d>>2]=f>2]=L[t>>2];L[a+132>>2]=L[t+4>>2];L[a+136>>2]=L[t+8>>2];L[a+140>>2]=L[s>>2];L[a+144>>2]=L[s+4>>2];L[a+148>>2]=L[s+8>>2];L[a+152>>2]=L[m>>2];L[a+156>>2]=L[m+4>>2];f=L[m+8>>2];F[a+176|0]=1;H[a+172>>2]=A;H[a+168>>2]=g;H[a+164>>2]=B;L[a+160>>2]=f;break e}L[e>>2]=L[d>>2];g=H[a+8>>2];if(!(Ra[H[H[g>>2]>>2]](g,e+16|0,t,s,m,e,e+4|0)|0)){break a}f=L[e>>2];if(!(f>2])){break e}L[d>>2]=f;L[a+60>>2]=f}if(!H[H[a+8>>2]+4>>2]){break a}}g=(z|0)!=(U|0);z=z+1|0;if(g){continue}break}y=y+1|0;S=y>>>0>>0;if((b|0)!=(y|0)){continue}break}}Oa=e+80|0;return(S^-1)&1}function H4(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=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0);c=Oa-176|0;Oa=c;H[c+60>>2]=a;H[c+56>>2]=a;a=H[e+12>>2];H[d+8>>2]=H[e+8>>2];H[d+12>>2]=a;a=H[e+4>>2];H[d>>2]=H[e>>2];H[d+4>>2]=a;$1(c+144|0,c+112|0,e,f,g);l=L[f+20>>2];k=L[f+16>>2];m=L[c+132>>2];n=L[c+128>>2];o=L[c+136>>2];L[b+8>>2]=o-L[f+24>>2];L[b+4>>2]=m-l;L[b>>2]=n-k;l=L[f+20>>2];k=L[f+16>>2];L[c+72>>2]=o-L[f+24>>2];L[c+68>>2]=m-l;L[c+64>>2]=n-k;l=L[g+20>>2];k=L[g+24>>2];q=L[g+16>>2];L[c+108>>2]=o;L[c+104>>2]=m;r=L[c+168>>2];L[c+96>>2]=r;s=L[c+164>>2];L[c+92>>2]=s;L[c+84>>2]=o-k;L[c+80>>2]=m-l;L[c+100>>2]=n;t=L[c+160>>2];L[c+88>>2]=t;L[c+76>>2]=n-q;b=0;d=G[e+128>>1]&1;b=d?L[e+116>>2]>=L[e+112>>2]:b;a:{if(h){k=L[c+152>>2];q=L[c+148>>2];p=L[c+144>>2];l=L[c+156>>2];break a}u=L[c+124>>2];l=L[c+156>>2];v=L[c+120>>2];k=L[c+152>>2];w=L[c+112>>2];p=L[c+144>>2];x=L[c+116>>2];q=L[c+148>>2];if(!(O(O(u*l)+O(O(v*k)+O(O(w*p)+O(x*q))))>2]=-u;L[c+120>>2]=-v;L[c+116>>2]=-x;L[c+112>>2]=-w}o=O(o-r);o=O(o+o);n=O(n-t);n=O(n+n);m=O(m-s);m=O(m+m);r=O(O(k*o)+O(O(p*n)+O(m*q)));s=O(O(l*l)+O(-.5));L[c+16>>2]=O(k*r)+O(O(o*s)-O(l*O(O(p*m)-O(n*q))));L[c+12>>2]=O(q*r)+O(O(m*s)-O(l*O(O(k*n)-O(o*p))));L[c+8>>2]=O(p*r)+O(O(n*s)-O(l*O(O(q*o)-O(m*k))));d2(c+56|0,c+144|0,c+112|0,c+8|0,7,b?7:6,c+40|0,c+24|0);l=L[f+16>>2];k=L[f+20>>2];m=L[c+40>>2];n=L[c+44>>2];L[i+8>>2]=L[c+48>>2]+L[f+24>>2];L[i+4>>2]=n+k;L[i>>2]=m+l;l=L[g+16>>2];k=L[g+20>>2];m=L[c+24>>2];n=L[c+28>>2];L[j+8>>2]=L[c+32>>2]+L[g+24>>2];L[j+4>>2]=n+k;L[j>>2]=m+l;if(b){a=H[c+60>>2]-H[c+56>>2]|0}else{l=L[c+152>>2];m=L[c+144>>2];q=L[c+148>>2];o=O(q*O(0));k=O(O(l*O(0))+O(O(m+m)+o));n=L[c+156>>2];p=O(O(n*n)+O(-.5));r=O(p*O(0));L[c+16>>2]=O(l*k)+O(r+O(n*O(O(m*O(0))-O(q+q))));L[c+12>>2]=O(q*k)+O(r+O(n*O(O(l+l)+O(m*O(-0)))));L[c+8>>2]=O(m*k)+O(O(p+p)+O(n*O(o+O(l*O(-0)))));b=J[e+128>>1];if(b&2){a=H[c+60>>2];H[c+60>>2]=a+80;H[a+8>>2]=0;H[a>>2]=0;H[a+4>>2]=0;G[a+78>>1]=0;k=L[c+8>>2];p=L[c+12>>2];o=L[c+16>>2];H[a+40>>2]=0;H[a+32>>2]=0;H[a+36>>2]=0;o=O(-o);L[a+24>>2]=o;p=O(-p);L[a+20>>2]=p;r=O(-k);L[a+16>>2]=r;k=L[e+88>>2];L[a+52>>2]=k*p;L[a+56>>2]=k*o;L[a+48>>2]=k*r;k=L[e+80>>2];L[a+28>>2]=k;p=L[e+84>>2];L[a+60>>2]=p;L[a+44>>2]=-p;f=J[a+76>>1];G[a+76>>1]=f|64;b:{if(!(b&4)){break b}if(k>O(0)){H[a+44>>2]=0}if(!(k>2]=0}G[a+76>>1]=f|96}if(d){p=L[c+120>>2];o=L[c+116>>2];r=L[c+124>>2];s=L[c+112>>2];k=O(O(l*p)+O(O(q*o)+O(O(n*r)+O(m*s))));l=O(O(o*l)+O(O(O(-q)*p)+O(O(n*s)+O(r*O(-m)))));m=O(W(O(O(k*k)+O(O(O(l*l)+O(0))+O(0)))));if(m!=O(0)){m=O(O(1)/m);k=O(k*m);l=O(l*m)}k=M5(O(R(O(S(k,O(-1))),O(1))));k=O(k+k);b2(c+56|0,l>2],L[e+112>>2],L[e+108>>2],c+8|0,e+92|0)}a=H[c+60>>2]-H[c+56>>2]|0}Oa=c+176|0;return(a|0)/80|0}function $X(a,b,c,d,e,f){var g=0,h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=0;g=Oa-288|0;Oa=g;x=L[a+4>>2];y=L[e>>2];m=L[d+8>>2];h=L[a+8>>2];i=L[c>>2];j=O(i+i);q=L[c+8>>2];s=L[c+4>>2];v=L[c+12>>2];w=O(v+v);p=O(h*O(O(j*q)-O(s*w)));r=O(L[d+24>>2]-L[c+24>>2]);n=O(O(-p)-r);t=O(n+n);n=L[d>>2];l=O(h*O(O(i*j)+O(O(v*w)+O(-1))));k=O(L[d+16>>2]-L[c+16>>2]);i=O(O(-l)-k);u=O(i+i);q=O(h*O(O(q*w)+O(j*s)));s=O(L[d+20>>2]-L[c+20>>2]);h=O(O(-q)-s);o=O(h+h);h=L[d+4>>2];z=O(O(m*t)+O(O(n*u)+O(o*h)));i=L[d+12>>2];j=O(O(i*i)+O(-.5));v=O(O(m*z)+O(O(t*j)-O(i*O(O(n*o)-O(u*h)))));L[g+284>>2]=v;w=O(O(h*z)+O(O(o*j)-O(i*O(O(m*u)-O(t*n)))));L[g+280>>2]=w;p=O(p-r);p=O(p+p);r=O(l-k);r=O(r+r);q=O(q-s);l=O(q+q);k=O(O(m*p)+O(O(n*r)+O(h*l)));q=O(O(m*k)+O(O(p*j)-O(i*O(O(n*l)-O(r*h)))));L[g+272>>2]=q;s=O(O(h*k)+O(O(l*j)-O(i*O(O(m*r)-O(p*n)))));L[g+268>>2]=s;p=O(O(n*k)+O(O(r*j)-O(i*O(O(h*p)-O(l*m)))));L[g+264>>2]=p;n=O(O(n*z)+O(O(u*j)-O(i*O(O(h*t)-O(o*m)))));L[g+276>>2]=n;c=H[b+40>>2];L[g+20>>2]=v;L[g+16>>2]=w;m=O(x+y);L[g+24>>2]=m;L[g+12>>2]=n;L[g+8>>2]=q;L[g+4>>2]=s;L[g>>2]=p;zU(g+200|0,g);a:{if(!(L[b+4>>2]!=O(1)|L[b+8>>2]!=O(1)|L[b+12>>2]!=O(1))){z=L[e>>2];r=L[a+4>>2];H[g+8>>2]=f;H[g>>2]=127268;H[g+4>>2]=2;i=L[d+4>>2];t=O(i+i);h=L[d+8>>2];l=O(t*h);u=L[d>>2];j=O(u+u);o=L[d+12>>2];k=O(j*o);L[g+40>>2]=l-k;x=O(j*h);y=O(t*o);L[g+36>>2]=x+y;L[g+32>>2]=l+k;l=O(j*i);k=o;o=O(h+h);k=O(k*o);L[g+24>>2]=l-k;L[g+20>>2]=x-y;L[g+16>>2]=l+k;j=O(O(1)-O(u*j));i=O(i*t);L[g+44>>2]=j-i;h=O(h*o);L[g+28>>2]=j-h;L[g+12>>2]=O(O(1)-i)-h;L[g+48>>2]=L[d+16>>2];L[g+52>>2]=L[d+20>>2];h=L[d+24>>2];L[g+104>>2]=r;L[g+100>>2]=z;L[g+96>>2]=m;L[g+56>>2]=h;L[g+88>>2]=m+O(P(O(O(q-v)*O(.5))));L[g+84>>2]=m+O(P(O(O(s-w)*O(.5))));L[g+80>>2]=m+O(P(O(O(p-n)*O(.5))));L[g+72>>2]=O(q+v)*O(.5);L[g+68>>2]=O(s+w)*O(.5);L[g- -64>>2]=O(p+n)*O(.5);H[g+60>>2]=g+264;H[g+108>>2]=c;Ra[H[(J[c+4>>1]<<2)+127280>>2]](c,g+200|0,g,1,1);break a}A=g+120|0;yW(A,b+4|0,b+16|0);z=L[e>>2];r=L[a+4>>2];H[g+8>>2]=f;H[g+4>>2]=2;i=L[d+4>>2];t=O(i+i);h=L[d+8>>2];l=O(t*h);u=L[d>>2];j=O(u+u);o=L[d+12>>2];k=O(j*o);L[g+40>>2]=l-k;x=O(j*h);y=O(t*o);L[g+36>>2]=x+y;L[g+32>>2]=l+k;l=O(j*i);k=o;o=O(h+h);k=O(k*o);L[g+24>>2]=l-k;L[g+20>>2]=x-y;L[g+16>>2]=l+k;j=O(O(1)-O(u*j));i=O(i*t);L[g+44>>2]=j-i;h=O(h*o);L[g+28>>2]=j-h;L[g+12>>2]=O(O(1)-i)-h;L[g+48>>2]=L[d+16>>2];L[g+52>>2]=L[d+20>>2];h=L[d+24>>2];L[g+104>>2]=r;L[g+100>>2]=z;L[g+96>>2]=m;L[g+56>>2]=h;L[g+88>>2]=m+O(P(O(O(q-v)*O(.5))));L[g+84>>2]=m+O(P(O(O(s-w)*O(.5))));L[g+80>>2]=m+O(P(O(O(p-n)*O(.5))));L[g+72>>2]=O(q+v)*O(.5);L[g+68>>2]=O(s+w)*O(.5);L[g- -64>>2]=O(p+n)*O(.5);H[g+60>>2]=g+264;H[g+108>>2]=c;H[g>>2]=127308;H[g+112>>2]=A;a=g+200|0;aY(A,g+236|0,g+248|0,a);Ra[H[(J[c+4>>1]<<2)+127280>>2]](c,a,g,1,1)}Oa=g+288|0;return H[f+4096>>2]!=0}function XT(a,b){var c=0,d=0,e=0,f=O(0),g=O(0),h=0;c=Oa-480|0;Oa=c;a:{if(I[b+24|0]){H[a+32>>2]=0;H[a>>2]=2;d=H[b+4>>2];e=H[b>>2];L[c+472>>2]=L[b+8>>2];H[c+464>>2]=e;H[c+468>>2]=d;d=WT(a,c+464|0);f=L[b+12>>2];g=L[b+4>>2];L[c+456>>2]=L[b+8>>2];L[c+452>>2]=g;L[c+448>>2]=f;d=WT(d,c+448|0);e=H[b+16>>2];h=H[b+12>>2];L[c+440>>2]=L[b+8>>2];H[c+432>>2]=h;H[c+436>>2]=e;d=WT(d,c+432|0);f=L[b+16>>2];g=L[b>>2];L[c+424>>2]=L[b+8>>2];L[c+420>>2]=f;L[c+416>>2]=g;d=WT(d,c+416|0);e=H[b+4>>2];h=H[b>>2];L[c+408>>2]=L[b+8>>2];H[c+400>>2]=h;H[c+404>>2]=e;d=WT(d,c+400|0);e=H[b+4>>2];h=H[b>>2];L[c+392>>2]=L[b+20>>2];H[c+384>>2]=h;H[c+388>>2]=e;d=WT(d,c+384|0);f=L[b+12>>2];g=L[b+4>>2];L[c+376>>2]=L[b+20>>2];L[c+372>>2]=g;L[c+368>>2]=f;d=WT(d,c+368|0);e=H[b+16>>2];h=H[b+12>>2];L[c+360>>2]=L[b+20>>2];H[c+352>>2]=h;H[c+356>>2]=e;d=WT(d,c+352|0);f=L[b+16>>2];g=L[b>>2];L[c+344>>2]=L[b+20>>2];L[c+340>>2]=f;L[c+336>>2]=g;d=WT(d,c+336|0);e=H[b+4>>2];h=H[b>>2];L[c+328>>2]=L[b+20>>2];H[c+320>>2]=h;H[c+324>>2]=e;d=WT(d,c+320|0);H[a+32>>2]=0;H[a>>2]=1;f=L[b+12>>2];g=L[b+4>>2];L[c+312>>2]=L[b+8>>2];L[c+308>>2]=g;L[c+304>>2]=f;d=WT(d,c+304|0);f=L[b+12>>2];g=L[b+4>>2];L[c+296>>2]=L[b+20>>2];L[c+292>>2]=g;L[c+288>>2]=f;d=WT(d,c+288|0);e=H[b+16>>2];h=H[b+12>>2];L[c+280>>2]=L[b+8>>2];H[c+272>>2]=h;H[c+276>>2]=e;d=WT(d,c+272|0);e=H[b+16>>2];h=H[b+12>>2];L[c+264>>2]=L[b+20>>2];H[c+256>>2]=h;H[c+260>>2]=e;d=WT(d,c+256|0);f=L[b+16>>2];g=L[b>>2];L[c+248>>2]=L[b+8>>2];L[c+244>>2]=f;L[c+240>>2]=g;WT(d,c+240|0);f=L[b+20>>2];g=L[b+16>>2];L[c+224>>2]=L[b>>2];b=c+224|0;break a}H[a+32>>2]=0;H[a>>2]=4;d=H[b+4>>2];e=H[b>>2];L[c+216>>2]=L[b+8>>2];H[c+208>>2]=e;H[c+212>>2]=d;d=WT(a,c+208|0);f=L[b+16>>2];g=L[b>>2];L[c+200>>2]=L[b+8>>2];L[c+196>>2]=f;L[c+192>>2]=g;d=WT(d,c+192|0);f=L[b+12>>2];g=L[b+4>>2];L[c+184>>2]=L[b+8>>2];L[c+180>>2]=g;L[c+176>>2]=f;d=WT(d,c+176|0);e=H[b+16>>2];h=H[b+12>>2];L[c+168>>2]=L[b+8>>2];H[c+160>>2]=h;H[c+164>>2]=e;d=WT(d,c+160|0);e=H[b+16>>2];h=H[b+12>>2];L[c+152>>2]=L[b+20>>2];H[c+144>>2]=h;H[c+148>>2]=e;d=WT(d,c+144|0);f=L[b+16>>2];g=L[b>>2];L[c+136>>2]=L[b+8>>2];L[c+132>>2]=f;L[c+128>>2]=g;d=WT(d,c+128|0);f=L[b+16>>2];g=L[b>>2];L[c+120>>2]=L[b+20>>2];L[c+116>>2]=f;L[c+112>>2]=g;d=WT(d,c+112|0);e=H[b+4>>2];h=H[b>>2];L[c+104>>2]=L[b+8>>2];H[c+96>>2]=h;H[c+100>>2]=e;d=WT(d,c+96|0);e=H[b+4>>2];h=H[b>>2];L[c+88>>2]=L[b+20>>2];H[c+80>>2]=h;H[c+84>>2]=e;d=WT(d,c+80|0);f=L[b+12>>2];g=L[b+4>>2];L[c+72>>2]=L[b+8>>2];L[c+68>>2]=g;L[c+64>>2]=f;d=WT(d,c- -64|0);f=L[b+12>>2];g=L[b+4>>2];L[c+56>>2]=L[b+20>>2];L[c+52>>2]=g;L[c+48>>2]=f;d=WT(d,c+48|0);e=H[b+16>>2];h=H[b+12>>2];L[c+40>>2]=L[b+20>>2];H[c+32>>2]=h;H[c+36>>2]=e;d=WT(d,c+32|0);e=H[b+4>>2];h=H[b>>2];L[c+24>>2]=L[b+20>>2];H[c+16>>2]=h;H[c+20>>2]=e;WT(d,c+16|0);f=L[b+20>>2];g=L[b+16>>2];L[c>>2]=L[b>>2];b=c}L[b+8>>2]=f;L[b+4>>2]=g;WT(a,b);Oa=c+480|0}function It(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;e=Oa-288|0;Oa=e;a:{if(!d){b:{if(!H[b+192>>2]|(H[b+4>>2]&-1073741824)!=1073741824){break b}d=H[b+192>>2];f=b+16|0;g=I[H[f+176>>2]+31|0]==1;c:{if(g){if(d){break c}break b}if(!H[b+192>>2]|(!d|I[H[f+176>>2]+31|0]==1)){break b}}UF(f,H[H[b>>2]+2428>>2],g)}d:{if(!I[a+4785|0]){Jt(a+16|0,b,c);H[b>>2]=0;H[b+4>>2]=H[b+4>>2]&268435455;break d}f=a+4932|0;e:{f:{d=H[b+4>>2];switch((d>>>30|0)-1|0){case 1:break e;case 0:break f;default:break d}}H[b+4>>2]=d&1073741823;H[e+16>>2]=b;Pf(f,e+16|0);break d}H[b+4>>2]=d|-1073741824;if(d&268435456){break d}H[e+16>>2]=b;d=rg(f,e+16|0,e+12|0);if(I[e+12|0]){break d}H[d>>2]=H[e+16>>2]}d=H[b+268>>2];g:{if(!(F[(d&16384?H[b+8>>2]+268|0:b+60|0)|0]&1)){H[b+264>>2]=1;H[b+268>>2]=d&-983041;break g}Yj(b)}d=H[b+4>>2]&-33;H[b+4>>2]=d;if(!I[a+4785|0]){break a}if(c){H[b+4>>2]=d|16}F[e+272|0]=1;H[e+280>>2]=0;H[e+284>>2]=64;H[e+276>>2]=e+16;a=0;c=Jn(b,e+12|0,0);h:{if(!c){break h}d=H[b+4>>2]&-1073741824;f=H[b>>2];if((c|0)!=1){h=c&-2;b=0;while(1){j=a<<2;g=H[j+H[e+12>>2]>>2];i=H[g+36>>2];if((i&251658240)==16777216){H[g+32>>2]=f;H[g+36>>2]=d|i&1073741823}g=H[H[e+12>>2]+(j|4)>>2];j=H[g+36>>2];if((j&251658240)==16777216){H[g+32>>2]=f;H[g+36>>2]=d|j&1073741823}a=a+2|0;b=b+2|0;if((h|0)!=(b|0)){continue}break}}if(!(c&1)){break h}a=H[H[e+12>>2]+(a<<2)>>2];b=H[a+36>>2];if((b&251658240)!=16777216){break h}H[a+32>>2]=f;H[a+36>>2]=d|b&1073741823}a=H[e+284>>2];if((a|0)<0|!(a&2147483647)){break a}a=H[e+276>>2];if((a|0)==(e+16|0)|!a){break a}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,a);break a}d=a+4932|0;c=Oa-288|0;Oa=c;i:{if(!I[a+4785|0]){Kt(b);H[b>>2]=0;H[b+4>>2]=H[b+4>>2]&268435455;break i}j:{k:{l:{a=H[b+4>>2];switch((a>>>30|0)-1|0){case 1:break k;case 0:break l;default:break j}}H[b+4>>2]=a&1073741823;H[c+16>>2]=b;Pf(d,c+16|0);break j}H[b+4>>2]=a|-1073741824;if(a&268435456){break j}H[c+16>>2]=b;a=rg(d,c+16|0,c+12|0);if(I[c+12|0]){break j}H[a>>2]=H[c+16>>2]}F[c+272|0]=1;H[c+280>>2]=0;H[c+284>>2]=64;H[c+276>>2]=c+16;a=0;d=Jn(b,c+12|0,0);m:{if(!d){break m}f=H[b+4>>2]&-1073741824;g=H[b>>2];if((d|0)!=1){j=d&-2;while(1){i=a<<2;h=H[i+H[c+12>>2]>>2];k=H[(h+32|0)+4>>2];if((k&251658240)==16777216){H[h+32>>2]=g;H[h+36>>2]=f|k&1073741823}h=H[H[c+12>>2]+(i|4)>>2];i=H[(h+32|0)+4>>2];if((i&251658240)==16777216){H[h+32>>2]=g;H[h+36>>2]=f|i&1073741823}a=a+2|0;l=l+2|0;if((j|0)!=(l|0)){continue}break}}if(!(d&1)){break m}a=H[H[c+12>>2]+(a<<2)>>2];d=H[(a+32|0)+4>>2];if((d&251658240)!=16777216){break m}H[a+32>>2]=g;H[a+36>>2]=f|d&1073741823}a=H[c+284>>2];if((a|0)<0|!(a&2147483647)){break i}a=H[c+276>>2];if((a|0)==(c+16|0)|!a){break i}d=H[33808]+12|0;Ra[H[H[d>>2]+12>>2]](d,a)}Oa=c+288|0;a=H[b+268>>2];n:{if(!(F[(a&16384?H[b+8>>2]+268|0:b+60|0)|0]&1)){H[b+264>>2]=1;H[b+268>>2]=a&-983041;break n}Yj(b)}H[b+4>>2]=H[b+4>>2]&-33}Oa=e+288|0}function C_(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=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=0,v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),F=O(0),J=O(0),K=O(0),M=O(0),N=O(0),P=O(0),Q=O(0),R=O(0),S=O(0),T=O(0),U=O(0),V=O(0);D=L[e+4>>2];F=L[d+4>>2];J=L[c+4>>2];n=L[e+8>>2];K=L[d+8>>2];M=L[c+8>>2];N=L[e>>2];P=L[c>>2];Q=L[d>>2];h=L[b+48>>2];i=L[b+44>>2];f=Oa-32|0;H[f+24>>2]=H[b+8>>2];g=H[b+4>>2];H[f+16>>2]=H[b>>2];H[f+20>>2]=g;R=L[b+40>>2];H[f+8>>2]=H[b+60>>2];g=H[b+56>>2];H[f>>2]=H[b+52>>2];H[f+4>>2]=g;g=H[a+20>>2];B=L[g+4>>2];m=L[g+8>>2];t=L[g>>2];u=H[a+24>>2];v=L[u+4>>2];w=L[u>>2];x=L[u+12>>2];C=O(O(x*x)+O(-.5));y=L[u+8>>2];a:{if(!(I[a+32|0]&2)){e=1033;o=i;p=h;break a}p=L[c+4>>2];o=O(L[d+4>>2]-p);l=L[c+8>>2];r=O(L[e+8>>2]-l);k=O(L[e+4>>2]-p);l=O(L[d+8>>2]-l);p=O(O(o*r)-O(k*l));j=L[c>>2];s=O(L[d>>2]-j);E=O(s*k);k=O(L[e>>2]-j);o=O(E-O(k*o));k=O(O(l*k)-O(r*s));b=H[a+28>>2];b:{c:{if(b){l=O(O(L[b+8>>2]*o)+O(O(L[b>>2]*p)+O(k*L[b+4>>2])));r=O(O(L[b+32>>2]*o)+O(O(L[b+24>>2]*p)+O(k*L[b+28>>2])));k=O(O(L[b+20>>2]*o)+O(O(L[b+12>>2]*p)+O(k*L[b+16>>2])));if(!(O(O(t*B)*m)O(0)){j=O(O(1)/j);r=O(r*j);k=O(k*j);l=O(l*j)}e=1035;if(!I[a+40|0]){break a}b=H[a+36>>2];if(!(O(O(r*L[b+8>>2])+O(O(l*L[b>>2])+O(k*L[b+4>>2])))>O(0))){break a}r=O(-r);k=O(-k);l=O(-l)}b=H[a+12>>2];c=H[a+16>>2];if((b|0)!=(c|0)){j=L[g+12>>2];s=L[g+20>>2];z=L[g+24>>2];A=L[g+16>>2];S=L[u+24>>2];T=L[u+20>>2];q=L[u+16>>2];U=L[a+44>>2];H[a+12>>2]=b+1;d=H[f+24>>2];g=H[f+20>>2];u=H[f+16>>2];a=H[a+8>>2]+(b<<6)|0;G[a+12>>1]=e;V=q;E=m;q=O(O(O(1)-i)-h);m=O(O(O(q*M)+O(i*K))+O(h*n));m=O(m+m);n=O(O(O(q*P)+O(i*Q))+O(h*N));n=O(n+n);h=O(O(O(q*J)+O(i*F))+O(h*D));i=O(h+h);D=O(O(s*m)+O(O(j*n)+O(A*i)));h=O(O(z*z)+O(-.5));q=O(E*O(O(s*D)+O(O(m*h)+O(z*O(O(j*i)-O(n*A))))));q=O(q+q);t=O(t*O(O(j*D)+O(O(n*h)+O(z*O(O(A*m)-O(i*s))))));t=O(t+t);i=O(B*O(O(A*D)+O(O(i*h)+O(z*O(O(s*n)-O(m*j))))));i=O(i+i);B=O(O(s*q)+O(O(j*t)+O(A*i)));m=O(O(s*B)+O(O(q*h)-O(z*O(O(j*i)-O(t*A)))));m=O(m+m);n=O(O(j*B)+O(O(t*h)-O(z*O(O(A*q)-O(i*s)))));n=O(n+n);h=O(O(A*B)+O(O(i*h)-O(z*O(O(s*t)-O(q*j)))));h=O(h+h);i=O(O(y*m)+O(O(w*n)+O(v*h)));L[a+16>>2]=V+O(O(w*i)+O(O(n*C)+O(x*O(O(v*m)-O(h*y)))));L[a+20>>2]=T+O(O(v*i)+O(O(h*C)+O(x*O(O(y*n)-O(m*w)))));L[a+24>>2]=S+O(O(y*i)+O(O(m*C)+O(x*O(O(w*h)-O(n*v)))));L[a+28>>2]=l;L[a+32>>2]=k;L[a+36>>2]=r;L[a+40>>2]=R*U;L[a+44>>2]=o;L[a+48>>2]=p;H[a+8>>2]=d;H[a>>2]=u;H[a+4>>2]=g;d=H[f+4>>2];H[a+52>>2]=H[f>>2];H[a+56>>2]=d;H[a+60>>2]=H[f+8>>2]}return(b|0)!=(c|0)|0}function zW(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=O(g);h=h|0;i=i|0;j=O(j);var k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=0,t=0,u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=0,D=0,E=O(0),F=O(0),I=O(0),K=O(0),M=O(0),P=O(0),Q=O(0),R=O(0),S=O(0),T=O(0);a=Oa-112|0;Oa=a;H[h+8>>2]=-1;xU(a+96|0,b);L[a+108>>2]=L[a+108>>2]-j;AU(a,e+36|0,e+48|0,e,e+12|0,e+24|0);j=L[a+104>>2];k=L[a+96>>2];l=L[a+100>>2];p=O(O(L[a+92>>2]*j)+O(O(L[a+84>>2]*k)+O(L[a+88>>2]*l)));m=O(O(L[a+20>>2]*j)+O(O(L[a+12>>2]*k)+O(L[a+16>>2]*l)));n=O(O(L[a+8>>2]*j)+O(O(L[a>>2]*k)+O(L[a+4>>2]*l)));n=n>2]*j)+O(O(L[a+24>>2]*k)+O(L[a+28>>2]*l)));m=b?m:n;c=o>2]*j)+O(O(L[a+36>>2]*k)+O(L[a+40>>2]*l)));m=c?o:m;d=n>2]*j)+O(O(L[a+48>>2]*k)+O(L[a+52>>2]*l)));m=d?n:m;s=o>2]*j)+O(O(L[a+60>>2]*k)+O(L[a- -64>>2]*l)));m=s?o:m;t=n>2]*j)+O(O(L[a+72>>2]*k)+O(L[a+76>>2]*l)));k=t?n:m;C=jp;j=D?p:j;a:{b:{c:{i=J[i>>1];if(i&512){if(!(j<=O(-L[a+108>>2]))){break c}G[h+12>>1]=3;b=Oa-96|0;Oa=b;AU(b,e+36|0,e+48|0,e,e+12|0,e+24|0);p=L[b+92>>2];m=L[b+88>>2];n=L[b+80>>2];o=L[b+76>>2];q=L[b+68>>2];r=L[b- -64>>2];u=L[b+56>>2];v=L[b+52>>2];w=L[b+44>>2];x=L[b+40>>2];y=L[b+32>>2];z=L[b+28>>2];g=L[a+108>>2];A=L[b+20>>2];j=L[a+104>>2];B=L[b+16>>2];k=L[a+100>>2];E=L[b+84>>2];F=L[b+72>>2];I=L[b+60>>2];K=L[b+48>>2];M=L[b+36>>2];P=L[b+24>>2];Q=L[b+8>>2];R=L[b>>2];S=L[b+4>>2];T=L[b+12>>2];l=L[a+96>>2];L[h+28>>2]=l;L[h+32>>2]=L[a+100>>2];L[h+36>>2]=L[a+104>>2];A=O(g+O(O(A*j)+O(O(T*l)+O(k*B))));B=O(g+O(O(Q*j)+O(O(R*l)+O(S*k))));c=A>2]=g;c=b+N(t?7:s?6:i?5:f?4:e?3:d?2:c,12)|0;j=L[c>>2];k=L[c+4>>2];l=L[a+96>>2];p=L[a+100>>2];L[h+24>>2]=L[c+8>>2]-O(g*L[a+104>>2]);L[h+20>>2]=k-O(g*p);L[h+16>>2]=j-O(g*l);Oa=b+96|0;e=1;break a}if(!(j<=O(-L[a+108>>2]))|i&16){break c}H[h+40>>2]=0;G[h+12>>1]=2;g=L[f>>2];j=L[f+4>>2];L[h+36>>2]=-L[f+8>>2];L[h+32>>2]=-j;L[h+28>>2]=-g;break b}e=0;k=L[a+104>>2];l=L[a+96>>2];p=L[a+100>>2];j=O(O(L[f+8>>2]*k)+O(O(L[f>>2]*l)+O(L[f+4>>2]*p)));if(j>O(-1.0000000116860974e-7)&j>2];n=L[b>>2];o=L[b+4>>2];j=O(O(-O(L[a+108>>2]+O(O(m*k)+O(O(n*l)+O(p*o)))))/j);L[h+40>>2]=j;q=L[f+4>>2];r=L[f>>2];L[h+24>>2]=m+O(j*L[f+8>>2]);L[h+20>>2]=o+O(j*q);L[h+16>>2]=n+O(r*j);if(!(j>O(0))|!(g>=j)){break a}L[h+28>>2]=l;G[h+12>>1]=3;L[h+36>>2]=k;L[h+32>>2]=p}e=1}Oa=a+112|0;return e|0} -function Lu(a,b){var c=O(0),d=O(0),e=O(0),f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),F=O(0),G=O(0),I=O(0),J=O(0),K=O(0),M=O(0);n=L[b+20>>2];u=L[b+24>>2];A=L[b+36>>2];K=L[b+40>>2];c=L[b+88>>2];p=L[b+56>>2];d=L[b+72>>2];i=L[b+84>>2];t=L[b+52>>2];j=L[b+68>>2];o=L[b+80>>2];v=L[b- -64>>2];e=L[b+116>>2];l=L[b+136>>2];m=L[b+100>>2];k=L[b+112>>2];g=L[b+120>>2];w=L[b+132>>2];x=L[b+104>>2];q=L[b+128>>2];h=L[b>>2];C=L[b+8>>2];D=L[b+32>>2];B=L[b+4>>2];E=L[b+16>>2];z=L[b+48>>2];f=L[b+96>>2];H[a+140>>2]=0;H[a+124>>2]=0;H[a+108>>2]=0;H[a+92>>2]=0;H[a+76>>2]=0;H[a+60>>2]=0;H[a+44>>2]=0;H[a+28>>2]=0;H[a+12>>2]=0;y=O(O(h+h)*O(.5));r=O(-z);h=O(O(k+m)*O(.5));m=O(O(w+g)*O(.5));k=O(O(q+x)*O(.5));g=O(O(e+e)*O(.5));e=O(O(h*m)-O(k*g));J=e;s=O(O(l+l)*O(.5));q=O(O(g*s)-O(m*m));l=O(O(f+f)*O(.5));f=O(O(m*k)-O(s*h));e=O(O(1)/O(O(e*k)+O(O(q*l)+O(h*f))));w=O(J*e);x=O(O(O(k*h)-O(l*m))*e);F=O(O(O(l*g)-O(h*h))*e);h=O(O(O(r*w)-O(v*x))-O(o*F));G=O(q*e);q=O(f*e);m=O(O(O(r*G)-O(v*q))-O(o*w));I=O(O(O(s*l)-O(k*k))*e);k=O(O(O(r*q)-O(v*I))-O(o*x));s=O(y+O(O(o*h)+O(O(z*m)+O(v*k))));f=O(O(n+n)*O(.5));n=O(-t);e=O(O(O(n*w)-O(x*j))-O(i*F));l=O(O(O(n*G)-O(q*j))-O(i*w));n=O(O(O(n*q)-O(I*j))-O(i*x));y=O(f+O(O(i*e)+O(O(t*l)+O(j*n))));E=O(O(E+B)*O(.5));B=O(E+O(O(h*i)+O(O(m*t)+O(j*k))));M=O(O(A+u)*O(.5));A=O(M+O(O(e*c)+O(O(l*p)+O(d*n))));f=O(O(D+C)*O(.5));u=O(f+O(O(h*c)+O(O(m*p)+O(d*k))));C=O(O(B*A)-O(u*y));J=f;g=O(-p);f=O(O(O(g*w)-O(x*d))-O(c*F));r=O(O(O(g*G)-O(q*d))-O(c*w));g=O(O(O(g*q)-O(I*d))-O(c*x));D=O(J+O(O(o*f)+O(O(z*r)+O(v*g))));p=O(O(O(K+K)*O(.5))+O(O(f*c)+O(O(r*p)+O(d*g))));d=O(M+O(O(f*i)+O(O(r*t)+O(j*g))));t=O(O(y*p)-O(A*d));c=O(E+O(O(e*o)+O(O(l*z)+O(v*n))));i=O(O(d*u)-O(p*B));j=O(O(1)/O(O(C*D)+O(O(t*s)+O(c*i))));o=O(O(O(s*y)-O(B*c))*j);L[a+40>>2]=o;c=O(O(O(u*c)-O(s*A))*j);L[a+36>>2]=c;d=O(C*j);L[a+32>>2]=d;L[a+24>>2]=c;v=O(O(O(p*s)-O(D*u))*j);L[a+20>>2]=v;i=O(i*j);L[a+16>>2]=i;L[a+8>>2]=d;L[a+4>>2]=i;j=O(t*j);L[a>>2]=j;p=O(O(o*f)+O(O(d*h)+O(e*c)));L[a+88>>2]=p;t=O(O(c*f)+O(O(i*h)+O(e*v)));L[a+84>>2]=t;z=O(O(d*f)+O(O(j*h)+O(e*i)));L[a+80>>2]=z;s=O(O(o*g)+O(O(d*k)+O(n*c)));L[a+72>>2]=s;y=O(O(c*g)+O(O(i*k)+O(n*v)));L[a+68>>2]=y;u=O(O(d*g)+O(O(j*k)+O(n*i)));L[a- -64>>2]=u;o=O(O(o*r)+O(O(d*m)+O(l*c)));L[a+56>>2]=o;c=O(O(c*r)+O(O(i*m)+O(l*v)));L[a+52>>2]=c;d=O(O(d*r)+O(O(j*m)+O(l*i)));L[a+48>>2]=d;L[a+136>>2]=F+O(O(f*p)+O(O(h*z)+O(e*t)));L[a+132>>2]=x+O(O(g*p)+O(O(k*z)+O(n*t)));L[a+128>>2]=w+O(O(r*p)+O(O(m*z)+O(l*t)));L[a+120>>2]=x+O(O(f*s)+O(O(h*u)+O(e*y)));L[a+116>>2]=I+O(O(g*s)+O(O(k*u)+O(n*y)));L[a+112>>2]=q+O(O(r*s)+O(O(m*u)+O(l*y)));L[a+104>>2]=w+O(O(f*o)+O(O(h*d)+O(e*c)));L[a+100>>2]=q+O(O(g*o)+O(O(k*d)+O(n*c)));L[a+96>>2]=G+O(O(r*o)+O(O(m*d)+O(l*c)))}function iw(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=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=0,q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=0,x=0,y=0,z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),G=O(0),I=O(0),J=O(0),K=O(0),M=O(0),P=O(0),R=0,S=0,T=0,U=0;h=Oa-128|0;Oa=h;F[a+489|0]=1;p=H[a+32>>2];x=b<<5;i=p+x|0;R=H[i+8>>2];S=H[i+12>>2];y=e<<5;i=y+p|0;T=H[i+8>>2];U=H[i+12>>2];w=H[a+452>>2];i=H[a+264>>2];z=L[f>>2];A=L[f+4>>2];B=L[f+8>>2];C=L[g>>2];D=L[g+4>>2];E=L[g+8>>2];G=L[c>>2];I=L[c+4>>2];J=L[c+8>>2];K=L[d>>2];M=L[d+4>>2];P=L[d+8>>2];j=O(-P);L[h+120>>2]=j;k=O(-M);L[h+116>>2]=k;H[h+124>>2]=0;l=O(-K);L[h+112>>2]=l;H[h+108>>2]=0;m=O(-J);L[h+104>>2]=m;n=O(-I);L[h+100>>2]=n;o=O(-G);L[h+96>>2]=o;q=O(-E);L[h+88>>2]=q;r=O(-D);L[h+84>>2]=r;H[h+92>>2]=0;s=O(-C);L[h+80>>2]=s;H[h+76>>2]=0;t=O(-B);L[h+72>>2]=t;u=O(-A);L[h+68>>2]=u;v=O(-z);L[h+64>>2]=v;c=i+y|0;L[c>>2]=L[c>>2]-z;L[c+4>>2]=L[c+4>>2]-A;L[c+8>>2]=L[c+8>>2]-B;L[c+16>>2]=L[c+16>>2]-C;L[c+20>>2]=L[c+20>>2]-D;L[c+24>>2]=L[c+24>>2]-E;c=S&U;c=c?Q(c)^63:31-Q(R&T)|0;if((e|0)!=(c|0)){while(1){gw(h+32|0,H[a+396>>2]+N(e,96)|0,(N(e,160)+w|0)+120|0,H[a+384>>2]+N(e,76)|0,h- -64|0);H[h+76>>2]=0;H[h+92>>2]=0;v=L[h+32>>2];L[h+64>>2]=v;u=L[h+36>>2];L[h+68>>2]=u;t=L[h+40>>2];L[h+72>>2]=t;s=L[h+48>>2];L[h+80>>2]=s;r=L[h+52>>2];L[h+84>>2]=r;q=L[h+56>>2];L[h+88>>2]=q;e=H[((e<<5)+p|0)+24>>2];d=(e<<5)+i|0;L[d>>2]=v+L[d>>2];L[d+4>>2]=u+L[d+4>>2];L[d+8>>2]=t+L[d+8>>2];L[d+16>>2]=s+L[d+16>>2];L[d+20>>2]=r+L[d+20>>2];L[d+24>>2]=q+L[d+24>>2];if((c|0)!=(e|0)){continue}break}}d=i+x|0;L[d>>2]=L[d>>2]-G;L[d+4>>2]=L[d+4>>2]-I;L[d+8>>2]=L[d+8>>2]-J;L[d+16>>2]=L[d+16>>2]-K;L[d+20>>2]=L[d+20>>2]-M;L[d+24>>2]=L[d+24>>2]-P;if((b|0)!=(c|0)){while(1){gw(h+32|0,H[a+396>>2]+N(b,96)|0,(N(b,160)+w|0)+120|0,H[a+384>>2]+N(b,76)|0,h+96|0);H[h+108>>2]=0;H[h+124>>2]=0;o=L[h+32>>2];L[h+96>>2]=o;n=L[h+36>>2];L[h+100>>2]=n;m=L[h+40>>2];L[h+104>>2]=m;l=L[h+48>>2];L[h+112>>2]=l;k=L[h+52>>2];L[h+116>>2]=k;j=L[h+56>>2];L[h+120>>2]=j;b=H[((b<<5)+p|0)+24>>2];d=(b<<5)+i|0;L[d>>2]=o+L[d>>2];L[d+4>>2]=n+L[d+4>>2];L[d+8>>2]=m+L[d+8>>2];L[d+16>>2]=l+L[d+16>>2];L[d+20>>2]=k+L[d+20>>2];L[d+24>>2]=j+L[d+24>>2];if((b|0)!=(c|0)){continue}break}}L[h+56>>2]=j+q;L[h+52>>2]=k+r;H[h+60>>2]=0;H[h+44>>2]=0;L[h+48>>2]=l+s;L[h+40>>2]=m+t;L[h+36>>2]=n+u;L[h+32>>2]=o+v;if(c){while(1){gw(h,H[a+396>>2]+N(c,96)|0,(N(c,160)+w|0)+120|0,H[a+384>>2]+N(c,76)|0,h+32|0);H[h+44>>2]=0;H[h+60>>2]=0;j=L[h>>2];L[h+32>>2]=j;k=L[h+4>>2];L[h+36>>2]=k;l=L[h+8>>2];L[h+40>>2]=l;m=L[h+16>>2];L[h+48>>2]=m;n=L[h+20>>2];L[h+52>>2]=n;o=L[h+24>>2];L[h+56>>2]=o;c=H[((c<<5)+p|0)+24>>2];b=(c<<5)+i|0;L[b>>2]=j+L[b>>2];L[b+4>>2]=k+L[b+4>>2];L[b+8>>2]=l+L[b+8>>2];L[b+16>>2]=m+L[b+16>>2];L[b+20>>2]=n+L[b+20>>2];L[b+24>>2]=o+L[b+24>>2];if(c){continue}break}}Oa=h+128|0}function KM(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;u=Oa-16|0;Oa=u;if(H[a+16>>2]){Ra[H[H[a>>2]+104>>2]](a);k=H[a+12>>2];c=H[a+16>>2];n=32;o=Oa-16|0;Oa=o;F[o+12|0]=0;f=o-128|0;Oa=f;H[o+8>>2]=f;g=c-1|0;a:{if((g|0)<=0){break a}while(1){b:{if((g|0)<=(i|0)){break b}while(1){if(g-i>>>0<=4){while(1){h=i;i=h+1|0;d=i;c=h;while(1){c=K[(d<<2)+k>>2]>K[(c<<2)+k>>2]?d:c;e=(d|0)<(g|0);d=d+1|0;if(e){continue}break}if((c|0)!=(h|0)){c=(c<<2)+k|0;d=H[c>>2];e=c;c=(h<<2)+k|0;H[e>>2]=H[c>>2];H[c>>2]=d}if((g|0)!=(i|0)){continue}break b}}l=((g+i|0)/2<<2)+k|0;d=H[l>>2];m=(i<<2)+k|0;c=H[m>>2];if(d>>>0>c>>>0){H[m>>2]=d;H[l>>2]=c;d=c;c=H[m>>2]}e=(g<<2)+k|0;h=H[e>>2];c:{if(h>>>0<=c>>>0){c=h;break c}H[m>>2]=h;H[e>>2]=c;d=H[l>>2]}if(c>>>0>d>>>0){H[l>>2]=c;H[e>>2]=d;d=H[l>>2]}p=g-1|0;q=(p<<2)+k|0;H[l>>2]=H[q>>2];H[q>>2]=d;c=i;while(1){h=c;c=c+1|0;s=(c<<2)+k|0;l=H[s>>2];if(l>>>0>d>>>0){continue}while(1){p=p-1|0;m=(p<<2)+k|0;e=H[m>>2];if(e>>>0>>0){continue}break}if((c|0)<(p|0)){H[s>>2]=e;H[m>>2]=l;d=H[q>>2];continue}break}H[s>>2]=d;H[q>>2]=l;d:{if((c-i|0)<(g-c|0)){e:{if(n-1>>>0>j>>>0){d=f;break e}d=n<<3;if(d){e=H[33808];c=e+12|0;d=(w=c,x=d,y=Ra[H[H[e>>2]+20>>2]](e)|0?25032:55639,z=14160,A=155,v=H[H[c>>2]+8>>2],Ra[v](w|0,x|0,y|0,z|0,A|0)|0)}else{d=0}c=R6(d,f,j<<2);if(!(!r|!f)){e=H[33808]+12|0;Ra[H[H[e>>2]+12>>2]](e,f)}n=n<<1;r=1;f=c}c=(j<<2)+d|0;H[c>>2]=i;H[c+4>>2]=h;i=h+2|0;break d}m=h+2|0;f:{if(n-1>>>0>j>>>0){d=f;break f}d=n<<3;if(d){e=H[33808];c=e+12|0;d=(A=c,z=d,y=Ra[H[H[e>>2]+20>>2]](e)|0?25032:55639,x=14160,w=155,v=H[H[c>>2]+8>>2],Ra[v](A|0,z|0,y|0,x|0,w|0)|0)}else{d=0}c=R6(d,f,j<<2);if(!(!r|!f)){e=H[33808]+12|0;Ra[H[H[e>>2]+12>>2]](e,f)}n=n<<1;r=1;f=c}c=(j<<2)+d|0;H[c>>2]=m;H[c+4>>2]=g;g=h}j=j+2|0;if((g|0)>(i|0)){continue}break}}if(j){c=j-2|0;i=H[(c<<2)+f>>2];g=H[((j<<2)+f|0)-4>>2];j=c;continue}break}if(!r|!f){break a}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,f)}if(I[o+12|0]){H5(H[o+8>>2])}Oa=o+16|0;if(H[a+16>>2]){g=H[a+44>>2];while(1){g=g-1|0;e=H[H[a+40>>2]+(g<<2)>>2];j=H[H[a+12>>2]+(t<<2)>>2];i=j>>>3&268435455;c=i<<3;yJ(H[a+4>>2],c+H[a+52>>2]|0);H[H[a+40>>2]+(i<<2)>>2]=e;d=c;c=H[a+52>>2];h=d+c|0;f=g<<3;d=f+c|0;c=H[d+4>>2];H[h>>2]=H[d>>2];H[h+4>>2]=c;d=(g<<4)+b|0;c=H[d+12>>2];h=(i<<4)+b|0;H[h+8>>2]=H[d+8>>2];H[h+12>>2]=c;c=H[d+4>>2];H[h>>2]=H[d>>2];H[h+4>>2]=c;c=f+H[a+52>>2]|0;H[c>>2]=0;H[c+4>>2]=0;c=H[a+108>>2];d=H[c+456>>2];H[e+68>>2]=j;g:{if(!(I[e+43|0]&2)|I[e+41|0]&8){break g}c=H[H[H[c+444>>2]>>2]+(H[e- -64>>2]<<2)>>2];if(!c){break g}H[d+(H[c+20>>2]<<2)>>2]=j;f=H[c+16>>2];if(!f){break g}while(1){H[d+(H[f+20>>2]<<2)>>2]=H[e+68>>2];f=H[f+16>>2];if(f){continue}break}}H[a+56>>2]=g;H[a+44>>2]=g;t=t+1|0;if(t>>>0>2]){continue}break}}H[a+16>>2]=0;Ra[H[H[a>>2]+108>>2]](a)}Oa=u+16|0}function iW(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=O(g);h=h|0;i=i|0;j=O(j);var k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0);c=Oa-128|0;Oa=c;a:{b:{if(!(L[e>>2]!=L[e+12>>2]|L[e+4>>2]!=L[e+16>>2]|L[e+8>>2]!=L[e+20>>2])){k=L[b+4>>2];l=O(k+k);j=L[b+8>>2];o=O(l*j);m=L[b>>2];n=O(m+m);p=L[b+12>>2];q=O(n*p);L[c+92>>2]=o-q;L[c+84>>2]=o+q;m=O(O(1)-O(m*n));o=O(k*l);L[c+96>>2]=m-o;r=m;m=O(j+j);q=O(j*m);L[c+80>>2]=r-q;j=O(n*j);l=O(l*p);L[c+88>>2]=j+l;k=O(n*k);n=O(m*p);L[c+76>>2]=k-n;L[c+72>>2]=j-l;L[c+68>>2]=k+n;L[c+64>>2]=O(O(1)-o)-q;L[c+100>>2]=L[b+16>>2];L[c+104>>2]=L[b+20>>2];L[c+108>>2]=L[b+24>>2];L[c+112>>2]=L[a+4>>2];L[c+116>>2]=L[a+8>>2];L[c+120>>2]=L[a+12>>2];j=L[e+24>>2];G[c+56>>1]=J[i>>1];if(!j1(c- -64|0,j,e,f,g,h+40|0,h+28|0,c+56|0)){break b}G[h+12>>1]=2;L[h+28>>2]=-L[h+28>>2];L[h+36>>2]=-L[h+36>>2];L[h+32>>2]=-L[h+32>>2];d=1;if(!(F[i|0]&1)){break a}g=L[h+40>>2];if(g==O(0)){break a}j=L[e>>2];k=L[f>>2];n=L[e+4>>2];l=L[f+4>>2];L[c+8>>2]=O(g*L[f+8>>2])+L[e+8>>2];L[c+4>>2]=n+O(g*l);L[c>>2]=j+O(g*k);pZ(c,c+100|0,c+112|0,c- -64|0,c+40|0);n=L[c+92>>2];l=L[c+80>>2];m=L[c+96>>2];p=L[c+84>>2];o=L[c+100>>2];q=L[c+88>>2];s=L[c+64>>2];t=L[c+76>>2];r=L[c+104>>2];u=L[c+68>>2];v=L[c+108>>2];g=L[c+48>>2];w=L[c+72>>2];j=L[c+40>>2];k=L[c+44>>2];G[h+12>>1]=J[h+12>>1]|1;L[h+24>>2]=v+O(O(O(j*w)+O(k*p))+O(g*m));L[h+20>>2]=r+O(O(O(j*u)+O(k*l))+O(g*n));L[h+16>>2]=o+O(O(O(j*s)+O(k*t))+O(g*q));break a}G[c+32>>1]=J[i>>1];d=0;if(!l1(e,b,a+4|0,f,g,h+16|0,h+40|0,h+28|0,c+32|0)){break a}G[h+12>>1]=2;d=1;if(!(F[i|0]&1)){break a}g=L[h+40>>2];if(g==O(0)){break a}j=L[e+16>>2];k=L[e+20>>2];n=L[e>>2];l=L[e+4>>2];m=L[e+8>>2];p=L[e+12>>2];L[c+24>>2]=L[e+24>>2];o=L[f>>2];q=L[f+4>>2];r=k;k=O(g*L[f+8>>2]);L[c+20>>2]=r+k;r=j;j=O(g*q);L[c+16>>2]=r+j;g=O(g*o);L[c+12>>2]=p+g;L[c+8>>2]=k+m;L[c+4>>2]=j+l;L[c>>2]=g+n;j=L[b+4>>2];n=O(j+j);g=L[b+8>>2];p=O(n*g);l=L[b>>2];k=O(l+l);m=L[b+12>>2];o=O(k*m);L[c+92>>2]=p-o;L[c+84>>2]=p+o;l=O(O(1)-O(l*k));p=O(j*n);L[c+96>>2]=l-p;r=l;l=O(g+g);o=O(g*l);L[c+80>>2]=r-o;g=O(k*g);n=O(n*m);L[c+88>>2]=g+n;j=O(k*j);k=O(l*m);L[c+76>>2]=j-k;L[c+72>>2]=g-n;L[c+68>>2]=j+k;L[c+64>>2]=O(O(1)-p)-o;L[c+100>>2]=L[b+16>>2];L[c+104>>2]=L[b+20>>2];L[c+108>>2]=L[b+24>>2];L[c+112>>2]=L[a+4>>2];L[c+116>>2]=L[a+8>>2];L[c+120>>2]=L[a+12>>2];sZ(c,c+12|0,c+100|0,c+112|0,c- -64|0,0,c+40|0);s=L[b+20>>2];o=L[b+24>>2];t=L[b+16>>2];j=L[b+8>>2];g=L[b+12>>2];k=L[b>>2];n=L[b+4>>2];l=L[c+48>>2];p=L[c+44>>2];m=L[c+40>>2];G[h+12>>1]=J[h+12>>1]|1;r=o;l=O(l+l);m=O(m+m);p=O(p+p);o=O(O(j*l)+O(O(k*m)+O(n*p)));q=O(O(g*g)+O(-.5));L[h+24>>2]=r+O(O(j*o)+O(O(l*q)+O(g*O(O(k*p)-O(m*n)))));L[h+20>>2]=s+O(O(n*o)+O(O(p*q)+O(g*O(O(j*m)-O(l*k)))));L[h+16>>2]=t+O(O(k*o)+O(O(m*q)+O(g*O(O(n*l)-O(p*j)))));break a}d=0}Oa=c+128|0;return d|0}function ST(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,r=0,s=0,t=0,u=0;n=Oa-5120|0;Oa=n;if(!(!b|!c|(c|0)<0)){d=H[a+4>>2]&2147483647;if((d|0)!=(c|0)){if(c>>>0>d>>>0){RT(a,c)}H[a+4>>2]=c|-2147483648}H[a+20>>2]=n;H[a+16>>2]=n+1024;k=c;a:{if(!b|!c|(c|0)<0){break a}H[a+24>>2]=H[a+24>>2]+1;S6(H[a+16>>2],0,4096);i=(k<<2)+b|0;f=H[a+16>>2];g=f+3072|0;l=f+2048|0;m=f+1024|0;b:{c:{if(H[a+4>>2]<0){if((b|0)!=(i|0)){d=H[b>>2];c=b;while(1){h=d;d=H[c>>2];if(h>>>0>d>>>0){break c}h=((d&255)<<2)+f|0;H[h>>2]=H[h>>2]+1;h=m+(I[c+1|0]<<2)|0;H[h>>2]=H[h>>2]+1;h=l+(I[c+2|0]<<2)|0;H[h>>2]=H[h>>2]+1;h=g+(I[c+3|0]<<2)|0;H[h>>2]=H[h>>2]+1;c=c+4|0;if((i|0)!=(c|0)){continue}break}}H[a+28>>2]=H[a+28>>2]+1;d=k>>>0>1?k:1;k=d&7;b=H[a+8>>2];f=0;c=0;if(d-1>>>0>=7){h=d&-8;d=0;while(1){H[b+(c<<2)>>2]=c;e=c|1;H[b+(e<<2)>>2]=e;e=c|2;H[b+(e<<2)>>2]=e;e=c|3;H[b+(e<<2)>>2]=e;e=c|4;H[b+(e<<2)>>2]=e;e=c|5;H[b+(e<<2)>>2]=e;e=c|6;H[b+(e<<2)>>2]=e;e=c|7;H[b+(e<<2)>>2]=e;c=c+8|0;d=d+8|0;if((h|0)!=(d|0)){continue}break}}if(!k){break a}while(1){H[b+(c<<2)>>2]=c;c=c+1|0;f=f+1|0;if((k|0)!=(f|0)){continue}break}break a}if((b|0)==(i|0)){break b}d=H[a+8>>2];h=H[(H[d>>2]<<2)+b>>2];c=b;while(1){e=(I[c|0]<<2)+f|0;H[e>>2]=H[e>>2]+1;e=m+(I[c+1|0]<<2)|0;H[e>>2]=H[e>>2]+1;e=l+(I[c+2|0]<<2)|0;H[e>>2]=H[e>>2]+1;e=g+(I[c+3|0]<<2)|0;H[e>>2]=H[e>>2]+1;c=c+4|0;if((i|0)==(c|0)){break b}e=h;d=d+4|0;h=H[(H[d>>2]<<2)+b>>2];if(e>>>0<=h>>>0){continue}break}}if((c|0)!=(i|0)){while(1){d=(I[c|0]<<2)+f|0;H[d>>2]=H[d>>2]+1;d=m+(I[c+1|0]<<2)|0;H[d>>2]=H[d>>2]+1;d=l+(I[c+2|0]<<2)|0;H[d>>2]=H[d>>2]+1;d=g+(I[c+3|0]<<2)|0;H[d>>2]=H[d>>2]+1;c=c+4|0;if((i|0)!=(c|0)){continue}break}}h=0;l=k<<2;m=l-4|0;q=m&4;p=k>>>0>1;c=p?k:1;r=c&-2;s=c&1;while(1){i=(h<<10)+f|0;e=b+h|0;if(!(!f|(k|0)==H[i+(I[e|0]<<2)>>2])){c=H[a+20>>2];d=H[a+12>>2];H[c>>2]=d;f=1;while(1){g=f<<2;j=g+c|0;o=d;d=i+g|0;o=o+(H[d-4>>2]<<2)|0;H[j>>2]=o;g=g+4|0;d=o+(H[d>>2]<<2)|0;H[g+c>>2]=d;d=d+(H[i+g>>2]<<2)|0;H[j+8>>2]=d;f=f+3|0;if((f|0)!=256){continue}break}d:{e:{if(H[a+4>>2]<0){d=0;f=0;if(!p){break e}while(1){g=c+(I[e+(d<<2)|0]<<2)|0;i=H[g>>2];H[g>>2]=i+4;H[i>>2]=d;g=d|1;j=c+(I[e+(g<<2)|0]<<2)|0;i=H[j>>2];H[j>>2]=i+4;H[i>>2]=g;d=d+2|0;f=f+2|0;if((r|0)!=(f|0)){continue}break}break e}f=H[a+8>>2];d=f;if(!q){i=H[f>>2];g=c+(I[e+(i<<2)|0]<<2)|0;d=H[g>>2];H[g>>2]=d+4;H[d>>2]=i;d=f+4|0}if(!m){break d}i=f+l|0;while(1){g=H[d>>2];j=c+(I[e+(g<<2)|0]<<2)|0;f=H[j>>2];H[j>>2]=f+4;H[f>>2]=g;g=H[d+4>>2];j=c+(I[e+(g<<2)|0]<<2)|0;f=H[j>>2];H[j>>2]=f+4;H[f>>2]=g;d=d+8|0;if((i|0)!=(d|0)){continue}break}break d}if(s){e=c+(I[e+(d<<2)|0]<<2)|0;c=H[e>>2];H[e>>2]=c+4;H[c>>2]=d}H[a+4>>2]=H[a+4>>2]&2147483647}t=a,u=k7(H[a+8>>2],H[a+12>>2]),H[t+8>>2]=u;H[a+12>>2]=Qa}h=h+1|0;if((h|0)==4){break a}f=H[a+16>>2];continue}}H[a+28>>2]=H[a+28>>2]+1}}Oa=n+5120|0;return a}function NQ(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;a:{l=H[a+48>>2];b:{if(!l){break b}q=H[H[a+4>>2]+40>>2];o=H[q+2168>>2];h=H[l+16>>2];c:{if(h){break c}i=JI(o);H[l+16>>2]=i;if(!i){h=0;break c}j=H[l+8>>2];H[i+16>>2]=H[j+48>>2];H[i+20>>2]=H[H[l+12>>2]+48>>2];j=H[j+44>>2];H[i+24>>2]=H[((I[j+9|0]<<2)+135180|0)+40>>2]+j;j=i;i=H[H[l+12>>2]+44>>2];H[j+28>>2]=H[((I[i+9|0]<<2)+135180|0)+40>>2]+i;h=H[l+16>>2]}t=H[q+1092>>2];i=H[h+12>>2];n=H[a+44>>2];u=H[a+32>>2];v=H[l+8>>2];s=H[a+28>>2];w=H[s+4>>2];j=H[q+1088>>2];H[h+12>>2]=j;r=n&28672;d:{e:{f:{g:{if((i|0)!=(j|0)){i=J[h+4>>1];if(!i){G[h+4>>1]=2;i=2}j=J[h+10>>1];h:{if(!(d?0:r)){G[h+10>>1]=j&31;i=HI(o,i,0,h);break h}p=j>>>1&32752;k=n&4096?56:4;k=n&8192?k+52|0:k;k=(n&16384?k+60|0:k)+4|0;if(p>>>0>>0){G[h+10>>1]=j&31|(k>>>4|0)+((k&15)!=0)<<5;i=HI(o,i,k,h);break f}i=HI(o,i,p,h);if(p){break f}}G[h+6>>1]=0;G[h+8>>1]=0;G[h+10>>1]=J[h+10>>1]&65504;break g}p=J[h+6>>1];if(!p){break a}j=H[o+44>>2]+H[h>>2]|0;i:{if(d|!r){break i}k=J[h+8>>1];if(((k?J[j>>1]:-1)|0)>=(e|0)){break i}i=j;m=n&4096?56:4;m=n&8192?m+52|0:m;m=n&16384?m+60|0:m;m=k+(k?m:m+4|0)&65535;if(m>>>0>(J[h+10>>1]>>>1&32752)>>>0){i=J[h+4>>1];i=II(o,(i>>>0<=p>>>0)+i|0,m,h)}if(i){OQ(h,i,r,H[l+8>>2],H[l+12>>2],e,f,p,k?k:4);if((n&10240)==10240){break e}break d}G[h+10>>1]=J[h+10>>1]|4}i=j}if(!i){break a}break d}if(!i){break a}G[h+6>>1]=0;G[h+8>>1]=0;G[h+10>>1]=J[h+10>>1]&65504;OQ(h,i,r,H[l+8>>2],H[l+12>>2],e,f,0,4);if((n&10240)!=10240){break d}}F[q+4620|0]=1}b=e?b|32:b;j=J[h+10>>1]>>>1&32752;f=j+i|0;j:{if(H[a+40>>2]!=(t|0)){i=J[h+6>>1];k:{if(i>>>0>1]){f=f+N(i,40)|0;break k}d=II(o,((i>>>1|0)+i|0)+1|0,j,h);f=J[h+10>>1];if(!d){G[h+10>>1]=f|4;return}i=J[h+6>>1];f=(d+(f>>>1&32752)|0)+N(i,40)|0}G[a+64>>1]=i;d=(v|0)==(w|0);i=d?s:u;H[f>>2]=H[33798]+H[i+28>>2];d=d?u:s;j=H[33798]+H[d+28>>2]|0;H[f+8>>2]=0;H[f+12>>2]=0;H[f+4>>2]=j;H[f+16>>2]=0;H[f+20>>2]=0;H[f+24>>2]=0;G[f+30>>1]=b;G[f+28>>1]=c;H[f+32>>2]=H[i+32>>2];H[f+36>>2]=H[d+32>>2];G[h+6>>1]=J[h+6>>1]+1;H[a+40>>2]=t;break j}f=f+N(J[a+64>>1],40)|0;G[f+28>>1]=J[f+28>>1]|c;c=b|J[f+30>>1];G[f+30>>1]=d?c&8?c&65527:c:c}if(!(I[a+45|0]&2)){break b}c=H[a+56>>2];if(b&272|(H[f+8>>2]|!c)){break b}b=H[c+68>>2];l:{if((b|0)<0){a=H[H[H[H[a+4>>2]+40>>2]+976>>2]+1024>>2];a=Ra[H[H[a>>2]+80>>2]](a,b)|0;break l}a=H[g+32>>2]+(H[((b&7)<<2)+g>>2]+(b>>>3|0)<<4)|0}c=H[c+32>>2];g=I[a+13|0];if(!(e?0:g)){if(!e|(J[c+6>>1]|!c)){break b}}m:{if(!e){h=H[a+8>>2];i=H[a+4>>2];b=H[a>>2];a=I[a+12|0];e=N(g,48)+(a<<4)|0;c=e;break m}i=c- -64|0;b=c+16|0;a=J[c+4>>1];e=a-16|0;d=c;c=a+15&131056;h=d+c|0;a=1;g=1;c=c-16|0}G[f+26>>1]=e;F[f+25|0]=g;F[f+24|0]=a;H[f+12>>2]=i;H[f+8>>2]=b;H[f+16>>2]=h;a=h?a<<2:0;H[f+20>>2]=a+c;b=J[f+28>>1]|((v|0)!=(w|0))<<5;G[f+28>>1]=a?b|16:b}return}G[h+10>>1]=J[h+10>>1]|2}function yL(a){a=a|0;var b=0,c=0;H[a>>2]=117204;b=H[a+508>>2];a:{if(!b){break a}c=H[b+12>>2];b:{if((c|0)<0|!(c&2147483647)){break b}c=H[b+4>>2];if(!c){break b}b=H[b>>2];Ra[H[H[b>>2]+12>>2]](b,c);b=H[a+508>>2];if(!b){break a}}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}H[a+508>>2]=0;b=H[a+512>>2];c:{if(!b){break c}c=H[b+12>>2];d:{if((c|0)<0|!(c&2147483647)){break d}c=H[b+4>>2];if(!c){break d}b=H[b>>2];Ra[H[H[b>>2]+12>>2]](b,c);b=H[a+512>>2];if(!b){break c}}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}H[a+512>>2]=0;b=H[a+560>>2];e:{if((b|0)<0|!(b&2147483647)){break e}b=H[a+552>>2];if(!b){break e}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+548>>2];f:{if((b|0)<0|!(b&2147483647)){break f}b=H[a+540>>2];if(!b){break f}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+536>>2];g:{if((b|0)<0|!(b&2147483647)){break g}b=H[a+528>>2];if(!b){break g}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+524>>2];h:{if((b|0)<0|!(b&2147483647)){break h}b=H[a+516>>2];if(!b){break h}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+504>>2];i:{if((b|0)<0|!(b&2147483647)){break i}b=H[a+496>>2];if(!b){break i}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b-H[b-4>>2]|0)}b=H[a+492>>2];j:{if((b|0)<0|!(b&2147483647)){break j}b=H[a+484>>2];if(!b){break j}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b-H[b-4>>2]|0)}b=H[a+480>>2];k:{if((b|0)<0|!(b&2147483647)){break k}b=H[a+472>>2];if(!b){break k}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b-H[b-4>>2]|0)}b=H[a+468>>2];l:{if((b|0)<0|!(b&2147483647)){break l}b=H[a+460>>2];if(!b){break l}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+456>>2];m:{if((b|0)<0|!(b&2147483647)){break m}b=H[a+448>>2];if(!b){break m}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+444>>2];n:{if((b|0)<0|!(b&2147483647)){break n}b=H[a+436>>2];if(!b){break n}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+432>>2];o:{if((b|0)<0|!(b&2147483647)){break o}b=H[a+424>>2];if(!b){break o}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+420>>2];p:{if((b|0)<0|!(b&2147483647)){break p}b=H[a+412>>2];if(!b){break p}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+408>>2];q:{if((b|0)<0|!(b&2147483647)){break q}b=H[a+400>>2];if(!b){break q}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b-H[b-4>>2]|0)}b=H[a+396>>2];r:{if((b|0)<0|!(b&2147483647)){break r}b=H[a+388>>2];if(!b){break r}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b-H[b-4>>2]|0)}b=H[a+384>>2];s:{if((b|0)<0|!(b&2147483647)){break s}b=H[a+376>>2];if(!b){break s}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b-H[b-4>>2]|0)}c=H[a+368>>2];b=H[c>>2];if(b){H[c>>2]=H[b>>2]}if(b){while(1){ay(b);c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b-H[b-4>>2]|0);c=H[a+368>>2];b=H[c>>2];if(b){H[c>>2]=H[b>>2]}if(b){continue}break}}b=H[a+368>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}by(a);return a|0}function Sw(a,b){var c=O(0),d=O(0),e=O(0),f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),F=O(0),G=O(0),H=O(0),I=O(0),J=O(0),K=O(0),M=O(0),N=O(0),P=O(0),Q=O(0),R=O(0);M=O(O(L[b+56>>2]+L[b- -64>>2])*O(.5));s=O(O(L[b+44>>2]+L[b+60>>2])*O(.5));N=O(O(L[b+40>>2]+L[b+48>>2])*O(.5));c=L[b+36>>2];Q=O(O(c+c)*O(.5));c=L[b+68>>2];R=O(O(c+c)*O(.5));c=L[b+52>>2];u=O(O(c+c)*O(.5));i=L[b+32>>2];l=L[b+28>>2];y=L[b+20>>2];E=L[b+16>>2];p=L[b+24>>2];F=L[b+12>>2];m=L[b+8>>2];g=L[b+4>>2];v=L[b>>2];z=O(1);A=O(1);c=O(0);B=O(1);C=O(1);e=O(O(L[b+76>>2]+L[b+84>>2])*O(.5));n=O(O(L[b+92>>2]+L[b+100>>2])*O(.5));f=O(O(L[b+80>>2]+L[b+96>>2])*O(.5));d=L[b+88>>2];h=O(O(d+d)*O(.5));t=O(O(e*n)-O(f*h));d=L[b+104>>2];q=O(O(d+d)*O(.5));j=O(O(h*q)-O(n*n));d=L[b+72>>2];d=O(O(d+d)*O(.5));k=O(O(n*f)-O(q*e));r=O(O(t*f)+O(O(j*d)+O(e*k)));if(r!=O(0)){c=O(O(1)/r);C=O(O(O(d*h)+O(e*O(-e)))*c);w=O(O(O(f*e)+O(d*O(-n)))*c);B=O(O(O(q*d)-O(f*f))*c);x=O(t*c);A=O(j*c);c=O(k*c)}e=O(0);r=O(1);f=O(0);D=O(1);h=O(-F);n=O(O(O(c*h)-O(v*A))-O(p*x));d=O(O(O(B*h)-O(v*c))-O(p*w));h=O(O(O(w*h)-O(v*x))-O(p*C));I=O(N+O(O(O(g*n)+O(E*d))+O(l*h)));j=O(-E);q=O(O(O(c*j)-O(g*A))-O(l*x));t=O(O(O(B*j)-O(g*c))-O(l*w));j=O(O(O(w*j)-O(g*x))-O(l*C));J=O(M+O(O(O(m*q)+O(y*t))+O(i*j)));G=O(s+O(O(O(m*n)+O(y*d))+O(i*h)));K=O(u+O(O(O(g*q)+O(E*t))+O(l*j)));P=O(O(I*J)-O(G*K));H=s;k=O(-y);s=O(O(O(c*k)-O(m*A))-O(i*x));u=O(O(O(B*k)-O(m*c))-O(i*w));k=O(O(O(w*k)-O(m*x))-O(i*C));H=O(H+O(O(O(v*s)+O(F*u))+O(p*k)));m=O(R+O(O(O(m*s)+O(y*u))+O(i*k)));g=O(M+O(O(O(g*s)+O(E*u))+O(l*k)));y=O(O(K*m)-O(J*g));i=O(Q+O(O(O(v*n)+O(F*d))+O(p*h)));l=O(N+O(O(O(v*q)+O(F*t))+O(p*j)));p=O(O(g*G)-O(m*I));g=O(O(P*H)+O(O(y*i)+O(l*p)));if(g!=O(0)){o=O(O(1)/g);D=O(O(O(i*K)-O(I*l))*o);f=O(O(O(G*l)-O(i*J))*o);r=O(O(O(m*i)-O(H*G))*o);e=O(P*o);z=O(y*o);o=O(p*o)}L[a+72>>2]=z;L[a+104>>2]=D;L[a+100>>2]=f;L[a+96>>2]=e;L[a+92>>2]=f;L[a+88>>2]=r;L[a+84>>2]=o;L[a+80>>2]=e;L[a+76>>2]=o;i=O(O(O(h*e)+O(j*f))+O(k*D));L[a+32>>2]=i;l=O(O(O(d*e)+O(t*f))+O(u*D));L[a+28>>2]=l;p=O(O(O(n*e)+O(q*f))+O(s*D));L[a+24>>2]=p;m=O(O(O(h*o)+O(j*r))+O(k*f));L[a+20>>2]=m;g=O(O(O(d*o)+O(t*r))+O(u*f));L[a+16>>2]=g;f=O(O(O(n*o)+O(q*r))+O(s*f));L[a+12>>2]=f;v=O(O(O(h*z)+O(j*o))+O(k*e));L[a+8>>2]=v;r=O(O(O(d*z)+O(t*o))+O(u*e));L[a+4>>2]=r;e=O(O(O(n*z)+O(q*o))+O(s*e));L[a>>2]=e;L[a+68>>2]=C+O(O(O(h*v)+O(j*m))+O(k*i));L[a- -64>>2]=w+O(O(O(d*v)+O(t*m))+O(u*i));L[a+60>>2]=x+O(O(O(n*v)+O(q*m))+O(s*i));L[a+56>>2]=w+O(O(O(h*r)+O(j*g))+O(k*l));L[a+52>>2]=B+O(O(O(d*r)+O(t*g))+O(u*l));L[a+48>>2]=c+O(O(O(n*r)+O(q*g))+O(s*l));L[a+44>>2]=x+O(O(O(h*e)+O(j*f))+O(k*p));L[a+40>>2]=c+O(O(O(d*e)+O(t*f))+O(u*p));L[a+36>>2]=A+O(O(O(n*e)+O(q*f))+O(s*p))}function e_(a,b,c,d){var e=O(0),f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),w=O(0),y=O(0),z=O(0),A=O(0),D=O(0),E=O(0),F=O(0),G=O(0),I=O(0),J=O(0),K=0,M=0,N=0,P=O(0),Q=O(0),R=O(0);j=L[a+8>>2];o=L[a+4>>2];K=H[d+8>>2];E=L[d+8>>2];M=H[d+4>>2];F=L[d+4>>2];i=L[a>>2];k=O(-i);a=H[d>>2];w=L[d>>2];a:{b:{if(!(w>=(i>k?i:k))){break b}k=O(-o);if(!((k=(j>k?j:k)){break a}}d=0;k=L[b>>2];p=i>2];if(w<(p>2];u=o>2];if((uF){break a}u=L[b+8>>2];e=j>2];if(E<(ek?i:k;if(O(O(0)-w)>(e>s?e:s)){break a}e=o>p?o:p;if(O(O(0)-F)>(e>y?e:y)){break a}e=j>u?j:u;if(O(O(0)-E)>(e>z?e:z)){break a}e=O(k-i);l=O(y-p);q=O(s-k);m=O(p-o);f=O(O(e*l)-O(q*m));r=O(z-u);g=O(u-j);t=O(O(m*r)-O(l*g));n=O(O(g*q)-O(r*e));h=O(O(f*j)+O(O(t*i)+O(o*n)));b=(B(f),v(2))&-2147483648;c=(B(t),v(2))&-2147483648;N=(B(n),v(2))&-2147483648;if(h>O(O(f*(x(2,K|b),C()))+O(O(t*(x(2,c|a),C()))+O(n*(x(2,M|N),C()))))|hh?e:h;D=O(-g);I=g>D?g:D;J=O(O(E*h)+O(w*I));if(A>J){break a}D=O(F*h);h=O(-m);P=m>h?m:h;Q=O(D+O(w*P));h=O(O(i*m)-O(o*e));D=O(O(k*m)-O(e*p));A=hA?A:e)){break a}A=O(O(o*g)-O(j*m));G=O(O(p*g)-O(m*u));R=AR?R:m)>g){break a}f=f>t?f:t;if(O(O(0)-J)>(f>n?f:n)){break a}f=h>D?h:D;if(O(O(0)-Q)>(eG?A:G;if(O(O(0)-g)>(e>m?e:m)){break a}e=O(O(j*q)-O(i*r));m=O(O(u*q)-O(k*r));f=ef?f:g;f=O(-q);n=fA){break a}f=O(F*n);n=O(-l);G=l>n?l:n;I=O(f+O(w*G));f=O(O(i*l)-O(o*q));t=O(O(k*l)-O(p*q));h=fn?n:h;l=O(O(y*r)-O(l*z));r=O(O(E*G)+O(F*D));if((l>J?J:l)>r){break a}e=e>m?e:m;if(O(O(0)-A)>(e>g?e:g)){break a}e=f>t?f:t;if(O(O(0)-I)>(e>q?e:q)){break a}e=h(e>l?e:l)){break a}e=O(i-s);l=O(j-z);q=O(O(j*e)-O(i*l));m=O(O(u*e)-O(k*l));g=m>q?q:m;r=O(O(e*z)-O(s*l));h=gg?e:g;g=O(-l);t=gn){break a}g=i;i=O(o-y);g=O(O(g*i)-O(o*e));k=O(O(k*i)-O(p*e));h=gw){break a}j=O(O(o*l)-O(j*i));o=O(O(p*l)-O(u*i));p=jp?p:i;p=O(O(E*e)+O(F*t));if(f>p){break a}j=j>o?j:o;a=!(O(O(0)-p)>(ik?g:k;a=a&(O(O(0)-w)>(j>s?j:s)^-1);j=m(j>r?j:r)^-1)}return d}function lD(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;i=Oa-16|0;Oa=i;H[i+8>>2]=b;a:{if(!H[a+684>>2]){break a}f=(b<<15^-1)+b|0;f=N(f>>>10^f,9);f=f>>>6^f;f=(f<<11^-1)+f|0;c=H[H[a+660>>2]+((H[a+668>>2]-1&(f>>>16^f))<<2)>>2];if((c|0)==-1){break a}f=a+648|0;d=H[a+656>>2];g=H[a+652>>2];while(1){if(H[g+(c<<3)>>2]!=(b|0)){c=H[d+(c<<2)>>2];if((c|0)!=-1){continue}break a}break}g=H[(g+(c<<3)|0)+4>>2];c=g;d=N(c,44);KB(H[d+H[a+644>>2]>>2]);IB(H[d+H[a+644>>2]>>2]);b=H[a+644>>2];e=H[d+b>>2];if(e){b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,e);b=H[a+644>>2]}d=b+d|0;H[d>>2]=0;d=H[d+8>>2];H[d+4>>2]=0;e=H[d+8>>2];b:{if((e|0)<0|!(e&2147483647)){break b}d=H[d>>2];if(!d){break b}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,d);b=H[a+644>>2]}d=N(c,44);e=H[(d+b|0)+8>>2];if(e){b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,e);b=H[a+644>>2]}b=b+d|0;H[b+8>>2]=0;iB(H[b+4>>2]);h=H[a+644>>2];b=H[(d+h|0)+4>>2];if(b){d=H[33808];Ra[H[H[d+12>>2]+12>>2]](d+12|0,b);h=H[a+644>>2]}b=N(c,44)+h|0;H[b+4>>2]=0;d=H[a+632>>2]-1|0;H[a+632>>2]=d;if((c|0)!=(d|0)){e=H[a+640>>2];c=e+N(c,24)|0;e=e+N(d,24)|0;L[c>>2]=L[e>>2];L[c+4>>2]=L[e+4>>2];L[c+8>>2]=L[e+8>>2];L[c+12>>2]=L[e+12>>2];L[c+16>>2]=L[e+16>>2];L[c+20>>2]=L[e+20>>2];e=N(d,44);c=e+h|0;H[b+8>>2]=H[c+8>>2];h=H[c+4>>2];H[b>>2]=H[c>>2];H[b+4>>2]=h;L[b+12>>2]=L[c+12>>2];L[b+16>>2]=L[c+16>>2];L[b+20>>2]=L[c+20>>2];L[b+24>>2]=L[c+24>>2];L[b+28>>2]=L[c+28>>2];L[b+32>>2]=L[c+32>>2];L[b+36>>2]=L[c+36>>2];H[b+40>>2]=H[c+40>>2];b=e+H[a+644>>2]|0;H[b+8>>2]=0;H[b>>2]=0;H[b+4>>2]=0}h=a+4|0;e=UB(h,H[H[a+620>>2]+(g<<2)>>2],g,H[a+640>>2]);c:{if(!e|H[e+40>>2]){break c}b=H[e+36>>2];if(!H[b>>2]){break c}c=0;while(1){H[H[a+620>>2]+(H[((c<<2)+b|0)+4>>2]<<2)>>2]=e;c=c+1|0;b=H[e+36>>2];if(c>>>0>2]){continue}break}}if((d|0)!=(g|0)){b=H[a+620>>2];c=g<<2;e=d<<2;H[b+c>>2]=H[e+b>>2];VB(H[c+H[a+620>>2]>>2],d,g);d=e+H[a+688>>2]|0;b=dC(f,d,i+15|0);if(!I[i+15|0]){d=H[d>>2];H[b+4>>2]=0;H[b>>2]=d}H[b+4>>2]=g;a=H[a+688>>2];H[a+c>>2]=H[a+e>>2]}d:{if(!H[f+36>>2]){break d}h=H[f+12>>2];b=H[i+8>>2];a=(b<<15^-1)+b|0;a=N(a>>>10^a,9);a=a>>>6^a;a=(a<<11^-1)+a|0;g=h+((H[f+20>>2]-1&(a>>>16^a))<<2)|0;a=H[g>>2];if((a|0)==-1){break d}d=H[f+8>>2];e=H[f+4>>2];c=e+(a<<3)|0;if((b|0)!=H[c>>2]){while(1){g=d+(a<<2)|0;a=H[g>>2];if((a|0)==-1){break d}c=e+(a<<3)|0;if((b|0)!=H[c>>2]){continue}break}}b=g;g=d+(a<<2)|0;H[b>>2]=H[g>>2];b=H[f+36>>2]-1|0;H[f+36>>2]=b;H[f+32>>2]=H[f+32>>2]+1;if((a|0)!=(b|0)){j=e+(b<<3)|0;H[c>>2]=H[j>>2];H[(e+(a<<3)|0)+4>>2]=H[j+4>>2];H[g>>2]=H[d+(b<<2)>>2];b=H[c>>2];b=(b<<15^-1)+b|0;b=N(b>>>10^b,9);b=b>>>6^b;b=(b<<11^-1)+b|0;g=h+((H[f+20>>2]-1&(b>>>16^b))<<2)|0;b=H[g>>2];c=H[f+36>>2];if((b|0)!=(c|0)){while(1){g=d+(b<<2)|0;b=H[g>>2];if((c|0)!=(b|0)){continue}break}}H[g>>2]=a}H[f+28>>2]=H[f+28>>2]-1}}Oa=i+16|0}function $x(a){a=a|0;var b=0,c=0;H[a>>2]=112984;b=H[a+484>>2];Ra[H[H[b>>2]>>2]](b);b=H[a+488>>2];Ra[H[H[b>>2]>>2]](b);b=H[a+492>>2];Ra[H[H[b>>2]>>2]](b);b=H[a+464>>2];a:{if(!b){break a}c=H[b+12>>2];b:{if((c|0)<0|!(c&2147483647)){break b}c=H[b+4>>2];if(!c){break b}b=H[b>>2];Ra[H[H[b>>2]+12>>2]](b,c);b=H[a+464>>2];if(!b){break a}}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}H[a+464>>2]=0;b=H[a+468>>2];c:{if(!b){break c}c=H[b+12>>2];d:{if((c|0)<0|!(c&2147483647)){break d}c=H[b+4>>2];if(!c){break d}b=H[b>>2];Ra[H[H[b>>2]+12>>2]](b,c);b=H[a+468>>2];if(!b){break c}}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}H[a+468>>2]=0;b=H[a+528>>2];e:{if((b|0)<0|!(b&2147483647)){break e}b=H[a+520>>2];if(!b){break e}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+516>>2];f:{if((b|0)<0|!(b&2147483647)){break f}b=H[a+508>>2];if(!b){break f}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+504>>2];g:{if((b|0)<0|!(b&2147483647)){break g}b=H[a+496>>2];if(!b){break g}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+480>>2];h:{if((b|0)<0|!(b&2147483647)){break h}b=H[a+472>>2];if(!b){break h}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+460>>2];i:{if((b|0)<0|!(b&2147483647)){break i}b=H[a+452>>2];if(!b){break i}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b-H[b-4>>2]|0)}b=H[a+448>>2];j:{if((b|0)<0|!(b&2147483647)){break j}b=H[a+440>>2];if(!b){break j}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b-H[b-4>>2]|0)}b=H[a+436>>2];k:{if((b|0)<0|!(b&2147483647)){break k}b=H[a+428>>2];if(!b){break k}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+424>>2];l:{if((b|0)<0|!(b&2147483647)){break l}b=H[a+416>>2];if(!b){break l}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+412>>2];m:{if((b|0)<0|!(b&2147483647)){break m}b=H[a+404>>2];if(!b){break m}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+400>>2];n:{if((b|0)<0|!(b&2147483647)){break n}b=H[a+392>>2];if(!b){break n}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+388>>2];o:{if((b|0)<0|!(b&2147483647)){break o}b=H[a+380>>2];if(!b){break o}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+376>>2];p:{if((b|0)<0|!(b&2147483647)){break p}b=H[a+368>>2];if(!b){break p}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b-H[b-4>>2]|0)}b=H[a+364>>2];q:{if((b|0)<0|!(b&2147483647)){break q}b=H[a+356>>2];if(!b){break q}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b-H[b-4>>2]|0)}b=H[a+352>>2];r:{if((b|0)<0|!(b&2147483647)){break r}b=H[a+344>>2];if(!b){break r}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b-H[b-4>>2]|0)}c=H[a+336>>2];b=H[c>>2];if(b){H[c>>2]=H[b>>2]}if(b){while(1){ay(b);c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b-H[b-4>>2]|0);c=H[a+336>>2];b=H[c>>2];if(b){H[c>>2]=H[b>>2]}if(b){continue}break}}b=H[a+336>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}by(a);return a|0}function EP(a){a=a|0;var b=0,c=0,d=O(0),e=0,f=0,g=0,h=O(0),i=0,j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=0,w=O(0),x=O(0),y=O(0),z=O(0),A=0,B=0,C=O(0),D=O(0),E=O(0),F=O(0),G=0,J=O(0),M=O(0),P=O(0);if(H[a+36>>2]){while(1){z=L[a+40>>2];g=0;p=O(0);A=0;i=Oa-32|0;Oa=i;f=H[H[(H[H[a+28>>2]+16>>2]+N(H[H[a+32>>2]+(B<<2)>>2]>>>7|0,24)|0)+20>>2]+16>>2];a:{if(!H[f+28>>2]|K[H[H[f+24>>2]>>2]+152>>2]>4294967293){break a}b=H[f+8>>2];b:{if(H[f+16>>2]){J=L[b+24>>2];w=O(3.4028234663852886e38);while(1){b=H[f>>2];Ra[H[H[b>>2]+180>>2]](i,b,g);c=H[H[f+24>>2]+(g<<2)>>2];d=L[c+136>>2];q=L[c+132>>2];r=L[c+128>>2];s=L[c+120>>2];t=L[c+116>>2];u=L[c+112>>2];c:{d:{b=H[c+44>>2];x=L[b+156>>2];if(!(xx)){break d}j=L[b+28>>2];k=L[i+20>>2];l=L[i+24>>2];m=L[b+16>>2];n=L[b+24>>2];o=L[i+16>>2];y=L[b+20>>2];e=H[b+176>>2];e:{if(!(!e|I[e+31|0]!=1)){e=e+32|0;break e}e=b+128|0}D=L[e+4>>2];E=L[e>>2];F=L[e+8>>2];s=O(s+L[i+8>>2]);u=O(u+L[i>>2]);t=O(t+L[i+4>>2]);M=O(O(s*s)+O(O(u*u)+O(t*t)));e=H[b+176>>2];f:{if(!(!e|I[e+31|0]!=1)){h=L[e+44>>2];break f}h=L[b+140>>2]}P=h==O(0)?O(1):h;h=O(l+l);l=O(o+o);k=O(k+k);o=O(O(n*h)+O(O(m*l)+O(y*k)));C=O(O(j*j)+O(-.5));d=O(d+O(O(n*o)+O(O(h*C)-O(j*O(O(m*k)-O(l*y))))));r=O(r+O(O(m*o)+O(O(l*C)-O(j*O(O(y*h)-O(k*n))))));q=O(q+O(O(y*o)+O(O(k*C)-O(j*O(O(n*l)-O(h*m))))));m=O(O(M+O(P*O(O(O(d*d)*(F>O(0)?O(O(1)/F):O(1)))+O(O(O(r*r)*(E>O(0)?O(O(1)/E):O(1)))+O((D>O(0)?O(O(1)/D):O(1))*O(q*q))))))*O(.5));n=O(H[H[c+100>>2]+148>>2]+1>>>0);j=O(n*J);if(!(m>=j)){break d}H[c+136>>2]=0;H[c+128>>2]=0;H[c+132>>2]=0;H[c+120>>2]=0;H[c+112>>2]=0;H[c+116>>2]=0;if(j!=O(0)){d=O(m/j);h=O((d>2]=d;if(x!=O(0)){break c}dF(H[H[c+40>>2]+1e3>>2],H[c+144>>2]);break c}L[c+136>>2]=d;L[c+132>>2]=q;L[c+128>>2]=r;L[c+120>>2]=s;L[c+116>>2]=t;L[c+112>>2]=u;d=O(x-z);d=d>O(0)?d:O(0);L[b+156>>2]=d}w=d>w?w:d;p=d>2];if(g>>>0>>0){continue}break}L[H[f+8>>2]+32>>2]=p;if(p==O(0)){if(!b){break b}g=0;while(1){b=g<<2;nG(H[b+H[f+24>>2]>>2]);b=H[b+H[f+24>>2]>>2];H[b+136>>2]=0;H[b+128>>2]=0;H[b+132>>2]=0;H[b+120>>2]=0;H[b+112>>2]=0;H[b+116>>2]=0;g=g+1|0;if(g>>>0>2]){continue}break}break b}if(!b|w!=O(0)){break a}c=H[f+24>>2];e=0;if((b|0)!=1){g=b&-2;while(1){v=e<<2;G=H[H[v+c>>2]+44>>2];L[G+156>>2]=S(L[G+156>>2],O(9.999999974752427e-7));v=H[H[c+(v|4)>>2]+44>>2];L[v+156>>2]=S(L[v+156>>2],O(9.999999974752427e-7));e=e+2|0;A=A+2|0;if((g|0)!=(A|0)){continue}break}}if(!(b&1)){break a}b=H[H[c+(e<<2)>>2]+44>>2];L[b+156>>2]=S(L[b+156>>2],O(9.999999974752427e-7));break a}H[b+32>>2]=0}eF(H[H[f+4>>2]+1e3>>2],H[f+48>>2])}Oa=i+32|0;wF(f,0);B=B+1|0;if(B>>>0>2]){continue}break}}}function nt(a,b,c,d,e,f){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,s=0,t=0,u=0,v=0,w=0,x=0;o=b+5584|0;if(f){h=Oa-48|0;Oa=h;b=H[((J[c+4>>1]<<2)+73232|0)+72>>2];p=J[a+4>>1];d=p>>>0>256;F[h+44|0]=d;e=p<<2;l=b+c|0;a:{b:{if(p>>>0>=257){w=h,x=G5(e,7202,357),H[w+40>>2]=x;F[h+36|0]=d;w=h,x=G5(e,7202,358),H[w+32>>2]=x;d=J[a+4>>1];break b}b=e+15&524272;j=h-b|0;Oa=j;H[h+40>>2]=j;F[h+36|0]=d;k=j-b|0;Oa=k;H[h+32>>2]=k;d=p;if(d){break b}e=1;break a}b=(d&65535)==1;k=0;while(1){d=H[(k<<2)+(b?a:H[a>>2])>>2];if(I[(I[d+36|0]&64?H[d+40>>2]+52|0:d+112|0)|0]&2){H[H[h+40>>2]+(g<<2)>>2]=d+32;g=g+1|0}k=k+1|0;if((p|0)!=(k|0)){continue}break}j=H[h+40>>2];k=H[h+32>>2];e=0}b=H[((J[c+4>>1]<<2)+73232|0)+72>>2]+c|0;b=H[H[H[((H[b+4>>2]>>>22&60)+76348|0)+12>>2]+b>>2]+48>>2];H[a+16>>2]=b;Ra[H[H[c>>2]+76>>2]](h,c);c=b;i=l;g=Oa-32|0;Oa=g;l=g;m=Ra[H[H[f>>2]+40>>2]](f)|0;s=m<<2;F[g+28|0]=s>>>0>1024;c:{if(s>>>0>=1025){d=G5(s,6950,561);break c}d=g-(s+15&-16)|0;g=d;Oa=g}H[l+24>>2]=d;t=m<<3;F[l+20|0]=t>>>0>1024;d:{if(t>>>0>=1025){n=G5(t,6950,562);break d}n=g-(t+15&-16)|0;Oa=n}H[l+16>>2]=n;if(m){g=0;if(m-1>>>0>=3){u=m&-4;while(1){q=H[(g<<2)+j>>2];b=(g<<3)+n|0;H[b+4>>2]=i;H[b>>2]=q;b=g|1;q=H[(b<<2)+j>>2];b=(b<<3)+n|0;H[b+4>>2]=i;H[b>>2]=q;b=g|2;q=H[(b<<2)+j>>2];b=(b<<3)+n|0;H[b+4>>2]=i;H[b>>2]=q;b=g|3;q=H[(b<<2)+j>>2];b=(b<<3)+n|0;H[b+4>>2]=i;H[b>>2]=q;g=g+4|0;r=r+4|0;if((u|0)!=(r|0)){continue}break}}u=m&3;if(u){while(1){q=H[(g<<2)+j>>2];b=(g<<3)+n|0;H[b+4>>2]=i;H[b>>2]=q;g=g+1|0;v=v+1|0;if((u|0)!=(v|0)){continue}break}}b=H[l+24>>2]}else{b=d}g=H[o+72>>2];v=c;c=I[(i+H[((H[i+4>>2]>>>22&60)+76348|0)+12>>2]|0)+9|0]==1?2:1;Ra[H[H[g>>2]>>2]](g,d,f,v,h,c,n)|0;i=(c^-1)&1;c=o+N(i,36)|0;H[c+32>>2]=H[c+32>>2]+1;e:{if(!m){break e}r=0;g=0;if(m-1>>>0>=3){d=m&-4;f=0;while(1){o=g<<2;H[o+k>>2]=i|H[b+o>>2]<<1;c=o|4;H[c+k>>2]=i|H[b+c>>2]<<1;c=o|8;H[c+k>>2]=i|H[b+c>>2]<<1;c=o|12;H[c+k>>2]=i|H[b+c>>2]<<1;g=g+4|0;f=f+4|0;if((d|0)!=(f|0)){continue}break}}d=m&3;if(!d){break e}while(1){c=g<<2;H[c+k>>2]=i|H[b+c>>2]<<1;g=g+1|0;r=r+1|0;if((d|0)!=(r|0)){continue}break}}if(t>>>0>=1025){H5(n)}if(s>>>0>=1025){H5(b)}Oa=l+32|0;if(!e){f=a+8|0;g=0;d=J[a+4>>1]==1;c=J[a+12>>1]==1;j=0;while(1){b=j<<2;e=H[b+(d?a:H[a>>2])>>2];if(I[(I[e+36|0]&64?H[e+40>>2]+52|0:e+112|0)|0]&2){H[b+(c?f:H[f>>2])>>2]=H[H[h+32>>2]+(g<<2)>>2];g=g+1|0}j=j+1|0;if((p|0)!=(j|0)){continue}break}}if(I[h+36|0]){H5(H[h+32>>2])}if(p>>>0>=257){H5(H[h+40>>2])}Oa=h+48|0;return}g=J[a+4>>1];if(g){i=(g|0)==1?a:H[a>>2];p=a+8|0;f=0;h=(J[c+4>>1]&-9)==5;while(1){l=f<<2;b=H[l+i>>2];if(I[(I[b+36|0]&64?H[b+40>>2]+52|0:b+112|0)|0]&2){b=ID(o,b+32|0,H[((J[c+4>>1]<<2)+73232|0)+72>>2]+c|0,h,H[a+16>>2],e?N(f,24)+e|0:0,d);H[l+(J[a+12>>1]==1?p:H[a+8>>2])>>2]=b}f=f+1|0;if((g|0)!=(f|0)){continue}break}}}function IB(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0;b=H[a+588>>2];if(b){JB(a,b);H[a+588>>2]=0}dX(a+592|0);if(H[a+576>>2]){d=Oa-32|0;Oa=d;H[d+24>>2]=0;H[d+16>>2]=0;H[d+20>>2]=0;b=H[a+584>>2];if(b){while(1){H[d+8>>2]=b;a:{if((f&2147483647)>>>0<=c>>>0){c=0;b=H[d+24>>2]&2147483647;g=b?b<<1:1;b:{if(!g){break b}e=g<<2;if(!e){break b}c=H[33808];b=Ra[H[H[c>>2]+20>>2]](c)|0?27928:55639;c=Ra[H[H[c+12>>2]+8>>2]](c+12|0,e,b,13582,553)|0}f=H[d+20>>2];e=(f<<2)+c|0;if((f|0)>0){h=H[d+16>>2];b=c;while(1){H[b>>2]=H[h>>2];h=h+4|0;b=b+4|0;if(e>>>0>b>>>0){continue}break}}H[e>>2]=H[d+8>>2];c:{if(H[d+24>>2]<0){break c}e=H[d+16>>2];if(!e){break c}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,e);f=H[d+20>>2]}H[d+24>>2]=g;H[d+16>>2]=c;H[d+20>>2]=f+1;break a}H[H[d+16>>2]+(c<<2)>>2]=b;H[d+20>>2]=c+1}b=H[H[a+584>>2]>>2];H[a+584>>2]=b;if(b){c=H[d+20>>2];f=H[d+24>>2];continue}break}c=H[d+16>>2];e=H[d+20>>2]}else{e=0}b=d+8|0;ZB(c,e,b);ZB(H[a+560>>2],H[a+564>>2],b);b=H[d+24>>2];d:{if((b|0)<0|!(b&2147483647)){break d}c=H[d+16>>2];if(!c){break d}b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,c)}Oa=d+32|0}b=H[a+564>>2];if(b){c=H[a+560>>2];g=c+(b<<2)|0;while(1){e=H[c>>2];if(e){b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,e)}c=c+4|0;if((g|0)!=(c|0)){continue}break}}b=H[a+568>>2];e:{if((b|0)<0|!(b&2147483647)){break e}c=H[a+560>>2];if((c|0)==(a+300|0)){F[a+556|0]=0;break e}if(!c){break e}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,c)}if(H[a+284>>2]){c=0;f=0;d=Oa-32|0;Oa=d;H[d+24>>2]=0;H[d+16>>2]=0;H[d+20>>2]=0;b=H[a+292>>2];if(b){while(1){H[d+8>>2]=b;f:{if((f&2147483647)>>>0<=c>>>0){c=0;b=H[d+24>>2]&2147483647;g=b?b<<1:1;g:{if(!g){break g}e=g<<2;if(!e){break g}c=H[33808];b=Ra[H[H[c>>2]+20>>2]](c)|0?26442:55639;c=Ra[H[H[c+12>>2]+8>>2]](c+12|0,e,b,13582,553)|0}f=H[d+20>>2];e=(f<<2)+c|0;if((f|0)>0){h=H[d+16>>2];b=c;while(1){H[b>>2]=H[h>>2];h=h+4|0;b=b+4|0;if(e>>>0>b>>>0){continue}break}}H[e>>2]=H[d+8>>2];h:{if(H[d+24>>2]<0){break h}e=H[d+16>>2];if(!e){break h}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,e);f=H[d+20>>2]}H[d+24>>2]=g;H[d+16>>2]=c;H[d+20>>2]=f+1;break f}H[H[d+16>>2]+(c<<2)>>2]=b;H[d+20>>2]=c+1}b=H[H[a+292>>2]>>2];H[a+292>>2]=b;if(b){c=H[d+20>>2];f=H[d+24>>2];continue}break}c=H[d+16>>2];e=H[d+20>>2]}else{e=0}b=d+8|0;_B(c,e,b);_B(H[a+268>>2],H[a+272>>2],b);b=H[d+24>>2];i:{if((b|0)<0|!(b&2147483647)){break i}c=H[d+16>>2];if(!c){break i}b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,c)}Oa=d+32|0}b=H[a+272>>2];if(b){c=H[a+268>>2];g=c+(b<<2)|0;while(1){e=H[c>>2];if(e){b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,e)}c=c+4|0;if((g|0)!=(c|0)){continue}break}}b=H[a+276>>2];j:{if((b|0)<0|!(b&2147483647)){break j}c=H[a+268>>2];if((c|0)==(a+8|0)){F[a+264|0]=0;return a}if(!c){break j}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,c)}return a}function Am(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;h=b;k=Oa-16|0;Oa=k;l=H[33768];b=H[l+2152>>2];if(!b){n=Oa-16|0;Oa=n;i=l+1864|0;b=H[i+284>>2];if(b){a=H[33808];g=Ra[H[H[a>>2]+20>>2]](a)|0?24764:55639;m=Ra[H[H[a+12>>2]+8>>2]](a+12|0,b,g,15259,180)|0}else{m=0}H[n+12>>2]=m;a=H[i+268>>2];a:{if(a>>>0>=(H[i+272>>2]&2147483647)>>>0){g=i+4|0;b=H[g+268>>2]&2147483647;o=b?b<<1:1;a=0;b:{if(!o){break b}b=o<<2;if(!(I[g+256|0]|b>>>0>256)){F[g+256|0]=1;a=g;break b}a=0;if(!b){break b}a=H[33808];j=Ra[H[H[a>>2]+20>>2]](a)|0?24764:55639;a=Ra[H[H[a+12>>2]+8>>2]](a+12|0,b,j,13582,553)|0}b=a;j=H[g+264>>2];q=b+(j<<2)|0;if((j|0)>0){p=H[g+260>>2];while(1){H[a>>2]=H[p>>2];p=p+4|0;a=a+4|0;if(q>>>0>a>>>0){continue}break}}H[q>>2]=H[n+12>>2];c:{if(H[g+268>>2]<0){break c}a=H[g+260>>2];if((a|0)==(g|0)){F[g+256|0]=0;break c}if(!a){break c}j=H[33808];Ra[H[H[j+12>>2]+12>>2]](j+12|0,a);j=H[g+264>>2]}H[g+268>>2]=o;H[g+260>>2]=b;H[g+264>>2]=j+1;break a}H[H[i+264>>2]+(a<<2)>>2]=m;H[i+268>>2]=a+1}b=(N(H[i+276>>2],124)+m|0)-124|0;if(m>>>0<=b>>>0){a=H[i+288>>2];while(1){H[b>>2]=a;a=b;b=b-124|0;if(m>>>0<=b>>>0){continue}break}H[i+288>>2]=a}Oa=n+16|0;b=H[l+2152>>2]}H[l+2152>>2]=H[b>>2];a=l+2144|0;H[a>>2]=H[a>>2]+1;g=Oa-48|0;Oa=g;H[b+4>>2]=65545;H[b+12>>2]=c;H[b+8>>2]=h;H[b+16>>2]=0;H[b+20>>2]=0;H[b+24>>2]=0;H[b>>2]=102720;a=b+28|0;H[a+4>>2]=0;H[a+8>>2]=0;G[a>>1]=32;H[a+28>>2]=d;H[a+12>>2]=0;H[a+16>>2]=0;H[a+20>>2]=0;H[a+24>>2]=0;H[a+32>>2]=H[e+4>>2];H[a+36>>2]=H[e>>2];d=H[e+8>>2];H[a+56>>2]=0;H[a+60>>2]=0;H[a+48>>2]=2139095039;H[a+52>>2]=2139095039;H[a+44>>2]=f;H[a+40>>2]=d;G[b+116>>1]=0;H[b+108>>2]=0;H[b+112>>2]=0;H[b+100>>2]=0;H[b+104>>2]=0;H[b+92>>2]=0;H[b+96>>2]=0;F[b+120|0]=1;d=H[b+20>>2];H[b+20>>2]=d&-251658241|100663296;f=b+16|0;e=H[e+12>>2];d:{e:{f:{switch((d>>>30|0)-2|0){case 0:if(I[H[f>>2]+4785|0]){break e}break;case 1:break e;default:break f}}G[g+8>>1]=e;wG(a,g+8|0);break d}d=H[b+24>>2];if(!d){d=Tt(H[b+16>>2],6);H[b+24>>2]=d}G[d+16>>1]=e;$t(H[b+16>>2],f);H[b+20>>2]=H[b+20>>2]|4}g:{h:{i:{if(!h){if(!c){break g}break i}d=0;lg(H[(J[h+4>>1]<<2)+73232>>2]+h|0,0,b);if(c){break i}Ra[H[H[h>>2]+52>>2]](g+16|0,h);if(!(I[g+16|0]&8)){d=Ra[H[H[h>>2]+28>>2]](h)|0}if(!d){break g}break h}d=0;lg(H[(J[c+4>>1]<<2)+73232>>2]+c|0,0,b);j:{if(!h){break j}Ra[H[H[h>>2]+52>>2]](g+32|0,h);if(I[g+32|0]&8){break j}d=Ra[H[H[h>>2]+28>>2]](h)|0}Ra[H[H[c>>2]+52>>2]](g+24|0,c);if(I[g+24|0]&8){break g}a=Ra[H[H[c>>2]+28>>2]](c)|0;if(!(!h|(d|0)!=0)|!a){break g}d=d?d:a}if(!d){break g}H[g+40>>2]=b;a=rg(d+5892|0,g+40|0,g+47|0);if(!I[g+47|0]){H[a>>2]=H[g+40>>2]}Lt(d+16|0,f)}Oa=g+48|0;H[k+8>>2]=b;a=Nl(l+560|0,k+8|0,k+15|0);if(!I[k+15|0]){H[a>>2]=H[k+8>>2]}Oa=k+16|0;return b|0}function yz(a,b,c,d){var e=0,f=0,g=0,h=0,i=O(0),j=O(0),k=0,l=0,m=0,n=O(0),o=0,p=0,q=O(0),r=0,s=O(0),t=0,u=0,v=O(0),w=0,x=0,y=O(0),z=O(0),A=0,B=0,C=0,D=0,E=0,G=0;a:{e=J[a+22>>1];if(!e){break a}p=H[a+24>>2];w=I[p|0]==7?144:96;A=(e<<4)+p|0;h=H[a+60>>2];f=H[a+92>>2];t=H[a+124>>2];k=H[a+28>>2];e=p;while(1){l=0;x=e+192|0;r=I[e+1|0];g=r<<4;m=e;o=((x+g|0)+N(r,w)|0)+(g&0-(F[e+3|0]&1))|0;u=I[e+2|0];B=(o+(((u|0)!=0)<<7)|0)+(u<<4)|0;C=I[e+7|0];D=I[e+6|0];E=I[e+5|0];G=I[e+4|0];if(r){while(1){e=f;f=(l<<4)+x|0;n=L[f+12>>2];s=L[f+8>>2];y=L[f+4>>2];z=L[f>>2];g=k;k=0;b:{if(!g){break b}k=g;if(I[m+8|0]<=l>>>0){break b}L[g>>2]=z;k=g+4|0}f=0;g=0;c:{if(!h){break c}g=h;if(I[m+9|0]<=l>>>0){break c}L[h>>2]=y;g=h+4|0}h=g;d:{if(!e){break d}if(I[m+10|0]<=l>>>0){f=e;break d}L[e>>2]=s;f=e+4|0}e:{if(!t){t=0;break e}if(I[m+11|0]<=l>>>0){break e}L[t>>2]=n;t=t+4|0}v=O(v+n);q=O(q+s);i=O(i+y);j=O(j+z);l=l+1|0;if((r|0)!=(l|0)){continue}break}}e=B+N(u,w)|0;f:{if(!u){break f}g=H[o+12>>2];l=H[o+8>>2];r=H[o+4>>2];if(!(!I[m+12|0]|!H[o>>2])){F[H[o+16>>2]]=1}if(!(!I[m+13|0]|!r)){F[H[o+20>>2]]=1}if(!(!I[m+14|0]|!l)){F[H[o+24>>2]]=1}if(!I[m+15|0]|!g){break f}F[H[o+28>>2]]=1}if(e>>>0>>0){continue}break}k=E&1;g:{if(!(G&1)|J[a+8>>1]!=65535|(J[a+10>>1]!=65535|j==O(0))){break g}e=H[c>>2];n=L[e+28>>2];f=H[d>>2];s=L[f+28>>2];if(!(n>2];f=H[e+72>>2];g=H[p+176>>2];e=H[b+8>>2];H[b+8>>2]=e+1;e=H[b+4>>2]+(e<<5)|0;L[e+8>>2]=n>2]=j;H[e>>2]=g;f=f<<7;h=h<<7;g=f>>>0>h>>>0;H[e+16>>2]=g?f:h;H[e+12>>2]=g?h:f}m=D&1;h:{if(!k|J[a+40>>1]!=65535|(J[a+42>>1]!=65535|i==O(0))){break h}e=H[c+4>>2];j=L[e+28>>2];f=H[d+4>>2];n=L[f+28>>2];if(!(j>2];f=H[e+72>>2];g=H[p+180>>2];e=H[b+8>>2];H[b+8>>2]=e+1;e=H[b+4>>2]+(e<<5)|0;L[e+8>>2]=j>2]=i;H[e>>2]=g;f=f<<7;h=h<<7;g=f>>>0>h>>>0;H[e+16>>2]=g?f:h;H[e+12>>2]=g?h:f}k=C&1;i:{if(!m|J[a+72>>1]!=65535|(J[a+74>>1]!=65535|q==O(0))){break i}e=H[c+8>>2];i=L[e+28>>2];f=H[d+8>>2];j=L[f+28>>2];if(!(i>2];f=H[e+72>>2];g=H[p+184>>2];e=H[b+8>>2];H[b+8>>2]=e+1;e=H[b+4>>2]+(e<<5)|0;L[e+8>>2]=i>2]=q;H[e>>2]=g;f=f<<7;h=h<<7;g=f>>>0>h>>>0;H[e+16>>2]=g?f:h;H[e+12>>2]=g?h:f}if(!k|J[a+104>>1]!=65535|(J[a+106>>1]!=65535|v==O(0))){break a}a=H[c+12>>2];q=L[a+28>>2];c=H[d+12>>2];i=L[c+28>>2];if(!(q>2];d=H[a+72>>2];e=H[p+188>>2];a=H[b+8>>2];H[b+8>>2]=a+1;a=H[b+4>>2]+(a<<5)|0;L[a+8>>2]=i>q?q:i;L[a+4>>2]=v;H[a>>2]=e;b=d<<7;c=c<<7;d=b>>>0>c>>>0;H[a+16>>2]=d?b:c;H[a+12>>2]=d?c:b}}function yD(a,b,c){a=a|0;b=b|0;c=c|0;var d=O(0),e=O(0),f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=0,l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=0,E=O(0),F=O(0),G=O(0),I=O(0),K=O(0),M=O(0),N=O(0);b=Oa-208|0;Oa=b;k=1;a:{if(!(H[c+40>>2]&J[a+12>>1])){break a}D=H[c>>2];if(!H[D+588>>2]){break a}k=H[a+4>>2];v=L[k+20>>2];y=L[k+16>>2];q=L[k+32>>2];z=L[k+24>>2];A=L[k+28>>2];s=L[k+44>>2];t=L[k+36>>2];B=L[k+40>>2];e=L[c+20>>2];g=L[c+36>>2];h=L[k+56>>2];j=L[c+24>>2];i=L[c+32>>2];l=L[k+52>>2];d=L[c+16>>2];m=L[c+28>>2];w=L[k+48>>2];C=L[k+12>>2];f=L[c+12>>2];H[b+44>>2]=0;g=O(h-g);g=O(g+g);h=O(w-m);h=O(h+h);i=O(l-i);i=O(i+i);l=O(O(e*g)+O(O(f*h)+O(d*i)));m=O(O(j*j)+O(-.5));L[b+40>>2]=O(e*l)+O(O(g*m)-O(j*O(O(f*i)-O(h*d))));L[b+36>>2]=O(d*l)+O(O(i*m)-O(j*O(O(e*h)-O(g*f))));L[b+32>>2]=O(f*l)+O(O(h*m)-O(j*O(O(d*g)-O(i*e))));g=L[k+8>>2];h=L[k>>2];i=L[k+4>>2];H[b+204>>2]=0;H[b+188>>2]=0;H[b+172>>2]=0;H[b+156>>2]=0;H[b+140>>2]=0;l=O(f+f);E=O(e*l);m=O(d+d);F=O(j*m);r=O(E+F);x=O(m*e);G=O(l*j);p=O(x-G);n=O(O(1)-O(f*l));I=O(d*m);o=O(n-I);f=O(O(O(t*r)+O(B*p))+O(s*o));m=O(-f);m=O((f>m?f:m)+O(9.999999974752427e-7));L[b+136>>2]=m;w=O(O(O(r*z)+O(p*A))+O(o*q));u=O(-w);u=O((u>2]=u;r=O(O(O(C*r)+O(y*p))+O(o*v));p=O(-r);p=O((p>2]=p;H[b+124>>2]=0;K=O(l*d);d=j;j=O(e+e);M=O(d*j);o=O(K-M);N=O(e*j);n=O(n-N);x=O(x+G);e=O(O(O(t*o)+O(B*n))+O(s*x));j=O(-e);j=O((e>j?e:j)+O(9.999999974752427e-7));L[b+120>>2]=j;d=O(O(O(o*z)+O(n*A))+O(x*q));l=O(-d);l=O((d>l?d:l)+O(9.999999974752427e-7));L[b+116>>2]=l;o=O(O(O(C*o)+O(y*n))+O(x*v));n=O(-o);n=O((n>2]=n;H[b+108>>2]=0;H[b+92>>2]=0;L[b+88>>2]=f;L[b+84>>2]=w;L[b+80>>2]=r;H[b+76>>2]=0;L[b+72>>2]=e;L[b+68>>2]=d;L[b- -64>>2]=o;H[b+60>>2]=0;f=O(O(O(1)-I)-N);e=O(t*f);t=O(K+M);d=s;s=O(E-F);e=O(O(e+O(B*t))+O(d*s));L[b+56>>2]=e;d=O(O(O(f*z)+O(t*A))+O(s*q));L[b+52>>2]=d;q=O(-e);e=O((e>q?e:q)+O(9.999999974752427e-7));L[b+104>>2]=e;q=O(-d);d=O((d>q?d:q)+O(9.999999974752427e-7));L[b+100>>2]=d;L[b+200>>2]=O(u*h)+O(p*i);L[b+196>>2]=O(m*h)+O(p*g);L[b+184>>2]=O(l*h)+O(n*i);L[b+180>>2]=O(j*h)+O(n*g);L[b+152>>2]=O(m*g)+O(O(p*h)+O(u*i));L[b+148>>2]=O(j*g)+O(O(n*h)+O(l*i));f=O(O(O(C*f)+O(y*t))+O(s*v));L[b+48>>2]=f;v=O(-f);f=O((f>v?f:v)+O(9.999999974752427e-7));L[b+96>>2]=f;L[b+168>>2]=O(d*h)+O(f*i);L[b+164>>2]=O(e*h)+O(f*g);H[b+28>>2]=0;L[b+24>>2]=g;L[b+20>>2]=i;L[b+16>>2]=h;L[b+192>>2]=O(m*i)+O(u*g);L[b+176>>2]=O(j*i)+O(l*g);L[b+160>>2]=O(e*i)+O(d*g);L[b+144>>2]=O(e*g)+O(O(f*h)+O(d*i));c=H[c+4>>2];k=fC(H[c+12>>2],H[c+8>>2],D,b+16|0,H[a+8>>2])}Oa=b+208|0;return k|0}function d1(a,b,c,d,e){var f=0,g=O(0),h=0,i=O(0),j=0,k=O(0),l=0,m=O(0),n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=O(0),v=O(0),w=0,x=O(0),y=O(0);f=Oa;w=f;f=f-(d+15&-16)|0;Oa=f;n=S6(f,0,d);g=O(3.4028234663852886e38);f=e;j=-1;while(1){d=H[f+48>>2];l=H[f+52>>2];a:{if(d>>>0>=l>>>0){break a}q=l+(d^-1)|0;h=0;o=l-d&3;if(o){while(1){i=L[((d<<6)+c|0)+44>>2];p=i>>0<=2){break a}while(1){i=L[((d<<6)+c|0)+44>>2];h=i>2];g=h?i:g;p=k>2];g=p?k:g;q=i>2];g=q?i:g;o=k>2];if(f){continue}break}F[j+n|0]=1;f=(j<<6)+c|0;d=H[f+20>>2];H[b+16>>2]=H[f+16>>2];H[b+20>>2]=d;d=H[f+4>>2];H[b>>2]=H[f>>2];H[b+4>>2]=d;H[b+48>>2]=H[f+48>>2];d=H[f+44>>2];H[b+40>>2]=H[f+40>>2];H[b+44>>2]=d;d=H[f+36>>2];H[b+32>>2]=H[f+32>>2];H[b+36>>2]=d;d=H[f+28>>2];H[b+24>>2]=H[f+24>>2];H[b+28>>2]=d;d=H[f+12>>2];H[b+8>>2]=H[f+8>>2];H[b+12>>2]=d;d=H[e+48>>2];h=(d<<6)+c|0;k=L[b+24>>2];g=O(L[h+24>>2]-k);i=O(g*g);u=L[b+16>>2];g=O(L[h+16>>2]-u);m=O(g*g);v=L[b+20>>2];g=O(L[h+20>>2]-v);g=O(i+O(m+O(g*g)));i=L[f+44>>2];i=i>2];if(l>>>0>d>>>0){while(1){j=(d<<6)+c|0;m=O(L[j+24>>2]-k);x=O(m*m);m=O(L[j+16>>2]-u);y=O(m*m);m=O(L[j+20>>2]-v);m=O(x+O(y+O(m*m)));j=m>g;g=j?m:g;h=j?d:h;d=d+1|0;if((l|0)!=(d|0)){continue}break}}f=H[f+16>>2];if(f){d=H[f+48>>2];continue}break}F[h+n|0]=1;d=(h<<6)+c|0;f=H[d+4>>2];H[b+64>>2]=H[d>>2];H[b+68>>2]=f;H[b+112>>2]=H[d+48>>2];f=H[d+44>>2];H[b+104>>2]=H[d+40>>2];H[b+108>>2]=f;f=H[d+36>>2];H[b+96>>2]=H[d+32>>2];H[b+100>>2]=f;f=H[d+28>>2];H[b+88>>2]=H[d+24>>2];H[b+92>>2]=f;f=H[d+20>>2];H[b+80>>2]=H[d+16>>2];H[b+84>>2]=f;f=H[d+12>>2];H[b+72>>2]=H[d+8>>2];H[b+76>>2]=f;g=L[d+44>>2];i=g>2];j=H[e+52>>2];b:{if(d>>>0>=j>>>0){break b}f=d+1|0;if(j-d&1){if(!I[d+n|0]){k=L[((d<<6)+c|0)+44>>2];l=k>2];f=k>2];l=k>2];if(e){continue}break}c=(h<<6)+c|0;d=H[c+4>>2];H[b+128>>2]=H[c>>2];H[b+132>>2]=d;H[b+176>>2]=H[c+48>>2];d=H[c+44>>2];H[b+168>>2]=H[c+40>>2];H[b+172>>2]=d;d=H[c+36>>2];H[b+160>>2]=H[c+32>>2];H[b+164>>2]=d;d=H[c+28>>2];H[b+152>>2]=H[c+24>>2];H[b+156>>2]=d;d=H[c+20>>2];H[b+144>>2]=H[c+16>>2];H[b+148>>2]=d;d=H[c+12>>2];H[b+136>>2]=H[c+8>>2];H[b+140>>2]=d;g=L[c+44>>2];L[a>>2]=g>2]=3;n=L[c>>2];h=L[b>>2];t=O(n-h);o=L[d+4>>2];j=L[b+4>>2];u=O(o-j);p=L[d>>2];v=O(p-h);q=L[c+4>>2];w=O(q-j);k=O(O(t*u)-O(v*w));r=L[d+8>>2];i=L[b+8>>2];x=O(r-i);s=L[c+8>>2];y=O(s-i);m=O(O(w*x)-O(u*y));l=O(O(y*v)-O(x*t));z=O(O(k*k)+O(O(m*m)+O(l*l)));if(z==O(0)){L[a>>2]=3.4028234663852886e38;return}A=O(O(k*O(O(h*q)-O(n*j)))+O(O(m*O(O(j*s)-O(q*i)))+O(O(O(i*n)-O(s*h))*l)));a:{B=O(O(k*O(O(n*o)-O(p*q)))+O(O(m*O(O(q*r)-O(o*s)))+O(O(O(s*p)-O(r*n))*l)));C=O(O(k*O(O(p*j)-O(h*o)))+O(O(m*O(O(o*i)-O(j*r)))+O(O(O(r*h)-O(i*p))*l)));if(!(!(A>=O(0))|(!(B>=O(0))|!(C>=O(0))))){H[g+12>>2]=0;i=O(O(O(k*i)+O(O(m*h)+O(j*l)))/z);h=O(k*i);L[g+8>>2]=h;j=O(l*i);L[g+4>>2]=j;i=O(m*i);L[g>>2]=i;break a}H[f>>2]=2;m=O(-s);l=O(-n);n=O(-q);k=O(O(y*m)+O(O(t*l)+O(w*n)));i=O(-i);q=O(-h);s=O(-j);h=O(O(y*i)+O(O(t*q)+O(w*s)));if(!(!(k<=O(0))|(!(A<=O(0))|!(h>=O(0))))){m=L[b>>2];j=L[b+4>>2];i=L[b+8>>2];H[g+12>>2]=0;l=i;i=h;h=O(h-k);i=O(i*(O(P(h))>O(1.1920928955078125e-7)?O(O(1)/h):O(0)));h=O(l+O(y*i));L[g+8>>2]=h;j=O(j+O(w*i));L[g+4>>2]=j;i=O(m+O(t*i));L[g>>2]=i;break a}r=O(-r);p=O(-p);o=O(-o);j=O(O(x*r)+O(O(v*p)+O(u*o)));b:{m=O(O(x*m)+O(O(v*l)+O(u*n)));if(!(B<=O(0))|!(m>=k)){break b}n=O(O(y*r)+O(O(t*p)+O(w*o)));if(!(n>=j)){break b}h=L[c>>2];t=L[d>>2];i=L[c+4>>2];o=L[d+4>>2];l=L[c+8>>2];u=L[d+8>>2];b=H[e+8>>2];H[e>>2]=H[e+4>>2];H[e+4>>2]=b;H[g+12>>2]=0;k=O(m-k);j=O(k+O(n-j));j=O(k*(O(P(j))>O(1.1920928955078125e-7)?O(O(1)/j):O(0)));k=O(l+O(j*O(u-l)));L[g+8>>2]=k;i=O(i+O(j*O(o-i)));L[g+4>>2]=i;h=O(h+O(j*O(t-h)));L[g>>2]=h;L[a>>2]=O(k*k)+O(O(h*h)+O(i*i));return}i=O(O(x*i)+O(O(v*q)+O(u*s)));if(!(!(j<=O(0))|(!(C<=O(0))|!(i>=O(0))))){H[e+4>>2]=H[e+8>>2];k=L[b>>2];m=L[b+4>>2];h=L[b+8>>2];H[g+12>>2]=0;l=h;h=O(i-j);i=O(i*(O(P(h))>O(1.1920928955078125e-7)?O(O(1)/h):O(0)));h=O(l+O(x*i));L[g+8>>2]=h;j=O(m+O(u*i));L[g+4>>2]=j;i=O(k+O(v*i));L[g>>2]=i;break a}H[f>>2]=1;if(!(!(h<=O(0))|!(i<=O(0)))){c=H[b+4>>2];H[g>>2]=H[b>>2];H[g+4>>2]=c;c=H[b+12>>2];H[g+8>>2]=H[b+8>>2];H[g+12>>2]=c;h=L[b+8>>2];i=O(h*h);h=L[b>>2];l=O(h*h);h=L[b+4>>2];L[a>>2]=i+O(l+O(h*h));return}if(!(!(k>=O(0))|!(k>=m))){H[e>>2]=H[e+4>>2];b=H[c+12>>2];H[g+8>>2]=H[c+8>>2];H[g+12>>2]=b;b=H[c+4>>2];H[g>>2]=H[c>>2];H[g+4>>2]=b;h=L[c+8>>2];i=O(h*h);h=L[c>>2];l=O(h*h);h=L[c+4>>2];L[a>>2]=i+O(l+O(h*h));return}H[e>>2]=H[e+8>>2];b=H[d+12>>2];H[g+8>>2]=H[d+8>>2];H[g+12>>2]=b;b=H[d+4>>2];H[g>>2]=H[d>>2];H[g+4>>2]=b;h=L[d+8>>2];i=O(h*h);h=L[d>>2];l=O(h*h);h=L[d+4>>2];L[a>>2]=i+O(l+O(h*h));return}L[a>>2]=O(h*h)+O(O(i*i)+O(j*j))}function Vd(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=0,p=0,q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0);p=Oa-32|0;Oa=p;H[p+16>>2]=0;H[p+8>>2]=0;H[p+12>>2]=0;o=p+8|0;e=Oa-96|0;Oa=e;g=O(-1);a:{b:{switch(H[b>>2]){case 0:g=O(0);l=L[c+24>>2];h=O(L[d+8>>2]-l);j=L[c+16>>2];f=O(L[d>>2]-j);n=L[c+20>>2];m=O(L[d+4>>2]-n);k=O(W(O(O(h*h)+O(O(f*f)+O(m*m)))));i=L[b+4>>2];if(k<=i){break a}if(o){g=O(O(1)/k);L[o+8>>2]=l+O(i*O(h*g));L[o+4>>2]=n+O(i*O(m*g));L[o>>2]=j+O(i*O(f*g))}g=O(k-i);g=O(g*g);break a;case 2:g=O(0);m=L[b+4>>2];w=L[d+8>>2];h=L[c>>2];f=O(h+h);l=L[c+8>>2];q=L[c+4>>2];k=L[c+12>>2];j=O(k+k);n=L[b+8>>2];r=O(O(O(f*l)-O(q*j))*n);s=L[c+24>>2];t=O(r+s);i=O(w-t);u=L[c+20>>2];v=O(n*O(O(l*j)+O(f*q)));q=O(u+v);l=O(O(s-r)-t);s=L[d>>2];x=L[c+16>>2];f=O(O(O(h*f)+O(O(k*j)+O(-1)))*n);r=O(x+f);h=O(s-r);j=O(O(x-f)-r);n=O(O(u-v)-q);u=L[d+4>>2];k=O(u-q);f=O(O(i*l)+O(O(h*j)+O(n*k)));c:{if(f<=O(0)){f=O(0);break c}v=O(O(l*l)+O(O(j*j)+O(n*n)));if(v<=f){i=O(i-l);k=O(k-n);h=O(h-j);f=O(1);break c}f=O(f/v);i=O(i-O(l*f));k=O(k-O(n*f));h=O(h-O(j*f))}k=O(O(i*i)+O(O(h*h)+O(k*k)));if(k<=O(m*m)){break a}if(o){l=O(t+O(l*f));g=O(w-l);j=O(r+O(j*f));i=O(s-j);n=O(q+O(n*f));h=O(u-n);f=O(W(O(O(g*g)+O(O(i*i)+O(h*h)))));if(f>O(0)){f=O(O(1)/f);g=O(g*f);h=O(h*f);i=O(i*f)}L[o+8>>2]=l+O(m*g);L[o+4>>2]=n+O(m*h);L[o>>2]=j+O(m*i)}g=O(O(W(k))-m);g=O(g*g);break a;case 3:i=L[c+4>>2];f=O(i+i);g=L[c+8>>2];l=O(f*g);m=L[c>>2];h=O(m+m);k=L[c+12>>2];j=O(h*k);L[e+60>>2]=l-j;L[e+52>>2]=l+j;m=O(O(1)-O(m*h));l=O(i*f);L[e- -64>>2]=m-l;n=m;m=O(g+g);j=O(g*m);L[e+48>>2]=n-j;g=O(h*g);f=O(f*k);L[e+56>>2]=g+f;i=O(h*i);h=O(m*k);L[e+44>>2]=i-h;L[e+40>>2]=g-f;L[e+36>>2]=i+h;L[e+32>>2]=O(O(1)-l)-j;L[e+68>>2]=L[c+16>>2];L[e+72>>2]=L[c+20>>2];L[e+76>>2]=L[c+24>>2];L[e+80>>2]=L[b+4>>2];L[e+84>>2]=L[b+8>>2];L[e+88>>2]=L[b+12>>2];g=pZ(d,e+68|0,e+80|0,e+32|0,e+16|0);if(!o|g==O(0)){break a}m=L[e+60>>2];k=L[e+48>>2];l=L[e- -64>>2];j=L[e+52>>2];n=L[e+72>>2];q=L[e+36>>2];t=L[e+76>>2];r=L[e+40>>2];i=L[e+16>>2];h=L[e+20>>2];f=L[e+24>>2];L[o>>2]=O(O(O(i*L[e+32>>2])+O(h*L[e+44>>2]))+O(f*L[e+56>>2]))+L[e+68>>2];L[o+8>>2]=t+O(O(O(i*r)+O(h*j))+O(f*l));L[o+4>>2]=n+O(O(O(i*q)+O(h*k))+O(f*m));break a;case 4:break b;default:break a}}if(!(BU(e+32|0,e+16|0,e+12|0,d,H[b+32>>2],b+4|0,c)|!o)){L[o>>2]=L[e+16>>2];L[o+4>>2]=L[e+20>>2];L[o+8>>2]=L[e+24>>2]}g=L[e+12>>2]}Oa=e+96|0;b=ta()|0;H[a>>2]=b;a=ua(19336)|0;L[p+24>>2]=g;d=p+24|0;c=la(97120,d|0)|0;va(b|0,a|0,c|0);na(c|0);na(a|0);c=ua(2016)|0;a=o6(12);L[a>>2]=L[p+8>>2];L[a+4>>2]=L[p+12>>2];L[a+8>>2]=L[p+16>>2];H[p+24>>2]=a;a=la(97840,d|0)|0;va(b|0,c|0,a|0);na(a|0);na(c|0);Oa=p+32|0}function SL(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,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;n=H[a+52>>2];e=H[a+36>>2];j=H[a+40>>2];q=H[a+44>>2];k=Oa-32|0;Oa=k;l=H[a+32>>2];c=H[l+32>>2];r=H[a+28>>2];t=H[r>>2];s=H[l+20>>2];if(s){g=n+192|0;u=H[l+16>>2];while(1){b=H[(H[e+256>>2]+N(H[(m<<2)+u>>2],44)|0)+24>>2];if((b|0)!=-1){while(1){d=H[e+148>>2];h=(b>>>0)/(d>>>0)|0;v=H[H[H[e+128>>2]+(h<<2)>>2]+(b-N(d,h)<<2)>>2];h=H[e+228>>2];d=(b>>>0)/(h>>>0)|0;p=N(d,h);w=H[H[e+208>>2]+(d<<2)>>2];h=H[n+472>>2];i=b<<1;f=H[e+616>>2];o=H[f+20>>2];d=(i>>>0)/(o>>>0)|0;d=H[H[H[f>>2]+(d<<2)>>2]+(i-N(d,o)<<2)>>2];a:{if(d>>>0>=4294967168){H[c+12>>2]=0;H[c>>2]=g;G[c+8>>1]=65535;break a}o=d>>>7|0;f=H[e+184>>2]+N(o,24)|0;if(I[f+5|0]==1){f=H[f+20>>2];d=d>>>1&63;Ra[H[H[f>>2]+188>>2]](f,d,k+28|0,k+27|0);b:{if(I[k+27|0]==2){H[c>>2]=f;break b}H[c>>2]=g;d=65535}H[c+12>>2]=0;G[c+8>>1]=d;break a}d=H[H[e+196>>2]+(o<<2)>>2];d=I[f+4|0]&4?d:H[(d<<2)+j>>2]+q|0;G[c+8>>1]=65535;d=d+1|0;H[c+12>>2]=d;H[c>>2]=(d<<6)+h}f=b-p|0;d=i|1;i=H[e+616>>2];p=H[i+20>>2];b=(d>>>0)/(p>>>0)|0;b=H[H[H[i>>2]+(b<<2)>>2]+(d-N(b,p)<<2)>>2];c:{if(b>>>0>=4294967168){H[c+16>>2]=0;H[c+4>>2]=g;G[c+10>>1]=65535;break c}i=b>>>7|0;d=H[e+184>>2]+N(i,24)|0;if(I[d+5|0]==1){d=H[d+20>>2];b=b>>>1&63;Ra[H[H[d>>2]+188>>2]](d,b,k+20|0,k+19|0);d:{if(I[k+19|0]==2){H[c+4>>2]=d;break d}H[c+4>>2]=g;b=65535}H[c+16>>2]=0;G[c+10>>1]=b;break c}b=H[H[e+196>>2]+(i<<2)>>2];b=I[d+4|0]&4?b:H[(b<<2)+j>>2]+q|0;G[c+10>>1]=65535;b=b+1|0;H[c+16>>2]=b;H[c+4>>2]=(b<<6)+h}G[c+22>>1]=2;H[c+24>>2]=v;c=c+32|0;b=H[(w+(f<<4)|0)+8>>2];if((b|0)!=-1){continue}break}}m=m+1|0;if((s|0)!=(m|0)){continue}break}b=H[l+32>>2]}else{b=c}Fy(b,c-b>>5);if(H[r+12>>2]){b=H[l+12>>2];d=0;while(1){j=H[n+472>>2];g=Oa-16|0;H[g+12>>2]=0;H[g+8>>2]=q;e:{f:{g:{h:{i:{m=d<<4;e=m+b|0;b=I[e+8|0];switch(b-2|0){case 1:break h;case 0:break i;default:break g}}H[c>>2]=H[e>>2]&-64;b=J[e>>1];H[c+12>>2]=0;G[c+8>>1]=b&63;break e}b=n+192|0;break f}b=(j+(H[e>>2]+H[(g+8|0)+(b<<2)>>2]<<6)|0)- -64|0}H[c>>2]=b;b=0;h=I[e+8|0];if((h|0)!=3){b=(H[e>>2]+H[(g+8|0)+(h<<2)>>2]|0)+1|0}G[c+8>>1]=65535;H[c+12>>2]=b}j:{k:{l:{m:{n:{b=I[e+9|0];switch(b-2|0){case 1:break m;case 0:break n;default:break l}}H[c+4>>2]=H[e+4>>2]&-64;b=J[e+4>>1];H[c+16>>2]=0;G[c+10>>1]=b&63;break j}b=n+192|0;break k}b=(j+(H[e+4>>2]+H[(g+8|0)+(b<<2)>>2]<<6)|0)- -64|0}H[c+4>>2]=b;b=0;j=I[e+9|0];if((j|0)!=3){b=(H[e+4>>2]+H[(g+8|0)+(j<<2)>>2]|0)+1|0}G[c+10>>1]=65535;H[c+16>>2]=b}b=H[l+12>>2];e=H[(m+b|0)+12>>2];G[c+22>>1]=1;H[c+24>>2]=e;c=c+32|0;d=d+1|0;if(d>>>0>2]){continue}break}}H[t+11956>>2]=c-H[l+32>>2]>>5;Oa=k+32|0;a=H[a+28>>2];H[a+88>>2]=H[H[a>>2]+11956>>2]}function dZ(a,b,c,d){var e=0,f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),F=O(0),G=O(0),H=O(0),I=O(0),J=O(0),K=O(0);e=Oa-192|0;Oa=e;f=L[d>>2];k=L[d+4>>2];L[e+56>>2]=O(1)/L[d+8>>2];L[e+52>>2]=O(1)/k;L[e+48>>2]=O(1)/f;L[e+60>>2]=L[d+12>>2];L[e- -64>>2]=L[d+16>>2];L[e+68>>2]=L[d+20>>2];L[e+72>>2]=L[d+24>>2];s=L[c+20>>2];t=L[c+24>>2];u=L[c+16>>2];v=L[c+4>>2];w=O(-v);h=O(w-v);x=L[c+8>>2];n=O(-x);g=O(h*n);f=L[c+12>>2];k=L[c>>2];o=O(O(-k)-k);i=O(f*o);L[e+28>>2]=g-i;L[e+20>>2]=i+g;g=O(O(k*o)+O(1));m=O(h*w);L[e+32>>2]=g-m;B=O(n-x);j=O(B*n);L[e+16>>2]=g-j;t=O(t*O(-2));u=O(u*O(-2));s=O(s*O(-2));g=O(O(x*t)+O(O(k*u)+O(v*s)));i=O(O(f*f)+O(-.5));L[e+44>>2]=O(x*g)+O(O(t*i)-O(f*O(O(k*s)-O(u*v))));L[e+40>>2]=O(v*g)+O(O(s*i)-O(f*O(O(x*u)-O(t*k))));n=O(o*n);h=O(f*h);L[e+24>>2]=n+h;o=O(o*w);w=O(f*B);L[e+12>>2]=o-w;L[e+8>>2]=n-h;L[e+4>>2]=o+w;L[e>>2]=O(O(1)-m)-j;L[e+36>>2]=O(k*g)+O(O(u*i)-O(f*O(O(v*t)-O(s*x))));k=L[e+20>>2];v=L[e+16>>2];x=L[e+32>>2];n=L[e+28>>2];o=L[e+8>>2];t=L[e>>2];u=L[e+4>>2];s=L[e+12>>2];w=L[e+24>>2];h=L[e+64>>2];g=O(h+h);f=L[e+68>>2];j=O(f+f);c=e+80|0;C=O(h*g);p=O(f*j);i=O(O(O(1)-C)-p);H=L[e+48>>2];y=L[e+60>>2];m=O(y+y);l=O(m*f);q=L[e+72>>2];r=O(g*q);B=O(l+r);z=O(H*B);D=O(m*h);E=O(j*q);h=O(D+E);F=O(g*f);G=O(m*q);f=O(F-G);I=L[e+52>>2];A=O(f*I);g=O(l-r);q=O(O(1)-O(y*m));m=O(q-C);J=L[e+56>>2];l=O(m*J);j=O(O(O(i*z)+O(h*A))+O(g*l));K=L[e+36>>2];y=O(D-E);q=O(q-p);C=O(F+G);p=O(O(O(y*z)+O(q*A))+O(C*l));D=L[e+40>>2];z=O(O(O(B*z)+O(f*A))+O(m*l));E=L[e+44>>2];L[c+44>>2]=O(O(j*K)+O(p*D))+O(z*E);r=O(H*y);F=O(q*I);G=O(C*J);A=O(O(O(i*r)+O(h*F))+O(g*G));l=O(O(O(y*r)+O(q*F))+O(C*G));r=O(O(O(B*r)+O(f*F))+O(m*G));L[c+40>>2]=O(O(K*A)+O(D*l))+O(E*r);L[c+32>>2]=O(O(j*w)+O(p*n))+O(z*x);L[c+28>>2]=O(O(A*w)+O(l*n))+O(r*x);L[c+20>>2]=O(O(j*s)+O(p*v))+O(z*k);L[c+16>>2]=O(O(A*s)+O(l*v))+O(r*k);L[c+8>>2]=O(o*z)+O(O(t*j)+O(u*p));L[c+4>>2]=O(o*r)+O(O(t*A)+O(u*l));l=i;i=O(H*i);j=O(h*I);p=O(g*J);h=O(O(O(l*i)+O(h*j))+O(g*p));g=O(O(O(y*i)+O(q*j))+O(C*p));f=O(O(O(B*i)+O(f*j))+O(m*p));L[c+36>>2]=O(O(K*h)+O(D*g))+O(E*f);L[c+24>>2]=O(O(h*w)+O(g*n))+O(f*x);L[c+12>>2]=O(O(h*s)+O(g*v))+O(f*k);L[c>>2]=O(o*f)+O(O(t*h)+O(u*g));eZ(e+128|0,c,b);L[a>>2]=L[e+128>>2];L[a+4>>2]=L[e+132>>2];L[a+8>>2]=L[e+136>>2];L[a+12>>2]=L[e+140>>2];L[a+16>>2]=L[e+144>>2];L[a+20>>2]=L[e+148>>2];L[a+24>>2]=L[e+152>>2];L[a+28>>2]=L[e+156>>2];L[a+32>>2]=L[e+160>>2];L[a+36>>2]=L[e+164>>2];L[a+40>>2]=L[e+168>>2];L[a+44>>2]=L[e+172>>2];L[a+48>>2]=L[e+176>>2];L[a+52>>2]=L[e+180>>2];L[a+56>>2]=L[e+184>>2];Oa=e+192|0}function dj(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;e=Oa-48|0;Oa=e;h=I[c|0];if((h&5)==5){o5(H[33808],4,15747,476,60058,0);h=h&251}if((h&36)==36){o5(H[33808],4,15747,483,59915,0);h=h&223}f=vg(a);g=f?f+32|0:0;d=a+48|0;a:{b:{k=h&1;c=I[b|0];l=c&1;c:{if(!(k|!l)){i=a+20|0;m=J[a+24>>1];if(m){o=(m|0)==1?i:H[a+20>>2];c=0;while(1){j=o+(c<<2)|0;n=H[j>>2];Ra[H[H[n>>2]+156>>2]](e+16|0,n);d:{if(!(F[e+16|0]&1)){break d}e:{f:{j=H[H[j>>2]+116>>2];switch(j-1|0){case 0:case 4:break e;default:break f}}if((j|0)!=6){break d}}o5(H[33808],4,15747,513,64452,0);break a}c=c+1|0;if((m|0)!=(c|0)){continue}break}c=I[b|0]}g:{h:{if(!(c&2)){break h}i:{if(I[a+317|0]&128){c=H[a+56>>2];L[e+16>>2]=L[c+192>>2];L[e+20>>2]=L[c+196>>2];L[e+24>>2]=L[c+200>>2];L[e+28>>2]=L[c+204>>2];L[e+32>>2]=L[c+208>>2];L[e+36>>2]=L[c+212>>2];L[e+40>>2]=L[c+216>>2];if(f){break i}break g}if(K[a+52>>2]>3221225471){break h}if(!_F(a- -64|0,e+16|0)|!f){break h}}pt(i,f+5584|0,a);c=f+5652|0;H[c>>2]=H[c>>2]+1}if(!f){break g}H[g+2672>>2]=H[g+2672>>2]-1;H[g+2668>>2]=H[g+2668>>2]+1}if(!H[a+240>>2]|(H[a+52>>2]&-1073741824)!=1073741824){break c}c=H[a+240>>2];g=a- -64|0;i=I[H[g+176>>2]+31|0]==1;j:{if(i){if(c){break j}break c}if(!H[a+240>>2]|(!c|I[H[g+176>>2]+31|0]==1)){break c}}UF(g,H[H[d>>2]+2428>>2],i);break c}if(!k|l){break c}if((Ra[H[H[a>>2]+24>>2]](a)|0)==2){break b}k:{if(!H[a+240>>2]|(H[a+52>>2]&-1073741824)!=1073741824){break k}c=a- -64|0;if(!H[a+240>>2]|I[H[c+176>>2]+31|0]==1){break k}IF(c,H[H[d>>2]+2428>>2])}if(!f){break c}H[g+2668>>2]=H[g+2668>>2]-1;H[g+2672>>2]=H[g+2672>>2]+1}l:{if(!((I[b|0]^h)&2)|(!l|!k)){break l}m:{if(I[a+317|0]&128){b=H[a+56>>2];L[e+16>>2]=L[b+192>>2];L[e+20>>2]=L[b+196>>2];L[e+24>>2]=L[b+200>>2];L[e+28>>2]=L[b+204>>2];L[e+32>>2]=L[b+208>>2];L[e+36>>2]=L[b+212>>2];L[e+40>>2]=L[b+216>>2];if(f){break m}break l}if(K[a+52>>2]>3221225471){break l}if(!_F(a- -64|0,e+16|0)|!f){break l}}pt(a+20|0,f+5584|0,a);a=f+5652|0;H[a>>2]=H[a>>2]+1}F[e+8|0]=h;b=Oa-16|0;Oa=b;g=F[e+8|0]&1;a=H[d+8>>2];f=H[d+268>>2];h=F[(f&16384?a+268|0:d+60|0)|0]&1;c=g&!h;n:{o:{p:{switch((H[d+4>>2]>>>30|0)-2|0){case 0:if(I[H[d>>2]+4785|0]){break o}break;case 1:break o;default:break p}}if(c){H[d+236>>2]=0;H[d+240>>2]=0;H[d+260>>2]=0;H[d+264>>2]=1;H[d+244>>2]=0;H[d+248>>2]=0;H[d+252>>2]=0;H[d+256>>2]=0}c=d+16|0;a=H[d>>2];if(a){a=H[a+2428>>2]}else{a=0}F[b+8|0]=I[e+8|0];SF(c,a,b+8|0);break n}q:{if(c){Yj(d);a=H[d+8>>2];break q}if(!(h&!g)){break q}H[d+268>>2]=f&-32769}if(!a){a=Tt(H[d>>2],I[d+7|0]&15);H[d+8>>2]=a}F[a+268|0]=I[e+8|0];$t(H[d>>2],d);H[d+268>>2]=H[d+268>>2]|16384}Oa=b+16|0;break a}o5(H[33808],4,15747,540,64375,0)}Oa=e+48|0}function sX(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=0,n=O(0),o=0,p=0,q=O(0),r=0,s=0,t=0,u=0;e=Oa-80|0;Oa=e;p=H[a+36>>2];a:{if(p){break a}p=0;o=H[a+20>>2];r=o<<2;if(r){p=H[33808];p=Ra[H[H[p+12>>2]+8>>2]](p+12|0,r,20591,8894,133)|0;o=H[a+20>>2]}H[a+36>>2]=p;if(!o){break a}while(1){H[(m<<2)+p>>2]=m;m=m+1|0;if(m>>>0>2]){continue}break}}H[e+72>>2]=0;H[e+68>>2]=c;H[e+64>>2]=d;c=H[a+40>>2];H[e+60>>2]=H[a+32>>2];H[e+56>>2]=c;g=L[b+16>>2];h=L[b+20>>2];k=L[b+12>>2];n=L[b>>2];l=L[b+4>>2];j=L[b+8>>2];H[e+44>>2]=0;L[e+40>>2]=O(h-j)*O(.5);L[e+36>>2]=O(g-l)*O(.5);H[e+28>>2]=0;L[e+32>>2]=O(k-n)*O(.5);L[e+24>>2]=O(j+h)*O(.5);L[e+20>>2]=O(l+g)*O(.5);L[e+16>>2]=O(n+k)*O(.5);u=H[a+28>>2];c=e- -64|0;a=Oa-1040|0;Oa=a;F[a+1024|0]=1;H[a+1032>>2]=256;H[a+1036>>2]=256;H[a+1028>>2]=a;t=H[e+56>>2];H[a>>2]=t;d=1;while(1){b:{d=d-1|0;b=H[H[a+1028>>2]+(d<<2)>>2];h=L[b>>2];k=L[b+12>>2];g=O(h+k);h=O(k-h);l=L[b+8>>2];j=L[b+20>>2];k=O(l+j);f=L[b+4>>2];i=L[b+16>>2];n=O(f+i);l=O(j-l);j=O(i-f);while(1){c:{f=O(g*O(.5));g=L[e+16>>2];f=O(f-g);i=O(-f);q=O(h*O(.5));h=L[e+32>>2];if(!(O(q+h)>=(f>i?f:i))){break c}f=O(n*O(.5));n=L[e+20>>2];f=O(f-n);i=O(-f);q=O(j*O(.5));j=L[e+36>>2];if(!(O(q+j)>=(f>i?f:i))){break c}f=O(k*O(.5));k=L[e+24>>2];f=O(f-k);i=O(-f);q=O(l*O(.5));l=L[e+40>>2];if(!(O(q+l)>=(f>i?f:i))){break c}b=H[b+24>>2];o=b>>>1|0;if(b&1){m=H[e+60>>2]+(b>>>3&536870908)|0;r=H[c>>2];d:{e:{o=o&15;switch(o|0){case 1:break e;case 0:break c;default:break d}}b=H[(H[m>>2]<<2)+p>>2];m=H[c+8>>2];H[c+8>>2]=m+1;H[r+(m<<2)>>2]=b;if(H[c+8>>2]!=H[c+4>>2]){break c}break b}while(1){s=H[m>>2];b=N(s,24)+u|0;f=L[b+12>>2];q=L[b>>2];g=O(O(O(q+f)*O(.5))-g);i=O(-g);f:{if(!(O(O(O(f-q)*O(.5))+h)>=(g>i?g:i))){break f}f=L[b+4>>2];i=L[b+16>>2];g=O(O(O(f+i)*O(.5))-n);h=O(-g);if(!(O(O(O(i-f)*O(.5))+j)>=(h>2];j=L[b+20>>2];g=O(O(O(n+j)*O(.5))-k);h=O(-g);if(!(O(O(O(j-n)*O(.5))+l)>=(h>2];s=H[c+8>>2];H[c+8>>2]=s+1;H[r+(s<<2)>>2]=b;if(H[c+8>>2]!=H[c+4>>2]){break f}break b}o=o-1|0;if(!o){break c}m=m+4|0;k=L[e+24>>2];n=L[e+20>>2];g=L[e+16>>2];l=L[e+40>>2];j=L[e+36>>2];h=L[e+32>>2];continue}}b=N(o,28)+t|0;H[H[a+1028>>2]+(d<<2)>>2]=b+28;d=d+1|0;if((d|0)==(H[a+1036>>2]&2147483647)){qX(a,d<<1)}h=L[b>>2];k=L[b+12>>2];g=O(h+k);h=O(k-h);l=L[b+8>>2];j=L[b+20>>2];k=O(l+j);f=L[b+4>>2];i=L[b+16>>2];n=O(f+i);l=O(j-l);j=O(i-f);continue}break}if(d){continue}}break}b=H[a+1036>>2];g:{if((b|0)<0|!(b&2147483647)){break g}b=H[a+1028>>2];if((b|0)==(a|0)|!b){break g}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}Oa=a+1040|0;Oa=e+80|0;return H[e+72>>2]}function jD(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=O(0),j=0,k=O(0),l=O(0),m=0,n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),F=O(0),G=O(0),J=O(0),K=0,M=0,Q=0,R=0,S=0,T=0;h=Oa-32|0;Oa=h;H[h+24>>2]=d;w=L[e+20>>2];G=L[e+16>>2];k=L[e+8>>2];d=H[c+40>>2];n=L[d+8>>2];r=L[d+20>>2];i=O(O(n+r)*O(.5));x=O(i+i);q=L[e>>2];s=L[d>>2];t=L[d+12>>2];i=O(O(s+t)*O(.5));y=O(i+i);o=L[d+4>>2];u=L[d+16>>2];i=O(O(o+u)*O(.5));z=O(i+i);i=L[e+4>>2];A=O(O(k*x)+O(O(q*y)+O(z*i)));p=L[e+12>>2];B=O(O(p*p)+O(-.5));C=O(L[e+24>>2]+O(O(k*A)+O(O(x*B)+O(p*O(O(q*z)-O(y*i))))));r=O(O(r-n)*O(.5));n=O(q+q);v=O(O(1)-O(q*n));l=O(i+i);D=O(i*l);s=O(O(t-s)*O(.5));E=O(n*k);F=O(p*l);t=O(O(u-o)*O(.5));o=O(p*n);l=O(l*k);u=O(O(P(O(r*O(v-D))))+O(O(P(O(s*O(E-F))))+O(P(O(t*O(o+l))))));L[h+20>>2]=C+u;w=O(w+O(O(i*A)+O(O(z*B)+O(p*O(O(k*y)-O(x*q))))));J=O(P(O(r*O(l-o))));n=O(n*i);l=O(k+k);o=O(p*l);l=O(k*l);v=O(J+O(O(P(O(s*O(n+o))))+O(P(O(t*O(v-l))))));L[h+16>>2]=w+v;k=O(G+O(O(q*A)+O(O(y*B)+O(p*O(O(i*x)-O(z*k))))));i=O(O(P(O(r*O(E+F))))+O(O(P(O(s*O(O(O(1)-D)-l))))+O(P(O(t*O(n-o))))));L[h+12>>2]=k+i;L[h+8>>2]=C-u;L[h+4>>2]=w-v;L[h>>2]=k-i;a:{b:{j=a+632|0;d=H[j>>2];if((d|0)==H[j+4>>2]){d=d<<1;if(!fD(j,d>>>0>32?d:32)){break b}d=H[j>>2]}H[j>>2]=d+1;m=H[j+8>>2]+N(d,24)|0;L[m>>2]=L[h>>2];L[m+4>>2]=L[h+4>>2];L[m+8>>2]=L[h+8>>2];L[m+12>>2]=L[h+12>>2];L[m+16>>2]=L[h+16>>2];L[m+20>>2]=L[h+20>>2];m=Ra[H[H[c>>2]+40>>2]](c)|0;j=H[j+12>>2]+N(d,44)|0;L[j+12>>2]=L[e>>2];L[j+16>>2]=L[e+4>>2];L[j+20>>2]=L[e+8>>2];L[j+24>>2]=L[e+12>>2];L[j+28>>2]=L[e+16>>2];L[j+32>>2]=L[e+20>>2];k=L[e+24>>2];H[j+40>>2]=f;L[j+36>>2]=k;e=H[33808];e=Ra[H[H[e+12>>2]+8>>2]](e+12|0,28,20591,8197,228)|0;H[e>>2]=0;H[e+4>>2]=0;H[e+24>>2]=-1;H[e+16>>2]=0;H[e+20>>2]=0;H[e+8>>2]=0;H[e+12>>2]=0;kB(e,m);lB(e,b,Ra[H[H[c>>2]+36>>2]](c)|0,g,m);H[j+4>>2]=e;b=H[33808];e=Ra[H[H[b+12>>2]+8>>2]](b+12|0,12,20591,8197,234)|0;H[e+8>>2]=0;H[e>>2]=0;H[e+4>>2]=0;gD(e,m);H[j+8>>2]=e;b=H[33808];f=H[33808];g=(M=b+12|0,Q=616,R=Ra[H[H[f>>2]+20>>2]](f)|0?38680:55639,S=8197,T=238,K=H[H[b+12>>2]+8>>2],Ra[K](M|0,Q|0,R|0,S|0,T|0)|0);b=HB(g);if(Ra[H[H[c>>2]+40>>2]](c)|0){f=H[b+584>>2];if(!f){MB(b+296|0);f=H[b+584>>2]}H[b+584>>2]=H[f>>2];H[b+576>>2]=H[b+576>>2]+1;f=S6(f,0,96);H[b+588>>2]=f;m=b;b=H[c+40>>2];YB(m,f,b,b,0,H[c+32>>2],e)}H[j>>2]=g;b=d;break a}o5(H[33808],16,8197,207,60688,0);b=-1}H[a+704>>2]=0;kD(a,b,SB(a+4|0,b,H[a+640>>2],a+700|0));c=dC(a+648|0,h+24|0,h+31|0);if(!I[h+31|0]){d=H[h+24>>2];H[c+4>>2]=0;H[c>>2]=d}H[c+4>>2]=b;H[H[a+688>>2]+(b<<2)>>2]=H[h+24>>2];Oa=h+32|0;return 1}function sP(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=0,o=0,p=0,q=0,r=0,s=O(0),t=O(0),u=O(0),v=O(0),w=0,x=0;e=H[a+40>>2];b=H[e+304>>2];g=H[b>>2];if(g){H[b>>2]=H[g>>2]}if(!g){b=H[33808];f=Ra[H[H[b>>2]+20>>2]](b)|0?22930:55639;f=Ra[H[H[b+12>>2]+8>>2]](b+12|0,7251,f,16202,82)|0;b=f+19&-16;H[b-4>>2]=b-f;g=uJ(b,H[e+308>>2])}H[g+7120>>2]=0;a:{if(!H[a+32>>2]){break a}h=g+7116|0;b=H[a+28>>2];while(1){n=Oa-48|0;Oa=n;r=q<<2;f=H[H[r+b>>2]+20>>2];while(1){e=AG(n,H[f>>2]);H[n+36>>2]=f;b=f;while(1){if(b){while(1){e=b;d=H[b+40>>2];b:{if(!d){break b}c=H[d+60>>2];c:{if(c){b=1;if(!(F[H[c+44>>2]+44|0]&1)){break c}}c=H[d- -64>>2];b=0;if(!c){break c}b=!(F[H[c+44>>2]+44|0]&1)}if(!b|!(!H[(H[H[H[d+48>>2]+1004>>2]+168>>2]+(H[d+40>>2]<<5)|0)+12>>2]&(I[H[d+52>>2]]&6)!=0)){break b}w=H[e>>2];i=O(0);j=O(0);k=O(0);l=O(0);s=O(0);t=O(0);u=O(0);b=Oa-80|0;Oa=b;o=H[d+28>>2];v=O(1);m=O(1);p=H[d+24>>2];if(p){c=H[p+36>>2];u=L[c+24>>2];t=L[c+20>>2];l=L[c+16>>2];m=L[c+12>>2];k=L[c+8>>2];j=L[c+4>>2];i=L[c>>2]}x=H[d- -64>>2];L[b+72>>2]=u;L[b+68>>2]=t;L[b+64>>2]=l;L[b+60>>2]=m;L[b+56>>2]=k;L[b+52>>2]=j;L[b+48>>2]=i;i=O(0);j=O(0);k=O(0);m=O(0);l=O(0);if(o){c=H[o+36>>2];l=L[c+24>>2];m=L[c+20>>2];k=L[c+16>>2];v=L[c+12>>2];j=L[c+8>>2];s=L[c>>2];i=L[c+4>>2]}L[b+40>>2]=l;L[b+36>>2]=m;L[b+32>>2]=k;L[b+28>>2]=v;L[b+24>>2]=j;L[b+20>>2]=i;L[b+16>>2]=s;c=(w|0)==(x|0);Ra[H[d+16>>2]](H[d+20>>2],b+48|0,b+16|0,c);d:{if(c){TG(o,b+16|0);c=H[o+36>>2];L[c>>2]=L[b+16>>2];L[c+4>>2]=L[b+20>>2];L[c+8>>2]=L[b+24>>2];L[c+12>>2]=L[b+28>>2];L[c+16>>2]=L[b+32>>2];L[c+20>>2]=L[b+36>>2];L[c+24>>2]=L[b+40>>2];c=H[d+64>>2];H[b+12>>2]=c;d=H[h+4>>2];if(d>>>0>=(H[h+8>>2]&2147483647)>>>0){rF(h,b+12|0);break d}H[H[h>>2]+(d<<2)>>2]=c;H[h+4>>2]=d+1;break d}TG(p,b+48|0);c=H[p+36>>2];L[c>>2]=L[b+48>>2];L[c+4>>2]=L[b+52>>2];L[c+8>>2]=L[b+56>>2];L[c+12>>2]=L[b+60>>2];L[c+16>>2]=L[b+64>>2];L[c+20>>2]=L[b+68>>2];L[c+24>>2]=L[b+72>>2];c=H[d+60>>2];H[b+12>>2]=c;d=H[h+4>>2];if(d>>>0>=(H[h+8>>2]&2147483647)>>>0){rF(h,b+12|0);break d}H[H[h>>2]+(d<<2)>>2]=c;H[h+4>>2]=d+1}Oa=b+80|0}b=H[e+32>>2];if(b){continue}b=H[e+36>>2];if(b){continue}break}}e=H[e+28>>2];if(e){b=H[e+36>>2];continue}break}f=H[f+24>>2];if(f){continue}break}Oa=n+48|0;b=H[a+28>>2];e=H[r+b>>2];F[e+44|0]=I[e+44|0]&253;q=q+1|0;if(q>>>0>2]){continue}break}if(!H[g+7120>>2]){break a}if(H[g+7120>>2]){b=0;while(1){d=H[h>>2]+(b<<2)|0;e=H[a+36>>2];f=H[e+4>>2];e:{if(f>>>0>=(H[e+8>>2]&2147483647)>>>0){rF(e,d);break e}H[H[e>>2]+(f<<2)>>2]=H[d>>2];H[e+4>>2]=f+1}b=b+1|0;if(b>>>0>2]){continue}break}}}a=H[H[a+40>>2]+304>>2];H[g>>2]=H[a>>2];H[a>>2]=g}function dI(a,b,c,d,e,f,g,h){var 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,K=0,L=0;j=Oa-112|0;Oa=j;H[a>>2]=0;H[a+4>>2]=-1;o=I[H[c+28>>2]- -64|0]<<3&32;k=H[c+4>>2];k=I[H[k+44>>2]+9|0]-1>>>0<2?k:0;a:{if(!k){break a}k=H[k+44>>2];if(I[k+9|0]!=2){o=o|I[k+44|0]<<4&16|1;break a}o=o|2}k=H[c+28>>2];s=H[k+28>>2];t=H[k+24>>2];u=H[k+20>>2];v=H[k+16>>2];l=I[H[d+28>>2]- -64|0]<<3&32;i=H[d+4>>2];i=I[H[i+44>>2]+9|0]-1>>>0<2?i:0;k=l;b:{if(!i){break b}k=H[i+44>>2];if(I[k+9|0]!=2){k=l|I[k+44|0]<<4&16|1;break b}k=l|2}i=H[d+28>>2];w=H[i+20>>2];x=H[i+24>>2];y=H[i+28>>2];z=H[i+16>>2];i=H[b>>2];H[j+100>>2]=s;H[j+96>>2]=t;H[j+92>>2]=u;H[j+88>>2]=v;H[j+84>>2]=y;H[j+80>>2]=x;H[j+76>>2]=w;H[j+72>>2]=z;q=a+2|0;Ra[i|0](j+104|0,o,j+88|0,k,j+72|0,q,H[b+4>>2],H[b+8>>2]);i=J[j+104>>1];G[a>>1]=i;c:{d:{if(!(i&4)){break d}if(H[b+12>>2]){if(!h){break c}e:{if((g|0)!=-1){break e}m=H[b+16>>2];g=H[m+12>>2];if((g|0)==-1){g=H[m+4>>2];H[j+104>>2]=0;if((H[m+8>>2]&2147483647)>>>0<=g>>>0){i=H[m+8>>2]&2147483647;p=i?i<<1:1;f:{if(!p){break f}i=p<<2;if(!i){break f}l=H[33808];n=l+12|0;n=(C=n,D=i,E=Ra[H[H[l>>2]+20>>2]](l)|0?50174:55639,K=13582,L=553,B=H[H[n>>2]+8>>2],Ra[B](C|0,D|0,E|0,K|0,L|0)|0)}r=H[m+4>>2];l=(r<<2)+n|0;if((r|0)>0){A=H[m>>2];i=n;while(1){H[i>>2]=H[A>>2];A=A+4|0;i=i+4|0;if(l>>>0>i>>>0){continue}break}}H[l>>2]=H[j+104>>2];g:{if(H[m+8>>2]<0){break g}l=H[m>>2];if(!l){break g}i=H[33808]+12|0;Ra[H[H[i>>2]+12>>2]](i,l);r=H[m+4>>2]}H[m+8>>2]=p;H[m>>2]=n;H[m+4>>2]=r+1;break e}H[H[m>>2]+(g<<2)>>2]=0;H[m+4>>2]=g+1;break e}n=H[m>>2]+(g<<2)|0;H[m+12>>2]=H[n>>2];H[n>>2]=0}n=H[H[c+4>>2]+44>>2];p=H[((I[n+9|0]<<2)+135180|0)+40>>2]+n|0;l=H[33798];i=l+H[c+28>>2]|0;c=H[H[d+4>>2]+44>>2];n=H[((I[c+9|0]<<2)+135180|0)+40>>2]+c|0;c=l+H[d+28>>2]|0;d=H[b+12>>2];H[j+68>>2]=s;H[j+64>>2]=t;H[j+60>>2]=u;H[j+56>>2]=v;H[j+52>>2]=y;H[j+48>>2]=x;H[j+44>>2]=w;H[j+40>>2]=z;Ra[H[H[d>>2]>>2]](j+104|0,d,g,o,j+56|0,p,i,k,j+40|0,n,c,q);i=J[j+104>>1];G[a>>1]=i;H[a+4>>2]=g;break d}G[a>>1]=i&65523;o5(H[33808],2,9058,270,60492,0);i=J[a>>1]}if((i&3)==3){i=i&65534;G[a>>1]=i}h:{if((g|0)==-1){break h}c=i&12;i:{j:{if(!(i&1)){if((c|0)!=12){break j}break h}if((c|0)!=12){break j}c=H[b+12>>2];H[j+36>>2]=s;H[j+32>>2]=t;H[j+28>>2]=u;H[j+24>>2]=v;H[j+20>>2]=y;H[j+16>>2]=x;H[j+12>>2]=w;H[j+8>>2]=z;Ra[H[H[c>>2]+4>>2]](c,g,o,j+24|0,k,j+8|0,0);i=J[a>>1];if((i&12)==12){break i}}i=i&65523;G[a>>1]=i}b=H[b+16>>2];H[H[b>>2]+(g<<2)>>2]=H[b+12>>2];H[b+12>>2]=g;H[a+4>>2]=-1}if(!(i&4?h:1)){break c}a=J[q>>1];if(!(!e|i&3|(!(F[H[e+44>>2]+44|0]&1)|!f))){a=F[H[f+44>>2]+44|0]&1?a&1?a&-2:a:a}G[q>>1]=a}Oa=j+112|0} -function aV(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=O(0),j=O(0),k=O(0),l=O(0),m=O(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;g=Oa-752|0;Oa=g;h=H[c+32>>2];j=L[c+4>>2];l=L[c+8>>2];m=L[c+12>>2];H[g+476>>2]=0;L[g+472>>2]=m;L[g+468>>2]=l;L[g+464>>2]=j;o=H[c+16>>2];p=H[c+20>>2];n=H[c+28>>2];H[g+456>>2]=H[c+24>>2];H[g+460>>2]=n;H[g+448>>2]=o;H[g+452>>2]=p;F[g+320|0]=0;H[g+312>>2]=0;H[g+316>>2]=0;H[g+304>>2]=0;H[g+308>>2]=0;H[g+296>>2]=0;H[g+300>>2]=0;H[g+288>>2]=0;H[g+292>>2]=0;H[g+432>>2]=h+16;H[g+440>>2]=H[h+56>>2]+N(I[h+55|0],20);F[g+444|0]=I[h+54|0];i=O(j*L[h+68>>2]);k=O(l*L[h+72>>2]);i=i<=k?i:k;k=O(m*L[h+76>>2]);i=i<=k?i:k;L[g+312>>2]=i*O(.02500000037252903);L[g+304>>2]=i*O(.10000000149011612);L[g+308>>2]=i*O(.05000000074505806);o=g+336|0;p=g+384|0;CU(g+464|0,g+448|0,o,p,g+288|0,j==O(1)&l==O(1)&m==O(1));H[g+436>>2]=H[h+60>>2];h=H[e+32>>2];j=L[e+4>>2];l=L[e+8>>2];m=L[e+12>>2];H[g+284>>2]=0;L[g+280>>2]=m;L[g+276>>2]=l;L[g+272>>2]=j;n=H[e+16>>2];q=H[e+20>>2];s=H[e+28>>2];H[g+264>>2]=H[e+24>>2];H[g+268>>2]=s;H[g+256>>2]=n;H[g+260>>2]=q;F[g+128|0]=0;H[g+120>>2]=0;H[g+124>>2]=0;H[g+112>>2]=0;H[g+116>>2]=0;H[g+104>>2]=0;H[g+108>>2]=0;H[g+96>>2]=0;H[g+100>>2]=0;H[g+240>>2]=h+16;H[g+248>>2]=H[h+56>>2]+N(I[h+55|0],20);F[g+252|0]=I[h+54|0];i=O(j*L[h+68>>2]);k=O(l*L[h+72>>2]);i=i<=k?i:k;k=O(m*L[h+76>>2]);i=i<=k?i:k;L[g+120>>2]=i*O(.02500000037252903);L[g+112>>2]=i*O(.10000000149011612);L[g+116>>2]=i*O(.05000000074505806);n=g+144|0;q=g+192|0;CU(g+272|0,g+256|0,n,q,g+96|0,j==O(1)&l==O(1)&m==O(1));H[g+244>>2]=H[h+60>>2];j=L[f+24>>2];l=L[d+24>>2];h=H[f>>2];s=H[f+4>>2];t=H[f+8>>2];u=H[f+12>>2];v=H[f+16>>2];f=H[f+20>>2];w=H[d>>2];x=H[d+4>>2];y=H[d+8>>2];z=H[d+12>>2];A=H[d+20>>2];d=H[d+16>>2];H[g+92>>2]=0;L[g+88>>2]=l;H[g+80>>2]=d;H[g+84>>2]=A;H[g+72>>2]=y;H[g+76>>2]=z;H[g+64>>2]=w;H[g+68>>2]=x;H[g+60>>2]=0;L[g+56>>2]=j;H[g+48>>2]=v;H[g+52>>2]=f;H[g+40>>2]=t;H[g+44>>2]=u;H[g+32>>2]=h;H[g+36>>2]=s;H[g+24>>2]=0;H[g+28>>2]=0;H[g+16>>2]=0;H[g+20>>2]=0;H[g>>2]=0;d=0;a:{if(L[c+4>>2]!=O(1)){break a}d=0;if(L[c+8>>2]!=O(1)){break a}d=L[c+12>>2]==O(1)}r=L[e+4>>2]!=O(1)|L[e+8>>2]!=O(1)?r:L[e+12>>2]==O(1);c=g+288|0;e=g+680|0;R0(c,d,e);f=g+96|0;h=g+608|0;R0(f,r,h);F[g+588|0]=d;H[g+584>>2]=p;H[g+580>>2]=o;H[g+544>>2]=d?125820:125868;F[g+524|0]=r;H[g+520>>2]=q;H[g+516>>2]=n;H[g+480>>2]=r?125820:125868;H[g+576>>2]=g- -64;H[g+592>>2]=c;H[g+512>>2]=g+32;H[g+528>>2]=f;c=H0(e,h,g+544|0,g+480|0,g,g+16|0);if(c){j=L[g>>2];L[b>>2]=j>O(0)?j:O(0);b=H[g+16>>2];d=H[g+20>>2];L[a+8>>2]=L[g+24>>2];H[a>>2]=b;H[a+4>>2]=d}Oa=g+752|0;return c|0}function hs(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;b=Oa-112|0;Oa=b;H[b+72>>2]=-1;H[b+64>>2]=0;H[b+68>>2]=0;j=H[c+4>>2];e=H[((H[j+4>>2]>>>22&60)+76348|0)+12>>2]+j|0;n=H[((I[e+9|0]<<2)+135180|0)+40>>2]+e|0;c=H[c>>2];o=H[33798]+(c+16|0)|0;d=H[a+20>>2];i=G[d+16>>1];a:{b:{c:{d:{e:{if(!H[H[a+12>>2]+28>>2]){f=I[a+42|0];if(f|(i|0)>=0){break e}break d}if(!I[a+42|0]){break d}e=2;break b}e=2;if(f){break b}break c}e=1}h=J[a+16>>1];f:{f=H[a+32>>2];if(f){break f}k=H[d+12>>2];l=H[d+8>>2];g=H[d+4>>2];m=H[d>>2];if(!(k|(l|(g|m)))|(k&H[c+28>>2]|(l&H[c+24>>2]|(g&H[c+20>>2]|m&H[c+16>>2])))){break f}f=1;break a}if(!(i&4)){break b}g=H[a+24>>2];if(!(f?1:g)){break b}G[b+104>>1]=h;g:{if(g){e=Ra[H[H[g>>2]>>2]](g,d,o,n,b+104|0)|0;break g}g=H[f+8>>2];if(!g){break b}H[b+32>>2]=H[d>>2];H[b+36>>2]=H[d+4>>2];H[b+40>>2]=H[d+8>>2];H[b+44>>2]=H[d+12>>2];H[b+88>>2]=H[c+16>>2];H[b+92>>2]=H[c+20>>2];H[b+96>>2]=H[c+24>>2];H[b+100>>2]=H[c+28>>2];e=Ra[g|0](b+32|0,b+88|0,H[f>>2],H[f+4>>2],b+104|0)|0}if(e){break b}f=1;break a}tg(b+32|0,c,j);f=1;d=H[a+12>>2];g=H[d+32>>2];p=H[d+28>>2];q=H[d+24>>2];d=H[H[a+4>>2]+5736>>2];h=H[a+8>>2];j=H[h+16>>2];h=H[h+12>>2];m=H[h>>2];l=F[c+4|0]&1?H[c+8>>2]- -64|0:c+84|0;k=H[l>>2];h:{if((m|0)>(k|0)){if(Ra[H[(d+N(k,28)|0)+(m<<2)>>2]](l,b+32|0,h,j,0)|0){break h}break a}if(!(Ra[H[(d+N(m,28)|0)+(k<<2)>>2]](h,j,l,b+32|0,0)|0)){break a}}d=g>>>0

>>0?(g<<4)+q|0:b- -64|0;H[d+4>>2]=o;H[d>>2]=n;i:{if(I[a+42|0]){break i}f=H[a+24>>2];g=H[a+32>>2];if(!(f|g)|!(i&8)){break i}if(f){e=Ra[H[H[f>>2]+4>>2]](f,H[a+20>>2],d)|0;break i}f=H[g+12>>2];if(!f){break i}e=H[a+20>>2];H[b+16>>2]=H[e>>2];H[b+20>>2]=H[e+4>>2];H[b+24>>2]=H[e+8>>2];H[b+28>>2]=H[e+12>>2];H[b>>2]=H[c+16>>2];H[b+4>>2]=H[c+20>>2];H[b+8>>2]=H[c+24>>2];H[b+12>>2]=H[c+28>>2];e=Ra[f|0](b+16|0,b,H[g>>2],H[g+4>>2],d)|0}if(!(!I[a+41|0]|!e)){e=H[d+4>>2];c=H[a+12>>2];H[c+4>>2]=H[d>>2];H[c+8>>2]=e;e=H[d+12>>2];H[c+12>>2]=H[d+8>>2];H[c+16>>2]=e;F[H[a+12>>2]+20|0]=1;f=0;break a}f=1;j:{switch((I[a+40|0]?1:e)-1|0){case 0:c=H[a+12>>2];i=H[c+28>>2];if(!(L[a+28>>2]>=O(-1))|(!i|!I[a+38|0])){break a}e=H[c+32>>2];if((i|0)==(e|0)){c=Ra[H[H[c>>2]>>2]](c,H[c+24>>2],i)|0;F[a+38|0]=c;f=0;if(!c){break a}c=H[a+12>>2];H[c+32>>2]=0;e=0}f=1;H[c+32>>2]=e+1;a=H[c+24>>2]+(e<<4)|0;c=H[d+12>>2];H[a+8>>2]=H[d+8>>2];H[a+12>>2]=c;c=H[d+4>>2];H[a>>2]=H[d>>2];H[a+4>>2]=c;break a;case 1:break j;default:break a}}if(!(L[a+28>>2]>=O(-1))){break a}e=H[d+4>>2];c=H[a+12>>2];H[c+4>>2]=H[d>>2];H[c+8>>2]=e;e=H[d+12>>2];H[c+12>>2]=H[d+8>>2];H[c+16>>2]=e;F[H[a+12>>2]+20|0]=1}Oa=b+112|0;return f|0}function IV(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=0,q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),K=O(0),M=O(0),P=O(0),Q=0,R=0;f=Oa-400|0;Oa=f;a:{if(!e){y=O(1);r=O(0);break a}y=O(1);r=O(0);if(J[e+12>>1]!=2){break a}y=L[e+8>>2];P=L[e>>2];r=L[e+4>>2]}p=H[c+32>>2];s=L[a+8>>2];t=L[a+4>>2];j=L[c+4>>2];B=L[c+8>>2];C=L[c+12>>2];H[f+396>>2]=0;L[f+392>>2]=C;L[f+388>>2]=B;L[f+384>>2]=j;a=H[c+16>>2];Q=H[c+20>>2];R=H[c+28>>2];H[f+376>>2]=H[c+24>>2];H[f+380>>2]=R;H[f+368>>2]=a;H[f+372>>2]=Q;h=L[d>>2];g=O(L[b+16>>2]-L[d+16>>2]);o=O(g+g);g=O(L[b+20>>2]-L[d+20>>2]);i=O(g+g);l=L[d+4>>2];m=L[d+8>>2];g=O(L[b+24>>2]-L[d+24>>2]);k=O(g+g);n=O(O(O(O(-h)*o)-O(i*l))-O(m*k));g=L[d+12>>2];q=O(O(g*g)+O(-.5));u=O(O(O(k*q)+O(g*O(O(l*o)-O(h*i))))-O(m*n));v=O(O(O(i*q)+O(g*O(O(h*k)-O(m*o))))-O(l*n));o=O(O(O(o*q)+O(g*O(O(m*i)-O(l*k))))-O(h*n));k=L[b+8>>2];n=L[b+4>>2];q=L[b+12>>2];w=L[b>>2];z=O(O(m*k)+O(O(l*n)+O(O(g*q)+O(h*w))));i=O(O(w*l)+O(O(O(g*k)-O(q*m))-O(h*n)));D=O(i+i);E=O(z*D);x=O(O(k*h)+O(O(O(g*n)-O(q*l))-O(m*w)));A=O(x+x);K=O(z*A);M=O(i*A);h=O(O(n*m)+O(O(O(g*w)-O(q*h))-O(l*k)));g=O(h+h);l=O(z*g);m=O(i*g);k=O(g*x);i=O(i*D);n=O(x*A);h=O(O(1)-O(h*g));a=0;b:{if(j!=O(1)){break b}a=0;if(L[c+8>>2]!=O(1)){break b}a=L[c+12>>2]==O(1)}F[f+240|0]=0;H[f+232>>2]=0;H[f+236>>2]=0;H[f+224>>2]=0;H[f+228>>2]=0;H[f+216>>2]=0;H[f+220>>2]=0;H[f+208>>2]=0;H[f+212>>2]=0;H[f+352>>2]=p+16;H[f+360>>2]=H[p+56>>2]+N(I[p+55|0],20);F[f+364|0]=I[p+54|0];g=O(j*L[p+68>>2]);j=O(B*L[p+72>>2]);g=g<=j?g:j;j=O(C*L[p+76>>2]);g=g<=j?g:j;L[f+232>>2]=g*O(.02500000037252903);L[f+224>>2]=g*O(.10000000149011612);L[f+228>>2]=g*O(.05000000074505806);b=f+208|0;CU(f+384|0,f+368|0,f+256|0,f+304|0,b,a);H[f+356>>2]=H[p+60>>2];H[f+188>>2]=0;H[f+172>>2]=0;L[f+120>>2]=u;g=O(s*O(0));j=O(O(O(h-n)*g)+O(O(O(m-K)*s)+O(g*O(l+M))));L[f+184>>2]=u-j;L[f+116>>2]=v;h=O(O(O(M-l)*g)+O(O(O(k+E)*s)+O(g*O(h-i))));L[f+180>>2]=v-h;L[f+168>>2]=u+j;L[f+164>>2]=v+h;L[f+192>>2]=t;H[f+124>>2]=0;H[f+140>>2]=4;F[f+144|0]=1;L[f+136>>2]=t;L[f+132>>2]=t;L[f+128>>2]=t;L[f+112>>2]=o;g=O(O(O(m+K)*g)+O(O(O(O(O(1)-n)-i)*s)+O(g*O(k-E))));L[f+176>>2]=o-g;L[f+160>>2]=o+g;H[f+40>>2]=125948;H[f+44>>2]=f+112;H[f+32>>2]=126016;H[f+36>>2]=b;H[f+28>>2]=0;L[f+24>>2]=u-L[f+216>>2];L[f+20>>2]=v-L[f+212>>2];L[f+16>>2]=o-L[f+208>>2];H[f>>2]=0;a=DU(f+40|0,f+32|0,f+16|0,f,f+96|0,f+80|0,f- -64|0,f+48|0);if(!(!e|(a|0)!=2)){L[e+8>>2]=y;L[e+4>>2]=r;L[e>>2]=P}if(e){G[e+12>>1]=((a|0)==2)<<1}Oa=f+400|0;return(a|0)==2|0}function VJ(a,b,c,d,e,f,g,h,i,j){var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=O(0),w=O(0),x=O(0),y=O(0),z=0,A=0,B=0;H[a+40>>2]=b;H[a+36>>2]=j;H[a+32>>2]=i;a:{if(!d|!c){break a}while(1){p=(o<<3)+e|0;n=H[p>>2];s=H[p+4>>2];while(1){p=k;k=k+1|0;l=H[(p<<3)+f>>2];if(l>>>0>>0){continue}break}if(l>>>0<=s>>>0){k=(o<<4)+g|0;v=L[k+12>>2];w=L[k+4>>2];x=L[k+8>>2];y=L[k>>2];n=p;while(1){k=(n<<4)+h|0;b:{if(y>L[k+8>>2]|x>2]|(v>2]|w>L[k+12>>2])){break b}m=H[a+28>>2];k=H[H[a+32>>2]+(o<<2)>>2];q=H[m+(k<<2)>>2];l=H[H[a+36>>2]+(n<<2)>>2];m=H[m+(l<<2)>>2];if((q|0)==(m|0)|!I[H[a+44>>2]+(q<<2&12|m&3)|0]){break b}m=k>>>0>l>>>0;q=m?k:l;t=m?l:k;k=q<<16|t&65535;k=(k<<15^-1)+k|0;k=N(k>>>10^k,9);k=k>>>6^k;k=(k<<11^-1)+k|0;u=k>>>16^k;l=u&H[a+4>>2];c:{m=H[a+12>>2];d:{if(!m){break d}k=H[(l<<2)+m>>2];if((k|0)==-1){break d}A=H[a+16>>2];B=H[a+20>>2];while(1){r=(k<<3)+B|0;if((t|0)==(H[r>>2]&2147483647)){z=H[r+4>>2];if((q|0)==(z&2147483647)){break c}}k=H[(k<<2)+A>>2];if((k|0)!=-1){continue}break}}k=H[a+8>>2];if(k>>>0>=K[a>>2]){l=$G(a,u);m=H[a+12>>2];k=H[a+8>>2]}H[a+8>>2]=k+1;r=H[a+20>>2]+(k<<3)|0;H[r+4>>2]=q;H[r>>2]=t|-2147483648;l=(l<<2)+m|0;H[H[a+16>>2]+(k<<2)>>2]=H[l>>2];H[l>>2]=k;break b}H[r+4>>2]=z|-2147483648}n=n+1|0;if(s>>>0>=K[(n<<3)+f>>2]){continue}break}}if(d>>>0<=p>>>0){break a}k=p;o=o+1|0;if(o>>>0>>0){continue}break}}H[a+40>>2]=b;H[a+36>>2]=i;H[a+32>>2]=j;e:{if(!c|!d){break e}o=0;k=0;while(1){b=(o<<3)+f|0;i=H[b>>2];p=H[b+4>>2];while(1){b=k;k=k+1|0;j=H[(b<<3)+e>>2];if(j>>>0<=i>>>0){continue}break}if(j>>>0<=p>>>0){i=(o<<4)+h|0;v=L[i+12>>2];w=L[i+4>>2];x=L[i+8>>2];y=L[i>>2];n=b;while(1){i=(n<<4)+g|0;f:{if(y>L[i+8>>2]|x>2]|(v>2]|w>L[i+12>>2])){break f}k=H[a+28>>2];i=H[H[a+32>>2]+(o<<2)>>2];l=H[k+(i<<2)>>2];j=H[H[a+36>>2]+(n<<2)>>2];k=H[k+(j<<2)>>2];if((l|0)==(k|0)|!I[H[a+44>>2]+(l<<2&12|k&3)|0]){break f}k=i>>>0>j>>>0;s=k?i:j;i=k?j:i;j=s<<16|i&65535;j=(j<<15^-1)+j|0;j=N(j>>>10^j,9);j=j>>>6^j;j=(j<<11^-1)+j|0;q=j>>>16^j;l=q&H[a+4>>2];g:{m=H[a+12>>2];h:{if(!m){break h}k=H[(l<<2)+m>>2];if((k|0)==-1){break h}t=H[a+16>>2];r=H[a+20>>2];while(1){j=r+(k<<3)|0;if((i|0)==(H[j>>2]&2147483647)){u=H[j+4>>2];if((s|0)==(u&2147483647)){break g}}k=H[t+(k<<2)>>2];if((k|0)!=-1){continue}break}}k=H[a+8>>2];if(k>>>0>=K[a>>2]){l=$G(a,q);m=H[a+12>>2];k=H[a+8>>2]}H[a+8>>2]=k+1;j=H[a+20>>2]+(k<<3)|0;H[j+4>>2]=s;H[j>>2]=i|-2147483648;i=(l<<2)+m|0;H[H[a+16>>2]+(k<<2)>>2]=H[i>>2];H[i>>2]=k;break f}H[j+4>>2]=u|-2147483648}n=n+1|0;if(p>>>0>=K[(n<<3)+e>>2]){continue}break}}if(b>>>0>=c>>>0){break e}k=b;o=o+1|0;if(o>>>0>>0){continue}break}}}function tZ(a,b,c,d,e,f,g,h,i){var j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=O(0),B=O(0),C=O(0),D=0,E=O(0);y=b<<2;s=Oa-16|0;D=y+s|0;t=d+y|0;v=f+y|0;B=L[v>>2];L[D>>2]=L[t>>2]+B;w=c<<2;u=w+d|0;x=s+w|0;s=f+w|0;C=L[s>>2];m=O(L[u>>2]+C);L[x>>2]=m;x=a<<2;z=x+g|0;p=L[z>>2];w=e+w|0;k=L[w>>2];o=O(p*k);x=e+x|0;l=L[x>>2];q=O(m*l);a:{b:{c:{d:{n=L[D>>2];e=e+y|0;j=L[e>>2];e:{if(O(l*n)>=O(j*p)){if(o<=q){if(!h){break e}a=a<<2;L[a+d>>2]=L[a+f>>2];p=O(O(1)/L[x>>2]);L[t>>2]=L[t>>2]-O(O(L[z>>2]*L[e>>2])*p);L[u>>2]=L[u>>2]-O(O(L[z>>2]*L[w>>2])*p);L[h>>2]=p*O(-L[z>>2]);return}o=O(O(l*l)+O(k*k));l=O(l*p);k=O(m*k);q=O(O(o*n)-O(O(l+k)*j));if(q<=O(B*O(o+o))){r=k;k=O(q/o);n=O(n-k);l=O(r+O(l+O(j*n)));j=O(O(-l)/O(O(j*j)+o));L[i>>2]=O(O(l*j)+O(O(m*m)+O(O(p*p)+O(n*n))))+L[i>>2];if(!h){break e}break d}r=k;k=L[(b<<2)+g>>2];n=O(r+O(l+O(j*k)));j=O(O(-n)/O(O(j*j)+o));L[i>>2]=L[i>>2]+O(O(n*j)+O(O(m*m)+O(O(p*p)+O(k*k))));if(!h){break e}break c}if(o<=q){o=O(O(l*l)+O(j*j));j=O(O(l*p)+O(n*j));l=O(O(o*m)-O(j*k));if(l<=O(C*O(o+o))){l=O(l/o);m=O(m-l);q=O(O(k*m)+j);j=O(O(-q)/O(O(k*k)+o));L[i>>2]=O(O(q*j)+O(O(m*m)+O(O(p*p)+O(n*n))))+L[i>>2];if(!h){break e}L[h>>2]=j;a=a<<2;L[a+d>>2]=L[a+f>>2];L[t>>2]=-L[v>>2];L[u>>2]=l-L[s>>2];return}m=L[(c<<2)+g>>2];l=O(O(k*m)+j);j=O(O(-l)/O(O(k*k)+o));L[i>>2]=L[i>>2]+O(O(l*j)+O(O(m*m)+O(O(p*p)+O(n*n))));if(!h){break e}break b}E=O(l*l);q=O(k*k);o=O(E+q);r=O(l*p);A=O(m*k);l=O(O(o*n)-O(O(r+A)*j));if(l>=O(0)){if(l<=O(B*O(o+o))){k=O(l/o);n=O(n-k);l=O(A+O(r+O(j*n)));j=O(O(-l)/O(O(j*j)+o));L[i>>2]=O(O(l*j)+O(O(m*m)+O(O(p*p)+O(n*n))))+L[i>>2];if(!h){break e}break d}k=L[(b<<2)+g>>2];n=O(A+O(r+O(j*k)));j=O(O(-n)/O(O(j*j)+o));L[i>>2]=L[i>>2]+O(O(n*j)+O(O(m*m)+O(O(p*p)+O(k*k))));if(!h){break e}break c}l=O(E+O(j*j));j=O(r+O(n*j));o=O(O(l*m)-O(j*k));if(o>=O(0)){if(o<=O(C*O(l+l))){r=k;k=O(o/l);m=O(m-k);o=O(O(r*m)+j);j=O(O(-o)/O(q+l));L[i>>2]=O(O(o*j)+O(O(m*m)+O(O(p*p)+O(n*n))))+L[i>>2];if(!h){break e}L[h>>2]=j;a=a<<2;L[a+d>>2]=L[a+f>>2];L[t>>2]=-L[v>>2];L[u>>2]=k-L[s>>2];return}m=L[(c<<2)+g>>2];k=O(O(k*m)+j);j=O(O(-k)/O(q+l));L[i>>2]=L[i>>2]+O(O(k*j)+O(O(m*m)+O(O(p*p)+O(n*n))));if(!h){break e}break b}k=O(A+j);j=O(O(-k)/O(q+l));L[i>>2]=O(O(k*j)+O(O(m*m)+O(O(p*p)+O(n*n))))+L[i>>2];if(!h){break e}L[h>>2]=j;a=a<<2;L[a+d>>2]=L[a+f>>2];L[t>>2]=-L[v>>2];L[u>>2]=-L[s>>2]}return}L[h>>2]=j;a=a<<2;L[a+d>>2]=L[a+f>>2];L[t>>2]=k-L[v>>2];break a}L[h>>2]=j;a=a<<2;L[a+d>>2]=L[a+f>>2];L[t>>2]=L[v>>2];break a}L[h>>2]=j;a=a<<2;L[a+d>>2]=L[a+f>>2];L[t>>2]=-L[v>>2];L[u>>2]=L[s>>2];return}L[u>>2]=-L[s>>2]}function tE(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;g=Oa-48|0;Oa=g;h=a+16|0;l=e>>>7|0;a:{if((l|0)!=(H[a+24>>2]&2147483647)){break a}f=l<<1;f=f>>>0>256?f:256;if(f>>>0>l>>>0){qE(h,f)}if(f>>>0>(H[a+212>>2]&2147483647)>>>0){Dv(a+204|0,f)}if(f>>>0>(H[a+200>>2]&2147483647)>>>0){uE(a+192|0,f)}if(f>>>0>(H[a+188>>2]&2147483647)>>>0){Dv(a+180|0,f)}if(f>>>0<=(H[a+36>>2]&2147483647)>>>0){break a}Dv(a+28|0,f)}f=H[a+20>>2];H[g+16>>2]=0;H[g+20>>2]=0;H[g+8>>2]=-128;H[g+12>>2]=-128;H[g>>2]=-1;H[g+4>>2]=8;i=l+1|0;f=f>>>0>i>>>0?f:i;if(f>>>0>(H[h+8>>2]&2147483647)>>>0){qE(h,f)}i=H[h+4>>2];if((i|0)<(f|0)){j=H[h>>2];k=j+N(f,24)|0;i=j+N(i,24)|0;while(1){j=H[g+4>>2];H[i>>2]=H[g>>2];H[i+4>>2]=j;j=H[g+20>>2];H[i+16>>2]=H[g+16>>2];H[i+20>>2]=j;j=H[g+12>>2];H[i+8>>2]=H[g+8>>2];H[i+12>>2]=j;i=i+24|0;if(k>>>0>i>>>0){continue}break}}H[h+4>>2]=f;H[g>>2]=0;gy(a+204|0,f,g);H[g>>2]=-128;vE(a+192|0,f,g);H[g>>2]=0;gy(a+180|0,f,g);H[g>>2]=0;gy(a+28|0,f,g);f=l<<2;H[f+H[a+28>>2]>>2]=33554431;i=H[a+16>>2]+N(l,24)|0;h=b^1;F[i+4|0]=c?h|4:h;F[i+5|0]=d;H[f+H[a+204>>2]>>2]=-1;H[f+H[a+192>>2]>>2]=-128;H[f+H[a+180>>2]>>2]=0;if(!c){c=H[a+4>>2];b:{if(c){c=c-1|0;f=H[H[a>>2]+(c<<2)>>2];H[a+4>>2]=c;break b}f=H[a+12>>2];H[a+12>>2]=f+1}i=a+88|0;c:{if((H[a+96>>2]&2147483647)!=(f|0)){break c}c=f<<1;c=c>>>0>256?c:256;if(c>>>0>f>>>0){wE(i,c)}h=c+31>>>5|0;if(h>>>0>(H[a+220>>2]&2147483647)>>>0){j=H[33808]+12|0;j=Ra[H[H[j>>2]+8>>2]](j,h<<2,20591,14969,438)|0;k=H[a+216>>2];d:{if(!k){break d}R6(j,k,H[a+220>>2]<<2);if(H[a+220>>2]<0){break d}k=H[a+216>>2];if(!k){break d}m=H[33808]+12|0;Ra[H[H[m>>2]+12>>2]](m,k)}k=H[a+220>>2];S6(j+(k<<2)|0,0,h-k<<2);H[a+220>>2]=h;H[a+216>>2]=j}if(c>>>0<=(H[a+108>>2]&2147483647)>>>0){break c}Dv(a+100|0,c)}h=H[a+92>>2];H[g+24>>2]=-1;H[g+28>>2]=-1;H[g+32>>2]=-1;H[g+16>>2]=-1;H[g+20>>2]=-1;H[g>>2]=-128;H[g+4>>2]=-128;H[g+36>>2]=0;H[g+40>>2]=0;H[g+8>>2]=0;H[g+12>>2]=0;c=f+1|0;xE(i,c>>>0>>0?h:c,g);h=H[a+92>>2];H[g>>2]=0;gy(a+100|0,c>>>0>>0?h:c,g);h=H[a+92>>2];j=c>>>0>>0?h:c;h=j+32>>>5|0;e:{if(h>>>0<=(H[a+220>>2]&2147483647)>>>0){c=H[a+216>>2];break e}c=H[33808]+12|0;c=Ra[H[H[c>>2]+8>>2]](c,h<<2,20591,14969,438)|0;k=H[a+216>>2];f:{if(!k){break f}R6(c,k,H[a+220>>2]<<2);if(H[a+220>>2]<0){break f}k=H[a+216>>2];if(!k){break f}m=H[33808]+12|0;Ra[H[H[m>>2]+12>>2]](m,k)}k=H[a+220>>2];S6((k<<2)+c|0,0,h-k<<2);H[a+220>>2]=h;H[a+216>>2]=c}c=(j>>>3&536870908)+c|0;h=H[c>>2];n=c,o=j7(-2,j)&h,H[n>>2]=o;c=H[i>>2]+N(f,44)|0;H[c+4>>2]=e;H[c>>2]=e;H[(c+(d<<2)|0)+8>>2]=1;H[H[a+204>>2]+(l<<2)>>2]=f;H[H[a+100>>2]+(f<<2)>>2]=0}if(b){yE(a,e)}Oa=g+48|0}function Kz(a,b,c){a=a|0;b=b|0;c=c|0;var d=O(0),e=O(0),f=O(0),g=O(0),h=O(0),i=O(0),j=0,k=0,l=0,m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=0,A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),F=O(0),G=O(0),J=O(0),K=O(0),M=0,N=O(0),P=O(0),Q=O(0),R=O(0),S=O(0),T=O(0),U=O(0),V=O(0),X=0,Y=O(0),Z=O(0),_=O(0),$=O(0),aa=O(0),ba=O(0),ca=O(0),da=O(0);Iz(a);c=H[a+124>>2];j=H[a+92>>2];k=H[a+28>>2];l=H[a+60>>2];a:{if(!(j|(k|l))){if(!c){break a}}b=H[a+24>>2];z=H[b+4>>2];if(z){X=I[b|0]==9?368:272;a=b+160|0;while(1){m=I[a+268|0]&2?L[a+252>>2]:O(0);A=O(A+O(m*L[a+140>>2]));n=I[a+264|0]&2?L[a+248>>2]:O(0);B=O(B+O(n*L[a+136>>2]));o=I[a+260|0]&2?L[a+244>>2]:O(0);C=O(C+O(o*L[a+132>>2]));p=I[a+256|0]&2?L[a+240>>2]:O(0);q=O(q+O(p*L[a+128>>2]));D=O(D+O(m*L[a+124>>2]));E=O(E+O(n*L[a+120>>2]));F=O(F+O(o*L[a+116>>2]));r=O(r+O(p*L[a+112>>2]));G=O(G+O(m*L[a+108>>2]));J=O(J+O(n*L[a+104>>2]));K=O(K+O(o*L[a+100>>2]));s=O(s+O(p*L[a+96>>2]));t=O(t+O(m*L[a+44>>2]));f=O(f+O(n*L[a+40>>2]));e=O(e+O(o*L[a+36>>2]));d=O(d+O(p*L[a+32>>2]));u=O(u+O(m*L[a+28>>2]));v=O(v+O(n*L[a+24>>2]));g=O(g+O(o*L[a+20>>2]));h=O(h+O(p*L[a+16>>2]));w=O(w+O(m*L[a+12>>2]));x=O(x+O(n*L[a+8>>2]));y=O(y+O(o*L[a+4>>2]));i=O(i+O(p*L[a>>2]));a=a+X|0;M=M+1|0;if((z|0)!=(M|0)){continue}break}}m=L[b+124>>2];n=L[b+156>>2];o=L[b+140>>2];Y=L[b+44>>2];Z=L[b+28>>2];p=L[b+120>>2];N=L[b+152>>2];P=L[b+136>>2];_=L[b+40>>2];$=L[b+24>>2];Q=L[b+116>>2];R=L[b+148>>2];S=L[b+132>>2];aa=L[b+36>>2];ba=L[b+20>>2];if(k){T=L[b+144>>2];ca=L[b+16>>2];da=L[b+32>>2];U=L[b+112>>2];V=L[b+128>>2];q=O(q-O(O(h*U)-O(i*V)));L[k+24>>2]=q;r=O(r-O(O(i*T)-O(d*U)));L[k+20>>2]=r;s=O(s-O(O(d*V)-O(h*T)));L[k+16>>2]=s;L[k+8>>2]=d;L[k+4>>2]=h;L[k>>2]=i;H[k+12>>2]=(O(W(O(O(q*q)+O(O(s*s)+O(r*r)))))>da|O(W(O(O(d*d)+O(O(h*h)+O(i*i)))))>ca)&I[b+12|0]!=0}if(l){d=O(K-O(O(e*S)-O(g*R)));L[l+16>>2]=d;L[l+8>>2]=e;L[l+4>>2]=g;L[l>>2]=y;h=O(C-O(O(g*Q)-O(y*S)));L[l+24>>2]=h;i=O(F-O(O(y*R)-O(e*Q)));L[l+20>>2]=i;H[l+12>>2]=(O(W(O(O(h*h)+O(O(d*d)+O(i*i)))))>aa|O(W(O(O(e*e)+O(O(g*g)+O(y*y)))))>ba)&I[b+13|0]!=0}if(j){e=O(J-O(O(f*P)-O(v*N)));L[j+16>>2]=e;L[j+8>>2]=f;L[j+4>>2]=v;L[j>>2]=x;d=O(B-O(O(v*p)-O(x*P)));L[j+24>>2]=d;g=O(E-O(O(x*N)-O(f*p)));L[j+20>>2]=g;H[j+12>>2]=(O(W(O(O(d*d)+O(O(e*e)+O(g*g)))))>_|O(W(O(O(f*f)+O(O(v*v)+O(x*x)))))>$)&I[b+14|0]!=0}if(!c){break a}f=O(G-O(O(t*o)-O(u*n)));L[c+16>>2]=f;L[c+8>>2]=t;L[c+4>>2]=u;L[c>>2]=w;e=O(A-O(O(u*m)-O(w*o)));L[c+24>>2]=e;d=O(D-O(O(w*n)-O(t*m)));L[c+20>>2]=d;H[c+12>>2]=(O(W(O(O(e*e)+O(O(f*f)+O(d*d)))))>Y|O(W(O(O(t*t)+O(O(u*u)+O(w*w)))))>Z)&I[b+15|0]!=0}}function vL(a,b,c){a=a|0;b=b|0;c=c|0;var d=O(0),e=O(0),f=O(0),g=O(0),h=0,i=0,j=0,k=0,l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=0,A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),F=O(0),G=O(0),J=O(0),K=O(0),M=O(0),N=O(0),P=O(0),Q=O(0),R=O(0),S=O(0),T=O(0),U=O(0),V=O(0),X=O(0),Y=O(0),Z=O(0),_=O(0),$=O(0),aa=O(0),ba=O(0),ca=O(0),da=O(0);a=(H[a>>2]<<5)+b|0;h=H[a+124>>2];i=H[a+92>>2];j=H[a+28>>2];k=H[a+60>>2];a:{if(!(i|(j|k))){if(!h){break a}}c=H[a+24>>2];z=H[c+4>>2];if(z){b=c+640|0;a=0;while(1){f=I[b+352|0]&2?L[b+304>>2]:O(0);l=O(l+O(f*L[b+160>>2]));A=O(A+O(f*L[b+144>>2]));e=I[b+364|0]&2?L[b+316>>2]:O(0);B=O(B+O(e*L[b+172>>2]));d=I[b+360|0]&2?L[b+312>>2]:O(0);C=O(C+O(d*L[b+168>>2]));g=I[b+356|0]&2?L[b+308>>2]:O(0);D=O(D+O(g*L[b+164>>2]));E=O(E+O(e*L[b+156>>2]));F=O(F+O(d*L[b+152>>2]));G=O(G+O(g*L[b+148>>2]));J=O(J+O(e*L[b+140>>2]));K=O(K+O(d*L[b+136>>2]));M=O(M+O(g*L[b+132>>2]));o=O(o+O(e*L[b+44>>2]));p=O(p+O(d*L[b+40>>2]));m=O(m+O(g*L[b+36>>2]));q=O(q+O(e*L[b+28>>2]));r=O(r+O(d*L[b+24>>2]));s=O(s+O(g*L[b+20>>2]));t=O(t+O(e*L[b+12>>2]));u=O(u+O(d*L[b+8>>2]));v=O(v+O(g*L[b+4>>2]));N=O(N+O(f*L[b+128>>2]));n=O(n+O(f*L[b+32>>2]));w=O(w+O(f*L[b+16>>2]));x=O(x+O(f*L[b>>2]));b=b+368|0;a=a+1|0;if((z|0)!=(a|0)){continue}break}}g=L[c+140>>2];P=L[c+156>>2];Q=L[c+124>>2];R=L[c+44>>2];S=L[c+28>>2];T=L[c+136>>2];U=L[c+152>>2];V=L[c+120>>2];X=L[c+40>>2];Y=L[c+24>>2];Z=L[c+132>>2];_=L[c+148>>2];$=L[c+116>>2];aa=L[c+36>>2];ba=L[c+20>>2];if(j){e=L[c+128>>2];ca=L[c+16>>2];da=L[c+32>>2];y=l;d=O(w*L[c+112>>2]);l=O(x*L[c+144>>2]);f=O(y-O(d-l));L[j+24>>2]=f;y=l;l=O(n*e);e=O(A-O(y-l));L[j+20>>2]=e;d=O(N-O(l-d));L[j+16>>2]=d;L[j+8>>2]=n;L[j+4>>2]=w;L[j>>2]=x;H[j+12>>2]=(O(W(O(O(f*f)+O(O(d*d)+O(e*e)))))>da|O(W(O(O(n*n)+O(O(w*w)+O(x*x)))))>ca)&I[c+12|0]!=0}if(k){d=O(m*Z);e=O(s*$);f=O(M-O(d-e));L[k+16>>2]=f;L[k+8>>2]=m;L[k+4>>2]=s;L[k>>2]=v;n=O(v*_);e=O(D-O(e-n));L[k+24>>2]=e;d=O(G-O(n-d));L[k+20>>2]=d;H[k+12>>2]=(O(W(O(O(e*e)+O(O(f*f)+O(d*d)))))>aa|O(W(O(O(m*m)+O(O(s*s)+O(v*v)))))>ba)&I[c+13|0]!=0}if(i){d=O(p*T);e=O(r*V);f=O(K-O(d-e));L[i+16>>2]=f;L[i+8>>2]=p;L[i+4>>2]=r;L[i>>2]=u;m=O(u*U);e=O(C-O(e-m));L[i+24>>2]=e;d=O(F-O(m-d));L[i+20>>2]=d;H[i+12>>2]=(O(W(O(O(e*e)+O(O(f*f)+O(d*d)))))>X|O(W(O(O(p*p)+O(O(r*r)+O(u*u)))))>Y)&I[c+14|0]!=0}if(!h){break a}d=O(o*g);e=O(q*Q);f=O(J-O(d-e));L[h+16>>2]=f;L[h+8>>2]=o;L[h+4>>2]=q;L[h>>2]=t;g=O(t*P);e=O(B-O(e-g));L[h+24>>2]=e;d=O(E-O(g-d));L[h+20>>2]=d;H[h+12>>2]=(O(W(O(O(e*e)+O(O(f*f)+O(d*d)))))>R|O(W(O(O(o*o)+O(O(q*q)+O(t*t)))))>S)&I[c+15|0]!=0}}function oQ(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,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;b=H[a+28>>2];t=H[a+20>>2];a=0;d=Oa-48|0;Oa=d;q=H[b+4712>>2];r=H[H[b+980>>2]+304>>2];c=H[b+4708>>2];if(c){while(1){if(H[c+180>>2]){f=H[H[b+2168>>2]+108>>2];H[d+16>>2]=H[b+2184>>2];H[d+20>>2]=H[b+2172>>2];H[d+24>>2]=H[b+2176>>2];e=H[b+2188>>2];H[d+32>>2]=f;H[d+28>>2]=e;H[d+36>>2]=H[b+2192>>2];H[d+40>>2]=H[b+2196>>2];f=0;while(1){j=(f<<2)+c|0;e=H[j+104>>2];if(e){n=f<<5;while(1){g=H[c+32>>2];m=f7(e);o=m|n;l=g+N(o,12)|0;g=H[l+4>>2];i=H[l>>2];l=H[i+4>>2];k=g;g=H[g+4>>2];dI(d+8|0,d+16|0,i,k,I[H[l+44>>2]+9|0]-1>>>0<2?l:0,I[H[g+44>>2]+9|0]-1>>>0<2?g:0,-1,1);g=H[c+168>>2]+(o<<3)|0;G[g>>1]=J[d+8>>1];G[g+2>>1]=J[d+10>>1];H[g+4>>2]=H[d+12>>2];g=J[d+8>>1];if(!(g&1)){a:{if(!(g&2)){H[c+172>>2]=H[c+172>>2]+1;break a}H[c+176>>2]=H[c+176>>2]+1}H[j+40>>2]=H[j+40>>2]|1<>2]+a|0;h=H[c+172>>2]+h|0;c=H[c+184>>2];if(c){continue}break}}c=h+1|0;if(c>>>0>(H[b+4680>>2]&2147483647)>>>0){tO(b+4672|0,c)}if(c>>>0>(H[b+4692>>2]&2147483647)>>>0){uO(b+4684|0,c)}c=a+1|0;if(c>>>0>(H[b+4704>>2]&2147483647)>>>0){vO(b+4696|0,c)}H[b+4700>>2]=a;H[b+4688>>2]=h;H[b+4676>>2]=h;g=H[b+4672>>2];l=H[b+4684>>2];n=H[b+4696>>2];o=H[H[b+976>>2]+1156>>2];a=yq(o,56);f=H[b+2168>>2];e=H[b+16>>2];h=H[b+20>>2];c=0;H[a+24>>2]=0;H[a+16>>2]=0;H[a+20>>2]=0;H[a+8>>2]=e;H[a+12>>2]=h;H[a+52>>2]=0;H[a+48>>2]=n;H[a+44>>2]=l;H[a+40>>2]=g;H[a+36>>2]=q;H[a+32>>2]=r;H[a+28>>2]=f;H[a>>2]=120364;H[d+16>>2]=0;H[d+8>>2]=0;f=H[b+4708>>2];b:{if(!f){break b}m=0;j=0;while(1){c:{if(!(H[f+176>>2]?1:H[f+172>>2])){break c}h=0;while(1){e=H[((h<<2)+f|0)+40>>2];if(e){v=h<<5;while(1){i=f7(e)|v;if(i+u>>>0>c>>>0){p=H[f+32>>2]+N(i,12)|0;w=H[p+4>>2];k=N(c,12)+r|0;H[k>>2]=H[p>>2];H[k+4>>2]=w;H[k+8>>2]=H[p+8>>2];k=(c<<3)+q|0;i=H[f+168>>2]+(i<<3)|0;G[k>>1]=J[i>>1];G[k+2>>1]=J[i+2>>1];H[k+4>>2]=H[i+4>>2]}j=j+1|0;c=c+1|0;e=e-1&e;if(e){continue}break}}h=h+1|0;if((h|0)!=16){continue}break}m=H[f+172>>2]+m|0;s=H[f+176>>2]+s|0;if(j>>>0<=255){break c}VO(m,d+8|0,s,d+16|0,j,H[b+976>>2],H[b+2168>>2],a,t,g,l,n);a=yq(o,56);e=H[b+2168>>2];h=H[b+16>>2];i=H[b+20>>2];k=H[d+8>>2];p=H[d+16>>2];j=0;H[a+24>>2]=0;H[a+16>>2]=0;H[a+20>>2]=0;H[a+8>>2]=h;H[a+12>>2]=i;H[a+52>>2]=0;H[a+36>>2]=(c<<3)+q;H[a+32>>2]=N(c,12)+r;H[a+28>>2]=e;H[a>>2]=120364;H[a+48>>2]=n+(p<<2);e=k<<2;H[a+44>>2]=e+l;H[a+40>>2]=e+g}u=u+512|0;f=H[f+184>>2];if(f){continue}break}if(!j){break b}VO(m,d+8|0,s,d+16|0,j,H[b+976>>2],H[b+2168>>2],a,t,g,l,n)}Oa=d+48|0}function BK(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;c=H[a+88>>2];a:{if(K[c>>2]<=b>>>0){o5(H[33808],4,10568,2139,57927,0);a=0;break a}t=H[c+12>>2];k=t+N(b,40)|0;l=H[k+28>>2];b:{if(!l){o5(H[33808],4,10568,2149,57927,0);break b}H[k+4>>2]=2134900735;H[k+8>>2]=2134900735;H[k+20>>2]=12582912;H[k+24>>2]=12582912;H[k+12>>2]=2134900735;H[k+16>>2]=12582912;u=H[l+68>>2];if(u){v=H[l+76>>2];while(1){o=H[((p<<3)+v|0)+4>>2];if((o|0)!=-1){f=0;q=0;i=Oa-1040|0;Oa=i;n=H[c+24>>2];h=o>>>2|0;a=n+N(h,12)|0;r=a;s=H[c+12>>2];c:{d:{j=J[a+4>>1];if((j|0)==1){a=a+8|0}else{if(!j){break d}a=H[(c+N(j,12)|0)+92>>2]+(H[a+8>>2]<<2)|0}m=j&1;e:{if((j|0)==1){e=0;break e}d=j&65534;e=0;while(1){g=(e<<2)+a|0;if(H[(s+N(J[g+2>>1],40)|0)+28>>2]!=(l|0)){H[(f<<2)+i>>2]=J[g>>1]|J[g+2>>1]<<16;f=f+1|0}g=((e|1)<<2)+a|0;if(H[(s+N(J[g+2>>1],40)|0)+28>>2]!=(l|0)){H[(f<<2)+i>>2]=J[g>>1]|J[g+2>>1]<<16;f=f+1|0}e=e+2|0;q=q+2|0;if((d|0)!=(q|0)){continue}break}}f:{if(!m){break f}a=(e<<2)+a|0;if(H[(s+N(J[a+2>>1],40)|0)+28>>2]==(l|0)){break f}H[(f<<2)+i>>2]=J[a>>1]|J[a+2>>1]<<16;f=f+1|0}if(j>>>0>=2){d=H[(n+N(h,12)|0)+8>>2];a=(c+(j<<2)|0)+3176|0;H[H[(c+N(j,12)|0)+92>>2]+(d<<2)>>2]=H[a>>2];H[a>>2]=d}g:{switch(f|0){case 1:H[(n+N(h,12)|0)+8>>2]=H[i>>2];G[r+4>>1]=f;break c;case 0:break d;default:break g}}g=c+N(f,12)|0;m=g+92|0;a=(c+(f<<2)|0)+3176|0;d=H[a>>2];h:{if((d|0)!=-1){H[(n+N(h,12)|0)+8>>2]=d;e=H[m>>2]+(d<<2)|0;H[a>>2]=H[e>>2];break h}e=H[g+96>>2];H[(n+N(h,12)|0)+8>>2]=e;d=(f&1073741823)+e|0;a=H[g+100>>2]&2147483647;i:{if(d>>>0<=a>>>0){break i}h=a;a=a?a<<1:2;a=a>>>0>d>>>0?a:d;if(h>>>0>=a>>>0){break i}Dv(m,a);e=H[g+96>>2]}a=H[m>>2];H[g+96>>2]=d;e=a+(e<<2)|0}R6(e,i,f<<2);G[r+4>>1]=f;break c}G[r+4>>1]=0;a=n+N(h,12)|0;H[a+8>>2]=o;d=H[a>>2];H[i+1036>>2]=d;a=H[c+4208>>2];j:{if(a>>>0>=(H[c+4212>>2]&2147483647)>>>0){qm(c+4204|0,i+1036|0);break j}H[H[c+4204>>2]+(a<<2)>>2]=d;H[c+4208>>2]=H[c+4208>>2]+1}m=o>>>7|0;k:{if(m>>>0>2]){f=h&31;e=H[c+4216>>2];break k}d=0;a=H[33808];f=h&31;g=(h+128>>>5|0)+((f|0)!=0)|0;e=Ra[H[H[a+12>>2]+8>>2]](a+12|0,g<<2,20591,10568,274)|0;a=H[c+4220>>2];if(a){R6(e,H[c+4216>>2],a<<2);d=H[c+4220>>2]}a=g-d|0;if(a){S6((d<<2)+e|0,0,a<<2)}d=H[c+4216>>2];if(d){a=H[33808];Ra[H[H[a+12>>2]+12>>2]](a+12|0,d)}H[c+4220>>2]=g;H[c+4216>>2]=e}a=(m<<2)+e|0;H[a>>2]=H[a>>2]|1<>2]+12>>2]](a+12|0,d);H[k+28>>2]=0;H[(N(b,40)+t|0)+36>>2]=H[c+8>>2];H[c+8>>2]=b;tK(H[c>>2],H[c+12>>2])}a=(l|0)!=0}return a|0}function zI(a,b,c,d,e,f){var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;h=Oa+-64|0;Oa=h;n=I[b+24|0];if(n>>>0<=2){k=H[b+32>>2];l=H[b+28>>2];a:{if(c){g=J[c>>1];G[h+56>>1]=g;i=J[c+2>>1];c=H[c+4>>2];H[h+60>>2]=c;if((g&13)==13){oI(H[a>>2],l,k,c,0);j=H[a+108>>2];H[H[j>>2]+(c<<2)>>2]=H[j+12>>2];H[j+12>>2]=c;H[h+60>>2]=-1;c=-1}m=H[k+4>>2];m=I[H[m+44>>2]+9|0]-1>>>0<2?m:0;j=H[l+4>>2];j=I[H[j+44>>2]+9|0]-1>>>0<2?j:0;if(!(!j|g&3|(!(F[H[j+44>>2]+44|0]&1)|!m))){i=F[H[m+44>>2]+44|0]&1?i&1?i&-2:i:i}G[h+58>>1]=i;break a}c=-1;if(I[b+25|0]&16){c=H[b+36>>2];oI(H[a>>2],l,k,c,0)}i=H[a+108>>2];g=H[a>>2];H[h+24>>2]=H[g+2184>>2];H[h+28>>2]=H[g+2172>>2];H[h+32>>2]=H[g+2176>>2];j=H[g+2188>>2];H[h+40>>2]=i;H[h+36>>2]=j;H[h+44>>2]=H[g+2192>>2];H[h+48>>2]=H[g+2196>>2];gI(h+8|0,h+24|0,l,k,c,h+23|0,1);g=J[h+8>>1];G[h+56>>1]=g;i=J[h+10>>1];G[h+58>>1]=i;c=H[h+12>>2];H[h+60>>2]=c}j=I[b+25|0];b:{if(!(j&16)|(g&12)==12){break b}F[b+25|0]=j&239;if((c|0)==-1){break b}j=H[a+108>>2];H[H[j>>2]+(c<<2)>>2]=H[j+12>>2];H[j+12>>2]=c;H[h+60>>2]=-1}c=6;c:{if(g&1){break c}c=2;if(g&2){break c}c=1;if(I[H[l+28>>2]- -64|0]&4){break c}c=I[H[k+28>>2]- -64|0]>>>2&1}d:{if((c|0)!=I[b+24|0]){l=Oa-16|0;Oa=l;i=H[b+32>>2];k=H[b+28>>2];g=H[b+4>>2];if(!(I[H[g+44>>2]+9|0]!=1|K[g+152>>2]<4294967294)){qG(g)}g=H[b+8>>2];if(!(I[H[g+44>>2]+9|0]!=1|K[g+152>>2]<4294967294)){qG(g)}F[b+25|0]=I[b+25|0]&239;g=0;nI(a,b,5,0,d,e,f);e:{f:{switch(c|0){case 2:g=H[a+1860>>2];if(!g){tI(a+1572|0);g=H[a+1860>>2]}H[a+1860>>2]=H[g>>2];b=a+1852|0;H[b>>2]=H[b>>2]+1;uI(g,k,i,0);break e;case 0:G[l+8>>1]=J[h+58>>1];g=rI(a,k,i,l+8|0,0,0);break e;case 1:break f;default:break e}}b=I[H[i+28>>2]- -64|0]&4;c=J[h+58>>1];g=H[a+1276>>2];if(!g){sI(a+988|0);g=H[a+1276>>2]}H[a+1276>>2]=H[g>>2];d=a+1268|0;H[d>>2]=H[d>>2]+1;mR(g,b?i:k,b?k:i);G[g+56>>1]=J[g+56>>1]&65504|c&20}b=H[h+60>>2];if((b|0)!=-1){F[g+25|0]=I[g+25|0]|16;H[H[H[a+108>>2]>>2]+(b<<2)>>2]=g;H[g+36>>2]=b}Oa=l+16|0;b=g;break d}g:{switch(n|0){case 0:c=i&65535;e=H[b+44>>2];h:{if((c|0)==(e&32767)){break h}i:{if(!(c&476)|e&476){break i}d=H[b+48>>2];if(F[d|0]&1?d:0){break i}d=xI(a,l,k,1);if(H[b+48>>2]){break i}G[d+4>>1]=J[d+4>>1]+1;H[b+48>>2]=d}d=H[b+44>>2];j:{if(!(d&6291456)|c&8){break j}if(d&2097152){AI(a,b);break j}H[b+44>>2]=d&-4194305}if(c&448){if(!(I[b+45|0]&128)|(!(I[b+25|0]&32)|H[b+52>>2]!=-1)){break h}BI(a,b);break h}if(!(e&448)){break h}c=H[b+44>>2];H[b+44>>2]=c&-1572865;if(!(c&8388608)){break h}CI(a,b)}H[b+44>>2]=H[b+44>>2]&-32768|i&32767;break d;case 1:break g;default:break d}}G[b+56>>1]=J[b+56>>1]&65504|i&20}g=b}Oa=h- -64|0;return g}function LB(a,b,c,d,e,f){var g=O(0),h=0,i=O(0),j=0,k=O(0),l=0,m=O(0),n=O(0),o=O(0),p=O(0),q=0,r=O(0),s=0,t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=0,B=0,C=0;q=Oa-32|0;Oa=q;h=H[a+584>>2];if(!h){MB(a+296|0);h=H[a+584>>2]}H[a+584>>2]=H[h>>2];H[a+576>>2]=H[a+576>>2]+1;C=h+48|0;j=H[a+292>>2];if(!j){NB(a+4|0);j=H[a+292>>2]}H[a+292>>2]=H[j>>2];H[a+284>>2]=H[a+284>>2]+1;i=L[b+20>>2];k=L[b+24>>2];m=L[d>>2];n=L[b>>2];o=L[e>>2];p=L[b+16>>2];t=L[d+4>>2];u=L[b+4>>2];v=L[e+4>>2];w=L[d+8>>2];x=L[b+8>>2];y=L[e+8>>2];z=L[b+12>>2];r=L[d+12>>2];z=r>z?z:r;r=L[b+28>>2];g=L[e+12>>2];r=g>2]=O(z+r)*O(.5);w=w>x?x:w;x=k>y?k:y;L[q+24>>2]=O(w+x)*O(.5);t=t>u?u:t;u=i>v?i:v;L[q+20>>2]=O(t+u)*O(.5);v=m>n?n:m;y=o>2]=O(v+y)*O(.5);i=O(y-v);L[q>>2]=i;k=O(u-t);L[q+4>>2]=k;d=i>2];H[h+80>>2]=b;H[h+32>>2]=b;l=H[b+36>>2];H[h+88>>2]=0;H[h+84>>2]=j;H[h+40>>2]=0;H[h+36>>2]=l;H[j>>2]=0;a:{b:{c:{a=H[l>>2];d:{if(!a){break d}e=i>2];while(1){a=a-1|0;s=l+(a<<2)|0;A=H[s+4>>2];B=d+(N(A,24)+f|0)|0;if(i>=O(O(L[B>>2]+L[B+12>>2])*O(.5))){B=H[j>>2];H[j>>2]=B+1;H[((B<<2)+j|0)+4>>2]=A;A=H[l>>2]-1|0;H[l>>2]=A;H[s+4>>2]=H[(l+(A<<2)|0)+4>>2]}if(a){continue}break}a=H[l>>2];if(!a){break d}d=H[j>>2];if((d|0)!=4){break c}}H[l>>2]=1;a=l+4|0;break b}if((a|0)==4){H[j>>2]=1;a=j+4|0;d=C;break a}s=e<<2;e=s+(N(c,24)+f|0)|0;if(L[(s|q+16)>>2]>=O(O(L[e>>2]+L[e+12>>2])*O(.5))){H[j>>2]=d+1;a=((d<<2)+j|0)+4|0;d=C;break a}H[l>>2]=a+1;a=(l+(a<<2)|0)+4|0}d=h}s=d;H[a>>2]=c;e=1;a=N(H[l+4>>2],24)+f|0;i=L[a+12>>2];k=L[a+8>>2];m=L[a+4>>2];n=L[a>>2];o=L[a+20>>2];p=L[a+16>>2];c=H[l>>2];if(c>>>0>1){while(1){a=N(H[(l+(e<<2)|0)+4>>2],24)+f|0;g=L[a+12>>2];i=g>2];k=g>k?k:g;g=L[a+4>>2];m=g>m?m:g;g=L[a>>2];n=g>n?n:g;g=L[a+20>>2];o=g>2];p=g>2]=0;L[h+24>>2]=o;L[h+20>>2]=p;L[h+16>>2]=i;H[h+12>>2]=0;L[h+8>>2]=k;L[h+4>>2]=m;L[h>>2]=n;d=1;a=N(H[j+4>>2],24)+f|0;i=L[a+12>>2];k=L[a+8>>2];m=L[a+4>>2];n=L[a>>2];o=L[a+20>>2];p=L[a+16>>2];c=H[j>>2];if(c>>>0>1){while(1){a=N(H[((d<<2)+j|0)+4>>2],24)+f|0;g=L[a+12>>2];i=g>2];k=g>k?k:g;g=L[a+4>>2];m=g>m?m:g;g=L[a>>2];n=g>n?n:g;g=L[a+20>>2];o=g>2];p=g>2]=0;L[h+72>>2]=o;L[h+68>>2]=p;L[h+64>>2]=i;H[h+60>>2]=0;L[h+56>>2]=k;L[h+52>>2]=m;L[h+48>>2]=n;H[b+40>>2]=C;H[b+36>>2]=h;L[b+28>>2]=r;L[b+24>>2]=x;L[b+20>>2]=u;L[b+16>>2]=y;L[b+12>>2]=z;L[b+8>>2]=w;L[b+4>>2]=t;L[b>>2]=v;OB(b);Oa=q+32|0;return s}function GP(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,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,K=0,L=0,M=0,O=0,P=0,Q=0;b=H[a+28>>2];A=H[a+32>>2];B=H[a+168>>2];C=a+40|0;D=a+104|0;d=Oa-48|0;Oa=d;s=H[a+36>>2];if(s){E=d|2;b=H[b>>2];K=H[b+2196>>2];L=H[b+2192>>2];M=H[b+2188>>2];O=H[b+2176>>2];P=H[b+2172>>2];Q=H[b+2184>>2];while(1){b=N(j,12)+A|0;t=H[b+4>>2];u=H[b>>2];h=H[u+4>>2];b=H[h+44>>2];k=I[b+9|0];p=H[(k<<2)+79004>>2]>>>1|0;a:{if(!k){v=0;l=0;b=0;break a}l=F[b+44|0]&1;p=l<<4|p;v=!l;b=h}g=b;i=H[t+4>>2];b=H[i+44>>2];o=I[b+9|0];q=H[(o<<2)+79004>>2]>>>1|0;b:{if(!o){w=0;m=0;b=0;break b}m=F[b+44|0]&1;q=m<<4|q;w=!m;b=i}r=(j<<3)+B|0;c:{d:{e:{if(!(l|m)){break e}if(!g|!b?K:0){break d}if(!L|!l){break e}if(m){break d}}f:{g:{if(g){if(!(F[g+149|0]&1)){break f}e=H[i+28>>2];f=H[g+28>>2];c=e>>>0>>0;f=c?e:f;if(!f){break f}n=c?g:i;c=H[(c?i:g)+20>>2];while(1){e=H[c>>2];if(I[e+20|0]==4&((n|0)==H[e>>2]|(n|0)==H[e+4>>2])){break g}c=c+4|0;f=f-1|0;if(f){continue}break}break f}if(!b|!(F[b+149|0]&1)){break f}e=H[h+28>>2];f=H[b+28>>2];c=e>>>0>>0;f=c?e:f;if(!f){break f}n=c?b:h;c=H[(c?h:b)+20>>2];while(1){e=H[c>>2];if(I[e+20|0]==4&((n|0)==H[e>>2]|(n|0)==H[e+4>>2])){break g}c=c+4|0;f=f-1|0;if(f){continue}break}break f}if(!(I[H[H[e+24>>2]+52>>2]]&8)){break d}}h:{if(((k|0)==2|0)==((o|0)==2|0)){break h}if(!I[H[g+100>>2]+159|0]|w?0:g){break d}if(!b){break h}if(!(!I[H[b+100>>2]+159|0]|v)){break d}}i:{j:{if((k|0)!=2|(o|0)!=2){break j}if(I[H[b+100>>2]+159|0]?I[H[g+100>>2]+159|0]:0){break d}e=H[h+28>>2];if(!e){break j}c=H[h+20>>2];while(1){b=H[c>>2];if(I[b+20|0]==5&(H[b>>2]==(i|0)|H[b+4>>2]==(i|0))){break i}c=c+4|0;e=e-1|0;if(e){continue}break}}b=H[u+28>>2];g=H[t+28>>2];H[d>>2]=0;H[d+4>>2]=-1;h=H[g+16>>2];i=H[g+20>>2];c=H[g+24>>2];g=H[g+28>>2];e=H[b+16>>2];f=H[b+20>>2];k=H[b+28>>2];H[d+32>>2]=H[b+24>>2];H[d+36>>2]=k;H[d+24>>2]=e;H[d+28>>2]=f;H[d+16>>2]=c;H[d+20>>2]=g;H[d+8>>2]=h;H[d+12>>2]=i;Ra[Q|0](d+40|0,p,d+24|0,q,d+8|0,E,P,O);c=J[d+40>>1];k:{if(c&4){if(M){break k}G[d>>1]=c&65523;o5(H[33808],2,9058,318,60492,0);c=J[d>>1]}c=(c&3)==3?c&-2:c}b=J[d+2>>1];if(c&4){break c}b=J[d+2>>1];if(c&3){break c}b=l?m?b&1?b&-2:b:b:b;break c}H[d>>2]=1;H[d+4>>2]=-1;c=1;b=0;break c}H[d>>2]=2;H[d+4>>2]=-1;c=2;b=0}G[r+2>>1]=b;G[r>>1]=c;H[r+4>>2]=H[d+4>>2];if(!(c&1)){l:{if(c&4){x=x+1|0;b=D;break l}b=c>>>1&1;y=b+y|0;z=!b+z|0;b=C}b=b+(j>>>3&536870908)|0;H[b>>2]=H[b>>2]|1<>2]=z;H[a+176>>2]=y;H[a+180>>2]=x;Oa=d+48|0}function ji(a,b,c,d){var e=O(0),f=O(0),g=O(0),h=O(0),i=0,j=O(0),k=O(0),l=O(0),m=0,n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=0,E=O(0);i=Oa-32|0;Oa=i;a:{b:{switch(d|0){case 0:D=a+48|0;if(b){g=L[b>>2];f=L[b+4>>2];if(F[a+316|0]&1){e=L[H[a+56>>2]+92>>2]}else{d=a- -64|0;m=H[d+176>>2];c:{if(!(!m|I[m+31|0]!=1)){e=L[m+44>>2];break c}e=L[d+140>>2]}}L[i+24>>2]=e*L[b+8>>2];L[i+20>>2]=e*f;L[i+16>>2]=e*g;b=i+16|0}else{b=0}d=b;if(c){u=L[c+8>>2];n=u;h=L[a+256>>2];j=O(h+h);k=L[a+264>>2];f=O(j*k);l=L[a+260>>2];g=O(l+l);p=L[a+268>>2];e=O(g*p);q=O(f-e);if(I[a+316|0]&2){b=H[a+56>>2]+96|0}else{b=a- -64|0;m=H[b+176>>2];d:{if(!(!m|I[m+31|0]!=1)){b=m+32|0;break d}b=b+128|0}}o=L[b+8>>2];A=O(f+e);v=O(o*A);B=O(O(1)-O(h*j));e=O(l*g);s=O(B-e);w=L[b>>2];f=O(O(1)-e);e=O(k+k);r=O(k*e);C=O(f-r);x=O(w*C);h=O(g*k);g=O(j*p);t=O(h+g);y=L[b+4>>2];f=O(j*l);e=O(e*p);p=O(f-e);z=O(y*p);k=O(O(v*s)+O(O(x*q)+O(t*z)));E=O(n*O(O(O(o*s)*s)+O(O(O(w*q)*q)+O(t*O(t*y)))));j=L[c>>2];l=L[c+4>>2];n=o;o=O(h-g);h=O(n*o);n=O(f+e);g=O(w*n);r=O(B-r);f=O(y*r);e=O(O(h*s)+O(O(g*q)+O(t*f)));L[i+8>>2]=E+O(O(j*k)+O(l*e));q=O(u*e);e=O(O(v*o)+O(O(x*n)+O(r*z)));L[i+4>>2]=q+O(O(j*e)+O(l*O(O(h*o)+O(O(g*n)+O(r*f)))));L[i>>2]=O(u*k)+O(O(j*O(O(v*A)+O(O(x*C)+O(p*z))))+O(l*e));a=i}else{a=0}ki(D,d,a);break a;case 3:ki(a+48|0,b,c);break a;case 1:D=a+48|0;if(b){g=L[b>>2];f=L[b+4>>2];if(F[a+316|0]&1){e=L[H[a+56>>2]+92>>2]}else{d=a- -64|0;m=H[d+176>>2];e:{if(!(!m|I[m+31|0]!=1)){e=L[m+44>>2];break e}e=L[d+140>>2]}}L[i+24>>2]=e*L[b+8>>2];L[i+20>>2]=e*f;L[i+16>>2]=e*g;b=i+16|0}else{b=0}d=b;if(c){u=L[c+8>>2];n=u;h=L[a+256>>2];j=O(h+h);k=L[a+264>>2];f=O(j*k);l=L[a+260>>2];g=O(l+l);p=L[a+268>>2];e=O(g*p);q=O(f-e);if(I[a+316|0]&2){b=H[a+56>>2]+96|0}else{b=a- -64|0;m=H[b+176>>2];f:{if(!(!m|I[m+31|0]!=1)){b=m+32|0;break f}b=b+128|0}}o=L[b+8>>2];A=O(f+e);v=O(o*A);B=O(O(1)-O(h*j));e=O(l*g);s=O(B-e);w=L[b>>2];f=O(O(1)-e);e=O(k+k);r=O(k*e);C=O(f-r);x=O(w*C);h=O(g*k);g=O(j*p);t=O(h+g);y=L[b+4>>2];f=O(j*l);e=O(e*p);p=O(f-e);z=O(y*p);k=O(O(v*s)+O(O(x*q)+O(t*z)));E=O(n*O(O(O(o*s)*s)+O(O(O(w*q)*q)+O(t*O(t*y)))));j=L[c>>2];l=L[c+4>>2];n=o;o=O(h-g);h=O(n*o);n=O(f+e);g=O(w*n);r=O(B-r);f=O(y*r);e=O(O(h*s)+O(O(g*q)+O(t*f)));L[i+8>>2]=E+O(O(j*k)+O(l*e));q=O(u*e);e=O(O(v*o)+O(O(x*n)+O(r*z)));L[i+4>>2]=q+O(O(j*e)+O(l*O(O(h*o)+O(O(g*n)+O(r*f)))));L[i>>2]=O(u*k)+O(O(j*O(O(v*A)+O(O(x*C)+O(p*z))))+O(l*e));a=i}else{a=0}gi(D,d,a);break a;case 2:break b;default:break a}}gi(a+48|0,b,c)}Oa=i+32|0}function di(a,b,c,d){var e=O(0),f=O(0),g=O(0),h=O(0),i=0,j=O(0),k=O(0),l=O(0),m=0,n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=0,E=O(0);i=Oa-32|0;Oa=i;a:{b:{switch(d|0){case 0:D=a+48|0;if(b){g=L[b>>2];f=L[b+4>>2];if(F[a+316|0]&1){e=L[H[a+56>>2]+92>>2]}else{d=a- -64|0;m=H[d+176>>2];c:{if(!(!m|I[m+31|0]!=1)){e=L[m+44>>2];break c}e=L[d+140>>2]}}L[i+24>>2]=e*L[b+8>>2];L[i+20>>2]=e*f;L[i+16>>2]=e*g;b=i+16|0}else{b=0}d=b;if(c){u=L[c+8>>2];n=u;h=L[a+256>>2];j=O(h+h);k=L[a+264>>2];f=O(j*k);l=L[a+260>>2];g=O(l+l);p=L[a+268>>2];e=O(g*p);q=O(f-e);if(I[a+316|0]&2){b=H[a+56>>2]+96|0}else{b=a- -64|0;m=H[b+176>>2];d:{if(!(!m|I[m+31|0]!=1)){b=m+32|0;break d}b=b+128|0}}o=L[b+8>>2];A=O(f+e);v=O(o*A);B=O(O(1)-O(h*j));e=O(l*g);s=O(B-e);w=L[b>>2];f=O(O(1)-e);e=O(k+k);r=O(k*e);C=O(f-r);x=O(w*C);h=O(g*k);g=O(j*p);t=O(h+g);y=L[b+4>>2];f=O(j*l);e=O(e*p);p=O(f-e);z=O(y*p);k=O(O(v*s)+O(O(x*q)+O(t*z)));E=O(n*O(O(O(o*s)*s)+O(O(O(w*q)*q)+O(t*O(t*y)))));j=L[c>>2];l=L[c+4>>2];n=o;o=O(h-g);h=O(n*o);n=O(f+e);g=O(w*n);r=O(B-r);f=O(y*r);e=O(O(h*s)+O(O(g*q)+O(t*f)));L[i+8>>2]=E+O(O(j*k)+O(l*e));q=O(u*e);e=O(O(v*o)+O(O(x*n)+O(r*z)));L[i+4>>2]=q+O(O(j*e)+O(l*O(O(h*o)+O(O(g*n)+O(r*f)))));L[i>>2]=O(u*k)+O(O(j*O(O(v*A)+O(O(x*C)+O(p*z))))+O(l*e));a=i}else{a=0}fi(D,d,a);break a;case 3:fi(a+48|0,b,c);break a;case 1:D=a+48|0;if(b){g=L[b>>2];f=L[b+4>>2];if(F[a+316|0]&1){e=L[H[a+56>>2]+92>>2]}else{d=a- -64|0;m=H[d+176>>2];e:{if(!(!m|I[m+31|0]!=1)){e=L[m+44>>2];break e}e=L[d+140>>2]}}L[i+24>>2]=e*L[b+8>>2];L[i+20>>2]=e*f;L[i+16>>2]=e*g;b=i+16|0}else{b=0}d=b;if(c){u=L[c+8>>2];n=u;h=L[a+256>>2];j=O(h+h);k=L[a+264>>2];f=O(j*k);l=L[a+260>>2];g=O(l+l);p=L[a+268>>2];e=O(g*p);q=O(f-e);if(I[a+316|0]&2){b=H[a+56>>2]+96|0}else{b=a- -64|0;m=H[b+176>>2];f:{if(!(!m|I[m+31|0]!=1)){b=m+32|0;break f}b=b+128|0}}o=L[b+8>>2];A=O(f+e);v=O(o*A);B=O(O(1)-O(h*j));e=O(l*g);s=O(B-e);w=L[b>>2];f=O(O(1)-e);e=O(k+k);r=O(k*e);C=O(f-r);x=O(w*C);h=O(g*k);g=O(j*p);t=O(h+g);y=L[b+4>>2];f=O(j*l);e=O(e*p);p=O(f-e);z=O(y*p);k=O(O(v*s)+O(O(x*q)+O(t*z)));E=O(n*O(O(O(o*s)*s)+O(O(O(w*q)*q)+O(t*O(t*y)))));j=L[c>>2];l=L[c+4>>2];n=o;o=O(h-g);h=O(n*o);n=O(f+e);g=O(w*n);r=O(B-r);f=O(y*r);e=O(O(h*s)+O(O(g*q)+O(t*f)));L[i+8>>2]=E+O(O(j*k)+O(l*e));q=O(u*e);e=O(O(v*o)+O(O(x*n)+O(r*z)));L[i+4>>2]=q+O(O(j*e)+O(l*O(O(h*o)+O(O(g*n)+O(r*f)))));L[i>>2]=O(u*k)+O(O(j*O(O(v*A)+O(O(x*C)+O(p*z))))+O(l*e));a=i}else{a=0}gi(D,d,a);break a;case 2:break b;default:break a}}gi(a+48|0,b,c)}Oa=i+32|0}function OE(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;f=Oa-16|0;Oa=f;b=H[a+60>>2];k=H[a+244>>2];g=H[a+40>>2];d=H[a+152>>2];if(d){j=H[a+148>>2];while(1){e=H[j+(c<<2)>>2];i=(e>>>0)/(b>>>0)|0;e=H[(i<<2)+g>>2]+(e-N(b,i)<<4)|0;G[e+4>>1]=J[e+4>>1]&65471;c=c+1|0;if((d|0)!=(c|0)){continue}break}g=H[a+40>>2];b=H[a+60>>2]}d=H[a+164>>2];if(d){j=H[a+160>>2];c=0;while(1){e=H[j+(c<<2)>>2];i=(e>>>0)/(b>>>0)|0;e=H[(i<<2)+g>>2]+(e-N(b,i)<<4)|0;G[e+4>>1]=J[e+4>>1]&65471;c=c+1|0;if((d|0)!=(c|0)){continue}break}}g=0;H[a+164>>2]=0;H[a+152>>2]=0;a:{b:{if(H[a+328>>2]){i=a+136|0;j=a+240|0;while(1){b=H[H[a+324>>2]+(g<<2)>>2];H[f>>2]=b;c=b>>>7|0;h=c<<2;b=H[h+H[a+204>>2]>>2];d=H[a+16>>2]+N(c,24)|0;e=I[d+4|0]&-33;F[d+4|0]=e;c:{if((b|0)!=-1){e=1<>2]+(b>>>3&536870908)|0;if(!(e&H[d>>2])){H[f+8>>2]=b;c=H[a+88>>2];H[d>>2]=e|H[d>>2];c=c+N(b,44)|0;b=H[a+244>>2];H[c+16>>2]=b;d:{if(b>>>0>=(H[a+248>>2]&2147483647)>>>0){qm(j,f+8|0);break d}H[H[a+240>>2]+(b<<2)>>2]=H[f+8>>2];H[a+244>>2]=H[a+244>>2]+1}c=H[f>>2]>>>7|0}H[H[a+28>>2]+(c<<2)>>2]=33554431;ME(a,H[f>>2]);break c}F[d+4|0]=e|2;H[h+H[a+28>>2]>>2]=H[a+140>>2];b=H[a+140>>2];e:{if(b>>>0>=(H[a+144>>2]&2147483647)>>>0){_E(i,f);break e}H[H[a+136>>2]+(b<<2)>>2]=H[f>>2];H[a+140>>2]=H[a+140>>2]+1}b=H[d>>2];if((b|0)==-1){break c}while(1){d=H[a+84>>2];c=(b>>>0)/(d>>>0)|0;d=b-N(c,d)|0;e=H[H[a+64>>2]+(c<<2)>>2];h=b^1;l=H[a+448>>2];m=H[l+20>>2];c=(h>>>0)/(m>>>0)|0;f:{g:{c=H[H[H[l>>2]+(c<<2)>>2]+(h-N(c,m)<<2)>>2];if(c>>>0<=4294967167){c=H[H[a+204>>2]+(c>>>5&134217724)>>2];if((c|0)!=-1){break g}}c=b>>>1|0;b=H[a+60>>2];h=(c>>>0)/(b>>>0)|0;b=H[H[a+40>>2]+(h<<2)>>2]+(c-N(b,h)<<4)|0;if(I[b+4|0]&4|H[b>>2]==1){break f}DE(a,c);G[b+4>>1]=J[b+4>>1]|4;break f}h=1<>2]+(c>>>3&536870908)|0;if(h&H[b>>2]){break f}H[f+12>>2]=c;l=H[a+88>>2];H[b>>2]=h|H[b>>2];b=H[a+244>>2];H[(l+N(c,44)|0)+16>>2]=b;if(b>>>0>=(H[a+248>>2]&2147483647)>>>0){qm(j,f+12|0);break f}H[H[a+240>>2]+(b<<2)>>2]=H[f+12>>2];H[a+244>>2]=H[a+244>>2]+1}b=H[e+(d<<3)>>2];if((b|0)!=-1){continue}break}}g=g+1|0;if(g>>>0>2]){continue}break}break b}H[a+328>>2]=0;H[a+252>>2]=H[a+116>>2];H[a+256>>2]=H[a+128>>2];break a}H[a+328>>2]=0;H[a+252>>2]=H[a+116>>2];H[a+256>>2]=H[a+128>>2];g=H[a+244>>2];if(k>>>0>=g>>>0){break a}while(1){b=H[H[a+88>>2]+N(H[H[a+240>>2]+(k<<2)>>2],44)>>2];c=b>>>7|0;if((c|0)!=33554431){while(1){ME(a,b);b=H[(H[a+16>>2]+N(c,24)|0)+8>>2];c=b>>>7|0;if((c|0)!=33554431){continue}break}g=H[a+244>>2]}k=k+1|0;if(k>>>0>>0){continue}break}}Oa=f+16|0}function _W(a,b,c,d,e,f,g){var h=0,i=0,j=O(0),k=O(0),l=0,m=0,n=O(0),o=O(0),p=O(0),q=O(0),r=0,s=0,t=0,u=O(0),v=0,w=O(0),x=0;h=Oa-144|0;Oa=h;H[g>>2]=3;i=H[b+12>>2];H[h+136>>2]=H[b+8>>2];H[h+140>>2]=i;i=H[b+4>>2];H[h+128>>2]=H[b>>2];H[h+132>>2]=i;i=H[b+28>>2];H[h+120>>2]=H[b+24>>2];H[h+124>>2]=i;i=H[b+20>>2];H[h+112>>2]=H[b+16>>2];H[h+116>>2]=i;i=H[b+44>>2];H[h+104>>2]=H[b+40>>2];H[h+108>>2]=i;i=H[b+36>>2];H[h+96>>2]=H[b+32>>2];H[h+100>>2]=i;j=L[h+128>>2];p=O(L[h+112>>2]-j);k=L[h+132>>2];n=O(L[h+100>>2]-k);j=O(L[h+96>>2]-j);k=O(L[h+116>>2]-k);o=O(O(p*n)-O(j*k));q=O(o*o);u=k;k=L[h+136>>2];o=O(L[h+104>>2]-k);k=O(L[h+120>>2]-k);n=O(O(u*o)-O(n*k));j=O(O(k*j)-O(o*p));a:{if(O(q+O(O(n*n)+O(j*j)))<=O(1.1920928955078125e-7)){H[g>>2]=2;n=L[b+8>>2];j=O(L[b+24>>2]-n);o=L[b>>2];p=O(L[b+16>>2]-o);q=L[b+4>>2];k=O(L[b+20>>2]-q);w=O(O(j*j)+O(O(p*p)+O(k*k)));if(w<=O(1.1920928955078125e-7)){H[g>>2]=1;c=H[b+12>>2];H[a+8>>2]=H[b+8>>2];H[a+12>>2]=c;c=H[b+4>>2];H[a>>2]=H[b>>2];H[a+4>>2]=c;break a}H[a+12>>2]=0;u=j;j=O(R(O(O(O(O(O(-o)*p)-O(k*q))-O(n*j))/w),O(1)));j=j>O(0)?j:O(0);L[a+8>>2]=n+O(u*j);L[a+4>>2]=q+O(k*j);L[a>>2]=o+O(p*j);break a}H[h+88>>2]=H[21810];i=H[21809];H[h+80>>2]=H[21808];H[h+84>>2]=i;vV(h+48|0,h+128|0,h+112|0,h+96|0,h+80|0,h+92|0,h- -64|0);x=H[h+92>>2];if((x|0)!=3){s=H[h+80>>2];t=H[h+84>>2];l=t<<4;i=l+b|0;m=H[i+4>>2];H[h+48>>2]=H[i>>2];H[h+52>>2]=m;m=H[i+12>>2];H[h+56>>2]=H[i+8>>2];H[h+60>>2]=m;i=c+l|0;m=H[i+12>>2];H[h+40>>2]=H[i+8>>2];H[h+44>>2]=m;m=H[i+4>>2];H[h+32>>2]=H[i>>2];H[h+36>>2]=m;m=s<<4;i=m+d|0;r=H[i+12>>2];H[h+24>>2]=H[i+8>>2];H[h+28>>2]=r;r=H[i+4>>2];H[h+16>>2]=H[i>>2];H[h+20>>2]=r;i=d+l|0;l=H[i+12>>2];H[h+8>>2]=H[i+8>>2];H[h+12>>2]=l;l=H[i+4>>2];H[h>>2]=H[i>>2];H[h+4>>2]=l;i=s<<2;s=H[i+f>>2];l=t<<2;t=H[l+f>>2];l=H[e+l>>2];r=H[e+i>>2];i=b+m|0;v=H[i+12>>2];H[b+8>>2]=H[i+8>>2];H[b+12>>2]=v;v=H[i+4>>2];H[b>>2]=H[i>>2];H[b+4>>2]=v;i=H[h+52>>2];H[b+16>>2]=H[h+48>>2];H[b+20>>2]=i;i=H[h+60>>2];H[b+24>>2]=H[h+56>>2];H[b+28>>2]=i;b=c+m|0;i=H[b+4>>2];H[c>>2]=H[b>>2];H[c+4>>2]=i;i=H[b+12>>2];H[c+8>>2]=H[b+8>>2];H[c+12>>2]=i;b=H[h+36>>2];H[c+16>>2]=H[h+32>>2];H[c+20>>2]=b;b=H[h+44>>2];H[c+24>>2]=H[h+40>>2];H[c+28>>2]=b;b=H[h+20>>2];H[d>>2]=H[h+16>>2];H[d+4>>2]=b;b=H[h+28>>2];H[d+8>>2]=H[h+24>>2];H[d+12>>2]=b;b=H[h+12>>2];H[d+24>>2]=H[h+8>>2];H[d+28>>2]=b;b=H[h+4>>2];H[d+16>>2]=H[h>>2];H[d+20>>2]=b;H[e>>2]=r;H[e+4>>2]=l;H[f+4>>2]=t;H[f>>2]=s;H[g>>2]=x}b=H[h+68>>2];H[a>>2]=H[h+64>>2];H[a+4>>2]=b;b=H[h+76>>2];H[a+8>>2]=H[h+72>>2];H[a+12>>2]=b}Oa=h+144|0}function aG(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=O(0);VI(a,b,c);H[a>>2]=115344;L[a+64>>2]=L[c+16>>2];L[a+68>>2]=L[c+20>>2];L[a+72>>2]=L[c+24>>2];L[a+76>>2]=L[c+28>>2];L[a+80>>2]=L[c+32>>2];L[a+84>>2]=L[c+36>>2];n=L[c+40>>2];G[a+92>>1]=0;L[a+88>>2]=n;f=J[c+46>>1];H[a+160>>2]=0;H[a+164>>2]=0;H[a+152>>2]=-1;H[a+156>>2]=-1;F[a+150|0]=1;G[a+148>>1]=0;H[a+144>>2]=-128;H[a+136>>2]=0;H[a+140>>2]=1065353216;H[a+128>>2]=0;H[a+132>>2]=0;H[a+120>>2]=0;H[a+124>>2]=1069547520;H[a+112>>2]=0;H[a+116>>2]=0;H[a+100>>2]=c+16;H[a+96>>2]=0;G[a+94>>1]=f;H[c+164>>2]=0;H[c+168>>2]=0;F[c+173|0]=I[c+8|0]&2;if(I[c+44|0]&32){G[a+92>>1]=64}a:{if(!H[c+176>>2]|I[H[c+176>>2]+31|0]==1){break a}f=H[c+176>>2];if(!f){break a}e=I[f+12|0];b:{if(!e){break b}g=1;if(L[f>>2]!=O(0)|L[f+4>>2]!=O(0)|(L[f+8>>2]!=O(0)|L[f+16>>2]!=O(0))){break b}if(L[f+20>>2]!=O(0)|L[f+24>>2]!=O(0)|(L[f+32>>2]!=O(0)|L[f+36>>2]!=O(0))){break b}if(L[f+40>>2]!=O(0)){break b}g=0;g=(L[f+48>>2]!=O(0)|L[f+52>>2]!=O(0)?g:L[f+56>>2]==O(0))^1}F[a+150|0]=e;F[f+12|0]=0}f=1;c:{if(L[c+156>>2]>O(0)){break c}f=1;if(L[c+80>>2]!=O(0)){break c}f=1;if(L[c+84>>2]!=O(0)){break c}f=1;if(L[c+88>>2]!=O(0)){break c}f=L[c+96>>2]!=O(0)|L[c+100>>2]!=O(0)|L[c+104>>2]!=O(0)|g}e=H[a+44>>2];m=F[e+44|0]&1;j=H[b+1e3>>2];d:{e:{if(I[e+9|0]!=2){k=a- -64|0;e=H[j+4>>2];f:{if(e){i=e-1|0;e=H[H[j>>2]+(i<<2)>>2];H[j+4>>2]=i;break f}e=H[j+12>>2];H[j+12>>2]=e+1}e=e<<7;zE(j+168|0,k,m,f,e);zE(j+640|0,k,m,f,e);break e}e=H[a+160>>2];if(!e){break d}k=H[e>>2];h=H[e+28>>2];g:{if(h){l=H[e+24>>2];e=0;while(1){i=e|k;if(H[l+(e<<2)>>2]==(a|0)){break g}e=e+1|0;if((h|0)!=(e|0)){continue}break}}i=k|-2147483648}e=i<<1&126|H[H[a+160>>2]+48>>2]&-128|1}H[a+144>>2]=e}if(!(!g|I[H[a+44>>2]+9|0]==2)){k=H[a+144>>2];i=k>>>7|0;e=i+32>>>5|0;h:{if(e>>>0<=(H[b+2448>>2]&2147483647)>>>0){g=H[b+2444>>2];break h}g=H[33808]+12|0;g=Ra[H[H[g>>2]+8>>2]](g,e<<2,20591,14905,438)|0;h=H[b+2444>>2];i:{if(!h){break i}R6(g,h,H[b+2448>>2]<<2);if(H[b+2448>>2]<0){break i}h=H[b+2444>>2];if(!h){break i}l=H[33808]+12|0;Ra[H[H[l>>2]+12>>2]](l,h)}h=H[b+2448>>2];S6((h<<2)+g|0,0,e-h<<2);H[b+2448>>2]=e;H[b+2444>>2]=g}e=(k>>>10&4194300)+g|0;H[e>>2]=H[e>>2]|1<>1]=J[a+148>>1]|4096}j:{if(f){bG(a);RN(b,a);break j}cG(a);H[a+152>>2]=-2;H[a+156>>2]=-2;eF(j,H[a+144>>2])}if(m){d=H[a+164>>2];if(d){CG(d,H[H[a+40>>2]+1136>>2])}if(H[c+176>>2]?!H[c+176>>2]|I[H[c+176>>2]+31|0]!=1:1){IF(c,H[b+2412>>2]);fF(H[H[a+40>>2]+1e3>>2],H[a+144>>2]);return a}G[a+148>>1]=J[a+148>>1]&63483|4}return a}function hX(a,b,c,d,e){var f=0,g=0,h=O(0),i=O(0),j=O(0),k=0,l=O(0),m=O(0),n=0,o=0,p=0,q=0,r=O(0),s=O(0),t=0,u=0,v=O(0),w=0,x=O(0),y=O(0),z=O(0),A=0,B=0;t=Oa-16|0;Oa=t;p=H[b+12>>2];k=(H[a+28>>2]<<2)+e|0;n=H[k>>2];e=p+N(n,12)|0;x=L[e+8>>2];y=L[e+4>>2];z=L[e>>2];f=1;u=H[b+8>>2];e=u+N(n,24)|0;h=L[e+12>>2];j=L[e+8>>2];m=L[e+4>>2];r=L[e>>2];s=L[e+20>>2];v=L[e+16>>2];g=H[a+32>>2];a:{if(g>>>0<=1){l=h;break a}l=h;while(1){w=H[k+(f<<2)>>2];e=u+N(w,24)|0;i=L[e+12>>2];l=i>2];j=j>2];m=i>m?m:i;i=L[e>>2];r=i>r?r:i;i=L[e+20>>2];s=i>2];v=i>2]);y=O(y+L[e+4>>2]);z=O(z+L[e>>2]);f=f+1|0;if((g|0)!=(f|0)){continue}break}}L[a+12>>2]=l;L[a+8>>2]=j;L[a+4>>2]=m;L[a>>2]=r;L[a+20>>2]=s;L[a+16>>2]=v;b:{if(g>>>0<=K[b>>2]){break b}e=p+N(n,12)|0;j=O(O(1)/O(g>>>0));m=O(j*x);h=O(L[e+8>>2]-m);l=O(O(h*h)+O(0));r=O(j*y);h=O(L[e+4>>2]-r);h=O(O(h*h)+O(0));s=O(j*z);j=O(L[e>>2]-s);j=O(O(j*j)+O(0));e=1;if((g|0)!=1){while(1){i=l;f=p+N(H[k+(e<<2)>>2],12)|0;l=O(L[f+8>>2]-m);l=O(i+O(l*l));i=h;h=O(L[f+4>>2]-r);h=O(i+O(h*h));i=j;j=O(L[f>>2]-s);j=O(i+O(j*j));e=e+1|0;if((g|0)!=(e|0)){continue}break}}m=O(O(1)/O(g-1>>>0));j=O(m*j);L[t>>2]=j;h=O(m*h);L[t+4>>2]=h;e=h>j;e=(L[(e<<2|t)>>2]>2]+L[e+(a+12|0)>>2])*O(.5));p=e+p|0;u=g&1;c:{if((g|0)==1){e=0;f=0;break c}w=g&-2;e=0;f=0;n=0;while(1){o=f<<2;q=o+k|0;B=H[q>>2];if(h>2]){A=q;q=k+(e<<2)|0;H[A>>2]=H[q>>2];H[q>>2]=B;e=e+1|0}o=k+(o|4)|0;q=H[o>>2];if(h>2]){A=o;o=k+(e<<2)|0;H[A>>2]=H[o>>2];H[o>>2]=q;e=e+1|0}f=f+2|0;n=n+2|0;if((w|0)!=(n|0)){continue}break}}d:{if(!u){break d}f=k+(f<<2)|0;n=H[f>>2];if(!(h>2])){break d}o=f;f=k+(e<<2)|0;H[o>>2]=H[f>>2];H[f>>2]=n;e=e+1|0}if(!((e|0)!=(g|0)?e:0)){if(g>>>0<=K[b>>2]){break b}e=g>>>1|0}b=Oa-16|0;Oa=b;H[d+20>>2]=H[d+20>>2]+2;g=H[d+4>>2]+N(H[d+16>>2],12)|0;k=H[g+4>>2];f=k+2|0;e:{if(f>>>0<=K[g+8>>2]){d=H[g>>2];H[g+4>>2]=f;g=d+N(k,36)|0;break e}g=H[33808];f=Ra[H[H[g>>2]+20>>2]](g)|0?39306:55639;g=Ra[H[H[g+12>>2]+8>>2]](g+12|0,36868,f,9742,94)|0;H[g>>2]=1024;g=g+4|0;f=S6(g,0,36864);H[b+4>>2]=2;H[b+8>>2]=1024;H[b>>2]=f;f=H[d+8>>2];f:{if(f>>>0>=(H[d+12>>2]&2147483647)>>>0){gX(d+4|0,b);break f}k=H[b+4>>2];f=H[d+4>>2]+N(f,12)|0;H[f>>2]=H[b>>2];H[f+4>>2]=k;H[f+8>>2]=H[b+8>>2];H[d+8>>2]=H[d+8>>2]+1}H[d+16>>2]=H[d+16>>2]+1}Oa=b+16|0;H[a+24>>2]=g;H[c>>2]=H[c>>2]+2;b=H[a+28>>2];H[g+32>>2]=e;H[g+28>>2]=b;H[g- -64>>2]=H[a+28>>2]+e;H[g+68>>2]=H[a+32>>2]-e}Oa=t+16|0}function M0(a,b,c,d,e,f,g,h,i,j){var k=O(0),l=O(0),m=O(0),n=0,o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=0,x=O(0),y=O(0),z=O(0),A=O(0),B=0,C=0,D=O(0),E=O(0),G=O(0),I=O(0),J=O(0);n=Oa-160|0;Oa=n;w=n+88|0;R0(b,g,w);F[n+60|0]=g;H[n+56>>2]=b+96;H[n+52>>2]=b+48;H[n+48>>2]=d;H[n+64>>2]=b;H[n+16>>2]=g?125820:125868;H[n+12>>2]=0;B=Oa-16|0;Oa=B;g=n+16|0;b=0;a:{if(!K0(a,w,g,j,B,i)){break a}r=L[i+4>>2];u=L[i>>2];s=L[i+8>>2];v=L[j>>2];z=L[a+80>>2];C=H[w+16>>2];if(C){b=H[g+40>>2];o=L[b+40>>2];k=L[a+56>>2];x=L[b+8>>2];m=L[a+48>>2];y=L[b+24>>2];p=L[a+52>>2];D=O(O(o*k)+O(O(x*m)+O(y*p)));q=L[b+36>>2];t=L[b+4>>2];I=L[b+20>>2];J=O(O(q*k)+O(O(t*m)+O(I*p)));A=L[b+32>>2];E=O(A*k);k=L[b>>2];G=O(k*m);m=L[b+16>>2];E=O(E+O(G+O(m*p)));G=k;k=O(-u);A=O(O(O(G*k)-O(m*r))-O(A*s));x=O(O(O(x*k)-O(y*r))-O(o*s));y=O(O(O(t*k)-O(I*r))-O(q*s));w=H[w+24>>2];k=O(1);b=0;j=1;b:{while(1){c:{g=w+N(b,20)|0;m=L[g+8>>2];o=L[g>>2];q=L[g+4>>2];p=O(L[g+12>>2]+O(O(m*D)+O(O(o*E)+O(J*q))));o=O(O(m*x)+O(O(o*A)+O(y*q)));d:{if(O(P(o))O(0))){break d}break c}m=O(O(-p)/o);g=om?m:k;l=g?l>>0>b>>>0;if((b|0)!=(C|0)){continue}break b}break}l=O(0)}b=1;if(j){break a}}b=1;if(!(O(z+v)>=l)){break a}b=N(H[n+12>>2],48)+e|0;H[b>>2]=0;H[b+4>>2]=0;H[b+8>>2]=0;H[b+12>>2]=0;k=L[a+52>>2];m=L[a+56>>2];b=N(H[n+12>>2],48)+e|0;L[b+16>>2]=L[a+48>>2]-O(u*l);H[b+28>>2]=0;L[b+24>>2]=m-O(s*l);L[b+20>>2]=k-O(r*l);k=L[i+8>>2];g=H[i+4>>2];j=H[i>>2];b=H[n+12>>2];H[n+12>>2]=b+1;b=N(b,48)+e|0;H[b+32>>2]=j;H[b+36>>2]=g;L[b+44>>2]=l;L[b+40>>2]=k;b=1}Oa=B+16|0;g=b&H[n+12>>2]!=0;if(g){j=H[e+4>>2];b=H[h+76>>2];H[b>>2]=H[e>>2];H[b+4>>2]=j;j=H[e+12>>2];H[b+8>>2]=H[e+8>>2];H[b+12>>2]=j;j=H[e+20>>2];H[b+16>>2]=H[e+16>>2];H[b+20>>2]=j;j=H[e+28>>2];H[b+24>>2]=H[e+24>>2];H[b+28>>2]=j;j=H[e+36>>2];H[b+32>>2]=H[e+32>>2];H[b+36>>2]=j;j=H[e+44>>2];H[b+40>>2]=H[e+40>>2];H[b+44>>2]=j;F[h+64|0]=1;x=L[c+20>>2];y=L[c+24>>2];v=L[e+44>>2];D=L[c+16>>2];l=L[d+12>>2];k=L[i+8>>2];r=L[d+8>>2];s=L[i>>2];m=L[d>>2];u=L[i+4>>2];p=L[d+4>>2];o=L[a+80>>2];a=H[f+4096>>2];H[f+4096>>2]=a+1;a=(a<<6)+f|0;H[a+52>>2]=-1;L[a+12>>2]=v-o;H[a+28>>2]=0;v=O(O(l*l)+O(-.5));z=O(O(r*k)+O(O(m*s)+O(p*u)));q=O(O(O(l*O(O(m*u)-O(s*p)))+O(k*v))+O(r*z));q=O(q+q);L[a+8>>2]=q;t=O(O(p*z)+O(O(v*u)+O(l*O(O(r*s)-O(k*m)))));t=O(t+t);L[a+4>>2]=t;l=O(O(m*z)+O(O(s*v)+O(l*O(O(p*k)-O(u*r)))));l=O(l+l);L[a>>2]=l;L[a+24>>2]=y-O(o*q);L[a+20>>2]=x-O(o*t);L[a+16>>2]=D-O(o*l)}Oa=n+160|0;return g}function Qu(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=Oa+-64|0;Oa=c;i=I[a+92|0];a:{if(!i){break a}if(I[a+76|0]!=(b|0)){Ra[H[H[a>>2]+24>>2]](a,b,c+60|0,c+56|0,c+52|0);d=H[c+56>>2];F[c|0]=0;Ru(a+100|0,d,c);H[c+24>>2]=0;H[c+28>>2]=0;H[c+20>>2]=1065353216;H[c+32>>2]=0;H[c+36>>2]=0;H[c+40>>2]=1065353216;H[c+44>>2]=0;H[c+4>>2]=0;H[c+8>>2]=0;H[c>>2]=1065353216;H[c+12>>2]=0;H[c+16>>2]=0;Su(a+124|0,b,c);H[c+24>>2]=0;H[c+28>>2]=0;H[c+20>>2]=1065353216;H[c+32>>2]=0;H[c+36>>2]=0;H[c+40>>2]=1065353216;H[c+44>>2]=0;H[c+4>>2]=0;H[c+8>>2]=0;H[c>>2]=1065353216;H[c+12>>2]=0;H[c+16>>2]=0;Su(a+112|0,b,c);H[c+24>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=1065353216;H[c>>2]=0;H[c+4>>2]=0;e=a+148|0;if((H[e+8>>2]&2147483647)>>>0>>0){Uu(e,b)}d=H[e+4>>2];if((d|0)<(b|0)){g=H[e>>2];f=g+N(b,28)|0;d=g+N(d,28)|0;while(1){L[d>>2]=L[c>>2];L[d+4>>2]=L[c+4>>2];L[d+8>>2]=L[c+8>>2];L[d+12>>2]=L[c+12>>2];L[d+16>>2]=L[c+16>>2];L[d+20>>2]=L[c+20>>2];L[d+24>>2]=L[c+24>>2];d=d+28|0;if(f>>>0>d>>>0){continue}break}}H[e+4>>2]=b;H[c+8>>2]=0;H[c+12>>2]=1065353216;H[c>>2]=0;H[c+4>>2]=0;Tu(a+160|0,b,c);H[a+52>>2]=H[a+124>>2];H[a+56>>2]=H[a+112>>2];d=H[c+52>>2];F[c|0]=0;Ru(a+136|0,d,c);H[a+68>>2]=H[a+136>>2];G[a+78>>1]=H[c+52>>2];G[a+74>>1]=H[c+60>>2];G[a+72>>1]=H[c+56>>2];H[a+48>>2]=H[a+160>>2];H[a+44>>2]=H[a+148>>2];H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;H[c>>2]=0;H[c+4>>2]=0;f=a+172|0;if((H[f+8>>2]&2147483647)>>>0>>0){g=0;b:{if(!b){break b}e=b<<5;if(!e){break b}d=H[33808];g=Ra[H[H[d>>2]+20>>2]](d)|0?42082:55639;g=Ra[H[H[d+12>>2]+8>>2]](d+12|0,e,g,13582,553)|0}d=H[f+4>>2];if((d|0)>0){j=(d<<5)+g|0;e=H[f>>2];d=g;while(1){h=H[e+4>>2];H[d>>2]=H[e>>2];H[d+4>>2]=h;h=H[e+12>>2];H[d+8>>2]=H[e+8>>2];H[d+12>>2]=h;h=H[e+20>>2];H[d+16>>2]=H[e+16>>2];H[d+20>>2]=h;h=H[e+28>>2];H[d+24>>2]=H[e+24>>2];H[d+28>>2]=h;e=e+32|0;d=d+32|0;if(j>>>0>d>>>0){continue}break}}c:{if(H[f+8>>2]<0){break c}d=H[f>>2];if(!d){break c}e=H[33808];Ra[H[H[e+12>>2]+12>>2]](e+12|0,d)}H[f+8>>2]=b;H[f>>2]=g}d=H[f+4>>2];if((d|0)<(b|0)){e=H[f>>2];g=e+(b<<5)|0;d=e+(d<<5)|0;while(1){e=H[c+4>>2];H[d>>2]=H[c>>2];H[d+4>>2]=e;e=H[c+12>>2];H[d+8>>2]=H[c+8>>2];H[d+12>>2]=e;e=H[c+20>>2];H[d+16>>2]=H[c+16>>2];H[d+20>>2]=e;e=H[c+28>>2];H[d+24>>2]=H[c+24>>2];H[d+28>>2]=e;d=d+32|0;if(g>>>0>d>>>0){continue}break}}H[f+4>>2]=b;H[a+36>>2]=H[a+172>>2];if(!I[a+92|0]){break a}}if(I[a+76|0]!=(b|0)){H[a+28>>2]=a;H[a+40>>2]=H[a+80>>2]}F[a+92|0]=0}Oa=c- -64|0;return(i|0)!=0|0}function rZ(a,b,c,d,e,f,g,h){var i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),F=O(0);C=L[e+8>>2];k=L[c+8>>2];t=O(C-k);j=L[b+8>>2];i=O(j-k);D=L[e>>2];n=L[c>>2];u=O(D-n);q=L[b>>2];o=O(q-n);E=L[e+4>>2];l=L[c+4>>2];v=O(E-l);p=L[b+4>>2];r=O(p-l);m=O(O(t*i)+O(O(u*o)+O(v*r)));a:{b:{z=L[d+8>>2];w=O(z-k);A=L[d>>2];x=O(A-n);B=L[d+4>>2];y=O(B-l);o=O(O(w*i)+O(O(x*o)+O(y*r)));if(!(!(o>2]=0;H[g>>2]=0;i=L[c+8>>2];j=L[b+8>>2];m=L[c>>2];k=L[b>>2];n=L[c+4>>2];l=L[b+4>>2];b=H[c+12>>2];H[h+8>>2]=H[c+8>>2];H[h+12>>2]=b;b=H[c+4>>2];H[h>>2]=H[c>>2];H[h+4>>2]=b;break b}i=O(j-z);s=O(q-A);F=O(p-B);r=O(O(t*i)+O(O(u*s)+O(v*F)));i=O(O(w*i)+O(O(x*s)+O(y*F)));if(!(!(i>=O(0))|!(i>=r))){H[f>>2]=1065353216;H[g>>2]=0;i=L[d+8>>2];j=L[b+8>>2];m=L[d>>2];k=L[b>>2];n=L[d+4>>2];l=L[b+4>>2];b=H[d+12>>2];H[h+8>>2]=H[d+8>>2];H[h+12>>2]=b;b=H[d+4>>2];H[h>>2]=H[d>>2];H[h+4>>2]=b;break b}j=O(j-C);s=O(q-D);p=O(p-E);q=O(O(w*j)+O(O(x*s)+O(y*p)));j=O(O(t*j)+O(O(u*s)+O(v*p)));if(!(!(j>=O(0))|!(j>=q))){H[f>>2]=0;H[g>>2]=1065353216;i=L[e+8>>2];j=L[b+8>>2];m=L[e>>2];k=L[b>>2];n=L[e+4>>2];l=L[b+4>>2];b=H[e+12>>2];H[h+8>>2]=H[e+8>>2];H[h+12>>2]=b;b=H[e+4>>2];H[h>>2]=H[e>>2];H[h+4>>2]=b;break b}p=O(O(o*r)-O(i*m));if(!(!(i=O(0))))){i=O(o/O(o-i));L[f>>2]=i;H[g>>2]=0;j=L[b+8>>2];m=L[b>>2];o=L[b+4>>2];H[h+12>>2]=0;k=O(O(w*i)+k);L[h+8>>2]=k;l=O(O(y*i)+l);L[h+4>>2]=l;i=O(O(x*i)+n);L[h>>2]=i;break a}s=O(O(i*j)-O(q*r));if(!(!(j<=q)|(!(s>2]=O(1)-i;L[g>>2]=i;j=L[b+8>>2];m=L[b>>2];k=L[b+4>>2];H[h+12>>2]=0;l=O(O(O(C-z)*i)+z);L[h+8>>2]=l;n=O(O(O(E-B)*i)+B);L[h+4>>2]=n;i=O(O(O(D-A)*i)+A);L[h>>2]=i;j=O(j-l);i=O(m-i);l=O(i*i);i=O(k-n);L[a>>2]=O(j*j)+O(l+O(i*i));return}i=O(O(q*m)-O(o*j));if(!(!(j=O(0))))){H[f>>2]=0;i=O(m/O(m-j));L[g>>2]=i;j=L[b+8>>2];m=L[b>>2];o=L[b+4>>2];H[h+12>>2]=0;k=O(O(t*i)+k);L[h+8>>2]=k;l=O(O(v*i)+l);L[h+4>>2]=l;i=O(O(u*i)+n);L[h>>2]=i;break a}j=O(O(1)/O(s+O(i+p)));i=O(i*j);L[f>>2]=i;j=O(p*j);L[g>>2]=j;H[h+12>>2]=0;m=O(O(O(w*i)+O(t*j))+k);L[h+8>>2]=m;k=O(O(O(y*i)+O(v*j))+l);L[h+4>>2]=k;i=O(O(O(x*i)+O(u*j))+n);L[h>>2]=i;j=O(L[b+8>>2]-m);i=O(L[b>>2]-i);l=O(i*i);i=O(L[b+4>>2]-k);L[a>>2]=O(j*j)+O(l+O(i*i));return}i=O(j-i);j=O(i*i);i=O(k-m);k=O(i*i);i=O(l-n);L[a>>2]=j+O(k+O(i*i));return}j=O(j-k);i=O(m-i);k=O(i*i);i=O(o-l);L[a>>2]=O(j*j)+O(k+O(i*i))}function ry(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,r=0,s=0;d=H[a+336>>2];f=H[d>>2];if(f){H[d>>2]=H[f>>2]}if(!f){d=H[33808];f=Ra[H[H[d>>2]+20>>2]](d)|0?23054:55639;f=Ra[H[H[d+12>>2]+8>>2]](d+12|0,12195,f,16202,82)|0;d=f+19&-16;H[d-4>>2]=d-f;f=lA(d,H[a+340>>2])}H[f+12052>>2]=0;d=H[b+144>>2];if(d>>>0>(H[f+12056>>2]&2147483647)>>>0){Cv(f+12048|0,d);d=H[b+144>>2]}H[f+12052>>2]=d;H[f+12064>>2]=0;if((H[f+12068>>2]&2147483647)>>>0>>0){Cv(f+12060|0,d);d=H[b+144>>2]}H[f+12064>>2]=d;d=H[((H[a+112>>2]<<2)+a|0)+484>>2];e=Ra[H[H[d>>2]+12>>2]](d,b,H[f+12048>>2],H[f+12060>>2])|0;a:{d=(e|0)<=H[b+72>>2];if(d|d){break a}d=3e4;while(1){if((e|0)<=H[b+72>>2]){break a}d=d-1|0;if(d){continue}d=1e4;continue}}e=128;l=b+92|0;d=H[l>>2]+128|0;H[l>>2]=d;r=H[b+64>>2];s=H[b+52>>2];o=H[b+16>>2];d=d-128|0;g=H[b+28>>2];if((d|0)<(g|0)){m=H[b+24>>2];while(1){i=g-d|0;h=(i|0)<128?i:128;e=e-h|0;if((i|0)>0){i=(h|0)>1?h:1;p=i&1;if((h|0)>=2){q=i&2147483646;h=0;while(1){j=m+N(d,52)|0;k=H[(H[H[j>>2]+24>>2]<<2)+135108>>2];if(k){Ra[k|0](j,L[a+52>>2])}j=j+52|0;k=H[(H[H[j>>2]+24>>2]<<2)+135108>>2];if(k){Ra[k|0](j,L[a+52>>2])}d=d+2|0;h=h+2|0;if((q|0)!=(h|0)){continue}break}}n=i+n|0;if(p){h=m+N(d,52)|0;i=H[(H[H[h>>2]+24>>2]<<2)+135108>>2];if(i){Ra[i|0](h,L[a+52>>2])}d=d+1|0}}if(!e){e=128;d=H[l>>2]+128|0;H[l>>2]=d;d=d-128|0}if((d|0)<(g|0)){continue}break}}h=d-g|0;if((o|0)>(h|0)){p=-128-g|0;q=(H[b+12>>2]+N(H[b+20>>2],112)|0)+112|0;k=H[b+8>>2];while(1){m=0;d=o-h|0;i=(d|0)<(e|0)?d:e;if((i|0)>0){while(1){d=h<<5;j=d+s|0;g=q+N(h,112)|0;sy(j,j+16|0,d+k|0,g,L[a+52>>2]);e=H[(h<<2)+r>>2];d=H[e+36>>2];L[e>>2]=L[d>>2];L[e+4>>2]=L[d+4>>2];L[e+8>>2]=L[d+8>>2];L[e+12>>2]=L[d+12>>2];L[e+16>>2]=L[d+16>>2];L[e+20>>2]=L[d+20>>2];L[e+24>>2]=L[d+24>>2];L[d>>2]=L[g+80>>2];L[d+4>>2]=L[g+84>>2];L[d+8>>2]=L[g+88>>2];L[d+12>>2]=L[g+92>>2];L[d+16>>2]=L[g+96>>2];L[d+20>>2]=L[g+100>>2];L[d+24>>2]=L[g+104>>2];L[d+64>>2]=L[g>>2];L[d+68>>2]=L[g+4>>2];L[d+72>>2]=L[g+8>>2];L[d+80>>2]=L[g+16>>2];L[d+84>>2]=L[g+20>>2];L[d+88>>2]=L[g+24>>2];if(ty(e,L[a+52>>2],I[a+64|0],I[a+66|0],j,H[H[c+100>>2]+(H[H[c+204>>2]+((H[g+72>>2]&33554431)<<2)>>2]<<2)>>2]!=0)==O(0)){H[e+64>>2]=0;H[e+68>>2]=0;H[e+48>>2]=0;H[e+52>>2]=0;H[e+72>>2]=0;H[e+56>>2]=0;G[e+28>>1]=J[e+28>>1]|16}h=h+1|0;m=m+1|0;if((i|0)!=(m|0)){continue}break}n=i+n|0}e=128;d=H[l>>2]+128|0;H[l>>2]=d;h=d+p|0;if((o|0)>(h|0)){continue}break}}H[b+96>>2]=H[b+96>>2]+n;a=H[a+336>>2];H[f>>2]=H[a>>2];H[a>>2]=f}function jY(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q){var r=O(0),s=0,t=O(0),u=0,w=0,y=0,z=O(0),A=O(0),D=O(0),E=O(0),F=O(0),G=O(0),J=O(0),K=O(0),M=0,P=O(0),Q=O(0),R=0,S=0,T=O(0),U=O(0),V=O(0),X=0,Y=0;s=Oa-32|0;Oa=s;H[m>>2]=-1;M=H[a+16>>2];w=N(M,20);if(w){while(1){u=u+128|0;if(w>>>0>u>>>0){continue}break}}u=0;a:{b:{if(!M){w=n;break b}T=O(O(O(L[e+44>>2]*h)+O(L[e+56>>2]*i))+O(L[e+68>>2]*j));U=O(O(O(L[e+40>>2]*h)+O(L[e+52>>2]*i))+O(L[e- -64>>2]*j));V=O(O(O(L[e+36>>2]*h)+O(L[e+48>>2]*i))+O(L[e+60>>2]*j));X=H[a+24>>2];Y=H[a+28>>2];S=1;w=n;while(1){y=N(u,20)+X|0;j=L[y+8>>2];r=L[y>>2];t=L[y+4>>2];c:{if(O(O(j*T)+O(O(r*V)+O(U*t)))>2];A=L[e+36>>2];D=L[e+48>>2];h=L[e+64>>2];E=L[e+40>>2];F=L[e+52>>2];i=O(O(O(r*L[e+44>>2])+O(t*L[e+56>>2]))+O(j*L[e+68>>2]));L[s+16>>2]=i;h=O(O(O(r*E)+O(t*F))+O(j*h));L[s+12>>2]=h;j=O(O(O(r*A)+O(t*D))+O(j*z));L[s+8>>2]=j;z=O(W(O(O(i*i)+O(O(j*j)+O(h*h)))));if(z>O(0)){r=O(O(1)/z);i=O(i*r);L[s+16>>2]=i;h=O(h*r);L[s+12>>2]=h;j=O(j*r);L[s+8>>2]=j}A=L[c+8>>2];D=L[c+20>>2];E=L[c+32>>2];r=O(O(O(j*A)+O(h*D))+O(i*E));F=L[c>>2];P=L[c+12>>2];G=L[c+24>>2];t=O(O(O(j*F)+O(h*P))+O(i*G));Q=j;j=L[c+4>>2];J=L[c+16>>2];K=i;i=L[c+28>>2];h=O(O(O(Q*j)+O(h*J))+O(K*i));Q=O(O(L[q+8>>2]*r)+O(O(L[q>>2]*t)+O(h*L[q+4>>2])));i=O(O(E*r)+O(O(G*t)+O(i*h)));K=O((x(2,H[a+56>>2]|(B(i),v(2))&-2147483648),C())*i);i=O(O(A*r)+O(O(F*t)+O(j*h)));j=O((x(2,H[a+48>>2]|(B(i),v(2))&-2147483648),C())*i);i=O(O(D*r)+O(O(P*t)+O(J*h)));i=O(K+O(j+O(i*(x(2,H[a+52>>2]|(B(i),v(2))&-2147483648),C()))));j=L[a+44>>2];K=i>j?i:j;i=O(O(L[d+32>>2]*r)+O(O(L[d+24>>2]*t)+O(h*L[d+28>>2])));j=O((x(2,H[b+56>>2]|(B(i),v(2))&-2147483648),C())*i);i=O(O(L[d+8>>2]*r)+O(O(L[d>>2]*t)+O(h*L[d+4>>2])));A=O((x(2,H[b+48>>2]|(B(i),v(2))&-2147483648),C())*i);i=O(O(L[d+20>>2]*r)+O(O(L[d+12>>2]*t)+O(h*L[d+16>>2])));i=O(j+O(A+O(i*(x(2,H[b+52>>2]|(B(i),v(2))&-2147483648),C()))));j=L[b+44>>2];i=O(K+(i>j?i:j));j=O(Q+i);i=O(i-Q);if(L[k>>2]<(i>j?j:i)){break c}H[w>>2]=u;i=L[y+12>>2];R=N(I[y+19|0],12)+Y|0;j=L[R+8>>2];A=L[R>>2];D=L[R+4>>2];E=L[y+8>>2];F=L[y>>2];P=L[y+4>>2];Ra[H[b+64>>2]](b,s+8|0,g,f,s+28|0,s+24|0);G=L[s+28>>2];z=O(O(1)/z);i=O(z*O(-i));if(G>O(i+p)){break a}j=O(z*O(O(E*j)+O(O(F*A)+O(P*D))));J=L[s+24>>2];if(j>O(J+p)){break a}w=w+4|0;i=O(i-G);j=O(J-j);i=i>2])){break c}L[l+8>>2]=r;L[l+4>>2]=h;L[l>>2]=t;L[k>>2]=i;H[m>>2]=u}u=u+1|0;S=M>>>0>u>>>0;if((u|0)!=(M|0)){continue}break}}H[o>>2]=w-n>>2}Oa=s+32|0;return(S^-1)&1}function o0(a,b,c,d,e,f,g,h,i,j,k){var l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),F=O(0),G=O(0),I=O(0),J=O(0),K=O(0),M=O(0),N=O(0),P=O(0),Q=O(0),R=O(0),S=O(0),T=0,U=O(0),V=O(0),W=O(0),X=O(0);G=L[h+8>>2];m=L[a+8>>2];W=O(G-m);I=L[h+4>>2];l=L[a+4>>2];X=O(I-l);J=L[h>>2];n=L[a>>2];Q=O(J-n);K=L[i>>2];z=L[g+4>>2];v=L[d+4>>2];R=O(O(z-l)*v);r=L[g+8>>2];w=L[d+8>>2];S=O(O(r-m)*w);x=L[e+8>>2];p=L[d>>2];s=L[e>>2];E=L[e+4>>2];M=O(O(w*x)+O(O(p*s)+O(v*E)));T=M>O(0);t=O(L[b+8>>2]-m);u=O(L[b>>2]-n);o=O(L[b+4>>2]-l);N=O(O(t*t)+O(O(u*u)+O(o*o)));A=O(L[c+8>>2]-m);B=O(L[c>>2]-n);C=O(L[c+4>>2]-l);P=O(O(A*A)+O(O(B*B)+O(C*C)));q=O(O(t*A)+O(O(u*B)+O(o*C)));F=O(O(1)/O(O(N*P)-O(q*q)));y=r;D=L[g>>2];U=O(D-n);r=T?O(O(O(O(p*O(-U))-R)-S)/M):O(0);y=O(y+O(x*r));m=O(y-m);D=O(D+O(s*r));n=O(D-n);z=O(z+O(E*r));l=O(z-l);V=O(O(m*t)+O(O(n*u)+O(o*l)));l=O(O(m*A)+O(O(n*B)+O(C*l)));m=O(F*O(O(P*V)-O(q*l)));a:{if(!(m>=O(-1.1920928955078125e-7))|!(m<=O(1.0000001192092896))){break a}l=O(F*O(O(N*l)-O(q*V)));if(!(l>=O(-1.1920928955078125e-7))|!(l<=O(1.0000001192092896))|(!(O(m+l)>2];b=(H[k>>2]<<6)+j|0;H[b>>2]=H[g>>2];H[b+4>>2]=c;c=H[g+12>>2];H[b+8>>2]=H[g+8>>2];H[b+12>>2]=c;b=(H[k>>2]<<6)+j|0;L[b+16>>2]=D;H[b+28>>2]=0;L[b+24>>2]=y;L[b+20>>2]=z;p=L[e+8>>2];c=H[e+4>>2];b=(H[k>>2]<<6)+j|0;H[b+32>>2]=H[e>>2];H[b+36>>2]=c;L[b+44>>2]=-r;L[b+40>>2]=p;b=H[k>>2];H[k>>2]=b+1;H[((b<<6)+j|0)+48>>2]=f;K=L[i>>2];G=L[h+8>>2];I=L[h+4>>2];J=L[h>>2];x=L[e+8>>2];E=L[e+4>>2];s=L[e>>2];w=L[d+8>>2];v=L[d+4>>2];p=L[d>>2]}n=O(X*v);v=O(W*w);m=T?O(O(O(O(p*O(-Q))-n)-v)/M):O(0);w=O(O(x*m)+G);l=O(w-L[a+8>>2]);y=O(l*t);t=O(J+O(s*m));x=O(t-L[a>>2]);s=O(x*u);r=o;u=O(O(E*m)+I);o=O(u-L[a+4>>2]);s=O(y+O(s+O(r*o)));o=O(O(l*A)+O(O(x*B)+O(C*o)));l=O(F*O(O(P*s)-O(q*o)));b:{if(!(l>=O(-1.1920928955078125e-7))|!(l<=O(1.0000001192092896))){break b}q=O(F*O(O(N*o)-O(q*s)));if(!(q>=O(-1.1920928955078125e-7))|!(q<=O(1.0000001192092896))|(!(O(l+q)>2];a=(H[k>>2]<<6)+j|0;H[a>>2]=H[h>>2];H[a+4>>2]=b;b=H[h+12>>2];H[a+8>>2]=H[h+8>>2];H[a+12>>2]=b;a=(H[k>>2]<<6)+j|0;L[a+16>>2]=t;H[a+28>>2]=0;L[a+24>>2]=w;L[a+20>>2]=u;p=L[e+8>>2];b=H[e+4>>2];a=(H[k>>2]<<6)+j|0;H[a+32>>2]=H[e>>2];H[a+36>>2]=b;L[a+44>>2]=-m;L[a+40>>2]=p;a=H[k>>2];H[k>>2]=a+1;H[((a<<6)+j|0)+48>>2]=f}}function yQ(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,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;c=Oa-96|0;Oa=c;e=H[a+28>>2];j=H[H[e+988>>2]+128>>2];f=H[e+976>>2];b=c;a=b+76|0;if(a){H[a>>2]=H[f+1e3>>2]}a=b+72|0;if(a){H[a>>2]=H[f+996>>2]}a=b+68|0;if(a){H[a>>2]=H[f+1004>>2]}n=H[b+76>>2]<<3;F[b+60|0]=n>>>0>1024;a:{if(n>>>0>=1025){k=G5(n,9345,3472);break a}k=c-(n+15&-16)|0;c=k;Oa=c}H[b+56>>2]=k;o=H[b+72>>2]<<3;F[b+52|0]=o>>>0>1024;b:{if(o>>>0>=1025){l=G5(o,9345,3473);break b}l=c-(o+15&-16)|0;c=l;Oa=c}H[b+48>>2]=l;p=H[b+68>>2]<<3;F[b+44|0]=p>>>0>1024;c:{if(p>>>0>=1025){m=G5(p,9345,3474);break c}m=c-(p+15&-16)|0;Oa=m}H[b+40>>2]=m;a=H[H[e+976>>2]+1024>>2];Ra[H[H[a>>2]+84>>2]](b,a);a=H[e+2360>>2];BJ(H[e+976>>2],k,b+76|0,l,b+72|0,m,b+68|0);f=a&8;if(H[b+76>>2]>0){a=(f|0)!=0;while(1){d=H[((h<<3)+k|0)+4>>2];wI(H[e+2168>>2],d);RQ(d,j,b,a);if(!(I[d+46|0]&4)){jF(H[e+1e3>>2],H[d+60>>2])}h=h+1|0;if((h|0)>2]){continue}break}}c=0;if(H[b+72>>2]>0){g=e+2420|0;d=(f|0)!=0;while(1){i=H[((c<<3)+l|0)+4>>2];d:{if(!SQ(i,j,b,d)|I[i+46|0]&4){break d}a=H[H[i+28>>2]+4>>2];f=I[H[a+44>>2]+9|0]-1>>>0<2?a:0;a=H[H[i+32>>2]+4>>2];a=I[H[a+44>>2]+9|0]-1>>>0<2?a:0;H[b+84>>2]=a;H[b+80>>2]=f;H[b+88>>2]=H[f+48>>2];H[b+92>>2]=H[a+48>>2];a=H[e+2424>>2];if(a>>>0>=(H[e+2428>>2]&2147483647)>>>0){yO(g,b+80|0);break d}f=H[e+2420>>2]+(a<<4)|0;a=H[b+84>>2];H[f>>2]=H[b+80>>2];H[f+4>>2]=a;a=H[b+92>>2];H[f+8>>2]=H[b+88>>2];H[f+12>>2]=a;H[e+2424>>2]=H[e+2424>>2]+1}lF(H[e+1e3>>2],H[i+60>>2]);c=c+1|0;if((c|0)>2]){continue}break}}c=0;h=H[b+68>>2];if((h|0)>0){while(1){a=H[((c<<3)+m|0)+4>>2];if(I[a+44|0]&32){QQ(a,32,0,0,j,b);h=H[b+68>>2]}c=c+1|0;if((h|0)>(c|0)){continue}break}}AO(e,j);s=H[e+980>>2]+160|0;q=H[e+1160>>2];if(q){h=0;while(1){d=H[e+1156>>2];u=H[d+(h<<2)>>2];a=h+8|0;e:{if(a>>>0>=q>>>0){break e}r=0;f=0;i=0;c=H[d+(a<<2)>>2];a=c;d=a+511|0;i=d>>>0<511?1:i;d=i<<26|d>>>6;g=a>>>6|0;a=(i>>>6|0)-(g>>>0>d>>>0)|0;t=d-g|0;i=a;g=0;v=g;d=t+1|0;a=d?a:a+1|0;j=d&7;if(g|j){while(1){g=d;d=d-1|0;a=a-!g|0;c=c- -64|0;g=f;f=r+1|0;g=f?g:g+1|0;r=f;f=g;if((j|0)!=(r|0)|(v|0)!=(f|0)){continue}break}}if(!i&t>>>0<7){break e}while(1){c=c+512|0;a=a-(d>>>0<8)|0;d=d-8|0;if(a|d){continue}break}}gG(u,s);h=h+1|0;if((q|0)!=(h|0)){continue}break}}if(H[e+1236>>2]){a=H[e+1204>>2];c=0;while(1){wF(H[H[a+(c<<2)>>2]>>2],s);c=c+1|0;if(c>>>0>2]){continue}break}}if(p>>>0>=1025){H5(m)}if(o>>>0>=1025){H5(l)}if(n>>>0>=1025){H5(k)}Oa=b+96|0}function Qw(a,b){var c=0,d=0,e=0,f=O(0),g=O(0),h=O(0),i=0,j=O(0),k=0,l=0,m=0,n=O(0),o=O(0),p=0,q=O(0),r=O(0),s=O(0);c=Oa-160|0;Oa=c;k=H[b+12>>2];p=H[a+332>>2];d=H[a+336>>2];i=H[b+20>>2];Pw(a,i);d=d-1|0;if(d){while(1){b=N(d,112)+i|0;L[c+48>>2]=L[b>>2];L[c+52>>2]=L[b+4>>2];L[c+56>>2]=L[b+8>>2];L[c+60>>2]=L[b+12>>2];L[c+64>>2]=L[b+16>>2];L[c+68>>2]=L[b+20>>2];L[c+72>>2]=L[b+24>>2];L[c+76>>2]=L[b+28>>2];L[c+80>>2]=L[b+32>>2];L[c+84>>2]=L[b+36>>2];L[c+88>>2]=L[b+40>>2];L[c+92>>2]=L[b+44>>2];L[c+96>>2]=L[b+48>>2];L[c+100>>2]=L[b+52>>2];L[c+104>>2]=L[b+56>>2];L[c+108>>2]=L[b+60>>2];L[c+112>>2]=L[b- -64>>2];L[c+116>>2]=L[b+68>>2];L[c+120>>2]=L[b+72>>2];L[c+124>>2]=L[b+76>>2];L[c+128>>2]=L[b+80>>2];L[c+132>>2]=L[b+84>>2];L[c+136>>2]=L[b+88>>2];L[c+140>>2]=L[b+92>>2];L[c+144>>2]=L[b+96>>2];L[c+148>>2]=L[b+100>>2];L[c+152>>2]=L[b+104>>2];H[c+156>>2]=H[b+108>>2];b=H[a+340>>2]+N(d,160)|0;f=L[b+128>>2];g=L[b+124>>2];h=L[b+120>>2];H[c+40>>2]=0;L[c+36>>2]=-h;L[c+32>>2]=g;L[c+28>>2]=h;H[c+24>>2]=0;L[c+12>>2]=f;H[c+8>>2]=0;L[c+20>>2]=-f;L[c+16>>2]=-g;Sv(c+8|0,c+48|0);e=d<<5;l=e+p|0;b=N(H[l+24>>2],112)+i|0;L[b>>2]=L[c+48>>2]+L[b>>2];L[b+4>>2]=L[c+52>>2]+L[b+4>>2];L[b+8>>2]=L[c+56>>2]+L[b+8>>2];L[b+12>>2]=L[c+60>>2]+L[b+12>>2];L[b+16>>2]=L[c+64>>2]+L[b+16>>2];L[b+20>>2]=L[c+68>>2]+L[b+20>>2];L[b+24>>2]=L[c+72>>2]+L[b+24>>2];L[b+28>>2]=L[c+76>>2]+L[b+28>>2];L[b+32>>2]=L[c+80>>2]+L[b+32>>2];L[b+36>>2]=L[c+84>>2]+L[b+36>>2];L[b+40>>2]=L[c+88>>2]+L[b+40>>2];L[b+44>>2]=L[c+92>>2]+L[b+44>>2];L[b+48>>2]=L[c+96>>2]+L[b+48>>2];L[b+52>>2]=L[c+100>>2]+L[b+52>>2];L[b+56>>2]=L[c+104>>2]+L[b+56>>2];L[b+60>>2]=L[c+108>>2]+L[b+60>>2];m=b- -64|0;L[m>>2]=L[c+112>>2]+L[m>>2];L[b+68>>2]=L[c+116>>2]+L[b+68>>2];L[b+72>>2]=L[c+120>>2]+L[b+72>>2];L[b+76>>2]=L[c+124>>2]+L[b+76>>2];L[b+80>>2]=L[c+128>>2]+L[b+80>>2];L[b+84>>2]=L[c+132>>2]+L[b+84>>2];L[b+88>>2]=L[c+136>>2]+L[b+88>>2];L[b+92>>2]=L[c+140>>2]+L[b+92>>2];L[b+96>>2]=L[c+144>>2]+L[b+96>>2];L[b+100>>2]=L[c+148>>2]+L[b+100>>2];L[b+104>>2]=L[c+152>>2]+L[b+104>>2];e=e+k|0;q=L[e+24>>2];r=L[e+20>>2];b=H[a+340>>2]+N(d,160)|0;h=L[b+120>>2];s=L[e+16>>2];n=L[b+124>>2];o=L[b+128>>2];f=L[e+8>>2];g=L[e+4>>2];b=(H[l+24>>2]<<5)+k|0;j=L[e>>2];L[b>>2]=j+L[b>>2];L[b+4>>2]=g+L[b+4>>2];L[b+8>>2]=f+L[b+8>>2];L[b+16>>2]=O(s+O(O(n*f)-O(g*o)))+L[b+16>>2];L[b+20>>2]=O(r+O(O(o*j)-O(f*h)))+L[b+20>>2];L[b+24>>2]=O(q+O(O(h*g)-O(j*n)))+L[b+24>>2];d=d-1|0;if(d){continue}break}}Oa=c+160|0}function CU(a,b,c,d,e,f){var g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0);a:{if(f){H[c+4>>2]=0;H[c+8>>2]=0;H[c>>2]=1065353216;H[c+12>>2]=0;H[c+16>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+20>>2]=1065353216;H[c+32>>2]=0;H[c+36>>2]=0;H[c+40>>2]=1065353216;H[c+44>>2]=0;H[d+32>>2]=0;H[d+36>>2]=0;H[d+24>>2]=0;H[d+28>>2]=0;H[d+20>>2]=1065353216;H[d+12>>2]=0;H[d+16>>2]=0;H[d+4>>2]=0;H[d+8>>2]=0;H[d>>2]=1065353216;H[d+40>>2]=1065353216;a=d+44|0;break a}m=L[a+8>>2];v=O(O(1)/m);n=L[a+4>>2];y=O(O(1)/n);g=L[a>>2];z=O(O(1)/g);b:{if(!(g!=g|g!=n|g!=m)){H[c+12>>2]=0;L[c>>2]=g;H[c+44>>2]=0;L[c+40>>2]=m;h=O(n*O(0));L[c+36>>2]=h;g=O(g*O(0));L[c+32>>2]=g;H[c+28>>2]=0;i=O(m*O(0));L[c+24>>2]=i;L[c+20>>2]=n;L[c+16>>2]=g;L[c+8>>2]=i;L[c+4>>2]=h;L[d+40>>2]=v;g=O(y*O(0));L[d+36>>2]=g;h=O(z*O(0));L[d+32>>2]=h;H[d+28>>2]=0;i=O(v*O(0));L[d+24>>2]=i;L[d+20>>2]=y;L[d+16>>2]=h;H[d+12>>2]=0;L[d+8>>2]=i;L[d+4>>2]=g;L[d>>2]=z;break b}l=L[b+8>>2];o=L[b+4>>2];k=L[b+12>>2];h=L[b>>2];H[c+44>>2]=0;H[c+28>>2]=0;H[c+12>>2]=0;j=O(h+h);r=O(O(1)-O(h*j));p=O(o+o);A=O(o*p);h=O(r-A);s=O(m*h);q=O(p*l);w=O(j*k);i=O(q-w);t=O(n*i);B=O(j*l);C=O(p*k);p=O(B+C);u=O(g*p);L[c+40>>2]=O(s*h)+O(O(u*p)+O(i*t));q=O(q+w);w=O(j*o);x=k;k=O(l+l);x=O(x*k);o=O(w-x);j=O(l*k);l=O(r-j);L[c+24>>2]=O(s*q)+O(O(u*o)+O(l*t));k=O(B-C);r=O(s*k);j=O(O(O(1)-A)-j);s=O(w+x);L[c+8>>2]=r+O(O(u*j)+O(s*t));t=O(m*q);u=O(g*o);r=O(n*l);L[c+36>>2]=O(t*h)+O(O(u*p)+O(i*r));m=O(m*k);g=O(g*j);n=O(n*s);L[c+32>>2]=O(m*h)+O(O(g*p)+O(i*n));L[c+20>>2]=O(t*q)+O(O(u*o)+O(l*r));L[c+16>>2]=O(m*q)+O(O(g*o)+O(l*n));L[c+4>>2]=O(t*k)+O(O(u*j)+O(s*r));L[c>>2]=O(m*k)+O(O(g*j)+O(s*n));g=O(v*h);m=O(z*p);n=O(y*i);L[d+40>>2]=O(g*h)+O(O(m*p)+O(i*n));t=O(v*q);u=O(z*o);r=O(y*l);L[d+36>>2]=O(t*h)+O(O(u*p)+O(i*r));v=O(v*k);w=O(v*h);h=O(z*j);x=i;i=O(y*s);L[d+32>>2]=w+O(O(h*p)+O(x*i));H[d+28>>2]=0;L[d+24>>2]=O(g*q)+O(O(m*o)+O(l*n));L[d+20>>2]=O(t*q)+O(O(u*o)+O(l*r));L[d+16>>2]=O(v*q)+O(O(h*o)+O(l*i));H[d+12>>2]=0;L[d+8>>2]=O(g*k)+O(O(m*j)+O(s*n));L[d+4>>2]=O(t*k)+O(O(u*j)+O(s*r));L[d>>2]=O(v*k)+O(O(h*j)+O(s*i))}H[d+44>>2]=0;p=L[c+36>>2];q=L[c+20>>2];o=L[c+32>>2];l=L[c>>2];k=L[c+16>>2];j=L[c+4>>2];g=L[e+8>>2];h=L[e>>2];i=L[e+4>>2];L[e+8>>2]=O(L[c+40>>2]*g)+O(O(L[c+8>>2]*h)+O(i*L[c+24>>2]));L[e+4>>2]=O(p*g)+O(O(j*h)+O(i*q));L[e>>2]=O(o*g)+O(O(l*h)+O(i*k));a=e+12|0}H[a>>2]=0}function to(a,b){var c=0,d=0,e=0,f=0,g=0;d=H[a+12>>2];e=d+24|0;c=H[a+8>>2]&2147483647;a:{if(e>>>0<=c>>>0){break a}f=c;c=N(e,3);if(f>>>0>=c>>>0){break a}qo(a,c)}ro(a,e);f=H[b+4>>2];c=H[a>>2]+H[a+12>>2]|0;H[c>>2]=H[b>>2];H[c+4>>2]=f;f=H[b+20>>2];H[c+16>>2]=H[b+16>>2];H[c+20>>2]=f;f=H[b+12>>2];H[c+8>>2]=H[b+8>>2];H[c+12>>2]=f;H[a+12>>2]=e;c=H[b>>2];if(c){e=d+36|0;d=H[a+8>>2]&2147483647;b:{if(e>>>0<=d>>>0){break b}f=d;d=N(e,3);if(f>>>0>=d>>>0){break b}qo(a,d)}ro(a,e);d=H[a>>2]+H[a+12>>2]|0;L[d>>2]=L[c>>2];L[d+4>>2]=L[c+4>>2];L[d+8>>2]=L[c+8>>2];H[a+12>>2]=e}c=H[b+4>>2];if(c){e=e+12|0;d=H[a+8>>2]&2147483647;c:{if(e>>>0<=d>>>0){break c}f=d;d=N(e,3);if(f>>>0>=d>>>0){break c}qo(a,d)}ro(a,e);d=H[a>>2]+H[a+12>>2]|0;L[d>>2]=L[c>>2];L[d+4>>2]=L[c+4>>2];L[d+8>>2]=L[c+8>>2];H[a+12>>2]=e}c=H[b+16>>2];if(c){e=e+28|0;d=H[a+8>>2]&2147483647;d:{if(e>>>0<=d>>>0){break d}f=d;d=N(e,3);if(f>>>0>=d>>>0){break d}qo(a,d)}ro(a,e);d=H[a>>2]+H[a+12>>2]|0;L[d>>2]=L[c>>2];L[d+4>>2]=L[c+4>>2];L[d+8>>2]=L[c+8>>2];L[d+12>>2]=L[c+12>>2];L[d+16>>2]=L[c+16>>2];L[d+20>>2]=L[c+20>>2];L[d+24>>2]=L[c+24>>2];H[a+12>>2]=e}b=H[b+12>>2];e:{if(!b){break e}d=H[b>>2];c=e+4|0;f=H[a+8>>2]&2147483647;f:{if(c>>>0<=f>>>0){break f}g=N(c,3);if(f>>>0>=g>>>0){break f}qo(a,g)}ro(a,c);H[H[a>>2]+H[a+12>>2]>>2]=d;H[a+12>>2]=c;g:{h:{switch(d|0){case 2:e=e+16|0;c=H[a+8>>2]&2147483647;i:{if(e>>>0<=c>>>0){break i}d=c;c=N(e,3);if(d>>>0>=c>>>0){break i}qo(a,c)}ro(a,e);d=H[b+4>>2];c=H[a>>2]+H[a+12>>2]|0;H[c>>2]=H[b>>2];H[c+4>>2]=d;H[c+8>>2]=H[b+8>>2];break g;case 0:e=e+12|0;c=H[a+8>>2]&2147483647;j:{if(e>>>0<=c>>>0){break j}d=c;c=N(e,3);if(d>>>0>=c>>>0){break j}qo(a,c)}ro(a,e);d=H[b+4>>2];c=H[a>>2]+H[a+12>>2]|0;H[c>>2]=H[b>>2];H[c+4>>2]=d;break g;case 4:e=e+44|0;c=H[a+8>>2]&2147483647;k:{if(e>>>0<=c>>>0){break k}d=c;c=N(e,3);if(d>>>0>=c>>>0){break k}qo(a,c)}ro(a,e);c=H[a>>2]+H[a+12>>2]|0;H[c>>2]=H[b>>2];L[c+4>>2]=L[b+4>>2];L[c+8>>2]=L[b+8>>2];L[c+12>>2]=L[b+12>>2];L[c+16>>2]=L[b+16>>2];L[c+20>>2]=L[b+20>>2];L[c+24>>2]=L[b+24>>2];L[c+28>>2]=L[b+28>>2];H[c+32>>2]=H[b+32>>2];F[c+36|0]=I[b+36|0];d=I[b+37|0]|I[b+38|0]<<8;F[c+37|0]=d;F[c+38|0]=d>>>8;F[c+39|0]=I[b+39|0];break g;case 3:break h;default:break e}}e=e+20|0;c=H[a+8>>2]&2147483647;l:{if(e>>>0<=c>>>0){break l}d=c;c=N(e,3);if(d>>>0>=c>>>0){break l}qo(a,c)}ro(a,e);c=H[a>>2]+H[a+12>>2]|0;H[c>>2]=H[b>>2];L[c+4>>2]=L[b+4>>2];L[c+8>>2]=L[b+8>>2];L[c+12>>2]=L[b+12>>2]}H[a+12>>2]=e}}function KU(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=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0);h=L[f+4>>2];k=O(h+h);g=L[f+8>>2];i=O(k*g);l=L[f>>2];j=O(l+l);m=L[f+12>>2];p=O(j*m);r=O(i-p);o=O(j*g);q=O(k*m);n=O(o+q);i=O(i+p);s=O(j*h);t=O(g+g);m=O(t*m);p=O(s-m);o=O(o-q);q=O(s+m);l=O(O(1)-O(l*j));j=O(g*t);g=O(l-j);k=O(h*k);h=O(O(O(1)-k)-j);s=L[d+24>>2];t=L[d+20>>2];x=L[f+24>>2];u=L[f+20>>2];v=L[d+16>>2];j=L[e+4>>2];w=L[f+16>>2];k=O(l-k);a:{if(k>2];s=O(s-x);i=O(s+s);p=O(O(k*k)+O(-.5));t=O(t-u);o=O(t+t);x=O(v-w);q=O(x+x);v=O(O(i*p)-O(k*O(O(r*o)-O(q*m))));u=O(O(l*i)+O(O(r*q)+O(o*m)));w=O(l*u);g=O(O(m*u)+O(O(o*p)-O(k*O(O(l*q)-O(i*r)))));h=O(-j);i=O(O(r*u)+O(O(q*p)-O(k*O(O(m*i)-O(o*l)))));f=1;b:{if(h>i){break b}h=i;f=0;if(!(j>2];o=O(w+v);i=O(-n);c:{d:{if(i>g){break d}if(!(g>n)){break c}i=n}g=i;f=1}u=L[c+4>>2];v=O(-m);w=O(-r);y=O(-l);e:{f:{g:{i=O(-q);if(!(oq;if((c|f)!=1){break g}i=c?q:o}j=O(i+i);h=O(h+h);g=O(g+g);n=O(O(l*j)+O(O(r*h)+O(m*g)));i=O(s-O(O(l*n)+O(O(j*p)+O(k*O(O(r*g)+O(h*v))))));L[a+8>>2]=i;l=O(t-O(O(m*n)+O(O(g*p)+O(k*O(O(l*h)+O(j*w))))));L[a+4>>2]=l;g=O(x-O(O(r*n)+O(O(h*p)+O(k*O(O(m*j)+O(g*y))))));L[a>>2]=g;h=O(u+O(0));j=O(h*h);h=O(O(i*i)+O(O(g*g)+O(l*l)));c=0;if(j>2]=g;L[a>>2]=g*L[a>>2];L[a+4>>2]=g*L[a+4>>2];L[a+8>>2]=g*L[a+8>>2];i=O(h*L[b>>2]);break f}i=O(q-O(P(o)));n=O(n-O(P(g)));j=O(j-O(P(h)));h:{i:{if(nn){L[b>>2]=-n;h=O(0);j=O(0);g=g>O(0)?O(2):O(-2);break h}L[b>>2]=-i;j=o>O(0)?O(1):O(-1);break i}if(i>j){L[b>>2]=-j;h=h>O(0)?O(2):O(-2);j=O(0);g=O(0);break h}L[b>>2]=-i;j=o>O(0)?O(1):O(-1)}h=O(0);g=O(0)}j=O(j+j);n=O(O(l*j)+O(O(r*h)+O(m*g)));L[a+8>>2]=O(l*n)+O(O(j*p)+O(k*O(O(r*g)+O(h*v))));L[a+4>>2]=O(m*n)+O(O(g*p)+O(k*O(O(l*h)+O(j*w))));L[a>>2]=O(r*n)+O(O(h*p)+O(k*O(O(m*j)+O(g*y))));i=L[b>>2]}g=O(i-u);L[b>>2]=g>2];j=O(L[b+16>>2]-L[d+16>>2]);i=O(j+j);j=O(L[b+20>>2]-L[d+20>>2]);n=O(j+j);l=L[d+4>>2];o=L[d+8>>2];j=O(L[b+24>>2]-L[d+24>>2]);m=O(j+j);r=O(O(O(O(-p)*i)-O(n*l))-O(o*m));z=O(o*r);j=L[d+12>>2];t=O(O(j*j)+O(-.5));k=O(O(m*t)+O(j*O(O(l*i)-O(p*n))));q=O(l*r);u=O(O(n*t)+O(j*O(O(p*m)-O(o*i))));v=O(p*r);w=O(O(i*t)+O(j*O(O(o*n)-O(l*m))));i=L[b+4>>2];n=L[b+12>>2];m=L[b>>2];x=O(O(l*i)+O(O(j*n)+O(p*m)));r=L[b+8>>2];y=O(o*r);A=O(O(O(j*r)-O(n*o))-O(p*i));s=O(m*l);B=O(O(O(j*i)-O(n*l))-O(o*m));C=O(r*p);n=O(O(i*o)+O(O(O(j*m)-O(n*p))-O(l*r)));o=O(0);j=O(0);p=O(0);a:{b:{switch(H[a>>2]+1|0){case 3:j=L[a+4>>2];o=O(L[a+8>>2]+j);p=j;break a;case 1:o=L[a+4>>2];j=o;p=j;break a;case 4:p=L[a+12>>2];j=L[a+8>>2];o=L[a+4>>2];break a;case 0:case 2:case 5:case 6:case 7:case 8:break b;default:break a}}F[g|0]=0}r=O(k-z);t=O(u-q);z=O(w-v);m=O(y+x);l=O(s+A);i=O(C+B);c:{if(!(n!=O(0)|i!=O(0)|l!=O(0))){L[h+156>>2]=r+p;L[h+152>>2]=t+j;L[h+148>>2]=z+o;L[h+144>>2]=r-p;L[h+140>>2]=t-j;L[h+136>>2]=z-o;q=O(i+i);w=O(l*q);k=O(n+n);x=O(m*k);u=O(w-x);y=O(l*k);A=O(m*q);v=O(y+A);w=O(x+w);s=O(k*i);B=O(l+l);C=O(m*B);m=O(s-C);x=O(y-A);y=O(s+C);k=O(O(1)-O(n*k));i=O(i*q);n=O(k-i);q=k;k=O(l*B);l=O(q-k);i=O(O(O(1)-i)-k);a=1;break c}k=O(n+n);v=O(l*k);q=O(i+i);A=O(m*q);x=O(v-A);u=O(m*k);s=O(l*q);w=O(u+s);B=O(O(1)-O(n*k));q=O(i*q);n=O(B-q);C=O(O(O(P(O(x*o)))+O(P(O(w*j))))+O(P(O(n*p))));L[h+156>>2]=r+C;k=O(k*i);i=O(l+l);m=O(m*i);y=O(k+m);i=O(l*i);l=O(B-i);u=O(s-u);s=O(O(O(P(O(y*o)))+O(P(O(l*j))))+O(P(O(u*p))));L[h+152>>2]=t+s;L[h+144>>2]=r-C;i=O(O(O(1)-q)-i);m=O(k-m);v=O(v+A);k=O(O(O(P(O(i*o)))+O(P(O(m*j))))+O(P(O(v*p))));L[h+148>>2]=z+k;L[h+140>>2]=t-s;L[h+136>>2]=z-k;a=0}b=H[c+4>>2];H[h+128>>2]=c;H[h+124>>2]=b;k=L[c+8>>2];q=L[c+12>>2];L[h+120>>2]=O(1)/L[c+16>>2];L[h+112>>2]=O(1)/q;L[h+116>>2]=O(1)/k;H[h+24>>2]=0;H[h+20>>2]=f;F[h+32|0]=0;H[h+28>>2]=0;H[h+16>>2]=0;L[h+96>>2]=p;L[h+92>>2]=j;L[h+88>>2]=o;L[h+84>>2]=r;L[h+80>>2]=t;L[h+76>>2]=z;L[h+72>>2]=n;L[h+68>>2]=u;L[h- -64>>2]=v;L[h+60>>2]=w;L[h+56>>2]=l;L[h+52>>2]=m;L[h+48>>2]=x;L[h+44>>2]=y;H[h+12>>2]=e;F[h+104|0]=a;H[h+8>>2]=127904;L[h+40>>2]=i;a=h+112|0;H[h+36>>2]=a;XZ(a,d,h+136|0,0,h+8|0);F[g|0]=I[h+32|0];Oa=h+160|0;return H[h+16>>2]}function GU(a,b,c,d,e){var f=0,g=0,h=O(0),i=O(0),j=0,k=O(0),l=O(0),m=0,n=O(0),o=O(0),p=0,q=O(0),r=O(0),s=0,t=0;f=Oa-144|0;Oa=f;H[e>>2]=3;g=H[b+12>>2];H[f+136>>2]=H[b+8>>2];H[f+140>>2]=g;g=H[b+4>>2];H[f+128>>2]=H[b>>2];H[f+132>>2]=g;g=H[b+28>>2];H[f+120>>2]=H[b+24>>2];H[f+124>>2]=g;g=H[b+20>>2];H[f+112>>2]=H[b+16>>2];H[f+116>>2]=g;g=H[b+44>>2];H[f+104>>2]=H[b+40>>2];H[f+108>>2]=g;g=H[b+36>>2];H[f+96>>2]=H[b+32>>2];H[f+100>>2]=g;h=L[f+128>>2];n=O(L[f+112>>2]-h);i=L[f+132>>2];k=O(L[f+100>>2]-i);h=O(L[f+96>>2]-h);i=O(L[f+116>>2]-i);l=O(O(n*k)-O(h*i));o=O(l*l);q=i;i=L[f+136>>2];l=O(L[f+104>>2]-i);i=O(L[f+120>>2]-i);k=O(O(q*l)-O(k*i));h=O(O(i*h)-O(l*n));a:{if(O(o+O(O(k*k)+O(h*h)))<=O(1.1920928955078125e-7)){H[e>>2]=2;k=L[b+8>>2];h=O(L[b+24>>2]-k);l=L[b>>2];n=O(L[b+16>>2]-l);o=L[b+4>>2];i=O(L[b+20>>2]-o);r=O(O(h*h)+O(O(n*n)+O(i*i)));if(r<=O(1.1920928955078125e-7)){H[e>>2]=1;c=H[b+12>>2];H[a+8>>2]=H[b+8>>2];H[a+12>>2]=c;c=H[b+4>>2];H[a>>2]=H[b>>2];H[a+4>>2]=c;break a}H[a+12>>2]=0;q=h;h=O(R(O(O(O(O(O(-l)*n)-O(i*o))-O(k*h))/r),O(1)));h=h>O(0)?h:O(0);L[a+8>>2]=k+O(q*h);L[a+4>>2]=o+O(i*h);L[a>>2]=l+O(n*h);break a}H[f+88>>2]=H[21749];g=H[21748];H[f+80>>2]=H[21747];H[f+84>>2]=g;vV(f+48|0,f+128|0,f+112|0,f+96|0,f+80|0,f+92|0,f- -64|0);s=H[f+92>>2];if((s|0)!=3){p=H[f+80>>2];m=H[f+84>>2]<<4;g=m+b|0;j=H[g+4>>2];H[f+48>>2]=H[g>>2];H[f+52>>2]=j;j=H[g+12>>2];H[f+56>>2]=H[g+8>>2];H[f+60>>2]=j;g=c+m|0;j=H[g+12>>2];H[f+40>>2]=H[g+8>>2];H[f+44>>2]=j;j=H[g+4>>2];H[f+32>>2]=H[g>>2];H[f+36>>2]=j;p=p<<4;g=p+d|0;j=H[g+12>>2];H[f+24>>2]=H[g+8>>2];H[f+28>>2]=j;j=H[g+4>>2];H[f+16>>2]=H[g>>2];H[f+20>>2]=j;g=d+m|0;m=H[g+4>>2];H[f>>2]=H[g>>2];H[f+4>>2]=m;m=H[g+8>>2];j=H[g+12>>2];g=b+p|0;t=H[g+4>>2];H[b>>2]=H[g>>2];H[b+4>>2]=t;H[f+8>>2]=m;H[f+12>>2]=j;m=H[g+12>>2];H[b+8>>2]=H[g+8>>2];H[b+12>>2]=m;g=H[f+52>>2];H[b+16>>2]=H[f+48>>2];H[b+20>>2]=g;g=H[f+60>>2];H[b+24>>2]=H[f+56>>2];H[b+28>>2]=g;b=c+p|0;g=H[b+4>>2];H[c>>2]=H[b>>2];H[c+4>>2]=g;g=H[b+12>>2];H[c+8>>2]=H[b+8>>2];H[c+12>>2]=g;b=H[f+36>>2];H[c+16>>2]=H[f+32>>2];H[c+20>>2]=b;b=H[f+44>>2];H[c+24>>2]=H[f+40>>2];H[c+28>>2]=b;b=H[f+28>>2];H[d+8>>2]=H[f+24>>2];H[d+12>>2]=b;b=H[f+20>>2];H[d>>2]=H[f+16>>2];H[d+4>>2]=b;b=H[f+4>>2];H[d+16>>2]=H[f>>2];H[d+20>>2]=b;b=H[f+12>>2];H[d+24>>2]=H[f+8>>2];H[d+28>>2]=b;H[e>>2]=s}b=H[f+68>>2];H[a>>2]=H[f+64>>2];H[a+4>>2]=b;b=H[f+76>>2];H[a+8>>2]=H[f+72>>2];H[a+12>>2]=b}Oa=f+144|0}function y0(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=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=0,v=O(0),w=O(0);f=Oa-48|0;Oa=f;if(f_(H[a+5312>>2],c,d,e)){a:{if(I[a+16|0]){q=L[c>>2];L[f>>2]=q;j=L[c+4>>2];L[f+4>>2]=j;m=L[c+8>>2];L[f+8>>2]=m;L[f+12>>2]=L[d>>2];L[f+16>>2]=L[d+4>>2];L[f+20>>2]=L[d+8>>2];L[f+24>>2]=L[e>>2];L[f+28>>2]=L[e+4>>2];L[f+32>>2]=L[e+8>>2];break a}h=H[a+8>>2];o=L[h+28>>2];p=L[h+16>>2];i=L[h+32>>2];l=L[h+20>>2];u=I[h+72|0];r=L[h+4>>2];m=L[h+8>>2];j=L[c>>2];k=L[c+4>>2];s=L[h+12>>2];n=L[c+8>>2];t=L[h+24>>2];q=O(O(O(j*L[h>>2])+O(k*s))+O(n*t));L[f>>2]=q;m=O(O(O(j*m)+O(k*l))+O(n*i));L[f+8>>2]=m;j=O(O(O(j*r)+O(k*p))+O(n*o));L[f+4>>2]=j;n=L[h>>2];r=L[h+4>>2];c=(u?24:12)+f|0;k=L[d>>2];v=l;l=L[d+4>>2];w=i;i=L[d+8>>2];L[c+8>>2]=O(O(k*L[h+8>>2])+O(v*l))+O(w*i);L[c+4>>2]=O(O(k*r)+O(p*l))+O(o*i);L[c>>2]=O(O(k*n)+O(s*l))+O(t*i);l=L[h+28>>2];k=L[h+16>>2];n=L[h+24>>2];r=L[h>>2];s=L[h+12>>2];t=L[h+4>>2];c=(u?12:24)+f|0;o=L[e>>2];p=L[e+4>>2];i=L[e+8>>2];L[c+8>>2]=O(O(o*L[h+8>>2])+O(p*L[h+20>>2]))+O(i*L[h+32>>2]);L[c+4>>2]=O(O(o*t)+O(p*k))+O(i*l);L[c>>2]=O(O(o*r)+O(p*s))+O(i*n)}e=H[b+8>>2];b=H[a+12>>2];if(b){b=I[b+e|0]}else{b=56}c=H[a+868>>2];if((c|0)==16){c=a+880|0;i0(c,a+20|0,H[a+788>>2],I[a+852|0],a+596|0);i0(c,a+56|0,H[a+792>>2],I[a+853|0],a+608|0);i0(c,a+92|0,H[a+796>>2],I[a+854|0],a+620|0);i0(c,a+128|0,H[a+800>>2],I[a+855|0],a+632|0);i0(c,a+164|0,H[a+804>>2],I[a+856|0],a+644|0);i0(c,a+200|0,H[a+808>>2],I[a+857|0],a+656|0);i0(c,a+236|0,H[a+812>>2],I[a+858|0],a+668|0);i0(c,a+272|0,H[a+816>>2],I[a+859|0],a+680|0);i0(c,a+308|0,H[a+820>>2],I[a+860|0],a+692|0);i0(c,a+344|0,H[a+824>>2],I[a+861|0],a+704|0);i0(c,a+380|0,H[a+828>>2],I[a+862|0],a+716|0);i0(c,a+416|0,H[a+832>>2],I[a+863|0],a+728|0);i0(c,a+452|0,H[a+836>>2],I[a+864|0],a+740|0);i0(c,a+488|0,H[a+840>>2],I[a+865|0],a+752|0);i0(c,a+524|0,H[a+844>>2],I[a+866|0],a+764|0);i0(c,a+560|0,H[a+848>>2],I[a+867|0],a+776|0);m=L[f+8>>2];j=L[f+4>>2];q=L[f>>2];c=0}H[a+868>>2]=c+1;h=a+20|0;d=h+N(c,36)|0;L[d+8>>2]=m;L[d+4>>2]=j;L[d>>2]=q;L[d+12>>2]=L[f+12>>2];L[d+16>>2]=L[f+16>>2];L[d+20>>2]=L[f+20>>2];L[d+24>>2]=L[f+24>>2];L[d+28>>2]=L[f+28>>2];L[d+32>>2]=L[f+32>>2];a=N(c,12)+a|0;H[a+596>>2]=H[g>>2];H[a+600>>2]=H[g+4>>2];H[a+604>>2]=H[g+8>>2];H[(h+(c<<2)|0)+768>>2]=e;F[(c+h|0)+832|0]=b}Oa=f+48|0;return 1}function aA(a,b,c,d){var e=0,f=0,g=0,h=0,i=O(0),j=O(0),k=0,l=0,m=0,n=0,o=0,p=0,q=O(0),r=O(0),s=O(0),t=O(0),u=0,v=O(0),w=O(0),x=0,y=0,z=0,A=0,B=0,C=0;a:{n=H[a+24>>2];f=J[n+2>>1];if(!f){break a}x=I[n|0]==7?176:128;y=f+n|0;e=H[a+60>>2];k=H[a+92>>2];p=H[a+124>>2];f=H[a+28>>2];g=n;while(1){m=g;g=g+160|0;z=I[m+11|0];A=I[m+10|0];B=I[m+9|0];C=I[m+8|0];o=0;u=I[m+1|0];if(u){while(1){l=k;h=e;v=L[g+60>>2];w=L[g+56>>2];i=L[g+52>>2];j=L[g+48>>2];e=0;b:{if(!f){break b}e=f;if(I[m+4|0]<=o>>>0){break b}L[f>>2]=j;e=f+4|0}f=e;k=0;e=0;c:{if(!h){break c}e=h;if(I[m+5|0]<=o>>>0){break c}L[h>>2]=i;e=h+4|0}d:{if(!l){break d}if(I[m+6|0]<=o>>>0){k=l;break d}L[l>>2]=w;k=l+4|0}e:{if(!p){p=0;break e}if(I[m+7|0]<=o>>>0){break e}L[p>>2]=v;p=p+4|0}g=g+x|0;q=O(q+v);r=O(r+w);s=O(s+i);t=O(t+j);o=o+1|0;if((u|0)!=(o|0)){continue}break}}if(g>>>0>>0){continue}break}k=B&1;f:{if(!(C&1)|J[a+8>>1]!=65535|(J[a+10>>1]!=65535|t==O(0))){break f}e=H[c>>2];i=L[e+28>>2];f=H[d>>2];j=L[f+28>>2];if(!(i>2];h=H[e+72>>2];e=H[n+144>>2];f=H[b+8>>2];H[b+8>>2]=f+1;g=H[b+4>>2]+(f<<5)|0;L[g+8>>2]=i>2]=t;H[g>>2]=e;h=h<<7;e=l<<7;f=h>>>0>e>>>0;H[g+16>>2]=f?h:e;H[g+12>>2]=f?e:h}g=A&1;g:{if(!k|J[a+40>>1]!=65535|(J[a+42>>1]!=65535|s==O(0))){break g}e=H[c+4>>2];i=L[e+28>>2];f=H[d+4>>2];j=L[f+28>>2];if(!(i>2];h=H[e+72>>2];e=H[n+148>>2];f=H[b+8>>2];H[b+8>>2]=f+1;k=H[b+4>>2]+(f<<5)|0;L[k+8>>2]=i>2]=s;H[k>>2]=e;h=h<<7;e=l<<7;f=h>>>0>e>>>0;H[k+16>>2]=f?h:e;H[k+12>>2]=f?e:h}k=z&1;h:{if(!g|J[a+72>>1]!=65535|(J[a+74>>1]!=65535|r==O(0))){break h}e=H[c+8>>2];i=L[e+28>>2];f=H[d+8>>2];j=L[f+28>>2];if(!(i>2];h=H[e+72>>2];e=H[n+152>>2];f=H[b+8>>2];H[b+8>>2]=f+1;g=H[b+4>>2]+(f<<5)|0;L[g+8>>2]=i>2]=r;H[g>>2]=e;h=h<<7;e=l<<7;f=h>>>0>e>>>0;H[g+16>>2]=f?h:e;H[g+12>>2]=f?e:h}if(!k|J[a+104>>1]!=65535|(J[a+106>>1]!=65535|q==O(0))){break a}c=H[c+12>>2];i=L[c+28>>2];a=H[d+12>>2];j=L[a+28>>2];if(!(i>2];d=H[c+72>>2];c=H[n+156>>2];a=H[b+8>>2];H[b+8>>2]=a+1;e=H[b+4>>2]+(a<<5)|0;L[e+8>>2]=i>2]=q;H[e>>2]=c;c=d<<7;b=f<<7;a=c>>>0>b>>>0;H[e+16>>2]=a?c:b;H[e+12>>2]=a?b:c}}function fz(a,b,c,d,e,f){var g=0,h=0,i=O(0),j=O(0),k=0,l=O(0),m=0,n=O(0),o=0,p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=0,A=O(0),B=O(0),C=O(0);o=H[a+7688>>2];g=H[a+7684>>2];if(g>>>0>e>>>0){while(1){k=N(e,44)+a|0;m=(J[k>>1]<<6)+b|0;w=L[m+8>>2];x=L[m+4>>2];y=L[m>>2];a:{b:{c:{d:{e:{m=f;if(m>>>0>=o>>>0){break e}while(1){h=N(m,12)+a|0;f:{if(O(O(w*L[h+6152>>2])+O(O(y*L[h+6144>>2])+O(x*L[h+6148>>2])))>2]!=L[k+16>>2]|L[h+2824>>2]!=L[k+8>>2]){break f}if(L[h+2828>>2]==L[k+12>>2]){break e}}m=m+1|0;if((m|0)!=(o|0)){continue}break}m=o;break d}if((o|0)!=(m|0)){break c}}h=(o|0)==32|z;z=1;if(h&1){break a}h=I[k+4|0];A=L[k+16>>2];B=L[k+8>>2];C=L[k+12>>2];p=L[c+8>>2];q=O(w+w);r=L[c>>2];s=O(y+y);t=O(x+x);u=L[c+4>>2];l=O(O(p*q)+O(O(r*s)+O(t*u)));g=N(o,104)+a|0;i=L[c+12>>2];j=O(O(i*i)+O(-.5));L[g+2840>>2]=O(p*l)+O(O(q*j)-O(i*O(O(r*t)-O(s*u))));L[g+2836>>2]=O(u*l)+O(O(t*j)-O(i*O(O(p*s)-O(q*r))));L[g+2832>>2]=O(r*l)+O(O(s*j)-O(i*O(O(u*q)-O(t*p))));j=L[d+8>>2];n=L[d+4>>2];l=L[d+12>>2];v=L[d>>2];z=0;G[g+2818>>1]=0;L[g+2828>>2]=C;L[g+2824>>2]=B;F[g+2816|0]=0;L[g+2820>>2]=A;F[g+2817|0]=h;L[g+2916>>2]=O(p*j)+O(O(u*n)+O(O(i*l)+O(r*v)));L[g+2912>>2]=O(v*u)+O(O(O(i*j)-O(l*p))-O(r*n));L[g+2908>>2]=O(j*r)+O(O(O(i*n)-O(l*u))-O(p*v));L[g+2904>>2]=O(n*p)+O(O(O(i*v)-O(l*r))-O(u*j));i=O(O(j*q)+O(O(v*s)+O(t*n)));p=O(O(l*l)+O(-.5));L[g+2852>>2]=O(j*i)+O(O(q*p)-O(l*O(O(v*t)-O(s*n))));L[g+2848>>2]=O(n*i)+O(O(t*p)-O(l*O(O(j*s)-O(q*v))));L[g+2844>>2]=O(v*i)+O(O(s*p)-O(l*O(O(n*q)-O(t*j))));g=N(o,12)+a|0;L[g+6152>>2]=w;L[g+6148>>2]=x;L[g+6144>>2]=y;h=(o<<2)+a|0;H[h+7296>>2]=I[k+5|0];g=N(o,24)+a|0;L[g+6528>>2]=L[k+20>>2];L[g+6532>>2]=L[k+24>>2];L[g+6536>>2]=L[k+28>>2];L[g+6540>>2]=L[k+32>>2];L[g+6544>>2]=L[k+36>>2];L[g+6548>>2]=L[k+40>>2];H[h+7556>>2]=-1;o=o+1|0;g=65535;break b}l=L[k+20>>2];i=L[k+24>>2];g=N(m,24)+a|0;h=g+6536|0;j=L[h>>2];n=L[k+28>>2];L[h>>2]=j>2];L[h>>2]=i>j?j:i;h=g+6528|0;i=L[h>>2];L[h>>2]=i>2];i=L[k+36>>2];h=g+6548|0;j=L[h>>2];n=L[k+40>>2];L[h>>2]=j>n?j:n;h=g+6544|0;j=L[h>>2];L[h>>2]=i>2];L[g>>2]=i>l?i:l;g=(m<<2)+a|0;h=g+7296|0;H[h>>2]=H[h>>2]+I[k+5|0];g=H[g+7424>>2]}G[k+2>>1]=g;H[((m<<2)+a|0)+7424>>2]=e;g=H[a+7684>>2]}e=e+1|0;if(g>>>0>e>>>0){continue}break}}H[a+7688>>2]=o;return z}function iN(a){H[a+100>>2]=-128;H[a+13308>>2]=-128;H[a+13204>>2]=-128;H[a+13100>>2]=-128;H[a+12996>>2]=-128;H[a+12892>>2]=-128;H[a+12788>>2]=-128;H[a+12684>>2]=-128;H[a+12580>>2]=-128;H[a+12476>>2]=-128;H[a+12372>>2]=-128;H[a+12268>>2]=-128;H[a+12164>>2]=-128;H[a+12060>>2]=-128;H[a+11956>>2]=-128;H[a+11852>>2]=-128;H[a+11748>>2]=-128;H[a+11644>>2]=-128;H[a+11540>>2]=-128;H[a+11436>>2]=-128;H[a+11332>>2]=-128;H[a+11228>>2]=-128;H[a+11124>>2]=-128;H[a+11020>>2]=-128;H[a+10916>>2]=-128;H[a+10812>>2]=-128;H[a+10708>>2]=-128;H[a+10604>>2]=-128;H[a+10500>>2]=-128;H[a+10396>>2]=-128;H[a+10292>>2]=-128;H[a+10188>>2]=-128;H[a+10084>>2]=-128;H[a+9980>>2]=-128;H[a+9876>>2]=-128;H[a+9772>>2]=-128;H[a+9668>>2]=-128;H[a+9564>>2]=-128;H[a+9460>>2]=-128;H[a+9356>>2]=-128;H[a+9252>>2]=-128;H[a+9148>>2]=-128;H[a+9044>>2]=-128;H[a+8940>>2]=-128;H[a+8836>>2]=-128;H[a+8732>>2]=-128;H[a+8628>>2]=-128;H[a+8524>>2]=-128;H[a+8420>>2]=-128;H[a+8316>>2]=-128;H[a+8212>>2]=-128;H[a+8108>>2]=-128;H[a+8004>>2]=-128;H[a+7900>>2]=-128;H[a+7796>>2]=-128;H[a+7692>>2]=-128;H[a+7588>>2]=-128;H[a+7484>>2]=-128;H[a+7380>>2]=-128;H[a+7276>>2]=-128;H[a+7172>>2]=-128;H[a+7068>>2]=-128;H[a+6964>>2]=-128;H[a+6860>>2]=-128;H[a+6756>>2]=-128;H[a+6652>>2]=-128;H[a+6548>>2]=-128;H[a+6444>>2]=-128;H[a+6340>>2]=-128;H[a+6236>>2]=-128;H[a+6132>>2]=-128;H[a+6028>>2]=-128;H[a+5924>>2]=-128;H[a+5820>>2]=-128;H[a+5716>>2]=-128;H[a+5612>>2]=-128;H[a+5508>>2]=-128;H[a+5404>>2]=-128;H[a+5300>>2]=-128;H[a+5196>>2]=-128;H[a+5092>>2]=-128;H[a+4988>>2]=-128;H[a+4884>>2]=-128;H[a+4780>>2]=-128;H[a+4676>>2]=-128;H[a+4572>>2]=-128;H[a+4468>>2]=-128;H[a+4364>>2]=-128;H[a+4260>>2]=-128;H[a+4156>>2]=-128;H[a+4052>>2]=-128;H[a+3948>>2]=-128;H[a+3844>>2]=-128;H[a+3740>>2]=-128;H[a+3636>>2]=-128;H[a+3532>>2]=-128;H[a+3428>>2]=-128;H[a+3324>>2]=-128;H[a+3220>>2]=-128;H[a+3116>>2]=-128;H[a+3012>>2]=-128;H[a+2908>>2]=-128;H[a+2804>>2]=-128;H[a+2700>>2]=-128;H[a+2596>>2]=-128;H[a+2492>>2]=-128;H[a+2388>>2]=-128;H[a+2284>>2]=-128;H[a+2180>>2]=-128;H[a+2076>>2]=-128;H[a+1972>>2]=-128;H[a+1868>>2]=-128;H[a+1764>>2]=-128;H[a+1660>>2]=-128;H[a+1556>>2]=-128;H[a+1452>>2]=-128;H[a+1348>>2]=-128;H[a+1244>>2]=-128;H[a+1140>>2]=-128;H[a+1036>>2]=-128;H[a+932>>2]=-128;H[a+828>>2]=-128;H[a+724>>2]=-128;H[a+620>>2]=-128;H[a+516>>2]=-128;H[a+412>>2]=-128;H[a+308>>2]=-128;H[a+204>>2]=-128}function yT(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;h=b&65535;j=H[a+36>>2];a:{if(h>>>0>=j>>>0){break a}d=H[a+40>>2];c=J[d+(h<<1)>>1];if((c|0)==65535|c>>>0>=j>>>0){break a}f=H[a+48>>2];if(J[f+(h<<1)>>1]!=(b>>>16|0)){break a}g=H[a+28>>2];m=g+(c<<2)|0;k=H[m>>2];if(!k){break a}e=k>>>16|0;b:{c:{switch((k&65535)-3|0){case 1:l=H[a+8>>2];if(l>>>0<=e>>>0){break a}i=H[a+32>>2];if(i){f=i-1|0;H[a+32>>2]=f;H[m>>2]=H[g+(f<<2)>>2];d=H[a+40>>2];g=H[a+44>>2];f=g+(f<<1)|0;G[d+(J[f>>1]<<1)>>1]=c;G[g+(c<<1)>>1]=J[f>>1];G[f>>1]=b;c=h<<1;G[c+d>>1]=65535;H[a+52>>2]=H[a+52>>2]+1;f=H[a+48>>2];c=c+f|0;G[c>>1]=J[c>>1]+1}c=l-1|0;d:{if((c|0)==(e|0)){break d}g=H[H[a+4>>2]+N(c,72)>>2];h=g&65535;if(h>>>0>=j>>>0){break d}d=J[(h<<1)+d>>1];if((d|0)==65535|d>>>0>=j>>>0|J[(h<<1)+f>>1]!=(g>>>16|0)){break d}H[H[a+28>>2]+(d<<2)>>2]=k}H[a+8>>2]=c;d=N(e,72);e=H[a+4>>2];d=d+e|0;c=e+N(c,72)|0;H[d>>2]=H[c>>2];e=H[c+36>>2];H[d+32>>2]=H[c+32>>2];H[d+36>>2]=e;e=H[c+28>>2];H[d+24>>2]=H[c+24>>2];H[d+28>>2]=e;e=H[c+20>>2];H[d+16>>2]=H[c+16>>2];H[d+20>>2]=e;e=H[c+12>>2];H[d+8>>2]=H[c+8>>2];H[d+12>>2]=e;L[d+40>>2]=L[c+40>>2];L[d+44>>2]=L[c+44>>2];L[d+48>>2]=L[c+48>>2];L[d+52>>2]=L[c+52>>2];L[d+56>>2]=L[c+56>>2];L[d+60>>2]=L[c+60>>2];L[d- -64>>2]=L[c- -64>>2];break b;case 0:break c;default:break a}}l=H[a+20>>2];if(l>>>0<=e>>>0){break a}i=H[a+32>>2];if(i){f=i-1|0;H[a+32>>2]=f;H[m>>2]=H[g+(f<<2)>>2];d=H[a+40>>2];g=H[a+44>>2];f=g+(f<<1)|0;G[d+(J[f>>1]<<1)>>1]=c;G[g+(c<<1)>>1]=J[f>>1];G[f>>1]=b;c=h<<1;G[c+d>>1]=65535;H[a+52>>2]=H[a+52>>2]+1;f=H[a+48>>2];c=c+f|0;G[c>>1]=J[c>>1]+1}c=l-1|0;e:{if((c|0)==(e|0)){break e}g=H[H[a+16>>2]+(c<<6)>>2];h=g&65535;if(h>>>0>=j>>>0){break e}d=J[(h<<1)+d>>1];if((d|0)==65535|d>>>0>=j>>>0|J[(h<<1)+f>>1]!=(g>>>16|0)){break e}H[H[a+28>>2]+(d<<2)>>2]=k}H[a+20>>2]=c;d=e<<6;e=H[a+16>>2];d=d+e|0;c=e+(c<<6)|0;H[d>>2]=H[c>>2];e=H[c+36>>2];H[d+32>>2]=H[c+32>>2];H[d+36>>2]=e;e=H[c+28>>2];H[d+24>>2]=H[c+24>>2];H[d+28>>2]=e;e=H[c+20>>2];H[d+16>>2]=H[c+16>>2];H[d+20>>2]=e;e=H[c+12>>2];H[d+8>>2]=H[c+8>>2];H[d+12>>2]=e;L[d+40>>2]=L[c+40>>2];L[d+44>>2]=L[c+44>>2];L[d+48>>2]=L[c+48>>2];L[d+52>>2]=L[c+52>>2];e=H[c+60>>2];H[d+56>>2]=H[c+56>>2];H[d+60>>2]=e}d=0;a=H[a+56>>2];if(H[a+72>>2]){while(1){c=H[H[a+68>>2]+(d<<2)>>2];if(H[c+264>>2]==(b|0)){H[c+264>>2]=-1}d=d+1|0;if(d>>>0>2]){continue}break}}i=1}return i|0}function O0(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=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=0,v=O(0),w=O(0);f=Oa-48|0;Oa=f;a:{if(I[a+16|0]){q=L[c>>2];L[f>>2]=q;j=L[c+4>>2];L[f+4>>2]=j;m=L[c+8>>2];L[f+8>>2]=m;L[f+12>>2]=L[d>>2];L[f+16>>2]=L[d+4>>2];L[f+20>>2]=L[d+8>>2];L[f+24>>2]=L[e>>2];L[f+28>>2]=L[e+4>>2];L[f+32>>2]=L[e+8>>2];break a}h=H[a+8>>2];o=L[h+28>>2];p=L[h+16>>2];i=L[h+32>>2];l=L[h+20>>2];u=I[h+72|0];r=L[h+4>>2];m=L[h+8>>2];j=L[c>>2];k=L[c+4>>2];s=L[h+12>>2];n=L[c+8>>2];t=L[h+24>>2];q=O(O(O(j*L[h>>2])+O(k*s))+O(n*t));L[f>>2]=q;m=O(O(O(j*m)+O(k*l))+O(n*i));L[f+8>>2]=m;j=O(O(O(j*r)+O(k*p))+O(n*o));L[f+4>>2]=j;n=L[h>>2];r=L[h+4>>2];c=(u?24:12)+f|0;k=L[d>>2];v=l;l=L[d+4>>2];w=i;i=L[d+8>>2];L[c+8>>2]=O(O(k*L[h+8>>2])+O(v*l))+O(w*i);L[c+4>>2]=O(O(k*r)+O(p*l))+O(o*i);L[c>>2]=O(O(k*n)+O(s*l))+O(t*i);l=L[h+28>>2];k=L[h+16>>2];n=L[h+24>>2];r=L[h>>2];s=L[h+12>>2];t=L[h+4>>2];c=(u?12:24)+f|0;o=L[e>>2];p=L[e+4>>2];i=L[e+8>>2];L[c+8>>2]=O(O(o*L[h+8>>2])+O(p*L[h+20>>2]))+O(i*L[h+32>>2]);L[c+4>>2]=O(O(o*t)+O(p*k))+O(i*l);L[c>>2]=O(O(o*r)+O(p*s))+O(i*n)}e=H[b+8>>2];b=H[a+12>>2];if(b){b=I[b+e|0]}else{b=56}c=H[a+868>>2];if((c|0)==16){c=a+880|0;k0(c,a+20|0,H[a+788>>2],I[a+852|0],a+596|0);k0(c,a+56|0,H[a+792>>2],I[a+853|0],a+608|0);k0(c,a+92|0,H[a+796>>2],I[a+854|0],a+620|0);k0(c,a+128|0,H[a+800>>2],I[a+855|0],a+632|0);k0(c,a+164|0,H[a+804>>2],I[a+856|0],a+644|0);k0(c,a+200|0,H[a+808>>2],I[a+857|0],a+656|0);k0(c,a+236|0,H[a+812>>2],I[a+858|0],a+668|0);k0(c,a+272|0,H[a+816>>2],I[a+859|0],a+680|0);k0(c,a+308|0,H[a+820>>2],I[a+860|0],a+692|0);k0(c,a+344|0,H[a+824>>2],I[a+861|0],a+704|0);k0(c,a+380|0,H[a+828>>2],I[a+862|0],a+716|0);k0(c,a+416|0,H[a+832>>2],I[a+863|0],a+728|0);k0(c,a+452|0,H[a+836>>2],I[a+864|0],a+740|0);k0(c,a+488|0,H[a+840>>2],I[a+865|0],a+752|0);k0(c,a+524|0,H[a+844>>2],I[a+866|0],a+764|0);k0(c,a+560|0,H[a+848>>2],I[a+867|0],a+776|0);m=L[f+8>>2];j=L[f+4>>2];q=L[f>>2];c=0}H[a+868>>2]=c+1;h=a+20|0;d=h+N(c,36)|0;L[d+8>>2]=m;L[d+4>>2]=j;L[d>>2]=q;L[d+12>>2]=L[f+12>>2];L[d+16>>2]=L[f+16>>2];L[d+20>>2]=L[f+20>>2];L[d+24>>2]=L[f+24>>2];L[d+28>>2]=L[f+28>>2];L[d+32>>2]=L[f+32>>2];a=N(c,12)+a|0;H[a+596>>2]=H[g>>2];H[a+600>>2]=H[g+4>>2];H[a+604>>2]=H[g+8>>2];H[(h+(c<<2)|0)+768>>2]=e;F[(c+h|0)+832|0]=b;Oa=f+48|0;return 1}function _w(a,b,c,d,e,f){a=a|0;b=O(b);c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=O(0),l=0,m=0,n=O(0),o=O(0),p=O(0),q=0,r=0,s=O(0),t=O(0),u=O(0),v=O(0),w=0,x=0,y=0,z=O(0),A=0,B=0,C=0,D=0,E=0,G=0,J=0,K=0,M=0;g=Oa-176|0;Oa=g;a:{if(I[a+488|0]){o5(H[33808],8,10222,893,65748,0);break a}j=a+112|0;Hw(a,j);C=H[a+448>>2];l=H[a+444>>2];D=H[a+468>>2];G=S6(H[f+40>>2],0,N(D,e)<<2);if(!e){break a}J=l+(c<<5)|0;z=O(O(1)/b);K=C<<5;E=F[H[a+476>>2]]&1;while(1){l=N(A,12)+d|0;Ra[H[H[l>>2]+160>>2]](l,g+128|0);i=H[J+16>>2];l=H[f+52>>2];H[g+120>>2]=0;H[g+112>>2]=0;H[g+116>>2]=0;H[g+104>>2]=0;H[g+108>>2]=0;H[g+96>>2]=0;H[g+100>>2]=0;H[g+88>>2]=0;H[g+92>>2]=0;H[g+80>>2]=0;H[g+84>>2]=0;M=Fw(l,C,g+80|0);h=S6(H[g+92>>2],0,K);b=L[i+8>>2];s=L[i+12>>2];t=L[i>>2];u=L[i+4>>2];H[g+76>>2]=0;H[g+60>>2]=0;k=L[g+160>>2];n=O(k+k);k=L[g+152>>2];o=O(k+k);k=L[g+156>>2];p=O(k+k);v=O(O(b*n)+O(O(t*o)+O(u*p)));k=O(O(s*s)+O(-.5));L[g+72>>2]=O(b*v)+O(O(n*k)-O(s*O(O(t*p)-O(o*u))));L[g+68>>2]=O(u*v)+O(O(p*k)-O(s*O(O(b*o)-O(n*t))));L[g+64>>2]=O(t*v)+O(O(o*k)-O(s*O(O(u*n)-O(p*b))));n=L[g+136>>2];n=O(n+n);o=L[g+128>>2];o=O(o+o);p=L[g+132>>2];p=O(p+p);v=O(O(b*n)+O(O(t*o)+O(u*p)));L[g+56>>2]=O(b*v)+O(O(n*k)-O(s*O(O(t*p)-O(o*u))));L[g+52>>2]=O(u*v)+O(O(p*k)-O(s*O(O(b*o)-O(n*t))));L[g+48>>2]=O(t*v)+O(O(o*k)-O(s*O(O(u*n)-O(p*b))));mw(c,j,h,g+48|0);i=0;B=g+16|0;w=h;r=H[a+468>>2];x=(r<<3)+15&-16;q=H[l+8>>2];m=H[l+4>>2]+(q<<2)|0;y=H[m-4>>2];if((x|0)<=(y-H[l+16>>2]|0)){i=y-x|0;H[g>>2]=i;b:{if(q>>>0>=(H[l+12>>2]&2147483647)>>>0){Xr(l+4|0,g);break b}H[m>>2]=i;H[l+8>>2]=q+1}i=H[g>>2]}h=r<<2;i=S6(i,0,h);lw(B,E,c,j,w,i);h=h+i|0;c:{if(!r){break c}y=0;q=0;if(r-1>>>0>=3){B=r&-4;x=0;while(1){m=q<<2;L[m+h>>2]=z*L[i+m>>2];w=m|4;L[w+h>>2]=z*L[i+w>>2];w=m|8;L[w+h>>2]=z*L[i+w>>2];m=m|12;L[m+h>>2]=z*L[i+m>>2];q=q+4|0;x=x+4|0;if((B|0)!=(x|0)){continue}break}}r=r&3;if(!r){break c}while(1){m=q<<2;L[m+h>>2]=z*L[i+m>>2];q=q+1|0;y=y+1|0;if((r|0)!=(y|0)){continue}break}}uw(j);H[g+108>>2]=h;H[g+96>>2]=0;H[g+104>>2]=0;H[g+112>>2]=(N(A,D)<<2)+G;d:{if(E){H[g+8>>2]=0;H[g>>2]=0;H[g+4>>2]=0;h=g+80|0;zw(j,h);S6(H[g+88>>2],0,H[a+448>>2]<<5);vw(j,g,h);Mw(j,h);Ow(j,h);Nw(j,h);break d}H[g+8>>2]=0;H[g>>2]=0;H[g+4>>2]=0;h=g+80|0;zw(j,h);S6(H[g+88>>2],0,H[a+448>>2]<<5);vw(j,g,h);Mw(j,h);Ow(j,h);Qw(j,h);Rw(j,h)}Lw(l,i);Lw(l,M);A=A+1|0;if((A|0)!=(e|0)){continue}break}}Oa=g+176|0}function kY(a,b,c,d,e,f,g,h,i,j,k,l){var m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=0,w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),F=O(0),G=O(0),K=O(0),M=0,Q=0,R=O(0),S=O(0),T=0,U=0,V=O(0),X=0,Y=O(0);M=Oa-16|0;Oa=M;if(c){while(1){c=c-1|0;a:{v=N(H[b>>2],20)+d|0;T=I[v+18|0];if(!T){break a}m=L[h+12>>2];U=J[v+16>>1]+f|0;v=N(I[U|0],12)+e|0;t=L[v>>2];q=L[l+8>>2];x=L[v+4>>2];r=L[l+20>>2];E=L[v+8>>2];n=L[l+32>>2];u=O(O(O(t*q)+O(x*r))+O(E*n));o=L[h+8>>2];s=L[l>>2];y=L[l+12>>2];z=L[l+24>>2];p=O(O(O(t*s)+O(x*y))+O(E*z));A=L[h>>2];K=L[l+4>>2];w=L[l+16>>2];B=L[l+28>>2];t=O(O(O(t*K)+O(x*w))+O(E*B));C=L[h+4>>2];Q=O(m+O(O(u*o)+O(O(p*A)+O(t*C))))<=k;v=0;while(1){X=Q;D=m;v=v+1|0;Q=N(I[(v>>>0>>0?v:0)+U|0],12)+e|0;F=L[Q>>2];m=L[Q+4>>2];x=O(O(F*q)+O(m*r));q=L[Q+8>>2];x=O(x+O(q*n));E=O(O(O(F*s)+O(m*y))+O(q*z));F=O(O(O(F*K)+O(m*w))+O(q*B));V=O(D+O(O(x*o)+O(O(E*A)+O(F*C))));b:{if(!(V<=k?1:X)){break b}m=L[i+36>>2];D=O(m+m);m=O(u+x);y=L[i+24>>2];n=O(p+E);z=L[i>>2];o=O(t+F);A=L[i+12>>2];r=L[j>>2];s=L[j+12>>2];q=O(O(D+O(O(m*y)+O(O(n*z)+O(o*A))))-O(r+s));r=O(s-r);s=O(x-u);D=O(s*y);y=O(E-p);w=O(y*z);z=O(F-t);A=O(D+O(w+O(z*A)));K=O(P(A));if(O(P(q))>O(r+K)){break b}w=L[i+40>>2];C=L[i+28>>2];R=L[i+4>>2];G=L[i+16>>2];B=L[j+4>>2];S=L[j+16>>2];w=O(O(O(w+w)+O(O(m*C)+O(O(n*R)+O(o*G))))-O(B+S));B=O(S-B);C=O(O(s*C)+O(O(y*R)+O(z*G)));R=O(P(C));if(O(P(w))>O(B+R)){break b}G=L[i+44>>2];Y=O(G+G);G=L[i+32>>2];S=L[i+8>>2];D=o;o=L[i+20>>2];m=O(Y+O(O(m*G)+O(O(n*S)+O(D*o))));n=L[j+8>>2];D=L[j+20>>2];m=O(m-O(n+D));n=O(D-n);o=O(O(s*G)+O(O(y*S)+O(z*o)));s=O(P(o));if(O(P(m))>O(n+s)|O(P(O(O(C*m)-O(w*o))))>O(O(B*s)+O(n*R))|(O(P(O(O(o*q)-O(m*A))))>O(O(r*s)+O(n*K))|O(P(O(O(A*w)-O(q*C))))>O(O(r*R)+O(B*K)))){break b}m=O(0);n=O(0);o=O(0);p=O(p-E);t=O(t-F);u=O(u-x);q=O(O(O(p*L[g+8>>2])+O(t*L[g+20>>2]))+O(u*L[g+32>>2]));r=O(O(O(p*L[g>>2])+O(t*L[g+12>>2]))+O(u*L[g+24>>2]));u=O(O(O(p*L[g+4>>2])+O(t*L[g+16>>2]))+O(u*L[g+28>>2]));p=O(O(q*q)+O(O(r*r)+O(u*u)));if(p>O(0)){p=O(O(1)/O(W(p)));o=O(q*p);n=O(u*p);m=O(r*p)}L[M+8>>2]=o;L[M+4>>2]=n;L[M>>2]=m;gY(a,M)}if((v|0)==(T|0)){break a}Q=k>=V;m=L[h+12>>2];o=L[h+8>>2];C=L[h+4>>2];A=L[h>>2];n=L[l+32>>2];B=L[l+28>>2];z=L[l+24>>2];r=L[l+20>>2];w=L[l+16>>2];y=L[l+12>>2];q=L[l+8>>2];K=L[l+4>>2];s=L[l>>2];u=x;t=F;p=E;continue}}b=b+4|0;if(c){continue}break}}Oa=M+16|0}function _Z(a,b,c,d,e,f){var g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),F=O(0),G=O(0),H=O(0),I=O(0),J=O(0),K=O(0),M=O(0),N=O(0),Q=O(0),R=0;w=O(L[e+8>>2]-L[b+8>>2]);i=L[c+8>>2];x=O(L[e>>2]-L[b>>2]);k=L[c>>2];y=O(L[e+4>>2]-L[b+4>>2]);h=L[c+4>>2];t=O(O(w*i)+O(O(x*k)+O(y*h)));m=L[a>>2];n=L[d+8>>2];M=L[f+32>>2];o=L[f+24>>2];z=L[f+28>>2];G=O(O(i*M)+O(O(k*o)+O(h*z)));B=O(O(P(G))+O(9.999999974752427e-7));p=L[d>>2];N=L[f+8>>2];q=L[f>>2];A=L[f+4>>2];H=O(O(i*N)+O(O(k*q)+O(h*A)));C=O(O(P(H))+O(9.999999974752427e-7));r=L[d+4>>2];g=i;i=L[f+20>>2];j=k;k=L[f+12>>2];Q=h;h=L[f+16>>2];I=O(O(g*i)+O(O(j*k)+O(Q*h)));D=O(O(P(I))+O(9.999999974752427e-7));a:{if(O(P(t))>O(m+O(O(n*B)+O(O(p*C)+O(r*D))))){break a}g=L[c+20>>2];l=L[c+12>>2];u=L[c+16>>2];v=O(O(w*g)+O(O(x*l)+O(y*u)));s=L[a+4>>2];J=O(O(g*M)+O(O(l*o)+O(u*z)));E=O(O(P(J))+O(9.999999974752427e-7));K=O(O(g*N)+O(O(l*q)+O(u*A)));F=O(O(P(K))+O(9.999999974752427e-7));u=O(O(g*i)+O(O(l*k)+O(u*h)));l=O(O(P(u))+O(9.999999974752427e-7));if(O(P(v))>O(s+O(O(n*E)+O(O(p*F)+O(r*l))))){break a}g=w;w=L[c+32>>2];j=x;x=L[c+24>>2];Q=y;y=L[c+28>>2];g=O(O(g*w)+O(O(j*x)+O(Q*y)));j=L[a+8>>2];z=O(O(w*M)+O(O(x*o)+O(y*z)));o=O(O(P(z))+O(9.999999974752427e-7));A=O(O(w*N)+O(O(x*q)+O(y*A)));q=O(O(P(A))+O(9.999999974752427e-7));k=O(O(w*i)+O(O(x*k)+O(y*h)));i=O(O(P(k))+O(9.999999974752427e-7));if(O(P(g))>O(j+O(O(n*o)+O(O(p*q)+O(r*i))))|O(P(O(O(g*A)+O(O(t*H)+O(v*K)))))>O(O(O(j*q)+O(O(m*C)+O(s*F)))+p)|(O(P(O(O(g*k)+O(O(t*I)+O(v*u)))))>O(O(O(j*i)+O(O(m*D)+O(s*l)))+r)|O(P(O(O(g*z)+O(O(t*G)+O(v*J)))))>O(O(O(j*o)+O(O(m*B)+O(s*E)))+n))){break a}if(O(P(O(O(g*K)-O(A*v))))>O(O(O(s*q)+O(j*F))+O(O(r*B)+O(n*D)))){break a}h=O(-v);if(O(P(O(O(g*u)+O(k*h))))>O(O(O(s*i)+O(j*l))+O(O(p*B)+O(n*C)))|O(P(O(O(g*J)+O(z*h))))>O(O(O(p*D)+O(r*C))+O(O(s*o)+O(j*E)))|O(P(O(O(t*A)-O(H*g))))>O(O(O(r*E)+O(n*l))+O(O(m*q)+O(j*C)))){break a}h=O(-g);if(O(P(O(O(t*k)+O(I*h))))>O(O(O(p*E)+O(F*n))+O(O(m*i)+O(j*D)))|O(P(O(O(t*z)+O(G*h))))>O(O(O(p*l)+O(F*r))+O(O(m*o)+O(j*B)))|O(P(O(O(v*H)-O(K*t))))>O(O(O(r*o)+O(n*i))+O(O(m*F)+O(s*C)))){break a}h=O(-t);if(O(P(O(O(v*I)+O(u*h))))>O(O(O(p*o)+O(q*n))+O(O(m*l)+O(s*D)))|O(P(O(O(v*G)+O(J*h))))>O(O(O(p*i)+O(q*r))+O(O(m*E)+O(s*B)))){break a}R=1}return R}function Ft(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;e=Oa-288|0;Oa=e;f=a+4892|0;a:{if(!d){b:{if(!I[a+4785|0]){Gt(a+16|0,b,c);H[b>>2]=0;H[b+4>>2]=H[b+4>>2]&268435455;break b}c:{d:{d=H[b+4>>2];switch((d>>>30|0)-1|0){case 1:break c;case 0:break d;default:break b}}H[b+4>>2]=d&1073741823;H[e+16>>2]=b;Pf(f,e+16|0);break b}H[b+4>>2]=d|-1073741824;if(d&268435456){break b}H[e+16>>2]=b;d=rg(f,e+16|0,e+12|0);if(I[e+12|0]){break b}H[d>>2]=H[e+16>>2]}if(!I[a+4785|0]){break a}if(c){H[b+4>>2]=H[b+4>>2]|16}F[e+272|0]=1;H[e+280>>2]=0;H[e+284>>2]=64;H[e+276>>2]=e+16;c=$n(b,e+12|0);e:{if(!c){break e}d=H[b+4>>2]&-1073741824;f=H[b>>2];a=0;if((c|0)!=1){h=c&-2;while(1){j=a<<2;g=H[j+H[e+12>>2]>>2];i=H[g+36>>2];if((i&251658240)==16777216){H[g+32>>2]=f;H[g+36>>2]=d|i&1073741823}g=H[H[e+12>>2]+(j|4)>>2];j=H[g+36>>2];if((j&251658240)==16777216){H[g+32>>2]=f;H[g+36>>2]=d|j&1073741823}a=a+2|0;k=k+2|0;if((h|0)!=(k|0)){continue}break}}if(!(c&1)){break e}a=H[H[e+12>>2]+(a<<2)>>2];c=H[a+36>>2];if((c&251658240)!=16777216){break e}H[a+32>>2]=f;H[a+36>>2]=d|c&1073741823}a=H[e+284>>2];if((a|0)<0|!(a&2147483647)){break a}a=H[e+276>>2];if((a|0)==(e+16|0)|!a){break a}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,a);break a}c=Oa-288|0;Oa=c;f:{if(!I[a+4785|0]){Ht(b);H[b>>2]=0;H[b+4>>2]=H[b+4>>2]&268435455;break f}g:{h:{i:{a=H[b+4>>2];switch((a>>>30|0)-1|0){case 1:break h;case 0:break i;default:break g}}H[b+4>>2]=a&1073741823;H[c+16>>2]=b;Pf(f,c+16|0);break g}H[b+4>>2]=a|-1073741824;if(a&268435456){break g}H[c+16>>2]=b;a=rg(f,c+16|0,c+12|0);if(I[c+12|0]){break g}H[a>>2]=H[c+16>>2]}F[c+272|0]=1;H[c+280>>2]=0;H[c+284>>2]=64;H[c+276>>2]=c+16;d=$n(b,c+12|0);j:{if(!d){break j}f=H[b+4>>2]&-1073741824;g=H[b>>2];a=0;if((d|0)!=1){j=d&-2;while(1){i=a<<2;h=H[i+H[c+12>>2]>>2];k=H[(h+32|0)+4>>2];if((k&251658240)==16777216){H[h+32>>2]=g;H[h+36>>2]=f|k&1073741823}h=H[H[c+12>>2]+(i|4)>>2];i=H[(h+32|0)+4>>2];if((i&251658240)==16777216){H[h+32>>2]=g;H[h+36>>2]=f|i&1073741823}a=a+2|0;l=l+2|0;if((j|0)!=(l|0)){continue}break}}if(!(d&1)){break j}a=H[H[c+12>>2]+(a<<2)>>2];d=H[(a+32|0)+4>>2];if((d&251658240)!=16777216){break j}H[a+32>>2]=g;H[a+36>>2]=f|d&1073741823}a=H[c+284>>2];if((a|0)<0|!(a&2147483647)){break f}a=H[c+276>>2];if((a|0)==(c+16|0)|!a){break f}d=H[33808]+12|0;Ra[H[H[d>>2]+12>>2]](d,a)}Oa=c+288|0}H[b+4>>2]=H[b+4>>2]&-33;Oa=e+288|0}function yj(a,b,c,d,e){a=a|0;b=b|0;c=O(c);d=O(d);e=e|0;var f=0,g=O(0),h=0,i=O(0),j=O(0),k=O(0),l=O(0),m=0,n=0,o=O(0);h=H[a+12>>2];f=Oa-80|0;Oa=f;g=L[a+8>>2];if(g!=O(0)){m=VT(h,b),n=e?-65536:-8355712,H[m+4>>2]=n;H[h+32>>2]=0;H[h>>2]=1;H[f+72>>2]=0;H[f+64>>2]=0;H[f+68>>2]=0;i=Z5(c);a=WT(h,f- -64|0);j=O(i*g);L[f+56>>2]=j;k=O(T5(c)*g);L[f+52>>2]=k;i=O(g*O(0));L[f+48>>2]=i;a=WT(a,f+48|0);H[f+40>>2]=0;H[f+32>>2]=0;H[f+36>>2]=0;l=Z5(d);a=WT(a,f+32|0);L[f+24>>2]=l*g;m=f,o=O(T5(d)*g),L[m+20>>2]=o;L[f+16>>2]=i;WT(a,f+16|0);H[h+32>>2]=0;H[h>>2]=2;L[f+8>>2]=j;L[f+4>>2]=k;L[f>>2]=i;WT(h,f);d=O(O(d-c)/O(20));c=O(d+c);m=f,o=O(Z5(c)*g),L[m+8>>2]=o;m=f,o=O(T5(c)*g),L[m+4>>2]=o;L[f>>2]=i;WT(h,f);c=O(d+c);m=f,o=O(Z5(c)*g),L[m+8>>2]=o;m=f,o=O(T5(c)*g),L[m+4>>2]=o;L[f>>2]=i;WT(h,f);c=O(d+c);m=f,o=O(Z5(c)*g),L[m+8>>2]=o;m=f,o=O(T5(c)*g),L[m+4>>2]=o;L[f>>2]=i;WT(h,f);c=O(d+c);m=f,o=O(Z5(c)*g),L[m+8>>2]=o;m=f,o=O(T5(c)*g),L[m+4>>2]=o;L[f>>2]=i;WT(h,f);c=O(d+c);m=f,o=O(Z5(c)*g),L[m+8>>2]=o;m=f,o=O(T5(c)*g),L[m+4>>2]=o;L[f>>2]=i;WT(h,f);c=O(d+c);m=f,o=O(Z5(c)*g),L[m+8>>2]=o;m=f,o=O(T5(c)*g),L[m+4>>2]=o;L[f>>2]=i;WT(h,f);c=O(d+c);m=f,o=O(Z5(c)*g),L[m+8>>2]=o;m=f,o=O(T5(c)*g),L[m+4>>2]=o;L[f>>2]=i;WT(h,f);c=O(d+c);m=f,o=O(Z5(c)*g),L[m+8>>2]=o;m=f,o=O(T5(c)*g),L[m+4>>2]=o;L[f>>2]=i;WT(h,f);c=O(d+c);m=f,o=O(Z5(c)*g),L[m+8>>2]=o;m=f,o=O(T5(c)*g),L[m+4>>2]=o;L[f>>2]=i;WT(h,f);c=O(d+c);m=f,o=O(Z5(c)*g),L[m+8>>2]=o;m=f,o=O(T5(c)*g),L[m+4>>2]=o;L[f>>2]=i;WT(h,f);c=O(d+c);m=f,o=O(Z5(c)*g),L[m+8>>2]=o;m=f,o=O(T5(c)*g),L[m+4>>2]=o;L[f>>2]=i;WT(h,f);c=O(d+c);m=f,o=O(Z5(c)*g),L[m+8>>2]=o;m=f,o=O(T5(c)*g),L[m+4>>2]=o;L[f>>2]=i;WT(h,f);c=O(d+c);m=f,o=O(Z5(c)*g),L[m+8>>2]=o;m=f,o=O(T5(c)*g),L[m+4>>2]=o;L[f>>2]=i;WT(h,f);c=O(d+c);m=f,o=O(Z5(c)*g),L[m+8>>2]=o;m=f,o=O(T5(c)*g),L[m+4>>2]=o;L[f>>2]=i;WT(h,f);c=O(d+c);m=f,o=O(Z5(c)*g),L[m+8>>2]=o;m=f,o=O(T5(c)*g),L[m+4>>2]=o;L[f>>2]=i;WT(h,f);c=O(d+c);m=f,o=O(Z5(c)*g),L[m+8>>2]=o;m=f,o=O(T5(c)*g),L[m+4>>2]=o;L[f>>2]=i;WT(h,f);c=O(d+c);m=f,o=O(Z5(c)*g),L[m+8>>2]=o;m=f,o=O(T5(c)*g),L[m+4>>2]=o;L[f>>2]=i;WT(h,f);c=O(d+c);m=f,o=O(Z5(c)*g),L[m+8>>2]=o;m=f,o=O(T5(c)*g),L[m+4>>2]=o;L[f>>2]=i;WT(h,f);c=O(d+c);m=f,o=O(Z5(c)*g),L[m+8>>2]=o;m=f,o=O(T5(c)*g),L[m+4>>2]=o;L[f>>2]=i;WT(h,f);c=O(d+c);m=f,o=O(Z5(c)*g),L[m+8>>2]=o;m=f,o=O(T5(c)*g),L[m+4>>2]=o;L[f>>2]=i;WT(h,f)}Oa=f+80|0}function zT(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=O(0),g=0,h=O(0),i=O(0),j=O(0),k=0,l=O(0),m=O(0),n=O(0),o=0,p=O(0),q=O(0),r=0,s=0,t=0;d=b&65535;g=H[a+36>>2];a:{if(d>>>0>=g>>>0){break a}e=J[H[a+40>>2]+(d<<1)>>1];if((e|0)==65535|e>>>0>=g>>>0|J[H[a+48>>2]+(d<<1)>>1]!=(b>>>16|0)){break a}d=H[H[a+28>>2]+(e<<2)>>2];if(!d){break a}e=d&65535;if(H[c>>2]!=(e-1|0)){break a}d=d>>>16|0;b:{c:{switch(e-3|0){case 1:if(d>>>0>=K[a+8>>2]){break a}e=H[c+4>>2];d=H[a+4>>2]+N(d,72)|0;H[d+8>>2]=H[c>>2];H[d+12>>2]=e;e=H[c+28>>2];H[d+32>>2]=H[c+24>>2];H[d+36>>2]=e;e=H[c+20>>2];H[d+24>>2]=H[c+16>>2];H[d+28>>2]=e;e=H[c+12>>2];H[d+16>>2]=H[c+8>>2];H[d+20>>2]=e;L[d+40>>2]=L[c+32>>2];L[d+44>>2]=L[c+36>>2];L[d+48>>2]=L[c+40>>2];L[d+52>>2]=L[c+44>>2];L[d+56>>2]=L[c+48>>2];L[d+60>>2]=L[c+52>>2];L[d- -64>>2]=L[c+56>>2];break b;case 0:break c;default:break a}}if(d>>>0>=K[a+20>>2]){break a}e=H[c+4>>2];d=H[a+16>>2]+(d<<6)|0;H[d+8>>2]=H[c>>2];H[d+12>>2]=e;e=H[c+28>>2];H[d+32>>2]=H[c+24>>2];H[d+36>>2]=e;e=H[c+20>>2];H[d+24>>2]=H[c+16>>2];H[d+28>>2]=e;e=H[c+12>>2];H[d+16>>2]=H[c+8>>2];H[d+20>>2]=e;L[d+40>>2]=L[c+32>>2];L[d+44>>2]=L[c+36>>2];L[d+48>>2]=L[c+40>>2];L[d+52>>2]=L[c+44>>2];e=H[c+52>>2];H[d+56>>2]=H[c+48>>2];H[d+60>>2]=e}e=Oa-32|0;Oa=e;k=H[a+56>>2];if(H[k+72>>2]){while(1){d=H[H[k+68>>2]+(o<<2)>>2];s=M[d+432>>3];t=M[d+440>>3];L[e+24>>2]=M[d+448>>3];L[e+20>>2]=t;L[e+16>>2]=s;f=L[d+28>>2];j=L[d+32>>2];L[e+8>>2]=-L[d+36>>2];L[e+4>>2]=-j;L[e>>2]=-f;g=e+16|0;f=O(Ra[H[H[d>>2]+8>>2]](d));c=Oa-80|0;Oa=c;d:{if(H[d+264>>2]!=(b|0)){break d}H[c+40>>2]=0;H[c+44>>2]=0;H[c+48>>2]=0;H[c+52>>2]=0;H[c+32>>2]=0;H[c+36>>2]=0;G[c+28>>1]=0;H[c+24>>2]=-1;H[c+16>>2]=0;H[c+20>>2]=0;H[c+64>>2]=0;H[c+56>>2]=2139095039;H[c+60>>2]=0;H[c+12>>2]=-1;g=DT(a,c+16|0,g,e,f,c+12|0);r=H[c+12>>2];if(!g|(r|0)==H[d+264>>2]){break d}H[d+264>>2]=r;f=L[c+32>>2];L[d+316>>2]=f;i=L[c+36>>2];L[d+320>>2]=i;h=L[c+40>>2];L[d+324>>2]=h;j=L[g+40>>2];h=O(h-O(M[g+24>>3]));h=O(h+h);l=L[g+32>>2];f=O(f-O(M[g+8>>3]));m=O(f+f);f=O(i-O(M[g+16>>3]));i=O(f+f);n=L[g+36>>2];p=O(O(j*h)+O(O(l*m)+O(i*n)));f=L[g+44>>2];q=O(O(f*f)+O(-.5));L[d+312>>2]=O(j*p)+O(O(h*q)-O(f*O(O(l*i)-O(m*n))));L[d+308>>2]=O(n*p)+O(O(i*q)-O(f*O(O(j*m)-O(h*l))));L[d+304>>2]=O(l*p)+O(O(m*q)-O(f*O(O(n*h)-O(i*j))))}Oa=c+80|0;o=o+1|0;if(o>>>0>2]){continue}break}}Oa=e+32|0;k=1}return k|0}function jz(a,b){var c=O(0),d=0,e=0,f=O(0),g=O(0),h=0,i=0,j=0,k=O(0),l=O(0),m=0,n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),F=0,G=O(0),K=O(0),M=O(0),Q=O(0),R=O(0),S=O(0),T=0,U=0,V=0,W=O(0),X=O(0),Y=O(0),Z=O(0),_=O(0),$=O(0),aa=O(0),ba=0,ca=0;h=H[a+4>>2];o=L[h+24>>2];p=L[h+20>>2];i=H[a>>2];q=L[i+24>>2];r=L[i+20>>2];s=L[h+16>>2];t=L[i+16>>2];u=L[h+8>>2];v=L[h+4>>2];w=L[h>>2];x=L[i+8>>2];y=L[i+4>>2];z=L[i>>2];d=J[a+22>>1];if(d){e=H[a+24>>2];ba=e+(d<<4)|0;while(1){a=e;F=a- -64|0;d=I[a+2|0];U=F+N(d,48)|0;V=U+((d<<2)+12&2032)|0;m=I[a+3|0];ca=m<<6;A=L[a+48>>2];B=L[a+12>>2];W=L[a+8>>2];X=L[a+4>>2];g=O(0);if(d){k=L[a+40>>2];G=O(A*k);l=L[a+36>>2];S=O(A*l);n=L[a+32>>2];K=O(A*n);M=O(B*k);Q=O(B*l);R=O(B*n);j=0;while(1){e=(j<<2)+U|0;c=L[e>>2];f=O(-c);T=e;e=F+N(j,48)|0;C=L[e+44>>2];D=L[e>>2];E=L[e+16>>2];Y=L[e+4>>2];Z=L[e+20>>2];_=L[e+8>>2];$=L[e+24>>2];aa=O(L[e+36>>2]-O(L[e+32>>2]*O(O(O(O(O(n*z)+O(t*D))-O(O(n*w)+O(s*E)))+O(O(O(l*y)+O(r*Y))-O(O(l*v)+O(p*Z))))+O(O(O(k*x)+O(q*_))-O(O(k*u)+O(o*$))))));f=O(c+(fC?C:f;L[T>>2]=f;g=O(g+f);c=O(f-c);u=O(u-O(G*c));v=O(v-O(S*c));w=O(w-O(K*c));x=O(x+O(M*c));y=O(y+O(Q*c));z=O(z+O(R*c));f=O(W*c);o=O(o-O($*f));p=O(p-O(Z*f));s=O(s-O(E*f));c=O(X*c);q=O(q+O(_*c));r=O(r+O(Y*c));t=O(t+O(D*c));j=j+1|0;if((d|0)!=(j|0)){continue}break}}e=V+ca|0;if(!(!I[b|0]|!m)){S=O(g*L[a+16>>2]);n=O(g*L[a+20>>2]);f=O(-n);F=m>>>0>1?m:1;j=0;m=0;while(1){d=(j<<6)+V|0;K=L[d+12>>2];c=L[d+28>>2];g=L[d>>2];M=L[d+16>>2];Q=L[d+32>>2];k=L[d+4>>2];R=L[d+20>>2];C=L[d+36>>2];l=L[d+8>>2];D=L[d+24>>2];E=L[d+40>>2];c=O(O(K-O(c*O(L[d+44>>2]-L[d+48>>2])))-O(c*O(O(O(O(O(z*g)+O(t*M))-O(O(w*g)+O(s*Q)))+O(O(O(y*k)+O(r*R))-O(O(v*k)+O(p*C))))+O(O(O(x*l)+O(q*D))-O(O(u*l)+O(o*E))))));G=cG?G:n:c;L[T+12>>2]=c;c=O(c-K);u=O(u-O(O(A*l)*c));v=O(v-O(O(A*k)*c));w=O(w-O(O(A*g)*c));x=O(x+O(O(B*l)*c));y=O(y+O(O(B*k)*c));z=O(z+O(O(B*g)*c));g=O(W*c);o=O(o-O(E*g));p=O(p-O(C*g));s=O(s-O(Q*g));c=O(X*c);q=O(q+O(D*c));r=O(r+O(R*c));t=O(t+O(M*c));m=0-(d|(m|0)!=0)|0;j=j+1|0;if((F|0)!=(j|0)){continue}break}H[a+52>>2]=m}if(e>>>0>>0){continue}break}}L[i+8>>2]=x;L[i+4>>2]=y;L[i>>2]=z;L[h+8>>2]=u;L[h+4>>2]=v;L[h>>2]=w;L[i+24>>2]=q;L[i+20>>2]=r;L[i+16>>2]=t;L[h+24>>2]=o;L[h+20>>2]=p;L[h+16>>2]=s}function iY(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o){var p=O(0),q=0,r=O(0),s=0,t=O(0),u=O(0),w=O(0),y=O(0),z=O(0),A=0,D=O(0),E=O(0),F=O(0),G=O(0),J=O(0),K=0,M=0,P=0,Q=O(0),R=O(0),S=O(0),T=0,U=0;q=Oa-32|0;Oa=q;H[m>>2]=-1;K=H[a+16>>2];a:{if(!K){break a}Q=O(O(O(L[e+44>>2]*h)+O(L[e+56>>2]*i))+O(L[e+68>>2]*j));R=O(O(O(L[e+40>>2]*h)+O(L[e+52>>2]*i))+O(L[e- -64>>2]*j));S=O(O(O(L[e+36>>2]*h)+O(L[e+48>>2]*i))+O(L[e+60>>2]*j));T=H[a+28>>2];U=H[a+24>>2];P=1;while(1){s=N(A,20)+U|0;j=L[s+8>>2];p=L[s>>2];r=L[s+4>>2];b:{if(O(O(j*Q)+O(O(p*S)+O(R*r)))>2];u=L[e+36>>2];w=L[e+48>>2];h=L[e+64>>2];y=L[e+40>>2];z=L[e+52>>2];i=O(O(O(p*L[e+44>>2])+O(r*L[e+56>>2]))+O(j*L[e+68>>2]));L[q+16>>2]=i;h=O(O(O(p*y)+O(r*z))+O(j*h));L[q+12>>2]=h;j=O(O(O(p*u)+O(r*w))+O(j*t));L[q+8>>2]=j;t=O(W(O(O(i*i)+O(O(j*j)+O(h*h)))));if(t>O(0)){p=O(O(1)/t);i=O(i*p);L[q+16>>2]=i;h=O(h*p);L[q+12>>2]=h;j=O(j*p);L[q+8>>2]=j}u=L[c+8>>2];w=L[c+20>>2];y=L[c+32>>2];p=O(O(O(j*u)+O(h*w))+O(i*y));z=L[c>>2];G=L[c+12>>2];D=L[c+24>>2];r=O(O(O(j*z)+O(h*G))+O(i*D));J=j;j=L[c+4>>2];E=L[c+16>>2];F=i;i=L[c+28>>2];h=O(O(O(J*j)+O(h*E))+O(F*i));J=O(O(L[o+8>>2]*p)+O(O(L[o>>2]*r)+O(h*L[o+4>>2])));i=O(O(y*p)+O(O(D*r)+O(i*h)));F=O((x(2,H[a+56>>2]|(B(i),v(2))&-2147483648),C())*i);i=O(O(u*p)+O(O(z*r)+O(j*h)));j=O((x(2,H[a+48>>2]|(B(i),v(2))&-2147483648),C())*i);i=O(O(w*p)+O(O(G*r)+O(E*h)));i=O(F+O(j+O(i*(x(2,H[a+52>>2]|(B(i),v(2))&-2147483648),C()))));j=L[a+44>>2];F=i>j?i:j;i=O(O(L[d+32>>2]*p)+O(O(L[d+24>>2]*r)+O(h*L[d+28>>2])));j=O((x(2,H[b+56>>2]|(B(i),v(2))&-2147483648),C())*i);i=O(O(L[d+8>>2]*p)+O(O(L[d>>2]*r)+O(h*L[d+4>>2])));u=O((x(2,H[b+48>>2]|(B(i),v(2))&-2147483648),C())*i);i=O(O(L[d+20>>2]*p)+O(O(L[d+12>>2]*r)+O(h*L[d+16>>2])));i=O(j+O(u+O(i*(x(2,H[b+52>>2]|(B(i),v(2))&-2147483648),C()))));j=L[b+44>>2];i=O(F+(i>j?i:j));j=O(J+i);i=O(i-J);if(L[k>>2]<(i>j?j:i)){break b}i=L[s+12>>2];M=N(I[s+19|0],12)+T|0;j=L[M+8>>2];u=L[M>>2];w=L[M+4>>2];y=L[s+8>>2];z=L[s>>2];G=L[s+4>>2];Ra[H[b+64>>2]](b,q+8|0,g,f,q+28|0,q+24|0);D=L[q+28>>2];t=O(O(1)/t);i=O(t*O(-i));if(D>O(i+n)){break a}j=O(t*O(O(y*j)+O(O(z*u)+O(G*w))));E=L[q+24>>2];if(j>O(E+n)){break a}i=O(i-D);j=O(E-j);i=i>2])){break b}L[l+8>>2]=p;L[l+4>>2]=h;L[l>>2]=r;L[k>>2]=i;H[m>>2]=A}A=A+1|0;P=K>>>0>A>>>0;if((A|0)!=(K|0)){continue}break}}Oa=q+32|0;return(P^-1)&1}function oi(a,b,c){var d=O(0),e=0,f=O(0),g=O(0),h=O(0),i=0,j=0,k=O(0),l=O(0),m=O(0),n=0,o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=0;i=Oa-32|0;Oa=i;j=H[H[((J[a+4>>1]<<2)+73232|0)+72>>2]+a>>2];if(j){j=j-16|0}else{j=0}n=H[a+316>>2];e=n&1024?H[a+56>>2]+144|0:a+112|0;k=L[e+8>>2];l=L[e+4>>2];m=L[e+12>>2];o=L[e>>2];p=L[b+20>>2];z=L[b+16>>2];f=L[b+8>>2];d=L[e+24>>2];q=O(d+d);g=L[b>>2];d=L[e+16>>2];r=O(d+d);d=L[e+20>>2];s=O(d+d);h=L[b+4>>2];t=O(O(f*q)+O(O(g*r)+O(s*h)));d=L[b+12>>2];u=O(O(d*d)+O(-.5));v=O(L[b+24>>2]+O(O(f*t)+O(O(q*u)+O(d*O(O(g*s)-O(r*h))))));L[i+24>>2]=v;p=O(p+O(O(h*t)+O(O(s*u)+O(d*O(O(f*r)-O(q*g))))));L[i+20>>2]=p;w=O(O(O(O(d*m)-O(o*g))-O(h*l))-O(f*k));L[i+12>>2]=w;x=O(O(O(g*l)+O(O(d*k)+O(f*m)))-O(o*h));L[i+8>>2]=x;y=O(O(O(f*o)+O(O(d*l)+O(h*m)))-O(k*g));L[i+4>>2]=y;k=O(O(O(h*k)+O(O(d*o)+O(g*m)))-O(l*f));L[i>>2]=k;d=O(z+O(O(g*t)+O(O(r*u)+O(d*O(O(h*q)-O(s*f))))));L[i+16>>2]=d;L[a+280>>2]=v;L[a+276>>2]=p;L[a+272>>2]=d;L[a+268>>2]=w;L[a+264>>2]=x;L[a+260>>2]=y;L[a+256>>2]=k;b=a+48|0;a:{b:{c:{switch((H[a+52>>2]>>>30|0)-2|0){case 0:e=H[b>>2];if(I[e+4785|0]){break b}default:CF(a- -64|0,i);break a;case 1:break c}}e=H[b>>2]}H[a+316>>2]=n&-2097153;$t(e,b);H[a+316>>2]=H[a+316>>2]|1048576}if(!(!j|!c)){b=H[a+320>>2];ei(Ra[H[H[b>>2]+100>>2]](b)|0,0,1)}if(j){a=H[a+320>>2];a=Ra[H[H[a>>2]+100>>2]](a)|0;b=Oa-32|0;Oa=b;d:{e:{f:{switch((H[a+4>>2]>>>30|0)-2|0){case 0:c=H[a>>2];if(I[c+4785|0]){break e}default:$D(a+12|0);c=H[a+4>>2];break d;case 1:break f}}c=H[a>>2]}$t(c,a);c=H[a+4>>2]|2048;H[a+4>>2]=c}g:{h:{switch((c>>>30|0)-2|0){case 0:if(I[H[a>>2]+4785|0]){break g}break;case 1:break g;default:break h}}n=H[a+88>>2];if(n>>>0<2){break g}A=H[a+84>>2];c=1;while(1){a=H[(c<<2)+A>>2];d=L[a+80>>2];L[b>>2]=d;f=L[a+84>>2];L[b+4>>2]=f;g=L[a+88>>2];L[b+8>>2]=g;h=L[a+92>>2];L[b+12>>2]=h;k=L[a+96>>2];L[b+16>>2]=k;l=L[a+100>>2];L[b+20>>2]=l;m=L[a+104>>2];L[b+24>>2]=m;L[a+280>>2]=m;L[a+276>>2]=l;L[a+272>>2]=k;L[a+268>>2]=h;L[a+264>>2]=g;L[a+260>>2]=f;L[a+256>>2]=d;j=a+48|0;i:{j:{k:{switch((H[a+52>>2]>>>30|0)-2|0){case 0:e=H[j>>2];if(I[e+4785|0]){break j}default:CF(a- -64|0,b);break i;case 1:break k}}e=H[j>>2]}H[a+316>>2]=H[a+316>>2]&-2097153;$t(e,j);H[a+316>>2]=H[a+316>>2]|1048576}c=c+1|0;if((n|0)!=(c|0)){continue}break}}Oa=b+32|0}Oa=i+32|0}function ax(a,b,c,d,e,f,g){var h=0,i=O(0),j=0,k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=0,r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=0,B=O(0),C=O(0),D=O(0),E=O(0),F=O(0),G=O(0),I=O(0),J=O(0),K=O(0),M=O(0),P=O(0),Q=O(0),R=O(0),S=O(0),T=O(0),U=0,V=0,W=0;h=Oa-32|0;Oa=h;A=H[b+456>>2];q=H[b+444>>2];j=S6(e,0,H[b+448>>2]<<5);i=L[f+20>>2];l=L[f+24>>2];m=L[f>>2];n=L[f+4>>2];o=L[f+8>>2];k=L[f+16>>2];e=j+(d<<5)|0;H[e+28>>2]=0;H[e+12>>2]=0;L[e+24>>2]=-l;L[e+20>>2]=-i;L[e+16>>2]=-k;L[e+8>>2]=-o;L[e+4>>2]=-n;L[e>>2]=-m;if(d){f=d;while(1){e=f<<5;gw(h,H[b+396>>2]+N(f,96)|0,(H[b+452>>2]+N(f,160)|0)+120|0,H[b+384>>2]+N(f,76)|0,e+j|0);f=e+q|0;e=j+(H[f+24>>2]<<5)|0;L[e>>2]=L[h>>2];L[e+4>>2]=L[h+4>>2];i=L[h+8>>2];H[e+12>>2]=0;L[e+8>>2]=i;L[e+16>>2]=L[h+16>>2];L[e+20>>2]=L[h+20>>2];i=L[h+24>>2];H[e+28>>2]=0;L[e+24>>2]=i;f=H[f+24>>2];if(f){continue}break}}H[a>>2]=0;H[a+4>>2]=0;H[a+24>>2]=0;H[a+28>>2]=0;H[a+16>>2]=0;H[a+20>>2]=0;H[a+8>>2]=0;H[a+12>>2]=0;if(!c){B=L[b+560>>2];C=L[b+572>>2];D=L[b+584>>2];E=L[b+564>>2];F=L[b+576>>2];G=L[b+588>>2];I=L[b+568>>2];J=L[b+580>>2];K=L[b+592>>2];M=L[b+620>>2];P=L[b+608>>2];Q=L[b+596>>2];r=L[b+524>>2];s=L[b+528>>2];t=L[b+532>>2];R=L[b+624>>2];S=L[b+612>>2];T=L[b+600>>2];u=L[b+536>>2];v=L[b+540>>2];w=L[b+544>>2];x=L[b+548>>2];o=L[j+16>>2];p=O(-o);y=L[b+552>>2];k=L[j+20>>2];z=L[b+556>>2];i=L[j+24>>2];l=O(-L[j+4>>2]);m=L[j>>2];n=L[j+8>>2];L[a+24>>2]=O(O(O(x*p)-O(y*k))-O(z*i))+O(O(O(L[b+616>>2]*l)-O(m*L[b+604>>2]))-O(n*L[b+628>>2]));L[a+20>>2]=O(O(O(u*p)-O(v*k))-O(w*i))+O(O(O(S*l)-O(m*T))-O(n*R));L[a+16>>2]=O(O(O(r*p)-O(s*k))-O(t*i))+O(O(O(P*l)-O(m*Q))-O(n*M));k=O(-k);L[a+8>>2]=O(O(O(w*l)-O(m*t))-O(n*z))+O(O(O(J*k)-O(o*I))-O(i*K));L[a+4>>2]=O(O(O(v*l)-O(m*s))-O(n*y))+O(O(O(F*k)-O(o*E))-O(i*G));L[a>>2]=O(O(O(u*l)-O(m*r))-O(n*x))+O(O(O(C*k)-O(o*B))-O(i*D))}d=(d<<5)+q|0;e=H[d+8>>2];c=e-1|0;d=H[d+12>>2]-!e|0;if(c|d){while(1){f=H[b+452>>2];e=c;e=(U=f7(e),V=f7(d)+32|0,W=e,W?U:V);aw(h,(f+N(e,160)|0)+120|0,H[b+348>>2]+N(e,112)|0,H[b+360>>2]+N(e,36)|0,H[b+384>>2]+N(e,76)|0,j+(e<<5)|0,(H[(N(e,80)+A|0)+72>>2]<<2)+g|0,a);L[a>>2]=L[h>>2];L[a+4>>2]=L[h+4>>2];i=L[h+8>>2];H[a+12>>2]=0;L[a+8>>2]=i;L[a+16>>2]=L[h+16>>2];L[a+20>>2]=L[h+20>>2];i=L[h+24>>2];H[a+28>>2]=0;L[a+24>>2]=i;e=c;c=e-1&e;d=d&d-!e;if(c|d){continue}break}}Oa=h+32|0}function uQ(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;b=H[a+20>>2];e=Oa-16|0;Oa=e;a=H[a+28>>2];if(L[a+1080>>2]!=O(0)){c=a+2876|0;H[c>>2]=H[c>>2]+1;H[a+2872>>2]=H[b+16>>2];H[e+8>>2]=b;c=a+2856|0;d=H[a+2908>>2];a:{if(d>>>0>=(H[a+2912>>2]&2147483647)>>>0){Nr(a+2884|0,e+8|0);break a}H[H[a+2904>>2]+(d<<2)>>2]=b;H[a+2908>>2]=d+1}Ra[H[H[b>>2]+16>>2]](b);F[a+2948|0]=1;Mr(c);b:{if(I[a+2360|0]&2){b=a+2980|0;H[b>>2]=c;H[a+2984>>2]=1;Ra[H[H[a+2856>>2]+16>>2]](c);b=H[H[b>>2]+16>>2];H[a+3104>>2]=1;d=a+2976|0;H[d>>2]=b;f=a+3100|0;b=a+2960|0;H[f>>2]=b;Ra[H[H[a+2960>>2]+16>>2]](b);H[a+3096>>2]=H[H[f>>2]+16>>2];d=H[d>>2];Ra[H[H[d>>2]+72>>2]](d,b);break b}b=a+3100|0;H[b>>2]=c;H[a+3104>>2]=1;Ra[H[H[a+2856>>2]+16>>2]](c);H[a+3096>>2]=H[H[b>>2]+16>>2]}b=a+3180|0;f=a+3080|0;H[b>>2]=f;H[a+3184>>2]=1;Ra[H[H[a+3080>>2]+16>>2]](f);b=H[H[b>>2]+16>>2];H[a+3304>>2]=1;H[a+3176>>2]=b;b=a+3300|0;h=a+3160|0;H[b>>2]=h;Ra[H[H[a+3160>>2]+16>>2]](h);b=H[H[b>>2]+16>>2];H[a+3344>>2]=1;H[a+3296>>2]=b;b=a+3340|0;i=a+3280|0;H[b>>2]=i;Ra[H[H[a+3280>>2]+16>>2]](i);H[a+3336>>2]=H[H[b>>2]+16>>2];H[a+3264>>2]=1;b=a+3260|0;j=a+3320|0;H[b>>2]=j;Ra[H[H[a+3320>>2]+16>>2]](j);H[a+3256>>2]=H[H[b>>2]+16>>2];H[a+3224>>2]=1;b=a+3220|0;k=a+3240|0;H[b>>2]=k;Ra[H[H[a+3240>>2]+16>>2]](k);b=H[H[b>>2]+16>>2];H[a+3744>>2]=1;H[a+3216>>2]=b;b=a+3740|0;l=a+3200|0;H[b>>2]=l;Ra[H[H[a+3200>>2]+16>>2]](l);b=H[H[b>>2]+16>>2];H[a+3784>>2]=1;H[a+3736>>2]=b;b=a+3780|0;m=a+3720|0;H[b>>2]=m;Ra[H[H[a+3720>>2]+16>>2]](m);d=a+3776|0;H[d>>2]=H[H[b>>2]+16>>2];b=a+2772|0;H[b>>2]=H[b>>2]+1;H[a+2768>>2]=H[d>>2];d=a+3760|0;H[e+12>>2]=d;b=a+2752|0;g=H[a+2804>>2];c:{if(g>>>0>=(H[a+2808>>2]&2147483647)>>>0){Nr(a+2780|0,e+12|0);break c}H[H[a+2800>>2]+(g<<2)>>2]=d;H[a+2804>>2]=g+1}Ra[H[H[a+3760>>2]+16>>2]](d);F[a+2844|0]=1;Mr(b);g=a+2732|0;H[g>>2]=b;H[a+2736>>2]=1;Ra[H[H[a+2752>>2]+16>>2]](b);n=a+2728|0;H[n>>2]=H[H[g>>2]+16>>2];Mr(c);c=H[a+3096>>2];Ra[H[H[c>>2]+72>>2]](c,f);c=H[a+3176>>2];Ra[H[H[c>>2]+72>>2]](c,h);c=H[a+3296>>2];Ra[H[H[c>>2]+72>>2]](c,i);c=H[a+3336>>2];Ra[H[H[c>>2]+72>>2]](c,j);c=H[a+3256>>2];Ra[H[H[c>>2]+72>>2]](c,k);c=H[a+3216>>2];Ra[H[H[c>>2]+72>>2]](c,l);c=H[a+3736>>2];Ra[H[H[c>>2]+72>>2]](c,m);c=H[a+3776>>2];Ra[H[H[c>>2]+72>>2]](c,d);Mr(b);c=H[n>>2];Ra[H[H[c>>2]+72>>2]](c,a+2712|0)}Oa=e+16|0}function zx(a,b,c,d,e,f){var g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=0,m=O(0),n=O(0),o=O(0),p=0,q=O(0),r=O(0),s=O(0),t=O(0),u=0,v=O(0),w=0,x=O(0),y=O(0),z=O(0),A=O(0),B=O(0);if(!(!b|!c)){while(1){a:{if(I[b|0]){break a}u=J[b+2>>1];if(!u|I[b+1|0]&2){break a}if(!l){g=L[d>>2];h=O(L[e+16>>2]-L[d+16>>2]);q=O(h+h);h=O(L[e+20>>2]-L[d+20>>2]);r=O(h+h);i=L[d+4>>2];m=L[d+8>>2];h=O(L[e+24>>2]-L[d+24>>2]);s=O(h+h);j=O(O(O(O(-g)*q)-O(r*i))-O(m*s));h=L[d+12>>2];k=O(O(h*h)+O(-.5));x=O(O(O(s*k)+O(h*O(O(i*q)-O(g*r))))-O(m*j));y=O(O(O(r*k)+O(h*O(O(g*s)-O(m*q))))-O(i*j));z=O(O(O(q*k)+O(h*O(O(m*r)-O(i*s))))-O(g*j));j=L[e+8>>2];k=L[e+4>>2];n=L[e+12>>2];o=L[e>>2];q=O(O(m*j)+O(O(i*k)+O(O(h*n)+O(g*o))));r=O(O(o*i)+O(O(O(h*j)-O(n*m))-O(g*k)));s=O(O(j*g)+O(O(O(h*k)-O(n*i))-O(m*o)));h=O(O(k*m)+O(O(O(h*o)-O(n*g))-O(i*j)))}l=1;m=L[b+24>>2];g=L[b+36>>2];i=O(g+g);g=L[b+28>>2];j=O(g+g);g=L[b+32>>2];k=O(g+g);t=O(O(r*i)+O(O(h*j)+O(s*k)));g=O(O(q*q)+O(-.5));n=L[b+16>>2];o=L[b+20>>2];if(!(O(O(m*O(O(r*t)+O(O(i*g)+O(q*O(O(h*k)-O(j*s))))))+O(O(n*O(O(h*t)+O(O(j*g)+O(q*O(O(s*i)-O(k*r))))))+O(o*O(O(s*t)+O(O(k*g)+O(q*O(O(r*j)-O(i*h))))))))>O(.9990000128746033))){break a}v=O(-s);A=O(-h);B=O(-r);p=0;w=1;while(1){l=N(p,12)+b|0;i=L[l+72>>2];i=O(i+i);j=L[l- -64>>2];j=O(j+j);k=L[l+68>>2];k=O(k+k);t=O(O(r*i)+O(O(h*j)+O(s*k)));if(O(P(O(O(O(L[l+48>>2]-O(x+O(O(r*t)+O(O(i*g)+O(q*O(O(h*k)+O(j*v)))))))*m)+O(O(O(L[l+40>>2]-O(z+O(O(h*t)+O(O(j*g)+O(q*O(O(s*i)+O(k*B)))))))*n)+O(o*O(L[l+44>>2]-O(y+O(O(s*t)+O(O(k*g)+O(q*O(O(r*j)+O(i*A))))))))))))>>0>p>>>0;if((p|0)!=(u|0)){continue}}break}l=1;if(w){break a}l=H[a+7688>>2];if((l|0)==32){return 0}p=(l<<2)+a|0;H[p+7556>>2]=-1;i=L[d+8>>2];m=O(m+m);j=L[d>>2];k=O(n+n);n=O(o+o);o=L[d+4>>2];t=O(O(i*m)+O(O(j*k)+O(n*o)));l=N(l,12)+a|0;g=L[d+12>>2];v=O(O(g*g)+O(-.5));L[l+6152>>2]=O(i*t)+O(O(m*v)+O(g*O(O(j*n)-O(k*o))));L[l+6148>>2]=O(o*t)+O(O(n*v)+O(g*O(O(i*k)-O(m*j))));L[l+6144>>2]=O(j*t)+O(O(k*v)+O(g*O(O(o*m)-O(n*i))));H[p+7296>>2]=0;p=H[a+7688>>2];l=N(p,24)+a|0;u=l+6544|0;H[u>>2]=-25165825;H[u+4>>2]=-25165825;u=l+6536|0;H[u>>2]=2122317823;H[u+4>>2]=-25165825;l=l+6528|0;H[l>>2]=2122317823;H[l+4>>2]=2122317823;H[((p<<2)+a|0)+7424>>2]=65535;l=1;p=H[a+7688>>2];H[a+7688>>2]=p+1;R6((N(p,104)+a|0)+2816|0,b,104)}b=b+104|0;c=c-1|0;if(c){continue}break}}return 1}function zm(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=O(0),i=0,j=0,k=O(0),l=O(0),m=O(0),n=O(0),o=0,p=0,q=0,r=0;a=Oa-32|0;Oa=a;f=H[33768];k=L[b+12>>2];l=L[b+8>>2];m=L[b>>2];n=L[b+4>>2];h=O(O(1)/O(W(O(O(k*k)+O(O(l*l)+O(O(m*m)+O(n*n)))))));L[a+12>>2]=k*h;L[a+8>>2]=l*h;L[a+4>>2]=n*h;L[a>>2]=m*h;L[a+16>>2]=L[b+16>>2];L[a+20>>2]=L[b+20>>2];L[a+24>>2]=L[b+24>>2];q=a;g=Oa-16|0;Oa=g;b=H[f+968>>2];if(!b){j=Oa-16|0;Oa=j;d=f+680|0;b=H[d+284>>2];if(b){a=H[33808];c=Ra[H[H[a>>2]+20>>2]](a)|0?40466:55639;i=Ra[H[H[a+12>>2]+8>>2]](a+12|0,b,c,15259,180)|0}else{i=0}H[j+12>>2]=i;a=H[d+268>>2];a:{if(a>>>0>=(H[d+272>>2]&2147483647)>>>0){c=d+4|0;b=H[c+268>>2]&2147483647;o=b?b<<1:1;a=0;b:{if(!o){break b}b=o<<2;if(!(I[c+256|0]|b>>>0>256)){F[c+256|0]=1;a=c;break b}a=0;if(!b){break b}a=H[33808];e=Ra[H[H[a>>2]+20>>2]](a)|0?40466:55639;a=Ra[H[H[a+12>>2]+8>>2]](a+12|0,b,e,13582,553)|0}b=a;e=H[c+264>>2];r=b+(e<<2)|0;if((e|0)>0){p=H[c+260>>2];while(1){H[a>>2]=H[p>>2];p=p+4|0;a=a+4|0;if(r>>>0>a>>>0){continue}break}}H[r>>2]=H[j+12>>2];c:{if(H[c+268>>2]<0){break c}a=H[c+260>>2];if((a|0)==(c|0)){F[c+256|0]=0;break c}if(!a){break c}e=H[33808];Ra[H[H[e+12>>2]+12>>2]](e+12|0,a);e=H[c+264>>2]}H[c+268>>2]=o;H[c+260>>2]=b;H[c+264>>2]=e+1;break a}H[H[d+264>>2]+(a<<2)>>2]=i;H[d+268>>2]=a+1}b=(N(H[d+276>>2],320)+i|0)-320|0;if(i>>>0<=b>>>0){a=H[d+288>>2];while(1){H[b>>2]=a;a=b;b=b-320|0;if(i>>>0<=b>>>0){continue}break}H[d+288>>2]=a}Oa=j+16|0;b=H[f+968>>2]}H[f+968>>2]=H[b>>2];H[f+960>>2]=H[f+960>>2]+1;H[b+4>>2]=196613;H[b+8>>2]=0;H[b>>2]=108444;H[b+16>>2]=0;H[b+12>>2]=0;H[b>>2]=107752;H[b+8>>2]=0;H[b+20>>2]=0;H[b+24>>2]=65536;H[b+28>>2]=0;H[b+32>>2]=65536;H[b+36>>2]=-1;H[b+40>>2]=0;H[b+56>>2]=0;H[b>>2]=107400;H[b+48>>2]=0;H[b+52>>2]=0;BF(b- -64|0,1,q);L[b+256>>2]=L[b+80>>2];a=H[b+88>>2];H[b+260>>2]=H[b+84>>2];H[b+264>>2]=a;a=H[b+96>>2];H[b+268>>2]=H[b+92>>2];H[b+272>>2]=a;a=H[b+104>>2];H[b+276>>2]=H[b+100>>2];H[b+280>>2]=a;a=H[b+148>>2];H[b+284>>2]=H[b+144>>2];H[b+288>>2]=a;L[b+292>>2]=L[b+152>>2];a=H[b+164>>2];H[b+296>>2]=H[b+160>>2];H[b+300>>2]=a;L[b+304>>2]=L[b+168>>2];H[b+52>>2]=H[b+52>>2]&-251658241|50331648;h=L[b+220>>2];H[b+312>>2]=1;H[b+316>>2]=0;L[b+308>>2]=h;H[b>>2]=106972;H[g+8>>2]=b;a=Nl(f+600|0,g+8|0,g+15|0);if(!I[g+15|0]){H[a>>2]=H[g+8>>2]}Oa=g+16|0;Oa=q+32|0;return b|0}function Yt(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,o=0,p=0,q=0;h=Oa-32|0;Oa=h;g=H[a+4>>2];a:{if(!(g&32)){break a}c=g>>>24&15;f=H[((c<<2)+76348|0)+12>>2];d=H[a>>2];b=H[a+8>>2];if(!b){b=Tt(d,c);H[a+8>>2]=b}c=b+84|0;e=H[b+88>>2];if((e|0)!=1){if(!e){break a}c=H[d+4868>>2]+(H[c>>2]<<2)|0}j=a+f|0;d=0;while(1){f=H[(d<<2)+c>>2];if(I[(I[f+4|0]&64?H[f+8>>2]+52|0:f+80|0)|0]&5){F[h+8|0]=0;H[h+16>>2]=128;UI(j,f+16|0,h+16|0,h+8|0,0);e=H[b+88>>2]}d=d+1|0;if(e>>>0>d>>>0){continue}break}}if(g&8){b=H[a+8>>2];if(!b){b=Tt(H[a>>2],I[a+7|0]&15);H[a+8>>2]=b}d=H[b+28>>2];b:{if(!d){break b}if(K[a+4>>2]<3221225472){c=0;while(1){e=H[H[b+24>>2]+(c<<2)>>2];f=H[e+4>>2];if((f&251658240)==16777216){H[e>>2]=H[a>>2];H[e+4>>2]=f&1073741823|-2147483648}f=H[a+4>>2];g=H[((f>>>22&60)+76348|0)+12>>2]+a|0;if(!(I[(f&1?H[a+8>>2]:g+8|0)|0]&8)){SI(g,e+16|0);d=e-16|0;H[d>>2]=H[d>>2]+1;d=H[b+28>>2]}c=c+1|0;if(d>>>0>c>>>0){continue}break}break b}f=H[b+24>>2];c=0;if((d|0)!=1){j=d&-2;e=0;while(1){i=c<<2;g=H[i+f>>2];k=H[g+4>>2];if((k&251658240)==16777216){H[g>>2]=H[a>>2];H[g+4>>2]=k&1073741823}g=H[f+(i|4)>>2];i=H[g+4>>2];if((i&251658240)==16777216){H[g>>2]=H[a>>2];H[g+4>>2]=i&1073741823}c=c+2|0;e=e+2|0;if((j|0)!=(e|0)){continue}break}}if(!(d&1)){break b}c=H[f+(c<<2)>>2];d=H[c+4>>2];if((d&251658240)!=16777216){break b}H[c>>2]=H[a>>2];H[c+4>>2]=d&1073741823}H[h+20>>2]=0;c=b+4|0;d=H[c+24>>2];if((d|0)<0){e=H[c+20>>2];d=e+(d<<2)|0;while(1){H[d>>2]=H[h+20>>2];d=d+4|0;if(e>>>0>d>>>0){continue}break}}H[c+24>>2]=0;f=H[b+28>>2];b=0;c:{if(!f){break c}d=f<<2;if(!(I[c+16|0]|d>>>0>16)){F[c+16|0]=1;b=c;break c}b=0;if(!d){break c}b=H[33808];e=b+12|0;b=(m=e,n=d,o=Ra[H[H[b>>2]+20>>2]](b)|0?52670:55639,p=13582,q=553,l=H[H[e>>2]+8>>2],Ra[l](m|0,n|0,o|0,p|0,q|0)|0)}d=b;b=H[c+24>>2];if((b|0)>0){g=d+(b<<2)|0;e=H[c+20>>2];b=d;while(1){H[b>>2]=H[e>>2];e=e+4|0;b=b+4|0;if(g>>>0>b>>>0){continue}break}}d:{if(H[c+28>>2]<0){break d}b=H[c+20>>2];if((b|0)==(c|0)){F[c+16|0]=0;break d}if(!b){break d}e=H[33808]+12|0;Ra[H[H[e>>2]+12>>2]](e,b)}H[c+28>>2]=f;H[c+20>>2]=d}c=H[a+4>>2];e:{if(!(c&3)){break e}b=c>>>24&15;e=H[((b<<2)+76348|0)+12>>2];d=H[a+8>>2];if(!d){d=Tt(H[a>>2],b);H[a+8>>2]=d;c=H[a+4>>2]}b=a+e|0;if(c&1){F[h+24|0]=I[d|0];RD(b,h+24|0);c=H[a+4>>2]}if(!(c&2)){break e}SD(b,I[d+1|0])}Oa=h+32|0}function WQ(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=O(0),l=0,m=0;h=Oa-32|0;Oa=h;f=H[H[a+4>>2]+40>>2];l=H[f+1140>>2];b=H[a+8>>2];XQ(a,h);g=b&2147483647;e=H[H[f+976>>2]+1816>>2];b=H[e+12>>2]&2147483647;if(g>>>0>=b>>>0){c=g>>>1|g;c=c>>>2|c;c=c>>>4|c;c=c>>>8|c;c=c>>>16|c;j=c+1|0;if(b>>>0<=c>>>0){a:{if(!j){break a}b=j<<5;if(!b){break a}c=H[e>>2];d=Ra[H[H[c>>2]+8>>2]](c,b,13582,553)|0}i=H[e+4>>2];b=H[e+8>>2];if((b|0)>0){m=(b<<5)+d|0;c=i;b=d;while(1){L[b>>2]=L[c>>2];L[b+4>>2]=L[c+4>>2];L[b+8>>2]=L[c+8>>2];L[b+12>>2]=L[c+12>>2];L[b+16>>2]=L[c+16>>2];L[b+20>>2]=L[c+20>>2];L[b+24>>2]=L[c+24>>2];H[b+28>>2]=H[c+28>>2];c=c+32|0;b=b+32|0;if(m>>>0>b>>>0){continue}break}}if(!(!i|H[e+12>>2]<0)){b=H[e>>2];Ra[H[H[b>>2]+12>>2]](b,i)}H[e+12>>2]=j;H[e+4>>2]=d}H[e+8>>2]=j}c=g+1|0;b=H[e+16>>2];H[e+16>>2]=b>>>0>>0?c:b;b=H[e+4>>2]+(g<<5)|0;L[b>>2]=L[h>>2];L[b+4>>2]=L[h+4>>2];L[b+8>>2]=L[h+8>>2];L[b+12>>2]=L[h+12>>2];L[b+16>>2]=L[h+16>>2];L[b+20>>2]=L[h+20>>2];k=L[h+24>>2];H[b+28>>2]=0;L[b+24>>2]=k;F[e+20|0]=1;aU(H[l+4>>2]+N(g,24)|0,H[a+28>>2]+68|0,h,O(1));F[l+16|0]=1;b=H[a+28>>2];i=I[b- -64|0];b:{if(i&5){k=L[b+60>>2];d=H[a+4>>2];e=H[d+44>>2];j=I[e+9|0];b=2;c:{if(j-3>>>0<4294967294){break c}b=2;if(!d){break c}b=F[e+44|0]&1?1:2}$H(a,k,j?(b|H[d+48>>2]<<2)+4|0:0,i&4);break b}d=g+1|0;b=H[f+980>>2];if(d>>>0>=K[b+200>>2]){iH(b,d)}d=g<<2;H[d+H[b+180>>2]>>2]=-1;H[d+H[H[b+192>>2]+4>>2]>>2]=0;b=H[b+196>>2]+(g<<3)|0;H[b>>2]=0;H[b+4>>2]=-1}L[H[H[f+1144>>2]+4>>2]+(g<<2)>>2]=L[H[a+28>>2]+60>>2];F[f+1148|0]=1;b=H[f+2520>>2];d:{if(b<<5>>>0>g>>>0){break d}d=b&2147483647;b=b<<6|2;b=(b>>>0>c>>>0?b:c)+31>>>5|0;if(d>>>0>=b>>>0){break d}c=H[33808]+12|0;c=Ra[H[H[c>>2]+8>>2]](c,b<<2,20591,14905,438)|0;d=H[f+2516>>2];e:{if(!d){break e}R6(c,d,H[f+2520>>2]<<2);if(H[f+2520>>2]<0){break e}d=H[f+2516>>2];if(!d){break e}i=H[33808]+12|0;Ra[H[H[i>>2]+12>>2]](i,d)}d=H[f+2520>>2];S6(c+(d<<2)|0,0,b-d<<2);H[f+2520>>2]=b;H[f+2516>>2]=c}c=H[a+4>>2];d=H[c+44>>2];b=I[d+9|0];f:{if(b-1>>>0>1|K[c+152>>2]>4294967293|((I[d+44|0]&3)==3|H[a+36>>2]!=-1)){break f}if(!(I[H[a+28>>2]- -64|0]&2)|(F[c+92|0]&1|I[c+149|0]&16)){break f}iR(H[H[c+40>>2]+1152>>2],a);b=I[H[c+44>>2]+9|0]}H[a+20>>2]=g;H[a+12>>2]=H[a+28>>2]+32;H[a+16>>2]=b?H[H[a+4>>2]+144>>2]:-128;Oa=h+32|0}function Ax(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v){var w=0,x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),F=O(0),G=O(0),I=O(0),K=O(0),M=O(0),N=O(0),P=0,Q=O(0);w=Oa-160|0;Oa=w;D=L[q+24>>2];A=L[q+20>>2];G=L[m>>2];M=L[q+12>>2];K=L[i+8>>2];I=L[i>>2];N=L[i+4>>2];C=L[h+8>>2];E=L[h>>2];B=L[q+16>>2];F=L[h+4>>2];x=L[j+8>>2];y=L[j+4>>2];z=L[j>>2];H[w+156>>2]=0;E=O(B-E);F=O(A-F);L[w+152>>2]=O(y*E)-O(z*F);C=O(D-C);L[w+148>>2]=O(z*C)-O(x*E);L[w+144>>2]=O(F*x)-O(y*C);h=w+48|0;rx(h,j,w+144|0,b);C=L[j>>2];E=L[j+4>>2];F=L[j+8>>2];H[w+124>>2]=0;L[w+120>>2]=-F;L[w+116>>2]=-E;L[w+112>>2]=-C;H[w+92>>2]=0;B=O(B-I);A=O(A-N);I=O(O(y*B)-O(z*A));L[w+88>>2]=-I;C=z;z=O(D-K);B=O(O(C*z)-O(x*B));L[w+84>>2]=-B;x=O(O(A*x)-O(y*z));L[w+80>>2]=-x;i=w+16|0;m=w+112|0;P=w+80|0;rx(i,m,P,c);sx(w,b,h,m,d,f,c,i,P,e,g,t);D=L[j>>2];N=O(O(L[u>>2]*D)+O(L[u+16>>2]*L[w+144>>2]));C=O(O(D*L[v>>2])+O(x*L[v+16>>2]));A=L[j+4>>2];E=O(O(L[u+4>>2]*A)+O(L[u+20>>2]*L[w+148>>2]));F=O(O(A*L[v+4>>2])+O(B*L[v+20>>2]));B=L[j+8>>2];Q=O(O(L[u+8>>2]*B)+O(L[u+24>>2]*L[w+152>>2]));I=O(O(B*L[v+8>>2])+O(I*L[v+24>>2]));K=O(O(O(N-C)+O(E-F))+O(Q-I));x=O(-K);y=L[o>>2];z=O(M-G);d=K>2]&y>O(0)&x>O(z*L[k>>2]);x=d?O(y*x):O(0);y=L[w>>2];y=y>2];M=O(z*L[l>>2]);G=O(y*(G>M?G:M));z=z<=L[s>>2]?d?O(0):G:G;a:{if(J[b+8>>1]==65535){x=O(x-O(O(N+E)+Q));break a}if(J[c+8>>1]!=65535){break a}x=O(O(O(C+F)+I)+x)}x=O(y*O(x+O(O(L[q+40>>2]*B)+O(O(L[q+32>>2]*D)+O(L[q+36>>2]*A)))));D=O(x-z);A=O(D-O(K*y));L[a>>2]=A>O(0)?A:O(0);L[r+40>>2]=(d?O(0):O(-(z>O(0)?z:O(0))))+x;L[r+36>>2]=D;L[r+32>>2]=y;L[r+44>>2]=L[q+28>>2];a=H[w+68>>2];H[r>>2]=H[w+64>>2];H[r+4>>2]=a;a=H[w+76>>2];H[r+8>>2]=H[w+72>>2];H[r+12>>2]=a;x=L[w+36>>2];y=L[w+40>>2];z=L[w+32>>2];H[r+28>>2]=0;L[r+24>>2]=-y;L[r+20>>2]=-x;L[r+16>>2]=-z;a=H[w+124>>2];H[r+56>>2]=H[w+120>>2];H[r+60>>2]=a;a=H[w+116>>2];H[r+48>>2]=H[w+112>>2];H[r+52>>2]=a;a=H[w+140>>2];H[r+72>>2]=H[w+136>>2];H[r+76>>2]=a;a=H[w+132>>2];H[r+64>>2]=H[w+128>>2];H[r+68>>2]=a;a=H[w+92>>2];H[r+88>>2]=H[w+88>>2];H[r+92>>2]=a;a=H[w+84>>2];H[r+80>>2]=H[w+80>>2];H[r+84>>2]=a;a=H[w+108>>2];H[r+104>>2]=H[w+104>>2];H[r+108>>2]=a;a=H[w+100>>2];H[r+96>>2]=H[w+96>>2];H[r+100>>2]=a;Oa=w+160|0}function fY(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=O(0),f=O(0),g=O(0),h=O(0),i=O(0),j=0,k=O(0),l=O(0),m=O(0),n=0,o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=0,u=0;d=Oa-112|0;Oa=d;if(b){u=a+4|0;while(1){t=H[c>>2];YZ(H[a+104>>2],H[a+108>>2],d+56|0,d+100|0,d+44|0,t,0,0);f=L[d+56>>2];g=O(L[d+68>>2]-f);e=L[d+60>>2];l=O(L[d+84>>2]-e);f=O(L[d+80>>2]-f);e=O(L[d+72>>2]-e);s=O(O(g*l)-O(f*e));i=e;e=L[d+64>>2];m=O(L[d+88>>2]-e);e=O(L[d+76>>2]-e);l=O(O(i*m)-O(l*e));m=O(O(e*f)-O(m*g));f=O(W(O(O(s*s)+O(O(l*l)+O(m*m)))));if(f>O(0)){f=O(O(1)/f);s=O(s*f);m=O(m*f);l=O(l*f)}n=H[d+44>>2];j=8;a:{if((n|0)==-1){break a}YZ(H[a+104>>2],H[a+108>>2],d+8|0,0,0,n,0,0);e=L[d+8>>2];o=O(L[d+20>>2]-e);h=L[d+12>>2];g=O(L[d+36>>2]-h);p=O(L[d+32>>2]-e);i=O(L[d+24>>2]-h);f=O(O(o*g)-O(p*i));k=i;i=L[d+16>>2];q=O(L[d+40>>2]-i);r=O(L[d+28>>2]-i);g=O(O(k*q)-O(g*r));k=O(g*O(L[d+80>>2]-e));e=O(O(r*p)-O(q*o));j=0;if(!(O(O(f*O(L[d+88>>2]-i))+O(k+O(e*O(L[d+84>>2]-h))))O(0)){h=O(O(1)/h);f=O(f*h);e=O(e*h);g=O(g*h)}j=(O(O(f*s)+O(O(g*l)+O(m*e)))>2];b:{if((n|0)!=-1){YZ(H[a+104>>2],H[a+108>>2],d+8|0,0,0,n,0,0);e=L[d+8>>2];o=O(L[d+20>>2]-e);h=L[d+12>>2];g=O(L[d+36>>2]-h);p=O(L[d+32>>2]-e);i=O(L[d+24>>2]-h);f=O(O(o*g)-O(p*i));k=i;i=L[d+16>>2];q=O(L[d+40>>2]-i);r=O(L[d+28>>2]-i);g=O(O(k*q)-O(g*r));k=O(g*O(L[d+56>>2]-e));e=O(O(r*p)-O(q*o));if(!(O(O(f*O(L[d+64>>2]-i))+O(k+O(e*O(L[d+60>>2]-h))))O(0)){h=O(O(1)/h);f=O(f*h);e=O(e*h);g=O(g*h)}j=(O(O(f*s)+O(O(g*l)+O(m*e)))>2];c:{if((n|0)!=-1){YZ(H[a+104>>2],H[a+108>>2],d+8|0,0,0,n,0,0);e=L[d+8>>2];o=O(L[d+20>>2]-e);h=L[d+12>>2];g=O(L[d+36>>2]-h);p=O(L[d+32>>2]-e);i=O(L[d+24>>2]-h);f=O(O(o*g)-O(p*i));k=i;i=L[d+16>>2];q=O(L[d+40>>2]-i);r=O(L[d+28>>2]-i);g=O(O(k*q)-O(g*r));k=O(g*O(L[d+68>>2]-e));e=O(O(r*p)-O(q*o));if(!(O(O(f*O(L[d+76>>2]-i))+O(k+O(e*O(L[d+72>>2]-h))))O(0)){h=O(O(1)/h);f=O(f*h);e=O(e*h);g=O(g*h)}j=(O(O(f*s)+O(O(g*l)+O(m*e)))>2]+560>>2];e=H[b>>2];if(e){H[b>>2]=H[e>>2]}if(!e){b=H[33808];e=Ra[H[H[b+12>>2]+8>>2]](b+12|0,56,20591,7273,2450)|0;b=e;H[b>>2]=0;H[b+4>>2]=0;H[b+48>>2]=0;H[b+52>>2]=0;H[b+40>>2]=0;H[b+44>>2]=0;H[b+32>>2]=0;H[b+36>>2]=0;H[b+24>>2]=0;H[b+28>>2]=0;H[b+16>>2]=0;H[b+20>>2]=0;H[b+8>>2]=0;H[b+12>>2]=0}h=e+4|0;H[a+28>>2]=h;g=H[e+8>>2];f=e+28|0;H[a+52>>2]=f;H[a+32>>2]=g;b=H[e+32>>2];i=e+16|0;H[a+40>>2]=i;H[a+56>>2]=b;d=H[e+20>>2];j=e+40|0;H[a- -64>>2]=j;H[a+44>>2]=d;k=H[e+44>>2];H[a+68>>2]=k;F[c+128|0]=1;H[c+136>>2]=0;H[c+140>>2]=16;H[c+132>>2]=c;if(H[a+268>>2]){g=0;while(1){j=(g<<2)+a|0;b=H[j+76>>2];a:{if(!(Ra[H[H[b>>2]+8>>2]](b,H[a+272>>2],e)|0)){break a}h=((g<<3)+a|0)+140|0;b=H[c+136>>2];b:{if(b>>>0>=(H[c+140>>2]&2147483647)>>>0){d=H[c+140>>2]&2147483647;i=d?d<<1:1;b=0;c:{if(!i){break c}d=i<<3;if(!(I[c+128|0]|d>>>0>128)){F[c+128|0]=1;b=c;break c}b=0;if(!d){break c}b=H[33808];f=b+12|0;b=(n=f,o=d,p=Ra[H[H[b>>2]+20>>2]](b)|0?27382:55639,q=13582,r=553,m=H[H[f>>2]+8>>2],Ra[m](n|0,o|0,p|0,q|0,r|0)|0)}d=H[c+136>>2];if((d|0)>0){k=b+(d<<3)|0;f=H[c+132>>2];d=b;while(1){l=H[f+4>>2];H[d>>2]=H[f>>2];H[d+4>>2]=l;f=f+8|0;d=d+8|0;if(k>>>0>d>>>0){continue}break}d=H[c+136>>2]}f=H[h+4>>2];d=(d<<3)+b|0;H[d>>2]=H[h>>2];H[d+4>>2]=f;d:{if(H[c+140>>2]<0){break d}d=H[c+132>>2];if((d|0)==(c|0)){F[c+128|0]=0;break d}if(!d){break d}f=H[33808]+12|0;Ra[H[H[f>>2]+12>>2]](f,d)}H[c+140>>2]=i;H[c+132>>2]=b;break b}d=H[h+4>>2];b=H[c+132>>2]+(b<<3)|0;H[b>>2]=H[h>>2];H[b+4>>2]=d}H[c+136>>2]=H[c+136>>2]+1;b=H[j+76>>2];if(!b){break a}Ra[H[H[b>>2]+4>>2]](b)}g=g+1|0;if(g>>>0>2]){continue}break}j=H[a+64>>2];d=H[a+44>>2];i=H[a+40>>2];f=H[a+52>>2];h=H[a+28>>2];g=H[a+32>>2];k=H[a+68>>2];b=H[a+56>>2]}H[a+36>>2]=H[h+4>>2]-g;H[a+60>>2]=H[f+4>>2]-b;H[a+48>>2]=H[i+4>>2]-d;H[a+72>>2]=H[j+4>>2]-k;b=H[H[a+272>>2]+560>>2];H[e>>2]=H[b>>2];H[b>>2]=e;if(H[c+136>>2]){g=0;while(1){GH(H[a+276>>2],H[c+132>>2]+(g<<3)|0);g=g+1|0;if(g>>>0>2]){continue}break}}a=H[c+140>>2];e:{if((a|0)<0|!(a&2147483647)){break e}a=H[c+132>>2];if((a|0)==(c|0)|!a){break e}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,a)}Oa=c+144|0}function CD(a,b,c){a=a|0;b=b|0;c=c|0;var d=O(0),e=O(0),f=O(0),g=O(0),h=O(0),i=O(0),j=0,k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=0,r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=0,x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),F=0,G=O(0),I=O(0),K=O(0),M=O(0),N=O(0),Q=O(0),R=O(0);j=Oa+-64|0;Oa=j;q=1;a:{if(!(H[c+40>>2]&J[a+20>>1])){break a}F=H[c>>2];if(!H[F+588>>2]){break a}k=L[c+20>>2];q=H[a+4>>2];u=L[c+36>>2];d=O(L[q+8>>2]-u);e=O(d+d);h=L[c+12>>2];v=L[c+28>>2];d=O(L[q>>2]-v);f=O(d+d);x=L[c+32>>2];d=O(L[q+4>>2]-x);g=O(d+d);l=L[c+16>>2];i=O(O(k*e)+O(O(h*f)+O(g*l)));d=L[c+24>>2];n=O(O(d*d)+O(-.5));L[j+56>>2]=O(k*i)+O(O(e*n)-O(d*O(O(h*g)-O(f*l))));L[j+52>>2]=O(l*i)+O(O(g*n)-O(d*O(O(k*f)-O(e*h))));L[j+48>>2]=O(h*i)+O(O(f*n)-O(d*O(O(l*e)-O(g*k))));w=H[a+8>>2];e=L[w+8>>2];e=O(e+e);f=L[w>>2];f=O(f+f);g=L[w+4>>2];g=O(g+g);i=O(O(k*e)+O(O(h*f)+O(l*g)));L[j+40>>2]=O(k*i)+O(O(e*n)-O(d*O(O(h*g)-O(f*l))));L[j+36>>2]=O(l*i)+O(O(g*n)-O(d*O(O(k*f)-O(e*h))));L[j+32>>2]=O(h*i)+O(O(f*n)-O(d*O(O(l*e)-O(g*k))));e=L[q+8>>2];w=H[a+12>>2];f=L[w+8>>2];g=O(e+f);o=L[q+4>>2];m=L[w+4>>2];i=O(o+m);r=O(e-f);o=O(o-m);e=L[q>>2];f=L[w>>2];m=O(e-f);s=O(e+f);if(!(m>s)){y=O(-h);p=O(y-h);e=O(-k);G=O(p*e);f=O(-l);t=O(f-l);I=O(d*t);C=O(O(s-m)*O(.5));z=O(d*p);A=O(t*e);D=O(O(i-o)*O(.5));B=O(O(h*p)+O(1));K=O(t*f);E=O(O(g-r)*O(.5));M=O(O(O(P(O(O(G-I)*C)))+O(P(O(O(z+A)*D))))+O(P(O(O(B-K)*E))));t=O(u*O(-2));u=O(v*O(-2));v=O(x*O(-2));x=O(O(k*t)+O(O(h*u)+O(v*l)));g=O(O(r+g)*O(.5));r=O(g+g);g=O(O(m+s)*O(.5));m=O(g+g);g=O(O(o+i)*O(.5));o=O(g+g);s=O(O(e*r)+O(O(y*m)+O(o*f)));N=O(O(O(k*x)+O(O(t*n)-O(d*O(O(h*v)+O(u*f)))))+O(O(e*s)+O(O(r*n)+O(d*O(O(y*o)+O(l*m))))));g=O(M+N);p=O(p*f);i=O(e-k);Q=O(d*i);R=B;B=O(i*e);z=O(O(O(P(O(O(p+Q)*C)))+O(P(O(O(R-B)*D))))+O(P(O(O(A-z)*E))));A=O(O(O(l*x)+O(O(v*n)-O(d*O(O(k*u)+O(t*y)))))+O(O(f*s)+O(O(o*n)+O(d*O(O(e*m)+O(h*r))))));i=O(z+A);p=O(O(O(P(O(O(O(O(1)-K)-B)*C)))+O(P(O(O(p-Q)*D))))+O(P(O(O(G+I)*E))));d=O(O(O(h*x)+O(O(u*n)-O(d*O(O(l*t)+O(v*e)))))+O(O(y*s)+O(O(m*n)+O(d*O(O(f*r)+O(k*o))))));s=O(p+d);o=O(A-z);m=O(d-p);r=O(N-M)}L[j+24>>2]=O(g-r)*O(.5);L[j+20>>2]=O(i-o)*O(.5);L[j+16>>2]=O(s-m)*O(.5);c=H[c+4>>2];q=jC(H[c+12>>2],H[c+8>>2],F,j+48|0,j+32|0,b,j+16|0,H[a+16>>2])}Oa=j- -64|0;return q|0}function wu(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=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),F=O(0),G=O(0),I=O(0),J=O(0),K=O(0),M=O(0);j=L[d+8>>2];E=L[c+24>>2];F=L[d+24>>2];k=O(E-F);p=L[d>>2];G=L[c+16>>2];I=L[d+16>>2];l=O(G-I);q=L[d+4>>2];J=L[c+20>>2];K=L[d+20>>2];m=O(J-K);n=O(O(j*k)+O(O(p*l)+O(q*m)));s=L[d+12>>2];u=O(O(s*s)+O(-.5));i=O(O(O(u*k)-O(s*O(O(p*m)-O(l*q))))+O(j*n));i=O(i+i);t=L[b+12>>2];v=i>2];y=o>2];m=nv?m:v;C=O(n-m);z=O(O(x*x)+O(O(B*B)+O(C*C)));M=L[a+4>>2];v=O(M+L[e>>2]);e=z=(i>A?i:A))){break b}i=O(-o);if(!(r>=(i=(i>2];H[g+4096>>2]=a+1;i=k>=O(0)?O(1):O(-1);A=i;z=O(i*O(0));i=O(-k);k=O(t-(io?m:o));c=k==k&(i>=k&t>=k);o=c?A:z;m=m>=O(0)?O(1):O(-1);n=O(m*O(0));d=i==i&i<=t&i<=k;m=c?n:d?n:m;l=l>=O(0)?O(1):O(-1);n=O(l*O(0));l=c?n:d?l:n;n=O(O(j*o)+O(O(p*l)+O(q*m)));b=(a<<6)+g|0;r=O(O(O(u*o)+O(s*O(O(p*m)+O(l*v))))+O(j*n));r=O(r+r);L[b+8>>2]=r;j=O(O(O(u*m)+O(s*O(O(j*l)+O(o*y))))+O(q*n));w=O(j+j);L[b+4>>2]=w;j=O(O(p*n)+O(O(u*l)+O(s*O(O(q*o)+O(m*D)))));p=O(j+j);L[b>>2]=p;j=c?k:d?i:t;L[b+16>>2]=G+O(j*p);p=O(E+O(j*r));q=O(J+O(j*w));j=O(-j);b=b+16|0;break a}a=H[g+4096>>2];H[g+4096>>2]=a+1;b=(a<<6)+g|0;w=O(O(j*k)+O(O(p*l)+O(q*m)));i=O(O(p*w)+O(O(u*l)+O(s*O(O(q*k)+O(m*D)))));L[b+16>>2]=I+O(i+i);i=O(O(1)/O(W(z)));o=O(x*i);n=O(B*i);t=O(C*i);r=O(O(j*o)+O(O(p*n)+O(q*t)));x=O(O(O(u*o)+O(s*O(O(p*t)+O(n*v))))+O(j*r));L[b+8>>2]=x+x;x=O(O(q*r)+O(O(u*t)+O(s*O(O(j*n)+O(o*y)))));L[b+4>>2]=x+x;o=O(O(p*r)+O(O(u*n)+O(s*O(O(q*o)+O(t*D)))));L[b>>2]=o+o;p=O(O(O(u*k)+O(s*O(O(p*m)+O(l*v))))+O(j*w));p=O(F+O(p+p));j=O(O(O(u*m)+O(s*O(O(j*l)+O(k*y))))+O(q*w));q=O(K+O(j+j));j=O(O(1)/i);b=b+16|0}H[b+12>>2]=0;L[b+8>>2]=p;L[b+4>>2]=q;a=(a<<6)+g|0;H[a+52>>2]=-1;L[a+12>>2]=j-M}return e|0}function uY(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=O(0),f=O(0),g=O(0),h=O(0),i=O(0),j=0,k=O(0),l=O(0),m=O(0),n=0,o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=0,u=0;d=Oa-96|0;Oa=d;if(b){u=a+4|0;while(1){t=H[c>>2];YZ(H[a+2232>>2],H[a+2220>>2],d+48|0,d+84|0,d+36|0,t,0,0);f=L[d+48>>2];g=O(L[d+60>>2]-f);e=L[d+52>>2];l=O(L[d+76>>2]-e);f=O(L[d+72>>2]-f);e=O(L[d+64>>2]-e);s=O(O(g*l)-O(f*e));i=e;e=L[d+56>>2];m=O(L[d+80>>2]-e);e=O(L[d+68>>2]-e);l=O(O(i*m)-O(l*e));m=O(O(e*f)-O(m*g));f=O(W(O(O(s*s)+O(O(l*l)+O(m*m)))));if(f>O(0)){f=O(O(1)/f);s=O(s*f);m=O(m*f);l=O(l*f)}n=H[d+36>>2];j=8;a:{if((n|0)==-1){break a}YZ(H[a+2232>>2],H[a+2220>>2],d,0,0,n,0,0);e=L[d>>2];o=O(L[d+12>>2]-e);h=L[d+4>>2];g=O(L[d+28>>2]-h);p=O(L[d+24>>2]-e);i=O(L[d+16>>2]-h);f=O(O(o*g)-O(p*i));k=i;i=L[d+8>>2];q=O(L[d+32>>2]-i);r=O(L[d+20>>2]-i);g=O(O(k*q)-O(g*r));k=O(g*O(L[d+72>>2]-e));e=O(O(r*p)-O(q*o));j=0;if(!(O(O(f*O(L[d+80>>2]-i))+O(k+O(e*O(L[d+76>>2]-h))))O(0)){h=O(O(1)/h);f=O(f*h);e=O(e*h);g=O(g*h)}j=(O(O(f*s)+O(O(g*l)+O(m*e)))>2];b:{if((n|0)!=-1){YZ(H[a+2232>>2],H[a+2220>>2],d,0,0,n,0,0);e=L[d>>2];o=O(L[d+12>>2]-e);h=L[d+4>>2];g=O(L[d+28>>2]-h);p=O(L[d+24>>2]-e);i=O(L[d+16>>2]-h);f=O(O(o*g)-O(p*i));k=i;i=L[d+8>>2];q=O(L[d+32>>2]-i);r=O(L[d+20>>2]-i);g=O(O(k*q)-O(g*r));k=O(g*O(L[d+48>>2]-e));e=O(O(r*p)-O(q*o));if(!(O(O(f*O(L[d+56>>2]-i))+O(k+O(e*O(L[d+52>>2]-h))))O(0)){h=O(O(1)/h);f=O(f*h);e=O(e*h);g=O(g*h)}j=(O(O(f*s)+O(O(g*l)+O(m*e)))>2];c:{if((n|0)!=-1){YZ(H[a+2232>>2],H[a+2220>>2],d,0,0,n,0,0);e=L[d>>2];o=O(L[d+12>>2]-e);h=L[d+4>>2];g=O(L[d+28>>2]-h);p=O(L[d+24>>2]-e);i=O(L[d+16>>2]-h);f=O(O(o*g)-O(p*i));k=i;i=L[d+8>>2];q=O(L[d+32>>2]-i);r=O(L[d+20>>2]-i);g=O(O(k*q)-O(g*r));k=O(g*O(L[d+60>>2]-e));e=O(O(r*p)-O(q*o));if(!(O(O(f*O(L[d+68>>2]-i))+O(k+O(e*O(L[d+64>>2]-h))))O(0)){h=O(O(1)/h);f=O(f*h);e=O(e*h);g=O(g*h)}j=(O(O(f*s)+O(O(g*l)+O(m*e)))>2];N=L[b+76>>2];P=L[b+88>>2];Q=L[b+96>>2];R=L[b+80>>2];S=L[b+92>>2];T=L[b+100>>2];U=L[b+104>>2];B=L[b+16>>2];C=L[b+20>>2];d=L[a+16>>2];e=L[a+28>>2];p=L[b+48>>2];q=L[b+60>>2];D=L[b+28>>2];r=L[b+40>>2];m=L[b+52>>2];s=L[b- -64>>2];V=L[b+72>>2];E=L[b>>2];F=L[b+4>>2];G=L[b+8>>2];f=L[a+24>>2];g=L[a>>2];h=L[a+12>>2];H=L[b+12>>2];i=L[a+4>>2];I=L[b+24>>2];o=L[b+36>>2];J=L[b+32>>2];j=L[a+32>>2];n=L[b+68>>2];t=O(j*n);u=L[b+44>>2];k=L[a+8>>2];l=L[a+20>>2];v=L[b+56>>2];L[b+32>>2]=J+O(t+O(O(u*k)+O(l*v)));w=O(l*m);L[b+28>>2]=D+O(O(s*j)+O(O(r*k)+w));c=O(k*o);L[b+24>>2]=I+O(O(q*j)+O(c+O(l*p)));x=O(e*n);L[b+20>>2]=C+O(x+O(O(u*i)+O(d*v)));y=O(d*m);L[b+16>>2]=B+O(O(s*e)+O(O(r*i)+y));z=O(i*o);L[b+12>>2]=H+O(O(q*e)+O(z+O(d*p)));A=O(f*n);L[b+8>>2]=G+O(A+O(O(u*g)+O(h*v)));m=O(h*m);L[b+4>>2]=F+O(O(s*f)+O(O(r*g)+m));n=O(g*o);L[b>>2]=E+O(O(q*f)+O(n+O(h*p)));K=O(J+O(t+O(O(k*q)+O(l*s))));o=O(I+O(O(j*u)+O(c+O(l*r))));t=O(D+O(O(j*v)+O(O(k*p)+w)));c=O(O(O(j*K)+O(O(k*o)+O(l*t)))+O(U+O(O(j*J)+O(O(k*I)+O(l*D)))));L[b+104>>2]=O(c+c)*O(.5);w=O(C+O(x+O(O(i*q)+O(d*s))));x=O(H+O(O(e*u)+O(z+O(d*r))));y=O(B+O(O(e*v)+O(O(i*p)+y)));c=O(O(O(O(O(K*e)+O(O(o*i)+O(d*t)))+O(S+O(O(j*C)+O(O(k*H)+O(l*B)))))+O(O(O(j*w)+O(O(k*x)+O(l*y)))+O(T+O(O(e*J)+O(O(i*I)+O(d*D))))))*O(.5));L[b+100>>2]=c;z=O(G+O(A+O(O(g*q)+O(h*s))));A=O(E+O(O(f*u)+O(n+O(h*r))));m=O(F+O(O(f*v)+O(O(g*p)+m)));n=O(O(O(O(R+O(O(j*G)+O(O(k*E)+O(l*F))))+O(O(K*f)+O(O(o*g)+O(h*t))))+O(O(O(j*z)+O(O(k*A)+O(l*m)))+O(Q+O(O(f*J)+O(O(g*I)+O(h*D))))))*O(.5));L[b+96>>2]=n;L[b+92>>2]=c;c=O(O(O(w*e)+O(O(x*i)+O(d*y)))+O(P+O(O(e*C)+O(O(i*H)+O(d*B)))));L[b+88>>2]=O(c+c)*O(.5);c=O(O(O(O(N+O(O(e*G)+O(O(i*E)+O(d*F))))+O(O(w*f)+O(O(x*g)+O(h*y))))+O(O(O(z*e)+O(O(A*i)+O(d*m)))+O(M+O(O(f*C)+O(O(g*H)+O(h*B))))))*O(.5));L[b+84>>2]=c;L[b+80>>2]=n;L[b+76>>2]=c;c=O(O(V+O(O(f*G)+O(O(g*E)+O(h*F))))+O(O(z*f)+O(O(A*g)+O(h*m))));L[b+72>>2]=O(c+c)*O(.5)}function fn(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=O(0);if(b-3>>>0<=1){return kU(H[33768],c)|0}a:{b:{switch(b-1|0){case 1:e=H[33768];b=Oa-16|0;Oa=b;a=H[33808];d=Ra[H[H[a>>2]+20>>2]](a)|0?35808:55639;a=Ra[H[H[a+12>>2]+8>>2]](a+12|0,132,d,4459,514)|0;H[a+4>>2]=196610;H[a+12>>2]=1;G[a+52>>1]=0;H[a+8>>2]=127632;H[a>>2]=127548;H[a+80>>2]=H[c+64>>2];H[a+84>>2]=H[c+108>>2];L[a+88>>2]=L[c+68>>2];L[a+92>>2]=L[c+72>>2];L[a+96>>2]=L[c+76>>2];L[a+100>>2]=L[c+80>>2];L[a+104>>2]=L[c+84>>2];L[a+108>>2]=L[c+88>>2];L[a+112>>2]=L[c+92>>2];L[a+116>>2]=L[c+96>>2];L[a+120>>2]=L[c+100>>2];f=L[c+104>>2];H[a+128>>2]=e;L[a+124>>2]=f;L[a+16>>2]=L[c>>2];L[a+20>>2]=L[c+4>>2];L[a+24>>2]=L[c+8>>2];L[a+28>>2]=L[c+12>>2];L[a+32>>2]=L[c+16>>2];L[a+36>>2]=L[c+20>>2];L[a+40>>2]=L[c+24>>2];L[a+44>>2]=L[c+28>>2];L[a+48>>2]=L[c+32>>2];d=H[c+40>>2];H[a+52>>2]=H[c+36>>2];H[a+56>>2]=d;d=H[c+48>>2];H[a+60>>2]=H[c+44>>2];H[a+64>>2]=d;d=H[c+56>>2];H[a+68>>2]=H[c+52>>2];H[a+72>>2]=d;H[a+76>>2]=H[c+60>>2];H[b+8>>2]=a;c=rg(e+48|0,b+8|0,b+15|0);break a;case 0:e=H[33768];b=Oa-16|0;Oa=b;a=H[33808];d=Ra[H[H[a>>2]+20>>2]](a)|0?39962:55639;a=Ra[H[H[a+12>>2]+8>>2]](a+12|0,100,d,4459,570)|0;H[a+4>>2]=196609;H[a+76>>2]=0;H[a+80>>2]=0;H[a+96>>2]=e;H[a+12>>2]=1;G[a+68>>1]=0;H[a+8>>2]=127808;H[a>>2]=127704;H[a+84>>2]=0;H[a+88>>2]=0;H[a+92>>2]=0;L[a+16>>2]=L[c>>2];L[a+20>>2]=L[c+4>>2];L[a+24>>2]=L[c+8>>2];L[a+28>>2]=L[c+12>>2];L[a+32>>2]=L[c+16>>2];L[a+36>>2]=L[c+20>>2];d=H[c+28>>2];H[a+40>>2]=H[c+24>>2];H[a+44>>2]=d;d=H[c+36>>2];H[a+48>>2]=H[c+32>>2];H[a+52>>2]=d;d=H[c+44>>2];H[a+56>>2]=H[c+40>>2];H[a+60>>2]=d;H[a- -64>>2]=H[c+48>>2];G[a+68>>1]=J[c+52>>1];H[a+72>>2]=H[c+56>>2];H[c+44>>2]=0;H[b+8>>2]=a;c=rg(e+88|0,b+8|0,b+15|0);break a;case 16:e=H[33768];b=Oa-16|0;Oa=b;a=H[33808];d=Ra[H[H[a>>2]+20>>2]](a)|0?36966:55639;a=Ra[H[H[a+12>>2]+8>>2]](a+12|0,44,d,4459,658)|0;H[a+4>>2]=196625;H[a+16>>2]=e;H[a+12>>2]=1;H[a+8>>2]=126760;H[a>>2]=126704;H[a+20>>2]=H[c>>2];H[a+24>>2]=H[c+4>>2];H[a+28>>2]=H[c+8>>2];d=H[c+12>>2];H[a+36>>2]=0;H[a+32>>2]=d;H[a+40>>2]=H[c+16>>2];H[b+8>>2]=a;c=rg(e+128|0,b+8|0,b+15|0);break a;default:break b}}o5(H[33808],32,15595,62,60992,0);return 0}if(!I[b+15|0]){H[c>>2]=H[b+8>>2]}Oa=b+16|0;return a|0}function f0(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=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=0,v=O(0),w=O(0);f=Oa-48|0;Oa=f;a:{if(I[a+16|0]){q=L[c>>2];L[f>>2]=q;j=L[c+4>>2];L[f+4>>2]=j;m=L[c+8>>2];L[f+8>>2]=m;L[f+12>>2]=L[d>>2];L[f+16>>2]=L[d+4>>2];L[f+20>>2]=L[d+8>>2];L[f+24>>2]=L[e>>2];L[f+28>>2]=L[e+4>>2];L[f+32>>2]=L[e+8>>2];break a}h=H[a+8>>2];o=L[h+28>>2];p=L[h+16>>2];i=L[h+32>>2];l=L[h+20>>2];u=I[h+72|0];r=L[h+4>>2];m=L[h+8>>2];j=L[c>>2];k=L[c+4>>2];s=L[h+12>>2];n=L[c+8>>2];t=L[h+24>>2];q=O(O(O(j*L[h>>2])+O(k*s))+O(n*t));L[f>>2]=q;m=O(O(O(j*m)+O(k*l))+O(n*i));L[f+8>>2]=m;j=O(O(O(j*r)+O(k*p))+O(n*o));L[f+4>>2]=j;n=L[h>>2];r=L[h+4>>2];c=(u?24:12)+f|0;k=L[d>>2];v=l;l=L[d+4>>2];w=i;i=L[d+8>>2];L[c+8>>2]=O(O(k*L[h+8>>2])+O(v*l))+O(w*i);L[c+4>>2]=O(O(k*r)+O(p*l))+O(o*i);L[c>>2]=O(O(k*n)+O(s*l))+O(t*i);l=L[h+28>>2];k=L[h+16>>2];n=L[h+24>>2];r=L[h>>2];s=L[h+12>>2];t=L[h+4>>2];c=(u?12:24)+f|0;o=L[e>>2];p=L[e+4>>2];i=L[e+8>>2];L[c+8>>2]=O(O(o*L[h+8>>2])+O(p*L[h+20>>2]))+O(i*L[h+32>>2]);L[c+4>>2]=O(O(o*t)+O(p*k))+O(i*l);L[c>>2]=O(O(o*r)+O(p*s))+O(i*n)}e=H[b+8>>2];b=H[a+12>>2];if(b){b=I[b+e|0]}else{b=56}c=H[a+868>>2];if((c|0)==16){c=a+880|0;q0(c,a+20|0,H[a+788>>2],I[a+852|0]);q0(c,a+56|0,H[a+792>>2],I[a+853|0]);q0(c,a+92|0,H[a+796>>2],I[a+854|0]);q0(c,a+128|0,H[a+800>>2],I[a+855|0]);q0(c,a+164|0,H[a+804>>2],I[a+856|0]);q0(c,a+200|0,H[a+808>>2],I[a+857|0]);q0(c,a+236|0,H[a+812>>2],I[a+858|0]);q0(c,a+272|0,H[a+816>>2],I[a+859|0]);q0(c,a+308|0,H[a+820>>2],I[a+860|0]);q0(c,a+344|0,H[a+824>>2],I[a+861|0]);q0(c,a+380|0,H[a+828>>2],I[a+862|0]);q0(c,a+416|0,H[a+832>>2],I[a+863|0]);q0(c,a+452|0,H[a+836>>2],I[a+864|0]);q0(c,a+488|0,H[a+840>>2],I[a+865|0]);q0(c,a+524|0,H[a+844>>2],I[a+866|0]);q0(c,a+560|0,H[a+848>>2],I[a+867|0]);m=L[f+8>>2];j=L[f+4>>2];q=L[f>>2];c=0}H[a+868>>2]=c+1;h=a+20|0;d=h+N(c,36)|0;L[d+8>>2]=m;L[d+4>>2]=j;L[d>>2]=q;L[d+12>>2]=L[f+12>>2];L[d+16>>2]=L[f+16>>2];L[d+20>>2]=L[f+20>>2];L[d+24>>2]=L[f+24>>2];L[d+28>>2]=L[f+28>>2];L[d+32>>2]=L[f+32>>2];a=N(c,12)+a|0;H[a+596>>2]=H[g>>2];H[a+600>>2]=H[g+4>>2];H[a+604>>2]=H[g+8>>2];H[(h+(c<<2)|0)+768>>2]=e;F[(c+h|0)+832|0]=b;Oa=f+48|0;return 1}function DB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=O(0),f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=0,l=0;d=Oa+-64|0;Oa=d;H[d+24>>2]=0;H[d+16>>2]=0;H[d+20>>2]=0;H[d+8>>2]=0;H[d+12>>2]=1065353216;H[d>>2]=0;H[d+4>>2]=0;VT(b,d);H[b+4>>2]=c;c=a+16|0;e=L[c+672>>2];f=L[c+676>>2];g=L[c+660>>2];h=L[c+656>>2];i=L[c+664>>2];j=L[c+680>>2];L[d+52>>2]=i+j;L[d+48>>2]=g+f;F[d+56|0]=1;L[d+44>>2]=h+e;L[d+40>>2]=i-j;L[d+36>>2]=g-f;L[d+32>>2]=h-e;XT(b,d+32|0);while(1){if(H[(c+(k<<2)|0)+688>>2]){a=c+(k<<5)|0;e=L[a+752>>2];f=L[a+736>>2];g=L[a+756>>2];h=L[a+740>>2];i=L[a+760>>2];j=L[a+744>>2];F[d+56|0]=1;L[d+52>>2]=j+i;L[d+48>>2]=h+g;L[d+44>>2]=f+e;L[d+40>>2]=j-i;L[d+36>>2]=h-g;L[d+32>>2]=f-e;XT(b,d+32|0);l=0;while(1){a=c+N(k,224)|0;a:{if(!H[(a+(l<<2)|0)+912>>2]){break a}a=a+(l<<5)|0;e=L[a+976>>2];f=L[a+960>>2];g=L[a+980>>2];h=L[a+964>>2];i=L[a+984>>2];j=L[a+968>>2];F[d+56|0]=1;L[d+52>>2]=j+i;L[d+48>>2]=h+g;L[d+44>>2]=f+e;L[d+40>>2]=j-i;L[d+36>>2]=h-g;L[d+32>>2]=f-e;XT(b,d+32|0);a=(c+N(k,1120)|0)+N(l,224)|0;if(H[a+2032>>2]){e=L[a+2096>>2];f=L[a+2080>>2];g=L[a+2100>>2];h=L[a+2084>>2];i=L[a+2104>>2];j=L[a+2088>>2];F[d+56|0]=1;L[d+52>>2]=j+i;L[d+48>>2]=h+g;L[d+44>>2]=f+e;L[d+40>>2]=j-i;L[d+36>>2]=h-g;L[d+32>>2]=f-e;XT(b,d+32|0)}if(H[a+2036>>2]){e=L[a+2128>>2];f=L[a+2112>>2];g=L[a+2132>>2];h=L[a+2116>>2];i=L[a+2136>>2];j=L[a+2120>>2];F[d+56|0]=1;L[d+52>>2]=j+i;L[d+48>>2]=h+g;L[d+44>>2]=f+e;L[d+40>>2]=j-i;L[d+36>>2]=h-g;L[d+32>>2]=f-e;XT(b,d+32|0)}if(H[a+2040>>2]){e=L[a+2160>>2];f=L[a+2144>>2];g=L[a+2164>>2];h=L[a+2148>>2];i=L[a+2168>>2];j=L[a+2152>>2];F[d+56|0]=1;L[d+52>>2]=j+i;L[d+48>>2]=h+g;L[d+44>>2]=f+e;L[d+40>>2]=j-i;L[d+36>>2]=h-g;L[d+32>>2]=f-e;XT(b,d+32|0)}if(H[a+2044>>2]){e=L[a+2192>>2];f=L[a+2176>>2];g=L[a+2196>>2];h=L[a+2180>>2];i=L[a+2200>>2];j=L[a+2184>>2];F[d+56|0]=1;L[d+52>>2]=j+i;L[d+48>>2]=h+g;L[d+44>>2]=f+e;L[d+40>>2]=j-i;L[d+36>>2]=h-g;L[d+32>>2]=f-e;XT(b,d+32|0)}if(!H[a+2048>>2]){break a}e=L[a+2224>>2];f=L[a+2208>>2];g=L[a+2228>>2];h=L[a+2212>>2];i=L[a+2232>>2];j=L[a+2216>>2];F[d+56|0]=1;L[d+52>>2]=j+i;L[d+48>>2]=h+g;L[d+44>>2]=f+e;L[d+40>>2]=j-i;L[d+36>>2]=h-g;L[d+32>>2]=f-e;XT(b,d+32|0)}l=l+1|0;if((l|0)!=5){continue}break}}k=k+1|0;if((k|0)!=5){continue}break}Oa=d- -64|0}function vK(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;H[a>>2]=116636;d=H[a+88>>2];if(d){c=H[d>>2];if(c){b=H[d+12>>2];while(1){c=c-1|0;e=H[b+28>>2];if(e){e=mK(e);f=H[33808];Ra[H[H[f+12>>2]+12>>2]](f+12|0,e);H[b+28>>2]=0}b=b+40|0;if(c){continue}break}}H[d+8>>2]=-1;H[d>>2]=0;H[d+4>>2]=-1;c=d+92|0;b=0;while(1){H[(d+N(b,12)|0)+96>>2]=0;H[(d+(b<<2)|0)+3176>>2]=-1;e=b|1;if((e|0)==257){H[d+28>>2]=0;H[d+16>>2]=0;XG(d+36|0);b=H[d+76>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}H[d+76>>2]=0;H[d+80>>2]=0;b=H[d+84>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}H[d+84>>2]=0;H[d+88>>2]=0;H[d+4208>>2]=0;b=H[d+4216>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}H[d+4216>>2]=0;H[d+4220>>2]=0}else{H[(c+N(e,12)|0)+4>>2]=0;f=e<<2;e=d+3176|0;H[f+e>>2]=-1;f=b|2;H[(c+N(f,12)|0)+4>>2]=0;H[e+(f<<2)>>2]=-1;f=b|3;H[(c+N(f,12)|0)+4>>2]=0;H[e+(f<<2)>>2]=-1;b=b+4|0;continue}break}b=H[d+4216>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}H[d+4216>>2]=0;H[d+4220>>2]=0;b=H[d+4212>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=H[d+4204>>2];if(!b){break a}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=d+3176|0;e=d+92|0;while(1){c=b;b=b-12|0;c=H[c-4>>2];b:{if((c|0)<0|!(c&2147483647)){break b}c=H[b>>2];if(!c){break b}f=H[33808];Ra[H[H[f+12>>2]+12>>2]](f+12|0,c)}if((b|0)!=(e|0)){continue}break}b=H[d+84>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}H[d+84>>2]=0;H[d+88>>2]=0;b=H[d+76>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}H[d+76>>2]=0;H[d+80>>2]=0;XG(d+36|0);b=H[d+32>>2];c:{if((b|0)<0|!(b&2147483647)){break c}b=H[d+24>>2];if(!b){break c}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[d+20>>2];d:{if((b|0)<0|!(b&2147483647)){break d}b=H[d+12>>2];if(!b){break d}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,d);H[a+88>>2]=0}b=H[a+92>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+120>>2];e:{if((b|0)<0|!(b&2147483647)){break e}b=H[a+112>>2];if(!b){break e}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+108>>2];f:{if((b|0)<0|!(b&2147483647)){break f}b=H[a+100>>2];if(!b){break f}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}H[a- -64>>2]=0;H[a+48>>2]=110900;H[a+24>>2]=0;H[a+8>>2]=110900;return a|0}function Av(a,b){var c=0,d=0,e=O(0),f=O(0),g=O(0),h=0,i=O(0),j=O(0),k=0,l=0,m=O(0),n=O(0),o=O(0),p=0,q=O(0),r=0,s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=0,A=0,B=0,C=0,D=O(0),E=O(0),G=O(0),I=O(0),J=O(0),K=O(0),M=O(0),P=O(0),Q=O(0),R=O(0),S=O(0),T=O(0),U=O(0),V=O(0),W=O(0),X=O(0),Y=O(0),Z=O(0),_=O(0);h=Oa-32|0;Oa=h;z=H[a+168>>2];A=H[a+452>>2];B=H[a+456>>2];C=H[a+444>>2];l=H[a+264>>2];d=H[a+228>>2];a:{if(F[H[a+476>>2]]&1){H[b>>2]=0;H[b+4>>2]=0;H[b+24>>2]=0;H[b+16>>2]=0;H[b+20>>2]=0;H[b+8>>2]=0;H[b+12>>2]=0;break a}D=L[a+560>>2];E=L[a+572>>2];G=L[a+584>>2];I=L[a+564>>2];J=L[a+576>>2];K=L[a+588>>2];M=L[a+568>>2];P=L[a+580>>2];Q=L[a+592>>2];R=L[a+620>>2];S=L[a+608>>2];T=L[a+596>>2];s=L[a+524>>2];n=L[a+528>>2];o=L[a+532>>2];U=L[a+624>>2];V=L[a+612>>2];W=L[a+600>>2];t=L[a+536>>2];u=L[a+540>>2];v=L[a+544>>2];X=L[a+628>>2];f=L[a+616>>2];Y=L[a+604>>2];w=L[a+548>>2];x=L[a+552>>2];g=L[l+20>>2];y=L[a+556>>2];e=L[l+24>>2];i=L[l+8>>2];Z=L[l+4>>2];j=L[l>>2];m=L[l+16>>2];H[b+12>>2]=0;q=O(-m);_=f;f=O(-Z);L[b+24>>2]=O(O(O(w*q)-O(x*g))-O(y*e))+O(O(O(_*f)-O(j*Y))-O(i*X));L[b+20>>2]=O(O(O(t*q)-O(u*g))-O(v*e))+O(O(O(V*f)-O(j*W))-O(i*U));L[b+16>>2]=O(O(O(s*q)-O(n*g))-O(o*e))+O(O(O(S*f)-O(j*T))-O(i*R));g=O(-g);o=O(O(O(O(v*f)-O(j*o))-O(i*y))+O(O(O(P*g)-O(m*M))-O(e*Q)));L[b+8>>2]=o;n=O(O(O(O(u*f)-O(j*n))-O(i*x))+O(O(O(J*g)-O(m*I))-O(e*K)));L[b+4>>2]=n;e=O(O(O(O(t*f)-O(j*s))-O(i*w))+O(O(O(E*g)-O(m*D))-O(e*G)));L[b>>2]=e;L[d>>2]=e+L[d>>2];L[d+4>>2]=n+L[d+4>>2];L[d+8>>2]=o+L[d+8>>2];L[d+16>>2]=L[b+16>>2]+L[d+16>>2];L[d+20>>2]=L[b+20>>2]+L[d+20>>2];L[d+24>>2]=L[b+24>>2]+L[d+24>>2]}H[b+28>>2]=0;k=1;r=H[a+448>>2];if(r>>>0>1){while(1){p=k<<5;aw(h,(N(k,160)+A|0)+120|0,H[a+348>>2]+N(k,112)|0,H[a+360>>2]+N(k,36)|0,H[a+384>>2]+N(k,76)|0,p+l|0,(H[(N(k,80)+B|0)+72>>2]<<2)+z|0,(H[(p+C|0)+24>>2]<<5)+b|0);c=b+p|0;j=L[h>>2];L[c>>2]=j;f=L[h+4>>2];L[c+4>>2]=f;e=L[h+8>>2];H[c+12>>2]=0;L[c+8>>2]=e;g=L[h+16>>2];L[c+16>>2]=g;m=L[h+20>>2];L[c+20>>2]=m;i=L[h+24>>2];H[c+28>>2]=0;L[c+24>>2]=i;c=d+p|0;L[c>>2]=j+L[c>>2];L[c+4>>2]=f+L[c+4>>2];L[c+8>>2]=e+L[c+8>>2];L[c+16>>2]=g+L[c+16>>2];L[c+20>>2]=m+L[c+20>>2];L[c+24>>2]=i+L[c+24>>2];k=k+1|0;if((r|0)!=(k|0)){continue}break}}S6(l,0,r<<5);Oa=h+32|0}function qy(a){a=a|0;var b=0,c=O(0),d=O(0),e=O(0),f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=0,l=0,m=0,n=O(0),o=0,p=O(0),q=0,r=0,s=0,t=O(0),u=O(0),v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=O(0);b=H[a+68>>2];v=H[a+48>>2]+N(b,112)|0;w=H[a+44>>2]+(b<<5)|0;b=b<<2;x=b+H[a+40>>2]|0;y=b+H[a+36>>2]|0;l=b+H[a+32>>2]|0;k=1;z=H[a+64>>2];A=H[a+60>>2];i=L[a+52>>2];o=H[a+72>>2];if(o>>>0>1){while(1){B=k-1|0;s=B<<2;b=H[s+l>>2];m=J[b+30>>1];j=O(O(1)-O(i*L[b+108>>2]));c=O(O(1)-O(i*L[b+104>>2]));t=L[b+80>>2];d=L[b+64>>2];n=L[b+100>>2];u=L[b+88>>2];D=L[b+84>>2];e=L[b+72>>2];f=L[b+68>>2];if(!I[b+157|0]){g=L[H[y+s>>2]+76>>2];e=O(e+O(g*O(i*L[a+84>>2])));f=O(f+O(g*O(i*L[a+80>>2])));d=O(d+O(g*O(i*L[a+76>>2])))}p=L[b+96>>2];h=j>=O(0)?j:O(0);j=O(h*u);g=O(h*D);h=O(h*t);c=c>=O(0)?c:O(0);e=O(c*e);d=O(c*d);f=O(c*f);c=O(O(e*e)+O(O(d*d)+O(f*f)));if(c>n){c=O(W(O(n/c)));e=O(e*c);f=O(f*c);d=O(d*c)}c=O(O(j*j)+O(O(h*h)+O(g*g)));if(c>p){c=O(W(O(p/c)));j=O(j*c);h=O(h*c);g=O(g*c)}C=m>>>8|0;q=q>>>0>C>>>0?q:C;m=m&255;r=m>>>0>>0?r:m;L[b+88>>2]=j;L[b+84>>2]=g;L[b+80>>2]=h;L[b+72>>2]=e;L[b+68>>2]=f;L[b+64>>2]=d;hz(b- -64|0,b+80|0,L[b+124>>2],b+112|0,b,L[b+76>>2],L[b+128>>2],H[x+s>>2],L[b+92>>2],N(k,112)+v|0,I[b+158|0]);b=(B<<5)+w|0;H[b+12>>2]=0;H[b+28>>2]=0;k=k+1|0;if((o|0)!=(k|0)){continue}break}}b=l;k=o-1|0;l=k<<2;b=H[b+l>>2];j=O(O(1)-O(i*L[b+108>>2]));c=O(O(1)-O(i*L[b+104>>2]));p=L[b+80>>2];d=L[b+64>>2];n=L[b+100>>2];t=L[b+88>>2];u=L[b+84>>2];e=L[b+72>>2];f=L[b+68>>2];if(!I[b+157|0]){g=L[H[l+y>>2]+76>>2];e=O(e+O(g*O(i*L[a+84>>2])));f=O(f+O(g*O(i*L[a+80>>2])));d=O(d+O(g*O(i*L[a+76>>2])))}a=J[b+30>>1];i=L[b+96>>2];h=j>=O(0)?j:O(0);j=O(h*t);g=O(h*u);h=O(h*p);c=c>=O(0)?c:O(0);e=O(c*e);d=O(c*d);f=O(c*f);c=O(O(e*e)+O(O(d*d)+O(f*f)));if(c>n){c=O(W(O(n/c)));e=O(e*c);f=O(f*c);d=O(d*c)}c=O(O(j*j)+O(O(h*h)+O(g*g)));if(c>i){i=O(W(O(i/c)));j=O(j*i);h=O(h*i);g=O(g*i)}L[b+88>>2]=j;L[b+84>>2]=g;L[b+80>>2]=h;L[b+72>>2]=e;L[b+68>>2]=f;L[b+64>>2]=d;hz(b- -64|0,b+80|0,L[b+124>>2],b+112|0,b,L[b+76>>2],L[b+128>>2],H[(k<<2)+x>>2],L[b+92>>2],N(o,112)+v|0,I[b+158|0]);b=(k<<5)+w|0;H[b+12>>2]=0;H[b+28>>2]=0;b=a&255;b=b>>>0>>0?r:b;k=H[A>>2];H[A>>2]=(b|0)>(k|0)?b:k;a=a>>>8|0;a=a>>>0>>0?q:a;b=H[z>>2];H[z>>2]=(a|0)>(b|0)?a:b}function fH(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,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;b=Oa+-64|0;e=b;Oa=b;F[a+60|0]=0;i=H[a+8>>2];a:{if(i>>>0<2){break a}p=i+1|0;c=p<<2;f=c>>>0>1024;F[e+60|0]=f;b:{if(c>>>0>=1025){g=G5(c,7273,903);break b}g=b-(c+15&-16)|0;Oa=g}H[e+56>>2]=g;m=H[a+24>>2];b=H[m>>2];H[g>>2]=b;c=i-1|0;k=c&3;c:{if(i-2>>>0<3){h=1;d=1;break c}q=c&-4;h=1;c=b;d=1;while(1){j=H[m+(d<<3)>>2];H[(d<<2)+g>>2]=j;b=d+1|0;r=H[m+(b<<3)>>2];H[(b<<2)+g>>2]=r;b=d+2|0;l=H[m+(b<<3)>>2];H[(b<<2)+g>>2]=l;o=d+3|0;b=H[m+(o<<3)>>2];H[(o<<2)+g>>2]=b;h=l>>>0>=r>>>0&b>>>0>=l>>>0&j>>>0<=r>>>0&c>>>0<=j>>>0&h;d=d+4|0;c=b;n=n+4|0;if((q|0)!=(n|0)){continue}break}}if(k){n=0;while(1){c=H[m+(d<<3)>>2];H[(d<<2)+g>>2]=c;d=d+1|0;h=b>>>0<=c>>>0&h;b=c;n=n+1|0;if((k|0)!=(n|0)){continue}break}}if(!(h&1)){l=OT(e+16|0);H[(i<<2)+g>>2]=-1;ST(l,g,p);b=H[a+8>>2];d:{if(b){H[e+4>>2]=b;H[e+8>>2]=b;c=b<<2;e:{if(!c){c=0;break e}f=H[33808];b=f+12|0;c=(t=b,u=c,v=Ra[H[H[f>>2]+20>>2]](f)|0?25032:55639,w=13582,x=553,s=H[H[b>>2]+8>>2],Ra[s](t|0,u|0,v|0,w|0,x|0)|0);b=H[e+4>>2]}H[e>>2]=c;if((b|0)<=0){break d}f=(b<<2)+c|0;b=H[a+4>>2];while(1){H[c>>2]=H[b>>2];b=b+4|0;c=c+4|0;if(f>>>0>c>>>0){continue}break}break d}H[e+8>>2]=0;H[e>>2]=0;H[e+4>>2]=0}g=0;h=0;c=(i<<3)+48|0;if(c){b=H[33808];h=Ra[H[H[b+12>>2]+8>>2]](b+12|0,c,20591,7273,945)|0}c=i<<4;if(c){b=H[33808];g=Ra[H[H[b+12>>2]+8>>2]](b+12|0,c,20591,7273,946)|0}q=i>>>0>1?i:1;o=H[l+8>>2];d=0;while(1){b=d<<2;f=H[b+o>>2];H[b+H[a+4>>2]>>2]=H[H[e>>2]+(f<<2)>>2];c=(d<<3)+h|0;b=H[a+24>>2]+(f<<3)|0;H[c>>2]=H[b>>2];H[c+4>>2]=H[b+4>>2];k=H[a+28>>2]+(f<<4)|0;f=H[k>>2];c=H[k+4>>2];b=H[k+12>>2];j=(d<<4)+g|0;H[j+8>>2]=H[k+8>>2];H[j+12>>2]=b;H[j>>2]=f;H[j+4>>2]=c;d=d+1|0;if((q|0)!=(d|0)){continue}break}b=(i<<3)+h|0;H[b>>2]=-1;H[(p<<3)+h>>2]=-1;H[b+40>>2]=-1;H[b+32>>2]=-1;H[b+24>>2]=-1;H[b+16>>2]=-1;H[a+32>>2]=i;c=H[a+28>>2];if(c){b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,c)}c=H[a+24>>2];if(c){b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,c)}H[a+28>>2]=g;H[a+24>>2]=h;a=H[e+8>>2];f:{if((a|0)<0|!(a&2147483647)){break f}b=H[e>>2];if(!b){break f}a=H[33808];Ra[H[H[a+12>>2]+12>>2]](a+12|0,b)}PT(l);f=I[e+60|0]}if(!f){break a}H5(H[e+56>>2])}Oa=e- -64|0}function s_(a,b,c,d,e,f,g){var h=0,i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=0,q=0,r=0,s=O(0),t=0,u=0;h=Oa-288|0;Oa=h;a:{if(c==O(0)){i=L[e+60>>2];p=I[e+64|0];q=H[e+28>>2];r=H[e+24>>2];H[h+36>>2]=128116;H[h+32>>2]=128092;t=h,u=k7(r,q),H[t+48>>2]=u;H[h+52>>2]=Qa;H[h+44>>2]=p>>>1&1;H[h+56>>2]=g;H[h+40>>2]=f;k=L[a>>2];L[h+60>>2]=k;j=L[a+4>>2];L[h- -64>>2]=j;l=L[a+8>>2];L[h+68>>2]=l;n=L[b>>2];L[h+72>>2]=n;s=L[b+4>>2];L[h+76>>2]=s;o=L[b+8>>2];H[h+112>>2]=0;H[h+116>>2]=0;G[h+108>>1]=0;H[h+104>>2]=-1;L[h+88>>2]=i;F[h+84|0]=d;L[h+80>>2]=o;H[h+120>>2]=0;H[h+124>>2]=0;H[h+128>>2]=0;H[h+132>>2]=0;H[h+144>>2]=0;H[h+136>>2]=2139095039;H[h+140>>2]=0;H[h+96>>2]=0;H[h+100>>2]=0;L[h+92>>2]=c;a=H[f+4>>2];F[h+208|0]=0;F[h+209|0]=(a|0)==1;c=L[g>>2];i=L[g+4>>2];m=L[g+8>>2];H[h+268>>2]=0;L[h+264>>2]=o;L[h+260>>2]=s;H[h+252>>2]=0;L[h+248>>2]=l;L[h+244>>2]=j;H[h+236>>2]=0;L[h+232>>2]=m;L[h+228>>2]=i;L[h+256>>2]=n;L[h+240>>2]=k;L[h+224>>2]=c;L[h+24>>2]=l-m;L[h+20>>2]=j-i;L[h+16>>2]=k-c;L[h+8>>2]=l+m;L[h+4>>2]=j+i;L[h>>2]=k+c;j$(e+112|0,h+16|0,h,h+32|4);H[h+36>>2]=128116;H[h+32>>2]=128092;if(!I[h+208|0]){break a}a=H[h+40>>2];Ra[H[H[a>>2]>>2]](a,h+96|0,h+160|0,h+172|0,h+184|0,h+92|0,h+196|0)|0;break a}j=L[e+60>>2];p=I[e+64|0];q=H[e+28>>2];r=H[e+24>>2];H[h+36>>2]=128276;H[h+56>>2]=g;H[h+32>>2]=128252;t=h,u=k7(r,q),H[t+48>>2]=u;H[h+52>>2]=Qa;H[h+44>>2]=p>>>1&1;H[h+40>>2]=f;l=L[a>>2];L[h+60>>2]=l;i=L[a+4>>2];L[h- -64>>2]=i;m=L[a+8>>2];L[h+68>>2]=m;o=L[b>>2];L[h+72>>2]=o;n=L[b+4>>2];L[h+76>>2]=n;k=L[b+8>>2];H[h+112>>2]=0;H[h+116>>2]=0;G[h+108>>1]=0;H[h+104>>2]=-1;L[h+88>>2]=j;F[h+84|0]=d;L[h+80>>2]=k;H[h+120>>2]=0;H[h+124>>2]=0;H[h+128>>2]=0;H[h+132>>2]=0;H[h+144>>2]=0;H[h+136>>2]=2139095039;H[h+140>>2]=0;H[h+96>>2]=0;H[h+100>>2]=0;L[h+92>>2]=c;d=H[f+4>>2];F[h+208|0]=0;F[h+209|0]=(d|0)==1;d=H[g+4>>2];f=H[g>>2];j=L[g+8>>2];H[h+268>>2]=0;L[h+264>>2]=k;L[h+260>>2]=n;H[h+252>>2]=0;L[h+248>>2]=m;L[h+244>>2]=i;H[h+236>>2]=0;L[h+232>>2]=j;L[h+256>>2]=o;L[h+240>>2]=l;H[h+224>>2]=f;H[h+228>>2]=d;i$(e+112|0,a,b,h+32|0,g,c);H[h+36>>2]=128276;H[h+32>>2]=128252;if(!I[h+208|0]){break a}a=H[h+40>>2];Ra[H[H[a>>2]>>2]](a,h+96|0,h+160|0,h+172|0,h+184|0,h+92|0,h+196|0)|0}Oa=h+288|0}function My(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,o=0,p=0,q=0,r=0,s=0,t=O(0);h=Oa-48|0;Oa=h;e=H[a+44>>2];b=H[e+336>>2];c=H[b>>2];if(c){H[b>>2]=H[c>>2]}if(!c){c=H[33808];b=Ra[H[H[c>>2]+20>>2]](c)|0?23054:55639;b=Ra[H[H[c+12>>2]+8>>2]](c+12|0,12195,b,16202,82)|0;c=b+19&-16;H[c-4>>2]=c-b;c=lA(c,H[e+340>>2])}e=c+11856|0;H[e>>2]=0;H[e+4>>2]=0;g=c+11852|0;a:{if(!H[a+40>>2]){e=0;H[c+12064>>2]=0;H[c+12052>>2]=0;break a}b=H[a+36>>2];e=0;while(1){d=H[H[a+32>>2]+(i<<2)>>2];f=H[d+32>>2];j=N(i,52);b=j+b|0;H[b>>2]=H[d+28>>2];H[b+4>>2]=f;H[b+48>>2]=H[d+76>>2];f=H[d+72>>2];H[b+40>>2]=H[d+68>>2];H[b+44>>2]=f;f=H[d+64>>2];H[b+32>>2]=H[d+60>>2];H[b+36>>2]=f;f=H[d+56>>2];H[b+24>>2]=H[d+52>>2];H[b+28>>2]=f;f=H[d+48>>2];H[b+16>>2]=H[d+44>>2];H[b+20>>2]=f;f=H[d+40>>2];H[b+8>>2]=H[d+36>>2];H[b+12>>2]=f;b=H[a+36>>2];d=I[(j+b|0)+48|0];e=d>>>0>e>>>0?d:e;i=i+1|0;if(i>>>0>2]){continue}break}H[c+12052>>2]=0;if((H[c+12056>>2]&2147483647)>>>0>>0){Cv(c+12048|0,e)}H[c+12052>>2]=e;H[c+12064>>2]=0;if((H[c+12068>>2]&2147483647)>>>0>=e>>>0){break a}Cv(c+12060|0,e)}H[c+12064>>2]=e;f=H[a+48>>2];b=H[a+28>>2];H[h+40>>2]=c+12088;H[h+36>>2]=c+11824;H[h+32>>2]=g;H[h+24>>2]=113028;H[h+28>>2]=b+11836;m=H[a+40>>2];b:{if(!m){i=0;d=0;g=0;j=0;break b}n=H[a+36>>2];j=0;g=0;d=0;i=0;while(1){r=H[H[a+32>>2]+(l<<2)>>2];s=H[b+12132>>2];b=H[a+44>>2];t=L[b+52>>2];L[h+8>>2]=L[b+68>>2];L[h+12>>2]=L[b+72>>2];L[h+16>>2]=L[b+76>>2];k=0;o=N(l,52);p=o+n|0;q=H[(H[H[p>>2]+24>>2]<<2)+135100>>2];if(q){k=Ra[q|0](p,t,h+24|0,(f<<5)+s|0,h+20|0,h+8|0,H[b+600>>2],H[b+604>>2],H[c+12048>>2],H[c+12060>>2])|0;m=H[a+40>>2];n=H[a+36>>2]}b=n+o|0;F[b+49|0]=k;k=J[b+46>>1];i=i>>>0>>0?k:i;b=J[b+44>>1];d=b>>>0>d>>>0?b:d;b=J[H[r+60>>2]+12>>1];k=b&255;g=g>>>0>k>>>0?g:k;b=b>>>8|0;j=b>>>0>>0?j:b;l=l+1|0;if(m>>>0>l>>>0){f=f- -64|0;b=H[a+28>>2];continue}break}b=H[a+28>>2]}f=b+12112|0;b=H[f>>2];H[f>>2]=(b|0)<(g|0)?g:b;g=H[a+28>>2]+12116|0;b=H[g>>2];H[g>>2]=(b|0)<(j|0)?j:b;g=H[a+28>>2]+12120|0;b=H[g>>2];H[g>>2]=(b|0)<(d|0)?d:b;d=H[a+28>>2]+12124|0;b=H[d>>2];H[d>>2]=(b|0)<(i|0)?i:b;d=H[a+28>>2]+12128|0;b=H[d>>2];H[d>>2]=(b|0)<(e|0)?e:b;a=H[H[a+44>>2]+336>>2];H[c>>2]=H[a>>2];H[a>>2]=c;Oa=h+48|0}function E3(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=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0);c=Oa+-64|0;Oa=c;h=H[e+12>>2];H[d+8>>2]=H[e+8>>2];H[d+12>>2]=h;h=H[e+4>>2];H[d>>2]=H[e>>2];H[d+4>>2]=h;$1(c+32|0,c,e,f,g);m=L[f+20>>2];d=24;k=L[f+16>>2];l=L[c+20>>2];r=L[c+16>>2];p=L[c+24>>2];L[b+8>>2]=p-L[f+24>>2];L[b+4>>2]=l-m;L[b>>2]=r-k;t=L[f+20>>2];x=L[f+24>>2];s=L[g+20>>2];u=L[g+24>>2];y=L[f+16>>2];v=L[g+16>>2];L[i+8>>2]=p;L[i+4>>2]=l;L[i>>2]=r;L[j+8>>2]=p;L[j+4>>2]=l;L[j>>2]=r;n=O(L[c+56>>2]-p);k=O(L[c+48>>2]-r);o=O(L[c+52>>2]-l);m=O(W(O(O(n*n)+O(O(k*k)+O(o*o)))));if(m>O(0)){q=O(O(1)/m);n=O(n*q);o=O(o*q);k=O(k*q)}b=J[e+100>>1];G[a+76>>1]=16;f=m>2]=n;o=f?O(0):o;L[a+36>>2]=o;q=f?O(1):k;L[a+32>>2]=q;L[a+8>>2]=n;L[a+4>>2]=o;L[a>>2]=q;k=O(r-v);s=O(l-s);v=O(O(k*o)-O(q*s));L[a+56>>2]=v;u=O(p-u);w=O(O(u*q)-O(n*k));L[a+52>>2]=w;s=O(O(s*n)-O(o*u));L[a+48>>2]=s;k=O(r-y);l=O(l-t);r=O(O(k*o)-O(q*l));L[a+24>>2]=r;p=O(p-x);t=O(O(p*q)-O(n*k));L[a+20>>2]=t;p=O(O(l*n)-O(o*p));L[a+16>>2]=p;if(b&8){G[a+76>>1]=17;L[a+64>>2]=L[e+92>>2];L[a+68>>2]=L[e+96>>2];d=25}f=b&4;b=b&2;Oa=c- -64|0;k=L[e+84>>2];l=L[e+80>>2];a:{if(!(!b|(!f|k!=l))){m=O(m-k);k=L[e+88>>2];b:{if(m>k){l=O(m-k);break b}l=O(0);if(!(m>2]=l;b=1;break a}c:{d:{e:{if(b){if(k>2];H[a+60>>2]=0;L[a+12>>2]=O(m-k)-n;b=1;break a}if(!f){break d}if(m>2]=q;G[a+76>>1]=d;H[a+60>>2]=2139095039;H[a+44>>2]=0;L[a+136>>2]=v;L[a+132>>2]=w;L[a+128>>2]=s;L[a+120>>2]=n;L[a+116>>2]=o;L[a+112>>2]=q;L[a+104>>2]=r;L[a+100>>2]=t;L[a+96>>2]=p;L[a+88>>2]=n;L[a+84>>2]=o;L[a+12>>2]=m-l;if(I[e+100|0]&8){L[a+144>>2]=L[e+92>>2];L[a+148>>2]=L[e+96>>2];k=L[e+84>>2];b=25}else{b=24}G[a+156>>1]=b;H[a+140>>2]=0;H[a+124>>2]=-8388609;L[a+92>>2]=m-k;b=2;break a}b=1;if(!f){break a}if(!(m>2];H[a+44>>2]=0;L[a+12>>2]=k+O(m-l);b=1;break a}G[a+76>>1]=d;H[a+60>>2]=0;H[a+44>>2]=-8388609;L[a+12>>2]=m-k;b=0;break a}G[a+76>>1]=d;H[a+60>>2]=2139095039;H[a+44>>2]=0;L[a+12>>2]=m-l;b=0}return b|0}function BC(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0;H[a+4>>2]=0;H[a+8>>2]=1;H[a+12>>2]=0;H[a+16>>2]=0;H[a>>2]=114764;H[a+20>>2]=0;H[a+24>>2]=0;H[a+28>>2]=0;H[a+32>>2]=0;H[a+36>>2]=0;H[a+40>>2]=0;H[a+44>>2]=0;H[a+48>>2]=0;f=a+52|0;H[f>>2]=114548;e=f+4|0;H[e+4>>2]=0;H[e+8>>2]=0;H[e>>2]=1;H[e+12>>2]=0;H[e+16>>2]=0;H[e+20>>2]=0;H[e+24>>2]=0;H[e+28>>2]=0;H[e+32>>2]=0;H[e+36>>2]=0;H[e+48>>2]=0;H[e+52>>2]=0;H[e+40>>2]=1061158912;H[e+44>>2]=-1;i=e+16|0;$B(i,64);H[e+80>>2]=0;H[e+84>>2]=0;H[e+72>>2]=0;H[e+76>>2]=0;g=e- -64|0;H[g>>2]=0;H[g+4>>2]=0;H[e+56>>2]=0;H[e+60>>2]=0;H[e+96>>2]=0;H[e+100>>2]=0;H[e+88>>2]=1061158912;H[e+92>>2]=-1;$B(g,64);H[e+116>>2]=0;H[e+108>>2]=0;H[e+112>>2]=0;g=a+284|0;H[e+104>>2]=g;if(K[e+36>>2]<=255){$B(i,256)}if(K[e+84>>2]<=255){$B(e- -64|0,256)}if(!(H[e+116>>2]&2147483616)){aC(e+108|0,32)}H[f+128>>2]=0;H[f+132>>2]=0;H[f+124>>2]=g;H[f+136>>2]=0;H[f+140>>2]=0;H[f+144>>2]=0;H[f+148>>2]=0;H[f+160>>2]=0;H[f+164>>2]=0;H[f+152>>2]=1061158912;H[f+156>>2]=-1;i=f+128|0;oC(i,64);H[f+168>>2]=0;H[f+172>>2]=0;F[f+212|0]=0;H[f+176>>2]=0;H[f+180>>2]=0;H[f+184>>2]=0;H[f+188>>2]=0;H[f+192>>2]=0;H[f+196>>2]=0;H[f+200>>2]=0;H[f+204>>2]=0;H[f+208>>2]=32;e=H[33808];j=f,k=Ra[H[H[e+12>>2]+8>>2]](e+12|0,792,20591,6516,60)|0,H[j+196>>2]=k;e=H[f+208>>2];g=e<<3;if(g){e=H[33808];h=Ra[H[H[e+12>>2]+8>>2]](e+12|0,g,20591,6516,61)|0;e=H[f+208>>2]}H[f+200>>2]=h;if(K[f+148>>2]>>0){oC(i,e)}e=H[33808];h=Ra[H[H[e>>2]+20>>2]](e)|0?38814:55639;e=Ra[H[H[e+12>>2]+8>>2]](e+12|0,64,h,6516,65)|0;MA(e);H[f+168>>2]=e;if(H[f+208>>2]){h=H[f+200>>2];e=0;while(1){i=e<<3;H[(i+h|0)+4>>2]=0;h=H[33808];g=Ra[H[H[h>>2]+20>>2]](h)|0?38814:55639;g=Ra[H[H[h+12>>2]+8>>2]](h+12|0,64,g,6516,71)|0;MA(g);h=H[f+200>>2];H[i+h>>2]=g;e=e+1|0;if(e>>>0>2]){continue}break}}H[a+280>>2]=0;H[a+268>>2]=0;H[a+272>>2]=100;H[a+284>>2]=0;H[a+288>>2]=0;H[a+308>>2]=-1;H[a+300>>2]=0;H[a+304>>2]=0;H[a+292>>2]=0;H[a+296>>2]=0;H[a+328>>2]=0;H[a+332>>2]=0;H[a+320>>2]=0;H[a+324>>2]=0;H[a+312>>2]=0;H[a+316>>2]=0;H[a+340>>2]=0;H[a+344>>2]=0;F[a+337|0]=0;F[a+338|0]=0;F[a+336|0]=b;H[a+348>>2]=0;H[a+352>>2]=0;H[a+356>>2]=0;H[a+360>>2]=0;H[a+368>>2]=c;H[a+372>>2]=d}function vm(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=O(0),j=0,k=0,l=O(0),m=O(0),n=O(0),o=O(0),p=0,q=0,r=0;a=Oa-32|0;Oa=a;h=H[33768];l=L[b+12>>2];m=L[b+8>>2];n=L[b>>2];o=L[b+4>>2];i=O(O(1)/O(W(O(O(l*l)+O(O(m*m)+O(O(n*n)+O(o*o)))))));L[a+12>>2]=l*i;L[a+8>>2]=m*i;L[a+4>>2]=o*i;L[a>>2]=n*i;L[a+16>>2]=L[b+16>>2];L[a+20>>2]=L[b+20>>2];L[a+24>>2]=L[b+24>>2];f=a;g=Oa-16|0;Oa=g;b=H[h+1264>>2];if(!b){k=Oa-16|0;Oa=k;d=h+976|0;b=H[d+284>>2];if(b){a=H[33808];c=Ra[H[H[a>>2]+20>>2]](a)|0?40352:55639;j=Ra[H[H[a+12>>2]+8>>2]](a+12|0,b,c,15259,180)|0}else{j=0}H[k+12>>2]=j;a=H[d+268>>2];a:{if(a>>>0>=(H[d+272>>2]&2147483647)>>>0){c=d+4|0;b=H[c+268>>2]&2147483647;p=b?b<<1:1;a=0;b:{if(!p){break b}b=p<<2;if(!(I[c+256|0]|b>>>0>256)){F[c+256|0]=1;a=c;break b}a=0;if(!b){break b}a=H[33808];e=Ra[H[H[a>>2]+20>>2]](a)|0?40352:55639;a=Ra[H[H[a+12>>2]+8>>2]](a+12|0,b,e,13582,553)|0}b=a;e=H[c+264>>2];r=b+(e<<2)|0;if((e|0)>0){q=H[c+260>>2];while(1){H[a>>2]=H[q>>2];q=q+4|0;a=a+4|0;if(r>>>0>a>>>0){continue}break}}H[r>>2]=H[k+12>>2];c:{if(H[c+268>>2]<0){break c}a=H[c+260>>2];if((a|0)==(c|0)){F[c+256|0]=0;break c}if(!a){break c}e=H[33808];Ra[H[H[e+12>>2]+12>>2]](e+12|0,a);e=H[c+264>>2]}H[c+268>>2]=p;H[c+260>>2]=b;H[c+264>>2]=e+1;break a}H[H[d+264>>2]+(a<<2)>>2]=j;H[d+268>>2]=a+1}b=(N(H[d+276>>2],112)+j|0)-112|0;if(j>>>0<=b>>>0){a=H[d+288>>2];while(1){H[b>>2]=a;a=b;b=b-112|0;if(j>>>0<=b>>>0){continue}break}H[d+288>>2]=a}Oa=k+16|0;b=H[h+1264>>2]}H[h+1264>>2]=H[b>>2];a=h+1256|0;H[a>>2]=H[a>>2]+1;H[b+4>>2]=196614;H[b+8>>2]=0;H[b>>2]=109244;H[b+16>>2]=0;H[b+12>>2]=0;H[b>>2]=108976;H[b+8>>2]=0;H[b+20>>2]=0;H[b+24>>2]=65536;H[b+28>>2]=0;H[b+32>>2]=65536;H[b+36>>2]=-1;H[b+40>>2]=0;H[b+56>>2]=0;H[b>>2]=108772;H[b+48>>2]=0;H[b+52>>2]=0;a=b- -64|0;F[a+10|0]=0;F[a+9|0]=0;F[a+8|0]=1;H[a>>2]=0;H[a+4>>2]=16777215;G[b+110>>1]=0;F[b+109|0]=0;L[b+80>>2]=L[f>>2];L[b+84>>2]=L[f+4>>2];L[b+88>>2]=L[f+8>>2];L[b+92>>2]=L[f+12>>2];L[b+96>>2]=L[f+16>>2];L[b+100>>2]=L[f+20>>2];i=L[f+24>>2];F[b+108|0]=0;L[b+104>>2]=i;H[b+52>>2]=H[b+52>>2]&-251658241|83886080;H[g+8>>2]=b;a=Nl(h+600|0,g+8|0,g+15|0);if(!I[g+15|0]){H[a>>2]=H[g+8>>2]}Oa=g+16|0;Oa=f+32|0;return b|0}function Pi(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;if(H[a+40>>2]){o5(H[33808],8,15891,233,63981,0);fB(H[a+40>>2],a)}d=a+20|0;e=J[d+4>>1];c=H[H[33768]+476>>2];LT(d,b,c);f=d+8|0;LT(f,-1,c);c=vg(a);if(!(!c|!(I[(I[b+36|0]&64?H[b+40>>2]+52|0:b+112|0)|0]&2))){i=c+5584|0;e=e<<2;c=J[a+4>>1];c=ID(i,H[e+(J[d+4>>1]==1?d:H[d>>2])>>2]+32|0,H[((c<<2)+73232|0)+72>>2]+a|0,(c&65527)==5,H[d+16>>2],0,0);H[e+(J[d+12>>1]==1?f:H[d+8>>2])>>2]=c}h=b+32|0;j=Oa-16|0;Oa=j;f=H[((J[a+4>>1]<<2)+73232|0)+72>>2]+a|0;d=H[f+4>>2];a:{if(d>>>0<1073741824){break a}k=H[f>>2];b:{if(!I[k+4785|0]){if(!(I[(d&1?H[f+8>>2]:(f+H[((d>>>22&60)+76348|0)+12>>2]|0)+8|0)|0]&8)){d=h-16|0;H[d>>2]=H[d>>2]+1;SI(f+H[((H[f+4>>2]>>>22&60)+76348|0)+12>>2]|0,h+16|0)}c=-2147483648;e=H[h+4>>2];if((e&251658240)==16777216){break b}break a}c=1073741824;if((d&-1073741824)==1073741824){e=H[h+4>>2];if((e&251658240)==16777216){break b}break a}c=H[f+8>>2];if(!c){c=Tt(k,d>>>24&15);H[f+8>>2]=c}d=H[c+72>>2];e=0;c:{d:{e:{g=H[c+76>>2];if(!g){break e}while(1){if(H[d+(e<<3)>>2]==(h|0)){break e}e=e+1|0;if((g|0)!=(e|0)){continue}break}break d}if((e|0)==(g|0)){break d}i=c;c=g-1|0;H[i+76>>2]=c;e=d+(e<<3)|0;d=d+(c<<3)|0;H[e>>2]=H[d>>2];F[e+4|0]=I[d+4|0];break c}H[j+12>>2]=h;d=H[c+28>>2];if(d>>>0>=(H[c+32>>2]&2147483647)>>>0){c=c+4|0;e=H[c+28>>2]&2147483647;l=e?e<<1:1;d=0;f:{if(!l){break f}e=l<<2;if(!(I[c+16|0]|e>>>0>16)){F[c+16|0]=1;d=c;break f}d=0;if(!e){break f}d=H[33808];g=d+12|0;d=(o=g,p=e,q=Ra[H[H[d>>2]+20>>2]](d)|0?52670:55639,r=13582,s=553,n=H[H[g>>2]+8>>2],Ra[n](o|0,p|0,q|0,r|0,s|0)|0)}g=H[c+24>>2];i=d+(g<<2)|0;if((g|0)>0){m=H[c+20>>2];e=d;while(1){H[e>>2]=H[m>>2];m=m+4|0;e=e+4|0;if(i>>>0>e>>>0){continue}break}}H[i>>2]=H[j+12>>2];g:{if(H[c+28>>2]<0){break g}e=H[c+20>>2];if((e|0)==(c|0)){F[c+16|0]=0;break g}if(!e){break g}g=H[33808]+12|0;Ra[H[H[g>>2]+12>>2]](g,e);g=H[c+24>>2]}H[c+28>>2]=l;H[c+20>>2]=d;H[c+24>>2]=g+1;break c}H[H[c+24>>2]+(d<<2)>>2]=h;H[c+28>>2]=d+1}$t(H[f>>2],f);H[f+4>>2]=H[f+4>>2]|8;c=1073741824;e=H[h+4>>2];if((e&251658240)!=16777216){break a}}H[h>>2]=k;H[h+4>>2]=e&1073741823|c}Oa=j+16|0;at(b,a);return 1}function js(a,b,c,d,e,f,g,h){var i=0,j=0,k=O(0),l=0,m=0;i=Oa-240|0;Oa=i;m=J[f+16>>1];H[i+236>>2]=-1;j=-1;if(e){j=qt(sg(H[e+4>>2]),H[e>>2],i+236|0)}l=a+5584|0;ND(l);F[i+228|0]=1;H[i+224>>2]=c;H[c+64>>2]=0;F[c+52|0]=0;k=L[b+8>>2];d=J[d>>1];F[i+182|0]=1;H[i+176>>2]=h;L[i+172>>2]=k>2]=g;G[i+160>>1]=d;H[i+156>>2]=c;H[i+152>>2]=b;H[i+148>>2]=a;H[i+144>>2]=111524;e=d&64;d=m&16;G[i+180>>1]=((e|d)!=0)<<6;H[i+164>>2]=f;e=J[f+16>>1];H[i+216>>2]=0;F[i+212|0]=0;F[i+186|0]=0;F[i+185|0]=d>>>4;d=e>>>5&1;F[i+184|0]=d;F[i+183|0]=d;a:{b:{if(!(H[c+60>>2]|(j|0)==-1)){e=JD(l,H[i+236>>2],j);F[i+186|0]=1;d=eU(i+8|0,H[b+12>>2],H[b+16>>2],L[b+20>>2]);L[i+188>>2]=L[d+72>>2];L[i+192>>2]=L[d+76>>2];L[i+196>>2]=L[d+80>>2];L[i+200>>2]=L[d+84>>2];L[i+204>>2]=L[d+88>>2];L[i+208>>2]=L[d+92>>2];H[i+216>>2]=d;F[i+212|0]=1;d=ks(i+144|0,i+140|0,e);H[i+216>>2]=0;F[i+186|0]=0;if(!d){break b}e=J[f+16>>1]}d=i+172|0;g=H[a+5656>>2];h=H[a+5620>>2];j=H[a+5584>>2];a=eU(i+8|0,H[b+12>>2],H[b+16>>2],L[b+20>>2]);L[i+188>>2]=L[a+72>>2];L[i+192>>2]=L[a+76>>2];L[i+196>>2]=L[a+80>>2];L[i+200>>2]=L[a+84>>2];L[i+204>>2]=L[a+88>>2];L[i+208>>2]=L[a+92>>2];H[i+216>>2]=a;F[i+212|0]=1;c:{if(e&1){if(!(Ra[H[H[j>>2]+32>>2]](j,a,H[b+4>>2],d,i+144|0)|0)){break c}}d:{if(e&2){e=0;if(!(Ra[H[H[h>>2]+32>>2]](h,a,H[b+4>>2],d,i+144|0)|0)){break d}}b=H[b+4>>2];G[i>>1]=J[f+16>>1];e=Ra[H[H[g>>2]+32>>2]](g,a,b,d,i+144|0,i)|0}F[i+228|0]=e}b=(I[c+52|0]|H[c+64>>2])!=0;break a}b=(I[c+52|0]|H[c+64>>2])!=0}d=0;e:{if(!I[i+228|0]){break e}a=H[i+224>>2];c=H[a+64>>2];if(I[a+52|0]){if(!c){break e}k=L[a+44>>2];f=H[a+56>>2];while(1){a=f+N(d,48)|0;f:{if(k>2]){c=c-1|0;e=f+N(c,48)|0;g=H[e+4>>2];H[a>>2]=H[e>>2];H[a+4>>2]=g;H[a+8>>2]=H[e+8>>2];G[a+12>>1]=J[e+12>>1];L[a+16>>2]=L[e+16>>2];L[a+20>>2]=L[e+20>>2];L[a+24>>2]=L[e+24>>2];L[a+28>>2]=L[e+28>>2];L[a+32>>2]=L[e+32>>2];L[a+36>>2]=L[e+36>>2];L[a+40>>2]=L[e+40>>2];H[a+44>>2]=H[e+44>>2];break f}d=d+1|0}if((c|0)!=(d|0)){continue}break}a=H[i+224>>2];H[a+64>>2]=c}if(!c){break e}if(!(Ra[H[H[a>>2]>>2]](a,H[a+56>>2],c)|0)){break e}H[H[i+224>>2]+64>>2]=0}a=H[i+224>>2];Ra[H[H[a>>2]+4>>2]](a);Oa=i+240|0;return b}function aw(a,b,c,d,e,f,g,h){var i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=0,r=O(0),s=0,t=0,u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=0,C=O(0),D=O(0),E=O(0),F=0,G=0;t=Oa-32|0;i=L[b>>2];l=L[h+8>>2];j=L[b+8>>2];m=L[h>>2];r=O(O(O(i*l)-O(j*m))+L[h+20>>2]);n=j;j=L[h+4>>2];k=L[b+4>>2];n=O(O(O(n*j)-O(k*l))+L[h+16>>2]);k=O(O(O(k*m)-O(i*j))+L[h+24>>2]);s=H[e+72>>2];a:{if(!s){break a}i=L[c+32>>2];o=L[c+24>>2];p=L[c+28>>2];w=O(O(O(O(i*k)+O(O(o*n)+O(r*p)))+O(O(O(m*L[c+80>>2])+O(j*L[c+92>>2]))+O(l*L[c+104>>2])))+L[f+24>>2]);u=L[c+20>>2];v=L[c+12>>2];x=L[c+16>>2];D=O(O(O(O(u*k)+O(O(v*n)+O(r*x)))+O(O(O(m*L[c+76>>2])+O(j*L[c+88>>2]))+O(l*L[c+100>>2])))+L[f+20>>2]);y=L[c+8>>2];z=L[c>>2];A=L[c+4>>2];E=O(O(O(O(y*k)+O(O(z*n)+O(r*A)))+O(O(O(m*L[c+72>>2])+O(j*L[c+84>>2]))+O(l*L[c+96>>2])))+L[f+16>>2]);i=O(O(O(O(O(m*y)+O(j*u))+O(l*i))+O(O(O(n*L[c+44>>2])+O(r*L[c+56>>2]))+O(k*L[c+68>>2])))+L[f+8>>2]);p=O(O(O(O(O(m*A)+O(j*x))+O(l*p))+O(O(O(n*L[c+40>>2])+O(r*L[c+52>>2]))+O(k*L[c- -64>>2])))+L[f+4>>2]);o=O(O(O(O(O(m*z)+O(j*v))+O(l*o))+O(O(O(n*L[c+36>>2])+O(r*L[c+48>>2]))+O(k*L[c+60>>2])))+L[f>>2]);h=0;while(1){b=N(h,24)+e|0;L[(h<<2)+t>>2]=-O(O(O(L[b+20>>2]*i)+O(O(L[b+12>>2]*o)+O(p*L[b+16>>2])))+O(O(L[b+8>>2]*w)+O(O(L[b>>2]*E)+O(D*L[b+4>>2]))));h=h+1|0;if((s|0)!=(h|0)){continue}break}o=O(0);p=O(0);w=O(0);u=O(0);v=O(0);if(!s){break a}F=s&-4;B=s&3;f=0;G=s-1>>>0<3;while(1){c=0;i=O(0);b=0;if(!G){while(1){h=f<<2;q=c|3;x=O(L[h+(N(q,12)+d|0)>>2]*L[(q<<2)+t>>2]);q=c|2;y=O(L[h+(N(q,12)+d|0)>>2]*L[(q<<2)+t>>2]);q=c|1;i=O(x+O(y+O(O(L[h+(N(q,12)+d|0)>>2]*L[(q<<2)+t>>2])+O(O(L[h+(N(c,12)+d|0)>>2]*L[(c<<2)+t>>2])+i))));c=c+4|0;b=b+4|0;if((F|0)!=(b|0)){continue}break}}h=0;if(B){while(1){i=O(O(L[(N(c,12)+d|0)+(f<<2)>>2]*L[(c<<2)+t>>2])+i);c=c+1|0;h=h+1|0;if((B|0)!=(h|0)){continue}break}}b=(f<<2)+g|0;L[b>>2]=i+L[b>>2];b=N(f,24)+e|0;v=O(v+O(i*L[b+20>>2]));u=O(u+O(i*L[b+16>>2]));w=O(w+O(i*L[b+12>>2]));p=O(p+O(i*L[b+8>>2]));o=O(o+O(i*L[b+4>>2]));C=O(C+O(i*L[b>>2]));f=f+1|0;if((s|0)!=(f|0)){continue}break}}H[a+28>>2]=0;H[a+12>>2]=0;L[a+24>>2]=k+v;L[a+20>>2]=r+u;L[a+16>>2]=n+w;L[a+8>>2]=l+p;L[a+4>>2]=j+o;L[a>>2]=m+C}function sO(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;j=H[a+980>>2];f=H[j+316>>2];e=H[a+976>>2]+1792|0;k=H[j+320>>2];H[e>>2]=k+H[e>>2];l=H[a+2168>>2];d=Oa-48|0;Oa=d;if(k){while(1){e=f+N(m,12)|0;g=H[e+4>>2];i=H[e>>2];c=H[l+108>>2];h=H[l>>2];H[d+16>>2]=H[h+2184>>2];H[d+20>>2]=H[h+2172>>2];H[d+24>>2]=H[h+2176>>2];e=H[h+2188>>2];H[d+32>>2]=c;H[d+28>>2]=e;H[d+36>>2]=H[h+2192>>2];H[d+40>>2]=H[h+2196>>2];F[d+15|0]=0;gI(d,d+16|0,g,i,-1,d+15|0,0);if(!(F[d|0]&1)){hI(l,d,g,i,0,0,0,I[d+15|0])}m=m+1|0;if((k|0)!=(m|0)){continue}break}}Oa=d+48|0;d=H[j+308>>2];j=H[j+304>>2];if(!(H[a+4680>>2]&2147483647)){tO(a+4672|0,1)}if(!(H[a+4692>>2]&2147483647)){uO(a+4684|0,1)}if(!(H[a+4704>>2]&2147483647)){vO(a+4696|0,1)}H[a+4700>>2]=1;H[a+4688>>2]=1;H[a+4676>>2]=1;e=H[a+976>>2];c=e+1792|0;H[c>>2]=d+H[c>>2];H[a+4284>>2]=b;H[a+4288>>2]=1;h=a+4264|0;if(b){Ra[H[H[b>>2]+16>>2]](b);H[a+4280>>2]=H[H[a+4284>>2]+16>>2];e=H[a+976>>2]}l=H[e+1156>>2];H[a+4716>>2]=0;a:{b:{if(d>>>0>(H[a+4720>>2]&2147483647)>>>0){g=a+4712|0;f=0;c:{if(!d){break c}e=d<<3;if(!e){break c}c=H[33808];b=c+12|0;f=(o=b,p=e,q=Ra[H[H[c>>2]+20>>2]](c)|0?31368:55639,r=13582,s=553,n=H[H[b>>2]+8>>2],Ra[n](o|0,p|0,q|0,r|0,s|0)|0)}c=H[g>>2];b=H[g+4>>2];if((b|0)>0){i=(b<<3)+f|0;b=c;e=f;while(1){G[e>>1]=J[b>>1];G[e+2>>1]=J[b+2>>1];H[e+4>>2]=H[b+4>>2];b=b+8|0;e=e+8|0;if(i>>>0>e>>>0){continue}break}}if(!(!c|H[g+8>>2]<0)){b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,c)}H[g+8>>2]=d;H[g>>2]=f;H[a+4708>>2]=0;H[a+4716>>2]=d;b=a+4708|0;break b}H[a+4708>>2]=0;H[a+4716>>2]=d;if(!d){break a}b=a+4708|0}e=0;f=0;while(1){c=yq(l,192);k=H[a+4712>>2];m=H[a+2168>>2];g=H[a+20>>2];i=H[a+16>>2];H[c+24>>2]=0;H[c+16>>2]=0;H[c+8>>2]=i;H[c+12>>2]=g;i=d-f|0;H[c+36>>2]=i>>>0<512?i:512;H[c+32>>2]=j+N(f,12);H[c+28>>2]=m;H[c>>2]=120308;H[c+168>>2]=k+(f<<3);S6(c+40|0,0,128);H[c+180>>2]=0;H[c+184>>2]=0;H[c+172>>2]=0;H[c+176>>2]=0;H[c+24>>2]=1;H[c+20>>2]=h;Ra[H[H[a+4264>>2]+16>>2]](h);H[c+16>>2]=H[H[c+20>>2]+16>>2];Ra[H[H[c>>2]+20>>2]](c);d:{if(e){H[e+184>>2]=c;break d}H[b>>2]=c}e=c;f=f+512|0;if(d>>>0>f>>>0){continue}break}}a=H[a+4280>>2];Ra[H[H[a>>2]+72>>2]](a,h)}function C0(a,b,c,d,e,f,g,h,i,j,k,l){var m=O(0),n=O(0),o=O(0),p=O(0),q=0,r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=0,z=0,A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),F=O(0),G=O(0),J=O(0),M=O(0),P=O(0),Q=O(0),R=O(0),S=O(0),T=O(0),U=O(0),V=O(0),X=O(0),Y=O(0),Z=O(0),_=O(0),$=O(0),aa=O(0),ba=O(0),ca=O(0),da=O(0),ea=O(0),fa=O(0),ga=O(0),ha=O(0),ia=O(0),ja=O(0),ka=O(0);q=Oa-48|0;Oa=q;B=L[j+12>>2];C=L[j+8>>2];D=L[j+4>>2];E=L[j>>2];x=O(3.4028234663852886e38);a:{b:{c:{if(!H[a+16>>2]){b=0;break c}F=L[f+56>>2];m=L[b+8>>2];n=L[b>>2];o=L[b+4>>2];S=O(F+O(O(L[f+40>>2]*m)+O(O(L[f+8>>2]*n)+O(o*L[f+24>>2]))));G=L[f+52>>2];T=O(G+O(O(L[f+36>>2]*m)+O(O(L[f+4>>2]*n)+O(o*L[f+20>>2]))));J=L[f+48>>2];U=O(J+O(O(L[f+32>>2]*m)+O(O(L[f>>2]*n)+O(o*L[f+16>>2]))));M=L[b+56>>2];V=O(-M);P=L[b+52>>2];X=O(-P);Q=L[b+48>>2];Y=O(-Q);R=L[b+44>>2];b=0;while(1){y=H[a+24>>2]+N(z,20)|0;Z=L[y+12>>2];f=H[a+28>>2]+N(I[y+19|0],12)|0;_=L[f+8>>2];$=L[f>>2];aa=L[f+4>>2];f=H[c+40>>2];m=L[f+36>>2];n=L[f+40>>2];s=L[y>>2];o=L[f+20>>2];t=L[y+4>>2];p=L[f+24>>2];w=L[y+8>>2];r=L[f+32>>2];u=L[f+8>>2];v=L[f>>2];A=L[f+4>>2];ba=L[f+16>>2];ca=L[e+40>>2];da=L[e+8>>2];ea=L[e+24>>2];fa=L[e+32>>2];ga=L[e>>2];ha=L[e+16>>2];ia=L[e+36>>2];ja=L[e+4>>2];ka=L[e+20>>2];H[q+12>>2]=0;m=O(O(n*w)+O(O(r*s)+O(t*m)));n=O(O(u*w)+O(O(v*s)+O(t*A)));o=O(O(p*w)+O(O(ba*s)+O(t*o)));p=O(O(1)/O(W(O(O(m*m)+O(O(n*n)+O(o*o))))));m=O(m*p);n=O(n*p);o=O(o*p);r=O(O(ia*m)+O(O(ja*n)+O(ka*o)));L[q+4>>2]=r;u=O(O(fa*m)+O(O(ga*n)+O(ha*o)));L[q>>2]=u;v=O(O(ca*m)+O(O(da*n)+O(o*ea)));L[q+8>>2]=v;A=O(O(S*m)+O(O(U*n)+O(T*o)));r=O(O(v*(v>O(0)?M:V))+O(O(u*(u>O(0)?Q:Y))+O(r*(r>O(0)?P:X))));u=r>R?r:R;v=O(A+u);r=O(p*O(-Z));p=O(O(O(w*_)+O(O(s*$)+O(aa*t)))*p);s=O(A-u);d:{if(O((r>v?v:r)-(p>s?p:s))>x){break d}Ra[H[H[d>>2]+12>>2]](d,q,q+32|0,q+16|0);t=O(O(F*m)+O(O(J*n)+O(G*o)));s=O(t+L[q+32>>2]);L[q+32>>2]=s;t=O(t+L[q+16>>2]);L[q+16>>2]=t;w=L[g>>2];if(s>O(r+w)|p>O(t+w)){break b}p=O(r-s);if(!(p>>0>2]){continue}break}}if(L[h>>2]>x){L[j+12>>2]=B;L[j+8>>2]=C;L[j+4>>2]=D;L[j>>2]=E;L[h>>2]=x;H[l>>2]=k}H[i>>2]=b;a=1;break a}a=0}Oa=q+48|0;return a}function UP(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;j=Oa-48|0;Oa=j;b=H[a+28>>2];m=H[a+20>>2];a=H[m+20>>2];H[b+3460>>2]=a;H[b+3464>>2]=1;if(a){Ra[H[H[a>>2]+16>>2]](a);H[b+3456>>2]=H[H[b+3460>>2]+16>>2]}a=b+3420|0;k=b+3440|0;H[a>>2]=k;H[b+3424>>2]=1;Ra[H[H[b+3440>>2]+16>>2]](k);H[b+3416>>2]=H[H[a>>2]+16>>2];H[b+3384>>2]=1;a=b+3380|0;l=b+3400|0;H[a>>2]=l;Ra[H[H[b+3400>>2]+16>>2]](l);H[b+3376>>2]=H[H[a>>2]+16>>2];f=Oa-16|0;Oa=f;c=H[b+976>>2]+24|0;a=H[c+168>>2];d=H[a+8>>2];g=H[a+4>>2];i=H[a+16>>2];h=H[((d<<2)+g|0)-4>>2]-i|0;if(h){e=a+16|0;a:{if(d>>>0>=(H[a+12>>2]&2147483647)>>>0){Xr(a+4|0,e);break a}H[g+(d<<2)>>2]=i;H[a+8>>2]=d+1}e=H[e>>2]}a=h>>>14|0;H[c+164>>2]=a;H[c+160>>2]=e;H[f+12>>2]=0;e=c+88|0;if(a>>>0>(H[e+8>>2]&2147483647)>>>0){Ex(e,a)}d=H[e+4>>2];if((d|0)<(a|0)){g=H[e>>2];i=g+(a<<2)|0;d=g+(d<<2)|0;while(1){H[d>>2]=H[f+12>>2];d=d+4|0;if(i>>>0>d>>>0){continue}break}}H[e+4>>2]=a;d=H[c+164>>2];b:{if(!d){break b}e=0;a=0;if(d-1>>>0>=3){i=d&-4;g=0;while(1){H[H[c+88>>2]+(a<<2)>>2]=H[c+160>>2]+(a<<14);h=a|1;H[H[c+88>>2]+(h<<2)>>2]=H[c+160>>2]+(h<<14);h=a|2;H[H[c+88>>2]+(h<<2)>>2]=H[c+160>>2]+(h<<14);h=a|3;H[H[c+88>>2]+(h<<2)>>2]=H[c+160>>2]+(h<<14);a=a+4|0;g=g+4|0;if((i|0)!=(g|0)){continue}break}}d=d&3;if(!d){break b}while(1){H[H[c+88>>2]+(a<<2)>>2]=H[c+160>>2]+(a<<14);a=a+1|0;e=e+1|0;if((d|0)!=(e|0)){continue}break}}Oa=f+16|0;a=H[b+976>>2];d=H[a+1824>>2];a=H[a+1024>>2];Ra[H[H[a>>2]+84>>2]](j+8|0,a);a=H[H[b+976>>2]+1024>>2];g=Ra[H[H[a>>2]+68>>2]](a)|0;e=b+3360|0;f=H[H[b+2376>>2]+4>>2]+31>>>5|0;c=H[b+980>>2];a=H[c+164>>2];c:{if(f>>>0<=(a&2147483647)>>>0){f=H[c+160>>2];break c}i=H[c+160>>2];if(!(!i|(a|0)<0)){a=H[c+168>>2];Ra[H[H[a>>2]+12>>2]](a,i)}H[c+164>>2]=f;a=H[c+168>>2];f=Ra[H[H[a>>2]+8>>2]](a,f<<2,14905,461)|0;H[c+160>>2]=f;a=H[c+164>>2]}S6(f,0,a<<2);a=H[b+1004>>2];Ra[H[H[a>>2]+4>>2]](a,H[b+1e3>>2],m,e,H[b+2480>>2],H[b+2484>>2],H[b+2492>>2],H[b+2496>>2],d,j+8|0,g,L[b+1080>>2],b+1052|0,H[c+164>>2]&2147483647);H[H[b+1e3>>2]+96>>2]=0;a=H[b+3456>>2];Ra[H[H[a>>2]+72>>2]](a,k);a=H[b+3416>>2];Ra[H[H[a>>2]+72>>2]](a,l);a=H[b+3376>>2];Ra[H[H[a>>2]+72>>2]](a,e);Oa=j+48|0}function aE(a,b,c,d){var e=O(0);H[a>>2]=0;H[a+4>>2]=0;H[a+268>>2]=1120403456;H[a+20>>2]=0;H[a+24>>2]=0;H[a+16>>2]=1065353216;H[a+8>>2]=0;H[a+12>>2]=0;H[a+28>>2]=0;H[a+32>>2]=0;H[a+36>>2]=0;H[a+40>>2]=0;H[a+336>>2]=1028443341;H[a+320>>2]=1028443341;H[a+52>>2]=0;H[a+56>>2]=0;H[a+44>>2]=1065353216;H[a+48>>2]=0;G[a+262>>1]=0;G[a+264>>1]=0;G[a+266>>1]=0;F[a+273|0]=1;F[a+274|0]=3;F[a+272|0]=0;L[a+4>>2]=L[b>>2];L[a+8>>2]=L[b+4>>2];L[a+12>>2]=L[b+8>>2];L[a+16>>2]=L[b+12>>2];L[a+20>>2]=L[b+16>>2];L[a+24>>2]=L[b+20>>2];L[a+28>>2]=L[b+24>>2];L[a+32>>2]=L[c>>2];L[a+36>>2]=L[c+4>>2];L[a+40>>2]=L[c+8>>2];L[a+44>>2]=L[c+12>>2];L[a+48>>2]=L[c+16>>2];L[a+52>>2]=L[c+20>>2];e=L[c+24>>2];F[a+334|0]=0;H[a+284>>2]=0;H[a+288>>2]=1065353216;H[a+276>>2]=0;H[a+280>>2]=0;L[a+56>>2]=e;H[a+292>>2]=0;H[a+296>>2]=0;H[a+300>>2]=0;H[a+304>>2]=0;H[a+308>>2]=0;H[a+312>>2]=1065353216;H[a+316>>2]=1065353216;a:{if(d){H[a+108>>2]=0;H[a+112>>2]=0;H[a+100>>2]=0;H[a+104>>2]=0;H[a+92>>2]=0;H[a+96>>2]=0;H[a+84>>2]=0;H[a+88>>2]=0;H[a+76>>2]=0;H[a+80>>2]=0;H[a+68>>2]=0;H[a+72>>2]=0;H[a+60>>2]=0;H[a+64>>2]=0;H[a+228>>2]=0;H[a+204>>2]=0;H[a+116>>2]=0;H[a+120>>2]=4;H[a+132>>2]=0;H[a+136>>2]=4;H[a+124>>2]=0;H[a+128>>2]=0;H[a+232>>2]=0;H[a+236>>2]=0;H[a+208>>2]=0;H[a+212>>2]=0;H[a+148>>2]=0;H[a+152>>2]=4;H[a+140>>2]=0;H[a+144>>2]=0;H[a+216>>2]=0;H[a+164>>2]=0;H[a+168>>2]=4;H[a+240>>2]=0;H[a+156>>2]=0;H[a+160>>2]=0;H[a+244>>2]=0;H[a+248>>2]=0;H[a+180>>2]=0;H[a+184>>2]=4;H[a+172>>2]=0;H[a+176>>2]=0;H[a+220>>2]=0;H[a+224>>2]=0;H[a+196>>2]=0;H[a+200>>2]=4;H[a+188>>2]=0;H[a+192>>2]=0;H[a+344>>2]=0;H[a+348>>2]=0;H[a+352>>2]=0;H[a+356>>2]=0;H[a+360>>2]=0;H[a+336>>2]=0;H[a+340>>2]=0;break a}H[a+320>>2]=1028443341;H[a+336>>2]=1028443341;H[a+340>>2]=1045147567;H[a+76>>2]=1061752795;H[a+80>>2]=1061752795;H[a+68>>2]=1061752795;H[a+72>>2]=1061752795;H[a+360>>2]=1011666824;H[a+352>>2]=1045147567;H[a+356>>2]=-1102336081;H[a+344>>2]=1045147567;H[a+348>>2]=1011666824;H[a+60>>2]=-1085730853;H[a+64>>2]=1061752795}F[a+274|0]=4;H[a+252>>2]=1028443341;G[a+332>>1]=0;H[a+324>>2]=0;H[a+328>>2]=0;G[a+266>>1]=0;G[a+262>>1]=0;G[a+264>>1]=0}function cw(a,b,c,d,e,f,g){var h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=0,q=O(0),r=0,s=0,t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=0,B=O(0),C=O(0),D=O(0),E=0,F=0;s=Oa-32|0;h=L[b>>2];k=L[g+8>>2];i=L[b+8>>2];l=L[g>>2];q=O(O(O(h*k)-O(i*l))+L[g+20>>2]);m=i;i=L[g+4>>2];j=L[b+4>>2];m=O(O(O(m*i)-O(j*k))+L[g+16>>2]);j=O(O(O(j*l)-O(h*i))+L[g+24>>2]);r=H[e+72>>2];a:{if(!r){break a}h=L[c+32>>2];n=L[c+24>>2];o=L[c+28>>2];v=O(O(O(O(h*j)+O(O(n*m)+O(q*o)))+O(O(O(l*L[c+80>>2])+O(i*L[c+92>>2]))+O(k*L[c+104>>2])))+L[f+24>>2]);t=L[c+20>>2];u=L[c+12>>2];w=L[c+16>>2];C=O(O(O(O(t*j)+O(O(u*m)+O(q*w)))+O(O(O(l*L[c+76>>2])+O(i*L[c+88>>2]))+O(k*L[c+100>>2])))+L[f+20>>2]);x=L[c+8>>2];y=L[c>>2];z=L[c+4>>2];D=O(O(O(O(x*j)+O(O(y*m)+O(q*z)))+O(O(O(l*L[c+72>>2])+O(i*L[c+84>>2]))+O(k*L[c+96>>2])))+L[f+16>>2]);h=O(O(O(O(O(l*x)+O(i*t))+O(k*h))+O(O(O(m*L[c+44>>2])+O(q*L[c+56>>2]))+O(j*L[c+68>>2])))+L[f+8>>2]);o=O(O(O(O(O(l*z)+O(i*w))+O(k*o))+O(O(O(m*L[c+40>>2])+O(q*L[c+52>>2]))+O(j*L[c- -64>>2])))+L[f+4>>2]);n=O(O(O(O(O(l*y)+O(i*u))+O(k*n))+O(O(O(m*L[c+36>>2])+O(q*L[c+48>>2]))+O(j*L[c+60>>2])))+L[f>>2]);g=0;while(1){b=N(g,24)+e|0;L[(g<<2)+s>>2]=-O(O(O(L[b+20>>2]*h)+O(O(L[b+12>>2]*n)+O(o*L[b+16>>2])))+O(O(L[b+8>>2]*v)+O(O(L[b>>2]*D)+O(C*L[b+4>>2]))));g=g+1|0;if((r|0)!=(g|0)){continue}break}n=O(0);o=O(0);v=O(0);t=O(0);u=O(0);if(!r){break a}E=r&-4;A=r&3;f=0;F=r-1>>>0<3;while(1){c=0;h=O(0);b=0;if(!F){while(1){g=f<<2;p=c|3;w=O(L[g+(N(p,12)+d|0)>>2]*L[(p<<2)+s>>2]);p=c|2;x=O(L[g+(N(p,12)+d|0)>>2]*L[(p<<2)+s>>2]);p=c|1;h=O(w+O(x+O(O(L[g+(N(p,12)+d|0)>>2]*L[(p<<2)+s>>2])+O(O(L[g+(N(c,12)+d|0)>>2]*L[(c<<2)+s>>2])+h))));c=c+4|0;b=b+4|0;if((E|0)!=(b|0)){continue}break}}g=0;if(A){while(1){h=O(O(L[(N(c,12)+d|0)+(f<<2)>>2]*L[(c<<2)+s>>2])+h);c=c+1|0;g=g+1|0;if((A|0)!=(g|0)){continue}break}}b=N(f,24)+e|0;v=O(v+O(h*L[b+12>>2]));o=O(o+O(h*L[b+8>>2]));n=O(n+O(h*L[b+4>>2]));B=O(B+O(h*L[b>>2]));u=O(u+O(h*L[b+20>>2]));t=O(t+O(h*L[b+16>>2]));f=f+1|0;if((r|0)!=(f|0)){continue}break}}H[a+28>>2]=0;H[a+12>>2]=0;L[a+24>>2]=j+u;L[a+20>>2]=q+t;L[a+16>>2]=m+v;L[a+8>>2]=k+o;L[a+4>>2]=i+n;L[a>>2]=l+B}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=O(0),s=0,t=0;h=Oa-16|0;Oa=h;H[h+8>>2]=c;f=H[a+112>>2];a:{if(f){b:{if(H[d+40>>2]|!d){break b}e=H[d+36>>2];if(!H[e>>2]){break b}c=0;while(1){H[h+4>>2]=H[((c<<2)+e|0)+4>>2];f=dC(b,h+4|0,h+14|0);if(!I[h+14|0]){H[f>>2]=H[h+4>>2]}H[f+4>>2]=d;c=c+1|0;e=H[d+36>>2];if(c>>>0>2]){continue}break}f=H[a+112>>2];if(!f){break a}}while(1){o=0;q=H[H[a+108>>2]+(p<<2)>>2];c=H[q+36>>2];if(H[c>>2]){while(1){k=H[((o<<2)+c|0)+4>>2];e=H[b+20>>2];c:{d:{if(!e){d=0;break d}c=(k<<15^-1)+k|0;c=N(c>>>10^c,9);c=c>>>6^c;c=(c<<11^-1)+c|0;d=e-1&(c>>>16^c);c=H[H[b+12>>2]+(d<<2)>>2];if((c|0)==-1){break d}i=H[b+8>>2];j=H[b+4>>2];while(1){f=j+(c<<3)|0;if(H[f>>2]==(k|0)){break c}c=H[i+(c<<2)>>2];if((c|0)!=-1){continue}break}}s=H[b+36>>2];if((s|0)==H[b+16>>2]){d=e?e<<1:16;e:{if(e>>>0>=d>>>0){i=e-1|0;break e}if((i7(d)|0)!=1){c=d>>>1|d;c=c>>>2|c;c=c>>>4|c;c=c>>>8|c;d=(c>>>16|c)+1|0}r=O(L[b+24>>2]*O(d>>>0));f:{if(r=O(0)){f=~~r>>>0;break f}f=0}c=0;e=0;i=d+f<<2;j=(0-i&12)+i|0;i=j+(f<<3)|0;if(i){e=H[33808]+12|0;e=Ra[H[H[e>>2]+8>>2]](e,i,20591,14239,372)|0}i=d-1|0;m=d<<2;e=S6(e,255,m);j=e+j|0;m=e+m|0;if(H[b+36>>2]){t=H[b+4>>2];while(1){n=c<<3;l=n+t|0;g=H[l>>2];g=(g<<15^-1)+g|0;g=N(g>>>10^g,9);g=g>>>6^g;g=(g<<11^-1)+g|0;g=e+(((g>>>16^g)&i)<<2)|0;H[m+(c<<2)>>2]=H[g>>2];H[g>>2]=c;n=j+n|0;H[n>>2]=H[l>>2];H[n+4>>2]=H[l+4>>2];c=c+1|0;if(c>>>0>2]){continue}break}}c=H[b>>2];if(c){l=H[33808]+12|0;Ra[H[H[l>>2]+12>>2]](l,c)}H[b+20>>2]=d;H[b+12>>2]=e;H[b>>2]=e;H[b+8>>2]=m;H[b+16>>2]=f;H[b+4>>2]=j;if(H[b+28>>2]!=-1){break e}H[b+28>>2]=s}c=(k<<15^-1)+k|0;c=N(c>>>10^c,9);c=c>>>6^c;c=(c<<11^-1)+c|0;d=(c>>>16^c)&i}c=H[b+28>>2];H[b+28>>2]=c+1;d=H[b+12>>2]+(d<<2)|0;H[H[b+8>>2]+(c<<2)>>2]=H[d>>2];H[d>>2]=c;H[b+36>>2]=H[b+36>>2]+1;H[b+32>>2]=H[b+32>>2]+1;f=H[b+4>>2]+(c<<3)|0;H[f+4>>2]=0;H[f>>2]=k}H[f+4>>2]=q;o=o+1|0;c=H[q+36>>2];if(o>>>0>2]){continue}break}f=H[a+112>>2]}p=p+1|0;if(p>>>0>>0){continue}break}break a}a=dC(b,h+8|0,h+15|0);if(!I[h+15|0]){b=H[h+8>>2];H[a+4>>2]=0;H[a>>2]=b}H[a+4>>2]=d}Oa=h+16|0}function t5(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=O(0),l=0,m=0,n=0,o=0,p=0;h=Oa-16|0;Oa=h;a:{b:{if((a|0)!=67174656){b=o6(256);H[h+4>>2]=a;H[h>>2]=67174656;F5(b,256,1755,h);Ra[H[H[c>>2]+8>>2]](c,4,b,7612,132);break b}if(!H[33808]){d=Ra[H[H[b>>2]+8>>2]](b,264,11707,7612,141)|0;H[33808]=d;if(d){H[d+8>>2]=c;H[d+4>>2]=b;H[d+192>>2]=-1;F[d+188|0]=0;H[d+84>>2]=d+16;F[d+80|0]=1;H[d>>2]=133472;H[d+100>>2]=c;H[d+96>>2]=b;H[d+12>>2]=133548;H[d+176>>2]=d+108;F[d+172|0]=1;H[d+88>>2]=0;H[d+92>>2]=16;H[d+180>>2]=1;H[d+184>>2]=16;H[d+108>>2]=c;H[d+104>>2]=133620;a=H[33808];o=d,p=Ra[H[H[a+12>>2]+8>>2]](a+12|0,28,66953,13721,113)|0,H[o+196>>2]=p;a=Oa-16|0;Oa=a;Oa=a+16|0;H[d+216>>2]=0;H[d+220>>2]=0;H[d+208>>2]=0;H[d+212>>2]=0;H[d+200>>2]=0;H[d+204>>2]=0;H[d+232>>2]=0;H[d+236>>2]=0;H[d+224>>2]=1061158912;H[d+228>>2]=-1;b=0;m=H[d+216>>2];k=O(L[d+224>>2]*O(64));c:{if(k=O(0)){a=~~k>>>0;break c}a=0}c=a- -64<<2;c=(0-c&12)+c|0;f=(a<<3)+c|0;if(f){i=H[33808];f=Ra[H[H[i+12>>2]+8>>2]](i+12|0,f,20591,14239,372)|0}else{f=0}e=c;c=S6(f,255,256);f=e+c|0;i=c+256|0;if(H[d+236>>2]){n=H[d+204>>2];while(1){j=b<<3;l=j+n|0;g=H[l>>2];e=(g<<15^-1)+g|0;e=N(e>>>10^e,9);e=e>>>6^e;e=(e<<11^-1)+e|0;e=c+(((e>>>16^e)&63)<<2)|0;H[i+(b<<2)>>2]=H[e>>2];H[e>>2]=b;j=f+j|0;H[j>>2]=g;H[j+4>>2]=H[l+4>>2];b=b+1|0;if(b>>>0>2]){continue}break}}b=H[d+200>>2];if(b){g=H[33808];Ra[H[H[g+12>>2]+12>>2]](g+12|0,b)}H[d+220>>2]=64;H[d+212>>2]=c;H[d+200>>2]=c;H[d+208>>2]=i;H[d+216>>2]=a;H[d+204>>2]=f;if(H[d+228>>2]==-1){H[d+228>>2]=m}a=H[33808];o=d,p=Ra[H[H[a+12>>2]+8>>2]](a+12|0,28,66953,13721,113)|0,H[o+240>>2]=p;a=Oa-16|0;Oa=a;Oa=a+16|0;H[d+252>>2]=0;H[d+244>>2]=0;H[d+248>>2]=0;a=H[33808];o=d,p=Ra[H[H[a+12>>2]+8>>2]](a+12|0,28,66953,13721,113)|0,H[o+256>>2]=p;a=Oa-16|0;Oa=a;Oa=a+16|0;a=H[33808];o=d,p=Ra[H[H[a+12>>2]+8>>2]](a+12|0,28,66953,13721,113)|0,H[o+260>>2]=p;a=Oa-16|0;Oa=a;Oa=a+16|0;H[33810]=1;a=H[33809];H[33809]=(a|0)==-1?1:a+1|0;a=H[33808];break a}Ra[H[H[c>>2]+8>>2]](c,32,60586,7612,158);break b}Ra[H[H[c>>2]+8>>2]](c,8,58550,7612,165)}a=0}Oa=h+16|0;return a|0}function _O(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,o=0,p=0,q=0,r=0;e=Oa-6144|0;Oa=e;c=1;a:{if(!H[a+32>>2]){break a}d=H[a+48>>2];j=H[d+1140>>2];f=H[d+1e3>>2];d=0;while(1){g=H[(H[f+184>>2]+N(H[H[a+28>>2]+(i<<2)>>2]>>>7|0,24)|0)+20>>2];h=H[g-20>>2];L[h+156>>2]=L[h+160>>2];c=g+-64|0;b:{c:{d:{b=J[g+28>>1];if(!(b&1)){H[(e+5120|0)+(d<<2)>>2]=c;hG(c,H[a+44>>2],j);d=d+1|0;b=J[g+28>>1];break d}if(!(b&2)){break d}l=(e+1024|0)+(k<<2)|0;k=k+1|0;break c}if(!(b&4)){break b}l=(p<<2)+e|0;p=p+1|0}H[l>>2]=c}if(I[h+44|0]&4){H[(e+4096|0)+(m<<2)>>2]=c;m=m+1|0}e:{f:{if(b&8){h=(e+3072|0)+(n<<2)|0;n=n+1|0;break f}if(!(b&16)){break e}h=(e+2048|0)+(o<<2)|0;o=o+1|0}H[h>>2]=c}G[g+28>>1]=b&1;i=i+1|0;if(i>>>0>2]){continue}break}c=1;if(!d){break a}F[H[a+44>>2]+20|0]=1;F[j+16|0]=1;q=d;c=0}g:{if(!(k|q|(m|n))){if(!o){break g}}b=H[a+48>>2];d=H[b+980>>2];g=d+160|0;if(!c){i=0;while(1){b=H[H[(e+5120|0)+(i<<2)>>2]+32>>2];if(b){while(1){if(I[H[b+28>>2]- -64|0]&5){h=H[b+8>>2];l=h&2147483647;j=l+32>>>5|0;h:{if(j>>>0<=(H[d+164>>2]&2147483647)>>>0){c=H[g>>2];break h}c=H[d+168>>2];c=Ra[H[H[c>>2]+8>>2]](c,j<<2,14905,438)|0;f=H[d+160>>2];i:{if(!f){break i}R6(c,f,H[d+164>>2]<<2);if(H[d+164>>2]<0){break i}f=H[g>>2];if(!f){break i}r=H[d+168>>2];Ra[H[H[r>>2]+12>>2]](r,f)}f=H[d+164>>2];S6((f<<2)+c|0,0,j-f<<2);H[d+164>>2]=j;H[d+160>>2]=c}c=(l>>>3&268435452)+c|0;H[c>>2]=H[c>>2]|1<>2];if(b){continue}break}}i=i+1|0;if((q|0)!=(i|0)){continue}break}b=H[a+48>>2]}if(m){q=b+1156|0;d=0;while(1){a=(e+4096|0)+(d<<2)|0;c=H[b+1160>>2];j:{if(c>>>0>=(H[b+1164>>2]&2147483647)>>>0){rF(q,a);break j}H[H[b+1156>>2]+(c<<2)>>2]=H[a>>2];H[b+1160>>2]=c+1}d=d+1|0;if((m|0)!=(d|0)){continue}break}}if(k){b=0;while(1){vG(H[(e+1024|0)+(b<<2)>>2],g);b=b+1|0;if((k|0)!=(b|0)){continue}break}}if(p){b=0;while(1){oG(H[(b<<2)+e>>2]);b=b+1|0;if((p|0)!=(b|0)){continue}break}}if(n){b=0;while(1){a=H[(e+3072|0)+(b<<2)>>2];dF(H[H[a+40>>2]+1e3>>2],H[a+144>>2]);b=b+1|0;if((n|0)!=(b|0)){continue}break}}if(o){b=0;while(1){nG(H[(e+2048|0)+(b<<2)>>2]);b=b+1|0;if((o|0)!=(b|0)){continue}break}}}Oa=e+6144|0}function DT(a,b,c,d,e,f){var g=0,h=0,i=O(0),j=O(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;g=Oa-128|0;Oa=g;H[g+88>>2]=0;H[g+92>>2]=0;H[g+96>>2]=0;H[g+100>>2]=0;H[g+80>>2]=0;H[g+84>>2]=0;G[g+76>>1]=0;H[g+72>>2]=-1;H[g+64>>2]=0;H[g+68>>2]=0;H[g+112>>2]=0;H[g+104>>2]=2139095039;H[g+108>>2]=0;j=O(3.4028234663852886e38);l=H[a+8>>2];if(l){n=H[31595];while(1){m=N(k,72);h=m+H[a+4>>2]|0;o=H[h+60>>2];p=H[h+56>>2];L[g+60>>2]=L[h- -64>>2];H[g+52>>2]=p;H[g+56>>2]=o;H[g+48>>2]=3;q=M[h+16>>3];r=M[h+24>>3];s=M[h+32>>3];L[g+16>>2]=L[h+40>>2];L[g+20>>2]=L[h+44>>2];L[g+24>>2]=L[h+48>>2];i=L[h+52>>2];L[g+40>>2]=s;L[g+36>>2]=r;L[g+32>>2]=q;L[g+28>>2]=i;G[g+8>>1]=0;a:{if(!(Ra[n|0](g+48|0,g+16|0,c,d,e,g+8|0,1,g- -64|0)|0)){break a}i=L[g+104>>2];if(!(i>2];H[b>>2]=H[g+64>>2];H[b+4>>2]=h;H[b+8>>2]=H[g+72>>2];G[b+12>>1]=J[g+76>>1];L[b+16>>2]=L[g+80>>2];L[b+20>>2]=L[g+84>>2];L[b+24>>2]=L[g+88>>2];L[b+28>>2]=L[g+92>>2];L[b+32>>2]=L[g+96>>2];j=L[g+100>>2];L[b+40>>2]=i;L[b+36>>2]=j;H[b+60>>2]=H[g+124>>2];h=H[g+120>>2];H[b+52>>2]=H[g+116>>2];H[b+56>>2]=h;h=H[g+112>>2];H[b+44>>2]=H[g+108>>2];H[b+48>>2]=h;H[f>>2]=H[m+H[a+4>>2]>>2];j=i}k=k+1|0;if((l|0)!=(k|0)){continue}break}}l=H[a+20>>2];if(l){n=H[31594];k=0;while(1){m=k<<6;h=m+H[a+16>>2]|0;o=H[h+60>>2];p=H[h+56>>2];H[g+48>>2]=2;u=g,v=k7(p,o),H[u+52>>2]=v;H[g+56>>2]=Qa;q=M[h+16>>3];r=M[h+24>>3];s=M[h+32>>3];L[g+16>>2]=L[h+40>>2];L[g+20>>2]=L[h+44>>2];L[g+24>>2]=L[h+48>>2];i=L[h+52>>2];L[g+40>>2]=s;L[g+36>>2]=r;L[g+32>>2]=q;L[g+28>>2]=i;G[g>>1]=0;b:{if(!(Ra[n|0](g+48|0,g+16|0,c,d,e,g,1,g- -64|0)|0)){break b}i=L[g+104>>2];if(!(i>2];H[b>>2]=H[g+64>>2];H[b+4>>2]=h;H[b+8>>2]=H[g+72>>2];G[b+12>>1]=J[g+76>>1];L[b+16>>2]=L[g+80>>2];L[b+20>>2]=L[g+84>>2];L[b+24>>2]=L[g+88>>2];L[b+28>>2]=L[g+92>>2];L[b+32>>2]=L[g+96>>2];j=L[g+100>>2];L[b+40>>2]=i;L[b+36>>2]=j;H[b+60>>2]=H[g+124>>2];h=H[g+120>>2];H[b+52>>2]=H[g+116>>2];H[b+56>>2]=h;h=H[g+112>>2];H[b+44>>2]=H[g+108>>2];H[b+48>>2]=h;H[f>>2]=H[m+H[a+16>>2]>>2];j=i}k=k+1|0;if((l|0)!=(k|0)){continue}break}}Oa=g+128|0;return t}function II(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;i=Oa-16|0;Oa=i;l=(((c&15)!=0)<<4)+c|0;k=l&-16;h=k+N(b,40)|0;j=H[d>>2];a:{b:{if((j|0)!=H[a+60>>2]){j=H[a+48>>2];e=j+15&-16;H[i+12>>2]=e;g=H[a+52>>2];if(g>>>0>=e+h>>>0){c=e;f=c+H[a+44>>2]|0;break b}if(I[a+64|0]){break a}c=g;while(1){c=c<<1;H[a+52>>2]=c;if(h+H[i+12>>2]>>>0>c>>>0){continue}break}if(c){f=H[33808]+12|0;c=Ra[H[H[f>>2]+8>>2]](f,c,20591,14814,169)|0}else{c=0}f=R6(c,H[a+44>>2],g);c=H[a+44>>2];if(c){g=H[33808]+12|0;Ra[H[H[g>>2]+12>>2]](g,c)}H[a+44>>2]=f;c=H[i+12>>2];f=f+c|0;break b}H[a+48>>2]=j;e=j+15&-16;H[i+12>>2]=e;g=H[a+52>>2];c:{if(g>>>0>=e+h>>>0){f=H[a+44>>2];c=e;break c}if(I[a+64|0]){break a}c=g;while(1){c=c<<1;H[a+52>>2]=c;if(h+H[i+12>>2]>>>0>c>>>0){continue}break}if(c){f=H[33808]+12|0;f=Ra[H[H[f>>2]+8>>2]](f,c,20591,14814,169)|0}else{f=0}c=R6(f,H[a+44>>2],g);g=H[a+44>>2];if(g){m=H[33808]+12|0;Ra[H[H[m>>2]+12>>2]](m,g)}H[a+44>>2]=c;c=H[i+12>>2]}f=c+f|0}H[a+60>>2]=c;H[a+48>>2]=H[a+48>>2]+((h-j|0)+e|0)}d:{if(!f){break d}c=H[a+44>>2];a=H[d>>2];e=c+a|0;g=J[d+10>>1]>>>1&32752;e:{if((a|0)!=H[i+12>>2]){f:{if(g>>>0>=k>>>0){R6(f,e,g+N(J[d+6>>1],40)|0);break f}R6(R6(f,e,J[d+8>>1])+k|0,e+g|0,N(J[d+6>>1],40))}H[d>>2]=H[i+12>>2];break e}if(g>>>0>=k>>>0){break e}a=N(J[d+6>>1],40);c=f+k|0;e=e+g|0;g:{if((c|0)==(e|0)){break g}j=a+c|0;if(e-j>>>0<=0-(a<<1)>>>0){R6(c,e,a);break g}h=(c^e)&3;h:{i:{if(c>>>0>>0){if(h){break h}if(!(c&3)){break i}while(1){if(!a){break g}F[c|0]=I[e|0];e=e+1|0;a=a-1|0;c=c+1|0;if(c&3){continue}break}break i}j:{if(h){break j}if(j&3){while(1){if(!a){break g}a=a-1|0;h=c+a|0;F[h|0]=I[a+e|0];if(h&3){continue}break}}if(a>>>0<=3){break j}while(1){a=a-4|0;H[c+a>>2]=H[a+e>>2];if(a>>>0>3){continue}break}}if(!a){break g}while(1){a=a-1|0;F[c+a|0]=I[a+e|0];if(a){continue}break}break g}if(a>>>0<=3){break h}while(1){H[c>>2]=H[e>>2];e=e+4|0;c=c+4|0;a=a-4|0;if(a>>>0>3){continue}break}}if(!a){break g}while(1){F[c|0]=I[e|0];c=c+1|0;e=e+1|0;a=a-1|0;if(a){continue}break}}}if(J[d+4>>1]>>0){G[d+4>>1]=b}if(g>>>0>=k>>>0){break d}G[d+10>>1]=J[d+10>>1]&31|l<<1&65504}Oa=i+16|0;return f}function Iw(a,b){var c=0,d=O(0),e=O(0),f=O(0),g=O(0),h=0,i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=0,r=0,s=0,t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,J=0,K=0;h=H[a+336>>2]-1|0;if(h){B=H[a+236>>2];C=H[b+32>>2];r=H[b+12>>2];D=H[b+8>>2];E=H[a+344>>2];s=H[a+340>>2];F=H[a+332>>2];while(1){b=N(h,112)+B|0;k=L[b+32>>2];q=h<<5;c=D+q|0;d=L[c+24>>2];l=L[b+24>>2];e=L[c+16>>2];m=L[b+28>>2];f=L[c+20>>2];g=L[c>>2];i=L[c+4>>2];j=L[c+8>>2];c=r+q|0;t=O(O(O(O(k*d)+O(O(l*e)+O(m*f)))+O(O(O(g*L[b+80>>2])+O(i*L[b+92>>2]))+O(j*L[b+104>>2])))+L[c+24>>2]);n=L[b+20>>2];o=L[b+12>>2];p=L[b+16>>2];u=O(O(O(O(n*d)+O(O(o*e)+O(p*f)))+O(O(O(g*L[b+76>>2])+O(i*L[b+88>>2]))+O(j*L[b+100>>2])))+L[c+20>>2]);v=L[b+8>>2];w=L[b>>2];x=L[b+4>>2];y=O(O(O(O(v*d)+O(O(w*e)+O(x*f)))+O(O(O(g*L[b+72>>2])+O(i*L[b+84>>2]))+O(j*L[b+96>>2])))+L[c+16>>2]);n=O(O(O(O(O(g*v)+O(i*n))+O(j*k))+O(O(O(e*L[b+44>>2])+O(f*L[b+56>>2]))+O(d*L[b+68>>2])))+L[c+8>>2]);m=O(O(O(O(O(g*x)+O(i*p))+O(j*m))+O(O(O(e*L[b+40>>2])+O(f*L[b+52>>2]))+O(d*L[b- -64>>2])))+L[c+4>>2]);l=O(O(O(O(O(g*w)+O(i*o))+O(j*l))+O(O(O(e*L[b+36>>2])+O(f*L[b+48>>2]))+O(d*L[b+60>>2])))+L[c>>2]);k=O(0);b=N(h,80)+E|0;z=I[b+76|0];a:{if(!z){e=O(0);f=O(0);g=O(0);i=O(0);j=O(0);break a}G=(H[b+72>>2]<<2)+C|0;J=H[a+284>>2];K=H[a+272>>2];b=0;j=O(0);i=O(0);g=O(0);f=O(0);e=O(0);while(1){A=b<<2;c=(N(h,76)+K|0)+N(b,24)|0;d=O(L[A+G>>2]-O(O(O(L[c+20>>2]*n)+O(O(L[c+12>>2]*l)+O(m*L[c+16>>2])))+O(O(L[c+8>>2]*t)+O(O(L[c>>2]*y)+O(u*L[c+4>>2])))));L[(A+(N(h,160)+s|0)|0)+132>>2]=d;c=(N(h,96)+J|0)+(b<<5)|0;k=O(k+O(d*L[c+24>>2]));j=O(j+O(d*L[c+20>>2]));i=O(i+O(d*L[c+16>>2]));g=O(g+O(d*L[c+8>>2]));f=O(f+O(d*L[c+4>>2]));e=O(e+O(L[c>>2]*d));b=b+1|0;if((z|0)!=(b|0)){continue}break}}b=N(h,160)+s|0;d=L[b+120>>2];o=L[b+124>>2];p=L[b+128>>2];b=(H[(q+F|0)+24>>2]<<5)+r|0;e=O(l+e);L[b>>2]=e+L[b>>2];f=O(m+f);L[b+4>>2]=f+L[b+4>>2];g=O(n+g);L[b+8>>2]=g+L[b+8>>2];L[b+16>>2]=O(O(y+i)+O(O(o*g)-O(f*p)))+L[b+16>>2];L[b+20>>2]=O(O(u+j)+O(O(p*e)-O(g*d)))+L[b+20>>2];L[b+24>>2]=O(O(t+k)+O(O(d*f)-O(e*o)))+L[b+24>>2];h=h-1|0;if(h){continue}break}}}function sQ(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;k=Oa-16|0;Oa=k;i=H[a+28>>2];m=H[i+4688>>2];if(m){while(1){a=H[H[i+4684>>2]+(j<<2)>>2];a:{if(!(a&1)){break a}d=a&-2;h=H[d+56>>2];c=d?d+4|0:0;H[k+8>>2]=c;l=I[c+20|0];b=N(l,12)+i|0;e=H[b+56>>2];H[c+8>>2]=e;f=b+52|0;a=e;g=H[b+60>>2]&2147483647;if(!g){WN(f,64);g=H[b+60>>2]&2147483647;a=H[b+56>>2]}b:{if(a>>>0>=g>>>0){XN(f,k+8|0);break b}H[H[f>>2]+(a<<2)>>2]=c;H[b+56>>2]=a+1}if(h){b=(l<<2)+i|0;a=H[b+88>>2];if(e>>>0>a>>>0){g=H[f>>2];h=g+(e<<2)|0;c=H[h>>2];l=h;h=g;g=a<<2;h=H[h+g>>2];H[l>>2]=h;H[g+H[f>>2]>>2]=c;H[c+8>>2]=a;H[h+8>>2]=e;a=H[b+88>>2]}H[b+88>>2]=a+1}iI(H[i+2168>>2],d);b=H[d+56>>2];if(!b){break a}e=H[b+48>>2];a=H[i+976>>2];f=H[a+940>>2];c:{if(e>>>0>>0){break c}d=f&2147483647;f=(e<<1)+256>>>5&134217720;if(d>>>0>=f>>>0){break c}d=H[33808];d=Ra[H[H[d+12>>2]+8>>2]](d+12|0,f<<2,20591,14905,438)|0;c=H[a+936>>2];d:{if(!c){break d}R6(d,c,H[a+940>>2]<<2);if(H[a+940>>2]<0){break d}c=H[a+936>>2];if(!c){break d}g=H[33808];Ra[H[H[g+12>>2]+12>>2]](g+12|0,c)}c=H[a+940>>2];S6(d+(c<<2)|0,0,f-c<<2);H[a+940>>2]=f;H[a+936>>2]=d}f=e>>>5|0;d=H[a+936>>2]+(f<<2)|0;g=d;h=H[d>>2];d=1<>2]=h|d;if(!(!(I[b+8|0]&2)|!(J[b+40>>1]&4096))){b=H[a+952>>2];e:{if(e>>>0>>0){break e}e=(e<<1)+256>>>5&134217720;if(e>>>0<=(b&2147483647)>>>0){break e}b=H[33808];b=Ra[H[H[b+12>>2]+8>>2]](b+12|0,e<<2,20591,14905,438)|0;c=H[a+948>>2];f:{if(!c){break f}R6(b,c,H[a+952>>2]<<2);if(H[a+952>>2]<0){break f}c=H[a+948>>2];if(!c){break f}g=H[33808];Ra[H[H[g+12>>2]+12>>2]](g+12|0,c)}c=H[a+952>>2];S6(b+(c<<2)|0,0,e-c<<2);H[a+952>>2]=e;H[a+948>>2]=b}a=H[a+948>>2]+(f<<2)|0;H[a>>2]=d|H[a>>2]}}j=j+1|0;if((m|0)!=(j|0)){continue}break}}g=H[i+4700>>2];if(g){j=0;while(1){a=H[H[i+4696>>2]+(j<<2)>>2];if(a&1){d=a&-2;b=d?d+4|0:0;H[k+12>>2]=b;e=N(I[b+20|0],12)+i|0;a=H[e+56>>2];H[b+8>>2]=a;f=e+52|0;c=H[e+60>>2]&2147483647;if(!c){WN(f,64);c=H[e+60>>2]&2147483647;a=H[e+56>>2]}g:{if(a>>>0>=c>>>0){XN(f,k+12|0);break g}H[H[f>>2]+(a<<2)>>2]=b;H[e+56>>2]=a+1}iI(H[i+2168>>2],d)}j=j+1|0;if((g|0)!=(j|0)){continue}break}}Oa=k+16|0}function pM(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=O(0),i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;c=H[a+44>>2];f=H[a+32>>2];g=H[a+36>>2];b=H[a+40>>2];d=H[a+20>>2];j=H[a+28>>2];Qx(H[j+11848>>2],j+11836|0);a=j+11856|0;H[a>>2]=0;H[a+4>>2]=0;a:{if(!H[g>>2]){break a}i=b+168|0;a=0;if(!d){while(1){b=yq(H[c+620>>2],64);l=H[c+472>>2];m=H[c+484>>2];n=H[c+496>>2];e=H[f+56>>2];k=H[g>>2];h=L[c+56>>2];o=H[c+632>>2];p=H[c+636>>2];H[b+24>>2]=0;H[b+16>>2]=0;H[b+20>>2]=0;H[b+8>>2]=o;H[b+12>>2]=p;H[b+60>>2]=c;H[b+52>>2]=a;H[b+48>>2]=i;L[b+44>>2]=h;H[b+28>>2]=f;H[b>>2]=117628;H[b+24>>2]=1;a=a+512|0;H[b+56>>2]=a>>>0>>0?a:k;H[b+40>>2]=n+N(e,48);e=e<<6;H[b+36>>2]=e+m;H[b+32>>2]=e+l;e=H[b+16>>2];Ra[H[H[e>>2]+72>>2]](e,b);if(K[g>>2]>a>>>0){continue}break a}}while(1){b=yq(H[c+620>>2],64);l=H[c+472>>2];m=H[c+484>>2];n=H[c+496>>2];e=H[f+56>>2];k=H[g>>2];h=L[c+56>>2];o=H[c+632>>2];p=H[c+636>>2];H[b+24>>2]=0;H[b+16>>2]=0;H[b+8>>2]=o;H[b+12>>2]=p;H[b+60>>2]=c;H[b+52>>2]=a;H[b+48>>2]=i;L[b+44>>2]=h;H[b+28>>2]=f;H[b>>2]=117628;H[b+20>>2]=d;H[b+24>>2]=1;a=a+512|0;H[b+56>>2]=a>>>0>>0?a:k;H[b+40>>2]=n+N(e,48);e=e<<6;H[b+36>>2]=e+m;H[b+32>>2]=e+l;Ra[H[H[d>>2]+16>>2]](d);H[b+16>>2]=H[H[b+20>>2]+16>>2];Ra[H[H[b>>2]+20>>2]](b);if(K[g>>2]>a>>>0){continue}break}}b:{if(!(H[g+4>>2]&2147483647)){break b}a=0;if(!d){while(1){b=yq(H[c+620>>2],48);d=H[g+4>>2];h=L[c+52>>2];f=H[c+632>>2];i=H[c+636>>2];H[b+24>>2]=0;H[b+16>>2]=0;H[b+20>>2]=0;H[b+8>>2]=f;H[b+12>>2]=i;H[b+44>>2]=c;L[b+40>>2]=h;H[b+32>>2]=a;H[b+28>>2]=j;H[b>>2]=117684;H[b+24>>2]=1;d=d&2147483647;a=a- -64|0;H[b+36>>2]=a>>>0>d>>>0?d:a;d=H[b+16>>2];Ra[H[H[d>>2]+72>>2]](d,b);if((H[g+4>>2]&2147483647)>>>0>a>>>0){continue}break b}}while(1){b=yq(H[c+620>>2],48);f=H[g+4>>2];h=L[c+52>>2];i=H[c+632>>2];e=H[c+636>>2];H[b+24>>2]=0;H[b+16>>2]=0;H[b+8>>2]=i;H[b+12>>2]=e;H[b+44>>2]=c;L[b+40>>2]=h;H[b+32>>2]=a;H[b+28>>2]=j;H[b>>2]=117684;H[b+20>>2]=d;H[b+24>>2]=1;f=f&2147483647;a=a- -64|0;H[b+36>>2]=a>>>0>f>>>0?f:a;Ra[H[H[d>>2]+16>>2]](d);H[b+16>>2]=H[H[b+20>>2]+16>>2];Ra[H[H[b>>2]+20>>2]](b);if((H[g+4>>2]&2147483647)>>>0>a>>>0){continue}break}}}function mN(a,b,c){var d=O(0),e=O(0),f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0);a:{if(c){c=H[c+36>>2];g=L[c+8>>2];f=L[c+40>>2];e=O(L[c+56>>2]*O(-2));h=L[c+32>>2];l=O(L[c+48>>2]*O(-2));m=O(L[c+52>>2]*O(-2));k=L[c+36>>2];n=O(O(f*e)+O(O(h*l)+O(m*k)));d=L[c+44>>2];o=O(O(d*d)+O(-.5));i=O(O(f*n)+O(O(e*o)-O(d*O(O(h*m)-O(l*k)))));p=O(i+i);i=L[c>>2];j=O(O(h*n)+O(O(l*o)-O(d*O(O(k*e)-O(m*f)))));q=O(j+j);j=L[c+4>>2];e=O(O(k*n)+O(O(m*o)-O(d*O(O(f*l)-O(e*h)))));o=O(e+e);s=O(O(g*p)+O(O(i*q)+O(j*o)));e=L[c+12>>2];v=O(O(e*e)+O(-.5));l=O(O(h*j)+O(O(O(d*g)-O(e*f))-O(i*k)));b=H[b+92>>2];m=L[b+24>>2];t=O(m+m);m=O(O(k*g)+O(O(O(d*i)-O(e*h))-O(j*f)));n=L[b+16>>2];u=O(n+n);n=O(O(f*i)+O(O(O(d*j)-O(e*k))-O(g*h)));r=L[b+20>>2];r=O(r+r);w=O(O(l*t)+O(O(m*u)+O(n*r)));d=O(O(g*f)+O(O(j*k)+O(O(e*d)+O(h*i))));f=O(O(d*d)+O(-.5));x=O(O(L[c+24>>2]+O(O(g*s)+O(O(p*v)+O(e*O(O(i*o)-O(q*j))))))+O(O(l*w)+O(O(t*f)+O(d*O(O(m*r)-O(u*n))))));y=O(O(L[c+20>>2]+O(O(j*s)+O(O(o*v)+O(e*O(O(g*q)-O(p*i))))))+O(O(n*w)+O(O(r*f)+O(d*O(O(l*u)-O(t*m))))));p=O(O(L[c+16>>2]+O(O(i*s)+O(O(q*v)+O(e*O(O(j*p)-O(o*g))))))+O(O(m*w)+O(O(u*f)+O(d*O(O(n*t)-O(r*l))))));g=L[b+12>>2];e=L[b>>2];f=L[b+4>>2];h=L[b+8>>2];q=O(O(O(O(d*g)-O(e*m))-O(n*f))-O(l*h));o=O(O(O(m*f)+O(O(d*h)+O(l*g)))-O(e*n));s=O(O(O(l*e)+O(O(d*f)+O(n*g)))-O(h*m));g=O(O(O(n*h)+O(O(d*e)+O(m*g)))-O(f*l));break a}c=H[b+96>>2];g=L[c+8>>2];b=H[b+92>>2];d=L[b+24>>2];h=O(d+d);e=L[c>>2];d=L[b+16>>2];k=O(d+d);d=L[b+20>>2];i=O(d+d);f=L[c+4>>2];j=O(O(g*h)+O(O(e*k)+O(i*f)));d=L[c+12>>2];l=O(O(d*d)+O(-.5));x=O(L[c+24>>2]+O(O(g*j)+O(O(h*l)+O(d*O(O(e*i)-O(k*f))))));y=O(L[c+20>>2]+O(O(f*j)+O(O(i*l)+O(d*O(O(g*k)-O(h*e))))));p=O(L[c+16>>2]+O(O(e*j)+O(O(k*l)+O(d*O(O(f*h)-O(i*g))))));h=L[b+12>>2];k=L[b>>2];i=L[b+4>>2];j=L[b+8>>2];q=O(O(O(O(d*h)-O(k*e))-O(f*i))-O(g*j));o=O(O(O(e*i)+O(O(d*j)+O(g*h)))-O(k*f));s=O(O(O(g*k)+O(O(d*i)+O(f*h)))-O(j*e));g=O(O(O(f*j)+O(O(d*k)+O(e*h)))-O(i*g))}L[a+16>>2]=p;L[a+12>>2]=q;L[a+8>>2]=o;L[a+4>>2]=s;L[a>>2]=g;L[a+24>>2]=x;L[a+20>>2]=y}function BE(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;j=Oa-16|0;Oa=j;H[j+8>>2]=c;g=a+40|0;d=H[a+56>>2];a:{if(d>>>0>c>>>0){break a}b:{if(c+2048>>>0<=d>>>0){break b}e=H[a+60>>2];h=(((e+c|0)+2047>>>0)/(e>>>0)|0)-H[a+44>>2]|0;d=N(e,h)+d|0;H[a+56>>2]=d;if(!h){break b}d=0;while(1){f=e<<4;if(f){e=H[33808];f=Ra[H[H[e+12>>2]+8>>2]](e+12|0,f,20591,13653,84)|0}else{f=0}H[j+12>>2]=f;e=H[a+44>>2];c:{if(e>>>0>=(H[a+48>>2]&2147483647)>>>0){rE(g,j+12|0);break c}H[H[a+40>>2]+(e<<2)>>2]=f;H[a+44>>2]=e+1}d=d+1|0;if((h|0)!=(d|0)){e=H[a+60>>2];continue}break}d=H[a+56>>2]}f=d+31>>>5|0;if(f>>>0<=(H[a+232>>2]&2147483647)>>>0){break a}c=H[33808];c=Ra[H[H[c+12>>2]+8>>2]](c+12|0,f<<2,20591,14969,438)|0;d=H[a+228>>2];d:{if(!d){break d}R6(c,d,H[a+232>>2]<<2);if(H[a+232>>2]<0){break d}d=H[a+228>>2];if(!d){break d}e=H[33808];Ra[H[H[e+12>>2]+12>>2]](e+12|0,d)}d=H[a+232>>2];S6(c+(d<<2)|0,0,f-d<<2);H[a+232>>2]=f;H[a+228>>2]=c;c=H[j+8>>2]}e=0;f=Oa-16|0;Oa=f;e:{d=c+1|0;h=H[a+52>>2];h=d>>>0>h>>>0?d:h;i=H[g+16>>2];if(h>>>0<=i>>>0){break e}d=H[g+20>>2];k=(((h+d|0)-1>>>0)/(d>>>0)|0)-H[g+4>>2]|0;H[g+16>>2]=i+N(d,k);if(!k){break e}while(1){d=d<<4;if(d){i=H[33808]+12|0;d=Ra[H[H[i>>2]+8>>2]](i,d,20591,13653,84)|0}else{d=0}H[f+12>>2]=d;i=H[g+4>>2];f:{if(i>>>0>=(H[g+8>>2]&2147483647)>>>0){rE(g,f+12|0);break f}H[H[g>>2]+(i<<2)>>2]=d;H[g+4>>2]=i+1}e=e+1|0;if((k|0)==(e|0)){break e}d=H[g+20>>2];continue}}d=H[g+12>>2];if(h>>>0>d>>>0){while(1){e=H[g+20>>2];k=(d>>>0)/(e>>>0)|0;e=H[H[g>>2]+(k<<2)>>2]+(d-N(e,k)<<4)|0;H[e+8>>2]=-1;H[e+12>>2]=-1;G[e+4>>1]=16;H[e>>2]=0;d=d+1|0;if((h|0)!=(d|0)){continue}break}}H[g+12>>2]=h;Oa=f+16|0;f=H[a+228>>2]+(c>>>3&536870908)|0;d=H[f>>2];l=f,m=j7(-2,c)&d,H[l>>2]=m;d=H[j+8>>2];c=H[a+60>>2];f=(d>>>0)/(c>>>0)|0;g=H[H[a+40>>2]+(f<<2)>>2];h=d-N(c,f)|0;c=g+(h<<4)|0;f=J[c+4>>1];g:{h:{if(f&2){a=f&65533;break h}if(f&8){break g}e=f&65519;G[c+4>>1]=e;H[g+(h<<4)>>2]=b;a=N(b,12)+a|0;b=a+284|0;f=H[a+288>>2];i:{if(f>>>0>=(H[a+292>>2]&2147483647)>>>0){qm(b,j+8|0);e=J[c+4>>1];break i}H[H[b>>2]+(f<<2)>>2]=d;H[a+288>>2]=H[a+288>>2]+1}a=e&-73|8}G[c+4>>1]=a}Oa=j+16|0}function k6(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;d=b;b=H[b>>2]+7&-8;H[d>>2]=b+16;o=a;a=b;k=H[a>>2];b=H[a+4>>2];e=H[a+12>>2];m=e;g=Oa-32|0;Oa=g;e=e&2147483647;c=e-1006698496|0;f=e-1140785152|0;d=H[a+8>>2];a:{if((c|0)==(f|0)&d>>>0>>0|c>>>0>>0){a=d;d=m<<4|a>>>28;c=a<<4|b>>>28;e=d;a=b&268435455;b=a;if((a|0)==134217728&(k|0)!=0|a>>>0>134217728){a=e+1073741824|0;b=c+1|0;a=b?a:a+1|0;c=b;break a}a=e+1073741824|0;if(b^134217728|k){break a}b=c&1;e=b+c|0;c=e;a=b>>>0>c>>>0?a+1|0:a;break a}if(!(!d&(e|0)==2147418112?!(b|k):e>>>0<2147418112)){a=d;d=m<<4|a>>>28;c=a<<4|b>>>28;a=d&524287|2146959360;break a}c=0;a=2146435072;if(e>>>0>1140785151){break a}a=0;n=e>>>16|0;if(n>>>0<15249){break a}c=k;a=b;f=m&65535|65536;e=f;l=d;h=d;j=n-15233|0;b:{if(j&64){f=c;d=j+-64|0;c=d&31;if((d&63)>>>0>=32){a=f<>>32-c|a<>>0>=32){d=h<>>32-i|f<>>0>=32){d=0;h=a>>>i|0}else{d=a>>>i|0;h=((1<>>i}h=p|h;f=d|f;i=j&31;if((j&63)>>>0>=32){d=c<>>32-i|a<>2]=c;H[g+20>>2]=a;H[g+24>>2]=h;H[g+28>>2]=f;d=15361-n|0;c:{if(d&64){b=l;a=d+-64|0;f=a&31;if((a&63)>>>0>=32){d=0;k=e>>>f|0}else{d=e>>>f|0;k=((1<>>f}b=d;l=0;e=0;break c}if(!d){break c}f=l;a=64-d|0;c=a&31;if((a&63)>>>0>=32){a=f<>>32-c|e<>>0>=32){d=0;b=b>>>j|0}else{d=b>>>j|0;b=((1<>>j}k=h|b;b=d|f;d=l;f=a&31;if((a&63)>>>0>=32){a=0;l=e>>>f|0}else{a=e>>>f|0;l=((1<>>f}e=a}H[g>>2]=k;H[g+4>>2]=b;H[g+8>>2]=l;H[g+12>>2]=e;b=H[g+8>>2];e=H[g+4>>2];c=b<<4|e>>>28;a=H[g+12>>2]<<4|b>>>28;e=e&268435455;b=H[g>>2]|(H[g+16>>2]|H[g+24>>2]|(H[g+20>>2]|H[g+28>>2]))!=0;if((e|0)==134217728&(b|0)!=0|e>>>0>134217728){b=c+1|0;a=b?a:a+1|0;c=b;break a}if(e^134217728|b){break a}b=c+(c&1)|0;a=b>>>0>>0?a+1|0:a;c=b}Oa=g+32|0;x(0,c|0);x(1,m&-2147483648|a);q=o,r=+z(),M[q>>3]=r}function AY(a,b,c,d,e,f,g){var h=0,i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=0;h=Oa-3616|0;Oa=h;j=L[d+8>>2];i=O(L[c+24>>2]-L[d+24>>2]);k=O(i+i);l=L[d>>2];i=O(L[c+16>>2]-L[d+16>>2]);m=O(i+i);i=O(L[c+20>>2]-L[d+20>>2]);n=O(i+i);o=L[d+4>>2];p=O(O(j*k)+O(O(l*m)+O(n*o)));i=L[d+12>>2];q=O(O(i*i)+O(-.5));r=O(O(j*p)+O(O(k*q)-O(i*O(O(l*n)-O(m*o)))));L[h+3608>>2]=r;s=O(O(o*p)+O(O(n*q)-O(i*O(O(j*m)-O(k*l)))));L[h+3604>>2]=s;j=O(O(l*p)+O(O(m*q)-O(i*O(O(o*k)-O(n*j)))));L[h+3600>>2]=j;i=O(L[a+4>>2]+L[e>>2]);e=H[b+40>>2];a:{if(!(L[b+4>>2]!=O(1)|L[b+8>>2]!=O(1)|L[b+12>>2]!=O(1))){H[h+3504>>2]=g;H[h+2732>>2]=0;H[h+168>>2]=0;L[h+164>>2]=i*i;H[h+156>>2]=f;H[h+152>>2]=d;H[h+148>>2]=c;H[h+3508>>2]=e;H[h+144>>2]=a;H[h+160>>2]=h+3600;H[h+136>>2]=127444;H[h+140>>2]=2;L[h+3576>>2]=i;L[h+3572>>2]=i;L[h+3564>>2]=r;L[h+3560>>2]=s;H[h+3552>>2]=1065353216;a=h+3536|0;H[a>>2]=1065353216;H[a+4>>2]=0;L[h+3568>>2]=i;L[h+3556>>2]=j;H[h+3544>>2]=0;H[h+3548>>2]=0;H[h+3528>>2]=0;H[h+3532>>2]=0;H[h+3520>>2]=1065353216;H[h+3524>>2]=0;Ra[H[(J[e+4>>1]<<2)+127456>>2]](e,h+3520|0,h+136|0,1,1);break a}t=h+3520|0;yW(t,b+4|0,b+16|0);H[h+3504>>2]=g;H[h+2732>>2]=0;H[h+168>>2]=0;L[h+164>>2]=i*i;H[h+156>>2]=f;H[h+152>>2]=d;H[h+148>>2]=c;H[h+3508>>2]=e;H[h+160>>2]=h+3600;H[h+144>>2]=a;H[h+136>>2]=127484;H[h+3512>>2]=t;H[h+140>>2]=2;L[h+128>>2]=r;L[h+124>>2]=s;L[h+120>>2]=j;L[h+112>>2]=i;L[h+108>>2]=i;L[h+104>>2]=i;H[h+96>>2]=1065353216;H[h+80>>2]=1065353216;H[h+84>>2]=0;H[h+88>>2]=0;H[h+92>>2]=0;H[h+72>>2]=0;H[h+76>>2]=0;H[h+64>>2]=1065353216;H[h+68>>2]=0;aY(t,h+120|0,h+104|0,h- -64|0);a=H[h+88>>2];H[h+20>>2]=H[h+84>>2];H[h+24>>2]=a;a=H[h+96>>2];H[h+28>>2]=H[h+92>>2];H[h+32>>2]=a;L[h+44>>2]=L[h+128>>2];L[h+56>>2]=L[h+112>>2];L[h>>2]=L[h+64>>2];a=H[h+72>>2];H[h+4>>2]=H[h+68>>2];H[h+8>>2]=a;a=H[h+80>>2];H[h+12>>2]=H[h+76>>2];H[h+16>>2]=a;a=H[h+124>>2];H[h+36>>2]=H[h+120>>2];H[h+40>>2]=a;a=H[h+108>>2];H[h+48>>2]=H[h+104>>2];H[h+52>>2]=a;Ra[H[(J[e+4>>1]<<2)+127456>>2]](e,h,h+136|0,1,1)}H[h+136>>2]=127444;BY(h+144|0);Oa=h+3616|0;return H[f+4096>>2]!=0}function xw(a){var b=O(0),c=0,d=O(0),e=O(0),f=O(0),g=0,h=O(0),i=O(0),j=O(0),k=O(0),l=0,m=O(0),n=O(0),o=O(0),p=O(0),q=0,r=O(0),s=O(0),t=O(0),u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;q=1;w=H[a+336>>2];if(w>>>0>1){A=H[a+272>>2];B=H[a+260>>2];C=H[a+340>>2];x=H[a+332>>2];while(1){g=N(q,160)+C|0;l=(q<<5)+x|0;c=H[l+16>>2];i=L[c+8>>2];l=H[((H[l+24>>2]<<5)+x|0)+16>>2];h=O(L[c+24>>2]-L[l+24>>2]);n=O(h+h);h=L[c>>2];f=O(L[c+16>>2]-L[l+16>>2]);o=O(f+f);f=O(L[c+20>>2]-L[l+20>>2]);p=O(f+f);f=L[c+4>>2];b=O(O(i*n)+O(O(h*o)+O(p*f)));j=L[c+12>>2];k=O(O(j*j)+O(-.5));L[g+116>>2]=O(i*b)+O(O(n*k)-O(j*O(O(h*p)-O(o*f))));L[g+112>>2]=O(f*b)+O(O(p*k)-O(j*O(O(i*o)-O(n*h))));L[g+108>>2]=O(h*b)+O(O(o*k)-O(j*O(O(f*n)-O(p*i))));n=L[l+16>>2];o=L[c+16>>2];p=L[l+20>>2];b=L[c+20>>2];L[g+128>>2]=L[c+24>>2]-L[l+24>>2];L[g+124>>2]=b-p;L[g+120>>2]=o-n;c=N(q,76);y=c+A|0;z=c+B|0;v=H[z+72>>2];H[y+72>>2]=v;if(v){n=O(-f);o=O(-h);p=O(-i);D=H[a+348>>2];E=H[a+344>>2];l=0;while(1){u=N(l,24);c=z+u|0;m=L[c+20>>2];s=L[c+16>>2];t=L[c+12>>2];g=u+y|0;b=L[c+8>>2];b=O(b+b);d=L[c>>2];d=O(d+d);e=L[c+4>>2];e=O(e+e);r=O(O(i*b)+O(O(h*d)+O(f*e)));L[g+8>>2]=O(i*r)+O(O(b*k)+O(j*O(O(h*e)+O(d*n))));L[g+4>>2]=O(f*r)+O(O(e*k)+O(j*O(O(i*d)+O(b*o))));L[g>>2]=O(h*r)+O(O(d*k)+O(j*O(O(f*b)+O(e*p))));b=O(m+m);d=O(t+t);e=O(s+s);m=O(O(i*b)+O(O(h*d)+O(f*e)));L[g+20>>2]=O(i*m)+O(O(b*k)+O(j*O(O(h*e)+O(d*n))));L[g+16>>2]=O(f*m)+O(O(e*k)+O(j*O(O(i*d)+O(b*o))));L[g+12>>2]=O(h*m)+O(O(d*k)+O(j*O(O(f*b)+O(e*p))));c=(N(q,80)+E|0)+u|0;m=L[c+8>>2];s=L[c+4>>2];t=L[c>>2];g=(N(q,96)+D|0)+u|0;b=L[c+20>>2];b=O(b+b);d=L[c+12>>2];d=O(d+d);e=L[c+16>>2];e=O(e+e);r=O(O(i*b)+O(O(h*d)+O(f*e)));L[g+44>>2]=O(i*r)+O(O(b*k)+O(j*O(O(h*e)+O(d*n))));L[g+40>>2]=O(f*r)+O(O(e*k)+O(j*O(O(i*d)+O(b*o))));L[g+36>>2]=O(h*r)+O(O(d*k)+O(j*O(O(f*b)+O(e*p))));b=O(m+m);d=O(t+t);e=O(s+s);m=O(O(i*b)+O(O(h*d)+O(f*e)));L[g+32>>2]=O(i*m)+O(O(b*k)+O(j*O(O(h*e)+O(d*n))));L[g+28>>2]=O(f*m)+O(O(e*k)+O(j*O(O(i*d)+O(b*o))));L[g+24>>2]=O(h*m)+O(O(d*k)+O(j*O(O(f*b)+O(e*p))));l=l+1|0;if((v|0)!=(l|0)){continue}break}}q=q+1|0;if((w|0)!=(q|0)){continue}break}}}function mT(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=O(0),n=O(0),o=0,p=0,q=O(0);l=Oa-16|0;Oa=l;if(H[a+72>>2]){while(1){e=H[H[a+68>>2]+(j<<2)>>2];M[e+432>>3]=M[e+432>>3]-+L[b>>2];M[e+440>>3]=M[e+440>>3]-+L[b+4>>2];M[e+448>>3]=M[e+448>>3]-+L[b+8>>2];c=e+88|0;m=L[b>>2];f=+m;M[c+48>>3]=M[c+48>>3]-f;n=L[b+4>>2];g=+n;M[c+56>>3]=M[c+56>>3]-g;q=L[b+8>>2];M[c+72>>3]=M[c+72>>3]-f;M[c+80>>3]=M[c+80>>3]-g;d=c- -64|0;f=+q;M[d>>3]=M[d>>3]-f;M[c+88>>3]=M[c+88>>3]-f;a:{b:{if(H[c+152>>2]){if(J[H[c+164>>2]+4>>1]==6){break a}L[c+204>>2]=L[c+204>>2]-m;L[c+208>>2]=L[c+208>>2]-n;d=c+212|0;break b}if(H[c+176>>2]==-1){break a}L[c+228>>2]=L[c+228>>2]-m;L[c+232>>2]=L[c+232>>2]-n;d=c+236|0}L[d>>2]=L[d>>2]-q}d=H[c+36>>2];if(d){c=H[c+32>>2];d=c+(d<<2)|0;f=+L[b+8>>2];g=+L[b+4>>2];h=+L[b>>2];while(1){M[c+12>>3]=M[c+12>>3]-h;M[c+20>>3]=M[c+20>>3]-g;M[c+28>>3]=M[c+28>>3]-f;c=H[(H[c>>2]<<2)+86160>>2]+c|0;if((d|0)!=(c|0)){continue}break}}j=j+1|0;if(j>>>0>2]){continue}break}}if(H[a+124>>2]){j=0;while(1){c=0;e=0;f=+L[b+8>>2];g=+L[b+4>>2];h=+L[b>>2];k=H[H[a+120>>2]+(j<<2)>>2];i=H[k+8>>2];if(i){o=H[k+4>>2];if((i|0)!=1){p=i&-2;while(1){d=o+N(c,72)|0;M[d+16>>3]=M[d+16>>3]-h;M[d+24>>3]=M[d+24>>3]-g;M[d+32>>3]=M[d+32>>3]-f;d=o+N(c|1,72)|0;M[d+16>>3]=M[d+16>>3]-h;M[d+24>>3]=M[d+24>>3]-g;M[d+32>>3]=M[d+32>>3]-f;c=c+2|0;e=e+2|0;if((p|0)!=(e|0)){continue}break}}if(i&1){c=o+N(c,72)|0;M[c+16>>3]=M[c+16>>3]-h;M[c+24>>3]=M[c+24>>3]-g;M[c+32>>3]=M[c+32>>3]-f}g=+L[b+4>>2];h=+L[b>>2];f=+L[b+8>>2]}i=H[k+20>>2];c:{if(!i){break c}k=H[k+16>>2];c=0;if((i|0)!=1){o=i&-2;e=0;while(1){p=c<<6;d=p+k|0;M[d+16>>3]=M[d+16>>3]-h;M[d+24>>3]=M[d+24>>3]-g;M[d+32>>3]=M[d+32>>3]-f;d=k+(p|64)|0;M[d+16>>3]=M[d+16>>3]-h;M[d+24>>3]=M[d+24>>3]-g;M[d+32>>3]=M[d+32>>3]-f;c=c+2|0;e=e+2|0;if((o|0)!=(e|0)){continue}break}}if(!(i&1)){break c}c=k+(c<<6)|0;M[c+16>>3]=M[c+16>>3]-h;M[c+24>>3]=M[c+24>>3]-g;M[c+32>>3]=M[c+32>>3]-f}j=j+1|0;if(j>>>0>2]){continue}break}}a=H[a+12>>2];if(a){m=L[b>>2];n=L[b+4>>2];L[l+8>>2]=-L[b+8>>2];L[l+4>>2]=-n;L[l>>2]=-m;nr(a,l)}Oa=l+16|0}function pm(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;H[a>>2]=106692;b=H[a+8>>2];a:{if(!b){break a}f=H[a+4>>2];if((b|0)!=1){i=b&-2;while(1){g=c<<2;h=g+f|0;e=H[h>>2];if(e){Ra[H[H[e>>2]+4>>2]](e)}H[h>>2]=0;g=f+(g|4)|0;e=H[g>>2];if(e){Ra[H[H[e>>2]+4>>2]](e)}H[g>>2]=0;c=c+2|0;d=d+2|0;if((i|0)!=(d|0)){continue}break}}if(!(b&1)){break a}b=f+(c<<2)|0;c=H[b>>2];if(c){Ra[H[H[c>>2]+4>>2]](c)}H[b>>2]=0}c=0;H[a+8>>2]=0;d=0;e=Oa-16|0;Oa=e;b=a+24|0;f=H[b+20>>2];if(f){h=b+4|0;while(1){i=H[b+16>>2];g=d<<2;j=H[i+g>>2];if(j){f=J[j+52>>1];H[e+12>>2]=f;b:{if((f|0)==(H[b>>2]-1|0)){H[b>>2]=f;break b}j=H[b+8>>2];if(j>>>0>=(H[b+12>>2]&2147483647)>>>0){qm(h,e+12|0);i=H[b+16>>2];break b}H[H[b+4>>2]+(j<<2)>>2]=f;H[b+8>>2]=H[b+8>>2]+1}f=H[g+i>>2];Ra[H[H[f>>2]>>2]](f);H[g+H[b+16>>2]>>2]=0;f=H[b+20>>2]}d=d+1|0;if(d>>>0>>0){continue}break}}b=H[b+16>>2];if(b){d=H[33808]+12|0;Ra[H[H[d>>2]+12>>2]](d,b)}Oa=e+16|0;d=H[a+92>>2];c:{if(!d){break c}f=H[a+60>>2];while(1){b=H[(f+(c<<3)|0)+4>>2];if(b){e=H[b>>2];if(e){i=H[33808];Ra[H[H[i+12>>2]+12>>2]](i+12|0,e)}e=H[33808];Ra[H[H[e+12>>2]+12>>2]](e+12|0,b)}c=c+1|0;if((d|0)!=(c|0)){continue}break}c=H[a+76>>2];if(!c|!H[a+92>>2]){break c}S6(H[a+68>>2],255,c<<2);c=0;b=H[a- -64>>2];d=H[a+72>>2];e=d-1|0;if(e){f=0;if(d-2>>>0>=3){i=e&-4;d=0;while(1){g=c|1;H[b+(c<<2)>>2]=g;h=b+(g<<2)|0;g=c|2;H[h>>2]=g;h=b+(g<<2)|0;g=c|3;H[h>>2]=g;c=c+4|0;H[b+(g<<2)>>2]=c;d=d+4|0;if((i|0)!=(d|0)){continue}break}}d=e&3;if(d){while(1){h=b+(c<<2)|0;c=c+1|0;H[h>>2]=c;f=f+1|0;if((d|0)!=(f|0)){continue}break}}h=H[a+72>>2]-1|0}else{h=0}H[b+(h<<2)>>2]=-1;H[a+92>>2]=0;H[a+84>>2]=0}c=H[a+104>>2];if(c){b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,c)}c=H[a+56>>2];if(c){b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,c)}c=H[a+52>>2];if(c){b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,c)}c=H[a+36>>2];d:{if((c|0)<0|!(c&2147483647)){break d}c=H[a+28>>2];if(!c){break d}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,c)}H[33794]=0;c=H[a+12>>2];e:{if((c|0)<0|!(c&2147483647)){break e}c=H[a+4>>2];if(!c){break e}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,c)}return a|0}function gv(a,b,c){var d=O(0),e=O(0),f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),F=O(0),G=O(0),I=O(0),J=O(0),K=O(0);A=L[c+100>>2];B=L[c+104>>2];C=L[c+112>>2];D=L[c+116>>2];E=L[c+120>>2];F=L[c+128>>2];G=L[c+132>>2];I=L[c+136>>2];s=L[c+52>>2];t=L[c+56>>2];u=L[c+68>>2];v=L[c+72>>2];o=L[c+84>>2];p=L[c+88>>2];w=L[c- -64>>2];x=L[c+80>>2];h=L[c+20>>2];i=L[c+24>>2];q=L[c+28>>2];g=L[c+36>>2];z=L[c+40>>2];r=L[c+44>>2];J=L[c+96>>2];y=L[c+48>>2];d=L[b+8>>2];e=L[b>>2];f=L[b+4>>2];j=L[c>>2];k=L[c+4>>2];l=L[c+8>>2];K=L[c+12>>2];m=L[c+16>>2];n=L[c+32>>2];H[a+140>>2]=0;H[a+124>>2]=0;H[a+108>>2]=0;H[a+92>>2]=0;H[a+76>>2]=0;H[a+60>>2]=0;L[a+44>>2]=r;L[a+40>>2]=z;L[a+36>>2]=g;L[a+32>>2]=n;L[a+28>>2]=q;L[a+24>>2]=i;L[a+20>>2]=h;L[a+16>>2]=m;L[a+12>>2]=K;L[a+8>>2]=l;L[a+4>>2]=k;L[a>>2]=j;q=O(O(e*m)-O(f*j));L[a+80>>2]=x+q;j=O(O(d*j)-O(e*n));L[a- -64>>2]=w+j;m=O(O(f*n)-O(d*m));L[a+48>>2]=y+m;n=O(O(e*i)-O(f*l));L[a+88>>2]=p+n;r=O(O(e*h)-O(f*k));L[a+84>>2]=o+r;l=O(O(d*l)-O(e*z));L[a+72>>2]=v+l;k=O(O(d*k)-O(e*g));L[a+68>>2]=u+k;i=O(O(f*z)-O(d*i));L[a+56>>2]=t+i;h=O(O(f*g)-O(d*h));L[a+52>>2]=s+h;g=O(O(O(O(e*o)+O(p*O(0)))-O(f*x))+O(O(O(n*O(0))+O(O(e*r)-O(f*q)))*O(.5)));L[a+136>>2]=I+O(g+g);g=O(O(O(O(d*x)+O(O(o*O(0))-O(e*p)))+O(O(O(O(d*q)+O(r*O(0)))-O(e*n))*O(.5)))+O(O(O(O(e*u)+O(v*O(0)))-O(f*w))+O(O(O(l*O(0))+O(O(e*k)-O(f*j)))*O(.5))));L[a+132>>2]=G+g;o=O(O(O(O(x*O(0))+O(O(f*p)-O(d*o)))+O(O(O(f*n)+O(O(q*O(0))-O(d*r)))*O(.5)))+O(O(O(O(e*s)+O(t*O(0)))-O(f*y))+O(O(O(i*O(0))+O(O(e*h)-O(f*m)))*O(.5))));L[a+128>>2]=F+o;L[a+120>>2]=E+g;p=O(O(O(d*w)+O(O(u*O(0))-O(e*v)))+O(O(O(O(d*j)+O(k*O(0)))-O(e*l))*O(.5)));L[a+116>>2]=D+O(p+p);e=O(O(O(O(d*y)+O(O(s*O(0))-O(e*t)))+O(O(O(O(d*m)+O(h*O(0)))-O(e*i))*O(.5)))+O(O(O(w*O(0))+O(O(f*v)-O(d*u)))+O(O(O(f*l)+O(O(j*O(0))-O(d*k)))*O(.5))));L[a+112>>2]=C+e;L[a+104>>2]=B+o;L[a+100>>2]=A+e;d=O(O(O(y*O(0))+O(O(f*t)-O(d*s)))+O(O(O(f*i)+O(O(m*O(0))-O(d*h)))*O(.5)));L[a+96>>2]=J+O(d+d)}function LC(a,b,c,d,e){var f=0,g=0,h=0,i=O(0),j=O(0),k=O(0),l=O(0),m=0,n=0,o=O(0),p=O(0),q=O(0),r=O(0),s=0,t=0;f=Oa-1184|0;Oa=f;F[f+1168|0]=1;H[f+1176>>2]=256;H[f+1180>>2]=256;H[f+1172>>2]=f+144;s=H[c+8>>2];H[f+144>>2]=s;m=1;a:while(1){m=m-1|0;g=H[H[f+1172>>2]+(m<<2)>>2];i=L[g>>2];j=L[g+12>>2];o=O(i+j);i=O(j-i);k=L[g+8>>2];l=L[g+20>>2];j=O(k+l);p=L[g+4>>2];q=L[g+16>>2];r=O(p+q);k=O(l-k);l=O(q-p);while(1){L[f+132>>2]=r*O(.5);L[f+128>>2]=o*O(.5);H[f+140>>2]=0;L[f+136>>2]=j*O(.5);L[f+116>>2]=l*O(.5);L[f+112>>2]=i*O(.5);H[f+124>>2]=0;L[f+120>>2]=k*O(.5);h=H[f+132>>2];H[f+48>>2]=H[f+128>>2];H[f+52>>2]=h;h=H[f+140>>2];H[f+56>>2]=H[f+136>>2];H[f+60>>2]=h;h=H[f+116>>2];H[f+32>>2]=H[f+112>>2];H[f+36>>2]=h;h=H[f+124>>2];H[f+40>>2]=H[f+120>>2];H[f+44>>2]=h;b:{c:{d:{if(!PC(d,f+48|0,f+32|0)){break d}g=H[g+24>>2];n=g>>>1|0;if(!(g&1)){break b}h=H[c>>2]+(g>>>3&536870908)|0;e:{f:{n=n&15;switch(n|0){case 0:break d;case 1:break f;default:break e}}if(Ra[H[H[e>>2]>>2]](e,f+76|0,(H[h>>2]<<3)+a|0)|0){break d}a=0;break c}while(1){t=H[h>>2];g=N(t,24)+b|0;o=L[g+8>>2];i=L[g+20>>2];j=L[g+4>>2];r=L[g+16>>2];k=L[g>>2];l=L[g+12>>2];L[f+96>>2]=O(k+l)*O(.5);L[f+100>>2]=O(j+r)*O(.5);H[f+108>>2]=0;L[f+104>>2]=O(o+i)*O(.5);L[f+80>>2]=O(l-k)*O(.5);L[f+84>>2]=O(r-j)*O(.5);H[f+92>>2]=0;L[f+88>>2]=O(i-o)*O(.5);g=H[f+100>>2];H[f+16>>2]=H[f+96>>2];H[f+20>>2]=g;g=H[f+108>>2];H[f+24>>2]=H[f+104>>2];H[f+28>>2]=g;g=H[f+84>>2];H[f>>2]=H[f+80>>2];H[f+4>>2]=g;g=H[f+92>>2];H[f+8>>2]=H[f+88>>2];H[f+12>>2]=g;g:{if(!PC(d,f+16|0,f)){break g}if(Ra[H[H[e>>2]>>2]](e,f+76|0,(t<<3)+a|0)|0){break g}a=0;break c}h=h+4|0;n=n-1|0;if(n){continue}break}}if(m){continue a}a=1}b=H[f+1180>>2];h:{if((b|0)<0|!(b&2147483647)){break h}b=H[f+1172>>2];if((b|0)==(f+144|0)|!b){break h}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}Oa=f+1184|0;return a}g=N(n,28)+s|0;H[H[f+1172>>2]+(m<<2)>>2]=g+28;m=m+1|0;if((m|0)==(H[f+1180>>2]&2147483647)){QC(f+144|0,m<<1)}i=L[g>>2];j=L[g+12>>2];o=O(i+j);i=O(j-i);k=L[g+8>>2];l=L[g+20>>2];j=O(k+l);p=L[g+4>>2];q=L[g+16>>2];r=O(p+q);k=O(l-k);l=O(q-p);continue}}}function xi(a,b,c){var d=0,e=O(0),f=0,g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0);d=Oa-96|0;Oa=d;rt(a+20|0,b,c,a);f=H[a+52>>2];a:{if(!(F[(f&1?H[a+56>>2]:(H[((f>>>22&60)+76348|0)+12>>2]+a|0)+56|0)|0]&1)){break a}b:{c:{d:{if(!(!(I[c+5580|0]&32)|!I[c+5248|0])){g=L[c+5152>>2];break d}g=L[H[c+1008>>2]+1032>>2];if(!(I[c+5580|0]&32)){break c}}if(!I[c+5258|0]){break c}e=L[c+5192>>2];break b}e=L[H[c+1008>>2]+1072>>2]}e=O(g*e);if(e!=O(0)){f=d+32|0;Ra[H[H[a>>2]+76>>2]](f,a);f=VT(b,f);H[d+20>>2]=-16776961;H[d+12>>2]=-65536;H[d+16>>2]=-16711936;L[d+8>>2]=e;L[d+4>>2]=e;L[d>>2]=e;ZT(f,d)}if(!(I[c+5580|0]&32)|!I[c+5250|0]){e=L[H[c+1008>>2]+1040>>2]}else{e=L[c+5160>>2]}e=O(g*e);if(e!=O(0)){f=VT(b,a+256|0);H[d+52>>2]=-16776961;H[d+44>>2]=-65536;H[d+48>>2]=-16711936;L[d+40>>2]=e;L[d+36>>2]=e;L[d+32>>2]=e;ZT(f,d+32|0)}if(!(I[c+5580|0]&32)|!I[c+5252|0]){e=L[H[c+1008>>2]+1048>>2]}else{e=L[c+5168>>2]}e=O(g*e);if(e!=O(0)){H[b+4>>2]=16777215;H[d+44>>2]=0;H[d+48>>2]=0;H[d+56>>2]=0;H[d+60>>2]=0;H[d+52>>2]=1065353216;f=d- -64|0;H[f>>2]=0;H[f+4>>2]=0;H[d+76>>2]=0;H[d+80>>2]=0;H[d+72>>2]=1065353216;H[d+84>>2]=0;H[d+88>>2]=0;H[d+92>>2]=1065353216;H[d+36>>2]=0;H[d+40>>2]=0;H[d+32>>2]=1065353216;f=UT(b,d+32|0);k=L[a+284>>2];l=L[a+292>>2];i=L[a+288>>2];h=L[a+272>>2];L[d>>2]=h;m=L[a+276>>2];L[d+4>>2]=m;j=L[a+280>>2];L[d+16>>2]=m+O(e*i);L[d+20>>2]=j+O(e*l);L[d+24>>2]=e*O(.20000000298023224);L[d+12>>2]=h+O(e*k);L[d+8>>2]=j;YT(f,d)}if(!(I[c+5580|0]&32)|!I[c+5253|0]){e=L[H[c+1008>>2]+1052>>2]}else{e=L[c+5172>>2]}g=O(g*e);if(g==O(0)){break a}H[b+4>>2]=0;H[d+44>>2]=0;H[d+48>>2]=0;H[d+56>>2]=0;H[d+60>>2]=0;H[d+52>>2]=1065353216;c=d- -64|0;H[c>>2]=0;H[c+4>>2]=0;H[d+76>>2]=0;H[d+80>>2]=0;H[d+72>>2]=1065353216;H[d+84>>2]=0;H[d+88>>2]=0;H[d+92>>2]=1065353216;H[d+36>>2]=0;H[d+40>>2]=0;H[d+32>>2]=1065353216;b=UT(b,d+32|0);j=L[a+296>>2];k=L[a+304>>2];l=L[a+300>>2];i=L[a+272>>2];L[d>>2]=i;h=L[a+276>>2];L[d+4>>2]=h;e=L[a+280>>2];L[d+16>>2]=h+O(g*l);L[d+20>>2]=e+O(g*k);L[d+24>>2]=g*O(.20000000298023224);L[d+12>>2]=i+O(g*j);L[d+8>>2]=e;YT(b,d)}Oa=d+96|0}function bw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=0,n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=0,A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),F=O(0),G=O(0),J=O(0),K=O(0),M=O(0),P=O(0),Q=O(0),R=O(0),S=O(0),T=0,U=0,V=0,W=0;d=Oa+-64|0;Oa=d;f=H[b+444>>2];m=H[b+264>>2];e=I[H[b+476>>2]];H[d+56>>2]=0;H[d+60>>2]=0;H[d+48>>2]=0;H[d+52>>2]=0;H[d+40>>2]=0;H[d+44>>2]=0;H[d+32>>2]=0;H[d+36>>2]=0;if(!(e&1)){A=L[b+560>>2];B=L[b+572>>2];C=L[b+584>>2];D=L[b+564>>2];E=L[b+576>>2];F=L[b+588>>2];G=L[b+568>>2];J=L[b+580>>2];K=L[b+592>>2];M=L[b+620>>2];P=L[b+608>>2];Q=L[b+596>>2];r=L[b+524>>2];n=L[b+528>>2];o=L[b+532>>2];p=L[b+624>>2];R=L[b+612>>2];S=L[b+600>>2];t=L[b+536>>2];u=L[b+540>>2];v=L[b+544>>2];w=L[b+548>>2];q=L[m+16>>2];i=O(-q);x=L[b+552>>2];h=L[m+20>>2];y=L[b+556>>2];g=L[m+24>>2];j=O(-L[m+4>>2]);k=L[m>>2];l=L[m+8>>2];s=O(O(O(O(w*i)-O(x*h))-O(y*g))+O(O(O(L[b+616>>2]*j)-O(k*L[b+604>>2]))-O(l*L[b+628>>2])));L[d+56>>2]=s;p=O(O(O(O(t*i)-O(u*h))-O(v*g))+O(O(O(R*j)-O(k*S))-O(l*p)));L[d+52>>2]=p;i=O(O(O(O(r*i)-O(n*h))-O(o*g))+O(O(O(P*j)-O(k*Q))-O(l*M)));L[d+48>>2]=i;h=O(-h);o=O(O(O(O(v*j)-O(k*o))-O(l*y))+O(O(O(J*h)-O(q*G))-O(g*K)));L[d+40>>2]=o;n=O(O(O(O(u*j)-O(k*n))-O(l*x))+O(O(O(E*h)-O(q*D))-O(g*F)));L[d+36>>2]=n;g=O(O(O(O(t*j)-O(k*r))-O(l*w))+O(O(O(B*h)-O(q*A))-O(g*C)));L[d+32>>2]=g}z=c<<5;f=z+f|0;e=H[f+8>>2];c=e-1|0;f=H[f+12>>2]-!e|0;if(c|f){while(1){T=H[b+452>>2];e=c;e=(U=f7(e),V=f7(f)+32|0,W=e,W?U:V);cw(d,(T+N(e,160)|0)+120|0,H[b+348>>2]+N(e,112)|0,H[b+360>>2]+N(e,36)|0,H[b+384>>2]+N(e,76)|0,(e<<5)+m|0,d+32|0);H[d+44>>2]=0;H[d+60>>2]=0;g=L[d>>2];L[d+32>>2]=g;n=L[d+4>>2];L[d+36>>2]=n;o=L[d+8>>2];L[d+40>>2]=o;i=L[d+16>>2];L[d+48>>2]=i;p=L[d+20>>2];L[d+52>>2]=p;s=L[d+24>>2];L[d+56>>2]=s;e=c;c=e-1&e;f=f&f-!e;if(c|f){continue}break}}b=z+H[b+228>>2]|0;j=L[b+20>>2];k=L[b+24>>2];l=L[b+16>>2];q=L[b>>2];h=L[b+4>>2];r=L[b+8>>2];H[a+28>>2]=0;L[a+24>>2]=r+o;L[a+20>>2]=h+n;L[a+16>>2]=q+g;H[a+12>>2]=0;L[a>>2]=l+i;L[a+8>>2]=k+s;L[a+4>>2]=j+p;Oa=d- -64|0}function ZX(a,b,c,d,e,f,g,h,i){var j=0,k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=0,u=0,v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),F=O(0),G=O(0),I=0,J=O(0),K=O(0),M=O(0),P=O(0),Q=O(0),R=O(0);j=Oa-112|0;Oa=j;l=L[d>>2];k=L[d+4>>2];L[j+40>>2]=O(1)/L[d+8>>2];L[j+36>>2]=O(1)/k;L[j+32>>2]=O(1)/l;L[j+44>>2]=L[d+12>>2];L[j+48>>2]=L[d+16>>2];L[j+52>>2]=L[d+20>>2];L[j+56>>2]=L[d+24>>2];k=L[b+8>>2];p=O(L[b+24>>2]*O(-2));m=L[b>>2];n=O(L[b+16>>2]*O(-2));q=O(L[b+20>>2]*O(-2));o=L[b+4>>2];r=O(O(k*p)+O(O(m*n)+O(q*o)));l=L[b+12>>2];s=O(O(l*l)+O(-.5));L[j+24>>2]=O(k*r)+O(O(p*s)-O(l*O(O(m*q)-O(n*o))));L[j+20>>2]=O(o*r)+O(O(q*s)-O(l*O(O(k*n)-O(p*m))));L[j+12>>2]=l;L[j+8>>2]=-k;L[j+4>>2]=-o;L[j>>2]=-m;L[j+16>>2]=O(m*r)+O(O(n*s)-O(l*O(O(o*p)-O(q*k))));ZV(j- -64|0,j+32|0,j);a:{if(!e){break a}u=H[c+16>>2];if(!u){break a}q=L[j+84>>2];l=O(-L[h+4>>2]);k=L[h>>2];r=L[j+72>>2];m=L[h+8>>2];s=L[j+96>>2];D=O(O(O(q*l)-O(k*r))-O(m*s));v=L[j+80>>2];w=L[j+68>>2];x=L[j+92>>2];E=O(O(O(v*l)-O(k*w))-O(m*x));y=L[j+76>>2];z=L[j+64>>2];A=L[j+88>>2];F=O(O(O(y*l)-O(k*z))-O(m*A));G=O(O(g+i)+O(-9999999747378752e-21));I=H[c+24>>2];J=L[j+108>>2];K=L[j+104>>2];M=L[j+100>>2];t=H[a+4096>>2];c=0;while(1){b=N(c,12)+f|0;m=L[b>>2];o=L[b+4>>2];p=L[b+8>>2];P=O(O(O(O(r*m)+O(q*o))+O(s*p))+J);Q=O(O(O(O(w*m)+O(v*o))+O(x*p))+K);R=O(M+O(O(O(z*m)+O(y*o))+O(A*p)));l=O(3.4028234663852886e38);d=u;b=I;i=O(-3.4028234663852886e38);b:{while(1){k=L[b+8>>2];n=L[b>>2];B=L[b+4>>2];C=O(L[b+12>>2]+O(O(P*k)+O(O(R*n)+O(Q*B))));n=O(O(k*D)+O(O(n*F)+O(E*B)));k=O(O(-C)/n);c:{if(n>O(1.0000000116860974e-7)){l=k>l?l:k;break c}if(nk?i:k;break c}if(C>O(0)){break b}}b=b+20|0;d=d-1|0;if(d){continue}break}if(!(i>>0>63)){break b}l=L[h+4>>2];k=L[h+8>>2];n=L[h>>2];b=t+1|0;H[a+4096>>2]=b;d=(t<<6)+a|0;L[d+16>>2]=m-O(i*n);L[d+8>>2]=k;L[d+4>>2]=l;L[d>>2]=n;H[d+52>>2]=-1;L[d+12>>2]=i-g;L[d+24>>2]=p-O(i*k);L[d+20>>2]=o-O(i*l);t=b}c=c+1|0;if((e|0)!=(c|0)){continue}break}}Oa=j+112|0}function e2(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=O(0),g=O(0),h=O(0),i=O(0),j=0,k=0,l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=0,r=O(0),s=O(0),t=O(0),u=0,v=O(0),w=O(0),x=O(0),y=0;e=Oa-160|0;Oa=e;$1(e+128|0,e+96|0,a,b,c);g=L[e+128>>2];f=O(L[e+112>>2]-L[e+144>>2]);l=O(f+f);f=O(L[e+116>>2]-L[e+148>>2]);m=O(f+f);i=L[e+132>>2];h=L[e+136>>2];f=O(L[e+120>>2]-L[e+152>>2]);n=O(f+f);o=O(O(O(O(-g)*l)-O(m*i))-O(h*n));f=L[e+140>>2];v=O(O(f*f)+O(-.5));w=O(O(O(n*v)+O(f*O(O(i*l)-O(g*m))))-O(h*o));L[e+88>>2]=w;x=O(O(O(m*v)+O(f*O(O(g*n)-O(h*l))))-O(i*o));L[e+84>>2]=x;p=L[e+104>>2];r=L[e+100>>2];s=L[e+108>>2];t=L[e+96>>2];L[e+76>>2]=O(h*p)+O(O(i*r)+O(O(f*s)+O(g*t)));L[e+72>>2]=O(t*i)+O(O(O(f*p)-O(s*h))-O(g*r));L[e+68>>2]=O(p*g)+O(O(O(f*r)-O(s*i))-O(h*t));L[e+64>>2]=O(r*h)+O(O(O(f*t)-O(s*g))-O(i*p));l=O(O(O(l*v)+O(f*O(O(h*m)-O(i*n))))-O(g*o));L[e+80>>2]=l;u=H[a+452>>2];F[e+31|0]=0;f=u&1?l:O(0);m=f;g=u&2?x:O(0);n=g;i=u&4?w:O(0);o=i;p=O(O(i*i)+O(O(f*f)+O(g*g)));h=L[a+468>>2];y=p>O(h*h);if(y){m=O(O(1)/O(W(p)));o=O(h*O(i*m));n=O(h*O(g*m));m=O(h*O(f*m))}L[e+56>>2]=o+O(w-i);L[e+52>>2]=n+O(x-g);L[e+48>>2]=O(l-f)+m;j=e+8|0;k=e- -64|0;f=T5(O(L[a+472>>2]*O(.5)));m=O(0);n=O(0);q=e+31|0;F[q|0]=0;a:{b:{switch(u>>>3|0){case 3:Z1(j,k,O(0),O(0),O(1),f,q);break a;case 5:Z1(j,k,O(0),O(1),O(0),f,q);break a;case 6:Z1(j,k,O(1),O(0),O(0),f,q);break a;case 7:h=L[k>>2];g=L[k+12>>2];c:{if(g>=O(0)){l=L[k+4>>2];i=L[k+8>>2];break c}g=O(-g);h=O(-h);l=O(-L[k+4>>2]);i=O(-L[k+8>>2])}k=f>g;F[q|0]=k;d:{if(!k){f=g;break d}g=O(0);o=O(O(i*i)+O(O(h*h)+O(l*l)));if(o>O(0)){g=O(O(1)/O(W(o)));n=O(i*g);m=O(l*g);g=O(h*g)}h=O(W(O(O(1)-O(f*f))));i=O(h*n);l=O(h*m);h=O(h*g)}L[j+12>>2]=f;L[j+8>>2]=i;L[j+4>>2]=l;L[j>>2]=h;break a;default:H[j+8>>2]=0;H[j+12>>2]=1065353216;H[j>>2]=0;H[j+4>>2]=0;break a;case 0:case 1:case 2:case 4:break b}}L[j>>2]=L[k>>2];L[j+4>>2]=L[k+4>>2];L[j+8>>2]=L[k+8>>2];L[j+12>>2]=L[k+12>>2]}j=H[e+12>>2];H[e+32>>2]=H[e+8>>2];H[e+36>>2]=j;j=H[e+20>>2];H[e+40>>2]=H[e+16>>2];H[e+44>>2]=j;if(I[e+31|0]?1:y){f2(b,c,e+128|0,e+96|0,e+32|0,a,d)}Oa=e+160|0}function FY(a,b,c,d,e,f,g,h,i,j,k,l){var m=O(0),n=O(0),o=O(0),p=0,q=0,r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=0,B=O(0),C=O(0),D=O(0),E=0,F=O(0),G=O(0),I=O(0);A=Oa-16|0;Oa=A;t=O(k-e);p=H[a+16>>2];B=L[p+8>>2];m=O(B-e);u=O(i-c);C=L[p>>2];n=O(C-c);v=O(j-d);D=L[p+4>>2];o=O(D-d);s=O(O(t*m)+O(O(u*n)+O(v*o)));w=O(h-e);x=O(f-c);y=O(g-d);r=O(O(w*m)+O(O(x*n)+O(y*o)));a:{if(r<=O(0)){n=e;p=0;o=c;m=d;if(s<=O(0)){break a}}m=O(B-h);n=O(C-f);z=O(D-g);o=O(O(t*m)+O(O(u*n)+O(v*z)));b:{m=O(O(w*m)+O(O(x*n)+O(y*z)));if(!(m>=O(0))){break b}p=1;if(!(m>=o)){break b}n=h;o=f;m=g;break a}F=O(O(r*o)-O(s*m));if(!(!(m<=O(0))|(!(F<=O(0))|!(r>=O(0))))){f=O(r/O(r-m));n=O(O(w*f)+e);p=3;o=O(O(x*f)+c);m=O(O(y*f)+d);break a}n=O(B-k);G=O(C-i);I=O(D-j);z=O(O(w*n)+O(O(x*G)+O(y*I)));c:{n=O(O(t*n)+O(O(u*G)+O(v*I)));if(!(n>=O(0))){break c}p=2;if(!(n>=z)){break c}n=k;o=i;m=j;break a}r=O(O(z*s)-O(n*r));if(!(!(n<=O(0))|(!(r<=O(0))|!(s>=O(0))))){f=O(s/O(s-n));n=O(O(t*f)+e);p=5;o=O(O(u*f)+c);m=O(O(v*f)+d);break a}d:{s=O(O(m*n)-O(o*z));if(!(s<=O(0))){break d}m=O(o-m);if(!(m>=O(0))){break d}n=O(z-n);if(!(n>=O(0))){break d}o=O(k-h);k=O(m/O(m+n));n=O(O(o*k)+h);p=4;o=O(O(O(i-f)*k)+f);m=O(O(O(j-g)*k)+g);break a}g=O(O(1)/O(F+O(s+r)));f=O(F*g);g=O(r*g);n=O(O(t*f)+O(O(w*g)+e));p=6;E=1;o=O(O(u*f)+O(O(x*g)+c));m=O(O(v*f)+O(O(y*g)+d))}g=O(n-B);h=O(o-C);i=O(m-D);f=O(O(g*g)+O(O(h*h)+O(i*i)));e:{if(f>=L[a+20>>2]){break e}j=O(O(x*v)-O(u*y));k=O(O(y*t)-O(v*w));m=O(O(w*u)-O(t*x));if(O(O(j*B)+O(O(k*C)+O(m*D)))O(9999999747378752e-20);c=q?g:j;L[A+8>>2]=c;d=q?i:m;L[A+4>>2]=d;e=q?h:k;L[A>>2]=e;if(E){DY(a,A,f,b);b=H[a+2588>>2];if(b>>>0>63){break e}p=H[l+4>>2];q=H[l>>2];l=H[l+8>>2];H[a+2588>>2]=b+1;a=N(b,12)+a|0;H[a+2600>>2]=l;a=a+2592|0;H[a>>2]=q;H[a+4>>2]=p;break e}q=H[a+24>>2];if(q>>>0>63){break e}H[a+24>>2]=q+1;E=(q<<3)+a|0;H[E+2080>>2]=q;L[E+2076>>2]=f;a=(q<<5)+a|0;L[a+36>>2]=c;L[a+32>>2]=d;L[a+28>>2]=e;H[a+48>>2]=H[l>>2];H[a+52>>2]=H[l+4>>2];l=H[l+8>>2];H[a+44>>2]=b;H[a+40>>2]=p;H[a+56>>2]=l}Oa=A+16|0}function pI(a,b,c,d,e,f){var g=0,h=0,i=0,j=O(0),k=0,l=0;i=Oa-16|0;Oa=i;g=H[b+44>>2];a:{b:{if(g&32768){c:{if(!(g&476)){break c}g=g&(g&524288?272:16);if(g){QQ(b,g,(J[H[b+48>>2]+2>>1]==1)<<3,1,d,e)}g=H[H[b+48>>2]+16>>2];if(!g|H[g+12>>2]!=H[H[H[b+4>>2]+40>>2]+1088>>2]){break c}d=16;d:{if(!(c&1)){break d}d=17;if(!(I[g+10|0]&8)){break d}h=H[b+48>>2];k=H[h+12>>2];e=H[H[H[H[b+4>>2]+40>>2]+2168>>2]+44>>2]+H[g>>2]|0;h=H[H[h+8>>2]+44>>2];e:{if(I[h+9|0]){L[e+12>>2]=L[h+80>>2];L[e+16>>2]=L[h+84>>2];L[e+20>>2]=L[h+88>>2];L[e+36>>2]=L[h+96>>2];L[e+40>>2]=L[h+100>>2];j=L[h+104>>2];break e}H[e+36>>2]=0;H[e+40>>2]=0;H[e+20>>2]=0;H[e+12>>2]=0;H[e+16>>2]=0;j=O(0)}L[e+44>>2]=j;h=H[k+44>>2];f:{if(I[h+9|0]){L[e+24>>2]=L[h+80>>2];L[e+28>>2]=L[h+84>>2];L[e+32>>2]=L[h+88>>2];L[e+48>>2]=L[h+96>>2];L[e+52>>2]=L[h+100>>2];j=L[h+104>>2];break f}H[e+48>>2]=0;H[e+52>>2]=0;H[e+32>>2]=0;H[e+24>>2]=0;H[e+28>>2]=0;j=O(0)}L[e+56>>2]=j;G[g+10>>1]=J[g+10>>1]&65527}G[g+10>>1]=J[g+10>>1]|d}g=H[H[b+28>>2]+4>>2];h=I[H[g+44>>2]+9|0];k=H[H[b+32>>2]+4>>2];l=I[H[k+44>>2]+9|0];d=H[b+48>>2];e=J[d+2>>1]-1|0;G[d+2>>1]=e;if(!(e&65535?f:1)){break b}e=H[(h-1>>>0<2?g:0)+100>>2];H[e+152>>2]=H[e+152>>2]-1;e=l-1>>>0<2?k:0;if(!e){break b}e=H[e+100>>2];H[e+152>>2]=H[e+152>>2]-1;break b}d=H[b+48>>2];if(!d){break a}}e=J[d+4>>1]-1|0;G[d+4>>1]=e;if(e&65535){break a}e=H[b+4>>2];f=H[b+8>>2];g=K[e+48>>2]>K[f+48>>2];H[i+8>>2]=H[(g?f:e)+48>>2];H[i+12>>2]=H[(g?e:f)+48>>2];GH(a+1916|0,i+8|0);if(!(F[d|0]&1)){H[a+392>>2]=H[a+392>>2]-1;H[d>>2]=H[a+400>>2];H[a+400>>2]=d;break a}e=H[d+16>>2];if(e){f=a+1560|0;H[f>>2]=H[f>>2]-1;f=a+1568|0;H[e>>2]=H[f>>2];H[f>>2]=e;H[d+16>>2]=0}H[a+684>>2]=H[a+684>>2]-1;H[d>>2]=H[a+692>>2];H[a+692>>2]=d}H[b+48>>2]=0;d=H[b+44>>2];g:{if(!(d&32768)){e=H[b+56>>2];h:{if(e){d=I[e+43|0]&3;break h}d=d&98304}if(d){break g}}if(!(c&4)){break g}c=H[H[b+28>>2]+4>>2];c=I[H[c+44>>2]+9|0]-1>>>0<2?c:0;d=H[H[b+32>>2]+4>>2];d=I[H[d+44>>2]+9|0]-1>>>0<2?d:0;if(!(d?c:0)){if(c){qG(c)}if(!d){break g}qG(d);break g}if(I[b+46|0]&4){break g}zO(H[a>>2],c,d)}Oa=i+16|0}function Iu(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=O(0),k=O(0),l=O(0),m=O(0),n=0,o=O(0),p=O(0),q=0,r=0,s=0,t=0,u=0,v=0;i=Oa-720|0;Oa=i;q=H[f>>2];j=L[a+8>>2];k=L[a+4>>2];l=L[a+12>>2];L[i+716>>2]=l;L[i+712>>2]=j;L[i+708>>2]=k;L[i+704>>2]=-l;L[i+700>>2]=-j;L[i+696>>2]=-k;f=0;a:{if(L[b+4>>2]!=O(1)){break a}f=0;if(L[b+8>>2]!=O(1)){break a}f=L[b+12>>2]==O(1)}H[i+680>>2]=0;H[i+684>>2]=1065353216;H[i+672>>2]=0;H[i+676>>2]=0;H[i+664>>2]=0;H[i+668>>2]=1065353216;H[i+656>>2]=0;H[i+660>>2]=0;H[i+648>>2]=1065353216;H[i+652>>2]=1065353216;H[i+632>>2]=1065353216;H[i+636>>2]=0;F[i+688|0]=0;H[i+640>>2]=0;H[i+644>>2]=0;H[i+624>>2]=0;H[i+628>>2]=0;H[i+616>>2]=1065353216;H[i+620>>2]=0;if(!f){yW(i+616|0,b+4|0,b+16|0);l=L[a+12>>2];k=L[a+4>>2];j=L[a+8>>2]}H[i+600>>2]=0;H[i+604>>2]=1065353216;H[i+592>>2]=0;H[i+596>>2]=0;H[i+584>>2]=0;H[i+588>>2]=1065353216;H[i+576>>2]=0;H[i+580>>2]=0;H[i+568>>2]=1065353216;H[i+572>>2]=1065353216;H[i+552>>2]=1065353216;H[i+556>>2]=0;F[i+608|0]=0;H[i+560>>2]=0;H[i+564>>2]=0;H[i+544>>2]=0;H[i+548>>2]=0;H[i+536>>2]=1065353216;H[i+540>>2]=0;o=O(L[e+8>>2]*O(.05000000074505806));m=j>=k?k:j;p=l>=m?m:l;m=O(p*O(.15000000596046448));L[i+512>>2]=m>o?o:m;H[i+508>>2]=0;L[i+504>>2]=l;L[i+500>>2]=j;H[i+456>>2]=0;H[i+460>>2]=0;H[i+448>>2]=0;H[i+452>>2]=0;L[i+496>>2]=k;F[i+480|0]=0;H[i+476>>2]=3;j=O(p*O(.05000000074505806));L[i+472>>2]=j;L[i+468>>2]=j;L[i+464>>2]=m;j=L[c+24>>2];n=H[c>>2];r=H[c+4>>2];s=H[c+8>>2];t=H[c+12>>2];u=H[c+20>>2];v=H[c+16>>2];H[i+444>>2]=0;L[i+440>>2]=j;H[i+432>>2]=v;H[i+436>>2]=u;H[i+424>>2]=s;H[i+428>>2]=t;H[i+416>>2]=n;H[i+420>>2]=r;n=lZ(i+120|0,a+4|0);a=i+344|0;Q0(n,a);H[i+88>>2]=0;H[i+92>>2]=0;H[i+84>>2]=1065353216;H[i+96>>2]=0;H[i+100>>2]=0;H[i+104>>2]=1065353216;H[i+108>>2]=0;H[i+68>>2]=0;H[i+72>>2]=0;H[i+64>>2]=1065353216;H[i+76>>2]=0;H[i+80>>2]=0;F[i+44|0]=1;H[i>>2]=125908;n=i- -64|0;H[i+40>>2]=n;H[i+36>>2]=n;H[i+32>>2]=i+416;H[i+48>>2]=i+448;a=x0(a,i,i+512|0,i+696|0,b,c,d,L[e>>2],g,i+536|0,i+616|0,1,f,q,h);Oa=i+720|0;return a|0} -function kU(a,b){var c=0,d=0,e=0,f=0;f=Oa-16|0;Oa=f;a:{b:{c:{switch(H[b+4>>2]){case 0:c=H[33808];d=Ra[H[H[c>>2]+20>>2]](c)|0?35924:55639;c=Ra[H[H[c+12>>2]+8>>2]](c+12|0,208,d,4459,115)|0;s$(c,a,b);H[c+196>>2]=0;H[c+200>>2]=0;H[c+8>>2]=129124;H[c>>2]=129028;H[c+184>>2]=0;H[c+188>>2]=0;H[c+176>>2]=4;L[c+112>>2]=L[b+96>>2];L[c+116>>2]=L[b+100>>2];L[c+120>>2]=L[b+104>>2];L[c+124>>2]=L[b+108>>2];L[c+128>>2]=L[b+112>>2];L[c+132>>2]=L[b+116>>2];L[c+136>>2]=L[b+120>>2];L[c+140>>2]=L[b+124>>2];L[c+144>>2]=L[b+128>>2];L[c+148>>2]=L[b+132>>2];L[c+152>>2]=L[b+136>>2];L[c+156>>2]=L[b+140>>2];L[c+160>>2]=L[b+144>>2];L[c+164>>2]=L[b+148>>2];L[c+168>>2]=L[b+152>>2];L[c+172>>2]=L[b+156>>2];d=H[b+164>>2];H[c+176>>2]=H[b+160>>2];H[c+180>>2]=d;d=H[b+172>>2];H[c+184>>2]=H[b+168>>2];H[c+188>>2]=d;d=H[b+180>>2];H[c+192>>2]=H[b+176>>2];H[c+196>>2]=d;H[c+200>>2]=H[b+184>>2];H[b+184>>2]=0;break b;case 1:break c;default:break a}}c=H[33808];d=Ra[H[H[c>>2]+20>>2]](c)|0?36054:55639;c=Ra[H[H[c+12>>2]+8>>2]](c+12|0,184,d,4459,119)|0;s$(c,a,b);H[c+8>>2]=128996;H[c>>2]=128900;e=c+100|0;H[e>>2]=0;H[e+4>>2]=0;H[e+16>>2]=0;H[e+20>>2]=0;H[e+8>>2]=0;H[e+12>>2]=0;d=g_(c+124|0);H[e>>2]=H[b+88>>2];H[e+4>>2]=H[b+92>>2];H[e+12>>2]=H[b+100>>2];H[e+16>>2]=H[b+104>>2];H[e+20>>2]=H[b+108>>2];H[e+8>>2]=H[b+96>>2];H[b+104>>2]=0;H[b+108>>2]=0;H[b+96>>2]=0;H[b+100>>2]=0;H[b+88>>2]=0;H[b+92>>2]=0;H[d>>2]=H[b+112>>2];L[d+4>>2]=L[b+116>>2];L[d+8>>2]=L[b+120>>2];L[d+12>>2]=L[b+124>>2];L[d+16>>2]=L[b+128>>2];H[d+20>>2]=H[b+132>>2];H[d+24>>2]=H[b+136>>2];H[d+28>>2]=H[b+140>>2];L[d+32>>2]=L[b+144>>2];L[d+36>>2]=L[b+148>>2];L[d+40>>2]=L[b+152>>2];L[d+44>>2]=L[b+156>>2];L[d+48>>2]=L[b+160>>2];L[d+52>>2]=L[b+164>>2];F[d+56|0]=I[b+168|0];F[d+57|0]=I[b+169|0];H[b+132>>2]=0;H[b+136>>2]=0;H[b+112>>2]=0;H[b+140>>2]=0;H[b+144>>2]=0;H[b+148>>2]=0;H[b+152>>2]=0;H[b+156>>2]=0;H[b+160>>2]=0;G[b+162>>1]=0;G[b+164>>1]=0;G[b+166>>1]=0;G[b+168>>1]=0;H[d>>2]=e}H[f+8>>2]=c;if(!c){break a}a=rg(a+8|0,f+8|0,f+15|0);if(!I[f+15|0]){H[a>>2]=H[f+8>>2]}}Oa=f+16|0;return c}function BN(a,b,c,d){var e=O(0),f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0);a:{if(d){g=L[c+40>>2];f=O(L[c+56>>2]*O(-2));i=L[c+32>>2];m=O(L[c+48>>2]*O(-2));n=O(L[c+52>>2]*O(-2));h=L[c+36>>2];o=O(O(g*f)+O(O(i*m)+O(n*h)));l=L[c+8>>2];e=L[c+44>>2];p=O(O(e*e)+O(-.5));j=O(O(g*o)+O(O(f*p)-O(e*O(O(i*n)-O(m*h)))));q=O(j+j);j=L[c>>2];k=O(O(i*o)+O(O(m*p)-O(e*O(O(h*f)-O(n*g)))));r=O(k+k);k=L[c+4>>2];f=O(O(h*o)+O(O(n*p)-O(e*O(O(g*m)-O(f*i)))));p=O(f+f);t=O(O(l*q)+O(O(j*r)+O(k*p)));f=L[c+12>>2];w=O(O(f*f)+O(-.5));m=O(O(i*k)+O(O(O(e*l)-O(f*g))-O(j*h)));n=L[b+24>>2];u=O(n+n);n=O(O(h*l)+O(O(O(e*j)-O(f*i))-O(k*g)));o=L[b+16>>2];v=O(o+o);o=O(O(g*j)+O(O(O(e*k)-O(f*h))-O(l*i)));s=L[b+20>>2];s=O(s+s);x=O(O(m*u)+O(O(n*v)+O(o*s)));e=O(O(l*g)+O(O(k*h)+O(O(f*e)+O(i*j))));g=O(O(e*e)+O(-.5));y=O(O(L[c+24>>2]+O(O(l*t)+O(O(q*w)+O(f*O(O(j*p)-O(r*k))))))+O(O(m*x)+O(O(u*g)+O(e*O(O(n*s)-O(v*o))))));z=O(O(L[c+20>>2]+O(O(k*t)+O(O(p*w)+O(f*O(O(l*r)-O(q*j))))))+O(O(o*x)+O(O(s*g)+O(e*O(O(m*v)-O(u*n))))));q=O(O(L[c+16>>2]+O(O(j*t)+O(O(r*w)+O(f*O(O(k*q)-O(p*l))))))+O(O(n*x)+O(O(v*g)+O(e*O(O(o*u)-O(s*m))))));f=L[b+12>>2];g=L[b>>2];i=L[b+4>>2];h=L[b+8>>2];r=O(O(O(O(e*f)-O(g*n))-O(o*i))-O(m*h));p=O(O(O(n*i)+O(O(e*h)+O(m*f)))-O(g*o));t=O(O(O(m*g)+O(O(e*i)+O(o*f)))-O(h*n));e=O(O(O(o*h)+O(O(e*g)+O(n*f)))-O(i*m));break a}f=L[c+8>>2];e=L[b+24>>2];h=O(e+e);g=L[c>>2];e=L[b+16>>2];l=O(e+e);e=L[b+20>>2];j=O(e+e);i=L[c+4>>2];k=O(O(f*h)+O(O(g*l)+O(j*i)));e=L[c+12>>2];m=O(O(e*e)+O(-.5));y=O(L[c+24>>2]+O(O(f*k)+O(O(h*m)+O(e*O(O(g*j)-O(l*i))))));z=O(L[c+20>>2]+O(O(i*k)+O(O(j*m)+O(e*O(O(f*l)-O(h*g))))));q=O(L[c+16>>2]+O(O(g*k)+O(O(l*m)+O(e*O(O(i*h)-O(j*f))))));h=L[b+12>>2];l=L[b>>2];j=L[b+4>>2];k=L[b+8>>2];r=O(O(O(O(e*h)-O(l*g))-O(i*j))-O(f*k));p=O(O(O(g*j)+O(O(e*k)+O(f*h)))-O(l*i));t=O(O(O(f*l)+O(O(e*j)+O(i*h)))-O(k*g));e=O(O(O(i*k)+O(O(e*l)+O(g*h)))-O(j*f))}L[a+16>>2]=q;L[a+12>>2]=r;L[a+8>>2]=p;L[a+4>>2]=t;L[a>>2]=e;L[a+24>>2]=y;L[a+20>>2]=z}function w2(a,b){a=a|0;b=b|0;var c=0,d=O(0),e=O(0),f=O(0),g=O(0),h=O(0),i=O(0),j=0,k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),F=O(0),G=O(0),I=O(0),J=O(0),K=O(0),M=O(0),N=O(0),P=O(0);c=Oa-48|0;Oa=c;j=H[b+76>>2];Ra[H[H[j>>2]+28>>2]](j,c+44|0,c+40|0);e=O(1);g=O(1);j=H[c+44>>2];if(j){Ra[H[H[j>>2]+76>>2]](c+8|0,j);I=L[c+32>>2];J=L[c+28>>2];K=L[c+24>>2];o=L[c+16>>2];p=L[c+12>>2];q=L[c+8>>2];g=L[c+20>>2]}h=L[b+32>>2];f=L[b+20>>2];k=L[b+24>>2];l=L[b+28>>2];m=O(O(O(O(g*h)-O(f*q))-O(p*k))-O(o*l));d=L[b+44>>2];y=O(d+d);d=L[b+36>>2];z=O(d+d);d=L[b+40>>2];A=O(d+d);D=O(O(o*y)+O(O(q*z)+O(A*p)));d=O(0);j=H[c+40>>2];if(j){Ra[H[H[j>>2]+76>>2]](c+8|0,j);M=L[c+32>>2];N=L[c+28>>2];P=L[c+24>>2];d=L[c+16>>2];r=L[c+12>>2];s=L[c+8>>2];e=L[c+20>>2]}E=L[b- -64>>2];F=L[b+72>>2];G=L[b+68>>2];t=O(O(O(q*k)+O(O(g*l)+O(o*h)))-O(f*p));n=L[b+52>>2];i=L[b+56>>2];u=L[b+60>>2];v=L[b+48>>2];w=O(O(O(s*n)+O(O(e*i)+O(d*u)))-O(v*r));x=O(O(O(o*f)+O(O(g*k)+O(p*h)))-O(l*q));B=O(O(O(d*v)+O(O(e*n)+O(r*u)))-O(i*s));C=O(O(O(O(e*u)-O(v*s))-O(r*n))-O(d*i));h=O(O(O(p*l)+O(O(g*f)+O(q*h)))-O(k*o));f=O(O(O(r*i)+O(O(e*v)+O(s*u)))-O(n*d));L[a+12>>2]=O(t*w)+O(O(x*B)+O(O(m*C)+O(h*f)));L[a+8>>2]=O(f*x)+O(O(O(m*w)-O(C*t))-O(h*B));L[a+4>>2]=O(w*h)+O(O(O(m*B)-O(C*x))-O(t*f));L[a>>2]=O(B*t)+O(O(O(m*f)-O(C*h))-O(x*w));k=O(F+F);l=O(E+E);n=O(G+G);u=O(O(d*k)+O(O(s*l)+O(n*r)));v=O(O(e*e)+O(-.5));w=O(O(g*g)+O(-.5));f=O(O(M+O(O(d*u)+O(O(k*v)+O(e*O(O(s*n)-O(l*r))))))-O(I+O(O(o*D)+O(O(y*w)+O(g*O(O(q*A)+O(z*O(-p))))))));f=O(f+f);i=O(O(P+O(O(s*u)+O(O(l*v)+O(e*O(O(r*k)-O(n*d))))))-O(K+O(O(q*D)+O(O(z*w)+O(g*O(O(p*y)+O(A*O(-o))))))));i=O(i+i);e=O(O(N+O(O(r*u)+O(O(n*v)+O(e*O(O(d*l)-O(k*s))))))-O(J+O(O(p*D)+O(O(A*w)+O(g*O(O(o*z)+O(y*O(-q))))))));e=O(e+e);g=O(O(O(O(-h)*i)-O(e*x))-O(t*f));d=O(O(m*m)+O(-.5));L[a+24>>2]=O(O(f*d)+O(m*O(O(x*i)-O(h*e))))-O(t*g);L[a+20>>2]=O(O(e*d)+O(m*O(O(h*f)-O(t*i))))-O(x*g);L[a+16>>2]=O(O(i*d)+O(m*O(O(t*e)-O(x*f))))-O(h*g);Oa=c+48|0}function wz(a,b,c,d,e,f,g,h,i){var j=O(0),k=O(0),l=O(0),m=O(0),n=0,o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=0;n=H[a+24>>2];if(I[n+1|0]){a=n+48|0;k=L[e+8>>2];l=L[e+4>>2];j=L[e>>2];while(1){m=L[a+80>>2];p=L[a+88>>2];q=L[a>>2];r=L[a+32>>2];s=L[a+16>>2];t=L[a+48>>2];u=L[a+4>>2];v=L[a+36>>2];w=L[a+20>>2];x=L[a+52>>2];o=O(O(O(O(q*L[b>>2])+O(r*L[d>>2]))-O(O(s*L[c>>2])+O(t*j)))+O(O(O(u*L[b+4>>2])+O(v*L[d+4>>2]))-O(O(w*L[c+4>>2])+O(x*l))));j=L[a+8>>2];l=L[a+40>>2];y=L[a+24>>2];z=L[a+56>>2];k=O(O(L[a+60>>2]*p)+O(L[a+12>>2]+O(L[a+44>>2]*O(o+O(O(O(j*L[b+8>>2])+O(l*L[d+8>>2]))-O(O(y*L[c+8>>2])+O(z*k)))))));k=k>2];k=k>2]=k;H[f+12>>2]=0;o=j;j=O(k-p);L[f+8>>2]=L[f+8>>2]+O(o*j);L[f+4>>2]=L[f+4>>2]+O(u*j);L[f>>2]=L[f>>2]+O(q*j);H[h+12>>2]=0;L[h+4>>2]=L[h+4>>2]+O(v*j);L[h+8>>2]=L[h+8>>2]+O(l*j);L[h>>2]=L[h>>2]+O(r*j);H[g+12>>2]=0;L[g+4>>2]=O(w*j)+L[g+4>>2];L[g+8>>2]=O(y*j)+L[g+8>>2];L[g>>2]=O(s*j)+L[g>>2];H[i+12>>2]=0;L[i+4>>2]=O(x*j)+L[i+4>>2];L[i+8>>2]=O(z*j)+L[i+8>>2];L[i>>2]=O(t*j)+L[i>>2];k=L[a+100>>2];l=L[a+104>>2];m=L[a+96>>2];H[b+12>>2]=0;L[b+8>>2]=O(j*l)+L[b+8>>2];L[b+4>>2]=O(j*k)+L[b+4>>2];L[b>>2]=O(j*m)+L[b>>2];k=L[a+112>>2];l=L[a+116>>2];m=L[a+120>>2];H[d+12>>2]=0;L[d+8>>2]=O(j*m)+L[d+8>>2];L[d+4>>2]=O(j*l)+L[d+4>>2];L[d>>2]=O(j*k)+L[d>>2];k=L[a+132>>2];l=L[a+136>>2];m=L[a+128>>2];H[c+12>>2]=0;L[c+8>>2]=O(j*l)+L[c+8>>2];L[c+4>>2]=O(j*k)+L[c+4>>2];L[c>>2]=O(j*m)+L[c>>2];m=L[a+144>>2];l=L[a+148>>2];k=L[a+152>>2];H[e+12>>2]=0;k=O(O(j*k)+L[e+8>>2]);L[e+8>>2]=k;l=O(O(j*l)+L[e+4>>2]);L[e+4>>2]=l;j=O(O(j*m)+L[e>>2]);L[e>>2]=j;a=a+160|0;A=A+1|0;if(A>>>0>2];H[f+12>>2]=0;L[f+8>>2]=j*L[f+8>>2];L[f+4>>2]=j*L[f+4>>2];L[f>>2]=j*L[f>>2];j=L[n+40>>2];H[g+12>>2]=0;L[g+4>>2]=j*L[g+4>>2];L[g+8>>2]=j*L[g+8>>2];L[g>>2]=j*L[g>>2];j=L[n+36>>2];H[h+12>>2]=0;L[h>>2]=j*L[h>>2];L[h+4>>2]=j*L[h+4>>2];L[h+8>>2]=j*L[h+8>>2];j=L[n+44>>2];H[i+12>>2]=0;L[i>>2]=j*L[i>>2];L[i+4>>2]=j*L[i+4>>2];L[i+8>>2]=j*L[i+8>>2]}function TQ(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;g=Oa-16|0;Oa=g;f=H[a+44>>2];c=H[H[a+4>>2]+40>>2];e=I[a+26|0]|b;a:{if(!(e&33)){break a}b=H[H[a+32>>2]+4>>2];b=I[H[b+44>>2]+9|0]-1>>>0<2?b:0;d=H[a+44>>2];h=d&262144;b:{c:{i=H[H[a+28>>2]+4>>2];d:{if(F[H[(I[H[i+44>>2]+9|0]-1>>>0<2?i:0)+44>>2]+44|0]&1){if(!b){break d}b=F[H[b+44>>2]+44|0]&1}else{b=0}if(b){break d}if(f&1){break c}}b=d|262144;break b}b=d&-262145}H[a+44>>2]=b;e:{f:{if(!(f&514|L[H[c+976>>2]+1056>>2]!=O(0)|(L[H[c+976>>2]+1060>>2]!=O(0)|L[H[c+976>>2]+1064>>2]!=O(0)))){if(L[H[c+976>>2]+1068>>2]==O(0)){break f}}b=H[a+44>>2]|131072;break e}b=H[a+44>>2]&-131073}H[a+44>>2]=b;d=b&262144;if(!(!d|h)){lF(H[c+1e3>>2],H[a+60>>2]);break a}if(!(b&32768)|(d|!h)){break a}jF(H[c+1e3>>2],H[a+60>>2])}g:{if(!(!H[a+56>>2]|(f^H[a+44>>2])&393694)){b=H[a+32>>2];f=H[a+28>>2];if(e&8){d=g+8|0;h=H[H[a+4>>2]+40>>2];c=H[f+4>>2];i=I[H[(I[H[c+44>>2]+9|0]-1>>>0<2?c:0)+44>>2]+10|0];c=H[b+4>>2];c=I[H[c+44>>2]+9|0]-1>>>0<2?c:0;if(c){c=I[H[c+44>>2]+10|0]}else{c=0}PO(d,h,i,c);c=H[a+56>>2];F[c+44|0]=I[g+8|0];F[c+45|0]=I[g+9|0]}h:{if(!(e&5)){break h}c=H[b+4>>2];c=I[H[c+44>>2]+9|0]-1>>>0<2?c:0;if(!c){break h}d=H[a+56>>2];G[d+40>>1]=J[d+40>>1]&64511|(F[H[c+44>>2]+44|0]&1)<<10}c=H[a+56>>2];if(e&16){L[c+52>>2]=L[H[f+28>>2]+128>>2]+L[H[b+28>>2]+128>>2]}b=H[c+8>>2]&-7;H[c+8>>2]=(H[a+44>>2]&2048)>>>11|0?b|2:b;break g}if(!(I[a+25|0]&32)){break g}if(e&5){e=H[H[a+28>>2]+4>>2];d=N(H[(I[H[e+44>>2]+9|0]-1>>>0<2?e:0)+144>>2]>>>7|0,24);e=H[H[H[H[a+4>>2]+40>>2]+1e3>>2]+656>>2];b=H[H[a+32>>2]+4>>2];b=I[H[b+44>>2]+9|0]-1>>>0<2?b:0;if(!(I[(d+e|0)+4|0]&34|(I[(e+N(H[b+144>>2]>>>7|0,24)|0)+4|0]&34?b:0))){UQ(a);_N(c,a+4|0);break g}b=H[a+60>>2];if((b|0)!=-1){mF(H[c+1e3>>2],b)}b=H[H[a+4>>2]+40>>2];c=H[H[b+976>>2]+1024>>2];Ra[H[H[c>>2]+36>>2]](c,H[a+56>>2]);xJ(H[b+976>>2],H[a+56>>2]);H[a+56>>2]=0;HQ(a,0);break g}b=H[a+60>>2];if((b|0)!=-1){mF(H[c+1e3>>2],b)}b=H[H[a+4>>2]+40>>2];c=H[H[b+976>>2]+1024>>2];Ra[H[H[c>>2]+36>>2]](c,H[a+56>>2]);xJ(H[b+976>>2],H[a+56>>2]);H[a+56>>2]=0;HQ(a,0)}Oa=g+16|0}function pD(a,b,c,d,e){var f=0,g=0,h=O(0),i=O(0),j=O(0),k=O(0),l=0,m=O(0),n=O(0),o=O(0),p=O(0),q=0,r=0;f=Oa-1184|0;Oa=f;F[f+1168|0]=1;H[f+1176>>2]=256;H[f+1180>>2]=256;H[f+1172>>2]=f+144;H[f+144>>2]=H[c+588>>2];l=1;a:while(1){l=l-1|0;c=H[H[f+1172>>2]+(l<<2)>>2];h=L[c+16>>2];i=L[c>>2];m=O(h+i);h=O(h-i);j=L[c+24>>2];k=L[c+8>>2];i=O(j+k);n=L[c+20>>2];o=L[c+4>>2];p=O(n+o);j=O(j-k);k=O(n-o);while(1){L[f+132>>2]=p*O(.5);L[f+128>>2]=m*O(.5);H[f+140>>2]=0;L[f+136>>2]=i*O(.5);L[f+116>>2]=k*O(.5);L[f+112>>2]=h*O(.5);H[f+124>>2]=0;L[f+120>>2]=j*O(.5);g=H[f+132>>2];H[f+48>>2]=H[f+128>>2];H[f+52>>2]=g;g=H[f+140>>2];H[f+56>>2]=H[f+136>>2];H[f+60>>2]=g;g=H[f+116>>2];H[f+32>>2]=H[f+112>>2];H[f+36>>2]=g;g=H[f+124>>2];H[f+40>>2]=H[f+120>>2];H[f+44>>2]=g;b:{c:{d:{if(!PC(d,f+48|0,f+32|0)){break d}if(H[c+40>>2]){break b}c=H[c+36>>2];g=c+4|0;e:{f:{q=H[c>>2];switch(q|0){case 0:break d;case 1:break f;default:break e}}if(Ra[H[H[e>>2]+8>>2]](e,f+76|0,N(H[g>>2],44)+a|0)|0){break d}a=0;break c}while(1){r=H[g>>2];c=N(r,24)+b|0;m=L[c+8>>2];h=L[c+20>>2];i=L[c+4>>2];p=L[c+16>>2];j=L[c>>2];k=L[c+12>>2];L[f+96>>2]=O(j+k)*O(.5);L[f+100>>2]=O(i+p)*O(.5);H[f+108>>2]=0;L[f+104>>2]=O(m+h)*O(.5);L[f+80>>2]=O(k-j)*O(.5);L[f+84>>2]=O(p-i)*O(.5);H[f+92>>2]=0;L[f+88>>2]=O(h-m)*O(.5);c=H[f+100>>2];H[f+16>>2]=H[f+96>>2];H[f+20>>2]=c;c=H[f+108>>2];H[f+24>>2]=H[f+104>>2];H[f+28>>2]=c;c=H[f+84>>2];H[f>>2]=H[f+80>>2];H[f+4>>2]=c;c=H[f+92>>2];H[f+8>>2]=H[f+88>>2];H[f+12>>2]=c;g:{if(!PC(d,f+16|0,f)){break g}if(Ra[H[H[e>>2]+8>>2]](e,f+76|0,N(r,44)+a|0)|0){break g}a=0;break c}g=g+4|0;q=q-1|0;if(q){continue}break}}if(l){continue a}a=1}b=H[f+1180>>2];h:{if((b|0)<0|!(b&2147483647)){break h}b=H[f+1172>>2];if((b|0)==(f+144|0)|!b){break h}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}Oa=f+1184|0;return a}c=H[c+36>>2];H[H[f+1172>>2]+(l<<2)>>2]=c+48;l=l+1|0;if((l|0)==(H[f+1180>>2]&2147483647)){iC(f+144|0,l<<1)}h=L[c+16>>2];i=L[c>>2];m=O(h+i);h=O(h-i);j=L[c+24>>2];k=L[c+8>>2];i=O(j+k);n=L[c+20>>2];o=L[c+4>>2];p=O(n+o);j=O(j-k);k=O(n-o);continue}}}function X$(a,b,c,d,e){var f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0);l=L[d+40>>2];t=L[c+8>>2];n=L[d+32>>2];m=L[c>>2];j=L[d+36>>2];k=L[c+4>>2];u=O(O(l*t)+O(O(n*m)+O(j*k)));s=O(P(u));i=L[e+8>>2];f=L[e+4>>2];g=L[e>>2];h=L[d+8>>2];q=L[d>>2];r=L[d+4>>2];o=O(O(h*t)+O(O(q*m)+O(r*k)));w=O(P(o));p=L[d+24>>2];v=O(p*t);t=L[d+16>>2];x=O(t*m);m=L[d+20>>2];k=O(v+O(x+O(m*k)));v=O(P(k));a:{if(!(!(w>=v)|!(s<=w))){H[b+12>>2]=0;c=o>O(0);L[b+8>>2]=c?O(-h):h;L[b+4>>2]=c?O(-r):r;L[b>>2]=c?O(-q):q;k=L[d+52>>2];s=L[d+56>>2];u=L[d+48>>2];H[a+44>>2]=0;H[a+28>>2]=0;H[a+12>>2]=0;o=h;h=c?O(-g):g;g=O(s+O(o*h));p=O(f*p);s=O(i*l);o=O(p+s);L[a+40>>2]=g-o;l=O(k+O(r*h));r=O(f*m);m=O(i*j);k=O(r+m);L[a+36>>2]=l-k;j=O(u+O(q*h));f=O(f*t);i=O(i*n);n=O(f+i);L[a+32>>2]=j-n;h=O(p-s);L[a+24>>2]=h+g;q=O(r-m);L[a+20>>2]=q+l;f=O(f-i);L[a+16>>2]=f+j;L[a+8>>2]=o+g;L[a+4>>2]=k+l;L[a>>2]=n+j;i=O(g-h);f=O(j-f);g=O(l-q);break a}if(s<=v){H[b+12>>2]=0;c=k>O(0);L[b+8>>2]=c?O(-p):p;L[b+4>>2]=c?O(-m):m;L[b>>2]=c?O(-t):t;k=L[d+52>>2];s=L[d+56>>2];u=L[d+48>>2];H[a+44>>2]=0;H[a+28>>2]=0;H[a+12>>2]=0;o=p;p=c?O(-f):f;f=O(s+O(o*p));h=O(g*h);s=O(i*l);o=O(h+s);L[a+40>>2]=f-o;l=O(k+O(m*p));r=O(g*r);m=O(i*j);k=O(r+m);L[a+36>>2]=l-k;j=O(u+O(t*p));g=O(g*q);i=O(i*n);n=O(g+i);L[a+32>>2]=j-n;h=O(h-s);L[a+24>>2]=h+f;q=O(r-m);L[a+20>>2]=q+l;g=O(g-i);L[a+16>>2]=g+j;L[a+8>>2]=o+f;L[a+4>>2]=k+l;L[a>>2]=n+j;i=O(f-h);f=O(j-g);g=O(l-q);break a}H[b+12>>2]=0;c=u>O(0);L[b+8>>2]=c?O(-l):l;L[b+4>>2]=c?O(-j):j;L[b>>2]=c?O(-n):n;s=L[d+52>>2];k=L[d+56>>2];u=L[d+48>>2];H[a+44>>2]=0;H[a+28>>2]=0;H[a+12>>2]=0;o=k;k=c?O(-i):i;i=O(o+O(l*k));h=O(g*h);p=O(f*p);o=O(h+p);L[a+40>>2]=i-o;l=O(s+O(j*k));j=O(g*r);r=O(f*m);m=O(j+r);L[a+36>>2]=l-m;n=O(u+O(n*k));g=O(g*q);f=O(f*t);q=O(g+f);L[a+32>>2]=n-q;h=O(h-p);L[a+24>>2]=h+i;j=O(j-r);L[a+20>>2]=j+l;f=O(g-f);L[a+16>>2]=f+n;L[a+8>>2]=o+i;L[a+4>>2]=m+l;L[a>>2]=q+n;i=O(i-h);f=O(n-f);g=O(l-j)}L[a+48>>2]=f;H[a+60>>2]=0;L[a+56>>2]=i;L[a+52>>2]=g}function fC(a,b,c,d,e){var f=0,g=0,h=O(0),i=O(0),j=O(0),k=O(0),l=0,m=O(0),n=O(0),o=O(0),p=O(0),q=0,r=0;f=Oa-1184|0;Oa=f;F[f+1168|0]=1;H[f+1176>>2]=256;H[f+1180>>2]=256;H[f+1172>>2]=f+144;H[f+144>>2]=H[c+588>>2];l=1;a:while(1){l=l-1|0;c=H[H[f+1172>>2]+(l<<2)>>2];h=L[c+16>>2];i=L[c>>2];m=O(h+i);h=O(h-i);j=L[c+24>>2];k=L[c+8>>2];i=O(j+k);n=L[c+20>>2];o=L[c+4>>2];p=O(n+o);j=O(j-k);k=O(n-o);while(1){L[f+132>>2]=p*O(.5);L[f+128>>2]=m*O(.5);H[f+140>>2]=0;L[f+136>>2]=i*O(.5);L[f+116>>2]=k*O(.5);L[f+112>>2]=h*O(.5);H[f+124>>2]=0;L[f+120>>2]=j*O(.5);g=H[f+132>>2];H[f+48>>2]=H[f+128>>2];H[f+52>>2]=g;g=H[f+140>>2];H[f+56>>2]=H[f+136>>2];H[f+60>>2]=g;g=H[f+116>>2];H[f+32>>2]=H[f+112>>2];H[f+36>>2]=g;g=H[f+124>>2];H[f+40>>2]=H[f+120>>2];H[f+44>>2]=g;b:{c:{d:{if(!PC(d,f+48|0,f+32|0)){break d}if(H[c+40>>2]){break b}c=H[c+36>>2];g=c+4|0;e:{f:{q=H[c>>2];switch(q|0){case 0:break d;case 1:break f;default:break e}}if(Ra[H[H[e>>2]>>2]](e,f+76|0,(H[g>>2]<<3)+a|0)|0){break d}a=0;break c}while(1){r=H[g>>2];c=N(r,24)+b|0;m=L[c+8>>2];h=L[c+20>>2];i=L[c+4>>2];p=L[c+16>>2];j=L[c>>2];k=L[c+12>>2];L[f+96>>2]=O(j+k)*O(.5);L[f+100>>2]=O(i+p)*O(.5);H[f+108>>2]=0;L[f+104>>2]=O(m+h)*O(.5);L[f+80>>2]=O(k-j)*O(.5);L[f+84>>2]=O(p-i)*O(.5);H[f+92>>2]=0;L[f+88>>2]=O(h-m)*O(.5);c=H[f+100>>2];H[f+16>>2]=H[f+96>>2];H[f+20>>2]=c;c=H[f+108>>2];H[f+24>>2]=H[f+104>>2];H[f+28>>2]=c;c=H[f+84>>2];H[f>>2]=H[f+80>>2];H[f+4>>2]=c;c=H[f+92>>2];H[f+8>>2]=H[f+88>>2];H[f+12>>2]=c;g:{if(!PC(d,f+16|0,f)){break g}if(Ra[H[H[e>>2]>>2]](e,f+76|0,(r<<3)+a|0)|0){break g}a=0;break c}g=g+4|0;q=q-1|0;if(q){continue}break}}if(l){continue a}a=1}b=H[f+1180>>2];h:{if((b|0)<0|!(b&2147483647)){break h}b=H[f+1172>>2];if((b|0)==(f+144|0)|!b){break h}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}Oa=f+1184|0;return a}c=H[c+36>>2];H[H[f+1172>>2]+(l<<2)>>2]=c+48;l=l+1|0;if((l|0)==(H[f+1180>>2]&2147483647)){iC(f+144|0,l<<1)}h=L[c+16>>2];i=L[c>>2];m=O(h+i);h=O(h-i);j=L[c+24>>2];k=L[c+8>>2];i=O(j+k);n=L[c+20>>2];o=L[c+4>>2];p=O(n+o);j=O(j-k);k=O(n-o);continue}}}function zZ(a,b,c,d,e,f,g){var h=0,i=O(0),j=O(0),k=O(0),l=0,m=O(0),n=O(0),o=O(0),p=0,q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),G=0,J=O(0),K=O(0),M=O(0),N=O(0),Q=O(0),R=O(0),S=O(0),T=O(0),U=O(0),V=O(0),W=O(0),X=O(0),Y=O(0),Z=O(0);h=Oa-32|0;Oa=h;l=F[c+36|0]<<4;p=l+b|0;r=L[p+8>>2];l=a+l|0;s=L[l+8>>2];t=L[p>>2];A=L[l>>2];B=L[p+4>>2];C=L[l+4>>2];l=F[c+37|0]<<4;p=l+b|0;D=L[p+8>>2];l=a+l|0;E=L[l+8>>2];G=F[c+35|0]<<4;b=G+b|0;J=L[b+8>>2];a=a+G|0;K=L[a+8>>2];M=L[p>>2];N=L[l>>2];Q=L[b>>2];R=L[a>>2];S=L[p+4>>2];T=L[l+4>>2];U=L[b+4>>2];V=L[a+4>>2];x=L[c+8>>2];Y=L[c>>2];k=L[c+16>>2];Z=L[c+4>>2];H[h+28>>2]=0;u=O(K-J);i=O(O(s-r)-u);y=O(R-Q);j=O(O(A-t)-y);z=O(V-U);m=O(O(C-B)-z);W=O(O(i*i)+O(O(j*j)+O(m*m)));n=O(O(E-D)-u);o=O(O(N-M)-y);q=O(O(T-S)-z);X=O(O(n*n)+O(O(o*o)+O(q*q)));v=O(O(i*n)+O(O(j*o)+O(m*q)));w=O(O(W*X)-O(v*v));w=w>O(1.1920928955078125e-7)?O(O(1)/w):O(0);u=O(O(x*k)-u);x=O(u*i);i=O(O(Y*k)-y);k=O(O(Z*k)-z);j=O(x+O(O(i*j)+O(m*k)));i=O(O(u*n)+O(O(i*o)+O(q*k)));k=O(w*O(O(X*j)-O(v*i)));i=O(w*O(O(W*i)-O(v*j)));j=O(O(1)-O(k+i));L[h+24>>2]=O(O(s*k)+O(E*i))+O(K*j);L[h+20>>2]=O(O(C*k)+O(T*i))+O(V*j);L[h+16>>2]=O(O(A*k)+O(N*i))+O(R*j);H[h+12>>2]=0;L[h+8>>2]=O(O(r*k)+O(D*i))+O(J*j);L[h+4>>2]=O(O(B*k)+O(S*i))+O(U*j);L[h>>2]=O(O(t*k)+O(M*i))+O(Q*j);k=L[c+8>>2];n=L[c+4>>2];m=O(-n);o=L[c>>2];q=O(-o);i=O(P(L[c+16>>2]));a:{if(f){a=H[h+20>>2];H[g>>2]=H[h+16>>2];H[g+4>>2]=a;a=H[h+28>>2];H[g+8>>2]=H[h+24>>2];H[g+12>>2]=a;a=H[h+4>>2];H[g+16>>2]=H[h>>2];H[g+20>>2]=a;a=H[h+12>>2];H[g+24>>2]=H[h+8>>2];H[g+28>>2]=a;L[g+36>>2]=m;L[g+32>>2]=q;break a}a=H[e+4>>2];v=L[a+16>>2];a=I[a+32|0];b=H[d+4>>2];j=L[b+16>>2];b=I[b+32|0];r=L[h+16>>2];s=L[h+20>>2];t=L[h+24>>2];H[g+12>>2]=0;j=b?j:O(0);L[g+8>>2]=t+O(k*j);L[g+4>>2]=s+O(n*j);L[g>>2]=r+O(o*j);r=L[h>>2];s=L[h+4>>2];t=L[h+8>>2];L[g+36>>2]=m;L[g+32>>2]=q;H[g+28>>2]=0;m=a?v:O(0);L[g+24>>2]=t-O(k*m);L[g+20>>2]=s-O(n*m);L[g+16>>2]=r-O(o*m);i=O(i+O(j+m))}L[g+64>>2]=-i;H[g+44>>2]=0;L[g+40>>2]=-k;Oa=h+32|0}function _S(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=O(0),h=0,i=O(0),j=0,k=0,l=O(0),m=O(0),n=0,o=0,p=0,q=0,r=0,s=0;f=Oa-16|0;Oa=f;a:{if(!(Ra[H[H[b>>2]>>2]](b)|0)){o5(H[33808],4,7031,138,57096,0);break a}b:{c:{switch(H[b+100>>2]){case 0:c=H[33808];d=Ra[H[H[c>>2]+20>>2]](c)|0?28550:55639;k=Ra[H[H[c+12>>2]+8>>2]](c+12|0,544,d,7031,147)|0;c=k;d=H[a+8>>2];j=Ra[H[H[d>>2]+28>>2]](d)|0;e=H[a+8>>2];d=Oa-16|0;Oa=d;H[c>>2]=124876;h=c+8|0;e=oT(h,b,e);H[c+12>>2]=0;H[c+8>>2]=124804;H[c>>2]=124652;i=L[b+104>>2];L[c+532>>2]=i;m=L[b+108>>2];L[c+536>>2]=m;g=L[b+112>>2];L[c+540>>2]=g;H[d>>2]=3;l=g;g=L[c+516>>2];L[d+12>>2]=l*g;L[d+8>>2]=m*g;L[d+4>>2]=i*g;qT(e,j,d,H[b+88>>2]);Oa=d+16|0;b=h;break b;case 1:break c;default:break a}}c=H[33808];d=Ra[H[H[c>>2]+20>>2]](c)|0?28674:55639;k=Ra[H[H[c+12>>2]+8>>2]](c+12|0,544,d,7031,153)|0;c=k;d=H[a+8>>2];j=Ra[H[H[d>>2]+28>>2]](d)|0;e=H[a+8>>2];d=Oa-16|0;Oa=d;H[c>>2]=124420;h=c+8|0;e=oT(h,b,e);H[c+12>>2]=1;H[c+8>>2]=124348;H[c>>2]=124196;g=L[b+104>>2];L[c+532>>2]=g;i=L[b+108>>2];L[c+536>>2]=i;H[c+540>>2]=H[b+112>>2];H[d>>2]=2;l=O(i*O(.5));i=L[c+516>>2];L[d+8>>2]=l*i;L[d+4>>2]=g*i;qT(e,j,d,H[b+88>>2]);Oa=d+16|0;b=h}H[f+8>>2]=b;c=H[a+72>>2];d:{if(c>>>0>=(H[a+76>>2]&2147483647)>>>0){b=0;c=H[a+76>>2]&2147483647;e=c?c<<1:1;e:{if(!e){break e}c=e<<2;if(!c){break e}b=H[33808];d=b+12|0;b=(o=d,p=c,q=Ra[H[H[b>>2]+20>>2]](b)|0?49522:55639,r=13582,s=553,n=H[H[d>>2]+8>>2],Ra[n](o|0,p|0,q|0,r|0,s|0)|0)}d=H[a+72>>2];h=(d<<2)+b|0;if((d|0)>0){j=H[a+68>>2];c=b;while(1){H[c>>2]=H[j>>2];j=j+4|0;c=c+4|0;if(h>>>0>c>>>0){continue}break}}H[h>>2]=H[f+8>>2];f:{if(H[a+76>>2]<0){break f}c=H[a+68>>2];if(!c){break f}d=H[33808]+12|0;Ra[H[H[d>>2]+12>>2]](d,c);d=H[a+72>>2]}H[a+76>>2]=e;H[a+68>>2]=b;H[a+72>>2]=d+1;break d}H[H[a+68>>2]+(c<<2)>>2]=b;H[a+72>>2]=c+1}b=H[f+8>>2];H[b+520>>2]=a;H[b+420>>2]=a;H[b+260>>2]=a;H[b+248>>2]=a;H[f+4>>2]=0;b=Ra[H[H[k>>2]+28>>2]](k)|0;c=f+4|0;Ra[H[H[b>>2]+96>>2]](b,c,1,0)|0;a=Nl(a+80|0,c,f+15|0);if(I[f+15|0]){break a}H[a>>2]=H[f+4>>2]}Oa=f+16|0;return k|0}function Ky(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=O(0),m=0,n=0,o=0,p=0,q=O(0),r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;k=32;m=Oa-16|0;Oa=m;F[m+12|0]=0;f=m-128|0;Oa=f;H[m+8>>2]=f;g=b-1|0;a:{if((g|0)<=0){break a}while(1){b:{if((g|0)<=(h|0)){break b}while(1){if(g-h>>>0<=4){while(1){e=h;h=e+1|0;b=h;c=e;while(1){c=L[H[(b<<2)+a>>2]+16>>2]>2]+16>>2]?b:c;d=(b|0)<(g|0);b=b+1|0;if(d){continue}break}if((c|0)!=(e|0)){b=(c<<2)+a|0;d=H[b>>2];c=b;b=(e<<2)+a|0;H[c>>2]=H[b>>2];H[b>>2]=d}if((g|0)!=(h|0)){continue}break b}}i=(h<<2)+a|0;e=H[i>>2];l=L[e+16>>2];c=((g+h|0)/2<<2)+a|0;d=H[c>>2];c:{if(!(l>L[d+16>>2])){b=e;break c}H[i>>2]=d;H[c>>2]=e;b=H[i>>2];l=L[b+16>>2];d=e}n=(g<<2)+a|0;e=H[n>>2];q=L[e+16>>2];d:{if(!(q>2]=e;H[n>>2]=b;d=H[c>>2]}if(L[d+16>>2]>l){H[c>>2]=b;H[n>>2]=d;d=H[c>>2]}b=c;c=g-1|0;i=(c<<2)+a|0;H[b>>2]=H[i>>2];H[i>>2]=d;b=h;while(1){l=L[d+16>>2];while(1){e=b;b=b+1|0;n=(b<<2)+a|0;p=H[n>>2];if(l>L[p+16>>2]){continue}break}while(1){c=c-1|0;r=(c<<2)+a|0;s=H[r>>2];if(l>2]){continue}break}if((b|0)<(c|0)){H[n>>2]=s;H[r>>2]=p;d=H[i>>2];continue}break}H[n>>2]=d;H[i>>2]=p;e:{if((b-h|0)<(g-b|0)){f:{if(k-1>>>0>j>>>0){b=f;break f}d=k<<3;if(d){b=H[33808];c=b+12|0;b=(u=c,v=d,w=Ra[H[H[b>>2]+20>>2]](b)|0?51454:55639,x=14160,y=155,t=H[H[c>>2]+8>>2],Ra[t](u|0,v|0,w|0,x|0,y|0)|0)}else{b=0}d=R6(b,f,j<<2);if(!(!o|!f)){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,f)}k=k<<1;o=1;f=d}b=(j<<2)+b|0;H[b>>2]=h;H[b+4>>2]=e;h=e+2|0;break e}c=e+2|0;g:{if(k-1>>>0>j>>>0){b=f;break g}d=k<<3;if(d){b=H[33808];i=b+12|0;b=(y=i,x=d,w=Ra[H[H[b>>2]+20>>2]](b)|0?51454:55639,v=14160,u=155,t=H[H[i>>2]+8>>2],Ra[t](y|0,x|0,w|0,v|0,u|0)|0)}else{b=0}d=R6(b,f,j<<2);if(!(!o|!f)){o=H[33808]+12|0;Ra[H[H[o>>2]+12>>2]](o,f)}k=k<<1;o=1;f=d}b=(j<<2)+b|0;H[b>>2]=c;H[b+4>>2]=g;g=e}j=j+2|0;if((g|0)>(h|0)){continue}break}}if(j){b=j-2|0;h=H[(b<<2)+f>>2];g=H[((j<<2)+f|0)-4>>2];j=b;continue}break}if(!o|!f){break a}a=H[33808]+12|0;Ra[H[H[a>>2]+12>>2]](a,f)}if(I[m+12|0]){H5(H[m+8>>2])}Oa=m+16|0}function rC(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0;a:{b:{if(!H[a+164>>2]){break b}e=H[a+140>>2];g=H[b>>2];d=g-1|0;h=H[b+4>>2];b=h+(g^-1)|0;b=(d|0)!=-1?b+1|0:b;d=d^((b&4194303)<<10|d>>>22);j=d;f=b^b>>>22;i=f<<13|d>>>19;d=d<<13^-1;b=j+d|0;f=(i^-1)+f|0;d=b>>>0>>0?f+1|0:f;b=g7(b^((d&255)<<24|b>>>8),d^d>>>8,9,0);d=Qa;f=d>>>15|0;b=b^((d&32767)<<17|b>>>15);d=d^f;f=d<<27|b>>>5;i=b<<27^-1;b=b+i|0;d=(f^-1)+d|0;b=H[((H[a+148>>2]-1&(b^(((b>>>0>>0?d+1|0:d)&2147483647)<<1|b>>>31)))<<2)+e>>2];if((b|0)==-1){break b}e=H[a+136>>2];d=H[a+132>>2];while(1){f=d+N(b,20)|0;if((g|0)==H[f>>2]&(h|0)==H[f+4>>2]){break a}b=H[e+(b<<2)>>2];if((b|0)!=-1){continue}break}}c:{d:{e:{b=a+4|0;e=H[b+4>>2];d=N(e,48)+b|0;f:{if(!H[d+52>>2]){break f}a=(c<<15^-1)+c|0;a=N(a>>>10^a,9);a=a>>>6^a;a=(a<<11^-1)+a|0;a=H[H[d+28>>2]+((H[d+36>>2]-1&(a>>>16^a))<<2)>>2];if((a|0)==-1){break f}g=H[d+24>>2];d=H[d+20>>2];while(1){if(H[d+(a<<3)>>2]==(c|0)){break e}a=H[g+(a<<2)>>2];if((a|0)!=-1){continue}break}}e=H[b>>2];if(!H[(b+N(e,48)|0)+52>>2]){break c}d=b+N(e,48)|0;a=(c<<15^-1)+c|0;a=N(a>>>10^a,9);a=a>>>6^a;a=(a<<11^-1)+a|0;a=H[H[d+28>>2]+((H[d+36>>2]-1&(a>>>16^a))<<2)>>2];if((a|0)==-1){break c}g=H[d+24>>2];d=H[d+20>>2];while(1){if(H[d+(a<<3)>>2]!=(c|0)){a=H[g+(a<<2)>>2];if((a|0)!=-1){continue}break c}break}f=d+(a<<3)|0;break d}f=d+(a<<3)|0}H[b+112>>2]=0;j=b+N(e,48)|0;i=H[j+12>>2];d=b+108|0;g=Oa-16|0;Oa=g;a=H[f+4>>2];h=H[H[b+104>>2]+8>>2];e=h+N(c,24)|0;g:{if(!(L[a>>2]>L[e+12>>2]|L[a+4>>2]>L[e+16>>2]|(L[a+8>>2]>L[e+20>>2]|L[e>>2]>L[a+16>>2])|(L[e+4>>2]>L[a+20>>2]|L[e+8>>2]>L[a+24>>2]))){RB(a,h);break g}a=UB(i,a,c,h);H[g+12>>2]=a;h:{if(H[a+40>>2]|!a){break h}e=H[d+4>>2];if(e>>>0>=(H[d+8>>2]&2147483647)>>>0){QB(d,g+12|0);break h}H[H[d>>2]+(e<<2)>>2]=a;H[d+4>>2]=e+1}a=SB(i,c,h,d)}Oa=g+16|0;if(!(!H[b+112>>2]&H[f+4>>2]==(a|0))){cC(b,j+16|0,c,a)}}return}b=d+N(b,20)|0;VA(H[H[a+200>>2]+(H[b+16>>2]<<3)>>2],H[b+12>>2]);c=H[a+168>>2];b=H[b+16>>2];if(b>>>0>2]){b=H[H[a+172>>2]+(b<<2)>>2]}else{b=-1}VA(c,b);F[a+212|0]=1}function Nm(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=O(0),h=0,i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=O(0);h=H[33768];f=Oa-16|0;Oa=f;a=H[33808];c=a+12|0;a=(p=c,q=100,r=Ra[H[H[a>>2]+20>>2]](a)|0?39962:55639,s=4459,t=580,o=H[H[c>>2]+8>>2],Ra[o](p|0,q|0,r|0,s|0,t|0)|0);H[a+4>>2]=196609;H[a+76>>2]=0;H[a+80>>2]=0;H[a+96>>2]=h;H[a+12>>2]=1;H[a+8>>2]=127808;H[a>>2]=127704;H[a+84>>2]=0;H[a+88>>2]=0;H[a+92>>2]=0;H[a+72>>2]=1;G[a+68>>1]=0;H[a+40>>2]=0;H[a+44>>2]=0;H[a+60>>2]=0;H[a+64>>2]=0;c=Oa-16|0;Oa=c;if(F[a+6|0]&1){e=H[a+60>>2];if(e){d=H[33808];Ra[H[H[d+12>>2]+12>>2]](d+12|0,e)}H[a+60>>2]=0}e=0;a:{if(!gW(72,70,72,70,c+12|0,c+11|0,b)){break a}o=a,t=dW(I[c+11|0],b),H[o+40>>2]=t;o=a,t=dW(I[c+11|0],b),H[o+44>>2]=t;o=a,u=eW(I[c+11|0],b),L[o+48>>2]=u;o=a,u=eW(I[c+11|0],b),L[o+52>>2]=u;o=a,u=eW(I[c+11|0],b),L[o+56>>2]=u;eW(I[c+11|0],b);o=a- -64|0,u=eW(I[c+11|0],b),L[o>>2]=u;o=a,t=cW(I[c+11|0],b),G[o+68>>1]=t;o=a,t=dW(I[c+11|0],b),H[o+72>>2]=t;g=eW(I[c+11|0],b);i=eW(I[c+11|0],b);j=eW(I[c+11|0],b);k=eW(I[c+11|0],b);l=eW(I[c+11|0],b);m=eW(I[c+11|0],b);L[a+32>>2]=O(l-i)*O(.5);L[a+28>>2]=O(k-g)*O(.5);L[a+20>>2]=O(i+l)*O(.5);L[a+16>>2]=O(g+k)*O(.5);L[a+36>>2]=O(m-j)*O(.5);L[a+24>>2]=O(j+m)*O(.5);o=a,t=dW(I[c+11|0],b),H[o+76>>2]=t;o=a,t=dW(I[c+11|0],b),H[o+80>>2]=t;o=a,u=eW(I[c+11|0],b),L[o+84>>2]=u;g=eW(I[c+11|0],b);H[a+60>>2]=0;L[a+88>>2]=g;e=1;d=N(H[a+44>>2],H[a+40>>2]);if(!d){break a}b:{d=d<<2;c:{if(!d){H[a+60>>2]=0;break c}n=H[33808];d=Ra[H[H[n+12>>2]+8>>2]](n+12|0,d,20591,9818,259)|0;H[a+60>>2]=d;if(d){break b}}e=0;o5(H[33808],16,9818,262,65445,0);break a}Ra[H[H[b>>2]>>2]](b,d,H[a+80>>2]<<2)|0;if(!I[c+11|0]|!H[a+80>>2]){break a}b=0;while(1){e=H[a+60>>2]+(b<<2)|0;d=I[e+1|0];F[e+1|0]=I[e|0];F[e|0]=d;e=1;b=b+1|0;if(b>>>0>2]){continue}break}}Oa=c+16|0;d:{if(!e){b=H[a+12>>2]-1|0;H[a+12>>2]=b;if(b){a=0;break d}Ra[H[H[a+8>>2]+8>>2]](a+8|0);a=0;break d}H[f+8>>2]=a;b=rg(h+88|0,f+8|0,f+15|0);if(!I[f+15|0]){H[b>>2]=H[f+8>>2]}}Oa=f+16|0;return a|0}function RJ(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;c=a+68|0;e=H[a+68>>2];d=H[a+88>>2];a:{if((e|0)==(d|0)){b=H[a+84>>2];if(b){d=H[33808]+12|0;Ra[H[H[d>>2]+12>>2]](d,b);H[a+84>>2]=0}b=H[a+80>>2];if(b){d=H[33808]+12|0;Ra[H[H[d>>2]+12>>2]](d,b)}H[a+72>>2]=0;H[a+76>>2]=0;H[a+80>>2]=0;H[a+84>>2]=0;b=H[a+64>>2];if(b){d=H[33808]+12|0;Ra[H[H[d>>2]+12>>2]](d,b)}H[a+88>>2]=0;H[a+64>>2]=0;break a}h=e-d|0;b:{if(h>>>0>=H[a+76>>2]>>>1>>>0){i=H[a+80>>2];if(e){g=H[a+84>>2];k=H[a+64>>2];c=0;d=0;while(1){j=H[k+(d<<2)>>2];if((j|0)!=-1){if((c|0)!=(d|0)){H[k+(c<<2)>>2]=j;e=i+(c<<3)|0;f=i+(d<<3)|0;H[e>>2]=H[f>>2];H[e+4>>2]=H[f+4>>2];e=g+(d<<4)|0;l=H[e>>2];m=H[e+4>>2];n=H[e+12>>2];f=g+(c<<4)|0;H[f+8>>2]=H[e+8>>2];H[f+12>>2]=n;H[f>>2]=l;H[f+4>>2]=m;e=H[a+68>>2]}H[(j<<2)+b>>2]=H[a>>2]|c<<3|4;c=c+1|0}d=d+1|0;if(e>>>0>d>>>0){continue}break}}b=i+(h<<3)|0;H[b>>2]=-1;H[b+40>>2]=-1;H[b+32>>2]=-1;H[b+24>>2]=-1;H[b+16>>2]=-1;H[b+8>>2]=-1;H[a+72>>2]=h;break b}c=h+6|0;d=c<<3;if(d){e=H[33808]+12|0;f=Ra[H[H[e>>2]+8>>2]](e,d,20591,10647,1282)|0}c=c<<4;if(c){d=H[33808]+12|0;k=Ra[H[H[d>>2]+8>>2]](d,c,20591,10647,1283)|0}c=(h<<3)+f|0;H[c>>2]=-1;H[c+40>>2]=-1;H[c+32>>2]=-1;H[c+24>>2]=-1;H[c+16>>2]=-1;H[c+8>>2]=-1;d=0;c=h<<2;if(c){e=H[33808]+12|0;j=Ra[H[H[e>>2]+8>>2]](e,c,20591,10647,1285)|0}i=H[a+84>>2];e=H[a+68>>2];if(e){m=H[a+80>>2];n=H[a+64>>2];c=0;while(1){l=H[(d<<2)+n>>2];if((l|0)!=-1){H[(c<<2)+j>>2]=l;o=c<<3;e=o+f|0;g=(d<<3)+m|0;H[e>>2]=H[g>>2];H[e+4>>2]=H[g+4>>2];e=(d<<4)+i|0;p=H[e>>2];q=H[e+4>>2];r=H[e+12>>2];g=(c<<4)+k|0;H[g+8>>2]=H[e+8>>2];H[g+12>>2]=r;H[g>>2]=p;H[g+4>>2]=q;H[(l<<2)+b>>2]=o|H[a>>2]|4;e=H[a+68>>2];c=c+1|0}d=d+1|0;if(e>>>0>d>>>0){continue}break}i=H[a+84>>2]}if(i){b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,i);H[a+84>>2]=0}b=H[a+80>>2];if(b){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}H[a+84>>2]=k;H[a+80>>2]=f;H[a+76>>2]=h;H[a+72>>2]=h;b=H[a+64>>2];if(b){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}H[a+64>>2]=j}H[a+68>>2]=h;c=a+88|0}H[c>>2]=0}function AV(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=0,m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=0,y=0,z=O(0),A=O(0),B=O(0);f=Oa-400|0;Oa=f;l=H[c+32>>2];a:{if(!e){v=O(1);q=O(0);break a}v=O(1);q=O(0);if(J[e+12>>1]!=2){break a}v=L[e+8>>2];w=L[e>>2];q=L[e+4>>2]}r=L[a+4>>2];h=L[c+4>>2];i=L[c+8>>2];j=L[c+12>>2];H[f+396>>2]=0;L[f+392>>2]=j;L[f+388>>2]=i;L[f+384>>2]=h;a=H[c+16>>2];x=H[c+20>>2];y=H[c+28>>2];H[f+376>>2]=H[c+24>>2];H[f+380>>2]=y;H[f+368>>2]=a;H[f+372>>2]=x;m=L[b+20>>2];n=L[d+20>>2];o=L[b+24>>2];z=L[d+24>>2];k=L[d+12>>2];s=L[d>>2];A=L[b+16>>2];B=L[d+16>>2];t=L[d+4>>2];u=L[d+8>>2];F[f+240|0]=0;H[f+232>>2]=0;H[f+236>>2]=0;H[f+224>>2]=0;H[f+228>>2]=0;H[f+216>>2]=0;H[f+220>>2]=0;H[f+208>>2]=0;H[f+212>>2]=0;H[f+352>>2]=l+16;H[f+360>>2]=H[l+56>>2]+N(I[l+55|0],20);F[f+364|0]=I[l+54|0];g=O(h*L[l+68>>2]);p=O(i*L[l+72>>2]);g=g<=p?g:p;p=O(j*L[l+76>>2]);g=g<=p?g:p;L[f+232>>2]=g*O(.02500000037252903);L[f+224>>2]=g*O(.10000000149011612);L[f+228>>2]=g*O(.05000000074505806);a=f+208|0;CU(f+384|0,f+368|0,f+256|0,f+304|0,a,h==O(1)&i==O(1)&j==O(1));H[f+356>>2]=H[l+60>>2];H[f+188>>2]=0;h=O(A-B);h=O(h+h);i=O(m-n);i=O(i+i);j=O(o-z);j=O(j+j);g=O(O(O(O(-s)*h)-O(i*t))-O(u*j));o=O(O(k*k)+O(-.5));m=O(O(O(j*o)+O(k*O(O(t*h)-O(s*i))))-O(u*g));L[f+184>>2]=m;n=O(O(O(i*o)+O(k*O(O(s*j)-O(u*h))))-O(t*g));L[f+180>>2]=n;H[f+172>>2]=0;L[f+168>>2]=m;L[f+164>>2]=n;L[f+192>>2]=r;H[f+124>>2]=0;L[f+120>>2]=m;L[f+116>>2]=n;k=O(O(O(h*o)+O(k*O(O(u*i)-O(t*j))))-O(s*g));L[f+112>>2]=k;H[f+140>>2]=4;L[f+176>>2]=k;L[f+160>>2]=k;F[f+144|0]=1;L[f+136>>2]=r;L[f+132>>2]=r;L[f+128>>2]=r;H[f+40>>2]=125948;H[f+44>>2]=f+112;H[f+32>>2]=126016;H[f+36>>2]=a;H[f+28>>2]=0;L[f+24>>2]=m-L[f+216>>2];L[f+20>>2]=n-L[f+212>>2];L[f+16>>2]=k-L[f+208>>2];H[f>>2]=0;a=DU(f+40|0,f+32|0,f+16|0,f,f+96|0,f+80|0,f- -64|0,f+48|0);if(!(!e|(a|0)!=2)){L[e+8>>2]=v;L[e+4>>2]=q;L[e>>2]=w}if(e){G[e+12>>1]=((a|0)==2)<<1}Oa=f+400|0;return(a|0)==2|0}function zD(a,b,c){a=a|0;b=b|0;c=c|0;var d=O(0),e=O(0),f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=0,n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=0,v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=O(0);b=Oa-144|0;Oa=b;m=1;a:{if(!(H[c+40>>2]&J[a+12>>1])){break a}u=H[c>>2];if(!H[u+588>>2]){break a}f=L[c+24>>2];g=L[c+20>>2];i=L[c+16>>2];e=L[c+12>>2];m=H[a+4>>2];v=L[m+60>>2];o=L[c+36>>2];p=L[m+120>>2];q=L[c+32>>2];r=L[m+116>>2];C=L[c+28>>2];D=L[m+112>>2];d=L[m+20>>2];l=L[m+16>>2];j=L[m+124>>2];k=L[m+12>>2];H[b+108>>2]=0;H[b+92>>2]=0;H[b+76>>2]=0;H[b+60>>2]=0;H[b+44>>2]=0;n=O(j*O(1.0099999904632568));L[b+72>>2]=n;L[b+68>>2]=n;h=O(e+e);s=O(g*h);j=O(i+i);w=O(f*j);x=O(j*g);y=O(h*f);t=O(O(1)-O(e*h));z=O(i*j);j=O(O(O(k*O(s+w))+O(l*O(x-y)))+O(d*O(t-z)));L[b+52>>2]=j;L[b+40>>2]=j;A=O(h*i);h=O(g+g);B=O(f*h);E=t;t=O(g*h);h=O(O(O(k*O(A-B))+O(l*O(E-t)))+O(d*O(x+y)));L[b+36>>2]=h;l=O(O(O(k*O(O(O(1)-z)-t))+O(l*O(A+B)))+O(d*O(s-w)));L[b+56>>2]=l;d=O(-j);d=d>2]=d;L[b+88>>2]=d;d=O(-h);d=d>2]=d;k=O(-l);s=k>2]=s;H[b+28>>2]=0;L[b+64>>2]=n;L[b+48>>2]=h;L[b+32>>2]=l;L[b+96>>2]=d;d=O(p-o);n=O(d+d);d=O(D-C);o=O(d+d);d=O(r-q);p=O(d+d);q=O(O(g*n)+O(O(e*o)+O(i*p)));r=O(O(f*f)+O(-.5));d=O(O(g*q)+O(O(n*r)-O(f*O(O(e*p)-O(o*i)))));L[b+24>>2]=d;k=O(O(i*q)+O(O(p*r)-O(f*O(O(g*o)-O(n*e)))));L[b+20>>2]=k;f=O(O(e*q)+O(O(o*r)-O(f*O(O(i*n)-O(p*g)))));L[b+16>>2]=f;L[b+80>>2]=s;e=O(v+v);b:{if(e>=O(3.4028234663852886e38)){i=h==O(0)?k:h>=O(0)?O(3.4028234663852886e38):O(-3.4028234663852886e38);e=l==O(0)?f:l>=O(0)?O(3.4028234663852886e38):O(-3.4028234663852886e38);if(j==O(0)){g=d;break b}g=j>=O(0)?O(3.4028234663852886e38):O(-3.4028234663852886e38);break b}g=O(d+O(j*e));i=O(k+O(h*e));e=O(f+O(l*e))}H[b+140>>2]=0;H[b+124>>2]=0;L[b+136>>2]=d>g?d:g;L[b+132>>2]=i>2]=d>2]=i>k?k:i;L[b+128>>2]=e>2]=e>f?f:e;c=H[c+4>>2];m=gC(H[c+12>>2],H[c+8>>2],u,b+16|0,H[a+8>>2])}Oa=b+144|0;return m|0}function UI(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0,k=0,l=O(0);j=Oa-16|0;Oa=j;a=H[a>>2];a:{if(!a){break a}a=H[a+32>>2];f=1;b:{if(!a){break b}c:{while(1){if(H[a+28>>2]==(b|0)){break c}a=H[a>>2];if(a){continue}break}f=1;break b}f=a}a=H[c>>2];if(a&1){eR(f,e);a=H[c>>2]}if(a&2){_H(f,2,1);a=H[c>>2]}if(a&128){if(H[f+8>>2]<0){_Q(f)}a=H[c>>2]}if(a&4){eR(f,e);a=H[c>>2]}if(a&8){_H(f,1,4);a=H[c>>2]}if(a&64){F[j+8|0]=I[d|0];h=Oa-48|0;Oa=h;i=H[f+28>>2];g=I[i- -64|0];d=g&5;b=I[j+8|0];a=b&5;d:{e:{if(((d|0)!=0|0)!=((a|0)!=0|0)){if(!(!d|a)){k=H[f+4>>2];e=g&4;f:{if(!e){break f}b=H[f+8>>2];a=b>>>5&67108863;d=H[H[k+40>>2]+980>>2];if(a>>>0>=(H[d+152>>2]&2147483647)>>>0){break f}if(H[H[d+148>>2]+(a<<2)>>2]>>>b&1){break e}}l=L[i+60>>2];b=H[k+44>>2];a=I[b+9|0];d=2;g:{if(a-3>>>0<4294967294){break g}d=2;if(!k){break g}d=F[b+44|0]&1?1:2}$H(f,l,a?(d|H[k+48>>2]<<2)+4|0:0,e);break d}aI(f);b=h+8|0;d=H[H[f+4>>2]+40>>2];a=H[H[d+976>>2]+1024>>2];Ra[H[H[a>>2]+84>>2]](b,a);qI(H[d+2168>>2],f,4,b,(H[d+2360>>2]&8)>>>3|0);break d}if(!(b&4)^(g&4)>>>2){break d}}_Q(f)}a=I[j+8|0]&2;h:{if(g&2){if(a){break h}b=H[f+4>>2];a=H[b+44>>2];if(I[a+9|0]-3>>>0<4294967294|!b|(H[f+36>>2]!=-1|K[b+152>>2]>4294967293)){break h}if(F[b+92|0]&1|(I[a+44|0]&3)==3|(!(I[H[f+28>>2]- -64|0]&2)|I[b+149|0]&16)){break h}iR(H[H[b+40>>2]+1152>>2],f);break h}if(!a|H[f+36>>2]==-1){break h}kR(H[H[H[f+4>>2]+40>>2]+1152>>2],f)}Oa=h+48|0;a=H[c>>2]}if(a&16){i=H[f+8>>2];if((i|0)<0){g=H[H[H[f+4>>2]+40>>2]+980>>2];e=i&2147483647;L[H[H[g+192>>2]+4>>2]+(e<<2)>>2]=L[H[f+28>>2]+60>>2];F[g+365|0]=1;h=e+32>>>5|0;i:{if(h>>>0<=(H[g+164>>2]&2147483647)>>>0){d=H[g+160>>2];break i}a=H[g+168>>2];d=Ra[H[H[a>>2]+8>>2]](a,h<<2,14905,438)|0;a=H[g+160>>2];j:{if(!a){break j}R6(d,a,H[g+164>>2]<<2);if(H[g+164>>2]<0){break j}b=H[g+160>>2];if(!b){break j}a=H[g+168>>2];Ra[H[H[a>>2]+12>>2]](a,b)}a=H[g+164>>2];S6((a<<2)+d|0,0,h-a<<2);H[g+164>>2]=h;H[g+160>>2]=d}a=(e>>>3&268435452)+d|0;H[a>>2]=H[a>>2]|1<>2]}if(!(a&32)){break a}_H(f,16,1)}Oa=j+16|0}function $U(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=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=0,s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=0,y=0,z=O(0);g=Oa-4288|0;Oa=g;h=L[d+4>>2];k=O(h+h);i=L[d+8>>2];o=O(k*i);q=L[d>>2];j=O(q+q);m=L[d+12>>2];p=O(j*m);l=O(o-p);s=O(j*i);t=O(k*m);n=O(s+t);o=O(o+p);u=O(j*h);v=O(i+i);w=O(v*m);m=O(u-w);p=O(s-t);s=O(u+w);j=O(O(1)-O(q*j));q=O(i*v);i=O(j-q);k=O(h*k);h=O(O(O(1)-k)-q);q=L[d+24>>2];t=L[d+20>>2];u=L[c+12>>2];v=L[c+8>>2];w=L[c+4>>2];z=L[d+16>>2];j=O(j-k);a:{if(ji){k=O(o-l);o=O(O(O(h+O(1))-i)-j);l=O(O(.5)/O(W(o)));i=O(k*l);h=O(O(n+p)*l);j=O(O(s+m)*l);l=O(o*l);break a}k=O(n-p);p=O(O(i+O(O(1)-h))-j);n=O(O(.5)/O(W(p)));i=O(k*n);h=O(O(o+l)*n);j=O(p*n);l=O(O(s+m)*n);break a}if(h>2]=q;L[g+4276>>2]=t;L[g+4272>>2]=z;L[g+4268>>2]=i;L[g+4264>>2]=h;L[g+4260>>2]=j;L[g+4256>>2]=l;H[g+4200>>2]=-1;L[g+28>>2]=u;L[g+24>>2]=v;L[g+20>>2]=w;H[g+16>>2]=3;r=g+4200|0;x=g+16|0;hU(r,x);H[g+4144>>2]=-1;y=g+4144|0;hU(y,e);H[g+4136>>2]=0;H[g+4140>>2]=0;d=0;H[g+4112>>2]=0;H[g+8>>2]=1065353216;H[g>>2]=0;H[g+4>>2]=0;c=Oa-400|0;Oa=c;e=c+328|0;mZ(lZ(c+104|0,r+4|0),e);h=L[r+8>>2];l=L[r+4>>2];i=L[g>>2];n=O(i+L[r+12>>2]);L[c+100>>2]=n;h=O(i+h);L[c+96>>2]=h;L[c+88>>2]=-n;L[c+84>>2]=-h;h=O(i+l);L[c+92>>2]=h;L[c+80>>2]=-h;r=c- -64|0;H[r>>2]=0;H[r+4>>2]=1065353216;H[c+56>>2]=0;H[c+60>>2]=0;H[c+48>>2]=0;H[c+52>>2]=1065353216;H[c+40>>2]=0;H[c+44>>2]=0;H[c+32>>2]=1065353216;H[c+36>>2]=1065353216;H[c+16>>2]=1065353216;H[c+20>>2]=0;F[c+72|0]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;H[c>>2]=1065353216;H[c+4>>2]=0;e=pY(e,c+80|0,y,g+4256|0,f,i,L[g+4>>2],L[g+8>>2],x,c,1);Oa=c+400|0;b:{if(!e){break b}if(!NU(a,b,H[g+4112>>2],g+16|0)){break b}d=H[g+4112>>2]!=0}Oa=g+4288|0;return d|0}function OL(a){a=a|0;var b=0,c=0,d=0,e=O(0),f=O(0),g=O(0),h=0,i=0,j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=0,t=O(0),u=O(0),v=0,w=0,x=0,y=0,z=0,A=0,B=O(0),C=O(0);s=H[a+60>>2];x=H[a+28>>2];y=H[a+32>>2];z=H[a+36>>2];A=H[a+40>>2];q=L[a+44>>2];v=H[a+48>>2];i=Oa-32|0;Oa=i;b=H[a+52>>2];w=H[a+56>>2];if(b>>>0>>0){while(1){a=b+1|0;d=a<<6;c=d+z|0;j=L[c+52>>2];k=L[c+40>>2];l=L[c+28>>2];m=L[c+56>>2];n=L[c+44>>2];o=L[c+32>>2];g=L[c+60>>2];h=d+y|0;r=L[h+40>>2];f=L[c+48>>2];p=L[h+36>>2];e=L[c+36>>2];t=L[h+32>>2];u=L[h+52>>2];B=L[h+56>>2];C=L[h+48>>2];H[i+28>>2]=0;H[i+12>>2]=0;L[i>>2]=C*q;L[i+8>>2]=B*q;L[i+4>>2]=u*q;u=e;e=O(t*q);t=f;f=O(p*q);p=g;g=O(r*q);L[i+24>>2]=O(O(u*e)+O(t*f))+O(p*g);L[i+20>>2]=O(O(e*o)+O(f*n))+O(g*m);L[i+16>>2]=O(O(e*l)+O(f*k))+O(g*j);d=H[H[x>>2]+(b<<2)>>2];b=H[d+36>>2];L[d>>2]=L[b>>2];L[d+4>>2]=L[b+4>>2];L[d+8>>2]=L[b+8>>2];L[d+12>>2]=L[b+12>>2];L[d+16>>2]=L[b+16>>2];L[d+20>>2]=L[b+20>>2];L[d+24>>2]=L[b+24>>2];e=L[c+8>>2];f=L[b>>2];g=L[c+12>>2];j=L[b+4>>2];k=L[b+12>>2];l=L[c+4>>2];m=L[b+8>>2];n=L[c>>2];o=O(O(O(e*f)+O(O(g*j)+O(k*l)))-O(m*n));r=O(O(O(O(g*k)-O(f*n))-O(l*j))-O(e*m));p=O(O(O(n*j)+O(O(g*m)+O(k*e)))-O(f*l));f=O(O(O(l*m)+O(O(g*f)+O(k*n)))-O(j*e));e=O(O(1)/O(W(O(O(r*r)+O(O(p*p)+O(O(f*f)+O(o*o)))))));L[b+4>>2]=o*e;L[b+12>>2]=r*e;L[b>>2]=f*e;L[b+8>>2]=p*e;L[b+16>>2]=L[c+16>>2];L[b+20>>2]=L[c+20>>2];L[b+24>>2]=L[c+24>>2];L[b+64>>2]=L[h>>2];L[b+68>>2]=L[h+4>>2];L[b+72>>2]=L[h+8>>2];j=L[c+52>>2];k=L[c+28>>2];l=L[c+40>>2];m=L[c+56>>2];n=L[c+32>>2];o=L[c+44>>2];e=L[h+16>>2];f=L[h+20>>2];g=L[h+24>>2];L[b+88>>2]=O(O(e*L[c+36>>2])+O(f*L[c+48>>2]))+O(g*L[c+60>>2]);L[b+84>>2]=O(O(e*n)+O(f*o))+O(g*m);L[b+80>>2]=O(O(e*k)+O(f*l))+O(g*j);if(ty(d,L[s+52>>2],I[s+64|0],I[s+66|0],i,H[H[v+100>>2]+(H[H[v+204>>2]+((H[(N(a,48)+A|0)+36>>2]&33554431)<<2)>>2]<<2)>>2]!=0)==O(0)){H[d+64>>2]=0;H[d+68>>2]=0;H[d+48>>2]=0;H[d+52>>2]=0;H[d+72>>2]=0;H[d+56>>2]=0;G[d+28>>1]=J[d+28>>1]|16}b=a;if((w|0)!=(b|0)){continue}break}}Oa=i+32|0}function Yw(a,b){a=a|0;b=b|0;var c=0,d=0,e=O(0),f=O(0),g=O(0),h=O(0),i=0,j=0,k=O(0),l=O(0),m=O(0),n=O(0),o=0,p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=0,w=0,x=0,y=O(0),z=O(0),A=0,B=O(0),C=O(0),D=O(0),E=O(0),G=O(0),J=O(0),K=0,M=O(0);c=Oa+-64|0;Oa=c;a:{if(I[a+488|0]){o5(H[33808],8,10222,545,66229,0);break a}v=H[a+448>>2];i=H[b+52>>2];H[c+56>>2]=0;H[c+48>>2]=0;H[c+52>>2]=0;H[c+40>>2]=0;H[c+44>>2]=0;H[c+32>>2]=0;H[c+36>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;K=Fw(i,v,c+16|0);H[c+40>>2]=0;H[c+44>>2]=0;H[c+48>>2]=H[b+24>>2];w=v<<5;j=H[i+4>>2];d=H[i+8>>2];x=H[(j+(d<<2)|0)-4>>2];if((w|0)<=(x-H[i+16>>2]|0)){o=x-w|0;H[c>>2]=o;b:{if(d>>>0>=(H[i+12>>2]&2147483647)>>>0){Xr(i+4|0,c);break b}H[j+(d<<2)>>2]=o;H[i+8>>2]=d+1}o=H[c>>2]}if(v){x=H[a+444>>2];w=H[b>>2];while(1){b=A<<5;d=b+w|0;k=L[d>>2];h=L[d+4>>2];j=b+o|0;b=H[(b+x|0)+16>>2];e=L[b+124>>2];L[j+8>>2]=e*L[d+8>>2];L[j+4>>2]=e*h;L[j>>2]=e*k;g=L[b>>2];h=O(g+g);e=L[b+8>>2];l=O(h*e);m=L[b+4>>2];f=O(m+m);n=L[b+12>>2];p=O(f*n);k=O(l-p);C=O(l+p);l=L[b+120>>2];p=O(C*l);D=O(O(1)-O(g*h));q=O(m*f);g=O(D-q);r=L[b+112>>2];s=O(e+e);E=O(e*s);G=O(O(O(1)-q)-E);q=O(r*G);t=O(f*e);y=O(h*n);e=O(t+y);f=L[b+116>>2];z=O(h*m);u=O(s*n);J=O(z-u);h=O(f*J);m=O(O(p*g)+O(O(q*k)+O(e*h)));n=L[d+24>>2];M=O(n*O(O(O(g*l)*g)+O(O(O(r*k)*k)+O(e*O(e*f)))));s=L[d+16>>2];B=L[d+20>>2];t=O(t-y);l=O(t*l);y=O(l*g);g=O(z+u);r=O(r*g);z=O(r*k);u=e;e=O(D-E);k=O(f*e);f=O(y+O(z+O(u*k)));L[j+24>>2]=M+O(O(s*m)+O(B*f));u=O(n*f);f=O(O(p*t)+O(O(q*g)+O(e*h)));L[j+20>>2]=u+O(O(s*f)+O(B*O(O(l*t)+O(O(r*g)+O(e*k)))));L[j+16>>2]=O(n*m)+O(O(s*O(O(p*C)+O(O(q*G)+O(J*h))))+O(B*f));A=A+1|0;if((A|0)!=(v|0)){continue}break}}b=a+112|0;H[c+32>>2]=o;c:{if(F[H[a+476>>2]]&1){H[c+8>>2]=0;H[c>>2]=0;H[c+4>>2]=0;d=c+16|0;zw(b,d);S6(H[c+24>>2],0,H[a+448>>2]<<5);vw(b,c,d);Mw(b,d);Ow(b,d);Nw(b,d);break c}H[c+8>>2]=0;H[c>>2]=0;H[c+4>>2]=0;d=c+16|0;zw(b,d);S6(H[c+24>>2],0,H[a+448>>2]<<5);vw(b,c,d);Mw(b,d);Ow(b,d);Qw(b,d);Rw(b,d)}Lw(i,K);Lw(i,o)}Oa=c- -64|0}function ln(a,b,c){a=a|0;b=b|0;c=c|0;var d=O(0),e=0,f=O(0),g=O(0),h=O(0),i=0,j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=0,p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=0,v=O(0),w=O(0),x=O(0),y=O(0),z=O(0);i=Oa-32|0;Oa=i;o=vg(a);p=L[b+20>>2];z=L[b+16>>2];u=H[a+316>>2];e=u&1024?H[a+56>>2]+144|0:a+112|0;j=L[e+8>>2];q=L[e+4>>2];r=L[e+12>>2];s=L[e>>2];k=L[b+12>>2];f=L[b+8>>2];g=L[b>>2];h=L[b+4>>2];d=O(O(1)/O(W(O(O(k*k)+O(O(f*f)+O(O(g*g)+O(h*h)))))));f=O(f*d);l=L[e+24>>2];l=O(l+l);g=O(g*d);m=L[e+16>>2];m=O(m+m);h=O(h*d);n=L[e+20>>2];n=O(n+n);t=O(O(f*l)+O(O(g*m)+O(h*n)));d=O(k*d);k=O(O(d*d)+O(-.5));v=O(L[b+24>>2]+O(O(f*t)+O(O(l*k)+O(d*O(O(g*n)-O(m*h))))));L[i+24>>2]=v;p=O(p+O(O(h*t)+O(O(n*k)+O(d*O(O(f*m)-O(l*g))))));L[i+20>>2]=p;w=O(O(O(O(d*r)-O(s*g))-O(h*q))-O(f*j));L[i+12>>2]=w;x=O(O(O(g*q)+O(O(d*j)+O(f*r)))-O(s*h));L[i+8>>2]=x;y=O(O(O(f*s)+O(O(d*q)+O(h*r)))-O(j*g));L[i+4>>2]=y;j=O(O(O(h*j)+O(O(d*s)+O(g*r)))-O(q*f));L[i>>2]=j;d=O(z+O(O(g*t)+O(O(m*k)+O(d*O(O(h*l)-O(n*f))))));L[i+16>>2]=d;L[a+280>>2]=v;L[a+276>>2]=p;L[a+272>>2]=d;L[a+268>>2]=w;L[a+264>>2]=x;L[a+260>>2]=y;L[a+256>>2]=j;b=a+48|0;a:{b:{c:{switch((H[a+52>>2]>>>30|0)-2|0){case 0:e=H[b>>2];if(I[e+4785|0]){break b}default:CF(a- -64|0,i);break a;case 1:break c}}e=H[b>>2]}H[a+316>>2]=u&-2097153;$t(e,b);H[a+316>>2]=H[a+316>>2]|1048576}if(o){pt(a+20|0,o+5584|0,a);e=o+5652|0;H[e>>2]=H[e>>2]+1}if(H[a+40>>2]){o5(H[33808],8,10414,102,63783,0);fB(H[a+40>>2],a)}d:{if(!o|!c){break d}c=H[a+56>>2];e=H[a+52>>2];if(I[(e&1?c:(b+H[((e>>>22&60)+76348|0)+12>>2]|0)+8|0)|0]&8|F[(I[a+317|0]&64?c+268|0:a+108|0)|0]&1){break d}d=L[a+308>>2];c=H[H[((J[a+4>>1]<<2)+73232|0)+72>>2]+a>>2];if(c){c=c-16|0}else{c=0}f=L[c+5148>>2];c=d>2]?1:c)){break d}d=c?f:d;e:{f:{switch((H[a+52>>2]>>>30|0)-2|0){case 0:e=H[b>>2];if(I[e+4785|0]){break e}default:L[a+308>>2]=d;H[a+312>>2]=0;WF(a- -64|0,d,1);break d;case 1:break f}}e=H[b>>2]}L[a+308>>2]=d;H[a+312>>2]=0;$t(e,b);H[a+316>>2]=H[a+316>>2]&-117440513|83886080}Oa=i+32|0}function kW(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=O(g);h=h|0;i=i|0;j=O(j);var k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0);c=Oa-176|0;Oa=c;j=L[b+20>>2];k=L[e+40>>2];m=L[b+24>>2];n=L[e+44>>2];o=L[b+16>>2];p=L[e+36>>2];L[c+112>>2]=L[e>>2];L[c+116>>2]=L[e+4>>2];L[c+120>>2]=L[e+8>>2];L[c+124>>2]=L[e+12>>2];L[c+128>>2]=L[e+16>>2];L[c+132>>2]=L[e+20>>2];L[c+136>>2]=L[e+24>>2];L[c+140>>2]=L[e+28>>2];l=L[e+32>>2];q=O(n-m);L[c+156>>2]=q;r=O(k-j);L[c+152>>2]=r;L[c+144>>2]=l;p=O(p-o);L[c+148>>2]=p;L[c+160>>2]=L[e+48>>2];L[c+164>>2]=L[e+52>>2];L[c+168>>2]=L[e+56>>2];j=L[b>>2];k=O(j+j);l=L[b+8>>2];s=L[b+4>>2];m=L[b+12>>2];n=O(m+m);o=L[a+8>>2];t=O(O(O(k*l)-O(s*n))*o);L[c+88>>2]=t;L[c+100>>2]=-t;l=O(o*O(O(l*n)+O(k*s)));L[c+84>>2]=l;L[c+96>>2]=-l;j=O(o*O(O(j*k)+O(O(m*n)+O(-1))));L[c+80>>2]=j;L[c+92>>2]=-j;L[c+104>>2]=L[a+4>>2];L[c+48>>2]=L[d>>2];L[c+52>>2]=L[d+4>>2];L[c+56>>2]=L[d+8>>2];j=L[d+12>>2];L[c+72>>2]=q;L[c+68>>2]=r;L[c+64>>2]=p;L[c+60>>2]=j;j=L[f>>2];k=L[f+4>>2];L[c+24>>2]=-L[f+8>>2];L[c+20>>2]=-k;L[c+16>>2]=-j;G[c+8>>1]=J[i>>1];a=c+160|0;d=l1(c+80|0,c+48|0,a,c+16|0,g,h+16|0,h+40|0,c+32|0,c+8|0);a:{if(!d){break a}g=L[c+32>>2];j=L[c+36>>2];k=L[c+40>>2];G[h+12>>1]=2;L[h+36>>2]=-k;L[h+32>>2]=-j;L[h+28>>2]=-g;if(!(F[i|0]&1)){break a}g=L[h+40>>2];if(g==O(0)){break a}j=L[f+8>>2];k=L[f+4>>2];L[c+148>>2]=O(g*L[f>>2])+L[c+148>>2];L[c+152>>2]=O(g*k)+L[c+152>>2];L[c+156>>2]=O(g*j)+L[c+156>>2];sZ(c+80|0,c+92|0,c+148|0,a,c+112|0,0,c+16|0);m=L[b+16>>2];n=L[b+20>>2];o=L[b+24>>2];p=L[c+148>>2];l=L[c+136>>2];q=L[c+112>>2];r=L[c+124>>2];s=L[c+152>>2];t=L[c+140>>2];u=L[c+116>>2];v=L[c+128>>2];w=L[c+156>>2];x=L[c+144>>2];g=L[c+24>>2];y=L[c+120>>2];j=L[c+16>>2];z=L[c+132>>2];k=L[c+20>>2];G[h+12>>1]=J[h+12>>1]|1;L[h+24>>2]=o+O(w+O(O(O(j*y)+O(k*z))+O(g*x)));L[h+20>>2]=n+O(s+O(O(O(j*u)+O(k*v))+O(g*t)));L[h+16>>2]=m+O(p+O(O(O(j*q)+O(k*r))+O(g*l)))}Oa=c+176|0;return d|0}function g0(a,b,c){var d=0,e=O(0),f=0,g=0,h=0,i=O(0),j=0,k=O(0),l=O(0),m=O(0),n=O(0),o=0,p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=0,x=O(0);h=Oa-32|0;Oa=h;p=L[a+2264>>2];q=L[a+2260>>2];m=L[a+2280>>2];r=L[a+2272>>2];s=L[a+2276>>2];i=L[a+2296>>2];t=L[a+2288>>2];u=L[a+2292>>2];v=L[a+2256>>2];k=L[b+8>>2];e=L[b>>2];l=L[b+4>>2];H[h+28>>2]=0;i=O(O(i*k)+O(O(t*e)+O(l*u)));L[h+24>>2]=i;m=O(O(m*k)+O(O(r*e)+O(l*s)));L[h+20>>2]=m;k=O(O(p*k)+O(O(v*e)+O(l*q)));L[h+16>>2]=k;d=H[a+2324>>2];b=d-c|0;if(b>>>0>=6){e1(H[a+2320>>2]+(c<<6)|0,b);d=c+5|0;H[a+2324>>2]=d}if(c>>>0>>0){b=c;while(1){o=b;b=b+1|0;j=b;if(b>>>0>>0){while(1){g=H[a+2320>>2];f=g+(j<<6)|0;w=(o<<6)+g|0;e=O(L[f+24>>2]-L[w+24>>2]);x=O(e*e);e=O(L[f+16>>2]-L[w+16>>2]);n=O(e*e);e=O(L[f+20>>2]-L[w+20>>2]);if(L[a+2240>>2]>O(x+O(n+O(e*e)))){d=((d<<6)+g|0)+-64|0;g=H[d+4>>2];H[f>>2]=H[d>>2];H[f+4>>2]=g;H[f+48>>2]=H[d+48>>2];g=H[d+44>>2];H[f+40>>2]=H[d+40>>2];H[f+44>>2]=g;g=H[d+36>>2];H[f+32>>2]=H[d+32>>2];H[f+36>>2]=g;g=H[d+28>>2];H[f+24>>2]=H[d+24>>2];H[f+28>>2]=g;g=H[d+20>>2];H[f+16>>2]=H[d+16>>2];H[f+20>>2]=g;g=H[d+12>>2];H[f+8>>2]=H[d+8>>2];H[f+12>>2]=g;d=H[a+2324>>2]-1|0;H[a+2324>>2]=d;j=j-1|0}j=j+1|0;if(j>>>0>>0){continue}break}}if(b>>>0>>0){continue}break}}H[h>>2]=2139095039;a:{if(c>>>0>=d>>>0){break a}j=c;while(1){o=j<<6;b=o+H[a+2320>>2]|0;L[b+32>>2]=k;L[b+40>>2]=i;L[b+36>>2]=m;k=L[b+44>>2];m=L[a+2296>>2];p=L[a+2292>>2];q=L[a+2288>>2];r=L[a+2280>>2];s=L[a+2276>>2];t=L[a+2272>>2];e=L[a+2264>>2];l=L[a+2312>>2];i=L[a+2260>>2];u=L[a+2308>>2];v=L[a+2256>>2];n=L[a+2304>>2];b=o+H[a+2320>>2]|0;H[b+28>>2]=0;x=e;e=O(L[b+24>>2]-l);l=O(L[b+16>>2]-n);n=i;i=O(L[b+20>>2]-u);L[b+16>>2]=O(x*e)+O(O(v*l)+O(n*i));L[b+20>>2]=O(r*e)+O(O(t*l)+O(i*s));L[b+24>>2]=O(m*e)+O(O(q*l)+O(i*p));e=L[h>>2];L[h>>2]=e>k?k:e;j=j+1|0;if(j>>>0>=K[a+2324>>2]){break a}i=L[h+24>>2];m=L[h+20>>2];k=L[h+16>>2];continue}}h0(a,h+16|0,h,c);if(K[a+2324>>2]>15){e0(a,6,1)}Oa=h+32|0}function OC(a,b,c,d,e){var f=O(0),g=0,h=O(0),i=O(0),j=O(0),k=0,l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=0,r=O(0),s=0,t=0,u=O(0),v=0,w=O(0),x=O(0),y=0;k=Oa-1056|0;Oa=k;F[k+1040|0]=1;H[k+1048>>2]=256;H[k+1052>>2]=256;H[k+1044>>2]=k+16;v=H[c+8>>2];H[k+16>>2]=v;q=1;a:{while(1){q=q-1|0;g=H[H[k+1044>>2]+(q<<2)>>2];i=L[g>>2];f=L[g+12>>2];l=O(i+f);f=O(f-i);h=L[g+8>>2];j=L[g+20>>2];i=O(h+j);n=L[g+4>>2];m=L[g+16>>2];o=O(n+m);h=O(j-h);j=O(m-n);while(1){b:{n=L[d+8>>2];m=O(n-O(i*O(.5)));h=O(h*O(.5));r=h>m?m:h;i=L[d>>2];p=O(i-O(l*O(.5)));f=O(f*O(.5));w=f>p?p:f;l=L[d+4>>2];o=O(l-O(o*O(.5)));j=O(j*O(.5));x=j>o?o:j;u=L[d+16>>2];h=O(-h);h=O(m-(h=O(O(h*h)+O(p+O(f*f))))){break b}g=H[g+24>>2];s=g>>>1|0;if(g&1){t=H[c>>2]+(g>>>3&536870908)|0;c:{d:{s=s&15;switch(s|0){case 0:break b;case 1:break d;default:break c}}if(Ra[H[H[e>>2]>>2]](e,k+12|0,(H[t>>2]<<3)+a|0)|0){break b}a=0;break a}while(1){y=H[t>>2];g=N(y,24)+b|0;o=L[g+8>>2];h=L[g+20>>2];f=O(n-O(O(o+h)*O(.5)));o=O(O(h-o)*O(.5));h=f>2];n=L[g+12>>2];i=O(i-O(O(j+n)*O(.5)));j=O(O(n-j)*O(.5));n=i>2];r=L[g+16>>2];l=O(l-O(O(m+r)*O(.5)));m=O(O(r-m)*O(.5));r=l>2]>>2]](e,k+12|0,(y<<3)+a|0)|0){break e}a=0;break a}s=s-1|0;if(!s){break b}t=t+4|0;u=L[d+16>>2];n=L[d+8>>2];l=L[d+4>>2];i=L[d>>2];continue}}g=N(s,28)+v|0;H[H[k+1044>>2]+(q<<2)>>2]=g+28;q=q+1|0;if((q|0)==(H[k+1052>>2]&2147483647)){QC(k+16|0,q<<1)}i=L[g>>2];f=L[g+12>>2];l=O(i+f);f=O(f-i);h=L[g+8>>2];j=L[g+20>>2];i=O(h+j);n=L[g+4>>2];m=L[g+16>>2];o=O(n+m);h=O(j-h);j=O(m-n);continue}break}if(q){continue}break}a=1}b=H[k+1052>>2];f:{if((b|0)<0|!(b&2147483647)){break f}b=H[k+1044>>2];if((b|0)==(k+16|0)|!b){break f}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}Oa=k+1056|0;return a}function Or(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,o=0,p=0,q=0,r=0;e=Oa+-64|0;Oa=e;F[e+48|0]=1;H[e+56>>2]=0;H[e+60>>2]=10;H[e+52>>2]=e+8;i=H[a+84>>2];a:{b:{if(i>>>0>(H[e+60>>2]&2147483647)>>>0){d=e+8|0;b=0;c:{if(!i){break c}f=i<<2;if(!(I[d+40|0]|f>>>0>40)){F[d+40|0]=1;b=d;break c}b=0;if(!f){break c}c=H[33808];b=c+12|0;b=(n=b,o=f,p=Ra[H[H[c>>2]+20>>2]](c)|0?50940:55639,q=13582,r=553,m=H[H[b>>2]+8>>2],Ra[m](n|0,o|0,p|0,q|0,r|0)|0)}c=H[d+48>>2];if((c|0)>0){f=b+(c<<2)|0;g=H[d+44>>2];c=b;while(1){H[c>>2]=H[g>>2];g=g+4|0;c=c+4|0;if(f>>>0>c>>>0){continue}break}}d:{if(H[d+52>>2]<0){break d}f=H[d+44>>2];if((f|0)==(d|0)){F[d+40|0]=0;break d}if(!f){break d}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,f)}H[d+52>>2]=i;H[d+44>>2]=b;break b}if(!i){break a}}while(1){l=H[a+80>>2]+(h<<2)|0;b=H[e+56>>2];e:{if(b>>>0>=(H[e+60>>2]&2147483647)>>>0){d=e+8|0;c=H[d+52>>2]&2147483647;j=c?c<<1:1;b=0;f:{if(!j){break f}f=j<<2;if(!(I[d+40|0]|f>>>0>40)){F[d+40|0]=1;b=d;break f}b=0;if(!f){break f}c=H[33808];b=c+12|0;b=(r=b,q=f,p=Ra[H[H[c>>2]+20>>2]](c)|0?50940:55639,o=13582,n=553,m=H[H[b>>2]+8>>2],Ra[m](r|0,q|0,p|0,o|0,n|0)|0)}g=H[d+48>>2];f=b+(g<<2)|0;if((g|0)>0){k=H[d+44>>2];c=b;while(1){H[c>>2]=H[k>>2];k=k+4|0;c=c+4|0;if(f>>>0>c>>>0){continue}break}}H[f>>2]=H[l>>2];g:{if(H[d+52>>2]<0){break g}f=H[d+44>>2];if((f|0)==(d|0)){F[d+40|0]=0;break g}if(!f){break g}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,f);g=H[d+48>>2]}H[d+52>>2]=j;H[d+44>>2]=b;H[d+48>>2]=g+1;break e}H[H[e+52>>2]+(b<<2)>>2]=H[l>>2];H[e+56>>2]=b+1}h=h+1|0;if((i|0)!=(h|0)){continue}break}}H[a+84>>2]=0;h:{if(I[a+92|0]){Ra[H[H[a>>2]+20>>2]](a);break h}H[a+20>>2]=H[a+20>>2]-1}if(H[e+56>>2]){h=0;while(1){a=H[H[e+52>>2]+(h<<2)>>2];Ra[H[H[a>>2]+20>>2]](a);h=h+1|0;if(h>>>0>2]){continue}break}}a=H[e+60>>2];i:{if((a|0)<0|!(a&2147483647)){break i}b=H[e+52>>2];if((b|0)==(e+8|0)|!b){break i}a=H[33808];Ra[H[H[a+12>>2]+12>>2]](a+12|0,b)}Oa=e- -64|0}function iu(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=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),F=O(0);s=L[b+8>>2];k=L[d>>2];o=L[c+4>>2];m=L[c+12>>2];l=L[d+8>>2];i=L[d+12>>2];p=L[c+8>>2];q=L[c>>2];j=L[d+4>>2];y=O(O(k*o)+O(O(O(m*l)-O(i*p))-O(q*j)));t=O(O(j*p)+O(O(O(m*k)-O(i*q))-O(o*l)));u=O(t+t);z=O(O(l*q)+O(O(O(m*j)-O(i*o))-O(p*k)));v=O(O(p*l)+O(O(o*j)+O(O(m*i)+O(q*k))));w=O(v+v);D=O(s*O(O(y*u)-O(z*w)));C=O(-q);B=L[c+16>>2];k=O(L[d+16>>2]-B);l=O(k+k);E=L[c+20>>2];k=O(L[d+20>>2]-E);i=O(k+k);r=L[c+24>>2];k=O(L[d+24>>2]-r);j=O(k+k);n=O(O(O(C*l)-O(i*o))-O(p*j));k=O(O(m*m)+O(-.5));F=O(O(O(j*k)+O(m*O(O(o*l)-O(q*i))))-O(p*n));y=O(s*O(O(y*w)+O(u*z)));z=O(O(O(i*k)+O(m*O(O(q*j)-O(p*l))))-O(o*n));n=O(O(O(l*k)+O(m*O(O(p*i)-O(o*j))))-O(q*n));A=O(s*O(O(t*u)+O(O(v*w)+O(-1))));x=L[b+4>>2];l=O(O(n-A)-x);i=O(q+q);j=O(m+m);s=O(O(i*p)-O(o*j));t=O(O(p*j)+O(i*o));u=O(O(q*i)+O(O(m*j)+O(-1)));v=O(-p);w=O(-o);i=O(O(n+A)-x);A=L[e>>2];b=i<=A;a:{if(!b){break a}a=H[g+4096>>2];if(a>>>0>63){break a}H[g+4096>>2]=a+1;a=(a<<6)+g|0;L[a+8>>2]=-s;L[a+4>>2]=-t;L[a>>2]=-u;H[a+52>>2]=-1;L[a+12>>2]=i;x=r;j=O(F+D);j=O(j+j);i=O(i+i);n=O(z+y);n=O(n+n);r=O(O(p*j)+O(O(q*i)+O(o*n)));L[a+24>>2]=x+O(O(p*r)+O(O(j*k)+O(m*O(O(q*n)+O(i*w)))));L[a+20>>2]=E+O(O(o*r)+O(O(n*k)+O(m*O(O(p*i)+O(j*C)))));L[a+16>>2]=B+O(O(q*r)+O(O(i*k)+O(m*O(O(o*j)+O(n*v)))))}b:{if(!(l<=A)){break b}b=1;a=H[g+4096>>2];if(a>>>0>63){break b}r=L[c+16>>2];B=L[c+20>>2];i=L[c+24>>2];H[g+4096>>2]=a+1;a=(a<<6)+g|0;L[a+8>>2]=-s;L[a+4>>2]=-t;L[a>>2]=-u;H[a+52>>2]=-1;L[a+12>>2]=l;x=i;i=O(F-D);i=O(i+i);l=O(l+l);j=O(z-y);j=O(j+j);n=O(O(p*i)+O(O(q*l)+O(o*j)));L[a+24>>2]=x+O(O(p*n)+O(O(i*k)+O(m*O(O(q*j)+O(l*w)))));L[a+20>>2]=B+O(O(o*n)+O(O(j*k)+O(m*O(O(p*l)+O(i*C)))));L[a+16>>2]=r+O(O(q*n)+O(O(l*k)+O(m*O(O(o*i)+O(j*v)))))}return b|0}function qF(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=O(0),m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;j=Oa-16|0;Oa=j;H[j+12>>2]=d;H[j+8>>2]=b;d=H[a+28>>2];a:{if(d>>>0>=(H[a+32>>2]&2147483647)>>>0){rF(a+24|0,j+8|0);break a}H[H[a+24>>2]+(d<<2)>>2]=b;H[a+28>>2]=d+1}d=H[a+40>>2];b:{if(d>>>0>=(H[a+44>>2]&2147483647)>>>0){d=0;e=H[a+44>>2]&2147483647;h=e?e<<1:1;c:{if(!h){break c}e=h<<2;if(!e){break c}d=H[33808];g=d+12|0;d=(q=g,r=e,s=Ra[H[H[d>>2]+20>>2]](d)|0?50684:55639,t=13582,u=553,p=H[H[g>>2]+8>>2],Ra[p](q|0,r|0,s|0,t|0,u|0)|0)}g=H[a+40>>2];i=(g<<2)+d|0;if((g|0)>0){f=H[a+36>>2];e=d;while(1){H[e>>2]=H[f>>2];f=f+4|0;e=e+4|0;if(i>>>0>e>>>0){continue}break}}H[i>>2]=H[j+12>>2];d:{if(H[a+44>>2]<0){break d}e=H[a+36>>2];if(!e){break d}g=H[33808]+12|0;Ra[H[H[g>>2]+12>>2]](g,e);g=H[a+40>>2]}H[a+44>>2]=h;H[a+36>>2]=d;H[a+40>>2]=g+1;break b}H[H[a+36>>2]+(d<<2)>>2]=H[j+12>>2];H[a+40>>2]=d+1}d=H[a>>2];Ra[H[H[d>>2]+16>>2]](d);h=a+12|0;g=H[a+16>>2];e=g;d=H[a+20>>2]&2147483647;if(e>>>0>=d>>>0){pF(h,d?d<<1:1);e=H[a+16>>2]}H[a+16>>2]=e+1;d=H[b+44>>2];i=H[a+12>>2];f=i+(e<<5)|0;H[f>>2]=0;H[f+4>>2]=0;H[f+16>>2]=d+16;m=sF(b);l=L[H[a+8>>2]+32>>2];e:{if(c){k=H[a+24>>2];n=H[k>>2];f=K[n+152>>2]>4294967293;o=H[a+28>>2];f:{if(!o){d=-2147483648;break f}d=0;if((c|0)==(n|0)){break f}while(1){d=d+1|0;if((o|0)==(d|0)){d=-2147483648;break f}if(H[(d<<2)+k>>2]!=(c|0)){continue}break}}c=(e<<5)+i|0;H[c+24>>2]=d;e=g&31;if((g&63)>>>0>=32){i=1<>>32-e}e=H[h>>2]+(d<<5)|0;h=k|H[e+8>>2];d=H[e+12>>2]|i;H[c+8>>2]=h;H[c+12>>2]=d;H[c+20>>2]=H[H[j+12>>2]+24>>2]+4;c=i|H[e+4>>2];H[e>>2]=k|H[e>>2];H[e+4>>2]=c;c=f&m;break e}h=1;d=0;H[f+8>>2]=1;H[f+12>>2]=0;H[f+20>>2]=0;H[f+24>>2]=-1;f=l==O(0);c=m&f}e=H[a+64>>2];d=i7(d)+i7(h)|0;d=d>>>0>>0?e:d;H[a+64>>2]=d;H[H[a>>2]+96>>2]=d;if(!(c|!f|H[a+28>>2]==1)){d=0;while(1){rG(H[H[a+24>>2]+(d<<2)>>2],l);d=d+1|0;if(d>>>0>2]-1>>>0){continue}break}}uG(b,a,l,c,g);Oa=j+16|0}function j$(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=0,t=0,u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),G=O(0),I=O(0),J=O(0),K=O(0),M=O(0),P=O(0),Q=O(0),R=O(0),S=O(0),T=O(0),U=O(0),V=O(0),W=O(0);e=Oa-528|0;Oa=e;i=e+16|4;f=H[a+68>>2];h=f-1|0;if((h|0)>=0){if(h>>>0>=3){t=f&-4;while(1){k=g<<2;l=N(h,112);H[k+i>>2]=l;H[(k|4)+i>>2]=l-112;H[(k|8)+i>>2]=l-224;H[(k|12)+i>>2]=l-336;h=h-4|0;g=g+4|0;s=s+4|0;if((s|0)!=(t|0)){continue}break}}k=f&3;if(k){while(1){H[(g<<2)+i>>2]=N(h,112);h=h-1|0;g=g+1|0;j=j+1|0;if((k|0)!=(j|0)){continue}break}}g=f}h=H[a+88>>2];m=L[c+8>>2];n=L[c+4>>2];o=L[c>>2];p=L[b+8>>2];q=L[b+4>>2];r=L[b>>2];f=1;j=0;while(1){a=g-1|0;c=h+(f?j:H[(e+16|0)+(g<<2)>>2])|0;u=L[c+80>>2];v=L[c+64>>2];w=L[c+32>>2];x=L[c+16>>2];y=L[c>>2];z=L[c+48>>2];A=L[c+36>>2];B=L[c+20>>2];C=L[c+4>>2];D=L[c+84>>2];E=L[c+52>>2];G=L[c+68>>2];I=L[c+40>>2];J=L[c+24>>2];K=L[c+8>>2];M=L[c+88>>2];P=L[c+56>>2];Q=L[c+72>>2];R=L[c+44>>2];S=L[c+28>>2];T=L[c+12>>2];U=L[c+92>>2];V=L[c+60>>2];W=L[c+76>>2];b=H[c+96>>2]&-2;H[e+12>>2]=b;f=0;a:{b:{if(r>z|q>v|(ou)){break b}if(n>2]>>2]](d,1,e+12|0)|0){break b}break a}H[(e+16|0)+(g<<2)>>2]=b;f=1;j=b;a=g}b=H[c+100>>2]&-2;H[e+12>>2]=b;c:{if(!(!(mE^-1)&(q>G^-1)&(p>D^-1)&(o>2]>>2]](d,1,e+12|0)|0){break c}break a}H[(a<<2)+i>>2]=b;f=1;a=a+1|0;j=b}b=H[c+104>>2]&-2;H[e+12>>2]=b;d:{if(!(!(mP^-1)&(q>Q^-1)&(p>M^-1)&(o>2]>>2]](d,1,e+12|0)|0){break d}break a}H[(a<<2)+i>>2]=b;f=1;a=a+1|0;j=b}b=H[c+108>>2]&-2;H[e+12>>2]=b;e:{if(!(!(mV^-1)&(q>W^-1)&(p>U^-1)&(o>2]>>2]](d,1,e+12|0)|0){break e}break a}H[(a<<2)+i>>2]=b;f=1;j=b;a=a+1|0}g=a;if((a|0)>0){continue}}break}Oa=e+528|0}function Vl(a){var b=0,c=0,d=0;a:{b:{switch((I[a+7|0]&15)-1|0){case 0:case 1:b=a-32|0;c=H[a-24>>2];c:{if(F[a-26|0]&1){a=H[33768];Ra[H[H[b>>2]+12>>2]](b)|0;d=a+1552|0;H[d>>2]=H[d>>2]-1;a=a+1560|0;H[b>>2]=H[a>>2];H[a>>2]=b;break c}Ra[H[H[b>>2]+12>>2]](b)|0}break a;case 2:b=a-48|0;c=H[a-40>>2];d:{if(F[a-42|0]&1){a=H[33768];Ra[H[H[b>>2]+12>>2]](b)|0;H[a+960>>2]=H[a+960>>2]-1;H[b>>2]=H[a+968>>2];H[a+968>>2]=b;break d}Ra[H[H[b>>2]+12>>2]](b)|0}break a;case 3:b=a-48|0;c=H[a-40>>2];e:{if(F[a-42|0]&1){a=H[33768];Ra[H[H[b>>2]+12>>2]](b)|0;d=a+3328|0;H[d>>2]=H[d>>2]-1;a=a+3336|0;H[b>>2]=H[a>>2];H[a>>2]=b;break e}Ra[H[H[b>>2]+12>>2]](b)|0}break a;case 4:b=a-48|0;c=H[a-40>>2];f:{if(F[a-42|0]&1){a=H[33768];Ra[H[H[b>>2]+12>>2]](b)|0;d=a+1256|0;H[d>>2]=H[d>>2]-1;a=a+1264|0;H[b>>2]=H[a>>2];H[a>>2]=b;break f}Ra[H[H[b>>2]+12>>2]](b)|0}break a;case 5:b=a-16|0;g:{if(F[a-10|0]&1){a=H[33768];Ra[H[H[b>>2]+12>>2]](b)|0;c=a+2144|0;H[c>>2]=H[c>>2]-1;a=a+2152|0;H[b>>2]=H[a>>2];H[a>>2]=b;break g}Ra[H[H[b>>2]+12>>2]](b)|0}an(H[33772],b,0,2);return;case 6:b=a-12|0;d=H[a-4>>2];h:{if(F[a-6|0]&1){c=H[33768];i:{if(J[a-8>>1]==11){Ra[H[H[b>>2]+12>>2]](b)|0;a=c+2736|0;H[a>>2]=H[a>>2]-1;a=c+2744|0;H[b>>2]=H[a>>2];break i}Ra[H[H[b>>2]+12>>2]](b)|0;a=c+3032|0;H[a>>2]=H[a>>2]-1;a=c+3040|0;H[b>>2]=H[a>>2]}H[a>>2]=b;break h}Ra[H[H[b>>2]+12>>2]](b)|0}an(H[33772],b,d,2);return;case 7:a=H[a+380>>2];j:{if(F[a+6|0]&1){b=H[33768];if(J[a+4>>1]==14){Ra[H[H[a>>2]+12>>2]](a)|0;c=b+3624|0;H[c>>2]=H[c>>2]-1;b=b+3632|0;H[a>>2]=H[b>>2];H[b>>2]=a;break j}Ra[H[H[a>>2]+12>>2]](a)|0;c=b+3920|0;H[c>>2]=H[c>>2]-1;b=b+3928|0;H[a>>2]=H[b>>2];H[b>>2]=a;break j}Ra[H[H[a>>2]+12>>2]](a)|0}an(H[33772],a,0,2);return;case 8:b=a-8|0;k:{if(F[a-2|0]&1){a=H[33768];Ra[H[H[b>>2]+12>>2]](b)|0;c=a+1848|0;H[c>>2]=H[c>>2]-1;a=a+1856|0;H[b>>2]=H[a>>2];H[a>>2]=b;break k}Ra[H[H[b>>2]+12>>2]](b)|0}an(H[33772],b,0,2);break;default:break b}}return}an(H[33772],b,c,2)}function uz(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;i=1;if(b>>>0>1){while(1){d=(i<<5)+a|0;kz(d-32|0,c);f=J[d-10>>1];if(f){d=H[d-8>>2];l=d+(f<<4)|0;while(1){k=I[d|0]==3;e=d- -64|0;g=I[d+3|0];h=I[d+2|0];a:{if(!h){break a}d=k?112:48;if(h-1>>>0>=3){j=h&252;f=0;while(1){L[e+36>>2]=L[e+40>>2];e=d+e|0;L[e+36>>2]=L[e+40>>2];e=d+e|0;L[e+36>>2]=L[e+40>>2];e=d+e|0;L[e+36>>2]=L[e+40>>2];e=d+e|0;f=f+4|0;if((j|0)!=(f|0)){continue}break}}f=0;j=h&3;if(!j){break a}while(1){L[e+36>>2]=L[e+40>>2];e=d+e|0;f=f+1|0;if((j|0)!=(f|0)){continue}break}}d=((h<<2)+12&2032)+e|0;b:{if(!g){break b}e=k?128:64;if(g-1>>>0>=7){h=g&248;f=0;while(1){H[d+44>>2]=0;d=d+e|0;H[d+44>>2]=0;d=d+e|0;H[d+44>>2]=0;d=d+e|0;H[d+44>>2]=0;d=d+e|0;H[d+44>>2]=0;d=d+e|0;H[d+44>>2]=0;d=d+e|0;H[d+44>>2]=0;d=d+e|0;H[d+44>>2]=0;d=d+e|0;f=f+8|0;if((h|0)!=(f|0)){continue}break}}f=0;g=g&7;if(!g){break b}while(1){H[d+44>>2]=0;d=d+e|0;f=f+1|0;if((g|0)!=(f|0)){continue}break}}if(d>>>0>>0){continue}break}}i=i+1|0;if((i|0)!=(b|0)){continue}break}}a=(b<<5)+a|0;kz(a-32|0,c);b=J[a-10>>1];if(b){d=H[a-8>>2];h=d+(b<<4)|0;while(1){g=I[d|0]==3;e=d- -64|0;b=I[d+3|0];c=I[d+2|0];c:{if(!c){break c}a=g?112:48;if(c-1>>>0>=3){i=c&252;f=0;while(1){L[e+36>>2]=L[e+40>>2];d=a+e|0;L[d+36>>2]=L[d+40>>2];d=a+d|0;L[d+36>>2]=L[d+40>>2];d=a+d|0;L[d+36>>2]=L[d+40>>2];e=a+d|0;f=f+4|0;if((i|0)!=(f|0)){continue}break}}f=0;d=c&3;if(!d){break c}while(1){L[e+36>>2]=L[e+40>>2];e=a+e|0;f=f+1|0;if((d|0)!=(f|0)){continue}break}}d=((c<<2)+12&2032)+e|0;d:{if(!b){break d}a=g?128:64;if(b-1>>>0>=7){c=b&248;f=0;while(1){H[d+44>>2]=0;d=a+d|0;H[d+44>>2]=0;d=a+d|0;H[d+44>>2]=0;d=a+d|0;H[d+44>>2]=0;d=a+d|0;H[d+44>>2]=0;d=a+d|0;H[d+44>>2]=0;d=a+d|0;H[d+44>>2]=0;d=a+d|0;H[d+44>>2]=0;d=a+d|0;f=f+8|0;if((c|0)!=(f|0)){continue}break}}f=0;b=b&7;if(!b){break d}while(1){H[d+44>>2]=0;d=a+d|0;f=f+1|0;if((b|0)!=(f|0)){continue}break}}if(d>>>0>>0){continue}break}}}function rz(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;i=1;if(b>>>0>1){while(1){d=(i<<5)+a|0;jz(d-32|0,c);f=J[d-10>>1];if(f){d=H[d-8>>2];l=d+(f<<4)|0;while(1){k=I[d|0]==3;e=d- -64|0;g=I[d+3|0];h=I[d+2|0];a:{if(!h){break a}d=k?112:48;if(h-1>>>0>=3){j=h&252;f=0;while(1){L[e+36>>2]=L[e+40>>2];e=d+e|0;L[e+36>>2]=L[e+40>>2];e=d+e|0;L[e+36>>2]=L[e+40>>2];e=d+e|0;L[e+36>>2]=L[e+40>>2];e=d+e|0;f=f+4|0;if((j|0)!=(f|0)){continue}break}}f=0;j=h&3;if(!j){break a}while(1){L[e+36>>2]=L[e+40>>2];e=d+e|0;f=f+1|0;if((j|0)!=(f|0)){continue}break}}d=((h<<2)+12&2032)+e|0;b:{if(!g){break b}e=k?128:64;if(g-1>>>0>=7){h=g&248;f=0;while(1){H[d+44>>2]=0;d=d+e|0;H[d+44>>2]=0;d=d+e|0;H[d+44>>2]=0;d=d+e|0;H[d+44>>2]=0;d=d+e|0;H[d+44>>2]=0;d=d+e|0;H[d+44>>2]=0;d=d+e|0;H[d+44>>2]=0;d=d+e|0;H[d+44>>2]=0;d=d+e|0;f=f+8|0;if((h|0)!=(f|0)){continue}break}}f=0;g=g&7;if(!g){break b}while(1){H[d+44>>2]=0;d=d+e|0;f=f+1|0;if((g|0)!=(f|0)){continue}break}}if(d>>>0>>0){continue}break}}i=i+1|0;if((i|0)!=(b|0)){continue}break}}a=(b<<5)+a|0;jz(a-32|0,c);b=J[a-10>>1];if(b){d=H[a-8>>2];h=d+(b<<4)|0;while(1){g=I[d|0]==3;e=d- -64|0;b=I[d+3|0];c=I[d+2|0];c:{if(!c){break c}a=g?112:48;if(c-1>>>0>=3){i=c&252;f=0;while(1){L[e+36>>2]=L[e+40>>2];d=a+e|0;L[d+36>>2]=L[d+40>>2];d=a+d|0;L[d+36>>2]=L[d+40>>2];d=a+d|0;L[d+36>>2]=L[d+40>>2];e=a+d|0;f=f+4|0;if((i|0)!=(f|0)){continue}break}}f=0;d=c&3;if(!d){break c}while(1){L[e+36>>2]=L[e+40>>2];e=a+e|0;f=f+1|0;if((d|0)!=(f|0)){continue}break}}d=((c<<2)+12&2032)+e|0;d:{if(!b){break d}a=g?128:64;if(b-1>>>0>=7){c=b&248;f=0;while(1){H[d+44>>2]=0;d=a+d|0;H[d+44>>2]=0;d=a+d|0;H[d+44>>2]=0;d=a+d|0;H[d+44>>2]=0;d=a+d|0;H[d+44>>2]=0;d=a+d|0;H[d+44>>2]=0;d=a+d|0;H[d+44>>2]=0;d=a+d|0;H[d+44>>2]=0;d=a+d|0;f=f+8|0;if((c|0)!=(f|0)){continue}break}}f=0;b=b&7;if(!b){break d}while(1){H[d+44>>2]=0;d=a+d|0;f=f+1|0;if((b|0)!=(f|0)){continue}break}}if(d>>>0>>0){continue}break}}}function Fg(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=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0);e=Oa+-64|0;Oa=e;a:{if(H[(Ra[H[H[a>>2]+24>>2]](a)|0)+4656>>2]){o5(H[33808],2,8582,141,57713,0);break a}F[e+56|0]=I[c|0];g=Oa-16|0;Oa=g;f=H[a+24>>2];if(f){F[g+8|0]=I[e+56|0];i=Oa-16|0;Oa=i;j=H[f>>2];F[i+8|0]=I[g+8|0];if(Ra[H[H[j>>2]+36>>2]](j,b,i+8|0)|0){b=H[H[f+4>>2]+1012>>2];Ra[H[H[b>>2]+64>>2]](b,H[f>>2],f+48|0)}Oa=i+16|0}Oa=g+16|0;b=I[c|0];b:{if(!(b&4)){break b}i=H[a+100>>2];if(!i){break b}while(1){b=H[H[a+96>>2]+(h<<2)>>2];k=L[b+80>>2];L[e+24>>2]=k;l=L[b+84>>2];L[e+28>>2]=l;m=L[b+88>>2];L[e+32>>2]=m;n=L[b+92>>2];L[e+36>>2]=n;o=L[b+96>>2];L[e+40>>2]=o;p=L[b+100>>2];L[e+44>>2]=p;q=L[b+104>>2];L[e+48>>2]=q;L[b+280>>2]=q;L[b+276>>2]=p;L[b+272>>2]=o;L[b+268>>2]=n;L[b+264>>2]=m;L[b+260>>2]=l;L[b+256>>2]=k;f=b+48|0;c:{d:{e:{switch((H[b+52>>2]>>>30|0)-2|0){case 0:g=H[f>>2];if(I[g+4785|0]){break d}default:CF(b- -64|0,e+24|0);break c;case 1:break e}}g=H[f>>2]}H[b+316>>2]=H[b+316>>2]&-2097153;$t(g,f);H[b+316>>2]=H[b+316>>2]|1048576}h=h+1|0;if((i|0)!=(h|0)){continue}break}b=I[c|0]}i=a+12|0;f:{if(!(b&5)){break f}j=H[a+100>>2];if(!j){break f}f=0;while(1){b=H[H[a+96>>2]+(f<<2)>>2];k=L[b+144>>2];L[e+24>>2]=k;l=L[b+148>>2];L[e+28>>2]=l;m=L[b+152>>2];L[e+32>>2]=m;L[e+8>>2]=L[b+160>>2];L[e+12>>2]=L[b+164>>2];L[e+16>>2]=L[b+168>>2];L[b+292>>2]=m;L[b+288>>2]=l;L[b+284>>2]=k;g=b- -64|0;c=b+48|0;g:{h:{i:{switch((H[b+52>>2]>>>30|0)-2|0){case 0:h=H[c>>2];if(I[h+4785|0]){break h}default:DF(g,e+24|0);break g;case 1:break i}}h=H[c>>2]}$t(h,c);H[b+316>>2]=H[b+316>>2]|4194304}L[b+296>>2]=L[e+8>>2];L[b+300>>2]=L[e+12>>2];L[b+304>>2]=L[e+16>>2];j:{k:{l:{switch((H[b+52>>2]>>>30|0)-2|0){case 0:h=H[c>>2];if(I[h+4785|0]){break k}default:EF(g,e+8|0);break j;case 1:break l}}h=H[c>>2]}$t(h,c);H[b+316>>2]=H[b+316>>2]|8388608}f=f+1|0;if((j|0)!=(f|0)){continue}break}}ei(i,0,d)}Oa=e- -64|0}function hC(a,b,c,d,e){var f=O(0),g=O(0),h=O(0),i=O(0),j=0,k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=0,q=O(0),r=0,s=0,t=O(0),u=O(0),v=O(0),w=0;j=Oa-1056|0;Oa=j;F[j+1040|0]=1;H[j+1048>>2]=256;H[j+1052>>2]=256;H[j+1044>>2]=j+16;H[j+16>>2]=H[c+588>>2];p=1;a:{while(1){p=p-1|0;c=H[H[j+1044>>2]+(p<<2)>>2];h=L[c+16>>2];f=L[c>>2];k=O(h+f);f=O(h-f);g=L[c+24>>2];i=L[c+8>>2];h=O(g+i);m=L[c+20>>2];l=L[c+4>>2];n=O(m+l);g=O(g-i);i=O(m-l);while(1){b:{m=L[d+8>>2];l=O(m-O(h*O(.5)));g=O(g*O(.5));q=g>l?l:g;h=L[d>>2];o=O(h-O(k*O(.5)));f=O(f*O(.5));u=f>o?o:f;k=L[d+4>>2];n=O(k-O(n*O(.5)));i=O(i*O(.5));v=i>n?n:i;t=L[d+16>>2];g=O(-g);g=O(l-(g=O(O(g*g)+O(o+O(f*f))))){break b}if(!H[c+40>>2]){c=H[c+36>>2];r=c+4|0;c:{d:{s=H[c>>2];switch(s|0){case 0:break b;case 1:break d;default:break c}}if(Ra[H[H[e>>2]>>2]](e,j+12|0,(H[r>>2]<<3)+a|0)|0){break b}a=0;break a}while(1){w=H[r>>2];c=N(w,24)+b|0;n=L[c+8>>2];g=L[c+20>>2];f=O(m-O(O(n+g)*O(.5)));n=O(O(g-n)*O(.5));g=f>2];m=L[c+12>>2];h=O(h-O(O(i+m)*O(.5)));i=O(O(m-i)*O(.5));m=h>2];q=L[c+16>>2];k=O(k-O(O(l+q)*O(.5)));l=O(O(q-l)*O(.5));q=k>2]>>2]](e,j+12|0,(w<<3)+a|0)|0){break e}a=0;break a}s=s-1|0;if(!s){break b}r=r+4|0;t=L[d+16>>2];m=L[d+8>>2];k=L[d+4>>2];h=L[d>>2];continue}}c=H[c+36>>2];H[H[j+1044>>2]+(p<<2)>>2]=c+48;p=p+1|0;if((p|0)==(H[j+1052>>2]&2147483647)){iC(j+16|0,p<<1)}h=L[c+16>>2];f=L[c>>2];k=O(h+f);f=O(h-f);g=L[c+24>>2];i=L[c+8>>2];h=O(g+i);m=L[c+20>>2];l=L[c+4>>2];n=O(m+l);g=O(g-i);i=O(m-l);continue}break}if(p){continue}break}a=1}b=H[j+1052>>2];f:{if((b|0)<0|!(b&2147483647)){break f}b=H[j+1044>>2];if((b|0)==(j+16|0)|!b){break f}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}Oa=j+1056|0;return a}function a1(a,b,c,d,e){var f=0,g=0,h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=0,q=O(0),r=O(0),s=0,t=O(0);a:{b:{c:{g=I[a+64|0];if(!g){break c}i=L[b+8>>2];k=L[b+4>>2];l=L[b>>2];n=L[c+8>>2];q=L[c+4>>2];r=L[c>>2];s=H[a+76>>2];m=L[e>>2];m=O(m*m);p=1;d:{while(1){e=N(f,48)+s|0;j=O(L[e+8>>2]-i);h=O(j*j);j=O(L[e>>2]-l);o=O(j*j);j=O(L[e+4>>2]-k);j=O(h+O(o+O(j*j)));h=O(L[e+24>>2]-n);o=O(h*h);h=O(L[e+16>>2]-r);t=O(h*h);h=O(L[e+20>>2]-q);h=O(o+O(t+O(h*h)));if(m>(j>2];H[e>>2]=H[b>>2];H[e+4>>2]=g;g=H[b+12>>2];H[e+8>>2]=H[b+8>>2];H[e+12>>2]=g;g=H[c+4>>2];f=N(f,48);e=f+H[a+76>>2]|0;H[e+16>>2]=H[c>>2];H[e+20>>2]=g;g=H[c+12>>2];H[e+24>>2]=H[c+8>>2];H[e+28>>2]=g;e=f+H[a+76>>2]|0;f=H[d+4>>2];H[e+32>>2]=H[d>>2];H[e+36>>2]=f;f=H[d+12>>2];H[e+40>>2]=H[d+8>>2];H[e+44>>2]=f;if(p){break a}e=I[a+64|0];break d}f=f+1|0;p=g>>>0>f>>>0;if((f|0)!=(g|0)){continue}break}e=g}f=e;switch(f&255){case 2:break b;case 0:case 1:break c;default:break a}}e=H[a+76>>2]+N(f&255,48)|0;f=H[b+4>>2];H[e>>2]=H[b>>2];H[e+4>>2]=f;f=H[b+12>>2];H[e+8>>2]=H[b+8>>2];H[e+12>>2]=f;e=H[c+4>>2];b=H[a+76>>2]+N(I[a+64|0],48)|0;H[b+16>>2]=H[c>>2];H[b+20>>2]=e;e=H[c+12>>2];H[b+24>>2]=H[c+8>>2];H[b+28>>2]=e;b=I[a+64|0];F[a+64|0]=b+1;a=H[a+76>>2]+N(b,48)|0;b=H[d+12>>2];H[a+40>>2]=H[d+8>>2];H[a+44>>2]=b;b=H[d+4>>2];H[a+32>>2]=H[d>>2];H[a+36>>2]=b;return}e=H[a+76>>2];k=L[c+8>>2];i=O(L[e+24>>2]-k);g=H[b+4>>2];j=O(i*i);i=L[c>>2];l=O(L[e+16>>2]-i);h=O(l*l);l=L[c+4>>2];n=O(L[e+20>>2]-l);k=O(L[e+72>>2]-k);i=O(L[e- -64>>2]-i);m=O(i*i);i=O(L[e+68>>2]-l);f=O(j+O(h+O(n*n)))>O(O(k*k)+O(m+O(i*i)));e=f?e+48|0:e;H[e>>2]=H[b>>2];H[e+4>>2]=g;g=H[b+12>>2];H[e+8>>2]=H[b+8>>2];H[e+12>>2]=g;e=N(f,48);b=e+H[a+76>>2]|0;f=H[c+4>>2];H[b+16>>2]=H[c>>2];H[b+20>>2]=f;f=H[c+12>>2];H[b+24>>2]=H[c+8>>2];H[b+28>>2]=f;b=H[d+4>>2];a=e+H[a+76>>2]|0;H[a+32>>2]=H[d>>2];H[a+36>>2]=b;b=H[d+12>>2];H[a+40>>2]=H[d+8>>2];H[a+44>>2]=b}}function S0(a,b,c,d,e,f,g,h){var i=0,j=0,k=O(0),l=O(0),m=0,n=O(0),o=0,p=O(0),q=O(0),r=O(0),s=0,t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0);i=Oa+-64|0;Oa=i;j=H[g+4>>2];H[i+48>>2]=H[g>>2];H[i+52>>2]=j;j=H[g+12>>2];H[i+56>>2]=H[g+8>>2];H[i+60>>2]=j;a:{b:{c:{d:{e:{if(I[c+44|0]){p=O(3.4028234663852886e38);if(!H[a+16>>2]){break c}c=0;while(1){j=H[a+24>>2]+N(c,20)|0;t=L[j+12>>2];o=H[a+28>>2]+N(I[j+19|0],12)|0;q=L[o+8>>2];n=L[o>>2];r=L[o+4>>2];u=L[j>>2];v=L[j+4>>2];w=L[j+8>>2];H[i+12>>2]=0;L[i+8>>2]=w;L[i+4>>2]=v;L[i>>2]=u;Ra[H[H[b>>2]+12>>2]](b,i,i+32|0,i+16|0);k=L[i+32>>2];l=L[d>>2];if(k>O(l-t)|O(O(w*q)+O(O(u*n)+O(r*v)))>O(l+L[i+16>>2])){break e}k=O(O(-t)-k);if(k>2];H[i+56>>2]=H[i+8>>2];H[i+60>>2]=m;m=H[i+4>>2];H[i+48>>2]=H[i>>2];H[i+52>>2]=m;p=k;m=c}c=c+1|0;if(c>>>0>2]){continue}break}break c}p=O(3.4028234663852886e38);if(H[a+16>>2]){break d}break c}a=0;break a}while(1){s=H[a+24>>2]+N(o,20)|0;A=L[s+12>>2];j=H[a+28>>2]+N(I[s+19|0],12)|0;B=L[j+8>>2];C=L[j>>2];D=L[j+4>>2];j=H[c+40>>2];t=L[j+36>>2];u=L[j+40>>2];x=L[s>>2];v=L[j+20>>2];y=L[s+4>>2];w=L[j+24>>2];z=L[s+8>>2];q=L[j+32>>2];n=L[j+8>>2];r=L[j>>2];l=L[j+4>>2];k=L[j+16>>2];H[i+12>>2]=0;q=O(O(u*z)+O(O(q*x)+O(y*t)));l=O(O(n*z)+O(O(r*x)+O(y*l)));k=O(O(w*z)+O(O(k*x)+O(y*v)));n=O(O(1)/O(W(O(O(q*q)+O(O(l*l)+O(k*k))))));L[i+8>>2]=q*n;L[i+4>>2]=k*n;L[i>>2]=l*n;Ra[H[H[b>>2]+12>>2]](b,i,i+32|0,i+16|0);k=L[i+32>>2];r=O(n*O(-A));l=L[d>>2];if(k>O(r+l)|O(l+L[i+16>>2])>2];H[i+56>>2]=H[i+8>>2];H[i+60>>2]=m;m=H[i+4>>2];H[i+48>>2]=H[i>>2];H[i+52>>2]=m;p=k;m=o}o=o+1|0;if(o>>>0>2]){continue}break}}if(L[e>>2]>O(p+O(1.1920928955078125e-7))){a=H[i+52>>2];H[g>>2]=H[i+48>>2];H[g+4>>2]=a;a=H[i+60>>2];H[g+8>>2]=H[i+56>>2];H[g+12>>2]=a;L[e>>2]=p;H[h>>2]=1}H[f>>2]=m;a=1;break a}a=0}Oa=i- -64|0;return a}function eu(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=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),F=O(0),G=O(0),I=O(0);v=L[c+24>>2];D=L[d+24>>2];y=O(v-D);k=O(y+y);r=L[d+12>>2];t=O(O(r*r)+O(-.5));o=L[d>>2];z=L[c+20>>2];E=L[d+20>>2];A=O(z-E);m=O(A+A);B=L[c+16>>2];F=L[d+16>>2];C=O(B-F);q=O(C+C);s=L[d+4>>2];w=O(O(k*t)-O(r*O(O(o*m)-O(q*s))));p=L[d+8>>2];u=O(O(p*k)+O(O(o*q)+O(m*s)));x=O(p*u);i=O(O(s*u)+O(O(m*t)-O(r*O(O(p*q)-O(k*o)))));j=L[b+8>>2];n=L[b+4>>2];l=O(-n);k=O(O(o*u)+O(O(q*t)-O(r*O(O(s*k)-O(m*p)))));c=1;a:{if(l>k){break a}l=k;c=0;if(!(n>2];k=O(-j);b:{c:{if(k>i){i=k;break c}if(!(i>j)){break b}i=j}c=1}I=L[e>>2];u=L[a+4>>2];w=O(-s);x=O(-o);G=O(-p);d:{e:{f:{k=O(-q);if(!(mq;if((a|c)!=1){break f}k=a?q:m}j=O(u+I);v=O(j*j);j=O(k+k);l=O(l+l);i=O(i+i);n=O(O(p*j)+O(O(o*l)+O(s*i)));m=O(O(p*n)+O(O(j*t)+O(r*O(O(o*i)+O(l*w)))));k=O(y-m);q=O(O(o*n)+O(O(l*t)+O(r*O(O(s*j)+O(i*G)))));o=O(C-q);j=O(O(s*n)+O(O(i*t)+O(r*O(O(p*l)+O(j*x)))));l=O(A-j);i=O(O(k*k)+O(O(o*o)+O(l*l)));a=0;if(vO(0)?O(2):O(-2);break g}j=m>O(0)?O(1):O(-1);break h}if(k>n){l=l>O(0)?O(2):O(-2);n=O(-n);j=O(0);i=O(0);break g}j=m>O(0)?O(1):O(-1)}l=O(0);n=O(-k);i=O(0)}j=O(j+j);m=O(O(p*j)+O(O(o*l)+O(s*i)));k=O(O(p*m)+O(O(j*t)+O(r*O(O(o*i)+O(l*w)))));p=O(O(s*m)+O(O(i*t)+O(r*O(O(p*l)+O(j*x)))));i=O(O(o*m)+O(O(l*t)+O(r*O(O(s*j)+O(i*G)))))}b=H[g+4096>>2];a=1;if(b>>>0>63){break d}H[g+4096>>2]=b+1;a=(b<<6)+g|0;L[a+16>>2]=B;L[a+8>>2]=k;L[a+4>>2]=p;L[a>>2]=i;H[a+52>>2]=-1;L[a+12>>2]=n-u;L[a+24>>2]=v;L[a+20>>2]=z;a=1}return a|0}function MC(a,b,c,d,e){var f=O(0),g=0,h=O(0),i=O(0),j=O(0),k=0,l=O(0),m=O(0),n=O(0),o=0,p=O(0),q=O(0),r=0,s=0,t=0,u=0;k=Oa-1056|0;Oa=k;F[k+1040|0]=1;H[k+1048>>2]=256;H[k+1052>>2]=256;H[k+1044>>2]=k+16;t=H[c+8>>2];H[k+16>>2]=t;o=1;a:{while(1){o=o-1|0;g=H[H[k+1044>>2]+(o<<2)>>2];i=L[g>>2];m=L[g+12>>2];j=O(i+m);i=O(m-i);n=L[g+8>>2];l=L[g+20>>2];m=O(n+l);f=L[g+4>>2];h=L[g+16>>2];p=O(f+h);n=O(l-n);l=O(h-f);while(1){b:{f=O(j*O(.5));j=L[d>>2];f=O(f-j);h=O(-f);q=O(i*O(.5));i=L[d+16>>2];if(!(O(q+i)>=(f>h?f:h))){break b}f=O(p*O(.5));p=L[d+4>>2];f=O(f-p);h=O(-f);q=O(l*O(.5));l=L[d+20>>2];if(!(O(q+l)>=(f>h?f:h))){break b}f=O(m*O(.5));m=L[d+8>>2];f=O(f-m);h=O(-f);q=O(n*O(.5));n=L[d+24>>2];if(!(O(q+n)>=(f>h?f:h))){break b}g=H[g+24>>2];r=g>>>1|0;if(g&1){s=H[c>>2]+(g>>>3&536870908)|0;c:{d:{r=r&15;switch(r|0){case 0:break b;case 1:break d;default:break c}}if(Ra[H[H[e>>2]>>2]](e,k+12|0,(H[s>>2]<<3)+a|0)|0){break b}a=0;break a}while(1){u=H[s>>2];g=N(u,24)+b|0;f=L[g+12>>2];q=L[g>>2];j=O(O(O(q+f)*O(.5))-j);h=O(-j);e:{if(!(O(O(O(f-q)*O(.5))+i)>=(h>2];h=L[g+16>>2];j=O(O(O(f+h)*O(.5))-p);i=O(-j);if(!(O(O(O(h-f)*O(.5))+l)>=(i>2];l=L[g+20>>2];j=O(O(O(p+l)*O(.5))-m);i=O(-j);if(!(O(O(O(l-p)*O(.5))+n)>=(i>2]>>2]](e,k+12|0,(u<<3)+a|0)|0){break e}a=0;break a}r=r-1|0;if(!r){break b}s=s+4|0;m=L[d+8>>2];p=L[d+4>>2];j=L[d>>2];n=L[d+24>>2];l=L[d+20>>2];i=L[d+16>>2];continue}}g=N(r,28)+t|0;H[H[k+1044>>2]+(o<<2)>>2]=g+28;o=o+1|0;if((o|0)==(H[k+1052>>2]&2147483647)){QC(k+16|0,o<<1)}i=L[g>>2];m=L[g+12>>2];j=O(i+m);i=O(m-i);n=L[g+8>>2];l=L[g+20>>2];m=O(n+l);f=L[g+4>>2];h=L[g+16>>2];p=O(f+h);n=O(l-n);l=O(h-f);continue}break}if(o){continue}break}a=1}b=H[k+1052>>2];f:{if((b|0)<0|!(b&2147483647)){break f}b=H[k+1044>>2];if((b|0)==(k+16|0)|!b){break f}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}Oa=k+1056|0;return a}function CH(a,b,c,d,e,f){var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;l=Oa-16|0;Oa=l;g=yq(c,288);H[g+284>>2]=e;H[g+280>>2]=b;H[g+276>>2]=a;H[g+272>>2]=b;H[g+268>>2]=0;H[g>>2]=115852;H[g+68>>2]=0;H[g+72>>2]=0;H[g+60>>2]=0;H[g+64>>2]=0;H[g+52>>2]=0;H[g+56>>2]=0;H[g+44>>2]=0;H[g+48>>2]=0;H[g+36>>2]=0;H[g+40>>2]=0;H[g+28>>2]=0;H[g+32>>2]=0;H[g+24>>2]=0;H[g+16>>2]=0;H[g+20>>2]=0;H[g+8>>2]=0;H[g+12>>2]=0;m=H[f+4>>2];a:{b:{if(!H[a+16>>2]){break b}n=H[a+12>>2];i=H[n>>2];if((i|0)==-1){h=H[a+20>>2];while(1){j=j+1|0;if((h|0)==(j|0)){break b}i=H[n+(j<<2)>>2];if((i|0)==-1){continue}break}}n=!d;while(1){k=N(i,12);o=k+H[a+4>>2]|0;p=H[o+4>>2];h=(H[g+268>>2]<<3)+g|0;H[h+140>>2]=H[o>>2];H[h+144>>2]=p;h=H[(k+H[a+4>>2]|0)+8>>2];k=H[g+268>>2];o=k+1|0;H[g+268>>2]=o;H[((k<<2)+g|0)+76>>2]=h;if((o|0)==16){H[l+12>>2]=g;h=H[f+4>>2];c:{if(h>>>0>=(H[f+8>>2]&2147483647)>>>0){AH(f,l+12|0);break c}H[H[f>>2]+(h<<2)>>2]=g;H[f+4>>2]=h+1}H[g+20>>2]=d;H[g+24>>2]=1;if(d){Ra[H[H[d>>2]+16>>2]](d);H[g+16>>2]=H[H[g+20>>2]+16>>2]}g=yq(c,288);H[g+24>>2]=0;H[g+16>>2]=0;H[g+20>>2]=0;H[g+28>>2]=0;H[g+32>>2]=0;H[g+8>>2]=0;H[g+12>>2]=0;H[g+36>>2]=0;H[g+40>>2]=0;H[g+44>>2]=0;H[g+48>>2]=0;H[g+52>>2]=0;H[g+56>>2]=0;H[g+60>>2]=0;H[g+64>>2]=0;H[g+68>>2]=0;H[g+72>>2]=0;H[g+284>>2]=e;H[g+280>>2]=b;H[g+276>>2]=a;H[g+272>>2]=b;H[g+268>>2]=0;H[g>>2]=115852}i=H[H[a+8>>2]+(i<<2)>>2];if((i|0)!=-1){continue}h=H[a+12>>2];k=H[a+20>>2];while(1){j=j+1|0;if((k|0)==(j|0)){break a}i=H[h+(j<<2)>>2];if((i|0)==-1){continue}break}continue}}n=!d}a=H[f+4>>2];if(m>>>0>>0){while(1){a=H[H[f>>2]+(m<<2)>>2];Ra[H[H[a>>2]+20>>2]](a);a=H[f+4>>2];m=m+1|0;if(a>>>0>m>>>0){continue}break}}if(H[g+268>>2]){H[l+8>>2]=g;d:{if((H[f+8>>2]&2147483647)>>>0<=a>>>0){AH(f,l+8|0);break d}H[H[f>>2]+(a<<2)>>2]=g;H[f+4>>2]=a+1}H[g+20>>2]=d;H[g+24>>2]=1;if(!n){Ra[H[H[d>>2]+16>>2]](d);H[g+16>>2]=H[H[g+20>>2]+16>>2]}Ra[H[H[g>>2]+20>>2]](g)}Oa=l+16|0}function sy(a,b,c,d,e){var f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=0,t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0);s=J[d+108>>1];a:{if(!s){break a}if(s&1){H[a>>2]=0;H[c>>2]=0}if(s&2){H[a+4>>2]=0;H[c+4>>2]=0}if(s&4){H[a+8>>2]=0;H[c+8>>2]=0}if(s&8){H[b>>2]=0;H[c+16>>2]=0}if(s&16){H[b+4>>2]=0;H[c+20>>2]=0}if(!(s&32)){break a}H[b+8>>2]=0;H[c+24>>2]=0}h=L[d+44>>2];i=L[d+56>>2];l=L[d+20>>2];k=L[d+36>>2];m=L[d+48>>2];j=L[d+60>>2];f=L[d+24>>2];n=L[d+40>>2];t=L[d+52>>2];w=L[d- -64>>2];o=L[b+8>>2];p=L[b>>2];g=L[b+4>>2];x=L[d+16>>2];y=L[d+32>>2];u=L[a+8>>2];q=L[d+8>>2];v=L[a+4>>2];r=L[d+4>>2];z=L[d>>2];A=O(z+L[a>>2]);L[d+96>>2]=O(A*e)+L[d+96>>2];v=O(r+v);L[d+100>>2]=O(v*e)+L[d+100>>2];B=O(q+u);L[d+104>>2]=O(B*e)+L[d+104>>2];L[d>>2]=z+L[c>>2];L[d+4>>2]=r+L[c+4>>2];L[d+8>>2]=q+L[c+8>>2];q=L[c+16>>2];r=L[c+20>>2];u=L[c+24>>2];L[d+24>>2]=f+O(O(O(n*q)+O(t*r))+O(w*u));L[d+20>>2]=l+O(O(O(k*q)+O(m*r))+O(j*u));L[d+16>>2]=x+O(O(O(y*q)+O(h*r))+O(i*u));f=O(f+O(O(O(p*n)+O(g*t))+O(o*w)));h=O(x+O(O(O(p*y)+O(g*h))+O(o*i)));g=O(l+O(O(O(p*k)+O(g*m))+O(o*j)));m=O(O(f*f)+O(O(h*h)+O(g*g)));b:{if(m==O(0)){o=g;p=f;break b}l=O(1e7);k=O(W(m));c:{if(!(k>O(1e7))){p=f;l=k;i=h;o=g;break c}p=O(0);i=O(0);o=O(0);if(!(m>O(0))){break c}i=f;f=O(O(1)/k);p=O(O(i*f)*O(1e7));i=O(O(h*f)*O(1e7));o=O(O(g*f)*O(1e7))}h=O(O(l*e)*O(.5));j=Z5(h);e=L[d+88>>2];f=L[d+84>>2];g=L[d+80>>2];k=L[d+92>>2];m=T5(h);h=i;j=O(j/l);i=O(h*j);l=O(o*j);j=O(p*j);n=O(O(k*m)+O(O(O(O(k*O(0))-O(g*i))-O(f*l))-O(e*j)));q=n;r=O(n*n);n=O(O(e*m)+O(O(O(i*f)+O(O(e*O(0))+O(k*j)))-O(g*l)));t=O(O(g*m)+O(O(O(l*e)+O(O(g*O(0))+O(k*i)))-O(f*j)));f=O(O(m*f)+O(O(O(j*g)+O(O(f*O(0))+O(k*l)))-O(e*i)));e=O(O(1)/O(W(O(r+O(O(n*n)+O(O(t*t)+O(f*f)))))));L[d+92>>2]=q*e;L[d+88>>2]=n*e;L[d+84>>2]=f*e;L[d+80>>2]=t*e}L[a+8>>2]=B;L[a+4>>2]=v;L[a>>2]=A;L[b+8>>2]=p;L[b+4>>2]=o;L[b>>2]=h}function Ey(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,v=0,w=0;l=32;m=Oa-16|0;Oa=m;F[m+12|0]=0;e=m-128|0;Oa=e;H[m+8>>2]=e;f=b-1|0;a:{if((f|0)<=0){break a}while(1){b:{if((f|0)<=(g|0)){break b}while(1){if(f-g>>>0<=4){while(1){b=g;g=b+1|0;c=g;d=b;while(1){d=K[(c<<2)+a>>2]>2]?c:d;i=(c|0)<(f|0);c=c+1|0;if(i){continue}break}if((b|0)!=(d|0)){c=(d<<2)+a|0;d=H[c>>2];b=(b<<2)+a|0;H[c>>2]=H[b>>2];H[b>>2]=d}if((f|0)!=(g|0)){continue}break b}}j=((f+g|0)/2<<2)+a|0;c=H[j>>2];k=(g<<2)+a|0;d=H[k>>2];if(c>>>0>>0){H[k>>2]=c;H[j>>2]=d;c=d;d=H[k>>2]}i=(f<<2)+a|0;b=H[i>>2];c:{if(b>>>0>=d>>>0){d=b;break c}H[k>>2]=b;H[i>>2]=d;c=H[j>>2]}if(c>>>0>d>>>0){H[j>>2]=d;H[i>>2]=c;c=H[j>>2]}b=f-1|0;n=(b<<2)+a|0;H[j>>2]=H[n>>2];H[n>>2]=c;d=g;while(1){i=d;d=d+1|0;p=(d<<2)+a|0;q=H[p>>2];if(q>>>0>>0){continue}while(1){b=b-1|0;j=(b<<2)+a|0;k=H[j>>2];if(k>>>0>c>>>0){continue}break}if((b|0)>(d|0)){H[p>>2]=k;H[j>>2]=q;c=H[n>>2];continue}break}H[p>>2]=c;H[n>>2]=q;d:{if((d-g|0)<(f-d|0)){e:{if(l-1>>>0>h>>>0){c=e;break e}d=l<<3;if(d){c=H[33808];b=c+12|0;c=(s=b,t=d,u=Ra[H[H[c>>2]+20>>2]](c)|0?25032:55639,v=14160,w=155,r=H[H[b>>2]+8>>2],Ra[r](s|0,t|0,u|0,v|0,w|0)|0)}else{c=0}b=R6(c,e,h<<2);if(!(!o|!e)){d=H[33808]+12|0;Ra[H[H[d>>2]+12>>2]](d,e)}l=l<<1;o=1;e=b}b=(h<<2)+c|0;H[b>>2]=g;H[b+4>>2]=i;g=i+2|0;break d}k=i+2|0;f:{if(l-1>>>0>h>>>0){c=e;break f}d=l<<3;if(d){c=H[33808];b=c+12|0;c=(w=b,v=d,u=Ra[H[H[c>>2]+20>>2]](c)|0?25032:55639,t=14160,s=155,r=H[H[b>>2]+8>>2],Ra[r](w|0,v|0,u|0,t|0,s|0)|0)}else{c=0}b=R6(c,e,h<<2);if(!(!o|!e)){d=H[33808]+12|0;Ra[H[H[d>>2]+12>>2]](d,e)}l=l<<1;o=1;e=b}b=(h<<2)+c|0;H[b>>2]=k;H[b+4>>2]=f;f=i}h=h+2|0;if((f|0)>(g|0)){continue}break}}if(h){b=h-2|0;g=H[(b<<2)+e>>2];f=H[((h<<2)+e|0)-4>>2];h=b;continue}break}if(!o|!e){break a}a=H[33808]+12|0;Ra[H[H[a>>2]+12>>2]](a,e)}if(I[m+12|0]){H5(H[m+8>>2])}Oa=m+16|0}function nm(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,r=0,s=0,t=0,u=0,v=0,w=0;l=32;m=Oa-16|0;Oa=m;F[m+12|0]=0;e=m-128|0;Oa=e;H[m+8>>2]=e;f=b-1|0;a:{if((f|0)<=0){break a}while(1){b:{if((f|0)<=(g|0)){break b}while(1){if(f-g>>>0<=4){while(1){b=g;g=b+1|0;d=g;c=b;while(1){c=K[(d<<2)+a>>2]>2]?d:c;i=(d|0)<(f|0);d=d+1|0;if(i){continue}break}if((b|0)!=(c|0)){d=(c<<2)+a|0;c=H[d>>2];b=(b<<2)+a|0;H[d>>2]=H[b>>2];H[b>>2]=c}if((f|0)!=(g|0)){continue}break b}}j=((f+g|0)/2<<2)+a|0;d=H[j>>2];k=(g<<2)+a|0;c=H[k>>2];if(d>>>0>>0){H[k>>2]=d;H[j>>2]=c;d=c;c=H[k>>2]}i=(f<<2)+a|0;b=H[i>>2];c:{if(b>>>0>=c>>>0){c=b;break c}H[k>>2]=b;H[i>>2]=c;d=H[j>>2]}if(c>>>0>>0){H[j>>2]=c;H[i>>2]=d;d=H[j>>2]}b=f-1|0;n=(b<<2)+a|0;H[j>>2]=H[n>>2];H[n>>2]=d;c=g;while(1){i=c;c=c+1|0;p=(c<<2)+a|0;q=H[p>>2];if(q>>>0>>0){continue}while(1){b=b-1|0;j=(b<<2)+a|0;k=H[j>>2];if(k>>>0>d>>>0){continue}break}if((b|0)>(c|0)){H[p>>2]=k;H[j>>2]=q;d=H[n>>2];continue}break}H[p>>2]=d;H[n>>2]=q;d:{if((c-g|0)<(f-c|0)){e:{if(l-1>>>0>h>>>0){d=e;break e}c=l<<3;if(c){d=H[33808];b=d+12|0;d=(s=b,t=c,u=Ra[H[H[d>>2]+20>>2]](d)|0?21696:55639,v=14160,w=155,r=H[H[b>>2]+8>>2],Ra[r](s|0,t|0,u|0,v|0,w|0)|0)}else{d=0}b=R6(d,e,h<<2);if(!(!o|!e)){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,e)}l=l<<1;o=1;e=b}b=(h<<2)+d|0;H[b>>2]=g;H[b+4>>2]=i;g=i+2|0;break d}k=i+2|0;f:{if(l-1>>>0>h>>>0){d=e;break f}c=l<<3;if(c){d=H[33808];b=d+12|0;d=(w=b,v=c,u=Ra[H[H[d>>2]+20>>2]](d)|0?21696:55639,t=14160,s=155,r=H[H[b>>2]+8>>2],Ra[r](w|0,v|0,u|0,t|0,s|0)|0)}else{d=0}b=R6(d,e,h<<2);if(!(!o|!e)){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,e)}l=l<<1;o=1;e=b}b=(h<<2)+d|0;H[b>>2]=k;H[b+4>>2]=f;f=i}h=h+2|0;if((f|0)>(g|0)){continue}break}}if(h){b=h-2|0;g=H[(b<<2)+e>>2];f=H[((h<<2)+e|0)-4>>2];h=b;continue}break}if(!o|!e){break a}a=H[33808]+12|0;Ra[H[H[a>>2]+12>>2]](a,e)}if(I[m+12|0]){H5(H[m+8>>2])}Oa=m+16|0}function mm(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,r=0,s=0,t=0,u=0,v=0,w=0;l=32;m=Oa-16|0;Oa=m;F[m+12|0]=0;e=m-128|0;Oa=e;H[m+8>>2]=e;f=b-1|0;a:{if((f|0)<=0){break a}while(1){b:{if((f|0)<=(g|0)){break b}while(1){if(f-g>>>0<=4){while(1){b=g;g=b+1|0;d=g;c=b;while(1){c=K[(d<<2)+a>>2]>2]?d:c;i=(d|0)<(f|0);d=d+1|0;if(i){continue}break}if((b|0)!=(c|0)){d=(c<<2)+a|0;c=H[d>>2];b=(b<<2)+a|0;H[d>>2]=H[b>>2];H[b>>2]=c}if((f|0)!=(g|0)){continue}break b}}j=((f+g|0)/2<<2)+a|0;d=H[j>>2];k=(g<<2)+a|0;c=H[k>>2];if(d>>>0>>0){H[k>>2]=d;H[j>>2]=c;d=c;c=H[k>>2]}i=(f<<2)+a|0;b=H[i>>2];c:{if(b>>>0>=c>>>0){c=b;break c}H[k>>2]=b;H[i>>2]=c;d=H[j>>2]}if(c>>>0>>0){H[j>>2]=c;H[i>>2]=d;d=H[j>>2]}b=f-1|0;n=(b<<2)+a|0;H[j>>2]=H[n>>2];H[n>>2]=d;c=g;while(1){i=c;c=c+1|0;p=(c<<2)+a|0;q=H[p>>2];if(q>>>0>>0){continue}while(1){b=b-1|0;j=(b<<2)+a|0;k=H[j>>2];if(k>>>0>d>>>0){continue}break}if((b|0)>(c|0)){H[p>>2]=k;H[j>>2]=q;d=H[n>>2];continue}break}H[p>>2]=d;H[n>>2]=q;d:{if((c-g|0)<(f-c|0)){e:{if(l-1>>>0>h>>>0){d=e;break e}c=l<<3;if(c){d=H[33808];b=d+12|0;d=(s=b,t=c,u=Ra[H[H[d>>2]+20>>2]](d)|0?40466:55639,v=14160,w=155,r=H[H[b>>2]+8>>2],Ra[r](s|0,t|0,u|0,v|0,w|0)|0)}else{d=0}b=R6(d,e,h<<2);if(!(!o|!e)){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,e)}l=l<<1;o=1;e=b}b=(h<<2)+d|0;H[b>>2]=g;H[b+4>>2]=i;g=i+2|0;break d}k=i+2|0;f:{if(l-1>>>0>h>>>0){d=e;break f}c=l<<3;if(c){d=H[33808];b=d+12|0;d=(w=b,v=c,u=Ra[H[H[d>>2]+20>>2]](d)|0?40466:55639,t=14160,s=155,r=H[H[b>>2]+8>>2],Ra[r](w|0,v|0,u|0,t|0,s|0)|0)}else{d=0}b=R6(d,e,h<<2);if(!(!o|!e)){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,e)}l=l<<1;o=1;e=b}b=(h<<2)+d|0;H[b>>2]=k;H[b+4>>2]=f;f=i}h=h+2|0;if((f|0)>(g|0)){continue}break}}if(h){b=h-2|0;g=H[(b<<2)+e>>2];f=H[((h<<2)+e|0)-4>>2];h=b;continue}break}if(!o|!e){break a}a=H[33808]+12|0;Ra[H[H[a>>2]+12>>2]](a,e)}if(I[m+12|0]){H5(H[m+8>>2])}Oa=m+16|0}function lm(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,r=0,s=0,t=0,u=0,v=0,w=0;l=32;m=Oa-16|0;Oa=m;F[m+12|0]=0;e=m-128|0;Oa=e;H[m+8>>2]=e;f=b-1|0;a:{if((f|0)<=0){break a}while(1){b:{if((f|0)<=(g|0)){break b}while(1){if(f-g>>>0<=4){while(1){b=g;g=b+1|0;d=g;c=b;while(1){c=K[(d<<2)+a>>2]>2]?d:c;i=(d|0)<(f|0);d=d+1|0;if(i){continue}break}if((b|0)!=(c|0)){d=(c<<2)+a|0;c=H[d>>2];b=(b<<2)+a|0;H[d>>2]=H[b>>2];H[b>>2]=c}if((f|0)!=(g|0)){continue}break b}}j=((f+g|0)/2<<2)+a|0;d=H[j>>2];k=(g<<2)+a|0;c=H[k>>2];if(d>>>0>>0){H[k>>2]=d;H[j>>2]=c;d=c;c=H[k>>2]}i=(f<<2)+a|0;b=H[i>>2];c:{if(b>>>0>=c>>>0){c=b;break c}H[k>>2]=b;H[i>>2]=c;d=H[j>>2]}if(c>>>0>>0){H[j>>2]=c;H[i>>2]=d;d=H[j>>2]}b=f-1|0;n=(b<<2)+a|0;H[j>>2]=H[n>>2];H[n>>2]=d;c=g;while(1){i=c;c=c+1|0;p=(c<<2)+a|0;q=H[p>>2];if(q>>>0>>0){continue}while(1){b=b-1|0;j=(b<<2)+a|0;k=H[j>>2];if(k>>>0>d>>>0){continue}break}if((b|0)>(c|0)){H[p>>2]=k;H[j>>2]=q;d=H[n>>2];continue}break}H[p>>2]=d;H[n>>2]=q;d:{if((c-g|0)<(f-c|0)){e:{if(l-1>>>0>h>>>0){d=e;break e}c=l<<3;if(c){d=H[33808];b=d+12|0;d=(s=b,t=c,u=Ra[H[H[d>>2]+20>>2]](d)|0?40352:55639,v=14160,w=155,r=H[H[b>>2]+8>>2],Ra[r](s|0,t|0,u|0,v|0,w|0)|0)}else{d=0}b=R6(d,e,h<<2);if(!(!o|!e)){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,e)}l=l<<1;o=1;e=b}b=(h<<2)+d|0;H[b>>2]=g;H[b+4>>2]=i;g=i+2|0;break d}k=i+2|0;f:{if(l-1>>>0>h>>>0){d=e;break f}c=l<<3;if(c){d=H[33808];b=d+12|0;d=(w=b,v=c,u=Ra[H[H[d>>2]+20>>2]](d)|0?40352:55639,t=14160,s=155,r=H[H[b>>2]+8>>2],Ra[r](w|0,v|0,u|0,t|0,s|0)|0)}else{d=0}b=R6(d,e,h<<2);if(!(!o|!e)){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,e)}l=l<<1;o=1;e=b}b=(h<<2)+d|0;H[b>>2]=k;H[b+4>>2]=f;f=i}h=h+2|0;if((f|0)>(g|0)){continue}break}}if(h){b=h-2|0;g=H[(b<<2)+e>>2];f=H[((h<<2)+e|0)-4>>2];h=b;continue}break}if(!o|!e){break a}a=H[33808]+12|0;Ra[H[H[a>>2]+12>>2]](a,e)}if(I[m+12|0]){H5(H[m+8>>2])}Oa=m+16|0}function km(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,r=0,s=0,t=0,u=0,v=0,w=0;l=32;m=Oa-16|0;Oa=m;F[m+12|0]=0;e=m-128|0;Oa=e;H[m+8>>2]=e;f=b-1|0;a:{if((f|0)<=0){break a}while(1){b:{if((f|0)<=(g|0)){break b}while(1){if(f-g>>>0<=4){while(1){b=g;g=b+1|0;d=g;c=b;while(1){c=K[(d<<2)+a>>2]>2]?d:c;i=(d|0)<(f|0);d=d+1|0;if(i){continue}break}if((b|0)!=(c|0)){d=(c<<2)+a|0;c=H[d>>2];b=(b<<2)+a|0;H[d>>2]=H[b>>2];H[b>>2]=c}if((f|0)!=(g|0)){continue}break b}}j=((f+g|0)/2<<2)+a|0;d=H[j>>2];k=(g<<2)+a|0;c=H[k>>2];if(d>>>0>>0){H[k>>2]=d;H[j>>2]=c;d=c;c=H[k>>2]}i=(f<<2)+a|0;b=H[i>>2];c:{if(b>>>0>=c>>>0){c=b;break c}H[k>>2]=b;H[i>>2]=c;d=H[j>>2]}if(c>>>0>>0){H[j>>2]=c;H[i>>2]=d;d=H[j>>2]}b=f-1|0;n=(b<<2)+a|0;H[j>>2]=H[n>>2];H[n>>2]=d;c=g;while(1){i=c;c=c+1|0;p=(c<<2)+a|0;q=H[p>>2];if(q>>>0>>0){continue}while(1){b=b-1|0;j=(b<<2)+a|0;k=H[j>>2];if(k>>>0>d>>>0){continue}break}if((b|0)>(c|0)){H[p>>2]=k;H[j>>2]=q;d=H[n>>2];continue}break}H[p>>2]=d;H[n>>2]=q;d:{if((c-g|0)<(f-c|0)){e:{if(l-1>>>0>h>>>0){d=e;break e}c=l<<3;if(c){d=H[33808];b=d+12|0;d=(s=b,t=c,u=Ra[H[H[d>>2]+20>>2]](d)|0?37318:55639,v=14160,w=155,r=H[H[b>>2]+8>>2],Ra[r](s|0,t|0,u|0,v|0,w|0)|0)}else{d=0}b=R6(d,e,h<<2);if(!(!o|!e)){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,e)}l=l<<1;o=1;e=b}b=(h<<2)+d|0;H[b>>2]=g;H[b+4>>2]=i;g=i+2|0;break d}k=i+2|0;f:{if(l-1>>>0>h>>>0){d=e;break f}c=l<<3;if(c){d=H[33808];b=d+12|0;d=(w=b,v=c,u=Ra[H[H[d>>2]+20>>2]](d)|0?37318:55639,t=14160,s=155,r=H[H[b>>2]+8>>2],Ra[r](w|0,v|0,u|0,t|0,s|0)|0)}else{d=0}b=R6(d,e,h<<2);if(!(!o|!e)){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,e)}l=l<<1;o=1;e=b}b=(h<<2)+d|0;H[b>>2]=k;H[b+4>>2]=f;f=i}h=h+2|0;if((f|0)>(g|0)){continue}break}}if(h){b=h-2|0;g=H[(b<<2)+e>>2];f=H[((h<<2)+e|0)-4>>2];h=b;continue}break}if(!o|!e){break a}a=H[33808]+12|0;Ra[H[H[a>>2]+12>>2]](a,e)}if(I[m+12|0]){H5(H[m+8>>2])}Oa=m+16|0}function jm(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,r=0,s=0,t=0,u=0,v=0,w=0;l=32;m=Oa-16|0;Oa=m;F[m+12|0]=0;e=m-128|0;Oa=e;H[m+8>>2]=e;f=b-1|0;a:{if((f|0)<=0){break a}while(1){b:{if((f|0)<=(g|0)){break b}while(1){if(f-g>>>0<=4){while(1){b=g;g=b+1|0;d=g;c=b;while(1){c=K[(d<<2)+a>>2]>2]?d:c;i=(d|0)<(f|0);d=d+1|0;if(i){continue}break}if((b|0)!=(c|0)){d=(c<<2)+a|0;c=H[d>>2];b=(b<<2)+a|0;H[d>>2]=H[b>>2];H[b>>2]=c}if((f|0)!=(g|0)){continue}break b}}j=((f+g|0)/2<<2)+a|0;d=H[j>>2];k=(g<<2)+a|0;c=H[k>>2];if(d>>>0>>0){H[k>>2]=d;H[j>>2]=c;d=c;c=H[k>>2]}i=(f<<2)+a|0;b=H[i>>2];c:{if(b>>>0>=c>>>0){c=b;break c}H[k>>2]=b;H[i>>2]=c;d=H[j>>2]}if(c>>>0>>0){H[j>>2]=c;H[i>>2]=d;d=H[j>>2]}b=f-1|0;n=(b<<2)+a|0;H[j>>2]=H[n>>2];H[n>>2]=d;c=g;while(1){i=c;c=c+1|0;p=(c<<2)+a|0;q=H[p>>2];if(q>>>0>>0){continue}while(1){b=b-1|0;j=(b<<2)+a|0;k=H[j>>2];if(k>>>0>d>>>0){continue}break}if((b|0)>(c|0)){H[p>>2]=k;H[j>>2]=q;d=H[n>>2];continue}break}H[p>>2]=d;H[n>>2]=q;d:{if((c-g|0)<(f-c|0)){e:{if(l-1>>>0>h>>>0){d=e;break e}c=l<<3;if(c){d=H[33808];b=d+12|0;d=(s=b,t=c,u=Ra[H[H[d>>2]+20>>2]](d)|0?36614:55639,v=14160,w=155,r=H[H[b>>2]+8>>2],Ra[r](s|0,t|0,u|0,v|0,w|0)|0)}else{d=0}b=R6(d,e,h<<2);if(!(!o|!e)){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,e)}l=l<<1;o=1;e=b}b=(h<<2)+d|0;H[b>>2]=g;H[b+4>>2]=i;g=i+2|0;break d}k=i+2|0;f:{if(l-1>>>0>h>>>0){d=e;break f}c=l<<3;if(c){d=H[33808];b=d+12|0;d=(w=b,v=c,u=Ra[H[H[d>>2]+20>>2]](d)|0?36614:55639,t=14160,s=155,r=H[H[b>>2]+8>>2],Ra[r](w|0,v|0,u|0,t|0,s|0)|0)}else{d=0}b=R6(d,e,h<<2);if(!(!o|!e)){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,e)}l=l<<1;o=1;e=b}b=(h<<2)+d|0;H[b>>2]=k;H[b+4>>2]=f;f=i}h=h+2|0;if((f|0)>(g|0)){continue}break}}if(h){b=h-2|0;g=H[(b<<2)+e>>2];f=H[((h<<2)+e|0)-4>>2];h=b;continue}break}if(!o|!e){break a}a=H[33808]+12|0;Ra[H[H[a>>2]+12>>2]](a,e)}if(I[m+12|0]){H5(H[m+8>>2])}Oa=m+16|0}function im(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,r=0,s=0,t=0,u=0,v=0,w=0;l=32;m=Oa-16|0;Oa=m;F[m+12|0]=0;e=m-128|0;Oa=e;H[m+8>>2]=e;f=b-1|0;a:{if((f|0)<=0){break a}while(1){b:{if((f|0)<=(g|0)){break b}while(1){if(f-g>>>0<=4){while(1){b=g;g=b+1|0;d=g;c=b;while(1){c=K[(d<<2)+a>>2]>2]?d:c;i=(d|0)<(f|0);d=d+1|0;if(i){continue}break}if((b|0)!=(c|0)){d=(c<<2)+a|0;c=H[d>>2];b=(b<<2)+a|0;H[d>>2]=H[b>>2];H[b>>2]=c}if((f|0)!=(g|0)){continue}break b}}j=((f+g|0)/2<<2)+a|0;d=H[j>>2];k=(g<<2)+a|0;c=H[k>>2];if(d>>>0>>0){H[k>>2]=d;H[j>>2]=c;d=c;c=H[k>>2]}i=(f<<2)+a|0;b=H[i>>2];c:{if(b>>>0>=c>>>0){c=b;break c}H[k>>2]=b;H[i>>2]=c;d=H[j>>2]}if(c>>>0>>0){H[j>>2]=c;H[i>>2]=d;d=H[j>>2]}b=f-1|0;n=(b<<2)+a|0;H[j>>2]=H[n>>2];H[n>>2]=d;c=g;while(1){i=c;c=c+1|0;p=(c<<2)+a|0;q=H[p>>2];if(q>>>0>>0){continue}while(1){b=b-1|0;j=(b<<2)+a|0;k=H[j>>2];if(k>>>0>d>>>0){continue}break}if((b|0)>(c|0)){H[p>>2]=k;H[j>>2]=q;d=H[n>>2];continue}break}H[p>>2]=d;H[n>>2]=q;d:{if((c-g|0)<(f-c|0)){e:{if(l-1>>>0>h>>>0){d=e;break e}c=l<<3;if(c){d=H[33808];b=d+12|0;d=(s=b,t=c,u=Ra[H[H[d>>2]+20>>2]](d)|0?24764:55639,v=14160,w=155,r=H[H[b>>2]+8>>2],Ra[r](s|0,t|0,u|0,v|0,w|0)|0)}else{d=0}b=R6(d,e,h<<2);if(!(!o|!e)){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,e)}l=l<<1;o=1;e=b}b=(h<<2)+d|0;H[b>>2]=g;H[b+4>>2]=i;g=i+2|0;break d}k=i+2|0;f:{if(l-1>>>0>h>>>0){d=e;break f}c=l<<3;if(c){d=H[33808];b=d+12|0;d=(w=b,v=c,u=Ra[H[H[d>>2]+20>>2]](d)|0?24764:55639,t=14160,s=155,r=H[H[b>>2]+8>>2],Ra[r](w|0,v|0,u|0,t|0,s|0)|0)}else{d=0}b=R6(d,e,h<<2);if(!(!o|!e)){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,e)}l=l<<1;o=1;e=b}b=(h<<2)+d|0;H[b>>2]=k;H[b+4>>2]=f;f=i}h=h+2|0;if((f|0)>(g|0)){continue}break}}if(h){b=h-2|0;g=H[(b<<2)+e>>2];f=H[((h<<2)+e|0)-4>>2];h=b;continue}break}if(!o|!e){break a}a=H[33808]+12|0;Ra[H[H[a>>2]+12>>2]](a,e)}if(I[m+12|0]){H5(H[m+8>>2])}Oa=m+16|0}function hm(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,r=0,s=0,t=0,u=0,v=0,w=0;l=32;m=Oa-16|0;Oa=m;F[m+12|0]=0;e=m-128|0;Oa=e;H[m+8>>2]=e;f=b-1|0;a:{if((f|0)<=0){break a}while(1){b:{if((f|0)<=(g|0)){break b}while(1){if(f-g>>>0<=4){while(1){b=g;g=b+1|0;d=g;c=b;while(1){c=K[(d<<2)+a>>2]>2]?d:c;i=(d|0)<(f|0);d=d+1|0;if(i){continue}break}if((b|0)!=(c|0)){d=(c<<2)+a|0;c=H[d>>2];b=(b<<2)+a|0;H[d>>2]=H[b>>2];H[b>>2]=c}if((f|0)!=(g|0)){continue}break b}}j=((f+g|0)/2<<2)+a|0;d=H[j>>2];k=(g<<2)+a|0;c=H[k>>2];if(d>>>0>>0){H[k>>2]=d;H[j>>2]=c;d=c;c=H[k>>2]}i=(f<<2)+a|0;b=H[i>>2];c:{if(b>>>0>=c>>>0){c=b;break c}H[k>>2]=b;H[i>>2]=c;d=H[j>>2]}if(c>>>0>>0){H[j>>2]=c;H[i>>2]=d;d=H[j>>2]}b=f-1|0;n=(b<<2)+a|0;H[j>>2]=H[n>>2];H[n>>2]=d;c=g;while(1){i=c;c=c+1|0;p=(c<<2)+a|0;q=H[p>>2];if(q>>>0>>0){continue}while(1){b=b-1|0;j=(b<<2)+a|0;k=H[j>>2];if(k>>>0>d>>>0){continue}break}if((b|0)>(c|0)){H[p>>2]=k;H[j>>2]=q;d=H[n>>2];continue}break}H[p>>2]=d;H[n>>2]=q;d:{if((c-g|0)<(f-c|0)){e:{if(l-1>>>0>h>>>0){d=e;break e}c=l<<3;if(c){d=H[33808];b=d+12|0;d=(s=b,t=c,u=Ra[H[H[d>>2]+20>>2]](d)|0?34486:55639,v=14160,w=155,r=H[H[b>>2]+8>>2],Ra[r](s|0,t|0,u|0,v|0,w|0)|0)}else{d=0}b=R6(d,e,h<<2);if(!(!o|!e)){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,e)}l=l<<1;o=1;e=b}b=(h<<2)+d|0;H[b>>2]=g;H[b+4>>2]=i;g=i+2|0;break d}k=i+2|0;f:{if(l-1>>>0>h>>>0){d=e;break f}c=l<<3;if(c){d=H[33808];b=d+12|0;d=(w=b,v=c,u=Ra[H[H[d>>2]+20>>2]](d)|0?34486:55639,t=14160,s=155,r=H[H[b>>2]+8>>2],Ra[r](w|0,v|0,u|0,t|0,s|0)|0)}else{d=0}b=R6(d,e,h<<2);if(!(!o|!e)){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,e)}l=l<<1;o=1;e=b}b=(h<<2)+d|0;H[b>>2]=k;H[b+4>>2]=f;f=i}h=h+2|0;if((f|0)>(g|0)){continue}break}}if(h){b=h-2|0;g=H[(b<<2)+e>>2];f=H[((h<<2)+e|0)-4>>2];h=b;continue}break}if(!o|!e){break a}a=H[33808]+12|0;Ra[H[H[a>>2]+12>>2]](a,e)}if(I[m+12|0]){H5(H[m+8>>2])}Oa=m+16|0}function gm(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,r=0,s=0,t=0,u=0,v=0,w=0;l=32;m=Oa-16|0;Oa=m;F[m+12|0]=0;e=m-128|0;Oa=e;H[m+8>>2]=e;f=b-1|0;a:{if((f|0)<=0){break a}while(1){b:{if((f|0)<=(g|0)){break b}while(1){if(f-g>>>0<=4){while(1){b=g;g=b+1|0;d=g;c=b;while(1){c=K[(d<<2)+a>>2]>2]?d:c;i=(d|0)<(f|0);d=d+1|0;if(i){continue}break}if((b|0)!=(c|0)){d=(c<<2)+a|0;c=H[d>>2];b=(b<<2)+a|0;H[d>>2]=H[b>>2];H[b>>2]=c}if((f|0)!=(g|0)){continue}break b}}j=((f+g|0)/2<<2)+a|0;d=H[j>>2];k=(g<<2)+a|0;c=H[k>>2];if(d>>>0>>0){H[k>>2]=d;H[j>>2]=c;d=c;c=H[k>>2]}i=(f<<2)+a|0;b=H[i>>2];c:{if(b>>>0>=c>>>0){c=b;break c}H[k>>2]=b;H[i>>2]=c;d=H[j>>2]}if(c>>>0>>0){H[j>>2]=c;H[i>>2]=d;d=H[j>>2]}b=f-1|0;n=(b<<2)+a|0;H[j>>2]=H[n>>2];H[n>>2]=d;c=g;while(1){i=c;c=c+1|0;p=(c<<2)+a|0;q=H[p>>2];if(q>>>0>>0){continue}while(1){b=b-1|0;j=(b<<2)+a|0;k=H[j>>2];if(k>>>0>d>>>0){continue}break}if((b|0)>(c|0)){H[p>>2]=k;H[j>>2]=q;d=H[n>>2];continue}break}H[p>>2]=d;H[n>>2]=q;d:{if((c-g|0)<(f-c|0)){e:{if(l-1>>>0>h>>>0){d=e;break e}c=l<<3;if(c){d=H[33808];b=d+12|0;d=(s=b,t=c,u=Ra[H[H[d>>2]+20>>2]](d)|0?32646:55639,v=14160,w=155,r=H[H[b>>2]+8>>2],Ra[r](s|0,t|0,u|0,v|0,w|0)|0)}else{d=0}b=R6(d,e,h<<2);if(!(!o|!e)){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,e)}l=l<<1;o=1;e=b}b=(h<<2)+d|0;H[b>>2]=g;H[b+4>>2]=i;g=i+2|0;break d}k=i+2|0;f:{if(l-1>>>0>h>>>0){d=e;break f}c=l<<3;if(c){d=H[33808];b=d+12|0;d=(w=b,v=c,u=Ra[H[H[d>>2]+20>>2]](d)|0?32646:55639,t=14160,s=155,r=H[H[b>>2]+8>>2],Ra[r](w|0,v|0,u|0,t|0,s|0)|0)}else{d=0}b=R6(d,e,h<<2);if(!(!o|!e)){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,e)}l=l<<1;o=1;e=b}b=(h<<2)+d|0;H[b>>2]=k;H[b+4>>2]=f;f=i}h=h+2|0;if((f|0)>(g|0)){continue}break}}if(h){b=h-2|0;g=H[(b<<2)+e>>2];f=H[((h<<2)+e|0)-4>>2];h=b;continue}break}if(!o|!e){break a}a=H[33808]+12|0;Ra[H[H[a>>2]+12>>2]](a,e)}if(I[m+12|0]){H5(H[m+8>>2])}Oa=m+16|0}function fm(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,r=0,s=0,t=0,u=0,v=0,w=0;l=32;m=Oa-16|0;Oa=m;F[m+12|0]=0;e=m-128|0;Oa=e;H[m+8>>2]=e;f=b-1|0;a:{if((f|0)<=0){break a}while(1){b:{if((f|0)<=(g|0)){break b}while(1){if(f-g>>>0<=4){while(1){b=g;g=b+1|0;d=g;c=b;while(1){c=K[(d<<2)+a>>2]>2]?d:c;i=(d|0)<(f|0);d=d+1|0;if(i){continue}break}if((b|0)!=(c|0)){d=(c<<2)+a|0;c=H[d>>2];b=(b<<2)+a|0;H[d>>2]=H[b>>2];H[b>>2]=c}if((f|0)!=(g|0)){continue}break b}}j=((f+g|0)/2<<2)+a|0;d=H[j>>2];k=(g<<2)+a|0;c=H[k>>2];if(d>>>0>>0){H[k>>2]=d;H[j>>2]=c;d=c;c=H[k>>2]}i=(f<<2)+a|0;b=H[i>>2];c:{if(b>>>0>=c>>>0){c=b;break c}H[k>>2]=b;H[i>>2]=c;d=H[j>>2]}if(c>>>0>>0){H[j>>2]=c;H[i>>2]=d;d=H[j>>2]}b=f-1|0;n=(b<<2)+a|0;H[j>>2]=H[n>>2];H[n>>2]=d;c=g;while(1){i=c;c=c+1|0;p=(c<<2)+a|0;q=H[p>>2];if(q>>>0>>0){continue}while(1){b=b-1|0;j=(b<<2)+a|0;k=H[j>>2];if(k>>>0>d>>>0){continue}break}if((b|0)>(c|0)){H[p>>2]=k;H[j>>2]=q;d=H[n>>2];continue}break}H[p>>2]=d;H[n>>2]=q;d:{if((c-g|0)<(f-c|0)){e:{if(l-1>>>0>h>>>0){d=e;break e}c=l<<3;if(c){d=H[33808];b=d+12|0;d=(s=b,t=c,u=Ra[H[H[d>>2]+20>>2]](d)|0?36464:55639,v=14160,w=155,r=H[H[b>>2]+8>>2],Ra[r](s|0,t|0,u|0,v|0,w|0)|0)}else{d=0}b=R6(d,e,h<<2);if(!(!o|!e)){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,e)}l=l<<1;o=1;e=b}b=(h<<2)+d|0;H[b>>2]=g;H[b+4>>2]=i;g=i+2|0;break d}k=i+2|0;f:{if(l-1>>>0>h>>>0){d=e;break f}c=l<<3;if(c){d=H[33808];b=d+12|0;d=(w=b,v=c,u=Ra[H[H[d>>2]+20>>2]](d)|0?36464:55639,t=14160,s=155,r=H[H[b>>2]+8>>2],Ra[r](w|0,v|0,u|0,t|0,s|0)|0)}else{d=0}b=R6(d,e,h<<2);if(!(!o|!e)){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,e)}l=l<<1;o=1;e=b}b=(h<<2)+d|0;H[b>>2]=k;H[b+4>>2]=f;f=i}h=h+2|0;if((f|0)>(g|0)){continue}break}}if(h){b=h-2|0;g=H[(b<<2)+e>>2];f=H[((h<<2)+e|0)-4>>2];h=b;continue}break}if(!o|!e){break a}a=H[33808]+12|0;Ra[H[H[a>>2]+12>>2]](a,e)}if(I[m+12|0]){H5(H[m+8>>2])}Oa=m+16|0}function em(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,r=0,s=0,t=0,u=0,v=0,w=0;l=32;m=Oa-16|0;Oa=m;F[m+12|0]=0;e=m-128|0;Oa=e;H[m+8>>2]=e;f=b-1|0;a:{if((f|0)<=0){break a}while(1){b:{if((f|0)<=(g|0)){break b}while(1){if(f-g>>>0<=4){while(1){b=g;g=b+1|0;d=g;c=b;while(1){c=K[(d<<2)+a>>2]>2]?d:c;i=(d|0)<(f|0);d=d+1|0;if(i){continue}break}if((b|0)!=(c|0)){d=(c<<2)+a|0;c=H[d>>2];b=(b<<2)+a|0;H[d>>2]=H[b>>2];H[b>>2]=c}if((f|0)!=(g|0)){continue}break b}}j=((f+g|0)/2<<2)+a|0;d=H[j>>2];k=(g<<2)+a|0;c=H[k>>2];if(d>>>0>>0){H[k>>2]=d;H[j>>2]=c;d=c;c=H[k>>2]}i=(f<<2)+a|0;b=H[i>>2];c:{if(b>>>0>=c>>>0){c=b;break c}H[k>>2]=b;H[i>>2]=c;d=H[j>>2]}if(c>>>0>>0){H[j>>2]=c;H[i>>2]=d;d=H[j>>2]}b=f-1|0;n=(b<<2)+a|0;H[j>>2]=H[n>>2];H[n>>2]=d;c=g;while(1){i=c;c=c+1|0;p=(c<<2)+a|0;q=H[p>>2];if(q>>>0>>0){continue}while(1){b=b-1|0;j=(b<<2)+a|0;k=H[j>>2];if(k>>>0>d>>>0){continue}break}if((b|0)>(c|0)){H[p>>2]=k;H[j>>2]=q;d=H[n>>2];continue}break}H[p>>2]=d;H[n>>2]=q;d:{if((c-g|0)<(f-c|0)){e:{if(l-1>>>0>h>>>0){d=e;break e}c=l<<3;if(c){d=H[33808];b=d+12|0;d=(s=b,t=c,u=Ra[H[H[d>>2]+20>>2]](d)|0?34594:55639,v=14160,w=155,r=H[H[b>>2]+8>>2],Ra[r](s|0,t|0,u|0,v|0,w|0)|0)}else{d=0}b=R6(d,e,h<<2);if(!(!o|!e)){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,e)}l=l<<1;o=1;e=b}b=(h<<2)+d|0;H[b>>2]=g;H[b+4>>2]=i;g=i+2|0;break d}k=i+2|0;f:{if(l-1>>>0>h>>>0){d=e;break f}c=l<<3;if(c){d=H[33808];b=d+12|0;d=(w=b,v=c,u=Ra[H[H[d>>2]+20>>2]](d)|0?34594:55639,t=14160,s=155,r=H[H[b>>2]+8>>2],Ra[r](w|0,v|0,u|0,t|0,s|0)|0)}else{d=0}b=R6(d,e,h<<2);if(!(!o|!e)){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,e)}l=l<<1;o=1;e=b}b=(h<<2)+d|0;H[b>>2]=k;H[b+4>>2]=f;f=i}h=h+2|0;if((f|0)>(g|0)){continue}break}}if(h){b=h-2|0;g=H[(b<<2)+e>>2];f=H[((h<<2)+e|0)-4>>2];h=b;continue}break}if(!o|!e){break a}a=H[33808]+12|0;Ra[H[H[a>>2]+12>>2]](a,e)}if(I[m+12|0]){H5(H[m+8>>2])}Oa=m+16|0}function dm(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,r=0,s=0,t=0,u=0,v=0,w=0;l=32;m=Oa-16|0;Oa=m;F[m+12|0]=0;e=m-128|0;Oa=e;H[m+8>>2]=e;f=b-1|0;a:{if((f|0)<=0){break a}while(1){b:{if((f|0)<=(g|0)){break b}while(1){if(f-g>>>0<=4){while(1){b=g;g=b+1|0;d=g;c=b;while(1){c=K[(d<<2)+a>>2]>2]?d:c;i=(d|0)<(f|0);d=d+1|0;if(i){continue}break}if((b|0)!=(c|0)){d=(c<<2)+a|0;c=H[d>>2];b=(b<<2)+a|0;H[d>>2]=H[b>>2];H[b>>2]=c}if((f|0)!=(g|0)){continue}break b}}j=((f+g|0)/2<<2)+a|0;d=H[j>>2];k=(g<<2)+a|0;c=H[k>>2];if(d>>>0>>0){H[k>>2]=d;H[j>>2]=c;d=c;c=H[k>>2]}i=(f<<2)+a|0;b=H[i>>2];c:{if(b>>>0>=c>>>0){c=b;break c}H[k>>2]=b;H[i>>2]=c;d=H[j>>2]}if(c>>>0>>0){H[j>>2]=c;H[i>>2]=d;d=H[j>>2]}b=f-1|0;n=(b<<2)+a|0;H[j>>2]=H[n>>2];H[n>>2]=d;c=g;while(1){i=c;c=c+1|0;p=(c<<2)+a|0;q=H[p>>2];if(q>>>0>>0){continue}while(1){b=b-1|0;j=(b<<2)+a|0;k=H[j>>2];if(k>>>0>d>>>0){continue}break}if((b|0)>(c|0)){H[p>>2]=k;H[j>>2]=q;d=H[n>>2];continue}break}H[p>>2]=d;H[n>>2]=q;d:{if((c-g|0)<(f-c|0)){e:{if(l-1>>>0>h>>>0){d=e;break e}c=l<<3;if(c){d=H[33808];b=d+12|0;d=(s=b,t=c,u=Ra[H[H[d>>2]+20>>2]](d)|0?23760:55639,v=14160,w=155,r=H[H[b>>2]+8>>2],Ra[r](s|0,t|0,u|0,v|0,w|0)|0)}else{d=0}b=R6(d,e,h<<2);if(!(!o|!e)){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,e)}l=l<<1;o=1;e=b}b=(h<<2)+d|0;H[b>>2]=g;H[b+4>>2]=i;g=i+2|0;break d}k=i+2|0;f:{if(l-1>>>0>h>>>0){d=e;break f}c=l<<3;if(c){d=H[33808];b=d+12|0;d=(w=b,v=c,u=Ra[H[H[d>>2]+20>>2]](d)|0?23760:55639,t=14160,s=155,r=H[H[b>>2]+8>>2],Ra[r](w|0,v|0,u|0,t|0,s|0)|0)}else{d=0}b=R6(d,e,h<<2);if(!(!o|!e)){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,e)}l=l<<1;o=1;e=b}b=(h<<2)+d|0;H[b>>2]=k;H[b+4>>2]=f;f=i}h=h+2|0;if((f|0)>(g|0)){continue}break}}if(h){b=h-2|0;g=H[(b<<2)+e>>2];f=H[((h<<2)+e|0)-4>>2];h=b;continue}break}if(!o|!e){break a}a=H[33808]+12|0;Ra[H[H[a>>2]+12>>2]](a,e)}if(I[m+12|0]){H5(H[m+8>>2])}Oa=m+16|0}function cm(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,r=0,s=0,t=0,u=0,v=0,w=0;l=32;m=Oa-16|0;Oa=m;F[m+12|0]=0;e=m-128|0;Oa=e;H[m+8>>2]=e;f=b-1|0;a:{if((f|0)<=0){break a}while(1){b:{if((f|0)<=(g|0)){break b}while(1){if(f-g>>>0<=4){while(1){b=g;g=b+1|0;d=g;c=b;while(1){c=K[(d<<2)+a>>2]>2]?d:c;i=(d|0)<(f|0);d=d+1|0;if(i){continue}break}if((b|0)!=(c|0)){d=(c<<2)+a|0;c=H[d>>2];b=(b<<2)+a|0;H[d>>2]=H[b>>2];H[b>>2]=c}if((f|0)!=(g|0)){continue}break b}}j=((f+g|0)/2<<2)+a|0;d=H[j>>2];k=(g<<2)+a|0;c=H[k>>2];if(d>>>0>>0){H[k>>2]=d;H[j>>2]=c;d=c;c=H[k>>2]}i=(f<<2)+a|0;b=H[i>>2];c:{if(b>>>0>=c>>>0){c=b;break c}H[k>>2]=b;H[i>>2]=c;d=H[j>>2]}if(c>>>0>>0){H[j>>2]=c;H[i>>2]=d;d=H[j>>2]}b=f-1|0;n=(b<<2)+a|0;H[j>>2]=H[n>>2];H[n>>2]=d;c=g;while(1){i=c;c=c+1|0;p=(c<<2)+a|0;q=H[p>>2];if(q>>>0>>0){continue}while(1){b=b-1|0;j=(b<<2)+a|0;k=H[j>>2];if(k>>>0>d>>>0){continue}break}if((b|0)>(c|0)){H[p>>2]=k;H[j>>2]=q;d=H[n>>2];continue}break}H[p>>2]=d;H[n>>2]=q;d:{if((c-g|0)<(f-c|0)){e:{if(l-1>>>0>h>>>0){d=e;break e}c=l<<3;if(c){d=H[33808];b=d+12|0;d=(s=b,t=c,u=Ra[H[H[d>>2]+20>>2]](d)|0?36304:55639,v=14160,w=155,r=H[H[b>>2]+8>>2],Ra[r](s|0,t|0,u|0,v|0,w|0)|0)}else{d=0}b=R6(d,e,h<<2);if(!(!o|!e)){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,e)}l=l<<1;o=1;e=b}b=(h<<2)+d|0;H[b>>2]=g;H[b+4>>2]=i;g=i+2|0;break d}k=i+2|0;f:{if(l-1>>>0>h>>>0){d=e;break f}c=l<<3;if(c){d=H[33808];b=d+12|0;d=(w=b,v=c,u=Ra[H[H[d>>2]+20>>2]](d)|0?36304:55639,t=14160,s=155,r=H[H[b>>2]+8>>2],Ra[r](w|0,v|0,u|0,t|0,s|0)|0)}else{d=0}b=R6(d,e,h<<2);if(!(!o|!e)){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,e)}l=l<<1;o=1;e=b}b=(h<<2)+d|0;H[b>>2]=k;H[b+4>>2]=f;f=i}h=h+2|0;if((f|0)>(g|0)){continue}break}}if(h){b=h-2|0;g=H[(b<<2)+e>>2];f=H[((h<<2)+e|0)-4>>2];h=b;continue}break}if(!o|!e){break a}a=H[33808]+12|0;Ra[H[H[a>>2]+12>>2]](a,e)}if(I[m+12|0]){H5(H[m+8>>2])}Oa=m+16|0}function cP(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,r=0,s=0,t=0,u=0,v=0,w=0;l=32;m=Oa-16|0;Oa=m;F[m+12|0]=0;e=m-128|0;Oa=e;H[m+8>>2]=e;f=b-1|0;a:{if((f|0)<=0){break a}while(1){b:{if((f|0)<=(g|0)){break b}while(1){if(f-g>>>0<=4){while(1){b=g;g=b+1|0;d=g;c=b;while(1){c=K[(d<<2)+a>>2]>2]?d:c;i=(d|0)<(f|0);d=d+1|0;if(i){continue}break}if((b|0)!=(c|0)){d=(c<<2)+a|0;c=H[d>>2];b=(b<<2)+a|0;H[d>>2]=H[b>>2];H[b>>2]=c}if((f|0)!=(g|0)){continue}break b}}j=((f+g|0)/2<<2)+a|0;d=H[j>>2];k=(g<<2)+a|0;c=H[k>>2];if(d>>>0>>0){H[k>>2]=d;H[j>>2]=c;d=c;c=H[k>>2]}i=(f<<2)+a|0;b=H[i>>2];c:{if(b>>>0>=c>>>0){c=b;break c}H[k>>2]=b;H[i>>2]=c;d=H[j>>2]}if(c>>>0>>0){H[j>>2]=c;H[i>>2]=d;d=H[j>>2]}b=f-1|0;n=(b<<2)+a|0;H[j>>2]=H[n>>2];H[n>>2]=d;c=g;while(1){i=c;c=c+1|0;p=(c<<2)+a|0;q=H[p>>2];if(q>>>0>>0){continue}while(1){b=b-1|0;j=(b<<2)+a|0;k=H[j>>2];if(k>>>0>d>>>0){continue}break}if((b|0)>(c|0)){H[p>>2]=k;H[j>>2]=q;d=H[n>>2];continue}break}H[p>>2]=d;H[n>>2]=q;d:{if((c-g|0)<(f-c|0)){e:{if(l-1>>>0>h>>>0){d=e;break e}c=l<<3;if(c){d=H[33808];b=d+12|0;d=(s=b,t=c,u=Ra[H[H[d>>2]+20>>2]](d)|0?41318:55639,v=14160,w=155,r=H[H[b>>2]+8>>2],Ra[r](s|0,t|0,u|0,v|0,w|0)|0)}else{d=0}b=R6(d,e,h<<2);if(!(!o|!e)){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,e)}l=l<<1;o=1;e=b}b=(h<<2)+d|0;H[b>>2]=g;H[b+4>>2]=i;g=i+2|0;break d}k=i+2|0;f:{if(l-1>>>0>h>>>0){d=e;break f}c=l<<3;if(c){d=H[33808];b=d+12|0;d=(w=b,v=c,u=Ra[H[H[d>>2]+20>>2]](d)|0?41318:55639,t=14160,s=155,r=H[H[b>>2]+8>>2],Ra[r](w|0,v|0,u|0,t|0,s|0)|0)}else{d=0}b=R6(d,e,h<<2);if(!(!o|!e)){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,e)}l=l<<1;o=1;e=b}b=(h<<2)+d|0;H[b>>2]=k;H[b+4>>2]=f;f=i}h=h+2|0;if((f|0)>(g|0)){continue}break}}if(h){b=h-2|0;g=H[(b<<2)+e>>2];f=H[((h<<2)+e|0)-4>>2];h=b;continue}break}if(!o|!e){break a}a=H[33808]+12|0;Ra[H[H[a>>2]+12>>2]](a,e)}if(I[m+12|0]){H5(H[m+8>>2])}Oa=m+16|0}function bm(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,r=0,s=0,t=0,u=0,v=0,w=0;l=32;m=Oa-16|0;Oa=m;F[m+12|0]=0;e=m-128|0;Oa=e;H[m+8>>2]=e;f=b-1|0;a:{if((f|0)<=0){break a}while(1){b:{if((f|0)<=(g|0)){break b}while(1){if(f-g>>>0<=4){while(1){b=g;g=b+1|0;d=g;c=b;while(1){c=K[(d<<2)+a>>2]>2]?d:c;i=(d|0)<(f|0);d=d+1|0;if(i){continue}break}if((b|0)!=(c|0)){d=(c<<2)+a|0;c=H[d>>2];b=(b<<2)+a|0;H[d>>2]=H[b>>2];H[b>>2]=c}if((f|0)!=(g|0)){continue}break b}}j=((f+g|0)/2<<2)+a|0;d=H[j>>2];k=(g<<2)+a|0;c=H[k>>2];if(d>>>0>>0){H[k>>2]=d;H[j>>2]=c;d=c;c=H[k>>2]}i=(f<<2)+a|0;b=H[i>>2];c:{if(b>>>0>=c>>>0){c=b;break c}H[k>>2]=b;H[i>>2]=c;d=H[j>>2]}if(c>>>0>>0){H[j>>2]=c;H[i>>2]=d;d=H[j>>2]}b=f-1|0;n=(b<<2)+a|0;H[j>>2]=H[n>>2];H[n>>2]=d;c=g;while(1){i=c;c=c+1|0;p=(c<<2)+a|0;q=H[p>>2];if(q>>>0>>0){continue}while(1){b=b-1|0;j=(b<<2)+a|0;k=H[j>>2];if(k>>>0>d>>>0){continue}break}if((b|0)>(c|0)){H[p>>2]=k;H[j>>2]=q;d=H[n>>2];continue}break}H[p>>2]=d;H[n>>2]=q;d:{if((c-g|0)<(f-c|0)){e:{if(l-1>>>0>h>>>0){d=e;break e}c=l<<3;if(c){d=H[33808];b=d+12|0;d=(s=b,t=c,u=Ra[H[H[d>>2]+20>>2]](d)|0?46190:55639,v=14160,w=155,r=H[H[b>>2]+8>>2],Ra[r](s|0,t|0,u|0,v|0,w|0)|0)}else{d=0}b=R6(d,e,h<<2);if(!(!o|!e)){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,e)}l=l<<1;o=1;e=b}b=(h<<2)+d|0;H[b>>2]=g;H[b+4>>2]=i;g=i+2|0;break d}k=i+2|0;f:{if(l-1>>>0>h>>>0){d=e;break f}c=l<<3;if(c){d=H[33808];b=d+12|0;d=(w=b,v=c,u=Ra[H[H[d>>2]+20>>2]](d)|0?46190:55639,t=14160,s=155,r=H[H[b>>2]+8>>2],Ra[r](w|0,v|0,u|0,t|0,s|0)|0)}else{d=0}b=R6(d,e,h<<2);if(!(!o|!e)){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,e)}l=l<<1;o=1;e=b}b=(h<<2)+d|0;H[b>>2]=k;H[b+4>>2]=f;f=i}h=h+2|0;if((f|0)>(g|0)){continue}break}}if(h){b=h-2|0;g=H[(b<<2)+e>>2];f=H[((h<<2)+e|0)-4>>2];h=b;continue}break}if(!o|!e){break a}a=H[33808]+12|0;Ra[H[H[a>>2]+12>>2]](a,e)}if(I[m+12|0]){H5(H[m+8>>2])}Oa=m+16|0}function bP(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,r=0,s=0,t=0,u=0,v=0,w=0;l=32;m=Oa-16|0;Oa=m;F[m+12|0]=0;e=m-128|0;Oa=e;H[m+8>>2]=e;f=b-1|0;a:{if((f|0)<=0){break a}while(1){b:{if((f|0)<=(g|0)){break b}while(1){if(f-g>>>0<=4){while(1){b=g;g=b+1|0;d=g;c=b;while(1){c=K[(d<<2)+a>>2]>2]?d:c;i=(d|0)<(f|0);d=d+1|0;if(i){continue}break}if((b|0)!=(c|0)){d=(c<<2)+a|0;c=H[d>>2];b=(b<<2)+a|0;H[d>>2]=H[b>>2];H[b>>2]=c}if((f|0)!=(g|0)){continue}break b}}j=((f+g|0)/2<<2)+a|0;d=H[j>>2];k=(g<<2)+a|0;c=H[k>>2];if(d>>>0>>0){H[k>>2]=d;H[j>>2]=c;d=c;c=H[k>>2]}i=(f<<2)+a|0;b=H[i>>2];c:{if(b>>>0>=c>>>0){c=b;break c}H[k>>2]=b;H[i>>2]=c;d=H[j>>2]}if(c>>>0>>0){H[j>>2]=c;H[i>>2]=d;d=H[j>>2]}b=f-1|0;n=(b<<2)+a|0;H[j>>2]=H[n>>2];H[n>>2]=d;c=g;while(1){i=c;c=c+1|0;p=(c<<2)+a|0;q=H[p>>2];if(q>>>0>>0){continue}while(1){b=b-1|0;j=(b<<2)+a|0;k=H[j>>2];if(k>>>0>d>>>0){continue}break}if((b|0)>(c|0)){H[p>>2]=k;H[j>>2]=q;d=H[n>>2];continue}break}H[p>>2]=d;H[n>>2]=q;d:{if((c-g|0)<(f-c|0)){e:{if(l-1>>>0>h>>>0){d=e;break e}c=l<<3;if(c){d=H[33808];b=d+12|0;d=(s=b,t=c,u=Ra[H[H[d>>2]+20>>2]](d)|0?33358:55639,v=14160,w=155,r=H[H[b>>2]+8>>2],Ra[r](s|0,t|0,u|0,v|0,w|0)|0)}else{d=0}b=R6(d,e,h<<2);if(!(!o|!e)){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,e)}l=l<<1;o=1;e=b}b=(h<<2)+d|0;H[b>>2]=g;H[b+4>>2]=i;g=i+2|0;break d}k=i+2|0;f:{if(l-1>>>0>h>>>0){d=e;break f}c=l<<3;if(c){d=H[33808];b=d+12|0;d=(w=b,v=c,u=Ra[H[H[d>>2]+20>>2]](d)|0?33358:55639,t=14160,s=155,r=H[H[b>>2]+8>>2],Ra[r](w|0,v|0,u|0,t|0,s|0)|0)}else{d=0}b=R6(d,e,h<<2);if(!(!o|!e)){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,e)}l=l<<1;o=1;e=b}b=(h<<2)+d|0;H[b>>2]=k;H[b+4>>2]=f;f=i}h=h+2|0;if((f|0)>(g|0)){continue}break}}if(h){b=h-2|0;g=H[(b<<2)+e>>2];f=H[((h<<2)+e|0)-4>>2];h=b;continue}break}if(!o|!e){break a}a=H[33808]+12|0;Ra[H[H[a>>2]+12>>2]](a,e)}if(I[m+12|0]){H5(H[m+8>>2])}Oa=m+16|0}function am(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,r=0,s=0,t=0,u=0,v=0,w=0;l=32;m=Oa-16|0;Oa=m;F[m+12|0]=0;e=m-128|0;Oa=e;H[m+8>>2]=e;f=b-1|0;a:{if((f|0)<=0){break a}while(1){b:{if((f|0)<=(g|0)){break b}while(1){if(f-g>>>0<=4){while(1){b=g;g=b+1|0;d=g;c=b;while(1){c=K[(d<<2)+a>>2]>2]?d:c;i=(d|0)<(f|0);d=d+1|0;if(i){continue}break}if((b|0)!=(c|0)){d=(c<<2)+a|0;c=H[d>>2];b=(b<<2)+a|0;H[d>>2]=H[b>>2];H[b>>2]=c}if((f|0)!=(g|0)){continue}break b}}j=((f+g|0)/2<<2)+a|0;d=H[j>>2];k=(g<<2)+a|0;c=H[k>>2];if(d>>>0>>0){H[k>>2]=d;H[j>>2]=c;d=c;c=H[k>>2]}i=(f<<2)+a|0;b=H[i>>2];c:{if(b>>>0>=c>>>0){c=b;break c}H[k>>2]=b;H[i>>2]=c;d=H[j>>2]}if(c>>>0>>0){H[j>>2]=c;H[i>>2]=d;d=H[j>>2]}b=f-1|0;n=(b<<2)+a|0;H[j>>2]=H[n>>2];H[n>>2]=d;c=g;while(1){i=c;c=c+1|0;p=(c<<2)+a|0;q=H[p>>2];if(q>>>0>>0){continue}while(1){b=b-1|0;j=(b<<2)+a|0;k=H[j>>2];if(k>>>0>d>>>0){continue}break}if((b|0)>(c|0)){H[p>>2]=k;H[j>>2]=q;d=H[n>>2];continue}break}H[p>>2]=d;H[n>>2]=q;d:{if((c-g|0)<(f-c|0)){e:{if(l-1>>>0>h>>>0){d=e;break e}c=l<<3;if(c){d=H[33808];b=d+12|0;d=(s=b,t=c,u=Ra[H[H[d>>2]+20>>2]](d)|0?45882:55639,v=14160,w=155,r=H[H[b>>2]+8>>2],Ra[r](s|0,t|0,u|0,v|0,w|0)|0)}else{d=0}b=R6(d,e,h<<2);if(!(!o|!e)){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,e)}l=l<<1;o=1;e=b}b=(h<<2)+d|0;H[b>>2]=g;H[b+4>>2]=i;g=i+2|0;break d}k=i+2|0;f:{if(l-1>>>0>h>>>0){d=e;break f}c=l<<3;if(c){d=H[33808];b=d+12|0;d=(w=b,v=c,u=Ra[H[H[d>>2]+20>>2]](d)|0?45882:55639,t=14160,s=155,r=H[H[b>>2]+8>>2],Ra[r](w|0,v|0,u|0,t|0,s|0)|0)}else{d=0}b=R6(d,e,h<<2);if(!(!o|!e)){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,e)}l=l<<1;o=1;e=b}b=(h<<2)+d|0;H[b>>2]=k;H[b+4>>2]=f;f=i}h=h+2|0;if((f|0)>(g|0)){continue}break}}if(h){b=h-2|0;g=H[(b<<2)+e>>2];f=H[((h<<2)+e|0)-4>>2];h=b;continue}break}if(!o|!e){break a}a=H[33808]+12|0;Ra[H[H[a>>2]+12>>2]](a,e)}if(I[m+12|0]){H5(H[m+8>>2])}Oa=m+16|0}function aP(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,r=0,s=0,t=0,u=0,v=0,w=0;l=32;m=Oa-16|0;Oa=m;F[m+12|0]=0;e=m-128|0;Oa=e;H[m+8>>2]=e;f=b-1|0;a:{if((f|0)<=0){break a}while(1){b:{if((f|0)<=(g|0)){break b}while(1){if(f-g>>>0<=4){while(1){b=g;g=b+1|0;d=g;c=b;while(1){c=K[(d<<2)+a>>2]>2]?d:c;i=(d|0)<(f|0);d=d+1|0;if(i){continue}break}if((b|0)!=(c|0)){d=(c<<2)+a|0;c=H[d>>2];b=(b<<2)+a|0;H[d>>2]=H[b>>2];H[b>>2]=c}if((f|0)!=(g|0)){continue}break b}}j=((f+g|0)/2<<2)+a|0;d=H[j>>2];k=(g<<2)+a|0;c=H[k>>2];if(d>>>0>>0){H[k>>2]=d;H[j>>2]=c;d=c;c=H[k>>2]}i=(f<<2)+a|0;b=H[i>>2];c:{if(b>>>0>=c>>>0){c=b;break c}H[k>>2]=b;H[i>>2]=c;d=H[j>>2]}if(c>>>0>>0){H[j>>2]=c;H[i>>2]=d;d=H[j>>2]}b=f-1|0;n=(b<<2)+a|0;H[j>>2]=H[n>>2];H[n>>2]=d;c=g;while(1){i=c;c=c+1|0;p=(c<<2)+a|0;q=H[p>>2];if(q>>>0>>0){continue}while(1){b=b-1|0;j=(b<<2)+a|0;k=H[j>>2];if(k>>>0>d>>>0){continue}break}if((b|0)>(c|0)){H[p>>2]=k;H[j>>2]=q;d=H[n>>2];continue}break}H[p>>2]=d;H[n>>2]=q;d:{if((c-g|0)<(f-c|0)){e:{if(l-1>>>0>h>>>0){d=e;break e}c=l<<3;if(c){d=H[33808];b=d+12|0;d=(s=b,t=c,u=Ra[H[H[d>>2]+20>>2]](d)|0?32248:55639,v=14160,w=155,r=H[H[b>>2]+8>>2],Ra[r](s|0,t|0,u|0,v|0,w|0)|0)}else{d=0}b=R6(d,e,h<<2);if(!(!o|!e)){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,e)}l=l<<1;o=1;e=b}b=(h<<2)+d|0;H[b>>2]=g;H[b+4>>2]=i;g=i+2|0;break d}k=i+2|0;f:{if(l-1>>>0>h>>>0){d=e;break f}c=l<<3;if(c){d=H[33808];b=d+12|0;d=(w=b,v=c,u=Ra[H[H[d>>2]+20>>2]](d)|0?32248:55639,t=14160,s=155,r=H[H[b>>2]+8>>2],Ra[r](w|0,v|0,u|0,t|0,s|0)|0)}else{d=0}b=R6(d,e,h<<2);if(!(!o|!e)){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,e)}l=l<<1;o=1;e=b}b=(h<<2)+d|0;H[b>>2]=k;H[b+4>>2]=f;f=i}h=h+2|0;if((f|0)>(g|0)){continue}break}}if(h){b=h-2|0;g=H[(b<<2)+e>>2];f=H[((h<<2)+e|0)-4>>2];h=b;continue}break}if(!o|!e){break a}a=H[33808]+12|0;Ra[H[H[a>>2]+12>>2]](a,e)}if(I[m+12|0]){H5(H[m+8>>2])}Oa=m+16|0}function _B(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,r=0,s=0,t=0,u=0,v=0,w=0;l=32;m=Oa-16|0;Oa=m;F[m+12|0]=0;e=m-128|0;Oa=e;H[m+8>>2]=e;f=b-1|0;a:{if((f|0)<=0){break a}while(1){b:{if((f|0)<=(g|0)){break b}while(1){if(f-g>>>0<=4){while(1){b=g;g=b+1|0;d=g;c=b;while(1){c=K[(d<<2)+a>>2]>2]?d:c;i=(d|0)<(f|0);d=d+1|0;if(i){continue}break}if((b|0)!=(c|0)){d=(c<<2)+a|0;c=H[d>>2];b=(b<<2)+a|0;H[d>>2]=H[b>>2];H[b>>2]=c}if((f|0)!=(g|0)){continue}break b}}j=((f+g|0)/2<<2)+a|0;d=H[j>>2];k=(g<<2)+a|0;c=H[k>>2];if(d>>>0>>0){H[k>>2]=d;H[j>>2]=c;d=c;c=H[k>>2]}i=(f<<2)+a|0;b=H[i>>2];c:{if(b>>>0>=c>>>0){c=b;break c}H[k>>2]=b;H[i>>2]=c;d=H[j>>2]}if(c>>>0>>0){H[j>>2]=c;H[i>>2]=d;d=H[j>>2]}b=f-1|0;n=(b<<2)+a|0;H[j>>2]=H[n>>2];H[n>>2]=d;c=g;while(1){i=c;c=c+1|0;p=(c<<2)+a|0;q=H[p>>2];if(q>>>0>>0){continue}while(1){b=b-1|0;j=(b<<2)+a|0;k=H[j>>2];if(k>>>0>d>>>0){continue}break}if((b|0)>(c|0)){H[p>>2]=k;H[j>>2]=q;d=H[n>>2];continue}break}H[p>>2]=d;H[n>>2]=q;d:{if((c-g|0)<(f-c|0)){e:{if(l-1>>>0>h>>>0){d=e;break e}c=l<<3;if(c){d=H[33808];b=d+12|0;d=(s=b,t=c,u=Ra[H[H[d>>2]+20>>2]](d)|0?26442:55639,v=14160,w=155,r=H[H[b>>2]+8>>2],Ra[r](s|0,t|0,u|0,v|0,w|0)|0)}else{d=0}b=R6(d,e,h<<2);if(!(!o|!e)){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,e)}l=l<<1;o=1;e=b}b=(h<<2)+d|0;H[b>>2]=g;H[b+4>>2]=i;g=i+2|0;break d}k=i+2|0;f:{if(l-1>>>0>h>>>0){d=e;break f}c=l<<3;if(c){d=H[33808];b=d+12|0;d=(w=b,v=c,u=Ra[H[H[d>>2]+20>>2]](d)|0?26442:55639,t=14160,s=155,r=H[H[b>>2]+8>>2],Ra[r](w|0,v|0,u|0,t|0,s|0)|0)}else{d=0}b=R6(d,e,h<<2);if(!(!o|!e)){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,e)}l=l<<1;o=1;e=b}b=(h<<2)+d|0;H[b>>2]=k;H[b+4>>2]=f;f=i}h=h+2|0;if((f|0)>(g|0)){continue}break}}if(h){b=h-2|0;g=H[(b<<2)+e>>2];f=H[((h<<2)+e|0)-4>>2];h=b;continue}break}if(!o|!e){break a}a=H[33808]+12|0;Ra[H[H[a>>2]+12>>2]](a,e)}if(I[m+12|0]){H5(H[m+8>>2])}Oa=m+16|0}function ZB(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,r=0,s=0,t=0,u=0,v=0,w=0;l=32;m=Oa-16|0;Oa=m;F[m+12|0]=0;e=m-128|0;Oa=e;H[m+8>>2]=e;f=b-1|0;a:{if((f|0)<=0){break a}while(1){b:{if((f|0)<=(g|0)){break b}while(1){if(f-g>>>0<=4){while(1){b=g;g=b+1|0;d=g;c=b;while(1){c=K[(d<<2)+a>>2]>2]?d:c;i=(d|0)<(f|0);d=d+1|0;if(i){continue}break}if((b|0)!=(c|0)){d=(c<<2)+a|0;c=H[d>>2];b=(b<<2)+a|0;H[d>>2]=H[b>>2];H[b>>2]=c}if((f|0)!=(g|0)){continue}break b}}j=((f+g|0)/2<<2)+a|0;d=H[j>>2];k=(g<<2)+a|0;c=H[k>>2];if(d>>>0>>0){H[k>>2]=d;H[j>>2]=c;d=c;c=H[k>>2]}i=(f<<2)+a|0;b=H[i>>2];c:{if(b>>>0>=c>>>0){c=b;break c}H[k>>2]=b;H[i>>2]=c;d=H[j>>2]}if(c>>>0>>0){H[j>>2]=c;H[i>>2]=d;d=H[j>>2]}b=f-1|0;n=(b<<2)+a|0;H[j>>2]=H[n>>2];H[n>>2]=d;c=g;while(1){i=c;c=c+1|0;p=(c<<2)+a|0;q=H[p>>2];if(q>>>0>>0){continue}while(1){b=b-1|0;j=(b<<2)+a|0;k=H[j>>2];if(k>>>0>d>>>0){continue}break}if((b|0)>(c|0)){H[p>>2]=k;H[j>>2]=q;d=H[n>>2];continue}break}H[p>>2]=d;H[n>>2]=q;d:{if((c-g|0)<(f-c|0)){e:{if(l-1>>>0>h>>>0){d=e;break e}c=l<<3;if(c){d=H[33808];b=d+12|0;d=(s=b,t=c,u=Ra[H[H[d>>2]+20>>2]](d)|0?27928:55639,v=14160,w=155,r=H[H[b>>2]+8>>2],Ra[r](s|0,t|0,u|0,v|0,w|0)|0)}else{d=0}b=R6(d,e,h<<2);if(!(!o|!e)){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,e)}l=l<<1;o=1;e=b}b=(h<<2)+d|0;H[b>>2]=g;H[b+4>>2]=i;g=i+2|0;break d}k=i+2|0;f:{if(l-1>>>0>h>>>0){d=e;break f}c=l<<3;if(c){d=H[33808];b=d+12|0;d=(w=b,v=c,u=Ra[H[H[d>>2]+20>>2]](d)|0?27928:55639,t=14160,s=155,r=H[H[b>>2]+8>>2],Ra[r](w|0,v|0,u|0,t|0,s|0)|0)}else{d=0}b=R6(d,e,h<<2);if(!(!o|!e)){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,e)}l=l<<1;o=1;e=b}b=(h<<2)+d|0;H[b>>2]=k;H[b+4>>2]=f;f=i}h=h+2|0;if((f|0)>(g|0)){continue}break}}if(h){b=h-2|0;g=H[(b<<2)+e>>2];f=H[((h<<2)+e|0)-4>>2];h=b;continue}break}if(!o|!e){break a}a=H[33808]+12|0;Ra[H[H[a>>2]+12>>2]](a,e)}if(I[m+12|0]){H5(H[m+8>>2])}Oa=m+16|0}function Ur(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,r=0,s=0,t=0,u=0,v=0,w=0;l=32;m=Oa-16|0;Oa=m;F[m+12|0]=0;e=m-128|0;Oa=e;H[m+8>>2]=e;f=b-1|0;a:{if((f|0)<=0){break a}while(1){b:{if((f|0)<=(g|0)){break b}while(1){if(f-g>>>0<=4){while(1){b=g;g=b+1|0;d=g;c=b;while(1){c=K[(d<<2)+a>>2]>2]?d:c;i=(d|0)<(f|0);d=d+1|0;if(i){continue}break}if((b|0)!=(c|0)){d=(c<<2)+a|0;c=H[d>>2];b=(b<<2)+a|0;H[d>>2]=H[b>>2];H[b>>2]=c}if((f|0)!=(g|0)){continue}break b}}j=((f+g|0)/2<<2)+a|0;d=H[j>>2];k=(g<<2)+a|0;c=H[k>>2];if(d>>>0>>0){H[k>>2]=d;H[j>>2]=c;d=c;c=H[k>>2]}i=(f<<2)+a|0;b=H[i>>2];c:{if(b>>>0>=c>>>0){c=b;break c}H[k>>2]=b;H[i>>2]=c;d=H[j>>2]}if(c>>>0>>0){H[j>>2]=c;H[i>>2]=d;d=H[j>>2]}b=f-1|0;n=(b<<2)+a|0;H[j>>2]=H[n>>2];H[n>>2]=d;c=g;while(1){i=c;c=c+1|0;p=(c<<2)+a|0;q=H[p>>2];if(q>>>0>>0){continue}while(1){b=b-1|0;j=(b<<2)+a|0;k=H[j>>2];if(k>>>0>d>>>0){continue}break}if((b|0)>(c|0)){H[p>>2]=k;H[j>>2]=q;d=H[n>>2];continue}break}H[p>>2]=d;H[n>>2]=q;d:{if((c-g|0)<(f-c|0)){e:{if(l-1>>>0>h>>>0){d=e;break e}c=l<<3;if(c){d=H[33808];b=d+12|0;d=(s=b,t=c,u=Ra[H[H[d>>2]+20>>2]](d)|0?45580:55639,v=14160,w=155,r=H[H[b>>2]+8>>2],Ra[r](s|0,t|0,u|0,v|0,w|0)|0)}else{d=0}b=R6(d,e,h<<2);if(!(!o|!e)){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,e)}l=l<<1;o=1;e=b}b=(h<<2)+d|0;H[b>>2]=g;H[b+4>>2]=i;g=i+2|0;break d}k=i+2|0;f:{if(l-1>>>0>h>>>0){d=e;break f}c=l<<3;if(c){d=H[33808];b=d+12|0;d=(w=b,v=c,u=Ra[H[H[d>>2]+20>>2]](d)|0?45580:55639,t=14160,s=155,r=H[H[b>>2]+8>>2],Ra[r](w|0,v|0,u|0,t|0,s|0)|0)}else{d=0}b=R6(d,e,h<<2);if(!(!o|!e)){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,e)}l=l<<1;o=1;e=b}b=(h<<2)+d|0;H[b>>2]=k;H[b+4>>2]=f;f=i}h=h+2|0;if((f|0)>(g|0)){continue}break}}if(h){b=h-2|0;g=H[(b<<2)+e>>2];f=H[((h<<2)+e|0)-4>>2];h=b;continue}break}if(!o|!e){break a}a=H[33808]+12|0;Ra[H[H[a>>2]+12>>2]](a,e)}if(I[m+12|0]){H5(H[m+8>>2])}Oa=m+16|0}function Tr(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,r=0,s=0,t=0,u=0,v=0,w=0;l=32;m=Oa-16|0;Oa=m;F[m+12|0]=0;e=m-128|0;Oa=e;H[m+8>>2]=e;f=b-1|0;a:{if((f|0)<=0){break a}while(1){b:{if((f|0)<=(g|0)){break b}while(1){if(f-g>>>0<=4){while(1){b=g;g=b+1|0;d=g;c=b;while(1){c=K[(d<<2)+a>>2]>2]?d:c;i=(d|0)<(f|0);d=d+1|0;if(i){continue}break}if((b|0)!=(c|0)){d=(c<<2)+a|0;c=H[d>>2];b=(b<<2)+a|0;H[d>>2]=H[b>>2];H[b>>2]=c}if((f|0)!=(g|0)){continue}break b}}j=((f+g|0)/2<<2)+a|0;d=H[j>>2];k=(g<<2)+a|0;c=H[k>>2];if(d>>>0>>0){H[k>>2]=d;H[j>>2]=c;d=c;c=H[k>>2]}i=(f<<2)+a|0;b=H[i>>2];c:{if(b>>>0>=c>>>0){c=b;break c}H[k>>2]=b;H[i>>2]=c;d=H[j>>2]}if(c>>>0>>0){H[j>>2]=c;H[i>>2]=d;d=H[j>>2]}b=f-1|0;n=(b<<2)+a|0;H[j>>2]=H[n>>2];H[n>>2]=d;c=g;while(1){i=c;c=c+1|0;p=(c<<2)+a|0;q=H[p>>2];if(q>>>0>>0){continue}while(1){b=b-1|0;j=(b<<2)+a|0;k=H[j>>2];if(k>>>0>d>>>0){continue}break}if((b|0)>(c|0)){H[p>>2]=k;H[j>>2]=q;d=H[n>>2];continue}break}H[p>>2]=d;H[n>>2]=q;d:{if((c-g|0)<(f-c|0)){e:{if(l-1>>>0>h>>>0){d=e;break e}c=l<<3;if(c){d=H[33808];b=d+12|0;d=(s=b,t=c,u=Ra[H[H[d>>2]+20>>2]](d)|0?46046:55639,v=14160,w=155,r=H[H[b>>2]+8>>2],Ra[r](s|0,t|0,u|0,v|0,w|0)|0)}else{d=0}b=R6(d,e,h<<2);if(!(!o|!e)){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,e)}l=l<<1;o=1;e=b}b=(h<<2)+d|0;H[b>>2]=g;H[b+4>>2]=i;g=i+2|0;break d}k=i+2|0;f:{if(l-1>>>0>h>>>0){d=e;break f}c=l<<3;if(c){d=H[33808];b=d+12|0;d=(w=b,v=c,u=Ra[H[H[d>>2]+20>>2]](d)|0?46046:55639,t=14160,s=155,r=H[H[b>>2]+8>>2],Ra[r](w|0,v|0,u|0,t|0,s|0)|0)}else{d=0}b=R6(d,e,h<<2);if(!(!o|!e)){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,e)}l=l<<1;o=1;e=b}b=(h<<2)+d|0;H[b>>2]=k;H[b+4>>2]=f;f=i}h=h+2|0;if((f|0)>(g|0)){continue}break}}if(h){b=h-2|0;g=H[(b<<2)+e>>2];f=H[((h<<2)+e|0)-4>>2];h=b;continue}break}if(!o|!e){break a}a=H[33808]+12|0;Ra[H[H[a>>2]+12>>2]](a,e)}if(I[m+12|0]){H5(H[m+8>>2])}Oa=m+16|0}function Sr(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,r=0,s=0,t=0,u=0,v=0,w=0;l=32;m=Oa-16|0;Oa=m;F[m+12|0]=0;e=m-128|0;Oa=e;H[m+8>>2]=e;f=b-1|0;a:{if((f|0)<=0){break a}while(1){b:{if((f|0)<=(g|0)){break b}while(1){if(f-g>>>0<=4){while(1){b=g;g=b+1|0;d=g;c=b;while(1){c=K[(d<<2)+a>>2]>2]?d:c;i=(d|0)<(f|0);d=d+1|0;if(i){continue}break}if((b|0)!=(c|0)){d=(c<<2)+a|0;c=H[d>>2];b=(b<<2)+a|0;H[d>>2]=H[b>>2];H[b>>2]=c}if((f|0)!=(g|0)){continue}break b}}j=((f+g|0)/2<<2)+a|0;d=H[j>>2];k=(g<<2)+a|0;c=H[k>>2];if(d>>>0>>0){H[k>>2]=d;H[j>>2]=c;d=c;c=H[k>>2]}i=(f<<2)+a|0;b=H[i>>2];c:{if(b>>>0>=c>>>0){c=b;break c}H[k>>2]=b;H[i>>2]=c;d=H[j>>2]}if(c>>>0>>0){H[j>>2]=c;H[i>>2]=d;d=H[j>>2]}b=f-1|0;n=(b<<2)+a|0;H[j>>2]=H[n>>2];H[n>>2]=d;c=g;while(1){i=c;c=c+1|0;p=(c<<2)+a|0;q=H[p>>2];if(q>>>0>>0){continue}while(1){b=b-1|0;j=(b<<2)+a|0;k=H[j>>2];if(k>>>0>d>>>0){continue}break}if((b|0)>(c|0)){H[p>>2]=k;H[j>>2]=q;d=H[n>>2];continue}break}H[p>>2]=d;H[n>>2]=q;d:{if((c-g|0)<(f-c|0)){e:{if(l-1>>>0>h>>>0){d=e;break e}c=l<<3;if(c){d=H[33808];b=d+12|0;d=(s=b,t=c,u=Ra[H[H[d>>2]+20>>2]](d)|0?47172:55639,v=14160,w=155,r=H[H[b>>2]+8>>2],Ra[r](s|0,t|0,u|0,v|0,w|0)|0)}else{d=0}b=R6(d,e,h<<2);if(!(!o|!e)){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,e)}l=l<<1;o=1;e=b}b=(h<<2)+d|0;H[b>>2]=g;H[b+4>>2]=i;g=i+2|0;break d}k=i+2|0;f:{if(l-1>>>0>h>>>0){d=e;break f}c=l<<3;if(c){d=H[33808];b=d+12|0;d=(w=b,v=c,u=Ra[H[H[d>>2]+20>>2]](d)|0?47172:55639,t=14160,s=155,r=H[H[b>>2]+8>>2],Ra[r](w|0,v|0,u|0,t|0,s|0)|0)}else{d=0}b=R6(d,e,h<<2);if(!(!o|!e)){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,e)}l=l<<1;o=1;e=b}b=(h<<2)+d|0;H[b>>2]=k;H[b+4>>2]=f;f=i}h=h+2|0;if((f|0)>(g|0)){continue}break}}if(h){b=h-2|0;g=H[(b<<2)+e>>2];f=H[((h<<2)+e|0)-4>>2];h=b;continue}break}if(!o|!e){break a}a=H[33808]+12|0;Ra[H[H[a>>2]+12>>2]](a,e)}if(I[m+12|0]){H5(H[m+8>>2])}Oa=m+16|0}function Rr(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,r=0,s=0,t=0,u=0,v=0,w=0;l=32;m=Oa-16|0;Oa=m;F[m+12|0]=0;e=m-128|0;Oa=e;H[m+8>>2]=e;f=b-1|0;a:{if((f|0)<=0){break a}while(1){b:{if((f|0)<=(g|0)){break b}while(1){if(f-g>>>0<=4){while(1){b=g;g=b+1|0;d=g;c=b;while(1){c=K[(d<<2)+a>>2]>2]?d:c;i=(d|0)<(f|0);d=d+1|0;if(i){continue}break}if((b|0)!=(c|0)){d=(c<<2)+a|0;c=H[d>>2];b=(b<<2)+a|0;H[d>>2]=H[b>>2];H[b>>2]=c}if((f|0)!=(g|0)){continue}break b}}j=((f+g|0)/2<<2)+a|0;d=H[j>>2];k=(g<<2)+a|0;c=H[k>>2];if(d>>>0>>0){H[k>>2]=d;H[j>>2]=c;d=c;c=H[k>>2]}i=(f<<2)+a|0;b=H[i>>2];c:{if(b>>>0>=c>>>0){c=b;break c}H[k>>2]=b;H[i>>2]=c;d=H[j>>2]}if(c>>>0>>0){H[j>>2]=c;H[i>>2]=d;d=H[j>>2]}b=f-1|0;n=(b<<2)+a|0;H[j>>2]=H[n>>2];H[n>>2]=d;c=g;while(1){i=c;c=c+1|0;p=(c<<2)+a|0;q=H[p>>2];if(q>>>0>>0){continue}while(1){b=b-1|0;j=(b<<2)+a|0;k=H[j>>2];if(k>>>0>d>>>0){continue}break}if((b|0)>(c|0)){H[p>>2]=k;H[j>>2]=q;d=H[n>>2];continue}break}H[p>>2]=d;H[n>>2]=q;d:{if((c-g|0)<(f-c|0)){e:{if(l-1>>>0>h>>>0){d=e;break e}c=l<<3;if(c){d=H[33808];b=d+12|0;d=(s=b,t=c,u=Ra[H[H[d>>2]+20>>2]](d)|0?45420:55639,v=14160,w=155,r=H[H[b>>2]+8>>2],Ra[r](s|0,t|0,u|0,v|0,w|0)|0)}else{d=0}b=R6(d,e,h<<2);if(!(!o|!e)){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,e)}l=l<<1;o=1;e=b}b=(h<<2)+d|0;H[b>>2]=g;H[b+4>>2]=i;g=i+2|0;break d}k=i+2|0;f:{if(l-1>>>0>h>>>0){d=e;break f}c=l<<3;if(c){d=H[33808];b=d+12|0;d=(w=b,v=c,u=Ra[H[H[d>>2]+20>>2]](d)|0?45420:55639,t=14160,s=155,r=H[H[b>>2]+8>>2],Ra[r](w|0,v|0,u|0,t|0,s|0)|0)}else{d=0}b=R6(d,e,h<<2);if(!(!o|!e)){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,e)}l=l<<1;o=1;e=b}b=(h<<2)+d|0;H[b>>2]=k;H[b+4>>2]=f;f=i}h=h+2|0;if((f|0)>(g|0)){continue}break}}if(h){b=h-2|0;g=H[(b<<2)+e>>2];f=H[((h<<2)+e|0)-4>>2];h=b;continue}break}if(!o|!e){break a}a=H[33808]+12|0;Ra[H[H[a>>2]+12>>2]](a,e)}if(I[m+12|0]){H5(H[m+8>>2])}Oa=m+16|0}function Qr(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,r=0,s=0,t=0,u=0,v=0,w=0;l=32;m=Oa-16|0;Oa=m;F[m+12|0]=0;e=m-128|0;Oa=e;H[m+8>>2]=e;f=b-1|0;a:{if((f|0)<=0){break a}while(1){b:{if((f|0)<=(g|0)){break b}while(1){if(f-g>>>0<=4){while(1){b=g;g=b+1|0;d=g;c=b;while(1){c=K[(d<<2)+a>>2]>2]?d:c;i=(d|0)<(f|0);d=d+1|0;if(i){continue}break}if((b|0)!=(c|0)){d=(c<<2)+a|0;c=H[d>>2];b=(b<<2)+a|0;H[d>>2]=H[b>>2];H[b>>2]=c}if((f|0)!=(g|0)){continue}break b}}j=((f+g|0)/2<<2)+a|0;d=H[j>>2];k=(g<<2)+a|0;c=H[k>>2];if(d>>>0>>0){H[k>>2]=d;H[j>>2]=c;d=c;c=H[k>>2]}i=(f<<2)+a|0;b=H[i>>2];c:{if(b>>>0>=c>>>0){c=b;break c}H[k>>2]=b;H[i>>2]=c;d=H[j>>2]}if(c>>>0>>0){H[j>>2]=c;H[i>>2]=d;d=H[j>>2]}b=f-1|0;n=(b<<2)+a|0;H[j>>2]=H[n>>2];H[n>>2]=d;c=g;while(1){i=c;c=c+1|0;p=(c<<2)+a|0;q=H[p>>2];if(q>>>0>>0){continue}while(1){b=b-1|0;j=(b<<2)+a|0;k=H[j>>2];if(k>>>0>d>>>0){continue}break}if((b|0)>(c|0)){H[p>>2]=k;H[j>>2]=q;d=H[n>>2];continue}break}H[p>>2]=d;H[n>>2]=q;d:{if((c-g|0)<(f-c|0)){e:{if(l-1>>>0>h>>>0){d=e;break e}c=l<<3;if(c){d=H[33808];b=d+12|0;d=(s=b,t=c,u=Ra[H[H[d>>2]+20>>2]](d)|0?45722:55639,v=14160,w=155,r=H[H[b>>2]+8>>2],Ra[r](s|0,t|0,u|0,v|0,w|0)|0)}else{d=0}b=R6(d,e,h<<2);if(!(!o|!e)){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,e)}l=l<<1;o=1;e=b}b=(h<<2)+d|0;H[b>>2]=g;H[b+4>>2]=i;g=i+2|0;break d}k=i+2|0;f:{if(l-1>>>0>h>>>0){d=e;break f}c=l<<3;if(c){d=H[33808];b=d+12|0;d=(w=b,v=c,u=Ra[H[H[d>>2]+20>>2]](d)|0?45722:55639,t=14160,s=155,r=H[H[b>>2]+8>>2],Ra[r](w|0,v|0,u|0,t|0,s|0)|0)}else{d=0}b=R6(d,e,h<<2);if(!(!o|!e)){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,e)}l=l<<1;o=1;e=b}b=(h<<2)+d|0;H[b>>2]=k;H[b+4>>2]=f;f=i}h=h+2|0;if((f|0)>(g|0)){continue}break}}if(h){b=h-2|0;g=H[(b<<2)+e>>2];f=H[((h<<2)+e|0)-4>>2];h=b;continue}break}if(!o|!e){break a}a=H[33808]+12|0;Ra[H[H[a>>2]+12>>2]](a,e)}if(I[m+12|0]){H5(H[m+8>>2])}Oa=m+16|0}function Pr(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,r=0,s=0,t=0,u=0,v=0,w=0;l=32;m=Oa-16|0;Oa=m;F[m+12|0]=0;e=m-128|0;Oa=e;H[m+8>>2]=e;f=b-1|0;a:{if((f|0)<=0){break a}while(1){b:{if((f|0)<=(g|0)){break b}while(1){if(f-g>>>0<=4){while(1){b=g;g=b+1|0;d=g;c=b;while(1){c=K[(d<<2)+a>>2]>2]?d:c;i=(d|0)<(f|0);d=d+1|0;if(i){continue}break}if((b|0)!=(c|0)){d=(c<<2)+a|0;c=H[d>>2];b=(b<<2)+a|0;H[d>>2]=H[b>>2];H[b>>2]=c}if((f|0)!=(g|0)){continue}break b}}j=((f+g|0)/2<<2)+a|0;d=H[j>>2];k=(g<<2)+a|0;c=H[k>>2];if(d>>>0>>0){H[k>>2]=d;H[j>>2]=c;d=c;c=H[k>>2]}i=(f<<2)+a|0;b=H[i>>2];c:{if(b>>>0>=c>>>0){c=b;break c}H[k>>2]=b;H[i>>2]=c;d=H[j>>2]}if(c>>>0>>0){H[j>>2]=c;H[i>>2]=d;d=H[j>>2]}b=f-1|0;n=(b<<2)+a|0;H[j>>2]=H[n>>2];H[n>>2]=d;c=g;while(1){i=c;c=c+1|0;p=(c<<2)+a|0;q=H[p>>2];if(q>>>0>>0){continue}while(1){b=b-1|0;j=(b<<2)+a|0;k=H[j>>2];if(k>>>0>d>>>0){continue}break}if((b|0)>(c|0)){H[p>>2]=k;H[j>>2]=q;d=H[n>>2];continue}break}H[p>>2]=d;H[n>>2]=q;d:{if((c-g|0)<(f-c|0)){e:{if(l-1>>>0>h>>>0){d=e;break e}c=l<<3;if(c){d=H[33808];b=d+12|0;d=(s=b,t=c,u=Ra[H[H[d>>2]+20>>2]](d)|0?46352:55639,v=14160,w=155,r=H[H[b>>2]+8>>2],Ra[r](s|0,t|0,u|0,v|0,w|0)|0)}else{d=0}b=R6(d,e,h<<2);if(!(!o|!e)){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,e)}l=l<<1;o=1;e=b}b=(h<<2)+d|0;H[b>>2]=g;H[b+4>>2]=i;g=i+2|0;break d}k=i+2|0;f:{if(l-1>>>0>h>>>0){d=e;break f}c=l<<3;if(c){d=H[33808];b=d+12|0;d=(w=b,v=c,u=Ra[H[H[d>>2]+20>>2]](d)|0?46352:55639,t=14160,s=155,r=H[H[b>>2]+8>>2],Ra[r](w|0,v|0,u|0,t|0,s|0)|0)}else{d=0}b=R6(d,e,h<<2);if(!(!o|!e)){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,e)}l=l<<1;o=1;e=b}b=(h<<2)+d|0;H[b>>2]=k;H[b+4>>2]=f;f=i}h=h+2|0;if((f|0)>(g|0)){continue}break}}if(h){b=h-2|0;g=H[(b<<2)+e>>2];f=H[((h<<2)+e|0)-4>>2];h=b;continue}break}if(!o|!e){break a}a=H[33808]+12|0;Ra[H[H[a>>2]+12>>2]](a,e)}if(I[m+12|0]){H5(H[m+8>>2])}Oa=m+16|0}function PI(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,r=0,s=0,t=0,u=0,v=0,w=0;l=32;m=Oa-16|0;Oa=m;F[m+12|0]=0;e=m-128|0;Oa=e;H[m+8>>2]=e;f=b-1|0;a:{if((f|0)<=0){break a}while(1){b:{if((f|0)<=(g|0)){break b}while(1){if(f-g>>>0<=4){while(1){b=g;g=b+1|0;d=g;c=b;while(1){c=K[(d<<2)+a>>2]>2]?d:c;i=(d|0)<(f|0);d=d+1|0;if(i){continue}break}if((b|0)!=(c|0)){d=(c<<2)+a|0;c=H[d>>2];b=(b<<2)+a|0;H[d>>2]=H[b>>2];H[b>>2]=c}if((f|0)!=(g|0)){continue}break b}}j=((f+g|0)/2<<2)+a|0;d=H[j>>2];k=(g<<2)+a|0;c=H[k>>2];if(d>>>0>>0){H[k>>2]=d;H[j>>2]=c;d=c;c=H[k>>2]}i=(f<<2)+a|0;b=H[i>>2];c:{if(b>>>0>=c>>>0){c=b;break c}H[k>>2]=b;H[i>>2]=c;d=H[j>>2]}if(c>>>0>>0){H[j>>2]=c;H[i>>2]=d;d=H[j>>2]}b=f-1|0;n=(b<<2)+a|0;H[j>>2]=H[n>>2];H[n>>2]=d;c=g;while(1){i=c;c=c+1|0;p=(c<<2)+a|0;q=H[p>>2];if(q>>>0>>0){continue}while(1){b=b-1|0;j=(b<<2)+a|0;k=H[j>>2];if(k>>>0>d>>>0){continue}break}if((b|0)>(c|0)){H[p>>2]=k;H[j>>2]=q;d=H[n>>2];continue}break}H[p>>2]=d;H[n>>2]=q;d:{if((c-g|0)<(f-c|0)){e:{if(l-1>>>0>h>>>0){d=e;break e}c=l<<3;if(c){d=H[33808];b=d+12|0;d=(s=b,t=c,u=Ra[H[H[d>>2]+20>>2]](d)|0?27154:55639,v=14160,w=155,r=H[H[b>>2]+8>>2],Ra[r](s|0,t|0,u|0,v|0,w|0)|0)}else{d=0}b=R6(d,e,h<<2);if(!(!o|!e)){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,e)}l=l<<1;o=1;e=b}b=(h<<2)+d|0;H[b>>2]=g;H[b+4>>2]=i;g=i+2|0;break d}k=i+2|0;f:{if(l-1>>>0>h>>>0){d=e;break f}c=l<<3;if(c){d=H[33808];b=d+12|0;d=(w=b,v=c,u=Ra[H[H[d>>2]+20>>2]](d)|0?27154:55639,t=14160,s=155,r=H[H[b>>2]+8>>2],Ra[r](w|0,v|0,u|0,t|0,s|0)|0)}else{d=0}b=R6(d,e,h<<2);if(!(!o|!e)){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,e)}l=l<<1;o=1;e=b}b=(h<<2)+d|0;H[b>>2]=k;H[b+4>>2]=f;f=i}h=h+2|0;if((f|0)>(g|0)){continue}break}}if(h){b=h-2|0;g=H[(b<<2)+e>>2];f=H[((h<<2)+e|0)-4>>2];h=b;continue}break}if(!o|!e){break a}a=H[33808]+12|0;Ra[H[H[a>>2]+12>>2]](a,e)}if(I[m+12|0]){H5(H[m+8>>2])}Oa=m+16|0}function OI(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,r=0,s=0,t=0,u=0,v=0,w=0;l=32;m=Oa-16|0;Oa=m;F[m+12|0]=0;e=m-128|0;Oa=e;H[m+8>>2]=e;f=b-1|0;a:{if((f|0)<=0){break a}while(1){b:{if((f|0)<=(g|0)){break b}while(1){if(f-g>>>0<=4){while(1){b=g;g=b+1|0;d=g;c=b;while(1){c=K[(d<<2)+a>>2]>2]?d:c;i=(d|0)<(f|0);d=d+1|0;if(i){continue}break}if((b|0)!=(c|0)){d=(c<<2)+a|0;c=H[d>>2];b=(b<<2)+a|0;H[d>>2]=H[b>>2];H[b>>2]=c}if((f|0)!=(g|0)){continue}break b}}j=((f+g|0)/2<<2)+a|0;d=H[j>>2];k=(g<<2)+a|0;c=H[k>>2];if(d>>>0>>0){H[k>>2]=d;H[j>>2]=c;d=c;c=H[k>>2]}i=(f<<2)+a|0;b=H[i>>2];c:{if(b>>>0>=c>>>0){c=b;break c}H[k>>2]=b;H[i>>2]=c;d=H[j>>2]}if(c>>>0>>0){H[j>>2]=c;H[i>>2]=d;d=H[j>>2]}b=f-1|0;n=(b<<2)+a|0;H[j>>2]=H[n>>2];H[n>>2]=d;c=g;while(1){i=c;c=c+1|0;p=(c<<2)+a|0;q=H[p>>2];if(q>>>0>>0){continue}while(1){b=b-1|0;j=(b<<2)+a|0;k=H[j>>2];if(k>>>0>d>>>0){continue}break}if((b|0)>(c|0)){H[p>>2]=k;H[j>>2]=q;d=H[n>>2];continue}break}H[p>>2]=d;H[n>>2]=q;d:{if((c-g|0)<(f-c|0)){e:{if(l-1>>>0>h>>>0){d=e;break e}c=l<<3;if(c){d=H[33808];b=d+12|0;d=(s=b,t=c,u=Ra[H[H[d>>2]+20>>2]](d)|0?23420:55639,v=14160,w=155,r=H[H[b>>2]+8>>2],Ra[r](s|0,t|0,u|0,v|0,w|0)|0)}else{d=0}b=R6(d,e,h<<2);if(!(!o|!e)){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,e)}l=l<<1;o=1;e=b}b=(h<<2)+d|0;H[b>>2]=g;H[b+4>>2]=i;g=i+2|0;break d}k=i+2|0;f:{if(l-1>>>0>h>>>0){d=e;break f}c=l<<3;if(c){d=H[33808];b=d+12|0;d=(w=b,v=c,u=Ra[H[H[d>>2]+20>>2]](d)|0?23420:55639,t=14160,s=155,r=H[H[b>>2]+8>>2],Ra[r](w|0,v|0,u|0,t|0,s|0)|0)}else{d=0}b=R6(d,e,h<<2);if(!(!o|!e)){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,e)}l=l<<1;o=1;e=b}b=(h<<2)+d|0;H[b>>2]=k;H[b+4>>2]=f;f=i}h=h+2|0;if((f|0)>(g|0)){continue}break}}if(h){b=h-2|0;g=H[(b<<2)+e>>2];f=H[((h<<2)+e|0)-4>>2];h=b;continue}break}if(!o|!e){break a}a=H[33808]+12|0;Ra[H[H[a>>2]+12>>2]](a,e)}if(I[m+12|0]){H5(H[m+8>>2])}Oa=m+16|0}function NI(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,r=0,s=0,t=0,u=0,v=0,w=0;l=32;m=Oa-16|0;Oa=m;F[m+12|0]=0;e=m-128|0;Oa=e;H[m+8>>2]=e;f=b-1|0;a:{if((f|0)<=0){break a}while(1){b:{if((f|0)<=(g|0)){break b}while(1){if(f-g>>>0<=4){while(1){b=g;g=b+1|0;d=g;c=b;while(1){c=K[(d<<2)+a>>2]>2]?d:c;i=(d|0)<(f|0);d=d+1|0;if(i){continue}break}if((b|0)!=(c|0)){d=(c<<2)+a|0;c=H[d>>2];b=(b<<2)+a|0;H[d>>2]=H[b>>2];H[b>>2]=c}if((f|0)!=(g|0)){continue}break b}}j=((f+g|0)/2<<2)+a|0;d=H[j>>2];k=(g<<2)+a|0;c=H[k>>2];if(d>>>0>>0){H[k>>2]=d;H[j>>2]=c;d=c;c=H[k>>2]}i=(f<<2)+a|0;b=H[i>>2];c:{if(b>>>0>=c>>>0){c=b;break c}H[k>>2]=b;H[i>>2]=c;d=H[j>>2]}if(c>>>0>>0){H[j>>2]=c;H[i>>2]=d;d=H[j>>2]}b=f-1|0;n=(b<<2)+a|0;H[j>>2]=H[n>>2];H[n>>2]=d;c=g;while(1){i=c;c=c+1|0;p=(c<<2)+a|0;q=H[p>>2];if(q>>>0>>0){continue}while(1){b=b-1|0;j=(b<<2)+a|0;k=H[j>>2];if(k>>>0>d>>>0){continue}break}if((b|0)>(c|0)){H[p>>2]=k;H[j>>2]=q;d=H[n>>2];continue}break}H[p>>2]=d;H[n>>2]=q;d:{if((c-g|0)<(f-c|0)){e:{if(l-1>>>0>h>>>0){d=e;break e}c=l<<3;if(c){d=H[33808];b=d+12|0;d=(s=b,t=c,u=Ra[H[H[d>>2]+20>>2]](d)|0?32518:55639,v=14160,w=155,r=H[H[b>>2]+8>>2],Ra[r](s|0,t|0,u|0,v|0,w|0)|0)}else{d=0}b=R6(d,e,h<<2);if(!(!o|!e)){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,e)}l=l<<1;o=1;e=b}b=(h<<2)+d|0;H[b>>2]=g;H[b+4>>2]=i;g=i+2|0;break d}k=i+2|0;f:{if(l-1>>>0>h>>>0){d=e;break f}c=l<<3;if(c){d=H[33808];b=d+12|0;d=(w=b,v=c,u=Ra[H[H[d>>2]+20>>2]](d)|0?32518:55639,t=14160,s=155,r=H[H[b>>2]+8>>2],Ra[r](w|0,v|0,u|0,t|0,s|0)|0)}else{d=0}b=R6(d,e,h<<2);if(!(!o|!e)){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,e)}l=l<<1;o=1;e=b}b=(h<<2)+d|0;H[b>>2]=k;H[b+4>>2]=f;f=i}h=h+2|0;if((f|0)>(g|0)){continue}break}}if(h){b=h-2|0;g=H[(b<<2)+e>>2];f=H[((h<<2)+e|0)-4>>2];h=b;continue}break}if(!o|!e){break a}a=H[33808]+12|0;Ra[H[H[a>>2]+12>>2]](a,e)}if(I[m+12|0]){H5(H[m+8>>2])}Oa=m+16|0}function MI(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,r=0,s=0,t=0,u=0,v=0,w=0;l=32;m=Oa-16|0;Oa=m;F[m+12|0]=0;e=m-128|0;Oa=e;H[m+8>>2]=e;f=b-1|0;a:{if((f|0)<=0){break a}while(1){b:{if((f|0)<=(g|0)){break b}while(1){if(f-g>>>0<=4){while(1){b=g;g=b+1|0;d=g;c=b;while(1){c=K[(d<<2)+a>>2]>2]?d:c;i=(d|0)<(f|0);d=d+1|0;if(i){continue}break}if((b|0)!=(c|0)){d=(c<<2)+a|0;c=H[d>>2];b=(b<<2)+a|0;H[d>>2]=H[b>>2];H[b>>2]=c}if((f|0)!=(g|0)){continue}break b}}j=((f+g|0)/2<<2)+a|0;d=H[j>>2];k=(g<<2)+a|0;c=H[k>>2];if(d>>>0>>0){H[k>>2]=d;H[j>>2]=c;d=c;c=H[k>>2]}i=(f<<2)+a|0;b=H[i>>2];c:{if(b>>>0>=c>>>0){c=b;break c}H[k>>2]=b;H[i>>2]=c;d=H[j>>2]}if(c>>>0>>0){H[j>>2]=c;H[i>>2]=d;d=H[j>>2]}b=f-1|0;n=(b<<2)+a|0;H[j>>2]=H[n>>2];H[n>>2]=d;c=g;while(1){i=c;c=c+1|0;p=(c<<2)+a|0;q=H[p>>2];if(q>>>0>>0){continue}while(1){b=b-1|0;j=(b<<2)+a|0;k=H[j>>2];if(k>>>0>d>>>0){continue}break}if((b|0)>(c|0)){H[p>>2]=k;H[j>>2]=q;d=H[n>>2];continue}break}H[p>>2]=d;H[n>>2]=q;d:{if((c-g|0)<(f-c|0)){e:{if(l-1>>>0>h>>>0){d=e;break e}c=l<<3;if(c){d=H[33808];b=d+12|0;d=(s=b,t=c,u=Ra[H[H[d>>2]+20>>2]](d)|0?32386:55639,v=14160,w=155,r=H[H[b>>2]+8>>2],Ra[r](s|0,t|0,u|0,v|0,w|0)|0)}else{d=0}b=R6(d,e,h<<2);if(!(!o|!e)){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,e)}l=l<<1;o=1;e=b}b=(h<<2)+d|0;H[b>>2]=g;H[b+4>>2]=i;g=i+2|0;break d}k=i+2|0;f:{if(l-1>>>0>h>>>0){d=e;break f}c=l<<3;if(c){d=H[33808];b=d+12|0;d=(w=b,v=c,u=Ra[H[H[d>>2]+20>>2]](d)|0?32386:55639,t=14160,s=155,r=H[H[b>>2]+8>>2],Ra[r](w|0,v|0,u|0,t|0,s|0)|0)}else{d=0}b=R6(d,e,h<<2);if(!(!o|!e)){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,e)}l=l<<1;o=1;e=b}b=(h<<2)+d|0;H[b>>2]=k;H[b+4>>2]=f;f=i}h=h+2|0;if((f|0)>(g|0)){continue}break}}if(h){b=h-2|0;g=H[(b<<2)+e>>2];f=H[((h<<2)+e|0)-4>>2];h=b;continue}break}if(!o|!e){break a}a=H[33808]+12|0;Ra[H[H[a>>2]+12>>2]](a,e)}if(I[m+12|0]){H5(H[m+8>>2])}Oa=m+16|0}function LI(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,r=0,s=0,t=0,u=0,v=0,w=0;l=32;m=Oa-16|0;Oa=m;F[m+12|0]=0;e=m-128|0;Oa=e;H[m+8>>2]=e;f=b-1|0;a:{if((f|0)<=0){break a}while(1){b:{if((f|0)<=(g|0)){break b}while(1){if(f-g>>>0<=4){while(1){b=g;g=b+1|0;d=g;c=b;while(1){c=K[(d<<2)+a>>2]>2]?d:c;i=(d|0)<(f|0);d=d+1|0;if(i){continue}break}if((b|0)!=(c|0)){d=(c<<2)+a|0;c=H[d>>2];b=(b<<2)+a|0;H[d>>2]=H[b>>2];H[b>>2]=c}if((f|0)!=(g|0)){continue}break b}}j=((f+g|0)/2<<2)+a|0;d=H[j>>2];k=(g<<2)+a|0;c=H[k>>2];if(d>>>0>>0){H[k>>2]=d;H[j>>2]=c;d=c;c=H[k>>2]}i=(f<<2)+a|0;b=H[i>>2];c:{if(b>>>0>=c>>>0){c=b;break c}H[k>>2]=b;H[i>>2]=c;d=H[j>>2]}if(c>>>0>>0){H[j>>2]=c;H[i>>2]=d;d=H[j>>2]}b=f-1|0;n=(b<<2)+a|0;H[j>>2]=H[n>>2];H[n>>2]=d;c=g;while(1){i=c;c=c+1|0;p=(c<<2)+a|0;q=H[p>>2];if(q>>>0>>0){continue}while(1){b=b-1|0;j=(b<<2)+a|0;k=H[j>>2];if(k>>>0>d>>>0){continue}break}if((b|0)>(c|0)){H[p>>2]=k;H[j>>2]=q;d=H[n>>2];continue}break}H[p>>2]=d;H[n>>2]=q;d:{if((c-g|0)<(f-c|0)){e:{if(l-1>>>0>h>>>0){d=e;break e}c=l<<3;if(c){d=H[33808];b=d+12|0;d=(s=b,t=c,u=Ra[H[H[d>>2]+20>>2]](d)|0?41076:55639,v=14160,w=155,r=H[H[b>>2]+8>>2],Ra[r](s|0,t|0,u|0,v|0,w|0)|0)}else{d=0}b=R6(d,e,h<<2);if(!(!o|!e)){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,e)}l=l<<1;o=1;e=b}b=(h<<2)+d|0;H[b>>2]=g;H[b+4>>2]=i;g=i+2|0;break d}k=i+2|0;f:{if(l-1>>>0>h>>>0){d=e;break f}c=l<<3;if(c){d=H[33808];b=d+12|0;d=(w=b,v=c,u=Ra[H[H[d>>2]+20>>2]](d)|0?41076:55639,t=14160,s=155,r=H[H[b>>2]+8>>2],Ra[r](w|0,v|0,u|0,t|0,s|0)|0)}else{d=0}b=R6(d,e,h<<2);if(!(!o|!e)){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,e)}l=l<<1;o=1;e=b}b=(h<<2)+d|0;H[b>>2]=k;H[b+4>>2]=f;f=i}h=h+2|0;if((f|0)>(g|0)){continue}break}}if(h){b=h-2|0;g=H[(b<<2)+e>>2];f=H[((h<<2)+e|0)-4>>2];h=b;continue}break}if(!o|!e){break a}a=H[33808]+12|0;Ra[H[H[a>>2]+12>>2]](a,e)}if(I[m+12|0]){H5(H[m+8>>2])}Oa=m+16|0}function KI(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,r=0,s=0,t=0,u=0,v=0,w=0;l=32;m=Oa-16|0;Oa=m;F[m+12|0]=0;e=m-128|0;Oa=e;H[m+8>>2]=e;f=b-1|0;a:{if((f|0)<=0){break a}while(1){b:{if((f|0)<=(g|0)){break b}while(1){if(f-g>>>0<=4){while(1){b=g;g=b+1|0;d=g;c=b;while(1){c=K[(d<<2)+a>>2]>2]?d:c;i=(d|0)<(f|0);d=d+1|0;if(i){continue}break}if((b|0)!=(c|0)){d=(c<<2)+a|0;c=H[d>>2];b=(b<<2)+a|0;H[d>>2]=H[b>>2];H[b>>2]=c}if((f|0)!=(g|0)){continue}break b}}j=((f+g|0)/2<<2)+a|0;d=H[j>>2];k=(g<<2)+a|0;c=H[k>>2];if(d>>>0>>0){H[k>>2]=d;H[j>>2]=c;d=c;c=H[k>>2]}i=(f<<2)+a|0;b=H[i>>2];c:{if(b>>>0>=c>>>0){c=b;break c}H[k>>2]=b;H[i>>2]=c;d=H[j>>2]}if(c>>>0>>0){H[j>>2]=c;H[i>>2]=d;d=H[j>>2]}b=f-1|0;n=(b<<2)+a|0;H[j>>2]=H[n>>2];H[n>>2]=d;c=g;while(1){i=c;c=c+1|0;p=(c<<2)+a|0;q=H[p>>2];if(q>>>0>>0){continue}while(1){b=b-1|0;j=(b<<2)+a|0;k=H[j>>2];if(k>>>0>d>>>0){continue}break}if((b|0)>(c|0)){H[p>>2]=k;H[j>>2]=q;d=H[n>>2];continue}break}H[p>>2]=d;H[n>>2]=q;d:{if((c-g|0)<(f-c|0)){e:{if(l-1>>>0>h>>>0){d=e;break e}c=l<<3;if(c){d=H[33808];b=d+12|0;d=(s=b,t=c,u=Ra[H[H[d>>2]+20>>2]](d)|0?28806:55639,v=14160,w=155,r=H[H[b>>2]+8>>2],Ra[r](s|0,t|0,u|0,v|0,w|0)|0)}else{d=0}b=R6(d,e,h<<2);if(!(!o|!e)){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,e)}l=l<<1;o=1;e=b}b=(h<<2)+d|0;H[b>>2]=g;H[b+4>>2]=i;g=i+2|0;break d}k=i+2|0;f:{if(l-1>>>0>h>>>0){d=e;break f}c=l<<3;if(c){d=H[33808];b=d+12|0;d=(w=b,v=c,u=Ra[H[H[d>>2]+20>>2]](d)|0?28806:55639,t=14160,s=155,r=H[H[b>>2]+8>>2],Ra[r](w|0,v|0,u|0,t|0,s|0)|0)}else{d=0}b=R6(d,e,h<<2);if(!(!o|!e)){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,e)}l=l<<1;o=1;e=b}b=(h<<2)+d|0;H[b>>2]=k;H[b+4>>2]=f;f=i}h=h+2|0;if((f|0)>(g|0)){continue}break}}if(h){b=h-2|0;g=H[(b<<2)+e>>2];f=H[((h<<2)+e|0)-4>>2];h=b;continue}break}if(!o|!e){break a}a=H[33808]+12|0;Ra[H[H[a>>2]+12>>2]](a,e)}if(I[m+12|0]){H5(H[m+8>>2])}Oa=m+16|0}function EJ(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,r=0,s=0,t=0,u=0,v=0,w=0;l=32;m=Oa-16|0;Oa=m;F[m+12|0]=0;e=m-128|0;Oa=e;H[m+8>>2]=e;f=b-1|0;a:{if((f|0)<=0){break a}while(1){b:{if((f|0)<=(g|0)){break b}while(1){if(f-g>>>0<=4){while(1){b=g;g=b+1|0;d=g;c=b;while(1){c=K[(d<<2)+a>>2]>2]?d:c;i=(d|0)<(f|0);d=d+1|0;if(i){continue}break}if((b|0)!=(c|0)){d=(c<<2)+a|0;c=H[d>>2];b=(b<<2)+a|0;H[d>>2]=H[b>>2];H[b>>2]=c}if((f|0)!=(g|0)){continue}break b}}j=((f+g|0)/2<<2)+a|0;d=H[j>>2];k=(g<<2)+a|0;c=H[k>>2];if(d>>>0>>0){H[k>>2]=d;H[j>>2]=c;d=c;c=H[k>>2]}i=(f<<2)+a|0;b=H[i>>2];c:{if(b>>>0>=c>>>0){c=b;break c}H[k>>2]=b;H[i>>2]=c;d=H[j>>2]}if(c>>>0>>0){H[j>>2]=c;H[i>>2]=d;d=H[j>>2]}b=f-1|0;n=(b<<2)+a|0;H[j>>2]=H[n>>2];H[n>>2]=d;c=g;while(1){i=c;c=c+1|0;p=(c<<2)+a|0;q=H[p>>2];if(q>>>0>>0){continue}while(1){b=b-1|0;j=(b<<2)+a|0;k=H[j>>2];if(k>>>0>d>>>0){continue}break}if((b|0)>(c|0)){H[p>>2]=k;H[j>>2]=q;d=H[n>>2];continue}break}H[p>>2]=d;H[n>>2]=q;d:{if((c-g|0)<(f-c|0)){e:{if(l-1>>>0>h>>>0){d=e;break e}c=l<<3;if(c){d=H[33808];b=d+12|0;d=(s=b,t=c,u=Ra[H[H[d>>2]+20>>2]](d)|0?39806:55639,v=14160,w=155,r=H[H[b>>2]+8>>2],Ra[r](s|0,t|0,u|0,v|0,w|0)|0)}else{d=0}b=R6(d,e,h<<2);if(!(!o|!e)){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,e)}l=l<<1;o=1;e=b}b=(h<<2)+d|0;H[b>>2]=g;H[b+4>>2]=i;g=i+2|0;break d}k=i+2|0;f:{if(l-1>>>0>h>>>0){d=e;break f}c=l<<3;if(c){d=H[33808];b=d+12|0;d=(w=b,v=c,u=Ra[H[H[d>>2]+20>>2]](d)|0?39806:55639,t=14160,s=155,r=H[H[b>>2]+8>>2],Ra[r](w|0,v|0,u|0,t|0,s|0)|0)}else{d=0}b=R6(d,e,h<<2);if(!(!o|!e)){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,e)}l=l<<1;o=1;e=b}b=(h<<2)+d|0;H[b>>2]=k;H[b+4>>2]=f;f=i}h=h+2|0;if((f|0)>(g|0)){continue}break}}if(h){b=h-2|0;g=H[(b<<2)+e>>2];f=H[((h<<2)+e|0)-4>>2];h=b;continue}break}if(!o|!e){break a}a=H[33808]+12|0;Ra[H[H[a>>2]+12>>2]](a,e)}if(I[m+12|0]){H5(H[m+8>>2])}Oa=m+16|0}function DJ(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,r=0,s=0,t=0,u=0,v=0,w=0;l=32;m=Oa-16|0;Oa=m;F[m+12|0]=0;e=m-128|0;Oa=e;H[m+8>>2]=e;f=b-1|0;a:{if((f|0)<=0){break a}while(1){b:{if((f|0)<=(g|0)){break b}while(1){if(f-g>>>0<=4){while(1){b=g;g=b+1|0;d=g;c=b;while(1){c=K[(d<<2)+a>>2]>2]?d:c;i=(d|0)<(f|0);d=d+1|0;if(i){continue}break}if((b|0)!=(c|0)){d=(c<<2)+a|0;c=H[d>>2];b=(b<<2)+a|0;H[d>>2]=H[b>>2];H[b>>2]=c}if((f|0)!=(g|0)){continue}break b}}j=((f+g|0)/2<<2)+a|0;d=H[j>>2];k=(g<<2)+a|0;c=H[k>>2];if(d>>>0>>0){H[k>>2]=d;H[j>>2]=c;d=c;c=H[k>>2]}i=(f<<2)+a|0;b=H[i>>2];c:{if(b>>>0>=c>>>0){c=b;break c}H[k>>2]=b;H[i>>2]=c;d=H[j>>2]}if(c>>>0>>0){H[j>>2]=c;H[i>>2]=d;d=H[j>>2]}b=f-1|0;n=(b<<2)+a|0;H[j>>2]=H[n>>2];H[n>>2]=d;c=g;while(1){i=c;c=c+1|0;p=(c<<2)+a|0;q=H[p>>2];if(q>>>0>>0){continue}while(1){b=b-1|0;j=(b<<2)+a|0;k=H[j>>2];if(k>>>0>d>>>0){continue}break}if((b|0)>(c|0)){H[p>>2]=k;H[j>>2]=q;d=H[n>>2];continue}break}H[p>>2]=d;H[n>>2]=q;d:{if((c-g|0)<(f-c|0)){e:{if(l-1>>>0>h>>>0){d=e;break e}c=l<<3;if(c){d=H[33808];b=d+12|0;d=(s=b,t=c,u=Ra[H[H[d>>2]+20>>2]](d)|0?39648:55639,v=14160,w=155,r=H[H[b>>2]+8>>2],Ra[r](s|0,t|0,u|0,v|0,w|0)|0)}else{d=0}b=R6(d,e,h<<2);if(!(!o|!e)){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,e)}l=l<<1;o=1;e=b}b=(h<<2)+d|0;H[b>>2]=g;H[b+4>>2]=i;g=i+2|0;break d}k=i+2|0;f:{if(l-1>>>0>h>>>0){d=e;break f}c=l<<3;if(c){d=H[33808];b=d+12|0;d=(w=b,v=c,u=Ra[H[H[d>>2]+20>>2]](d)|0?39648:55639,t=14160,s=155,r=H[H[b>>2]+8>>2],Ra[r](w|0,v|0,u|0,t|0,s|0)|0)}else{d=0}b=R6(d,e,h<<2);if(!(!o|!e)){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,e)}l=l<<1;o=1;e=b}b=(h<<2)+d|0;H[b>>2]=k;H[b+4>>2]=f;f=i}h=h+2|0;if((f|0)>(g|0)){continue}break}}if(h){b=h-2|0;g=H[(b<<2)+e>>2];f=H[((h<<2)+e|0)-4>>2];h=b;continue}break}if(!o|!e){break a}a=H[33808]+12|0;Ra[H[H[a>>2]+12>>2]](a,e)}if(I[m+12|0]){H5(H[m+8>>2])}Oa=m+16|0}function $l(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,r=0,s=0,t=0,u=0,v=0,w=0;l=32;m=Oa-16|0;Oa=m;F[m+12|0]=0;e=m-128|0;Oa=e;H[m+8>>2]=e;f=b-1|0;a:{if((f|0)<=0){break a}while(1){b:{if((f|0)<=(g|0)){break b}while(1){if(f-g>>>0<=4){while(1){b=g;g=b+1|0;d=g;c=b;while(1){c=K[(d<<2)+a>>2]>2]?d:c;i=(d|0)<(f|0);d=d+1|0;if(i){continue}break}if((b|0)!=(c|0)){d=(c<<2)+a|0;c=H[d>>2];b=(b<<2)+a|0;H[d>>2]=H[b>>2];H[b>>2]=c}if((f|0)!=(g|0)){continue}break b}}j=((f+g|0)/2<<2)+a|0;d=H[j>>2];k=(g<<2)+a|0;c=H[k>>2];if(d>>>0>>0){H[k>>2]=d;H[j>>2]=c;d=c;c=H[k>>2]}i=(f<<2)+a|0;b=H[i>>2];c:{if(b>>>0>=c>>>0){c=b;break c}H[k>>2]=b;H[i>>2]=c;d=H[j>>2]}if(c>>>0>>0){H[j>>2]=c;H[i>>2]=d;d=H[j>>2]}b=f-1|0;n=(b<<2)+a|0;H[j>>2]=H[n>>2];H[n>>2]=d;c=g;while(1){i=c;c=c+1|0;p=(c<<2)+a|0;q=H[p>>2];if(q>>>0>>0){continue}while(1){b=b-1|0;j=(b<<2)+a|0;k=H[j>>2];if(k>>>0>d>>>0){continue}break}if((b|0)>(c|0)){H[p>>2]=k;H[j>>2]=q;d=H[n>>2];continue}break}H[p>>2]=d;H[n>>2]=q;d:{if((c-g|0)<(f-c|0)){e:{if(l-1>>>0>h>>>0){d=e;break e}c=l<<3;if(c){d=H[33808];b=d+12|0;d=(s=b,t=c,u=Ra[H[H[d>>2]+20>>2]](d)|0?46512:55639,v=14160,w=155,r=H[H[b>>2]+8>>2],Ra[r](s|0,t|0,u|0,v|0,w|0)|0)}else{d=0}b=R6(d,e,h<<2);if(!(!o|!e)){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,e)}l=l<<1;o=1;e=b}b=(h<<2)+d|0;H[b>>2]=g;H[b+4>>2]=i;g=i+2|0;break d}k=i+2|0;f:{if(l-1>>>0>h>>>0){d=e;break f}c=l<<3;if(c){d=H[33808];b=d+12|0;d=(w=b,v=c,u=Ra[H[H[d>>2]+20>>2]](d)|0?46512:55639,t=14160,s=155,r=H[H[b>>2]+8>>2],Ra[r](w|0,v|0,u|0,t|0,s|0)|0)}else{d=0}b=R6(d,e,h<<2);if(!(!o|!e)){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,e)}l=l<<1;o=1;e=b}b=(h<<2)+d|0;H[b>>2]=k;H[b+4>>2]=f;f=i}h=h+2|0;if((f|0)>(g|0)){continue}break}}if(h){b=h-2|0;g=H[(b<<2)+e>>2];f=H[((h<<2)+e|0)-4>>2];h=b;continue}break}if(!o|!e){break a}a=H[33808]+12|0;Ra[H[H[a>>2]+12>>2]](a,e)}if(I[m+12|0]){H5(H[m+8>>2])}Oa=m+16|0}function $O(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,r=0,s=0,t=0,u=0,v=0,w=0;l=32;m=Oa-16|0;Oa=m;F[m+12|0]=0;e=m-128|0;Oa=e;H[m+8>>2]=e;f=b-1|0;a:{if((f|0)<=0){break a}while(1){b:{if((f|0)<=(g|0)){break b}while(1){if(f-g>>>0<=4){while(1){b=g;g=b+1|0;d=g;c=b;while(1){c=K[(d<<2)+a>>2]>2]?d:c;i=(d|0)<(f|0);d=d+1|0;if(i){continue}break}if((b|0)!=(c|0)){d=(c<<2)+a|0;c=H[d>>2];b=(b<<2)+a|0;H[d>>2]=H[b>>2];H[b>>2]=c}if((f|0)!=(g|0)){continue}break b}}j=((f+g|0)/2<<2)+a|0;d=H[j>>2];k=(g<<2)+a|0;c=H[k>>2];if(d>>>0>>0){H[k>>2]=d;H[j>>2]=c;d=c;c=H[k>>2]}i=(f<<2)+a|0;b=H[i>>2];c:{if(b>>>0>=c>>>0){c=b;break c}H[k>>2]=b;H[i>>2]=c;d=H[j>>2]}if(c>>>0>>0){H[j>>2]=c;H[i>>2]=d;d=H[j>>2]}b=f-1|0;n=(b<<2)+a|0;H[j>>2]=H[n>>2];H[n>>2]=d;c=g;while(1){i=c;c=c+1|0;p=(c<<2)+a|0;q=H[p>>2];if(q>>>0>>0){continue}while(1){b=b-1|0;j=(b<<2)+a|0;k=H[j>>2];if(k>>>0>d>>>0){continue}break}if((b|0)>(c|0)){H[p>>2]=k;H[j>>2]=q;d=H[n>>2];continue}break}H[p>>2]=d;H[n>>2]=q;d:{if((c-g|0)<(f-c|0)){e:{if(l-1>>>0>h>>>0){d=e;break e}c=l<<3;if(c){d=H[33808];b=d+12|0;d=(s=b,t=c,u=Ra[H[H[d>>2]+20>>2]](d)|0?39038:55639,v=14160,w=155,r=H[H[b>>2]+8>>2],Ra[r](s|0,t|0,u|0,v|0,w|0)|0)}else{d=0}b=R6(d,e,h<<2);if(!(!o|!e)){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,e)}l=l<<1;o=1;e=b}b=(h<<2)+d|0;H[b>>2]=g;H[b+4>>2]=i;g=i+2|0;break d}k=i+2|0;f:{if(l-1>>>0>h>>>0){d=e;break f}c=l<<3;if(c){d=H[33808];b=d+12|0;d=(w=b,v=c,u=Ra[H[H[d>>2]+20>>2]](d)|0?39038:55639,t=14160,s=155,r=H[H[b>>2]+8>>2],Ra[r](w|0,v|0,u|0,t|0,s|0)|0)}else{d=0}b=R6(d,e,h<<2);if(!(!o|!e)){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,e)}l=l<<1;o=1;e=b}b=(h<<2)+d|0;H[b>>2]=k;H[b+4>>2]=f;f=i}h=h+2|0;if((f|0)>(g|0)){continue}break}}if(h){b=h-2|0;g=H[(b<<2)+e>>2];f=H[((h<<2)+e|0)-4>>2];h=b;continue}break}if(!o|!e){break a}a=H[33808]+12|0;Ra[H[H[a>>2]+12>>2]](a,e)}if(I[m+12|0]){H5(H[m+8>>2])}Oa=m+16|0}function Zv(a,b,c){a=a|0;b=b|0;c=c|0;var d=O(0),e=O(0),f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=0,p=O(0),q=0,r=O(0),s=O(0),t=0,u=0,v=0;d=O(O(1)/L[b+464>>2]);o=H[b+444>>2];a:{if(!c){if(F[H[b+476>>2]]&1){break a}o=H[o+16>>2];i=L[o+8>>2];c=H[b+228>>2];e=O(d*O(L[c+8>>2]-L[b+120>>2]));f=O(e+e);j=L[o>>2];e=O(d*O(L[c>>2]-L[b+112>>2]));h=O(e+e);e=O(d*O(L[c+4>>2]-L[b+116>>2]));g=O(e+e);k=L[o+4>>2];m=O(O(i*f)+O(O(j*h)+O(g*k)));l=L[o+12>>2];n=O(O(l*l)+O(-.5));e=O(O(i*m)+O(O(f*n)+O(l*O(O(j*g)-O(h*k)))));p=O(O(k*m)+O(O(g*n)+O(l*O(O(i*h)-O(f*j)))));f=O(O(j*m)+O(O(h*n)+O(l*O(O(k*f)-O(g*i)))));h=O(d*O(L[c+24>>2]-L[b+136>>2]));h=O(h+h);g=O(d*O(L[c+16>>2]-L[b+128>>2]));g=O(g+g);d=O(d*O(L[c+20>>2]-L[b+132>>2]));d=O(d+d);m=O(O(i*h)+O(O(j*g)+O(d*k)));r=O(O(i*m)+O(O(h*n)+O(l*O(O(j*d)-O(g*k)))));s=O(O(k*m)+O(O(d*n)+O(l*O(O(i*g)-O(h*j)))));i=O(O(j*m)+O(O(g*n)+O(l*O(O(k*h)-O(d*i)))));break a}t=c<<5;o=H[(o+t|0)+16>>2];q=H[b+456>>2]+N(c,80)|0;u=I[q+76|0];b:{if(!u){f=O(Y);h=O(Y);p=O(Y);e=O(Y);i=O(Y);d=O(Y);break b}v=H[b+168>>2]+(H[q+72>>2]<<2)|0;q=u-1|0;d=O(d*L[v+(q<<2)>>2]);c=(H[b+372>>2]+N(c,76)|0)+N(q,24)|0;b=H[b+240>>2]+t|0;e=O(O(d*L[c+20>>2])+L[b+24>>2]);i=O(e+e);e=O(O(d*L[c+16>>2])+L[b+20>>2]);e=O(e+e);p=O(O(d*L[c+12>>2])+L[b+16>>2]);p=O(p+p);f=O(O(d*L[c+8>>2])+L[b+8>>2]);h=O(f+f);f=O(O(d*L[c+4>>2])+L[b+4>>2]);f=O(f+f);d=O(O(d*L[c>>2])+L[b>>2]);d=O(d+d)}j=L[o+8>>2];k=L[o>>2];l=L[o+4>>2];m=O(O(j*i)+O(O(k*p)+O(e*l)));n=L[o+12>>2];g=O(O(n*n)+O(-.5));r=O(O(j*m)+O(O(i*g)+O(n*O(O(k*e)-O(p*l)))));s=O(O(l*m)+O(O(e*g)+O(n*O(O(j*p)-O(i*k)))));i=O(O(k*m)+O(O(p*g)+O(n*O(O(l*i)-O(e*j)))));m=O(O(j*h)+O(O(k*d)+O(f*l)));e=O(O(j*m)+O(O(h*g)+O(n*O(O(k*f)-O(d*l)))));p=O(O(l*m)+O(O(f*g)+O(n*O(O(j*d)-O(h*k)))));f=O(O(k*m)+O(O(d*g)+O(n*O(O(l*h)-O(f*j)))))}H[a+28>>2]=0;L[a+16>>2]=f;H[a+12>>2]=0;L[a+8>>2]=r;L[a+4>>2]=s;L[a>>2]=i;L[a+24>>2]=e;L[a+20>>2]=p}function LK(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=O(0),h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=O(0),q=O(0),r=0,s=0,t=0,u=0;i=H[a+88>>2];o=H[i+12>>2];h=H[i>>2];if(h){g=L[b+8>>2];p=L[b+4>>2];q=L[b>>2];while(1){a=N(f,40)+o|0;if(H[a+28>>2]){b=H[a+4>>2]<<1;b=(B(O((x(2,(b|0)>=0?b^-1:b&2147483646),C())-q)),v(2));H[a+4>>2]=((b|0)>=0?b|-2147483648:b^-1)>>>1;b=H[a+24>>2]<<1;b=(B(O((x(2,(b|0)>=0?b^-1:b&2147483646),C())-g)),v(2));H[a+24>>2]=((b|0)>=0?b|-2147483648:b^-1)>>>1;b=H[a+20>>2]<<1;b=(B(O((x(2,(b|0)>=0?b^-1:b&2147483646),C())-p)),v(2));H[a+20>>2]=((b|0)>=0?b|-2147483648:b^-1)>>>1;b=H[a+16>>2]<<1;b=(B(O((x(2,(b|0)>=0?b^-1:b&2147483646),C())-q)),v(2));H[a+16>>2]=((b|0)>=0?b|-2147483648:b^-1)>>>1;b=H[a+12>>2]<<1;b=(B(O((x(2,(b|0)>=0?b^-1:b&2147483646),C())-g)),v(2));H[a+12>>2]=((b|0)>=0?b|-2147483648:b^-1)>>>1;b=a;a=H[a+8>>2]<<1;a=(B(O((x(2,(a|0)>=0?a^-1:a&2147483646),C())-p)),v(2));H[b+8>>2]=((a|0)>=0?a|-2147483648:a^-1)>>>1}f=f+1|0;if((h|0)!=(f|0)){continue}break}}r=H[i+28>>2];if(r){t=H[i+24>>2];h=0;while(1){f=N(h,12)+t|0;b=J[f+4>>1];if(b){e=H[f>>2];a=N(e,24)+c|0;g=L[(e<<2)+d>>2];e=(B(O(L[a+12>>2]+g)),v(2));j=(e|0)>=0?e|-2147483648:e^-1;e=(B(O(L[a+8>>2]-g)),v(2));k=(e|0)>=0?e|-2147483648:e^-1;e=(B(O(L[a+4>>2]-g)),v(2));l=(e|0)>=0?e|-2147483648:e^-1;e=(B(O(L[a>>2]-g)),v(2));m=(e|0)>=0?e|-2147483648:e^-1;e=(B(O(L[a+20>>2]+g)),v(2));e=(e|0)>=0?e|-2147483648:e^-1;a=(B(O(L[a+16>>2]+g)),v(2));n=(a|0)>=0?a|-2147483648:a^-1;a=(b|0)==1?f+8|0:H[(N(b,12)+i|0)+92>>2]+(H[f+8>>2]<<2)|0;j=j>>>1|0;k=k>>>1|0;l=l>>>1|0;m=m>>>1|0;e=e>>>1|0;n=n>>>1|0;u=b>>>0>1?b:1;f=0;while(1){b=(f<<2)+a|0;s=H[(N(J[b+2>>1],40)+o|0)+28>>2];b=H[s+76>>2]+(J[b>>1]<<3)|0;b=H[(H[b+4>>2]&1?96:100)+s>>2]+N(H[b>>2],24)|0;H[b+20>>2]=e;H[b+16>>2]=n;H[b+12>>2]=j;H[b+8>>2]=k;H[b+4>>2]=l;H[b>>2]=m;f=f+1|0;if((u|0)!=(f|0)){continue}break}}h=h+1|0;if((r|0)!=(h|0)){continue}break}}}function iH(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;h=Oa-16|0;Oa=h;H[h+12>>2]=-1;b=b>>>1|b;b=b>>>2|b;b=b>>>4|b;b=b>>>8|b;j=b>>>16|b;f=j+1|0;jH(a+176|0,f,h+12|0);H[h>>2]=0;H[h+4>>2]=0;e=a+196|0;if(f>>>0>(H[e+8>>2]&2147483647)>>>0){a:{if(!f){break a}d=f<<3;if(!d){break a}b=H[33808];c=Ra[H[H[b>>2]+20>>2]](b)|0?41438:55639;c=Ra[H[H[b+12>>2]+8>>2]](b+12|0,d,c,13582,553)|0}b=H[e+4>>2];if((b|0)>0){g=(b<<3)+c|0;b=H[e>>2];d=c;while(1){i=H[b+4>>2];H[d>>2]=H[b>>2];H[d+4>>2]=i;b=b+8|0;d=d+8|0;if(g>>>0>d>>>0){continue}break}}b:{if(H[e+8>>2]<0){break b}b=H[e>>2];if(!b){break b}d=H[33808];Ra[H[H[d+12>>2]+12>>2]](d+12|0,b)}H[e+8>>2]=f;H[e>>2]=c}b=H[e+4>>2];if((b|0)<(f|0)){c=H[e>>2];d=c+(f<<3)|0;c=c+(b<<3)|0;while(1){b=H[h+4>>2];H[c>>2]=H[h>>2];H[c+4>>2]=b;c=c+8|0;if(d>>>0>c>>>0){continue}break}}H[e+4>>2]=f;g=H[a+192>>2];if(f>>>0>(H[g+12>>2]&2147483647)>>>0){b=0;c:{if(!f){break c}c=f<<2;if(!c){break c}b=H[g>>2];b=Ra[H[H[b>>2]+8>>2]](b,c,13582,553)|0}d=H[g+4>>2];c=H[g+8>>2];if((c|0)>0){i=(c<<2)+b|0;e=d;c=b;while(1){L[c>>2]=L[e>>2];e=e+4|0;c=c+4|0;if(i>>>0>c>>>0){continue}break}}if(!(!d|H[g+12>>2]<0)){c=H[g>>2];Ra[H[H[c>>2]+12>>2]](c,d)}H[g+12>>2]=f;H[g+4>>2]=b}H[g+8>>2]=f;b=j+32>>>5|0;if(b>>>0>(H[a+140>>2]&2147483647)>>>0){c=H[33808];c=Ra[H[H[c+12>>2]+8>>2]](c+12|0,b<<2,20591,14969,438)|0;d=H[a+136>>2];d:{if(!d){break d}R6(c,d,H[a+140>>2]<<2);if(H[a+140>>2]<0){break d}d=H[a+136>>2];if(!d){break d}e=H[33808];Ra[H[H[e+12>>2]+12>>2]](e+12|0,d)}d=H[a+140>>2];S6(c+(d<<2)|0,0,b-d<<2);H[a+140>>2]=b;H[a+136>>2]=c}if(b>>>0>(H[a+152>>2]&2147483647)>>>0){c=H[33808];c=Ra[H[H[c+12>>2]+8>>2]](c+12|0,b<<2,20591,14969,438)|0;d=H[a+148>>2];e:{if(!d){break e}R6(c,d,H[a+152>>2]<<2);if(H[a+152>>2]<0){break e}d=H[a+148>>2];if(!d){break e}e=H[33808];Ra[H[H[e+12>>2]+12>>2]](e+12|0,d)}d=H[a+152>>2];S6(c+(d<<2)|0,0,b-d<<2);H[a+152>>2]=b;H[a+148>>2]=c}Oa=h+16|0}function bi(a,b){var c=O(0),d=0,e=0,f=0,g=O(0),h=O(0),i=O(0),j=O(0),k=0,l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=0,s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0);d=Oa+-64|0;Oa=d;Ra[H[H[a>>2]+76>>2]](d,a);j=L[b+8>>2];l=L[b+4>>2];m=L[b+12>>2];n=L[b>>2];g=L[d+8>>2];c=L[b+24>>2];o=O(c+c);h=L[d>>2];c=L[b+16>>2];p=O(c+c);c=L[b+20>>2];q=O(c+c);i=L[d+4>>2];s=O(O(g*o)+O(O(h*p)+O(q*i)));c=L[d+12>>2];t=O(O(c*c)+O(-.5));u=O(L[d+24>>2]+O(O(g*s)+O(O(o*t)+O(c*O(O(h*q)-O(p*i))))));L[d+56>>2]=u;v=O(L[d+20>>2]+O(O(i*s)+O(O(q*t)+O(c*O(O(g*p)-O(o*h))))));L[d+52>>2]=v;w=O(O(O(O(c*m)-O(n*h))-O(i*l))-O(g*j));L[d+44>>2]=w;x=O(O(O(h*l)+O(O(c*j)+O(g*m)))-O(n*i));L[d+40>>2]=x;y=O(O(O(g*n)+O(O(c*l)+O(i*m)))-O(j*h));L[d+36>>2]=y;j=O(O(O(i*j)+O(O(c*n)+O(h*m)))-O(l*g));L[d+32>>2]=j;c=O(L[d+16>>2]+O(O(h*s)+O(O(p*t)+O(c*O(O(i*o)-O(q*g))))));L[d+48>>2]=c;L[a+280>>2]=u;L[a+276>>2]=v;L[a+272>>2]=c;L[a+268>>2]=w;L[a+264>>2]=x;L[a+260>>2]=y;L[a+256>>2]=j;f=a+48|0;a:{b:{c:{switch((H[a+52>>2]>>>30|0)-2|0){case 0:if(I[H[f>>2]+4785|0]){break b}break;case 1:break b;default:break c}}CF(a- -64|0,d+32|0);break a}e=H[a+316>>2];if(!(e&1048576)){H[a+316>>2]=e|2097152}$t(H[a+48>>2],f);H[a+316>>2]=H[a+316>>2]|1048576}d:{e:{f:{g:{k=H[a+52>>2];switch((k>>>30|0)-2|0){case 1:break e;case 0:break g;default:break f}}if(I[H[f>>2]+4785|0]){break e}}FF(a- -64|0,b);break d}e=H[a+56>>2];if(!e){e=Tt(H[a+48>>2],k>>>24&15);H[a+56>>2]=e}L[e+144>>2]=L[b>>2];L[e+148>>2]=L[b+4>>2];L[e+152>>2]=L[b+8>>2];L[e+156>>2]=L[b+12>>2];L[e+160>>2]=L[b+16>>2];L[e+164>>2]=L[b+20>>2];L[e+168>>2]=L[b+24>>2];$t(H[a+48>>2],f);H[a+316>>2]=H[a+316>>2]|1024}b=0;f=H[a+16>>2];h:{if(!f){e=0;f=0;break h}e=H[f+40>>2];f=H[f+36>>2]}while(1){k=b>>>0>e>>>0?b:e;i:{while(1){if((b|0)==(k|0)){break i}r=b<<3;b=b+1|0;r=f+r|0;if(I[r|0]){continue}break}k=H[r+4>>2];if(!k){break i}Gf(k,a);continue}break}Oa=d- -64|0}function xJ(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;g=H[b+48>>2];a:{if(!(J[b+40>>1]&4096?I[b+8|0]&2:0)){f=g+32>>>5|0;break a}f=g+32>>>5|0;b:{if(f>>>0<=(H[a+952>>2]&2147483647)>>>0){c=H[a+948>>2];break b}c=H[33808]+12|0;c=Ra[H[H[c>>2]+8>>2]](c,f<<2,20591,14969,438)|0;d=H[a+948>>2];c:{if(!d){break c}R6(c,d,H[a+952>>2]<<2);if(H[a+952>>2]<0){break c}d=H[a+948>>2];if(!d){break c}e=H[33808]+12|0;Ra[H[H[e>>2]+12>>2]](e,d)}d=H[a+952>>2];S6((d<<2)+c|0,0,f-d<<2);H[a+952>>2]=f;H[a+948>>2]=c}c=(g>>>3&536870908)+c|0;d=H[c>>2];i=c,j=j7(-2,g)&d,H[i>>2]=j}d:{if((H[a+940>>2]&2147483647)>>>0>=f>>>0){c=H[a+936>>2];break d}c=H[33808]+12|0;c=Ra[H[H[c>>2]+8>>2]](c,f<<2,20591,14969,438)|0;d=H[a+936>>2];e:{if(!d){break e}R6(c,d,H[a+940>>2]<<2);if(H[a+940>>2]<0){break e}d=H[a+936>>2];if(!d){break e}e=H[33808]+12|0;Ra[H[H[e>>2]+12>>2]](e,d)}d=H[a+940>>2];S6((d<<2)+c|0,0,f-d<<2);H[a+940>>2]=f;H[a+936>>2]=c}d=j7(-2,g);g=g>>>5|0;c=(g<<2)+c|0;H[c>>2]=d&H[c>>2];f:{if((H[a+976>>2]&2147483647)>>>0>=f>>>0){c=H[a+972>>2];break f}c=H[33808]+12|0;c=Ra[H[H[c>>2]+8>>2]](c,f<<2,20591,14969,438)|0;e=H[a+972>>2];g:{if(!e){break g}R6(c,e,H[a+976>>2]<<2);if(H[a+976>>2]<0){break g}e=H[a+972>>2];if(!e){break g}h=H[33808]+12|0;Ra[H[H[h>>2]+12>>2]](h,e)}e=H[a+976>>2];S6((e<<2)+c|0,0,f-e<<2);H[a+976>>2]=f;H[a+972>>2]=c}c=(g<<2)+c|0;H[c>>2]=d&H[c>>2];h:{if((H[a+988>>2]&2147483647)>>>0>=f>>>0){c=H[a+984>>2];break h}c=H[33808]+12|0;c=Ra[H[H[c>>2]+8>>2]](c,f<<2,20591,14969,438)|0;e=H[a+984>>2];i:{if(!e){break i}R6(c,e,H[a+988>>2]<<2);if(H[a+988>>2]<0){break i}e=H[a+984>>2];if(!e){break i}h=H[33808]+12|0;Ra[H[H[h>>2]+12>>2]](h,e)}e=H[a+988>>2];S6((e<<2)+c|0,0,f-e<<2);H[a+988>>2]=f;H[a+984>>2]=c}c=(g<<2)+c|0;H[c>>2]=d&H[c>>2];c=H[b+48>>2];f=H[a+340>>2]+(c>>>3&536870908)|0;g=H[f>>2];i=f,j=j7(-2,c)&g,H[i>>2]=j;c=H[a+328>>2];H[a+328>>2]=c+1;H[H[a+324>>2]+(c<<2)>>2]=b}function bG(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0;g=Oa-16|0;Oa=g;b=H[a+44>>2];if(I[b+9|0]!=2){G[a+92>>1]=J[a+92>>1]&65534;e=Oa-16|0;Oa=e;b=H[a+40>>2];a:{if(!H[b+2344>>2]){break a}c=J[a+148>>1];if(c&64){F[b+2281|0]=0;c=c&65471}G[a+148>>1]=c|128;if(c&32){break a}H[e+8>>2]=H[a+44>>2];b=rg(b+2240|0,e+8|0,e+15|0);if(!I[e+15|0]){H[b>>2]=H[e+8>>2]}G[a+148>>1]=J[a+148>>1]|32}Oa=e+16|0;b=H[a+44>>2]}b:{if(!(I[b+44|0]&16)){break b}b=H[a+40>>2];H[g+8>>2]=a;b=rg(b+4632|0,g+8|0,g+15|0);if(I[g+15|0]){break b}H[b>>2]=H[g+8>>2]}c:{if(I[a+149|0]&16|((I[H[a+44>>2]+44|0]&3)==3|K[a+152>>2]>4294967293)){break c}c=H[a+32>>2];if(!c){break c}while(1){YQ(c);c=H[c>>2];if(c){continue}break}}e=H[a+28>>2];if(e){c=0;while(1){b=c;c=b+1|0;f=H[H[a+20>>2]+(b<<2)>>2];b=I[f+20|0];d:{if(!b|I[f+21|0]&32|(b|0)==2){break d}if(!WO(f)|I[f+20|0]>2){break d}ZN(H[a+40>>2],f)}if((c|0)!=(e|0)){continue}break}}b=H[a+44>>2];e:{if(!(I[b+44|0]&32)){break e}f:{if(I[b+9|0]==2){h=H[a+144>>2];if(h>>>0>4294967167){break e}e=h>>>7|0;f=e+32>>>5|0;d=H[a+40>>2];if(f>>>0<=(H[d+4740>>2]&2147483647)>>>0){c=H[d+4736>>2];break f}a=H[33808]+12|0;c=Ra[H[H[a>>2]+8>>2]](a,f<<2,20591,14905,438)|0;a=H[d+4736>>2];g:{if(!a){break g}R6(c,a,H[d+4740>>2]<<2);if(H[d+4740>>2]<0){break g}b=H[d+4736>>2];if(!b){break g}a=H[33808]+12|0;Ra[H[H[a>>2]+12>>2]](a,b)}a=H[d+4740>>2];S6((a<<2)+c|0,0,f-a<<2);H[d+4740>>2]=f;H[d+4736>>2]=c;break f}h=H[a+144>>2];e=h>>>7|0;f=e+32>>>5|0;d=H[a+40>>2];if(f>>>0<=(H[d+4728>>2]&2147483647)>>>0){c=H[d+4724>>2];break f}a=H[33808]+12|0;c=Ra[H[H[a>>2]+8>>2]](a,f<<2,20591,14905,438)|0;a=H[d+4724>>2];h:{if(!a){break h}R6(c,a,H[d+4728>>2]<<2);if(H[d+4728>>2]<0){break h}b=H[d+4724>>2];if(!b){break h}a=H[33808]+12|0;Ra[H[H[a>>2]+12>>2]](a,b)}a=H[d+4728>>2];S6((a<<2)+c|0,0,f-a<<2);H[d+4728>>2]=f;H[d+4724>>2]=c}a=(h>>>10&4194300)+c|0;H[a>>2]=H[a>>2]|1<>2];u=H[a+332>>2];q=H[a+344>>2];n=q+N(b,80)|0;i=I[n+76|0];if(i){k=H[n+72>>2];j=H[a+272>>2]+N(b,76)|0;while(1){l=k+N(e+k|0,m)|0;g=(e<<5)+d|0;f=0;while(1){h=j+N(f,24)|0;L[(f+l<<2)+c>>2]=O(O(L[h+20>>2]*L[g+8>>2])+O(O(L[h+12>>2]*L[g>>2])+O(L[h+16>>2]*L[g+4>>2])))+O(O(L[h+8>>2]*L[g+24>>2])+O(O(L[h>>2]*L[g+16>>2])+O(L[h+4>>2]*L[g+20>>2])));f=f+1|0;if((i|0)!=(f|0)){continue}break}e=e+1|0;if((i|0)!=(e|0)){continue}break}}f=(b<<5)+u|0;e=H[f+24>>2];if(e){g=f+24|0;while(1){f=0;a:{if(!i){i=0;b=e;break a}while(1){e=H[a+340>>2]+N(b,160)|0;v=L[e+128>>2];o=L[e+120>>2];w=L[e+124>>2];e=(f<<5)+d|0;H[e+28>>2]=0;H[e+12>>2]=0;x=L[e+4>>2];y=L[e>>2];L[e+24>>2]=O(O(o*x)-O(w*y))+L[e+24>>2];z=o;o=L[e+8>>2];L[e+20>>2]=L[e+20>>2]+O(O(v*y)-O(z*o));L[e+16>>2]=O(O(w*o)-O(x*v))+L[e+16>>2];f=f+1|0;i=I[n+76|0];if(f>>>0>>0){continue}break}q=H[a+344>>2];b=H[g>>2]}j=N(b,80)+q|0;k=I[j+76|0];b:{if(!k|!i){break b}l=H[a+272>>2];r=H[j+72>>2];s=H[n+72>>2];e=0;while(1){g=(l+N(b,76)|0)+N(e,24)|0;t=e+r|0;f=0;while(1){h=(f<<5)+d|0;L[(t+N(f+s|0,m)<<2)+c>>2]=O(O(L[g+20>>2]*L[h+8>>2])+O(O(L[g+12>>2]*L[h>>2])+O(L[g+16>>2]*L[h+4>>2])))+O(O(L[g+8>>2]*L[h+24>>2])+O(O(L[g>>2]*L[h+16>>2])+O(L[g+4>>2]*L[h+20>>2])));f=f+1|0;if((i|0)!=(f|0)){continue}break}e=e+1|0;if((k|0)!=(e|0)){continue}break}if(!k){break b}r=i&254;s=i&1;t=H[j+72>>2];f=H[n+72>>2];g=0;while(1){h=g+t|0;j=N(h,m);e=0;l=0;if((i|0)!=1){while(1){p=e+f|0;L[(p+j<<2)+c>>2]=L[(h+N(m,p)<<2)+c>>2];p=f+(e|1)|0;L[(p+j<<2)+c>>2]=L[(h+N(m,p)<<2)+c>>2];e=e+2|0;l=l+2|0;if((r|0)!=(l|0)){continue}break}}if(s){e=e+f|0;L[(e+j<<2)+c>>2]=L[(h+N(e,m)<<2)+c>>2]}g=g+1|0;if((k|0)!=(g|0)){continue}break}}e=(b<<5)+u|0;g=e+24|0;e=H[e+24>>2];if(e){continue}break}}return b}function I0(a,b,c,d,e,f,g,h,i){var j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=0,u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),F=0,G=0,K=O(0),M=O(0),P=O(0);t=Oa;G=t;F=I[c+18|0];t=(t-(F<<4)|0)-16|0;Oa=t;Ra[H[H[d>>2]+16>>2]](d,J[c+16>>1]+H[b+32>>2]|0,F,H[b+28>>2],t);b=I[c+18|0];if(b){K=O(L[a+80>>2]+L[h>>2]);d=t+(b-1<<4)|0;A=L[d+8>>2];B=L[d+4>>2];C=L[d>>2];d=0;while(1){j=C;h=t+(d<<4)|0;C=L[h>>2];u=O(j-C);l=L[i+4>>2];o=L[i>>2];j=B;B=L[h+4>>2];v=O(j-B);j=O(O(u*l)-O(o*v));q=L[a+56>>2];p=L[i+8>>2];k=A;A=L[h+8>>2];w=O(k-A);m=O(O(v*p)-O(l*w));x=L[a+48>>2];k=O(O(w*o)-O(p*u));D=L[a+52>>2];y=O(O(j*q)+O(O(m*x)+O(k*D)));z=O(O(j*A)+O(O(m*C)+O(B*k)));n=L[a+72>>2];r=L[a+64>>2];s=L[a+68>>2];a:{if(O(O(y-z)*O(O(O(j*n)+O(O(m*r)+O(k*s)))-z))>O(0)){break a}E=j;j=O(n-q);n=m;m=O(r-x);r=k;k=O(s-D);n=O(O(E*j)+O(O(n*m)+O(r*k)));if(n==O(0)){break a}r=O(O(o*k)-O(m*l));E=q;q=O(O(z-y)/n);z=O(E+O(j*q));y=O(z-A);n=O(O(l*j)-O(k*p));x=O(x+O(m*q));s=O(x-C);j=O(O(p*m)-O(j*o));m=O(D+O(k*q));k=O(m-B);j=O(O(O(r*y)+O(O(n*s)+O(j*k)))/O(O(r*w)+O(O(n*u)+O(v*j))));if(j>O(1.0049999952316284)|j>2];q=L[e>>2];D=L[e+4>>2];y=L[e+24>>2];n=L[e+16>>2];r=L[e+20>>2];l=L[e+40>>2];o=L[e+56>>2];p=L[e+32>>2];s=L[e+48>>2];M=L[e+36>>2];P=L[e+52>>2];b=N(H[g>>2],48)+f|0;H[b+12>>2]=0;E=l;l=O(z-o);o=O(x-s);s=O(p*o);p=O(m-P);L[b+8>>2]=O(E*l)+O(s+O(M*p));L[b+4>>2]=O(y*l)+O(O(n*o)+O(p*r));L[b>>2]=O(k*l)+O(O(q*o)+O(p*D));b=N(H[g>>2],48)+f|0;L[b+16>>2]=x-u;H[b+28>>2]=0;L[b+24>>2]=z-w;L[b+20>>2]=m-j;l=L[i+8>>2];h=H[i+4>>2];F=H[i>>2];b=H[g>>2];H[g>>2]=b+1;b=N(b,48)+f|0;H[b+32>>2]=F;H[b+36>>2]=h;L[b+44>>2]=v;L[b+40>>2]=l;b=I[c+18|0]}d=d+1|0;if(d>>>0>>0){continue}break}}Oa=G}function GG(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;h=Oa-16|0;Oa=h;f=H[a+372>>2];a:{if(!f){break a}e=H[a+340>>2];while(1){c=H[e+(d<<2)>>2];F[c+44|0]=I[c+44|0]&251;if(H[c+20>>2]){KG(c)}JG(c);d=d+1|0;if((f|0)!=(d|0)){continue}break}c=H[a+356>>2];if(!c|!H[a+372>>2]){break a}S6(H[a+348>>2],255,c<<2);c=0;d=H[a+344>>2];e=H[a+352>>2];i=e-1|0;if(i){f=0;if(e-2>>>0>=3){j=i&-4;e=0;while(1){g=c|1;H[d+(c<<2)>>2]=g;k=d+(g<<2)|0;g=c|2;H[k>>2]=g;k=d+(g<<2)|0;g=c|3;H[k>>2]=g;c=c+4|0;H[d+(g<<2)>>2]=c;e=e+4|0;if((j|0)!=(e|0)){continue}break}}e=i&3;if(e){while(1){g=d+(c<<2)|0;c=c+1|0;H[g>>2]=c;f=f+1|0;if((e|0)!=(f|0)){continue}break}}c=H[a+352>>2]-1|0}else{c=0}H[d+(c<<2)>>2]=-1;H[a+372>>2]=0;H[a+364>>2]=0}e=H[a+332>>2];b:{if(!e){break b}H[h>>2]=b;b=Gw(b,264,1);H[h+4>>2]=b;if(b){H[b>>2]=0;H[b+4>>2]=0}H[h+8>>2]=b;b=H[a+300>>2];c=0;while(1){HG(a,H[b+(c<<2)>>2],h);c=c+1|0;if((e|0)!=(c|0)){continue}break}d=H[h+4>>2];c:{if(!d){break c}if(!H[d+4>>2]){d=H[d>>2];if(!d){break c}}while(1){f=d+8|0;c=1;while(1){HG(a,H[f>>2],h);if(c>>>0>2]){f=((c<<2)+d|0)+8|0;c=c+1|0;continue}break}d=H[d>>2];if(d){continue}break}}d=e>>>0>1?e:1;c=0;while(1){f=H[b+(c<<2)>>2];e=H[f+60>>2];f=BG(H[(e?e:H[f- -64>>2])+164>>2]);if(!H[f+20>>2]){JG(f)}c=c+1|0;if((d|0)!=(c|0)){continue}break}b=H[a+316>>2];if(!(!b|!H[a+332>>2])){S6(H[a+308>>2],255,b<<2);c=0;b=H[a+304>>2];e=H[a+312>>2];d=e-1|0;if(d){f=0;if(e-2>>>0>=3){j=d&-4;e=0;while(1){g=c|1;H[b+(c<<2)>>2]=g;i=b+(g<<2)|0;g=c|2;H[i>>2]=g;i=b+(g<<2)|0;g=c|3;H[i>>2]=g;c=c+4|0;H[b+(g<<2)>>2]=c;e=e+4|0;if((j|0)!=(e|0)){continue}break}}d=d&3;if(d){while(1){e=b+(c<<2)|0;c=c+1|0;H[e>>2]=c;f=f+1|0;if((d|0)!=(f|0)){continue}break}}c=H[a+312>>2]-1|0}else{c=0}H[b+(c<<2)>>2]=-1;H[a+332>>2]=0;H[a+324>>2]=0}c=H[h+4>>2];if(!c){break b}while(1){a=H[c>>2];Lw(H[h>>2],c);c=a;if(c){continue}break}}Oa=h+16|0}function x2(a,b){a=a|0;b=b|0;var c=0,d=O(0),e=0,f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=0,p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),F=O(0),G=O(0),I=O(0),K=O(0),M=O(0),N=O(0),P=O(0),Q=O(0);c=Oa-96|0;Oa=c;e=H[b+76>>2];Ra[H[H[e>>2]+28>>2]](e,c+76|0,c+72|0);u1(c+40|0,H[c+76>>2]);u1(c+8|0,H[c+72>>2]);e=H[c+76>>2];f=O(0);a:{if(!e){break a}f=O(0);if(J[e+4>>1]==6){break a}o=c+80|0;Ra[H[H[e>>2]+156>>2]](o,e);k=L[c+88>>2];K=L[c+84>>2];M=L[c+80>>2];Ra[H[H[e>>2]+164>>2]](o,e);A=L[c+88>>2];B=L[c+84>>2];f=L[c+80>>2]}e=H[c+72>>2];g=O(0);b:{if(!e){break b}g=O(0);if(J[e+4>>1]==6){break b}o=c+80|0;Ra[H[H[e>>2]+156>>2]](o,e);h=L[c+88>>2];N=L[c+84>>2];P=L[c+80>>2];Ra[H[H[e>>2]+164>>2]](o,e);C=L[c+88>>2];D=L[c+80>>2];g=L[c+84>>2]}l=L[c+48>>2];i=L[b+44>>2];m=O(i+i);i=L[c+40>>2];j=L[b+36>>2];p=O(j+j);j=L[c+44>>2];d=L[b+40>>2];q=O(d+d);x=O(O(l*m)+O(O(i*p)+O(j*q)));r=L[c+16>>2];d=L[b+72>>2];s=O(d+d);t=L[c+8>>2];d=L[b- -64>>2];u=O(d+d);v=L[c+12>>2];d=L[b+68>>2];w=O(d+d);y=O(O(r*s)+O(O(t*u)+O(v*w)));d=L[c+52>>2];n=O(O(d*d)+O(-.5));E=O(O(j*x)+O(O(q*n)+O(d*O(O(l*p)-O(m*i)))));F=O(O(i*x)+O(O(p*n)+O(d*O(O(j*m)-O(q*l)))));Q=h;h=L[c+20>>2];z=O(O(h*h)+O(-.5));G=O(O(v*y)+O(O(w*z)+O(h*O(O(r*u)-O(s*t)))));I=O(O(t*y)+O(O(u*z)+O(h*O(O(v*s)-O(w*r)))));k=O(O(O(O(f*E)-O(F*B))+O(O(Q-O(O(D*G)-O(I*g)))-k))-L[c- -64>>2]);k=O(k+k);m=O(O(l*x)+O(O(m*n)+O(d*O(O(i*q)-O(p*j)))));h=O(O(r*y)+O(O(s*z)+O(h*O(O(t*w)-O(u*v)))));g=O(O(O(O(B*m)-O(E*A))+O(O(P-O(O(g*h)-O(G*C)))-M))-L[c+56>>2]);g=O(g+g);f=O(O(O(O(A*F)-O(m*f))+O(O(N-O(O(C*I)-O(h*D)))-K))-L[c+60>>2]);f=O(f+f);h=O(O(l*k)+O(O(i*g)+O(j*f)));L[a+8>>2]=O(l*h)+O(O(k*n)-O(d*O(O(i*f)-O(g*j))));L[a+4>>2]=O(j*h)+O(O(f*n)-O(d*O(O(l*g)-O(k*i))));L[a>>2]=O(i*h)+O(O(g*n)-O(d*O(O(j*k)-O(f*l))));Oa=c+96|0}function ds(a,b,c,d,e,f,g,h){var i=0,j=0,k=O(0),l=0,m=0;i=Oa-112|0;Oa=i;m=J[f+16>>1];H[i+108>>2]=-1;j=-1;if(e){j=qt(sg(H[e+4>>2]),H[e>>2],i+108|0)}l=a+5584|0;ND(l);F[i+100|0]=1;H[i+96>>2]=c;H[c+80>>2]=0;F[c+68|0]=0;k=L[b+8>>2];d=J[d>>1];F[i+54|0]=1;H[i+48>>2]=h;L[i+44>>2]=k;H[i+40>>2]=g;G[i+32>>1]=d;H[i+28>>2]=c;H[i+24>>2]=b;H[i+20>>2]=a;H[i+16>>2]=111428;e=d&64;d=m&16;G[i+52>>1]=((e|d)!=0)<<6;H[i+36>>2]=f;e=J[f+16>>1];H[i+88>>2]=0;F[i+84|0]=0;F[i+58|0]=0;F[i+57|0]=d>>>4;d=e>>>5&1;F[i+56|0]=d;F[i+55|0]=d;a:{b:{if(!(H[c+76>>2]|(j|0)==-1)){d=JD(l,H[i+108>>2],j);F[i+58|0]=1;d=es(i+16|0,i+12|0,d);F[i+58|0]=0;if(!d){break b}e=J[f+16>>1]}d=i+44|0;g=H[a+5656>>2];h=H[a+5620>>2];c:{if(!(e&1)){break c}a=H[a+5584>>2];if(Ra[H[H[a>>2]+24>>2]](a,H[b>>2],H[b+4>>2],d,i+16|0)|0){break c}b=(I[c+68|0]|H[c+80>>2])!=0;break a}d:{if(e&2){a=0;if(!(Ra[H[H[h>>2]+24>>2]](h,H[b>>2],H[b+4>>2],d,i+16|0)|0)){break d}}a=H[b+4>>2];b=H[b>>2];G[i+8>>1]=J[f+16>>1];a=Ra[H[H[g>>2]+24>>2]](g,b,a,d,i+16|0,i+8|0)|0}F[i+100|0]=a;b=(I[c+68|0]|H[c+80>>2])!=0;break a}b=(I[c+68|0]|H[c+80>>2])!=0}d=0;e:{if(!I[i+100|0]){break e}a=H[i+96>>2];c=H[a+80>>2];if(I[a+68|0]){if(!c){break e}k=L[a+44>>2];f=H[a+72>>2];while(1){a=f+(d<<6)|0;f:{if(k>2]){c=c-1|0;e=f+(c<<6)|0;g=H[e+4>>2];H[a>>2]=H[e>>2];H[a+4>>2]=g;H[a+8>>2]=H[e+8>>2];G[a+12>>1]=J[e+12>>1];L[a+16>>2]=L[e+16>>2];L[a+20>>2]=L[e+20>>2];L[a+24>>2]=L[e+24>>2];L[a+28>>2]=L[e+28>>2];L[a+32>>2]=L[e+32>>2];L[a+36>>2]=L[e+36>>2];L[a+40>>2]=L[e+40>>2];g=H[e+48>>2];H[a+44>>2]=H[e+44>>2];H[a+48>>2]=g;g=H[e+56>>2];H[a+52>>2]=H[e+52>>2];H[a+56>>2]=g;H[a+60>>2]=H[e+60>>2];break f}d=d+1|0}if((c|0)!=(d|0)){continue}break}a=H[i+96>>2];H[a+80>>2]=c}if(!c){break e}if(!(Ra[H[H[a>>2]>>2]](a,H[a+72>>2],c)|0)){break e}H[H[i+96>>2]+80>>2]=0}a=H[i+96>>2];Ra[H[H[a>>2]+4>>2]](a);Oa=i+112|0;return b}function cG(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0;f=Oa-16|0;Oa=f;e=H[a+28>>2];if(e){while(1){b=c;c=b+1|0;d=H[H[a+20>>2]+(b<<2)>>2];b=I[d+20|0];a:{if(!b|!(I[d+21|0]&32)|(b|0)==2){break a}b=0;b:{c:{switch(I[d+20|0]){case 0:b=UQ(d-4|0);break b;case 1:b=qR(d-4|0);break b;case 2:b=1;break b;case 4:b=OG(d);break b;case 5:break c;default:break b}}F[d+21|0]=I[d+21|0]&223;b=1}if(!b|I[d+20|0]>2){break a}_N(H[a+40>>2],d)}if((c|0)!=(e|0)){continue}break}}c=H[a+44>>2];d:{if(I[a+148|0]&8){break d}H[c+104>>2]=0;H[c+96>>2]=0;H[c+100>>2]=0;H[c+88>>2]=0;H[c+80>>2]=0;H[c+84>>2]=0;b=H[c+176>>2];if(F[H[a+100>>2]+28|0]>=0){d=I[c+173|0];e:{if(!b|I[H[c+176>>2]+31|0]==1){break e}b=H[c+176>>2];if(!b){break e}H[b+56>>2]=0;H[b+48>>2]=0;H[b+52>>2]=0;H[b+40>>2]=0;H[b+32>>2]=0;H[b+36>>2]=0;H[b+24>>2]=0;H[b+16>>2]=0;H[b+20>>2]=0;H[b+8>>2]=0;H[b>>2]=0;H[b+4>>2]=0}if(!d){F[a+150|0]=1;break d}F[a+150|0]=0;break d}f:{if(!b|I[H[c+176>>2]+31|0]==1){break f}b=H[c+176>>2];if(!b){break f}H[b+56>>2]=0;H[b+48>>2]=0;H[b+52>>2]=0;H[b+40>>2]=0;H[b+32>>2]=0;H[b+36>>2]=0}F[a+150|0]=I[a+150|0]&251}if(I[H[a+44>>2]+9|0]!=2){d=Oa-16|0;Oa=d;b=J[a+148>>1];e=H[a+40>>2];if(H[e+2344>>2]){if(b&128){F[e+2280|0]=0;b=b&65407}b=b|64;G[a+148>>1]=b}if(!(b&16)){H[d+8>>2]=H[a+44>>2];b=rg(e+2200|0,d+8|0,d+15|0);if(!I[d+15|0]){H[b>>2]=H[d+8>>2]}G[a+148>>1]=J[a+148>>1]|16}Oa=d+16|0}if(I[c+44|0]&16){b=H[a+40>>2];H[f+12>>2]=a;Pf(b+4632|0,f+12|0)}c=H[a+32>>2];if(c){while(1){$Q(c);c=H[c>>2];if(c){continue}break}}b=H[a+44>>2];g:{if(!(I[b+44|0]&32)){break g}h:{if(I[b+9|0]==2){c=H[a+144>>2];if(c>>>0>4294967167){break g}b=c>>>7|0;a=H[a+40>>2];if(b>>>0>=H[a+4740>>2]<<5>>>0){break g}a=a+4736|0;break h}c=H[a+144>>2];b=c>>>7|0;a=H[a+40>>2];if(b>>>0>=H[a+4728>>2]<<5>>>0){break g}a=a+4724|0}a=H[a>>2]+(c>>>10&4194300)|0;c=H[a>>2];g=a,h=j7(-2,b)&c,H[g>>2]=h}Oa=f+16|0}function eP(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;l=32;m=Oa-16|0;Oa=m;F[m+12|0]=0;e=m-128|0;Oa=e;H[m+8>>2]=e;f=b-1|0;a:{if((f|0)<=0){break a}while(1){b:{if((f|0)<=(g|0)){break b}while(1){if(f-g>>>0<=4){while(1){b=g;g=b+1|0;d=g;c=b;while(1){c=K[(d<<2)+a>>2]>2]?d:c;i=(d|0)<(f|0);d=d+1|0;if(i){continue}break}if((b|0)!=(c|0)){d=(c<<2)+a|0;c=H[d>>2];b=(b<<2)+a|0;H[d>>2]=H[b>>2];H[b>>2]=c}if((f|0)!=(g|0)){continue}break b}}j=((f+g|0)/2<<2)+a|0;d=H[j>>2];k=(g<<2)+a|0;c=H[k>>2];if(d>>>0>>0){H[k>>2]=d;H[j>>2]=c;d=c;c=H[k>>2]}i=(f<<2)+a|0;b=H[i>>2];c:{if(b>>>0>=c>>>0){c=b;break c}H[k>>2]=b;H[i>>2]=c;d=H[j>>2]}if(c>>>0>>0){H[j>>2]=c;H[i>>2]=d;d=H[j>>2]}b=f-1|0;n=(b<<2)+a|0;H[j>>2]=H[n>>2];H[n>>2]=d;c=g;while(1){i=c;c=c+1|0;p=(c<<2)+a|0;q=H[p>>2];if(q>>>0>>0){continue}while(1){b=b-1|0;j=(b<<2)+a|0;k=H[j>>2];if(k>>>0>d>>>0){continue}break}if((b|0)>(c|0)){H[p>>2]=k;H[j>>2]=q;d=H[n>>2];continue}break}H[p>>2]=d;H[n>>2]=q;d:{if((c-g|0)<(f-c|0)){e:{if(l-1>>>0>h>>>0){d=e;break e}b=H[33808]+12|0;b=Ra[H[H[b>>2]+8>>2]](b,(l<<3)+67|0,20591,14160,155)|0;f:{if(!b){d=0;break f}d=b+67&-64;H[d-4>>2]=d-b}b=R6(d,e,h<<2);if(!(!o|!e)){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,e-H[e-4>>2]|0)}l=l<<1;o=1;e=b}b=(h<<2)+d|0;H[b>>2]=g;H[b+4>>2]=i;g=i+2|0;break d}k=i+2|0;g:{if(l-1>>>0>h>>>0){d=e;break g}b=H[33808]+12|0;b=Ra[H[H[b>>2]+8>>2]](b,(l<<3)+67|0,20591,14160,155)|0;h:{if(!b){d=0;break h}d=b+67&-64;H[d-4>>2]=d-b}b=R6(d,e,h<<2);if(!(!o|!e)){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,e-H[e-4>>2]|0)}l=l<<1;o=1;e=b}b=(h<<2)+d|0;H[b>>2]=k;H[b+4>>2]=f;f=i}h=h+2|0;if((f|0)>(g|0)){continue}break}}if(h){b=h-2|0;g=H[(b<<2)+e>>2];f=H[((h<<2)+e|0)-4>>2];h=b;continue}break}if(!o|!e){break a}a=H[33808]+12|0;Ra[H[H[a>>2]+12>>2]](a,e-H[e-4>>2]|0)}if(I[m+12|0]){H5(H[m+8>>2])}Oa=m+16|0}function $F(a,b,c,d){var e=0,f=0,g=O(0);f=Oa-16|0;Oa=f;e=H[a+176>>2];a:{if(e){L[e>>2]=L[c>>2];L[e+4>>2]=L[c+4>>2];L[e+8>>2]=L[c+8>>2];L[e+12>>2]=L[c+12>>2];L[e+16>>2]=L[c+16>>2];L[e+20>>2]=L[c+20>>2];g=L[c+24>>2];F[e+28|0]=1;L[e+24>>2]=g;b=H[a>>2];if(!b){break a}G[b+148>>1]=J[b+148>>1]&63483|4;break a}e=H[b+288>>2];if(!e){HF(b);e=H[b+288>>2]}H[b+288>>2]=H[e>>2];H[b+280>>2]=H[b+280>>2]+1;F[e+24|0]=0;F[e+25|0]=0;F[e+26|0]=0;F[e+27|0]=0;F[e+28|0]=0;F[e+29|0]=0;F[e+30|0]=0;F[e+31|0]=0;F[e+56|0]=0;F[e+57|0]=0;F[e+58|0]=0;F[e+59|0]=0;F[e+60|0]=0;F[e+61|0]=0;F[e+62|0]=0;F[e+63|0]=0;F[e+48|0]=0;F[e+49|0]=0;F[e+50|0]=0;F[e+51|0]=0;F[e+52|0]=0;F[e+53|0]=0;F[e+54|0]=0;F[e+55|0]=0;F[e+40|0]=0;F[e+41|0]=0;F[e+42|0]=0;F[e+43|0]=0;F[e+44|0]=0;F[e+45|0]=0;F[e+46|0]=0;F[e+47|0]=0;F[e+32|0]=0;F[e+33|0]=0;F[e+34|0]=0;F[e+35|0]=0;F[e+36|0]=0;F[e+37|0]=0;F[e+38|0]=0;F[e+39|0]=0;F[e+16|0]=0;F[e+17|0]=0;F[e+18|0]=0;F[e+19|0]=0;F[e+20|0]=0;F[e+21|0]=0;F[e+22|0]=0;F[e+23|0]=0;F[e+8|0]=0;F[e+9|0]=0;F[e+10|0]=0;F[e+11|0]=0;F[e+12|0]=0;F[e+13|0]=0;F[e+14|0]=0;F[e+15|0]=0;F[e|0]=0;F[e+1|0]=0;F[e+2|0]=0;F[e+3|0]=0;F[e+4|0]=0;F[e+5|0]=0;F[e+6|0]=0;F[e+7|0]=0;F[e+31|0]=1;L[e+48>>2]=L[a+120>>2];L[e+52>>2]=L[a+124>>2];L[e+32>>2]=L[a+128>>2];L[e+36>>2]=L[a+132>>2];L[e+40>>2]=L[a+136>>2];L[e+44>>2]=L[a+140>>2];L[e+56>>2]=L[a+112>>2];L[e+60>>2]=L[a+116>>2];H[a+176>>2]=e;H[a+112>>2]=2139095039;H[a+116>>2]=2139095039;H[a+136>>2]=0;H[a+140>>2]=0;H[a+128>>2]=0;H[a+132>>2]=0;H[a+120>>2]=0;H[a+124>>2]=0;L[e>>2]=L[c>>2];L[e+4>>2]=L[c+4>>2];L[e+8>>2]=L[c+8>>2];L[e+12>>2]=L[c+12>>2];L[e+16>>2]=L[c+16>>2];L[e+20>>2]=L[c+20>>2];g=L[c+24>>2];F[e+28|0]=1;L[e+24>>2]=g}L[a+156>>2]=d;a=H[a>>2];if(a){b=H[H[a+40>>2]+1012>>2];c=I[H[a+44>>2]+9|0];H[f+8>>2]=H[a+144>>2];Ra[H[H[b>>2]+44>>2]](b,(c|0)==2,f+8|0);pG(a);mG(a,d,1)}Oa=f+16|0}function yW(a,b,c){var d=O(0),e=O(0),f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0);d=L[c+4>>2];k=O(d+d);h=L[c+8>>2];i=O(k*h);l=L[c>>2];e=O(l+l);o=L[c+12>>2];f=O(e*o);g=O(i+f);L[a+28>>2]=g;j=O(e*h);n=O(k*o);p=O(j-n);L[a+24>>2]=p;i=O(i-f);L[a+20>>2]=i;y=O(e*d);r=O(h+h);q=O(o*r);o=O(y+q);L[a+12>>2]=o;f=O(j+n);L[a+8>>2]=f;j=O(y-q);L[a+4>>2]=j;y=O(1);e=O(O(1)-O(l*e));k=O(d*k);d=O(e-k);L[a+32>>2]=d;m=e;e=O(h*r);h=O(m-e);L[a+16>>2]=h;e=O(O(O(1)-k)-e);L[a>>2]=e;k=O(f*O(0));l=O(i*O(0));n=L[b+8>>2];r=O(O(k+l)+O(d*n));m=O(d*O(0));q=L[b>>2];u=O(m+O(l+O(f*q)));z=m;m=L[b+4>>2];v=O(z+O(k+O(i*m)));k=O(O(d*r)+O(O(f*u)+O(i*v)));L[a+32>>2]=k;l=O(j*O(0));s=O(h*O(0));w=O(O(l+s)+O(g*n));t=O(g*O(0));s=O(t+O(s+O(j*q)));t=O(t+O(l+O(h*m)));l=O(O(d*w)+O(O(f*s)+O(i*t)));L[a+28>>2]=l;z=d;d=O(e*O(0));A=O(o*O(0));x=O(O(d+A)+O(p*n));n=f;f=O(p*O(0));q=O(f+O(A+O(e*q)));m=O(f+O(d+O(o*m)));i=O(O(z*x)+O(O(n*q)+O(i*m)));L[a+24>>2]=i;f=O(O(g*r)+O(O(j*u)+O(h*v)));L[a+20>>2]=f;n=O(O(g*w)+O(O(j*s)+O(h*t)));L[a+16>>2]=n;h=O(O(g*x)+O(O(j*q)+O(h*m)));L[a+12>>2]=h;j=O(O(p*r)+O(O(e*u)+O(o*v)));L[a+8>>2]=j;d=O(O(p*w)+O(O(e*s)+O(o*t)));L[a+4>>2]=d;p=O(O(p*x)+O(O(e*q)+O(o*m)));L[a>>2]=p;o=O(0);e=O(0);r=O(0);q=O(1);u=O(0);g=O(0);m=O(0);v=O(1);w=O(O(h*l)-O(i*n));s=O(O(n*k)-O(l*f));t=O(k*h);x=O(O(j*w)+O(O(p*s)+O(d*O(O(f*i)-t))));if(x!=O(0)){g=O(O(1)/x);v=O(O(O(p*n)+O(d*O(-h)))*g);q=O(O(O(p*k)-O(i*j))*g);e=O(O(O(d*f)-O(n*j))*g);y=O(s*g);m=O(g*O(-O(O(p*l)-O(i*d))));u=O(g*O(-O(O(p*f)-O(h*j))));r=O(g*O(-O(t+O(i*O(-f)))));o=O(g*O(-O(O(d*k)-O(j*l))));g=O(w*g)}L[a+36>>2]=y;L[a+68>>2]=v;L[a- -64>>2]=m;L[a+60>>2]=g;L[a+56>>2]=u;L[a+52>>2]=q;L[a+48>>2]=r;L[a+44>>2]=e;L[a+40>>2]=o;F[a+72|0]=O(O(L[b>>2]*L[b+4>>2])*L[b+8>>2])>2];h=L[c+8>>2];s=O(t-h);j=L[b+8>>2];p=O(j-h);x=L[e>>2];k=L[c>>2];q=O(x-k);r=L[b>>2];l=O(r-k);y=L[e+4>>2];m=L[c+4>>2];u=O(y-m);n=L[b+4>>2];o=O(n-m);i=O(O(s*p)+O(O(q*l)+O(u*o)));v=L[d+8>>2];w=O(v-h);z=O(w*p);h=L[d>>2];p=O(h-k);k=O(p*l);l=L[d+4>>2];m=O(l-m);k=O(z+O(k+O(m*o)));if(!(!(k<=O(0))|!(i<=O(0)))){H[f>>2]=0;H[g>>2]=0;L[a>>2]=L[c>>2];L[a+4>>2]=L[c+4>>2];L[a+8>>2]=L[c+8>>2];return}o=O(j-v);h=O(r-h);v=O(n-l);l=O(O(s*o)+O(O(q*h)+O(u*v)));h=O(O(w*o)+O(O(p*h)+O(m*v)));if(!(!(h>=O(0))|!(h>=l))){H[f>>2]=1065353216;H[g>>2]=0;L[a>>2]=L[d>>2];L[a+4>>2]=L[d+4>>2];L[a+8>>2]=L[d+8>>2];return}o=O(O(k*l)-O(i*h));if(!(!(h<=O(0))|(!(o<=O(0))|!(k>=O(0))))){i=O(k/O(k-h));L[f>>2]=i;H[g>>2]=0;h=L[c>>2];j=L[c+4>>2];L[a+8>>2]=O(w*i)+L[c+8>>2];L[a+4>>2]=j+O(m*i);L[a>>2]=h+O(p*i);return}j=O(j-t);t=O(r-x);n=O(n-y);r=O(O(w*j)+O(O(p*t)+O(m*n)));j=O(O(s*j)+O(O(q*t)+O(u*n)));if(!(!(j>=O(0))|!(j>=r))){H[f>>2]=0;H[g>>2]=1065353216;L[a>>2]=L[e>>2];L[a+4>>2]=L[e+4>>2];L[a+8>>2]=L[e+8>>2];return}k=O(O(r*i)-O(j*k));if(!(!(j<=O(0))|(!(k<=O(0))|!(i>=O(0))))){H[f>>2]=0;i=O(i/O(i-j));L[g>>2]=i;h=L[c>>2];j=L[c+4>>2];L[a+8>>2]=O(s*i)+L[c+8>>2];L[a+4>>2]=j+O(u*i);L[a>>2]=h+O(q*i);return}a:{n=O(O(h*j)-O(l*r));if(!(n<=O(0))){break a}i=O(l-h);if(!(i>=O(0))){break a}h=O(r-j);if(!(h>=O(0))){break a}i=O(i/O(i+h));L[f>>2]=O(1)-i;L[g>>2]=i;h=L[d>>2];k=L[e>>2];j=L[d+4>>2];s=L[e+4>>2];q=L[d+8>>2];L[a+8>>2]=q+O(i*O(L[e+8>>2]-q));L[a+4>>2]=j+O(i*O(s-j));L[a>>2]=h+O(i*O(k-h));return}h=O(O(1)/O(o+O(n+k)));i=O(k*h);L[f>>2]=i;h=O(o*h);L[g>>2]=h;j=L[c>>2];k=L[c+4>>2];L[a+8>>2]=O(s*h)+O(O(w*i)+L[c+8>>2]);L[a+4>>2]=O(u*h)+O(k+O(m*i));L[a>>2]=O(q*h)+O(j+O(p*i))}function mH(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=O(0),p=0;if((i7(b)|0)!=1){b=b>>>1|b;b=b>>>2|b;b=b>>>4|b;b=b>>>8|b;b=(b>>>16|b)+1|0}o=O(L[a+24>>2]*O(b>>>0));a:{if(o=O(0)){f=~~o>>>0;break a}f=0}l=H[a+16>>2];j=H[a+28>>2];d=b+f<<2;d=(0-d&12)+d|0;h=d+(f<<3)|0;if(h){c=H[33808]+12|0;e=Ra[H[H[c>>2]+8>>2]](c,h,20591,14239,372)|0}else{e=c}c=b<<2;i=S6(e,255,c);k=i+d|0;h=c+i|0;b:{if((j|0)==-1){if(!H[a+36>>2]){break b}m=b-1|0;d=0;while(1){j=d<<3;c=j+H[a+4>>2]|0;e=H[c+4>>2]<<16|J[c>>1];e=(e<<15^-1)+e|0;e=N(e>>>10^e,9);e=e>>>6^e;e=(e<<11^-1)+e|0;e=((m&(e>>>16^e))<<2)+i|0;H[(d<<2)+h>>2]=H[e>>2];H[e>>2]=d;e=H[c+4>>2];j=j+k|0;H[j>>2]=H[c>>2];H[j+4>>2]=e;d=d+1|0;if(d>>>0>2]){continue}break}break b}j=R6(h,H[a+8>>2],H[a+16>>2]<<2);c=H[a+20>>2];if(!c){break b}e=b-1|0;while(1){d=H[H[a+12>>2]+(m<<2)>>2];if((d|0)!=-1){while(1){p=d<<2;n=d<<3;c=n+H[a+4>>2]|0;g=H[c+4>>2]<<16|J[c>>1];g=(g<<15^-1)+g|0;g=N(g>>>10^g,9);g=g>>>6^g;g=(g<<11^-1)+g|0;g=((e&(g>>>16^g))<<2)+i|0;H[p+j>>2]=H[g>>2];H[g>>2]=d;d=k+n|0;n=H[c+4>>2];H[d>>2]=H[c>>2];H[d+4>>2]=n;d=H[p+H[a+8>>2]>>2];if((d|0)!=-1){continue}break}c=H[a+20>>2]}m=m+1|0;if(m>>>0>>0){continue}break}}d=H[a>>2];if(d){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,d)}H[a+20>>2]=b;H[a+12>>2]=i;H[a>>2]=i;H[a+8>>2]=h;H[a+16>>2]=f;H[a+4>>2]=k;b=f-1|0;c:{if(b>>>0<=l>>>0){break c}d=l;k=(d^-1)+f&7;if(k){i=0;c=l;while(1){d=c+1|0;H[(c<<2)+h>>2]=d;c=d;i=i+1|0;if((k|0)!=(i|0)){continue}break}}if((f-l|0)-2>>>0<7){break c}while(1){c=d+1|0;H[(d<<2)+h>>2]=c;f=(c<<2)+h|0;c=d+2|0;H[f>>2]=c;f=(c<<2)+h|0;c=d+3|0;H[f>>2]=c;f=(c<<2)+h|0;c=d+4|0;H[f>>2]=c;f=(c<<2)+h|0;c=d+5|0;H[f>>2]=c;f=(c<<2)+h|0;c=d+6|0;H[f>>2]=c;f=(c<<2)+h|0;c=d+7|0;H[f>>2]=c;d=d+8|0;H[(c<<2)+h>>2]=d;if((b|0)!=(d|0)){continue}break}}H[(b<<2)+h>>2]=H[a+28>>2];H[a+28>>2]=l}function yU(a,b,c,d,e,f){var g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=0,o=0,p=O(0),q=O(0),r=0,s=0,t=O(0),u=O(0),v=O(0);n=Oa-16|0;k=L[e+8>>2];l=L[e>>2];m=L[e+4>>2];g=O(P(O(O(L[d+8>>2]*k)+O(O(L[d>>2]*l)+O(m*L[d+4>>2])))));L[n+4>>2]=g;h=O(P(O(O(k*L[d+20>>2])+O(O(l*L[d+12>>2])+O(m*L[d+16>>2])))));L[n+8>>2]=h;i=O(P(O(O(k*L[d+32>>2])+O(O(l*L[d+24>>2])+O(m*L[d+28>>2])))));L[n+12>>2]=i;o=g(o?h:g);s=r?1:2;o=!(o|r);n=n+4|0;n=N(L[n+(s<<2)>>2]>2]?s:o,12)+d|0;g=L[n+8>>2];h=L[n>>2];j=L[n+4>>2];i=O(O(g*k)+O(O(l*h)+O(m*j)));g=O(g-O(k*i));h=O(h-O(l*i));i=O(j-O(i*m));j=O(W(O(O(g*g)+O(O(h*h)+O(i*i)))));if(j>O(0)){j=O(O(1)/j);g=O(g*j);i=O(i*j);h=O(h*j)}L[a+12>>2]=h;L[a+8>>2]=k;L[a+4>>2]=m;L[a>>2]=l;L[a+20>>2]=g;L[a+16>>2]=i;j=O(O(l*i)-O(h*m));L[a+32>>2]=j;p=O(O(k*h)-O(g*l));L[a+28>>2]=p;q=O(O(m*g)-O(i*k));L[a+24>>2]=q;t=L[e+8>>2];u=L[e+4>>2];v=L[e>>2];L[a+48>>2]=O(O(P(O(O(L[d+32>>2]*k)+O(O(L[d+24>>2]*l)+O(m*L[d+28>>2])))))*L[b+8>>2])+O(O(O(P(O(O(L[d+20>>2]*k)+O(O(L[d+12>>2]*l)+O(m*L[d+16>>2])))))*L[b+4>>2])+O(O(f*O(.5))+O(L[b>>2]*O(P(O(O(L[d+8>>2]*k)+O(O(L[d>>2]*l)+O(L[d+4>>2]*m))))))));L[a+52>>2]=O(O(P(O(O(L[d+32>>2]*g)+O(O(L[d+24>>2]*h)+O(i*L[d+28>>2])))))*L[b+8>>2])+O(O(O(P(O(O(L[d+20>>2]*g)+O(O(L[d+12>>2]*h)+O(i*L[d+16>>2])))))*L[b+4>>2])+O(O(O(O(O(t*g)+O(O(v*h)+O(i*u)))*f)*O(.5))+O(L[b>>2]*O(P(O(O(L[d+8>>2]*g)+O(O(L[d>>2]*h)+O(L[d+4>>2]*i))))))));L[a+56>>2]=O(O(P(O(O(L[d+32>>2]*j)+O(O(L[d+24>>2]*q)+O(p*L[d+28>>2])))))*L[b+8>>2])+O(O(O(P(O(O(L[d+20>>2]*j)+O(O(L[d+12>>2]*q)+O(p*L[d+16>>2])))))*L[b+4>>2])+O(O(O(O(O(t*j)+O(O(v*q)+O(p*u)))*f)*O(.5))+O(L[b>>2]*O(P(O(O(L[d+8>>2]*j)+O(O(L[d>>2]*q)+O(L[d+4>>2]*p))))))));k=L[e+4>>2];l=L[c>>2];m=L[e>>2];g=L[c+4>>2];L[a+44>>2]=O(O(L[e+8>>2]*f)*O(.5))+L[c+8>>2];L[a+40>>2]=g+O(O(k*f)*O(.5));L[a+36>>2]=l+O(O(m*f)*O(.5))}function CE(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;j=1;e=Oa-16|0;Oa=e;a:{c=H[a+76>>2];h=b<<1;d=h+2|0;f=d>>>0>>0?c:d;d=a- -64|0;g=H[d+16>>2];if(f>>>0<=g>>>0){break a}c=H[d+20>>2];i=(((f+c|0)-1>>>0)/(c>>>0)|0)-H[d+4>>2]|0;H[d+16>>2]=g+N(c,i);if(!i){break a}while(1){c=c<<3;if(c){g=H[33808]+12|0;c=Ra[H[H[g>>2]+8>>2]](g,c,20591,13653,84)|0}else{c=0}H[e+12>>2]=c;g=H[d+4>>2];b:{if(g>>>0>=(H[d+8>>2]&2147483647)>>>0){sE(d,e+12|0);break b}H[H[d>>2]+(g<<2)>>2]=c;H[d+4>>2]=g+1}l=l+1|0;if((i|0)==(l|0)){break a}c=H[d+20>>2];continue}}c=H[d+12>>2];if(f>>>0>c>>>0){while(1){i=H[d+20>>2];g=(c>>>0)/(i>>>0)|0;i=H[H[d>>2]+(g<<2)>>2]+(c-N(g,i)<<3)|0;H[i>>2]=-1;H[i+4>>2]=-1;c=c+1|0;if((f|0)!=(c|0)){continue}break}}H[d+12>>2]=f;Oa=e+16|0;e=H[a+448>>2];f=H[e>>2];c=h|1;d=H[e+20>>2];e=(c>>>0)/(d>>>0)|0;g=H[H[f+(e<<2)>>2]+(c-N(d,e)<<2)>>2];l=H[a+60>>2];o=(b>>>0)/(l>>>0)|0;i=H[H[a+40>>2]+(o<<2)>>2];e=0;k=(h>>>0)/(d>>>0)|0;f=H[H[f+(k<<2)>>2]+(h-N(d,k)<<2)>>2]>>>7|0;if((f|0)!=33554431){k=H[a+64>>2];e=H[a+84>>2];d=(h>>>0)/(e>>>0)|0;m=H[k+(d<<2)>>2]+(h-N(d,e)<<3)|0;j=H[a+16>>2]+N(f,24)|0;d=H[j>>2];H[m>>2]=d;if((d|0)!=-1){n=(d>>>0)/(e>>>0)|0;H[(H[k+(n<<2)>>2]+(d-N(e,n)<<3)|0)+4>>2]=h}H[j>>2]=h;H[m+4>>2]=-1;e=I[j+4|0];j=(e&4)>>>2|0;e=(e&34)!=0}c:{d:{e:{d=g>>>7|0;if((d|0)==(f|0)|(d|0)==33554431){c=e}else{k=H[a+64>>2];h=H[a+84>>2];f=(c>>>0)/(h>>>0)|0;m=H[k+(f<<2)>>2]+(c-N(f,h)<<3)|0;g=H[a+16>>2];n=g+N(d,24)|0;f=H[n>>2];H[m>>2]=f;if((f|0)!=-1){p=(f>>>0)/(h>>>0)|0;H[(H[k+(p<<2)>>2]+(f-N(h,p)<<3)|0)+4>>2]=c}H[n>>2]=c;H[m+4>>2]=-1;c=1;f:{if(e){break f}e=I[(g+N(d,24)|0)+4|0];if(e&2){break f}c=(e&32)>>>5|0}if(j){break e}j=0}if(c){break d}break c}if(!c){break c}j=(I[(g+N(d,24)|0)+4|0]&4)>>>2|0}c=b-N(l,o)|0;if(H[i+(c<<4)>>2]?j:0){break c}DE(a,b);a=i+(c<<4)|0;G[a+4>>1]=J[a+4>>1]|4}}function q1(a,b,c,d,e,f,g,h,i,j,k,l,m){var n=0,o=O(0),p=O(0),q=O(0),r=0,s=O(0),t=O(0),u=O(0),v=0,w=0,x=O(0),y=O(0),z=O(0),A=0,B=O(0),C=O(0),D=O(0),E=O(0),F=0,I=O(0),J=0;n=Oa-48|0;Oa=n;v=0;a:{if(!a){break a}A=g?H[g>>2]:A;F=j|k;I=O(O(L[c+8>>2]*L[e+8>>2])+O(O(L[c>>2]*L[e>>2])+O(L[c+4>>2]*L[e+4>>2])));B=O(2);g=-1;s=f;b:{c:{while(1){d:{v=w?(w|0)==(A|0)?0:w:A;r=N(v,36)+b|0;e:{if(o1(c,e,s,d,r,I)){break e}o=L[r+4>>2];t=O(L[r+16>>2]-o);p=L[r+8>>2];q=O(L[r+32>>2]-p);u=O(L[r+28>>2]-o);p=O(L[r+20>>2]-p);o=O(O(t*q)-O(u*p));x=L[r>>2];y=O(L[r+12>>2]-x);z=O(y*u);u=O(L[r+24>>2]-x);t=O(z-O(u*t));p=O(O(p*u)-O(q*y));if(!F&O(O(t*L[e+8>>2])+O(O(o*L[e>>2])+O(p*L[e+4>>2])))>O(0)){break e}q=O(W(O(O(t*t)+O(O(o*o)+O(p*p)))));if(q==O(0)){break e}q=O(O(1)/q);t=O(t*q);L[n+40>>2]=t;p=O(p*q);L[n+36>>2]=p;q=O(o*q);L[n+32>>2]=q;if(!p1(r,n+32|0,c,d,e,n+16|0,n+15|0,m)){break e}o=L[n+16>>2];if(o>f){break e}u=O(O(S(o>s?o:s,O(1)))*O(.0010000000474974513));J=o>2];y=L[e>>2];z=L[e+4>>2];u=O(-O(P(O(O(t*x)+O(O(q*y)+O(p*z))))));if(!(J|r&u>2]=-x;L[i+4>>2]=-z;L[i>>2]=-y;G[h+12>>1]=1026;H[h+8>>2]=v;d=L[e>>2];f=L[e+4>>2];s=L[e+8>>2];H[h+40>>2]=0;L[h+36>>2]=-s;L[h+32>>2]=-f;L[h+28>>2]=-d;v=1;break a}g=v;s=o;E=t;D=p;C=q}if((g|0)!=-1){r1(n+32|0,n+16|0,c,e,s,N(g,36)+b|0);if(!(!(O(O(E*L[e+8>>2])+O(O(C*L[e>>2])+O(D*L[e+4>>2])))>O(0))|(j|!k))){L[n+24>>2]=-L[n+24>>2];L[n+20>>2]=-L[n+20>>2];L[n+16>>2]=-L[n+16>>2]}L[h+16>>2]=L[n+32>>2];L[h+20>>2]=L[n+36>>2];L[h+24>>2]=L[n+40>>2];L[h+28>>2]=L[n+16>>2];L[h+32>>2]=L[n+20>>2];d=L[n+24>>2];L[h+40>>2]=s;L[h+36>>2]=d;G[h+12>>1]=3;H[h+8>>2]=g;L[i+8>>2]=E;L[i+4>>2]=D;L[i>>2]=C}v=(g|0)!=-1}Oa=n+48|0;return v}function uR(a,b,c,d){var e=0,f=0,g=O(0),h=O(0),i=0,j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=0;f=Oa-48|0;Oa=f;G[a+44>>1]=J[a+44>>1]+1;a:{if(!d_(a+16|0,a+28|0,b,c,d)){break a}h=L[a+40>>2];j=L[d>>2];k=L[d+4>>2];l=L[d+8>>2];m=L[c>>2];n=L[b>>2];o=L[c+4>>2];p=L[b+4>>2];q=L[b+8>>2];r=L[c+8>>2];L[f+40>>2]=O(q+r)*O(.5);L[f+36>>2]=O(p+o)*O(.5);L[f+32>>2]=O(n+m)*O(.5);L[f+24>>2]=O(r+l)*O(.5);L[f+20>>2]=O(o+k)*O(.5);L[f+16>>2]=O(m+j)*O(.5);L[f+8>>2]=O(q+l)*O(.5);L[f+4>>2]=O(p+k)*O(.5);L[f>>2]=O(n+j)*O(.5);b:{c:{d:{e:{f:{g:{h:{i:{g=O(r-l);s=O(g*g);g=O(m-j);t=O(g*g);g=O(o-k);e=(h>2];b=H[c+4>>2];d=b;i=b+2|0;e=H[c+8>>2]&2147483647;j:{if(i>>>0<=e>>>0){break j}d=b;u=e;e=e?e<<1:2;e=e>>>0>i>>>0?e:i;if(u>>>0>=e>>>0){break j}tR(c,e);d=H[c+4>>2]}H[c+4>>2]=b+1;b=H[c>>2]+N(d,36)|0;L[b+24>>2]=j;L[b+12>>2]=m;L[b+8>>2]=q;L[b+4>>2]=p;L[b>>2]=n;L[b+32>>2]=l;L[b+28>>2]=k;L[b+20>>2]=r;L[b+16>>2]=o;c=a+4|0;b=H[a+12>>2];d=H[b+4>>2];k:{if(d>>>0>=(H[b+8>>2]&2147483647)>>>0){qm(b,c);break k}H[H[b>>2]+(d<<2)>>2]=H[c>>2];H[b+4>>2]=H[b+4>>2]+1}H[a>>2]=H[a>>2]+1;break a}e=b;b=f+32|0;uR(a,e,b,d);uR(a,b,c,d);break a}e=c;c=f+16|0;uR(a,b,e,c);uR(a,b,c,d);break a}i=f+32|0;e=f+16|0;uR(a,b,i,e);uR(a,b,e,d);uR(a,i,c,e);break a}uR(a,b,c,f);uR(a,c,d,f);break a}e=b;b=f+32|0;uR(a,e,b,f);uR(a,b,c,f);uR(a,f,c,d);break a}e=c;c=f+16|0;uR(a,b,e,c);uR(a,b,c,f);uR(a,f,c,d);break a}e=b;b=f+32|0;uR(a,e,b,f);e=c;c=f+16|0;uR(a,b,e,c);uR(a,f,c,d);uR(a,b,c,f)}Oa=f+48|0}function m2(a,b,c,d,e,f,g){var h=O(0),i=O(0),j=0,k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=0,t=O(0),u=O(0),v=O(0),w=0,x=0;j=Oa-32|0;Oa=j;h=O(O(f*O(0))+e);l=T5(h);i=O(O(d*O(0))+c);m=T5(i);h=Z5(h);i=Z5(i);u=L[b+20>>2];v=L[b+16>>2];p=L[b+8>>2];n=O(m*O(0));o=O(O(O(O(n+O(0))-i)+O(0))+O(O(m+O(O(i*O(0))+O(0)))*O(0)));o=O(o+o);q=L[b>>2];k=O(h*O(-0));t=O(i*O(-0));r=O(l*O(0));k=O(O(O(n+O(O(l*i)+k))*O(0))+O(O(t+O(O(m*l)+k))+O(O(O(r-h)+O(0))*O(0))));k=O(k+k);h=O(O(O(n+O(O(h*i)+r))*O(0))+O(O(t+O(O(m*h)+r))+O(O(O(l+O(h*O(0)))+O(0))*O(0))));i=O(h+h);l=L[b+4>>2];m=O(O(p*o)+O(O(q*k)+O(i*l)));h=L[b+12>>2];n=O(O(h*h)+O(-.5));L[j+8>>2]=O(O(p*m)+O(O(o*n)+O(h*O(O(q*i)-O(k*l)))))+L[b+24>>2];L[j+4>>2]=u+O(O(l*m)+O(O(i*n)+O(h*O(O(p*k)-O(o*q)))));L[j>>2]=v+O(O(q*m)+O(O(k*n)+O(h*O(O(l*o)-O(i*p)))));w=b+16|0;Ra[H[H[a>>2]+28>>2]](a,w,j,g);L[j+24>>2]=L[j+8>>2];s=H[j+4>>2];H[j+16>>2]=H[j>>2];H[j+20>>2]=s;s=1;while(1){h=O(O(s>>>0)/O(7));i=O(O(1)-h);p=O(O(h*f)+O(i*e));l=T5(p);i=O(O(h*d)+O(i*c));m=T5(i);h=Z5(p);i=Z5(i);u=L[b+16>>2];v=L[b+20>>2];p=L[b+8>>2];n=O(m*O(0));o=O(O(O(O(n+O(0))-i)+O(0))+O(O(m+O(O(i*O(0))+O(0)))*O(0)));o=O(o+o);q=L[b>>2];k=O(h*O(-0));t=O(i*O(-0));r=O(l*O(0));k=O(O(O(n+O(O(l*i)+k))*O(0))+O(O(t+O(O(m*l)+k))+O(O(O(r-h)+O(0))*O(0))));k=O(k+k);h=O(O(O(n+O(O(h*i)+r))*O(0))+O(O(t+O(O(m*h)+r))+O(O(O(l+O(h*O(0)))+O(0))*O(0))));i=O(h+h);l=L[b+4>>2];m=O(O(p*o)+O(O(q*k)+O(i*l)));h=L[b+12>>2];n=O(O(h*h)+O(-.5));L[j+8>>2]=O(O(p*m)+O(O(o*n)+O(h*O(O(q*i)-O(k*l)))))+L[b+24>>2];L[j+4>>2]=v+O(O(l*m)+O(O(i*n)+O(h*O(O(p*k)-O(o*q)))));L[j>>2]=u+O(O(q*m)+O(O(k*n)+O(h*O(O(l*o)-O(i*p)))));Ra[H[H[a>>2]+28>>2]](a,w,j,g);Ra[H[H[a>>2]+28>>2]](a,j+16|0,j,g);L[j+16>>2]=L[j>>2];x=H[j+8>>2];H[j+20>>2]=H[j+4>>2];H[j+24>>2]=x;s=s+1|0;if((s|0)!=8){continue}break}Oa=j+32|0}function HO(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;j=Oa-16|0;Oa=j;b=H[b+32>>2];if(b){while(1){H[j+12>>2]=b;g=H[c+264>>2];a:{if(g>>>0>=(H[c+268>>2]&2147483647)>>>0){f=H[c+268>>2]&2147483647;k=f?f<<1:1;g=0;b:{if(!k){break b}h=k<<2;if(!(I[c+256|0]|h>>>0>256)){F[c+256|0]=1;g=c;break b}g=0;if(!h){break b}f=H[33808];g=f+12|0;g=(n=g,o=h,p=Ra[H[H[f>>2]+20>>2]](f)|0?50824:55639,q=13582,r=553,m=H[H[g>>2]+8>>2],Ra[m](n|0,o|0,p|0,q|0,r|0)|0)}i=H[c+264>>2];h=g+(i<<2)|0;if((i|0)>0){l=H[c+260>>2];f=g;while(1){H[f>>2]=H[l>>2];l=l+4|0;f=f+4|0;if(h>>>0>f>>>0){continue}break}}H[h>>2]=H[j+12>>2];c:{if(H[c+268>>2]<0){break c}h=H[c+260>>2];if((h|0)==(c|0)){F[c+256|0]=0;break c}if(!h){break c}f=H[33808]+12|0;Ra[H[H[f>>2]+12>>2]](f,h);i=H[c+264>>2]}H[c+268>>2]=k;H[c+260>>2]=g;H[c+264>>2]=i+1;break a}H[H[c+260>>2]+(g<<2)>>2]=b;H[c+264>>2]=g+1}g=H[H[j+12>>2]+28>>2];H[j+8>>2]=g;f=H[d+264>>2];d:{if(f>>>0>=(H[d+268>>2]&2147483647)>>>0){f=H[d+268>>2]&2147483647;k=f?f<<1:1;g=0;e:{if(!k){break e}h=k<<2;if(!(I[d+256|0]|h>>>0>256)){F[d+256|0]=1;g=d;break e}g=0;if(!h){break e}f=H[33808];g=f+12|0;g=(r=g,q=h,p=Ra[H[H[f>>2]+20>>2]](f)|0?52434:55639,o=13582,n=553,m=H[H[g>>2]+8>>2],Ra[m](r|0,q|0,p|0,o|0,n|0)|0)}i=H[d+264>>2];h=g+(i<<2)|0;if((i|0)>0){l=H[d+260>>2];f=g;while(1){H[f>>2]=H[l>>2];l=l+4|0;f=f+4|0;if(h>>>0>f>>>0){continue}break}}H[h>>2]=H[j+8>>2];f:{if(H[d+268>>2]<0){break f}h=H[d+260>>2];if((h|0)==(d|0)){F[d+256|0]=0;break f}if(!h){break f}f=H[33808]+12|0;Ra[H[H[f>>2]+12>>2]](f,h);i=H[d+264>>2]}H[d+268>>2]=k;H[d+260>>2]=g;H[d+264>>2]=i+1;break d}H[H[d+260>>2]+(f<<2)>>2]=g;H[d+264>>2]=f+1}b=H[b>>2];if(b){continue}break}}if(H[c+264>>2]){b=0;while(1){IO(a,H[H[c+260>>2]+(b<<2)>>2],e);b=b+1|0;if(b>>>0>2]){continue}break}}Oa=j+16|0}function J0(a,b,c,d,e,f){var g=0,h=O(0),i=O(0),j=0,k=O(0),l=0,m=0,n=O(0),o=0,p=O(0),q=O(0),r=0,s=0,t=0,u=O(0),v=O(0),w=O(0),x=0,y=O(0),z=O(0),A=O(0);g=Oa-80|0;Oa=g;H[g+64>>2]=2139095039;H[g+24>>2]=0;H[g+28>>2]=0;H[g+16>>2]=0;H[g+20>>2]=1065353216;l=0;a:{if(!K0(a,b,c,d,g- -64|0,g+16|0)){break a}b:{l=H[b+16>>2];if(l){u=O(L[a+68>>2]-L[a+52>>2]);y=O(-u);v=O(L[a+72>>2]-L[a+56>>2]);z=O(-v);w=O(L[a+64>>2]-L[a+48>>2]);A=O(-w);while(1){t=H[b+24>>2]+N(s,20)|0;r=I[t+18|0];if(r){x=H[b+32>>2]+J[t+16>>1]|0;j=r-1|0;l=0;while(1){m=H[c+40>>2];o=H[b+28>>2];j=o+N(I[j+x|0],12)|0;o=o+N(I[l+x|0],12)|0;k=O(L[j+8>>2]-L[o+8>>2]);h=O(L[j>>2]-L[o>>2]);i=O(L[j+4>>2]-L[o+4>>2]);p=O(O(L[m+24>>2]*k)+O(O(L[m+16>>2]*h)+O(i*L[m+20>>2])));q=O(O(L[m+8>>2]*k)+O(O(L[m>>2]*h)+O(i*L[m+4>>2])));n=O(O(w*p)+O(q*y));h=O(O(L[m+40>>2]*k)+O(O(L[m+32>>2]*h)+O(i*L[m+36>>2])));k=O(O(u*h)+O(p*z));h=O(O(v*q)+O(h*A));i=O(O(n*n)+O(O(k*k)+O(h*h)));if(!(i>2]=0;i=O(O(1)/O(W(i)));L[g+8>>2]=n*i;L[g+4>>2]=h*i;L[g>>2]=k*i;Ra[H[H[c>>2]+12>>2]](c,g,g+48|0,g+32|0);h=L[g+8>>2];i=L[g>>2];n=L[g+4>>2];k=O(O(L[a+72>>2]*h)+O(O(L[a+64>>2]*i)+O(n*L[a+68>>2])));h=O(O(L[a+56>>2]*h)+O(O(L[a+48>>2]*i)+O(L[a+52>>2]*n)));j=k>2];q=O((j?k:h)-p);i=L[g+32>>2];n=L[d>>2];if(q>O(i+n)|L[g+48>>2]>O(n+O(p+(j?h:k)))){break b}k=O(i-q);if(k>2]){L[g+64>>2]=k;j=H[g+4>>2];H[g+16>>2]=H[g>>2];H[g+20>>2]=j;j=H[g+12>>2];H[g+24>>2]=H[g+8>>2];H[g+28>>2]=j}r=I[t+18|0]}j=l;l=j+1|0;if(r>>>0>l>>>0){continue}break}l=H[b+16>>2]}s=s+1|0;if(s>>>0>>0){continue}break}}a=H[g+20>>2];H[f>>2]=H[g+16>>2];H[f+4>>2]=a;a=H[g+28>>2];H[f+8>>2]=H[g+24>>2];H[f+12>>2]=a;a=H[g+68>>2];H[e>>2]=H[g+64>>2];H[e+4>>2]=a;a=H[g+76>>2];H[e+8>>2]=H[g+72>>2];H[e+12>>2]=a;l=1;break a}l=0}Oa=g+80|0;return l}function h1(a,b,c,d,e){var f=0,g=O(0),h=0,i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=0,r=O(0),s=0,t=0,u=0,v=O(0),w=O(0),x=O(0),y=O(0),z=0,A=0,B=O(0),C=O(0),D=0,E=0,G=O(0);F[a+63|0]=0;z=I[a+62|0];if(z){while(1){s=N(I[(a+A|0)+56|0],400)+a|0;u=H[s+448>>2];F[a+63|0]=u+h;g=L[s+104>>2];i=L[s+100>>2];j=L[s+96>>2];a:{if(u>>>0<2){break a}h=1;f=u-1|0;D=f&1;if((u|0)!=2){E=f&-2;q=0;while(1){f=(h<<6)+s|0;g=O(O(g+L[f+104>>2])+L[f+168>>2]);i=O(O(i+L[f+100>>2])+L[f+164>>2]);j=O(O(j+L[f+96>>2])+L[f+160>>2]);h=h+2|0;q=q+2|0;if((E|0)!=(q|0)){continue}break}}if(!D){break a}f=(h<<6)+s|0;g=O(g+L[f+104>>2]);i=O(i+L[f+100>>2]);j=O(j+L[f+96>>2])}b:{if(!u){f=t;break b}if(t>>>0>=64){f=t;break b}l=L[d+8>>2];m=L[d>>2];n=L[d+4>>2];r=O(O(l*g)+O(O(m*j)+O(i*n)));k=L[d+12>>2];v=O(O(k*k)+O(-.5));o=O(O(l*r)+O(O(k*O(O(m*i)-O(j*n)))+O(g*v)));o=O(o+o);p=O(O(m*r)+O(O(k*O(O(n*g)-O(i*l)))+O(j*v)));p=O(p+p);g=O(O(n*r)+O(O(k*O(O(l*j)-O(g*m)))+O(i*v)));i=O(g+g);g=O(O(1)/O(W(O(O(o*o)+O(O(p*p)+O(i*i))))));v=O(o*g);o=O(i*g);p=O(p*g);q=0;while(1){c:{h=(q<<6)+s|0;i=L[h+72>>2];j=L[h- -64>>2];k=L[h+68>>2];w=L[h+108>>2];G=L[c+16>>2];y=L[c+20>>2];x=L[c+24>>2];g=L[c+12>>2];l=L[c+8>>2];m=L[c>>2];n=L[c+4>>2];r=L[e>>2];f=(t<<6)+b|0;H[f+28>>2]=0;L[f+8>>2]=v;L[f+4>>2]=o;L[f>>2]=p;L[f+12>>2]=w-r;B=x;w=O(O(g*g)+O(-.5));x=O(O(l*i)+O(O(m*j)+O(n*k)));C=O(O(O(g*O(O(m*k)-O(j*n)))+O(i*w))+O(l*x));L[f+24>>2]=O(B+O(C+C))-O(v*r);B=y;y=O(O(n*x)+O(O(w*k)+O(g*O(O(l*j)-O(i*m)))));L[f+20>>2]=O(B+O(y+y))-O(o*r);g=O(O(m*x)+O(O(w*j)+O(g*O(O(n*i)-O(k*l)))));L[f+16>>2]=O(G+O(g+g))-O(p*r);H[f+52>>2]=H[h+112>>2];f=t+1|0;q=q+1|0;if(u>>>0<=q>>>0){break c}h=t>>>0<63;t=f;if(h){continue}}break}z=I[a+62|0]}A=A+1|0;if(A>>>0>>0){h=I[a+63|0];t=f;continue}break}h=f}H[b+4096>>2]=h;return(h|0)!=0}function zw(a,b){var c=0,d=0,e=O(0),f=O(0),g=0,h=O(0),i=O(0),j=0,k=O(0),l=0,m=O(0),n=O(0),o=O(0),p=0,q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=0,w=0,x=0,y=0,z=0,A=0;v=H[b+24>>2];d=H[b+4>>2];c=H[b>>2];w=H[a+336>>2];b=I[H[a+364>>2]];x=H[a+340>>2];y=H[a+332>>2];g=H[y+16>>2];L[x+144>>2]=L[g+76>>2];a:{if(b&1){H[c>>2]=0;H[c+4>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;H[d>>2]=0;H[d+4>>2]=0;H[d+8>>2]=0;H[d+12>>2]=0;H[d+16>>2]=0;H[d+20>>2]=0;H[d+24>>2]=0;H[d+28>>2]=0;f=L[c+8>>2];h=L[c+4>>2];i=L[c>>2];break a}e=L[g+72>>2];f=L[g+88>>2];i=L[g+80>>2];d=H[g+68>>2];b=H[g+64>>2];h=L[g+84>>2];L[c+4>>2]=h;L[c+8>>2]=f;H[c+12>>2]=0;H[c+16>>2]=b;H[c+20>>2]=d;H[c+28>>2]=0;L[c+24>>2]=e;L[c>>2]=i}H[a+12>>2]=0;L[a+8>>2]=f;L[a+4>>2]=h;L[a>>2]=i;L[a+16>>2]=L[c+16>>2];L[a+20>>2]=L[c+20>>2];e=L[c+24>>2];H[a+28>>2]=0;L[a+24>>2]=e;j=1;if(w>>>0>1){A=H[a+344>>2];while(1){d=N(j,160)+x|0;z=j<<5;b=z+y|0;L[d+144>>2]=L[H[b+16>>2]+76>>2];f=L[d+124>>2];b=c+(H[b+24>>2]<<5)|0;m=L[b>>2];e=L[d+120>>2];n=L[b+4>>2];t=O(O(O(f*m)-O(e*n))+L[b+24>>2]);o=L[b+8>>2];h=O(e*o);e=L[d+128>>2];u=O(O(h-O(e*m))+L[b+20>>2]);e=O(O(O(e*n)-O(f*o))+L[b+16>>2]);if(v){i=O(0);b=N(j,80)+A|0;g=I[b+76|0];b:{if(!g){h=O(0);q=O(0);r=O(0);s=O(0);f=O(0);break b}d=(H[b+72>>2]<<2)+v|0;b=H[a+272>>2];p=0;f=O(0);s=O(0);r=O(0);q=O(0);h=O(0);while(1){k=L[(p<<2)+d>>2];l=(N(j,76)+b|0)+N(p,24)|0;s=O(s+O(k*L[l+12>>2]));r=O(r+O(k*L[l+8>>2]));q=O(q+O(k*L[l+4>>2]));h=O(h+O(k*L[l>>2]));i=O(i+O(k*L[l+20>>2]));f=O(f+O(k*L[l+16>>2]));p=p+1|0;if((g|0)!=(p|0)){continue}break}}t=O(t+i);u=O(u+f);o=O(o+r);n=O(n+q);m=O(m+h);e=O(e+s)}b=c+z|0;H[b+28>>2]=0;L[b+16>>2]=e;H[b+12>>2]=0;L[b+8>>2]=o;L[b+4>>2]=n;L[b>>2]=m;L[b+24>>2]=t;L[b+20>>2]=u;j=j+1|0;if((w|0)!=(j|0)){continue}break}}}function d0(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o){var p=0,q=O(0),r=0,s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=0,y=O(0),z=0,A=O(0),B=O(0),C=0;p=Oa-160|0;Oa=p;r=p+88|0;R0(b,h,r);F[p+60|0]=h;H[p+56>>2]=b+96;H[p+52>>2]=b+48;H[p+48>>2]=e;H[p+64>>2]=b;H[p+16>>2]=h?125820:125868;H[p+12>>2]=0;b=p+16|0;h=Oa-48|0;Oa=h;x=p+12|0;C=H[x>>2];z=H[j+12>>2];H[h+40>>2]=H[j+8>>2];H[h+44>>2]=z;z=H[j+4>>2];H[h+32>>2]=H[j>>2];H[h+36>>2]=z;a:{b:{c:{if(n){if(!J0(a,r,b,m,h+16|0,h+32|0)){break b}L0(a,r,b,c,f,x,m,h+32|0);if(H[x>>2]-C>>>0>1){break c}k=H[r+24>>2];H[h+12>>2]=0;L[h+8>>2]=-L[h+40>>2];L[h+4>>2]=-L[h+36>>2];L[h>>2]=-L[h+32>>2];I0(a,r,k+N(E0(r,b,h),20)|0,b,c,f,x,m,h+32|0);break c}L0(a,r,b,c,f,x,m,h+32|0);if(H[x>>2]-C>>>0>1){break c}H[h+28>>2]=0;L[h+24>>2]=-L[h+40>>2];L[h+20>>2]=-L[h+36>>2];L[h+16>>2]=-L[h+32>>2];q=O(o*O(.05000000074505806));o=O(o*O(.009999999776482582));l=lq?q:l);I0(a,r,H[r+24>>2]+N(k,20)|0,b,c,f,x,m,h+32|0)}b=H[h+36>>2];H[j>>2]=H[h+32>>2];H[j+4>>2]=b;b=H[h+44>>2];H[j+8>>2]=H[h+40>>2];H[j+12>>2]=b;b=1;break a}b=0}Oa=h+48|0;d:{if(!b){break d}c=H[p+12>>2];e:{if(c){b1(i,f,c);l=L[e+12>>2];o=O(O(l*l)+O(-.5));q=L[e+8>>2];s=L[j+8>>2];t=L[e>>2];u=L[j>>2];v=L[e+4>>2];w=L[j+4>>2];y=O(O(q*s)+O(O(t*u)+O(v*w)));A=O(O(O(l*O(O(t*w)-O(u*v)))+O(o*s))+O(q*y));B=O(O(v*y)+O(O(o*w)+O(l*O(O(q*u)-O(s*t)))));l=O(O(t*y)+O(O(u*o)+O(l*O(O(v*s)-O(w*q)))));break e}if(n){break d}l=L[e+12>>2];o=O(O(l*l)+O(-.5));q=L[e+8>>2];s=L[j+8>>2];t=L[e>>2];u=L[j>>2];v=L[e+4>>2];w=L[j+4>>2];y=O(O(q*s)+O(O(t*u)+O(v*w)));A=O(O(O(l*O(O(t*w)-O(u*v)))+O(o*s))+O(q*y));B=O(O(v*y)+O(O(o*w)+O(l*O(O(q*u)-O(s*t)))));l=O(O(t*y)+O(O(u*o)+O(l*O(O(v*s)-O(w*q)))))}H[j+12>>2]=0;L[j+8>>2]=A+A;L[j+4>>2]=B+B;L[j>>2]=l+l;Y0(i,g,j,j,d,a+80|0,m)}Oa=p+160|0;return b}function OQ(a,b,c,d,e,f,g,h,i){var j=0,k=0,l=0,m=O(0);j=Oa-32|0;Oa=j;G[b>>1]=f;l=b+i|0;G[l+2>>1]=h;F[l|0]=3;h=l+4|0;a:{if(!(c&8192)){b=h;break a}F[h|0]=1;b=h+52|0;if(!f){G[a+10>>1]=J[a+10>>1]|8;break a}k=H[d+44>>2];b:{if(I[k+9|0]){L[h+4>>2]=L[k+80>>2];L[h+8>>2]=L[k+84>>2];L[h+12>>2]=L[k+88>>2];L[h+28>>2]=L[k+96>>2];L[h+32>>2]=L[k+100>>2];m=L[k+104>>2];break b}H[h+28>>2]=0;H[h+32>>2]=0;H[h+12>>2]=0;H[h+4>>2]=0;H[h+8>>2]=0;m=O(0)}L[h+36>>2]=m;k=H[e+44>>2];if(I[k+9|0]){L[h+16>>2]=L[k+80>>2];L[h+20>>2]=L[k+84>>2];L[h+24>>2]=L[k+88>>2];L[h+40>>2]=L[k+96>>2];L[h+44>>2]=L[k+100>>2];L[h+48>>2]=L[k+104>>2];break a}H[h+48>>2]=0;H[h+40>>2]=0;H[h+44>>2]=0;H[h+24>>2]=0;H[h+16>>2]=0;H[h+20>>2]=0}if(c&4096){F[b|0]=0;c:{d:{e:{f:{h=H[d+44>>2];g:{if(I[h+9|0]){if(!f){L[b+4>>2]=L[h+80>>2];L[b+8>>2]=L[h+84>>2];L[b+12>>2]=L[h+88>>2];L[b+28>>2]=L[h+96>>2];L[b+32>>2]=L[h+100>>2];L[b+36>>2]=L[h+104>>2];h=H[e+44>>2];if(I[h+9|0]){break d}break g}AN(j,d- -64|0);L[b+4>>2]=L[j>>2];L[b+8>>2]=L[j+4>>2];L[b+12>>2]=L[j+8>>2];L[b+28>>2]=L[j+16>>2];L[b+32>>2]=L[j+20>>2];L[b+36>>2]=L[j+24>>2];h=H[e+44>>2];if(!I[h+9|0]){break g}if(I[b|0]!=1){break e}break d}H[b+36>>2]=0;H[b+28>>2]=0;H[b+32>>2]=0;H[b+12>>2]=0;H[b+4>>2]=0;H[b+8>>2]=0;h=H[e+44>>2];if(I[h+9|0]){break f}}H[b+48>>2]=0;H[b+40>>2]=0;H[b+44>>2]=0;H[b+24>>2]=0;H[b+16>>2]=0;H[b+20>>2]=0;break c}if(!f){break d}}AN(j,e- -64|0);L[b+16>>2]=L[j>>2];L[b+20>>2]=L[j+4>>2];L[b+24>>2]=L[j+8>>2];L[b+40>>2]=L[j+16>>2];L[b+44>>2]=L[j+20>>2];L[b+48>>2]=L[j+24>>2];break c}L[b+16>>2]=L[h+80>>2];L[b+20>>2]=L[h+84>>2];L[b+24>>2]=L[h+88>>2];L[b+40>>2]=L[h+96>>2];L[b+44>>2]=L[h+100>>2];L[b+48>>2]=L[h+104>>2]}b=b+52|0}if(c&16384){F[b|0]=2;c=(f|0)!=0;PQ(b,0,d,c,g);PQ(b,1,e,c,g);b=b+60|0}G[a+8>>1]=(i-l|0)+b;Oa=j+32|0}function sx(a,b,c,d,e,f,g,h,i,j,k,l){var m=O(0),n=0,o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=0,B=O(0),C=O(0),D=O(0),E=O(0),F=O(0),G=O(0),I=O(0);n=Oa-32|0;Oa=n;A=J[b+8>>1];a:{if((A|0)==65535){o=L[c>>2];r=L[c+4>>2];m=L[c+8>>2];s=L[e>>2];t=L[H[b+4>>2]+12>>2];H[d+12>>2]=0;p=m;m=O(t*s);s=O(p*m);L[d+8>>2]=s;r=O(r*m);L[d+4>>2]=r;t=O(o*m);L[d>>2]=t;o=L[c+20>>2];u=L[c+24>>2];v=L[c+16>>2];m=L[f>>2];H[d+28>>2]=0;u=O(u*m);L[d+24>>2]=u;y=O(o*m);L[d+20>>2]=y;v=O(v*m);L[d+16>>2]=v;break a}b=H[b>>2];s=L[c+20>>2];r=L[c+24>>2];t=L[c>>2];u=L[c+4>>2];m=L[e>>2];y=L[c+8>>2];v=L[c+16>>2];o=L[f>>2];H[n+28>>2]=0;L[n+24>>2]=r*o;L[n+20>>2]=s*o;H[n+12>>2]=0;L[n+16>>2]=v*o;L[n+8>>2]=y*m;L[n+4>>2]=u*m;L[n>>2]=t*m;Ra[H[H[b>>2]+108>>2]](b,A,l,n,d);u=L[d+24>>2];y=L[d+20>>2];v=L[d+16>>2];s=L[d+8>>2];r=L[d+4>>2];t=L[d>>2]}B=L[c+24>>2];C=L[c+20>>2];D=L[c+16>>2];E=L[c+8>>2];F=L[c+4>>2];G=L[c>>2];c=J[g+8>>1];b:{if((c|0)==65535){w=L[h>>2];x=L[h+4>>2];m=L[h+8>>2];o=L[j>>2];q=L[H[g+4>>2]+12>>2];H[i+12>>2]=0;p=m;m=O(q*o);o=O(p*m);L[i+8>>2]=o;x=O(x*m);L[i+4>>2]=x;w=O(w*m);L[i>>2]=w;p=L[h+20>>2];q=L[h+24>>2];z=L[h+16>>2];m=L[k>>2];H[i+28>>2]=0;q=O(q*m);L[i+24>>2]=q;p=O(p*m);L[i+20>>2]=p;m=O(z*m);L[i+16>>2]=m;break b}b=H[g>>2];x=L[h+20>>2];w=L[h+24>>2];q=L[h>>2];p=L[h+4>>2];m=L[j>>2];z=L[h+8>>2];I=L[h+16>>2];o=L[k>>2];H[n+28>>2]=0;L[n+24>>2]=w*o;L[n+20>>2]=x*o;H[n+12>>2]=0;L[n+16>>2]=I*o;L[n+8>>2]=z*m;L[n+4>>2]=p*m;L[n>>2]=q*m;Ra[H[H[b>>2]+108>>2]](b,c,l,n,i);q=L[i+24>>2];p=L[i+20>>2];m=L[i+16>>2];o=L[i+8>>2];x=L[i+4>>2];w=L[i>>2]}L[a>>2]=O(O(O(O(G*t)+O(D*v))+O(O(L[h>>2]*w)+O(L[h+16>>2]*m)))+O(O(O(F*r)+O(C*y))+O(O(L[h+4>>2]*x)+O(L[h+20>>2]*p))))+O(O(O(E*s)+O(B*u))+O(O(L[h+8>>2]*o)+O(L[h+24>>2]*q)));Oa=n+32|0}function pA(a,b,c,d,e,f,g,h,i,j,k){var l=O(0),m=0,n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=0,A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),F=O(0),G=O(0);m=Oa-32|0;Oa=m;z=J[b+12>>1];a:{if((z|0)==65535){n=L[c>>2];q=L[c+4>>2];l=L[c+8>>2];r=L[e>>2];s=L[H[b+8>>2]+32>>2];H[d+12>>2]=0;o=l;l=O(s*r);r=O(o*l);L[d+8>>2]=r;q=O(q*l);L[d+4>>2]=q;s=O(n*l);L[d>>2]=s;n=L[c+20>>2];t=L[c+24>>2];u=L[c+16>>2];l=L[f>>2];H[d+28>>2]=0;t=O(t*l);L[d+24>>2]=t;x=O(n*l);L[d+20>>2]=x;u=O(u*l);L[d+16>>2]=u;break a}b=H[b>>2];r=L[c+20>>2];q=L[c+24>>2];s=L[c>>2];t=L[c+4>>2];l=L[e>>2];x=L[c+8>>2];u=L[c+16>>2];n=L[f>>2];H[m+28>>2]=0;L[m+24>>2]=q*n;L[m+20>>2]=r*n;H[m+12>>2]=0;L[m+16>>2]=u*n;L[m+8>>2]=x*l;L[m+4>>2]=t*l;L[m>>2]=s*l;Ra[H[H[b>>2]+108>>2]](b,z,0,m,d);t=L[d+24>>2];x=L[d+20>>2];u=L[d+16>>2];r=L[d+8>>2];q=L[d+4>>2];s=L[d>>2]}A=L[c+24>>2];B=L[c+20>>2];C=L[c+16>>2];D=L[c+8>>2];E=L[c+4>>2];F=L[c>>2];c=J[g+12>>1];b:{if((c|0)==65535){v=L[h>>2];w=L[h+4>>2];l=L[h+8>>2];n=L[j>>2];p=L[H[g+8>>2]+32>>2];H[i+12>>2]=0;o=l;l=O(p*n);n=O(o*l);L[i+8>>2]=n;w=O(w*l);L[i+4>>2]=w;v=O(v*l);L[i>>2]=v;o=L[h+20>>2];p=L[h+24>>2];y=L[h+16>>2];l=L[k>>2];H[i+28>>2]=0;p=O(p*l);L[i+24>>2]=p;o=O(o*l);L[i+20>>2]=o;l=O(y*l);L[i+16>>2]=l;break b}b=H[g>>2];w=L[h+20>>2];v=L[h+24>>2];p=L[h>>2];o=L[h+4>>2];l=L[j>>2];y=L[h+8>>2];G=L[h+16>>2];n=L[k>>2];H[m+28>>2]=0;L[m+24>>2]=v*n;L[m+20>>2]=w*n;H[m+12>>2]=0;L[m+16>>2]=G*n;L[m+8>>2]=y*l;L[m+4>>2]=o*l;L[m>>2]=p*l;Ra[H[H[b>>2]+108>>2]](b,c,0,m,i);p=L[i+24>>2];o=L[i+20>>2];l=L[i+16>>2];n=L[i+8>>2];w=L[i+4>>2];v=L[i>>2]}L[a>>2]=O(O(O(O(F*s)+O(C*u))+O(O(L[h>>2]*v)+O(L[h+16>>2]*l)))+O(O(O(E*q)+O(B*x))+O(O(L[h+4>>2]*w)+O(L[h+20>>2]*o))))+O(O(O(D*r)+O(A*t))+O(O(L[h+8>>2]*n)+O(L[h+24>>2]*p)));Oa=m+32|0}function aI(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;g=Oa-16|0;Oa=g;j=H[H[a+4>>2]+40>>2];c=H[j+980>>2];d=H[c+196>>2];h=H[a+8>>2]&2147483647;b=H[(d+(h<<3)|0)+4>>2];a:{if((b|0)==-1){e=h>>>5<<2;f=e+H[c+136>>2]|0;i=H[f>>2];b=1<>2]=i&(b^-1);break b}e=e+H[c+148>>2]|0;H[e>>2]=b|H[e>>2]}F[c+365|0]=1;break a}e=H[H[c+376>>2]+(b<<1&-4)>>2];f=H[e+4>>2];d=0;c:{d:{e:{b=H[e+8>>2];if(!b){break e}while(1){if((h|0)==H[f+(d<<2)>>2]){break e}d=d+1|0;if((b|0)!=(d|0)){continue}break}break d}if((b|0)!=(d|0)){b=b-1|0;H[e+8>>2]=b;H[f+(d<<2)>>2]=H[f+(b<<2)>>2];b=H[e+8>>2]}if(b){break d}b=H[e>>2];d=b>>>5<<2;f=d+H[c+136>>2]|0;i=H[f>>2];b=1<>2]=i&(b^-1);break f}d=d+H[c+148>>2]|0;H[d>>2]=b|H[d>>2]}b=H[e+20>>2];if((b|0)==-1){break c}d=H[c+392>>2]-1|0;H[c+392>>2]=d;f=H[c+388>>2];i=b<<2;H[f+i>>2]=H[f+(d<<2)>>2];if(b>>>0>>0){H[H[i+H[c+388>>2]>>2]+20>>2]=b}H[e+20>>2]=-1;break c}if(H[e+20>>2]!=-1){break c}b=H[c+392>>2];H[e+20>>2]=b;H[g+12>>2]=e;if(b>>>0>=(H[c+396>>2]&2147483647)>>>0){nH(c+388|0,g+12|0);break c}H[H[c+388>>2]+(b<<2)>>2]=e;H[c+392>>2]=b+1}F[c+365|0]=1;d=H[c+196>>2]}b=h<<2;H[b+H[c+180>>2]>>2]=-1;H[b+H[H[c+192>>2]+4>>2]>>2]=0;b=(h<<3)+d|0;H[b>>2]=0;H[b+4>>2]=-1;Oa=g+16|0;d=H[a+8>>2];h=d&2147483647;e=h+32>>>5|0;b=H[j+980>>2];g:{if(e>>>0<=(H[b+164>>2]&2147483647)>>>0){c=H[b+160>>2];break g}c=H[b+168>>2];c=Ra[H[H[c>>2]+8>>2]](c,e<<2,14905,438)|0;g=H[b+160>>2];h:{if(!g){break h}R6(c,g,H[b+164>>2]<<2);if(H[b+164>>2]<0){break h}g=H[b+160>>2];if(!g){break h}f=H[b+168>>2];Ra[H[H[f>>2]+12>>2]](f,g)}g=H[b+164>>2];S6((g<<2)+c|0,0,e-g<<2);H[b+164>>2]=e;H[b+160>>2]=c}b=(h>>>3&268435452)+c|0;c=H[b>>2];k=b,l=j7(-2,d)&c,H[k>>2]=l;H[a+8>>2]=H[a+8>>2]&2147483647;a=H[j+2352>>2];H[a+12>>2]=H[a+12>>2]+1}function RC(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=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=0,p=0,q=0,r=0;o=Oa-48|0;Oa=o;f=H[a+4>>2];if(f){i=L[b+84>>2];j=L[b+76>>2];k=L[b+88>>2];l=L[b+72>>2];m=L[b+92>>2];n=L[b+80>>2];L[o+40>>2]=O(m-n)*O(.5);L[o+36>>2]=O(k-j)*O(.5);L[o+32>>2]=O(i-l)*O(.5);g=H[a+292>>2];h=H[a+296>>2];L[o+16>>2]=O(m+n)*O(.5);L[o+12>>2]=O(k+j)*O(.5);L[o+8>>2]=O(i+l)*O(.5);f=SC(h,g,f,o+8|0,c,d,o+32|0,e)}else{f=1}if(!(!f|!I[a+336|0]|(H[a+156>>2]+H[a+108>>2]|0)==(0-H[a+216>>2]|0))){g=Oa+-64|0;Oa=g;a:{if(H[a+156>>2]!=(0-H[a+108>>2]|0)){f=Oa-48|0;Oa=f;h=1;p=H[a+68>>2];if(!(!p|!H[p+588>>2])){i=L[b+72>>2];j=L[b+84>>2];k=L[b+76>>2];l=L[b+88>>2];m=L[b+92>>2];n=L[b+80>>2];L[f+40>>2]=O(m-n)*O(.5);L[f+36>>2]=O(l-k)*O(.5);L[f+32>>2]=O(j-i)*O(.5);h=H[a+160>>2];q=H[h+8>>2];h=H[h+12>>2];L[f+16>>2]=O(m+n)*O(.5);L[f+12>>2]=O(l+k)*O(.5);L[f+8>>2]=O(j+i)*O(.5);h=jC(h,q,p,f+8|0,c,d,f+32|0,e)}p=H[a+116>>2];if(!(!p|!H[p+588>>2]|h^1)){i=L[b+72>>2];j=L[b+84>>2];k=L[b+76>>2];l=L[b+88>>2];m=L[b+92>>2];n=L[b+80>>2];L[f+40>>2]=O(m-n)*O(.5);L[f+36>>2]=O(l-k)*O(.5);L[f+32>>2]=O(j-i)*O(.5);h=H[a+160>>2];q=H[h+8>>2];h=H[h+12>>2];L[f+16>>2]=O(m+n)*O(.5);L[f+12>>2]=O(l+k)*O(.5);L[f+8>>2]=O(j+i)*O(.5);h=jC(h,q,p,f+8|0,c,d,f+32|0,e)}Oa=f+48|0;if(!h){break a}}if(!H[a+216>>2]){r=1;break a}i=L[b+84>>2];j=L[b+76>>2];k=L[b+88>>2];l=L[b+72>>2];m=L[b+92>>2];n=L[b+80>>2];L[g+56>>2]=O(m-n)*O(.5);L[g+52>>2]=O(k-j)*O(.5);L[g+48>>2]=O(i-l)*O(.5);L[g+40>>2]=O(m+n)*O(.5);L[g+36>>2]=O(k+j)*O(.5);L[g+32>>2]=O(i+l)*O(.5);H[g+28>>2]=H[a+176>>2];H[g+24>>2]=e;H[g+16>>2]=c;H[g+8>>2]=114732;b=g+48|0;H[g+20>>2]=b;e=g+32|0;H[g+12>>2]=e;r=SC(H[a+252>>2],H[a+248>>2],H[a+220>>2],e,c,d,b,g+8|0)}Oa=g- -64|0;f=r}Oa=o+48|0;return f|0}function XX(a,b,c,d,e,f){var g=0,h=O(0),i=O(0),j=0,k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0);g=Oa-80|0;Oa=g;k=L[d+48>>2];L[g+64>>2]=k;h=L[d+52>>2];L[g+68>>2]=h;i=L[d+56>>2];L[g+72>>2]=i;L[g+56>>2]=-i;L[g+52>>2]=-h;L[g+48>>2]=-k;k=L[d+16>>2];h=L[d+20>>2];i=L[d+8>>2];m=L[d>>2];p=L[d+4>>2];q=L[d+12>>2];r=L[d+32>>2];l=L[e+8>>2];s=L[d+24>>2];n=L[e>>2];o=L[e+4>>2];t=L[d+28>>2];L[g+40>>2]=-O(O(r*l)+O(O(s*n)+O(o*t)));L[g+36>>2]=-O(O(h*l)+O(O(q*n)+O(o*k)));L[g+32>>2]=-O(O(i*l)+O(O(m*n)+O(p*o)));l=O(L[b+8>>2]-L[d+44>>2]);n=O(L[b>>2]-L[d+36>>2]);o=O(L[b+4>>2]-L[d+40>>2]);L[g+24>>2]=O(r*l)+O(O(s*n)+O(t*o));L[g+20>>2]=O(h*l)+O(O(q*n)+O(o*k));L[g+16>>2]=O(i*l)+O(O(m*n)+O(o*p));k=O(c+f);a:{if((a_(g+48|0,g- -64|0,g+16|0,g+32|0,g+12|0,g+8|0)|0)==-1){break a}f=L[g+12>>2];if(!(f>2];if(j>>>0>63){break a}h=L[e+4>>2];i=L[e+8>>2];p=L[b+4>>2];q=L[b+8>>2];l=L[b>>2];m=L[e>>2];H[a+4096>>2]=j+1;j=(j<<6)+a|0;L[j+16>>2]=l-O(f*m);L[j+8>>2]=i;L[j+4>>2]=h;L[j>>2]=m;H[j+52>>2]=-1;L[j+12>>2]=f-c;L[j+24>>2]=q-O(f*i);L[j+20>>2]=p-O(f*h)}m=L[d+8>>2];p=L[d>>2];q=L[d+4>>2];l=L[d+20>>2];n=L[d+12>>2];o=L[d+16>>2];f=O(L[b+20>>2]-L[d+44>>2]);h=O(L[b+12>>2]-L[d+36>>2]);i=O(L[b+16>>2]-L[d+40>>2]);L[g+24>>2]=O(L[d+32>>2]*f)+O(O(L[d+24>>2]*h)+O(i*L[d+28>>2]));L[g+20>>2]=O(l*f)+O(O(n*h)+O(i*o));L[g+16>>2]=O(m*f)+O(O(p*h)+O(i*q));b:{if((a_(g+48|0,g- -64|0,g+16|0,g+32|0,g+12|0,g+8|0)|0)==-1){break b}f=L[g+12>>2];if(!(f>2];if(d>>>0>63){break b}k=L[e+4>>2];h=L[e+8>>2];m=L[b+16>>2];p=L[b+20>>2];q=L[b+12>>2];i=L[e>>2];H[a+4096>>2]=d+1;a=(d<<6)+a|0;L[a+16>>2]=q-O(f*i);L[a+8>>2]=h;L[a+4>>2]=k;L[a>>2]=i;H[a+52>>2]=-1;L[a+12>>2]=f-c;L[a+24>>2]=p-O(f*h);L[a+20>>2]=m-O(f*k)}Oa=g+80|0}function g1(a,b,c,d,e,f){var g=0,h=O(0),i=0,j=0,k=O(0),l=0;a:{b:{switch(f-1|0){case 0:H[a>>2]=2139095039;k=O(3.4028234663852886e38);d=-1;while(1){f=H[e+48>>2];i=H[e+52>>2];c:{if(f>>>0>=i>>>0){break c}j=i+(f^-1)|0;l=0;g=i-f&3;if(g){while(1){h=L[((f<<6)+c|0)+44>>2];if(h>2]=h;k=h;d=f}f=f+1|0;l=l+1|0;if((g|0)!=(l|0)){continue}break}}if(j>>>0<=2){break c}while(1){h=L[((f<<6)+c|0)+44>>2];if(h>2]=h;k=h;d=f}g=f+1|0;h=L[((g<<6)+c|0)+44>>2];if(h>2]=h;k=h;d=g}g=f+2|0;h=L[((g<<6)+c|0)+44>>2];if(h>2]=h;k=h;d=g}g=f+3|0;h=L[((g<<6)+c|0)+44>>2];if(h>2]=h;k=h;d=g}f=f+4|0;if((i|0)!=(f|0)){continue}break}}e=H[e+16>>2];if(e){continue}break};c=(d<<6)+c|0;a=H[c+4>>2];H[b>>2]=H[c>>2];H[b+4>>2]=a;H[b+48>>2]=H[c+48>>2];a=H[c+44>>2];H[b+40>>2]=H[c+40>>2];H[b+44>>2]=a;a=H[c+36>>2];H[b+32>>2]=H[c+32>>2];H[b+36>>2]=a;a=H[c+28>>2];H[b+24>>2]=H[c+24>>2];H[b+28>>2]=a;a=H[c+20>>2];H[b+16>>2]=H[c+16>>2];H[b+20>>2]=a;a=H[c+12>>2];H[b+8>>2]=H[c+8>>2];H[b+12>>2]=a;H[b+384>>2]=1;return;default:if(K[e+56>>2]<=6){break a}c1(a,b,c,d,e);H[b+384>>2]=6;return;case 2:break b}}if(K[e+56>>2]<=3){break a}d1(a,b,c,d,e);H[b+384>>2]=3;return}f=0;d=e;while(1){l=H[d+48>>2];if(l>>>0>2]){while(1){i=(l<<6)+c|0;g=H[i+4>>2];j=(f<<6)+b|0;H[j>>2]=H[i>>2];H[j+4>>2]=g;H[j+48>>2]=H[i+48>>2];g=H[i+44>>2];H[j+40>>2]=H[i+40>>2];H[j+44>>2]=g;g=H[i+36>>2];H[j+32>>2]=H[i+32>>2];H[j+36>>2]=g;g=H[i+28>>2];H[j+24>>2]=H[i+24>>2];H[j+28>>2]=g;g=H[i+20>>2];H[j+16>>2]=H[i+16>>2];H[j+20>>2]=g;g=H[i+12>>2];H[j+8>>2]=H[i+8>>2];H[j+12>>2]=g;f=f+1|0;l=l+1|0;if(l>>>0>2]){continue}break}}d=H[d+16>>2];if(d){continue}break}H[b+384>>2]=f;b=H[e+44>>2];H[a+8>>2]=H[e+40>>2];H[a+12>>2]=b;b=H[e+36>>2];H[a>>2]=H[e+32>>2];H[a+4>>2]=b}function lw(a,b,c,d,e,f){var g=0,h=O(0),i=0,j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),F=O(0),G=O(0),I=O(0),J=O(0),K=O(0),M=O(0),P=O(0),Q=O(0),R=0,S=0,T=0,U=0;i=Oa-32|0;Oa=i;H[a>>2]=0;H[a+4>>2]=0;H[a+24>>2]=0;H[a+28>>2]=0;H[a+16>>2]=0;H[a+20>>2]=0;H[a+8>>2]=0;H[a+12>>2]=0;if(!b){y=L[d+448>>2];z=L[d+460>>2];A=L[d+472>>2];B=L[d+452>>2];C=L[d+464>>2];D=L[d+476>>2];E=L[d+456>>2];F=L[d+468>>2];G=L[d+480>>2];I=L[d+508>>2];J=L[d+496>>2];K=L[d+484>>2];p=L[d+416>>2];q=L[d+420>>2];M=L[d+512>>2];P=L[d+500>>2];Q=L[d+488>>2];r=L[d+424>>2];s=L[d+428>>2];t=L[d+432>>2];u=L[d+412>>2];v=L[d+436>>2];n=L[e+16>>2];o=O(-n);w=L[d+440>>2];j=L[e+20>>2];x=L[d+444>>2];h=L[e+24>>2];k=O(-L[e+4>>2]);l=L[e>>2];m=L[e+8>>2];L[a+24>>2]=O(O(O(v*o)-O(w*j))-O(x*h))+O(O(O(L[d+504>>2]*k)-O(l*L[d+492>>2]))-O(m*L[d+516>>2]));L[a+20>>2]=O(O(O(r*o)-O(s*j))-O(t*h))+O(O(O(P*k)-O(l*Q))-O(m*M));L[a+16>>2]=O(O(O(u*o)-O(p*j))-O(q*h))+O(O(O(J*k)-O(l*K))-O(m*I));j=O(-j);L[a+8>>2]=O(O(O(t*k)-O(l*q))-O(m*x))+O(O(O(F*j)-O(n*E))-O(h*G));L[a+4>>2]=O(O(O(s*k)-O(l*p))-O(m*w))+O(O(O(C*j)-O(n*B))-O(h*D));L[a>>2]=O(O(O(r*k)-O(l*u))-O(m*v))+O(O(O(z*j)-O(n*y))-O(h*A))}c=H[d+332>>2]+(c<<5)|0;g=H[c+8>>2];b=g-1|0;c=H[c+12>>2]-!g|0;if(b|c){while(1){R=H[d+340>>2];g=b;g=(S=f7(g),T=f7(c)+32|0,U=g,U?S:T);aw(i,(R+N(g,160)|0)+120|0,H[d+236>>2]+N(g,112)|0,H[d+248>>2]+N(g,36)|0,H[d+272>>2]+N(g,76)|0,(g<<5)+e|0,(H[(H[d+344>>2]+N(g,80)|0)+72>>2]<<2)+f|0,a);L[a>>2]=L[i>>2];L[a+4>>2]=L[i+4>>2];h=L[i+8>>2];H[a+12>>2]=0;L[a+8>>2]=h;L[a+16>>2]=L[i+16>>2];L[a+20>>2]=L[i+20>>2];h=L[i+24>>2];H[a+28>>2]=0;L[a+24>>2]=h;g=b;b=g-1&g;c=c&c-!g;if(b|c){continue}break}}Oa=i+32|0}function g3(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;e=H[33808];c=Ra[H[H[e>>2]+20>>2]](e)|0?29076:55639;e=Ra[H[H[e+12>>2]+8>>2]](e+12|0,36,c,6768,39)|0;i=Oa-16|0;Oa=i;H[e>>2]=130352;h3(e+8|0);c=H[33808]+12|0;d=H[33808];c=(k=c,l=28,m=Ra[H[H[d>>2]+20>>2]](d)|0?33728:55639,n=13871,o=103,j=H[H[c>>2]+8>>2],Ra[j](k|0,l|0,m|0,n|0,o|0)|0);H[e+16>>2]=c;H[c>>2]=0;c=H[33808]+12|0;d=H[33808];c=(o=c,n=80,m=Ra[H[H[d>>2]+20>>2]](d)|0?33974:55639,l=16454,k=95,j=H[H[c>>2]+8>>2],Ra[j](o|0,n|0,m|0,l|0,k|0)|0);H[e+20>>2]=c;F[c+76|0]=0;H[c+72>>2]=0;c=0;G[e+32>>1]=0;H[e+28>>2]=a;a:{b:{if(!b){b=a<<2;if(b){g=H[33808]+12|0;g=Ra[H[H[g>>2]+8>>2]](g,b,20591,6768,64)|0}else{g=0}if(!a){H[e+24>>2]=0;H[e+4>>2]=0;break b}b=S6(g,0,b)}d=N(a,28);if(d){c=H[33808]+12|0;c=Ra[H[H[c>>2]+8>>2]](c,d,20591,6768,71)|0}H[e+4>>2]=c;d=a<<5;c:{if(!d){d=0;break c}c=H[33808]+12|0;d=Ra[H[H[c>>2]+8>>2]](c,d,20591,6768,73)|0;c=H[e+4>>2]}H[e+24>>2]=d;if(!c){break b}d:{if(!a){break d}a3(c);H[H[e+4>>2]+16>>2]=e;c=1;if((a|0)!=1){while(1){d=N(c,28);a3(d+H[e+4>>2]|0);H[(d+H[e+4>>2]|0)+16>>2]=e;c=c+1|0;if((c|0)!=(a|0)){continue}break}}if(!a){break d}c=0;while(1){d=H[e+24>>2];if(d){H[i>>2]=c;d=d+(c<<5)|0;F5(d,32,20485,i);H[H[(H[e+4>>2]+N(c,28)|0)+4>>2]+32>>2]=d}d=N(c,28);f=H[(d+H[e+4>>2]|0)+4>>2];h=H[(c<<2)+b>>2];if(h){H[f+28>>2]=h}h=Oa-48|0;Oa=h;f=d+H[e+4>>2]|0;d=H[f+4>>2];e:{if(H[d+16>>2]){break e}if(!(H[d>>2]|(H[d+4>>2]|!f))){H[d+4>>2]=f}f=H[d+12>>2];H[d+12>>2]=(f|0)==1?1:f;if(!f){while(1){f=H[d+12>>2];H[d+12>>2]=(f|0)==1?1:f;if(!f){continue}break}}if(!H[d+32>>2]){break e}}Oa=h+48|0;c=c+1|0;if((c|0)!=(a|0)){continue}break}}if(!g){break a}a=H[33808]+12|0;Ra[H[H[a>>2]+12>>2]](a,g);break a}H[e+28>>2]=0}Oa=i+16|0;return e|0}function Uy(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,o=0;e=Oa+-64|0;Oa=e;b=H[a+32>>2];f=H[b>>2];l=H[f+12144>>2];c=H[b+8>>2];a:{if(!(c&2147483647)){g=H[f+11956>>2];break a}g=I[l+49|0];if(c&2147483646){i=H[f+12132>>2];k=1;m=64;while(1){h=k<<6;j=I[(N(k,52)+l|0)+49|0];if(h>>>0>>0){if(j&1){b=(h<<5)+i|0;d=H[b+4>>2];c=(g<<5)+i|0;H[c>>2]=H[b>>2];H[c+4>>2]=d;d=H[b+28>>2];H[c+24>>2]=H[b+24>>2];H[c+28>>2]=d;d=H[b+20>>2];H[c+16>>2]=H[b+16>>2];H[c+20>>2]=d;d=H[b+12>>2];H[c+8>>2]=H[b+8>>2];H[c+12>>2]=d;h=h|1;g=g+1|0}if((j|0)!=1){j=j+m|0;while(1){b=(h<<5)+i|0;d=H[b+4>>2];c=(g<<5)+i|0;H[c>>2]=H[b>>2];H[c+4>>2]=d;d=H[b+28>>2];H[c+24>>2]=H[b+24>>2];H[c+28>>2]=d;d=H[b+20>>2];H[c+16>>2]=H[b+16>>2];H[c+20>>2]=d;d=H[b+12>>2];H[c+8>>2]=H[b+8>>2];H[c+12>>2]=d;d=H[b+36>>2];H[c+32>>2]=H[b+32>>2];H[c+36>>2]=d;d=H[b+60>>2];H[c+56>>2]=H[b+56>>2];H[c+60>>2]=d;d=H[b+44>>2];H[c+40>>2]=H[b+40>>2];H[c+44>>2]=d;d=H[b+52>>2];H[c+48>>2]=H[b+48>>2];H[c+52>>2]=d;g=g+2|0;h=h+2|0;if((j|0)!=(h|0)){continue}break}}b=H[a+32>>2]}m=m- -64|0;k=k+1|0;if(k>>>0<(H[b+8>>2]&2147483647)>>>0){continue}break}}g=H[f+11956>>2]+g|0;H[f+11956>>2]=g}c=H[a+92>>2];h=H[H[a+28>>2]+440>>2];H[f+11868>>2]=0;H[f+11872>>2]=0;i=f+11876|0;H[i>>2]=0;H[i+4>>2]=0;i=f+11884|0;H[i>>2]=0;H[i+4>>2]=0;b:{if(g){H[e+20>>2]=H[f+11952>>2];H[e+12>>2]=l;H[e+8>>2]=32;H[e>>2]=h+(c<<5);H[e+16>>2]=H[f+12148>>2];b=H[b+4>>2];H[e+24>>2]=g;H[e+4>>2]=b;H[e+28>>2]=H[f+11960>>2];b=H[f+11972>>2];H[e+44>>2]=0;H[e+32>>2]=b;H[e+52>>2]=f+11916;H[e+48>>2]=f+11892;H[e+36>>2]=0;H[e+40>>2]=0;F[e+56|0]=I[a+96|0];n=f,o=Ux(e),H[n+12104>>2]=o;H[f+11868>>2]=H[e+36>>2];H[f+11876>>2]=H[e+40>>2];H[f+11880>>2]=H[e+44>>2];break b}S6(H[f+11892>>2],0,H[f+11900>>2]<<2)}Oa=e- -64|0}function R4(a,b){var c=O(0),d=O(0),e=O(0),f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0);c=L[b+8>>2];d=L[b>>2];h=L[b+4>>2];if(!(!(d!=O(0)|h!=O(0))&c==O(0))){f=L[a+44>>2];i=O(f+c);c=L[a+40>>2];m=O(h+c);e=O(-c);h=L[a+36>>2];k=O(-h);d=O(d+h);a:{if(!(d!=O(0)|m!=O(0)|i!=O(0))){i=O(O(0)-O(f*f));m=O(c*e);e=L[a+48>>2];L[a>>2]=O(O(i+m)*e)+L[a>>2];d=O(f*O(0));j=O(d+d);d=O(c*h);L[a+4>>2]=O(e*O(j+d))+L[a+4>>2];j=O(c*O(-0));g=j;j=O(f*h);L[a+8>>2]=O(e*O(g+O(g+j)))+L[a+8>>2];q=O(f*O(-0));L[a+12>>2]=O(e*O(O(q+q)+d))+L[a+12>>2];d=i;i=O(h*k);L[a+16>>2]=O(e*O(d+i))+L[a+16>>2];d=O(h*O(0));g=d;d=O(f*c);L[a+20>>2]=O(e*O(g+O(g+d)))+L[a+20>>2];k=O(c*O(0));L[a+24>>2]=O(e*O(k+O(k+j)))+L[a+24>>2];k=O(h*O(-0));L[a+28>>2]=O(e*O(k+O(d+k)))+L[a+28>>2];L[a+32>>2]=O(e*O(O(m+i)+O(0)))+L[a+32>>2];break a}j=O(O(0)-O(f*f));q=O(c*e);r=O(m*O(-m));n=O(O(0)-O(i*i));e=L[a+48>>2];L[a>>2]=O(O(O(j+q)-O(r+n))*e)+L[a>>2];o=O(f*O(0));p=O(o+o);o=O(c*h);s=O(d*m);g=O(i*O(0));L[a+4>>2]=O(e*O(O(p+o)-O(s+O(g+g))))+L[a+4>>2];g=O(c*O(-0));l=g;g=O(f*h);p=O(m*O(-0));t=p;p=O(d*i);L[a+8>>2]=O(e*O(O(l+O(l+g))-O(t+O(t+p))))+L[a+8>>2];l=O(f*O(-0));l=O(O(l+l)+o);o=O(i*O(-0));L[a+12>>2]=O(e*O(l-O(s+O(o+o))))+L[a+12>>2];k=O(h*k);l=O(j+k);j=O(d*O(-d));L[a+16>>2]=O(e*O(l-O(j+n)))+L[a+16>>2];n=O(h*O(0));f=O(f*c);l=O(n+O(n+f));n=O(d*O(0));i=O(m*i);L[a+20>>2]=O(e*O(l-O(n+O(n+i))))+L[a+20>>2];c=O(c*O(0));g=O(c+O(c+g));c=O(m*O(0));L[a+24>>2]=O(e*O(g-O(c+O(c+p))))+L[a+24>>2];c=O(h*O(-0));g=O(c+O(f+c));f=O(d*O(-0));L[a+28>>2]=O(e*O(g-O(f+O(f+i))))+L[a+28>>2];L[a+32>>2]=O(e*O(O(O(q+k)+O(0))-O(O(j+r)+O(0))))+L[a+32>>2];f=L[a+44>>2];c=L[a+40>>2]}L[a+36>>2]=h+L[b>>2];L[a+40>>2]=L[b+4>>2]+c;L[a+44>>2]=L[b+8>>2]+f}}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=0,i=0,j=0,k=0,l=0,m=0;g=Oa-32|0;Oa=g;H[g+28>>2]=c;if(b){H[b+16>>2]=a;Ra[H[H[b>>2]+32>>2]](b)}a:{b:{c:{d:{if(!H[a+48>>2]){break d}f=H[a+32>>2];e=5381;h=I[c|0];if(h){i=c;while(1){e=N(e,33)^h&255;h=I[i+1|0];i=i+1|0;if(h){continue}break}}h=H[H[a+24>>2]+((f-1&e)<<2)>>2];if((h|0)==-1){break d}e=H[a+20>>2];i=H[a+16>>2];while(1){if(!_5(H[i+(h<<3)>>2],c)){break c}h=H[e+(h<<2)>>2];if((h|0)!=-1){continue}break}}H[a+52>>2]=H[a+52>>2]+1;h=H[a+76>>2];c=0;e=a+12|0;k=H[e+20>>2];e:{f:{if(!k){break f}j=5381;i=H[g+28>>2];f=I[i|0];if(f){c=i;while(1){j=N(j,33)^f&255;f=I[c+1|0];c=c+1|0;if(f){continue}break}}c=k-1&j;f=H[H[e+12>>2]+(c<<2)>>2];if((f|0)==-1){break f}j=e+4|0;l=H[e+8>>2];m=H[e+4>>2];while(1){if(!_5(H[(f<<3)+m>>2],i)){F[g+8|0]=1;break e}f=H[(f<<2)+l>>2];if((f|0)!=-1){continue}break}}F[g+8|0]=0;if(H[e+36>>2]==H[e+16>>2]){c=k?k<<1:16;if(c>>>0>k>>>0){ZI(e,c);k=H[e+20>>2]}j=5381;f=H[g+28>>2];c=I[f|0];if(c){while(1){j=N(j,33)^c&255;c=I[f+1|0];f=f+1|0;if(c){continue}break}}c=k-1&j}f=H[e+28>>2];H[e+28>>2]=f+1;c=H[e+12>>2]+(c<<2)|0;H[H[e+8>>2]+(f<<2)>>2]=H[c>>2];H[c>>2]=f;H[e+36>>2]=H[e+36>>2]+1;H[e+32>>2]=H[e+32>>2]+1;j=e+4|0}c=H[j>>2]+(f<<3)|0;if(!I[g+8|0]){i=H[g+28>>2];H[c+4>>2]=0;H[c>>2]=i}H[c+4>>2]=h;if(b){H[b+20>>2]=h}H[g+20>>2]=-1;H[g+24>>2]=-1;H[g+12>>2]=1;H[g+16>>2]=d;H[g+8>>2]=b;b=H[a+76>>2];if(b>>>0<(H[a+80>>2]&2147483647)>>>0){break b}jJ(a+72|0,g+8|0);break a}h=H[(i+(h<<3)|0)+4>>2];if(!b){break a}a=H[a+72>>2]+N(h,20)|0;H[a+8>>2]=d;H[a>>2]=b;H[b+20>>2]=h;break a}c=H[g+12>>2];b=H[a+72>>2]+N(b,20)|0;H[b>>2]=H[g+8>>2];H[b+4>>2]=c;H[b+16>>2]=H[g+24>>2];c=H[g+20>>2];H[b+8>>2]=H[g+16>>2];H[b+12>>2]=c;H[a+76>>2]=H[a+76>>2]+1}Oa=g+32|0;return h|0}function pK(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;f=Oa-32|0;Oa=f;j=H[a+76>>2];g=j+(c<<3)|0;a:{if(!(F[g+4|0]&1)){c=H[g>>2];if(c>>>0>=K[a+120>>2]){F[a+169|0]=1}h=H[a+100>>2];i=H[a+116>>2];if(i>>>0<=c>>>0){b:{if((c|0)!=(i|0)){k=H[a+108>>2];d=h+N(i,24)|0;e=H[d+20>>2];H[f+24>>2]=H[d+16>>2];H[f+28>>2]=e;e=H[d+12>>2];H[f+16>>2]=H[d+8>>2];H[f+20>>2]=e;e=H[d+4>>2];H[f+8>>2]=H[d>>2];H[f+12>>2]=e;e=H[b+20>>2];H[d+16>>2]=H[b+16>>2];H[d+20>>2]=e;e=H[b+12>>2];H[d+8>>2]=H[b+8>>2];H[d+12>>2]=e;e=H[b+4>>2];H[d>>2]=H[b>>2];H[d+4>>2]=e;d=H[f+20>>2];b=h+N(c,24)|0;H[b+8>>2]=H[f+16>>2];H[b+12>>2]=d;d=H[f+28>>2];H[b+16>>2]=H[f+24>>2];H[b+20>>2]=d;d=H[f+12>>2];H[b>>2]=H[f+8>>2];H[b+4>>2]=d;d=(i<<1)+k|0;b=J[d>>1];e=d;d=(c<<1)+k|0;G[e>>1]=J[d>>1];G[d>>1]=b;H[(b<<3)+j>>2]=c;H[g>>2]=i;break b}d=H[b+4>>2];c=h+N(c,24)|0;H[c>>2]=H[b>>2];H[c+4>>2]=d;d=H[b+20>>2];H[c+16>>2]=H[b+16>>2];H[c+20>>2]=d;d=H[b+12>>2];H[c+8>>2]=H[b+8>>2];H[c+12>>2]=d}H[a+116>>2]=H[a+116>>2]+1;break a}a=h+N(c,24)|0;c=H[b+4>>2];H[a>>2]=H[b>>2];H[a+4>>2]=c;c=H[b+20>>2];H[a+16>>2]=H[b+16>>2];H[a+20>>2]=c;c=H[b+12>>2];H[a+8>>2]=H[b+8>>2];H[a+12>>2]=c;break a}d=H[b+4>>2];c=H[a+96>>2]+N(H[g>>2],24)|0;H[c>>2]=H[b>>2];H[c+4>>2]=d;d=H[b+20>>2];H[c+16>>2]=H[b+16>>2];H[c+20>>2]=d;d=H[b+12>>2];H[c+8>>2]=H[b+8>>2];H[c+12>>2]=d;F[a+168|0]=1;d=H[a+128>>2];c=H[g>>2];i=c>>>5|0;c:{if(d>>>0>i>>>0){c=c&31;b=H[a+124>>2];break c}b=0;e=c+128>>>5|0;c=c&31;g=e+((c|0)!=0)|0;if(g){b=H[33808]+12|0;b=Ra[H[H[b>>2]+8>>2]](b,g<<2,20591,10568,274)|0;d=H[a+128>>2]}if(d){R6(b,H[a+124>>2],d<<2);h=H[a+128>>2]}d=g-h|0;if(d){S6((h<<2)+b|0,0,d<<2)}d=H[a+124>>2];if(d){h=H[33808]+12|0;Ra[H[H[h>>2]+12>>2]](h,d)}H[a+128>>2]=g;H[a+124>>2]=b}a=(i<<2)+b|0;H[a>>2]=H[a>>2]|1<>2];o=L[e+36>>2];i=L[e+76>>2];q=L[e+44>>2];r=L[e+32>>2];m=L[e+64>>2];x=O(O(g*o)+O(O(i*q)+O(r*m)));k=L[e+72>>2];s=L[e+40>>2];t=O(k*s);f=O(L[e+48>>2]-L[e+80>>2]);j=O(f+f);f=O(L[e+52>>2]-L[e+84>>2]);l=O(f+f);f=O(L[e+56>>2]-L[e+88>>2]);p=O(f+f);u=O(O(O(O(-m)*j)-O(l*g))-O(k*p));h=O(O(i*i)+O(-.5));f=O(O(O(p*h)+O(i*O(O(g*j)-O(m*l))))-O(k*u));n=O(O(O(j*h)+O(i*O(O(k*l)-O(g*p))))-O(m*u));j=O(O(O(l*h)+O(i*O(O(m*p)-O(k*j))))-O(g*u));l=O(O(f*f)+O(O(n*n)+O(j*j)));h=L[a+120>>2];w=l>O(h*h);if(w){l=O(O(1)/O(W(l)));f=O(h*O(f*l));n=O(h*O(n*l));j=O(h*O(j*l))}h=O(t+x);l=O(O(r*g)+O(O(O(i*s)-O(q*k))-O(m*o)));p=O(O(s*m)+O(O(O(i*o)-O(q*g))-O(k*r)));L[e+24>>2]=f;L[e+20>>2]=j;L[e+16>>2]=n;j=O(0);g=O(O(o*k)+O(O(O(i*r)-O(q*m))-O(g*s)));a:{if(g==O(0)){m=O(1);i=O(0);break a}f=O(O(1)/O(W(O(O(h*h)+O(O(O(g*g)+O(0))+O(0))))));m=O(h*f);j=O(g*f);i=O(f*O(0))}n=O(i*l);k=O(p*i);f=O(n+O(k+O(O(h*m)+O(g*j))));k=O(n+O(O(O(g*m)-O(h*j))-k));q=O(-i);n=O(h*q);g=O(i*g);h=O(O(j*p)+O(O(n+O(l*m))-g));n=O(g+O(O(n+O(p*m))-O(l*j)));g=O(L[a+124>>2]*O(.5));o=Z5(g);g=T5(g);b:{c:{d:{if(o>O(.9998999834060669)){break d}v=f>=O(0);r=v?h:O(-h);s=v?k:O(-k);l=v?n:O(-n);p=O(O(r*r)+O(O(s*s)+O(l*l)));if(!(p>O(o*o))){break d}f=O(O(1)/O(W(p)));h=O(O(o*r)*f);n=O(O(o*l)*f);k=O(O(o*s)*f);f=g;break c}if(!w){break b}}g=O(n*i);L[e+12>>2]=O(O(O(f*m)-O(j*k))-g)-O(h*i);t=O(k*i);i=O(f*i);L[e+8>>2]=O(O(-j)*n)+O(t+O(i+O(m*h)));L[e+4>>2]=O(q*k)+O(O(h*j)+O(i+O(m*n)));L[e>>2]=O(q*h)+O(g+O(O(f*j)+O(m*k)));f2(b,c,e- -64|0,e+32|0,e,a,d)}Oa=e+96|0}function bQ(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;f=H[a+28>>2];a=0;j=Oa-48|0;Oa=j;d=H[f+1e3>>2];e=H[d+432>>2];if(e){c=H[d+428>>2];while(1){b=H[d+184>>2]+N(H[c+(a<<2)>>2]>>>7|0,24)|0;g=H[b+20>>2];if(!(!g|I[b+4|0]&2)){dG(g+-64|0,0)}a=a+1|0;if((e|0)!=(a|0)){continue}break}}e=H[d+444>>2];if(e){c=H[d+440>>2];a=0;while(1){b=H[d+184>>2]+N(H[c+(a<<2)>>2]>>>7|0,24)|0;g=H[H[b+20>>2]+16>>2];if(!(!g|I[b+4|0]&2)){zF(g,0)}a=a+1|0;if((e|0)!=(a|0)){continue}break}}e=0;a:{d=H[f+1e3>>2];k=H[d+1064>>2];if(!k){break a}m=H[d+1060>>2];a=d;while(1){h=H[a+44>>2];c=H[(e<<2)+m>>2];a=H[a- -64>>2];b=(c>>>0)/(a>>>0)|0;a=H[H[h+(b<<2)>>2]+(c-N(a,b)<<2)>>2];b:{if(!a|!(I[a+21|0]&32)){break b}b=H[d+700>>2];g=(c>>>0)/(b>>>0)|0;if(I[(H[H[d+680>>2]+(g<<2)>>2]+(c-N(b,g)<<4)|0)+4|0]&4){break b}c=2;c:{d:{e:{switch(I[a+20|0]){case 1:if(qR(a-4|0)){break d}break b;case 4:if(OG(a)){break d}break b;case 5:F[a+21|0]=I[a+21|0]&223;break d;case 2:break c;case 0:break e;default:break b}}if(!UQ(a-4|0)){break b}}c=I[a+20|0];if(c>>>0>2){break b}}g=f+(c<<2)|0;b=H[g+88>>2];if(b>>>0>=2){l=f+N(c,12)|0;h=H[l+52>>2];b=b-1|0;i=h+(b<<2)|0;c=H[i>>2];n=i;i=h;a=H[a+8>>2];h=a<<2;i=H[i+h>>2];H[n>>2]=i;H[h+H[l+52>>2]>>2]=c;H[c+8>>2]=a;H[i+8>>2]=b;b=H[g+88>>2]}H[g+88>>2]=b-1}e=e+1|0;if((k|0)==(e|0)){break a}a=H[f+1e3>>2];continue}}c=j+8|0;a=H[H[f+976>>2]+1024>>2];Ra[H[H[a>>2]+84>>2]](c,a);a=H[f+2168>>2];d=H[a+28>>2];if(d){a=H[a+16>>2];while(1){d=d-1|0;f=H[a>>2];f:{if((H[f+44>>2]&1032)!=1032){break f}e=H[H[f+32>>2]+4>>2];e=I[H[e+44>>2]+9|0]-1>>>0<2?e:0;b=H[H[f+28>>2]+4>>2];if((!e|K[e+152>>2]>4294967293)&K[(I[H[b+44>>2]+9|0]-1>>>0<2?b:0)+152>>2]>=4294967294){break f}QQ(f,8,0,0,0,c)}a=a+4|0;if(d){continue}break}}Oa=j+48|0}function Ei(a,b,c){a=a|0;b=b|0;c=O(c);var d=0,e=0,f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=0,n=O(0),o=O(0),p=0,q=0,r=0,s=0,t=O(0),u=O(0),v=0;d=Oa-32|0;Oa=d;e=Oa-96|0;Oa=e;H[d+16>>2]=2122317823;H[d+20>>2]=-25165825;H[d+8>>2]=2122317823;H[d+12>>2]=2122317823;H[d+24>>2]=-25165825;H[d+28>>2]=-25165825;m=b+20|0;q=J[m+4>>1];Ra[H[H[b>>2]+76>>2]](e- -64|0,b);if(q){v=J[m+4>>1]==1?m:H[m>>2];m=0;while(1){p=H[(m<<2)+v>>2];r=H[p+40>>2];s=H[p+36>>2];b=s&4?r:p+80|0;o=L[b+24>>2];t=L[b+20>>2];u=L[b+16>>2];h=L[e+76>>2];j=L[b+12>>2];k=L[b>>2];f=L[e+64>>2];g=L[e+68>>2];l=L[b+4>>2];i=L[e+72>>2];n=L[b+8>>2];L[e+20>>2]=O(O(O(h*j)-O(k*f))-O(g*l))-O(i*n);L[e+16>>2]=O(O(f*l)+O(O(h*n)+O(i*j)))-O(k*g);L[e+12>>2]=O(O(i*k)+O(O(h*l)+O(g*j)))-O(n*f);L[e+8>>2]=O(O(g*n)+O(O(h*k)+O(f*j)))-O(l*i);j=O(o+o);k=O(u+u);l=O(t+t);n=O(O(i*j)+O(O(f*k)+O(g*l)));o=O(O(h*h)+O(-.5));L[e+32>>2]=L[e+88>>2]+O(O(i*n)+O(O(j*o)+O(h*O(O(f*l)-O(k*g)))));L[e+28>>2]=L[e+84>>2]+O(O(g*n)+O(O(l*o)+O(h*O(O(i*k)-O(j*f)))));L[e+24>>2]=L[e+80>>2]+O(O(f*n)+O(O(k*o)+O(h*O(O(g*j)-O(l*i)))));aU(e+40|0,s&1?r- -64|0:p+116|0,e+8|0,O(1));h=L[e+40>>2];f=L[e+44>>2];g=L[d+16>>2];i=L[e+48>>2];L[d+16>>2]=g>2];L[d+12>>2]=f>g?g:f;f=L[d+8>>2];L[d+8>>2]=f>2];f=L[e+56>>2];g=L[d+28>>2];i=L[e+60>>2];L[d+28>>2]=g>i?g:i;g=L[d+24>>2];L[d+24>>2]=f>2];L[d+20>>2]=f>h?f:h;m=m+1|0;if((q|0)!=(m|0)){continue}break}}Oa=e+96|0;h=L[d+24>>2];f=L[d+20>>2];g=L[d+8>>2];i=L[d+12>>2];j=L[d+16>>2];k=L[d+28>>2];l=O(O(j+k)*O(.5));j=O(O(O(k-j)*O(.5))*c);L[a+20>>2]=l+j;k=O(O(i+h)*O(.5));h=O(O(O(h-i)*O(.5))*c);L[a+16>>2]=k+h;i=O(O(g+f)*O(.5));c=O(O(O(f-g)*O(.5))*c);L[a+12>>2]=i+c;L[a+8>>2]=l-j;L[a+4>>2]=k-h;L[a>>2]=i-c;Oa=d+32|0}function Cm(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;m=H[33768];a=0;f=Oa-16|0;Oa=f;a:{if(!H[33771]){o5(H[33808],8,4393,279,61273,0);break a}h=H[33768];a=H[h+3040>>2];if(!a){i=Oa-16|0;Oa=i;d=h+2752|0;b=H[d+284>>2];if(b){a=H[33808];c=Ra[H[H[a>>2]+20>>2]](a)|0?36464:55639;g=Ra[H[H[a+12>>2]+8>>2]](a+12|0,b,c,15259,180)|0}else{g=0}H[i+12>>2]=g;a=H[d+268>>2];b:{if(a>>>0>=(H[d+272>>2]&2147483647)>>>0){c=d+4|0;b=H[c+268>>2]&2147483647;j=b?b<<1:1;a=0;c:{if(!j){break c}b=j<<2;if(!(I[c+256|0]|b>>>0>256)){F[c+256|0]=1;a=c;break c}a=0;if(!b){break c}a=H[33808];e=Ra[H[H[a>>2]+20>>2]](a)|0?36464:55639;a=Ra[H[H[a+12>>2]+8>>2]](a+12|0,b,e,13582,553)|0}b=a;e=H[c+264>>2];l=a+(e<<2)|0;if((e|0)>0){k=H[c+260>>2];while(1){H[a>>2]=H[k>>2];k=k+4|0;a=a+4|0;if(l>>>0>a>>>0){continue}break}}H[l>>2]=H[i+12>>2];d:{if(H[c+268>>2]<0){break d}a=H[c+260>>2];if((a|0)==(c|0)){F[c+256|0]=0;break d}if(!a){break d}e=H[33808];Ra[H[H[e+12>>2]+12>>2]](e+12|0,a);e=H[c+264>>2]}H[c+268>>2]=j;H[c+260>>2]=b;H[c+264>>2]=e+1;break b}H[H[d+264>>2]+(a<<2)>>2]=g;H[d+268>>2]=a+1}b=(N(H[d+276>>2],132)+g|0)-132|0;if(g>>>0<=b>>>0){a=H[d+288>>2];while(1){H[b>>2]=a;a=b;b=a-132|0;if(g>>>0<=b>>>0){continue}break}H[d+288>>2]=a}Oa=i+16|0;a=H[h+3040>>2]}H[h+3040>>2]=H[a>>2];b=h+3032|0;H[b>>2]=H[b>>2]+1;H[a+4>>2]=196620;H[a+8>>2]=0;H[a+12>>2]=0;H[a+16>>2]=0;H[a+20>>2]=0;H[a>>2]=103292;ZD(a+24|0,1);H[a+100>>2]=0;G[a+72>>1]=1;H[a+112>>2]=0;H[a+116>>2]=0;H[a+104>>2]=4;H[a+108>>2]=0;H[a+96>>2]=a+76;F[a+92|0]=1;H[a+128>>2]=0;H[a+120>>2]=0;H[a+124>>2]=0;H[a>>2]=102984;L[a+68>>2]=L[a+56>>2];H[a+16>>2]=H[a+16>>2]&-251658241|117440512;H[f+8>>2]=a;b=Nl(m+520|0,f+8|0,f+15|0);if(!I[f+15|0]){H[b>>2]=H[f+8>>2]}}Oa=f+16|0;return a|0}function mD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=O(0),f=O(0),g=O(0),h=O(0),i=0,j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=0,C=O(0),D=O(0);a:{if(!H[a+684>>2]){break a}d=(b<<15^-1)+b|0;d=N(d>>>10^d,9);d=d>>>6^d;d=(d<<11^-1)+d|0;d=H[H[a+660>>2]+((H[a+668>>2]-1&(d>>>16^d))<<2)>>2];if((d|0)==-1){break a}B=H[a+656>>2];i=H[a+652>>2];while(1){if(H[i+(d<<3)>>2]!=(b|0)){d=H[B+(d<<2)>>2];if((d|0)!=-1){continue}break a}break}i=H[(i+(d<<3)|0)+4>>2];b=H[a+644>>2]+N(i,44)|0;d=H[H[b>>2]+588>>2];L[b+12>>2]=L[c>>2];L[b+16>>2]=L[c+4>>2];L[b+20>>2]=L[c+8>>2];L[b+24>>2]=L[c+12>>2];L[b+28>>2]=L[c+16>>2];L[b+32>>2]=L[c+20>>2];L[b+36>>2]=L[c+24>>2];r=L[c+20>>2];C=L[c+16>>2];f=L[c+8>>2];h=L[d+8>>2];m=L[d+24>>2];e=O(O(h+m)*O(.5));s=O(e+e);l=L[c>>2];n=L[d>>2];o=L[d+16>>2];e=O(O(n+o)*O(.5));t=O(e+e);j=L[d+4>>2];p=L[d+20>>2];e=O(O(j+p)*O(.5));u=O(e+e);e=L[c+4>>2];v=O(O(f*s)+O(O(l*t)+O(u*e)));d=H[a+640>>2];b=d+N(i,24)|0;k=L[c+12>>2];w=O(O(k*k)+O(-.5));x=O(L[c+24>>2]+O(O(f*v)+O(O(s*w)+O(k*O(O(l*u)-O(t*e))))));m=O(O(m-h)*O(.5));h=O(l+l);q=O(O(1)-O(l*h));g=O(e+e);y=O(e*g);n=O(O(o-n)*O(.5));z=O(h*f);A=O(k*g);o=O(O(p-j)*O(.5));j=O(k*h);g=O(g*f);p=O(O(P(O(m*O(q-y))))+O(O(P(O(n*O(z-A))))+O(P(O(o*O(j+g))))));L[b+20>>2]=x+p;r=O(r+O(O(e*v)+O(O(u*w)+O(k*O(O(f*t)-O(s*l))))));D=O(P(O(m*O(g-j))));h=O(h*e);g=O(f+f);j=O(k*g);g=O(f*g);q=O(D+O(O(P(O(n*O(h+j))))+O(P(O(o*O(q-g))))));L[b+16>>2]=r+q;f=O(C+O(O(l*v)+O(O(t*w)+O(k*O(O(e*s)-O(u*f))))));e=O(O(P(O(m*O(z+A))))+O(O(P(O(n*O(O(O(1)-y)-g))))+O(P(O(o*O(h-j))))));L[b+12>>2]=f+e;L[b+8>>2]=x-p;L[b+4>>2]=r-q;L[b>>2]=f-e;H[a+704>>2]=0;kD(a,i,TB(a+4|0,H[H[a+620>>2]+(i<<2)>>2],i,d,a+700|0))}}function Uz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=O(0),f=0,g=0,h=0,i=O(0),j=O(0),k=0,l=0,m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=0,D=0,E=O(0),F=O(0),G=O(0),K=O(0),M=O(0),N=O(0),P=O(0),Q=0,R=O(0),S=O(0),T=O(0),U=0,V=0,W=0;if(b){c=0;while(1){d=(c<<5)+a|0;g=H[d+4>>2];m=L[g+24>>2];n=L[g+20>>2];h=H[d>>2];o=L[h+24>>2];p=L[h+20>>2];q=L[g+16>>2];r=L[h+16>>2];s=L[g+8>>2];t=L[g+4>>2];u=L[g>>2];v=L[h+8>>2];w=L[h+4>>2];x=L[h>>2];f=J[d+22>>1];if(f){d=H[d+24>>2];Q=d+(f<<4)|0;while(1){C=d+32|0;f=I[d+1|0];D=C+((f<<2)+12&2032)|0;l=I[d+2|0];k=(l>>>0)/(f>>>0)|0;a:{if(!l){break a}if(f>>>0<=l>>>0){R=L[d+20>>2];S=L[d+16>>2];A=L[d+12>>2];B=L[d+8>>2];T=L[d+4>>2];U=k>>>0>1?k:1;k=0;f=0;while(1){V=f+U|0;W=(k<<2)+C|0;while(1){e=O(T*L[W>>2]);d=(f<<6)+D|0;i=L[d+28>>2];j=L[d+8>>2];y=L[d>>2];z=L[d+4>>2];E=L[d+24>>2];F=L[d+16>>2];G=L[d+20>>2];K=L[d+40>>2];M=L[d+32>>2];N=L[d+36>>2];P=L[d+12>>2];i=O(O(i*O(O(O(O(j*v)+O(O(y*x)+O(w*z)))+O(O(E*o)+O(O(F*r)+O(p*G))))-O(O(O(j*s)+O(O(y*u)+O(t*z)))+O(O(K*m)+O(O(M*q)+O(n*N))))))+O(P-O(i*L[d+48>>2])));i=e>2]=e;e=O(e-P);s=O(s-O(O(A*j)*e));t=O(t-O(O(A*z)*e));u=O(u-O(O(A*y)*e));v=O(v+O(O(B*j)*e));w=O(w+O(O(B*z)*e));x=O(x+O(O(B*y)*e));j=O(R*e);m=O(m-O(K*j));n=O(n-O(N*j));q=O(q-O(M*j));e=O(S*e);o=O(o+O(E*e));p=O(p+O(G*e));r=O(r+O(F*e));f=f+1|0;if((V|0)!=(f|0)){continue}break}k=k+1|0;if(f>>>0>>0){continue}break}break a}while(1)continue}d=(l<<6)+D|0;if(Q>>>0>d>>>0){continue}break}}L[h+8>>2]=v;L[h+4>>2]=w;L[h>>2]=x;L[g+8>>2]=s;L[g+4>>2]=t;L[g>>2]=u;L[h+24>>2]=o;L[h+20>>2]=p;L[h+16>>2]=r;L[g+24>>2]=m;L[g+20>>2]=n;L[g+16>>2]=q;c=c+1|0;if((c|0)!=(b|0)){continue}break}}}function rS(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=O(0),i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=O(0);g=Oa-192|0;Oa=g;H[g+144>>2]=3;i=M[c+12>>3];l=H[b+44>>2];m=H[b+40>>2];j=M[c+20>>3];n=M[d+8>>3];k=M[c+28>>3];o=M[d+16>>3];p=M[d>>3];L[g+156>>2]=L[b+48>>2];L[g+136>>2]=o-k;L[g+132>>2]=n-j;H[g+148>>2]=m;H[g+152>>2]=l;L[g+128>>2]=p-i;L[g+112>>2]=L[a+244>>2];L[g+116>>2]=L[a+248>>2];L[g+120>>2]=L[a+252>>2];L[g+124>>2]=L[a+256>>2];d=0;H[g+104>>2]=0;H[g+96>>2]=2;b=H[c+40>>2];x(0,H[c+36>>2]);x(1,b|0);q=g,r=O(+z()-i),L[q+176>>2]=r;b=H[c+48>>2];x(0,H[c+44>>2]);x(1,b|0);q=g,r=O(+z()-j),L[q+180>>2]=r;b=H[c+56>>2];x(0,H[c+52>>2]);x(1,b|0);q=g,r=O(+z()-k),L[q+184>>2]=r;b=H[c+64>>2];x(0,H[c+60>>2]);x(1,b|0);q=g,r=O(+z()-i),L[q+160>>2]=r;b=H[c+72>>2];x(0,H[c+68>>2]);x(1,b|0);q=g,r=O(+z()-j),L[q+164>>2]=r;b=H[c+80>>2];x(0,H[c+76>>2]);x(1,b|0);q=g,r=O(+z()-k),L[q+168>>2]=r;L[g+100>>2]=L[c+84>>2];HT(g+16|0,g+176|0,g+160|0,g+104|0);b=H[g+40>>2];H[g+84>>2]=H[g+36>>2];H[g+88>>2]=b;L[g+64>>2]=L[g+16>>2];b=H[g+24>>2];H[g+68>>2]=H[g+20>>2];H[g+72>>2]=b;b=H[g+32>>2];H[g+76>>2]=H[g+28>>2];H[g+80>>2]=b;if(L[g+104>>2]==O(0)){H[g+104>>2]=872415232}H[g+40>>2]=0;H[g+44>>2]=0;H[g+48>>2]=0;H[g+52>>2]=0;H[g+32>>2]=0;H[g+36>>2]=0;G[g+28>>1]=0;H[g+24>>2]=-1;H[g+16>>2]=0;H[g+20>>2]=0;H[g+56>>2]=2139095039;h=L[f+36>>2];G[g+8>>1]=I[a+299|0]?1283:1027;a:{if(!fU(e,h,g+144|0,g+112|0,g+96|0,g- -64|0,g+16|0,g+8|0)){break a}h=L[g+56>>2];if(h>=L[f+36>>2]){break a}L[f+36>>2]=h;L[f+24>>2]=L[g+44>>2];L[f+28>>2]=L[g+48>>2];h=L[g+52>>2];H[f+40>>2]=-1;H[f+44>>2]=-1;L[f+32>>2]=h;M[f>>3]=M[c+12>>3]+ +L[g+32>>2];M[f+8>>3]=M[c+20>>3]+ +L[g+36>>2];M[f+16>>3]=M[c+28>>3]+ +L[g+40>>2];d=1}Oa=g+192|0;return d|0}function ay(a){var b=0,c=0;b=H[a+12152>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=H[a+12144>>2];if(!b){break a}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}b=H[a+12068>>2];b:{if((b|0)<0|!(b&2147483647)){break b}b=H[a+12060>>2];if(!b){break b}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}b=H[a+12056>>2];c:{if((b|0)<0|!(b&2147483647)){break c}b=H[a+12048>>2];if(!b){break c}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}b=H[a+12044>>2];d:{if((b|0)<0|!(b&2147483647)){break d}b=H[a+12036>>2];if(!b){break d}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}b=H[a+12032>>2];e:{if((b|0)<0|!(b&2147483647)){break e}b=H[a+12024>>2];if(!b){break e}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}b=H[a+12020>>2];f:{if((b|0)<0|!(b&2147483647)){break f}b=H[a+12012>>2];if(!b){break f}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}b=H[a+12008>>2];g:{if((b|0)<0|!(b&2147483647)){break g}b=H[a+12e3>>2];if(!b){break g}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}b=H[a+11996>>2];h:{if((b|0)<0|!(b&2147483647)){break h}b=H[a+11988>>2];if(!b){break h}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}b=H[a+11984>>2];i:{if((b|0)<0|!(b&2147483647)){break i}b=H[a+11976>>2];if(!b){break i}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}b=H[a+11924>>2];j:{if((b|0)<0|!(b&2147483647)){break j}b=H[a+11916>>2];if(!b){break j}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}b=H[a+11912>>2];k:{if((b|0)<0|!(b&2147483647)){break k}b=H[a+11904>>2];if(!b){break k}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}b=H[a+11900>>2];l:{if((b|0)<0|!(b&2147483647)){break l}b=H[a+11892>>2];if(!b){break l}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}b=H[a+11844>>2];m:{if((b|0)<0|!(b&2147483647)){break m}a=H[a+11836>>2];if(!a){break m}b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,a)}}function D_(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=O(0),h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=O(0),r=0,s=0,t=0,u=0;e=Oa-80|0;Oa=e;H[e+40>>2]=0;H[e+44>>2]=0;H[e+48>>2]=0;H[e+52>>2]=0;H[e+32>>2]=0;H[e+36>>2]=0;G[e+28>>1]=0;H[e+24>>2]=-1;H[e+16>>2]=0;H[e+20>>2]=0;H[e+64>>2]=0;H[e+56>>2]=2139095039;H[e+60>>2]=0;a:{if(!b){h=1;break a}k=a+108|0;r=a- -64|0;l=e+60|0;while(1){f=H[(s<<2)+c>>2];t=f>>>5|0;u=f>>>1&15;h=0;b:{while(1){i=h+t|0;c:{if(H[a+12>>2]){f=H[a+16>>2]+N(i,6)|0;n=J[f+4>>1];o=J[f+2>>1];f=J[f>>1];break c}f=H[a+16>>2]+N(i,12)|0;n=H[f+8>>2];o=H[f+4>>2];f=H[f>>2]}j=H[a+20>>2];G[e+28>>1]=1;H[e+24>>2]=i;H[e+12>>2]=n;i=j+N(n,12)|0;H[e+8>>2]=o;p=j+N(o,12)|0;H[e+4>>2]=f;j=j+N(f,12)|0;d:{e:{if(I[a+177|0]){g=L[e+56>>2];if(!(g>2])){break e}m=H[e+20>>2];H[r>>2]=H[e+16>>2];H[r+4>>2]=m;H[r+8>>2]=H[e+24>>2];G[a+76>>1]=1;L[a+80>>2]=L[e+32>>2];L[a+84>>2]=L[e+36>>2];L[a+88>>2]=L[e+40>>2];L[a+92>>2]=L[e+44>>2];L[a+96>>2]=L[e+48>>2];q=L[e+52>>2];L[a+104>>2]=g;L[a+100>>2]=q;H[k+16>>2]=H[l+16>>2];m=H[l+12>>2];H[k+8>>2]=H[l+8>>2];H[k+12>>2]=m;m=H[l+4>>2];H[k>>2]=H[l>>2];H[k+4>>2]=m;q=L[d>>2];L[d>>2]=g>2]=L[j>>2];L[a+132>>2]=L[j+4>>2];L[a+136>>2]=L[j+8>>2];L[a+140>>2]=L[p>>2];L[a+144>>2]=L[p+4>>2];L[a+148>>2]=L[p+8>>2];L[a+152>>2]=L[i>>2];L[a+156>>2]=L[i+4>>2];g=L[i+8>>2];F[a+176|0]=1;H[a+172>>2]=n;H[a+168>>2]=o;H[a+164>>2]=f;L[a+160>>2]=g;break e}L[e>>2]=L[d>>2];f=H[a+8>>2];if(!(Ra[H[H[f>>2]>>2]](f,e+16|0,j,p,i,e,e+4|0)|0)){break d}g=L[e>>2];if(!(g>2])){break e}L[d>>2]=g;L[a+60>>2]=g}if(!H[H[a+8>>2]+4>>2]){break d}f=(h|0)==(u|0);h=h+1|0;if(f){break b}continue}break}h=0;break a}h=1;s=s+1|0;if((s|0)!=(b|0)){continue}break}}Oa=e+80|0;return h|0}function qN(a,b,c,d,e,f){var g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0);n=L[d+8>>2];o=L[b+8>>2];p=L[c+8>>2];q=L[a+8>>2];a:{h=L[a>>2];j=L[c>>2];k=L[b>>2];i=L[d>>2];r=L[a+4>>2];s=L[c+4>>2];t=L[b+4>>2];u=L[d+4>>2];if(!(!(O(P(O(h-j)))<=O(k+i))|!(O(P(O(r-s)))<=O(t+u)))&O(P(O(q-p)))<=O(o+n)){break a}g=O(j-i);i=O(j+i);l=O(h-k);k=O(h+k);w=L[e+4>>2];x=L[f+4>>2];b:{c:{m=O(L[f>>2]-L[e>>2]);d:{if(mk){h=O(O(k-g)/m);j=h>O(0)?h:O(0)}h=O(1);if(!(i>l)){break d}h=O(O(l-i)/m);h=hO(9.999999974752427e-7))){break c}v=O(3.4028234663852886e38);if(g>k){break a}j=O(0);if(iO(0)?h:O(0)}h=O(1);if(!(gh)){break b}break a}v=O(3.4028234663852886e38);if(ik){break a}j=O(0);h=O(1)}g=O(s-u);i=O(s+u);l=O(r-t);k=O(r+t);m=O(x-w);e:{if(!(mO(9.999999974752427e-7))){if(ik)){break e}break a}if(g>k){break a}if(ik){g=O(O(k-g)/m);j=g>j?g:j}if(!(i>l)){break e}g=O(O(l-i)/m);h=gh){break a}g=O(p-n);i=O(p+n);l=O(q-o);k=O(q+o);m=O(L[f+8>>2]-L[e+8>>2]);f:{if(!(mO(9.999999974752427e-7))){if(ik)){break f}break a}if(g>k){break a}if(ik){g=O(O(k-g)/m);j=g>j?g:j}if(!(i>l)){break f}g=O(O(l-i)/m);h=gh){break a}return j}return v}function sG(a,b,c,d,e,f,g,h){var i=0,j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=0,q=0,r=0,s=O(0);p=I[a+150|0];a:{if(!(p&6)){break a}i=H[a+44>>2];if(!H[i+176>>2]|I[H[i+176>>2]+31|0]==1){break a}i=H[i+176>>2];if(!i){break a}if(c){q=c;c=H[e>>2];r=c<<2;H[q+r>>2]=a- -64;q=H[a+144>>2];H[e>>2]=c+1;H[d+r>>2]=q>>>7}d=p&2;b:{if(!(p&4)){break b}k=L[i+56>>2];l=L[i+52>>2];m=L[i+48>>2];n=L[i+40>>2];o=L[i+36>>2];s=L[i+32>>2];if(g){j=O(O(1)/b);L[f+24>>2]=j*k;L[f+20>>2]=j*l;L[f+16>>2]=j*m;L[f+8>>2]=j*n;L[f+4>>2]=j*o;L[f>>2]=j*s;break b}c=H[a+44>>2];L[c+80>>2]=s+L[c+80>>2];L[c+84>>2]=o+L[c+84>>2];L[c+88>>2]=n+L[c+88>>2];L[c+96>>2]=m+L[c+96>>2];L[c+100>>2]=l+L[c+100>>2];L[c+104>>2]=k+L[c+104>>2]}if(!d){break a}j=L[i+24>>2];k=L[i+20>>2];l=L[i+16>>2];m=L[i+8>>2];n=L[i+4>>2];o=L[i>>2];if(f){L[f+16>>2]=l;L[f+8>>2]=m;L[f+4>>2]=n;L[f>>2]=o;L[f+24>>2]=j;L[f+20>>2]=k;break a}c:{if(!h){break c}c=H[H[a+40>>2]+1e3>>2];if(!H[H[c+268>>2]+(H[H[c+372>>2]+(H[a+144>>2]>>>5&134217724)>>2]<<2)>>2]){break c}b=O(L[a+140>>2]*b)}c=H[a+44>>2];L[c+80>>2]=O(o*b)+L[c+80>>2];L[c+84>>2]=O(n*b)+L[c+84>>2];L[c+88>>2]=O(m*b)+L[c+88>>2];L[c+96>>2]=O(l*b)+L[c+96>>2];L[c+100>>2]=O(k*b)+L[c+100>>2];L[c+104>>2]=O(j*b)+L[c+104>>2]}c=H[a+44>>2];d=H[c+176>>2];if(F[H[a+100>>2]+28|0]>=0){e=I[a+150|0];d:{if(!d|I[H[c+176>>2]+31|0]==1){break d}c=H[c+176>>2];if(!c){break d}H[c+56>>2]=0;H[c+48>>2]=0;H[c+52>>2]=0;H[c+40>>2]=0;H[c+32>>2]=0;H[c+36>>2]=0;H[c+24>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c>>2]=0;H[c+4>>2]=0}F[a+150|0]=e>>>1&1;return}e:{if(!d|I[H[c+176>>2]+31|0]==1){break e}c=H[c+176>>2];if(!c){break e}H[c+56>>2]=0;H[c+48>>2]=0;H[c+52>>2]=0;H[c+40>>2]=0;H[c+32>>2]=0;H[c+36>>2]=0}F[a+150|0]=I[a+150|0]&-5}function Il(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=O(0),n=0,o=0;l=H[a+16>>2];f=H[a+28>>2];if((i7(b)|0)!=1){b=b>>>1|b;b=b>>>2|b;b=b>>>4|b;b=b>>>8|b;b=(b>>>16|b)+1|0}d=b<<2;m=O(L[a+24>>2]*O(b>>>0));a:{if(m=O(0)){e=~~m>>>0;break a}e=0}g=e;h=g<<2;e=d+h|0;e=(0-e&12)+e|0;h=e+h|0;if(h){c=H[33808]+12|0;c=Ra[H[H[c>>2]+8>>2]](c,h,20591,14239,372)|0}h=S6(c,255,d);k=e+h|0;e=d+h|0;b:{if((f|0)==-1){if(!H[a+36>>2]){break b}i=b-1|0;d=0;while(1){c=d<<2;j=H[c+H[a+4>>2]>>2];f=(j<<15^-1)+j|0;f=N(f>>>10^f,9);f=f>>>6^f;f=(f<<11^-1)+f|0;f=((i&(f>>>16^f))<<2)+h|0;H[c+e>>2]=H[f>>2];H[f>>2]=d;H[c+k>>2]=j;d=d+1|0;if(d>>>0>2]){continue}break}break b}n=R6(e,H[a+8>>2],H[a+16>>2]<<2);d=H[a+20>>2];if(!d){break b}o=b-1|0;while(1){c=H[H[a+12>>2]+(j<<2)>>2];if((c|0)!=-1){while(1){d=c<<2;f=H[d+H[a+4>>2]>>2];i=(f<<15^-1)+f|0;i=N(i>>>10^i,9);i=i>>>6^i;i=(i<<11^-1)+i|0;i=((o&(i>>>16^i))<<2)+h|0;H[d+n>>2]=H[i>>2];H[i>>2]=c;H[d+k>>2]=f;c=H[d+H[a+8>>2]>>2];if((c|0)!=-1){continue}break}d=H[a+20>>2]}j=j+1|0;if(j>>>0>>0){continue}break}}d=H[a>>2];if(d){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,d)}H[a+20>>2]=b;H[a+12>>2]=h;H[a>>2]=h;H[a+8>>2]=e;H[a+16>>2]=g;H[a+4>>2]=k;b=g-1|0;c:{if(b>>>0<=l>>>0){break c}d=l;k=(d^-1)+g&7;if(k){h=0;c=l;while(1){d=c+1|0;H[(c<<2)+e>>2]=d;c=d;h=h+1|0;if((k|0)!=(h|0)){continue}break}}if((g-l|0)-2>>>0<7){break c}while(1){c=d+1|0;H[(d<<2)+e>>2]=c;g=(c<<2)+e|0;c=d+2|0;H[g>>2]=c;g=(c<<2)+e|0;c=d+3|0;H[g>>2]=c;g=(c<<2)+e|0;c=d+4|0;H[g>>2]=c;g=(c<<2)+e|0;c=d+5|0;H[g>>2]=c;g=(c<<2)+e|0;c=d+6|0;H[g>>2]=c;g=(c<<2)+e|0;c=d+7|0;H[g>>2]=c;d=d+8|0;H[(c<<2)+e>>2]=d;if((b|0)!=(d|0)){continue}break}}H[(b<<2)+e>>2]=H[a+28>>2];H[a+28>>2]=l}function yS(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=O(0),i=0,j=0,k=0,l=O(0),m=0,n=0,o=0,p=O(0);g=Oa-192|0;Oa=g;H[g+144>>2]=2;i=M[c+12>>3];h=L[b+44>>2];l=L[b+40>>2];j=M[c+20>>3];m=M[d+8>>3];n=M[d>>3];k=M[c+28>>3];L[g+136>>2]=M[d+16>>3]-k;L[g+132>>2]=m-j;L[g+148>>2]=l;L[g+152>>2]=h*O(.5);L[g+128>>2]=n-i;L[g+112>>2]=L[a+244>>2];L[g+116>>2]=L[a+248>>2];L[g+120>>2]=L[a+252>>2];L[g+124>>2]=L[a+256>>2];d=0;H[g+104>>2]=0;H[g+96>>2]=2;b=H[c+40>>2];x(0,H[c+36>>2]);x(1,b|0);o=g,p=O(+z()-i),L[o+176>>2]=p;b=H[c+48>>2];x(0,H[c+44>>2]);x(1,b|0);o=g,p=O(+z()-j),L[o+180>>2]=p;b=H[c+56>>2];x(0,H[c+52>>2]);x(1,b|0);o=g,p=O(+z()-k),L[o+184>>2]=p;b=H[c+64>>2];x(0,H[c+60>>2]);x(1,b|0);o=g,p=O(+z()-i),L[o+160>>2]=p;b=H[c+72>>2];x(0,H[c+68>>2]);x(1,b|0);o=g,p=O(+z()-j),L[o+164>>2]=p;b=H[c+80>>2];x(0,H[c+76>>2]);x(1,b|0);o=g,p=O(+z()-k),L[o+168>>2]=p;L[g+100>>2]=L[c+84>>2];HT(g+16|0,g+176|0,g+160|0,g+104|0);b=H[g+40>>2];H[g+84>>2]=H[g+36>>2];H[g+88>>2]=b;L[g+64>>2]=L[g+16>>2];b=H[g+24>>2];H[g+68>>2]=H[g+20>>2];H[g+72>>2]=b;b=H[g+32>>2];H[g+76>>2]=H[g+28>>2];H[g+80>>2]=b;if(L[g+104>>2]==O(0)){H[g+104>>2]=872415232}H[g+40>>2]=0;H[g+44>>2]=0;H[g+48>>2]=0;H[g+52>>2]=0;H[g+32>>2]=0;H[g+36>>2]=0;G[g+28>>1]=0;H[g+24>>2]=-1;H[g+16>>2]=0;H[g+20>>2]=0;H[g+56>>2]=2139095039;h=L[f+36>>2];G[g+8>>1]=I[a+299|0]?1283:1027;a:{if(!fU(e,h,g+144|0,g+112|0,g+96|0,g- -64|0,g+16|0,g+8|0)){break a}h=L[g+56>>2];if(h>=L[f+36>>2]){break a}L[f+36>>2]=h;L[f+24>>2]=L[g+44>>2];L[f+28>>2]=L[g+48>>2];h=L[g+52>>2];H[f+40>>2]=-1;H[f+44>>2]=-1;L[f+32>>2]=h;M[f>>3]=M[c+12>>3]+ +L[g+32>>2];M[f+8>>3]=M[c+20>>3]+ +L[g+36>>2];M[f+16>>3]=M[c+28>>3]+ +L[g+40>>2];d=1}Oa=g+192|0;return d|0}function EV(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),F=O(0),G=O(0),H=O(0),I=O(0),J=O(0),K=O(0),M=O(0),N=O(0),P=O(0);a=Oa-16|0;Oa=a;o=L[d+24>>2];p=L[d+20>>2];q=L[d+16>>2];g=L[d+4>>2];k=L[d+12>>2];i=L[d>>2];f=L[d+8>>2];xU(a,b);Oa=a+16|0;r=L[a+12>>2];j=O(i+i);l=O(f*j);h=O(g+g);s=O(k*h);C=O(l-s);x=L[c+4>>2];t=O(-x);D=O(C*t);m=O(h*f);u=O(j*k);G=O(m+u);y=L[c+8>>2];v=O(-y);H=O(G*v);I=O(D+H);E=O(O(1)-O(i*j));w=O(g*h);J=O(E-w);h=L[c+12>>2];n=O(-h);z=O(J*n);i=L[a+8>>2];A=O(O(1)-w);B=f;f=O(f+f);w=O(B*f);K=O(A-w);M=O(K*t);j=O(j*g);F=O(f*k);N=O(j-F);P=O(N*v);A=O(M+P);l=O(l+s);k=O(l*n);f=L[a>>2];g=L[a+4>>2];s=O(j+F);F=O(s*t);E=O(E-w);w=O(E*v);B=O(F+w);m=O(m-u);j=O(m*n);a:{b:{if(O(r+O(O(O(o+O(I+z))*i)+O(O(O(q+O(A+k))*f)+O(g*O(p+O(B+j))))))<=O(0)){break b}t=O(J*h);v=O(l*h);h=O(m*h);if(O(r+O(O(O(o+O(I+t))*i)+O(O(O(q+O(A+v))*f)+O(g*O(p+O(B+h))))))<=O(0)){break b}n=O(G*y);l=O(D+n);D=O(N*y);m=O(M+D);y=O(E*y);u=O(F+y);if(O(r+O(O(O(o+O(l+z))*i)+O(O(O(q+O(m+k))*f)+O(g*O(p+O(u+j))))))<=O(0)|O(r+O(O(O(o+O(l+t))*i)+O(O(O(q+O(m+v))*f)+O(g*O(p+O(u+h))))))<=O(0)){break b}l=O(C*x);C=O(l+H);m=O(K*x);u=O(m+P);x=O(s*x);s=O(x+w);if(O(r+O(O(O(o+O(C+z))*i)+O(O(O(q+O(u+k))*f)+O(g*O(p+O(s+j))))))<=O(0)|O(r+O(O(O(o+O(C+t))*i)+O(O(O(q+O(u+v))*f)+O(g*O(p+O(s+h))))))<=O(0)){break b}n=O(l+n);A=O(O(o+O(n+z))*i);z=O(m+D);B=O(O(q+O(z+k))*f);k=O(x+y);if(O(r+O(A+O(B+O(g*O(p+O(k+j))))))<=O(0)){break b}a=0;if(!(O(r+O(O(O(o+O(n+t))*i)+O(O(O(q+O(z+v))*f)+O(g*O(p+O(k+h))))))<=O(0))){break a}}a=1}return a|0}function Bm(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;m=H[33768];a=0;f=Oa-16|0;Oa=f;a:{if(!H[33769]){o5(H[33808],8,4393,263,61273,0);break a}h=H[33768];a=H[h+2744>>2];if(!a){i=Oa-16|0;Oa=i;d=h+2456|0;b=H[d+284>>2];if(b){a=H[33808];c=Ra[H[H[a>>2]+20>>2]](a)|0?32646:55639;g=Ra[H[H[a+12>>2]+8>>2]](a+12|0,b,c,15259,180)|0}else{g=0}H[i+12>>2]=g;a=H[d+268>>2];b:{if(a>>>0>=(H[d+272>>2]&2147483647)>>>0){c=d+4|0;b=H[c+268>>2]&2147483647;j=b?b<<1:1;a=0;c:{if(!j){break c}b=j<<2;if(!(I[c+256|0]|b>>>0>256)){F[c+256|0]=1;a=c;break c}a=0;if(!b){break c}a=H[33808];e=Ra[H[H[a>>2]+20>>2]](a)|0?32646:55639;a=Ra[H[H[a+12>>2]+8>>2]](a+12|0,b,e,13582,553)|0}b=a;e=H[c+264>>2];l=a+(e<<2)|0;if((e|0)>0){k=H[c+260>>2];while(1){H[a>>2]=H[k>>2];k=k+4|0;a=a+4|0;if(l>>>0>a>>>0){continue}break}}H[l>>2]=H[i+12>>2];d:{if(H[c+268>>2]<0){break d}a=H[c+260>>2];if((a|0)==(c|0)){F[c+256|0]=0;break d}if(!a){break d}e=H[33808];Ra[H[H[e+12>>2]+12>>2]](e+12|0,a);e=H[c+264>>2]}H[c+268>>2]=j;H[c+260>>2]=b;H[c+264>>2]=e+1;break b}H[H[d+264>>2]+(a<<2)>>2]=g;H[d+268>>2]=a+1}b=(N(H[d+276>>2],120)+g|0)-120|0;if(g>>>0<=b>>>0){a=H[d+288>>2];while(1){H[b>>2]=a;a=b;b=a-120|0;if(g>>>0<=b>>>0){continue}break}H[d+288>>2]=a}Oa=i+16|0;a=H[h+2744>>2]}H[h+2744>>2]=H[a>>2];b=h+2736|0;H[b>>2]=H[b>>2]+1;H[a+4>>2]=196619;H[a+8>>2]=0;H[a+12>>2]=0;H[a+16>>2]=0;H[a+20>>2]=0;H[a>>2]=105444;ZD(a+24|0,0);H[a+100>>2]=0;G[a+72>>1]=1;H[a+112>>2]=0;H[a+116>>2]=0;H[a+104>>2]=4;H[a+108>>2]=0;H[a+96>>2]=a+76;F[a+92|0]=1;H[a>>2]=105192;L[a+68>>2]=L[a+56>>2];H[a+16>>2]=H[a+16>>2]&-251658241|117440512;H[f+8>>2]=a;b=Nl(m+520|0,f+8|0,f+15|0);if(!I[f+15|0]){H[b>>2]=H[f+8>>2]}}Oa=f+16|0;return a|0}function pn(a,b){a=a|0;b=b|0;var c=0,d=O(0),e=O(0),f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=0,v=O(0);c=Oa-96|0;Oa=c;i=L[b+12>>2];f=L[b+8>>2];g=L[b>>2];h=L[b+4>>2];d=O(O(1)/O(W(O(O(i*i)+O(O(f*f)+O(O(g*g)+O(h*h)))))));L[c+76>>2]=i*d;L[c+72>>2]=f*d;L[c+68>>2]=h*d;L[c+64>>2]=g*d;L[c+80>>2]=L[b+16>>2];L[c+84>>2]=L[b+20>>2];L[c+88>>2]=L[b+24>>2];b=H[a+316>>2]&1024?H[a+56>>2]+144|0:a+112|0;j=L[b+16>>2];i=L[b+12>>2];m=L[b+8>>2];n=L[b+4>>2];o=L[b>>2];k=L[b+24>>2];l=L[b+20>>2];bi(a,c- -64|0);b=H[a+56>>2];u=H[a+316>>2];a:{if(!(F[(u&16384?b+268|0:a+108|0)|0]&1)){break a}b:{if(u&32768){f=L[b+192>>2];L[c+32>>2]=f;g=L[b+196>>2];L[c+36>>2]=g;h=L[b+200>>2];L[c+40>>2]=h;d=L[b+204>>2];L[c+44>>2]=d;q=L[b+208>>2];L[c+48>>2]=q;r=L[b+212>>2];L[c+52>>2]=r;e=L[b+216>>2];L[c+56>>2]=e;break b}if(K[a+52>>2]>3221225471){break a}if(!_F(a- -64|0,c+32|0)){break a}e=L[c+56>>2];r=L[c+52>>2];q=L[c+48>>2];h=L[c+40>>2];g=L[c+36>>2];f=L[c+32>>2];d=L[c+44>>2]}v=e;e=O(k*O(-2));j=O(j*O(-2));k=O(l*O(-2));s=O(O(m*e)+O(O(o*j)+O(n*k)));t=O(O(i*i)+O(-.5));l=O(O(m*s)+O(O(e*t)-O(i*O(O(o*k)-O(j*n)))));l=O(l+l);p=O(O(o*s)+O(O(j*t)-O(i*O(O(n*e)-O(k*m)))));p=O(p+p);e=O(O(n*s)+O(O(k*t)-O(i*O(O(m*j)-O(e*o)))));e=O(e+e);j=O(O(h*l)+O(O(f*p)+O(e*g)));k=O(O(d*d)+O(-.5));L[c+24>>2]=v+O(O(h*j)+O(O(l*k)+O(d*O(O(f*e)-O(p*g)))));L[c+20>>2]=r+O(O(g*j)+O(O(e*k)+O(d*O(O(h*p)-O(l*f)))));L[c+12>>2]=O(h*m)+O(O(g*n)+O(O(d*i)+O(o*f)));L[c+8>>2]=O(o*g)+O(O(O(i*h)-O(d*m))-O(f*n));L[c+4>>2]=O(m*f)+O(O(O(i*g)-O(d*n))-O(h*o));L[c>>2]=O(n*h)+O(O(O(i*f)-O(d*o))-O(g*m));L[c+16>>2]=q+O(O(f*j)+O(O(p*k)+O(d*O(O(g*l)-O(e*h)))));nn(a,c)}Oa=c+96|0}function h0(a,b,c,d){var e=0,f=0,g=0,h=O(0),i=0,j=0,k=0,l=O(0),m=0,n=0,o=O(0);a:{e=H[a+2328>>2];if(!e){break a}m=e-1|0;i=(m<<6)+a|0;if(!(L[a+2224>>2]>2]*L[b+8>>2])+O(O(L[i>>2]*L[b>>2])+O(L[i+4>>2]*L[b+4>>2]))))){break a}b=H[i+52>>2];j=H[i+48>>2];f=H[a+2324>>2];if(!(b>>>0<=j>>>0|f>>>0<=d>>>0)){while(1){g=d;if(f>>>0>g>>>0){while(1){k=H[a+2320>>2];n=g<<6;b=k+n|0;e=(j<<6)+k|0;h=O(L[b+24>>2]-L[e+24>>2]);l=O(h*h);h=O(L[b+16>>2]-L[e+16>>2]);o=O(h*h);h=O(L[b+20>>2]-L[e+20>>2]);if(L[a+2240>>2]>O(l+O(o+O(h*h)))){if(L[e+44>>2]>L[b+44>>2]){f=H[b+4>>2];H[e>>2]=H[b>>2];H[e+4>>2]=f;H[e+48>>2]=H[b+48>>2];f=H[b+44>>2];H[e+40>>2]=H[b+40>>2];H[e+44>>2]=f;f=H[b+36>>2];H[e+32>>2]=H[b+32>>2];H[e+36>>2]=f;f=H[b+28>>2];H[e+24>>2]=H[b+24>>2];H[e+28>>2]=f;f=H[b+20>>2];H[e+16>>2]=H[b+16>>2];H[e+20>>2]=f;f=H[b+12>>2];H[e+8>>2]=H[b+8>>2];H[e+12>>2]=f;k=H[a+2320>>2];f=H[a+2324>>2]}b=((f<<6)+k|0)+-64|0;f=H[b+4>>2];e=k+n|0;H[e>>2]=H[b>>2];H[e+4>>2]=f;H[e+48>>2]=H[b+48>>2];f=H[b+44>>2];H[e+40>>2]=H[b+40>>2];H[e+44>>2]=f;f=H[b+36>>2];H[e+32>>2]=H[b+32>>2];H[e+36>>2]=f;f=H[b+28>>2];H[e+24>>2]=H[b+24>>2];H[e+28>>2]=f;f=H[b+20>>2];H[e+16>>2]=H[b+16>>2];H[e+20>>2]=f;f=H[b+12>>2];H[e+8>>2]=H[b+8>>2];H[e+12>>2]=f;f=H[a+2324>>2]-1|0;H[a+2324>>2]=f;g=g-1|0}g=g+1|0;if(g>>>0>>0){continue}break}b=H[i+52>>2]}j=j+1|0;if(j>>>0>>0){continue}break}}H[i+52>>2]=f;a=(m<<6)+a|0;h=L[a+32>>2];l=L[c>>2];L[a+32>>2]=h>l?l:h;return}g=(e<<6)+a|0;H[g+48>>2]=d;H[g+52>>2]=H[a+2324>>2];d=H[c+4>>2];H[g+32>>2]=H[c>>2];H[g+36>>2]=d;d=H[c+12>>2];H[g+40>>2]=H[c+8>>2];H[g+44>>2]=d;H[a+2328>>2]=e+1;a=H[b+12>>2];H[g+8>>2]=H[b+8>>2];H[g+12>>2]=a;a=H[b+4>>2];H[g>>2]=H[b>>2];H[g+4>>2]=a}function ZK(a){a=a|0;var b=0,c=0;H[a>>2]=117020;b=H[a+132>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+136>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+140>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+144>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+148>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+152>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+156>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+160>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+164>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+180>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+184>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+172>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+176>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+168>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+216>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+220>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+236>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+240>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}H[a+216>>2]=0;H[a+220>>2]=0;H[a+248>>2]=0;H[a+252>>2]=0;H[a+240>>2]=0;H[a+244>>2]=0;H[a+232>>2]=0;H[a+236>>2]=0;H[a+224>>2]=0;H[a+228>>2]=0;H[a+428>>2]=0;H[a+420>>2]=0;H[a+380>>2]=0;H[a+372>>2]=0;H[a+332>>2]=0;H[a+324>>2]=0;H[a+400>>2]=0;H[a+384>>2]=110900;H[a+268>>2]=0;H[a+256>>2]=0;H[a+204>>2]=0;H[a+352>>2]=0;H[a+336>>2]=110900;H[a+304>>2]=0;H[a+288>>2]=110900;H[a- -64>>2]=0;H[a+48>>2]=110900;H[a+24>>2]=0;H[a+8>>2]=110900;return a|0}function mA(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;H[a+11980>>2]=0;h=b+63&-64;if(h>>>0>(H[a+11984>>2]&2147483647)>>>0){g=a+11976|0;a:{if(!h){break a}d=h<<5;if(!d){break a}b=H[33808];f=b+12|0;f=(k=f,l=d,m=Ra[H[H[b>>2]+20>>2]](b)|0?40080:55639,n=13582,o=553,j=H[H[f>>2]+8>>2],Ra[j](k|0,l|0,m|0,n|0,o|0)|0)}b=H[g+4>>2];if((b|0)>0){i=(b<<5)+f|0;d=H[g>>2];b=f;while(1){e=H[d+4>>2];H[b>>2]=H[d>>2];H[b+4>>2]=e;e=H[d+28>>2];H[b+24>>2]=H[d+24>>2];H[b+28>>2]=e;e=H[d+20>>2];H[b+16>>2]=H[d+16>>2];H[b+20>>2]=e;e=H[d+12>>2];H[b+8>>2]=H[d+8>>2];H[b+12>>2]=e;d=d+32|0;b=b+32|0;if(i>>>0>b>>>0){continue}break}}b:{if(H[g+8>>2]<0){break b}b=H[g>>2];if(!b){break b}d=H[33808]+12|0;Ra[H[H[d>>2]+12>>2]](d,b)}H[g+8>>2]=h;H[g>>2]=f}H[a+12148>>2]=0;b=c>>>1|c;b=b>>>2|b;b=b>>>4|b;b=b>>>8|b;b=(b>>>16|b)+1|0;h=b>>>0>16?b:16;if(h>>>0>(H[a+12152>>2]&2147483647)>>>0){g=a+12144|0;f=0;c:{if(!h){break c}d=N(h,52);if(!d){break c}b=H[33808];f=b+12|0;f=(o=f,n=d,m=Ra[H[H[b>>2]+20>>2]](b)|0?40212:55639,l=13582,k=553,j=H[H[f>>2]+8>>2],Ra[j](o|0,n|0,m|0,l|0,k|0)|0)}b=H[g+4>>2];if((b|0)>0){i=N(b,52)+f|0;d=H[g>>2];b=f;while(1){e=H[d+4>>2];H[b>>2]=H[d>>2];H[b+4>>2]=e;H[b+48>>2]=H[d+48>>2];e=H[d+44>>2];H[b+40>>2]=H[d+40>>2];H[b+44>>2]=e;e=H[d+36>>2];H[b+32>>2]=H[d+32>>2];H[b+36>>2]=e;e=H[d+28>>2];H[b+24>>2]=H[d+24>>2];H[b+28>>2]=e;e=H[d+20>>2];H[b+16>>2]=H[d+16>>2];H[b+20>>2]=e;e=H[d+12>>2];H[b+8>>2]=H[d+8>>2];H[b+12>>2]=e;d=d+52|0;b=b+52|0;if(i>>>0>b>>>0){continue}break}}d:{if(H[g+8>>2]<0){break d}b=H[g>>2];if(!b){break d}d=H[33808]+12|0;Ra[H[H[d>>2]+12>>2]](d,b)}H[g+8>>2]=h;H[g>>2]=f}H[a+12148>>2]=c;H[a+12132>>2]=H[a+11952>>2];H[a+12140>>2]=H[a+11976>>2]}function $t(a,b){var c=0,d=0;c=Oa-16|0;Oa=c;a:{b:{c:{d:{e:{f:{g:{h:{i:{d=H[b+4>>2];switch((d>>>24&15)-1|0){case 8:break b;case 7:break c;case 6:break d;case 5:break e;case 4:break f;case 3:break g;case 2:break h;case 0:case 1:break i;default:break a}}if(d&268435456){break a}H[b+4>>2]=d|268435456;if((d&-1073741824)!=-2147483648){break a}H[c+8>>2]=b;a=rg(a+4816|0,c+8|0,c+15|0);if(I[c+15|0]){break a}H[a>>2]=H[c+8>>2];break a}if(d&268435456){break a}H[b+4>>2]=d|268435456;if((d&-1073741824)!=-2147483648){break a}H[c+8>>2]=b;a=rg(a+4932|0,c+8|0,c+15|0);if(I[c+15|0]){break a}H[a>>2]=H[c+8>>2];break a}if(d&268435456){break a}H[b+4>>2]=d|268435456;if((d&-1073741824)!=-2147483648){break a}H[c+8>>2]=b;a=rg(a+4932|0,c+8|0,c+15|0);if(I[c+15|0]){break a}H[a>>2]=H[c+8>>2];break a}if(d&268435456){break a}H[b+4>>2]=d|268435456;if((d&-1073741824)!=-2147483648){break a}H[c+8>>2]=b;a=rg(a+4892|0,c+8|0,c+15|0);if(I[c+15|0]){break a}H[a>>2]=H[c+8>>2];break a}if(d&268435456){break a}H[b+4>>2]=d|268435456;if((d&-1073741824)!=-2147483648){break a}H[c+8>>2]=b;a=rg(a+4972|0,c+8|0,c+15|0);if(I[c+15|0]){break a}H[a>>2]=H[c+8>>2];break a}if(d&268435456){break a}H[b+4>>2]=d|268435456;if((d&-1073741824)!=-2147483648){break a}H[c+8>>2]=b;a=rg(a+5012|0,c+8|0,c+15|0);if(I[c+15|0]){break a}H[a>>2]=H[c+8>>2];break a}if(d&268435456){break a}H[b+4>>2]=d|268435456;if((d&-1073741824)!=-2147483648){break a}H[c+8>>2]=b;a=rg(a+5052|0,c+8|0,c+15|0);if(I[c+15|0]){break a}H[a>>2]=H[c+8>>2];break a}if(d&268435456){break a}H[b+4>>2]=d|268435456;if((d&-1073741824)!=-2147483648){break a}H[c+8>>2]=b;a=rg(a+5092|0,c+8|0,c+15|0);if(I[c+15|0]){break a}H[a>>2]=H[c+8>>2]}Oa=c+16|0}function KD(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=Oa-16|0;Oa=j;F[a+140|0]=1;g=c>>>1|0;H[j+12>>2]=g;e=c&1;d=N(e,36)+a|0;H[d+32>>2]=H[d+32>>2]+1;a:{if((b|0)==-1){b=H[d+4>>2]+(c>>>4&268435452)|0;c=H[b>>2];d=1<>2]=c&(d^-1);h=N(e,36)+a|0;b=H[h+16>>2];c=0;c:{d=H[h+20>>2];if(!d){break c}while(1){if((g|0)==H[b+(c<<2)>>2]){break c}c=c+1|0;if((d|0)!=(c|0)){continue}break}break b}if((c|0)==(d|0)){break b}g=d-1|0;H[h+20>>2]=g;H[b+(c<<2)>>2]=H[b+(g<<2)>>2]}a=H[N(e,36)+a>>2];Ra[H[H[a>>2]+4>>2]](a,j+12|0,1);break a}d:{if(!H[a+112>>2]){break d}c=(b<<15^-1)+b|0;c=N(c>>>10^c,9);c=c>>>6^c;c=(c<<11^-1)+c|0;d=N(c>>>16^c^1016421269,1000007);c=g+(g<<15^-1)|0;c=N(c>>>10^c,9);c=c>>>6^c;c=(c<<11^-1)+c|0;d=H[a+88>>2]+((H[a+96>>2]-1&(d^(c>>>16^c)))<<2)|0;c=H[d>>2];if((c|0)==-1){break d}e=H[a+84>>2];h=H[a+80>>2];f=h+(c<<3)|0;if(!(H[f>>2]==(b|0)&(g|0)==H[f+4>>2])){while(1){d=e+(c<<2)|0;c=H[d>>2];if((c|0)==-1){break d}f=h+(c<<3)|0;if(H[f>>2]!=(b|0)|(g|0)!=H[f+4>>2]){continue}break}}c=d;h=H[a+84>>2];d=H[d>>2];f=h+(d<<2)|0;H[c>>2]=H[f>>2];c=H[a+112>>2]-1|0;H[a+112>>2]=c;H[a+108>>2]=H[a+108>>2]+1;if((c|0)!=(d|0)){i=H[a+80>>2];e=i+(d<<3)|0;i=i+(c<<3)|0;H[e>>2]=H[i>>2];H[e+4>>2]=H[i+4>>2];H[f>>2]=H[h+(c<<2)>>2];c=H[e>>2];c=(c<<15^-1)+c|0;c=N(c>>>10^c,9);c=c>>>6^c;c=(c<<11^-1)+c|0;f=N(c>>>16^c^1016421269,1000007);c=H[e+4>>2];c=(c<<15^-1)+c|0;c=N(c>>>10^c,9);c=c>>>6^c;c=(c<<11^-1)+c|0;e=H[a+88>>2]+((H[a+96>>2]-1&(f^(c>>>16^c)))<<2)|0;c=H[e>>2];f=H[a+112>>2];if((c|0)!=(f|0)){while(1){e=h+(c<<2)|0;c=H[e>>2];if((f|0)!=(c|0)){continue}break}}H[e>>2]=d}H[a+104>>2]=H[a+104>>2]-1}a=H[a+72>>2];Ra[H[H[a>>2]+16>>2]](a,b,g)}Oa=j+16|0}function PC(a,b,c){var d=O(0),e=O(0),f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),F=O(0),G=O(0),H=0;f=O(L[a+16>>2]-L[b>>2]);j=L[c>>2];d=O(j+L[a+128>>2]);a:{if(f>d){break a}g=O(L[a+20>>2]-L[b+4>>2]);k=L[c+4>>2];e=O(k+L[a+132>>2]);if(g>e){break a}h=O(L[a+24>>2]-L[b+8>>2]);i=L[c+8>>2];l=O(i+L[a+136>>2]);if(fl|(g>2];e=L[a+48>>2];l=L[a- -64>>2];n=O(O(O(f*d)+O(g*e))+O(h*l));m=L[a+112>>2];p=L[a+96>>2];q=L[a+80>>2];o=O(O(i*m)+O(O(k*p)+O(O(j*q)+L[a>>2])));if(n>o){break a}r=L[a+36>>2];s=L[a+52>>2];t=L[a+68>>2];D=O(O(O(f*r)+O(g*s))+O(h*t));u=L[a+116>>2];v=L[a+100>>2];w=L[a+84>>2];E=O(O(i*u)+O(O(k*v)+O(O(j*w)+L[a+4>>2])));if(D>E){break a}x=L[a+40>>2];y=L[a+56>>2];z=L[a+72>>2];F=O(O(O(f*x)+O(g*y))+O(h*z));A=L[a+120>>2];B=L[a+104>>2];C=L[a+88>>2];G=O(O(i*A)+O(O(k*B)+O(O(j*C)+L[a+8>>2])));if(nG|(O(-E)>D|O(-G)>F)){break a}n=O(O(h*e)-O(g*l));o=O(O(i*p)+O(O(k*m)+L[a+144>>2]));l=O(O(f*l)-O(h*d));m=O(O(i*q)+O(O(j*m)+L[a+160>>2]));d=O(O(g*d)-O(f*e));e=O(O(k*q)+O(O(j*p)+L[a+176>>2]));b=n>o|nm|le|d>2]));b=b|(d>e|d>2]));b=b|(d>e|d>2]));b=b|(d>e|d>2]));h=O(O(f*z)-O(h*x));i=O(O(i*C)+O(O(j*A)+L[a+168>>2]));f=O(O(g*x)-O(f*y));g=O(O(k*C)+O(O(j*B)+L[a+184>>2]));H=((b|(d>e|di|hg|f>2];e=(H[a+4>>2]-d|0)/12|0;if(e>>>0>>0){h=a;a:{e=b-e|0;f=H[a+8>>2];d=H[a+4>>2];if(e>>>0<=(f-d|0)/12>>>0){b:{if(!e){break b}a=d;g=N(e,12)-12|0;f=((g>>>0)/12|0)+1&3;if(f){b=0;while(1){L[a>>2]=L[c>>2];L[a+4>>2]=L[c+4>>2];L[a+8>>2]=L[c+8>>2];a=a+12|0;b=b+1|0;if((f|0)!=(b|0)){continue}break}}d=N(e,12)+d|0;if(g>>>0<36){break b}while(1){L[a>>2]=L[c>>2];L[a+4>>2]=L[c+4>>2];L[a+8>>2]=L[c+8>>2];L[a+12>>2]=L[c>>2];L[a+16>>2]=L[c+4>>2];L[a+20>>2]=L[c+8>>2];L[a+24>>2]=L[c>>2];L[a+28>>2]=L[c+4>>2];L[a+32>>2]=L[c+8>>2];L[a+36>>2]=L[c>>2];L[a+40>>2]=L[c+4>>2];L[a+44>>2]=L[c+8>>2];a=a+48|0;if((d|0)!=(a|0)){continue}break}}H[h+4>>2]=d;break a}c:{g=H[h>>2];b=(d-g|0)/12|0;a=b+e|0;if(a>>>0<357913942){f=(f-g|0)/12|0;i=f<<1;f=f>>>0<178956970?a>>>0>i>>>0?a:i:357913941;if(f){if(f>>>0>=357913942){break c}j=o6(N(f,12))}b=N(b,12)+j|0;a=b;e=N(e,12);i=e-12|0;k=((i>>>0)/12|0)+1&3;if(k){a=b;while(1){L[a>>2]=L[c>>2];L[a+4>>2]=L[c+4>>2];L[a+8>>2]=L[c+8>>2];a=a+12|0;l=l+1|0;if((l|0)!=(k|0)){continue}break}}e=b+e|0;if(i>>>0>=36){while(1){L[a>>2]=L[c>>2];L[a+4>>2]=L[c+4>>2];L[a+8>>2]=L[c+8>>2];L[a+12>>2]=L[c>>2];L[a+16>>2]=L[c+4>>2];L[a+20>>2]=L[c+8>>2];L[a+24>>2]=L[c>>2];L[a+28>>2]=L[c+4>>2];L[a+32>>2]=L[c+8>>2];L[a+36>>2]=L[c>>2];L[a+40>>2]=L[c+4>>2];L[a+44>>2]=L[c+8>>2];a=a+48|0;if((e|0)!=(a|0)){continue}break}}if((d|0)!=(g|0)){while(1){b=b-12|0;d=d-12|0;L[b>>2]=L[d>>2];L[b+4>>2]=L[d+4>>2];L[b+8>>2]=L[d+8>>2];if((d|0)!=(g|0)){continue}break}}H[h+8>>2]=N(f,12)+j;H[h+4>>2]=e;H[h>>2]=b;if(g){N6(g)}break a}q6();X()}ka();X()}return}if(b>>>0>>0){H[a+4>>2]=d+N(b,12)}}function RE(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;h=H[a+180>>2];j=h+(f>>>5&134217724)|0;f=H[j>>2]+1|0;i=H[a+16>>2];k=h+(g>>>5&134217724)|0;g=H[c>>2]>>>7|0;if((g|0)!=33554431){f=f+H[k>>2]|0;n=H[a+204>>2];while(1){l=g<<2;m=h+l|0;H[m>>2]=f+H[m>>2];H[n+l>>2]=d;g=H[(i+N(g,24)|0)+8>>2]>>>7|0;if((g|0)!=33554431){continue}break}f=H[j>>2]+1|0}H[k>>2]=f;f=H[c>>2];H[(i+N(H[b+4>>2]>>>7|0,24)|0)+8>>2]=f;H[(i+N(f>>>7|0,24)|0)+12>>2]=H[b+4>>2];H[b+4>>2]=H[c+4>>2];H[b+8>>2]=H[b+8>>2]+H[c+8>>2];H[b+12>>2]=H[b+12>>2]+H[c+12>>2];f=d<<2;d=H[a+100>>2];f=f+d|0;g=d+(e<<2)|0;H[f>>2]=H[f>>2]+H[g>>2];i=H[c+20>>2];d=H[a+40>>2];f=H[b+28>>2];a:{if((f|0)!=-1){h=H[a+60>>2];j=(f>>>0)/(h>>>0)|0;f=(H[d+(j<<2)>>2]+(f-N(h,j)<<4)|0)+8|0;break a}f=b+20|0}H[f>>2]=i;f=H[c+20>>2];if((f|0)!=-1){i=H[a+60>>2];h=(f>>>0)/(i>>>0)|0;H[(H[d+(h<<2)>>2]+(f-N(i,h)<<4)|0)+12>>2]=H[b+28>>2];H[b+28>>2]=H[c+28>>2]}H[b+36>>2]=H[b+36>>2]+H[c+36>>2];H[c+36>>2]=0;H[c+28>>2]=-1;H[c+20>>2]=-1;i=H[c+24>>2];f=H[b+32>>2];b:{if((f|0)!=-1){h=H[a+60>>2];j=(f>>>0)/(h>>>0)|0;f=(H[d+(j<<2)>>2]+(f-N(h,j)<<4)|0)+8|0;break b}f=b+24|0}H[f>>2]=i;f=H[c+24>>2];if((f|0)!=-1){i=H[a+60>>2];h=(f>>>0)/(i>>>0)|0;H[(H[d+(h<<2)>>2]+(f-N(i,h)<<4)|0)+12>>2]=H[b+32>>2];H[b+32>>2]=H[c+32>>2]}H[b+40>>2]=H[b+40>>2]+H[c+40>>2];H[c+40>>2]=0;H[c+32>>2]=-1;H[c+24>>2]=-1;H[c+8>>2]=0;H[c+12>>2]=0;H[c>>2]=-128;H[c+4>>2]=-128;H[g>>2]=0;if(H[c+16>>2]!=-1){c=H[a+88>>2];b=c+N(e,44)|0;d=H[a+240>>2];f=H[(d+(H[a+244>>2]<<2)|0)-4>>2];H[(c+N(f,44)|0)+16>>2]=H[b+16>>2];H[d+(H[b+16>>2]<<2)>>2]=f;H[a+244>>2]=H[a+244>>2]-1;H[b+16>>2]=-1;a=H[a+216>>2]+(e>>>3&536870908)|0;b=H[a>>2];o=a,p=j7(-2,e)&b,H[o>>2]=p}}function yx(a,b,c,d,e,f,g,h,i){var j=0,k=0,l=0,m=0,n=O(0),o=0,p=0,q=0,r=0,s=0,t=0;p=I[b+13|0];j=H[b+4>>2];k=H[b>>2];m=Oa-16|0;H[m+8>>2]=0;H[m+12>>2]=0;H[m+4>>2]=0;a:{b:{if(!k){q=a+4096|0;b=H[a+4096>>2];break b}q=a+4096|0;b=H[a+4096>>2];l=I[k+43|0];if(l&4){break b}L[e>>2]=L[k>>2];L[f>>2]=L[k+8>>2];L[g>>2]=L[k+4>>2];L[h>>2]=L[k+12>>2];F[c|0]=l>>>5&1;F[d|0]=l>>>4&1;if(!p){break b}o=l&128?32:l&2?64:16;f=l&130;e=b;h=0;g=0;while(1){if(h){d=I[k+41|0];j=d>>>0>g>>>0?N(d-g|0,o)+j|0:j;k=k+48|0}h=h+1|0;g=I[k+41|0];c:{if(!g){g=0;break c}j=s?j+o|0:j;n=i;r=I[c|0];d:{e:{if(r){if(!f){n=O(3.4028234663852886e38);break e}n=L[j+28>>2]}if(n==O(0)){break d}}d=(e<<6)+a|0;L[d>>2]=L[k+16>>2];L[d+4>>2]=L[k+20>>2];L[d+8>>2]=L[k+24>>2];L[d+16>>2]=L[j>>2];L[d+20>>2]=L[j+4>>2];L[d+24>>2]=L[j+8>>2];L[d+12>>2]=L[j+12>>2];l=I[k+42|0];L[d+28>>2]=n;F[d+48|0]=l;L[d+44>>2]=L[k+36>>2];L[d+56>>2]=L[k+32>>2];L[d+60>>2]=L[k+28>>2];L[d+32>>2]=L[(f?j+16|0:m+12|0)>>2];L[d+36>>2]=L[(f?j+20|0:m+8|0)>>2];L[d+40>>2]=L[(f?j+24|0:m+4|0)>>2];e=e+1|0}s=1;if((g|0)==1){g=1;break c}l=1;while(1){l=l+1|0;j=j+o|0;n=i;f:{g:{if(r){if(!f){n=O(3.4028234663852886e38);break g}n=L[j+28>>2]}if(n==O(0)){break f}}d=(e<<6)+a|0;L[d>>2]=L[k+16>>2];L[d+4>>2]=L[k+20>>2];L[d+8>>2]=L[k+24>>2];L[d+16>>2]=L[j>>2];L[d+20>>2]=L[j+4>>2];L[d+24>>2]=L[j+8>>2];L[d+12>>2]=L[j+12>>2];t=I[k+42|0];L[d+28>>2]=n;F[d+48|0]=t;L[d+44>>2]=L[k+36>>2];L[d+56>>2]=L[k+32>>2];L[d+60>>2]=L[k+28>>2];L[d+32>>2]=L[(f?j+16|0:m+12|0)>>2];L[d+36>>2]=L[(f?j+20|0:m+8|0)>>2];L[d+40>>2]=L[(f?j+24|0:m+4|0)>>2];e=e+1|0}if((g|0)!=(l|0)){continue}break}}if((h|0)!=(p|0)){continue}break}break a}e=b}H[q>>2]=e;return e-b|0}function ZV(a,b,c){var d=O(0),e=O(0),f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),F=O(0),G=O(0),H=O(0),I=O(0),J=O(0),K=O(0);d=L[c+8>>2];i=L[c+4>>2];w=L[c+12>>2];e=L[c>>2];h=L[b+16>>2];j=O(h+h);f=L[b+20>>2];l=O(f+f);x=O(h*j);m=O(f*l);s=O(O(O(1)-x)-m);E=L[b>>2];t=L[b+12>>2];r=O(t+t);n=O(r*f);o=L[b+24>>2];p=O(j*o);D=O(n+p);k=O(E*D);y=O(r*h);z=O(l*o);h=O(y+z);g=O(j*f);q=O(r*o);f=O(g-q);F=L[b+4>>2];u=O(f*F);j=O(n-p);o=O(O(1)-O(t*r));r=O(o-x);G=L[b+8>>2];n=O(r*G);l=O(O(O(s*k)+O(h*u))+O(j*n));H=L[c+16>>2];t=O(y-z);o=O(o-m);x=O(g+q);m=O(O(O(t*k)+O(o*u))+O(x*n));y=L[c+20>>2];k=O(O(O(D*k)+O(f*u))+O(r*n));z=L[c+24>>2];L[a+44>>2]=O(O(l*H)+O(m*y))+O(k*z);p=O(E*t);g=O(o*F);q=O(x*G);u=O(O(O(s*p)+O(h*g))+O(j*q));n=O(O(O(t*p)+O(o*g))+O(x*q));p=O(O(O(D*p)+O(f*g))+O(r*q));L[a+40>>2]=O(O(H*u)+O(y*n))+O(z*p);v=e;e=O(e+e);v=O(O(1)-O(v*e));g=O(i+i);J=O(i*g);q=O(v-J);A=O(e*d);K=O(g*w);I=O(A+K);B=O(g*d);C=O(e*w);g=O(B-C);L[a+32>>2]=O(k*q)+O(O(l*I)+O(m*g));L[a+28>>2]=O(p*q)+O(O(u*I)+O(n*g));B=O(B+C);i=O(e*i);e=O(d+d);C=O(w*e);w=O(i-C);d=O(d*e);e=O(v-d);L[a+20>>2]=O(k*B)+O(O(l*w)+O(m*e));L[a+16>>2]=O(p*B)+O(O(u*w)+O(n*e));v=k;k=O(A-K);A=l;l=O(O(O(1)-J)-d);d=m;m=O(i+C);L[a+8>>2]=O(v*k)+O(O(A*l)+O(d*m));L[a+4>>2]=O(p*k)+O(O(u*l)+O(n*m));v=s;s=O(E*s);A=h;h=O(h*F);d=j;j=O(j*G);d=O(O(O(v*s)+O(A*h))+O(d*j));i=O(O(O(t*s)+O(o*h))+O(x*j));f=O(O(O(D*s)+O(f*h))+O(r*j));L[a+36>>2]=O(O(H*d)+O(y*i))+O(z*f);L[a+24>>2]=O(f*q)+O(O(d*I)+O(i*g));L[a+12>>2]=O(f*B)+O(O(d*w)+O(i*e));L[a>>2]=O(f*k)+O(O(d*l)+O(i*m))}function nn(a,b){var c=O(0),d=0,e=0,f=O(0),g=O(0),h=O(0),i=0,j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=0,t=O(0),u=O(0);e=Oa-32|0;Oa=e;d=H[a+316>>2]&1024?H[a+56>>2]+144|0:a+112|0;j=L[d+8>>2];k=L[d+4>>2];l=L[d+12>>2];m=L[d>>2];t=L[b+20>>2];u=L[b+16>>2];f=L[b+8>>2];c=L[d+24>>2];n=O(c+c);g=L[b>>2];c=L[d+16>>2];o=O(c+c);c=L[d+20>>2];p=O(c+c);h=L[b+4>>2];q=O(O(f*n)+O(O(g*o)+O(p*h)));c=L[b+12>>2];r=O(O(c*c)+O(-.5));L[e+24>>2]=L[b+24>>2]+O(O(f*q)+O(O(n*r)+O(c*O(O(g*p)-O(o*h)))));L[e+20>>2]=t+O(O(h*q)+O(O(p*r)+O(c*O(O(f*o)-O(n*g)))));L[e+12>>2]=O(O(O(c*l)-O(m*g))-O(h*k))-O(f*j);L[e+8>>2]=O(O(g*k)+O(O(c*j)+O(f*l)))-O(m*h);L[e+4>>2]=O(O(f*m)+O(O(c*k)+O(h*l)))-O(j*g);L[e>>2]=O(O(h*j)+O(O(c*m)+O(g*l)))-O(k*f);L[e+16>>2]=u+O(O(g*q)+O(O(o*r)+O(c*O(O(h*n)-O(p*f)))));b=a+48|0;i=H[b>>2];c=L[i+5132>>2];a:{b:{c:{d:{s=H[b+4>>2];switch((s>>>30|0)-2|0){case 1:break b;case 0:break d;default:break c}}if(I[i+4785|0]){break b}}$F(b+16|0,H[i+2428>>2],e,c);L[b+260>>2]=c;H[b+264>>2]=0;break a}d=H[b+8>>2];if(!d){d=Tt(i,s>>>24&15);H[b+8>>2]=d;i=H[b>>2]}L[d+192>>2]=L[e>>2];L[d+196>>2]=L[e+4>>2];L[d+200>>2]=L[e+8>>2];L[d+204>>2]=L[e+12>>2];L[d+208>>2]=L[e+16>>2];L[d+212>>2]=L[e+20>>2];L[d+216>>2]=L[e+24>>2];$t(i,b);H[b+268>>2]=H[b+268>>2]|32768;e:{f:{switch((H[b+4>>2]>>>30|0)-2|0){case 0:d=H[b>>2];if(I[d+4785|0]){break e}default:L[b+260>>2]=c;H[b+264>>2]=0;WF(b+16|0,c,1);break a;case 1:break f}}d=H[b>>2]}L[b+260>>2]=c;H[b+264>>2]=0;$t(d,b);H[b+268>>2]=H[b+268>>2]&-117440513|83886080}b=vg(a);if(!(!(I[(I[a+317|0]&64?H[a+56>>2]+268|0:a+108|0)|0]&2)|!b)){pt(a+20|0,b+5584|0,a);a=b+5652|0;H[a>>2]=H[a>>2]+1}Oa=e+32|0}function c2(a,b,c,d){var e=0,f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=0,n=O(0),o=O(0),p=0,q=O(0);g=L[b+20>>2];p=L[b+12>>2]>O(0);if(g>2]>O(0)?O(0):L[b+16>>2])+c)){e=H[a+4>>2];H[a+4>>2]=e+80;G[e+78>>1]=0;L[e>>2]=L[d>>2];L[e+4>>2]=L[d+4>>2];L[e+8>>2]=L[d+8>>2];f=L[a+16>>2];k=L[d+8>>2];l=L[a+8>>2];h=L[d+4>>2];i=L[d>>2];j=L[a+12>>2];L[e+24>>2]=O(l*h)-O(i*j);L[e+20>>2]=O(f*i)-O(k*l);L[e+16>>2]=O(j*k)-O(h*f);L[e+32>>2]=L[d>>2];L[e+36>>2]=L[d+4>>2];L[e+40>>2]=L[d+8>>2];f=L[a+28>>2];k=L[a+24>>2];l=L[d+8>>2];h=L[a+20>>2];i=L[d+4>>2];j=L[d>>2];g=O(g-c);L[e+12>>2]=g;L[e+56>>2]=O(h*i)-O(j*k);L[e+52>>2]=O(f*j)-O(l*h);L[e+48>>2]=O(k*l)-O(i*f);m=J[e+76>>1];f=L[b+8>>2];a:{if(f>O(0)|p){L[e+64>>2]=f;L[e+68>>2]=L[b+12>>2];m=m|17;break a}G[e+78>>1]=2049;L[e+64>>2]=L[b>>2];L[e+68>>2]=L[b+4>>2];m=m|(g>O(0)?24:16);if(!(L[b>>2]>O(0))){break a}m=m|4}H[e+44>>2]=0;G[e+76>>1]=m}q=L[b+24>>2];e=L[b+12>>2]>O(0);if(O(-q)>2]>O(0)?O(0):L[b+16>>2])-c)){f=L[d+8>>2];k=L[d+4>>2];l=L[d>>2];d=H[a+4>>2];H[a+4>>2]=d+80;h=O(-f);L[d+8>>2]=h;i=O(-k);L[d+4>>2]=i;j=O(-l);L[d>>2]=j;G[d+78>>1]=0;g=L[a+16>>2];n=L[a+12>>2];o=L[a+8>>2];L[d+40>>2]=h;L[d+36>>2]=i;L[d+32>>2]=j;L[d+24>>2]=O(o*i)+O(l*n);L[d+20>>2]=O(g*j)+O(f*o);L[d+16>>2]=O(n*h)+O(k*g);g=L[a+28>>2];n=L[a+24>>2];o=L[a+20>>2];c=O(c-q);L[d+12>>2]=c;L[d+56>>2]=O(o*i)+O(l*n);L[d+52>>2]=O(g*j)+O(f*o);L[d+48>>2]=O(n*h)+O(k*g);a=J[d+76>>1];f=L[b+8>>2];b:{if(e|f>O(0)){L[d+64>>2]=f;L[d+68>>2]=L[b+12>>2];a=a|17;break b}G[d+78>>1]=2049;L[d+64>>2]=L[b>>2];L[d+68>>2]=L[b+4>>2];a=a|(c>O(0)?24:16);if(!(L[b>>2]>O(0))){break b}a=a|4}H[d+44>>2]=0;G[d+76>>1]=a}}function _A(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;j=Oa-16|0;Oa=j;i=H[b+24>>2];e=H[33808];g=e+12|0;h=(H[c>>2]+H[a+40>>2]|0)+1|0;f=g7(h,0,28,0);k=f+4|0;f=(n=g,o=Qa?-1:f>>>0>k>>>0?-1:k,p=Ra[H[H[e>>2]+20>>2]](e)|0?39172:55639,q=9670,r=725,m=H[H[g>>2]+8>>2],Ra[m](n|0,o|0,p|0,q|0,r|0)|0);H[f>>2]=h;g=f+4|0;f=i>>>1|0;e=(H[c>>2]+H[a+40>>2]<<2)+4|0;if(e){h=H[33808]+12|0;e=Ra[H[H[h>>2]+8>>2]](h,e,20591,9670,726)|0}else{e=0}l=N(f,28);g=R6(g,H[a+8>>2],l);k=f<<2;h=R6(e,H[a+36>>2],k);H[j+12>>2]=f;e=g+l|0;L[e>>2]=L[b>>2];L[e+4>>2]=L[b+4>>2];L[e+8>>2]=L[b+8>>2];L[e+12>>2]=L[b+12>>2];L[e+16>>2]=L[b+16>>2];L[e+20>>2]=L[b+20>>2];H[e+24>>2]=(H[c>>2]+(H[b+24>>2]>>>1|0)<<1)+2;l=h+k|0;H[l>>2]=d;b=H[a+52>>2];if(!(!b|!(H[b+(d>>>3&536870908)>>2]>>>d&1))){i=i>>>6|0;b=b+(i<<2)|0;H[b>>2]=H[b>>2]|1<>2];H[a+60>>2]=b>>>0>>0?i:b}b=H[a+40>>2]-f|0;if(b){R6((e+N(H[c>>2],28)|0)+28|0,H[a+8>>2]+N(f,28)|0,N(b,28));R6((l+(H[c>>2]<<2)|0)+4|0,H[a+36>>2]+(f<<2)|0,H[a+40>>2]-f<<2)}b=H[a+8>>2];if(b){e=H[33808]+12|0;Ra[H[H[e>>2]+12>>2]](e,b-4|0)}H[a+8>>2]=g;b=H[a+36>>2];if(b){e=H[33808]+12|0;Ra[H[H[e>>2]+12>>2]](e,b)}H[a+36>>2]=h;b=f+1|0;H[j+12>>2]=b;YA(a,j+12|0,c);H[a+40>>2]=(H[a+40>>2]+H[c>>2]|0)+1;h=H[a+36>>2];H[h+(b<<2)>>2]=d;b=b+H[c>>2]|0;if(b>>>0>2]){i=H[a+8>>2];while(1){g=h+(b<<2)|0;e=H[g>>2];a:{if((e|0)==(d|0)){H[g>>2]=f;break a}if(e>>>0>=f>>>0){H[g>>2]=(e+H[c>>2]|0)+1;break a}if(!(b&1)){break a}e=i+N(e,28)|0;H[e+24>>2]=(H[e+24>>2]+(H[c>>2]<<1)|0)+2&-2}e=i+N(b,28)|0;g=H[e+24>>2];if(!(g&1)){H[e+24>>2]=(g+(H[c>>2]<<1)|0)+2&-2}b=b+1|0;if(b>>>0>2]){continue}break}}Oa=j+16|0}function a2(a,b,c,d){var e=O(0),f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0);e=L[b>>2];l=L[b+4>>2];f=L[b+12>>2];h=O(f+O(1));j=O(O5(l,h)*O(4));m=O(P(j));i=L[a+8>>2];g=L[a>>2];k=O(O(m+i)/g);o=O(k*k);q=i;k=L[b+8>>2];i=O(O5(k,h)*O(4));p=O(P(i));h=L[a+4>>2];n=O(O(q+p)/h);a=O(o+O(n*n))<=O(1);if(!a){n=O(e+e);r=O(f+f);u=O(O(n*k)-O(l*r));v=O(O(k*r)+O(n*l));r=O(O(e*n)+O(O(f*r)+O(-1)));a:{b:{if(g>=h){if(!(pO(0)?g:O(-g);break a}if(!(mO(0)?h:O(-h);f=O(0);break a}n=O(m*g);f=O(g*g);e=O(n-f);p=O(p*h);l=O(h*h);m=O(p-l);e=e>m?e:m;b=0;c:{while(1){m=O(O(1)/O(f+e));k=O(n*m);s=O(k*k);k=O(O(1)/O(l+e));o=O(p*k);o=O(o*o);t=O(O(s+o)+O(-1));if(t>2]=l;j=O(o*j);g=O(O(O(j*g)-O(e*m))*f);L[c+4>>2]=g;e=O(O(O(i*e)-O(h*j))*f);L[c>>2]=e;L[d>>2]=O(O(O(m*g)-O(e*i))*u)+O(O(O(O(i*l)-O(g*j))*r)+O(v*O(O(j*e)-O(l*m))))}return!a}function tL(a,b,c,d,e,f,g,h,i,j){var k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),F=O(0),G=O(0),H=O(0),I=O(0),J=O(0),K=O(0),M=O(0),N=O(0),P=O(0),Q=O(0),R=O(0),S=O(0),T=O(0),U=O(0),V=O(0),W=O(0),X=O(0),Y=O(0);k=L[d>>2];l=L[c>>2];v=L[g>>2];N=L[b>>2];w=L[f>>2];x=L[a>>2];y=L[e>>2];m=L[d+4>>2];n=L[c+4>>2];z=L[g+4>>2];P=L[b+4>>2];A=L[f+4>>2];B=L[a+4>>2];C=L[e+4>>2];o=L[d+8>>2];p=L[c+8>>2];D=L[g+8>>2];Q=L[b+8>>2];E=L[f+8>>2];F=L[a+8>>2];G=L[e+8>>2];H=L[g+12>>2];r=L[c+12>>2];I=L[f+12>>2];R=L[b+12>>2];J=L[e+12>>2];K=L[a+12>>2];S=O(O(H*r)+O(O(I*R)+O(J*K)));q=L[d+12>>2];T=O(O(q*q)+O(-.5));s=O(O(O(T*J)+O(q*O(O(H*R)-O(I*r))))+O(K*S));L[h+12>>2]=s+s;s=O(O(o*o)+O(-.5));U=O(O(D*p)+O(O(E*Q)+O(G*F)));t=O(O(O(G*s)+O(o*O(O(D*Q)-O(E*p))))+O(F*U));L[h+8>>2]=t+t;t=O(O(m*m)+O(-.5));V=O(O(z*n)+O(O(A*P)+O(C*B)));u=O(O(O(C*t)+O(m*O(O(z*P)-O(A*n))))+O(B*V));L[h+4>>2]=u+u;u=O(O(k*k)+O(-.5));W=O(O(v*l)+O(O(w*N)+O(y*x)));M=O(O(O(y*u)+O(k*O(O(v*N)-O(w*l))))+O(x*W));L[h>>2]=M+M;M=L[b>>2];X=L[b+4>>2];Y=L[b+8>>2];r=O(O(O(T*I)+O(q*O(O(J*r)-O(H*K))))+O(S*L[b+12>>2]));L[i+12>>2]=r+r;p=O(O(O(s*E)+O(o*O(O(G*p)-O(D*F))))+O(U*Y));L[i+8>>2]=p+p;n=O(O(O(t*A)+O(m*O(O(C*n)-O(z*B))))+O(V*X));L[i+4>>2]=n+n;l=O(O(O(u*w)+O(k*O(O(y*l)-O(v*x))))+O(W*M));L[i>>2]=l+l;l=L[c>>2];n=L[c+4>>2];p=L[c+8>>2];q=O(O(O(T*H)+O(q*O(O(I*K)-O(J*R))))+O(S*L[c+12>>2]));L[j+12>>2]=q+q;o=O(O(O(s*D)+O(o*O(O(E*F)-O(G*Q))))+O(U*p));L[j+8>>2]=o+o;m=O(O(O(t*z)+O(m*O(O(A*B)-O(C*P))))+O(V*n));L[j+4>>2]=m+m;k=O(O(O(u*v)+O(k*O(O(w*x)-O(y*N))))+O(W*l));L[j>>2]=k+k}function fU(a,b,c,d,e,f,g,h){var i=0,j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=0,p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0);i=Oa-112|0;Oa=i;a:{b:{switch(H[c>>2]){case 0:j=L[c+4>>2];H[i+104>>2]=0;L[i+100>>2]=j;H[i+96>>2]=2;l=L[d+16>>2];L[i+16>>2]=l;k=L[d+20>>2];L[i+20>>2]=k;m=L[d+24>>2];L[i+36>>2]=m;L[i+32>>2]=k;L[i+40>>2]=j;L[i+28>>2]=l;L[i+24>>2]=m;c=J[h>>1];h=H[(H[e>>2]<<2)+(c&256?126488:126460)>>2];G[i+88>>1]=c;o=Ra[h|0](e,f,i+96|0,d,i+16|0,a,b,g,i+88|0,O(0))|0;break a;case 2:j=L[d+20>>2];l=L[d+16>>2];q=L[d+24>>2];k=L[d>>2];m=O(k+k);r=L[d+8>>2];t=L[d+4>>2];n=L[d+12>>2];s=O(n+n);p=L[c+8>>2];u=O(O(O(m*r)-O(t*s))*p);L[i+36>>2]=q-u;r=O(p*O(O(r*s)+O(m*t)));L[i+32>>2]=j-r;L[i+24>>2]=u+q;L[i+20>>2]=j+r;j=O(p*O(O(k*m)+O(O(n*s)+O(-1))));L[i+28>>2]=l-j;L[i+16>>2]=l+j;L[i+40>>2]=L[c+4>>2];h=J[h>>1];o=H[(H[e>>2]<<2)+(h&256?126488:126460)>>2];G[i+80>>1]=h;o=Ra[o|0](e,f,c,d,i+16|0,a,b,g,i+80|0,O(0))|0;break a;case 3:l=L[d+4>>2];m=O(l+l);j=L[d+8>>2];p=O(m*j);n=L[d>>2];k=O(n+n);s=L[d+12>>2];q=O(k*s);L[i+44>>2]=p-q;L[i+36>>2]=p+q;n=O(O(1)-O(n*k));p=O(l*m);L[i+48>>2]=n-p;r=n;n=O(j+j);q=O(j*n);L[i+32>>2]=r-q;j=O(k*j);m=O(m*s);L[i+40>>2]=j+m;l=O(k*l);k=O(n*s);L[i+28>>2]=l-k;L[i+24>>2]=j-m;L[i+20>>2]=l+k;L[i+16>>2]=O(O(1)-p)-q;L[i+52>>2]=L[d+16>>2];L[i+56>>2]=L[d+20>>2];L[i+60>>2]=L[d+24>>2];L[i+64>>2]=L[c+4>>2];L[i+68>>2]=L[c+8>>2];L[i+72>>2]=L[c+12>>2];h=J[h>>1];o=H[((h&256?84:56)+126460|0)+(H[e>>2]<<2)>>2];G[i+8>>1]=h;o=Ra[o|0](e,f,c,d,i+16|0,a,b,g,i+8|0,O(0))|0;break a;case 4:break b;default:break a}}o=H[e>>2];G[i>>1]=J[h>>1];o=Ra[H[((o<<2)+126460|0)+112>>2]](e,f,c,d,a,b,g,i,O(0))|0}Oa=i+112|0;return o}function TO(a,b,c){var d=0,e=0,f=0,g=0,h=0;d=H[a+2376>>2];e=H[d+12>>2];a:{if(e){e=e-1|0;f=H[H[d+8>>2]+(e<<2)>>2];H[d+12>>2]=e;d=f+1|0;break a}h=d;f=H[d+4>>2];d=f+1|0;H[h+4>>2]=d}e=H[a+1140>>2];g=H[e+12>>2]&2147483647;if(g>>>0<=d>>>0){d=d>>>1|d;d=d>>>2|d;d=d>>>4|d;d=d>>>8|d;d=(d>>>16|d)+1|0;if(d>>>0>g>>>0){ZH(e,d)}H[e+8>>2]=d}a=H[a+980>>2];d=0;g=Oa-16|0;Oa=g;e=H[33808];h=Ra[H[H[e>>2]+20>>2]](e)|0?36724:55639;e=Ra[H[H[e+12>>2]+8>>2]](e+12|0,64,h,7273,1319)|0;F[e+60|0]=0;H[e+28>>2]=0;H[e+32>>2]=0;H[e+12>>2]=0;H[e+4>>2]=0;H[e+8>>2]=0;H[e>>2]=f;H[e+20>>2]=-1;H[e+24>>2]=0;if(c){c=H[33808];d=Ra[H[H[c>>2]+20>>2]](c)|0?26134:55639;d=Ra[H[H[c+12>>2]+8>>2]](c+12|0,44,d,7273,883)|0;H[d+4>>2]=-1;H[d>>2]=115704;c=d+8|0;H[c>>2]=0;H[c+4>>2]=0;H[d+32>>2]=0;H[d+24>>2]=0;H[d+28>>2]=0;H[d+16>>2]=0;H[d+20>>2]=0;H[d+40>>2]=e;H[d>>2]=115424;F[d+36|0]=0}H[e+16>>2]=d;H[g+12>>2]=e;d=H[a+372>>2];b:{if((d|0)==-1){d=H[a+380>>2];if(d>>>0>=(H[a+384>>2]&2147483647)>>>0){nH(a+376|0,g+12|0);break b}H[H[a+376>>2]+(d<<2)>>2]=e;H[a+380>>2]=d+1;break b}c=H[a+376>>2]+(d<<2)|0;H[a+372>>2]=H[c>>2];H[c>>2]=e}c=H[a+504>>2];c:{if(c){e=c-1|0;c=H[H[a+500>>2]+(e<<2)>>2];H[a+504>>2]=e;break c}c=H[a+496>>2];H[a+496>>2]=c-1;c=c<<2|3}e=f+1|0;if(e>>>0>=K[a+200>>2]){iH(a,e)}h=H[a+360>>2];H[a+360>>2]=e>>>0>>0?h:e;e=f<<2;H[e+H[a+180>>2]>>2]=c;H[e+H[H[a+192>>2]+4>>2]>>2]=0;c=H[a+196>>2]+(f<<3)|0;H[c+4>>2]=d<<1|1;H[c>>2]=b;c=H[a+276>>2];b=H[c+4>>2]+N(f,24)|0;H[b+8>>2]=2122317823;H[b+12>>2]=-25165825;H[b>>2]=2122317823;H[b+4>>2]=2122317823;H[b+16>>2]=-25165825;H[b+20>>2]=-25165825;F[c+16|0]=1;H[a+368>>2]=H[a+368>>2]+1;Oa=g+16|0;return d}function uN(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,o=0,p=0,q=0,r=0;if(!(H[a+132>>2]?H[a+128>>2]!=(H[a+308>>2]-1|0):0)){b=H[a+136>>2];c=H[a+148>>2];h=H[(b+(c<<3)|0)+4>>2]+(c<<7)|0;if(h){while(1){j=(d&127)<<6;k=d>>>7<<3;l=j+H[k+b>>2]|0;c=H[l+40>>2];b=H[c+32>>2];a:{if(!b|!I[b+35|0]){break a}b=H[a+212>>2];if(b>>>0>=(H[a+216>>2]&2147483647)>>>0){b=0;c=H[a+216>>2]&2147483647;i=c?c<<1:1;b:{if(!i){break b}c=i<<2;if(!c){break b}b=H[33808];e=b+12|0;b=(n=e,o=c,p=Ra[H[H[b>>2]+20>>2]](b)|0?47876:55639,q=13582,r=553,m=H[H[e>>2]+8>>2],Ra[m](n|0,o|0,p|0,q|0,r|0)|0)}g=H[a+212>>2];f=(g<<2)+b|0;if((g|0)>0){e=H[a+208>>2];c=b;while(1){H[c>>2]=H[e>>2];e=e+4|0;c=c+4|0;if(f>>>0>c>>>0){continue}break}}H[f>>2]=H[l+40>>2];c:{if(H[a+216>>2]<0){break c}c=H[a+208>>2];if(!c){break c}e=H[33808]+12|0;Ra[H[H[e>>2]+12>>2]](e,c);g=H[a+212>>2]}H[a+216>>2]=i;H[a+208>>2]=b;H[a+212>>2]=g+1;break a}H[H[a+208>>2]+(b<<2)>>2]=c;H[a+212>>2]=b+1}b=H[a+136>>2];c=H[(H[k+b>>2]+j|0)+40>>2];H[c+32>>2]=0;F[H[c+36>>2]+156|0]=0;d=d+1|0;if((h|0)!=(d|0)){continue}break}}H[a+148>>2]=0;H[H[a+136>>2]+4>>2]=0}H[a+180>>2]=0;H[H[a+168>>2]+4>>2]=0;b=H[a+240>>2];if(!(!b|!H[a+256>>2])){S6(H[a+232>>2],255,b<<2);d=0;c=H[a+228>>2];b=H[a+236>>2];g=b-1|0;if(g){e=0;if(b-2>>>0>=3){i=g&-4;b=0;while(1){f=d|1;H[c+(d<<2)>>2]=f;h=c+(f<<2)|0;f=d|2;H[h>>2]=f;h=c+(f<<2)|0;f=d|3;H[h>>2]=f;d=d+4|0;H[c+(f<<2)>>2]=d;b=b+4|0;if((i|0)!=(b|0)){continue}break}}b=g&3;if(b){while(1){f=c+(d<<2)|0;d=d+1|0;H[f>>2]=d;e=e+1|0;if((b|0)!=(e|0)){continue}break}}b=H[a+236>>2]-1|0}else{b=0}H[c+(b<<2)>>2]=-1;H[a+256>>2]=0;H[a+248>>2]=0}H[a+128>>2]=H[a+128>>2]+1}function DX(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=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0);c=Oa-160|0;Oa=c;e=H[a+16>>2];g=H[a+20>>2];H[c+128>>2]=-25165825;H[c+132>>2]=-25165825;H[c+120>>2]=2122317823;H[c+124>>2]=-25165825;F[c+141|0]=0;F[c+142|0]=0;F[c+143|0]=0;F[c+144|0]=0;F[c+145|0]=0;F[c+146|0]=0;F[c+147|0]=0;F[c+148|0]=0;H[c+136>>2]=0;H[c+140>>2]=0;H[c+112>>2]=2122317823;H[c+116>>2]=2122317823;H[c+84>>2]=1;H[c+80>>2]=b+8;H[c+76>>2]=g;H[c+72>>2]=e;H[c+88>>2]=c+156;d=H[a+36>>2];yX(c+48|0,H[e+40>>2],g,H[b+8>>2]);i=L[d+8>>2];h=L[c+56>>2];j=O(h+h);k=L[d>>2];h=L[c+48>>2];l=O(h+h);h=L[c+52>>2];m=O(h+h);n=L[d+4>>2];o=O(O(i*j)+O(O(k*l)+O(m*n)));b=H[a+24>>2];h=L[d+12>>2];p=O(O(h*h)+O(-.5));if(L[a+12>>2]<=O(O(O(L[b>>2]*O(-O(O(k*o)+O(O(l*p)+O(h*O(O(n*j)-O(m*i)))))))-O(L[b+4>>2]*O(O(n*o)+O(O(m*p)+O(h*O(O(i*l)-O(j*k)))))))-O(L[b+8>>2]*O(O(i*o)+O(O(j*p)+O(h*O(O(k*m)-O(l*n)))))))){zX(c+72|0,c+48|0,H[a+36>>2]);d=H[a+40>>2];b=H[a+44>>2];h=L[b>>2];i=L[b+4>>2];L[c+40>>2]=L[b+8>>2]*O(1.100000023841858);L[c+36>>2]=i*O(1.100000023841858);L[c+32>>2]=h*O(1.100000023841858);h=L[c+56>>2];i=L[c+68>>2];L[c+24>>2]=O(h+i)*O(.5);j=L[c+52>>2];k=L[c- -64>>2];L[c+20>>2]=O(j+k)*O(.5);l=L[c+48>>2];m=L[c+60>>2];L[c+16>>2]=O(l+m)*O(.5);L[c+8>>2]=O(O(O(i-h)*O(.5))+O(.009999999776482582))*O(1.100000023841858);L[c+4>>2]=O(O(O(k-j)*O(.5))+O(.009999999776482582))*O(1.100000023841858);L[c>>2]=O(O(O(m-l)*O(.5))+O(.009999999776482582))*O(1.100000023841858);h=qN(d,c+32|0,c+16|0,c,H[a+28>>2],H[a+32>>2]);i=L[a+8>>2];h=h>i?i:h;L[a+8>>2]=h;L[f>>2]=h}Oa=c+160|0;return L[a+8>>2]>O(0)|0}function oN(a){var b=0,c=0,d=O(0),e=0,f=0,g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0);b=Oa-96|0;Oa=b;c=H[a>>2];a:{if(!c){break a}e=H[a+8>>2];if(H[H[c+32>>2]+48>>2]==H[e+88>>2]){break a}f=b- -64|0;mN(f,e,c);nN(b+32|0,H[a+8>>2],H[a>>2]);g=L[b+52>>2];d=L[b+84>>2];h=L[b+56>>2];j=L[b+88>>2];i=L[b+48>>2];k=L[b+80>>2];dU(b+16|0,b,H[H[a+8>>2]+92>>2]+36|0,f);l=L[b+16>>2];m=L[b+20>>2];c=H[a+8>>2];L[c+84>>2]=L[b+24>>2]-O(j-h);L[c+80>>2]=m-O(d-g);L[c+76>>2]=l-O(k-i);L[c+64>>2]=L[b>>2];L[c+68>>2]=L[b+4>>2];L[c+72>>2]=L[b+8>>2];L[c+8>>2]=L[b+32>>2];L[c+12>>2]=L[b+36>>2];L[c+16>>2]=L[b+40>>2];d=L[b+44>>2];L[c+32>>2]=h;L[c+28>>2]=g;L[c+24>>2]=i;L[c+20>>2]=d;L[c+36>>2]=L[b+64>>2];L[c+40>>2]=L[b+68>>2];L[c+44>>2]=L[b+72>>2];L[c+48>>2]=L[b+76>>2];L[c+52>>2]=L[b+80>>2];L[c+56>>2]=L[b+84>>2];L[c+60>>2]=L[b+88>>2];H[c+88>>2]=H[H[H[a>>2]+32>>2]+48>>2]}c=H[a+4>>2];b:{if(!c){break b}e=H[a+12>>2];if(H[H[c+32>>2]+48>>2]==H[e+88>>2]){break b}f=b- -64|0;mN(f,e,c);nN(b+32|0,H[a+12>>2],H[a+4>>2]);g=L[b+52>>2];d=L[b+84>>2];h=L[b+56>>2];j=L[b+88>>2];i=L[b+48>>2];k=L[b+80>>2];dU(b+16|0,b,H[H[a+12>>2]+92>>2]+36|0,f);l=L[b+16>>2];m=L[b+20>>2];c=H[a+12>>2];L[c+84>>2]=L[b+24>>2]-O(j-h);L[c+80>>2]=m-O(d-g);L[c+76>>2]=l-O(k-i);L[c+64>>2]=L[b>>2];L[c+68>>2]=L[b+4>>2];L[c+72>>2]=L[b+8>>2];L[c+8>>2]=L[b+32>>2];L[c+12>>2]=L[b+36>>2];L[c+16>>2]=L[b+40>>2];d=L[b+44>>2];L[c+32>>2]=h;L[c+28>>2]=g;L[c+24>>2]=i;L[c+20>>2]=d;L[c+36>>2]=L[b+64>>2];L[c+40>>2]=L[b+68>>2];L[c+44>>2]=L[b+72>>2];L[c+48>>2]=L[b+76>>2];L[c+52>>2]=L[b+80>>2];L[c+56>>2]=L[b+84>>2];L[c+60>>2]=L[b+88>>2];H[c+88>>2]=H[H[H[a+4>>2]+32>>2]+48>>2]}Oa=b+96|0}function TU(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=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0);g=Oa-112|0;Oa=g;m=L[d+20>>2];k=L[d+16>>2];p=L[d+24>>2];h=L[d>>2];i=O(h+h);n=L[d+8>>2];q=L[d+4>>2];l=L[d+12>>2];j=O(l+l);o=L[c+8>>2];r=O(O(O(i*n)-O(q*j))*o);u=O(p-r);L[g+60>>2]=u;n=O(o*O(O(n*j)+O(i*q)));q=O(m-n);L[g+56>>2]=q;h=O(o*O(O(h*i)+O(O(l*j)+O(-1))));v=O(k-h);L[g+52>>2]=v;w=O(k+h);L[g+40>>2]=w;n=O(m+n);L[g+44>>2]=n;p=O(r+p);L[g+48>>2]=p;L[g+64>>2]=L[c+4>>2];m=L[f+20>>2];k=L[f+16>>2];r=L[f+24>>2];h=L[f>>2];i=O(h+h);s=L[f+8>>2];t=L[f+4>>2];l=L[f+12>>2];j=O(l+l);o=L[e+8>>2];x=O(O(O(i*s)-O(t*j))*o);y=O(r-x);L[g+28>>2]=y;s=O(o*O(O(s*j)+O(i*t)));t=O(m-s);L[g+24>>2]=t;h=O(o*O(O(h*i)+O(O(l*j)+O(-1))));i=O(k-h);L[g+20>>2]=i;k=O(k+h);L[g+8>>2]=k;m=O(m+s);L[g+12>>2]=m;h=O(x+r);L[g+16>>2]=h;L[g+32>>2]=L[e+4>>2];L[g+104>>2]=u-p;L[g+100>>2]=q-n;L[g+96>>2]=v-w;L[g+88>>2]=y-h;L[g+84>>2]=t-m;L[g+80>>2]=i-k;i=uZ(g+40|0,g+96|0,g+8|0,g+80|0,g+76|0,g+72|0);m=O(L[g+64>>2]+L[g+32>>2]);c=i>O(m*m);if(!c){h=L[g+48>>2];k=L[g+76>>2];j=O(h+O(k*O(L[g+60>>2]-h)));i=L[g+16>>2];h=L[g+72>>2];i=O(j-O(i+O(h*O(L[g+28>>2]-i))));l=L[g+40>>2];j=O(l+O(k*O(L[g+52>>2]-l)));l=L[g+8>>2];l=O(j-O(l+O(h*O(L[g+20>>2]-l))));j=L[g+44>>2];j=O(j+O(k*O(L[g+56>>2]-j)));k=L[g+12>>2];k=O(j-O(k+O(h*O(L[g+24>>2]-k))));n=O(O(i*i)+O(O(l*l)+O(k*k)));h=O(W(n));j=O(1);o=O(0);p=O(0);if(!(n>2]=p;L[a+4>>2]=o;L[a>>2]=j;m=O(m-h);L[b>>2]=m>O(0)?m:O(0)}Oa=g+112|0;return!c|0}function rW(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=O(g);h=h|0;i=i|0;j=O(j);var k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0);a=Oa-48|0;Oa=a;xU(a+32|0,b);r=L[e+24>>2];H[h+8>>2]=-1;k=L[e>>2];L[a>>2]=k;p=L[e+4>>2];L[a+4>>2]=p;q=L[e+8>>2];L[a+8>>2]=q;m=L[e+12>>2];L[a+12>>2]=m;l=L[e+16>>2];L[a+16>>2]=l;n=L[e+20>>2];L[a+20>>2]=n;o=n;n=L[a+40>>2];s=m;m=L[a+32>>2];t=l;l=L[a+36>>2];o=O(O(o*n)+O(O(s*m)+O(t*l)));k=O(O(q*n)+O(O(k*m)+O(p*l)));k=k>1];if(c&512){if(!(k<=O(j-L[a+44>>2]))){break c}G[h+12>>1]=3;j=L[e+8>>2];q=L[a+40>>2];n=L[e>>2];o=L[a+32>>2];m=L[e+4>>2];s=L[a+36>>2];l=L[a+44>>2];g=O(O(O(j*q)+O(O(n*o)+O(m*s)))+l);p=l;l=L[e+20>>2];k=L[e+12>>2];r=L[e+16>>2];p=O(p+O(O(l*q)+O(O(k*o)+O(s*r))));if(!(g>2]=o;L[h+36>>2]=q;L[h+32>>2]=s;l=L[e+24>>2];L[h+24>>2]=j-O(g*q);L[h+20>>2]=m-O(g*s);L[h+16>>2]=n-O(g*o);L[h+40>>2]=g-l;e=1;break a}if(!(k<=O(j-L[a+44>>2]))|c&16){break c}H[h+40>>2]=0;G[h+12>>1]=2;g=L[f>>2];j=L[f+4>>2];L[h+36>>2]=-L[f+8>>2];L[h+32>>2]=-j;L[h+28>>2]=-g;break b}e=0;k=O(O(L[f+8>>2]*n)+O(O(L[f>>2]*m)+O(L[f+4>>2]*l)));if(k>O(-1.0000000116860974e-7)&k>2]-O(j*n));p=O(L[b>>2]-O(j*m));q=O(L[b+4>>2]-O(j*l));j=O(O(-O(O(O(r*n)+O(O(p*m)+O(q*l)))+L[a+44>>2]))/k);L[h+40>>2]=j;k=L[f+4>>2];o=L[f>>2];L[h+24>>2]=r+O(j*L[f+8>>2]);L[h+20>>2]=q+O(j*k);L[h+16>>2]=p+O(j*o);if(!(j>O(0))|!(g>=j)){break a}L[h+28>>2]=m;G[h+12>>1]=3;L[h+36>>2]=n;L[h+32>>2]=l}e=1}Oa=a+48|0;return e|0}function Fm(a,b,c,d){a=a|0;b=O(b);c=O(c);d=O(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;p=a;g=Oa-32|0;Oa=g;k=H[33768];e=H[k+2448>>2];if(!e){l=Oa-16|0;Oa=l;h=k+2160|0;e=H[h+284>>2];if(e){a=H[33808];f=Ra[H[H[a>>2]+20>>2]](a)|0?34486:55639;j=Ra[H[H[a+12>>2]+8>>2]](a+12|0,e,f,15259,180)|0}else{j=0}H[l+12>>2]=j;a=H[h+268>>2];a:{if(a>>>0>=(H[h+272>>2]&2147483647)>>>0){f=h+4|0;e=H[f+268>>2]&2147483647;m=e?e<<1:1;a=0;b:{if(!m){break b}e=m<<2;if(!(I[f+256|0]|e>>>0>256)){F[f+256|0]=1;a=f;break b}a=0;if(!e){break b}a=H[33808];i=Ra[H[H[a>>2]+20>>2]](a)|0?34486:55639;a=Ra[H[H[a+12>>2]+8>>2]](a+12|0,e,i,13582,553)|0}e=a;i=H[f+264>>2];o=e+(i<<2)|0;if((i|0)>0){n=H[f+260>>2];while(1){H[a>>2]=H[n>>2];n=n+4|0;a=a+4|0;if(o>>>0>a>>>0){continue}break}}H[o>>2]=H[l+12>>2];c:{if(H[f+268>>2]<0){break c}a=H[f+260>>2];if((a|0)==(f|0)){F[f+256|0]=0;break c}if(!a){break c}i=H[33808];Ra[H[H[i+12>>2]+12>>2]](i+12|0,a);i=H[f+264>>2]}H[f+268>>2]=m;H[f+260>>2]=e;H[f+264>>2]=i+1;break a}H[H[h+264>>2]+(a<<2)>>2]=j;H[h+268>>2]=a+1}e=((H[h+276>>2]<<6)+j|0)+-64|0;if(j>>>0<=e>>>0){a=H[h+288>>2];while(1){H[e>>2]=a;a=e;e=e+-64|0;if(j>>>0<=e>>>0){continue}break}H[h+288>>2]=a}Oa=l+16|0;e=H[k+2448>>2]}H[k+2448>>2]=H[e>>2];a=k+2440|0;H[a>>2]=H[a>>2]+1;H[g+20>>2]=-842137601;H[g+12>>2]=-855638016;H[g+16>>2]=0;L[g+8>>2]=d;L[g+4>>2]=b;L[g>>2]=c;H[e+4>>2]=196616;H[e+8>>2]=0;H[e+16>>2]=1;H[e+12>>2]=106528;H[e>>2]=106424;a=H[g+4>>2];H[e+32>>2]=H[g>>2];H[e+36>>2]=a;H[e+40>>2]=H[g+8>>2];G[e+44>>1]=J[g+12>>1];G[e+46>>1]=J[g+14>>1];a=H[g+20>>2];H[e+48>>2]=H[g+16>>2];H[e+52>>2]=a;H[e+48>>2]=e;Oa=g+32|0;return Em(p,e)|0}function hv(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=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=0,u=0,v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),F=O(0),G=O(0),K=O(0),M=O(0),P=O(0),Q=O(0),R=O(0),S=O(0),T=O(0),U=O(0),V=O(0);e=H[a+100>>2];f=(e+J[e+18>>1]|0)+144|0;m=O(-L[d+8>>2]);n=O(-L[d+4>>2]);o=O(-L[d>>2]);j=O(-L[c+8>>2]);k=O(-L[c+4>>2]);l=O(-L[c>>2]);if(b){a=J[e+4>>1]<<5;t=(((a+e|0)+a|0)+a|0)+128|0;u=J[e+6>>1]+e|0;a=b;while(1){c=N(a,160)+f|0;v=L[c+16>>2];w=L[c+48>>2];x=L[c+80>>2];y=L[c+20>>2];z=L[c+52>>2];A=L[c+84>>2];d=(a<<5)+u|0;p=L[d+8>>2];B=L[c+8>>2];C=L[c+40>>2];D=L[c+72>>2];E=L[c+24>>2];F=L[c+56>>2];G=L[c+88>>2];q=L[d>>2];K=L[c+4>>2];M=L[c+36>>2];P=L[c+68>>2];r=L[d+4>>2];Q=L[c>>2];R=L[c+32>>2];S=L[c+64>>2];c=(a<<4)+t|0;T=L[c>>2];U=L[c+4>>2];g=L[d+24>>2];i=L[c+8>>2];s=L[d+20>>2];h=L[d+16>>2];H[c+12>>2]=0;V=i;i=O(m+O(O(l*s)-O(h*k)));L[c+8>>2]=V+i;h=O(n+O(O(j*h)-O(g*l)));L[c+4>>2]=U+h;g=O(o+O(O(k*g)-O(s*j)));L[c>>2]=T+g;k=O(k-O(O(K*g)+O(O(h*M)+O(i*P))));l=O(l-O(O(Q*g)+O(O(h*R)+O(i*S))));m=O(O(m-O(O(g*E)+O(O(h*F)+O(i*G))))+O(O(q*k)-O(r*l)));j=O(j-O(O(g*B)+O(O(h*C)+O(i*D))));n=O(O(n-O(O(g*y)+O(O(h*z)+O(i*A))))+O(O(p*l)-O(q*j)));o=O(O(o-O(O(g*v)+O(O(h*w)+O(i*x))))+O(O(r*j)-O(k*p)));a=I[(a+e|0)- -64|0];if(a){continue}break}}H[e+44>>2]=0;H[e+60>>2]=0;L[e+32>>2]=l+L[e+32>>2];L[e+40>>2]=j+L[e+40>>2];L[e+36>>2]=k+L[e+36>>2];L[e+48>>2]=o+L[e+48>>2];L[e+52>>2]=n+L[e+52>>2];L[e+56>>2]=m+L[e+56>>2];a=N(b,160)+f|0;b=H[a+152>>2];a=H[e+12>>2]|H[a+156>>2];H[e+8>>2]=H[e+8>>2]|b;H[e+12>>2]=a}function rI(a,b,c,d,e,f){var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;i=Oa-16|0;Oa=i;a:{b:{k=H[b+4>>2];j=I[H[k+44>>2]+9|0];l=H[c+4>>2];g=I[H[l+44>>2]+9|0];c:{d:{if(!((j|0)!=2|(g|0)!=2)){h=H[b+4>>2];h=I[H[(I[H[h+44>>2]+9|0]-1>>>0<2?h:0)+100>>2]+159|0]!=0;break d}if(!j){break c}}if(h|(g|0)==1&(j|0)==2){break c}if(!((j|0)!=1|(g|0)!=1)){h=H[b+4>>2];if(F[H[(I[H[h+44>>2]+9|0]-1>>>0<2?h:0)+44>>2]+44|0]&1){break c}}if((g|0)!=(j|0)|K[k+48>>2]>=K[l+48>>2]){break b}}g=c;break a}g=b;b=c}if(!f){f=H[a+984>>2];if(!f){vI(a+696|0);f=H[a+984>>2]}H[a+984>>2]=H[f>>2];H[a+976>>2]=H[a+976>>2]+1}G[i+8>>1]=J[d>>1];a=UG(f+4|0,H[g+4>>2],H[b+4>>2],0,5);H[f+32>>2]=b;H[f+28>>2]=g;G[f+64>>1]=0;H[f+56>>2]=0;H[f+60>>2]=-1;H[f+48>>2]=0;H[f+52>>2]=-1;H[f+36>>2]=-1;H[f+40>>2]=-1;H[f>>2]=123948;H[f+44>>2]=J[i+8>>1]&32767;b=H[H[a>>2]+40>>2];c=H[H[f+32>>2]+4>>2];c=I[H[c+44>>2]+9|0]-1>>>0<2?c:0;d=J[i+8>>1];e:{f:{g=H[g+4>>2];g=I[H[g+44>>2]+9|0]-1>>>0<2?g:0;g:{if(F[H[g+44>>2]+44|0]&1){if(!c){break g}h=F[H[c+44>>2]+44|0]&1}else{h=0}if(h){break g}if(d&1){break f}}h=H[f+44>>2]|262144;break e}h=H[f+44>>2]&-262145}H[f+44>>2]=h;h:{i:{if(!(d&514|L[H[b+976>>2]+1056>>2]!=O(0)|(L[H[b+976>>2]+1060>>2]!=O(0)|L[H[b+976>>2]+1064>>2]!=O(0)))){if(L[H[b+976>>2]+1068>>2]==O(0)){break i}}d=H[f+44>>2]|131072;break h}d=H[f+44>>2]&-131073}H[f+44>>2]=d;j:{if(!e){e=H[g+144>>2];d=H[g+100>>2];H[d+148>>2]=H[d+148>>2]+1;k:{if(!c){d=-128;break k}d=H[c+144>>2];c=H[c+100>>2];H[c+148>>2]=H[c+148>>2]+1}m=f,n=$E(H[b+1e3>>2],0,e,d,a),H[m+60>>2]=n;c=WO(a);WD(H[a>>2],a);WD(H[f+8>>2],a);iI(H[b+2168>>2],f);VN(b,a,c);break j}GQ(f,e)}Oa=i+16|0;return f}function kz(a,b){var c=O(0),d=0,e=O(0),f=0,g=0,h=O(0),i=0,j=0,k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=0,y=O(0),z=O(0),A=O(0),B=0,C=0,D=0,E=O(0),F=O(0),G=O(0),K=0,M=0;g=H[a>>2];k=L[g+24>>2];l=L[g+20>>2];m=L[g+16>>2];n=L[g+8>>2];o=L[g+4>>2];p=L[g>>2];d=J[a+22>>1];if(d){f=H[a+24>>2];K=f+(d<<4)|0;while(1){a=f;x=a- -64|0;d=I[a+2|0];C=x+N(d,48)|0;D=C+((d<<2)+12&2032)|0;j=I[a+3|0];M=j<<6;q=L[a+12>>2];E=L[a+4>>2];c=O(0);if(d){r=L[a+40>>2];A=O(q*r);s=L[a+36>>2];y=O(q*s);t=L[a+32>>2];z=O(q*t);i=0;while(1){f=(i<<2)+C|0;e=L[f>>2];h=O(-e);B=f;f=x+N(i,48)|0;u=L[f+44>>2];v=L[f>>2];w=L[f+4>>2];F=L[f+8>>2];G=O(L[f+36>>2]-O(L[f+32>>2]*O(O(O(O(t*p)+O(m*v))+O(O(s*o)+O(l*w)))+O(O(r*n)+O(k*F)))));h=O(e+(hu?u:h;L[B>>2]=h;c=O(c+h);e=O(h-e);n=O(n+O(A*e));o=O(o+O(y*e));p=O(p+O(z*e));e=O(E*e);k=O(k+O(F*e));l=O(l+O(w*e));m=O(m+O(v*e));i=i+1|0;if((d|0)!=(i|0)){continue}break}}f=D+M|0;if(!(!I[b|0]|!j)){A=O(c*L[a+16>>2]);x=j>>>0>1?j:1;e=O(c*L[a+20>>2]);h=O(-e);i=0;j=0;while(1){d=(i<<6)+D|0;s=L[d+12>>2];c=L[d+28>>2];y=L[d>>2];t=L[d+16>>2];z=L[d+4>>2];u=L[d+20>>2];v=L[d+8>>2];w=L[d+24>>2];c=O(O(s-O(c*O(L[d+44>>2]-L[d+48>>2])))-O(c*O(O(O(O(p*y)+O(m*t))+O(O(o*z)+O(l*u)))+O(O(n*v)+O(k*w)))));r=cr?r:e:c;L[B+12>>2]=c;c=O(c-s);n=O(n+O(O(q*v)*c));o=O(o+O(O(q*z)*c));p=O(p+O(O(q*y)*c));c=O(E*c);k=O(k+O(w*c));l=O(l+O(u*c));m=O(m+O(t*c));j=0-(d|(j|0)!=0)|0;i=i+1|0;if((x|0)!=(i|0)){continue}break}H[a+52>>2]=j}if(f>>>0>>0){continue}break}}L[g+24>>2]=k;L[g+20>>2]=l;L[g+16>>2]=m;L[g+8>>2]=n;L[g+4>>2]=o;L[g>>2]=p}function jZ(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=O(0),h=0,i=O(0),j=O(0),k=0,l=O(0),m=0,n=O(0),o=0,p=0,q=O(0),r=O(0),s=0,t=O(0),u=O(0),v=O(0),w=O(0),x=0;h=Oa-48|0;Oa=h;p=H[a+28>>2];q=L[d+32>>2];r=L[d+20>>2];t=L[d+28>>2];u=L[d+16>>2];v=L[d+8>>2];w=L[d+4>>2];g=L[b+8>>2];i=L[b>>2];j=L[b+4>>2];l=O(O(L[c+8>>2]*g)+O(O(L[c>>2]*i)+O(L[c+4>>2]*j)));n=O(O(L[c+20>>2]*g)+O(O(L[c+12>>2]*i)+O(j*L[c+16>>2])));g=O(O(L[c+32>>2]*g)+O(O(L[c+24>>2]*i)+O(j*L[c+28>>2])));i=O(O(O(l*L[d>>2])+O(n*L[d+12>>2]))+O(g*L[d+24>>2]));L[h+32>>2]=i;j=O(O(O(l*w)+O(n*u))+O(g*t));L[h+36>>2]=j;g=O(O(O(l*v)+O(n*r))+O(g*q));L[h+40>>2]=g;a=H[a+60>>2];d=J[a>>1];l=O(-g);L[h+16>>2]=l;n=O(-j);L[h+12>>2]=n;q=O(-i);L[h+8>>2]=q;g=O(P(g));i=O(P(i));m=g>i;j=O(P(j));o=j>i&g>2]>>>31);r=O(O(d-1>>>0)*O(.5));i=O(O(1)/(o?j:m?g:i));m=(k+(k>>>1|0)|0)+1|0;o=m&3;g=O(r*O(O(i*L[(o<<2)+s>>2])+O(1)));a:{if(g=O(0)){k=~~g>>>0;break a}k=0}k=N(d,(x+k|0)+(O(g-O(k>>>0))>O(.5))|0);g=O(r*O(O(i*L[(h+8|0)+(((m+(o>>>1|0)|0)+1&3)<<2)>>2])+O(1)));b:{if(g=O(0)){d=~~g>>>0;break b}d=0}m=H[a+4>>2];d=k+(d+(O(g-O(d>>>0))>O(.5))|0)|0;H[h+28>>2]=I[m+d|0];H[h+24>>2]=I[d+(m+J[a+2>>1]|0)|0];L[h+16>>2]=l;L[h+12>>2]=n;L[h+8>>2]=q;gZ(h+28|0,h+8|0,p,a);gZ(h+24|0,h+32|0,p,a);g=O(O(L[c+44>>2]*L[b+8>>2])+O(O(L[c+36>>2]*L[b>>2])+O(L[c+40>>2]*L[b+4>>2])));a=N(H[h+28>>2],12)+p|0;i=L[h+40>>2];j=L[h+32>>2];l=L[h+36>>2];L[e>>2]=g+O(O(L[a+8>>2]*i)+O(O(L[a>>2]*j)+O(L[a+4>>2]*l)));a=N(H[h+24>>2],12)+p|0;L[f>>2]=g+O(O(i*L[a+8>>2])+O(O(j*L[a>>2])+O(l*L[a+4>>2])));Oa=h+48|0}function MD(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;j=Oa-16|0;Oa=j;c=H[a+20>>2];if(c){g=H[28586];h=H[a+16>>2];while(1){d=H[h+(b<<2)>>2];e=H[a+4>>2]+(d>>>3&536870908)|0;i=H[e>>2];l=e,m=j7(-2,d)&i,H[l>>2]=m;e=H[a>>2];d=Ra[H[H[e>>2]+40>>2]](e,d,j+12|0)|0;Ra[g|0](H[j+12>>2],H[d>>2],H[d+4>>2]);b=b+1|0;if((c|0)!=(b|0)){continue}break}b=H[a>>2];Ra[H[H[b>>2]+8>>2]](b,h,c);H[a+20>>2]=0;H[a+32>>2]=c+H[a+32>>2]}c=H[a+56>>2];if(c){h=H[a+52>>2];g=H[28587];b=0;while(1){d=H[h+(b<<2)>>2];e=H[a+40>>2]+(d>>>3&536870908)|0;i=H[e>>2];l=e,m=j7(-2,d)&i,H[l>>2]=m;e=H[a+36>>2];d=Ra[H[H[e>>2]+40>>2]](e,d,j+12|0)|0;Ra[g|0](H[j+12>>2],H[d>>2],H[d+4>>2]);b=b+1|0;if((c|0)!=(b|0)){continue}break}b=H[a+36>>2];Ra[H[H[b>>2]+8>>2]](b,h,c);H[a+56>>2]=0;H[a+68>>2]=c+H[a+68>>2]}b=0;h=Oa-16|0;Oa=h;g=H[a+112>>2];a:{if(!g){break a}e=H[a+80>>2];while(1){c=H[a+72>>2];d=e+(b<<3)|0;i=H[d+4>>2];f=H[d>>2];c=H[Ra[H[H[c>>2]+40>>2]](c,i,f,h+12|0)>>2];d=H[c+8>>2];k=H[c+4>>2];aU(H[h+12>>2],k&1?d- -64|0:c+84|0,k&4?d:c+48|0,O(1.0099999904632568));c=H[a+72>>2];Ra[H[H[c>>2]+12>>2]](c,f,i);b=b+1|0;if((g|0)!=(b|0)){continue}break}b=H[a+96>>2];if(!b|!H[a+112>>2]){break a}S6(H[a+88>>2],255,b<<2);b=0;c=H[a+84>>2];e=H[a+92>>2];d=e-1|0;if(d){g=0;if(e-2>>>0>=3){i=d&-4;e=0;while(1){f=b|1;H[c+(b<<2)>>2]=f;k=c+(f<<2)|0;f=b|2;H[k>>2]=f;k=c+(f<<2)|0;f=b|3;H[k>>2]=f;b=b+4|0;H[c+(f<<2)>>2]=b;e=e+4|0;if((i|0)!=(e|0)){continue}break}}d=d&3;if(d){while(1){e=c+(b<<2)|0;b=b+1|0;H[e>>2]=b;g=g+1|0;if((d|0)!=(g|0)){continue}break}}b=H[a+92>>2]-1|0}else{b=0}H[c+(b<<2)>>2]=-1;H[a+112>>2]=0;H[a+104>>2]=0}Oa=h+16|0;Oa=j+16|0}function F0(a,b,c,d,e){var f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=0,m=O(0),n=0,o=0,p=O(0),q=O(0),r=0,s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=0,D=O(0);o=Oa-1024|0;Oa=o;l=H[a+24>>2];b=H[b+40>>2];s=L[b+40>>2];k=L[d+8>>2];t=L[b+8>>2];g=L[d>>2];f=L[d+4>>2];u=L[b+24>>2];i=O(O(s*k)+O(O(t*g)+O(f*u)));v=L[b+32>>2];w=L[b>>2];x=L[b+16>>2];m=O(O(v*k)+O(O(w*g)+O(f*x)));y=L[b+36>>2];z=L[b+4>>2];A=L[b+20>>2];p=O(O(y*k)+O(O(z*g)+O(f*A)));f=O(L[l+12>>2]+O(O(i*L[l+8>>2])+O(O(m*L[l>>2])+O(p*L[l+4>>2]))));q=O(-e);g=q<=f?O(P(f)):O(3.4028234663852886e38);L[o>>2]=g;b=1;d=0;r=H[a+16>>2];a:{if(r>>>0<=1){a=0;k=g;break a}k=g;a=0;while(1){n=N(b,20)+l|0;h=O(L[n+12>>2]+O(O(i*L[n+8>>2])+O(O(m*L[n>>2])+O(p*L[n+4>>2]))));j=h>=q?O(P(h)):O(3.4028234663852886e38);L[(b<<2)+o>>2]=j;n=k>j;k=n?j:k;C=f>2];h=L[b>>2];j=L[b+4>>2];i=O(O(s*f)+O(O(v*h)+O(y*j)));B=i;m=O(i*i);i=O(O(t*f)+O(O(w*h)+O(z*j)));f=O(O(u*f)+O(O(x*h)+O(A*j)));h=O(O(1)/O(W(O(m+O(O(i*i)+O(f*f))))));m=L[c+8>>2];p=L[c>>2];q=L[c+4>>2];f=O(O(O(B*h)*m)+O(O(O(i*h)*p)+O(q*O(f*h))));b=0;d=a;while(1){if(!(!(O(g-k)>2];h=L[c>>2];j=L[c+4>>2];i=O(O(s*g)+O(O(v*h)+O(y*j)));B=i;D=O(i*i);i=O(O(t*g)+O(O(w*h)+O(z*j)));g=O(O(u*g)+O(O(x*h)+O(A*j)));h=O(O(1)/O(W(O(D+O(O(i*i)+O(g*g))))));g=O(O(O(B*h)*m)+O(O(O(i*h)*p)+O(q*O(g*h))));c=g>2];continue}}Oa=o+1024|0;return d}function NO(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;if(c){j=d+144|0;u=j-1|0;v=0-!j|0;while(1){s=p+1|0;a:{if(s>>>0>=c>>>0){break a}o=0;j=0;i=v;m=H[(s<<2)+b>>2];k=m;h=k+u|0;n=h;i=h>>>0>>0?i+1|0:i;h=i>>>6|0;i=(i&63)<<26|n>>>6;n=h;h=k>>>6|0;k=n-(h>>>0>i>>>0)|0;q=i-h|0;n=k;h=0;r=h;i=q+1|0;k=i?k:k+1|0;l=i&7;if(h|l){while(1){h=i;i=h-1|0;k=k-!h|0;m=m- -64|0;h=j;j=o+1|0;h=j?h:h+1|0;o=j;j=h;if((l|0)!=(o|0)|(r|0)!=(h|0)){continue}break}}if(!n&q>>>0<7){break a}while(1){m=m+512|0;k=k-(i>>>0<8)|0;i=i-8|0;if(k|i){continue}break}}h=H[a+2384>>2];j=H[h+12>>2]+N(H[h+8>>2],12)|0;l=H[j+4>>2];b:{if(l){H[j+4>>2]=H[l>>2];break b}c:{i=H[j+8>>2];if((i|0)==H[h>>2]){break c}k=H[h+4>>2];H[j+8>>2]=i+1;j=H[j>>2];if(!j){break c}l=j+N(i,k)|0;break b}l=LN(h)}o=0;j=0;k=0;m=l;i=l+39|0;k=i>>>0<39?1:k;i=(k&63)<<26|i>>>6;h=l>>>6|0;k=(k>>>6|0)-(h>>>0>i>>>0)|0;t=i-h|0;h=0;q=h;n=k;i=t+1|0;k=i?k:k+1|0;r=i&7;if(h|r){while(1){h=i;i=h-1|0;k=k-!h|0;m=m- -64|0;h=j;j=o+1|0;h=j?h:h+1|0;o=j;j=h;if((r|0)!=(o|0)|(q|0)!=(h|0)){continue}break}}if(!n&t>>>0>=7|n){while(1){m=m+512|0;k=k-(i>>>0<8)|0;i=i-8|0;if(k|i){continue}break}}i=H[(p<<2)+b>>2]+d|0;ZQ(H[f>>2],e,i);h=N(p,24)+g|0;k=H[f>>2];j=H[H[a+1140>>2]+4>>2]+N(H[k+8>>2]&2147483647,24)|0;L[h>>2]=L[j>>2];L[h+4>>2]=L[j+4>>2];L[h+8>>2]=L[j+8>>2];L[h+12>>2]=L[j+12>>2];L[h+16>>2]=L[j+16>>2];L[h+20>>2]=L[j+20>>2];j=H[a+1012>>2];Ra[H[H[j>>2]+16>>2]](j,k+12|0,H[k+32>>2]);H[f>>2]=l;j=((H[i+68>>2]<<2)+a|0)+2676|0;H[j>>2]=H[j>>2]+1;j=H[H[a+976>>2]+1024>>2];Ra[H[H[j>>2]+44>>2]](j,i+32|0);p=s;if((p|0)!=(c|0)){continue}break}}}function BQ(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0;a:{b=H[a+20>>2];e=H[a+28>>2];a=H[e+988>>2];d=H[a+308>>2];c=H[a+128>>2];H[e+996>>2]=c+1;b:{c:{d:{if(c){if(!H[a+132>>2]){break b}if(H[e+992>>2]){break d}break b}if(!H[e+992>>2]){break c}}f=c&1;g=!f;i=(c|0)==(d-1|0);if(!i){c=H[e+3048>>2];d=N(g,40);a=c+d|0;H[a+20>>2]=b;H[a+24>>2]=1;if(b){Ra[H[H[b>>2]+16>>2]](b);H[a+16>>2]=H[H[a+20>>2]+16>>2];c=H[e+3048>>2]}a=H[e+3036>>2];b=a+d|0;d=c+d|0;H[b+20>>2]=d;H[b+24>>2]=1;if(c){Ra[H[H[d>>2]+16>>2]](d);H[(a+N(g,40)|0)+16>>2]=H[H[b+20>>2]+16>>2];a=H[e+3036>>2]}b=N(g,40)+a|0}c=H[e+3060>>2];d=N(f,40);a=c+d|0;H[a+20>>2]=b;H[a+24>>2]=1;if(b){Ra[H[H[b>>2]+16>>2]](b);H[a+16>>2]=H[H[a+20>>2]+16>>2];c=H[e+3060>>2]}b=H[e+3024>>2];a=d+b|0;d=c+d|0;H[a+20>>2]=d;H[a+24>>2]=1;if(c){Ra[H[H[d>>2]+16>>2]](d);H[(N(f,40)+b|0)+16>>2]=H[H[a+20>>2]+16>>2];b=H[e+3024>>2]}c=H[e+3012>>2];a=N(f,40);d=c+a|0;h=a+b|0;H[d+20>>2]=h;H[d+24>>2]=1;if(b){Ra[H[H[h>>2]+16>>2]](h);H[d+16>>2]=H[H[d+20>>2]+16>>2];c=H[e+3012>>2]}b=H[e+3e3>>2];d=a+b|0;a=a+c|0;H[d+20>>2]=a;H[d+24>>2]=1;if(c){Ra[H[H[a>>2]+16>>2]](a);H[(N(f,40)+b|0)+16>>2]=H[H[d+20>>2]+16>>2];b=H[e+3e3>>2]}a=N(f,40);b=b+a|0;c=H[b+16>>2];c=Ra[H[H[c>>2]+4>>2]](c)|0;c=Ra[H[H[c>>2]+4>>2]](c)|0;d=c;c=H[e+976>>2];sH(H[e+980>>2],d,H[c+1156>>2],c,0,b,0);b=a+H[e+3060>>2]|0;Ra[H[H[b>>2]+20>>2]](b);b=a+H[e+3024>>2]|0;Ra[H[H[b>>2]+20>>2]](b);b=a+H[e+3012>>2]|0;Ra[H[H[b>>2]+20>>2]](b);a=a+H[e+3e3>>2]|0;Ra[H[H[a>>2]+20>>2]](a);if(i){break b}a=N(g,40);b=a+H[e+3048>>2]|0;Ra[H[H[b>>2]+20>>2]](b);a=a+H[e+3036>>2]|0;Ra[H[H[a>>2]+20>>2]](a);break a}vN(a)}}}function SK(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;if(!b){c=H[a>>2];if(H[a+8>>2]){b=0;while(1){H[(b<<2)+c>>2]=1073741823;b=b+1|0;if(b>>>0>2]){continue}break}c=H[a>>2]}if(H[a+28>>2]){e=H[a+4>>2];g=H[a+20>>2];b=0;while(1){d=g+(b<<3)|0;d=H[d+4>>2]<<16|H[d>>2];d=(d<<15^-1)+d|0;d=N(d>>10^d,9);d=d>>6^d;d=(d<<11^-1)+d|0;d=((H[a+36>>2]&(d>>16^d))<<2)+c|0;H[e+(b<<2)>>2]=H[d>>2];H[d>>2]=b;b=b+1|0;if(b>>>0>2]){continue}break}}return}b=H[a>>2];if(b){e=H[33808]+12|0;Ra[H[H[e>>2]+12>>2]](e,b)}c=H[a+8>>2];H[a+32>>2]=c;H[a+12>>2]=c;b=0;e=c<<2;if(e){c=H[33808]+12|0;g=Ra[H[H[c>>2]+8>>2]](c,e,20591,4679,413)|0;c=H[a+8>>2]}H[a>>2]=g;a:{if(!c){e=0;break a}while(1){H[(b<<2)+g>>2]=1073741823;b=b+1|0;c=H[a+8>>2];if(b>>>0>>0){continue}break}b=0;e=c<<3;if(e){c=H[33808]+12|0;d=Ra[H[H[c>>2]+8>>2]](c,e,20591,4679,421)|0;c=H[a+8>>2]}e=c<<2;if(e){b=H[33808]+12|0;b=Ra[H[H[b>>2]+8>>2]](b,e,20591,4679,422)|0;c=H[a+8>>2]}e=0;if(!c){break a}e=H[33808]+12|0;e=Ra[H[H[e>>2]+8>>2]](e,c,20591,4679,423)|0}c=H[a+28>>2];b:{if(!c){g=H[a+20>>2];break b}R6(d,H[a+20>>2],c<<3);R6(e,H[a+24>>2],H[a+28>>2]);g=H[a+20>>2];if(!H[a+28>>2]){break b}h=H[a>>2];c=0;while(1){f=(c<<3)+g|0;f=H[f+4>>2]<<16|H[f>>2];f=(f<<15^-1)+f|0;f=N(f>>10^f,9);f=f>>6^f;f=(f<<11^-1)+f|0;f=((H[a+36>>2]&(f>>16^f))<<2)+h|0;H[(c<<2)+b>>2]=H[f>>2];H[f>>2]=c;c=c+1|0;if(c>>>0>2]){continue}break}}c=H[a+4>>2];if(c){g=H[33808]+12|0;Ra[H[H[g>>2]+12>>2]](g,c);g=H[a+20>>2]}if(g){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,g)}c=H[a+24>>2];if(c){g=H[33808]+12|0;Ra[H[H[g>>2]+12>>2]](g,c)}H[a+20>>2]=d;H[a+4>>2]=b;H[a+24>>2]=e}function fT(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;e=Oa-16|0;Oa=e;b=H[33808];c=Ra[H[H[b>>2]+20>>2]](b)|0?22802:55639;c=Ra[H[H[b+12>>2]+8>>2]](b+12|0,60,c,7031,288)|0;H[c+4>>2]=0;H[c+8>>2]=0;H[c>>2]=125212;H[c+12>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+24>>2]=0;H[c+52>>2]=0;H[c+32>>2]=0;H[c+36>>2]=2;b=H[33808];i=c,j=Ra[H[H[b+12>>2]+8>>2]](b+12|0,8,20591,5101,44)|0,H[i+28>>2]=j;a:{b:{b=H[c+36>>2]<<1;c:{if(!b){H[c+40>>2]=0;break c}d=H[33808];i=c,j=Ra[H[H[d+12>>2]+8>>2]](d+12|0,b,20591,5101,45)|0,H[i+40>>2]=j;b=H[c+36>>2]<<1;if(b){break b}}H[c+44>>2]=0;b=0;d=0;break a}d=H[33808];i=c,j=Ra[H[H[d+12>>2]+8>>2]](d+12|0,b,20591,5101,46)|0,H[i+44>>2]=j;b=H[c+36>>2]<<1;if(!b){b=0;d=0;break a}d=H[33808];b=Ra[H[H[d+12>>2]+8>>2]](d+12|0,b,20591,5101,47)|0;d=H[c+36>>2]<<1}H[c+48>>2]=b;S6(H[c+40>>2],255,d);S6(H[c+44>>2],255,H[c+36>>2]<<1);S6(H[c+48>>2],0,H[c+36>>2]<<1);H[c+56>>2]=a;H[e+12>>2]=c;b=H[a+124>>2];d:{if(b>>>0>=(H[a+128>>2]&2147483647)>>>0){c=0;b=H[a+128>>2]&2147483647;f=b?b<<1:1;e:{if(!f){break e}d=f<<2;if(!d){break e}b=H[33808];c=b+12|0;c=(j=c,k=d,l=Ra[H[H[b>>2]+20>>2]](b)|0?48346:55639,m=13582,n=553,i=H[H[c>>2]+8>>2],Ra[i](j|0,k|0,l|0,m|0,n|0)|0)}d=H[a+124>>2];h=(d<<2)+c|0;if((d|0)>0){g=H[a+120>>2];b=c;while(1){H[b>>2]=H[g>>2];g=g+4|0;b=b+4|0;if(h>>>0>b>>>0){continue}break}}H[h>>2]=H[e+12>>2];f:{if(H[a+128>>2]<0){break f}b=H[a+120>>2];if(!b){break f}d=H[33808]+12|0;Ra[H[H[d>>2]+12>>2]](d,b);d=H[a+124>>2]}H[a+128>>2]=f;H[a+120>>2]=c;H[a+124>>2]=d+1;break d}H[H[a+120>>2]+(b<<2)>>2]=c;H[a+124>>2]=b+1}Oa=e+16|0;return H[e+12>>2]}function LO(a,b,c,d,e,f){var g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=Oa-16|0;Oa=m;g=H[a+2392>>2];k=H[g+12>>2];h=H[g+8>>2];j=k+N(h,12)|0;i=H[j+4>>2];a:{if(i){H[j+4>>2]=H[i>>2];break a}b:{i=H[j+8>>2];if((i|0)==H[g>>2]){break b}l=H[g+4>>2];H[j+8>>2]=i+1;j=H[k+N(h,12)>>2];if(!j){break b}i=j+N(i,l)|0;break a}i=LN(g)}aG(i,a,b,f);c:{if(!(I[H[i+100>>2]+28|0]&32)|K[i+152>>2]>4294967293){break c}d:{if(I[H[i+44>>2]+9|0]==2){j=H[i+144>>2];if(j>>>0>4294967167){break c}f=j>>>7|0;k=f+32>>>5|0;if(k>>>0<=(H[a+4740>>2]&2147483647)>>>0){g=H[a+4736>>2];break d}g=H[33808]+12|0;g=Ra[H[H[g>>2]+8>>2]](g,k<<2,20591,14905,438)|0;h=H[a+4736>>2];e:{if(!h){break e}R6(g,h,H[a+4740>>2]<<2);if(H[a+4740>>2]<0){break e}h=H[a+4736>>2];if(!h){break e}l=H[33808]+12|0;Ra[H[H[l>>2]+12>>2]](l,h)}h=H[a+4740>>2];S6((h<<2)+g|0,0,k-h<<2);H[a+4740>>2]=k;H[a+4736>>2]=g;break d}j=H[i+144>>2];f=j>>>7|0;k=f+32>>>5|0;if(k>>>0<=(H[a+4728>>2]&2147483647)>>>0){g=H[a+4724>>2];break d}g=H[33808]+12|0;g=Ra[H[H[g>>2]+8>>2]](g,k<<2,20591,14905,438)|0;h=H[a+4724>>2];f:{if(!h){break f}R6(g,h,H[a+4728>>2]<<2);if(H[a+4728>>2]<0){break f}h=H[a+4724>>2];if(!h){break f}l=H[33808]+12|0;Ra[H[H[l>>2]+12>>2]](l,h)}h=H[a+4728>>2];S6((h<<2)+g|0,0,k-h<<2);H[a+4728>>2]=k;H[a+4724>>2]=g}g=(j>>>10&4194300)+g|0;H[g>>2]=H[g>>2]|1<>2];if(g>>>0<=4294967167){f=H[a+1012>>2];H[m+8>>2]=g;Ra[H[H[f>>2]+24>>2]](f,i- -64|0,m+8|0)}g:{h:{if(!H[b+176>>2]|I[H[b+176>>2]+31|0]!=1){break h}b=H[b+176>>2];if(I[(I[b+31|0]==1?b:0)+31|0]!=1){break h}H[a+2672>>2]=H[a+2672>>2]+1;break g}H[a+2668>>2]=H[a+2668>>2]+1}GO(a,c,d,i,e);Oa=m+16|0}function jX(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=O(0),k=0,l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=0,r=0,s=0,t=0,u=0,v=0;h=H[a+4>>2];i=!H[d>>2]&(h|0)!=0;if(i){H[c>>2]=1;c=h<<2;if(c){e=H[33808];e=Ra[H[H[e+12>>2]+8>>2]](e+12|0,c,20591,9742,273)|0}H[d>>2]=e;c=0;d=0;if(h-1>>>0>=7){k=h&-8;while(1){H[(d<<2)+e>>2]=d;f=d|1;H[(f<<2)+e>>2]=f;f=d|2;H[(f<<2)+e>>2]=f;f=d|3;H[(f<<2)+e>>2]=f;f=d|4;H[(f<<2)+e>>2]=f;f=d|5;H[(f<<2)+e>>2]=f;f=d|6;H[(f<<2)+e>>2]=f;f=d|7;H[(f<<2)+e>>2]=f;d=d+8|0;g=g+8|0;if((k|0)!=(g|0)){continue}break}}g=h&7;if(g){while(1){H[(d<<2)+e>>2]=d;d=d+1|0;c=c+1|0;if((g|0)!=(c|0)){continue}break}}c=H[a>>2];e=Oa-16|0;Oa=e;d=(h<<1)-1|0;if(d>>>0>=1025){d=(d>>>0)/(c>>>0)|0}g=H[33808];c=g7(d,0,36,0);f=c+4|0;g=(r=g+12|0,s=Qa?-1:c>>>0>f>>>0?-1:f,t=Ra[H[H[g>>2]+20>>2]](g)|0?39306:55639,u=9742,v=67,q=H[H[g+12>>2]+8>>2],Ra[q](r|0,s|0,t|0,u|0,v|0)|0);H[g>>2]=d;g=g+4|0;H[b>>2]=g;S6(g,0,c);c=H[b>>2];H[c+32>>2]=h;H[c+28>>2]=0;H[e+8>>2]=d;H[e+4>>2]=1;H[e>>2]=c;c=H[b+8>>2];a:{if(c>>>0>=(H[b+12>>2]&2147483647)>>>0){gX(b+4|0,e);break a}d=H[e+4>>2];c=H[b+4>>2]+N(c,12)|0;H[c>>2]=H[e>>2];H[c+4>>2]=d;H[c+8>>2]=H[e+8>>2];H[b+8>>2]=H[b+8>>2]+1}H[b+16>>2]=0;H[b+20>>2]=1;Oa=e+16|0;e=0;g=0;b=N(h,12)+12|0;if(b){c=H[33808];g=Ra[H[H[c+12>>2]+8>>2]](c+12|0,b,20591,9742,282)|0}H[a+12>>2]=g;c=h>>>0>1?h:1;d=H[a+8>>2];while(1){a=d+N(e,24)|0;l=L[a+4>>2];m=L[a+16>>2];n=L[a+8>>2];o=L[a+20>>2];p=L[a+24>>2];b=N(e,12)+g|0;j=L[a+12>>2];L[b>>2]=O(L[a>>2]+j)*O(.5);L[b+12>>2]=O(j+p)*O(.5);L[b+8>>2]=O(n+o)*O(.5);L[b+4>>2]=O(l+m)*O(.5);e=e+1|0;if((c|0)!=(e|0)){continue}break}}return i}function FU(a,b,c,d,e,f,g){var h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=0,p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0);o=Oa-32|0;Oa=o;a:{b:{switch(g-1|0){case 0:a=H[b+4>>2];H[e>>2]=H[b>>2];H[e+4>>2]=a;a=H[b+12>>2];H[e+8>>2]=H[b+8>>2];H[e+12>>2]=a;a=H[c+4>>2];H[f>>2]=H[c>>2];H[f+4>>2]=a;a=H[c+12>>2];H[f+8>>2]=H[c+8>>2];H[f+12>>2]=a;break a;case 1:i=L[d>>2];h=O(L[a>>2]-i);j=L[d+4>>2];l=O(L[a+4>>2]-j);k=L[d+8>>2];m=O(L[a+8>>2]-k);k=O(O(L[a+24>>2]-k)-m);i=O(O(L[a+16>>2]-i)-h);j=O(O(L[a+20>>2]-j)-l);n=O(O(k*k)+O(O(i*i)+O(j*j)));L[o+16>>2]=O(O(O(O(-h)*i)-O(j*l))-O(m*k))*(n>O(0)?O(O(1)/n):O(0));p=L[c+20>>2];q=L[c+24>>2];r=L[b+20>>2];s=L[b+24>>2];l=L[c>>2];t=L[c+16>>2];m=L[c+4>>2];k=L[c+8>>2];i=L[b>>2];u=L[b+16>>2];j=L[b+4>>2];n=L[b+8>>2];h=L[o+16>>2];H[e+12>>2]=0;L[e+8>>2]=n+O(h*O(s-n));L[e+4>>2]=j+O(h*O(r-j));L[e>>2]=i+O(h*O(u-i));H[f+12>>2]=0;L[f+8>>2]=k+O(h*O(q-k));L[f+4>>2]=m+O(h*O(p-m));L[f>>2]=l+O(h*O(t-l));break a;case 2:break b;default:break a}}VX(d,a,a+16|0,a+32|0,o+16|0,o);q=L[c+20>>2];r=L[c+36>>2];s=L[c+24>>2];t=L[c+40>>2];u=L[b+20>>2];v=L[b+36>>2];w=L[b+24>>2];x=L[b+40>>2];y=L[c+16>>2];z=L[c+32>>2];m=L[c>>2];k=L[c+4>>2];i=L[c+8>>2];A=L[b+16>>2];B=L[b+32>>2];j=L[b>>2];n=L[b+4>>2];p=L[b+8>>2];h=L[o+16>>2];l=L[o>>2];H[e+12>>2]=0;L[e+8>>2]=p+O(O(h*O(w-p))+O(l*O(x-p)));L[e+4>>2]=n+O(O(h*O(u-n))+O(l*O(v-n)));L[e>>2]=j+O(O(h*O(A-j))+O(l*O(B-j)));H[f+12>>2]=0;L[f+8>>2]=i+O(O(h*O(s-i))+O(l*O(t-i)));L[f+4>>2]=k+O(O(h*O(q-k))+O(l*O(r-k)));L[f>>2]=m+O(O(h*O(y-m))+O(l*O(z-m)))}Oa=o+32|0}function nW(a,b,c){var d=O(0),e=O(0),f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),F=O(0),G=O(0),H=O(0),I=O(0),J=O(0),K=O(0),M=O(0),N=O(0),P=O(0);f=L[c+12>>2];m=O(f+f);e=L[c+20>>2];z=O(m*e);n=L[c+16>>2];g=O(n+n);q=L[c+24>>2];i=O(g*q);d=O(z+i);r=L[c>>2];s=O(d*r);j=O(g*e);A=O(m*q);o=O(j-A);t=L[c+4>>2];C=O(o*t);u=O(O(1)-O(f*m));B=O(n*g);g=O(u-B);v=L[c+8>>2];D=O(g*v);w=L[b>>2];p=O(w+w);f=L[b+8>>2];G=O(p*f);h=L[b+4>>2];x=O(h+h);k=L[b+12>>2];H=O(x*k);E=O(G-H);I=O(O(1)-O(w*p));J=O(h*x);w=O(I-J);y=O(O(O(d*s)+O(o*C))+O(g*D));l=O(e+e);K=O(e*l);e=O(O(O(1)-B)-K);B=O(r*e);M=O(m*n);l=O(l*q);m=O(M+l);q=O(m*t);n=O(z-i);z=O(n*v);i=O(O(O(d*B)+O(o*q))+O(g*z));N=O(x*f);P=O(p*k);x=O(N+P);F=d;d=O(M-l);r=O(r*d);l=o;o=O(u-K);t=O(o*t);u=g;g=O(j+A);v=O(g*v);j=O(O(O(F*r)+O(l*t))+O(u*v));L[a+32>>2]=O(w*y)+O(O(E*i)+O(x*j));A=O(N-P);u=O(p*h);h=O(f+f);l=O(k*h);p=O(u+l);k=O(f*h);f=O(I-k);L[a+28>>2]=O(A*y)+O(O(p*i)+O(f*j));h=O(G+H);F=O(h*y);k=O(O(O(1)-J)-k);y=O(u-l);L[a+24>>2]=F+O(O(k*i)+O(y*j));i=O(O(O(d*s)+O(o*C))+O(g*D));j=O(O(O(d*B)+O(o*q))+O(g*z));d=O(O(O(d*r)+O(o*t))+O(g*v));L[a+20>>2]=O(w*i)+O(O(E*j)+O(x*d));L[a+16>>2]=O(A*i)+O(O(p*j)+O(f*d));L[a+12>>2]=O(h*i)+O(O(k*j)+O(y*d));d=O(O(O(e*s)+O(m*C))+O(n*D));s=O(O(O(e*B)+O(m*q))+O(n*z));e=O(O(O(e*r)+O(m*t))+O(n*v));L[a+8>>2]=O(w*d)+O(O(E*s)+O(x*e));L[a+4>>2]=O(A*d)+O(O(p*s)+O(f*e));L[a>>2]=O(h*d)+O(O(k*s)+O(y*e));L[a+36>>2]=L[b+16>>2];L[a+40>>2]=L[b+20>>2];L[a+44>>2]=L[b+24>>2]}function NM(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;f=H[b+68>>2];c=f>>>3|0;a:{if((f|0)>=0){g=H[a+28>>2];e=g+(c<<4)|0;k=I[e+14|0];m=I[e+13|0];d=H[a+44>>2]-1|0;h=H[H[a+40>>2]+(d<<2)>>2];i=c<<3;yJ(H[a+4>>2],i+H[a+52>>2]|0);H[H[a+40>>2]+(c<<2)>>2]=h;c=H[a+52>>2];i=c+i|0;j=d<<3;c=j+c|0;l=H[c+4>>2];H[i>>2]=H[c>>2];H[i+4>>2]=l;c=g+(d<<4)|0;g=H[c+12>>2];H[e+8>>2]=H[c+8>>2];H[e+12>>2]=g;g=H[c+4>>2];H[e>>2]=H[c>>2];H[e+4>>2]=g;e=j+H[a+52>>2]|0;H[e>>2]=0;H[e+4>>2]=0;c=H[a+108>>2];e=H[c+456>>2];H[h+68>>2]=f;b:{if(!(I[h+43|0]&2)|I[h+41|0]&8){break b}c=H[H[H[c+444>>2]>>2]+(H[h- -64>>2]<<2)>>2];if(!c){break b}H[e+(H[c+20>>2]<<2)>>2]=f;f=H[c+16>>2];if(!f){break b}while(1){H[e+(H[f+20>>2]<<2)>>2]=H[h+68>>2];f=H[f+16>>2];if(f){continue}break}}H[a+44>>2]=d;H[a+56>>2]=d;f=a+32|0;break a}g=H[a+68>>2];d=c&268435455;e=g+(d<<4)|0;k=I[e+14|0];m=I[e+13|0];c=H[a+84>>2]-1|0;h=H[H[a+80>>2]+(c<<2)>>2];i=d<<3;yJ(H[a+4>>2],i+H[a+92>>2]|0);H[H[a+80>>2]+(d<<2)>>2]=h;d=H[a+92>>2];i=d+i|0;j=c<<3;d=j+d|0;l=H[d+4>>2];H[i>>2]=H[d>>2];H[i+4>>2]=l;d=g+(c<<4)|0;g=H[d+12>>2];H[e+8>>2]=H[d+8>>2];H[e+12>>2]=g;g=H[d+4>>2];H[e>>2]=H[d>>2];H[e+4>>2]=g;e=j+H[a+92>>2]|0;H[e>>2]=0;H[e+4>>2]=0;d=H[a+108>>2];e=H[d+456>>2];H[h+68>>2]=f;c:{if(!(I[h+43|0]&2)|I[h+41|0]&8){break c}d=H[H[H[d+444>>2]>>2]+(H[h- -64>>2]<<2)>>2];if(!d){break c}H[e+(H[d+20>>2]<<2)>>2]=f;f=H[d+16>>2];if(!f){break c}while(1){H[e+(H[f+20>>2]<<2)>>2]=H[h+68>>2];f=H[f+16>>2];if(f){continue}break}}H[a+84>>2]=c;H[a+96>>2]=c;f=a+72|0}H[f>>2]=H[f>>2]-1;Ra[H[H[a>>2]+28>>2]](a,b,k&2?1:0-(k&1)|0,m)}function KC(a,b,c,d){var e=O(0),f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=0,s=0;r=H[b+4>>2];s=H[b>>2];f=L[b+8>>2];H[a+28>>2]=0;L[a+24>>2]=f;H[a+16>>2]=s;H[a+20>>2]=r;f=L[d>>2];g=L[d+4>>2];h=L[d+8>>2];H[a+12>>2]=0;L[a+8>>2]=h;L[a+4>>2]=g;L[a>>2]=f;i=L[c+16>>2];j=L[c+28>>2];k=L[c+20>>2];l=L[c+32>>2];m=L[c>>2];n=L[c+12>>2];o=L[c+24>>2];p=L[c+4>>2];q=L[c+8>>2];H[a+188>>2]=0;H[a+172>>2]=0;H[a+156>>2]=0;H[a+140>>2]=0;H[a+124>>2]=0;H[a+108>>2]=0;H[a+92>>2]=0;H[a+76>>2]=0;L[a+72>>2]=l;L[a+68>>2]=k;L[a- -64>>2]=q;H[a+60>>2]=0;L[a+56>>2]=j;L[a+52>>2]=i;L[a+48>>2]=p;H[a+44>>2]=0;L[a+40>>2]=o;L[a+36>>2]=n;L[a+32>>2]=m;e=O(-l);l=O((e>2]=l;e=O(-k);k=O((e>2]=k;e=O(-q);q=O((e>2]=q;e=O(-j);j=O((e>2]=j;e=O(-i);i=O((e>2]=i;e=O(-p);p=O((e>2]=p;e=O(-o);o=O((e>2]=o;e=O(-n);n=O((e>2]=n;e=O(-m);m=O((e>2]=m;L[a+184>>2]=O(g*q)+O(f*k);L[a+180>>2]=O(h*q)+O(f*l);L[a+176>>2]=O(h*k)+O(g*l);L[a+168>>2]=O(g*p)+O(f*i);L[a+164>>2]=O(h*p)+O(f*j);L[a+160>>2]=O(h*i)+O(g*j);L[a+152>>2]=O(g*m)+O(f*n);L[a+148>>2]=O(h*m)+O(f*o);L[a+144>>2]=O(h*n)+O(g*o);L[a+136>>2]=O(l*h)+O(O(q*f)+O(g*k));L[a+132>>2]=O(j*h)+O(O(p*f)+O(g*i));L[a+128>>2]=O(o*h)+O(O(m*f)+O(g*n));return a}function oB(a,b,c,d,e,f,g){var h=0,i=0,j=0,k=O(0),l=O(0),m=0;m=(g|0)==1?2:1;i=H[c>>2];a:{if(!i){H[d>>2]=0;H[d+4>>2]=0;H[d+32>>2]=0;H[d+36>>2]=0;H[d+24>>2]=0;H[d+28>>2]=0;H[d+16>>2]=0;H[d+20>>2]=0;H[d+8>>2]=0;H[d+12>>2]=0;break a}h=H[c+20>>2];j=(h<<5)+e|0;h=(h<<3)+f|0;nB(d,L[c+48>>2],L[(c+48|0)+(m<<2)>>2],i,j,h,a,b,0,g);R6(j,a,i<<5);R6(h,b,i<<3)}i=H[c+4>>2];b:{if(i){h=c+80|0;k=L[h>>2];l=L[h+(m<<2)>>2];h=H[c+24>>2];j=(h<<5)+e|0;h=(h<<3)+f|0;nB(d+224|0,k,l,i,j,h,a,b,0,g);R6(j,a,i<<5);R6(h,b,i<<3);break b}H[d+224>>2]=0;H[d+228>>2]=0;H[d+256>>2]=0;H[d+260>>2]=0;H[d+248>>2]=0;H[d+252>>2]=0;H[d+240>>2]=0;H[d+244>>2]=0;H[d+232>>2]=0;H[d+236>>2]=0}i=H[c+8>>2];c:{if(i){h=c+112|0;k=L[h>>2];l=L[h+(m<<2)>>2];h=H[c+28>>2];j=(h<<5)+e|0;h=(h<<3)+f|0;nB(d+448|0,k,l,i,j,h,a,b,0,g);R6(j,a,i<<5);R6(h,b,i<<3);break c}H[d+448>>2]=0;H[d+452>>2]=0;H[d+480>>2]=0;H[d+484>>2]=0;H[d+472>>2]=0;H[d+476>>2]=0;H[d+464>>2]=0;H[d+468>>2]=0;H[d+456>>2]=0;H[d+460>>2]=0}i=H[c+12>>2];d:{if(i){h=c+144|0;k=L[h>>2];l=L[h+(m<<2)>>2];h=H[c+32>>2];j=(h<<5)+e|0;h=(h<<3)+f|0;nB(d+672|0,k,l,i,j,h,a,b,0,g);R6(j,a,i<<5);R6(h,b,i<<3);break d}H[d+672>>2]=0;H[d+676>>2]=0;H[d+704>>2]=0;H[d+708>>2]=0;H[d+696>>2]=0;H[d+700>>2]=0;H[d+688>>2]=0;H[d+692>>2]=0;H[d+680>>2]=0;H[d+684>>2]=0}i=H[c+16>>2];if(i){h=d+896|0;d=c+176|0;k=L[d>>2];l=L[d+(m<<2)>>2];c=H[c+36>>2];d=(c<<5)+e|0;c=(c<<3)+f|0;nB(h,k,l,i,d,c,a,b,1,g);R6(d,a,i<<5);R6(c,b,i<<3);return}H[d+896>>2]=0;H[d+900>>2]=0;H[d+928>>2]=0;H[d+932>>2]=0;H[d+920>>2]=0;H[d+924>>2]=0;H[d+912>>2]=0;H[d+916>>2]=0;H[d+904>>2]=0;H[d+908>>2]=0}function Dm(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;h=Oa-16|0;Oa=h;i=H[33768];d=H[i+1856>>2];if(!d){k=Oa-16|0;Oa=k;f=i+1568|0;d=H[f+284>>2];if(d){a=H[33808];e=Ra[H[H[a>>2]+20>>2]](a)|0?36614:55639;j=Ra[H[H[a+12>>2]+8>>2]](a+12|0,d,e,15259,180)|0}else{j=0}H[k+12>>2]=j;a=H[f+268>>2];a:{if(a>>>0>=(H[f+272>>2]&2147483647)>>>0){e=f+4|0;d=H[e+268>>2]&2147483647;l=d?d<<1:1;a=0;b:{if(!l){break b}d=l<<2;if(!(I[e+256|0]|d>>>0>256)){F[e+256|0]=1;a=e;break b}a=0;if(!d){break b}a=H[33808];g=Ra[H[H[a>>2]+20>>2]](a)|0?36614:55639;a=Ra[H[H[a+12>>2]+8>>2]](a+12|0,d,g,13582,553)|0}d=a;g=H[e+264>>2];n=d+(g<<2)|0;if((g|0)>0){m=H[e+260>>2];while(1){H[a>>2]=H[m>>2];m=m+4|0;a=a+4|0;if(n>>>0>a>>>0){continue}break}}H[n>>2]=H[k+12>>2];c:{if(H[e+268>>2]<0){break c}a=H[e+260>>2];if((a|0)==(e|0)){F[e+256|0]=0;break c}if(!a){break c}g=H[33808];Ra[H[H[g+12>>2]+12>>2]](g+12|0,a);g=H[e+264>>2]}H[e+268>>2]=l;H[e+260>>2]=d;H[e+264>>2]=g+1;break a}H[H[f+264>>2]+(a<<2)>>2]=j;H[f+268>>2]=a+1}d=(N(H[f+276>>2],44)+j|0)-44|0;if(j>>>0<=d>>>0){a=H[f+288>>2];while(1){H[d>>2]=a;a=d;d=d-44|0;if(j>>>0<=d>>>0){continue}break}H[f+288>>2]=a}Oa=k+16|0;d=H[i+1856>>2]}H[i+1856>>2]=H[d>>2];a=i+1848|0;H[a>>2]=H[a>>2]+1;H[d+4>>2]=196618;H[d+36>>2]=0;H[d+8>>2]=0;H[d+12>>2]=150994944;F[d+32|0]=c;H[d+28>>2]=b;H[d+24>>2]=-1;H[d+20>>2]=d;H[d+16>>2]=0;H[d>>2]=102864;a=b<<2;if(a){b=H[33808];a=Ra[H[H[b+12>>2]+8>>2]](b+12|0,a,20591,8670,60)|0}else{a=0}H[d+40>>2]=a;H[h+8>>2]=d;a=Nl(i+480|0,h+8|0,h+15|0);if(!I[h+15|0]){H[a>>2]=H[h+8>>2]}Oa=h+16|0;return d|0}function gI(a,b,c,d,e,f,g){var h=0,i=0,j=0,k=0,l=0,m=0,n=0;k=H[c+4>>2];k=I[H[k+44>>2]+9|0]-1>>>0<2?k:0;h=H[d+4>>2];m=I[H[h+44>>2]+9|0]-1>>>0<2?h:0;i=f;f=I[H[d+28>>2]- -64|0]&4;h=I[H[c+28>>2]- -64|0]&4;j=f|h;F[i|0]=j>>>2;a:{b:{c:{if(j){if(!h|!f){break c}break a}d:{e:{f:{g:{h:{if(k){f=F[H[k+44>>2]+44|0]&1;if(m){break h}if(H[b+24>>2]?f:0){break b}j=H[d+4>>2];l=H[c+4>>2];break g}f=0;if(m){break h}j=H[d+4>>2];l=H[c+4>>2];break d}h=H[b+20>>2];i:{j=F[H[m+44>>2]+44|0]&1;if(!(j?1:f)){break i}if(k?0:H[b+24>>2]){break b}if(!j|(!h|f^1)){break i}break b}j=H[d+4>>2];l=H[c+4>>2];if(!k){break f}}if(!(F[k+149|0]&1)){break d}h=H[j+28>>2];i=H[k+28>>2];f=h>>>0>>0;i=f?h:i;if(!i){break d}n=f?k:j;f=H[(f?j:k)+20>>2];while(1){h=H[f>>2];if(I[h+20|0]==4&((n|0)==H[h>>2]|(n|0)==H[h+4>>2])){break e}f=f+4|0;i=i-1|0;if(i){continue}break}break d}if(!(F[m+149|0]&1)){break d}h=H[l+28>>2];i=H[m+28>>2];f=h>>>0>>0;i=f?h:i;if(!i){break d}n=f?m:l;f=H[(f?l:m)+20>>2];while(1){h=H[f>>2];if(I[h+20|0]==4&((n|0)==H[h>>2]|(n|0)==H[h+4>>2])){break e}f=f+4|0;i=i-1|0;if(i){continue}break}break d}if(I[H[H[h+24>>2]+52>>2]]&8){break d}break b}if(I[H[l+44>>2]+9|0]!=2|I[H[j+44>>2]+9|0]!=2){break c}h=H[l+28>>2];if(!h){break c}f=H[l+20>>2];while(1){l=H[f>>2];if(I[l+20|0]==5&(H[l>>2]==(j|0)|H[l+4>>2]==(j|0))){break a}f=f+4|0;h=h-1|0;if(h){continue}break}}dI(a,b,c,d,k,m,e,g);return}if((e|0)!=-1){b=H[b+16>>2];H[H[b>>2]+(e<<2)>>2]=H[b+12>>2];H[b+12>>2]=e}H[a>>2]=2;H[a+4>>2]=-1;return}if((e|0)!=-1){b=H[b+16>>2];H[H[b>>2]+(e<<2)>>2]=H[b+12>>2];H[b+12>>2]=e}H[a>>2]=1;H[a+4>>2]=-1}function HG(a,b,c){var d=0,e=0,f=0,g=0,h=0;F[b+68|0]=I[b+68|0]&254;e=H[b+60>>2];a:{if(!e|H[e+164>>2]){break a}f=H[e+28>>2];if(!f){break a}e=H[e+20>>2];while(1){f=f-1|0;d=H[e>>2];b:{if(I[d+20|0]!=4){break b}g=H[d+24>>2];if((g|0)==(b|0)|F[g+68|0]&1){break b}d=H[c+8>>2];if(!d){break b}h=H[d+4>>2];if(h>>>0<=63){H[(d+(h<<2)|0)+8>>2]=g;d=H[c+8>>2];H[d+4>>2]=H[d+4>>2]+1;break b}d=Gw(H[c>>2],264,1);if(!d){break b}H[d+8>>2]=g;H[d>>2]=0;H[d+4>>2]=1;H[H[c+8>>2]>>2]=d;H[c+8>>2]=d}e=e+4|0;if(f){continue}break}}e=H[b- -64>>2];c:{if(!e){e=0;break c}if(H[e+164>>2]){break c}f=H[e+28>>2];if(!f){break c}e=H[e+20>>2];while(1){f=f-1|0;d=H[e>>2];d:{if(I[d+20|0]!=4){break d}g=H[d+24>>2];if((g|0)==(b|0)|F[g+68|0]&1){break d}d=H[c+8>>2];if(!d){break d}h=H[d+4>>2];if(h>>>0<=63){H[(d+(h<<2)|0)+8>>2]=g;d=H[c+8>>2];H[d+4>>2]=H[d+4>>2]+1;break d}d=Gw(H[c>>2],264,1);if(!d){break d}H[d+8>>2]=g;H[d>>2]=0;H[d+4>>2]=1;H[H[c+8>>2]>>2]=d;H[c+8>>2]=d}e=e+4|0;if(f){continue}break}e=H[b+64>>2]}b=H[b+60>>2];f=b?b:e;e=(b|0)==(f|0)?e:b;b=H[f+164>>2];e:{if(!b){b=H[a+292>>2];if(!b){FG(a+4|0);b=H[a+292>>2]}H[a+292>>2]=H[b>>2];H[a+284>>2]=H[a+284>>2]+1;c=AG(b,f);H[f+164>>2]=b;break e}c=BG(b);if(!H[c+20>>2]){break e}KG(c)}f:{if(!e){break f}b=H[e+164>>2];g:{if(!b){f=H[a+292>>2];if(!f){FG(a+4|0);f=H[a+292>>2]}H[a+292>>2]=H[f>>2];H[a+284>>2]=H[a+284>>2]+1;b=AG(f,e);H[e+164>>2]=f;break g}b=BG(b);if(!H[b+20>>2]){break g}KG(b)}if((b|0)==(c|0)){break f}a=H[b+12>>2];h:{if(a>>>0>2]){a=c;c=b;break h}H[b+12>>2]=a+1;a=b}H[c+4>>2]=a;H[H[a+8>>2]+16>>2]=c;H[a+8>>2]=H[c+8>>2]}}function Vv(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),F=O(0),G=O(0),I=O(0),J=O(0),K=O(0),M=O(0),P=O(0),Q=O(0),R=O(0),S=O(0),T=O(0),U=O(0),V=O(0),W=O(0),X=O(0),Y=O(0);c=Oa-32|0;Oa=c;a=H[a+336>>2]+N(b,192)|0;l=L[a+164>>2];m=L[a+100>>2];n=L[a+68>>2];o=L[a+36>>2];p=L[a+132>>2];q=L[a+168>>2];r=L[a+104>>2];s=L[a+72>>2];t=L[a+40>>2];u=L[a+136>>2];v=L[a+176>>2];w=L[a+112>>2];x=L[a+80>>2];y=L[a+48>>2];z=L[a+144>>2];A=L[a+180>>2];B=L[a+116>>2];C=L[a+84>>2];D=L[a+20>>2];E=L[a+52>>2];F=L[a+148>>2];G=L[a+184>>2];I=L[a+120>>2];J=L[a+88>>2];K=L[a+24>>2];M=L[a+56>>2];P=L[a+152>>2];f=L[d+24>>2];g=L[d+20>>2];Q=L[a+4>>2];R=L[a+8>>2];S=L[a+16>>2];T=L[a+160>>2];U=L[a+128>>2];h=L[d+16>>2];V=L[a+96>>2];i=L[d+8>>2];W=L[a+64>>2];j=L[d>>2];X=L[a>>2];k=L[d+4>>2];Y=L[a+32>>2];H[c+28>>2]=0;H[c+12>>2]=0;L[c>>2]=O(O(O(O(O(X*j)+O(Y*k))+O(W*i))+O(V*h))+O(U*g))+O(T*f);L[c+24>>2]=O(O(O(O(O(K*j)+O(M*k))+O(J*i))+O(I*h))+O(P*g))+O(G*f);L[c+20>>2]=O(O(O(O(O(D*j)+O(E*k))+O(C*i))+O(B*h))+O(F*g))+O(A*f);L[c+16>>2]=O(O(O(O(O(S*j)+O(y*k))+O(x*i))+O(w*h))+O(z*g))+O(v*f);L[c+8>>2]=O(O(O(O(O(R*j)+O(t*k))+O(s*i))+O(r*h))+O(u*g))+O(q*f);L[c+4>>2]=O(O(O(O(O(Q*j)+O(o*k))+O(n*i))+O(m*h))+O(p*g))+O(l*f);a=H[c+20>>2];H[e>>2]=H[c+16>>2];H[e+4>>2]=a;a=H[c+28>>2];H[e+8>>2]=H[c+24>>2];H[e+12>>2]=a;a=H[c+4>>2];H[e+16>>2]=H[c>>2];H[e+20>>2]=a;a=H[c+12>>2];H[e+24>>2]=H[c+8>>2];H[e+28>>2]=a;Oa=c+32|0}function qT(a,b,c,d){var e=0,f=0,g=0,h=O(0),i=0,j=0,k=O(0),l=O(0),m=O(0);e=Oa-48|0;Oa=e;i=M[a+440>>3];j=M[a+432>>3];L[e+32>>2]=M[a+448>>3];L[e+28>>2]=i;L[e+24>>2]=j;L[e+8>>2]=L[a+12>>2];L[e+12>>2]=L[a+16>>2];L[e+16>>2]=L[a+20>>2];L[e+20>>2]=L[a+24>>2];f=Ra[H[H[b>>2]+88>>2]](b,e+8|0)|0;H[a+424>>2]=f;if(f){F[e+40|0]=11;H[e+44>>2]=d;b=Ra[H[H[b>>2]+96>>2]](b,c,e+44|0,1,1,e+40|0)|0;c=H[a+424>>2];Ra[H[H[c>>2]+84>>2]](c,b)|0;Ra[H[H[b>>2]>>2]](b);b=H[a+424>>2];Ra[H[H[b>>2]+208>>2]](b,1,1);b=H[a+424>>2];d=Oa-16|0;Oa=d;L[d+12>>2]=L[a+504>>2];c=Oa-128|0;Oa=c;H[c+124>>2]=1065353216;H[c+120>>2]=1065353216;H[c+112>>2]=1065353216;H[c+116>>2]=1065353216;H[c+104>>2]=0;H[c+108>>2]=1065353216;H[c+96>>2]=0;H[c+100>>2]=0;L[c+88>>2]=0;L[c+84>>2]=0;L[c+80>>2]=0;f=d+12|0;a:{b:{if(f){H[c+72>>2]=0;g=c- -64|0;H[g>>2]=0;H[g+4>>2]=0;H[c+56>>2]=0;H[c+60>>2]=0;H[c+48>>2]=0;H[c+52>>2]=0;H[c+40>>2]=0;H[c+44>>2]=0;H[c+32>>2]=0;H[c+36>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;if(S4(b,f,0,c+24|0)){if(L[c+72>>2]==O(0)){break b}T4(c+24|0,c+112|0,c+96|0,c+124|0,c+80|0,b,20845);k=L[c+88>>2];l=L[c+84>>2];m=L[c+80>>2];h=L[c+124>>2];break a}f=H[33808];H[c>>2]=20845;o5(f,4,5194,280,61696,c);break b}f=H[33808];H[c+16>>2]=20845;o5(f,4,5194,288,61778,c+16|0)}h=O(1)}Ra[H[H[b>>2]+116>>2]](b,h);Ra[H[H[b>>2]+128>>2]](b,c+112|0);L[c+48>>2]=k;L[c+44>>2]=l;f=H[c+100>>2];H[c+24>>2]=H[c+96>>2];H[c+28>>2]=f;L[c+40>>2]=m;f=H[c+108>>2];H[c+32>>2]=H[c+104>>2];H[c+36>>2]=f;Ra[H[H[b>>2]+108>>2]](b,c+24|0);Oa=c+128|0;Oa=d+16|0;b=H[a+480>>2];Ra[H[H[b>>2]+44>>2]](b,H[a+424>>2],0)}Oa=e+48|0}function Q3(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=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0);c=Oa-176|0;Oa=c;H[c+60>>2]=a;H[c+56>>2]=a;a=H[e+12>>2];H[d+8>>2]=H[e+8>>2];H[d+12>>2]=a;a=H[e+4>>2];H[d>>2]=H[e>>2];H[d+4>>2]=a;$1(c+144|0,c+112|0,e,f,g);n=L[f+20>>2];o=L[f+16>>2];k=L[c+132>>2];l=L[c+128>>2];m=L[c+136>>2];L[b+8>>2]=m-L[f+24>>2];L[b+4>>2]=k-n;L[b>>2]=l-o;n=L[f+20>>2];o=L[f+16>>2];L[c+72>>2]=m-L[f+24>>2];L[c+68>>2]=k-n;L[c+64>>2]=l-o;n=L[g+20>>2];o=L[g+24>>2];p=L[g+16>>2];q=L[c+164>>2];L[c+92>>2]=q;L[c+108>>2]=m;L[c+104>>2]=k;r=L[c+168>>2];L[c+96>>2]=r;L[c+84>>2]=m-o;L[c+80>>2]=k-n;t=L[c+160>>2];L[c+88>>2]=t;L[c+100>>2]=l;L[c+76>>2]=l-p;n=L[c+156>>2];u=L[c+124>>2];o=L[c+152>>2];v=L[c+120>>2];p=L[c+144>>2];w=L[c+112>>2];s=L[c+148>>2];x=L[c+116>>2];if(O(O(n*u)+O(O(o*v)+O(O(p*w)+O(s*x))))>2]=-u;L[c+120>>2]=-v;L[c+116>>2]=-x;L[c+112>>2]=-w}m=O(m-r);m=O(m+m);l=O(l-t);l=O(l+l);k=O(k-q);k=O(k+k);q=O(O(o*m)+O(O(p*l)+O(k*s)));r=O(O(n*n)+O(-.5));L[c+16>>2]=O(o*q)+O(O(m*r)-O(n*O(O(p*k)-O(l*s))));L[c+12>>2]=O(s*q)+O(O(k*r)-O(n*O(O(o*l)-O(m*p))));L[c+8>>2]=O(p*q)+O(O(l*r)-O(n*O(O(s*m)-O(k*o))));d2(c+56|0,c+144|0,c+112|0,c+8|0,7,7,c+40|0,c+24|0);k=L[f+16>>2];l=L[f+20>>2];n=L[c+40>>2];m=L[c+44>>2];L[i+8>>2]=L[c+48>>2]+L[f+24>>2];L[i+4>>2]=m+l;L[i>>2]=n+k;k=L[g+16>>2];l=L[g+20>>2];n=L[c+24>>2];m=L[c+28>>2];L[j+8>>2]=L[c+32>>2]+L[g+24>>2];L[j+4>>2]=m+l;L[j>>2]=n+k;Oa=c+176|0;return(H[c+60>>2]-H[c+56>>2]|0)/80|0}function Z0(a,b,c,d){var e=0,f=0,g=0,h=0;a:{if(c>>>0<=4){if(!c){break a}f=H[b+4>>2];e=H[a+76>>2];H[e>>2]=H[b>>2];H[e+4>>2]=f;f=H[b+12>>2];H[e+8>>2]=H[b+8>>2];H[e+12>>2]=f;f=H[b+20>>2];e=H[a+76>>2];H[e+16>>2]=H[b+16>>2];H[e+20>>2]=f;f=H[b+28>>2];H[e+24>>2]=H[b+24>>2];H[e+28>>2]=f;f=H[b+36>>2];e=H[a+76>>2];H[e+32>>2]=H[b+32>>2];H[e+36>>2]=f;f=H[b+44>>2];H[e+40>>2]=H[b+40>>2];H[e+44>>2]=f;if((c|0)==1){break a}f=H[b+52>>2];e=H[a+76>>2];H[e+48>>2]=H[b+48>>2];H[e+52>>2]=f;f=H[b+60>>2];H[e+56>>2]=H[b+56>>2];H[e+60>>2]=f;g=b- -64|0;h=H[g+4>>2];e=H[a+76>>2];f=e- -64|0;H[f>>2]=H[g>>2];H[f+4>>2]=h;f=H[b+76>>2];H[e+72>>2]=H[b+72>>2];H[e+76>>2]=f;f=H[b+84>>2];e=H[a+76>>2];H[e+80>>2]=H[b+80>>2];H[e+84>>2]=f;f=H[b+92>>2];H[e+88>>2]=H[b+88>>2];H[e+92>>2]=f;if((c|0)==2){break a}f=H[b+100>>2];e=H[a+76>>2];H[e+96>>2]=H[b+96>>2];H[e+100>>2]=f;f=H[b+108>>2];H[e+104>>2]=H[b+104>>2];H[e+108>>2]=f;f=H[b+116>>2];e=H[a+76>>2];H[e+112>>2]=H[b+112>>2];H[e+116>>2]=f;f=H[b+124>>2];H[e+120>>2]=H[b+120>>2];H[e+124>>2]=f;f=H[b+132>>2];e=H[a+76>>2];H[e+128>>2]=H[b+128>>2];H[e+132>>2]=f;f=H[b+140>>2];H[e+136>>2]=H[b+136>>2];H[e+140>>2]=f;if((c|0)==3){break a}f=H[b+148>>2];e=H[a+76>>2];H[e+144>>2]=H[b+144>>2];H[e+148>>2]=f;f=H[b+156>>2];H[e+152>>2]=H[b+152>>2];H[e+156>>2]=f;f=H[b+164>>2];e=H[a+76>>2];H[e+160>>2]=H[b+160>>2];H[e+164>>2]=f;f=H[b+172>>2];H[e+168>>2]=H[b+168>>2];H[e+172>>2]=f;f=H[b+180>>2];e=H[a+76>>2];H[e+176>>2]=H[b+176>>2];H[e+180>>2]=f;f=H[b+188>>2];H[e+184>>2]=H[b+184>>2];H[e+188>>2]=f;F[a+64|0]=c;return}_0(a,b,c,d);c=4}F[a+64|0]=c}function sf(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;e=Oa-32|0;Oa=e;d=H[a+8>>2];if(d){mg(d+H[(J[d+4>>1]<<2)+73232>>2]|0,0,a)}d=H[a+12>>2];if(d){mg(d+H[(J[d+4>>1]<<2)+73232>>2]|0,0,a)}a:{b:{c:{if(!b){if(c){break b}H[a+8>>2]=0;H[a+12>>2]=0;break c}lg(H[(J[b+4>>1]<<2)+73232>>2]+b|0,0,a);if(c){break b}H[a+12>>2]=0;H[a+8>>2]=b;Ra[H[H[b>>2]+52>>2]](e,b);if(I[e|0]&8){break c}f=Ra[H[H[b>>2]+28>>2]](b)|0}i=1;break a}lg(H[(J[c+4>>1]<<2)+73232>>2]+c|0,0,a);H[a+12>>2]=c;H[a+8>>2]=b;d:{if(!b){break d}Ra[H[H[b>>2]+52>>2]](e+16|0,b);if(I[e+16|0]&8){break d}f=Ra[H[H[b>>2]+28>>2]](b)|0}Ra[H[H[c>>2]+52>>2]](e+8|0,c);if(!(I[e+8|0]&8)){g=Ra[H[H[c>>2]+28>>2]](c)|0}d=g?f?f:g:0;f=b?f?d:0:d}e:{f:{g:{h:{if((H[a+20>>2]>>>30|0)-3>>>0<4294967294){break h}d=H[a+16>>2];if(!d){break h}d=d-16|0;if((d|0)==(f|0)){break g}if(!d){break f}H[e+20>>2]=a;Pf(d+5892|0,e+20|0);Mt(d+16|0,a+16|0);break f}if(f){break f}}g=0;d=0;i:{if(!b){break i}j:{switch(J[b+4>>1]-5|0){case 0:d=b+48|0;break i;case 8:d=b+48|0;break i;default:break j}}d=b+48|0}a=a+16|0;k:{if(i){break k}l:{switch(J[c+4>>1]-5|0){case 0:g=c+48|0;break k;case 8:g=c+48|0;break k;default:break l}}g=c+48|0}tf(a,d,g);break e}d=0;m:{if(!b){break m}n:{switch(J[b+4>>1]-5|0){case 0:d=b+48|0;break m;case 8:d=b+48|0;break m;default:break n}}d=b+48|0}b=a+16|0;o:{if(i){break o}p:{switch(J[c+4>>1]-5|0){case 0:h=c+48|0;break o;case 8:h=c+48|0;break o;default:break p}}h=c+48|0}tf(b,d,h);if(!f){break e}H[e+24>>2]=a;a=rg(f+5892|0,e+24|0,e+31|0);if(!I[e+31|0]){H[a>>2]=H[e+24>>2]}Lt(f+16|0,b)}Oa=e+32|0}function o3(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=Oa-1040|0;Oa=f;a=3937;a:{b:{c:{switch(b+1|0){case 5:a=4087;break b;case 9:a=11586;break b;case 17:a=1305;break b;case 2:a=11299;break b;case 3:a=16937;break b;default:if((b|0)!=128){break a}a=16925;break b;case 65:a=1946;break b;case 33:a=3960;break b;case 4:case 6:case 7:case 8:case 10:case 11:case 12:case 13:case 14:case 15:case 16:case 18:case 19:case 20:case 21:case 22:case 23:case 24:case 25:case 26:case 27:case 28:case 29:case 30:case 31:case 32:case 34:case 35:case 36:case 37:case 38:case 39:case 40:case 41:case 42:case 43:case 44:case 45:case 46:case 47:case 48:case 49:case 50:case 51:case 52:case 53:case 54:case 55:case 56:case 57:case 58:case 59:case 60:case 61:case 62:case 63:case 64:break a;case 1:break b;case 0:break c}}a=3946}H[f>>2]=d;H[f+4>>2]=e;H[f+8>>2]=a;H[f+12>>2]=c;d=Oa-16|0;Oa=d;H[d+12>>2]=f;a=Oa-160|0;Oa=a;g=a+8|0;R6(g,96400,144);c=f+16|0;H[a+52>>2]=c;H[a+28>>2]=c;e=-2-c|0;e=e>>>0<2147483647?e:2147483647;H[a+56>>2]=e;h=c+e|0;H[a+36>>2]=h;H[a+24>>2]=h;c6(g,66919,f,0,0);if(e){e=H[a+28>>2];F[e-((e|0)==H[a+24>>2])|0]=0}Oa=a+160|0;Oa=d+16|0;V6(c);if((b|0)!=64){break a}while(1){V6(f+16|0);c=Oa-16|0;Oa=c;H[c+12>>2]=0;H[c+8>>2]=1e3;while(1){b=28;a=c+8|0;d:{if(!a){break d}d=H[a+4>>2];if(d>>>0>999999999){break d}a=H[a>>2];if((a|0)<0){break d}i=+(a|0)*1e3+ +(d|0)/1e6;j=+Ia();while(1){if(+Ia()-j>>0>=4294963201){H[33811]=0-a;a=-1}if((a|0)==-1){continue}break}Oa=c+16|0;continue}}Oa=f+1040|0}function RB(a,b){var c=0,d=O(0),e=O(0),f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=0,m=0,n=0,o=O(0);c=H[a+40>>2];a:{if(!c){l=1;m=H[a+36>>2];c=N(H[m+4>>2],24)+b|0;d=L[c+12>>2];h=L[c+8>>2];i=L[c+4>>2];j=L[c>>2];f=L[c+20>>2];g=L[c+16>>2];n=H[m>>2];if(n>>>0>1){while(1){c=N(H[((l<<2)+m|0)+4>>2],24)+b|0;e=L[c+12>>2];d=d>e?d:e;e=L[c+8>>2];h=e>h?h:e;e=L[c+4>>2];i=e>i?i:e;e=L[c>>2];j=e>j?j:e;e=L[c+20>>2];f=e>2];g=e>2]=0;L[a+8>>2]=h;L[a+4>>2]=i;L[a>>2]=j;h=O(0);break a}h=L[c>>2];b=H[a+36>>2];d=L[b>>2];f=L[c+4>>2];g=L[b+4>>2];i=L[c+8>>2];j=L[b+8>>2];e=L[b+12>>2];k=L[c+12>>2];L[a+12>>2]=e>2]=i>j?j:i;L[a+4>>2]=f>g?g:f;L[a>>2]=d>2];d=L[c+28>>2];h=d>2];f=L[c+24>>2];f=d>f?d:f;d=L[b+20>>2];g=L[c+20>>2];g=d>g?d:g;d=L[b+16>>2];i=L[c+16>>2];d=d>i?d:i}L[a+16>>2]=d;L[a+28>>2]=h;L[a+24>>2]=f;L[a+20>>2]=g;a=H[a+32>>2];b:{if(!a){break b}while(1){b=H[a+36>>2];h=L[b+28>>2];c=H[a+40>>2];d=L[c+28>>2];h=d>2];f=L[c+24>>2];d=d>f?d:f;f=L[b+20>>2];g=L[c+20>>2];f=f>g?f:g;g=L[b+16>>2];i=L[c+16>>2];g=g>i?g:i;i=L[b+12>>2];j=L[c+12>>2];i=i>2];e=L[c+8>>2];j=e>j?j:e;e=L[b+4>>2];k=L[c+4>>2];e=e>2];o=L[c>>2];k=k>2]|e!=L[a+4>>2]|(j!=L[a+8>>2]|i!=L[a+12>>2])){break c}if(g!=L[a+16>>2]|f!=L[a+20>>2]|d!=L[a+24>>2]){break c}if(h==L[a+28>>2]){break b}}L[a+16>>2]=g;L[a+12>>2]=i;L[a+8>>2]=j;L[a+4>>2]=e;L[a>>2]=k;L[a+28>>2]=h;L[a+24>>2]=d;L[a+20>>2]=f;a=H[a+32>>2];if(a){continue}break}}}function bL(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,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;f=Oa-16|0;a:{if(!H[a+188>>2]){break a}b=H[a+144>>2];d=H[b+4>>2];t=H[a+164>>2];h=H[t+4>>2];u=H[a+160>>2];l=H[u+4>>2];v=H[a+152>>2];i=H[v+4>>2];c=H[a+148>>2];e=H[c+4>>2];w=H[a+156>>2];p=H[w+4>>2];H[f+12>>2]=f+8;g=H[f+12>>2];H[f+12>>2]=f+4;m=H[f+12>>2];H[f+12>>2]=f;n=H[f+12>>2];H[g>>2]=(d|0)>=0?d^-1:d&2147483647;H[m>>2]=(e|0)>=0?e^-1:e&2147483647;H[n>>2]=(i|0)>=0?i^-1:i&2147483647;d=H[g>>2];d=(d|0)>=0?d|-2147483648:d^-1;H[b+4>>2]=p&1?d+16&-16|1:d-16&-16;d=H[m>>2];d=(d|0)>=0?d|-2147483648:d^-1;H[c+4>>2]=l&1?d+16&-16|1:d-16&-16;d=H[n>>2];d=(d|0)>=0?d|-2147483648:d^-1;i=h&1?d+16&-16|1:d-16&-16;H[v+4>>2]=i;if(!(H[a+188>>2]&2147483647)){break a}d=H[w+4>>2]&1;m=H[u+4>>2]&1;n=H[t+4>>2]&1;q=H[b+4>>2];r=H[c+4>>2];s=2;while(1){e=s<<2;x=e+b|0;g=H[x>>2];y=H[e+w>>2];z=H[e+u>>2];A=H[e+t>>2];l=e+v|0;h=H[l>>2];p=c+e|0;e=H[p>>2];H[f+12>>2]=f+8;o=H[f+12>>2];H[f+12>>2]=f+4;j=H[f+12>>2];H[f+12>>2]=f;k=H[f+12>>2];H[o>>2]=(g|0)>=0?g^-1:g&2147483647;H[j>>2]=(e|0)>=0?e^-1:e&2147483647;e=k;k=(h|0)>=0?h^-1:h&2147483647;H[e>>2]=k;e=H[o>>2];g=(e|0)>=0?e|-2147483648:e^-1;e=z&1;h=y&1;o=h?g+16&-16|1:g-16&-16;g=A&1;j=H[j>>2];j=(j|0)>=0?j|-2147483648:j^-1;k=(k|0)>=0?k|-2147483648:k^-1;q=o>>>0>>0?(d^h)+q|0:o;H[x>>2]=q;d=e?j+16&-16|1:j-16&-16;r=d>>>0>>0?(e^m)+r|0:d;H[p>>2]=r;d=g?k+16&-16|1:k-16&-16;i=d>>>0>>0?(g^n)+i|0:d;H[l>>2]=i;l=H[a+188>>2]<<1>>>0>s>>>0;d=h;m=e;n=g;s=s+1|0;if(l){continue}break}}}function ZC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;e=Oa-32|0;Oa=e;d=H[a+4>>2];if(!(!d|!H[d+8>>2])){H[e+24>>2]=0;H[e+16>>2]=0;H[e+20>>2]=0;H[e+8>>2]=0;H[e+12>>2]=1065353216;H[e>>2]=0;H[e+4>>2]=0;VT(b,e);H[b+4>>2]=c;d=H[d+8>>2];_C(d,d,b)}H[e+24>>2]=0;H[e+16>>2]=0;H[e+20>>2]=0;H[e+8>>2]=0;H[e+12>>2]=1065353216;H[e>>2]=0;H[e+4>>2]=0;VT(b,e);H[b+4>>2]=-1;if(!(!I[a+336|0]|(H[a+156>>2]+H[a+108>>2]|0)==(0-H[a+216>>2]|0))){f=Oa-32|0;Oa=f;d=H[a+220>>2];if(!(!d|!H[d+8>>2])){H[f+24>>2]=0;H[f+16>>2]=0;H[f+20>>2]=0;H[f+8>>2]=0;H[f+12>>2]=1065353216;H[f>>2]=0;H[f+4>>2]=0;VT(b,f);H[b+4>>2]=c;d=H[d+8>>2];uC(d,d,b)}g=H[a+256>>2];if(g){while(1){d=H[H[a+252>>2]+(h<<3)>>2];if(!(!d|!H[d+8>>2])){H[f+24>>2]=0;H[f+16>>2]=0;H[f+20>>2]=0;H[f+8>>2]=0;H[f+12>>2]=1065353216;H[f>>2]=0;H[f+4>>2]=0;VT(b,f);H[b+4>>2]=c;d=H[d+8>>2];uC(d,d,b);g=H[a+256>>2]}h=h+1|0;if(g>>>0>h>>>0){continue}break}}d=Oa-32|0;Oa=d;g=H[a+68>>2];if(!(!g|!H[g+588>>2])){H[d+24>>2]=0;H[d+16>>2]=0;H[d+20>>2]=0;H[d+8>>2]=0;H[d+12>>2]=1065353216;H[d>>2]=0;H[d+4>>2]=0;VT(b,d);H[b+4>>2]=c;g=H[H[a+68>>2]+588>>2];lC(g,g,b);H[d+24>>2]=0;H[d+16>>2]=0;H[d+20>>2]=0;H[d+8>>2]=0;H[d+12>>2]=1065353216;H[d>>2]=0;H[d+4>>2]=0;VT(b,d);H[b+4>>2]=-1}g=H[a+116>>2];if(!(!g|!H[g+588>>2])){H[d+24>>2]=0;H[d+16>>2]=0;H[d+20>>2]=0;H[d+8>>2]=0;H[d+12>>2]=1065353216;H[d>>2]=0;H[d+4>>2]=0;VT(b,d);H[b+4>>2]=c;a=H[H[a+116>>2]+588>>2];lC(a,a,b);H[d+24>>2]=0;H[d+16>>2]=0;H[d+20>>2]=0;H[d+8>>2]=0;H[d+12>>2]=1065353216;H[d>>2]=0;H[d+4>>2]=0;VT(b,d);H[b+4>>2]=-1}Oa=d+32|0;Oa=f+32|0}Oa=e+32|0}function ch(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=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;a=H[33768];f=H[a+3928>>2];if(!f){l=Oa-16|0;Oa=l;j=a+3640|0;k=H[j+284>>2];if(k){h=H[33808];f=Ra[H[H[h>>2]+20>>2]](h)|0?36304:55639;k=Ra[H[H[h+12>>2]+8>>2]](h+12|0,k,f,15259,180)|0}else{k=0}H[l+12>>2]=k;g=H[j+268>>2];a:{if(g>>>0>=(H[j+272>>2]&2147483647)>>>0){h=j+4|0;f=H[h+268>>2]&2147483647;n=f?f<<1:1;g=0;b:{if(!n){break b}i=n<<2;if(!(I[h+256|0]|i>>>0>256)){F[h+256|0]=1;g=h;break b}g=0;if(!i){break b}f=H[33808];g=f+12|0;g=(q=g,r=i,s=Ra[H[H[f>>2]+20>>2]](f)|0?36304:55639,t=13582,u=553,p=H[H[g>>2]+8>>2],Ra[p](q|0,r|0,s|0,t|0,u|0)|0)}m=H[h+264>>2];i=g+(m<<2)|0;if((m|0)>0){o=H[h+260>>2];f=g;while(1){H[f>>2]=H[o>>2];o=o+4|0;f=f+4|0;if(i>>>0>f>>>0){continue}break}}H[i>>2]=H[l+12>>2];c:{if(H[h+268>>2]<0){break c}i=H[h+260>>2];if((i|0)==(h|0)){F[h+256|0]=0;break c}if(!i){break c}f=H[33808]+12|0;Ra[H[H[f>>2]+12>>2]](f,i);m=H[h+264>>2]}H[h+268>>2]=n;H[h+260>>2]=g;H[h+264>>2]=m+1;break a}H[H[j+264>>2]+(g<<2)>>2]=k;H[j+268>>2]=g+1}g=(N(H[j+276>>2],400)+k|0)-400|0;if(k>>>0<=g>>>0){f=H[j+288>>2];while(1){H[g>>2]=f;f=g;g=f-400|0;if(k>>>0<=g>>>0){continue}break}H[j+288>>2]=f}Oa=l+16|0;f=H[a+3928>>2]}H[a+3928>>2]=H[f>>2];a=a+3920|0;H[a>>2]=H[a>>2]+1;H[f+4>>2]=65551;H[f+8>>2]=0;H[f+12>>2]=0;H[f+16>>2]=0;H[f>>2]=106296;aE(f+20|0,c,e,1);H[f+396>>2]=d;H[f+392>>2]=b;H[f+12>>2]=H[f+12>>2]&-251658241|134217728;a=H[b+320>>2];a=Ra[H[H[a>>2]+100>>2]](a)|0;H[f+388>>2]=f;H[f>>2]=106100;H[f+384>>2]=a+12;return f|0}function Zt(a){var b=0,c=0,d=0,e=0,f=0;if(H[a+4928>>2]){while(1){_t(H[H[a+4896>>2]+(b<<2)>>2]);b=b+1|0;if(b>>>0>2]){continue}break}}if(H[a+4968>>2]){b=0;while(1){_t(H[H[a+4936>>2]+(b<<2)>>2]);b=b+1|0;if(b>>>0>2]){continue}break}}e=a+16|0;a:{if(!H[a+5008>>2]){break a}b=0;while(1){c=H[H[a+4976>>2]+(b<<2)>>2];b:{if(K[c+4>>2]<3221225472){break b}lO(e,c+12|0);if(I[c+7|0]&16){break b}Wt(c)}b=b+1|0;c=H[a+5008>>2];if(b>>>0>>0){continue}break}if(!c){break a}d=H[a+4976>>2];b=0;while(1){f=H[d+(b<<2)>>2];if((H[f+4>>2]&268435457)==268435457){zG(f+12|0);c=H[a+5008>>2]}b=b+1|0;if(c>>>0>b>>>0){continue}break}}c=H[a+5088>>2];if(c){b=0;while(1){d=H[H[a+5056>>2]+(b<<2)>>2];if(K[d+4>>2]>=3221225472){pO(d+12|0);c=H[a+5088>>2]}b=b+1|0;if(c>>>0>b>>>0){continue}break}}c=H[a+4928>>2];if(c){b=0;while(1){d=H[H[a+4896>>2]+(b<<2)>>2];f=H[d+4>>2];if(f>>>0>=3221225472){Gt(e,d,(f&16)>>>4|0);c=H[a+4928>>2]}b=b+1|0;if(c>>>0>b>>>0){continue}break}}if(H[a+4968>>2]){b=0;while(1){c=H[H[a+4936>>2]+(b<<2)>>2];d=H[c+4>>2];c:{if(d>>>0<3221225472){break c}Jt(e,c,(d&16)>>>4|0);if(I[c+7|0]&16){break c}Vt(c)}b=b+1|0;if(b>>>0>2]){continue}break}}if(H[a+5048>>2]){b=0;while(1){c=H[H[a+5016>>2]+(b<<2)>>2];d=H[c+4>>2];d:{if(d>>>0<3221225472){break d}H[c+4>>2]=d&-769;nO(e,c+12|0);if(I[c+7|0]&16){break d}Xt(c)}b=b+1|0;if(b>>>0>2]){continue}break}}c=H[a+5128>>2];if(c){b=0;while(1){d=H[H[a+5096>>2]+(b<<2)>>2];if(K[d+4>>2]>=3221225472){Ut(d,a);UO(e,H[d+16>>2]);c=H[a+5128>>2]}b=b+1|0;if(c>>>0>b>>>0){continue}break}}}function Tj(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=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;a=H[33768];f=H[a+3632>>2];if(!f){l=Oa-16|0;Oa=l;j=a+3344|0;k=H[j+284>>2];if(k){h=H[33808];f=Ra[H[H[h>>2]+20>>2]](h)|0?23760:55639;k=Ra[H[H[h+12>>2]+8>>2]](h+12|0,k,f,15259,180)|0}else{k=0}H[l+12>>2]=k;g=H[j+268>>2];a:{if(g>>>0>=(H[j+272>>2]&2147483647)>>>0){h=j+4|0;f=H[h+268>>2]&2147483647;n=f?f<<1:1;g=0;b:{if(!n){break b}i=n<<2;if(!(I[h+256|0]|i>>>0>256)){F[h+256|0]=1;g=h;break b}g=0;if(!i){break b}f=H[33808];g=f+12|0;g=(q=g,r=i,s=Ra[H[H[f>>2]+20>>2]](f)|0?23760:55639,t=13582,u=553,p=H[H[g>>2]+8>>2],Ra[p](q|0,r|0,s|0,t|0,u|0)|0)}m=H[h+264>>2];i=g+(m<<2)|0;if((m|0)>0){o=H[h+260>>2];f=g;while(1){H[f>>2]=H[o>>2];o=o+4|0;f=f+4|0;if(i>>>0>f>>>0){continue}break}}H[i>>2]=H[l+12>>2];c:{if(H[h+268>>2]<0){break c}i=H[h+260>>2];if((i|0)==(h|0)){F[h+256|0]=0;break c}if(!i){break c}f=H[33808]+12|0;Ra[H[H[f>>2]+12>>2]](f,i);m=H[h+264>>2]}H[h+268>>2]=n;H[h+260>>2]=g;H[h+264>>2]=m+1;break a}H[H[j+264>>2]+(g<<2)>>2]=k;H[j+268>>2]=g+1}g=(N(H[j+276>>2],400)+k|0)-400|0;if(k>>>0<=g>>>0){f=H[j+288>>2];while(1){H[g>>2]=f;f=g;g=f-400|0;if(k>>>0<=g>>>0){continue}break}H[j+288>>2]=f}Oa=l+16|0;f=H[a+3632>>2]}H[a+3632>>2]=H[f>>2];a=a+3624|0;H[a>>2]=H[a>>2]+1;H[f+4>>2]=65550;H[f+8>>2]=0;H[f+12>>2]=0;H[f+16>>2]=0;H[f>>2]=105916;aE(f+20|0,c,e,0);H[f+396>>2]=d;H[f+392>>2]=b;H[f+12>>2]=H[f+12>>2]&-251658241|134217728;a=H[b+320>>2];a=Ra[H[H[a>>2]+100>>2]](a)|0;H[f+388>>2]=f;H[f>>2]=105628;H[f+384>>2]=a+12;return f|0}function s2(a,b,c){a=a|0;b=b|0;c=c|0;var d=O(0),e=O(0),f=O(0),g=O(0),h=0,i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=0;h=Oa-32|0;Oa=h;s=H[a+76>>2];Ra[H[H[s>>2]+32>>2]](s,b,c);u1(h,b);m=L[a+36>>2];n=L[a+40>>2];o=L[a+44>>2];p=L[h+20>>2];q=L[h+24>>2];r=L[h+16>>2];b=H[a+80>>2];i=L[h+8>>2];d=L[a+28>>2];j=L[h+4>>2];e=L[a+24>>2];g=L[h+12>>2];f=L[a+32>>2];k=L[h>>2];l=L[a+20>>2];L[b+28>>2]=O(i*d)+O(O(j*e)+O(O(g*f)+O(k*l)));L[b+24>>2]=O(l*j)+O(O(O(g*d)-O(f*i))-O(k*e));L[b+20>>2]=O(d*k)+O(O(O(g*e)-O(f*j))-O(i*l));L[b+16>>2]=O(e*i)+O(O(O(g*l)-O(f*k))-O(j*d));d=O(m-r);d=O(d+d);e=O(n-p);e=O(e+e);f=O(o-q);f=O(f+f);l=O(O(O(O(-k)*d)-O(e*j))-O(i*f));m=O(O(g*g)+O(-.5));L[b+40>>2]=O(O(f*m)+O(g*O(O(j*d)-O(k*e))))-O(i*l);L[b+36>>2]=O(O(e*m)+O(g*O(O(k*f)-O(i*d))))-O(j*l);L[b+32>>2]=O(O(d*m)+O(g*O(O(i*e)-O(j*f))))-O(k*l);u1(h,c);m=L[a- -64>>2];n=L[a+68>>2];o=L[a+72>>2];p=L[h+20>>2];q=L[h+24>>2];r=L[h+16>>2];b=H[a+80>>2];i=L[h+8>>2];d=L[a+56>>2];j=L[h+4>>2];e=L[a+52>>2];g=L[h+12>>2];f=L[a+60>>2];k=L[h>>2];l=L[a+48>>2];L[b+56>>2]=O(i*d)+O(O(j*e)+O(O(g*f)+O(k*l)));L[b+52>>2]=O(l*j)+O(O(O(g*d)-O(f*i))-O(k*e));L[b+48>>2]=O(d*k)+O(O(O(g*e)-O(f*j))-O(i*l));L[b+44>>2]=O(e*i)+O(O(O(g*l)-O(f*k))-O(j*d));d=O(m-r);d=O(d+d);e=O(n-p);e=O(e+e);f=O(o-q);f=O(f+f);l=O(O(O(O(-k)*d)-O(e*j))-O(i*f));m=O(O(g*g)+O(-.5));L[b+68>>2]=O(O(f*m)+O(g*O(O(j*d)-O(k*e))))-O(i*l);L[b- -64>>2]=O(O(e*m)+O(g*O(O(k*f)-O(i*d))))-O(j*l);L[b+60>>2]=O(O(d*m)+O(g*O(O(i*e)-O(j*f))))-O(k*l);a=H[a+76>>2];Ra[H[H[a>>2]+36>>2]](a);Oa=h+32|0}function wW(a,b,c,d,e,f,g,h){var i=O(0),j=O(0),k=O(0),l=0,m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=0,v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0);l=Oa-80|0;Oa=l;if(b&1024){i=L[e+24>>2];m=L[a+24>>2];p=L[e+20>>2];r=L[a+20>>2];q=L[a+16>>2];u=I[d+39|0];k=L[e+8>>2];j=L[e+12>>2];n=L[e>>2];o=L[e+4>>2];s=L[e+16>>2];yW(l,c+4|0,c+16|0);a:{if(!u){b=0;break a}i=O(O(m-O(h*O(.009999999776482582)))-i);m=O(i+i);i=O(O(q-O(f*O(.009999999776482582)))-s);q=O(i+i);i=O(O(r-O(g*O(.009999999776482582)))-p);p=O(i+i);r=O(O(k*m)+O(O(n*q)+O(p*o)));i=O(O(j*j)+O(-.5));s=O(O(k*r)+O(O(m*i)-O(j*O(O(n*p)-O(q*o)))));v=O(O(o*r)+O(O(p*i)-O(j*O(O(k*q)-O(m*n)))));q=O(O(n*r)+O(O(q*i)-O(j*O(O(o*m)-O(p*k)))));h=O(h+h);f=O(f+f);g=O(g+g);m=O(O(k*h)+O(O(n*f)+O(g*o)));p=O(O(k*m)+O(O(h*i)-O(j*O(O(n*g)-O(f*o)))));r=O(O(o*m)+O(O(g*i)-O(j*O(O(k*f)-O(h*n)))));n=O(O(n*m)+O(O(f*i)-O(j*O(O(o*h)-O(g*k)))));o=L[l+68>>2];i=L[l- -64>>2];m=L[l+60>>2];w=L[l+56>>2];x=L[l+52>>2];y=L[l+48>>2];z=L[l+44>>2];A=L[l+40>>2];B=L[l+36>>2];e=H[d+40>>2];g=O(3.4028234663852886e38);b=0;c=0;while(1){d=e+N(c,20)|0;f=L[d+8>>2];h=L[d>>2];k=L[d+4>>2];j=O(O(o*f)+O(O(m*h)+O(i*k)));t=j;C=O(j*j);j=O(O(z*f)+O(O(B*h)+O(A*k)));h=O(O(w*f)+O(O(y*h)+O(x*k)));f=O(O(1)/O(W(O(C+O(O(j*j)+O(h*h))))));k=O(t*f);t=O(L[d+12>>2]*f);j=O(j*f);f=O(h*f);h=O(t+O(O(s*k)+O(O(q*j)+O(v*f))));if(!(h>2]=b;G[a+12>>1]=J[a+12>>1]|1024}Oa=l+80|0}function oq(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;k=a;a:{b:{a=a+32|0;b=H[a+980>>2];e=H[b+284>>2];if(e){f=H[a+2368>>2];h=H[a+2348>>2];if(!h){break b}g=H[b+280>>2];while(1){d=c<<2;b=H[d+g>>2];d=H[d+H[a+2504>>2]>>2];i=d>>>5|0;if(!(i>>>0<(H[f+24>>2]&2147483647)>>>0&(H[H[f+20>>2]+(i<<2)>>2]>>>d&1))){d=H[33798]+H[b+28>>2]|0;b=H[H[b+4>>2]+44>>2];Ra[H[H[h>>2]+8>>2]](h,d,H[((I[b+9|0]<<2)+135180|0)+40>>2]+b|0)}c=c+1|0;if((e|0)!=(c|0)){continue}break}b=H[a+980>>2]}a=0;break a}h=H[f+24>>2]&2147483647;g=H[a+2504>>2];a=0;while(1){d=H[g+(c<<2)>>2];i=d>>>5|0;a=i>>>0>>0&(H[H[f+20>>2]+(i<<2)>>2]>>>d&1)?a:1;c=c+1|0;if((e|0)!=(c|0)){continue}break}}H[b+284>>2]=0;b=a;a=H[k+1012>>2];c=H[a+292>>2];f=H[a+296>>2];c:{if(!f){break c}e=H[k+2380>>2];if(e){a=0;if((f|0)!=1){h=f&-2;while(1){g=a<<2;d=H[g+c>>2];if(K[d+12>>2]<=3221225471){Ra[H[H[e>>2]+12>>2]](e,d)}g=H[c+(g|4)>>2];if(K[g+12>>2]<=3221225471){Ra[H[H[e>>2]+12>>2]](e,g)}a=a+2|0;j=j+2|0;if((h|0)!=(j|0)){continue}break}}if(!(f&1)){break c}a=H[c+(a<<2)>>2];if(K[a+12>>2]>3221225471){break c}Ra[H[H[e>>2]+12>>2]](e,a);break c}e=f&3;d:{if(f-1>>>0<3){a=0;break d}f=f&-4;a=0;while(1){d=b;b=a<<2;b=d|(K[H[c+(b|12)>>2]+12>>2]<3221225472|K[H[c+(b|8)>>2]+12>>2]<3221225472|K[H[c+(b|4)>>2]+12>>2]<3221225472|K[H[b+c>>2]+12>>2]<3221225472);a=a+4|0;l=l+4|0;if((f|0)!=(l|0)){continue}break}}if(!e){break c}while(1){b=K[H[c+(a<<2)>>2]+12>>2]<3221225472|b;a=a+1|0;j=j+1|0;if((e|0)!=(j|0)){continue}break}}H[H[k+1012>>2]+296>>2]=0;if(b&1){o5(H[33808],2,9281,2040,56664,0)}}function cQ(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;a:{d=H[a+20>>2];b=H[H[a+28>>2]+2168>>2];f=H[b>>2];c=H[f+92>>2];b:{if(!c){break b}g=H[f- -64>>2];a=c<<2;h=Gw(H[f+976>>2],(a+N(c>>>6|0,56)|0)+56|0,1);if(h){e=H[f+4612>>2];e=Ra[H[H[e>>2]+4>>2]](e)|0;e=Ra[H[H[e>>2]+4>>2]](e)|0;H[b+1904>>2]=h;k=e>>>0>1&c>>>0>64;c:{if(k){H[b+1884>>2]=d;H[b+1888>>2]=1;if(d){Ra[H[H[d>>2]+16>>2]](d);H[b+1880>>2]=H[H[b+1884>>2]+16>>2]}d=b+1864|0;i=b+1912|0;j=b+1908|0;a=a+h|0;while(1){e=H[f+16>>2];l=H[f+20>>2];H[a+24>>2]=0;H[a+16>>2]=0;H[a+8>>2]=e;H[a+12>>2]=l;H[a+48>>2]=f;H[a+44>>2]=i;H[a+40>>2]=h;H[a+36>>2]=j;H[a+28>>2]=g;H[a>>2]=116048;H[a+20>>2]=d;H[a+24>>2]=1;e=c>>>0<64?c:64;H[a+32>>2]=e;Ra[H[H[d>>2]+16>>2]](d);H[a+16>>2]=H[H[a+20>>2]+16>>2];Ra[H[H[a>>2]+20>>2]](a);a=a+56|0;g=(e<<2)+g|0;c=c-e|0;if(c){continue}break}break c}e=b+1912|0;i=b+1908|0;a=a+h|0;while(1){d=H[f+16>>2];j=H[f+20>>2];H[a+24>>2]=0;H[a+16>>2]=0;H[a+20>>2]=0;H[a+8>>2]=d;H[a+12>>2]=j;H[a+48>>2]=f;H[a+44>>2]=e;H[a+40>>2]=h;H[a+36>>2]=i;H[a+28>>2]=g;H[a>>2]=116048;d=c>>>0<64?c:64;H[a+32>>2]=d;EI(a);a=a+56|0;g=(d<<2)+g|0;c=c-d|0;if(c){continue}break}d=b+1864|0}if(k){a=H[b+1880>>2];Ra[H[H[a>>2]+72>>2]](a,d);break a}b=H[b+1892>>2];c=H[b+1904>>2];if(!c){break b}a=0;if(H[b+1912>>2]>0){while(1){f=H[(a<<2)+c>>2];_N(H[b>>2],f?f+4|0:0);a=a+1|0;if((a|0)>2]){continue}break}c=H[b+1904>>2]}H[b+1912>>2]=0;Lw(H[H[b>>2]+976>>2],c);H[b+1904>>2]=0;break a}a=H[33808];a=Ra[H[H[a>>2]+4>>2]](a)|0;Ra[H[H[a>>2]+8>>2]](a,16,58013,9058,1473)}}}function OU(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=O(0),i=O(0),j=0,k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=0,q=0,r=O(0),s=O(0),t=O(0),u=O(0),v=0,w=0;g=Oa-4288|0;Oa=g;h=L[d+24>>2];v=H[d+16>>2];w=H[d+20>>2];i=L[c+4>>2];H[g+4232>>2]=-1;L[g+52>>2]=i;d=0;H[g+48>>2]=0;p=g+4232|0;q=g+48|0;hU(p,q);H[g+4176>>2]=-1;j=g+4176|0;hU(j,e);H[g+4168>>2]=0;H[g+4172>>2]=0;H[g+4144>>2]=0;L[g+40>>2]=h;H[g+32>>2]=v;H[g+36>>2]=w;H[g+24>>2]=0;H[g+28>>2]=1065353216;H[g+16>>2]=0;H[g+20>>2]=0;H[g+8>>2]=1065353216;H[g>>2]=0;H[g+4>>2]=0;c=Oa-3440|0;Oa=c;e=H[j+4>>2];H[c+3432>>2]=j;H[c+3428>>2]=e;h=L[j+8>>2];i=L[j+12>>2];L[c+3424>>2]=O(1)/L[j+16>>2];L[c+3416>>2]=O(1)/i;L[c+3420>>2]=O(1)/h;i=L[f+8>>2];h=O(L[g+40>>2]-L[f+24>>2]);k=O(h+h);l=L[f>>2];h=O(L[g+32>>2]-L[f+16>>2]);m=O(h+h);h=O(L[g+36>>2]-L[f+20>>2]);n=O(h+h);o=L[f+4>>2];r=O(O(i*k)+O(O(l*m)+O(n*o)));h=L[f+12>>2];s=O(O(h*h)+O(-.5));t=O(O(l*r)+O(O(m*s)-O(h*O(O(o*k)-O(n*i)))));L[c+3400>>2]=t;u=O(O(o*r)+O(O(n*s)-O(h*O(O(i*m)-O(k*l)))));L[c+3404>>2]=u;i=O(O(i*r)+O(O(k*s)-O(h*O(O(l*n)-O(m*o)))));L[c+3408>>2]=i;h=O(L[p+4>>2]+L[g>>2]);L[c+3396>>2]=i+h;L[c+3392>>2]=u+h;L[c+3388>>2]=t+h;L[c+3384>>2]=i-h;L[c+3380>>2]=u-h;L[c+3376>>2]=t-h;H[c+3364>>2]=0;H[c+2592>>2]=0;H[c+28>>2]=0;L[c+24>>2]=h*h;H[c+16>>2]=q;H[c+12>>2]=f;H[c+8>>2]=g+16;H[c+20>>2]=c+3400;H[c+4>>2]=p;H[c>>2]=127516;e=c+3416|0;H[c+3368>>2]=e;XZ(e,f,c+3376|0,0,c);BY(c|4);Oa=c+3440|0;a:{if(!H[q+4096>>2]){break a}if(!NU(a,b,H[g+4144>>2],g+48|0)){break a}d=H[g+4144>>2]!=0}Oa=g+4288|0;return d|0}function BH(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;d=Oa-16|0;Oa=d;H[d+8>>2]=0;H[d>>2]=0;H[d+4>>2]=0;a:{if(!H[a+16>>2]){break a}e=H[a+12>>2];f=H[e>>2];if((f|0)==-1){c=H[a+20>>2];while(1){h=h+1|0;if((c|0)==(h|0)){break a}f=H[e+(h<<2)>>2];if((f|0)==-1){continue}break}}b:while(1){e=N(f,12);i=H[(e+H[a+4>>2]|0)+8>>2];if(Ra[H[H[i>>2]+8>>2]](i,b,0)|0){j=e+H[a+4>>2]|0;e=H[d+4>>2];c:{if(e>>>0>=(H[d+8>>2]&2147483647)>>>0){e=0;c=H[d+8>>2]&2147483647;k=c?c<<1:1;d:{if(!k){break d}c=k<<3;if(!c){break d}e=H[33808];g=e+12|0;e=(o=g,p=c,q=Ra[H[H[e>>2]+20>>2]](e)|0?27382:55639,r=13582,s=553,n=H[H[g>>2]+8>>2],Ra[n](o|0,p|0,q|0,r|0,s|0)|0)}c=H[d+4>>2];if((c|0)>0){l=(c<<3)+e|0;g=H[d>>2];c=e;while(1){m=H[g+4>>2];H[c>>2]=H[g>>2];H[c+4>>2]=m;g=g+8|0;c=c+8|0;if(l>>>0>c>>>0){continue}break}c=H[d+4>>2]}g=H[j+4>>2];c=(c<<3)+e|0;H[c>>2]=H[j>>2];H[c+4>>2]=g;e:{if(H[d+8>>2]<0){break e}c=H[d>>2];if(!c){break e}g=H[33808]+12|0;Ra[H[H[g>>2]+12>>2]](g,c)}H[d+8>>2]=k;H[d>>2]=e;break c}c=H[j+4>>2];e=H[d>>2]+(e<<3)|0;H[e>>2]=H[j>>2];H[e+4>>2]=c}H[d+4>>2]=H[d+4>>2]+1;Ra[H[H[i>>2]+4>>2]](i)}f=H[H[a+8>>2]+(f<<2)>>2];if((f|0)!=-1){continue}e=H[a+12>>2];c=H[a+20>>2];while(1){h=h+1|0;if((c|0)!=(h|0)){f=H[e+(h<<2)>>2];if((f|0)==-1){continue}continue b}break}break}if(!H[d+4>>2]){break a}f=0;while(1){GH(a,H[d>>2]+(f<<3)|0);f=f+1|0;if(f>>>0>2]){continue}break}}a=H[d+8>>2];f:{if((a|0)<0|!(a&2147483647)){break f}a=H[d>>2];if(!a){break f}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,a)}Oa=d+16|0}function z0(a,b,c,d,e){var f=0,g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=0,p=O(0),q=O(0),r=O(0),s=0,t=0,u=0,v=0,w=0,x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),F=O(0),G=O(0),K=O(0),M=O(0),P=0;o=Oa-16|0;Oa=o;f=H[a+16>>2];if(f){i=L[e+8>>2];g=L[e>>2];h=L[e+4>>2];k=O(O(1)/O(W(O(O(i*i)+O(O(g*g)+O(h*h))))));G=O(i*k);K=O(h*k);M=O(g*k);while(1){v=H[a+24>>2]+N(u,20)|0;s=I[v+18|0];if(s){f=H[b+36>>2];p=L[f+40>>2];w=H[a+28>>2];P=H[a+32>>2]+J[v+16>>1]|0;e=w+N(I[P|0],12)|0;i=L[e+8>>2];q=L[f+8>>2];g=L[e>>2];h=L[e+4>>2];r=L[f+24>>2];l=O(O(p*i)+O(O(q*g)+O(h*r)));x=L[d+8>>2];y=L[f+32>>2];z=L[f>>2];A=L[f+16>>2];m=O(O(y*i)+O(O(z*g)+O(h*A)));B=L[d>>2];C=L[f+36>>2];D=L[f+4>>2];E=L[f+20>>2];j=O(O(C*i)+O(O(D*g)+O(h*E)));F=L[d+4>>2];h=O(O(G*O(l-x))+O(O(M*O(m-B))+O(K*O(j-F))));f=s-1|0;e=0;while(1){t=h>O(0);f=N(I[f+P|0],12)+w|0;n=L[f+8>>2];g=L[f>>2];h=L[f+4>>2];k=O(O(p*n)+O(O(q*g)+O(h*r)));i=O(O(y*n)+O(O(z*g)+O(h*A)));g=O(O(C*n)+O(O(D*g)+O(h*E)));h=O(O(G*O(k-x))+O(O(M*O(i-B))+O(K*O(g-F))));if(t|h>O(0)){p=O(0);q=O(0);r=O(0);n=O(l-k);l=O(m-i);m=O(j-g);j=O(O(n*n)+O(O(l*l)+O(m*m)));if(j>O(0)){j=O(O(1)/O(W(j)));r=O(n*j);p=O(l*j);q=O(m*j)}L[o+8>>2]=r;L[o+4>>2]=q;L[o>>2]=p;gY(c,o);s=I[v+18|0]}t=e+1|0;if(t>>>0>=s>>>0){f=H[a+16>>2]}else{f=H[b+36>>2];p=L[f+40>>2];r=L[f+24>>2];C=L[f+36>>2];E=L[f+20>>2];x=L[d+8>>2];F=L[d+4>>2];B=L[d>>2];w=H[a+28>>2];q=L[f+8>>2];D=L[f+4>>2];y=L[f+32>>2];A=L[f+16>>2];z=L[f>>2];f=e;e=t;l=k;j=g;m=i;continue}break}}u=u+1|0;if(u>>>0>>0){continue}break}}Oa=o+16|0}function Fd(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;f=H[a>>2];e=(H[a+4>>2]-f|0)/48|0;if(e>>>0>>0){f=a;a:{j=b-e|0;h=H[a+8>>2];d=H[a+4>>2];if(j>>>0<=(h-d|0)/48>>>0){if(j){a=N(j,48)+d|0;while(1){L[d>>2]=L[c>>2];L[d+4>>2]=L[c+4>>2];L[d+8>>2]=L[c+8>>2];L[d+12>>2]=L[c+12>>2];L[d+16>>2]=L[c+16>>2];L[d+20>>2]=L[c+20>>2];L[d+24>>2]=L[c+24>>2];H[d+28>>2]=H[c+28>>2];L[d+32>>2]=L[c+32>>2];L[d+36>>2]=L[c+36>>2];L[d+40>>2]=L[c+40>>2];H[d+44>>2]=H[c+44>>2];d=d+48|0;if((a|0)!=(d|0)){continue}break}}else{a=d}H[f+4>>2]=a;break a}b:{i=H[f>>2];e=(d-i|0)/48|0;g=e+j|0;if(g>>>0<89478486){b=(h-i|0)/48|0;a=b<<1;g=b>>>0<44739242?a>>>0>>0?g:a:89478485;if(g){if(g>>>0>=89478486){break b}h=o6(N(g,48))}else{h=0}a=h+N(e,48)|0;e=a+N(j,48)|0;b=a;while(1){L[b>>2]=L[c>>2];L[b+4>>2]=L[c+4>>2];L[b+8>>2]=L[c+8>>2];L[b+12>>2]=L[c+12>>2];L[b+16>>2]=L[c+16>>2];L[b+20>>2]=L[c+20>>2];L[b+24>>2]=L[c+24>>2];H[b+28>>2]=H[c+28>>2];L[b+32>>2]=L[c+32>>2];L[b+36>>2]=L[c+36>>2];L[b+40>>2]=L[c+40>>2];H[b+44>>2]=H[c+44>>2];b=b+48|0;if((e|0)!=(b|0)){continue}break}if((d|0)!=(i|0)){while(1){a=a-48|0;d=d-48|0;L[a>>2]=L[d>>2];L[a+4>>2]=L[d+4>>2];L[a+8>>2]=L[d+8>>2];L[a+12>>2]=L[d+12>>2];L[a+16>>2]=L[d+16>>2];L[a+20>>2]=L[d+20>>2];L[a+24>>2]=L[d+24>>2];H[a+28>>2]=H[d+28>>2];L[a+32>>2]=L[d+32>>2];L[a+36>>2]=L[d+36>>2];L[a+40>>2]=L[d+40>>2];H[a+44>>2]=H[d+44>>2];if((d|0)!=(i|0)){continue}break}}H[f+8>>2]=h+N(g,48);H[f+4>>2]=e;H[f>>2]=a;if(i){N6(i)}break a}q6();X()}ka();X()}return}if(b>>>0>>0){H[a+4>>2]=f+N(b,48)}}function nN(a,b,c){var d=O(0),e=O(0),f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=0,v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0);A=L[c+20>>2];b=H[b+92>>2];v=L[b+24>>2];y=L[b+20>>2];l=L[c+24>>2];u=H[c+36>>2];w=L[u+48>>2];x=L[u+56>>2];B=L[u+52>>2];C=L[c+16>>2];z=L[b+16>>2];o=L[c+8>>2];e=L[u+40>>2];p=L[c+4>>2];f=L[u+36>>2];m=L[c+12>>2];d=L[u+44>>2];g=L[u+32>>2];q=L[c>>2];n=O(O(o*e)+O(O(p*f)+O(O(m*d)+O(g*q))));h=L[b+12>>2];i=L[b>>2];r=O(O(f*o)+O(O(O(d*q)-O(m*g))-O(p*e)));s=O(O(e*q)+O(O(O(d*p)-O(m*f))-O(o*g)));j=L[b+4>>2];t=O(O(g*p)+O(O(O(d*o)-O(m*e))-O(q*f)));k=L[b+8>>2];L[a+12>>2]=O(O(O(n*h)-O(i*r))-O(s*j))-O(t*k);L[a+8>>2]=O(O(r*j)+O(O(n*k)+O(t*h)))-O(i*s);L[a+4>>2]=O(O(t*i)+O(O(n*j)+O(s*h)))-O(k*r);L[a>>2]=O(O(s*k)+O(O(n*i)+O(r*h)))-O(j*t);D=l;h=O(x*O(-2));i=O(w*O(-2));j=O(B*O(-2));w=O(O(e*h)+O(O(g*i)+O(f*j)));x=O(O(d*d)+O(-.5));k=O(O(e*w)+O(O(h*x)-O(d*O(O(g*j)-O(i*f)))));k=O(k+k);l=O(O(g*w)+O(O(i*x)-O(d*O(O(f*h)-O(j*e)))));l=O(l+l);d=O(O(f*w)+O(O(j*x)-O(d*O(O(e*i)-O(h*g)))));d=O(d+d);h=O(O(o*k)+O(O(q*l)+O(p*d)));i=O(O(m*m)+O(-.5));e=O(v+v);f=O(z+z);g=O(y+y);j=O(O(t*e)+O(O(r*f)+O(s*g)));v=O(O(n*n)+O(-.5));L[a+24>>2]=O(D+O(O(o*h)+O(O(k*i)+O(m*O(O(q*d)-O(l*p))))))+O(O(t*j)+O(O(e*v)+O(n*O(O(r*g)-O(f*s)))));L[a+20>>2]=O(A+O(O(p*h)+O(O(d*i)+O(m*O(O(o*l)-O(k*q))))))+O(O(s*j)+O(O(g*v)+O(n*O(O(t*f)-O(e*r)))));L[a+16>>2]=O(C+O(O(q*h)+O(O(l*i)+O(m*O(O(p*k)-O(d*o))))))+O(O(r*j)+O(O(f*v)+O(n*O(O(s*e)-O(g*t)))))}function oZ(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=O(0),f=O(0),g=O(0),h=O(0),i=0,j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=0,r=0,s=O(0),t=O(0),u=0,v=0;j=L[c+8>>2];m=O(j*O(-.7071067690849304));e=L[c>>2];k=O(e*O(0));h=L[c+4>>2];s=O(h*O(-.7071067690849304));t=O(k+s);f=O(m+t);a=H[a+24>>2];p=O(O(L[a+108>>2]*j)+O(O(L[a+100>>2]*e)+O(h*L[a+104>>2])));g=O(O(L[a+8>>2]*j)+O(O(L[a>>2]*e)+O(h*L[a+4>>2])));l=O(O(L[a+28>>2]*j)+O(O(L[a+20>>2]*e)+O(h*L[a+24>>2])));b=g>2]*j)+O(O(L[a+40>>2]*e)+O(h*L[a+44>>2])));g=b?l:g;q=n>g;l=O(O(L[a+68>>2]*j)+O(O(L[a+60>>2]*e)+O(h*L[a- -64>>2])));g=q?n:g;r=l>g;n=O(O(L[a+88>>2]*j)+O(O(L[a+80>>2]*e)+O(h*L[a+84>>2])));g=r?l:g;u=n>g;g=u?n:g;v=gf;i=d?1:i;h=O(h*O(.7071067690849304));k=O(k+h);g=O(m+k);f=d?o:f;d=g>f;i=d?2:i;o=m;m=O(e*O(-.7071067690849304));l=O(m+l);o=O(o+l);f=d?g:f;d=o>f;i=d?3:i;e=O(j*O(.7071067690849304));k=O(e+k);f=d?o:f;d=k>f;i=d?4:i;g=O(e+n);f=d?k:f;d=g>f;i=d?5:i;k=O(e+t);f=d?g:f;d=k>f;i=d?6:i;e=O(e+l);f=d?k:f;d=e>f;i=d?7:i;j=O(j*O(0));k=O(j+O(p+s));e=d?e:f;d=k>e;i=d?8:i;f=O(j+O(p+h));e=d?k:e;d=f>e;i=d?9:i;h=O(j+O(m+h));e=d?f:e;d=h>e;d=O(j+O(m+s))>(d?h:e)?11:d?10:i;if((d|0)==-1){return(v?5:u?4:r?3:q?2:b)|0}b=H[((d<<3)+88480|0)+4>>2]+88576|0;q=I[b|0];r=I[b+1|0];b=a+N(r,20)|0;a=a+N(q,20)|0;j=L[c+8>>2];e=L[c>>2];h=L[c+4>>2];return(O(O(L[a+8>>2]*j)+O(O(L[a>>2]*e)+O(L[a+4>>2]*h)))>O(O(L[b+8>>2]*j)+O(O(L[b>>2]*e)+O(h*L[b+4>>2])))?q:r)|0}function oA(a,b,c,d,e,f,g,h,i,j){var k=0,l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=0;k=Oa-2112|0;Oa=k;q=J[a+12>>1];a:{if((q|0)==65535){o=L[b>>2];l=L[b+4>>2];m=L[H[a+8>>2]+32>>2];n=O(O(m*L[b+8>>2])*d);L[c+8>>2]=n;l=O(O(m*l)*d);L[c+4>>2]=l;d=O(O(m*o)*d);L[c>>2]=d;o=L[b+20>>2];p=L[b+16>>2];m=O(L[b+24>>2]*e);L[c+24>>2]=m;o=O(o*e);L[c+20>>2]=o;e=O(p*e);L[c+16>>2]=e;break a}a=H[a>>2];n=L[b+20>>2];l=L[b>>2];m=L[b+4>>2];o=L[b+8>>2];p=L[b+16>>2];L[k+56>>2]=L[b+24>>2]*e;L[k+52>>2]=n*e;H[k+60>>2]=0;H[k+44>>2]=0;L[k+48>>2]=p*e;L[k+40>>2]=o*d;L[k+36>>2]=m*d;L[k+32>>2]=l*d;Ra[H[H[a>>2]+104>>2]](a,q,k- -64|0,k+32|0,c);m=L[c+24>>2];o=L[c+20>>2];e=L[c+16>>2];n=L[c+8>>2];l=L[c+4>>2];d=L[c>>2]}o=O(O(O(L[b+8>>2]*n)+O(O(L[b>>2]*d)+O(L[b+4>>2]*l)))+O(O(L[b+24>>2]*m)+O(O(L[b+16>>2]*e)+O(L[b+20>>2]*o))));b=J[f+12>>1];b:{if((b|0)==65535){l=L[g>>2];n=L[g+4>>2];d=L[H[f+8>>2]+32>>2];e=O(O(d*L[g+8>>2])*i);L[h+8>>2]=e;n=O(O(d*n)*i);L[h+4>>2]=n;i=O(O(d*l)*i);L[h>>2]=i;d=L[g+20>>2];p=L[g+16>>2];l=O(L[g+24>>2]*j);L[h+24>>2]=l;m=O(d*j);L[h+20>>2]=m;j=O(p*j);L[h+16>>2]=j;break b}a=H[f>>2];d=L[g+20>>2];e=L[g>>2];n=L[g+4>>2];l=L[g+8>>2];m=L[g+16>>2];L[k+56>>2]=L[g+24>>2]*j;L[k+52>>2]=d*j;H[k+60>>2]=0;H[k+44>>2]=0;L[k+48>>2]=m*j;L[k+40>>2]=l*i;L[k+36>>2]=n*i;L[k+32>>2]=e*i;Ra[H[H[a>>2]+104>>2]](a,b,k- -64|0,k+32|0,h);l=L[h+24>>2];m=L[h+20>>2];j=L[h+16>>2];e=L[h+8>>2];n=L[h+4>>2];i=L[h>>2]}Oa=k+2112|0;return O(o+O(O(O(L[g+8>>2]*e)+O(O(L[g>>2]*i)+O(L[g+4>>2]*n)))+O(O(L[g+24>>2]*l)+O(O(L[g+16>>2]*j)+O(L[g+20>>2]*m)))))}function YL(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,o=0,p=0,q=0,r=0,s=0,t=O(0),u=0,v=O(0);g=Oa-16|0;Oa=g;H[g+12>>2]=0;H[g+8>>2]=0;j=H[a+48>>2];p=H[a+32>>2];t=L[a+36>>2];k=H[a+20>>2];l=H[a+28>>2];h=H[l+8>>2]&2147483647;if(h){u=H[H[l>>2]+11936>>2];m=32;while(1){i=c+32|0;r=h>>>0>>0?h:i;if(r>>>0>c>>>0){q=h>>>0>m>>>0?m:h;b=c;while(1){s=(b<<2)+u|0;d=H[s>>2];f=H[d+32>>2];e=H[H[l>>2]+12144>>2]+N(b,52)|0;H[e>>2]=H[d+28>>2];H[e+4>>2]=f;H[e+48>>2]=H[d+76>>2];f=H[d+72>>2];H[e+40>>2]=H[d+68>>2];H[e+44>>2]=f;f=H[d+64>>2];H[e+32>>2]=H[d+60>>2];H[e+36>>2]=f;f=H[d+56>>2];H[e+24>>2]=H[d+52>>2];H[e+28>>2]=f;f=H[d+48>>2];H[e+16>>2]=H[d+44>>2];H[e+20>>2]=f;f=H[d+40>>2];H[e+8>>2]=H[d+36>>2];H[e+12>>2]=f;d=J[H[H[s>>2]+60>>2]+12>>1];e=d&255;n=e>>>0>>0?n:e;d=d>>>8|0;o=d>>>0>>0?o:d;b=b+1|0;if((q|0)!=(b|0)){continue}break}}d=H[l>>2];b=yq(H[j+620>>2],56);d=H[d+12144>>2];e=H[j+636>>2];q=H[j+632>>2];H[b+24>>2]=0;H[b+16>>2]=0;H[b+8>>2]=q;H[b+12>>2]=e;H[b+36>>2]=r-c;H[b+28>>2]=j;H[b>>2]=117572;H[b+32>>2]=d+N(c,52);L[b+40>>2]=L[p>>2];L[b+44>>2]=L[p+4>>2];v=L[p+8>>2];L[b+52>>2]=t;L[b+48>>2]=v;H[b+24>>2]=1;H[b+20>>2]=k;if(k){Ra[H[H[k>>2]+16>>2]](k);H[b+16>>2]=H[H[b+20>>2]+16>>2];c=H[b>>2]}else{c=117572}Ra[H[c+20>>2]](b);m=m+32|0;c=i;if(h>>>0>c>>>0){continue}break}}c=H[g+8>>2];H[g+8>>2]=c>>>0>o>>>0?c:o;c=H[g+12>>2];H[g+12>>2]=c>>>0>n>>>0?c:n;b=H[a+40>>2];c=H[b>>2];i=b;b=H[g+12>>2];H[i>>2]=(b|0)>(c|0)?b:c;c=H[a+44>>2];a=H[c>>2];b=c;c=H[g+8>>2];H[b>>2]=(a|0)<(c|0)?c:a;Oa=g+16|0}function PP(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;a:{g=H[a+20>>2];e=H[a+28>>2];b:{if(!H[e+1132>>2]){break b}c=H[e+1e3>>2];a=H[c+284>>2];if(!a){break b}f=H[c+280>>2];b=Gw(H[e+976>>2],a<<2,1);H[e+4628>>2]=b;if(b){while(1){a=a-1|0;b=H[H[(H[c+184>>2]+N(H[f+(d<<2)>>2]>>>7|0,24)|0)+20>>2]+100>>2];c:{if(!b){break c}b=BG(b);h=I[b+44|0];if(h&2|!H[b+20>>2]){break c}H[H[e+4628>>2]+(i<<2)>>2]=b;F[b+44|0]=h|2;i=i+1|0}d=d+1|0;if(a){continue}break}if(!i){break b}h=e+1168|0;j=H[H[e+976>>2]+1156>>2];d=0;a=0;b=0;while(1){f=I[H[H[e+4628>>2]+(d<<2)>>2]+44|0];c=128;d:{if(f&64){break d}c=40;if(f&32){break d}c=10;if(f&16){break d}c=f>>>2&2}b=c+b|0;e:{if(b>>>0<=255){d=d+1|0;break e}b=yq(j,48);f=H[e+4628>>2];c=H[e+976>>2];k=H[c+1836>>2];l=H[c+1832>>2];H[b+24>>2]=0;H[b+16>>2]=0;H[b+8>>2]=l;H[b+12>>2]=k;H[b+40>>2]=c;H[b+36>>2]=h;d=d+1|0;H[b+32>>2]=d-a;H[b+28>>2]=f+(a<<2);H[b>>2]=119916;H[b+20>>2]=g;H[b+24>>2]=1;if(g){Ra[H[H[g>>2]+16>>2]](g);H[b+16>>2]=H[H[b+20>>2]+16>>2];a=H[b>>2]}else{a=119916}Ra[H[a+20>>2]](b);b=0;a=d}if((d|0)!=(i|0)){continue}break}if(!b){break b}b=yq(j,48);c=H[e+4628>>2];d=H[e+976>>2];e=H[d+1836>>2];f=H[d+1832>>2];H[b+24>>2]=0;H[b+16>>2]=0;H[b+8>>2]=f;H[b+12>>2]=e;H[b+40>>2]=d;H[b+36>>2]=h;H[b+32>>2]=i-a;H[b+28>>2]=c+(a<<2);H[b>>2]=119916;H[b+20>>2]=g;H[b+24>>2]=1;if(g){Ra[H[H[g>>2]+16>>2]](g);H[b+16>>2]=H[H[b+20>>2]+16>>2];a=H[b>>2]}else{a=119916}Ra[H[a+20>>2]](b);break a}a=H[33808];a=Ra[H[H[a>>2]+4>>2]](a)|0;Ra[H[H[a>>2]+8>>2]](a,16,58125,9345,3430)}}}function dY(a,b,c,d,e,f,g,h){var i=0,j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=0,s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),F=O(0),G=O(0),I=O(0),J=O(0),K=O(0),M=O(0),P=O(0),Q=0;J=O(d+h);u=L[e>>2];v=O(L[e+24>>2]-u);w=O(L[e+12>>2]-u);x=L[e+8>>2];y=O(L[e+32>>2]-x);z=L[e+4>>2];A=O(L[e+28>>2]-z);B=O(L[e+20>>2]-x);C=O(L[e+16>>2]-z);i=H[b+4096>>2];e=1;while(1){h=L[f+4>>2];l=L[f>>2];j=O(O(h*v)-O(l*A));m=L[f+8>>2];k=O(O(m*A)-O(h*y));p=O(O(l*y)-O(m*v));n=O(O(B*j)+O(O(w*k)+O(C*p)));a:{if(n>2];q=O(D-x);o=O(q*j);E=L[r>>2];j=O(E-u);t=O(j*k);F=L[r+4>>2];k=O(F-z);p=O(o+O(t+O(p*k)));s=O(n*O(.0010000000474974513));o=O(-s);if(pj|s>>0>63){break a}q=L[a+32>>2];j=L[a+28>>2];k=L[a+24>>2];p=L[a+20>>2];s=L[a+16>>2];o=L[a+12>>2];t=L[a+8>>2];G=L[a+4>>2];I=L[a>>2];K=L[a+36>>2];M=L[a+40>>2];P=L[a+44>>2];r=i+1|0;H[b+4096>>2]=r;i=(i<<6)+b|0;H[i+52>>2]=g;L[i+12>>2]=n-d;L[i+8>>2]=O(O(l*t)+O(h*p))+O(m*q);L[i+4>>2]=O(O(l*G)+O(h*s))+O(m*j);L[i>>2]=O(O(l*I)+O(h*o))+O(m*k);l=O(E-O(n*l));h=O(F-O(n*h));m=O(D-O(n*m));L[i+24>>2]=P+O(O(O(t*l)+O(p*h))+O(q*m));L[i+20>>2]=M+O(O(O(l*G)+O(h*s))+O(m*j));L[i+16>>2]=K+O(O(O(l*I)+O(h*o))+O(m*k));i=r}r=1;Q=e&1;e=0;if(Q){continue}break}}function Rz(a){var b=O(0),c=0,d=0,e=O(0),f=0,g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=0,w=0,x=0,y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),F=O(0),G=0,K=O(0),M=O(0),P=O(0),Q=O(0),R=O(0),S=O(0),T=0,U=O(0),V=O(0),W=0;c=H[a+4>>2];g=L[c+24>>2];h=L[c+20>>2];d=H[a>>2];i=L[d+24>>2];j=L[d+20>>2];k=L[c+16>>2];l=L[d+16>>2];m=L[c+8>>2];n=L[c+4>>2];o=L[c>>2];p=L[d+8>>2];q=L[d+4>>2];r=L[d>>2];a:{a=H[a+24>>2];f=J[a+2>>1];if(!f){break a}G=a+f|0;while(1){x=a+48|0;v=I[a+1|0];w=x+N(v,48)|0;if(v){s=L[a+24>>2];b=L[a+12>>2];K=O(s*b);t=L[a+20>>2];M=O(t*b);u=L[a+16>>2];P=O(u*b);b=L[a+8>>2];Q=O(s*b);R=O(t*b);S=O(u*b);T=((f&65535)+a|0)+32|0;U=L[a+28>>2];V=L[a+4>>2];f=0;while(1){a=(f<<2)+T|0;b=L[a>>2];e=O(-b);W=a;a=N(f,48)+x|0;y=L[a+44>>2];z=L[a>>2];A=L[a+16>>2];B=L[a+4>>2];C=L[a+20>>2];D=L[a+8>>2];E=L[a+24>>2];F=O(L[a+36>>2]-O(L[a+32>>2]*O(O(O(O(O(u*r)+O(l*z))-O(O(u*o)+O(k*A)))+O(O(O(t*q)+O(j*B))-O(O(t*n)+O(h*C))))+O(O(O(s*p)+O(i*D))-O(O(s*m)+O(g*E))))));e=O(b+(ey?y:e;L[W>>2]=e;b=O(e-b);m=O(m-O(K*b));n=O(n-O(M*b));o=O(o-O(P*b));p=O(p+O(Q*b));q=O(q+O(R*b));r=O(r+O(S*b));e=O(U*b);g=O(g-O(E*e));h=O(h-O(C*e));k=O(k-O(A*e));b=O(V*b);i=O(i+O(D*b));j=O(j+O(B*b));l=O(l+O(z*b));f=f+1|0;if((v|0)!=(f|0)){continue}break}}if(w>>>0>=G>>>0){break a}f=J[w+2>>1];a=w;continue}}L[d+8>>2]=p;L[d+4>>2]=q;L[d>>2]=r;L[c+8>>2]=m;L[c+4>>2]=n;L[c>>2]=o;L[d+24>>2]=i;L[d+20>>2]=j;L[d+16>>2]=l;L[c+24>>2]=g;L[c+20>>2]=h;L[c+16>>2]=k}function cZ(a,b,c,d,e,f,g){var h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),F=O(0),G=O(0),H=O(0),I=O(0),J=O(0),K=O(0),M=O(0),N=O(0),P=O(0);G=L[e+40>>2];H=L[d+40>>2];I=L[e+44>>2];J=L[d+44>>2];h=L[d+16>>2];i=L[d+20>>2];t=L[e+16>>2];u=L[e+20>>2];n=L[d+28>>2];j=L[e+28>>2];o=L[d+32>>2];k=L[e+32>>2];z=L[b+16>>2];A=L[b+20>>2];K=L[e+36>>2];M=L[d+36>>2];p=L[d+8>>2];m=L[d+4>>2];s=L[d>>2];q=L[d+12>>2];v=L[e+8>>2];w=L[e+4>>2];x=L[e>>2];y=L[e+12>>2];r=L[d+24>>2];l=L[e+24>>2];B=L[b+4>>2];C=L[b+8>>2];L[a+48>>2]=O(O(L[b+12>>2]-L[b>>2])*O(.5))+c;L[a+56>>2]=O(O(A-C)*O(.5))+c;L[a+52>>2]=O(O(z-B)*O(.5))+c;z=L[b+16>>2];A=L[b+20>>2];B=L[b+12>>2];C=L[b>>2];N=L[b+4>>2];P=L[b+8>>2];D=O(O(k*o)+O(O(l*r)+O(j*n)));L[a+32>>2]=D;E=O(O(u*o)+O(O(y*r)+O(t*n)));L[a+28>>2]=E;n=O(O(v*o)+O(O(x*r)+O(w*n)));L[a+24>>2]=n;o=O(O(k*i)+O(O(l*q)+O(j*h)));L[a+20>>2]=o;r=O(O(u*i)+O(O(y*q)+O(t*h)));L[a+16>>2]=r;q=O(O(v*i)+O(O(x*q)+O(w*h)));L[a+12>>2]=q;h=O(O(k*p)+O(O(l*s)+O(m*j)));L[a+8>>2]=h;F=O(O(u*p)+O(O(y*s)+O(m*t)));L[a+4>>2]=F;p=O(O(v*p)+O(O(x*s)+O(w*m)));L[a>>2]=p;c=O(J-I);m=O(k*c);k=O(M-K);i=j;j=O(H-G);m=O(m+O(O(l*k)+O(i*j)));l=O(O(C+B)*O(.5));s=O(h*l);h=O(O(N+z)*O(.5));i=O(O(P+A)*O(.5));L[a+44>>2]=m+O(O(s+O(o*h))+O(D*i));L[a+40>>2]=O(O(u*c)+O(O(y*k)+O(t*j)))+O(O(O(F*l)+O(r*h))+O(E*i));L[a+36>>2]=O(O(v*c)+O(O(x*k)+O(w*j)))+O(O(O(p*l)+O(q*h))+O(n*i));if(!g){aY(f,a+36|0,a+48|0,a)}}function LG(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0;i=UG(a,c,d,4,2);H[a+24>>2]=b;WO(i);WD(H[a>>2],i);WD(H[a+4>>2],i);k=H[a+24>>2];f=H[k- -64>>2];d=H[k+60>>2];if(d){G[d+148>>1]=J[d+148>>1]|256;b=H[d+100>>2];H[b+148>>2]=H[b+148>>2]+1}if(f){G[f+148>>1]=J[f+148>>1]|256;b=H[f+100>>2];H[b+148>>2]=H[b+148>>2]+1}c=a;e=H[H[H[a>>2]+40>>2]+1e3>>2];b=d?H[d+144>>2]:-128;a=f?H[f+144>>2]:-128;j=Oa-16|0;Oa=j;d=H[e+20>>2];a:{if(d){f=d-1|0;d=H[H[e+16>>2]+(f<<2)>>2];H[e+20>>2]=f;break a}d=H[e+28>>2];H[e+28>>2]=d+1}h=d<<1;if((h|0)==H[e+116>>2]){aF(e+104|0,(d<<2)+4|0);f=h+2|0;bF(e+128|0,f);cF(e+44|0,f)}g=H[e+124>>2];f=(h>>>0)/(g>>>0)|0;H[H[H[e+104>>2]+(f<<2)>>2]+(h-N(f,g)<<2)>>2]=b;g=h|1;f=H[e+124>>2];b=(g>>>0)/(f>>>0)|0;H[H[H[e+104>>2]+(b<<2)>>2]+(g-N(b,f)<<2)>>2]=a;b=H[e+148>>2];a=(d>>>0)/(b>>>0)|0;H[H[H[e+128>>2]+(a<<2)>>2]+(d-N(a,b)<<2)>>2]=k;b=H[e- -64>>2];a=(d>>>0)/(b>>>0)|0;H[H[H[e+44>>2]+(a<<2)>>2]+(d-N(a,b)<<2)>>2]=i;JE(e+168|0,d);JE(e+640|0,d);a=H[e+156>>2];b:{if(a<<5!=(d|0)){break b}g=a<<1&134217726|1;if(g>>>0<=(a&2147483647)>>>0){break b}a=H[33808];f=Ra[H[H[a+12>>2]+8>>2]](a+12|0,g<<2,20591,14969,438)|0;a=H[e+152>>2];c:{if(!a){break c}R6(f,a,H[e+156>>2]<<2);if(H[e+156>>2]<0){break c}b=H[e+152>>2];if(!b){break c}a=H[33808];Ra[H[H[a+12>>2]+12>>2]](a+12|0,b)}a=H[e+156>>2];S6(f+(a<<2)|0,0,g-a<<2);H[e+156>>2]=g;H[e+152>>2]=f}if((H[e+88>>2]&2147483647)==(d|0)){H[j+12>>2]=0;XE(e+80|0,h+2|0,j+12|0)}a=H[e+152>>2]+(d>>>3&536870908)|0;H[a>>2]=H[a>>2]|1<>2]=d}function ur(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;e=Oa-16|0;Oa=e;c=H[33808];d=Ra[H[H[c>>2]+20>>2]](c)|0?21354:55639;c=Ra[H[H[c+12>>2]+8>>2]](c+12|0,116,d,9281,3060)|0;H[c>>2]=109360;d=H[33808];f=Ra[H[H[d>>2]+20>>2]](d)|0?33974:55639;d=Ra[H[H[d+12>>2]+8>>2]](d+12|0,80,f,16454,95)|0;H[c+4>>2]=d;F[d+76|0]=0;H[d+72>>2]=0;H[c+12>>2]=0;H[c+16>>2]=0;H[c+8>>2]=a;H[c+20>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+32>>2]=0;H[c+36>>2]=0;H[c+40>>2]=0;d=H[b+4>>2];H[c+44>>2]=H[b>>2];H[c+48>>2]=d;d=H[b+12>>2];H[c+52>>2]=H[b+8>>2];H[c+56>>2]=d;d=H[b+20>>2];H[c+60>>2]=H[b+16>>2];H[c+64>>2]=d;d=H[b+28>>2];H[c+68>>2]=H[b+24>>2];H[c+72>>2]=d;d=H[b+36>>2];H[c+76>>2]=H[b+32>>2];H[c+80>>2]=d;d=H[b+44>>2];H[c+84>>2]=H[b+40>>2];H[c+88>>2]=d;d=H[b+52>>2];H[c+92>>2]=H[b+48>>2];H[c+96>>2]=d;d=H[b+60>>2];H[c+100>>2]=H[b+56>>2];H[c+104>>2]=d;F[c+112|0]=0;H[c+108>>2]=-16;H[e+12>>2]=c;b=H[a+6028>>2];a:{if(b>>>0>=(H[a+6032>>2]&2147483647)>>>0){b=0;c=a+6024|0;a=H[c+8>>2]&2147483647;g=a?a<<1:1;b:{if(!g){break b}d=g<<2;if(!d){break b}a=H[33808];b=Ra[H[H[a>>2]+20>>2]](a)|0?47634:55639;b=Ra[H[H[a+12>>2]+8>>2]](a+12|0,d,b,13582,553)|0}d=H[c+4>>2];h=(d<<2)+b|0;if((d|0)>0){f=H[c>>2];a=b;while(1){H[a>>2]=H[f>>2];f=f+4|0;a=a+4|0;if(h>>>0>a>>>0){continue}break}}H[h>>2]=H[e+12>>2];c:{if(H[c+8>>2]<0){break c}a=H[c>>2];if(!a){break c}d=H[33808];Ra[H[H[d+12>>2]+12>>2]](d+12|0,a);d=H[c+4>>2]}H[c+8>>2]=g;H[c>>2]=b;H[c+4>>2]=d+1;break a}H[H[a+6024>>2]+(b<<2)>>2]=c;H[a+6028>>2]=b+1}Oa=e+16|0;return H[e+12>>2]}function XO(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;a:{d=H[a+4>>2];j=H[d+1e3>>2];k=H[j+284>>2];if(!k){break a}h=H[j+280>>2];l=H[d+1004>>2];i=H[d+976>>2];m=H[i+1816>>2];n=H[i+1156>>2];b:{if(!b){d=0;while(1){if(e>>>0>=256){c=yq(n,56);g=H[a+4>>2];o=H[g+16>>2];p=H[g+20>>2];e=0;H[c+24>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=o;H[c+12>>2]=p;H[c+48>>2]=g;H[c+44>>2]=m;H[c+40>>2]=l;H[c+36>>2]=i;H[c+32>>2]=d-f;H[c+28>>2]=(f<<2)+h;H[c>>2]=119484;H[c+24>>2]=1;f=H[c+16>>2];Ra[H[H[f>>2]+72>>2]](f,c);f=d}c=H[H[(H[j+184>>2]+N(H[(d<<2)+h>>2]>>>7|0,24)|0)+20>>2]-28>>2];e=(c>>>0>1?c:1)+e|0;d=d+1|0;if((k|0)!=(d|0)){continue}break}break b}d=0;while(1){if(e>>>0>=256){c=yq(n,56);g=H[a+4>>2];o=H[g+20>>2];p=H[g+16>>2];e=0;H[c+24>>2]=0;H[c+16>>2]=0;H[c+8>>2]=p;H[c+12>>2]=o;H[c+48>>2]=g;H[c+44>>2]=m;H[c+40>>2]=l;H[c+36>>2]=i;H[c+32>>2]=d-f;H[c+28>>2]=(f<<2)+h;H[c>>2]=119484;H[c+20>>2]=b;H[c+24>>2]=1;Ra[H[H[b>>2]+16>>2]](b);H[c+16>>2]=H[H[c+20>>2]+16>>2];Ra[H[H[c>>2]+20>>2]](c);f=d}c=H[H[(H[j+184>>2]+N(H[(d<<2)+h>>2]>>>7|0,24)|0)+20>>2]-28>>2];e=(c>>>0>1?c:1)+e|0;d=d+1|0;if((k|0)!=(d|0)){continue}break}}if(!e){break a}d=yq(n,56);a=H[a+4>>2];c=H[a+20>>2];e=H[a+16>>2];H[d+24>>2]=0;H[d+16>>2]=0;H[d+8>>2]=e;H[d+12>>2]=c;H[d+48>>2]=a;H[d+44>>2]=m;H[d+40>>2]=l;H[d+36>>2]=i;H[d+32>>2]=k-f;H[d+28>>2]=(f<<2)+h;H[d>>2]=119484;H[d+20>>2]=b;H[d+24>>2]=1;if(b){Ra[H[H[b>>2]+16>>2]](b);H[d+16>>2]=H[H[d+20>>2]+16>>2];a=H[d>>2]}else{a=119484}Ra[H[a+20>>2]](d)}}function SM(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,o=0,p=0;i=H[a+44>>2];h=H[a+84>>2];g=i+h|0;b=H[a+48>>2]&2147483647;a:{if(g>>>0<=b>>>0){break a}c=b;b=b<<1;b=b>>>0>>0?g:b;d=b>>>0>256?b:256;if(c>>>0>>0){tO(a+40|0,d)}if(d>>>0>(H[a+36>>2]&2147483647)>>>0){b=0;b:{if(!d){break b}c=d<<4;if(!c){break b}e=H[33808];b=e+12|0;b=(l=b,m=c,n=Ra[H[H[e>>2]+20>>2]](e)|0?23286:55639,o=13582,p=553,k=H[H[b>>2]+8>>2],Ra[k](l|0,m|0,n|0,o|0,p|0)|0)}c=H[a+32>>2];if((c|0)>0){j=(c<<4)+b|0;f=H[a+28>>2];c=b;while(1){e=H[f+4>>2];H[c>>2]=H[f>>2];H[c+4>>2]=e;e=H[f+12>>2];H[c+8>>2]=H[f+8>>2];H[c+12>>2]=e;f=f+16|0;c=c+16|0;if(j>>>0>c>>>0){continue}break}}c:{if(H[a+36>>2]<0){break c}e=H[a+28>>2];if(!e){break c}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,e)}H[a+36>>2]=d;H[a+28>>2]=b}if(d>>>0<=(H[a+60>>2]&2147483647)>>>0){break a}TM(a+52|0,d)}H[a+44>>2]=g;H[a+56>>2]=g;H[a+32>>2]=g;R6(H[a+40>>2]+(i<<2)|0,H[a+80>>2],h<<2);R6(H[a+28>>2]+(i<<4)|0,H[a+68>>2],h<<4);R6(H[a+52>>2]+(i<<3)|0,H[a+92>>2],h<<3);d=H[a+84>>2];if(d){h=H[a+80>>2];j=H[a+108>>2];g=H[j+456>>2];c=0;while(1){f=H[h+(c<<2)>>2];e=H[a+24>>2]|c+i<<3;H[f+68>>2]=e;b=I[f+43|0];d:{if(!(b&64)){break d}F[f+43|0]=b&191;if(I[f+41|0]&8){break d}b=H[H[H[j+444>>2]>>2]+(H[f- -64>>2]<<2)>>2];if(!b){break d}H[g+(H[b+20>>2]<<2)>>2]=e;d=H[b+16>>2];if(d){while(1){H[g+(H[d+20>>2]<<2)>>2]=H[f+68>>2];d=H[d+16>>2];if(d){continue}break}}d=H[a+84>>2]}c=c+1|0;if(d>>>0>c>>>0){continue}break}}H[a+84>>2]=0;H[a+96>>2]=0;H[a+72>>2]=0}function MM(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;b=H[b+68>>2];a:{if((b|0)>=0){i=H[a+44>>2]-1|0;f=H[H[a+40>>2]+(i<<2)>>2];c=H[a+28>>2];d=b>>>3|0;e=d<<3;yJ(H[a+4>>2],e+H[a+52>>2]|0);H[H[a+40>>2]+(d<<2)>>2]=f;g=e;e=H[a+52>>2];h=g+e|0;g=e;e=i<<3;g=g+e|0;j=H[g+4>>2];H[h>>2]=H[g>>2];H[h+4>>2]=j;d=c+(d<<4)|0;c=c+(i<<4)|0;h=H[c+12>>2];H[d+8>>2]=H[c+8>>2];H[d+12>>2]=h;h=H[c+4>>2];H[d>>2]=H[c>>2];H[d+4>>2]=h;d=e+H[a+52>>2]|0;H[d>>2]=0;H[d+4>>2]=0;c=H[a+108>>2];d=H[c+456>>2];H[f+68>>2]=b;b:{if(!(I[f+43|0]&2)|I[f+41|0]&8){break b}c=H[H[H[c+444>>2]>>2]+(H[f- -64>>2]<<2)>>2];if(!c){break b}H[d+(H[c+20>>2]<<2)>>2]=b;b=H[c+16>>2];if(!b){break b}while(1){H[d+(H[b+20>>2]<<2)>>2]=H[f+68>>2];b=H[b+16>>2];if(b){continue}break}}H[a+44>>2]=i;H[a+56>>2]=i;a=a+32|0;break a}i=H[a+84>>2]-1|0;f=H[H[a+80>>2]+(i<<2)>>2];c=H[a+68>>2];d=b>>>3&268435455;e=d<<3;yJ(H[a+4>>2],e+H[a+92>>2]|0);H[H[a+80>>2]+(d<<2)>>2]=f;g=e;e=H[a+92>>2];h=g+e|0;g=e;e=i<<3;g=g+e|0;j=H[g+4>>2];H[h>>2]=H[g>>2];H[h+4>>2]=j;d=c+(d<<4)|0;c=c+(i<<4)|0;h=H[c+12>>2];H[d+8>>2]=H[c+8>>2];H[d+12>>2]=h;h=H[c+4>>2];H[d>>2]=H[c>>2];H[d+4>>2]=h;d=e+H[a+92>>2]|0;H[d>>2]=0;H[d+4>>2]=0;c=H[a+108>>2];d=H[c+456>>2];H[f+68>>2]=b;c:{if(!(I[f+43|0]&2)|I[f+41|0]&8){break c}c=H[H[H[c+444>>2]>>2]+(H[f- -64>>2]<<2)>>2];if(!c){break c}H[d+(H[c+20>>2]<<2)>>2]=b;b=H[c+16>>2];if(!b){break c}while(1){H[d+(H[b+20>>2]<<2)>>2]=H[f+68>>2];b=H[b+16>>2];if(b){continue}break}}H[a+84>>2]=i;H[a+96>>2]=i;a=a+72|0}H[a>>2]=H[a>>2]-1}function uJ(a,b){var c=0,d=0,e=0;H[a>>2]=0;H[a+4>>2]=0;H[a+32>>2]=0;H[a+36>>2]=0;H[a+24>>2]=0;H[a+28>>2]=0;H[a+16>>2]=0;H[a+20>>2]=0;H[a+8>>2]=0;H[a+12>>2]=0;H[a+44>>2]=0;H[a+48>>2]=0;H[a+40>>2]=1065353216;H[a+52>>2]=0;H[a+56>>2]=0;c=a- -64|0;H[c>>2]=0;H[c+4>>2]=0;H[a+60>>2]=1065353216;H[a+72>>2]=0;H[a+76>>2]=0;H[a+84>>2]=0;H[a+88>>2]=0;H[a+80>>2]=1065353216;H[a+92>>2]=0;H[a+96>>2]=0;H[a+504>>2]=0;H[a+508>>2]=0;c=b+24|0;H[a+500>>2]=c;H[a+104>>2]=b+212;H[a+100>>2]=1065353216;H[a+516>>2]=0;H[a+520>>2]=0;H[a+512>>2]=c;H[a+7088>>2]=0;H[a+6688>>2]=0;H[a+6288>>2]=0;H[a+5888>>2]=0;H[a+5488>>2]=0;H[a+5088>>2]=0;G[a+4702>>1]=0;c=a+4664|0;H[c>>2]=2139095039;H[c+4>>2]=0;c=a+4656|0;H[c>>2]=2139095039;H[c+4>>2]=2139095039;c=a+4648|0;H[c>>2]=0;H[c+4>>2]=1065353216;H[a+4640>>2]=0;H[a+4644>>2]=0;c=H[b+204>>2];d=H[b+208>>2];H[a+7116>>2]=0;H[a+7120>>2]=0;H[a+7124>>2]=0;G[a+7136>>1]=0;H[a+7104>>2]=0;e=a+7108|0;H[e>>2]=c;H[e+4>>2]=d;d=I[b+276|0];H[a+7164>>2]=0;H[a+7168>>2]=0;F[a+7139|0]=0;F[a+7140|0]=0;F[a+7141|0]=0;F[a+7142|0]=0;F[a+7143|0]=0;F[a+7144|0]=0;F[a+7145|0]=0;F[a+7146|0]=0;c=a+7144|0;F[c|0]=0;F[c+1|0]=0;F[c+2|0]=0;F[c+3|0]=0;F[c+4|0]=0;F[c+5|0]=0;F[c+6|0]=0;F[c+7|0]=0;F[a+7138|0]=d;H[a+7172>>2]=H[b+280>>2];H[a+7176>>2]=H[b+284>>2];H[a+7180>>2]=H[b+288>>2];b=H[b+296>>2];H[a+7204>>2]=0;H[a+7208>>2]=0;H[a+7192>>2]=0;H[a+7196>>2]=0;H[a+7188>>2]=b;H[c>>2]=0;S6(a+108|0,0,392);b=a+7224|0;H[b>>2]=0;H[b+4>>2]=0;H[a+7216>>2]=0;H[a+7220>>2]=0;return a}function HD(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;e=Oa-32|0;Oa=e;F[a+140|0]=1;d=c>>>1|0;f=c&1;a:{if((b|0)==-1){H[e+12>>2]=d;b=N(f,36)+a|0;c=H[b+4>>2]+(c>>>4&268435452)|0;g=H[c>>2];d=1<>2]=d|g;c=b+16|0;d=H[b+20>>2];b:{if(d>>>0>=(H[b+24>>2]&2147483647)>>>0){qm(c,e+12|0);break b}H[H[c>>2]+(d<<2)>>2]=H[e+12>>2];H[b+20>>2]=H[b+20>>2]+1}a=N(f,36)+a|0;H[a+32>>2]=H[a+32>>2]+1;break a}c=N(f,36)+a|0;H[c+32>>2]=H[c+32>>2]+1;H[e+20>>2]=d;H[e+16>>2]=b;d=0;c=a+76|0;a=H[c+20>>2];c:{d:{if(!a){break d}f=H[e+16>>2];b=(f<<15^-1)+f|0;b=N(b>>>10^b,9);b=b>>>6^b;b=(b<<11^-1)+b|0;d=N(b>>>16^b^-57320555,1000007);g=H[e+20>>2];b=(g<<15^-1)+g|0;b=N(b>>>10^b,9);b=b>>>6^b;b=(b<<11^-1)+b|0;d=a-1&(d^(b>>>16^b));b=H[H[c+12>>2]+(d<<2)>>2];if((b|0)==-1){break d}h=c+4|0;j=H[c+8>>2];k=H[c+4>>2];while(1){i=(b<<3)+k|0;if(!((f|0)!=H[i>>2]|(g|0)!=H[i+4>>2])){F[e+31|0]=1;break c}b=H[(b<<2)+j>>2];if((b|0)!=-1){continue}break}}F[e+31|0]=0;if(H[c+36>>2]==H[c+16>>2]){b=a?a<<1:16;if(b>>>0>a>>>0){FD(c,b);a=H[c+20>>2]}b=a-1|0;a=H[e+16>>2];a=(a<<15^-1)+a|0;a=N(a>>>10^a,9);a=a>>>6^a;a=(a<<11^-1)+a|0;d=N(a>>>16^a^-57320555,1000007);a=H[e+20>>2];a=(a<<15^-1)+a|0;a=N(a>>>10^a,9);a=a>>>6^a;a=(a<<11^-1)+a|0;d=b&(d^(a>>>16^a))}b=H[c+28>>2];H[c+28>>2]=b+1;a=H[c+12>>2]+(d<<2)|0;H[H[c+8>>2]+(b<<2)>>2]=H[a>>2];H[a>>2]=b;H[c+36>>2]=H[c+36>>2]+1;H[c+32>>2]=H[c+32>>2]+1;h=c+4|0}if(I[e+31|0]){break a}a=H[h>>2]+(b<<3)|0;H[a>>2]=H[e+16>>2];H[a+4>>2]=H[e+20>>2]}Oa=e+32|0}function hU(a,b){var c=0,d=0,e=0,f=0;a:{switch(H[b>>2]){case 3:H[a>>2]=3;L[a+4>>2]=L[b+4>>2];L[a+8>>2]=L[b+8>>2];L[a+12>>2]=L[b+12>>2];return;case 2:c=H[b+4>>2];H[a>>2]=H[b>>2];H[a+4>>2]=c;H[a+8>>2]=H[b+8>>2];return;case 0:c=H[b>>2];b=H[b+4>>2];H[a+8>>2]=0;H[a>>2]=c;H[a+4>>2]=b;return;case 1:H[a>>2]=1;return;case 4:H[a>>2]=4;L[a+4>>2]=L[b+4>>2];L[a+8>>2]=L[b+8>>2];L[a+12>>2]=L[b+12>>2];L[a+16>>2]=L[b+16>>2];L[a+20>>2]=L[b+20>>2];L[a+24>>2]=L[b+24>>2];L[a+28>>2]=L[b+28>>2];c=H[b+32>>2];H[a+32>>2]=c;F[a+36|0]=I[b+36|0];d=I[b+37|0]|I[b+38|0]<<8;F[a+37|0]=d;F[a+38|0]=d>>>8;F[a+39|0]=I[b+39|0];H[a+40>>2]=c+16;e=a,f=Ra[H[H[c>>2]+60>>2]](c)|0,F[e+44|0]=f;return;case 5:H[a>>2]=5;L[a+4>>2]=L[b+4>>2];L[a+8>>2]=L[b+8>>2];L[a+12>>2]=L[b+12>>2];L[a+16>>2]=L[b+16>>2];L[a+20>>2]=L[b+20>>2];L[a+24>>2]=L[b+24>>2];L[a+28>>2]=L[b+28>>2];F[a+32|0]=I[b+32|0];c=I[b+33|0]|I[b+34|0]<<8|(I[b+35|0]<<16|I[b+36|0]<<24);F[a+33|0]=c;F[a+34|0]=c>>>8;F[a+35|0]=c>>>16;F[a+36|0]=c>>>24;b=I[b+36|0]|I[b+37|0]<<8|(I[b+38|0]<<16|I[b+39|0]<<24);F[a+36|0]=b;F[a+37|0]=b>>>8;F[a+38|0]=b>>>16;F[a+39|0]=b>>>24;b=H[a+36>>2];H[a+40>>2]=b;H[a+44>>2]=H[b+68>>2];H[a+48>>2]=0;H[a+52>>2]=-842203136;return;case 6:H[a>>2]=6;c=H[b+8>>2];d=H[b+4>>2];H[a+4>>2]=d;H[a+8>>2]=c;c=H[b+16>>2];H[a+12>>2]=H[b+12>>2];H[a+16>>2]=c;F[a+20|0]=I[b+20|0];F[a+23|0]=I[b+23|0];b=I[b+21|0]|I[b+22|0]<<8;F[a+21|0]=b;F[a+22|0]=b>>>8;H[a+28>>2]=0;H[a+32>>2]=-842203136;H[a+24>>2]=d+16;break;default:break a}}}function $y(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=O(0),p=0,q=0;h=H[b+8>>2];if(!h){H[a+24>>2]=0;H[a+28>>2]=0;H[a+8>>2]=0;H[a+12>>2]=0;c=H[a>>2];if(c){b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,c)}H[a>>2]=0;return}j=h<<1|1;c=H[a+28>>2];a:{if(!(c>>>0>>0|c>>>2>>>0>h>>>0)){g=j<<2;f=H[a+4>>2];break a}d=H[a>>2];if(d){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,d)}e=h<<3;g=j<<2;k=N(h,12);d=g+k|0;if(d){c=H[33808]+12|0;c=Ra[H[H[c>>2]+8>>2]](c,d,20591,16116,198)|0}else{c=0}H[a+16>>2]=c;H[a>>2]=c;H[a+28>>2]=h;H[a+12>>2]=j;H[a+20>>2]=c+e;f=c+k|0;H[a+4>>2]=f}S6(f,255,g);H[a+8>>2]=j;f=0;H[a+24>>2]=0;l=H[a+16>>2];m=H[a+20>>2];k=H[a+4>>2];n=H[b+4>>2];g=0;while(1){b=n+(g<<5)|0;o=L[b+4>>2];p=H[b+16>>2];d=p>>>7|0;q=H[b+12>>2];c=q>>>7|0;b=-1;i=b+d|0;e=(d^-1)+c|0;e=b>>>0>i>>>0?e+1|0:e;b=i;b=b^((e&4194303)<<10|b>>>22);d=b;c=e^e>>>22;e=c<<13|b>>>19;b=b<<13^-1;d=d+b|0;c=(e^-1)+c|0;c=b>>>0>d>>>0?c+1|0:c;b=d;b=g7(b^((c&255)<<24|b>>>8),c^c>>>8,9,0);d=Qa;c=d>>>15|0;b=b^((d&32767)<<17|b>>>15);e=b;c=c^d;d=c<<27|b>>>5;b=b<<27^-1;e=e+b|0;c=(d^-1)+c|0;c=b>>>0>e>>>0?c+1|0:c;b=e;b:{c:{e=(((b^((c&2147483647)<<1|b>>>31))>>>0)%(j>>>0)<<2)+k|0;d=H[e>>2];b=d;if((b|0)!=-1){while(1){i=l+(b<<3)|0;c=n+(H[i>>2]<<5)|0;if(H[c+12>>2]==(q|0)&H[c+16>>2]==(p|0)){break c}b=H[m+(b<<2)>>2];if((b|0)!=-1){continue}break}}H[m+(f<<2)>>2]=d;H[e>>2]=f;b=l+(f<<3)|0;L[b+4>>2]=o;H[b>>2]=g;f=f+1|0;break b}L[i+4>>2]=o+L[i+4>>2]}g=g+1|0;if((h|0)!=(g|0)){continue}break}H[a+24>>2]=f}function mQ(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0;b=H[a+20>>2];a=H[a+28>>2];iO(a);H[a+4324>>2]=b;H[a+4328>>2]=1;d=a+4304|0;a:{if(!b){H[a+4368>>2]=1;H[a+4408>>2]=1;H[a+4364>>2]=0;H[a+4404>>2]=0;H[a+4444>>2]=0;H[a+4448>>2]=1;break a}Ra[H[H[b>>2]+16>>2]](b);c=H[H[a+4324>>2]+16>>2];H[a+4368>>2]=1;H[a+4320>>2]=c;c=a+4364|0;H[c>>2]=b;Ra[H[H[b>>2]+16>>2]](b);c=H[H[c>>2]+16>>2];H[a+4408>>2]=1;H[a+4360>>2]=c;c=a+4404|0;H[c>>2]=b;Ra[H[H[b>>2]+16>>2]](b);c=H[H[c>>2]+16>>2];H[a+4448>>2]=1;H[a+4400>>2]=c;c=a+4444|0;H[c>>2]=b;Ra[H[H[b>>2]+16>>2]](b);H[a+4440>>2]=H[H[c>>2]+16>>2]}b=H[a+4320>>2];Ra[H[H[b>>2]+72>>2]](b,d);b=H[a+4360>>2];Ra[H[H[b>>2]+72>>2]](b,a+4344|0);b=H[a+4400>>2];Ra[H[H[b>>2]+72>>2]](b,a+4384|0);b=H[a+4440>>2];Ra[H[H[b>>2]+72>>2]](b,a+4424|0);d=H[a+4676>>2];if(d){b=0;while(1){c=H[H[a+4672>>2]+(b<<2)>>2];if(!(c&1)){d=H[a+976>>2];e=H[c+48>>2];f=H[d+340>>2]+(e>>>3&536870908)|0;g=H[f>>2];h=f,i=j7(-2,e)&g,H[h>>2]=i;e=H[d+328>>2];H[d+328>>2]=e+1;H[H[d+324>>2]+(e<<2)>>2]=c;d=H[a+4676>>2]}b=b+1|0;if(d>>>0>b>>>0){continue}break}}b=H[a+2168>>2];e=H[a+4688>>2];if(e){f=H[a+4684>>2];d=0;while(1){c=H[f+(d<<2)>>2];if(!(c&1|!c)){H[b+976>>2]=H[b+976>>2]-1;H[c>>2]=H[b+984>>2];H[b+984>>2]=c}d=d+1|0;if((e|0)!=(d|0)){continue}break}b=H[a+2168>>2]}c=H[a+4700>>2];if(c){e=H[a+4696>>2];a=0;while(1){d=H[e+(a<<2)>>2];if(!(d&1|!d)){H[b+1852>>2]=H[b+1852>>2]-1;H[d>>2]=H[b+1860>>2];H[b+1860>>2]=d}a=a+1|0;if((c|0)!=(a|0)){continue}break}}}function yZ(a,b,c,d,e){var f=0,g=0,h=0,i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=0,q=0,r=0,s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=0;f=H[a+5916>>2];a:{if(f){f=f-1|0;H[a+5916>>2]=f;g=H[((f<<2)+a|0)+5660>>2];break a}g=H[a+5656>>2];H[a+5656>>2]=g+1}f=N(g,48)+a|0;G[f+2358>>1]=0;F[f+2357|0]=d;F[f+2356|0]=c;F[f+2355|0]=b;H[f+2348>>2]=0;F[f+2354|0]=255;h=f+2340|0;H[h>>2]=0;H[h+4>>2]=0;F[f+2360|0]=g;G[f+2352>>1]=65535;g=a+1296|0;h=c<<4;c=g+h|0;i=L[c+4>>2];p=h;h=a+272|0;q=p+h|0;m=L[q+4>>2];r=d<<4;d=r+g|0;s=L[d+4>>2];r=h+r|0;n=L[r+4>>2];p=b<<4;b=g+p|0;j=L[b+4>>2];g=h+p|0;k=L[g+4>>2];t=L[c+8>>2];v=L[q+8>>2];w=L[d>>2];x=L[r>>2];y=L[d+8>>2];z=L[r+8>>2];A=L[b+8>>2];B=L[g+8>>2];l=L[c>>2];u=L[q>>2];C=L[b>>2];D=L[g>>2];H[f+2332>>2]=0;o=O(u-l);l=O(D-C);u=O(o-l);o=O(n-s);s=O(k-j);n=O(o-s);j=O(O(x-w)-l);m=O(O(m-i)-s);i=O(O(u*n)-O(j*m));o=m;m=O(B-A);k=O(O(z-y)-m);t=O(O(v-t)-m);n=O(O(o*k)-O(n*t));j=O(O(t*j)-O(k*u));k=O(O(i*i)+O(O(n*n)+O(j*j)));b=k>O(1.1920928955078125e-7);o=i;i=O(O(1)/O(W(b?k:O(1))));k=O(o*i);L[f+2328>>2]=k;j=O(j*i);L[f+2324>>2]=j;g=f+2320|0;i=O(n*i);L[g>>2]=i;l=O(O(k*m)+O(O(i*l)+O(s*j)));L[f+2336>>2]=l;p=f+2359|0;if(!(!b|!(l<=L[e>>2]))){d=H[a>>2];b:{if(!d){b=0;break b}c=d;while(1){h=H[a+4>>2];e=c-1|0;b=e>>>1|0;q=H[h+(b<<2)>>2];if(!(l>2])){b=c;break b}H[h+(c<<2)>>2]=q;c=b;if(e>>>0>1){continue}break}}H[H[a+4>>2]+(b<<2)>>2]=g;H[a>>2]=d+1;E=1}F[p|0]=E;return g}function TG(a,b){var c=O(0),d=O(0),e=O(0),f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=0,o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0);a=H[a+36>>2];n=I[a+158|0];if(n){r=L[a+24>>2];o=L[b+24>>2];s=L[a+20>>2];p=L[b+20>>2];f=L[a>>2];c=L[b+4>>2];i=L[a+12>>2];d=L[b+8>>2];j=L[b+12>>2];k=L[a+8>>2];l=L[b>>2];m=L[a+4>>2];e=O(O(f*c)+O(O(O(i*d)-O(j*k))-O(l*m)));g=O(O(k*l)+O(O(O(i*c)-O(j*m))-O(d*f)));h=O(O(m*d)+O(O(O(i*l)-O(j*f))-O(c*k)));t=L[a+16>>2];q=L[b+16>>2];d=O(O(d*k)+O(O(c*m)+O(O(j*i)+O(f*l))));if(d>2]=r+(n&4?O(0):u);L[b+20>>2]=s+(n&2?O(0):p);L[b+16>>2]=t+(n&1?O(0):q);h=n&32?O(0):O(l*c);e=n&8?O(0):O(j*c);g=n&16?O(0):O(v*c);c=O(O(h*h)+O(O(e*e)+O(g*g)));if(c!=O(0)){l=e;c=O(W(c));e=O(c*O(.5));d=O(Z5(e)/c);c=O(l*d);e=T5(e);g=O(g*d);h=O(h*d);d=O(O(i*e)+O(O(O(O(i*O(0))-O(f*c))-O(g*m))-O(h*k)));l=d;o=O(d*d);d=O(O(k*e)+O(O(O(-f)*g)+O(O(c*m)+O(O(k*O(0))+O(i*h)))));j=O(O(f*e)+O(O(O(-m)*h)+O(O(g*k)+O(O(f*O(0))+O(i*c)))));f=O(O(m*e)+O(O(O(-k)*c)+O(O(h*f)+O(O(m*O(0))+O(i*g)))));c=O(O(1)/O(W(O(o+O(O(d*d)+O(O(j*j)+O(f*f)))))));i=O(l*c);k=O(d*c);m=O(f*c);f=O(j*c)}L[b+12>>2]=i;L[b+8>>2]=k;L[b+4>>2]=m;L[b>>2]=f}}function _U(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=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=0,x=0,y=O(0);g=Oa-4288|0;Oa=g;i=L[d+4>>2];k=O(i+i);h=L[d+8>>2];n=O(k*h);q=L[d>>2];j=O(q+q);m=L[d+12>>2];o=O(j*m);l=O(n-o);r=O(j*h);s=O(k*m);p=O(r+s);n=O(n+o);t=O(j*i);u=O(h+h);v=O(u*m);m=O(t-v);o=O(r-s);r=O(t+v);j=O(O(1)-O(q*j));q=O(h*u);h=O(j-q);k=O(i*k);i=O(O(O(1)-k)-q);q=L[d+24>>2];s=L[d+20>>2];t=L[c+12>>2];u=L[c+8>>2];v=L[c+4>>2];y=L[d+16>>2];j=O(j-k);a:{if(j>2]=q;L[g+4276>>2]=s;L[g+4272>>2]=y;L[g+4268>>2]=h;L[g+4264>>2]=i;L[g+4260>>2]=j;L[g+4256>>2]=l;H[g+4200>>2]=-1;L[g+28>>2]=t;L[g+24>>2]=u;L[g+20>>2]=v;H[g+16>>2]=3;c=g+4200|0;w=g+16|0;hU(c,w);H[g+4144>>2]=-1;x=g+4144|0;hU(x,e);H[g+4136>>2]=0;H[g+4140>>2]=0;d=0;H[g+4112>>2]=0;H[g+8>>2]=1065353216;H[g>>2]=0;H[g+4>>2]=0;b:{if(!oY(c,x,g+4256|0,f,g,w)){break b}if(!NU(a,b,H[g+4112>>2],g+16|0)){break b}d=H[g+4112>>2]!=0}Oa=g+4288|0;return d|0}function jW(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=O(g);h=h|0;i=i|0;j=O(j);var k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0);c=Oa-112|0;Oa=c;k=L[b+20>>2];l=L[e+40>>2];m=L[b+24>>2];n=L[e+44>>2];o=L[b+16>>2];p=L[e+36>>2];L[c+48>>2]=L[e>>2];L[c+52>>2]=L[e+4>>2];L[c+56>>2]=L[e+8>>2];L[c+60>>2]=L[e+12>>2];L[c- -64>>2]=L[e+16>>2];L[c+68>>2]=L[e+20>>2];L[c+72>>2]=L[e+24>>2];L[c+76>>2]=L[e+28>>2];q=L[e+32>>2];L[c+92>>2]=n-m;L[c+88>>2]=l-k;L[c+80>>2]=q;L[c+84>>2]=p-o;L[c+96>>2]=L[e+48>>2];L[c+100>>2]=L[e+52>>2];L[c+104>>2]=L[e+56>>2];k=L[a+4>>2];H[c+40>>2]=0;H[c+32>>2]=0;H[c+36>>2]=0;l=L[f+4>>2];m=L[f>>2];L[c+24>>2]=-L[f+8>>2];L[c+20>>2]=-l;L[c+16>>2]=-m;G[c+8>>1]=J[i>>1];a=j1(c+48|0,O(k+j),c+32|0,c+16|0,g,h+40|0,h+28|0,c+8|0);a:{if(!a){break a}G[h+12>>1]=2;if(!(F[i|0]&1)){break a}g=L[h+40>>2];if(g==O(0)){break a}j=L[f+4>>2];k=L[f+8>>2];l=O(g*L[f>>2]);L[c+32>>2]=-l;m=O(g*k);L[c+40>>2]=-m;n=O(g*j);L[c+36>>2]=-n;pZ(c+32|0,c+84|0,c+96|0,c+48|0,c+16|0);o=L[e+36>>2];p=L[e+40>>2];q=L[e+44>>2];r=L[c+72>>2];s=L[c+48>>2];t=L[c+60>>2];u=L[c+76>>2];v=L[c+52>>2];w=L[c+64>>2];x=L[c+80>>2];g=L[c+24>>2];y=L[c+56>>2];j=L[c+16>>2];z=L[c+68>>2];k=L[c+20>>2];G[h+12>>1]=J[h+12>>1]|1;L[h+24>>2]=m+O(q+O(O(O(j*y)+O(k*z))+O(g*x)));L[h+20>>2]=n+O(p+O(O(O(j*v)+O(k*w))+O(g*u)));L[h+16>>2]=l+O(o+O(O(O(j*s)+O(k*t))+O(g*r)))}Oa=c+112|0;return a|0}function UO(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;j=Oa-16|0;Oa=j;k=Oa-16|0;Oa=k;c=H[a+980>>2];e=H[H[c+376>>2]+(b<<2)>>2];h=H[e>>2];d=H[e+20>>2];if((d|0)!=-1){f=H[c+392>>2]-1|0;H[c+392>>2]=f;g=H[c+388>>2];H[g+(d<<2)>>2]=H[g+(f<<2)>>2];if(d>>>0>>0){H[H[H[c+388>>2]+(d<<2)>>2]+20>>2]=d}H[e+20>>2]=-1}f=h>>>5|0;g=H[c+136>>2]+(f<<2)|0;i=H[g>>2];d=1<>2]=i&(d^-1);break a}if(!H[e+8>>2]){break a}f=H[c+148>>2]+(f<<2)|0;H[f>>2]=d|H[f>>2]}e=eH(e);d=H[33808];Ra[H[H[d+12>>2]+12>>2]](d+12|0,e);H[H[c+376>>2]+(b<<2)>>2]=H[c+372>>2];H[c+372>>2]=b;H[j+12>>2]=h;b=H[c+180>>2];e=b+(h<<2)|0;H[j+8>>2]=H[e>>2];d=H[e>>2];H[k+12>>2]=d;e=H[c+504>>2];b:{if(e>>>0>=(H[c+508>>2]&2147483647)>>>0){e=0;b=H[c+508>>2]&2147483647;i=b?b<<1:1;c:{if(!i){break c}d=i<<2;if(!d){break c}b=H[33808];e=Ra[H[H[b>>2]+20>>2]](b)|0?32982:55639;e=Ra[H[H[b+12>>2]+8>>2]](b+12|0,d,e,13582,553)|0}g=H[c+504>>2];l=(g<<2)+e|0;d=H[c+500>>2];if((g|0)>0){b=d;f=e;while(1){H[f>>2]=H[b>>2];b=b+4|0;f=f+4|0;if(l>>>0>f>>>0){continue}break}}H[l>>2]=H[k+12>>2];if(!(!d|H[c+508>>2]<0)){b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,d);g=H[c+504>>2]}H[c+508>>2]=i;H[c+500>>2]=e;H[c+504>>2]=g+1;b=H[c+180>>2];break b}H[H[c+500>>2]+(e<<2)>>2]=d;H[c+504>>2]=e+1}d=b;b=h<<2;H[d+b>>2]=-1;H[b+H[H[c+192>>2]+4>>2]>>2]=0;b=H[c+196>>2]+(h<<3)|0;H[b>>2]=0;H[b+4>>2]=-1;F[c+365|0]=1;H[c+368>>2]=H[c+368>>2]-1;Oa=k+16|0;SG(H[a+2376>>2],H[j+12>>2]);Oa=j+16|0}function l0(a,b,c,d,e){var f=0,g=0,h=0,i=O(0),j=0,k=O(0);a:{b:{f=H[a+2328>>2];if(!f){break b}g=f-1|0;f=(g<<6)+a|0;if(!(L[a+2224>>2]>2]*L[c+8>>2])+O(O(L[f>>2]*L[c>>2])+O(L[f+4>>2]*L[c+4>>2]))))){break b}i=L[d>>2];if(!(i>2])){break a}g=(g<<6)+a|0;h=H[a+2320>>2]+(H[g+48>>2]<<6)|0;H[h>>2]=0;H[h+4>>2]=0;H[h+8>>2]=0;H[h+12>>2]=0;j=H[b+4>>2];h=H[a+2320>>2]+(H[g+48>>2]<<6)|0;H[h+16>>2]=H[b>>2];H[h+20>>2]=j;j=H[b+12>>2];H[h+24>>2]=H[b+8>>2];H[h+28>>2]=j;k=L[c+8>>2];h=H[c+4>>2];b=H[a+2320>>2]+(H[g+48>>2]<<6)|0;H[b+32>>2]=H[c>>2];H[b+36>>2]=h;L[b+44>>2]=i;L[b+40>>2]=k;H[(H[a+2320>>2]+(H[g+48>>2]<<6)|0)+48>>2]=e;b=H[d+12>>2];H[f+40>>2]=H[d+8>>2];H[f+44>>2]=b;b=H[d+4>>2];H[f+32>>2]=H[d>>2];H[f+36>>2]=b;break a}f=H[a+2320>>2]+(H[a+2324>>2]<<6)|0;H[f>>2]=0;H[f+4>>2]=0;H[f+8>>2]=0;H[f+12>>2]=0;g=H[b+4>>2];f=H[a+2320>>2]+(H[a+2324>>2]<<6)|0;H[f+16>>2]=H[b>>2];H[f+20>>2]=g;g=H[b+12>>2];H[f+24>>2]=H[b+8>>2];H[f+28>>2]=g;i=L[c+8>>2];k=L[d>>2];f=H[c+4>>2];b=H[a+2320>>2]+(H[a+2324>>2]<<6)|0;H[b+32>>2]=H[c>>2];H[b+36>>2]=f;L[b+44>>2]=k;L[b+40>>2]=i;f=H[a+2324>>2];g=f+1|0;H[a+2324>>2]=g;H[(H[a+2320>>2]+(f<<6)|0)+48>>2]=e;e=H[a+2328>>2];b=(e<<6)+a|0;H[b+52>>2]=g;H[b+48>>2]=f;f=H[d+4>>2];H[b+32>>2]=H[d>>2];H[b+36>>2]=f;f=H[d+12>>2];H[b+40>>2]=H[d+8>>2];H[b+44>>2]=f;H[a+2328>>2]=e+1;d=H[c+12>>2];H[b+8>>2]=H[c+8>>2];H[b+12>>2]=d;d=H[c+4>>2];H[b>>2]=H[c>>2];H[b+4>>2]=d}if(K[a+2324>>2]>=16){e0(a,1,1)}}function ww(a,b){var c=O(0),d=0,e=O(0),f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=0,r=0,s=0,t=0,u=O(0),v=O(0),w=O(0),x=0,y=0,z=0,A=0,B=0,C=0,D=0;x=H[b+24>>2];q=H[a+336>>2];r=H[b+8>>2];d=r;H[d>>2]=0;H[d+4>>2]=0;H[d+24>>2]=0;H[d+28>>2]=0;H[d+16>>2]=0;H[d+20>>2]=0;H[d+8>>2]=0;H[d+12>>2]=0;d=1;if(q>>>0>1){y=H[a+272>>2];z=H[b>>2];A=H[a+344>>2];B=H[a+340>>2];C=H[a+332>>2];while(1){s=d<<5;a=(H[(s+C|0)+24>>2]<<5)+z|0;h=L[a>>2];i=L[a+8>>2];b=N(d,160)+B|0;c=L[b+120>>2];f=L[b+128>>2];g=O(O(i*c)-O(h*f));k=L[a+4>>2];e=O(k*f);f=L[b+124>>2];j=O(e-O(f*i));n=O(O(h*g)-O(j*k));c=O(O(h*f)-O(c*k));o=O(O(i*j)-O(c*h));p=O(O(k*c)-O(g*i));a=N(d,80)+A|0;t=I[a+76|0];a:{if(!t){c=O(0);i=O(0);h=O(0);break a}D=(H[a+72>>2]<<2)+x|0;u=O(-k);v=O(-h);w=O(-i);f=O(0);b=0;c=O(0);g=O(0);j=O(0);l=O(0);m=O(0);while(1){e=L[(b<<2)+D>>2];a=(N(d,76)+y|0)+N(b,24)|0;g=O(g+O(e*L[a+12>>2]));j=O(j+O(e*L[a+8>>2]));l=O(l+O(e*L[a+4>>2]));m=O(m+O(e*L[a>>2]));f=O(f+O(e*L[a+20>>2]));c=O(c+O(e*L[a+16>>2]));b=b+1|0;if((t|0)!=(b|0)){continue}break}e=O(O(h*c)+O(g*u));n=O(n+O(O(O(m*c)-O(g*l))+O(e+e)));e=O(O(j*g)-O(f*m));g=O(O(i*g)+O(f*v));o=O(o+O(e+O(g+g)));e=O(O(l*f)-O(c*j));c=O(O(k*f)+O(c*w));p=O(p+O(e+O(c+c)));c=O(O(h*l)+O(m*u));i=O(O(i*m)+O(j*v));h=O(O(k*j)+O(l*w))}a=r+s|0;H[a+28>>2]=0;L[a+16>>2]=p;H[a+12>>2]=0;L[a+8>>2]=c;L[a+4>>2]=i;L[a>>2]=h;L[a+24>>2]=n;L[a+20>>2]=o;d=d+1|0;if((q|0)!=(d|0)){continue}break}}}function iV(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=0,l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=0,t=0,u=O(0),v=O(0),w=O(0),x=O(0),y=O(0);e=Oa-32|0;Oa=e;a=H[a+48>>2];l=L[a+56>>2];m=L[a+52>>2];h=L[a+72>>2];n=L[a- -64>>2];o=L[a+68>>2];i=L[a+88>>2];p=L[a+80>>2];q=L[a+84>>2];r=L[a+48>>2];f=L[b+8>>2];g=L[b>>2];j=L[b+4>>2];H[e+28>>2]=0;i=O(O(i*f)+O(O(p*g)+O(j*q)));L[e+24>>2]=i;h=O(O(h*f)+O(O(n*g)+O(j*o)));L[e+20>>2]=h;l=O(O(l*f)+O(O(r*g)+O(j*m)));L[e+16>>2]=l;a:{if(H[a+148>>2]){k=gV(a,e+16|0);H[e+12>>2]=0;L[e+8>>2]=-L[e+24>>2];L[e+4>>2]=-L[e+20>>2];L[e>>2]=-L[e+16>>2];s=gV(a,e);t=H[a+152>>2];k=t+N(k,12)|0;f=L[k+8>>2];g=L[k>>2];j=L[k+4>>2];k=c;m=L[a+88>>2];c=N(s,12)+t|0;i=L[c+8>>2];n=L[a+56>>2];h=L[c>>2];o=L[a+72>>2];l=L[c+4>>2];v=O(L[b+8>>2]*O(O(m*i)+O(O(n*h)+O(o*l))));p=L[a+80>>2];q=L[a+48>>2];r=L[a+64>>2];w=O(L[b>>2]*O(O(p*i)+O(O(q*h)+O(r*l))));u=L[a+84>>2];x=O(u*i);i=L[a+52>>2];y=O(i*h);h=L[a+68>>2];L[k>>2]=v+O(w+O(O(x+O(y+O(h*l)))*L[b+4>>2]));f=O(O(L[b+8>>2]*O(O(m*f)+O(O(n*g)+O(j*o))))+O(O(L[b>>2]*O(O(p*f)+O(O(q*g)+O(j*r))))+O(O(O(u*f)+O(O(i*g)+O(j*h)))*L[b+4>>2])));break a}b=H[a+152>>2];f=O(O(L[b+8>>2]*i)+O(O(L[b>>2]*l)+O(h*L[b+4>>2])));s=I[a+156|0];b:{if(s>>>0<2){g=f;break b}a=1;g=f;while(1){k=b+N(a,12)|0;j=O(O(L[k+8>>2]*i)+O(O(L[k>>2]*l)+O(h*L[k+4>>2])));g=g>j?j:g;f=f>2]=g}L[d>>2]=f;Oa=e+32|0}function cU(a,b,c,d,e){var f=0,g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0);f=Oa-48|0;Oa=f;k=L[a+4>>2];m=O(k+k);j=L[a+8>>2];i=O(m*j);h=L[a>>2];g=O(h+h);q=L[a+12>>2];l=O(g*q);r=O(i-l);L[f+36>>2]=r;i=O(i+l);L[f+28>>2]=i;h=O(O(1)-O(h*g));o=O(k*m);l=O(h-o);L[f+40>>2]=l;u=h;p=O(j+j);h=O(j*p);v=O(u-h);L[f+24>>2]=v;n=O(g*j);m=O(m*q);j=O(n+m);L[f+32>>2]=j;s=O(g*k);q=O(p*q);k=O(s-q);L[f+20>>2]=k;g=O(n-m);L[f+16>>2]=g;m=O(s+q);L[f+12>>2]=m;q=O(O(O(1)-o)-h);L[f+8>>2]=q;if(H[c+8>>2]-1065353216|(H[c+4>>2]-1065353216|H[c>>2]-1065353216)){bU(f+8|0,c);h=L[f+44>>2];l=L[f+40>>2];r=L[f+36>>2];i=L[f+28>>2];v=L[f+24>>2];k=L[f+20>>2];g=L[f+16>>2];m=L[f+12>>2];q=L[f+8>>2];j=L[f+32>>2]}s=L[a+20>>2];t=L[a+24>>2];w=L[a+16>>2];o=L[b>>2];p=L[b+4>>2];n=L[b+8>>2];L[d+12>>2]=O(O(O(k*o)+O(j*p))+O(h*n))+O(0);L[d+8>>2]=t+O(O(O(g*o)+O(i*p))+O(l*n));L[d+4>>2]=s+O(O(O(m*o)+O(v*p))+O(r*n));L[d>>2]=w+O(O(O(q*o)+O(k*p))+O(j*n));o=L[b+12>>2];n=O(k*o);s=O(-n);p=L[b+16>>2];t=O(j*p);w=O(-t);u=h;h=L[b+20>>2];u=O(u*h);x=O(-u);L[e+12>>2]=O((n>s?n:s)+(t>w?t:w))+(u>x?u:x);g=O(g*o);n=O(-g);i=O(i*p);s=O(-i);l=O(l*h);t=O(-l);L[e+8>>2]=O((g>n?g:n)+(i>s?i:s))+(l>t?l:t);g=O(m*o);i=O(-g);l=O(v*p);v=O(-l);r=O(r*h);m=O(-r);L[e+4>>2]=O((g>i?g:i)+(l>v?l:v))+(m>2]=O((g>r?g:r)+(i>2];if(i){if(b){break c}while(1){d=yq(c,88);e=H[a+388>>2];f=H[a+552>>2];k=H[a+556>>2];H[d+24>>2]=0;H[d+16>>2]=0;H[d+20>>2]=0;H[d+28>>2]=0;H[d+32>>2]=0;H[d+8>>2]=f;H[d+12>>2]=k;H[d+36>>2]=0;H[d+40>>2]=0;H[d+44>>2]=0;H[d+48>>2]=0;H[d+52>>2]=0;H[d+56>>2]=0;H[d+60>>2]=0;H[d+64>>2]=0;H[d+68>>2]=0;H[d+72>>2]=0;H[d+84>>2]=a;f=i-g|0;H[d+80>>2]=f>>>0<16?f:16;H[d>>2]=115784;H[d+76>>2]=e+(g<<2);zH(d);H[h+12>>2]=d;e=H[a+488>>2];d:{if(e>>>0>=(H[a+492>>2]&2147483647)>>>0){AH(j,h+12|0);break d}H[H[a+484>>2]+(e<<2)>>2]=d;H[a+488>>2]=e+1}g=g+16|0;if(i>>>0>g>>>0){continue}break}}if(b){break b}BH(a+444|0,a);BH(a+404|0,a);break a}while(1){d=yq(c,88);e=H[a+388>>2];f=H[a+552>>2];k=H[a+556>>2];H[d+24>>2]=0;H[d+16>>2]=0;H[d+28>>2]=0;H[d+32>>2]=0;H[d+8>>2]=f;H[d+12>>2]=k;H[d+36>>2]=0;H[d+40>>2]=0;H[d+44>>2]=0;H[d+48>>2]=0;H[d+52>>2]=0;H[d+56>>2]=0;H[d+60>>2]=0;H[d+64>>2]=0;H[d+68>>2]=0;H[d+72>>2]=0;H[d+84>>2]=a;f=i-g|0;H[d+80>>2]=f>>>0<16?f:16;H[d>>2]=115784;H[d+20>>2]=b;H[d+24>>2]=1;H[d+76>>2]=e+(g<<2);Ra[H[H[b>>2]+16>>2]](b);H[d+16>>2]=H[H[d+20>>2]+16>>2];Ra[H[H[d>>2]+20>>2]](d);H[h+12>>2]=d;e=H[a+488>>2];e:{if(e>>>0>=(H[a+492>>2]&2147483647)>>>0){AH(j,h+12|0);break e}H[H[a+484>>2]+(e<<2)>>2]=d;H[a+488>>2]=e+1}g=g+16|0;if(i>>>0>g>>>0){continue}break}}CH(a+444|0,a,c,b,3108,j);CH(a+404|0,a,c,b,3094,j)}Oa=h+16|0}function VV(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=O(e);f=f|0;g=g|0;h=h|0;var i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0);g=Oa-48|0;Oa=g;i=L[b+20>>2];k=L[b+16>>2];r=L[b+24>>2];j=L[b>>2];l=O(j+j);m=L[b+8>>2];s=L[b+4>>2];n=L[b+12>>2];o=O(n+n);p=L[a+8>>2];q=O(O(O(l*m)-O(s*o))*p);L[g+36>>2]=r-q;m=O(p*O(O(m*o)+O(l*s)));L[g+32>>2]=i-m;L[g+24>>2]=q+r;L[g+20>>2]=i+m;i=O(p*O(O(j*l)+O(O(n*o)+O(-1))));L[g+28>>2]=k-i;L[g+16>>2]=k+i;i=L[a+4>>2];L[g+40>>2]=i;b=0;H[g+12>>2]=0;a:{if(!WV(c,d,g+16|0,g+28|0,i,g+12|0)){break a}i=L[g+12>>2];if(i>2];k=L[d>>2];o=L[c+4>>2];j=L[d+4>>2];n=L[c+8>>2];l=L[d+8>>2];H[h+44>>2]=0;H[h+48>>2]=0;H[h+8>>2]=-1;L[h+40>>2]=i;n=O(n+O(i*l));L[h+24>>2]=n;o=O(o+O(i*j));L[h+20>>2]=o;p=O(e+O(i*k));L[h+16>>2]=p;b:{if(I[f|0]&2){e=O(0);if(i==O(0)){L[h+36>>2]=-l;L[h+32>>2]=-j;L[h+28>>2]=-k;b=3;break b}l=L[g+24>>2];i=O(L[g+36>>2]-l);r=L[g+16>>2];k=O(L[g+28>>2]-r);m=L[g+20>>2];j=O(L[g+32>>2]-m);s=O(O(O(n-l)*i)+O(O(O(p-r)*k)+O(j*O(o-m))));c:{if(s<=O(0)){break c}e=O(1);q=O(O(i*i)+O(O(k*k)+O(j*j)));if(q<=s){break c}e=O(s/q)}i=O(n-O(l+O(i*e)));L[h+36>>2]=i;j=O(o-O(m+O(j*e)));L[h+32>>2]=j;e=O(p-O(r+O(k*e)));L[h+28>>2]=e;b=3;k=O(W(O(O(i*i)+O(O(e*e)+O(j*j)))));if(!(k>O(0))){break b}q=i;i=O(O(1)/k);L[h+36>>2]=q*i;L[h+32>>2]=j*i;L[h+28>>2]=e*i;break b}H[h+28>>2]=0;H[h+32>>2]=0;H[h+36>>2]=0;b=1}G[h+12>>1]=b;b=1}Oa=g+48|0;return b|0}function jO(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=O(0),n=0,o=0,p=0,q=0,r=0;f=H[H[a+2168>>2]+44>>2]+H[d>>2]|0;n=J[d+10>>1];o=f+(n>>>1&32752)|0;p=n&31;j=J[d+6>>1];if(!(!(p&e)|!j)){e=H[a+2368>>2];h=H[e+24>>2]&2147483647;k=H[e+20>>2];while(1){g=N(i,40)+o|0;e=J[g+28>>1];q=H[g+36>>2];l=H[g+32>>2];r=l>>>5|0;e=h>>>0<=r>>>0|!(H[k+(r<<2)>>2]>>>l&1)?e:e|1;l=q>>>5|0;G[g+28>>1]=l>>>0>=h>>>0|!(H[k+(l<<2)>>2]>>>q&1)?e:e|2;i=i+1|0;if((j|0)!=(i|0)){continue}break}}a=H[a+2372>>2];H[b>>2]=H[H[c+16>>2]+24>>2];H[b+4>>2]=H[H[c+16>>2]+28>>2];g=H[c+16>>2];h=H[g+16>>2];k=h>>>5|0;i=H[a+24>>2]&2147483647;a:{if(k>>>0>>0){e=1;if(H[H[a+20>>2]+(k<<2)>>2]>>>h&1){break a}}e=0}g=H[g+20>>2];h=g>>>5|0;e=h>>>0>=i>>>0|!(H[H[a+20>>2]+(h<<2)>>2]>>>g&1)?e:e|2;H[b+20>>2]=j;H[b+16>>2]=o;G[b+14>>1]=e;e=J[d+8>>1];if(!e){H[b+8>>2]=0;G[b+12>>1]=0;return}H[b+8>>2]=f+4;if(p&8){j=H[c+12>>2];a=H[H[c+8>>2]+44>>2];b:{if(I[a+9|0]){L[f+12>>2]=L[a+80>>2];L[f+16>>2]=L[a+84>>2];L[f+20>>2]=L[a+88>>2];L[f+36>>2]=L[a+96>>2];L[f+40>>2]=L[a+100>>2];m=L[a+104>>2];break b}H[f+36>>2]=0;H[f+40>>2]=0;H[f+20>>2]=0;H[f+12>>2]=0;H[f+16>>2]=0;m=O(0)}L[f+44>>2]=m;a=H[j+44>>2];c:{if(I[a+9|0]){L[f+24>>2]=L[a+80>>2];L[f+28>>2]=L[a+84>>2];L[f+32>>2]=L[a+88>>2];L[f+48>>2]=L[a+96>>2];L[f+52>>2]=L[a+100>>2];m=L[a+104>>2];break c}H[f+48>>2]=0;H[f+52>>2]=0;H[f+32>>2]=0;H[f+24>>2]=0;H[f+28>>2]=0;m=O(0)}L[f+56>>2]=m;G[d+10>>1]=n&65527}G[b+12>>1]=e-4}function vw(a,b,c){var d=O(0),e=O(0),f=O(0),g=O(0),h=O(0),i=0,j=O(0),k=O(0),l=O(0),m=O(0),n=0,o=O(0),p=O(0),q=O(0),r=0,s=O(0),t=0,u=O(0),v=0,w=0,x=0,y=0;r=H[a+336>>2];if(r){d=L[a+352>>2];s=d>2];w=H[a+332>>2];t=H[c+16>>2];x=H[c+12>>2];y=H[c>>2];while(1){i=n<<5;a=H[(i+w|0)+16>>2];c=i+y|0;d=L[c+8>>2];e=L[c>>2];g=L[c+4>>2];f=O(W(O(O(d*d)+O(O(e*e)+O(g*g)))));if(f>O(0)){h=O(O(1)/f);d=O(d*h);g=O(g*h);e=O(e*h)}h=f>2]);k=O(-L[b>>2]);j=O(-L[b+8>>2])}f=O(O(1)/L[a+124>>2]);o=O(j*f);L[c+8>>2]=o;l=O(l*f);L[c+4>>2]=l;k=O(k*f);L[c>>2]=k;a=N(n,112)+v|0;j=L[a+104>>2];p=L[a+80>>2];m=L[a+92>>2];e=O(h*e);g=O(h*g);h=O(O(O(e*L[a+76>>2])+O(g*L[a+88>>2]))+O(d*L[a+100>>2]));q=O(O(O(e*L[a+72>>2])+O(g*L[a+84>>2]))+O(d*L[a+96>>2]));u=O(O(e*h)-O(q*g));L[c+24>>2]=u;j=O(O(O(e*p)+O(g*m))+O(d*j));p=O(O(d*q)-O(j*e));L[c+20>>2]=p;g=O(O(g*j)-O(h*d));L[c+16>>2]=g;if(t){i=i+t|0;d=L[i+24>>2];h=L[i+20>>2];e=L[i+16>>2];j=L[i+8>>2];m=L[i+4>>2];L[c>>2]=k-O(f*L[i>>2]);L[c+4>>2]=l-O(f*m);L[c+8>>2]=o-O(f*j);k=L[a+104>>2];l=L[a+92>>2];o=L[a+80>>2];j=L[a+100>>2];m=L[a+88>>2];q=L[a+76>>2];f=O(-h);L[c+16>>2]=g+O(O(O(L[a+84>>2]*f)-O(e*L[a+72>>2]))-O(d*L[a+96>>2]));L[c+20>>2]=p+O(O(O(m*f)-O(e*q))-O(d*j));L[c+24>>2]=u+O(O(O(l*f)-O(e*o))-O(d*k))}n=n+1|0;if((r|0)!=(n|0)){continue}break}}}function V4(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=0,m=O(0),n=O(0);d=Oa-80|0;Oa=d;f=L[b>>2];a:{if((H[b>>2]&2139095040)==2139095040){break a}k=L[b+4>>2];if((H[b+4>>2]&2139095040)==2139095040){break a}j=L[b+8>>2];if(!(O(P(O(O(W(O(O(j*j)+O(O(f*f)+O(k*k)))))+O(-1))))>2]&2139095040)==2139095040){break a}e=Oa-48|0;Oa=e;k=O(1);g=L[b+8>>2];h=L[b>>2];i=L[b+4>>2];f=O(O(1)/O(W(O(O(g*g)+O(O(h*h)+O(i*i))))));j=O(L[b+12>>2]*f);L[e+44>>2]=j;g=O(g*f);L[e+40>>2]=g;i=O(i*f);L[e+36>>2]=i;f=O(h*f);L[e+32>>2]=f;b:{if((((f==O(0))+(i==O(0))|0)+(g==O(0))|0)==2){h=O(0);if(f>O(0)){break b}m=O(1);if(f>2]=0;H[e>>2]=1065353216;H[e+4>>2]=0;C5(e+16|0,e,e+32|0);k=L[e+28>>2];m=L[e+24>>2];n=L[e+16>>2];j=L[e+44>>2];g=L[e+40>>2];i=L[e+36>>2];f=L[e+32>>2];h=L[e+20>>2]}L[d+52>>2]=k;L[d+48>>2]=m;L[d+44>>2]=h;L[d+40>>2]=n;L[d+64>>2]=j*O(-g);L[d+60>>2]=j*O(-i);L[d+56>>2]=j*O(-f);Oa=e+48|0;H[d+32>>2]=1;H[d+24>>2]=0;H[d+16>>2]=0;H[d+20>>2]=0;H[d+8>>2]=0;H[d+12>>2]=1065353216;H[d>>2]=0;H[d+4>>2]=0;F[d+72|0]=11;H[d+76>>2]=c;b=Ra[H[H[a>>2]+96>>2]](a,d+32|0,d+76|0,1,1,d+72|0)|0;if(!b){break a}Ra[H[H[b>>2]+76>>2]](b,d);l=Ra[H[H[a>>2]+84>>2]](a,d+40|0)|0;if(l){Ra[H[H[l>>2]+84>>2]](l,b)|0}Ra[H[H[b>>2]>>2]](b)}Oa=d+80|0;return l|0}function fM(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=O(0),n=O(0),o=O(0),p=O(0),q=0;b=H[a+28>>2];f=H[H[b>>2]+11968>>2];if(f){g=H[b- -64>>2];while(1){b=yq(H[H[a+48>>2]+620>>2],72);h=H[a+32>>2];i=H[a+36>>2];e=H[a+28>>2];m=L[e+92>>2];n=L[a+44>>2];o=L[e+96>>2];c=H[a+48>>2];p=L[c+56>>2];e=H[e+80>>2];j=H[a+40>>2];k=H[c+632>>2];l=H[c+636>>2];H[b+24>>2]=0;H[b+16>>2]=0;H[b+20>>2]=0;H[b+8>>2]=k;H[b+12>>2]=l;H[b+68>>2]=j;H[b+64>>2]=c;H[b+60>>2]=e;L[b+56>>2]=p;L[b+52>>2]=o;L[b+48>>2]=n;L[b+44>>2]=m;H[b+40>>2]=i;c=f-d|0;H[b+36>>2]=c>>>0<64?c:64;H[b+32>>2]=g+(d<<3);H[b+28>>2]=h;H[b>>2]=118188;c=H[a+20>>2];H[b+20>>2]=c;H[b+24>>2]=1;if(c){Ra[H[H[c>>2]+16>>2]](c);H[b+16>>2]=H[H[b+20>>2]+16>>2];c=H[b>>2]}else{c=118188}Ra[H[c+20>>2]](b);d=d- -64|0;if(f>>>0>d>>>0){continue}break}b=H[a+28>>2]}f=H[b+8>>2]&2147483647;if(f){d=0;while(1){b=yq(H[H[a+48>>2]+620>>2],64);e=H[a+40>>2];g=H[e+11936>>2];c=H[a+48>>2];h=H[c+496>>2];i=H[c+484>>2];j=H[a+36>>2];k=H[a+28>>2];l=H[c+632>>2];q=H[c+636>>2];H[b+24>>2]=0;H[b+16>>2]=0;H[b+20>>2]=0;H[b+8>>2]=l;H[b+12>>2]=q;H[b+56>>2]=k;H[b+52>>2]=j;H[b+48>>2]=c;H[b+44>>2]=e;H[b+40>>2]=i;H[b+36>>2]=h;c=f-d|0;H[b+32>>2]=c>>>0<64?c:64;H[b>>2]=118244;H[b+28>>2]=g+(d<<2);c=H[a+20>>2];H[b+20>>2]=c;H[b+24>>2]=1;if(c){Ra[H[H[c>>2]+16>>2]](c);H[b+16>>2]=H[H[b+20>>2]+16>>2];c=H[b>>2]}else{c=118244}Ra[H[c+20>>2]](b);d=d- -64|0;if(f>>>0>d>>>0){continue}break}}}function hz(a,b,c,d,e,f,g,h,i,j,k){var l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=O(0);H[j+72>>2]=h;r=L[e>>2];m=O(r+r);l=L[e+8>>2];s=O(m*l);u=L[e+4>>2];t=O(u+u);n=L[e+12>>2];A=O(t*n);z=O(s-A);o=L[d+8>>2];o=o==O(0)?O(0):O(W(o));w=O(O(1)-O(r*m));B=O(u*t);r=O(w-B);p=L[d>>2];p=p==O(0)?O(0):O(W(p));v=O(t*l);x=O(m*n);t=O(v+x);q=L[d+4>>2];q=q==O(0)?O(0):O(W(q));L[j- -64>>2]=O(O(o*r)*r)+O(O(O(p*z)*z)+O(t*O(t*q)));C=O(m*u);y=n;n=O(l+l);D=O(y*n);m=O(C+D);u=O(p*m);E=O(l*n);n=O(w-E);w=O(q*n);v=O(v-x);x=O(o*v);L[j+48>>2]=O(x*v)+O(O(u*m)+O(n*w));y=q;q=O(C-D);l=O(y*q);s=O(s+A);o=O(o*s);y=O(o*s);s=O(O(O(1)-B)-E);p=O(p*s);L[j+32>>2]=y+O(O(p*s)+O(q*l));m=O(O(o*v)+O(O(p*m)+O(n*l)));L[j+44>>2]=m;L[j+36>>2]=m;l=O(O(o*r)+O(O(p*z)+O(t*l)));L[j+56>>2]=l;L[j+40>>2]=l;l=O(O(x*r)+O(O(u*z)+O(t*w)));L[j+60>>2]=l;L[j+52>>2]=l;L[j>>2]=L[a>>2];L[j+4>>2]=L[a+4>>2];L[j+8>>2]=L[a+8>>2];L[j+16>>2]=L[b>>2];L[j+20>>2]=L[b+4>>2];L[j+24>>2]=L[b+8>>2];a:{if(!k){break a}if(k&1){H[j>>2]=0}if(k&2){H[j+4>>2]=0}if(k&4){H[j+8>>2]=0}if(k&8){H[j+16>>2]=0}if(k&16){H[j+20>>2]=0}if(!(k&32)){break a}H[j+24>>2]=0}L[j+76>>2]=g;L[j+68>>2]=f;L[j+12>>2]=c;L[j+80>>2]=L[e>>2];L[j+84>>2]=L[e+4>>2];L[j+88>>2]=L[e+8>>2];L[j+92>>2]=L[e+12>>2];L[j+96>>2]=L[e+16>>2];L[j+100>>2]=L[e+20>>2];c=L[e+24>>2];G[j+108>>1]=k;L[j+104>>2]=c;L[j+28>>2]=i}function Oy(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,o=0,p=0,q=0,r=0,s=0,t=0,u=0;e=H[H[a+32>>2]>>2];c=e+12168|0;H[c>>2]=H[c>>2]+H[e+12092>>2];p=H[e+12004>>2];if(p){t=H[e+12e3>>2];while(1){c=N(o,36)+t|0;b=H[c+12>>2];H[b>>2]=H[c+16>>2];H[b+4>>2]=H[c+20>>2];q=I[b+12|0];F[b+12|0]=I[c+24|0];F[b+13|0]=I[c+25|0];F[b+14|0]=I[c+26|0];r=H[b+8>>2];H[b+8>>2]=H[c+28>>2];f=J[c+4>>1];a:{if(f>>>0<2){break a}b=1;j=f-1|0;m=j&1;d=H[c+8>>2];g=H[e+12012>>2];h=H[c>>2];if((f|0)!=2){j=j&-2;f=0;while(1){i=g+(b+h<<2)|0;n=H[H[i>>2]+12>>2];H[n+36>>2]=H[d+20>>2];F[n+42|0]=I[d+26|0];i=H[H[i+4>>2]+12>>2];H[i+36>>2]=H[d+20>>2];F[i+42|0]=I[d+26|0];b=b+2|0;f=f+2|0;if((j|0)!=(f|0)){continue}break}}if(!m){break a}b=H[H[g+(b+h<<2)>>2]+12>>2];H[b+36>>2]=H[d+20>>2];F[b+42|0]=I[d+26|0]}if(!(!r|!q)){j=H[c+32>>2];m=H[a+96>>2];i=H[m+32>>2];n=H[e+12012>>2];f=H[c>>2];c=0;b=0;d=0;while(1){g=J[j+(c<<1)>>1];while(1){h=H[H[H[n+(f<<2)>>2]+12>>2]+68>>2];s=i+(H[m+((h&7)<<2)>>2]+(h>>>3|0)<<4)|0;h=I[s+12|0];b:{while(1){k=d>>>0>>0;if(!(h?k:1)){break b}u=d;d=g-d|0;k=(k?h:0)&255;l=k-b|0;l=d>>>0>>0?d:l;d=u+l|0;b=b+l|0;if((k|0)!=(b|0)){continue}break}f=f+1|0;b=0;continue}break}g=H[s+8>>2];if(g){L[g+(b<<2)>>2]=L[(c<<2)+r>>2]}c=c+1|0;if((q|0)!=(c|0)){continue}break}}o=o+1|0;if((p|0)!=(o|0)){continue}break}}H[e+12004>>2]=0;Qx(H[e+11848>>2],e+11836|0);a=H[H[a+28>>2]+336>>2];H[e>>2]=H[a>>2];H[a>>2]=e}function D5(a,b){var c=O(0),d=O(0),e=O(0),f=O(0),g=O(0),h=0,i=O(0),j=O(0),k=0,l=0,m=0,n=O(0),o=0,p=O(0),q=0;c=L[b+20>>2];d=L[b+16>>2];f=L[b+32>>2];g=L[b+28>>2];i=L[b+12>>2];j=L[b+24>>2];e=L[b+8>>2];n=O(e*e);e=L[b>>2];p=O(e*e);e=L[b+4>>2];e=O(n+O(p+O(e*e)));L[a>>2]=e;f=O(O(f*f)+O(O(j*j)+O(g*g)));L[a+8>>2]=f;c=O(O(c*c)+O(O(i*i)+O(d*d)));L[a+4>>2]=c;l=c>e;h=!l;o=f>L[(h<<2)+a>>2]?2:h;h=L[(l<<2)+a>>2]>2];m=h?o:l;k=N(m,12)+b|0;m=(m<<2)+a|0;i=L[m>>2];c=O(O(1)/O(W(i)));d=O(L[k>>2]*c);L[k>>2]=d;f=O(c*L[k+4>>2]);L[k+4>>2]=f;g=O(c*L[k+8>>2]);L[k+8>>2]=g;q=m;p=O(i*c);m=h?l:o;h=N(m,12)+b|0;j=L[h+8>>2];e=L[h>>2];n=L[h+4>>2];c=O(O(g*j)+O(O(d*e)+O(f*n)));l=(l?2:3)-o|0;b=N(l,12)+b|0;i=O(O(g*L[b+8>>2])+O(O(d*L[b>>2])+O(f*L[b+4>>2])));L[q>>2]=p+O(O(P(c))+O(P(i)));L[h+8>>2]=j-O(g*c);L[h+4>>2]=n-O(f*c);L[h>>2]=e-O(d*c);c=L[k+8>>2];d=L[k+4>>2];g=O(L[b>>2]-O(i*L[k>>2]));L[b>>2]=g;j=O(L[b+4>>2]-O(i*d));L[b+4>>2]=j;i=O(L[b+8>>2]-O(i*c));L[b+8>>2]=i;c=L[h+8>>2];d=L[h>>2];f=L[h+4>>2];e=O(W(O(O(c*c)+O(O(d*d)+O(f*f)))));if(e>O(0)){g=O(O(1)/e);d=O(d*g);L[h>>2]=d;f=O(f*g);L[h+4>>2]=f;c=O(c*g);L[h+8>>2]=c;i=L[b+8>>2];j=L[b+4>>2];g=L[b>>2]}n=e;e=O(O(c*i)+O(O(d*g)+O(f*j)));L[(m<<2)+a>>2]=n+O(P(e));d=O(g-O(d*e));L[b>>2]=d;f=O(j-O(f*e));L[b+4>>2]=f;c=O(i-O(c*e));L[b+8>>2]=c;g=O(W(O(O(c*c)+O(O(d*d)+O(f*f)))));if(g>O(0)){e=d;d=O(O(1)/g);L[b>>2]=e*d;L[b+4>>2]=f*d;L[b+8>>2]=c*d}L[(l<<2)+a>>2]=g}function B6(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;f=Oa+-64|0;Oa=f;a:{if(t6(b,96944,0)){H[c>>2]=0;d=1;break a}b:{if(I[a+8|0]&24){e=1}else{if(!b){break b}e=v6(b,96676);if(!e){break b}e=(I[e+8|0]&24)!=0}g=t6(a,b,e)}if(g){d=1;a=H[c>>2];if(!a){break a}H[c>>2]=H[a>>2];break a}c:{if(!b){break c}e=v6(b,96724);if(!e){break a}b=H[c>>2];if(b){H[c>>2]=H[b>>2]}g=H[e+8>>2];b=H[a+8>>2];if(g&(b^-1)&7|b&(g^-1)&96){break a}d=1;if(t6(H[a+12>>2],H[e+12>>2],0)){break a}if(t6(H[a+12>>2],96932,0)){a=H[e+12>>2];if(!a){break a}d=!v6(a,96776);break a}b=H[a+12>>2];if(!b){break c}d=0;b=v6(b,96724);if(b){if(!(F[a+8|0]&1)){break a}a=b;c=H[e+12>>2];d:{e:{while(1){b=0;if(!c){break d}c=v6(c,96724);if(!c|H[c+8>>2]&(H[a+8>>2]^-1)){break e}b=1;if(t6(H[a+12>>2],H[c+12>>2],0)){break d}if(!(F[a+8|0]&1)){break e}b=H[a+12>>2];if(!b){break e}b=v6(b,96724);if(b){c=H[c+12>>2];a=b;continue}break}a=H[a+12>>2];if(!a){break e}a=v6(a,96836);if(!a){break e}d=C6(a,H[c+12>>2])}b=d}d=b;break a}b=H[a+12>>2];if(!b){break a}b=v6(b,96836);if(b){if(!(F[a+8|0]&1)){break a}d=C6(b,H[e+12>>2]);break a}a=H[a+12>>2];if(!a){break a}b=v6(a,96628);if(!b){break a}a=H[e+12>>2];if(!a){break a}a=v6(a,96628);if(!a){break a}d=f+8|0;S6(d|4,0,52);H[f+56>>2]=1;H[f+20>>2]=-1;H[f+16>>2]=b;H[f+8>>2]=a;Ra[H[H[a>>2]+28>>2]](a,d,H[c>>2],1);a=H[f+32>>2];if(!(!H[c>>2]|(a|0)!=1)){H[c>>2]=H[f+24>>2]}d=(a|0)==1;break a}d=0}Oa=f- -64|0;return d|0}function Xs(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;g=Oa-32|0;Oa=g;c=I[b|0];h=H[a+116>>2]-5|0;a:{if(!(!(c&4)|h>>>0>1)){o5(H[33808],4,9142,545,64296,0);break a}if((c&5)==5){o5(H[33808],4,9142,552,57159,0);break a}d=I[(I[a+36|0]&64?H[a+40>>2]+52|0:a+112|0)|0];b:{e=H[a+20>>2];if(!e){break b}f=J[e+4>>1];if((f|0)==5){Ra[H[H[e>>2]+216>>2]](g+8|0,e);i=F[g+8|0]&1}if(i|(f|0)==6|(!(c&1)|d&1)){break b}if(H[a+116>>2]!=1&h>>>0>=2){break b}o5(H[33808],4,9142,576,65575,0);break a}c=a+32|0;h=d&2;b=I[b|0];e=b&2;c:{d:{e:{f:{f=H[a+36>>2];d=f>>>30|0;switch(d-2|0){case 0:break f;case 1:break d;default:break e}}if(I[H[c>>2]+4785|0]){break d}}f=I[a+112|0];F[a+112|0]=b;b=H[c-12>>2];if(!b|(d|0)==1){break c}F[g+16|0]=f;H[g+24>>2]=64;UI(b- -64|0,a+48|0,g+24|0,g+16|0,0);break c}d=H[a+40>>2];if(!d){d=Tt(H[a+32>>2],f>>>24&15);H[a+40>>2]=d}F[d+52|0]=b;$t(H[a+32>>2],c);H[a+36>>2]=H[a+36>>2]|64}if(!h^(e|0)!=0){break a}b=H[a+20>>2];if(!b){break a}c=vg(b);b=sg(H[a+20>>2]);g:{if(!c){break g}c=c+5584|0;if(e){e=H[a+20>>2];d=JT(b,a)<<2;f=c;c=J[e+4>>1];c=ID(f,H[d+(J[b+4>>1]==1?b:H[b>>2])>>2]+32|0,e+H[((c<<2)+73232|0)+72>>2]|0,(c&65527)==5,H[b+16>>2],0,0);H[d+(J[b+12>>1]==1?b+8|0:H[b+8>>2])>>2]=c;break g}e=JT(b,a)<<2;f=c;c=b+8|0;KD(f,H[b+16>>2],H[e+(J[b+12>>1]==1?c:H[b+8>>2])>>2]);H[e+(J[b+12>>1]==1?c:H[b+8>>2])>>2]=-1}if(!H[b+20>>2]){break a}o5(H[33808],8,9142,602,63496,0);fB(H[b+20>>2],H[a+20>>2])}Oa=g+32|0}function FE(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;f=H[a+448>>2];c=H[f>>2];d=b<<1;e=d|1;b=H[f+20>>2];f=(e>>>0)/(b>>>0)|0;f=H[H[c+(f<<2)>>2]+(e-N(b,f)<<2)>>2];e=(d>>>0)/(b>>>0)|0;h=H[H[c+(e<<2)>>2]+(d-N(b,e)<<2)>>2];b=h>>>7|0;a:{if((b|0)==33554431){break a}c=H[a+16>>2];d=H[a+192>>2]+(b<<2)|0;if((f^H[d>>2])>>>0<=127){H[d>>2]=-128}g=c+N(b,24)|0;c=I[g+4|0];if(c&16){break a}e=b+32>>>5|0;b:{if(e>>>0<=(H[a+312>>2]&2147483647)>>>0){d=H[a+308>>2];break b}c=H[33808]+12|0;d=Ra[H[H[c>>2]+8>>2]](c,e<<2,20591,14969,438)|0;c=H[a+308>>2];c:{if(!c){break c}R6(d,c,H[a+312>>2]<<2);if(H[a+312>>2]<0){break c}c=H[a+308>>2];if(!c){break c}i=H[33808]+12|0;Ra[H[H[i>>2]+12>>2]](i,c)}c=H[a+312>>2];S6((c<<2)+d|0,0,e-c<<2);H[a+312>>2]=e;H[a+308>>2]=d;c=I[g+4|0]}d=(h>>>10&4194300)+d|0;H[d>>2]=H[d>>2]|1<>>7|0;d:{if((d|0)==33554431){break d}c=H[a+16>>2];e=H[a+192>>2]+(d<<2)|0;if((b|0)==(H[e>>2]>>>7|0)){H[e>>2]=-128}g=c+N(d,24)|0;b=I[g+4|0];if(b&16){break d}e=d+32>>>5|0;e:{if(e>>>0<=(H[a+312>>2]&2147483647)>>>0){c=H[a+308>>2];break e}b=H[33808]+12|0;c=Ra[H[H[b>>2]+8>>2]](b,e<<2,20591,14969,438)|0;b=H[a+308>>2];f:{if(!b){break f}R6(c,b,H[a+312>>2]<<2);if(H[a+312>>2]<0){break f}b=H[a+308>>2];if(!b){break f}h=H[33808]+12|0;Ra[H[H[h>>2]+12>>2]](h,b)}b=H[a+312>>2];S6((b<<2)+c|0,0,e-b<<2);H[a+312>>2]=e;H[a+308>>2]=c;b=I[g+4|0]}a=(f>>>10&4194300)+c|0;H[a>>2]=H[a>>2]|1<>2];if(d>>>0>=b>>>0){break a}c=H[a+20>>2];f=(((c+b|0)-1>>>0)/(c>>>0)|0)-H[a+4>>2]|0;H[a+16>>2]=d+N(c,f);if(!f){break a}while(1){c=c<<2;if(c){d=H[33808];c=Ra[H[H[d+12>>2]+8>>2]](d+12|0,c,20591,13653,84)|0}else{c=0}H[h+12>>2]=c;d=H[a+4>>2];b:{if(d>>>0>=(H[a+8>>2]&2147483647)>>>0){c=0;d=H[a+8>>2]&2147483647;i=d?d<<1:1;c:{if(!i){break c}d=i<<2;if(!d){break c}c=H[33808];e=c+12|0;c=(m=e,n=d,o=Ra[H[H[c>>2]+20>>2]](c)|0?48228:55639,p=13582,q=553,l=H[H[e>>2]+8>>2],Ra[l](m|0,n|0,o|0,p|0,q|0)|0)}e=H[a+4>>2];j=(e<<2)+c|0;if((e|0)>0){g=H[a>>2];d=c;while(1){H[d>>2]=H[g>>2];g=g+4|0;d=d+4|0;if(j>>>0>d>>>0){continue}break}}H[j>>2]=H[h+12>>2];d:{if(H[a+8>>2]<0){break d}d=H[a>>2];if(!d){break d}e=H[33808]+12|0;Ra[H[H[e>>2]+12>>2]](e,d);e=H[a+4>>2]}H[a+8>>2]=i;H[a>>2]=c;H[a+4>>2]=e+1;break b}H[H[a>>2]+(d<<2)>>2]=c;H[a+4>>2]=d+1}k=k+1|0;if((f|0)==(k|0)){break a}c=H[a+20>>2];continue}}c=H[a+12>>2];e:{if(c>>>0>=b>>>0){break e}d=H[a>>2];f=c^-1;if(b-c&1){e=H[a+20>>2];g=(c>>>0)/(e>>>0)|0;H[H[d+(g<<2)>>2]+(c-N(e,g)<<2)>>2]=-128;c=c+1|0}if((f|0)==(0-b|0)){break e}while(1){f=H[a+20>>2];e=(c>>>0)/(f>>>0)|0;H[H[d+(e<<2)>>2]+(c-N(e,f)<<2)>>2]=-128;f=c+1|0;e=H[a+20>>2];g=(f>>>0)/(e>>>0)|0;H[H[d+(g<<2)>>2]+(f-N(e,g)<<2)>>2]=-128;c=c+2|0;if((c|0)!=(b|0)){continue}break}}H[a+12>>2]=b;Oa=h+16|0}function St(a){var b=0,c=0;c=H[a+268>>2];a:{if(!(c&4194304)){L[a+236>>2]=L[a+96>>2];b=H[a+104>>2];H[a+240>>2]=H[a+100>>2];H[a+244>>2]=b;break a}DF(a+16|0,a+236|0);c=c&-4194305}b:{if(!(c&8388608)){L[a+248>>2]=L[a+112>>2];b=H[a+120>>2];H[a+252>>2]=H[a+116>>2];H[a+256>>2]=b;break b}EF(a+16|0,a+248|0);c=c&-8388609}if(!(!(c&32768)|!(F[a+60|0]&1))){b=H[a+8>>2];if(!b){b=Tt(H[a>>2],I[a+7|0]&15);H[a+8>>2]=b}$F(a+16|0,H[H[a>>2]+2428>>2],b+192|0,L[a+260>>2]);c=c&-32769}if(c&402653184){JF(a+16|0,(c&134217728)>>>27|0,(c&268435456)>>>28|0);c=c&-402653185}if(c&196608){b=H[a+8>>2];if(!b){b=Tt(H[a>>2],I[a+7|0]&15);H[a+8>>2]=b}GF(a+16|0,H[H[a>>2]+2428>>2],b+220|0,b+232|0);H[b+236>>2]=0;H[b+240>>2]=0;H[b+228>>2]=0;H[b+232>>2]=0;H[b+220>>2]=0;H[b+224>>2]=0;c=c&-196609}if(c&1610612736){LF(a+16|0,(c&536870912)>>>29|0,(c&1073741824)>>>30|0);c=c&-1610612737}if(c&786432){b=H[a+8>>2];if(!b){b=Tt(H[a>>2],I[a+7|0]&15);H[a+8>>2]=b}KF(a+16|0,H[H[a>>2]+2428>>2],b+244|0,b+256|0);H[b+260>>2]=0;H[b+264>>2]=0;H[b+252>>2]=0;H[b+256>>2]=0;H[b+244>>2]=0;H[b+248>>2]=0;c=c&-786433}if(!(c&16777216)){L[a+260>>2]=L[a+172>>2];H[a+268>>2]=c;return}if(!(c&100663296)){WF(a+16|0,L[a+260>>2],0);H[a+268>>2]=c&-16777217;return}c:{if(!(c&67108864)){break c}b=H[a+8>>2];if(!b){b=Tt(H[a>>2],I[a+7|0]&15);H[a+8>>2]=b}if((I[a+60|0]^I[b+268|0])&1?c&16384:0){break c}WF(a+16|0,L[a+260>>2],1);c=c&-83886081}H[a+268>>2]=c}function YT(a,b){var c=0,d=O(0),e=O(0),f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=0,m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0);c=Oa-128|0;Oa=c;j=L[b+20>>2];h=L[b+8>>2];i=O(j-h);p=L[b+12>>2];k=L[b>>2];f=O(p-k);o=L[b+16>>2];q=L[b+4>>2];g=O(o-q);e=O(W(O(O(i*i)+O(O(f*f)+O(g*g)))));if(e>O(0)){e=O(O(1)/e);i=O(i*e);g=O(g*e);f=O(f*e)}l=O(P(f))O(0)){d=O(O(1)/d);e=O(e*d);n=O(n*d);m=O(m*d)}d=L[b+24>>2];H[a+32>>2]=0;H[a>>2]=1;L[c+120>>2]=h;L[c+116>>2]=q;L[c+112>>2]=k;l=WT(a,c+112|0);L[c+96>>2]=L[b+12>>2];L[c+100>>2]=L[b+16>>2];L[c+104>>2]=L[b+20>>2];l=WT(l,c+96|0);H[a+32>>2]=0;H[a>>2]=4;L[c+80>>2]=L[b+12>>2];L[c+84>>2]=L[b+16>>2];L[c+88>>2]=L[b+20>>2];a=WT(l,c+80|0);h=O(d*O(.25));k=O(e*h);q=O(j-O(i*d));t=O(k+O(k+q));L[c+72>>2]=t;j=O(n*h);u=O(o-O(g*d));v=O(j+O(j+u));L[c+68>>2]=v;o=O(m*h);p=O(p-O(f*d));w=O(o+O(o+p));L[c+64>>2]=w;a=WT(a,c- -64|0);k=O(q-k);d=O(h*O(1.7320507764816284));h=O(O(O(f*n)+O(m*r))*d);L[c+56>>2]=k-h;j=O(u-j);f=O(O(O(i*m)-O(e*f))*d);L[c+52>>2]=j-f;i=O(p-o);g=O(O(O(g*e)+O(n*s))*d);L[c+48>>2]=i-g;a=WT(a,c+48|0);L[c+40>>2]=k+h;L[c+36>>2]=j+f;L[c+32>>2]=i+g;a=WT(a,c+32|0);L[c+16>>2]=L[b+12>>2];L[c+20>>2]=L[b+16>>2];L[c+24>>2]=L[b+20>>2];a=WT(a,c+16|0);L[c+8>>2]=t;L[c+4>>2]=v;L[c>>2]=w;a=WT(a,c);Oa=c+128|0;return a}function op(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;g=Oa-32|0;Oa=g;h=Ra[H[H[b>>2]+76>>2]](b)|0;a:{if(!d){break a}if(!(Ra[H[H[b>>2]+96>>2]](b)|0)){break a}Vf(Ra[H[H[b>>2]+96>>2]](b)|0,b,0)}l=h<<2;F[g+20|0]=l>>>0>1024;b:{if(l>>>0>=1025){e=G5(l,9281,1038);break b}e=g-(l+15&-16)|0;Oa=e}H[g+16>>2]=e;o=e,p=H[H[(Ra[H[H[b>>2]+100>>2]](b)|0)+84>>2]>>2],H[o>>2]=p;j=h-1|0;c:{d:{if(j){e=1;while(1){d=H[g+16>>2];f=H[d+(i<<2)>>2];k=H[f+356>>2];m=H[f+352>>2];e:{if(!(Ra[H[H[f>>2]+260>>2]](f)|0)){break e}k=k?m:0;H[d+(e<<2)>>2]=H[k>>2];d=1;e=e+1|0;if(Ra[H[H[f>>2]+260>>2]](f)>>>0<=1){break e}while(1){H[H[g+16>>2]+(e<<2)>>2]=H[k+(d<<2)>>2];e=e+1|0;d=d+1|0;if(Ra[H[H[f>>2]+260>>2]](f)>>>0>d>>>0){continue}break}}i=i+1|0;if((j|0)!=(i|0)){continue}break}f=a+16|0;if((h|0)<=0){break c}break d}f=a+16|0}k=a+5584|0;m=H[g+16>>2];i=0;while(1){d=h-1|0;e=H[m+(d<<2)>>2];n=I[e+108|0];j=Ra[H[H[e>>2]+252>>2]](e)|0;pg(e+12|0);lt(e+20|0,k,e);if(j){Pt(f,Ra[H[H[j>>2]+48>>2]](j)|0)}i=i|n;It(f,e+48|0,c,0);e=h>>>0>1;h=d;if(e){continue}break}if(!(i&32)){break c}c=H[(Ra[H[H[b>>2]+100>>2]](b)|0)+12>>2];if(c){c=H[c+48>>2]}else{c=-128}if(c>>>0>4294967167){break c}d=c>>>7|0;if(d>>>0>=H[a+4772>>2]<<5>>>0){break c}c=H[a+4768>>2]+(c>>>10&4194300)|0;h=H[c>>2];o=c,p=j7(-2,d)&h,H[o>>2]=p}Nt(f,Ra[H[H[b>>2]+100>>2]](b)|0);H[g+28>>2]=b;Pf(a+5944|0,g+28|0);if(l>>>0>=1025){H5(H[g+16>>2])}Oa=g+32|0}function E0(a,b,c){var d=O(0),e=O(0),f=O(0),g=0,h=O(0),i=0,j=O(0),k=0,l=0,m=O(0),n=0,o=O(0),p=O(0),q=0,r=O(0);b=H[b+36>>2];d=L[c+8>>2];f=L[c>>2];e=L[c+4>>2];h=O(O(L[b+40>>2]*d)+O(O(L[b+32>>2]*f)+O(e*L[b+36>>2])));i=H[a+24>>2];j=O(O(L[b+8>>2]*d)+O(O(L[b>>2]*f)+O(e*L[b+4>>2])));f=O(O(L[b+24>>2]*d)+O(O(L[b+16>>2]*f)+O(e*L[b+20>>2])));d=O(O(h*L[i+8>>2])+O(O(j*L[i>>2])+O(f*L[i+4>>2])));b=H[a+16>>2];a:{if(b>>>0<2){break a}c=1;g=b-1|0;l=g&1;b:{if((b|0)==2){g=0;break b}n=g&-2;g=0;while(1){b=N(c,20)+i|0;e=O(O(h*L[b+28>>2])+O(O(j*L[b+20>>2])+O(f*L[b+24>>2])));m=O(O(h*L[b+8>>2])+O(O(j*L[b>>2])+O(f*L[b+4>>2])));b=me;d=k?e:d;g=k?c+1|0:b?c:g;c=c+2|0;q=q+2|0;if((n|0)!=(q|0)){continue}break}}if(!l){break a}b=N(c,20)+i|0;e=O(O(h*L[b+8>>2])+O(O(j*L[b>>2])+O(f*L[b+4>>2])));b=e>2];c:{if(!n){break c}j=O(-j);h=O(-h);f=O(-f);c=H[a+36>>2];d=O(d*d);b=0;a=-1;while(1){l=c+(b<<1)|0;k=N(I[l|0],20)+i|0;l=N(I[l+1|0],20)+i|0;e=O(L[k+8>>2]+L[l+8>>2]);m=O(L[k>>2]+L[l>>2]);o=O(L[k+4>>2]+L[l+4>>2]);p=O(O(e*h)+O(O(m*j)+O(o*f)));r=O(p*p);e=O(O(e*e)+O(O(m*m)+O(o*o)));k=!(p>=O(0))|!(O(d*e)>2]*h)+O(O(L[b>>2]*j)+O(L[b+4>>2]*f)))>O(O(L[a+8>>2]*h)+O(O(L[a>>2]*j)+O(L[a+4>>2]*f)))?g:c}return g}function ws(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;c=H[b>>2];e=a+116|0;if((c|0)!=H[e>>2]){o5(H[33808],4,9142,258,58291,0);return}a:{b:{c:{switch(c-4|0){case 0:c=H[(F[a+36|0]&1?H[a+40>>2]- -64|0:e)+32>>2];if(!c){break a}c=c+8|0;break b;case 2:c=H[(F[a+36|0]&1?H[a+40>>2]- -64|0:e)+4>>2];if(!c){break a}c=c+8|0;break b;case 1:break c;default:break a}}c=H[(F[a+36|0]&1?H[a+40>>2]- -64|0:e)+36>>2];if(!c){break a}c=c+8|0}d=H[c+4>>2]-1|0;H[c+4>>2]=d;if(d){break a}Ra[H[H[c>>2]+8>>2]](c)}f=Oa-16|0;Oa=f;d:{e:{f:{g:{h:{i:{j:{c=a+32|0;switch((H[c+4>>2]>>>30|0)-2|0){case 0:break i;case 1:break f;default:break j}}d=H[c>>2];if(d){break h}d=c+16|0;FQ(d,b);break g}d=H[c>>2];if(I[d+4785|0]){break e}}g=d+16|0;h=H[H[g+976>>2]+1024>>2];d=c+16|0;Ra[H[H[h>>2]+48>>2]](h,d+32|0);FQ(d,b);b=H[H[g+976>>2]+1024>>2];Ra[H[H[b>>2]+44>>2]](b,d+32|0)}b=H[c-12>>2];if(!b){break d}F[f|0]=0;H[f+8>>2]=1;UI(b- -64|0,d,f+8|0,f,0);break d}d=H[c>>2]}$t(d,c);g=H[c+4>>2];H[c+4>>2]=g|1;d=H[c+8>>2];if(!d){d=Tt(H[c>>2],g>>>24&15);H[c+8>>2]=d}hU(d- -64|0,b)}Oa=f+16|0;k:{l:{m:{switch(H[a+116>>2]-4|0){case 0:b=H[(F[a+36|0]&1?H[a+40>>2]- -64|0:e)+32>>2];if(!b){break k}b=b+8|0;break l;case 2:b=H[(F[a+36|0]&1?H[a+40>>2]- -64|0:e)+4>>2];if(!b){break k}b=b+8|0;break l;case 1:break m;default:break k}}b=H[(F[a+36|0]&1?H[a+40>>2]- -64|0:e)+36>>2];if(!b){break k}b=b+8|0}H[b+4>>2]=H[b+4>>2]+1}us(a,63402)}function tC(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0,k=0;a:{if((b|0)==(d|0)){break a}b:{c:{if(!H[a+164>>2]){break c}k=H[a+140>>2];i=H[c>>2];h=i;g=h;j=H[c+4>>2];f=j;c=-1;h=c+g|0;g=(g^-1)+f|0;g=c>>>0>h>>>0?g+1|0:g;c=h;c=c^((g&4194303)<<10|c>>>22);h=c;f=g^g>>>22;g=f<<13|c>>>19;c=c<<13^-1;h=h+c|0;f=(g^-1)+f|0;f=c>>>0>h>>>0?f+1|0:f;c=h;c=g7(c^((f&255)<<24|c>>>8),f^f>>>8,9,0);h=Qa;f=h>>>15|0;c=c^((h&32767)<<17|c>>>15);g=c;f=f^h;h=f<<27|c>>>5;c=c<<27^-1;g=g+c|0;f=(h^-1)+f|0;f=c>>>0>g>>>0?f+1|0:f;c=g;c=H[((H[a+148>>2]-1&(c^((f&2147483647)<<1|c>>>31)))<<2)+k>>2];if((c|0)==-1){break c}h=H[a+136>>2];g=H[a+132>>2];while(1){f=g+N(c,20)|0;if(H[f>>2]==(i|0)&H[f+4>>2]==(j|0)){break b}c=H[(c<<2)+h>>2];if((c|0)!=-1){continue}break}}if(!e){break a}f=Oa-32|0;Oa=f;H[f+20>>2]=d;H[f+24>>2]=b;H[f+8>>2]=0;H[f+12>>2]=0;e=a+4|0;a=eC((N(H[e>>2],48)+e|0)+16|0,f+20|0,f+8|0);b=H[e+4>>2];d=a?H[e>>2]:b;d:{if((b|0)==(d|0)){if(!eC((e+N(b,48)|0)+16|0,f+20|0,f+8|0)){break d}}b=H[f+12>>2];c=dC((e+N(d,48)|0)+16|0,f+24|0,f+31|0);if(!I[f+31|0]){a=H[f+24>>2];H[c+4>>2]=0;H[c>>2]=a}H[c+4>>2]=b;VB(H[f+12>>2],H[f+20>>2],H[f+24>>2])}Oa=f+32|0;return}e=H[a+200>>2];a=g+N(c,20)|0;c=H[e+(H[a+16>>2]<<3)>>2];a=H[(H[c+8>>2]+N(H[a+12>>2],28)|0)+24>>2];f=a>>>1&15;if(!f){break a}e=H[c>>2]+(a>>>3&536870908)|0;c=0;while(1){a=e+(c<<2)|0;if(H[a>>2]!=(d|0)){c=c+1|0;if((f|0)!=(c|0)){continue}break a}break}H[a>>2]=b}}function Xu(a,b,c){var d=O(0),e=O(0),f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0);d=L[c+8>>2];g=L[c>>2];i=L[c+12>>2];k=L[c+4>>2];e=O(O(1)/L[b+124>>2]);L[a+40>>2]=e;L[a+20>>2]=e;L[a>>2]=e;f=L[b+120>>2];l=L[b+116>>2];t=L[b+112>>2];H[a+140>>2]=0;H[a+124>>2]=0;H[a+108>>2]=0;h=O(g+g);m=O(O(1)-O(g*h));j=O(k+k);u=O(k*j);g=O(m-u);x=O(h*d);A=O(j*i);e=O(x-A);q=O(e*O(0));n=O(j*d);v=O(h*i);j=O(n+v);r=O(j*O(0));o=O(O(1)/f);s=O(O(q+r)+O(g*o));f=O(g*O(0));p=r;r=O(O(1)/t);y=O(f+O(p+O(e*r)));p=q;q=O(O(1)/l);z=O(f+O(p+O(j*q)));f=O(O(g*s)+O(O(e*y)+O(j*z)));L[a+136>>2]=O(f+f)*O(.5);f=O(h*k);p=i;i=O(d+d);l=O(p*i);k=O(f+l);h=O(k*O(0));w=O(d*i);d=O(m-w);m=O(d*O(0));i=O(n-v);t=O(O(h+m)+O(i*o));n=O(i*O(0));m=O(n+O(m+O(k*r)));n=O(n+O(h+O(d*q)));v=O(O(O(O(i*s)+O(O(k*y)+O(d*z)))+O(O(g*t)+O(O(e*m)+O(j*n))))*O(.5));L[a+132>>2]=v;h=O(O(O(1)-u)-w);u=O(h*O(0));f=O(f-l);w=O(f*O(0));l=O(x+A);o=O(O(u+w)+O(l*o));x=O(g*o);p=e;e=O(l*O(0));g=O(e+O(w+O(h*r)));e=O(e+O(u+O(f*q)));j=O(O(O(O(l*s)+O(O(h*y)+O(f*z)))+O(x+O(O(p*g)+O(j*e))))*O(.5));L[a+128>>2]=j;L[a+120>>2]=v;s=O(O(i*t)+O(O(k*m)+O(d*n)));L[a+116>>2]=O(s+s)*O(.5);d=O(O(O(O(l*t)+O(O(h*m)+O(f*n)))+O(O(i*o)+O(O(k*g)+O(d*e))))*O(.5));L[a+112>>2]=d;L[a+104>>2]=j;L[a+100>>2]=d;d=O(O(l*o)+O(O(h*g)+O(f*e)));L[a+96>>2]=O(d+d)*O(.5)}function RU(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=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0);c=Oa-176|0;Oa=c;k=L[f+4>>2];h=O(k+k);j=L[f+8>>2];m=O(h*j);g=L[f>>2];l=O(g+g);i=L[f+12>>2];n=O(l*i);L[c+44>>2]=m-n;L[c+36>>2]=m+n;g=O(O(1)-O(g*l));m=O(k*h);L[c+48>>2]=g-m;o=g;g=O(j+j);n=O(j*g);L[c+32>>2]=o-n;j=O(l*j);h=O(h*i);L[c+40>>2]=j+h;k=O(l*k);l=O(g*i);L[c+28>>2]=k-l;L[c+24>>2]=j-h;L[c+20>>2]=k+l;L[c+16>>2]=O(O(1)-m)-n;L[c+52>>2]=L[f+16>>2];L[c+56>>2]=L[f+20>>2];L[c+60>>2]=L[f+24>>2];L[c+64>>2]=L[e+4>>2];L[c+68>>2]=L[e+8>>2];L[c+72>>2]=L[e+12>>2];xU(c,d);AU(c+80|0,c+52|0,c- -64|0,c+16|0,c+28|0,c+40|0);j=L[c+8>>2];k=L[c>>2];l=L[c+4>>2];h=L[c+12>>2];g=O(O(O(L[c+88>>2]*j)+O(O(L[c+80>>2]*k)+O(L[c+84>>2]*l)))+h);i=O(h+O(O(L[c+100>>2]*j)+O(O(L[c+92>>2]*k)+O(l*L[c+96>>2]))));g=g>2]*j)+O(O(L[c+104>>2]*k)+O(l*L[c+108>>2]))));g=g>2]*j)+O(O(L[c+116>>2]*k)+O(l*L[c+120>>2]))));g=g>2]*j)+O(O(L[c+128>>2]*k)+O(l*L[c+132>>2]))));g=g>2]*j)+O(O(L[c+140>>2]*k)+O(l*L[c+144>>2]))));g=g>2]*j)+O(O(L[c+152>>2]*k)+O(l*L[c+156>>2]))));g=g>2]*j)+O(O(L[c+164>>2]*k)+O(l*L[c+168>>2]))));h=gO(0);if(!d){L[a+8>>2]=-j;L[a+4>>2]=-l;L[a>>2]=-k;L[b>>2]=h>2]=0;H[h+80>>2]=f;H[h+72>>2]=e;F[h+92|0]=0;H[h+88>>2]=0;H[h+76>>2]=0;e=H[c+36>>2];a:{b:{switch(H[a>>2]){case 3:k=L[b+4>>2];m=O(k+k);i=L[b+8>>2];n=O(m*i);j=L[b>>2];l=O(j+j);p=L[b+12>>2];o=O(l*p);L[h+36>>2]=n-o;L[h+28>>2]=n+o;j=O(O(1)-O(j*l));n=O(k*m);L[h+40>>2]=j-n;q=j;j=O(i+i);o=O(i*j);L[h+24>>2]=q-o;i=O(l*i);m=O(m*p);L[h+32>>2]=i+m;k=O(l*k);l=O(j*p);L[h+20>>2]=k-l;L[h+16>>2]=i-m;L[h+12>>2]=k+l;L[h+8>>2]=O(O(1)-n)-o;L[h+44>>2]=L[b+16>>2];L[h+48>>2]=L[b+20>>2];L[h+52>>2]=L[b+24>>2];L[h+56>>2]=L[a+4>>2];L[h+60>>2]=L[a+8>>2];L[h- -64>>2]=L[a+12>>2];Ra[H[(J[e+4>>1]<<2)+127860>>2]](h+8|0,e,d,c+4|0,h+72|0)|0;break a;case 2:i=L[b+20>>2];k=L[b+16>>2];o=L[b+24>>2];l=L[b>>2];m=O(l+l);q=L[b+8>>2];r=L[b+4>>2];j=L[b+12>>2];p=O(j+j);n=L[a+8>>2];s=O(O(O(m*q)-O(r*p))*n);L[h+28>>2]=o-s;q=O(n*O(O(q*p)+O(m*r)));L[h+24>>2]=i-q;L[h+16>>2]=s+o;L[h+12>>2]=i+q;i=O(n*O(O(l*m)+O(O(j*p)+O(-1))));L[h+20>>2]=k-i;L[h+8>>2]=k+i;L[h+32>>2]=L[a+4>>2];Ra[H[(J[e+4>>1]<<2)+127868>>2]](h+8|0,e,d,c+4|0,h+72|0)|0;break a;case 0:break b;default:break a}}i=L[a+4>>2];L[h+8>>2]=L[b+16>>2];L[h+12>>2]=L[b+20>>2];k=L[b+24>>2];L[h+20>>2]=i;L[h+16>>2]=k;Ra[H[(J[e+4>>1]<<2)+127876>>2]](h+8|0,e,d,c+4|0,h+72|0)|0}F[g|0]=I[h+92|0];Oa=h+96|0;return H[h+76>>2]}function Ug(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;g=Oa-16|0;Oa=g;H[g+12>>2]=b;c=H[a+124>>2];d=H[a+128>>2]&2147483647;a:{if(c>>>0>>0){break a}f=c<<1|1;if(f>>>0<=d>>>0){break a}c=0;b:{if(!f){break b}d=f<<2;if(!d){break b}c=H[33808];e=c+12|0;c=(j=e,k=d,l=Ra[H[H[c>>2]+20>>2]](c)|0?48608:55639,m=13582,n=553,i=H[H[e>>2]+8>>2],Ra[i](j|0,k|0,l|0,m|0,n|0)|0)}d=H[a+124>>2];if((d|0)>0){h=(d<<2)+c|0;e=H[a+120>>2];d=c;while(1){H[d>>2]=H[e>>2];e=e+4|0;d=d+4|0;if(h>>>0>d>>>0){continue}break}}c:{if(H[a+128>>2]<0){break c}d=H[a+120>>2];if(!d){break c}e=H[33808]+12|0;Ra[H[H[e>>2]+12>>2]](e,d)}H[a+128>>2]=f;H[a+120>>2]=c;d=H[a+128>>2]&2147483647;c=H[a+124>>2]}d:{if(c>>>0>=d>>>0){b=0;c=H[a+128>>2]&2147483647;e=c?c<<1:1;e:{if(!e){break e}c=e<<2;if(!c){break e}b=H[33808];d=b+12|0;b=(n=d,m=c,l=Ra[H[H[b>>2]+20>>2]](b)|0?48608:55639,k=13582,j=553,i=H[H[d>>2]+8>>2],Ra[i](n|0,m|0,l|0,k|0,j|0)|0)}d=H[a+124>>2];h=(d<<2)+b|0;if((d|0)>0){f=H[a+120>>2];c=b;while(1){H[c>>2]=H[f>>2];f=f+4|0;c=c+4|0;if(h>>>0>c>>>0){continue}break}}H[h>>2]=H[g+12>>2];f:{if(H[a+128>>2]<0){break f}c=H[a+120>>2];if(!c){break f}d=H[33808]+12|0;Ra[H[H[d>>2]+12>>2]](d,c);d=H[a+124>>2]}H[a+128>>2]=e;H[a+120>>2]=b;H[a+124>>2]=d+1;break d}H[H[a+120>>2]+(c<<2)>>2]=b;H[a+124>>2]=c+1}a=H[a+24>>2];b=H[g+12>>2];b=Ra[H[H[b>>2]+104>>2]](b)|0;if(a){vF(a,H[b+88>>2])}Oa=g+16|0}function cF(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;g=Oa-16|0;Oa=g;a:{d=H[a+16>>2];if(d>>>0>=b>>>0){break a}c=H[a+20>>2];f=(((c+b|0)-1>>>0)/(c>>>0)|0)-H[a+4>>2]|0;H[a+16>>2]=d+N(c,f);if(!f){break a}while(1){c=c<<2;if(c){d=H[33808];c=Ra[H[H[d+12>>2]+8>>2]](d+12|0,c,20591,13653,84)|0}else{c=0}H[g+12>>2]=c;d=H[a+4>>2];b:{if(d>>>0>=(H[a+8>>2]&2147483647)>>>0){c=0;d=H[a+8>>2]&2147483647;h=d?d<<1:1;c:{if(!h){break c}d=h<<2;if(!d){break c}c=H[33808];e=c+12|0;c=(m=e,n=d,o=Ra[H[H[c>>2]+20>>2]](c)|0?47422:55639,p=13582,q=553,l=H[H[e>>2]+8>>2],Ra[l](m|0,n|0,o|0,p|0,q|0)|0)}e=H[a+4>>2];j=(e<<2)+c|0;if((e|0)>0){i=H[a>>2];d=c;while(1){H[d>>2]=H[i>>2];i=i+4|0;d=d+4|0;if(j>>>0>d>>>0){continue}break}}H[j>>2]=H[g+12>>2];d:{if(H[a+8>>2]<0){break d}d=H[a>>2];if(!d){break d}e=H[33808]+12|0;Ra[H[H[e>>2]+12>>2]](e,d);e=H[a+4>>2]}H[a+8>>2]=h;H[a>>2]=c;H[a+4>>2]=e+1;break b}H[H[a>>2]+(d<<2)>>2]=c;H[a+4>>2]=d+1}k=k+1|0;if((f|0)==(k|0)){break a}c=H[a+20>>2];continue}}c=H[a+12>>2];e:{if(c>>>0>=b>>>0){break e}d=H[a+20>>2];f=c^-1;if(b-c&1){e=(c>>>0)/(d>>>0)|0;H[H[H[a>>2]+(e<<2)>>2]+(c-N(d,e)<<2)>>2]=0;c=c+1|0}if((f|0)==(0-b|0)){break e}while(1){f=(c>>>0)/(d>>>0)|0;H[H[H[a>>2]+(f<<2)>>2]+(c-N(d,f)<<2)>>2]=0;f=c+1|0;e=(f>>>0)/(d>>>0)|0;H[H[H[a>>2]+(e<<2)>>2]+(f-N(d,e)<<2)>>2]=0;c=c+2|0;if((c|0)!=(b|0)){continue}break}}H[a+12>>2]=b;Oa=g+16|0}function bF(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;g=Oa-16|0;Oa=g;a:{d=H[a+16>>2];if(d>>>0>=b>>>0){break a}c=H[a+20>>2];f=(((c+b|0)-1>>>0)/(c>>>0)|0)-H[a+4>>2]|0;H[a+16>>2]=d+N(c,f);if(!f){break a}while(1){c=c<<2;if(c){d=H[33808];c=Ra[H[H[d+12>>2]+8>>2]](d+12|0,c,20591,13653,84)|0}else{c=0}H[g+12>>2]=c;d=H[a+4>>2];b:{if(d>>>0>=(H[a+8>>2]&2147483647)>>>0){c=0;d=H[a+8>>2]&2147483647;h=d?d<<1:1;c:{if(!h){break c}d=h<<2;if(!d){break c}c=H[33808];e=c+12|0;c=(m=e,n=d,o=Ra[H[H[c>>2]+20>>2]](c)|0?47546:55639,p=13582,q=553,l=H[H[e>>2]+8>>2],Ra[l](m|0,n|0,o|0,p|0,q|0)|0)}e=H[a+4>>2];j=(e<<2)+c|0;if((e|0)>0){i=H[a>>2];d=c;while(1){H[d>>2]=H[i>>2];i=i+4|0;d=d+4|0;if(j>>>0>d>>>0){continue}break}}H[j>>2]=H[g+12>>2];d:{if(H[a+8>>2]<0){break d}d=H[a>>2];if(!d){break d}e=H[33808]+12|0;Ra[H[H[e>>2]+12>>2]](e,d);e=H[a+4>>2]}H[a+8>>2]=h;H[a>>2]=c;H[a+4>>2]=e+1;break b}H[H[a>>2]+(d<<2)>>2]=c;H[a+4>>2]=d+1}k=k+1|0;if((f|0)==(k|0)){break a}c=H[a+20>>2];continue}}c=H[a+12>>2];e:{if(c>>>0>=b>>>0){break e}d=H[a+20>>2];f=c^-1;if(b-c&1){e=(c>>>0)/(d>>>0)|0;H[H[H[a>>2]+(e<<2)>>2]+(c-N(d,e)<<2)>>2]=0;c=c+1|0}if((f|0)==(0-b|0)){break e}while(1){f=(c>>>0)/(d>>>0)|0;H[H[H[a>>2]+(f<<2)>>2]+(c-N(d,f)<<2)>>2]=0;f=c+1|0;e=(f>>>0)/(d>>>0)|0;H[H[H[a>>2]+(e<<2)>>2]+(f-N(d,e)<<2)>>2]=0;c=c+2|0;if((c|0)!=(b|0)){continue}break}}H[a+12>>2]=b;Oa=g+16|0}function DC(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;e=Oa-16|0;Oa=e;f=Oa-16|0;Oa=f;b=a+52|0;bC(b+4|0);H[f+8>>2]=0;c=b+172|0;gy(c,0,f+8|0);Dv(c,H[b+176>>2]);H[f+12>>2]=0;c=b+184|0;gy(c,0,f+12|0);Dv(c,H[b+188>>2]);c=H[b+148>>2];if(!(!c|!H[b+164>>2])){S6(H[b+140>>2],255,c<<2);c=0;g=H[b+136>>2];i=H[b+144>>2];h=i-1|0;if(h){if(i-2>>>0>=3){i=h&-4;while(1){d=c|1;H[(c<<2)+g>>2]=d;j=(d<<2)+g|0;d=c|2;H[j>>2]=d;j=(d<<2)+g|0;d=c|3;H[j>>2]=d;c=c+4|0;H[(d<<2)+g>>2]=c;l=l+4|0;if((i|0)!=(l|0)){continue}break}}h=h&3;if(h){while(1){d=(c<<2)+g|0;c=c+1|0;H[d>>2]=c;m=m+1|0;if((h|0)!=(m|0)){continue}break}}c=H[b+144>>2]-1|0}else{c=0}H[g+(c<<2)>>2]=-1;H[b+164>>2]=0;H[b+156>>2]=0}if(H[b+208>>2]){while(1){c=H[b+200>>2]+(k<<3)|0;H[c+4>>2]=0;OA(H[c>>2],1);k=k+1|0;if(k>>>0>2]){continue}break}}H[b+204>>2]=0;Oa=f+16|0;H[a+48>>2]=0;H[e+8>>2]=0;b=a+312|0;gy(b,0,e+8|0);Dv(b,H[a+316>>2]);H[e+12>>2]=0;b=a+324|0;gy(b,0,e+12|0);Dv(b,H[a+328>>2]);b=H[a+36>>2];if(b){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}H[a+36>>2]=0;H[a+8>>2]=0;H[a+12>>2]=0;H[a+16>>2]=0;b=H[a+20>>2];if(b){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}H[a+20>>2]=0;b=H[a+32>>2];if(b){b=NA(b);c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}H[a+32>>2]=0;b=H[a+4>>2];if(b){b=NA(b);c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}H[a+268>>2]=0;H[a+40>>2]=0;H[a+4>>2]=0;F[a+337|0]=0;H[a+344>>2]=0;Oa=e+16|0}function dQ(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0;f=H[a+20>>2];g=Oa-48|0;Oa=g;b=H[a+28>>2];a=b+3940|0;c=b+3320|0;H[a>>2]=c;H[b+3944>>2]=1;Ra[H[H[b+3320>>2]+16>>2]](c);c=b+3936|0;H[c>>2]=H[H[a>>2]+16>>2];H[b+3904>>2]=1;d=b+3900|0;a=b+3920|0;H[d>>2]=a;Ra[H[H[b+3920>>2]+16>>2]](a);e=b+3896|0;H[e>>2]=H[H[d>>2]+16>>2];c=H[c>>2];Ra[H[H[c>>2]+72>>2]](c,a);a=H[e>>2];Ra[H[H[a>>2]+72>>2]](a,b+3880|0);c=Oa-16|0;Oa=c;d=H[b+976>>2];H[c+4>>2]=0;if(c+12|0){H[c+12>>2]=H[d+1e3>>2]}a=c+8|0;if(a){H[a>>2]=H[d+996>>2]}H[b+2460>>2]=0;a=H[c+12>>2];if(a>>>0>(H[b+2464>>2]&2147483647)>>>0){xO(b+2456|0,a);a=H[c+12>>2]}H[b+2460>>2]=a;H[b+2472>>2]=0;a=H[c+8>>2];if(a>>>0>(H[b+2476>>2]&2147483647)>>>0){xO(b+2468|0,a);a=H[c+8>>2]}H[b+2472>>2]=a;BJ(d,H[b+2456>>2],c+12|0,H[b+2468>>2],c+8|0,0,c+4|0);a=H[c+12>>2];H[b+2460>>2]=a;e=H[c+8>>2];H[b+2472>>2]=e;H[d+1804>>2]=e;H[d+1800>>2]=a;Oa=c+16|0;H[b+3860>>2]=f;H[b+3864>>2]=1;a=b+3840|0;a:{if(!f){d=H[b+3856>>2];break a}Ra[H[H[f>>2]+16>>2]](f);d=H[H[b+3860>>2]+16>>2];H[b+3856>>2]=d}Ra[H[H[d>>2]+72>>2]](d,a);a=H[H[b+976>>2]+1024>>2];Ra[H[H[a>>2]+84>>2]](g+8|0,a);c=H[b+2460>>2];if(c){f=(H[b+2360>>2]&8)!=0;a=c;while(1){e=a>>>0<256?a:256;d=0;while(1){i=H[(H[b+2456>>2]+(d+h<<3)|0)+4>>2];wI(H[b+2168>>2],i);RQ(i,0,g+8|0,f);d=d+1|0;if((e|0)!=(d|0)){continue}break}a=a-256|0;h=h+256|0;if(c>>>0>h>>>0){continue}break}}Oa=g+48|0}function _t(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;f=Oa-16|0;Oa=f;b=H[a+4>>2];if(b&8){c=H[a+8>>2];if(!c){c=Tt(H[a>>2],b>>>24&15);H[a+8>>2]=c;b=H[a+4>>2]}a:{if((b&-1073741824)!=-2147483648){break a}d=H[c+76>>2];if(!d){break a}while(1){h=H[c+72>>2]+(e<<3)|0;b=H[h>>2];g=H[b+4>>2];if((g&251658240)==16777216){H[b>>2]=0;H[b+4>>2]=g&1073741823}g=H[((H[a+4>>2]>>>22&60)+76348|0)+12>>2]+a|0;if(!(I[g+8|0]&8)){d=H[a>>2];TI(g,b+16|0,I[h+4|0]!=0);if(I[b+7|0]&16){au(b);H[f+4>>2]=b;Pf(d+4816|0,f+4|0);H[b+4>>2]=H[b+4>>2]&-268435457}et(b);d=H[c+76>>2]}e=e+1|0;if(e>>>0>>0){continue}break}}F[f+12|0]=0;H[f+8>>2]=0;a=c+36|0;b=H[a+40>>2];if((b|0)<0){d=H[a+36>>2];b=d+(b<<3)|0;while(1){e=H[f+12>>2];H[b>>2]=H[f+8>>2];H[b+4>>2]=e;b=b+8|0;if(d>>>0>b>>>0){continue}break}}H[a+40>>2]=0;e=H[c+76>>2];c=0;b:{if(!e){break b}b=e<<3;if(!(I[a+32|0]|b>>>0>32)){F[a+32|0]=1;c=a;break b}c=0;if(!b){break b}c=H[33808];d=c+12|0;c=(j=d,k=b,l=Ra[H[H[c>>2]+20>>2]](c)|0?37420:55639,m=13582,n=553,i=H[H[d>>2]+8>>2],Ra[i](j|0,k|0,l|0,m|0,n|0)|0)}b=H[a+40>>2];if((b|0)>0){h=c+(b<<3)|0;d=H[a+36>>2];b=c;while(1){g=H[d+4>>2];H[b>>2]=H[d>>2];H[b+4>>2]=g;d=d+8|0;b=b+8|0;if(h>>>0>b>>>0){continue}break}}c:{if(H[a+44>>2]<0){break c}b=H[a+36>>2];if((b|0)==(a|0)){F[a+32|0]=0;break c}if(!b){break c}d=H[33808]+12|0;Ra[H[H[d>>2]+12>>2]](d,b)}H[a+44>>2]=e;H[a+36>>2]=c}Oa=f+16|0}function V1(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0;b=H[a+80>>2];a:{if(!I[a+84|0]){break a}F[a+84|0]=0;H[b+460>>2]=0;H[b+452>>2]=0;H[b+456>>2]=0;a=0;b:{c:{d:{g=H[b+80>>2];switch(g|0){case 0:break c;case 1:break d;default:break b}}a=1;H[b+456>>2]=1;break b}c=1;H[b+452>>2]=1}e:{f:{g:{h=H[b+84>>2];switch(h|0){case 1:break f;case 0:break g;default:break e}}c=c|2;H[b+452>>2]=c;break e}a=a|2;H[b+456>>2]=a}h:{i:{j:{i=H[b+88>>2];switch(i|0){case 0:break j;case 1:break i;default:break h}}c=c|4;H[b+452>>2]=c;break h}a=a|4;H[b+456>>2]=a}k:{l:{m:{e=H[b+92>>2];switch(e|0){case 1:break l;case 0:break m;default:break k}}c=c|8;H[b+452>>2]=c;break k}a=a|8;H[b+456>>2]=a}n:{o:{p:{d=H[b+96>>2];switch(d|0){case 1:break o;case 0:break p;default:break n}}c=c|16;H[b+452>>2]=c;break n}a=a|16;H[b+456>>2]=a}q:{r:{s:{f=H[b+100>>2];switch(f|0){case 1:break r;case 0:break s;default:break q}}H[b+452>>2]=c|32;break q}H[b+456>>2]=a|32}a=0;if(!(!g|L[b+308>>2]==O(0)&L[b+304>>2]==O(0))){a=1;H[b+460>>2]=1}if(!(!h|L[b+324>>2]==O(0)&L[b+320>>2]==O(0))){a=a|2;H[b+460>>2]=a}if(!(!i|L[b+340>>2]==O(0)&L[b+336>>2]==O(0))){a=a|4;H[b+460>>2]=a}t:{if(!(!e|(!f|(L[b+384>>2]!=O(0)?!d:!d|L[b+388>>2]==O(0))))){a=a|32;break t}if(!(!e|L[b+368>>2]==O(0)&L[b+372>>2]==O(0))){a=a|16;H[b+460>>2]=a}if(!(d|f)|L[b+352>>2]==O(0)&L[b+356>>2]==O(0)){break a}a=a|8}H[b+460>>2]=a}return b|0}function QH(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,s=0,t=0,u=0,v=0;a:{i=H[a+40>>2];if(I[i+60|0]){fH(i);i=H[a+40>>2]}o=H[i+8>>2];if(!o){break a}q=H[i+28>>2];n=H[i+24>>2];a=0;while(1){c=(m<<3)+n|0;d=H[c>>2];r=H[c+4>>2];while(1){j=a<<3;c=a+1|0;a=c;if(d>>>0>K[j+n>>2]){continue}break}if(K[(c<<3)+n>>2]<=r>>>0){j=(m<<4)+q|0;d=c;while(1){a=(d<<4)+q|0;b:{if(L[a+8>>2]>2]|L[j+8>>2]>2]|(L[a+12>>2]>2]|L[j+12>>2]>2])){break b}g=H[i+4>>2];a=H[g+(m<<2)>>2];h=H[(a<<2)+e>>2];g=H[g+(d<<2)>>2];k=H[(g<<2)+e>>2];if((h|0)==(k|0)|!I[(h<<2&12|k&3)+f|0]){break b}h=a>>>0>g>>>0;k=h?a:g;p=h?g:a;a=k<<16|p&65535;a=(a<<15^-1)+a|0;a=N(a>>>10^a,9);a=a>>>6^a;a=(a<<11^-1)+a|0;s=a>>>16^a;g=s&H[b+4>>2];c:{h=H[b+12>>2];d:{if(!h){break d}a=H[(g<<2)+h>>2];if((a|0)==-1){break d}u=H[b+16>>2];v=H[b+20>>2];while(1){l=(a<<3)+v|0;if((H[l>>2]&2147483647)==(p|0)){t=H[l+4>>2];if((k|0)==(t&2147483647)){break c}}a=H[(a<<2)+u>>2];if((a|0)!=-1){continue}break}}a=H[b+8>>2];if(a>>>0>=K[b>>2]){g=$G(b,s);h=H[b+12>>2];a=H[b+8>>2]}H[b+8>>2]=a+1;l=H[b+20>>2]+(a<<3)|0;H[l+4>>2]=k;H[l>>2]=p|-2147483648;g=(g<<2)+h|0;H[H[b+16>>2]+(a<<2)>>2]=H[g>>2];H[g>>2]=a;break b}H[l+4>>2]=t|-2147483648}d=d+1|0;if(K[(d<<3)+n>>2]<=r>>>0){continue}break}}if(c>>>0>=o>>>0){break a}a=c;m=m+1|0;if(o>>>0>m>>>0){continue}break}}}function a_(a,b,c,d,e,f){var g=O(0),h=O(0),i=O(0),j=O(0),k=0,l=0,m=O(0);H[e>>2]=-8388609;H[f>>2]=2139095039;h=L[d>>2];a:{b:{if(!(!(h>O(-1.1920928955078125e-7))|!(h>2];if(g>2]){return-1}h=O(3.4028234663852886e38);l=-1;if(!(g>L[b>>2])){break b}break a}g=O(O(1)/h);i=L[c>>2];h=O(g*O(L[a>>2]-i));j=O(g*O(L[b>>2]-i));k=h>j;i=k?h:j;g=L[e>>2];h=k?j:h;c:{if(!(g>2]=h;k=k?3:0;g=h;h=L[f>>2]}if(i>2]=i;g=L[e>>2];h=i}l=-1;if(hh){break a}}g=L[d+4>>2];d:{if(!(g>O(-1.1920928955078125e-7)&g>2];j=O(g*O(L[a+4>>2]-i));m=O(g*O(L[b+4>>2]-i));l=j>m;i=l?j:m;g=L[e>>2];j=l?m:j;if(g>2]=j;k=l?4:1;g=j;h=L[f>>2]}if(h>i){L[f>>2]=i;g=L[e>>2];h=i}l=-1;if(g>h){break a}if(!(h>2];if(g>2]|g>L[b+4>>2]){break a}}g=L[d+8>>2];e:{if(!(g>O(-1.1920928955078125e-7)&g>2];j=O(g*O(L[a+8>>2]-i));m=O(g*O(L[b+8>>2]-i));a=j>m;i=a?j:m;g=L[e>>2];j=a?m:j;if(g>2]=j;k=a?5:2;g=j;h=L[f>>2]}if(h>i){L[f>>2]=i;g=L[e>>2];h=i}if(g>h){break a}if(!(h>2];if(g>2]|g>L[b+8>>2]){break a}g=L[e>>2]}l=g>h?-1:h>2]=c;H[h+56>>2]=b;i=N(d,36)+a|0;H[i+32>>2]=H[i+32>>2]+1;a:{if((e|0)==-1){b:{if(f){k=L[f+16>>2];l=L[f+12>>2];m=L[f>>2];n=L[f+4>>2];j=L[f+20>>2];o=L[f+8>>2];p=O(O(j-o)*O(.004999999888241291));L[h+44>>2]=j+p;j=k;k=O(O(k-n)*O(.004999999888241291));L[h+40>>2]=j+k;j=l;l=O(O(l-m)*O(.004999999888241291));L[h+36>>2]=j+l;L[h+24>>2]=m-l;L[h+32>>2]=o-p;L[h+28>>2]=n-k;break b}Ra[H[(d<<2)+114344>>2]](h+24|0,b,c)}a=H[i>>2];Ra[H[H[a>>2]>>2]](a,h+52|0,h+24|0,h+56|0,1,g)|0;b=H[h+52>>2];a=H[i+8>>2];c:{if(b>>>0>>0){break c}e=a&2147483647;a=a<<6;a=a>>>0>1024?a:1024;c=a>>>5|0;if(e>>>0>=c>>>0){break c}e=H[33808];a=Ra[H[H[e+12>>2]+8>>2]](e+12|0,a>>>3|0,20591,14969,438)|0;e=H[i+4>>2];d:{if(!e){break d}R6(a,e,H[i+8>>2]<<2);if(H[i+8>>2]<0){break d}e=H[i+4>>2];if(!e){break d}f=H[33808];Ra[H[H[f+12>>2]+12>>2]](f+12|0,e)}e=H[i+8>>2];S6(a+(e<<2)|0,0,c-e<<2);H[i+8>>2]=c;H[i+4>>2]=a}a=H[i+4>>2]+(b>>>3&536870908)|0;c=H[a>>2];q=a,r=j7(-2,b)&c,H[q>>2]=r;break a}c=h+24|0;f=H[b+8>>2];g=H[b+4>>2];aU(c,g&1?f- -64|0:b+84|0,g&4?f:b+48|0,O(1.0099999904632568));a=H[a+72>>2];b=H[h+60>>2];f=H[h+56>>2];H[h+16>>2]=f;H[h+20>>2]=b;g=H[H[a>>2]+20>>2];H[h+8>>2]=f;H[h+12>>2]=b;Ra[g|0](a,e,h+52|0,c,h+8|0)|0}Oa=h- -64|0;return H[h+52>>2]<<1|d}function FL(a,b,c){var d=O(0),e=O(0),f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=0,l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0);k=J[a+60>>1];a:{if(!k){break a}if(k&1){H[a>>2]=0}if(k&2){H[a+4>>2]=0}if(k&4){H[a+8>>2]=0}if(k&8){H[a+16>>2]=0}if(k&16){H[a+20>>2]=0}if(!(k&32)){break a}H[a+24>>2]=0}o=L[a+20>>2];p=L[a+24>>2];q=L[a+16>>2];f=L[a+8>>2];d=L[a+4>>2];s=O(L[a>>2]*c);L[b+16>>2]=s+L[b+16>>2];t=O(d*c);L[b+20>>2]=t+L[b+20>>2];d=L[b+36>>2];l=L[b+48>>2];m=L[b+60>>2];i=L[b+40>>2];g=L[b+52>>2];h=L[b+32>>2];e=L[b+44>>2];n=L[b+56>>2];r=L[b+28>>2];u=O(f*c);L[b+24>>2]=u+L[b+24>>2];j=O(O(O(q*d)+O(o*l))+O(p*m));g=O(O(O(q*r)+O(o*i))+O(p*g));h=O(O(O(q*h)+O(o*e))+O(p*n));d=O(O(j*j)+O(O(g*g)+O(h*h)));if(d!=O(0)){f=L[b+4>>2];e=O(W(d));i=O(O(e*c)*O(.5));n=Z5(i);d=L[b>>2];l=L[b+8>>2];m=L[b+12>>2];i=T5(i);e=O(n/e);g=O(g*e);h=O(h*e);j=O(j*e);e=O(O(m*i)+O(O(O(O(m*O(0))-O(d*g))-O(f*h))-O(l*j)));r=e;v=O(e*e);e=O(O(i*l)+O(O(O(g*f)+O(O(l*O(0))+O(j*m)))-O(d*h)));n=O(O(i*d)+O(O(O(h*l)+O(O(d*O(0))+O(g*m)))-O(f*j)));d=O(O(i*f)+O(O(O(j*d)+O(O(f*O(0))+O(h*m)))-O(l*g)));f=O(O(1)/O(W(O(v+O(O(e*e)+O(O(n*n)+O(d*d)))))));L[b+12>>2]=r*f;L[b+8>>2]=e*f;L[b+4>>2]=d*f;L[b>>2]=n*f}L[a+32>>2]=O(q*c)+L[a+32>>2];L[a+48>>2]=s+L[a+48>>2];L[a+36>>2]=O(o*c)+L[a+36>>2];L[a+40>>2]=O(p*c)+L[a+40>>2];L[a+52>>2]=t+L[a+52>>2];L[a+56>>2]=u+L[a+56>>2]}function on(a,b){a=a|0;b=b|0;var c=O(0),d=O(0),e=O(0),f=0,g=0,h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=0,s=0,t=O(0),u=O(0),v=O(0),w=O(0),x=O(0);f=Oa-32|0;Oa=f;g=H[a+56>>2];r=H[a+316>>2];a:{if(!(F[(r&16384?g+268|0:a+108|0)|0]&1)){break a}b:{if(r&32768){s=g+216|0;v=L[g+212>>2];w=L[g+208>>2];i=L[g+200>>2];j=L[g+196>>2];k=L[g+192>>2];h=L[g+204>>2];break b}if(K[a+52>>2]>3221225471){break a}if(!_F(a- -64|0,f)){break a}s=f+24|0;g=H[a+56>>2];r=H[a+316>>2];v=L[f+20>>2];w=L[f+16>>2];i=L[f+8>>2];j=L[f+4>>2];k=L[f>>2];h=L[f+12>>2]}a=r&1024?g+144|0:a+112|0;o=L[a+16>>2];p=L[a+24>>2];q=L[a+20>>2];l=L[s>>2];d=L[a+8>>2];e=L[a+4>>2];c=L[a+12>>2];m=L[a>>2];L[b+12>>2]=O(i*d)+O(O(j*e)+O(O(h*c)+O(m*k)));L[b+8>>2]=O(m*j)+O(O(O(c*i)-O(h*d))-O(k*e));L[b+4>>2]=O(d*k)+O(O(O(c*j)-O(h*e))-O(i*m));L[b>>2]=O(e*i)+O(O(O(c*k)-O(h*m))-O(j*d));x=l;p=O(p*O(-2));o=O(o*O(-2));q=O(q*O(-2));t=O(O(d*p)+O(O(m*o)+O(e*q)));u=O(O(c*c)+O(-.5));l=O(O(d*t)+O(O(p*u)-O(c*O(O(m*q)-O(o*e)))));l=O(l+l);n=O(O(m*t)+O(O(o*u)-O(c*O(O(e*p)-O(q*d)))));n=O(n+n);c=O(O(e*t)+O(O(q*u)-O(c*O(O(d*o)-O(p*m)))));c=O(c+c);d=O(O(i*l)+O(O(k*n)+O(j*c)));e=O(O(h*h)+O(-.5));L[b+24>>2]=x+O(O(i*d)+O(O(l*e)+O(h*O(O(k*c)-O(n*j)))));L[b+20>>2]=v+O(O(j*d)+O(O(c*e)+O(h*O(O(i*n)-O(l*k)))));L[b+16>>2]=w+O(O(k*d)+O(O(n*e)+O(h*O(O(j*l)-O(c*i)))));s=1}Oa=f+32|0;return s|0}function Et(a,b,c,d){var e=0,f=0,g=0,h=0,i=0;e=Oa-288|0;Oa=e;f=H[b+4>>2];a:{if(!(I[(f&1?H[b+8>>2]:(H[((f>>>22&60)+76348|0)+12>>2]+b|0)+8|0)|0]&8)){F[e+272|0]=1;H[e+280>>2]=0;H[e+284>>2]=64;H[e+276>>2]=e+16;f=0;g=Jn(b,e+12|0,0);LO(a,b+16|0,H[e+12>>2],g,c,(d|0)!=0);if(g){b=H[b>>2];while(1){a=H[H[e+12>>2]+(f<<2)>>2]+32|0;c=H[a+4>>2];if((c&251658240)==16777216){H[a>>2]=b;H[a+4>>2]=c&1073741823|-2147483648}a=a-16|0;H[a>>2]=H[a>>2]+1;f=f+1|0;if((g|0)!=(f|0)){continue}break}}a=H[e+284>>2];if((a|0)<0|!(a&2147483647)){break a}a=H[e+276>>2];if((a|0)==(e+16|0)|!a){break a}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,a);break a}F[e+272|0]=1;H[e+280>>2]=0;H[e+284>>2]=64;H[e+276>>2]=e+16;f=0;a=Jn(b,e+12|0,0);b:{if(!a){break b}c=H[b>>2];if((a|0)!=1){g=a&-2;b=0;while(1){h=f<<2;d=H[h+H[e+12>>2]>>2];i=H[d+36>>2];if((i&251658240)==16777216){H[d+32>>2]=c;H[d+36>>2]=i&1073741823|-2147483648}d=H[H[e+12>>2]+(h|4)>>2];h=H[d+36>>2];if((h&251658240)==16777216){H[d+32>>2]=c;H[d+36>>2]=h&1073741823|-2147483648}f=f+2|0;b=b+2|0;if((g|0)!=(b|0)){continue}break}}if(!(a&1)){break b}a=H[H[e+12>>2]+(f<<2)>>2];b=H[a+36>>2];if((b&251658240)!=16777216){break b}H[a+32>>2]=c;H[a+36>>2]=b&1073741823|-2147483648}a=H[e+284>>2];if((a|0)<0|!(a&2147483647)){break a}a=H[e+276>>2];if((a|0)==(e+16|0)|!a){break a}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,a)}Oa=e+288|0}function Mw(a,b){var c=0,d=O(0),e=O(0),f=0,g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=0,m=0,n=O(0),o=O(0),p=O(0),q=0,r=0,s=0,t=O(0),u=O(0),v=O(0),w=0,x=0,y=O(0),z=O(0),A=O(0),B=O(0),C=O(0);q=H[b+28>>2];s=H[b+8>>2];l=H[b+4>>2];b=l;H[b>>2]=0;H[b+4>>2]=0;H[b+24>>2]=0;H[b+28>>2]=0;H[b+16>>2]=0;H[b+20>>2]=0;H[b+8>>2]=0;H[b+12>>2]=0;b=1;if(K[a+336>>2]>1){while(1){f=H[a+340>>2]+N(b,160)|0;g=L[f+124>>2];m=b<<5;c=(H[(m+H[a+332>>2]|0)+24>>2]<<5)+l|0;n=L[c>>2];d=L[f+120>>2];o=L[c+4>>2];t=O(O(O(g*n)-O(d*o))+L[c+24>>2]);p=L[c+8>>2];e=O(d*p);d=L[f+128>>2];u=O(O(e-O(d*n))+L[c+20>>2]);v=O(O(O(d*o)-O(g*p))+L[c+16>>2]);a:{if(!q){g=O(0);d=O(0);h=O(0);i=O(0);j=O(0);k=O(0);break a}k=O(0);c=H[a+344>>2]+N(b,80)|0;r=I[c+76|0];if(!r){g=O(0);d=O(0);h=O(0);i=O(0);j=O(0);break a}w=(H[c+72>>2]<<2)+q|0;x=H[a+272>>2];f=0;j=O(0);i=O(0);h=O(0);d=O(0);g=O(0);while(1){e=L[(f<<2)+w>>2];c=(N(b,76)+x|0)+N(f,24)|0;i=O(i+O(e*L[c+12>>2]));h=O(h+O(e*L[c+8>>2]));d=O(d+O(e*L[c+4>>2]));g=O(g+O(e*L[c>>2]));k=O(k+O(e*L[c+20>>2]));j=O(j+O(e*L[c+16>>2]));f=f+1|0;if((r|0)!=(f|0)){continue}break}}c=m+s|0;e=L[c+20>>2];y=L[c+24>>2];z=L[c>>2];A=L[c+4>>2];B=L[c+8>>2];C=L[c+16>>2];c=l+m|0;H[c+28>>2]=0;H[c+12>>2]=0;L[c+16>>2]=i+O(v+C);L[c+8>>2]=h+O(p+B);L[c+4>>2]=d+O(o+A);L[c>>2]=g+O(n+z);L[c+24>>2]=k+O(t+y);L[c+20>>2]=j+O(u+e);b=b+1|0;if(b>>>0>2]){continue}break}}}function GI(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;f=H[a>>2];e=H[f+2356>>2];a:{if(!(e&6)){break a}d=H[f+56>>2];if(!d){break a}g=e<<2&8|e<<3&32;f=H[f+52>>2];while(1){d=d-1|0;e=H[f>>2];b:{if(!(I[e+21|0]&8)){TQ(e-4|0,g);break b}F[e+22|0]=g|I[e+22|0]}f=f+4|0;if(d){continue}break}}l=H[a+104>>2];c:{if(!l){break c}n=H[a+72>>2];f=0;while(1){d=H[(f<<2)+n>>2];d:{if(!(!(F[d+21|0]&1)|!(F[d+22|0]&1))){e=zI(a,d-4|0,0,0,b,c);if((d|0)!=((e?e+4|0:0)|0)){break d}}e:{f:{switch(I[d+20|0]){case 0:TQ(d-4|0,0);break e;case 4:break f;default:break e}}j=0;g=H[d+24>>2];e=H[g- -64>>2];k=1;m=1;i=H[g+60>>2];if(i){m=K[i+152>>2]<4294967294}k=e?K[e+152>>2]<4294967294:k;j=i?!(F[H[i+44>>2]+44|0]&1):j;g:{if(!(k|m)|!(j|(e?!(F[H[e+44>>2]+44|0]&1):h))){break g}F[d+21|0]=I[d+21|0]|32;if((I[g+68|0]&6)!=2){break g}qO(H[H[d>>2]+40>>2],g)}}WG(d,0)}f=f+1|0;if((l|0)!=(f|0)){continue}break}b=H[a+88>>2];if(!b|!H[a+104>>2]){break c}S6(H[a+80>>2],255,b<<2);d=0;b=H[a+76>>2];e=H[a+84>>2];c=e-1|0;if(c){f=0;if(e-2>>>0>=3){i=c&-4;e=0;while(1){h=d|1;H[b+(d<<2)>>2]=h;g=b+(h<<2)|0;h=d|2;H[g>>2]=h;g=b+(h<<2)|0;h=d|3;H[g>>2]=h;d=d+4|0;H[b+(h<<2)>>2]=d;e=e+4|0;if((i|0)!=(e|0)){continue}break}}c=c&3;if(c){while(1){e=b+(d<<2)|0;d=d+1|0;H[e>>2]=d;f=f+1|0;if((c|0)!=(f|0)){continue}break}}c=H[a+84>>2]-1|0}else{c=0}H[b+(c<<2)>>2]=-1;H[a+104>>2]=0;H[a+96>>2]=0}}function b$(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=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=0,x=O(0),y=O(0);f=Oa+-64|0;Oa=f;g=H[a+8>>2];m=L[g+28>>2];n=L[g+16>>2];o=L[g+4>>2];i=L[g+24>>2];p=L[g>>2];j=L[g+12>>2];k=L[c>>2];h=L[c+4>>2];s=L[g+20>>2];l=L[c+8>>2];t=L[g+32>>2];u=O(O(O(k*L[g+8>>2])+O(h*s))+O(l*t));L[f+56>>2]=u;p=O(O(O(k*p)+O(h*j))+O(l*i));L[f+48>>2]=p;k=O(O(O(k*o)+O(h*n))+O(l*m));L[f+52>>2]=k;v=L[g+4>>2];q=L[g>>2];w=I[a+17|0];c=w?e:d;h=L[c>>2];l=L[c+4>>2];o=L[c+8>>2];x=O(O(O(h*L[g+8>>2])+O(s*l))+O(t*o));L[f+40>>2]=x;q=O(O(O(h*q)+O(j*l))+O(i*o));L[f+32>>2]=q;l=O(O(O(h*v)+O(n*l))+O(m*o));L[f+36>>2]=l;o=L[g+8>>2];v=L[g+4>>2];c=w?d:e;h=L[c>>2];r=j;j=L[c+4>>2];y=i;i=L[c+8>>2];r=O(O(O(h*L[g>>2])+O(r*j))+O(y*i));L[f+16>>2]=r;m=O(O(O(h*v)+O(n*j))+O(m*i));L[f+20>>2]=m;n=O(O(O(h*o)+O(s*j))+O(t*i));L[f+24>>2]=n;i=O(p-q);m=O(k-m);j=O(p-r);k=O(k-l);L[f+8>>2]=O(i*m)-O(j*k);h=O(u-x);n=O(u-n);L[f+4>>2]=O(h*j)-O(n*i);L[f>>2]=O(k*n)-O(m*h);c=1;a:{if(!n_(f,f+48|0,f+32|0,f+16|0,a+20|0,a+48|0)){break a}d=H[b+8>>2];F[a+16|0]=1;a=H[a+12>>2];c=0;if(!a){break a}b=H[a+4>>2];if(b>>>0>=K[a+8>>2]){F[a+20|0]=1;c=1;break a}c=H[a+16>>2];if(c>>>0>=K[a+12>>2]){H[a+4>>2]=b+1;H[H[a>>2]+(b<<2)>>2]=d;c=1;break a}H[a+16>>2]=c+1;c=1}Oa=f- -64|0;return c|0}function iz(a){var b=0,c=O(0),d=O(0),e=0,f=0,g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=0,u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),F=O(0),G=O(0),J=O(0),K=O(0),M=O(0);b=H[a+24>>2];if(b){e=H[a+4>>2];h=L[e+24>>2];i=L[e+20>>2];f=H[a>>2];j=L[f+24>>2];k=L[f+20>>2];l=L[e+16>>2];m=L[f+16>>2];n=L[e+8>>2];o=L[e+4>>2];p=L[e>>2];q=L[f+8>>2];r=L[f+4>>2];s=L[f>>2];t=I[b+1|0];if(t){G=L[b+44>>2];J=L[b+36>>2];K=L[b+28>>2];M=L[b+12>>2];b=b+48|0;a=0;while(1){c=L[b+80>>2];d=L[b+88>>2];u=L[b>>2];v=L[b+32>>2];w=L[b+16>>2];x=L[b+48>>2];y=L[b+4>>2];z=L[b+36>>2];A=L[b+20>>2];B=L[b+52>>2];C=L[b+8>>2];D=L[b+40>>2];E=L[b+24>>2];F=L[b+56>>2];g=O(O(L[b+60>>2]*d)+O(L[b+12>>2]+O(L[b+44>>2]*O(O(O(O(O(s*u)+O(m*v))-O(O(p*w)+O(l*x)))+O(O(O(r*y)+O(k*z))-O(O(o*A)+O(i*B))))+O(O(O(q*C)+O(j*D))-O(O(n*E)+O(h*F)))))));c=c>g?c:g;g=L[b+84>>2];c=c>2]=c;c=O(c-d);d=O(G*c);h=O(h+O(F*d));i=O(i+O(B*d));l=O(l+O(x*d));d=O(J*c);j=O(j+O(D*d));k=O(k+O(z*d));m=O(m+O(v*d));d=O(K*c);n=O(n-O(E*d));o=O(o-O(A*d));p=O(p-O(w*d));c=O(M*c);q=O(q+O(C*c));r=O(r+O(y*c));s=O(s+O(u*c));b=b+96|0;a=a+1|0;if((t|0)!=(a|0)){continue}break}}L[f+24>>2]=j;L[f+20>>2]=k;L[f+16>>2]=m;L[f+8>>2]=q;L[f+4>>2]=r;L[f>>2]=s;L[e+24>>2]=h;L[e+20>>2]=i;L[e+16>>2]=l;L[e+8>>2]=n;L[e+4>>2]=o;L[e>>2]=p}}function hO(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0;if(H[a+2236>>2]){d=H[a+2204>>2];while(1){f=H[H[d+(c<<2)>>2]>>2];G[f+148>>1]=J[f+148>>1]&65423;c=c+1|0;f=H[a+2236>>2];if(c>>>0>>0){continue}break}}a:{if(!H[a+2276>>2]){c=0;break a}f=H[a+2244>>2];while(1){c=H[H[f+(b<<2)>>2]>>2];G[c+148>>1]=J[c+148>>1]&65359;b=b+1|0;c=H[a+2276>>2];if(b>>>0>>0){continue}break}f=H[a+2236>>2]}b=H[a+2220>>2];if(!(!b|!f)){S6(H[a+2212>>2],255,b<<2);b=0;c=H[a+2208>>2];d=H[a+2216>>2];g=d-1|0;if(g){f=0;if(d-2>>>0>=3){i=g&-4;d=0;while(1){e=b|1;H[c+(b<<2)>>2]=e;h=c+(e<<2)|0;e=b|2;H[h>>2]=e;h=c+(e<<2)|0;e=b|3;H[h>>2]=e;b=b+4|0;H[c+(e<<2)>>2]=b;d=d+4|0;if((i|0)!=(d|0)){continue}break}}d=g&3;if(d){while(1){e=c+(b<<2)|0;b=b+1|0;H[e>>2]=b;f=f+1|0;if((d|0)!=(f|0)){continue}break}}b=H[a+2216>>2]-1|0}else{b=0}H[c+(b<<2)>>2]=-1;H[a+2236>>2]=0;H[a+2228>>2]=0;c=H[a+2276>>2]}b=H[a+2260>>2];if(!(!b|!c)){S6(H[a+2252>>2],255,b<<2);b=0;c=H[a+2248>>2];d=H[a+2256>>2];g=d-1|0;if(g){f=0;if(d-2>>>0>=3){i=g&-4;d=0;while(1){e=b|1;H[c+(b<<2)>>2]=e;h=c+(e<<2)|0;e=b|2;H[h>>2]=e;h=c+(e<<2)|0;e=b|3;H[h>>2]=e;b=b+4|0;H[c+(e<<2)>>2]=b;d=d+4|0;if((i|0)!=(d|0)){continue}break}}d=g&3;if(d){while(1){e=c+(b<<2)|0;b=b+1|0;H[e>>2]=b;f=f+1|0;if((d|0)!=(f|0)){continue}break}}b=H[a+2256>>2]-1|0}else{b=0}H[c+(b<<2)>>2]=-1;H[a+2276>>2]=0;H[a+2268>>2]=0}G[a+2280>>1]=257}function Zm(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;i=Oa-16|0;Oa=i;a:{if(!H[a+92>>2]){break a}c=(b<<15^-1)+b|0;c=N(c>>>10^c,9);c=c>>>6^c;c=(c<<11^-1)+c|0;c=H[H[a+68>>2]+((H[a+76>>2]-1&(c>>>16^c))<<2)>>2];if((c|0)==-1){break a}h=H[a- -64>>2];e=H[a+60>>2];while(1){if(H[e+(c<<3)>>2]!=(b|0)){c=H[h+(c<<2)>>2];if((c|0)!=-1){continue}break a}break}h=H[(e+(c<<3)|0)+4>>2];H[i+12>>2]=b;b:{if(!H[a+92>>2]){break b}j=H[a+68>>2];d=H[i+12>>2];b=(d<<15^-1)+d|0;b=N(b>>>10^b,9);b=b>>>6^b;b=(b<<11^-1)+b|0;c=j+((H[a+76>>2]-1&(b>>>16^b))<<2)|0;b=H[c>>2];if((b|0)==-1){break b}e=H[a+64>>2];f=H[a+60>>2];g=f+(b<<3)|0;if((d|0)!=H[g>>2]){while(1){c=e+(b<<2)|0;b=H[c>>2];if((b|0)==-1){break b}g=f+(b<<3)|0;if((d|0)!=H[g>>2]){continue}break}}k=e+(b<<2)|0;H[c>>2]=H[k>>2];c=H[a+92>>2]-1|0;H[a+92>>2]=c;H[a+88>>2]=H[a+88>>2]+1;if((b|0)!=(c|0)){l=g;g=f+(c<<3)|0;d=H[g>>2];H[l>>2]=d;H[(f+(b<<3)|0)+4>>2]=H[g+4>>2];H[k>>2]=H[e+(c<<2)>>2];c=d+(d<<15^-1)|0;c=N(c>>>10^c,9);c=c>>>6^c;c=(c<<11^-1)+c|0;c=((H[a+76>>2]-1&(c>>>16^c))<<2)+j|0;d=H[c>>2];f=H[a+92>>2];if((d|0)!=(f|0)){while(1){c=e+(d<<2)|0;d=H[c>>2];if((f|0)!=(d|0)){continue}break}}H[c>>2]=b}H[a+84>>2]=H[a+84>>2]-1}if(!h){break a}b=H[h>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,h)}F[a+100|0]=H[a+92>>2]!=0;Oa=i+16|0}function WJ(a,b,c,d,e,f){var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=O(0),r=O(0),s=O(0),t=O(0),u=0,v=0;H[a+40>>2]=f;H[a+36>>2]=e;H[a+32>>2]=e;a:{if(!b){break a}e=0;while(1){f=(k<<3)+c|0;g=H[f>>2];n=H[f+4>>2];while(1){f=e<<3;l=e+1|0;e=l;if(g>>>0>K[c+f>>2]){continue}break}if(K[(l<<3)+c>>2]<=n>>>0){e=(k<<4)+d|0;q=L[e+12>>2];r=L[e+4>>2];s=L[e+8>>2];t=L[e>>2];f=l;while(1){e=(f<<4)+d|0;b:{if(L[e+8>>2]>2]>s|(L[e+12>>2]>2]>q)){break b}h=H[a+28>>2];e=H[H[a+32>>2]+(k<<2)>>2];i=H[h+(e<<2)>>2];g=H[H[a+36>>2]+(f<<2)>>2];h=H[h+(g<<2)>>2];if((i|0)==(h|0)|!I[H[a+44>>2]+(i<<2&12|h&3)|0]){break b}h=e>>>0>g>>>0;i=h?e:g;m=h?g:e;e=i<<16|m&65535;e=(e<<15^-1)+e|0;e=N(e>>>10^e,9);e=e>>>6^e;e=(e<<11^-1)+e|0;o=e>>>16^e;g=o&H[a+4>>2];c:{h=H[a+12>>2];d:{if(!h){break d}e=H[(g<<2)+h>>2];if((e|0)==-1){break d}u=H[a+16>>2];v=H[a+20>>2];while(1){j=(e<<3)+v|0;if((H[j>>2]&2147483647)==(m|0)){p=H[j+4>>2];if((i|0)==(p&2147483647)){break c}}e=H[(e<<2)+u>>2];if((e|0)!=-1){continue}break}}e=H[a+8>>2];if(e>>>0>=K[a>>2]){g=$G(a,o);h=H[a+12>>2];e=H[a+8>>2]}H[a+8>>2]=e+1;j=H[a+20>>2]+(e<<3)|0;H[j+4>>2]=i;H[j>>2]=m|-2147483648;g=(g<<2)+h|0;H[H[a+16>>2]+(e<<2)>>2]=H[g>>2];H[g>>2]=e;break b}H[j+4>>2]=p|-2147483648}f=f+1|0;if(K[(f<<3)+c>>2]<=n>>>0){continue}break}}if(b>>>0<=l>>>0){break a}e=l;k=k+1|0;if(k>>>0>>0){continue}break}}}function LU(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=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=0,m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0);l=Oa-32|0;Oa=l;r=L[c+4>>2];i=L[d+16>>2];L[l>>2]=i;h=L[d+20>>2];L[l+4>>2]=h;g=L[d+24>>2];L[l+12>>2]=r;L[l+8>>2]=g;c=H[e+32>>2];a:{b:{if(!BU(a,l+16|0,l+28|0,l,c,e+4|0,f)){g=L[l+28>>2];c=0;if(g>O(r*r)){break a}g=O(r-O(W(g)));L[b>>2]=g>O(0)?g:O(0);L[a+8>>2]=-L[a+8>>2];L[a+4>>2]=-L[a+4>>2];L[a>>2]=-L[a>>2];break b}d=I[c+55|0];c:{if(!d){g=O(-3.4028234663852886e38);break c}m=L[f+8>>2];g=O(g-L[f+24>>2]);g=O(g+g);n=L[f>>2];i=O(i-L[f+16>>2]);i=O(i+i);h=O(h-L[f+20>>2]);j=O(h+h);h=L[f+4>>2];k=O(O(m*g)+O(O(n*i)+O(j*h)));o=L[f+12>>2];q=O(O(o*o)+O(-.5));s=O(O(m*k)+O(O(g*q)-O(o*O(O(n*j)-O(i*h)))));t=O(O(h*k)+O(O(j*q)-O(o*O(O(m*i)-O(g*n)))));u=O(O(n*k)+O(O(i*q)-O(o*O(O(h*g)-O(j*m)))));v=O(-h);w=O(-n);x=O(-m);f=H[c+56>>2];g=O(-3.4028234663852886e38);while(1){d=d-1|0;j=L[f+8>>2];k=L[f>>2];p=L[f+4>>2];i=O(L[f+12>>2]+O(O(s*j)+O(O(u*k)+O(t*p))));if(i>g){g=O(j+j);j=O(k+k);k=O(p+p);p=O(O(m*g)+O(O(n*j)+O(h*k)));L[a+8>>2]=O(m*p)+O(O(g*q)+O(o*O(O(n*k)+O(j*v))));L[a+4>>2]=O(h*p)+O(O(k*q)+O(o*O(O(m*j)+O(g*w))));L[a>>2]=O(n*p)+O(O(j*q)+O(o*O(O(h*g)+O(k*x))));g=i}f=f+20|0;if(d){continue}break}}g=O(r-g);L[b>>2]=g>O(0)?g:O(0)}c=1}Oa=l+32|0;return c|0}function JI(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,o=0,p=0,q=0;b=H[a+1568>>2];if(!b){h=Oa-16|0;Oa=h;e=a+1280|0;b=H[e+284>>2];if(b){c=H[33808];d=c+12|0;g=(m=d,n=b,o=Ra[H[H[c>>2]+20>>2]](c)|0?41076:55639,p=15259,q=180,l=H[H[d>>2]+8>>2],Ra[l](m|0,n|0,o|0,p|0,q|0)|0)}else{g=0}H[h+12>>2]=g;c=H[e+268>>2];a:{if(c>>>0>=(H[e+272>>2]&2147483647)>>>0){d=e+4|0;b=H[d+268>>2]&2147483647;i=b?b<<1:1;c=0;b:{if(!i){break b}b=i<<2;if(!(I[d+256|0]|b>>>0>256)){F[d+256|0]=1;c=d;break b}c=0;if(!b){break b}c=H[33808];f=Ra[H[H[c>>2]+20>>2]](c)|0?41076:55639;c=Ra[H[H[c+12>>2]+8>>2]](c+12|0,b,f,13582,553)|0}b=c;f=H[d+264>>2];k=b+(f<<2)|0;if((f|0)>0){j=H[d+260>>2];while(1){H[c>>2]=H[j>>2];j=j+4|0;c=c+4|0;if(k>>>0>c>>>0){continue}break}}H[k>>2]=H[h+12>>2];c:{if(H[d+268>>2]<0){break c}c=H[d+260>>2];if((c|0)==(d|0)){F[d+256|0]=0;break c}if(!c){break c}f=H[33808];Ra[H[H[f+12>>2]+12>>2]](f+12|0,c);f=H[d+264>>2]}H[d+268>>2]=i;H[d+260>>2]=b;H[d+264>>2]=f+1;break a}H[H[e+264>>2]+(c<<2)>>2]=g;H[e+268>>2]=c+1}b=((H[e+276>>2]<<5)+g|0)-32|0;if(g>>>0<=b>>>0){c=H[e+288>>2];while(1){H[b>>2]=c;c=b;b=b-32|0;if(g>>>0<=b>>>0){continue}break}H[e+288>>2]=c}Oa=h+16|0;b=H[a+1568>>2]}H[a+1568>>2]=H[b>>2];a=a+1560|0;H[a>>2]=H[a>>2]+1;H[b+28>>2]=0;H[b+20>>2]=-1;H[b+24>>2]=0;H[b+12>>2]=-1;H[b+16>>2]=-1;G[b+10>>1]=0;G[b+4>>1]=0;return b}function Ct(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0;d=Oa-288|0;Oa=d;e=H[b+4>>2];a:{if(!(I[(e&1?H[b+8>>2]:(H[((e>>>22&60)+76348|0)+12>>2]+b|0)+8|0)|0]&8)){F[d+272|0]=1;H[d+280>>2]=0;H[d+284>>2]=64;H[d+276>>2]=d+16;e=$n(b,d+12|0);JO(a,b+16|0,H[d+12>>2],e,c);if(e){c=H[b>>2];b=0;while(1){a=H[H[d+12>>2]+(b<<2)>>2]+32|0;g=H[a+4>>2];if((g&251658240)==16777216){H[a>>2]=c;H[a+4>>2]=g&1073741823|-2147483648}a=a-16|0;H[a>>2]=H[a>>2]+1;b=b+1|0;if((e|0)!=(b|0)){continue}break}}a=H[d+284>>2];if((a|0)<0|!(a&2147483647)){break a}a=H[d+276>>2];if((a|0)==(d+16|0)|!a){break a}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,a);break a}F[d+272|0]=1;H[d+280>>2]=0;H[d+284>>2]=64;H[d+276>>2]=d+16;a=$n(b,d+12|0);b:{if(!a){break b}c=H[b>>2];b=0;if((a|0)!=1){g=a&-2;while(1){f=b<<2;e=H[f+H[d+12>>2]>>2];h=H[e+36>>2];if((h&251658240)==16777216){H[e+32>>2]=c;H[e+36>>2]=h&1073741823|-2147483648}e=H[H[d+12>>2]+(f|4)>>2];f=H[e+36>>2];if((f&251658240)==16777216){H[e+32>>2]=c;H[e+36>>2]=f&1073741823|-2147483648}b=b+2|0;i=i+2|0;if((g|0)!=(i|0)){continue}break}}if(!(a&1)){break b}a=H[H[d+12>>2]+(b<<2)>>2];b=H[a+36>>2];if((b&251658240)!=16777216){break b}H[a+32>>2]=c;H[a+36>>2]=b&1073741823|-2147483648}a=H[d+284>>2];if((a|0)<0|!(a&2147483647)){break a}a=H[d+276>>2];if((a|0)==(d+16|0)|!a){break a}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,a)}Oa=d+288|0}function $C(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;a:{if(!I[a+338|0]){break a}b:{c:{d:{e:{switch(H[a+268>>2]){case 0:if(!b){break a}if(Ra[H[H[a>>2]+76>>2]](a)|0){break c}break a;case 1:SA(H[a+32>>2],a+8|0,a+24|0,0,0);H[a+44>>2]=0;H[a+268>>2]=2;e=H[a+12>>2];if(e>>>0>=2){c=e;while(1){f:{g=f;f=f+1|0;if(g>>>0>30){break f}h=c>>>0>3;c=c>>>1|0;if(h){continue}}break}c=g>>>0<31?f:-1}else{c=0}c=N(c,e);f=H[a+4>>2];if(f){d=H[f+44>>2]}g:{if(!(c>>>0>d<<1>>>0|d>>>1>>>0>c>>>0)){c=d;d=H[a+280>>2];break g}H[a+280>>2]=0;d=0}c=N(d,e)+c|0;H[a+276>>2]=(c|0)>0?c:0;break d;case 2:H[a+44>>2]=H[a+44>>2]+1;if(SA(H[a+32>>2],a+8|0,a+24|0,1,(K[a+276>>2]/K[a+272>>2]|0)+1|0)){break d}H[a+268>>2]=3;break d;case 3:H[a+268>>2]=4;H[a+44>>2]=H[a+44>>2]+1;if(!H[a+344>>2]){break d}d=a+324|0;c=H[a+40>>2];e=H[a+284>>2];mC(d,c>>>0>e>>>0?c:e,H[a+32>>2]);if(H[a+344>>2]>0){c=H[a+340>>2];while(1){nC(d,H[c>>2],H[c+4>>2],H[a+32>>2]);c=c+8|0;if(c>>>0>2]+(H[a+344>>2]<<3)>>>0){continue}break}}H[a+344>>2]=0;break d;case 4:H[a+268>>2]=5;H[a+44>>2]=H[a+44>>2]+1;f=H[a+292>>2];d=H[a+32>>2];c=H[d+40>>2];if(c){g=H[d>>2];e=H[d+8>>2];c=c-1|0;d=e+N(c,28)|0;if(c){while(1){UA(d,f,g,e);c=c-1|0;d=e+N(c,28)|0;if(c){continue}break}}UA(d,f,g,e)}break d;case 5:break e;default:break d}}H[a+268>>2]=6}if(!b){break b}}F[a+337|0]=1}c=H[a+268>>2]==6}return c|0}function yM(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;o=N(I[a+13|0],48);f=I[a+12|0];p=f<<4;k=o+p|0;if(k){l=f<<(e?3:2);q=H[a+8>>2];r=H[a>>2];a:{b:{f=H[c+7172>>2];if(f){t=H[a+4>>2];i=p+H[f+4>>2]|0;H[f+4>>2]=i;f=H[c+7172>>2];s=H[f+8>>2];u=H[f>>2];m=H[f+12>>2];h=H[f+4>>2];g=H[c+7176>>2];f=o+H[g+4>>2]|0;H[g+4>>2]=f;g=H[c+7176>>2];k=H[g>>2];j=H[g+8>>2];m=j>>>0<=H[g+12>>2]+H[g+4>>2]>>>0|s>>>0<=h+m>>>0;c:{if(l){g=H[c+7180>>2];h=H[g+4>>2]+l|0;H[g+4>>2]=h;n=H[c+7180>>2];g=H[n+8>>2];if(m|g>>>0<=H[n+12>>2]+H[n+4>>2]>>>0){break c}h=(H[n>>2]+g|0)-h|0;break b}h=0;if(!m){break b}}h=0;G[a+12>>1]=0;f=0;g=0;break a}j=(l+k|0)+15&65520;d:{if(j>>>0>=16385){g=Nx(H[c+500>>2],j);break d}e:{g=H[c+504>>2];if(g){i=H[c+508>>2];f=i+j|0;if(f>>>0<16385){break e}}g=Px(H[c+500>>2]);H[c+508>>2]=j;H[c+504>>2]=g;break d}H[c+508>>2]=f;g=g+i|0}i=I[a+13|0];f=R6(g,r,k);h=l?f+k|0:0;f=f+N(i,48)|0;if(!e){break a}e=I[a+12|0]<<2;R6(e+h|0,e+q|0,e);break a}g=(k+j|0)-f|0;R6(g,r,o);f=(s+u|0)-i|0;R6(f,t,p);if(!e){break a}e=I[a+12|0]<<2;R6(e+h|0,e+q|0,e)}if(l){S6(h,0,l)}H[a+8>>2]=h;H[a+4>>2]=f;H[a>>2]=g}e=J[b+4>>1];f:{if(!e){break f}if(I[b+7|0]&2){v=b,w=R6(tJ(c+512|0,e),H[b>>2],J[b+4>>1]),H[v>>2]=w;F[b+7|0]=I[b+7|0]|3;return}if(!d){break f}a=H[b>>2];v=b,w=R6(tJ(c+512|0,e+15&65520),a,J[b+4>>1]),H[v>>2]=w}}function SV(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=O(0),f=0,g=O(0),h=O(0),i=0,j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=0,C=O(0),D=O(0),E=O(0);i=Oa-16|0;Oa=i;g=L[b+56>>2];h=L[b+24>>2];l=L[b+40>>2];m=L[b+48>>2];n=L[b+32>>2];o=L[b+52>>2];p=L[b+20>>2];q=L[b+36>>2];f=H[b+8>>2];r=L[b+16>>2];e=L[c+8>>2];j=L[c>>2];k=L[c+4>>2];b=H[b+4>>2];s=L[b+56>>2];t=L[b+52>>2];u=L[b+72>>2];c=b- -64|0;v=L[c>>2];w=L[b+68>>2];x=L[b+88>>2];y=L[b+80>>2];z=L[b+84>>2];A=L[b+48>>2];H[i+12>>2]=0;g=O(O(g*e)+O(O(h*j)+O(k*l)));h=O(O(m*e)+O(O(r*j)+O(k*n)));e=O(O(o*e)+O(O(p*j)+O(k*q)));L[i+8>>2]=O(x*g)+O(O(y*h)+O(z*e));L[i+4>>2]=O(u*g)+O(O(v*h)+O(e*w));L[i>>2]=O(s*g)+O(O(A*h)+O(e*t));B=d;d=EU(b,i);H[B>>2]=d;g=L[b+88>>2];h=L[b+56>>2];l=L[b+72>>2];m=L[c>>2];n=L[b+80>>2];o=L[b+84>>2];c=H[b+152>>2]+N(d,12)|0;e=L[c+8>>2];p=L[b+52>>2];j=L[c>>2];q=L[b+68>>2];k=L[c+4>>2];r=L[b+48>>2];s=L[f+52>>2];t=L[f+36>>2];u=L[f+20>>2];v=L[f+56>>2];w=L[f+40>>2];x=L[f+24>>2];y=L[f+48>>2];z=L[f+32>>2];A=L[f>>2];C=L[f+16>>2];D=L[f+4>>2];E=L[f+8>>2];H[a+12>>2]=0;g=O(O(g*e)+O(O(h*j)+O(k*l)));h=O(O(n*e)+O(O(r*j)+O(k*m)));e=O(O(o*e)+O(O(p*j)+O(k*q)));L[a+8>>2]=v+O(O(w*g)+O(O(E*h)+O(x*e)));L[a+4>>2]=s+O(O(t*g)+O(O(D*h)+O(e*u)));L[a>>2]=y+O(O(z*g)+O(O(A*h)+O(e*C)));Oa=i+16|0}function Ww(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=O(0),j=O(0),k=O(0),l=0,m=O(0),n=0,o=0,p=0;d=Oa+-64|0;Oa=d;a:{if(I[a+488|0]){o5(H[33808],8,10222,420,66040,0);break a}f=a+112|0;i=L[b>>2];j=L[b+4>>2];m=O(-L[b+8>>2]);L[d+56>>2]=m;j=O(-j);L[d+52>>2]=j;i=O(-i);L[d+48>>2]=i;l=H[a+448>>2];e=H[c+52>>2];b:{if(F[H[a+476>>2]]&1){b=0;n=l<<5;o=H[e+4>>2];g=H[e+8>>2];p=H[(o+(g<<2)|0)-4>>2];if((n|0)<=(p-H[e+16>>2]|0)){h=p-n|0;H[d>>2]=h;c:{if(g>>>0>=(H[e+12>>2]&2147483647)>>>0){Xr(e+4|0,d);break c}H[(g<<2)+o>>2]=h;H[e+8>>2]=g+1}h=H[d>>2]}if(!l){break b}g=H[a+444>>2];while(1){a=b<<5;k=L[H[(a+g|0)+16>>2]+124>>2];a=a+h|0;H[a+24>>2]=0;H[a+16>>2]=0;H[a+20>>2]=0;k=O(O(1)/k);L[a+8>>2]=k*m;L[a+4>>2]=k*j;L[a>>2]=k*i;b=b+1|0;if((l|0)==(b|0)){break b}m=L[d+56>>2];j=L[d+52>>2];i=L[d+48>>2];continue}}H[d+40>>2]=0;H[d+32>>2]=0;H[d+36>>2]=0;H[d+24>>2]=0;H[d+28>>2]=0;H[d+16>>2]=0;H[d+20>>2]=0;H[d+8>>2]=0;H[d+12>>2]=0;H[d>>2]=0;H[d+4>>2]=0;b=Fw(e,l,d);H[d+24>>2]=0;H[d+28>>2]=0;c=H[c+24>>2];H[d+16>>2]=0;H[d+32>>2]=c;zw(f,d);S6(H[d+8>>2],0,H[a+448>>2]<<5);vw(f,d+48|0,d);Mw(f,d);Ow(f,d);Qw(f,d);Rw(f,d);Lw(e,b);break a}H[d+8>>2]=0;H[d+12>>2]=0;H[d+40>>2]=0;H[d+32>>2]=0;H[d+36>>2]=0;H[d+24>>2]=0;H[d+28>>2]=0;H[d+16>>2]=0;H[d+20>>2]=0;H[d>>2]=0;H[d+4>>2]=0;H[d+12>>2]=h;H[d+32>>2]=H[c+24>>2];Nw(f,d);Lw(e,h)}Oa=d- -64|0}function $1(a,b,c,d,e){var f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0);q=L[d+20>>2];r=L[d+24>>2];n=L[c+36>>2];o=L[c+32>>2];p=L[c+40>>2];s=L[d+16>>2];f=L[d+12>>2];g=L[c+28>>2];h=L[c+16>>2];j=L[d>>2];k=L[d+4>>2];i=L[c+20>>2];l=L[d+8>>2];m=L[c+24>>2];L[a+12>>2]=O(O(O(f*g)-O(h*j))-O(k*i))-O(l*m);L[a+8>>2]=O(O(j*i)+O(O(f*m)+O(l*g)))-O(h*k);L[a+4>>2]=O(O(l*h)+O(O(f*i)+O(k*g)))-O(m*j);L[a>>2]=O(O(k*m)+O(O(f*h)+O(j*g)))-O(i*l);g=O(p+p);h=O(o+o);i=O(n+n);m=O(O(l*g)+O(O(j*h)+O(k*i)));n=O(O(f*f)+O(-.5));L[a+24>>2]=r+O(O(l*m)+O(O(g*n)+O(f*O(O(j*i)-O(h*k)))));L[a+20>>2]=q+O(O(k*m)+O(O(i*n)+O(f*O(O(l*h)-O(g*j)))));L[a+16>>2]=s+O(O(j*m)+O(O(h*n)+O(f*O(O(k*g)-O(i*l)))));q=L[e+20>>2];r=L[e+24>>2];n=L[c- -64>>2];o=L[c+60>>2];p=L[c+68>>2];s=L[e+16>>2];f=L[e+12>>2];g=L[c+56>>2];h=L[c+44>>2];j=L[e>>2];k=L[e+4>>2];i=L[c+48>>2];l=L[e+8>>2];m=L[c+52>>2];L[b+12>>2]=O(O(O(f*g)-O(h*j))-O(k*i))-O(l*m);L[b+8>>2]=O(O(j*i)+O(O(f*m)+O(l*g)))-O(h*k);L[b+4>>2]=O(O(l*h)+O(O(f*i)+O(k*g)))-O(m*j);L[b>>2]=O(O(k*m)+O(O(f*h)+O(j*g)))-O(i*l);g=O(p+p);h=O(o+o);i=O(n+n);m=O(O(l*g)+O(O(j*h)+O(k*i)));n=O(O(f*f)+O(-.5));L[b+24>>2]=r+O(O(l*m)+O(O(g*n)+O(f*O(O(j*i)-O(h*k)))));L[b+20>>2]=q+O(O(k*m)+O(O(i*n)+O(f*O(O(l*h)-O(g*j)))));L[b+16>>2]=s+O(O(j*m)+O(O(h*n)+O(f*O(O(k*g)-O(i*l)))))}function uK(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;h=Oa-16|0;Oa=h;n=H[a+8>>2];if(n){p=c+112|0;q=c+100|0;while(1){g=H[a+20>>2]+(l<<3)|0;f=H[g+4>>2];j=H[g>>2];a:{if((j|0)<0){f=H[N(f>>>2&536870911,12)+b>>2];j=H[N(j>>>2&536870911,12)+b>>2];i=f>>>0>j>>>0;H[h+12>>2]=i?f:j;H[h+8>>2]=i?j:f;f=H[c+104>>2];b:{if(f>>>0>=(H[c+108>>2]&2147483647)>>>0){$J(q,h+8|0);break b}j=H[h+12>>2];f=H[c+100>>2]+(f<<3)|0;H[f>>2]=H[h+8>>2];H[f+4>>2]=j;H[c+104>>2]=H[c+104>>2]+1}H[g>>2]=H[g>>2]&2147483647;H[g+4>>2]=H[g+4>>2]&2147483647;l=l+1|0;break a}c:{if((f|0)<0){H[g+4>>2]=f&2147483647;break c}g=f>>>2|0;k=j>>>7|0;m=H[d+4>>2];i=j>>>2|0;if(!(k>>>0>>0&(H[H[d>>2]+(k<<2)>>2]>>>i&1))){o=f>>>7|0;if(m>>>0<=o>>>0|!(H[H[d>>2]+(o<<2)>>2]>>>g&1)){break c}}m=H[e+4>>2];d:{if(H[H[e>>2]+(k<<2)>>2]>>>i&1&m>>>0>k>>>0){break d}k=f>>>7|0;if(k>>>0>>0&(H[H[e>>2]+(k<<2)>>2]>>>g&1)){break d}g=H[N(g,12)+b>>2];i=H[N(i,12)+b>>2];k=g>>>0>i>>>0;H[h+12>>2]=k?g:i;H[h+8>>2]=k?i:g;g=H[c+116>>2];if(g>>>0>=(H[c+120>>2]&2147483647)>>>0){$J(p,h+8|0);break d}i=H[h+12>>2];g=H[c+112>>2]+(g<<3)|0;H[g>>2]=H[h+8>>2];H[g+4>>2]=i;H[c+116>>2]=H[c+116>>2]+1}f=j&65535|f<<16;f=(f<<15^-1)+f|0;f=N(f>>>10^f,9);f=f>>>6^f;f=(f<<11^-1)+f|0;aH(a,H[a+4>>2]&(f>>>16^f),l);n=n-1|0;break a}l=l+1|0}if(l>>>0>>0){continue}break}}ZG(a);Oa=h+16|0}function uw(a){var b=0,c=O(0),d=O(0),e=O(0),f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=0,s=O(0),t=O(0),u=O(0),v=O(0),w=0,x=0;r=H[a+336>>2];if(r){w=H[a+236>>2];x=H[a+332>>2];a=0;while(1){b=H[((a<<5)+x|0)+16>>2];j=L[b+120>>2];k=L[b+112>>2];f=L[b+116>>2];c=L[b+8>>2];h=L[b+4>>2];l=L[b+12>>2];d=L[b>>2];e=L[b+124>>2];b=N(a,112)+w|0;H[b+32>>2]=0;H[b+24>>2]=0;H[b+28>>2]=0;H[b+16>>2]=0;H[b+20>>2]=0;H[b+8>>2]=0;H[b+12>>2]=0;H[b>>2]=0;H[b+4>>2]=0;H[b- -64>>2]=0;H[b+56>>2]=0;H[b+60>>2]=0;H[b+48>>2]=0;H[b+40>>2]=0;H[b+44>>2]=0;e=e==O(0)?O(0):O(O(1)/e);L[b+68>>2]=e;L[b+52>>2]=e;L[b+36>>2]=e;g=j==O(0)?O(0):O(O(1)/j);i=d;d=O(d+d);n=O(O(1)-O(i*d));e=O(h+h);s=O(h*e);j=O(n-s);i=k==O(0)?O(0):O(O(1)/k);q=O(d*c);t=O(e*l);k=O(q-t);m=O(e*c);o=O(d*l);e=O(m+o);f=f==O(0)?O(0):O(O(1)/f);L[b+104>>2]=O(O(g*j)*j)+O(O(O(i*k)*k)+O(e*O(e*f)));p=O(d*h);d=O(c+c);u=O(l*d);h=O(p+u);l=O(i*h);v=O(c*d);d=O(n-v);n=O(f*d);m=O(m-o);o=O(g*m);L[b+88>>2]=O(o*m)+O(O(l*h)+O(d*n));p=O(p-u);c=O(f*p);f=g;g=O(q+t);f=O(f*g);q=O(f*g);g=i;i=O(O(O(1)-s)-v);g=O(g*i);L[b+72>>2]=q+O(O(g*i)+O(p*c));h=O(O(f*m)+O(O(g*h)+O(d*c)));L[b+84>>2]=h;L[b+76>>2]=h;c=O(O(f*j)+O(O(g*k)+O(e*c)));L[b+96>>2]=c;L[b+80>>2]=c;c=O(O(o*j)+O(O(l*k)+O(e*n)));L[b+92>>2]=c;L[b+100>>2]=c;a=a+1|0;if((r|0)!=(a|0)){continue}break}}}function oK(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;k=H[a+76>>2];l=k+(b<<3)|0;g=H[l>>2];a:{if(!(F[l+4|0]&1)){F[a+169|0]=1;H[a+120>>2]=0;h=H[a+116>>2];if(g>>>0>>0){if(H[a+92>>2]!=(h|0)){j=H[a+108>>2];c=h-1|0;e=J[j+(c<<1)>>1];d=H[a+100>>2];i=d+N(g,24)|0;f=d+N(c,24)|0;d=H[f+4>>2];H[i>>2]=H[f>>2];H[i+4>>2]=d;d=H[f+20>>2];H[i+16>>2]=H[f+16>>2];H[i+20>>2]=d;d=H[f+12>>2];H[i+8>>2]=H[f+8>>2];H[i+12>>2]=d;G[j+(g<<1)>>1]=e;H[k+(e<<3)>>2]=g;h=H[a+116>>2];g=c}H[a+116>>2]=h-1}f=H[a+92>>2]-1|0;H[a+92>>2]=f;e=H[a+100>>2];k=H[a+108>>2];break a}F[a+168|0]=1;c=H[a+128>>2];i=g>>>5|0;b:{if(c>>>0>i>>>0){e=g&31;h=H[a+124>>2];break b}e=g&31;j=(g+128>>>5|0)+((e|0)!=0)|0;if(j){c=H[33808]+12|0;h=Ra[H[H[c>>2]+8>>2]](c,j<<2,20591,10568,274)|0;c=H[a+128>>2]}if(c){R6(h,H[a+124>>2],c<<2);f=H[a+128>>2]}c=j-f|0;if(c){S6((f<<2)+h|0,0,c<<2)}d=H[a+124>>2];if(d){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,d)}H[a+128>>2]=j;H[a+124>>2]=h}c=(i<<2)+h|0;H[c>>2]=H[c>>2]|1<>2]-1|0;H[a+84>>2]=f;e=H[a+96>>2];k=H[a+104>>2]}j=J[k+(f<<1)>>1];i=H[a+76>>2];d=N(g,24)+e|0;e=N(f,24)+e|0;c=H[e+4>>2];H[d>>2]=H[e>>2];H[d+4>>2]=c;c=H[e+20>>2];H[d+16>>2]=H[e+16>>2];H[d+20>>2]=c;c=H[e+12>>2];H[d+8>>2]=H[e+8>>2];H[d+12>>2]=c;G[k+(g<<1)>>1]=j;H[i+(j<<3)>>2]=g;H[l>>2]=H[a+72>>2];H[l+4>>2]=-1;H[a+72>>2]=b;H[a+64>>2]=H[a+64>>2]-1}function SA(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;g=Oa-16|0;Oa=g;j=-1;a:{b:{switch(d|0){case 0:d=H[b+4>>2];if(!d){break a}OA(a,1);H[a+4>>2]=d;if(!jX(b,a+12|0,c,a)){break a}b=H[33808];c=b+12|0;b=(p=c,q=16,r=Ra[H[H[b>>2]+20>>2]](b)|0?35694:55639,s=9670,t=281,o=H[H[c>>2]+8>>2],Ra[o](p|0,q|0,r|0,s|0,t|0)|0);H[b>>2]=0;H[b+4>>2]=0;H[b+8>>2]=0;H[b+12>>2]=0;H[a+48>>2]=b;H[g+4>>2]=H[a+12>>2];TA(b,g+4|0);j=0;break a;case 1:break b;default:break a}}if(H[H[a+48>>2]+4>>2]){if(!e){j=1;break a}n=a+12|0;j=1;while(1){d=H[a+48>>2];f=H[d+4>>2];if(!f){break a}i=H[d+12>>2];h=i+1|0;H[d+12>>2]=h;i=H[H[d>>2]+(i<<2)>>2];if((f|0)==(h|0)){H[d+12>>2]=0;H[d+4>>2]=0}hX(i,b,c,n,H[a>>2]);h=H[i+24>>2];c:{if(!h){break c}l=h+36|0;H[g+8>>2]=l;k=H[d+8>>2]&2147483647;f=H[d+4>>2];d:{if(k>>>0<=f>>>0){TA(d,g+8|0);k=H[d+8>>2]&2147483647;f=H[d+4>>2];break d}H[H[d>>2]+(f<<2)>>2]=l;f=f+1|0;H[d+4>>2]=f}H[g+12>>2]=h;if(f>>>0>=k>>>0){TA(d,g+12|0);break c}H[H[d>>2]+(f<<2)>>2]=h;H[d+4>>2]=f+1}d=H[i+32>>2];H[c+4>>2]=d+H[c+4>>2];m=d+m|0;if(m>>>0>>0){continue}break}break a}PA(a,b,c);b=H[a+48>>2];if(b){c=H[b+8>>2];e:{if((c|0)<0|!(c&2147483647)){break e}c=H[b>>2];if(!c){break e}d=H[33808]+12|0;Ra[H[H[d>>2]+12>>2]](d,c)}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}j=0;H[a+48>>2]=0}Oa=g+16|0;return j}function wD(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;j=Oa-16|0;Oa=j;a:{if(!H[a+684>>2]){break a}g=(b<<15^-1)+b|0;g=N(g>>>10^g,9);g=g>>>6^g;g=(g<<11^-1)+g|0;h=H[H[a+660>>2]+((H[a+668>>2]-1&(g>>>16^g))<<2)>>2];if((h|0)==-1){break a}g=H[a+656>>2];f=H[a+652>>2];while(1){if(H[f+(h<<3)>>2]!=(b|0)){h=H[g+(h<<2)>>2];if((h|0)!=-1){continue}break a}break}k=H[a+644>>2];g=f+(h<<3)|0;i=H[g+4>>2];f=H[e+4>>2];b=H[e>>2];H[j>>2]=b;H[j+4>>2]=f;H[j+8>>2]=b;H[j+12>>2]=f;f=Oa-16|0;Oa=f;i=k+N(i,44)|0;lB(H[i+4>>2],c,d,j,1);c=H[H[H[i+4>>2]+16>>2]+(H[c>>2]<<2)>>2];H[f+8>>2]=0;H[f>>2]=0;H[f+4>>2]=0;aC(f,8);d=SB(H[i>>2],c,H[H[i+4>>2]+8>>2],f);b=H[f+4>>2];b:{if(b){c:{if(H[d+40>>2]|!d){break c}h=H[d+36>>2];if(!H[h>>2]){break c}c=0;while(1){H[H[H[i+8>>2]>>2]+(H[((c<<2)+h|0)+4>>2]<<2)>>2]=d;c=c+1|0;h=H[d+36>>2];if(c>>>0>2]){continue}break}}b=b>>>0>1?b:1;d=0;while(1){c=0;e=H[H[f>>2]+(d<<2)>>2];h=H[e+36>>2];if(H[h>>2]){while(1){H[H[H[i+8>>2]>>2]+(H[((c<<2)+h|0)+4>>2]<<2)>>2]=e;c=c+1|0;h=H[e+36>>2];if(c>>>0>2]){continue}break}}d=d+1|0;if((b|0)!=(d|0)){continue}break}break b}H[H[H[i+8>>2]>>2]+(c<<2)>>2]=d}b=H[f+8>>2];d:{if((b|0)<0|!(b&2147483647)){break d}c=H[f>>2];if(!c){break d}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,c)}Oa=f+16|0;uD(a,H[g+4>>2]);i=1}Oa=j+16|0;return i|0}function QV(a,b,c){a=a|0;b=b|0;c=c|0;var d=O(0),e=0,f=O(0),g=O(0),h=0,i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=0,B=O(0),C=O(0),D=O(0);h=Oa-16|0;Oa=h;f=L[b+56>>2];g=L[b+24>>2];k=L[b+40>>2];l=L[b+48>>2];m=L[b+32>>2];n=L[b+52>>2];o=L[b+20>>2];p=L[b+36>>2];e=H[b+8>>2];q=L[b+16>>2];d=L[c+8>>2];i=L[c>>2];j=L[c+4>>2];b=H[b+4>>2];r=L[b+56>>2];s=L[b+52>>2];t=L[b+72>>2];c=b- -64|0;u=L[c>>2];v=L[b+68>>2];w=L[b+88>>2];x=L[b+80>>2];y=L[b+84>>2];z=L[b+48>>2];H[h+12>>2]=0;f=O(O(f*d)+O(O(g*i)+O(j*k)));g=O(O(l*d)+O(O(q*i)+O(j*m)));d=O(O(n*d)+O(O(o*i)+O(j*p)));L[h+8>>2]=O(w*f)+O(O(x*g)+O(y*d));L[h+4>>2]=O(t*f)+O(O(u*g)+O(d*v));L[h>>2]=O(r*f)+O(O(z*g)+O(d*s));A=EU(b,h);f=L[b+88>>2];g=L[b+56>>2];k=L[b+72>>2];l=L[c>>2];m=L[b+80>>2];n=L[b+84>>2];c=H[b+152>>2]+N(A,12)|0;d=L[c+8>>2];o=L[b+52>>2];i=L[c>>2];p=L[b+68>>2];j=L[c+4>>2];q=L[b+48>>2];r=L[e+52>>2];s=L[e+36>>2];t=L[e+20>>2];u=L[e+56>>2];v=L[e+40>>2];w=L[e+24>>2];x=L[e+48>>2];y=L[e+32>>2];z=L[e>>2];B=L[e+16>>2];C=L[e+4>>2];D=L[e+8>>2];H[a+12>>2]=0;f=O(O(f*d)+O(O(g*i)+O(j*k)));g=O(O(m*d)+O(O(q*i)+O(j*l)));d=O(O(n*d)+O(O(o*i)+O(j*p)));L[a+8>>2]=u+O(O(v*f)+O(O(D*g)+O(w*d)));L[a+4>>2]=r+O(O(s*f)+O(O(C*g)+O(d*t)));L[a>>2]=x+O(O(y*f)+O(O(z*g)+O(d*B)));Oa=h+16|0}function Sk(a,b){a=a|0;b=b|0;var c=O(0),d=0,e=O(0),f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=0,o=O(0),p=O(0),q=O(0),r=O(0),s=O(0);d=Oa+-64|0;Oa=d;a=a+8|0;n=H[a+384>>2];a:{if(!n){break a}Ra[H[H[n>>2]+112>>2]](d,n);g=L[b+12>>2];e=L[b+8>>2];o=L[b>>2];h=L[b+4>>2];i=L[d>>2];c=O(L[b+16>>2]-L[d+16>>2]);f=O(c+c);c=O(L[b+20>>2]-L[d+20>>2]);l=O(c+c);j=L[d+4>>2];k=L[d+8>>2];c=O(L[b+24>>2]-L[d+24>>2]);m=O(c+c);p=O(O(O(O(-i)*f)-O(l*j))-O(k*m));c=L[d+12>>2];q=O(O(c*c)+O(-.5));r=O(O(O(m*q)+O(c*O(O(j*f)-O(i*l))))-O(k*p));L[d+56>>2]=r;s=O(O(O(l*q)+O(c*O(O(i*m)-O(k*f))))-O(j*p));L[d+52>>2]=s;l=O(O(O(f*q)+O(c*O(O(k*l)-O(j*m))))-O(i*p));L[d+48>>2]=l;f=e;e=O(O(1)/O(W(O(O(g*g)+O(O(e*e)+O(O(o*o)+O(h*h)))))));f=O(f*e);h=O(h*e);g=O(g*e);e=O(o*e);o=O(O(k*f)+O(O(j*h)+O(O(c*g)+O(i*e))));L[d+44>>2]=o;m=O(O(e*j)+O(O(O(c*f)-O(g*k))-O(i*h)));L[d+40>>2]=m;p=O(O(f*i)+O(O(O(c*h)-O(g*j))-O(k*e)));L[d+36>>2]=p;c=O(O(h*k)+O(O(O(c*e)-O(g*i))-O(j*f)));L[d+32>>2]=c;b:{c:{d:{n=H[a+4>>2];switch((n>>>30|0)-2|0){case 1:break b;case 0:break d;default:break c}}if(I[H[a>>2]+4785|0]){break b}}bE(a+12|0,d+32|0);break a}b=H[a+8>>2];if(!b){b=Tt(H[a>>2],n>>>24&15);H[a+8>>2]=b}L[b+24>>2]=r;L[b+20>>2]=s;L[b+16>>2]=l;L[b+12>>2]=o;L[b+8>>2]=m;L[b+4>>2]=p;L[b>>2]=c;$t(H[a>>2],a);H[a+4>>2]=H[a+4>>2]|1}Oa=d- -64|0}function bU(a,b){var c=O(0),d=O(0),e=O(0),f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0);v=L[a+8>>2];l=L[b+12>>2];f=O(l+l);d=L[b+20>>2];n=O(f*d);k=L[b+16>>2];c=O(k+k);e=L[b+24>>2];h=O(c*e);m=O(n+h);g=L[b>>2];q=O(k*c);i=O(d+d);r=O(d*i);u=O(O(O(1)-q)-r);w=O(g*u);s=O(c*d);j=O(f*e);d=O(s-j);c=O(f*k);e=O(i*e);k=O(c+e);i=L[b+4>>2];x=O(k*i);t=O(O(1)-O(l*f));f=O(t-q);l=O(n-h);h=L[b+8>>2];q=O(l*h);o=O(O(O(m*w)+O(d*x))+O(f*q));c=O(c-e);y=O(g*c);e=O(t-r);r=O(e*i);n=O(s+j);s=O(n*h);j=O(O(O(m*y)+O(d*r))+O(f*s));t=L[a+20>>2];z=m;m=O(g*m);g=d;d=O(d*i);p=f;f=O(f*h);g=O(O(O(z*m)+O(g*d))+O(p*f));i=L[a+32>>2];L[a+32>>2]=O(O(v*o)+O(j*t))+O(g*i);h=L[a+4>>2];A=L[a+16>>2];B=L[a+28>>2];L[a+28>>2]=O(O(h*o)+O(j*A))+O(g*B);C=L[a>>2];z=O(C*o);o=L[a+12>>2];p=g;g=L[a+24>>2];L[a+24>>2]=O(z+O(j*o))+O(p*g);j=O(O(O(c*w)+O(e*x))+O(n*q));p=O(O(O(c*y)+O(e*r))+O(n*s));c=O(O(O(c*m)+O(e*d))+O(n*f));L[a+20>>2]=O(O(v*j)+O(t*p))+O(i*c);L[a+16>>2]=O(O(h*j)+O(p*A))+O(c*B);L[a+12>>2]=O(O(C*j)+O(p*o))+O(c*g);c=O(O(O(u*w)+O(k*x))+O(l*q));e=O(O(O(u*y)+O(k*r))+O(l*s));d=O(O(O(u*m)+O(k*d))+O(l*f));L[a+8>>2]=O(O(v*c)+O(t*e))+O(i*d);L[a+4>>2]=O(O(h*c)+O(e*A))+O(d*B);L[a>>2]=O(O(C*c)+O(e*o))+O(d*g)}function Vk(a,b){a=a|0;b=b|0;var c=O(0),d=0,e=O(0),f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=0,q=O(0),r=O(0),s=O(0);d=Oa+-64|0;Oa=d;a=a+8|0;p=H[a+388>>2];Ra[H[H[p>>2]+112>>2]](d,p);g=L[b+12>>2];e=L[b+8>>2];n=L[b>>2];h=L[b+4>>2];i=L[d>>2];c=O(L[b+16>>2]-L[d+16>>2]);f=O(c+c);c=O(L[b+20>>2]-L[d+20>>2]);l=O(c+c);j=L[d+4>>2];k=L[d+8>>2];c=O(L[b+24>>2]-L[d+24>>2]);m=O(c+c);o=O(O(O(O(-i)*f)-O(l*j))-O(k*m));c=L[d+12>>2];q=O(O(c*c)+O(-.5));r=O(O(O(m*q)+O(c*O(O(j*f)-O(i*l))))-O(k*o));L[d+56>>2]=r;s=O(O(O(l*q)+O(c*O(O(i*m)-O(k*f))))-O(j*o));L[d+52>>2]=s;l=O(O(O(f*q)+O(c*O(O(k*l)-O(j*m))))-O(i*o));L[d+48>>2]=l;f=e;e=O(O(1)/O(W(O(O(g*g)+O(O(e*e)+O(O(n*n)+O(h*h)))))));f=O(f*e);h=O(h*e);g=O(g*e);e=O(n*e);n=O(O(k*f)+O(O(j*h)+O(O(c*g)+O(i*e))));L[d+44>>2]=n;m=O(O(e*j)+O(O(O(c*f)-O(g*k))-O(i*h)));L[d+40>>2]=m;o=O(O(f*i)+O(O(O(c*h)-O(g*j))-O(k*e)));L[d+36>>2]=o;c=O(O(h*k)+O(O(O(c*e)-O(g*i))-O(j*f)));L[d+32>>2]=c;a:{b:{c:{d:{p=H[a+4>>2];switch((p>>>30|0)-2|0){case 1:break b;case 0:break d;default:break c}}if(I[H[a>>2]+4785|0]){break b}}cE(a+12|0,d+32|0);break a}b=H[a+8>>2];if(!b){b=Tt(H[a>>2],p>>>24&15);H[a+8>>2]=b}L[b+52>>2]=r;L[b+48>>2]=s;L[b+44>>2]=l;L[b+40>>2]=n;L[b+36>>2]=m;L[b+32>>2]=o;L[b+28>>2]=c;$t(H[a>>2],a);H[a+4>>2]=H[a+4>>2]|2}Oa=d- -64|0}function Pw(a,b){var c=O(0),d=O(0),e=O(0),f=O(0),g=O(0),h=O(0),i=0,j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=0,r=O(0),s=O(0),t=0,u=O(0),v=O(0),w=O(0),x=O(0),y=0;t=H[a+336>>2];if(t){y=H[a+332>>2];while(1){i=H[((q<<5)+y|0)+16>>2];c=L[i+124>>2];a=N(q,112)+b|0;H[a- -64>>2]=0;H[a+56>>2]=0;H[a+60>>2]=0;H[a+48>>2]=0;H[a+40>>2]=0;H[a+44>>2]=0;H[a+32>>2]=0;H[a+24>>2]=0;H[a+28>>2]=0;H[a+16>>2]=0;H[a+20>>2]=0;H[a+8>>2]=0;H[a+12>>2]=0;H[a>>2]=0;H[a+4>>2]=0;c=c==O(0)?O(0):O(O(1)/c);L[a+68>>2]=c;L[a+52>>2]=c;L[a+36>>2]=c;j=L[i>>2];d=O(j+j);c=L[i+8>>2];r=O(d*c);l=L[i+4>>2];k=O(l+l);f=L[i+12>>2];u=O(k*f);s=O(r-u);n=O(O(1)-O(j*d));v=O(l*k);j=O(n-v);g=L[i+120>>2];g=g==O(0)?O(0):O(O(1)/g);h=L[i+112>>2];h=h==O(0)?O(0):O(O(1)/h);m=O(k*c);o=O(d*f);k=O(m+o);e=L[i+116>>2];e=e==O(0)?O(0):O(O(1)/e);L[a+104>>2]=O(O(j*g)*j)+O(O(O(s*h)*s)+O(k*O(k*e)));p=O(d*l);d=f;f=O(c+c);w=O(d*f);d=O(p+w);l=O(d*h);x=O(c*f);f=O(n-x);n=O(f*e);m=O(m-o);o=O(m*g);L[a+88>>2]=O(o*m)+O(O(l*d)+O(f*n));p=O(p-w);c=O(p*e);e=O(r+u);g=O(e*g);r=O(g*e);e=O(O(O(1)-v)-x);h=O(e*h);L[a+72>>2]=r+O(O(h*e)+O(p*c));d=O(O(g*m)+O(O(h*d)+O(f*c)));L[a+84>>2]=d;L[a+76>>2]=d;c=O(O(g*j)+O(O(h*s)+O(k*c)));L[a+96>>2]=c;L[a+80>>2]=c;c=O(O(o*j)+O(O(l*s)+O(k*n)));L[a+100>>2]=c;L[a+92>>2]=c;q=q+1|0;if((t|0)!=(q|0)){continue}break}}}function m0(a,b,c,d,e,f,g,h,i){var j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=O(0);a:{s=L[f>>2];n=O(L[g>>2]-s);u=L[d+4>>2];v=L[d>>2];z=L[f+4>>2];t=O(L[g+4>>2]-z);j=O(O(n*u)-O(v*t));p=L[a+8>>2];w=L[d+8>>2];q=L[f+8>>2];o=O(L[g+8>>2]-q);k=O(O(t*w)-O(u*o));A=L[a>>2];l=O(O(o*v)-O(w*n));B=L[a+4>>2];x=O(O(j*p)+O(O(k*A)+O(l*B)));r=O(O(j*q)+O(O(k*s)+O(z*l)));m=L[b+8>>2];y=L[b>>2];D=L[b+4>>2];if(O(O(x-r)*O(O(O(j*m)+O(O(k*y)+O(l*D)))-r))>O(0)){break a}E=j;j=O(m-p);m=k;k=O(y-A);C=l;l=O(D-B);m=O(O(E*j)+O(O(m*k)+O(C*l)));if(m==O(0)){break a}y=O(O(v*l)-O(k*u));C=p;p=O(O(r-x)/m);r=O(C+O(j*p));x=O(r-q);m=O(O(u*j)-O(l*w));q=O(A+O(k*p));s=O(q-s);j=O(O(w*k)-O(j*v));k=O(B+O(l*p));l=O(k-z);j=O(O(O(y*x)+O(O(m*s)+O(j*l)))/O(O(y*o)+O(O(m*n)+O(t*j))));if(!(j<=O(1))|!(j>=O(0))){break a}o=O(x-O(o*j));n=O(s-O(n*j));j=O(l-O(t*j));if(!(L[c>>2]>O(O(o*o)+O(O(n*n)+O(j*j))))){break a}a=(H[i>>2]<<6)+h|0;H[a+12>>2]=0;L[a+8>>2]=r;L[a+4>>2]=k;L[a>>2]=q;a=(H[i>>2]<<6)+h|0;L[a+16>>2]=q-n;H[a+28>>2]=0;L[a+24>>2]=r-o;L[a+20>>2]=k-j;t=L[d+8>>2];b=H[d+4>>2];a=(H[i>>2]<<6)+h|0;H[a+32>>2]=H[d>>2];H[a+36>>2]=b;L[a+44>>2]=O(o*w)+O(O(n*v)+O(j*u));L[a+40>>2]=t;a=H[i>>2];H[i>>2]=a+1;H[((a<<6)+h|0)+48>>2]=e}}function Uv(a,b,c){var d=O(0),e=O(0),f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),F=O(0),G=O(0),I=O(0),J=O(0),K=O(0),M=O(0),N=O(0),P=O(0),Q=O(0),R=O(0),S=O(0),T=O(0),U=O(0),V=O(0);j=L[b+164>>2];k=L[b+100>>2];l=L[b+68>>2];m=L[b+36>>2];n=L[b+132>>2];o=L[b+168>>2];p=L[b+104>>2];q=L[b+72>>2];r=L[b+40>>2];s=L[b+136>>2];t=L[b+176>>2];u=L[b+112>>2];v=L[b+80>>2];w=L[b+48>>2];x=L[b+144>>2];y=L[b+180>>2];z=L[b+116>>2];A=L[b+84>>2];B=L[b+20>>2];C=L[b+52>>2];D=L[b+148>>2];E=L[b+184>>2];F=L[b+120>>2];G=L[b+88>>2];I=L[b+24>>2];J=L[b+56>>2];K=L[b+152>>2];d=L[c+24>>2];e=L[c+20>>2];M=L[b+4>>2];N=L[b+8>>2];P=L[b+16>>2];Q=L[b+160>>2];R=L[b+128>>2];f=L[c+16>>2];S=L[b+96>>2];g=L[c+8>>2];T=L[b+64>>2];h=L[c>>2];U=L[b>>2];i=L[c+4>>2];V=L[b+32>>2];H[a+28>>2]=0;H[a+12>>2]=0;L[a>>2]=O(O(O(O(O(U*h)+O(V*i))+O(T*g))+O(S*f))+O(R*e))+O(Q*d);L[a+24>>2]=O(O(O(O(O(I*h)+O(J*i))+O(G*g))+O(F*f))+O(K*e))+O(E*d);L[a+20>>2]=O(O(O(O(O(B*h)+O(C*i))+O(A*g))+O(z*f))+O(D*e))+O(y*d);L[a+16>>2]=O(O(O(O(O(P*h)+O(w*i))+O(v*g))+O(u*f))+O(x*e))+O(t*d);L[a+8>>2]=O(O(O(O(O(N*h)+O(r*i))+O(q*g))+O(p*f))+O(s*e))+O(o*d);L[a+4>>2]=O(O(O(O(O(M*h)+O(m*i))+O(l*g))+O(k*f))+O(n*e))+O(j*d)}function xF(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;g=-2147483648;e=H[a+28>>2];a:{if(!e){break a}d=H[a+24>>2];while(1){if(H[d+(c<<2)>>2]==(b|0)){g=c;break a}c=c+1|0;if((e|0)!=(c|0)){continue}break}}uG(b,0,O(0),1,0);b=g+1|0;h=H[a+16>>2];if(b>>>0>>0){c=g;while(1){d=H[a+12>>2];e=d+(c<<5)|0;f=d+(b<<5)|0;d=H[f+4>>2];H[e>>2]=H[f>>2];H[e+4>>2]=d;d=H[f+28>>2];H[e+24>>2]=H[f+24>>2];H[e+28>>2]=d;d=H[f+20>>2];H[e+16>>2]=H[f+16>>2];H[e+20>>2]=d;d=H[f+12>>2];H[e+8>>2]=H[f+8>>2];H[e+12>>2]=d;d=H[a+24>>2];c=c<<2;f=d+c|0;e=d;d=b<<2;H[f>>2]=H[e+d>>2];e=c;c=H[a+36>>2];H[e+c>>2]=H[c+d>>2];c=b;b=c+1|0;h=H[a+16>>2];if(b>>>0>>0){continue}break}}H[a+64>>2]=0;b:{if(!h){b=0;break b}b=g&31;if((g&63)>>>0>=32){c=1<>>32-b;b=d}j=b-1|0;m=(j|b)^-1;k=c-!b|0;n=(c|k)^-1;p=H[a+12>>2];b=0;while(1){c=p+(l<<5)|0;i=H[c+8>>2];d=H[c+12>>2];e=H[c+24>>2];if(!((e|0)==-1|e>>>0<=g>>>0)){e=d&k;f=d&n;d=i&m;i=i&j|((f&1)<<31|d>>>1);H[c+8>>2]=i;d=f>>>1|e;H[c+12>>2]=d}o=H[c+4>>2];f=n&o;e=f>>>1|0;q=(f&1)<<31;f=H[c>>2];H[c>>2]=q|(m&f)>>>1|f&j;H[c+4>>2]=k&o|e;c=i7(d)+i7(i)|0;b=b>>>0>c>>>0?b:c;l=l+1|0;if((l|0)!=(h|0)){continue}break}H[a+64>>2]=b}H[a+16>>2]=h-1;H[a+28>>2]=H[a+28>>2]-1;H[a+40>>2]=H[a+40>>2]-1;a=H[a>>2];H[a+96>>2]=b;Ra[H[H[a>>2]+20>>2]](a)}function Tm(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;i=H[33768];f=Oa-16|0;Oa=f;a=H[33808];e=a+12|0;a=(l=e,m=44,n=Ra[H[H[a>>2]+20>>2]](a)|0?36966:55639,o=4459,p=668,k=H[H[e>>2]+8>>2],Ra[k](l|0,m|0,n|0,o|0,p|0)|0);H[a+4>>2]=196625;H[a+20>>2]=0;H[a+24>>2]=0;H[a+16>>2]=i;H[a+12>>2]=1;H[a+8>>2]=126760;H[a>>2]=126704;H[a+28>>2]=0;H[a+32>>2]=0;H[a+36>>2]=0;H[a+40>>2]=0;e=Oa-16|0;Oa=e;a:{j=gW(66,86,72,83,e+12|0,e+11|0,b);if(!j){break a}fW(a+20|0,2,I[e+11|0],b);g=H[a+20>>2];h=g<<2;if(h){c=H[33808];c=Ra[H[H[c+12>>2]+8>>2]](c+12|0,h,20591,8894,82)|0;g=H[a+20>>2]}H[a+32>>2]=c;fW(c,g,I[e+11|0],b);c=H[a+20>>2];g=N(c,24)+24|0;if(g){c=H[33808];d=Ra[H[H[c+12>>2]+8>>2]](c+12|0,g,20591,8894,86)|0;c=H[a+20>>2]}H[a+28>>2]=d;fW(d,N(c,6),I[e+11|0],b);d=H[a+24>>2];c=N(d,28);b:{if(!c){c=0;break b}d=H[33808];c=Ra[H[H[d+12>>2]+8>>2]](d+12|0,c,20591,8894,90)|0;d=H[a+24>>2]}H[a+40>>2]=c;if(!d){break a}d=0;while(1){h=c;c=N(d,28);fW((h+c|0)+24|0,1,I[e+11|0],b);fW(c+H[a+40>>2]|0,6,I[e+11|0],b);d=d+1|0;if(d>>>0>=K[a+24>>2]){break a}c=H[a+40>>2];continue}}Oa=e+16|0;c:{if(!j){b=H[a+12>>2]-1|0;H[a+12>>2]=b;if(b){a=0;break c}Ra[H[H[a+8>>2]+8>>2]](a+8|0);a=0;break c}H[f+8>>2]=a;b=rg(i+128|0,f+8|0,f+15|0);if(!I[f+15|0]){H[b>>2]=H[f+8>>2]}}Oa=f+16|0;return a|0}function n0(a,b,c,d,e,f,g,h,i){var j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=O(0);a:{v=L[f>>2];x=O(L[g>>2]-v);n=L[d+4>>2];r=L[d>>2];A=L[f+4>>2];y=O(L[g+4>>2]-A);k=O(O(x*n)-O(r*y));q=L[a+8>>2];s=L[d+8>>2];o=L[f+8>>2];m=O(L[g+8>>2]-o);j=O(O(y*s)-O(n*m));B=L[a>>2];l=O(O(m*r)-O(s*x));C=L[a+4>>2];w=O(O(k*q)+O(O(j*B)+O(l*C)));t=O(O(k*o)+O(O(j*v)+O(A*l)));p=L[b+8>>2];z=L[b>>2];E=L[b+4>>2];if(O(O(w-t)*O(O(O(k*p)+O(O(j*z)+O(l*E)))-t))>O(0)){break a}u=k;k=O(p-q);D=j;j=O(z-B);p=l;l=O(E-C);p=O(O(u*k)+O(O(D*j)+O(p*l)));if(p==O(0)){break a}u=q;q=O(O(t-w)/p);t=O(u+O(k*q));o=O(t-o);u=o;D=m;w=O(O(r*l)-O(j*n));z=O(o*w);p=O(O(n*k)-O(l*s));o=O(B+O(j*q));v=O(o-v);j=O(O(s*j)-O(k*r));k=O(C+O(l*q));l=O(k-A);m=O(R(O(O(z+O(O(p*v)+O(j*l)))/O(O(w*m)+O(O(p*x)+O(y*j)))),O(1)));m=m>O(0)?m:O(0);j=O(u-O(D*m));u=O(j*s);s=O(v-O(x*m));q=n;n=O(l-O(y*m));r=O(u+O(O(s*r)+O(q*n)));if(!(r>2])){break a}a=(H[i>>2]<<6)+h|0;H[a+12>>2]=0;L[a+8>>2]=t;L[a+4>>2]=k;L[a>>2]=o;a=(H[i>>2]<<6)+h|0;L[a+16>>2]=o-s;H[a+28>>2]=0;L[a+24>>2]=t-j;L[a+20>>2]=k-n;n=L[d+8>>2];b=H[d+4>>2];a=(H[i>>2]<<6)+h|0;H[a+32>>2]=H[d>>2];H[a+36>>2]=b;L[a+44>>2]=r;L[a+40>>2]=n;a=H[i>>2];H[i>>2]=a+1;H[((a<<6)+h|0)+48>>2]=e}}function i_(a,b,c,d){var e=0,f=0,g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=0;e=Oa-48|0;Oa=e;f=H[a+36>>2];nW(e,b,a+4|0);b=O(O(L[a+4>>2]*L[a+8>>2])*L[a+12>>2])>2];k=L[e+16>>2];l=L[e+28>>2];m=L[e+36>>2];n=L[e+24>>2];o=L[e>>2];p=L[e+12>>2];q=L[e+4>>2];r=H[f+24>>2];a:{if(I[f+64|0]&2){f=H[f+28>>2]+N(c,6)|0;a=J[f+4>>1];c=J[f+2>>1];f=J[f>>1];break a}f=H[f+28>>2]+N(c,12)|0;a=H[f+8>>2];c=H[f+4>>2];f=H[f>>2]}f=r+N(f,12)|0;g=L[f>>2];h=L[f+4>>2];i=L[f+8>>2];L[d+8>>2]=O(O(O(g*L[e+8>>2])+O(h*L[e+20>>2]))+O(i*L[e+32>>2]))+L[e+44>>2];L[d+4>>2]=j+O(O(O(g*q)+O(h*k))+O(i*l));L[d>>2]=m+O(O(O(g*o)+O(h*p))+O(i*n));j=L[e+40>>2];k=L[e+28>>2];l=L[e+16>>2];m=L[e+36>>2];n=L[e+24>>2];o=L[e>>2];p=L[e+12>>2];q=L[e+4>>2];f=r+N(b?a:c,12)|0;g=L[f>>2];h=L[f+4>>2];i=L[f+8>>2];L[d+20>>2]=O(O(O(g*L[e+8>>2])+O(h*L[e+20>>2]))+O(i*L[e+32>>2]))+L[e+44>>2];L[d+16>>2]=j+O(O(O(g*q)+O(h*l))+O(i*k));L[d+12>>2]=m+O(O(O(g*o)+O(h*p))+O(i*n));j=L[e+40>>2];k=L[e+28>>2];l=L[e+16>>2];m=L[e+36>>2];n=L[e+24>>2];o=L[e>>2];p=L[e+12>>2];q=L[e+4>>2];a=r+N(b?c:a,12)|0;g=L[a>>2];h=L[a+4>>2];i=L[a+8>>2];L[d+32>>2]=O(O(O(g*L[e+8>>2])+O(h*L[e+20>>2]))+O(i*L[e+32>>2]))+L[e+44>>2];L[d+28>>2]=j+O(O(O(g*q)+O(h*l))+O(i*k));L[d+24>>2]=m+O(O(O(g*o)+O(h*p))+O(i*n));Oa=e+48|0}function Tl(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,o=0,p=0,q=0;c=H[a+468>>2];if(!c){h=Oa-16|0;Oa=h;e=a+180|0;c=H[e+284>>2];if(c){b=H[33808];d=b+12|0;g=(m=d,n=c,o=Ra[H[H[b>>2]+20>>2]](b)|0?21696:55639,p=15259,q=180,l=H[H[d>>2]+8>>2],Ra[l](m|0,n|0,o|0,p|0,q|0)|0)}else{g=0}H[h+12>>2]=g;b=H[e+268>>2];a:{if(b>>>0>=(H[e+272>>2]&2147483647)>>>0){d=e+4|0;c=H[d+268>>2]&2147483647;i=c?c<<1:1;b=0;b:{if(!i){break b}c=i<<2;if(!(I[d+256|0]|c>>>0>256)){F[d+256|0]=1;b=d;break b}b=0;if(!c){break b}b=H[33808];f=Ra[H[H[b>>2]+20>>2]](b)|0?21696:55639;b=Ra[H[H[b+12>>2]+8>>2]](b+12|0,c,f,13582,553)|0}c=b;f=H[d+264>>2];k=c+(f<<2)|0;if((f|0)>0){j=H[d+260>>2];while(1){H[b>>2]=H[j>>2];j=j+4|0;b=b+4|0;if(k>>>0>b>>>0){continue}break}}H[k>>2]=H[h+12>>2];c:{if(H[d+268>>2]<0){break c}b=H[d+260>>2];if((b|0)==(d|0)){F[d+256|0]=0;break c}if(!b){break c}f=H[33808];Ra[H[H[f+12>>2]+12>>2]](f+12|0,b);f=H[d+264>>2]}H[d+268>>2]=i;H[d+260>>2]=c;H[d+264>>2]=f+1;break a}H[H[e+264>>2]+(b<<2)>>2]=g;H[e+268>>2]=b+1}c=(N(H[e+276>>2],48)+g|0)-48|0;if(g>>>0<=c>>>0){b=H[e+288>>2];while(1){H[c>>2]=b;b=c;c=c-48|0;if(g>>>0<=c>>>0){continue}break}H[e+288>>2]=b}Oa=h+16|0;c=H[a+468>>2]}H[a+468>>2]=H[c>>2];H[a+460>>2]=H[a+460>>2]+1;F[c+32|0]=1;H[c+40>>2]=0;H[c+44>>2]=4;H[c+36>>2]=c;return c}function wS(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=O(0),i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;g=Oa-160|0;Oa=g;H[g+144>>2]=3;i=M[c+12>>3];j=H[b+44>>2];k=H[b+40>>2];l=M[c+20>>3];m=M[d+8>>3];n=M[c+28>>3];o=M[d+16>>3];p=M[d>>3];L[g+156>>2]=L[b+48>>2];L[g+136>>2]=o-n;L[g+132>>2]=m-l;H[g+148>>2]=k;H[g+152>>2]=j;L[g+128>>2]=p-i;L[g+112>>2]=L[a+244>>2];L[g+116>>2]=L[a+248>>2];L[g+120>>2]=L[a+252>>2];L[g+124>>2]=L[a+256>>2];d=0;H[g+104>>2]=0;H[g+96>>2]=2;L[g+100>>2]=L[c+60>>2];HT(g+16|0,c+36|0,c+48|0,g+104|0);b=H[g+40>>2];H[g+84>>2]=H[g+36>>2];H[g+88>>2]=b;L[g+64>>2]=L[g+16>>2];b=H[g+24>>2];H[g+68>>2]=H[g+20>>2];H[g+72>>2]=b;b=H[g+32>>2];H[g+76>>2]=H[g+28>>2];H[g+80>>2]=b;if(L[g+104>>2]==O(0)){H[g+104>>2]=872415232}H[g+40>>2]=0;H[g+44>>2]=0;H[g+48>>2]=0;H[g+52>>2]=0;H[g+32>>2]=0;H[g+36>>2]=0;G[g+28>>1]=0;H[g+24>>2]=-1;H[g+16>>2]=0;H[g+20>>2]=0;H[g+56>>2]=2139095039;h=L[f+36>>2];G[g+8>>1]=I[a+299|0]?1283:1027;a:{if(!fU(e,h,g+144|0,g+112|0,g+96|0,g- -64|0,g+16|0,g+8|0)){break a}h=L[g+56>>2];if(h>=L[f+36>>2]){break a}L[f+36>>2]=h;L[f+24>>2]=L[g+44>>2];L[f+28>>2]=L[g+48>>2];h=L[g+52>>2];H[f+40>>2]=-1;H[f+44>>2]=-1;L[f+32>>2]=h;M[f>>3]=M[c+12>>3]+ +L[g+32>>2];M[f+8>>3]=M[c+20>>3]+ +L[g+36>>2];M[f+16>>3]=M[c+28>>3]+ +L[g+40>>2];d=1}Oa=g+160|0;return d|0}function mP(a){a=a|0;var b=0,c=0,d=0,e=O(0),f=0,g=O(0),h=O(0),i=O(0),j=0,k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=0,r=0,s=O(0),t=O(0),u=0,v=O(0),w=O(0),x=0,y=0,z=O(0),A=O(0);b=H[a+32>>2];if(b){while(1){q=0;u=H[H[a+28>>2]+(r<<2)>>2];d=H[u+32>>2];if(d){while(1){if(I[H[d+28>>2]- -64|0]&5){b=Oa-96|0;Oa=b;c=H[d+28>>2];j=c+68|0;v=dU(b+80|0,b- -64|0,j,H[H[H[H[H[d+4>>2]+40>>2]+976>>2]+1816>>2]+4>>2]+(H[d+8>>2]<<5)|0);g=L[b+64>>2];k=L[b+80>>2];h=L[b+68>>2];l=L[b+84>>2];i=L[b+72>>2];e=L[b+88>>2];f=H[d+4>>2];f=I[H[f+44>>2]+9|0]-1>>>0<2?f:0;y=c+32|0;c=b+32|0;ug(f- -64|0,y,H[f+44>>2]+48|0,c);aU(b+8|0,j,c,O(1));n=O(e+i);o=O(l+h);p=O(k+g);i=O(e-i);h=O(l-h);g=O(k-g);k=L[b+16>>2];l=L[b+28>>2];e=O(O(O(k+l)*O(.5))-L[b+88>>2]);z=O(e*e);e=L[b+8>>2];s=L[b+20>>2];m=O(O(O(e+s)*O(.5))-L[b+80>>2]);A=O(m*m);m=L[b+12>>2];t=L[b+24>>2];w=O(O(O(m+t)*O(.5))-L[b+84>>2]);j=O(z+O(A+O(w*w)))>=O(v*v);if(j){o=o>t?o:t;p=p>s?p:s;i=i>2]+40>>2]+1140>>2];c=H[f+4>>2]+N(H[d+8>>2]&2147483647,24)|0;L[c+12>>2]=p;L[c+8>>2]=i;L[c+4>>2]=h;L[c>>2]=g;L[c+20>>2]=n;L[c+16>>2]=o;F[f+16|0]=1;Oa=b+96|0;x=j+x|0;q=q|j}d=H[d>>2];if(d){continue}break}b=H[a+32>>2]}F[H[u+100>>2]+156|0]=(q|0)!=0;r=r+1|0;if(r>>>0>>0){continue}break}}a=H[a+36>>2];H[a>>2]=H[a>>2]+x}function Cc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=O(0),f=0;d=o6(252);H[d+12>>2]=0;H[d+16>>2]=0;H[d+52>>2]=0;H[d+56>>2]=0;H[d+44>>2]=1;H[d+48>>2]=2;H[d+28>>2]=0;H[d+32>>2]=0;H[d+20>>2]=0;H[d+24>>2]=0;H[d+36>>2]=0;H[d+40>>2]=1;H[d+60>>2]=0;H[d+64>>2]=0;H[d+68>>2]=0;H[d+72>>2]=0;H[d+76>>2]=0;H[d+80>>2]=0;H[d+84>>2]=0;H[d+88>>2]=0;H[d+92>>2]=0;L[d+96>>2]=L[a+4>>2]*O(.20000000298023224);e=L[a>>2];H[d+236>>2]=8;H[d+240>>2]=0;H[d+228>>2]=67108864;H[d+232>>2]=262144;H[d+220>>2]=81920;H[d+224>>2]=1048576;H[d+212>>2]=16777216;H[d+216>>2]=524288;H[d+204>>2]=33554432;H[d+208>>2]=25165824;H[d+196>>2]=2122317823;H[d+200>>2]=2122317823;H[d+188>>2]=-25165825;H[d+192>>2]=2122317823;H[d+180>>2]=-25165825;H[d+184>>2]=-25165825;H[d+172>>2]=2139095039;H[d+176>>2]=1053609164;H[d+164>>2]=8192;H[d+168>>2]=1;H[d+156>>2]=65536;H[d+160>>2]=2139095039;H[d+148>>2]=16;H[d+152>>2]=0;H[d+140>>2]=0;H[d+144>>2]=128;H[d+132>>2]=100;H[d+136>>2]=0;H[d+124>>2]=1;H[d+128>>2]=1;H[d+116>>2]=0;H[d+120>>2]=0;H[d+108>>2]=0;H[d+112>>2]=64;e=O(e*O(.03999999910593033));L[d+104>>2]=e;L[d+100>>2]=e;f=H[a>>2];a=H[a+4>>2];H[d+8>>2]=0;H[d>>2]=0;H[d+4>>2]=-1055066685;H[d+244>>2]=f;H[d+248>>2]=a;a=g3(b,0);H[d+32>>2]=166;H[d+116>>2]=a;H[d+40>>2]=0;H[d+44>>2]=0;H[d+12>>2]=c;H[d+112>>2]=H[d+112>>2]|2;return d|0}function NH(a,b,c,d,e,f,g,h,i,j,k){var 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=O(0),z=O(0),A=O(0),B=O(0),C=0,D=0;a:{if(!g|!c){break a}while(1){o=(s<<3)+e|0;p=H[o>>2];u=H[o+4>>2];while(1){o=l;l=l+1|0;m=H[(o<<3)+i>>2];if(m>>>0<=p>>>0){continue}break}if(m>>>0<=u>>>0){x=(s<<2)+d|0;l=(s<<4)+f|0;y=L[l+12>>2];z=L[l+4>>2];A=L[l+8>>2];B=L[l>>2];p=o;while(1){l=(p<<4)+j|0;b:{if(L[l+8>>2]>2]>A|(L[l+12>>2]>2]>y)){break b}l=H[x>>2];n=H[(l<<2)+k>>2];m=H[(p<<2)+h>>2];q=H[(m<<2)+k>>2];if((n|0)==(q|0)|!I[(n<<2&12|q&3)+b|0]){break b}n=l>>>0>m>>>0;q=n?l:m;t=n?m:l;l=q<<16|t&65535;l=(l<<15^-1)+l|0;l=N(l>>>10^l,9);l=l>>>6^l;l=(l<<11^-1)+l|0;v=l>>>16^l;m=v&H[a+4>>2];c:{n=H[a+12>>2];d:{if(!n){break d}l=H[(m<<2)+n>>2];if((l|0)==-1){break d}C=H[a+16>>2];D=H[a+20>>2];while(1){r=(l<<3)+D|0;if((H[r>>2]&2147483647)==(t|0)){w=H[r+4>>2];if((q|0)==(w&2147483647)){break c}}l=H[(l<<2)+C>>2];if((l|0)!=-1){continue}break}}l=H[a+8>>2];if(l>>>0>=K[a>>2]){m=$G(a,v);n=H[a+12>>2];l=H[a+8>>2]}H[a+8>>2]=l+1;r=H[a+20>>2]+(l<<3)|0;H[r+4>>2]=q;H[r>>2]=t|-2147483648;m=(m<<2)+n|0;H[H[a+16>>2]+(l<<2)>>2]=H[m>>2];H[m>>2]=l;break b}H[r+4>>2]=w|-2147483648}p=p+1|0;if(K[(p<<3)+i>>2]<=u>>>0){continue}break}}if(g>>>0<=o>>>0){break a}l=o;s=s+1|0;if(s>>>0>>0){continue}break}}}function MH(a,b,c,d,e,f,g,h,i,j,k){var 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=O(0),z=O(0),A=O(0),B=O(0),C=0,D=0;a:{if(!g|!c){break a}while(1){o=(s<<3)+e|0;p=H[o>>2];u=H[o+4>>2];while(1){o=l;l=l+1|0;m=H[(o<<3)+i>>2];if(m>>>0

>>0){continue}break}if(m>>>0<=u>>>0){x=(s<<2)+d|0;l=(s<<4)+f|0;y=L[l+12>>2];z=L[l+4>>2];A=L[l+8>>2];B=L[l>>2];p=o;while(1){l=(p<<4)+j|0;b:{if(L[l+8>>2]>2]>A|(L[l+12>>2]>2]>y)){break b}l=H[x>>2];n=H[(l<<2)+k>>2];m=H[(p<<2)+h>>2];q=H[(m<<2)+k>>2];if((n|0)==(q|0)|!I[(n<<2&12|q&3)+b|0]){break b}n=l>>>0>m>>>0;q=n?l:m;t=n?m:l;l=q<<16|t&65535;l=(l<<15^-1)+l|0;l=N(l>>>10^l,9);l=l>>>6^l;l=(l<<11^-1)+l|0;v=l>>>16^l;m=v&H[a+4>>2];c:{n=H[a+12>>2];d:{if(!n){break d}l=H[(m<<2)+n>>2];if((l|0)==-1){break d}C=H[a+16>>2];D=H[a+20>>2];while(1){r=(l<<3)+D|0;if((H[r>>2]&2147483647)==(t|0)){w=H[r+4>>2];if((q|0)==(w&2147483647)){break c}}l=H[(l<<2)+C>>2];if((l|0)!=-1){continue}break}}l=H[a+8>>2];if(l>>>0>=K[a>>2]){m=$G(a,v);n=H[a+12>>2];l=H[a+8>>2]}H[a+8>>2]=l+1;r=H[a+20>>2]+(l<<3)|0;H[r+4>>2]=q;H[r>>2]=t|-2147483648;m=(m<<2)+n|0;H[H[a+16>>2]+(l<<2)>>2]=H[m>>2];H[m>>2]=l;break b}H[r+4>>2]=w|-2147483648}p=p+1|0;if(K[(p<<3)+i>>2]<=u>>>0){continue}break}}if(g>>>0<=o>>>0){break a}l=o;s=s+1|0;if(s>>>0>>0){continue}break}}}function rY(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=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=0;f=Oa-48|0;Oa=f;if(f_(H[a+2252>>2],c,d,e)){h=H[a+2236>>2];a:{if(I[a+2244|0]){L[f>>2]=L[c>>2];L[f+4>>2]=L[c+4>>2];L[f+8>>2]=L[c+8>>2];L[f+12>>2]=L[d>>2];L[f+16>>2]=L[d+4>>2];L[f+20>>2]=L[d+8>>2];L[f+24>>2]=L[e>>2];L[f+28>>2]=L[e+4>>2];c=2;i=L[e+8>>2];break a}l=L[h+28>>2];m=L[h+16>>2];n=L[h+32>>2];o=L[h+20>>2];r=I[h+72|0];p=L[h+4>>2];q=L[h+8>>2];i=L[c>>2];j=L[c+4>>2];k=L[c+8>>2];L[f>>2]=O(O(i*L[h>>2])+O(j*L[h+12>>2]))+O(k*L[h+24>>2]);L[f+8>>2]=O(O(i*q)+O(j*o))+O(k*n);L[f+4>>2]=O(O(i*p)+O(j*m))+O(k*l);l=L[h+28>>2];m=L[h+16>>2];n=L[h+24>>2];o=L[h>>2];p=L[h+12>>2];q=L[h+4>>2];c=(r?24:12)+f|0;i=L[d>>2];j=L[d+4>>2];k=L[d+8>>2];L[c+8>>2]=O(O(i*L[h+8>>2])+O(j*L[h+20>>2]))+O(k*L[h+32>>2]);L[c+4>>2]=O(O(i*q)+O(j*m))+O(k*l);L[c>>2]=O(O(i*o)+O(j*p))+O(k*n);l=L[h+32>>2];m=L[h+20>>2];n=L[h+8>>2];o=L[h+24>>2];p=L[h>>2];q=L[h+12>>2];c=r?1:2;d=N(c,12)+f|0;i=L[e>>2];j=L[e+4>>2];k=L[e+8>>2];L[d+4>>2]=O(O(i*L[h+4>>2])+O(j*L[h+16>>2]))+O(k*L[h+28>>2]);L[d>>2]=O(O(i*p)+O(j*q))+O(k*o);i=O(O(O(i*n)+O(j*m))+O(k*l))}L[(N(c,12)+f|0)+8>>2]=i;c=a+8|0;b=H[b+8>>2];a=H[a+2240>>2];if(a){a=I[a+b|0]}else{a=56}sY(c,f,b,a,g)}Oa=f+48|0;return 1}function XA(a,b){var c=0,d=O(0),e=O(0),f=O(0),g=0,h=O(0),i=O(0),j=O(0),k=0,l=0,m=O(0),n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;q=H[a+52>>2];if(q){k=H[a+60>>2];c=k+1|0;if(c>>>0>=k>>>0){r=H[a+8>>2];v=H[a>>2];while(1){s=k;t=(k<<2)+q|0;u=H[t>>2];if(u){o=c<<5;p=-2147483648;k=31;while(1){o=o-1|0;if(p&u){l=N(o,28)+r|0;c=H[l+24>>2];g=c>>>1|0;a:{if(c&1){g=g&15;if(!g){i=O(0x382c5fc0000000);e=O(-0x382c5fc0000000);h=O(-0x382c5fc0000000);m=O(-0x382c5fc0000000);f=O(0x382c5fc0000000);j=O(0x382c5fc0000000);break a}n=(c>>>3&536870908)+v|0;c=N(H[n>>2],24)+b|0;e=L[c+12>>2];j=L[c+8>>2];f=L[c+4>>2];i=L[c>>2];m=L[c+20>>2];h=L[c+16>>2];if((g|0)==1){break a}c=n+4|0;n=n+(g<<2)|0;while(1){g=N(H[c>>2],24)+b|0;d=L[g+12>>2];e=e>d?e:d;d=L[g+8>>2];j=d>j?j:d;d=L[g+4>>2];f=d>f?f:d;d=L[g>>2];i=d>i?i:d;d=L[g+20>>2];m=d>2];h=d>2];e=L[c+28>>2];i=e>i?i:e;e=L[c+20>>2];h=L[c+48>>2];m=e>h?e:h;e=L[c+16>>2];h=L[c+44>>2];h=e>h?e:h;e=L[c+12>>2];f=L[c+40>>2];e=e>f?e:f;f=L[c+8>>2];j=L[c+36>>2];j=f>2];d=L[c+32>>2];f=d>f?f:d}L[l+8>>2]=j;L[l+4>>2]=f;L[l>>2]=i;L[l+12>>2]=e;L[l+20>>2]=m;L[l+16>>2]=h}c=k;k=c-1|0;p=p>>>1|0;if(c){continue}break}H[t>>2]=0}k=s-1|0;c=s;if(c){continue}break}}H[a+60>>2]=0}}function vF(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;e=Oa-16|0;Oa=e;g=H[b- -64>>2];d=H[b+60>>2];a:{if(d){f=H[a+28>>2];if(f){h=H[a+24>>2];while(1){if((d|0)==H[h+(c<<2)>>2]){H[e>>2]=c;break a}c=c+1|0;if((f|0)!=(c|0)){continue}break}}H[e>>2]=-2147483648;break a}H[e>>2]=-2147483648}d=-2147483648;b:{if(!g){break b}f=H[a+28>>2];if(!f){break b}h=H[a+24>>2];c=0;while(1){if((g|0)==H[h+(c<<2)>>2]){d=c;break b}c=c+1|0;if((f|0)!=(c|0)){continue}break}}H[e+8>>2]=b;H[e+4>>2]=d;b=H[a+56>>2];c:{if(b>>>0>=(H[a+60>>2]&2147483647)>>>0){b=0;c=H[a+60>>2]&2147483647;g=c?c<<1:1;d:{if(!g){break d}c=N(g,12);if(!c){break d}b=H[33808];d=b+12|0;b=(j=d,k=c,l=Ra[H[H[b>>2]+20>>2]](b)|0?24616:55639,m=13582,n=553,i=H[H[d>>2]+8>>2],Ra[i](j|0,k|0,l|0,m|0,n|0)|0)}c=H[a+56>>2];if((c|0)>0){f=N(c,12)+b|0;d=H[a+52>>2];c=b;while(1){h=H[d+4>>2];H[c>>2]=H[d>>2];H[c+4>>2]=h;H[c+8>>2]=H[d+8>>2];d=d+12|0;c=c+12|0;if(f>>>0>c>>>0){continue}break}c=H[a+56>>2]}d=H[e+4>>2];c=N(c,12)+b|0;H[c>>2]=H[e>>2];H[c+4>>2]=d;H[c+8>>2]=H[e+8>>2];e:{if(H[a+60>>2]<0){break e}c=H[a+52>>2];if(!c){break e}d=H[33808]+12|0;Ra[H[H[d>>2]+12>>2]](d,c)}H[a+60>>2]=g;H[a+52>>2]=b;break c}c=H[e+4>>2];b=H[a+52>>2]+N(b,12)|0;H[b>>2]=H[e>>2];H[b+4>>2]=c;H[b+8>>2]=H[e+8>>2]}H[a+56>>2]=H[a+56>>2]+1;Oa=e+16|0}function ug(a,b,c,d){var e=O(0),f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0);t=L[a+20>>2];s=L[a+24>>2];u=L[c+20>>2];v=L[b+20>>2];w=L[c+24>>2];x=L[b+24>>2];y=L[a+16>>2];z=L[c+16>>2];A=L[b+16>>2];h=L[b+12>>2];e=L[c+12>>2];i=L[c+8>>2];f=L[b+8>>2];j=L[c>>2];m=L[b>>2];n=L[b+4>>2];g=L[c+4>>2];k=O(O(h*e)+O(O(i*f)+O(O(j*m)+O(n*g))));o=L[a+12>>2];p=L[a+8>>2];l=O(O(O(O(m*g)-O(j*n))+O(f*e))-O(h*i));q=L[a>>2];r=O(O(O(O(n*i)-O(g*f))+O(m*e))-O(h*j));f=O(O(O(O(f*j)-O(i*m))+O(n*e))-O(h*g));h=L[a+4>>2];L[d+12>>2]=O(k*o)-O(O(p*l)+O(O(q*r)+O(f*h)));L[d+8>>2]=O(k*p)+O(O(O(q*f)-O(r*h))+O(l*o));L[d+4>>2]=O(k*h)+O(O(O(p*r)-O(l*q))+O(f*o));L[d>>2]=O(k*q)+O(O(O(h*l)-O(f*p))+O(r*o));B=s;f=O(x-w);m=O(A-z);n=O(v-u);r=O(O(i*f)+O(O(j*m)+O(g*n)));s=O(O(e*e)+O(-.5));k=O(O(i*r)+O(O(e*O(O(m*g)-O(j*n)))+O(f*s)));k=O(k+k);l=O(O(j*r)+O(O(e*O(O(n*i)-O(g*f)))+O(m*s)));l=O(l+l);e=O(O(g*r)+O(O(e*O(O(f*j)-O(i*m)))+O(n*s)));e=O(e+e);i=O(O(p*k)+O(O(q*l)+O(h*e)));j=O(O(o*o)+O(-.5));g=O(O(p*i)+O(O(o*O(O(q*e)-O(l*h)))+O(k*j)));L[d+24>>2]=B+O(g+g);g=O(O(h*i)+O(O(o*O(O(p*l)-O(k*q)))+O(e*j)));L[d+20>>2]=t+O(g+g);e=O(O(q*i)+O(O(o*O(O(h*k)-O(e*p)))+O(l*j)));L[d+16>>2]=y+O(e+e)}function CZ(a,b,c,d,e){var f=0,g=0,h=O(0),i=O(0);f=Oa+-64|0;Oa=f;H[f+56>>2]=H[22155];g=H[22154];H[f+48>>2]=H[22153];H[f+52>>2]=g;H[a+8>>2]=0;H[a+12>>2]=0;H[a>>2]=0;H[a+4>>2]=0;h=O(3.4028234663852886e38);if(H[c>>2]==-1){vV(f+32|0,b,b+16|0,b+32|0,d,e,a);h=L[f+32>>2]}a:{if(H[c+4>>2]!=-1){break a}H[f+56>>2]=3;H[f+48>>2]=0;H[f+52>>2]=2;H[f+28>>2]=3;vV(f,b,b+32|0,b+48|0,f+48|0,f+28|0,f+32|0);i=L[f>>2];if(!(i>2];H[a>>2]=H[f+32>>2];H[a+4>>2]=g;g=H[f+44>>2];H[a+8>>2]=H[f+40>>2];H[a+12>>2]=g;H[d>>2]=H[f+48>>2];H[d+4>>2]=H[f+52>>2];H[d+8>>2]=H[f+56>>2];H[e>>2]=H[f+28>>2];h=i}b:{if(H[c+8>>2]!=-1){break b}H[f+56>>2]=1;H[f+48>>2]=0;H[f+52>>2]=3;H[f+28>>2]=3;vV(f,b,b+48|0,b+16|0,f+48|0,f+28|0,f+32|0);i=L[f>>2];if(!(i>2];H[a>>2]=H[f+32>>2];H[a+4>>2]=g;g=H[f+44>>2];H[a+8>>2]=H[f+40>>2];H[a+12>>2]=g;H[d>>2]=H[f+48>>2];H[d+4>>2]=H[f+52>>2];H[d+8>>2]=H[f+56>>2];H[e>>2]=H[f+28>>2];h=i}c:{if(H[c+12>>2]!=-1){break c}H[f+56>>2]=2;H[f+48>>2]=1;H[f+52>>2]=3;H[f+28>>2]=3;vV(f,b+16|0,b+48|0,b+32|0,f+48|0,f+28|0,f+32|0);if(!(L[f>>2]>2];H[a>>2]=H[f+32>>2];H[a+4>>2]=b;b=H[f+44>>2];H[a+8>>2]=H[f+40>>2];H[a+12>>2]=b;H[d>>2]=H[f+48>>2];H[d+4>>2]=H[f+52>>2];H[d+8>>2]=H[f+56>>2];H[e>>2]=H[f+28>>2]}Oa=f- -64|0} -function pp(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;g=Oa-16|0;Oa=g;c=b+8|0;j=H[b+36>>2];a:{b:{c:{d:{switch(H[b+12>>2]>>>30|0){case 3:if((H[c>>2]-16|0)!=(a|0)){break c}break;case 0:break d;default:break c}}d=Oa-16|0;Oa=d;e=a+16|0;H[c>>2]=e;e:{if(!I[e+4785|0]){n=c,o=TO(e+16|0,H[c+12>>2],I[c+24|0]),H[n+16>>2]=o;H[c+4>>2]=H[c+4>>2]&268435455|-2147483648;break e}e=e+5092|0;f=H[c+4>>2];h=f&1073741823;if(f>>>0>=3221225472){H[c+4>>2]=h|-2147483648;if(f&268435456){break e}H[d+4>>2]=c;Pf(e,d+4|0);break e}H[c+4>>2]=h|1073741824;H[d+8>>2]=c;c=rg(e,d+8|0,d+15|0);if(I[d+15|0]){break e}H[c>>2]=H[d+8>>2]}Oa=d+16|0;if(!j){break b}while(1){f=H[H[b+40>>2]+(i<<2)>>2];k=H[(J[f+4>>1]<<2)+73232>>2]+f|0;e=H[k+4>>2];f:{if(!(!e|!H[e+40>>2])){m=H[e+36>>2];c=0;h=1;d=0;g:{h:{while(1){l=m+(d<<3)|0;if(I[l|0]==3&h){c=H[l+4>>2];h=0;d=d+1|0;if(d>>>0>=K[e+40>>2]){break h}continue}d=d+1|0;if(d>>>0>2]){continue}break}if(h){break g}}mg(k,3,c)}Qf(b,f,a,c);if(!c){break f}d=H[c+12>>2]-1|0;H[c+12>>2]=d;if(d){break f}Ra[H[H[c+8>>2]+8>>2]](c+8|0);break f}Qf(b,f,a,0)}i=i+1|0;if((i|0)!=(j|0)){continue}break}break b}o5(H[33808],8,9281,1179,65185,0);break a}H[g+8>>2]=b;a=rg(a+5984|0,g+8|0,g+15|0);if(I[g+15|0]){break a}H[a>>2]=H[g+8>>2]}Oa=g+16|0}function gV(a,b){var c=0,d=0,e=0,f=O(0),g=0,h=0,i=0,j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=0,p=0,q=0,r=0,s=0;h=H[a+148>>2];q=H[h+20>>2];r=H[h+16>>2];c=Oa-48|0;H[c+40>>2]=0;H[c+44>>2]=0;H[c+32>>2]=0;H[c+36>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;d=H[b>>2];k=L[b>>2];g=H[b+4>>2];l=L[b+4>>2];e=H[b+8>>2];m=L[b+8>>2];L[c+8>>2]=m;L[c+4>>2]=l;L[c>>2]=k;b=e&2147483647;e=J[h>>1];g=g&2147483647;d=d&2147483647;a:{if(!(g>>>0<=d>>>0|b>>>0>=g>>>0)){d=2;g=0;b=1;break a}if(b>>>0<=d>>>0){d=1;g=2;b=0;break a}d=0;g=1;b=2}i=(b<<2)+c|0;f=L[i>>2];i=N(b<<1|H[i>>2]>>>31,e);j=O(O(e-1>>>0)*O(.5));n=O(O(1)/O(P(f)));f=O(O(j*O(O(L[(d<<2)+c>>2]*n)+O(1)))+O(.5));b:{if(f=O(0)){b=~~f>>>0;break b}b=0}d=N(e,b+i|0);f=O(O(j*O(O(n*L[(g<<2)+c>>2])+O(1)))+O(.5));c:{if(f=O(0)){b=~~f>>>0;break c}b=0}g=H[a+152>>2];a=I[H[h+4>>2]+(b+d|0)|0];b=g+N(a,12)|0;f=O(O(L[b+8>>2]*m)+O(O(L[b>>2]*k)+O(l*L[b+4>>2])));while(1){h=a;a=(h<<2)+r|0;i=J[a>>1];if(i){s=J[a+2>>1];b=0;a=h;while(1){d=I[(b+s|0)+q|0];e=g+N(d,12)|0;j=O(O(L[e+8>>2]*m)+O(O(L[e>>2]*k)+O(l*L[e+4>>2])));d:{if(!(j>f)){break d}e=(c+16|0)+(d>>>3&28)|0;o=H[e>>2];p=1<>2]=o|p;f=j;a=d}b=b+1|0;if((i|0)!=(b|0)){continue}break}if((a|0)!=(h|0)){continue}}break}return h}function uP(a){a=a|0;var b=O(0),c=0,d=0,e=0,f=O(0),g=O(0),h=0,i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=0,s=O(0),t=O(0),u=O(0),v=O(0);r=H[a+32>>2];if(r){l=L[a+36>>2];a=H[a+28>>2];while(1){s=O(0);e=Oa-16|0;Oa=e;d=H[H[a>>2]>>2];h=H[d+44>>2];c=J[d+148>>1];a:{if(c&4){G[d+148>>1]=c&63999;d=H[d+44>>2];b=L[d+16>>2];c=H[h+176>>2];c=I[c+31|0]==1?c:0;f=L[c+4>>2];j=L[c+8>>2];k=L[d+28>>2];i=L[c+12>>2];m=L[d+24>>2];n=L[c>>2];o=L[d+20>>2];g=O(O(b*f)+O(O(O(j*k)-O(i*m))-O(n*o)));p=O(O(m*n)+O(O(O(f*k)-O(i*o))-O(j*b)));q=O(O(o*j)+O(O(O(n*k)-O(i*b))-O(f*m)));t=O(L[c+16>>2]-L[d+32>>2]);u=O(L[c+24>>2]-L[d+40>>2]);v=O(L[c+20>>2]-L[d+36>>2]);f=O(O(j*m)+O(O(f*o)+O(O(i*k)+O(n*b))));if(f>2]=n;L[h+84>>2]=o;L[h+80>>2]=m;L[h+104>>2]=O(k*b)*l;L[h+100>>2]=O(s*b)*l;L[h+96>>2]=O(j*b)*l;break a}if(c&2048){break a}H[e+8>>2]=0;H[e>>2]=0;H[e+4>>2]=0;DF(h,e);H[e+8>>2]=0;H[e>>2]=0;H[e+4>>2]=0;EF(h,e)}Oa=e+16|0;a=a+4|0;r=r-1|0;if(r){continue}break}}}function pw(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;c=H[a+660>>2];if(c>>>0>=(H[a+664>>2]&2147483647)>>>0){c=H[a+664>>2]&2147483647;g=c?c<<1:1;a:{if(!g){break a}c=g<<5;if(!c){break a}e=H[33808];d=e+12|0;e=(j=d,k=c,l=Ra[H[H[e>>2]+20>>2]](e)|0?40080:55639,m=13582,n=553,i=H[H[d>>2]+8>>2],Ra[i](j|0,k|0,l|0,m|0,n|0)|0)}c=H[a+660>>2];if((c|0)>0){h=(c<<5)+e|0;d=H[a+656>>2];c=e;while(1){f=H[d+4>>2];H[c>>2]=H[d>>2];H[c+4>>2]=f;f=H[d+28>>2];H[c+24>>2]=H[d+24>>2];H[c+28>>2]=f;f=H[d+20>>2];H[c+16>>2]=H[d+16>>2];H[c+20>>2]=f;f=H[d+12>>2];H[c+8>>2]=H[d+8>>2];H[c+12>>2]=f;d=d+32|0;c=c+32|0;if(h>>>0>c>>>0){continue}break}c=H[a+660>>2]}d=H[b+4>>2];c=(c<<5)+e|0;H[c>>2]=H[b>>2];H[c+4>>2]=d;d=H[b+28>>2];H[c+24>>2]=H[b+24>>2];H[c+28>>2]=d;d=H[b+20>>2];H[c+16>>2]=H[b+16>>2];H[c+20>>2]=d;d=H[b+12>>2];H[c+8>>2]=H[b+8>>2];H[c+12>>2]=d;b:{if(H[a+664>>2]<0){break b}b=H[a+656>>2];if(!b){break b}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}H[a+664>>2]=g;H[a+656>>2]=e;H[a+660>>2]=H[a+660>>2]+1;return 1}e=H[a+656>>2]+(c<<5)|0;c=H[b+4>>2];H[e>>2]=H[b>>2];H[e+4>>2]=c;c=H[b+28>>2];H[e+24>>2]=H[b+24>>2];H[e+28>>2]=c;c=H[b+20>>2];H[e+16>>2]=H[b+16>>2];H[e+20>>2]=c;c=H[b+12>>2];H[e+8>>2]=H[b+8>>2];H[e+12>>2]=c;H[a+660>>2]=H[a+660>>2]+1;return 1}function qS(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=O(0),i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=O(0);g=Oa-160|0;Oa=g;H[g+144>>2]=3;l=M[c+12>>3];o=H[b+44>>2];p=H[b+40>>2];m=M[c+20>>3];i=M[d+8>>3];n=M[c+28>>3];j=M[d+16>>3];k=M[d>>3];L[g+156>>2]=L[b+48>>2];L[g+136>>2]=j-n;L[g+132>>2]=i-m;H[g+148>>2]=p;H[g+152>>2]=o;L[g+128>>2]=k-l;L[g+112>>2]=L[a+244>>2];L[g+116>>2]=L[a+248>>2];L[g+120>>2]=L[a+252>>2];L[g+124>>2]=L[a+256>>2];H[g+96>>2]=3;i=M[c+36>>3];b=H[c+64>>2];d=H[c+60>>2];j=M[c+44>>3];k=M[c+52>>3];L[g+108>>2]=L[c+68>>2];L[g+88>>2]=k-n;L[g+84>>2]=j-m;H[g+100>>2]=d;H[g+104>>2]=b;L[g+80>>2]=i-l;L[g+64>>2]=L[c+72>>2];L[g+68>>2]=L[c+76>>2];L[g+72>>2]=L[c+80>>2];L[g+76>>2]=L[c+84>>2];H[g+40>>2]=0;H[g+44>>2]=0;H[g+48>>2]=0;H[g+52>>2]=0;H[g+32>>2]=0;H[g+36>>2]=0;d=0;G[g+28>>1]=0;H[g+24>>2]=-1;H[g+16>>2]=0;H[g+20>>2]=0;H[g+56>>2]=2139095039;h=L[f+36>>2];G[g+8>>1]=I[a+299|0]?1283:1027;a:{if(!fU(e,h,g+144|0,g+112|0,g+96|0,g- -64|0,g+16|0,g+8|0)){break a}h=L[g+56>>2];if(h>=L[f+36>>2]){break a}L[f+24>>2]=L[g+44>>2];L[f+28>>2]=L[g+48>>2];q=L[g+52>>2];H[f+40>>2]=-1;H[f+44>>2]=-1;L[f+36>>2]=h;L[f+32>>2]=q;M[f>>3]=M[c+12>>3]+ +L[g+32>>2];M[f+8>>3]=M[c+20>>3]+ +L[g+36>>2];M[f+16>>3]=M[c+28>>3]+ +L[g+40>>2];d=1}Oa=g+160|0;return d|0}function oe(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=H[a>>2];g=H[a+4>>2]-d>>2;if(g>>>0>>0){f=b-g|0;g=a;a:{d=H[a+8>>2];b=H[a+4>>2];if(f>>>0<=d-b>>2>>>0){b:{if(!f){break b}a=b;d=(f<<2)-4|0;e=(d>>>2|0)+1&7;if(e){while(1){H[a>>2]=H[c>>2];a=a+4|0;h=h+1|0;if((e|0)!=(h|0)){continue}break}}b=(f<<2)+b|0;if(d>>>0<28){break b}while(1){H[a>>2]=H[c>>2];H[a+4>>2]=H[c>>2];H[a+8>>2]=H[c>>2];H[a+12>>2]=H[c>>2];H[a+16>>2]=H[c>>2];H[a+20>>2]=H[c>>2];H[a+24>>2]=H[c>>2];H[a+28>>2]=H[c>>2];a=a+32|0;if((b|0)!=(a|0)){continue}break}}H[g+4>>2]=b;break a}c:{e=H[g>>2];i=b-e>>2;a=i+f|0;if(a>>>0<1073741824){d=d-e|0;e=d>>1;e=d>>2>>>0<536870911?a>>>0>e>>>0?a:e:1073741823;if(e){if(e>>>0>=1073741824){break c}j=o6(e<<2)}d=(i<<2)+j|0;a=d;f=f<<2;i=f-4|0;k=(i>>>2|0)+1&7;if(k){a=d;while(1){H[a>>2]=H[c>>2];a=a+4|0;h=h+1|0;if((k|0)!=(h|0)){continue}break}}f=d+f|0;if(i>>>0>=28){while(1){H[a>>2]=H[c>>2];H[a+4>>2]=H[c>>2];H[a+8>>2]=H[c>>2];H[a+12>>2]=H[c>>2];H[a+16>>2]=H[c>>2];H[a+20>>2]=H[c>>2];H[a+24>>2]=H[c>>2];H[a+28>>2]=H[c>>2];a=a+32|0;if((f|0)!=(a|0)){continue}break}}a=H[g>>2];b=b-a|0;c=d-b|0;if((b|0)>0){R6(c,a,b)}H[g+8>>2]=(e<<2)+j;H[g+4>>2]=f;H[g>>2]=c;if(a){N6(a)}break a}q6();X()}ka();X()}return}if(b>>>0>>0){H[a+4>>2]=d+(b<<2)}}function ez(a,b,c){var d=0,e=0,f=O(0),g=0,h=0,i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=0,p=O(0),q=0,r=0;h=H[a+7684>>2];if((h|0)!=64){if(c){f=L[b+44>>2];g=H[b+60>>2];e=H[b+56>>2];d=N(h,44)+a|0;F[d+4|0]=I[b+48|0];o=1;F[d+5|0]=1;H[d>>2]=0;H[d+12>>2]=e;H[d+16>>2]=g;L[d+8>>2]=f;h=h+1|0;i=L[b+24>>2];j=L[b+20>>2];k=L[b+16>>2];a:{if((c|0)==1){l=i;m=j;n=k;break a}g=1;l=i;m=j;n=k;while(1){b:{c:{p=f;e=(o<<6)+b|0;f=L[e+44>>2];if(p!=f){break c}q=(r<<6)+b|0;if(L[e+56>>2]!=L[q+56>>2]|L[e+60>>2]!=L[q+60>>2]|!(O(O(L[e+8>>2]*L[q+8>>2])+O(O(L[e>>2]*L[q>>2])+O(L[e+4>>2]*L[q+4>>2])))>=O(.9990000128746033))){break c}f=L[e+16>>2];k=fn?n:f;f=L[e+24>>2];i=f>2];j=j>p?j:p;l=f>l?l:f;m=m>2]=n;F[d+5|0]=g;L[d+40>>2]=i;L[d+36>>2]=j;L[d+32>>2]=k;L[d+28>>2]=l;L[d+24>>2]=m;g=H[e+60>>2];r=H[e+56>>2];d=N(h,44)+a|0;F[d+4|0]=I[e+48|0];G[d+2>>1]=0;F[d+5|0]=1;G[d>>1]=o;H[d+12>>2]=r;H[d+16>>2]=g;L[d+8>>2]=f;h=h+1|0;n=L[e+16>>2];k=n;m=L[e+20>>2];j=m;l=L[e+24>>2];i=l;r=o;g=1}o=o+1|0;if((o|0)!=(c|0)){f=L[((r<<6)+b|0)+44>>2];continue}break}if((g&255)==1){break a}F[d+5|0]=g}L[d+20>>2]=n;L[d+40>>2]=i;L[d+36>>2]=j;L[d+32>>2]=k;L[d+28>>2]=l;L[d+24>>2]=m}H[a+7684>>2]=h;a=1}else{a=0}return a}function tg(a,b,c){var d=O(0),e=0,f=O(0),g=0,h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=0,r=0,s=O(0),t=O(0),u=O(0);e=Oa-32|0;Oa=e;g=I[b+4|0]&4?H[b+8>>2]:b+48|0;q=H[c+4>>2];a:{if((q&251658240)==83886080){b=q&64?H[c+8>>2]+96|0:c+32|0;s=L[b+16>>2];t=L[b+20>>2];u=L[b+24>>2];m=L[g+24>>2];n=L[g+20>>2];o=L[g+16>>2];d=L[b+12>>2];h=L[g+12>>2];i=L[b+8>>2];j=L[g+8>>2];k=L[b>>2];f=L[g>>2];l=L[b+4>>2];p=L[g+4>>2];L[a+12>>2]=O(d*h)-O(O(i*j)+O(O(k*f)+O(l*p)));L[a+8>>2]=O(i*h)+O(O(O(k*p)-O(f*l))+O(d*j));L[a+4>>2]=O(l*h)+O(O(d*p)+O(O(i*f)-O(j*k)));L[a>>2]=O(k*h)+O(O(d*f)+O(O(l*j)-O(p*i)));h=O(O(d*d)+O(-.5));j=O(O(i*m)+O(O(k*o)+O(l*n)));f=O(O(O(m*h)+O(d*O(O(k*n)-O(o*l))))+O(i*j));L[a+24>>2]=u+O(f+f);f=O(O(l*j)+O(O(n*h)+O(d*O(O(i*o)-O(m*k)))));L[a+20>>2]=t+O(f+f);d=O(O(k*j)+O(O(o*h)+O(d*O(O(l*m)-O(n*i)))));L[a+16>>2]=s+O(d+d);break a}b=H[c+8>>2];r=H[c+268>>2];b:{c:{if((I[(r&16384?b+268|0:c+60|0)|0]&3)!=3){break c}if(r&32768){L[e>>2]=L[b+192>>2];L[e+4>>2]=L[b+196>>2];L[e+8>>2]=L[b+200>>2];L[e+12>>2]=L[b+204>>2];L[e+16>>2]=L[b+208>>2];L[e+20>>2]=L[b+212>>2];L[e+24>>2]=L[b+216>>2];b=e;break b}if(q>>>0>3221225471){break c}b=e;if(_F(c+16|0,b)){break b}}b=c+208|0}ug(b,g,H[c+268>>2]&1024?H[c+8>>2]+144|0:c- -64|0,a)}Oa=e+32|0}function IF(a,b){var c=0;c=H[a+176>>2];if(!c){c=H[b+288>>2];if(!c){HF(b);c=H[b+288>>2]}H[b+288>>2]=H[c>>2];H[b+280>>2]=H[b+280>>2]+1}F[c+24|0]=0;F[c+25|0]=0;F[c+26|0]=0;F[c+27|0]=0;F[c+28|0]=0;F[c+29|0]=0;F[c+30|0]=0;F[c+31|0]=0;F[c|0]=0;F[c+1|0]=0;F[c+2|0]=0;F[c+3|0]=0;F[c+4|0]=0;F[c+5|0]=0;F[c+6|0]=0;F[c+7|0]=0;F[c+56|0]=0;F[c+57|0]=0;F[c+58|0]=0;F[c+59|0]=0;F[c+60|0]=0;F[c+61|0]=0;F[c+62|0]=0;F[c+63|0]=0;F[c+48|0]=0;F[c+49|0]=0;F[c+50|0]=0;F[c+51|0]=0;F[c+52|0]=0;F[c+53|0]=0;F[c+54|0]=0;F[c+55|0]=0;F[c+40|0]=0;F[c+41|0]=0;F[c+42|0]=0;F[c+43|0]=0;F[c+44|0]=0;F[c+45|0]=0;F[c+46|0]=0;F[c+47|0]=0;F[c+32|0]=0;F[c+33|0]=0;F[c+34|0]=0;F[c+35|0]=0;F[c+36|0]=0;F[c+37|0]=0;F[c+38|0]=0;F[c+39|0]=0;F[c+16|0]=0;F[c+17|0]=0;F[c+18|0]=0;F[c+19|0]=0;F[c+20|0]=0;F[c+21|0]=0;F[c+22|0]=0;F[c+23|0]=0;F[c+8|0]=0;F[c+9|0]=0;F[c+10|0]=0;F[c+11|0]=0;F[c+12|0]=0;F[c+13|0]=0;F[c+14|0]=0;F[c+15|0]=0;F[c+31|0]=1;F[c+28|0]=0;L[c+48>>2]=L[a+120>>2];L[c+52>>2]=L[a+124>>2];L[c+32>>2]=L[a+128>>2];L[c+36>>2]=L[a+132>>2];L[c+40>>2]=L[a+136>>2];L[c+44>>2]=L[a+140>>2];L[c+56>>2]=L[a+112>>2];L[c+60>>2]=L[a+116>>2];H[a+136>>2]=0;H[a+140>>2]=0;H[a+128>>2]=0;H[a+132>>2]=0;H[a+120>>2]=0;H[a+124>>2]=0;H[a+112>>2]=2139095039;H[a+116>>2]=2139095039;H[a+176>>2]=c}function Ed(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;c=H[a+4>>2];if((c|0)!=H[a+8>>2]){L[c>>2]=L[b>>2];L[c+4>>2]=L[b+4>>2];L[c+8>>2]=L[b+8>>2];L[c+12>>2]=L[b+12>>2];L[c+16>>2]=L[b+16>>2];L[c+20>>2]=L[b+20>>2];L[c+24>>2]=L[b+24>>2];H[c+28>>2]=H[b+28>>2];L[c+32>>2]=L[b+32>>2];L[c+36>>2]=L[b+36>>2];L[c+40>>2]=L[b+40>>2];H[c+44>>2]=H[b+44>>2];H[a+4>>2]=c+48;return}a:{b:{d=H[a+4>>2];e=H[a>>2];f=(d-e|0)/48|0;c=f+1|0;if(c>>>0<89478486){g=(H[a+8>>2]-e|0)/48|0;h=g<<1;c=g>>>0<44739242?c>>>0>h>>>0?c:h:89478485;if(c>>>0>=89478486){break b}h=N(f,48);f=N(c,48);g=o6(f);c=h+g|0;L[c>>2]=L[b>>2];L[c+4>>2]=L[b+4>>2];L[c+8>>2]=L[b+8>>2];L[c+12>>2]=L[b+12>>2];L[c+16>>2]=L[b+16>>2];L[c+20>>2]=L[b+20>>2];L[c+24>>2]=L[b+24>>2];H[c+28>>2]=H[b+28>>2];L[c+32>>2]=L[b+32>>2];L[c+36>>2]=L[b+36>>2];L[c+40>>2]=L[b+40>>2];H[c+44>>2]=H[b+44>>2];b=c+48|0;if((d|0)!=(e|0)){while(1){c=c-48|0;d=d-48|0;L[c>>2]=L[d>>2];L[c+4>>2]=L[d+4>>2];L[c+8>>2]=L[d+8>>2];L[c+12>>2]=L[d+12>>2];L[c+16>>2]=L[d+16>>2];L[c+20>>2]=L[d+20>>2];L[c+24>>2]=L[d+24>>2];H[c+28>>2]=H[d+28>>2];L[c+32>>2]=L[d+32>>2];L[c+36>>2]=L[d+36>>2];L[c+40>>2]=L[d+40>>2];H[c+44>>2]=H[d+44>>2];if((d|0)!=(e|0)){continue}break}}H[a+8>>2]=f+g;H[a+4>>2]=b;H[a>>2]=c;if(e){N6(e)}break a}q6();X()}ka();X()}}function aY(a,b,c,d){var e=O(0),f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=0,o=0;n=Oa-16|0;Oa=n;h=L[a+48>>2];i=L[a+60>>2];o=a- -64|0;j=L[o>>2];k=L[a+40>>2];l=L[a+52>>2];m=L[a+36>>2];e=L[c>>2];f=O(e*L[d>>2]);g=O(e*L[d+4>>2]);e=O(e*L[d+8>>2]);L[d+8>>2]=O(O(f*L[a+44>>2])+O(g*L[a+56>>2]))+O(e*L[a+68>>2]);L[d+4>>2]=O(O(f*k)+O(g*l))+O(e*j);L[d>>2]=O(O(f*m)+O(g*h))+O(e*i);h=L[a+48>>2];i=L[a+60>>2];j=L[o>>2];k=L[a+40>>2];l=L[a+52>>2];m=L[a+36>>2];e=L[c+4>>2];f=O(e*L[d+12>>2]);g=O(e*L[d+16>>2]);e=O(e*L[d+20>>2]);L[d+20>>2]=O(O(f*L[a+44>>2])+O(g*L[a+56>>2]))+O(e*L[a+68>>2]);L[d+16>>2]=O(O(f*k)+O(g*l))+O(e*j);L[d+12>>2]=O(O(f*m)+O(g*h))+O(e*i);h=L[a+48>>2];i=L[a+60>>2];j=L[o>>2];k=L[a+40>>2];l=L[a+52>>2];m=L[a+36>>2];e=L[c+8>>2];f=O(e*L[d+24>>2]);g=O(e*L[d+28>>2]);e=O(e*L[d+32>>2]);L[d+32>>2]=O(O(f*L[a+44>>2])+O(g*L[a+56>>2]))+O(e*L[a+68>>2]);L[d+28>>2]=O(O(f*k)+O(g*l))+O(e*j);L[d+24>>2]=O(O(f*m)+O(g*h))+O(e*i);h=L[a+60>>2];i=L[a+48>>2];j=L[o>>2];k=L[a+40>>2];l=L[a+52>>2];m=L[a+36>>2];e=L[b>>2];f=L[b+4>>2];g=L[b+8>>2];L[b+8>>2]=O(O(e*L[a+44>>2])+O(f*L[a+56>>2]))+O(g*L[a+68>>2]);L[b+4>>2]=O(O(e*k)+O(f*l))+O(g*j);L[b>>2]=O(O(e*m)+O(f*i))+O(g*h);D5(n,d);L[c>>2]=L[n>>2];L[c+4>>2]=L[n+4>>2];L[c+8>>2]=L[n+8>>2];Oa=n+16|0}function CS(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=O(0),i=0,j=O(0),k=0,l=0,m=0;g=Oa-160|0;Oa=g;H[g+144>>2]=2;i=M[c+12>>3];h=L[b+44>>2];j=L[b+40>>2];k=M[c+20>>3];l=M[d+8>>3];m=M[d>>3];L[g+136>>2]=M[d+16>>3]-M[c+28>>3];L[g+132>>2]=l-k;L[g+148>>2]=j;L[g+152>>2]=h*O(.5);L[g+128>>2]=m-i;L[g+112>>2]=L[a+244>>2];L[g+116>>2]=L[a+248>>2];L[g+120>>2]=L[a+252>>2];L[g+124>>2]=L[a+256>>2];d=0;H[g+104>>2]=0;H[g+96>>2]=2;L[g+100>>2]=L[c+60>>2];HT(g+16|0,c+36|0,c+48|0,g+104|0);b=H[g+40>>2];H[g+84>>2]=H[g+36>>2];H[g+88>>2]=b;L[g+64>>2]=L[g+16>>2];b=H[g+24>>2];H[g+68>>2]=H[g+20>>2];H[g+72>>2]=b;b=H[g+32>>2];H[g+76>>2]=H[g+28>>2];H[g+80>>2]=b;if(L[g+104>>2]==O(0)){H[g+104>>2]=872415232}H[g+40>>2]=0;H[g+44>>2]=0;H[g+48>>2]=0;H[g+52>>2]=0;H[g+32>>2]=0;H[g+36>>2]=0;G[g+28>>1]=0;H[g+24>>2]=-1;H[g+16>>2]=0;H[g+20>>2]=0;H[g+56>>2]=2139095039;h=L[f+36>>2];G[g+8>>1]=I[a+299|0]?1283:1027;a:{if(!fU(e,h,g+144|0,g+112|0,g+96|0,g- -64|0,g+16|0,g+8|0)){break a}h=L[g+56>>2];if(h>=L[f+36>>2]){break a}L[f+36>>2]=h;L[f+24>>2]=L[g+44>>2];L[f+28>>2]=L[g+48>>2];h=L[g+52>>2];H[f+40>>2]=-1;H[f+44>>2]=-1;L[f+32>>2]=h;M[f>>3]=M[c+12>>3]+ +L[g+32>>2];M[f+8>>3]=M[c+20>>3]+ +L[g+36>>2];M[f+16>>3]=M[c+28>>3]+ +L[g+40>>2];d=1}Oa=g+160|0;return d|0}function oC(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=O(0),n=0,o=0,p=0,q=0,r=0;if((i7(b)|0)!=1){b=b>>>1|b;b=b>>>2|b;b=b>>>4|b;b=b>>>8|b;b=(b>>>16|b)+1|0}m=O(L[a+24>>2]*O(b>>>0));a:{if(m=O(0)){j=~~m>>>0;break a}j=0}q=H[a+16>>2];c=b+j<<2;e=(0-c&12)+c|0;d=e+N(j,20)|0;if(d){c=H[33808]+12|0;d=Ra[H[H[c>>2]+8>>2]](c,d,20591,14239,372)|0}else{d=0}c=b<<2;h=S6(d,255,c);n=h+e|0;o=c+h|0;if(H[a+36>>2]){r=b-1|0;while(1){k=o+(i<<2)|0;p=N(i,20);g=p+H[a+4>>2]|0;c=H[g+4>>2];e=H[g>>2];d=c;c=-1;l=c+e|0;f=(e^-1)+d|0;f=c>>>0>l>>>0?f+1|0:f;c=l;c=c^((f&4194303)<<10|c>>>22);e=c;d=f^f>>>22;f=d<<13|c>>>19;c=c<<13^-1;e=e+c|0;d=(f^-1)+d|0;d=c>>>0>e>>>0?d+1|0:d;c=e;c=g7(c^((d&255)<<24|c>>>8),d^d>>>8,9,0);e=Qa;d=e>>>15|0;c=c^((e&32767)<<17|c>>>15);d=d^e;f=d;l=k;e=d<<27|c>>>5;d=c<<27^-1;k=d+c|0;c=(e^-1)+f|0;c=d>>>0>k>>>0?c+1|0:c;d=k;c=(((d^((c&2147483647)<<1|d>>>31))&r)<<2)+h|0;H[l>>2]=H[c>>2];H[c>>2]=i;c=H[g+4>>2];d=n+p|0;H[d>>2]=H[g>>2];H[d+4>>2]=c;H[d+16>>2]=H[g+16>>2];c=H[g+12>>2];H[d+8>>2]=H[g+8>>2];H[d+12>>2]=c;i=i+1|0;if(i>>>0>2]){continue}break}}d=H[a>>2];if(d){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,d)}H[a+20>>2]=b;H[a+12>>2]=h;H[a>>2]=h;H[a+8>>2]=o;H[a+16>>2]=j;H[a+4>>2]=n;if(H[a+28>>2]==-1){H[a+28>>2]=q}}function $Z(a,b,c,d,e,f,g){var h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=0,r=O(0),s=O(0),t=O(0),u=0;i=L[a+8>>2];h=L[b+8>>2];j=L[a+4>>2];l=L[b+4>>2];q=Oa-16|0;p=L[a>>2];k=O(L[b>>2]-p);L[q>>2]=k;l=O(l-j);L[q+4>>2]=l;n=O(h-i);L[q+8>>2]=n;r=L[c+4>>2];m=L[c>>2];h=O(O(k*r)-O(m*l));o=O(h*i);s=l;l=L[c+8>>2];i=O(O(s*l)-O(r*n));s=j;j=O(O(n*m)-O(l*k));k=O(o+O(O(i*p)+O(s*j)));l=L[d+8>>2];n=L[d>>2];p=L[d+4>>2];r=O(O(O(l*h)+O(O(n*i)+O(j*p)))-k);m=L[e+8>>2];o=L[e>>2];t=L[e+4>>2];a:{if(O(r*O(O(O(m*h)+O(O(o*i)+O(j*t)))-k))>O(0)){break a}k=O(m-l);m=O(o-n);o=O(t-p);t=O(O(h*k)+O(O(i*m)+O(j*o)));if(t==O(0)){break a}s=k;k=O(r/t);L[g+8>>2]=l-O(s*k);L[g+4>>2]=p-O(o*k);L[g>>2]=n-O(m*k);j=O(P(j));i=O(P(i));h=O(P(h));b:{c:{if(!(!(j>i)|!(j>h))){d=0;u=2;break c}e=2;d=1;if(!(h>i)){break b}}e=d;d=u}e=e<<2;h=L[e+q>>2];d=d<<2;i=L[d+q>>2];h=O(O(O(i*O(L[e+g>>2]-L[a+e>>2]))-O(O(L[d+g>>2]-L[a+d>>2])*h))/O(O(i*L[c+e>>2])-O(L[c+d>>2]*h)));L[f>>2]=h;u=0;if(h>2];j=L[c+4>>2];i=O(L[g>>2]-O(h*L[c>>2]));L[g>>2]=i;j=O(L[g+4>>2]-O(h*j));L[g+4>>2]=j;h=O(L[g+8>>2]-O(h*k));L[g+8>>2]=h;u=O(O(O(L[a+8>>2]-h)*O(L[b+8>>2]-h))+O(O(O(L[a>>2]-i)*O(L[b>>2]-i))+O(O(L[a+4>>2]-j)*O(L[b+4>>2]-j))))>2];a:{b:{if(!o){k=O(3.4028234663852886e38);p=O(1);d=0;break b}w=L[a+72>>2];x=L[a+68>>2];y=L[a+56>>2];z=L[a+52>>2];s=L[d>>2];t=L[a+80>>2];A=L[a+64>>2];B=L[a+48>>2];C=H[b+28>>2];D=H[b+24>>2];a=H[c+40>>2];E=L[a+40>>2];F=L[a+36>>2];G=L[a+24>>2];J=L[a+20>>2];K=L[a+32>>2];M=L[a+16>>2];P=L[a+8>>2];Q=L[a+4>>2];R=L[a>>2];k=O(3.4028234663852886e38);b=0;d=1;p=O(1);while(1){a=N(b,20)+D|0;l=L[a+8>>2];m=L[a>>2];n=L[a+4>>2];h=O(O(E*l)+O(O(K*m)+O(n*F)));i=O(O(P*l)+O(O(R*m)+O(n*Q)));j=O(O(G*l)+O(O(M*m)+O(n*J)));g=O(O(1)/O(W(O(O(h*h)+O(O(i*i)+O(j*j))))));h=O(h*g);i=O(i*g);j=O(j*g);q=O(O(w*h)+O(O(A*i)+O(x*j)));r=O(O(y*h)+O(O(B*i)+O(z*j)));c=q>2]));if(u>O(v+s)){break a}a=N(I[a+19|0],12)+C|0;if(O(s+O(t+(c?r:q)))>2])+O(O(m*L[a>>2])+O(L[a+4>>2]*n)))*g)){break a}g=O(v-u);if(g>>0>b>>>0;if((b|0)!=(o|0)){continue}break}}H[f+12>>2]=0;L[f+8>>2]=T;L[f+4>>2]=p;L[f>>2]=S;L[e>>2]=k}return(d^-1)&1}function PQ(a,b,c,d,e){var f=O(0),g=0,h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0);g=H[c+44>>2];a:{if(I[g+9|0]){c=c- -64|0;c=d?c:e?g+16|0:c;v=L[c+20>>2];w=L[c+24>>2];q=L[c+16>>2];r=L[g- -64>>2];s=L[g+68>>2];l=L[g+72>>2];d=N(b,28)+a|0;m=L[c+8>>2];h=L[g+56>>2];n=L[c+4>>2];i=L[g+52>>2];j=L[c+12>>2];f=L[g+60>>2];k=L[g+48>>2];o=L[c>>2];L[d+16>>2]=O(m*h)+O(O(n*i)+O(O(j*f)+O(k*o)));L[d+12>>2]=O(k*n)+O(O(O(f*m)-O(j*h))-O(o*i));L[d+8>>2]=O(h*o)+O(O(O(f*n)-O(j*i))-O(m*k));L[d+4>>2]=O(i*m)+O(O(O(f*o)-O(j*k))-O(n*h));x=q;q=O(l*O(-2));r=O(r*O(-2));s=O(s*O(-2));t=O(O(h*q)+O(O(k*r)+O(i*s)));u=O(O(f*f)+O(-.5));l=O(O(h*t)+O(O(q*u)-O(f*O(O(k*s)-O(r*i)))));l=O(l+l);p=O(O(k*t)+O(O(r*u)-O(f*O(O(i*q)-O(s*h)))));p=O(p+p);f=O(O(i*t)+O(O(s*u)-O(f*O(O(h*r)-O(q*k)))));f=O(f+f);h=O(O(m*l)+O(O(o*p)+O(n*f)));i=O(O(j*j)+O(-.5));L[d+20>>2]=x+O(O(o*h)+O(O(p*i)+O(j*O(O(n*l)-O(f*m)))));k=O(w+O(O(m*h)+O(O(l*i)+O(j*O(O(o*f)-O(p*n))))));j=O(v+O(O(n*h)+O(O(f*i)+O(j*O(O(m*p)-O(l*o))))));break a}c=N(b,28)+a|0;L[c+4>>2]=L[g+16>>2];L[c+8>>2]=L[g+20>>2];L[c+12>>2]=L[g+24>>2];L[c+16>>2]=L[g+28>>2];L[c+20>>2]=L[g+32>>2];k=L[g+40>>2];j=L[g+36>>2]}a=N(b,28)+a|0;L[a+28>>2]=k;L[a+24>>2]=j}function uD(a,b){var c=O(0),d=0,e=O(0),f=O(0),g=O(0),h=0,i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=0,x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0);h=H[a+644>>2]+N(b,44)|0;B=L[h+28>>2];q=L[h+32>>2];e=L[h+20>>2];d=H[H[h>>2]+588>>2];g=L[d+8>>2];l=L[d+24>>2];c=O(O(g+l)*O(.5));r=O(c+c);k=L[h+12>>2];m=L[d>>2];n=L[d+16>>2];c=O(O(m+n)*O(.5));s=O(c+c);i=L[d+4>>2];o=L[d+20>>2];c=O(O(i+o)*O(.5));t=O(c+c);c=L[h+16>>2];u=O(O(e*r)+O(O(k*s)+O(t*c)));w=H[a+640>>2];d=w+N(b,24)|0;j=L[h+24>>2];v=O(O(j*j)+O(-.5));x=O(L[h+36>>2]+O(O(e*u)+O(O(r*v)+O(j*O(O(k*t)-O(s*c))))));l=O(O(l-g)*O(.5));g=O(k+k);p=O(O(1)-O(k*g));f=O(c+c);y=O(c*f);m=O(O(n-m)*O(.5));z=O(g*e);A=O(j*f);n=O(O(o-i)*O(.5));i=O(j*g);f=O(f*e);o=O(O(P(O(l*O(p-y))))+O(O(P(O(m*O(z-A))))+O(P(O(n*O(i+f))))));L[d+20>>2]=x+o;q=O(q+O(O(c*u)+O(O(t*v)+O(j*O(O(e*s)-O(r*k))))));C=O(P(O(l*O(f-i))));g=O(g*c);f=O(e+e);i=O(j*f);f=O(e*f);p=O(C+O(O(P(O(m*O(g+i))))+O(P(O(n*O(p-f))))));L[d+16>>2]=q+p;e=O(B+O(O(k*u)+O(O(s*v)+O(j*O(O(c*r)-O(t*e))))));c=O(O(P(O(l*O(z+A))))+O(O(P(O(m*O(O(O(1)-y)-f))))+O(P(O(n*O(g-i))))));L[d+12>>2]=e+c;L[d+8>>2]=x-o;L[d+4>>2]=q-p;L[d>>2]=e-c;H[a+704>>2]=0;kD(a,b,TB(a+4|0,H[H[a+620>>2]+(b<<2)>>2],b,w,a+700|0))}function ov(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=O(0),k=0,l=0,m=0,n=0,o=0,p=0;c=Oa-32|0;Oa=c;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;H[c>>2]=0;H[c+4>>2]=0;d=H[a+84>>2];a:{if(d>>>0>=(H[a+88>>2]&2147483647)>>>0){b=H[a+88>>2]&2147483647;h=b?b<<1:1;b:{if(!h){break b}d=h<<5;if(!d){break b}b=H[33808];f=b+12|0;f=(l=f,m=d,n=Ra[H[H[b>>2]+20>>2]](b)|0?26894:55639,o=13582,p=553,k=H[H[f>>2]+8>>2],Ra[k](l|0,m|0,n|0,o|0,p|0)|0)}g=H[a+84>>2];e=(g<<5)+f|0;i=H[a+80>>2];if((g|0)>0){b=i;d=f;while(1){L[d>>2]=L[b>>2];L[d+4>>2]=L[b+4>>2];L[d+8>>2]=L[b+8>>2];L[d+12>>2]=L[b+12>>2];L[d+16>>2]=L[b+16>>2];L[d+20>>2]=L[b+20>>2];L[d+24>>2]=L[b+24>>2];L[d+28>>2]=L[b+28>>2];b=b+32|0;d=d+32|0;if(e>>>0>d>>>0){continue}break}}L[e>>2]=L[c>>2];L[e+4>>2]=L[c+4>>2];L[e+8>>2]=L[c+8>>2];L[e+12>>2]=L[c+12>>2];L[e+16>>2]=L[c+16>>2];L[e+20>>2]=L[c+20>>2];L[e+24>>2]=L[c+24>>2];L[e+28>>2]=L[c+28>>2];if(!(!i|H[a+88>>2]<0)){b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,i);g=H[a+84>>2]}H[a+88>>2]=h;H[a+80>>2]=f;H[a+84>>2]=g+1;break a}b=H[a+80>>2]+(d<<5)|0;H[b>>2]=0;H[b+4>>2]=0;H[b+8>>2]=0;H[b+12>>2]=0;L[b+16>>2]=L[c+16>>2];L[b+20>>2]=L[c+20>>2];j=L[c+24>>2];H[b+28>>2]=0;L[b+24>>2]=j;H[a+84>>2]=d+1}F[a+92|0]=1;Oa=c+32|0}function Vz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=O(0),f=0,g=0,h=O(0),i=0,j=0,k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=0,t=0,u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=0,C=O(0),D=0,E=0,F=0;if(b){c=0;while(1){d=(c<<5)+a|0;g=H[d>>2];k=L[g+24>>2];l=L[g+20>>2];m=L[g+16>>2];n=L[g+8>>2];o=L[g+4>>2];p=L[g>>2];f=J[d+22>>1];if(f){d=H[d+24>>2];B=d+(f<<4)|0;while(1){s=d+32|0;f=I[d+1|0];t=s+((f<<2)+12&2032)|0;j=I[d+2|0];i=(j>>>0)/(f>>>0)|0;a:{if(!j){break a}if(f>>>0<=j>>>0){C=L[d+4>>2];q=L[d+16>>2];r=L[d+8>>2];D=i>>>0>1?i:1;i=0;f=0;while(1){E=f+D|0;F=(i<<2)+s|0;while(1){e=O(C*L[F>>2]);d=(f<<6)+t|0;h=L[d+28>>2];u=L[d+8>>2];v=L[d>>2];w=L[d+4>>2];x=L[d+24>>2];y=L[d+16>>2];z=L[d+20>>2];A=L[d+12>>2];h=O(O(h*O(O(O(u*n)+O(O(v*p)+O(o*w)))+O(O(x*k)+O(O(y*m)+O(l*z)))))+O(A-O(h*L[d+48>>2])));h=e>2]=e;e=O(e-A);k=O(k+O(O(q*x)*e));l=O(l+O(O(q*z)*e));m=O(m+O(O(q*y)*e));n=O(n+O(O(r*u)*e));o=O(o+O(O(r*w)*e));p=O(p+O(O(r*v)*e));f=f+1|0;if((E|0)!=(f|0)){continue}break}i=i+1|0;if(f>>>0>>0){continue}break}break a}while(1)continue}d=(j<<6)+t|0;if(B>>>0>d>>>0){continue}break}}L[g+24>>2]=k;L[g+20>>2]=l;L[g+16>>2]=m;L[g+8>>2]=n;L[g+4>>2]=o;L[g>>2]=p;c=c+1|0;if((c|0)!=(b|0)){continue}break}}}function iQ(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;b=H[a+20>>2];h=Oa-16|0;Oa=h;a=H[a+28>>2];H[a+996>>2]=0;f=a+4180|0;H[f>>2]=H[f>>2]+1;H[a+4176>>2]=H[b+16>>2];H[h+12>>2]=b;f=a+4160|0;d=H[a+4212>>2];a:{if(d>>>0>=(H[a+4216>>2]&2147483647)>>>0){Nr(a+4188|0,h+12|0);break a}H[H[a+4208>>2]+(d<<2)>>2]=b;H[a+4212>>2]=d+1}Ra[H[H[b>>2]+16>>2]](b);F[a+4252|0]=1;d=a+4140|0;H[d>>2]=f;H[a+4144>>2]=1;Ra[H[H[a+4160>>2]+16>>2]](f);i=a+4136|0;H[i>>2]=H[H[d>>2]+16>>2];H[a+4104>>2]=1;g=a+4100|0;d=a+4120|0;H[g>>2]=d;Ra[H[H[a+4120>>2]+16>>2]](d);j=a+4096|0;H[j>>2]=H[H[g>>2]+16>>2];H[a+4064>>2]=1;e=a+4060|0;g=a+4080|0;H[e>>2]=g;Ra[H[H[a+4080>>2]+16>>2]](g);e=H[H[e>>2]+16>>2];H[a+4488>>2]=1;k=a+4056|0;H[k>>2]=e;c=a+4484|0;e=a+4040|0;H[c>>2]=e;Ra[H[H[a+4040>>2]+16>>2]](e);l=a+4480|0;H[l>>2]=H[H[c>>2]+16>>2];H[a+4024>>2]=1;c=a+4020|0;H[c>>2]=b;Ra[H[H[b>>2]+16>>2]](b);c=H[H[c>>2]+16>>2];H[a+4016>>2]=c;m=a+4e3|0;Ra[H[H[c>>2]+76>>2]](c,m);AJ(H[a+976>>2]);c=H[H[a+976>>2]+1024>>2];Ra[H[H[c>>2]+12>>2]](c,L[a+1080>>2],I[H[a+1140>>2]+16|0],I[a+1148|0],b,m);Mr(f);b=H[i>>2];Ra[H[H[b>>2]+72>>2]](b,d);b=H[j>>2];Ra[H[H[b>>2]+72>>2]](b,g);b=H[k>>2];Ra[H[H[b>>2]+72>>2]](b,e);b=H[l>>2];Ra[H[H[b>>2]+72>>2]](b,a+4464|0);Oa=h+16|0}function Kv(a,b,c){if(c?1:F[b+269|0]&1){F[a+79|0]=0;G[a+76>>1]=0;if(I[b+258|0]){H[a>>2]=1065353216;if(I[b+258|0]==1){F[a+77|0]=1}F[a+76|0]=1;F[b+252|0]=0}if(I[b+259|0]){c=I[a+76|0];H[(N(c,24)+a|0)+4>>2]=1065353216;if(I[b+259|0]==1){F[a+77|0]=I[a+77|0]+1}F[a+76|0]=c+1;F[(b+c|0)+252|0]=1}if(I[b+260|0]){c=I[a+76|0];H[(N(c,24)+a|0)+8>>2]=1065353216;if(I[b+260|0]==1){F[a+77|0]=I[a+77|0]+1}F[a+76|0]=c+1;F[(b+c|0)+252|0]=2}if(I[b+261|0]){c=I[a+76|0];H[(N(c,24)+a|0)+12>>2]=1065353216;if(I[b+261|0]==1){F[a+77|0]=I[a+77|0]+1}F[a+76|0]=c+1;F[(b+c|0)+252|0]=3}if(I[b+262|0]){c=I[a+76|0];H[(N(c,24)+a|0)+16>>2]=1065353216;if(I[b+262|0]==1){F[a+77|0]=I[a+77|0]+1}F[a+76|0]=c+1;F[(b+c|0)+252|0]=4}if(I[b+263|0]){c=I[a+76|0];H[(N(c,24)+a|0)+20>>2]=1065353216;if(I[b+263|0]==1){F[a+77|0]=I[a+77|0]+1}F[a+76|0]=c+1;F[(b+c|0)+252|0]=5}F[a+79|0]=0;a:{if(I[b+270|0]!=2|I[a+76|0]!=2){break a}if(!I[b+258|0]){F[a+76|0]=3;H[a+48>>2]=1065353216;F[b+254|0]=0;F[a+79|0]=I[a+79|0]+1}if(!I[b+259|0]){c=I[a+76|0];H[(N(c,24)+a|0)+4>>2]=1065353216;F[a+76|0]=c+1;F[(b+c|0)+252|0]=1;F[a+79|0]=I[a+79|0]+1}if(I[b+260|0]){break a}c=I[a+76|0];H[(N(c,24)+a|0)+8>>2]=1065353216;F[a+76|0]=c+1;F[(b+c|0)+252|0]=2;F[a+79|0]=I[a+79|0]+1}F[b+269|0]=I[b+269|0]&254}}function uS(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=O(0),i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=O(0);g=Oa-160|0;Oa=g;H[g+144>>2]=3;i=M[c+12>>3];j=H[b+44>>2];k=H[b+40>>2];l=M[c+20>>3];m=M[d+8>>3];n=M[c+28>>3];o=M[d+16>>3];p=M[d>>3];L[g+156>>2]=L[b+48>>2];L[g+136>>2]=o-n;L[g+132>>2]=m-l;H[g+148>>2]=k;H[g+152>>2]=j;L[g+128>>2]=p-i;L[g+112>>2]=L[a+244>>2];L[g+116>>2]=L[a+248>>2];L[g+120>>2]=L[a+252>>2];L[g+124>>2]=L[a+256>>2];H[g+96>>2]=3;L[g+100>>2]=L[c+48>>2];L[g+104>>2]=L[c+52>>2];L[g+108>>2]=L[c+56>>2];L[g+80>>2]=L[c+36>>2];L[g+84>>2]=L[c+40>>2];L[g+88>>2]=L[c+44>>2];L[g+64>>2]=L[c+60>>2];L[g+68>>2]=L[c- -64>>2];L[g+72>>2]=L[c+68>>2];L[g+76>>2]=L[c+72>>2];H[g+40>>2]=0;H[g+44>>2]=0;H[g+48>>2]=0;H[g+52>>2]=0;H[g+32>>2]=0;H[g+36>>2]=0;d=0;G[g+28>>1]=0;H[g+24>>2]=-1;H[g+16>>2]=0;H[g+20>>2]=0;H[g+56>>2]=2139095039;h=L[f+36>>2];G[g+8>>1]=I[a+299|0]?1283:1027;a:{if(!fU(e,h,g+144|0,g+112|0,g+96|0,g- -64|0,g+16|0,g+8|0)){break a}h=L[g+56>>2];if(h>=L[f+36>>2]){break a}L[f+24>>2]=L[g+44>>2];L[f+28>>2]=L[g+48>>2];q=L[g+52>>2];H[f+40>>2]=-1;H[f+44>>2]=-1;L[f+36>>2]=h;L[f+32>>2]=q;M[f>>3]=M[c+12>>3]+ +L[g+32>>2];M[f+8>>3]=M[c+20>>3]+ +L[g+36>>2];M[f+16>>3]=M[c+28>>3]+ +L[g+40>>2];d=1}Oa=g+160|0;return d|0}function hH(a,b,c){var d=0,e=0,f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=0,o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=0,u=0,w=O(0),x=0,y=0,z=0,A=O(0);x=H[a+4>>2];e=H[x>>2];t=H[a+8>>2];d=t-1|0;d=N(e,24)+b|0;g=L[d+4>>2];h=L[d+8>>2];i=L[d+16>>2];j=L[d+20>>2];k=L[d>>2];u=H[a+24>>2];f=L[(e<<2)+c>>2];l=L[d+12>>2];m=O(f+l);d=(B(m),v(2));H[u+4>>2]=(d|0)>=0?d|-2147483648:d^-1;k=O(k-f);d=(B(k),v(2));H[u>>2]=(d|0)>=0?d|-2147483648:d^-1;n=H[a+28>>2];j=O(f+j);L[n+12>>2]=j;i=O(f+i);L[n+8>>2]=i;h=O(h-f);L[n+4>>2]=h;g=O(g-f);L[n>>2]=g;if(t>>>0>=2){l=O(l-f);d=1;while(1){y=H[(d<<2)+x>>2];e=N(y,24)+b|0;o=L[e+4>>2];p=L[e+8>>2];q=L[e+16>>2];r=L[e+20>>2];s=L[e>>2];z=(d<<3)+u|0;f=L[(y<<2)+c>>2];A=L[e+12>>2];w=O(f+A);e=(B(w),v(2));H[z+4>>2]=(e|0)>=0?e|-2147483648:e^-1;s=O(s-f);e=(B(s),v(2));H[z>>2]=(e|0)>=0?e|-2147483648:e^-1;e=(d<<4)+n|0;r=O(f+r);L[e+12>>2]=r;q=O(f+q);L[e+8>>2]=q;p=O(p-f);L[e+4>>2]=p;o=O(o-f);L[e>>2]=o;m=m>w?m:w;f=O(A-f);l=f>l?l:f;h=hr?j:r;i=i>q?i:q;d=d+1|0;if((t|0)!=(d|0)){continue}break}}L[a+36>>2]=k;L[a+56>>2]=j;L[a+52>>2]=i;L[a+48>>2]=m;L[a+44>>2]=h;L[a+40>>2]=g;b=(t<<3)+u|0;H[b>>2]=-1;H[b+40>>2]=-1;H[b+32>>2]=-1;H[b+24>>2]=-1;H[b+16>>2]=-1;H[b+8>>2]=-1;F[a+60|0]=1}function gs(a,b,c,d,e,f,g,h){var i=0,j=0,k=0,l=0;i=Oa-224|0;Oa=i;l=J[f+16>>1];H[i+220>>2]=-1;j=-1;if(e){j=qt(sg(H[e+4>>2]),H[e>>2],i+220|0)}k=a+5584|0;ND(k);H[c+32>>2]=0;F[c+20|0]=0;d=J[d>>1];H[i+176>>2]=h;H[i+172>>2]=2139095039;H[i+168>>2]=g;G[i+160>>1]=d;H[i+156>>2]=c;H[i+152>>2]=b;H[i+148>>2]=a;H[i+144>>2]=111492;e=d&64;d=l&16;G[i+180>>1]=((e|d)!=0)<<6;F[i+182|0]=1;H[i+164>>2]=f;e=J[f+16>>1];H[i+216>>2]=0;F[i+212|0]=0;F[i+186|0]=0;F[i+185|0]=d>>>4;d=e>>>5&1;F[i+184|0]=d;F[i+183|0]=d;a:{b:{c:{if(!(H[c+28>>2]|(j|0)==-1)){d=JD(k,H[i+220>>2],j);F[i+186|0]=1;d=hs(i+144|0,i+16|0,d);F[i+186|0]=0;if(!d){break c}e=J[f+16>>1]}d=H[a+5656>>2];g=H[a+5620>>2];h=H[a+5584>>2];a=eU(i+16|0,H[b+12>>2],H[b+16>>2],L[b+20>>2]);H[i+216>>2]=a;d:{if(!(e&1)){break d}if(Ra[H[H[h>>2]+28>>2]](h,a,i+144|0)|0){break d}f=H[c+32>>2];a=(f|I[c+20|0])!=0;break b}e:{if(!(e&2)){break e}if(Ra[H[H[g>>2]+28>>2]](g,a,i+144|0)|0){break e}a=(I[c+20|0]|H[c+32>>2])!=0;break a}G[i+8>>1]=J[f+16>>1];b=Ra[H[H[d>>2]+28>>2]](d,a,i+144|0,i+8|0)|0;f=H[c+32>>2];a=(f|I[c+20|0])!=0;if(!b){break a}break b}f=H[c+32>>2];a=(f|I[c+20|0])!=0}if(!f){break a}if(!(Ra[H[H[c>>2]>>2]](c,H[c+24>>2],f)|0)){break a}H[c+32>>2]=0}Ra[H[H[c>>2]+4>>2]](c);Oa=i+224|0;return a}function xS(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=O(0),i=0,j=0,k=0,l=0,m=0,n=O(0),o=0;g=Oa-160|0;Oa=g;H[g+144>>2]=2;k=M[c+12>>3];h=L[b+44>>2];n=L[b+40>>2];l=M[c+20>>3];i=M[d+8>>3];j=M[d>>3];m=M[c+28>>3];L[g+136>>2]=M[d+16>>3]-m;L[g+132>>2]=i-l;L[g+148>>2]=n;L[g+152>>2]=h*O(.5);L[g+128>>2]=j-k;L[g+112>>2]=L[a+244>>2];L[g+116>>2]=L[a+248>>2];L[g+120>>2]=L[a+252>>2];L[g+124>>2]=L[a+256>>2];H[g+96>>2]=3;i=M[c+36>>3];b=H[c+64>>2];d=H[c+60>>2];j=M[c+44>>3];o=M[c+52>>3];L[g+108>>2]=L[c+68>>2];L[g+88>>2]=o-m;L[g+84>>2]=j-l;H[g+100>>2]=d;H[g+104>>2]=b;L[g+80>>2]=i-k;L[g+64>>2]=L[c+72>>2];L[g+68>>2]=L[c+76>>2];L[g+72>>2]=L[c+80>>2];L[g+76>>2]=L[c+84>>2];H[g+40>>2]=0;H[g+44>>2]=0;H[g+48>>2]=0;H[g+52>>2]=0;H[g+32>>2]=0;H[g+36>>2]=0;d=0;G[g+28>>1]=0;H[g+24>>2]=-1;H[g+16>>2]=0;H[g+20>>2]=0;H[g+56>>2]=2139095039;h=L[f+36>>2];G[g+8>>1]=I[a+299|0]?1283:1027;a:{if(!fU(e,h,g+144|0,g+112|0,g+96|0,g- -64|0,g+16|0,g+8|0)){break a}h=L[g+56>>2];if(h>=L[f+36>>2]){break a}L[f+36>>2]=h;L[f+24>>2]=L[g+44>>2];L[f+28>>2]=L[g+48>>2];h=L[g+52>>2];H[f+40>>2]=-1;H[f+44>>2]=-1;L[f+32>>2]=h;M[f>>3]=M[c+12>>3]+ +L[g+32>>2];M[f+8>>3]=M[c+20>>3]+ +L[g+36>>2];M[f+16>>3]=M[c+28>>3]+ +L[g+40>>2];d=1}Oa=g+160|0;return d|0}function ix(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;a:{e=H[a+4>>2];if(!e){break a}c=H[e+32768>>2];d=c+(b+15&-16)|0;if(d>>>0>32767){break a}H[e+32768>>2]=d;return c+e|0}d=H[a+20>>2];b:{if(d>>>0>2]){H[a+20>>2]=d+1;d=H[H[a+8>>2]+(d<<2)>>2];H[a+4>>2]=d;H[d+32768>>2]=0;a=b+15&-16;c=0;if(a>>>0>32767){break b}H[d+32768>>2]=a;return d|0}d=H[33808];c=Ra[H[H[d+12>>2]+8>>2]](d+12|0,32772,20591,10222,1518)|0;H[c+32768>>2]=0;H[a+4>>2]=c;d=H[a+12>>2];c:{if(d>>>0>=(H[a+16>>2]&2147483647)>>>0){d=0;c=H[a+16>>2]&2147483647;g=c?c<<1:1;d:{if(!g){break d}c=g<<2;if(!c){break d}e=H[33808];d=e+12|0;d=(j=d,k=c,l=Ra[H[H[e>>2]+20>>2]](e)|0?53114:55639,m=13582,n=553,i=H[H[d>>2]+8>>2],Ra[i](j|0,k|0,l|0,m|0,n|0)|0)}f=H[a+12>>2];e=(f<<2)+d|0;if((f|0)>0){h=H[a+8>>2];c=d;while(1){H[c>>2]=H[h>>2];h=h+4|0;c=c+4|0;if(e>>>0>c>>>0){continue}break}}H[e>>2]=H[a+4>>2];e:{if(H[a+16>>2]<0){break e}e=H[a+8>>2];if(!e){break e}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,e);f=H[a+12>>2]}H[a+16>>2]=g;H[a+8>>2]=d;H[a+12>>2]=f+1;c=H[a+12>>2];break c}H[H[a+8>>2]+(d<<2)>>2]=c;c=d+1|0;H[a+12>>2]=c}H[a+20>>2]=c;c=b+15&-16;d=H[a+4>>2];b=H[d+32768>>2];a=c+b|0;c=0;if(a>>>0>32767){break b}H[d+32768>>2]=a;c=b+d|0}return c|0}function IO(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;h=Oa-16|0;Oa=h;d=H[H[a+976>>2]+1024>>2];Ra[H[H[d>>2]+48>>2]](d,H[b+28>>2]+32|0);d=H[a+1012>>2];Ra[H[H[d>>2]+20>>2]](d,H[b+32>>2]);d=((H[H[b+28>>2]+68>>2]<<2)+a|0)+2676|0;H[d>>2]=H[d>>2]-1;d=Oa-48|0;Oa=d;if(H[b+8>>2]<0){aI(b);f=d+8|0;e=H[H[b+4>>2]+40>>2];g=H[H[e+976>>2]+1024>>2];Ra[H[H[g>>2]+84>>2]](f,g);qI(H[e+2168>>2],b,c?4:0,f,(H[e+2360>>2]&8)>>>3|0)}Oa=d+48|0;e=H[a+2384>>2];a=H[H[b+4>>2]+40>>2];c=H[b+8>>2];d=H[a+2516>>2]+(c>>>3&268435452)|0;f=H[d>>2];j=d,k=j7(-2,c)&f,H[j>>2]=k;if(H[b+36>>2]!=-1){kR(H[a+1152>>2],b)}SG(H[a+2368>>2],H[b+32>>2]);c=0;SG(H[H[H[b+4>>2]+40>>2]+2376>>2],H[b+8>>2]&2147483647);f=H[b+4>>2];a=H[f+32>>2];a:{if(!a){break a}if((a|0)!=(b|0)){while(1){d=H[a>>2];if(!d){break a}c=a;a=d;if((d|0)!=(b|0)){continue}break}}H[(c?c:f+32|0)>>2]=H[b>>2];H[f+36>>2]=H[f+36>>2]-1}if(I[e+24|0]){MN(H[e+12>>2],H[e+16>>2])}c=b;b=0;a=H[e+16>>2]-1|0;b:{if((a|0)<0){break b}i=N(H[e+4>>2],H[e>>2]);f=H[e+12>>2];while(1){d=a+b>>1;g=H[f+N(d,12)>>2];if(!(g>>>0>c>>>0|c>>>0>=g+i>>>0)){a=f+N(d,12)|0;H[c>>2]=H[a+4>>2];H[a+4>>2]=c;if(I[e+24|0]){H[e+8>>2]=d}F[e+24|0]=0;break b}g=c>>>0>g>>>0;b=g?d+1|0:b;a=g?a:d-1|0;if((b|0)<=(a|0)){continue}break}}Oa=h+16|0}function Z_(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=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0);f=Oa-128|0;Oa=f;g=H[a+8>>2];k=L[g+28>>2];l=L[g+16>>2];m=L[g+32>>2];n=L[g+20>>2];o=L[g+4>>2];p=L[g+8>>2];h=L[c+8>>2];q=L[g+24>>2];i=L[c>>2];r=L[g>>2];j=L[c+4>>2];s=L[g+12>>2];H[f+124>>2]=0;L[f+112>>2]=O(O(i*r)+O(j*s))+O(h*q);L[f+120>>2]=O(O(i*p)+O(j*n))+O(h*m);L[f+116>>2]=O(O(i*o)+O(j*l))+O(h*k);g=I[a+17|0];c=g?e:d;h=L[c+8>>2];i=L[c>>2];j=L[c+4>>2];H[f+108>>2]=0;L[f+104>>2]=O(O(i*p)+O(n*j))+O(m*h);L[f+100>>2]=O(O(i*o)+O(l*j))+O(k*h);L[f+96>>2]=O(O(i*r)+O(j*s))+O(q*h);c=g?d:e;h=L[c+8>>2];i=L[c>>2];j=L[c+4>>2];H[f+92>>2]=0;L[f+88>>2]=O(O(i*p)+O(n*j))+O(m*h);L[f+84>>2]=O(O(i*o)+O(l*j))+O(k*h);L[f+80>>2]=O(O(i*r)+O(j*s))+O(q*h);k=L[a+32>>2];c=H[a+28>>2];d=H[a+24>>2];H[f+12>>2]=0;L[f+8>>2]=k;H[f>>2]=d;H[f+4>>2]=c;rZ(f+16|0,f,f+112|0,f+96|0,f+80|0,f- -64|0,f+48|0,f+32|0);Oa=f+128|0;c=1;a:{if(!(L[f+16>>2]<=L[a+20>>2])){break a}d=H[b+8>>2];F[a+16|0]=1;a=H[a+12>>2];c=0;if(!a){break a}b=H[a+4>>2];if(b>>>0>=K[a+8>>2]){F[a+20|0]=1;c=1;break a}c=H[a+16>>2];if(c>>>0>=K[a+12>>2]){H[a+4>>2]=b+1;H[H[a>>2]+(b<<2)>>2]=d;c=1;break a}H[a+16>>2]=c+1;c=1}return c|0}function du(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=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0);t=L[a+4>>2];y=O(t+L[b+4>>2]);s=O(y+L[e>>2]);z=L[d+24>>2];w=O(L[c+24>>2]-z);i=L[d>>2];j=O(i+i);r=L[d+8>>2];p=L[d+4>>2];k=L[d+12>>2];m=O(k+k);q=L[b+8>>2];u=O(O(O(j*r)-O(p*m))*q);n=O(w-u);o=O(O(-u)-u);A=L[d+16>>2];x=O(L[c+16>>2]-A);v=O(O(O(i*j)+O(O(k*m)+O(-1)))*q);i=O(x-v);k=O(O(-v)-v);q=O(q*O(O(r*m)+O(j*p)));m=O(O(-q)-q);B=L[d+20>>2];r=O(L[c+20>>2]-B);j=O(r-q);p=O(O(n*o)+O(O(i*k)+O(m*j)));a:{if(p<=O(0)){break a}l=O(O(o*o)+O(O(k*k)+O(m*m)));if(l<=p){n=O(n-o);j=O(j-m);i=O(i-k);l=O(1);break a}l=O(p/l);n=O(n-O(o*l));j=O(j-O(m*l));i=O(i-O(k*l))}p=O(s*s);s=O(O(n*n)+O(O(i*i)+O(j*j)));b=p<=s;b:{if(b){break b}n=O(0);i=O(1);j=O(0);o=O(w-O(u+O(o*l)));k=O(x-O(v+O(k*l)));l=O(r-O(q+O(m*l)));m=O(O(o*o)+O(O(k*k)+O(l*l)));if(m!=O(0)){i=O(O(1)/O(W(m)));j=O(o*i);n=O(l*i);i=O(k*i)}a=H[g+4096>>2];if(a>>>0>63){break b}H[g+4096>>2]=a+1;a=(a<<6)+g|0;L[a+16>>2]=O(A+x)-O(t*i);L[a+8>>2]=j;L[a+4>>2]=n;L[a>>2]=i;H[a+52>>2]=-1;L[a+12>>2]=O(W(s))-y;L[a+24>>2]=O(z+w)-O(t*j);L[a+20>>2]=O(B+r)-O(t*n)}return!b|0}function $4(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=O(0),g=O(0),h=O(0),i=0,j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=0,t=0,u=0,v=O(0),w=O(0),x=0;i=Oa+-64|0;Oa=i;$1(i+32|0,i,b,c,d);if(e&1){Ra[H[H[a>>2]+8>>2]](a,i+32|0,i)}if(!(!(e&2)|!(I[b+112|0]&2))){m=L[i+44>>2];f=L[i+12>>2];n=L[i+40>>2];g=L[i+8>>2];o=L[i+32>>2];h=L[i>>2];p=L[i+36>>2];j=L[i+4>>2];if(O(O(m*f)+O(O(n*g)+O(O(o*h)+O(p*j))))>2]=f;g=O(-g);L[i+8>>2]=g;j=O(-j);L[i+4>>2]=j;h=O(-h);L[i>>2]=h}k=O(O(n*g)+O(O(p*j)+O(O(m*f)+O(o*h))));q=O(O(g*o)+O(O(O(m*j)-O(f*p))-O(n*h)));l=O(O(h*p)+O(O(O(m*g)-O(f*n))-O(o*j)));g=O(O(j*n)+O(O(O(m*h)-O(f*o))-O(p*g)));a:{if(g==O(0)){h=O(1);f=O(0);break a}f=O(O(1)/O(W(O(O(k*k)+O(O(O(g*g)+O(0))+O(0))))));h=O(k*f);r=O(g*f);f=O(f*O(0))}j=O(O(l*f)+O(O(q*f)+O(O(k*h)+O(g*r))));k=O(k*O(-f));f=O(f*g);g=O(O(r*q)+O(O(k+O(l*h))-f));h=O(f+O(O(k+O(q*h))-O(l*r)));f=O(0);f=L[b+92>>2]>O(0)|L[b+88>>2]>O(0)?f:L[b+96>>2];l=h;h=O(j+O(1));j=O5(l,h);h=O5(g,h);g=L[b+104>>2];l=a6(O(g*O(.25)));k=L[b+100>>2];j=O(O(f+O(P(O(j*O(4)))))/k);f=O(O(f+O(P(O(h*O(4)))))/g);t=a,u=i+32|0,v=l,w=a6(O(k*O(.25))),x=!(O(O(j*j)+O(f*f))<=O(1)),s=H[H[a>>2]+20>>2],Ra[s](t|0,u|0,O(v),O(w),x|0)}Oa=i- -64|0}function ms(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;H[a+12>>2]=111772;H[a>>2]=111580;a:{b:{c:{d:{e:{b=a+116|0;switch(H[b>>2]-4|0){case 1:break c;case 2:break d;case 0:break e;default:break a}}b=H[(F[a+36|0]&1?H[a+40>>2]- -64|0:b)+32>>2];if(!b){break a}b=b+8|0;break b}b=H[(F[a+36|0]&1?H[a+40>>2]- -64|0:b)+4>>2];if(!b){break a}b=b+8|0;break b}b=H[(F[a+36|0]&1?H[a+40>>2]- -64|0:b)+36>>2];if(!b){break a}b=b+8|0}c=H[b+4>>2]-1|0;H[b+4>>2]=c;if(c){break a}Ra[H[H[b>>2]+8>>2]](b)}c=a+48|0;if(I[a+36|0]&2){b=J[H[a+40>>2]+124>>1]}else{e=H[a+116>>2];b=1;f:{if(e-7>>>0<4294967294){break f}b=J[a+168>>1];if((e|0)==5){break f}b=J[a+148>>1]}}f=b&65535;if(f){while(1){e=H[33772];g:{if(I[a+36|0]&2){b=H[a+40>>2];b=J[b+124>>1]==1?b+120|0:H[H[a+32>>2]+4856>>2]+(H[b+120>>2]<<1)|0;break g}b=EQ(c)}b=H[H[e+40>>2]+(J[b+(d<<1)>>1]<<2)>>2];e=H[b+16>>2]-1|0;H[b+16>>2]=e;if(!e){Ra[H[H[b+12>>2]+8>>2]](b+12|0)}d=d+1|0;if((f|0)!=(d|0)){continue}break}}h:{i:{switch(H[c+68>>2]-5|0){case 0:if(!I[c+65|0]){break h}b=H[c+116>>2];if(b){d=H[33808]+12|0;Ra[H[H[d>>2]+12>>2]](d,b)}G[c+120>>1]=0;break h;case 1:break i;default:break h}}if(!I[c+65|0]){break h}b=H[c+96>>2];if(b){d=H[33808]+12|0;Ra[H[H[d>>2]+12>>2]](d,b)}G[c+100>>1]=0}return a|0}function nS(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;c=H[a+8>>2]&2147483647;g=c?c<<1:1;a:{if(!g){break a}c=N(g,56);if(!c){break a}f=H[33808];d=f+12|0;f=(j=d,k=c,l=Ra[H[H[f>>2]+20>>2]](f)|0?37754:55639,m=13582,n=553,i=H[H[d>>2]+8>>2],Ra[i](j|0,k|0,l|0,m|0,n|0)|0)}c=H[a+4>>2];if((c|0)>0){h=N(c,56)+f|0;d=H[a>>2];c=f;while(1){e=H[d+4>>2];H[c>>2]=H[d>>2];H[c+4>>2]=e;e=H[d+52>>2];H[c+48>>2]=H[d+48>>2];H[c+52>>2]=e;e=H[d+44>>2];H[c+40>>2]=H[d+40>>2];H[c+44>>2]=e;e=H[d+36>>2];H[c+32>>2]=H[d+32>>2];H[c+36>>2]=e;e=H[d+28>>2];H[c+24>>2]=H[d+24>>2];H[c+28>>2]=e;e=H[d+20>>2];H[c+16>>2]=H[d+16>>2];H[c+20>>2]=e;e=H[d+12>>2];H[c+8>>2]=H[d+8>>2];H[c+12>>2]=e;d=d+56|0;c=c+56|0;if(h>>>0>c>>>0){continue}break}c=H[a+4>>2]}d=H[b+4>>2];c=N(c,56)+f|0;H[c>>2]=H[b>>2];H[c+4>>2]=d;d=H[b+52>>2];H[c+48>>2]=H[b+48>>2];H[c+52>>2]=d;d=H[b+44>>2];H[c+40>>2]=H[b+40>>2];H[c+44>>2]=d;d=H[b+36>>2];H[c+32>>2]=H[b+32>>2];H[c+36>>2]=d;d=H[b+28>>2];H[c+24>>2]=H[b+24>>2];H[c+28>>2]=d;d=H[b+20>>2];H[c+16>>2]=H[b+16>>2];H[c+20>>2]=d;d=H[b+12>>2];H[c+8>>2]=H[b+8>>2];H[c+12>>2]=d;b:{if(H[a+8>>2]<0){break b}b=H[a>>2];if(!b){break b}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}H[a+8>>2]=g;H[a>>2]=f;H[a+4>>2]=H[a+4>>2]+1}function _J(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;i=Oa-16|0;Oa=i;k=H[a+8>>2];if(k){l=b+20|0;m=b+8|0;while(1){f=H[a+20>>2]+(j<<3)|0;g=H[f>>2];a:{if((g|0)<0){e=H[f+4>>2]&2147483647;g=g&2147483647;h=e>>>0>g>>>0;H[i+12>>2]=h?e:g;H[i+8>>2]=h?g:e;e=H[b+12>>2];b:{if(e>>>0>=(H[b+16>>2]&2147483647)>>>0){$J(m,i+8|0);break b}g=H[i+12>>2];e=H[b+8>>2]+(e<<3)|0;H[e>>2]=H[i+8>>2];H[e+4>>2]=g;H[b+12>>2]=H[b+12>>2]+1}H[f>>2]=H[f>>2]&2147483647;H[f+4>>2]=H[f+4>>2]&2147483647;j=j+1|0;break a}c:{e=H[f+4>>2];if((e|0)<0){H[f+4>>2]=e&2147483647;break c}f=g>>>5|0;h=H[c+4>>2];if(!(f>>>0>>0&(H[H[c>>2]+(f<<2)>>2]>>>g&1))){n=h;h=e>>>5|0;if(n>>>0<=h>>>0|!(H[H[c>>2]+(h<<2)>>2]>>>e&1)){break c}}h=H[d+4>>2];d:{if(H[H[d>>2]+(f<<2)>>2]>>>g&1&h>>>0>f>>>0){break d}f=e>>>5|0;if(f>>>0>>0&(H[H[d>>2]+(f<<2)>>2]>>>e&1)){break d}f=e>>>0>g>>>0;H[i+12>>2]=f?e:g;H[i+8>>2]=f?g:e;f=H[b+24>>2];if(f>>>0>=(H[b+28>>2]&2147483647)>>>0){$J(l,i+8|0);break d}h=H[i+12>>2];f=H[b+20>>2]+(f<<3)|0;H[f>>2]=H[i+8>>2];H[f+4>>2]=h;H[b+24>>2]=H[b+24>>2]+1}e=g&65535|e<<16;e=(e<<15^-1)+e|0;e=N(e>>>10^e,9);e=e>>>6^e;e=(e<<11^-1)+e|0;aH(a,H[a+4>>2]&(e>>>16^e),j);k=k-1|0;break a}j=j+1|0}if(j>>>0>>0){continue}break}}ZG(a);Oa=i+16|0}function eg(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;f=Ra[H[H[b>>2]+4>>2]](b)|0;c=H[a+4>>2];a:{if(!c){break a}g=H[c+40>>2];b:{if(!g){h=1;break b}e=1;d=Ra[H[H[f>>2]+8>>2]](f,H[H[c+36>>2]+4>>2])^1;c:{if((g|0)==1){break c}c=g-1|0;h=c&1;if((g|0)!=2){i=c&-2;c=0;while(1){j=d;d=e<<3;d=(j+(Ra[H[H[f>>2]+8>>2]](f,H[(d+H[H[a+4>>2]+36>>2]|0)+4>>2])^1)|0)+(Ra[H[H[f>>2]+8>>2]](f,H[(d+H[H[a+4>>2]+36>>2]|0)+12>>2])^1)|0;e=e+2|0;c=c+2|0;if((i|0)!=(c|0)){continue}break}}if(!h){break c}d=(Ra[H[H[f>>2]+8>>2]](f,H[(H[H[a+4>>2]+36>>2]+(e<<3)|0)+4>>2])^1)+d|0}if(!d){c=H[a+4>>2];h=1;break b}h=0;c=Tl(H[33768]);if(d>>>0>=g>>>0){break b}e=g-d|0;if(e>>>0>(H[c+44>>2]&2147483647)>>>0){fg(c,e)}h=!d;e=0;while(1){d=H[H[a+4>>2]+36>>2]+(e<<3)|0;d:{if(!(Ra[H[H[f>>2]+8>>2]](f,H[d+4>>2])|0)){break d}i=H[c+40>>2];if(i>>>0>=(H[c+44>>2]&2147483647)>>>0){gg(c,d);break d}j=H[c+36>>2]+(i<<3)|0;F[j|0]=I[d|0];H[j+4>>2]=H[d+4>>2];H[c+40>>2]=i+1}e=e+1|0;if((g|0)!=(e|0)){continue}break}}Ra[H[H[b>>2]+12>>2]](b,16);Ra[H[H[b>>2]+8>>2]](b,c,48);e:{if(I[c+32|0]){break e}f=H[c+36>>2];if(!f){break e}e=H[c+44>>2];if(!(H[c+40>>2]|e&2147483647)){break e}Ra[H[H[b>>2]+8>>2]](b,f,e<<3)}if(h){break a}Ul(H[33768],c)}Ra[H[H[b>>2]+16>>2]](b,H[a>>2])}function IL(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=O(0),i=O(0),j=O(0),k=O(0),l=0,m=0,n=O(0);if(H[a+32>>2]){while(1){f=H[H[a+28>>2]+(e<<2)>>2]>>>7|0;d=H[(H[H[a+36>>2]+16>>2]+N(f,24)|0)+20>>2];c=H[d+36>>2];h=L[c+76>>2];i=L[c+92>>2];j=L[c+128>>2];k=L[c+96>>2];l=H[a+48>>2];m=H[a+40>>2];g=e<<6;b=g+H[a+44>>2]|0;L[b+16>>2]=L[c+16>>2];L[b+20>>2]=L[c+20>>2];n=L[c+24>>2];H[b+28>>2]=0;H[b+32>>2]=0;H[b+8>>2]=0;H[b+12>>2]=1065353216;H[b>>2]=0;H[b+4>>2]=0;L[b+24>>2]=n;H[b+36>>2]=0;H[b+40>>2]=0;H[b+44>>2]=0;H[b+48>>2]=0;H[b+52>>2]=0;H[b+56>>2]=0;H[b+60>>2]=0;b=m+g|0;F[b+62|0]=1;G[b+54>>1]=0;G[b+56>>1]=0;G[b+58>>1]=0;G[b+60>>1]=0;H[b+48>>2]=0;H[b+52>>2]=0;H[b>>2]=0;H[b+4>>2]=0;H[b+16>>2]=0;H[b+20>>2]=0;H[b+24>>2]=0;H[b+28>>2]=0;H[b+32>>2]=0;H[b+36>>2]=0;H[b+40>>2]=0;H[b+8>>2]=0;L[b+44>>2]=W(k);b=N(e,48)+l|0;L[b+12>>2]=j;L[b+40>>2]=i;L[b+28>>2]=h;H[b+32>>2]=0;H[b+36>>2]=f;L[b>>2]=L[c+64>>2];L[b+4>>2]=L[c+68>>2];L[b+8>>2]=L[c+72>>2];L[b+16>>2]=L[c+80>>2];L[b+20>>2]=L[c+84>>2];L[b+24>>2]=L[c+88>>2];b=H[d+36>>2];L[d>>2]=L[b>>2];L[d+4>>2]=L[b+4>>2];L[d+8>>2]=L[b+8>>2];L[d+12>>2]=L[b+12>>2];L[d+16>>2]=L[b+16>>2];L[d+20>>2]=L[b+20>>2];L[d+24>>2]=L[b+24>>2];e=e+1|0;if(e>>>0>2]){continue}break}}}function DY(a,b,c,d){var e=O(0),f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=0,t=0,u=O(0);a:{if(c>O(9999999747378752e-20)){f=O(W(c));c=O(O(1)/f);l=O(c*L[b+8>>2]);m=O(c*L[b>>2]);c=O(c*L[b+4>>2]);break a}c=O(0);h=L[b+8>>2];i=L[b>>2];j=L[b+4>>2];k=O(O(h*h)+O(O(i*i)+O(j*j)));if(k>O(0)){c=O(O(1)/O(W(k)));e=O(h*c);g=O(j*c);c=O(i*c)}l=O(-e);m=O(-c);c=O(-g)}s=H[a+12>>2];t=H[s+4096>>2];if(t>>>0<=63){b=H[a+8>>2];i=L[b+4>>2];j=L[b>>2];k=L[b+8>>2];e=L[H[a>>2]+4>>2];a=H[a+16>>2];n=L[a+4>>2];g=L[a>>2];o=L[a+8>>2];h=L[b+12>>2];q=L[b+20>>2];r=L[b+24>>2];u=L[b+16>>2];H[s+4096>>2]=t+1;a=(t<<6)+s|0;H[a+52>>2]=d;L[a+12>>2]=f-e;p=r;f=O(o+O(l*e));f=O(f+f);g=O(g+O(m*e));g=O(g+g);e=O(n+O(c*e));n=O(e+e);o=O(O(k*f)+O(O(j*g)+O(i*n)));e=O(O(h*h)+O(-.5));r=O(-i);L[a+24>>2]=p+O(O(k*o)+O(O(f*e)+O(h*O(O(j*n)+O(g*r)))));p=q;q=O(-j);L[a+20>>2]=p+O(O(i*o)+O(O(n*e)+O(h*O(O(k*g)+O(f*q)))));p=O(g*e);g=O(-k);L[a+16>>2]=u+O(O(j*o)+O(p+O(h*O(O(i*f)+O(n*g)))));l=O(l+l);m=O(m+m);c=O(c+c);f=O(O(k*l)+O(O(j*m)+O(i*c)));L[a+8>>2]=-O(O(k*f)+O(O(l*e)+O(h*O(O(j*c)+O(m*r)))));L[a+4>>2]=-O(O(i*f)+O(O(c*e)+O(h*O(O(k*m)+O(l*q)))));L[a>>2]=-O(O(j*f)+O(O(m*e)+O(h*O(O(i*l)+O(c*g)))))}}function d3(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;H[a+24>>2]=135960;b=H[a+4>>2];c=H[b+8>>2];H[b+8>>2]=c;if(!c){while(1){c=H[a+16>>2];F[H[c+20>>2]+76|0]=0;if(I[c+32|0]){c=H[c+20>>2];if(!I[c+76|0]){F[c+76|0]=1;H[c+72>>2]=H[c+72>>2]+1}}c=H[a+20>>2];b=H[c>>2];if(b){H[c>>2]=H[b>>2]}a:{b:{c:{if(b){c=H[b+4>>2];d:{if(I[b+8|0]){H[b+4>>2]=0;d=H[a+12>>2];H[b>>2]=H[d>>2];H[d>>2]=b;break d}d=H[33808];Ra[H[H[d+12>>2]+12>>2]](d+12|0,b-H[b-4>>2]|0)}if(c){break c}}d=H[a+16>>2];c=H[d+16>>2];b=H[c>>2];if(b){H[c>>2]=H[b>>2]}e:{if(b){c=H[b+4>>2];f:{if(I[b+8|0]){H[b+4>>2]=0;e=H[d+12>>2];H[b>>2]=H[e>>2];H[e>>2]=b;break f}e=H[33808];Ra[H[H[e+12>>2]+12>>2]](e+12|0,b-H[b-4>>2]|0)}if(c){break e}}c=0;if(!H[d+28>>2]){break e}e=0;while(1){f=H[d+4>>2]+N(e,28)|0;c=H[f+20>>2];b=H[c>>2];if(b){H[c>>2]=H[b>>2]}c=0;g:{if(!b){break g}c=H[b+4>>2];if(I[b+8|0]){H[b+4>>2]=0;f=H[f+12>>2];H[b>>2]=H[f>>2];H[f>>2]=b;break g}f=H[33808];Ra[H[H[f+12>>2]+12>>2]](f+12|0,b-H[b-4>>2]|0)}if(c){break e}e=e+1|0;if(e>>>0>2]){continue}break}c=0}if(!c){break b}}Ra[H[H[c>>2]+8>>2]](c);Ra[H[H[c>>2]+28>>2]](c);break a}I5(H[H[a+16>>2]+20>>2],-1)}b=H[a+4>>2];c=H[b+8>>2];H[b+8>>2]=c;if(!c){continue}break}}H[H[a+4>>2]+16>>2]=2;Ha(0);X()}function i5(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0;d=Oa-16|0;Oa=d;H[a>>2]=133472;e=a+244|0;c=H[a+248>>2];if(c){while(1){b=H[H[e>>2]+(f<<2)>>2];if(b){while(1){c=H[b>>2];if(b){g=H[33808];Ra[H[H[g+12>>2]+12>>2]](g+12|0,b)}b=c;if(b){continue}break}c=H[a+248>>2]}f=f+1|0;if(f>>>0>>0){continue}break}}H[d+12>>2]=0;j5(e,0,d+12|0);k5(e,H[a+248>>2]);b=H[a+260>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+256>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+252>>2];if(!((b|0)<0|!(b&2147483647))){b=H[e>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}}b=H[a+240>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+200>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+196>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}H[a+104>>2]=133664;H[a+180>>2]=0;b=H[a+184>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=H[a+176>>2];if((b|0)==(a+108|0)){F[a+172|0]=0;break a}if(!b){break a}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}H[a+12>>2]=133596;H[a+88>>2]=0;b=H[a+92>>2];b:{if((b|0)<0|!(b&2147483647)){break b}b=H[a+84>>2];if((b|0)==(a+16|0)){F[a+80|0]=0;break b}if(!b){break b}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}Oa=d+16|0;return a|0}function b2(a,b,c,d,e,f,g){var h=0,i=0,j=O(0),k=O(0),l=O(0),m=0,n=0;i=L[g+12>>2]>O(0);e=i?O(0):L[g+8>>2]>O(0)?O(0):e;if(O(e+c)>b){j=L[f>>2];k=L[f+4>>2];l=L[f+8>>2];h=H[a+4>>2];H[a+4>>2]=h+80;l=O(-l);L[h+56>>2]=l;k=O(-k);L[h+52>>2]=k;j=O(-j);L[h+48>>2]=j;H[h+40>>2]=0;H[h+32>>2]=0;H[h+36>>2]=0;L[h+24>>2]=l;L[h+20>>2]=k;L[h+16>>2]=j;H[h+8>>2]=0;H[h>>2]=0;H[h+4>>2]=0;G[h+78>>1]=0;c=O(c-b);L[h+12>>2]=-c;m=J[h+76>>1];n=m|64;G[h+76>>1]=n;j=L[g+8>>2];a:{if(i|j>O(0)){L[h+64>>2]=j;L[h+68>>2]=L[g+12>>2];i=m|81;break a}G[h+78>>1]=2049;L[h+64>>2]=L[g>>2];L[h+68>>2]=L[g+4>>2];i=(c>2]>O(0))){break a}i=i|4}H[h+44>>2]=0;G[h+76>>1]=i}if(O(d-e)>2];H[i+4>>2]=a+80;H[a+8>>2]=0;H[a>>2]=0;H[a+4>>2]=0;G[a+78>>1]=0;L[a+16>>2]=L[f>>2];L[a+20>>2]=L[f+4>>2];c=L[f+8>>2];H[a+40>>2]=0;H[a+32>>2]=0;H[a+36>>2]=0;L[a+24>>2]=c;L[a+48>>2]=L[f>>2];L[a+52>>2]=L[f+4>>2];c=L[f+8>>2];b=O(d-b);L[a+12>>2]=b;L[a+56>>2]=c;f=J[a+76>>1];h=f|64;G[a+76>>1]=h;c=L[g+8>>2];b:{if(L[g+12>>2]>O(0)|c>O(0)){L[a+64>>2]=c;L[a+68>>2]=L[g+12>>2];f=f|81;break b}G[a+78>>1]=2049;L[a+64>>2]=L[g>>2];L[a+68>>2]=L[g+4>>2];f=h|(b>O(0)?24:16);if(!(L[g>>2]>O(0))){break b}f=f|4}H[a+44>>2]=0;G[a+76>>1]=f}}function Su(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;if((H[a+8>>2]&2147483647)>>>0>>0){a:{if(!b){break a}e=N(b,48);if(!e){break a}d=H[33808];g=d+12|0;g=(j=g,k=e,l=Ra[H[H[d>>2]+20>>2]](d)|0?42206:55639,m=13582,n=553,i=H[H[g>>2]+8>>2],Ra[i](j|0,k|0,l|0,m|0,n|0)|0)}d=H[a+4>>2];if((d|0)>0){h=N(d,48)+g|0;e=H[a>>2];d=g;while(1){f=H[e+4>>2];H[d>>2]=H[e>>2];H[d+4>>2]=f;f=H[e+44>>2];H[d+40>>2]=H[e+40>>2];H[d+44>>2]=f;f=H[e+36>>2];H[d+32>>2]=H[e+32>>2];H[d+36>>2]=f;f=H[e+28>>2];H[d+24>>2]=H[e+24>>2];H[d+28>>2]=f;f=H[e+20>>2];H[d+16>>2]=H[e+16>>2];H[d+20>>2]=f;f=H[e+12>>2];H[d+8>>2]=H[e+8>>2];H[d+12>>2]=f;e=e+48|0;d=d+48|0;if(h>>>0>d>>>0){continue}break}}b:{if(H[a+8>>2]<0){break b}d=H[a>>2];if(!d){break b}e=H[33808]+12|0;Ra[H[H[e>>2]+12>>2]](e,d)}H[a+8>>2]=b;H[a>>2]=g}d=H[a+4>>2];if((d|0)<(b|0)){e=H[a>>2];g=e+N(b,48)|0;d=e+N(d,48)|0;while(1){e=H[c+4>>2];H[d>>2]=H[c>>2];H[d+4>>2]=e;e=H[c+44>>2];H[d+40>>2]=H[c+40>>2];H[d+44>>2]=e;e=H[c+36>>2];H[d+32>>2]=H[c+32>>2];H[d+36>>2]=e;e=H[c+28>>2];H[d+24>>2]=H[c+24>>2];H[d+28>>2]=e;e=H[c+20>>2];H[d+16>>2]=H[c+16>>2];H[d+20>>2]=e;e=H[c+12>>2];H[d+8>>2]=H[c+8>>2];H[d+12>>2]=e;d=d+48|0;if(g>>>0>d>>>0){continue}break}}H[a+4>>2]=b}function xZ(a,b,c,d,e){var f=0,g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=0;f=Oa-48|0;Oa=f;h=O(O(L[a+296>>2]-L[a+1320>>2])-O(L[a+280>>2]-L[a+1304>>2]));g=O(-h);i=g>2]-L[a+1312>>2])-O(L[a+272>>2]-L[a+1296>>2]));j=O(-g);l=O(O(L[a+292>>2]-L[a+1316>>2])-O(L[a+276>>2]-L[a+1300>>2]));k=O(-l);j=g>j?g:j;k=kk)|!(ki)){j=O(0);k=O(0);i=O(1);break a}j=O(1);k=O(0);i=O(0)}H[f+12>>2]=0;m=O(O(k*h)-O(l*j));l=O(O(i*l)-O(g*k));h=O(O(j*g)-O(h*i));g=O(O(1)/O(W(O(O(l*l)+O(O(m*m)+O(h*h))))));i=O(m*g);L[f>>2]=i;h=O(h*g);L[f+4>>2]=h;g=O(l*g);L[f+8>>2]=g;H[f+28>>2]=0;L[f+24>>2]=-g;L[f+20>>2]=-h;L[f+16>>2]=-i;n=f+16|0;Ra[H[H[b>>2]+4>>2]](f+32|0,b,n);Ra[H[H[c>>2]+4>>2]](n,c,f);b=H[f+36>>2];H[a+304>>2]=H[f+32>>2];H[a+308>>2]=b;b=H[f+44>>2];H[a+312>>2]=H[f+40>>2];H[a+316>>2]=b;c=H[f+20>>2];b=a+1328|0;H[b>>2]=H[f+16>>2];H[b+4>>2]=c;c=H[f+28>>2];b=a+1336|0;H[b>>2]=H[f+24>>2];H[b+4>>2]=c;H[d>>2]=3;b=yZ(a,0,1,2,e);c=yZ(a,1,0,2,e);a=H[a>>2];if(a){F[b+32|0]=0;H[b+20>>2]=c;F[c+32|0]=0;H[c+20>>2]=b;F[b+33|0]=2;H[b+24>>2]=c;F[c+34|0]=1;H[c+28>>2]=b;F[b+34|0]=1;H[b+28>>2]=c;F[c+33|0]=2;H[c+24>>2]=b}Oa=f+48|0;return(a|0)!=0}function Cg(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;d=H[a+24>>2];if(d){i=Oa-16|0;Oa=i;if(H[d+28>>2]){b=H[d+12>>2];e=H[d>>2];c=H[d+16>>2];Ra[H[H[e>>2]+12>>2]](e,c)|0;F[e+76|0]=c;H[e+32>>2]=b;Ra[H[H[e>>2]+8>>2]](e)}c=H[d>>2];c=Ra[H[H[c>>2]+28>>2]](c)|0;g=H[d+16>>2];b=(N((c<<2)+16|0,c)+N(g,N(c,24)+240|0)|0)+136|0;if(b){c=H[33808];c=Ra[H[H[c+12>>2]+8>>2]](c+12|0,b,20591,7857,524)|0}else{c=0}c=S6(c,0,b);b=H[d>>2];h=Ra[H[H[b>>2]+28>>2]](b)|0;H[c+40>>2]=0;H[c+44>>2]=0;e=g<<5;b=e+60|0;H[c+4>>2]=c+b;H[c>>2]=c+60;f=h<<2;b=N(N(g,f+24|0),6)+b|0;H[c+8>>2]=b+c;b=b+N(f,h)|0;H[c+12>>2]=b+c;b=b+f|0;H[c+16>>2]=b+c;b=b+f|0;H[c+20>>2]=b+c;b=b+f|0;H[c+24>>2]=b+c;b=b+f|0;H[c+28>>2]=b+c;b=b+e|0;H[c+32>>2]=b+c;H[c+36>>2]=c+(b+e|0);b=H[d>>2];b=Ra[H[H[b>>2]+28>>2]](b)|0;f=N(H[d+16>>2],272)+N(b,20)|0;if(f){b=H[33808];j=Ra[H[H[b+12>>2]+8>>2]](b+12|0,f,20591,7857,567)|0}H[c+48>>2]=j;b=H[33808];d=Ra[H[H[b+12>>2]+8>>2]](b+12|0,24,20591,7857,570)|0;AF(d);H[c+52>>2]=d;H[d+20>>2]=f;H[d+16>>2]=j;h=H[d+8>>2];g=h-1|0;H[d+8>>2]=g;e=H[d+4>>2];b=f+j|0;H[i+12>>2]=b;a:{if(g>>>0>=(H[d+12>>2]&2147483647)>>>0){Xr(d+4|0,i+12|0);break a}H[e+(g<<2)>>2]=b;H[d+8>>2]=h}Oa=i+16|0}H[c+56>>2]=H[a+116>>2];return c|0}function lz(a,b,c,d){var e=0,f=0,g=0,h=O(0),i=0,j=O(0),k=O(0),l=0,m=0,n=0,o=0,p=0,q=O(0),r=O(0),s=0,t=0,u=0,v=0,w=0;a:{e=J[a+22>>1];if(!e){break a}g=H[a+24>>2];s=g+(e<<4)|0;e=H[a+28>>2];while(1){f=I[g+2|0];t=(f<<2)+12&2032;o=I[g|0]==3;i=(N(f,o?112:48)+g|0)- -64|0;u=I[g+3|0];v=I[g+1|0];b:{if(!e){e=0;break b}if(!f){break b}p=f&3;m=0;c:{if(f-1>>>0<3){f=0;break c}w=f&252;f=0;n=0;while(1){l=f<<2;h=L[i+l>>2];L[e>>2]=h;j=L[i+(l|4)>>2];L[e+4>>2]=j;q=L[i+(l|8)>>2];L[e+8>>2]=q;r=L[i+(l|12)>>2];L[e+12>>2]=r;k=O(r+O(q+O(j+O(k+h))));f=f+4|0;e=e+16|0;n=n+4|0;if((w|0)!=(n|0)){continue}break}}if(!p){break b}while(1){h=L[i+(f<<2)>>2];L[e>>2]=h;f=f+1|0;e=e+4|0;k=O(k+h);m=m+1|0;if((m|0)!=(p|0)){continue}break}}f=i+t|0;i=o?128:64;d:{if(!H[g+52>>2]){break d}g=H[g+56>>2];if(!g){break d}F[g|0]=1}g=f+N(i,u)|0;if(s>>>0>g>>>0){continue}break}if(!(v&1)|J[a+8>>1]!=65535|(J[a+10>>1]!=65535|k==O(0))){break a}h=L[c+28>>2];j=L[d+28>>2];if(!(h>2];c=H[c+72>>2];e=H[H[a+24>>2]+60>>2];a=H[b+8>>2];H[b+8>>2]=a+1;a=H[b+4>>2]+(a<<5)|0;L[a+8>>2]=h>2]=k;H[a>>2]=e;b=c<<7;c=d<<7;d=b>>>0>c>>>0;H[a+16>>2]=d?b:c;H[a+12>>2]=d?c:b}}function AS(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=O(0),i=0,j=O(0),k=0,l=0,m=0;g=Oa-160|0;Oa=g;H[g+144>>2]=2;i=M[c+12>>3];h=L[b+44>>2];j=L[b+40>>2];k=M[c+20>>3];l=M[d+8>>3];m=M[d>>3];L[g+136>>2]=M[d+16>>3]-M[c+28>>3];L[g+132>>2]=l-k;L[g+148>>2]=j;L[g+152>>2]=h*O(.5);L[g+128>>2]=m-i;L[g+112>>2]=L[a+244>>2];L[g+116>>2]=L[a+248>>2];L[g+120>>2]=L[a+252>>2];L[g+124>>2]=L[a+256>>2];H[g+96>>2]=3;L[g+100>>2]=L[c+48>>2];L[g+104>>2]=L[c+52>>2];L[g+108>>2]=L[c+56>>2];L[g+80>>2]=L[c+36>>2];L[g+84>>2]=L[c+40>>2];L[g+88>>2]=L[c+44>>2];L[g+64>>2]=L[c+60>>2];L[g+68>>2]=L[c- -64>>2];L[g+72>>2]=L[c+68>>2];L[g+76>>2]=L[c+72>>2];H[g+40>>2]=0;H[g+44>>2]=0;H[g+48>>2]=0;H[g+52>>2]=0;H[g+32>>2]=0;H[g+36>>2]=0;d=0;G[g+28>>1]=0;H[g+24>>2]=-1;H[g+16>>2]=0;H[g+20>>2]=0;H[g+56>>2]=2139095039;h=L[f+36>>2];G[g+8>>1]=I[a+299|0]?1283:1027;a:{if(!fU(e,h,g+144|0,g+112|0,g+96|0,g- -64|0,g+16|0,g+8|0)){break a}h=L[g+56>>2];if(h>=L[f+36>>2]){break a}L[f+36>>2]=h;L[f+24>>2]=L[g+44>>2];L[f+28>>2]=L[g+48>>2];h=L[g+52>>2];H[f+40>>2]=-1;H[f+44>>2]=-1;L[f+32>>2]=h;M[f>>3]=M[c+12>>3]+ +L[g+32>>2];M[f+8>>3]=M[c+20>>3]+ +L[g+36>>2];M[f+16>>3]=M[c+28>>3]+ +L[g+40>>2];d=1}Oa=g+160|0;return d|0}function aT(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;a:{if((J[b+4>>1]-5&65535)>>>0>2){break a}d=0;b:{if(!H[a+180>>2]){break b}c=(b<<15^-1)+b|0;c=N(c>>>10^c,9);c=c>>>6^c;c=(c<<11^-1)+c|0;c=H[H[a+156>>2]+((H[a+164>>2]-1&(c>>>16^c))<<2)>>2];if((c|0)==-1){break b}f=H[a+152>>2];e=H[a+148>>2];while(1){if(H[e+(c<<3)>>2]!=(b|0)){c=H[f+(c<<2)>>2];if((c|0)!=-1){continue}break b}break}d=e+(c<<3)|0}if(!d|!H[a+72>>2]){break a}c=0;while(1){d=H[H[a+68>>2]+(c<<2)>>2]+88|0;c:{if(H[d+164>>2]==(b|0)){d:{if(!I[d+156|0]){break d}e=H[d+152>>2];if(!e){break d}dT(H[d+160>>2],e)}H[d+152>>2]=0;e:{if(!I[d+168|0]){break e}e=H[d+164>>2];if(!e){break e}dT(H[d+172>>2],e)}H[d+164>>2]=0;break c}f=H[d+36>>2];f:{if(!f){break f}e=H[d+32>>2];f=e+(f<<2)|0;while(1){if(H[e+4>>2]!=(b|0)){e=H[(H[e>>2]<<2)+86160>>2]+e|0;if((f|0)!=(e|0)){continue}break f}break}H[d+48>>2]=-1;H[d+52>>2]=2146435071;H[d+88>>2]=-1;H[d+92>>2]=-1048577;H[d+80>>2]=-1;H[d+84>>2]=-1048577;H[d+72>>2]=-1;H[d+76>>2]=-1048577;e=d- -64|0;H[e>>2]=-1;H[e+4>>2]=2146435071;H[d+56>>2]=-1;H[d+60>>2]=2146435071}e=H[d+152>>2];if((e|0)==(b|0)){if(!(!I[d+156|0]|!e)){dT(H[d+160>>2],e)}H[d+152>>2]=0}}c=c+1|0;if(c>>>0>2]){continue}break}}}function xj(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=O(d);e=e|0;var f=0,g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0);c=H[a+12>>2];f=Oa+-64|0;Oa=f;n=L[a+8>>2];if(n!=O(0)){l=L[b+20>>2];v=L[b+16>>2];g=L[b>>2];k=O(g+g);h=L[b+8>>2];i=L[b+4>>2];j=L[b+12>>2];m=O(j+j);o=O(O(O(O(k*h)-O(i*m))*d)+L[b+24>>2]);L[f+56>>2]=o;l=O(l+O(O(O(h*m)+O(k*i))*d));L[f+52>>2]=l;p=O(j*O(.7071067690849304));q=O(g*O(-0));r=O(i*O(.7071067690849304));s=O(h*O(0));L[f+44>>2]=O(O(p+q)-r)-s;t=O(g*O(.7071067690849304));u=O(j*O(0));L[f+40>>2]=O(i*O(-0))+O(t+O(u+O(h*O(.7071067690849304))));L[f+36>>2]=q+O(s+O(p+r));L[f+32>>2]=O(h*O(-.7071067690849304))+O(O(i*O(0))+O(u+t));k=O(v+O(O(O(g*k)+O(O(j*m)+O(-1)))*d));L[f+48>>2]=k;H[c+4>>2]=e?-65536:-8355712;H[f+24>>2]=0;H[f+16>>2]=0;H[f+20>>2]=0;H[f+8>>2]=0;H[f+12>>2]=1065353216;H[f>>2]=0;H[f+4>>2]=0;VT(c,f);d=L[b+20>>2];g=L[b+16>>2];i=L[b+24>>2];h=O(o-i);L[f+20>>2]=i+h;j=O(l-d);L[f+16>>2]=d+j;L[f+8>>2]=i;L[f+4>>2]=d;L[f>>2]=g;d=O(k-g);L[f+12>>2]=g+d;L[f+24>>2]=O(W(O(O(h*h)+O(O(d*d)+O(j*j)))))*O(.15000000596046448);YT(c,f);a=VT(c,f+32|0);L[f+4>>2]=n*O(.30000001192092896);H[f>>2]=20;_T(a,f)}Oa=f- -64|0}function Mc(a,b){a=a|0;b=b|0;var c=0,d=0,e=O(0),f=0,g=0,h=0,i=0,j=O(0),k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=O(0),s=O(0),t=O(0),u=0,v=0,w=0,x=0;f=I[b+12|0];H[a+8>>2]=0;H[a>>2]=0;H[a+4>>2]=0;if(f){c=N(f,48);g=o6(c);H[a>>2]=g;H[a+8>>2]=c+g;d=a;a=N(((c-48&65520)>>>0)/48|0,48)+48|0;w=d,x=S6(g,0,a)+a|0,H[w+4>>2]=x}c=0;a=H[b>>2];d=I[a+24|0];a:{if(!d|!f){break a}o=I[a+25|0];b=H[a+8>>2];b:{if(!b){k=1;break b}c=I[b+43|0];p=c&128?32:c&2?64:16;k=!(c&1);c=H[a+12>>2]}if(!o){break a}q=H[a+16>>2];h=q+(d<<2)|0;a=J[a+28>>1];u=a&16;v=a&32;d=0;while(1){if(l){a=I[b+41|0];c=a>>>0>m>>>0?N(a-m|0,p)+c|0:c;b=b+48|0}l=l+1|0;m=I[b+41|0];n=0;c:{while(1){if((m|0)==(n|0)){break c}a=N(i,48)+g|0;d=d&255;c=d?c+p|0:c;L[a>>2]=L[c>>2];L[a+4>>2]=L[c+4>>2];L[a+8>>2]=L[c+8>>2];L[a+12>>2]=L[c+12>>2];r=L[b+16>>2];L[a+16>>2]=r;s=L[b+20>>2];L[a+20>>2]=s;e=L[b+24>>2];L[a+24>>2]=e;h=(((d|0)!=0)<<2)+h|0;d:{if(!v){d=-1;H[a+28>>2]=-1;if(k){break d}d=H[h>>2];break d}d=-1;H[a+28>>2]=k?-1:H[h>>2]}H[a+44>>2]=d;j=O(0);t=O(0);n=n+1|0;if(u){j=e;e=L[(i<<2)+q>>2];t=O(j*e);j=O(s*e);e=O(r*e)}else{e=O(0)}L[a+32>>2]=e;L[a+40>>2]=t;L[a+36>>2]=j;d=1;i=i+1|0;if((i|0)!=(f|0)){continue}break}break a}if((l|0)!=(o|0)){continue}break}}}function Dz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;Az(a,c);c=J[a+22>>1];if(c){b=H[a+24>>2];g=b+(c<<4)|0;while(1){d=0;e=I[b+1|0];c=e<<4;a=(c+b|0)+192|0;f=I[b+2|0];c=(((a+N(e,144)|0)+(c&0-(F[b+3|0]&1))|0)+(f<<4)|0)+(((f|0)!=0)<<7)|0;if(e){while(1){L[a+92>>2]=L[a+92>>2]-L[a+76>>2];L[a+88>>2]=L[a+88>>2]-L[a+72>>2];L[a+84>>2]=L[a+84>>2]-L[a+68>>2];L[a+80>>2]=L[a+80>>2]-L[a+64>>2];a=a+144|0;d=d+1|0;if((e|0)!=(d|0)){continue}break}}b=N(f,144)+c|0;a:{if(!f){break a}if(f-1>>>0>=3){e=f&252;a=0;while(1){d=H[c+84>>2];H[c+48>>2]=H[c+80>>2];H[c+52>>2]=d;d=H[c+228>>2];H[c+192>>2]=H[c+224>>2];H[c+196>>2]=d;d=H[c+372>>2];H[c+336>>2]=H[c+368>>2];H[c+340>>2]=d;d=H[c+516>>2];H[c+480>>2]=H[c+512>>2];H[c+484>>2]=d;d=H[c+92>>2];H[c+56>>2]=H[c+88>>2];H[c+60>>2]=d;d=H[c+236>>2];H[c+200>>2]=H[c+232>>2];H[c+204>>2]=d;d=H[c+380>>2];H[c+344>>2]=H[c+376>>2];H[c+348>>2]=d;d=H[c+524>>2];H[c+488>>2]=H[c+520>>2];H[c+492>>2]=d;c=c+576|0;a=a+4|0;if((e|0)!=(a|0)){continue}break}}a=0;f=f&3;if(!f){break a}while(1){e=H[c+84>>2];H[c+48>>2]=H[c+80>>2];H[c+52>>2]=e;e=H[c+92>>2];H[c+56>>2]=H[c+88>>2];H[c+60>>2]=e;c=c+144|0;a=a+1|0;if((f|0)!=(a|0)){continue}break}}if(b>>>0>>0){continue}break}}}function SU(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=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=0,y=O(0),z=O(0),A=O(0);c=Oa-16|0;Oa=c;xU(c,d);m=L[f+8>>2];e=H[e+32>>2];d=H[e+56>>2]+N(I[e+55|0],20)|0;j=L[d+8>>2];k=O(j+j);j=L[f>>2];h=L[d>>2];g=O(h+h);h=L[d+4>>2];i=O(h+h);h=L[f+4>>2];l=O(O(m*k)+O(O(j*g)+O(i*h)));t=L[c+12>>2];u=L[f+24>>2];n=L[f+12>>2];o=O(O(n*n)+O(-.5));p=L[c+8>>2];v=L[f+16>>2];q=L[c>>2];w=L[f+20>>2];r=L[c+4>>2];k=O(t+O(O(O(u+O(O(m*l)+O(O(k*o)+O(n*O(O(j*i)-O(g*h))))))*p)+O(O(O(v+O(O(j*l)+O(O(g*o)+O(n*O(O(h*k)-O(i*m))))))*q)+O(O(w+O(O(h*l)+O(O(i*o)+O(n*O(O(m*g)-O(k*j))))))*r))));f=1;x=I[e+54|0];if(x>>>0>1){y=O(-h);z=O(-j);A=O(-m);while(1){e=d+N(f,12)|0;g=L[e+8>>2];g=O(g+g);i=L[e>>2];i=O(i+i);l=L[e+4>>2];l=O(l+l);s=O(O(m*g)+O(O(j*i)+O(h*l)));g=O(t+O(O(O(u+O(O(m*s)+O(O(g*o)+O(n*O(O(j*l)+O(i*y))))))*p)+O(O(O(v+O(O(j*s)+O(O(i*o)+O(n*O(O(h*g)+O(l*A))))))*q)+O(r*O(w+O(O(h*s)+O(O(l*o)+O(n*O(O(m*i)+O(g*z))))))))));k=g>k?k:g;f=f+1|0;if((x|0)!=(f|0)){continue}break}}d=k>O(0);if(!d){L[a+8>>2]=-p;L[a+4>>2]=-r;L[a>>2]=-q;L[b>>2]=k>1];if(c){b=H[a+24>>2];g=b+(c<<4)|0;while(1){d=0;e=I[b+1|0];c=e<<4;a=(c+b|0)+192|0;f=I[b+2|0];c=(((a+N(e,96)|0)+(c&0-(F[b+3|0]&1))|0)+(f<<4)|0)+(((f|0)!=0)<<7)|0;if(e){while(1){L[a+92>>2]=L[a+92>>2]-L[a+76>>2];L[a+88>>2]=L[a+88>>2]-L[a+72>>2];L[a+84>>2]=L[a+84>>2]-L[a+68>>2];L[a+80>>2]=L[a+80>>2]-L[a+64>>2];a=a+96|0;d=d+1|0;if((e|0)!=(d|0)){continue}break}}b=N(f,96)+c|0;a:{if(!f){break a}if(f-1>>>0>=3){e=f&252;a=0;while(1){d=H[c+84>>2];H[c+48>>2]=H[c+80>>2];H[c+52>>2]=d;d=H[c+180>>2];H[c+144>>2]=H[c+176>>2];H[c+148>>2]=d;d=H[c+276>>2];H[c+240>>2]=H[c+272>>2];H[c+244>>2]=d;d=H[c+372>>2];H[c+336>>2]=H[c+368>>2];H[c+340>>2]=d;d=H[c+92>>2];H[c+56>>2]=H[c+88>>2];H[c+60>>2]=d;d=H[c+188>>2];H[c+152>>2]=H[c+184>>2];H[c+156>>2]=d;d=H[c+284>>2];H[c+248>>2]=H[c+280>>2];H[c+252>>2]=d;d=H[c+380>>2];H[c+344>>2]=H[c+376>>2];H[c+348>>2]=d;c=c+384|0;a=a+4|0;if((e|0)!=(a|0)){continue}break}}a=0;f=f&3;if(!f){break a}while(1){e=H[c+84>>2];H[c+48>>2]=H[c+80>>2];H[c+52>>2]=e;e=H[c+92>>2];H[c+56>>2]=H[c+88>>2];H[c+60>>2]=e;c=c+96|0;a=a+1|0;if((f|0)!=(a|0)){continue}break}}if(b>>>0>>0){continue}break}}}function $E(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;j=Oa-16|0;Oa=j;f=H[a+20>>2];a:{if(f){i=f-1|0;f=H[H[a+16>>2]+(i<<2)>>2];H[a+20>>2]=i;break a}f=H[a+28>>2];H[a+28>>2]=f+1}i=f<<1;if((i|0)==H[a+116>>2]){g=i+2048|0;aF(a+104|0,g);bF(a+128|0,g);cF(a+44|0,g)}g=H[a+124>>2];h=(i>>>0)/(g>>>0)|0;H[H[H[a+104>>2]+(h<<2)>>2]+(i-N(g,h)<<2)>>2]=c;g=i|1;h=H[a+124>>2];k=(g>>>0)/(h>>>0)|0;H[H[H[a+104>>2]+(k<<2)>>2]+(g-N(h,k)<<2)>>2]=d;g=H[a+148>>2];h=(f>>>0)/(g>>>0)|0;H[H[H[a+128>>2]+(h<<2)>>2]+(f-N(g,h)<<2)>>2]=b;g=H[a- -64>>2];h=(f>>>0)/(g>>>0)|0;H[H[H[a+44>>2]+(h<<2)>>2]+(f-N(g,h)<<2)>>2]=e;IE(a+640|0,b,c,d,f);if(b){H[b- -64>>2]=f}b=H[a+156>>2];b:{if(b<<5!=(f|0)){break b}c=b&2147483647;b=i+33>>>5|0;if(c>>>0>=b>>>0){break b}c=H[33808]+12|0;c=Ra[H[H[c>>2]+8>>2]](c,b<<2,20591,14969,438)|0;d=H[a+152>>2];c:{if(!d){break c}R6(c,d,H[a+156>>2]<<2);if(H[a+156>>2]<0){break c}d=H[a+152>>2];if(!d){break c}e=H[33808]+12|0;Ra[H[H[e>>2]+12>>2]](e,d)}d=H[a+156>>2];S6(c+(d<<2)|0,0,b-d<<2);H[a+156>>2]=b;H[a+152>>2]=c}if((H[a+88>>2]&2147483647)==(f|0)){H[j+12>>2]=0;XE(a+80|0,i+2|0,j+12|0)}a=H[a+152>>2]+(f>>>3&536870908)|0;b=H[a>>2];l=a,m=j7(-2,f)&b,H[l>>2]=m;Oa=j+16|0;return f}function vu(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=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0);u=O(1);v=L[c+24>>2];n=L[d+24>>2];j=L[d>>2];o=O(j+j);r=L[d+8>>2];i=L[d+4>>2];k=L[d+12>>2];p=O(k+k);q=L[b+8>>2];l=O(O(O(o*r)-O(i*p))*q);w=O(n+l);s=O(v-w);x=L[c+16>>2];m=L[d+16>>2];j=O(O(O(O(j*o)+O(k*p))+O(-1))*q);y=O(m+j);t=O(x-y);z=L[c+20>>2];k=L[d+20>>2];i=O(O(O(o*i)+O(r*p))*q);p=O(k+i);q=O(z-p);l=O(O(n-l)-w);m=O(O(m-j)-y);j=O(O(k-i)-p);k=O(O(l*l)+O(O(m*m)+O(j*j)));o=L[a+4>>2];r=O(o+L[b+4>>2]);i=O(r+L[e>>2]);n=O(i*i);i=O(R(O(O(O(s*l)+O(O(t*m)+O(q*j)))/k),O(1)));k=k!=O(0)?i>O(0)?i:O(0):O(0);l=O(l*k);i=O(s-l);s=O(i*i);m=O(m*k);i=O(t-m);t=O(i*i);j=O(j*k);i=O(q-j);k=O(s+O(t+O(i*i)));b=n>k;if(b){n=O(0);a=H[g+4096>>2];H[g+4096>>2]=a+1;l=O(v-O(w+l));m=O(x-O(y+m));j=O(z-O(p+j));i=O(W(O(O(l*l)+O(O(m*m)+O(j*j)))));if(!(i<=O(1.1920928955078125e-7))){i=O(O(1)/i);n=O(l*i);u=O(m*i);A=O(j*i)}a=(a<<6)+g|0;L[a+16>>2]=x-O(o*u);L[a+8>>2]=n;L[a+4>>2]=A;L[a>>2]=u;H[a+52>>2]=-1;L[a+12>>2]=O(W(k))-r;H[a+28>>2]=0;L[a+24>>2]=v-O(o*n);L[a+20>>2]=z-O(o*A)}return b|0}function U4(a,b,c){var d=O(0),e=O(0),f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0);d=L[c>>2];i=O(d+d);h=L[c+8>>2];p=O(i*h);e=L[c+4>>2];f=O(e+e);g=L[c+12>>2];B=O(f*g);j=O(p-B);s=L[b>>2];t=L[b+4>>2];C=O(f*h);D=O(i*g);k=O(C+D);m=O(O(1)-O(d*i));f=O(e*f);d=O(m-f);u=L[b+8>>2];l=O(O(O(j*s)+O(t*k))+O(d*u));v=L[b+12>>2];w=L[b+16>>2];x=L[b+20>>2];n=O(O(O(j*v)+O(k*w))+O(d*x));y=L[b+24>>2];z=L[b+28>>2];A=L[b+32>>2];o=O(O(O(j*y)+O(k*z))+O(d*A));L[a+32>>2]=O(O(j*l)+O(k*n))+O(d*o);r=O(i*e);e=O(h+h);g=O(g*e);i=O(r+g);q=m;m=O(h*e);h=O(q-m);e=O(C-D);L[a+20>>2]=O(O(i*l)+O(h*n))+O(e*o);f=O(O(O(1)-f)-m);q=O(f*l);l=O(r-g);g=O(p+B);L[a+8>>2]=O(q+O(l*n))+O(g*o);n=O(O(O(s*i)+O(t*h))+O(e*u));o=O(O(O(i*v)+O(h*w))+O(e*x));p=O(O(O(i*y)+O(h*z))+O(e*A));L[a+28>>2]=O(O(j*n)+O(k*o))+O(d*p);r=j;j=O(O(O(s*f)+O(t*l))+O(g*u));m=k;k=O(O(O(f*v)+O(l*w))+O(g*x));q=d;d=O(O(O(f*y)+O(l*z))+O(g*A));L[a+24>>2]=O(O(r*j)+O(m*k))+O(q*d);L[a+16>>2]=O(O(i*n)+O(h*o))+O(e*p);L[a+12>>2]=O(O(i*j)+O(h*k))+O(e*d);L[a+4>>2]=O(O(f*n)+O(l*o))+O(g*p);L[a>>2]=O(O(f*j)+O(l*k))+O(g*d)}function NN(a){var b=0,c=0,d=0,e=0,f=0,g=0;e=Oa-16|0;Oa=e;b=H[a+2368>>2];c=b;if(H[b+36>>2]){g=b+8|0;while(1){c=H[H[b+32>>2]+(d<<2)>>2];H[e+4>>2]=c;a:{if((c|0)==(H[b+4>>2]-1|0)){H[b+4>>2]=c;break a}f=H[b+12>>2];if(f>>>0>=(H[b+16>>2]&2147483647)>>>0){qm(g,e+4|0);break a}H[H[b+8>>2]+(f<<2)>>2]=c;H[b+12>>2]=H[b+12>>2]+1}d=d+1|0;if(d>>>0>2]){continue}break}c=H[a+2368>>2]}d=0;H[b+36>>2]=0;S6(H[c+20>>2],0,H[c+24>>2]<<2);b=H[a+2372>>2];c=b;if(H[b+36>>2]){g=b+8|0;while(1){c=H[H[b+32>>2]+(d<<2)>>2];H[e+8>>2]=c;b:{if((c|0)==(H[b+4>>2]-1|0)){H[b+4>>2]=c;break b}f=H[b+12>>2];if(f>>>0>=(H[b+16>>2]&2147483647)>>>0){qm(g,e+8|0);break b}H[H[b+8>>2]+(f<<2)>>2]=c;H[b+12>>2]=H[b+12>>2]+1}d=d+1|0;if(d>>>0>2]){continue}break}c=H[a+2372>>2]}d=0;H[b+36>>2]=0;S6(H[c+20>>2],0,H[c+24>>2]<<2);b=H[a+2364>>2];c=b;if(H[b+36>>2]){g=b+8|0;while(1){c=H[H[b+32>>2]+(d<<2)>>2];H[e+12>>2]=c;c:{if((c|0)==(H[b+4>>2]-1|0)){H[b+4>>2]=c;break c}f=H[b+12>>2];if(f>>>0>=(H[b+16>>2]&2147483647)>>>0){qm(g,e+12|0);break c}H[H[b+8>>2]+(f<<2)>>2]=c;H[b+12>>2]=H[b+12>>2]+1}d=d+1|0;if(d>>>0>2]){continue}break}c=H[a+2364>>2]}H[b+36>>2]=0;S6(H[c+20>>2],0,H[c+24>>2]<<2);Oa=e+16|0}function st(a,b,c,d,e,f){var g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0);a:{if(!f){a=N(a,12)+d|0;d=H[a>>2];f=H[a+8>>2];a=H[a+4>>2];break a}a=N(a,6)+d|0;d=J[a>>1];f=J[a+4>>1];a=J[a+2>>1]}f=N(f,12)+c|0;o=L[f>>2];p=L[f+4>>2];q=L[f+8>>2];a=N(a,12)+c|0;j=L[a>>2];k=L[a+4>>2];l=L[a+8>>2];m=L[e+40>>2];n=L[e+16>>2];r=L[e+28>>2];s=L[e+36>>2];t=L[e+24>>2];u=L[e>>2];v=L[e+12>>2];w=L[e+4>>2];a=N(d,12)+c|0;g=L[a>>2];h=L[a+4>>2];i=L[a+8>>2];L[b+8>>2]=O(O(O(g*L[e+8>>2])+O(h*L[e+20>>2]))+O(i*L[e+32>>2]))+L[e+44>>2];L[b+4>>2]=m+O(O(O(g*w)+O(h*n))+O(i*r));L[b>>2]=s+O(O(O(g*u)+O(h*v))+O(i*t));g=L[e+40>>2];h=L[e+16>>2];i=L[e+28>>2];m=L[e+36>>2];n=L[e+24>>2];r=L[e>>2];s=L[e+12>>2];t=L[e+4>>2];L[b+20>>2]=O(O(O(j*L[e+8>>2])+O(k*L[e+20>>2]))+O(l*L[e+32>>2]))+L[e+44>>2];L[b+16>>2]=g+O(O(O(j*t)+O(k*h))+O(l*i));L[b+12>>2]=m+O(O(O(j*r)+O(k*s))+O(l*n));j=L[e+40>>2];k=L[e+16>>2];l=L[e+28>>2];g=L[e+36>>2];h=L[e+24>>2];i=L[e>>2];m=L[e+12>>2];n=L[e+4>>2];L[b+32>>2]=O(O(O(o*L[e+8>>2])+O(p*L[e+20>>2]))+O(q*L[e+32>>2]))+L[e+44>>2];L[b+28>>2]=j+O(O(O(o*n)+O(p*k))+O(q*l));L[b+24>>2]=g+O(O(O(o*i)+O(p*m))+O(q*h))}function tD(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;a:{if(!H[a+684>>2]){break a}d=(b<<15^-1)+b|0;d=N(d>>>10^d,9);d=d>>>6^d;d=(d<<11^-1)+d|0;d=H[H[a+660>>2]+((H[a+668>>2]-1&(d>>>16^d))<<2)>>2];if((d|0)==-1){break a}e=H[a+656>>2];f=H[a+652>>2];while(1){if(H[f+(d<<3)>>2]!=(b|0)){d=H[e+(d<<2)>>2];if((d|0)!=-1){continue}break a}break}b=Oa-16|0;Oa=b;h=f+(d<<3)|0;f=H[a+644>>2]+N(H[h+4>>2],44)|0;d=H[f+4>>2];c=H[H[d+16>>2]+(c<<2)>>2];d=H[d+8>>2];H[b+8>>2]=0;H[b>>2]=0;H[b+4>>2]=0;aC(b,8);e=c<<2;d=TB(H[f>>2],H[e+H[H[f+8>>2]>>2]>>2],c,d,b);g=H[b+4>>2];b:{if(g){c:{if(H[d+40>>2]|!d){break c}e=H[d+36>>2];if(!H[e>>2]){break c}c=0;while(1){H[H[H[f+8>>2]>>2]+(H[((c<<2)+e|0)+4>>2]<<2)>>2]=d;c=c+1|0;e=H[d+36>>2];if(c>>>0>2]){continue}break}}i=g>>>0>1?g:1;d=0;while(1){c=0;g=H[H[b>>2]+(d<<2)>>2];e=H[g+36>>2];if(H[e>>2]){while(1){H[H[H[f+8>>2]>>2]+(H[((c<<2)+e|0)+4>>2]<<2)>>2]=g;c=c+1|0;e=H[g+36>>2];if(c>>>0>2]){continue}break}}d=d+1|0;if((i|0)!=(d|0)){continue}break}break b}H[e+H[H[f+8>>2]>>2]>>2]=d}c=H[b+8>>2];d:{if((c|0)<0|!(c&2147483647)){break d}c=H[b>>2];if(!c){break d}d=H[33808];Ra[H[H[d+12>>2]+12>>2]](d+12|0,c)}Oa=b+16|0;uD(a,H[h+4>>2])}}function bC(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0;b=H[a+12>>2];if(b){b=IB(b);d=H[33808]+12|0;Ra[H[H[d>>2]+12>>2]](d,b);H[a+12>>2]=0}b=H[a+36>>2];if(!(!b|!H[a+52>>2])){S6(H[a+28>>2],255,b<<2);b=0;d=H[a+24>>2];e=H[a+32>>2];f=e-1|0;if(f){if(e-2>>>0>=3){i=f&-4;e=0;while(1){c=b|1;H[d+(b<<2)>>2]=c;g=d+(c<<2)|0;c=b|2;H[g>>2]=c;g=d+(c<<2)|0;c=b|3;H[g>>2]=c;b=b+4|0;H[d+(c<<2)>>2]=b;e=e+4|0;if((i|0)!=(e|0)){continue}break}}e=f&3;if(e){while(1){c=d+(b<<2)|0;b=b+1|0;H[c>>2]=b;h=h+1|0;if((e|0)!=(h|0)){continue}break}}b=H[a+32>>2]-1|0}else{b=0}H[d+(b<<2)>>2]=-1;H[a+52>>2]=0;H[a+44>>2]=0}H[a+8>>2]=0;b=H[a+60>>2];if(b){b=IB(b);d=H[33808]+12|0;Ra[H[H[d>>2]+12>>2]](d,b);H[a+60>>2]=0}b=H[a+84>>2];if(!(!b|!H[a+100>>2])){S6(H[a+76>>2],255,b<<2);b=0;d=H[a+72>>2];e=H[a+80>>2];f=e-1|0;if(f){h=0;if(e-2>>>0>=3){i=f&-4;e=0;while(1){c=b|1;H[d+(b<<2)>>2]=c;g=d+(c<<2)|0;c=b|2;H[g>>2]=c;g=d+(c<<2)|0;c=b|3;H[g>>2]=c;b=b+4|0;H[d+(c<<2)>>2]=b;e=e+4|0;if((i|0)!=(e|0)){continue}break}}e=f&3;if(e){while(1){c=d+(b<<2)|0;b=b+1|0;H[c>>2]=b;h=h+1|0;if((e|0)!=(h|0)){continue}break}}b=H[a+80>>2]-1|0}else{b=0}H[d+(b<<2)>>2]=-1;H[a+100>>2]=0;H[a+92>>2]=0}H[a>>2]=1;H[a+4>>2]=0;H[a+56>>2]=0}function vo(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=d|0;e=O(e);f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=O(k);var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;l=Oa-32|0;Oa=l;a:{if(K[a+36>>2]>=K[a+100>>2]){break a}o=a+40|0;m=H[o>>2];H[o>>2]=m?m:-1;if((m|0)==1){o5(H[33808],8,4610,541,56236,0);break a}H[a+36>>2]=H[a+36>>2]+1;m=a+12|0;r=J[h+16>>1];s=H[h+12>>2];t=H[h+8>>2];u=H[h+4>>2];v=H[h>>2];w=J[g>>1];p=H[a+24>>2];n=p+40|0;h=H[a+20>>2]&2147483647;b:{if(n>>>0<=h>>>0){break b}q=N(n,3);if(h>>>0>=q>>>0){break b}qo(m,q)}ro(m,n);h=H[a+12>>2]+H[a+24>>2]|0;F[h+38|0]=2;G[h+36>>1]=f;H[h+32>>2]=j;H[h+28>>2]=i;G[h+24>>1]=r;H[h+20>>2]=s;H[h+16>>2]=t;H[h+12>>2]=u;H[h+8>>2]=v;G[h+4>>1]=w;H[h>>2]=-16;H[a+24>>2]=n;f=H[a+108>>2];H[((f|0)==-16?a+108|0:f+H[a+12>>2]|0)>>2]=p;H[a+108>>2]=p;f=a;h=I[a+112|0];a=J[g>>1];F[f+112|0]=h|a>>>9&1;c:{if((a&768)!=768){a=J[g>>1];break c}o5(H[33808],4,4610,551,11069,0);a=J[g>>1]&-257;G[g>>1]=a}if((a&528)==528){o5(H[33808],4,4610,557,19862,0);a=J[g>>1]&-17;G[g>>1]=a}if(!(!(a&256)|!(k>O(0)))){o5(H[33808],4,4610,565,11198,0);k=O(0)}L[l+16>>2]=e;H[l+8>>2]=0;L[l+28>>2]=k;H[l+24>>2]=c;H[l+20>>2]=b;H[l+12>>2]=d;to(m,l+8|0);H[o>>2]=0}Oa=l+32|0}function f_(a,b,c,d){var e=0,f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0);e=Oa-96|0;Oa=e;k=L[a+28>>2];l=L[a+32>>2];u=L[d>>2];v=L[d+4>>2];w=L[d+8>>2];x=L[c>>2];y=L[c+4>>2];z=L[c+8>>2];m=L[a+24>>2];n=L[a+8>>2];o=L[a+4>>2];p=L[a>>2];h=L[a+20>>2];i=L[a+44>>2];f=O(L[b+8>>2]-i);q=L[a+12>>2];r=L[a+36>>2];g=O(L[b>>2]-r);s=L[a+40>>2];j=O(L[b+4>>2]-s);t=L[a+16>>2];L[e+84>>2]=O(h*f)+O(O(q*g)+O(j*t));L[e+80>>2]=O(n*f)+O(O(p*g)+O(j*o));L[e+88>>2]=O(l*f)+O(O(m*g)+O(j*k));f=O(z-i);g=O(x-r);j=O(y-s);L[e+68>>2]=O(h*f)+O(O(q*g)+O(t*j));L[e+64>>2]=O(n*f)+O(O(p*g)+O(o*j));L[e+72>>2]=O(l*f)+O(O(m*g)+O(k*j));g=h;h=O(w-i);i=O(u-r);f=O(v-s);L[e+52>>2]=O(g*h)+O(O(q*i)+O(t*f));L[e+48>>2]=O(n*h)+O(O(p*i)+O(o*f));L[e+56>>2]=O(l*h)+O(O(m*i)+O(k*f));b=H[e+84>>2];H[e+32>>2]=H[e+80>>2];H[e+36>>2]=b;b=H[e+92>>2];H[e+40>>2]=H[e+88>>2];H[e+44>>2]=b;b=H[e+68>>2];H[e+16>>2]=H[e+64>>2];H[e+20>>2]=b;b=H[e+76>>2];H[e+24>>2]=H[e+72>>2];H[e+28>>2]=b;b=H[e+52>>2];H[e>>2]=H[e+48>>2];H[e+4>>2]=b;b=H[e+60>>2];H[e+8>>2]=H[e+56>>2];H[e+12>>2]=b;a=e_(e+32|0,e+16|0,e,a+48|0);Oa=e+96|0;return a}function E6(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(t6(a,H[b+8>>2],e)){if(!(H[b+28>>2]==1|H[b+4>>2]!=(c|0))){H[b+28>>2]=d}return}a:{if(t6(a,H[b>>2],e)){if(!(H[b+16>>2]!=(c|0)&H[b+20>>2]!=(c|0))){if((d|0)!=1){break a}H[b+32>>2]=1;return}H[b+32>>2]=d;if(H[b+44>>2]!=4){f=a+16|0;h=f+(H[a+12>>2]<<3)|0;d=0;b:{c:{while(1){d:{if(f>>>0>=h>>>0){break d}G[b+52>>1]=0;F6(f,b,c,c,1,e);if(I[b+54|0]){break d}e:{if(!I[b+53|0]){break e}if(I[b+52|0]){d=1;if(H[b+24>>2]==1){break c}g=1;if(I[a+8|0]&2){break e}break c}g=1;if(!(F[a+8|0]&1)){break c}}f=f+8|0;continue}break}a=4;if(!g){break b}}a=3}H[b+44>>2]=a;if(d&1){break a}}H[b+20>>2]=c;H[b+40>>2]=H[b+40>>2]+1;if(H[b+36>>2]!=1|H[b+24>>2]!=2){break a}F[b+54|0]=1;return}f=H[a+12>>2];g=a+16|0;G6(g,b,c,d,e);if((f|0)<2){break a}g=g+(f<<3)|0;f=a+24|0;a=H[a+8>>2];if(!(!(a&2)&H[b+36>>2]!=1)){while(1){if(I[b+54|0]){break a}G6(f,b,c,d,e);f=f+8|0;if(g>>>0>f>>>0){continue}break}break a}if(!(a&1)){while(1){if(I[b+54|0]|H[b+36>>2]==1){break a}G6(f,b,c,d,e);f=f+8|0;if(g>>>0>f>>>0){continue}break a}}while(1){if(I[b+54|0]|H[b+36>>2]==1&H[b+24>>2]==1){break a}G6(f,b,c,d,e);f=f+8|0;if(g>>>0>f>>>0){continue}break}}}function ML(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;d=H[a+36>>2];a:{if(!d){break a}b=H[a+32>>2];if(d-1>>>0>=3){f=d&-4;while(1){i=I[(b+N(e|3,52)|0)+48|0];g=I[(b+N(e|2,52)|0)+48|0];h=I[(b+N(e|1,52)|0)+48|0];j=I[(b+N(e,52)|0)+48|0];c=c>>>0>>0?j:c;c=c>>>0>>0?h:c;c=c>>>0>>0?g:c;c=c>>>0>>0?i:c;e=e+4|0;k=k+4|0;if((f|0)!=(k|0)){continue}break}}d=d&3;if(!d){break a}while(1){f=I[(b+N(e,52)|0)+48|0];c=c>>>0>>0?f:c;e=e+1|0;l=l+1|0;if((d|0)!=(l|0)){continue}break}}e=H[a+28>>2];d=H[e+368>>2];b=H[d>>2];if(b){H[d>>2]=H[b>>2]}if(!b){b=H[33808];d=Ra[H[H[b>>2]+20>>2]](b)|0?23054:55639;d=Ra[H[H[b+12>>2]+8>>2]](b+12|0,12195,d,16202,82)|0;b=d+19&-16;H[b-4>>2]=b-d;b=lA(b,H[e+372>>2])}H[b+12052>>2]=0;d=b+12048|0;if((H[b+12056>>2]&2147483647)>>>0>>0){Cv(d,c)}H[b+12052>>2]=c;H[b+12064>>2]=0;f=b+12060|0;if((H[b+12068>>2]&2147483647)>>>0>>0){Cv(f,c)}H[b+12064>>2]=c;c=H[a+36>>2];if(c){i=a+40|0;e=0;while(1){g=H[a+32>>2]+N(e,52)|0;h=H[(H[H[g>>2]+24>>2]<<2)+135148>>2];if(h){Ra[h|0](g,L[a+52>>2],i,H[a+8>>2],H[a+12>>2],H[d>>2],H[f>>2]);c=H[a+36>>2]}e=e+1|0;if(c>>>0>e>>>0){continue}break}}a=H[H[a+28>>2]+368>>2];H[b>>2]=H[a>>2];H[a>>2]=b}function yX(a,b,c,d){var e=O(0),f=O(0),g=O(0),h=O(0),i=O(0),j=0,k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=0,w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0);j=H[b+24>>2];a:{if(I[b+64|0]&2){b=H[b+28>>2]+N(d,6)|0;d=J[b+4>>1];v=J[b+2>>1];b=J[b>>1];break a}b=H[b+28>>2]+N(d,12)|0;d=H[b+8>>2];v=H[b+4>>2];b=H[b>>2]}b=j+N(b,12)|0;g=L[b>>2];h=L[c>>2];e=L[b+4>>2];f=L[c+12>>2];l=L[b+8>>2];m=L[c+24>>2];w=O(O(O(g*h)+O(e*f))+O(l*m));d=j+N(d,12)|0;n=L[d>>2];j=j+N(v,12)|0;o=L[j>>2];b=I[c+72|0];s=b?n:o;p=L[d+4>>2];q=L[j+4>>2];t=b?p:q;x=L[d+8>>2];y=L[j+8>>2];u=b?x:y;z=O(w-O(O(O(h*s)+O(t*f))+O(u*m)));i=L[c+4>>2];k=L[c+16>>2];r=L[c+28>>2];A=O(O(O(g*i)+O(e*k))+O(l*r));n=b?o:n;o=b?q:p;p=b?y:x;q=O(A-O(O(O(n*i)+O(o*k))+O(p*r)));m=O(w-O(O(O(h*n)+O(o*f))+O(p*m)));f=O(A-O(O(O(s*i)+O(t*k))+O(u*r)));h=O(O(z*q)-O(m*f));k=f;i=g;g=L[c+8>>2];r=e;e=L[c+20>>2];f=L[c+32>>2];l=O(O(O(i*g)+O(r*e))+O(l*f));i=O(l-O(O(O(n*g)+O(o*e))+O(p*f)));e=O(l-O(O(O(s*g)+O(t*e))+O(u*f)));g=O(O(k*i)-O(q*e));e=O(O(e*m)-O(i*z));f=O(O(h*h)+O(O(g*g)+O(e*e)));if(f>O(0)){k=h;h=O(O(1)/O(W(f)));B=O(k*h);C=O(g*h);D=O(e*h)}L[a+8>>2]=B;L[a+4>>2]=D;L[a>>2]=C}function PJ(a,b,c,d){var e=0,f=0,g=0,h=0,i=0;g=H[a+40>>2];f=g+c|0;e=H[a+44>>2];a:{if(f>>>0>e>>>0){e=e<<1;h=f>>>0>1024?f:1024;e=e>>>0>h>>>0?e:h;H[a+44>>2]=e;h=H[a+36>>2];e=e<<2;if(e){i=H[33808]+12|0;e=Ra[H[H[i>>2]+8>>2]](i,e,20591,10647,890)|0}else{e=0}if(g){R6(e,h,g<<2)}if(!h){break a}i=H[33808]+12|0;Ra[H[H[i>>2]+12>>2]](i,h);break a}e=H[a+36>>2]}H[a+40>>2]=f;H[a+36>>2]=e;b:{if(!c){break b}f=c-1|0;a=(g<<2)+e|0;if(!d){e=c&3;c:{if(!e){c=f;break c}d=0;c=f;while(1){H[a>>2]=H[b>>2]|-2147483648;c=c-1|0;a=a+4|0;b=b+4|0;d=d+1|0;if((e|0)!=(d|0)){continue}break}}if(f>>>0<3){break b}while(1){H[a>>2]=H[b>>2]|-2147483648;H[a+4>>2]=H[b+4>>2]|-2147483648;H[a+8>>2]=H[b+8>>2]|-2147483648;H[a+12>>2]=H[b+12>>2]|-2147483648;a=a+16|0;b=b+16|0;d=(c|0)==3;c=c-4|0;if(!d){continue}break}break b}d=H[d+8>>2];if(c&1){e=H[b>>2];H[a>>2]=e|-2147483648;g=d+(e>>>3&536870908)|0;H[g>>2]=H[g>>2]|1<>2];H[a>>2]=f|-2147483648;e=d+(f>>>3&536870908)|0;H[e>>2]=H[e>>2]|1<>2];H[a+4>>2]=f|-2147483648;e=d+(f>>>3&536870908)|0;H[e>>2]=H[e>>2]|1<>2]+H[a+40>>2]|0)+1|0;e=g7(i,0,28,0);j=e+4|0;e=(l=g,m=Qa?-1:e>>>0>j>>>0?-1:j,n=Ra[H[H[f>>2]+20>>2]](f)|0?39172:55639,o=9670,p=659,k=H[H[g>>2]+8>>2],Ra[k](l|0,m|0,n|0,o|0,p|0)|0);H[e>>2]=i;g=e+4|0;e=H[a+40>>2];f=(e+H[c>>2]<<2)+4|0;a:{if(!f){f=0;break a}e=H[33808]+12|0;f=Ra[H[H[e>>2]+8>>2]](e,f,20591,9670,660)|0;e=H[a+40>>2]}g=R6(g,H[a+8>>2],N(e,28));i=R6(f,H[a+36>>2],H[a+40>>2]<<2);f=H[a+40>>2];H[h+12>>2]=f;e=g+N(f,28)|0;L[e>>2]=L[b>>2];L[e+4>>2]=L[b+4>>2];L[e+8>>2]=L[b+8>>2];L[e+12>>2]=L[b+12>>2];L[e+16>>2]=L[b+16>>2];L[e+20>>2]=L[b+20>>2];H[e+24>>2]=H[b+24>>2];H[i+(f<<2)>>2]=d;b=H[a+52>>2];if(!(!b|!(H[b+(d>>>3&536870908)>>2]>>>d&1))){e=f>>>5|0;b=b+(e<<2)|0;H[b>>2]=H[b>>2]|1<>2];H[a+60>>2]=b>>>0>>0?e:b}b=H[a+8>>2];if(b){e=H[33808]+12|0;Ra[H[H[e>>2]+12>>2]](e,b-4|0)}H[a+8>>2]=g;b=H[a+36>>2];if(b){e=H[33808]+12|0;Ra[H[H[e>>2]+12>>2]](e,b)}H[a+36>>2]=i;H[h+12>>2]=f+1;YA(a,h+12|0,c);H[(H[a+36>>2]+(H[a+40>>2]<<2)|0)+4>>2]=d;b=H[a+40>>2];H[(H[a+8>>2]+N(d,28)|0)+24>>2]=b<<1;H[a+40>>2]=(b+H[c>>2]|0)+1;Oa=h+16|0}function $H(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0;h=H[a+4>>2];k=H[h+40>>2];e=H[k+980>>2];h=H[H[h+44>>2]+4>>2]&16777215;f=(h|0)==16777215?-1:h;i=(d|0)!=0;h=Oa-16|0;Oa=h;d=H[a+8>>2]&2147483647;g=d+1|0;if(g>>>0>=K[e+200>>2]){iH(e,g)}j=H[e+360>>2];H[e+360>>2]=g>>>0>>0?j:g;g=d<<2;H[g+H[e+180>>2]>>2]=c;L[g+H[H[e+192>>2]+4>>2]>>2]=b;c=H[e+196>>2]+(d<<3)|0;H[c>>2]=i|a&-4;a:{if((f|0)==-1){H[c+4>>2]=-1;f=d>>>5|0;g=H[e+148>>2]+(f<<2)|0;i=H[g>>2];c=1<>2]=i&(c^-1);break b}d=H[e+136>>2]+(f<<2)|0;H[d>>2]=c|H[d>>2]}F[e+365|0]=1;break a}H[c+4>>2]=f<<1;F[e+365|0]=1;c=H[H[e+376>>2]+(f<<2)>>2];c:{if(H[c+8>>2]){break c}f=H[c>>2];g=f>>>5<<2;i=g+H[e+148>>2]|0;j=H[i>>2];f=1<>2]=j&(f^-1);break c}g=g+H[e+136>>2]|0;H[g>>2]=f|H[g>>2]}H[h+8>>2]=d;f=H[c+8>>2];d:{if(f>>>0>=(H[c+12>>2]&2147483647)>>>0){qm(c+4|0,h+8|0);break d}H[H[c+4>>2]+(f<<2)>>2]=d;H[c+8>>2]=H[c+8>>2]+1}if(H[c+20>>2]!=-1){break a}d=H[e+392>>2];H[c+20>>2]=d;H[h+12>>2]=c;if(d>>>0>=(H[e+396>>2]&2147483647)>>>0){nH(e+388|0,h+12|0);break a}H[H[e+388>>2]+(d<<2)>>2]=c;H[e+392>>2]=d+1}Oa=h+16|0;H[a+8>>2]=H[a+8>>2]|-2147483648;a=H[k+2352>>2];H[a+8>>2]=H[a+8>>2]+1}function bM(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=O(0),m=O(0),n=0,o=0,p=0;b=H[a+28>>2];e=b;l=L[a+32>>2];m=L[b+96>>2];n=H[a+40>>2]+(H[b+88>>2]<<5)|0;f=Oa-2064|0;Oa=f;i=H[b+8>>2]&2147483647;o=H[H[b>>2]+11936>>2];h=H[a+44>>2];b=H[h+368>>2];a=H[b>>2];if(a){H[b>>2]=H[a>>2]}if(!a){b=H[33808];a=Ra[H[H[b>>2]+20>>2]](b)|0?23054:55639;a=Ra[H[H[b+12>>2]+8>>2]](b+12|0,12195,a,16202,82)|0;b=a+19&-16;H[b-4>>2]=b-a;a=lA(b,H[h+372>>2])}b=a+11856|0;H[b>>2]=0;H[b+4>>2]=0;if(i){p=a+11852|0;while(1){d=H[(g<<2)+o>>2];c=H[d+32>>2];b=H[H[e>>2]+12144>>2]+N(g,52)|0;H[b>>2]=H[d+28>>2];H[b+4>>2]=c;H[b+48>>2]=H[d+76>>2];c=H[d+72>>2];H[b+40>>2]=H[d+68>>2];H[b+44>>2]=c;c=H[d+64>>2];H[b+32>>2]=H[d+60>>2];H[b+36>>2]=c;c=H[d+56>>2];H[b+24>>2]=H[d+52>>2];H[b+28>>2]=c;c=H[d+48>>2];H[b+16>>2]=H[d+44>>2];H[b+20>>2]=c;c=H[d+40>>2];H[b+8>>2]=H[d+36>>2];H[b+12>>2]=c;c=H[(H[H[b>>2]+24>>2]<<2)+135156>>2];if(c){c=Ra[c|0](b,p,(j<<5)+n|0,L[e+92>>2],m,l,f+12|0,H[e>>2]+11836|0,f+16|0)|0}else{c=0}F[b+49|0]=c;j=j- -64|0;k=c+k|0;g=g+1|0;if((i|0)!=(g|0)){continue}break}}b=H[h+368>>2];H[a>>2]=H[b>>2];H[b>>2]=a;a=H[e>>2];H[a+11956>>2]=H[a+11956>>2]+k;Oa=f+2064|0}function lZ(a,b){var c=O(0),d=O(0),e=O(0);H[a>>2]=b;c=L[b>>2];d=L[b+4>>2];e=L[b+8>>2];F[a+118|0]=4;L[a+96>>2]=e;L[a+92>>2]=d;L[a+84>>2]=e;L[a+80>>2]=d;L[a+76>>2]=c;L[a+72>>2]=e;L[a- -64>>2]=c;L[a+60>>2]=e;L[a+44>>2]=d;L[a+32>>2]=d;L[a+28>>2]=c;L[a+16>>2]=c;c=O(-c);L[a+88>>2]=c;d=O(-d);L[a+68>>2]=d;L[a+56>>2]=d;L[a+52>>2]=c;e=O(-e);L[a+48>>2]=e;L[a+40>>2]=c;L[a+36>>2]=e;L[a+24>>2]=e;L[a+20>>2]=d;L[a+12>>2]=e;L[a+8>>2]=d;L[a+4>>2]=c;F[a+138|0]=4;G[a+116>>1]=0;F[a+158|0]=4;G[a+136>>1]=4;F[a+178|0]=4;G[a+156>>1]=8;F[a+198|0]=4;G[a+176>>1]=12;F[a+218|0]=4;G[a+196>>1]=16;G[a+216>>1]=20;H[a+120>>2]=1065353216;H[a+124>>2]=0;H[a+128>>2]=0;c=L[b>>2];H[a+168>>2]=0;H[a+160>>2]=-1082130432;H[a+164>>2]=0;L[a+132>>2]=-c;c=L[b>>2];F[a+139|0]=0;F[a+179|0]=1;H[a+180>>2]=0;H[a+184>>2]=1065353216;H[a+188>>2]=0;L[a+172>>2]=-c;c=L[b+4>>2];H[a+200>>2]=0;H[a+204>>2]=-1082130432;H[a+208>>2]=0;L[a+192>>2]=-c;c=L[b+4>>2];H[a+140>>2]=0;H[a+144>>2]=0;H[a+148>>2]=1065353216;F[a+199|0]=0;F[a+219|0]=2;L[a+212>>2]=-c;c=L[b+8>>2];H[a+100>>2]=0;H[a+104>>2]=0;H[a+108>>2]=-1082130432;L[a+152>>2]=-c;c=L[b+8>>2];F[a+119|0]=4;F[a+159|0]=0;L[a+112>>2]=-c;return a}function fI(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;g=Oa-16|0;Oa=g;e=a+4|0;d=H[a+8>>2];if(d){h=a+1916|0;while(1){f=H[H[e>>2]+(i<<2)>>2];c=J[f+4>>1];G[f+4>>1]=c-1;a:{if(c>>>0>=2){G[f>>1]=J[f>>1]&65533;break a}c=H[f+16>>2];j=H[c+20>>2];d=H[c+16>>2];c=j>>>0>d>>>0;H[g+4>>2]=c?j:d;H[g>>2]=c?d:j;GH(h,g);c=H[f+16>>2];if(c){H[a+1560>>2]=H[a+1560>>2]-1;H[c>>2]=H[a+1568>>2];H[a+1568>>2]=c;H[f+16>>2]=0}H[a+684>>2]=H[a+684>>2]-1;H[f>>2]=H[a+692>>2];H[a+692>>2]=f;d=H[a+8>>2]}i=i+1|0;if(i>>>0>>0){continue}break}}b:{if(!b){H[a+8>>2]=0;break b}H[g+12>>2]=0;b=H[e+4>>2];if((b|0)<0){c=H[e>>2];b=c+(b<<2)|0;while(1){H[b>>2]=H[g+12>>2];b=b+4|0;if(c>>>0>b>>>0){continue}break}}H[e+4>>2]=0;b=0;h=H[a+8>>2];c:{if(!h){break c}c=h<<2;if(!c){break c}b=H[33808];a=b+12|0;b=(l=a,m=c,n=Ra[H[H[b>>2]+20>>2]](b)|0?48478:55639,o=13582,p=553,k=H[H[a>>2]+8>>2],Ra[k](l|0,m|0,n|0,o|0,p|0)|0)}a=H[e+4>>2];if((a|0)>0){c=(a<<2)+b|0;d=H[e>>2];a=b;while(1){H[a>>2]=H[d>>2];d=d+4|0;a=a+4|0;if(c>>>0>a>>>0){continue}break}}d:{if(H[e+8>>2]<0){break d}c=H[e>>2];if(!c){break d}a=H[33808]+12|0;Ra[H[H[a>>2]+12>>2]](a,c)}H[e+8>>2]=h;H[e>>2]=b}Oa=g+16|0}function Vc(a){a=a|0;var b=0,c=O(0),d=0;b=o6(252);H[b>>2]=0;H[b+4>>2]=0;H[b+52>>2]=0;H[b+56>>2]=0;H[b+48>>2]=2;H[b+40>>2]=1;H[b+44>>2]=1;H[b+32>>2]=0;H[b+36>>2]=0;H[b+24>>2]=0;H[b+28>>2]=0;H[b+16>>2]=0;H[b+20>>2]=0;H[b+8>>2]=0;H[b+12>>2]=0;H[b+60>>2]=0;H[b+64>>2]=0;H[b+68>>2]=0;H[b+72>>2]=0;H[b+76>>2]=0;H[b+80>>2]=0;H[b+84>>2]=0;H[b+88>>2]=0;H[b+92>>2]=0;L[b+96>>2]=L[a+4>>2]*O(.20000000298023224);c=L[a>>2];H[b+236>>2]=8;H[b+240>>2]=0;H[b+228>>2]=67108864;H[b+232>>2]=262144;H[b+220>>2]=81920;H[b+224>>2]=1048576;H[b+212>>2]=16777216;H[b+216>>2]=524288;H[b+204>>2]=33554432;H[b+208>>2]=25165824;H[b+196>>2]=2122317823;H[b+200>>2]=2122317823;H[b+188>>2]=-25165825;H[b+192>>2]=2122317823;H[b+180>>2]=-25165825;H[b+184>>2]=-25165825;H[b+172>>2]=2139095039;H[b+176>>2]=1053609164;H[b+164>>2]=8192;H[b+168>>2]=1;H[b+156>>2]=65536;H[b+160>>2]=2139095039;H[b+148>>2]=16;H[b+152>>2]=0;H[b+140>>2]=0;H[b+144>>2]=128;H[b+132>>2]=100;H[b+136>>2]=0;H[b+124>>2]=1;H[b+128>>2]=1;H[b+116>>2]=0;H[b+120>>2]=0;H[b+108>>2]=0;H[b+112>>2]=64;c=O(c*O(.03999999910593033));L[b+104>>2]=c;L[b+100>>2]=c;d=H[a+4>>2];H[b+244>>2]=H[a>>2];H[b+248>>2]=d;return b|0}function AJ(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0;a:{b=H[a+304>>2];e=H[b>>2];H[b>>2]=0;if(!e){break a}b=e;while(1){h=H[b>>2];f=H[a+976>>2]<<5;H[b+504>>2]=0;H[b+508>>2]=0;H[b+516>>2]=0;H[b+520>>2]=0;c=b+7196|0;S6(H[b+7192>>2],0,H[c>>2]<<2);d=f+31>>>5|0;if(d>>>0>(H[c>>2]&2147483647)>>>0){c=H[33808];g=Ra[H[H[c+12>>2]+8>>2]](c+12|0,d<<2,20591,14969,438)|0;c=H[b+7192>>2];b:{if(!c){break b}R6(g,c,H[b+7196>>2]<<2);if(H[b+7196>>2]<0){break b}f=H[b+7192>>2];if(!f){break b}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,f)}c=H[b+7196>>2];S6(g+(c<<2)|0,0,d-c<<2);H[b+7196>>2]=d;H[b+7192>>2]=g}c=b+7208|0;S6(H[b+7204>>2],0,H[c>>2]<<2);if(d>>>0>(H[c>>2]&2147483647)>>>0){c=H[33808];g=Ra[H[H[c+12>>2]+8>>2]](c+12|0,d<<2,20591,14969,438)|0;c=H[b+7204>>2];c:{if(!c){break c}R6(g,c,H[b+7208>>2]<<2);if(H[b+7208>>2]<0){break c}f=H[b+7204>>2];if(!f){break c}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,f)}c=H[b+7208>>2];S6(g+(c<<2)|0,0,d-c<<2);H[b+7208>>2]=d;H[b+7204>>2]=g}H[b+7216>>2]=0;H[b+7220>>2]=0;b=b+7224|0;H[b>>2]=0;H[b+4>>2]=0;b=h;if(b){continue}break}if(!e){break a}while(1){b=H[e>>2];h=H[a+304>>2];H[e>>2]=H[h>>2];H[h>>2]=e;e=b;if(b){continue}break}}}function gQ(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,o=0,p=0,q=0;f=Oa-16|0;Oa=f;b=H[a+28>>2];a=H[b+976>>2];e=H[a+1008>>2];H[f+12>>2]=e;a=H[a+1012>>2];H[f+8>>2]=a;l=b+2484|0;H[l>>2]=0;wO(b+2480|0,e);m=b+2496|0;H[m>>2]=0;wO(b+2492|0,a);n=H[b+2480>>2];o=H[b+2492>>2];a=0;i=Oa-48|0;Oa=i;g=H[b+976>>2];b=H[g+988>>2]&2147483647;a:{b:{if(!b){b=0;break b}e=H[g+984>>2];while(1){c=H[e+(a<<2)>>2];if(c){b=a;break a}a=a+1|0;if((b|0)!=(a|0)){continue}break}}c=0}a=H[g+1024>>2];Ra[H[H[a>>2]+84>>2]](i+8|0,a);a=o;e=n;c:{if(!c){break c}p=H[g+312>>2]-1|0;k=H[g+988>>2]&2147483647;q=H[g+320>>2];while(1){d=f7(c)|b<<5;c=c-1&c;d:{if(c){break d}h=b+1|0;h=h>>>0>k>>>0?h:k;j=H[g+984>>2];while(1){b=b+1|0;if(k>>>0<=b>>>0){c=0;b=h;break d}c=H[j+(b<<2)>>2];if(!c){continue}break}}if((d|0)==-1){break c}h=H[H[g+332>>2]+(d>>>q<<2)>>2]+N(d&p,80)|0;d=H[h+68>>2];d=H[i+40>>2]+(H[(i+8|0)+((d&7)<<2)>>2]+(d>>>3|0)<<4)|0;j=I[d+13|0];d=I[d+15|0];e:{if(j>>>0>d>>>0){H[e>>2]=h;e=e+4|0;break e}if(d>>>0<=j>>>0){break e}H[a>>2]=h;a=a+4|0}if(c){continue}break}}H[f+12>>2]=e-n>>2;H[f+8>>2]=a-o>>2;Oa=i+48|0;H[l>>2]=H[f+12>>2];H[m>>2]=H[f+8>>2];Oa=f+16|0}function MO(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0;g=Oa-288|0;Oa=g;e=H[b>>2];a:{if(!e){break a}f=H[a+2416>>2];b:{if(f){HO(a,e,f,c,d);break b}F[g+264|0]=1;H[g+272>>2]=0;H[g+276>>2]=64;f=g+8|0;H[g+268>>2]=f;HO(a,e,f,c,d);c=H[g+276>>2];if((c|0)<0|!(c&2147483647)){break b}c=H[g+268>>2];if((c|0)==(g+8|0)|!c){break b}d=H[33808]+12|0;Ra[H[H[d>>2]+12>>2]](d,c)}c:{if(!(I[H[e+100>>2]+28|0]&32)|I[H[e+44>>2]+9|0]==2){break c}d=H[e+144>>2];f=d>>>7|0;c=H[e+40>>2];if(f>>>0>=H[c+4728>>2]<<5>>>0){break c}c=H[c+4724>>2]+(d>>>10&4194300)|0;d=H[c>>2];j=c,k=j7(-2,f)&d,H[j>>2]=k}d:{e:{if(!H[b+176>>2]|I[H[b+176>>2]+31|0]!=1){break e}b=H[b+176>>2];if(I[(I[b+31|0]==1?b:0)+31|0]!=1){break e}H[a+2672>>2]=H[a+2672>>2]-1;break d}H[a+2668>>2]=H[a+2668>>2]-1}c=H[a+2392>>2];Ra[H[H[e>>2]>>2]](e)|0;if(I[c+24|0]){MN(H[c+12>>2],H[c+16>>2])}a=0;b=H[c+16>>2]-1|0;if((b|0)<0){break a}i=N(H[c+4>>2],H[c>>2]);f=H[c+12>>2];while(1){d=a+b>>1;h=H[f+N(d,12)>>2];if(!(h>>>0>e>>>0|h+i>>>0<=e>>>0)){a=f+N(d,12)|0;H[e>>2]=H[a+4>>2];H[a+4>>2]=e;if(I[c+24|0]){H[c+8>>2]=d}F[c+24|0]=0;break a}h=e>>>0>h>>>0;a=h?d+1|0:a;b=h?b:d-1|0;if((a|0)<=(b|0)){continue}break}}Oa=g+288|0}function cH(a,b,c,d,e,f,g,h,i){var j=0,k=0,l=0,m=0,n=0;j=Oa-16|0;Oa=j;if(H[a+4>>2]!=(b|0)){H[a+4>>2]=b;m=a+8|0;Ra[H[H[a>>2]+12>>2]](a,m,c,d,e,f);f=H[a+16>>2];if(f){c=0;while(1){b=H[a+28>>2]+(c<<3)|0;k=H[b+4>>2];d=k&2147483647;l=H[b>>2];e=l&2147483647;a:{if((l|0)<0){k=H[g>>2];l=H[k+(e<<3)>>2];k=H[k+(d<<3)>>2];H[j+4>>2]=d;H[j>>2]=e;d=k&3;e=l&3;d=N(d>>>0>e>>>0?d:e,12)+h|0;e=H[d+4>>2];b:{if(e>>>0>=(H[d+8>>2]&2147483647)>>>0){tH(d,j);break b}k=H[j+4>>2];e=H[d>>2]+N(e,12)|0;H[e>>2]=H[j>>2];H[e+4>>2]=k;H[e+8>>2]=H[j+8>>2];H[d+4>>2]=H[d+4>>2]+1}H[b>>2]=H[b>>2]&2147483647;H[b+4>>2]=H[b+4>>2]&2147483647;c=c+1|0;break a}if((k|0)<0){H[b+4>>2]=d;c=c+1|0;break a}b=H[g>>2];n=H[b+(e<<3)>>2];c:{if(n>>>0<4){break c}b=H[b+(d<<3)>>2];if(b>>>0<4){break c}H[j+4>>2]=d;H[j>>2]=e;b=b&3;d=n&3;b=N(b>>>0>d>>>0?b:d,12)+i|0;d=H[b+4>>2];if(d>>>0>=(H[b+8>>2]&2147483647)>>>0){tH(b,j);break c}e=H[j+4>>2];d=H[b>>2]+N(d,12)|0;H[d>>2]=H[j>>2];H[d+4>>2]=e;H[d+8>>2]=H[j+8>>2];H[b+4>>2]=H[b+4>>2]+1}b=l&65535|k<<16;b=(b<<15^-1)+b|0;b=N(b>>>10^b,9);b=b>>>6^b;b=(b<<11^-1)+b|0;aH(m,H[a+12>>2]&(b>>>16^b),c);f=f-1|0}if(c>>>0>>0){continue}break}}ZG(m)}Oa=j+16|0}function fy(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:{if(!b){break a}c=H[33808];d=c+12|0;c=(i=d,j=N(b,112)+131|0,k=Ra[H[H[c>>2]+20>>2]](c)|0?40716:55639,l=13582,m=553,h=H[H[d>>2]+8>>2],Ra[h](i|0,j|0,k|0,l|0,m|0)|0);if(!c){break a}e=c+131&-128;H[e-4>>2]=e-c}c=H[a+4>>2];if((c|0)>0){f=N(c,112)+e|0;d=H[a>>2];c=e;while(1){L[c>>2]=L[d>>2];L[c+4>>2]=L[d+4>>2];L[c+8>>2]=L[d+8>>2];L[c+12>>2]=L[d+12>>2];L[c+16>>2]=L[d+16>>2];L[c+20>>2]=L[d+20>>2];L[c+24>>2]=L[d+24>>2];L[c+28>>2]=L[d+28>>2];L[c+32>>2]=L[d+32>>2];L[c+36>>2]=L[d+36>>2];L[c+40>>2]=L[d+40>>2];L[c+44>>2]=L[d+44>>2];L[c+48>>2]=L[d+48>>2];L[c+52>>2]=L[d+52>>2];L[c+56>>2]=L[d+56>>2];L[c+60>>2]=L[d+60>>2];L[c- -64>>2]=L[d- -64>>2];g=H[d+72>>2];H[c+68>>2]=H[d+68>>2];H[c+72>>2]=g;H[c+76>>2]=H[d+76>>2];L[c+80>>2]=L[d+80>>2];L[c+84>>2]=L[d+84>>2];L[c+88>>2]=L[d+88>>2];L[c+92>>2]=L[d+92>>2];L[c+96>>2]=L[d+96>>2];L[c+100>>2]=L[d+100>>2];L[c+104>>2]=L[d+104>>2];H[c+108>>2]=H[d+108>>2];d=d+112|0;c=c+112|0;if(f>>>0>c>>>0){continue}break}}b:{if(H[a+8>>2]<0){break b}c=H[a>>2];if(!c){break b}d=H[33808]+12|0;Ra[H[H[d>>2]+12>>2]](d,c-H[c-4>>2]|0)}H[a+8>>2]=b;H[a>>2]=e}function $_(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=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0);f=Oa-48|0;Oa=f;l=L[a+56>>2];m=L[a+44>>2];n=L[a+32>>2];o=L[a+60>>2];p=L[a+48>>2];q=L[a+24>>2];r=L[a+36>>2];s=L[a+20>>2];h=L[c>>2];k=L[a+28>>2];i=L[c+4>>2];t=L[a+40>>2];j=L[c+8>>2];u=L[a+52>>2];v=L[a- -64>>2];L[f+40>>2]=O(O(O(h*k)+O(i*t))+O(j*u))+v;L[f+36>>2]=o+O(O(O(h*q)+O(i*r))+O(j*p));L[f+32>>2]=l+O(O(O(h*s)+O(i*n))+O(j*m));g=I[a+17|0];c=g?e:d;h=L[c>>2];i=L[c+4>>2];j=L[c+8>>2];L[f+24>>2]=v+O(O(O(k*h)+O(t*i))+O(u*j));L[f+20>>2]=o+O(O(O(q*h)+O(r*i))+O(p*j));L[f+16>>2]=l+O(O(O(s*h)+O(n*i))+O(m*j));c=g?d:e;h=L[c>>2];j=O(k*h);k=L[c+4>>2];i=L[c+8>>2];L[f+8>>2]=v+O(O(j+O(t*k))+O(u*i));L[f+4>>2]=o+O(O(O(q*h)+O(r*k))+O(p*i));L[f>>2]=l+O(O(O(s*h)+O(n*k))+O(m*i));c=1;a:{if(!d_(a+84|0,a+68|0,f+32|0,f+16|0,f)){break a}d=H[b+8>>2];F[a+16|0]=1;a=H[a+12>>2];c=0;if(!a){break a}b=H[a+4>>2];if(b>>>0>=K[a+8>>2]){F[a+20|0]=1;c=1;break a}c=H[a+16>>2];if(c>>>0>=K[a+12>>2]){H[a+4>>2]=b+1;H[H[a>>2]+(b<<2)>>2]=d;c=1;break a}H[a+16>>2]=c+1;c=1}Oa=f+48|0;return c|0}function lS(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;c=H[a+8>>2]&2147483647;g=c?c<<1:1;a:{if(!g){break a}c=N(g,56);if(!c){break a}e=H[33808];d=e+12|0;e=(j=d,k=c,l=Ra[H[H[e>>2]+20>>2]](e)|0?21816:55639,m=13582,n=553,i=H[H[d>>2]+8>>2],Ra[i](j|0,k|0,l|0,m|0,n|0)|0)}c=H[a+4>>2];if((c|0)>0){h=N(c,56)+e|0;d=H[a>>2];c=e;while(1){f=H[d+4>>2];H[c>>2]=H[d>>2];H[c+4>>2]=f;f=H[d+20>>2];H[c+16>>2]=H[d+16>>2];H[c+20>>2]=f;f=H[d+12>>2];H[c+8>>2]=H[d+8>>2];H[c+12>>2]=f;L[c+24>>2]=L[d+24>>2];L[c+28>>2]=L[d+28>>2];L[c+32>>2]=L[d+32>>2];L[c+36>>2]=L[d+36>>2];L[c+40>>2]=L[d+40>>2];L[c+44>>2]=L[d+44>>2];L[c+48>>2]=L[d+48>>2];d=d+56|0;c=c+56|0;if(h>>>0>c>>>0){continue}break}c=H[a+4>>2]}d=H[b+4>>2];c=N(c,56)+e|0;H[c>>2]=H[b>>2];H[c+4>>2]=d;d=H[b+20>>2];H[c+16>>2]=H[b+16>>2];H[c+20>>2]=d;d=H[b+12>>2];H[c+8>>2]=H[b+8>>2];H[c+12>>2]=d;L[c+24>>2]=L[b+24>>2];L[c+28>>2]=L[b+28>>2];L[c+32>>2]=L[b+32>>2];L[c+36>>2]=L[b+36>>2];L[c+40>>2]=L[b+40>>2];L[c+44>>2]=L[b+44>>2];L[c+48>>2]=L[b+48>>2];b:{if(H[a+8>>2]<0){break b}b=H[a>>2];if(!b){break b}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}H[a+8>>2]=g;H[a>>2]=e;H[a+4>>2]=H[a+4>>2]+1}function VK(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;h=H[d+28>>2];a:{if((h|0)==1073741823){break a}g=a>>>0>b>>>0;i=g?a:b;j=g?b:a;a=j|i<<16;a=(a<<15^-1)+a|0;a=N(a>>10^a,9);a=a>>6^a;a=(a<<11^-1)+a|0;k=a>>16^a;a=k&H[d+36>>2];l=H[d+8>>2];b:{if(!l){break b}b=H[H[d>>2]+(a<<2)>>2];if((b|0)==1073741823){break b}m=H[d+4>>2];g=H[d+20>>2];while(1){f=(b<<3)+g|0;if(H[f>>2]==(j|0)&H[f+4>>2]==(i|0)){break a}b=H[(b<<2)+m>>2];if((b|0)!=1073741823){continue}break}}if(h>>>0>=l>>>0){a=h+1|0;a=a>>>1|a;a=a>>>2|a;a=a>>>4|a;a=a>>>8|a;a=a>>>16|a;H[d+36>>2]=a;a=a+1|0;H[d+8>>2]=a;SK(d,a>>>0>K[d+12>>2]);h=H[d+28>>2];a=H[d+36>>2]&k}f=H[d+20>>2]+(h<<3)|0;H[f+4>>2]=i;H[f>>2]=j;F[H[d+24>>2]+h|0]=8;b=H[d>>2]+(a<<2)|0;H[H[d+4>>2]+(H[d+28>>2]<<2)>>2]=H[b>>2];a=H[d+28>>2];H[d+28>>2]=a+1;H[b>>2]=a}g=f;if(f){f=g-H[d+20>>2]>>3;a=H[d+24>>2];b=f+a|0;if(I[b|0]&8){F[b|0]=0;a=H[d+24>>2]+(g-H[d+20>>2]>>3)|0;F[a|0]=I[a|0]|1;f=g-H[d+20>>2]|0;a=f>>>3|0;b=H[e+4>>2];if((b|0)==H[e+8>>2]){UK(e,c);f=g-H[d+20>>2]|0;b=H[e+4>>2]}H[e+4>>2]=b+1;H[H[e>>2]+(b<<2)>>2]=a;a=H[d+24>>2]+(f>>3)|0;F[a|0]=I[a|0]|4;f=g-H[d+20>>2]>>3;a=H[d+24>>2]}a=a+f|0;F[a|0]=I[a|0]&253}}function o1(a,b,c,d,e,f){var g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0);q=L[e+8>>2];r=L[e+20>>2];s=L[e+32>>2];i=O(O(O(q+r)+s)*O(.3333333432674408));g=O(i-L[a+8>>2]);j=L[b+8>>2];t=L[e>>2];u=L[e+12>>2];v=L[e+24>>2];k=O(O(O(t+u)+v)*O(.3333333432674408));l=O(k-L[a>>2]);n=L[b>>2];w=L[e+4>>2];x=L[e+16>>2];y=L[e+28>>2];p=O(O(O(w+x)+y)*O(.3333333432674408));m=O(p-L[a+4>>2]);o=L[b+4>>2];h=O(O(g*j)+O(O(l*n)+O(m*o)));h=h>O(0)?h:O(0);h=c>h?h:c;g=O(g-O(j*h));z=O(g*g);g=O(l-O(n*h));h=O(m-O(o*h));h=O(O(O(W(O(z+O(O(g*g)+O(h*h)))))-d)+O(-9999999747378752e-20));a:{b:{if(hk?k:j)){break a}g=c;c=O(f-i);a=gd&c>j}return a}function u2(a,b,c){a=a|0;b=b|0;c=c|0;var d=O(0),e=O(0),f=O(0),g=O(0),h=0,i=O(0),j=O(0),k=O(0),l=0,m=O(0),n=O(0),o=O(0),p=O(0),q=0,r=O(0),s=O(0),t=O(0);h=Oa-48|0;Oa=h;n=L[c+20>>2];d=L[c+12>>2];i=L[c+8>>2];j=L[c>>2];k=L[c+4>>2];p=L[c+16>>2];q=N(b,28);l=q+a|0;r=L[c+24>>2];L[l+44>>2]=r;L[l+40>>2]=n;L[l+36>>2]=p;o=d;d=O(O(1)/O(W(O(O(d*d)+O(O(i*i)+O(O(j*j)+O(k*k)))))));e=O(o*d);L[l+32>>2]=e;f=O(i*d);L[l+28>>2]=f;g=O(k*d);L[l+24>>2]=g;m=O(j*d);L[l+20>>2]=m;c=H[a+76>>2];l=h+40|0;Ra[H[H[c>>2]+28>>2]](c,l,h+44|0);u1(h+8|0,H[l+(b<<2)>>2]);s=L[h+28>>2];t=L[h+32>>2];o=L[h+24>>2];b=H[a+80>>2]+q|0;i=L[h+16>>2];j=L[h+12>>2];d=L[h+20>>2];k=L[h+8>>2];L[b+28>>2]=O(i*f)+O(O(j*g)+O(O(d*e)+O(m*k)));L[b+24>>2]=O(m*j)+O(O(O(d*f)-O(e*i))-O(k*g));L[b+20>>2]=O(f*k)+O(O(O(d*g)-O(e*j))-O(i*m));L[b+16>>2]=O(g*i)+O(O(O(d*m)-O(e*k))-O(j*f));e=O(p-o);e=O(e+e);f=O(n-s);f=O(f+f);g=O(r-t);g=O(g+g);m=O(O(O(O(-k)*e)-O(f*j))-O(i*g));n=O(O(d*d)+O(-.5));L[b+40>>2]=O(O(g*n)+O(d*O(O(j*e)-O(k*f))))-O(i*m);L[b+36>>2]=O(O(f*n)+O(d*O(O(k*g)-O(i*e))))-O(j*m);L[b+32>>2]=O(O(e*n)+O(d*O(O(i*f)-O(j*g))))-O(k*m);a=H[a+76>>2];Ra[H[H[a>>2]+36>>2]](a);Oa=h+48|0}function sp(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;c=Oa-16|0;Oa=c;f=H[b+80>>2];H[c+8>>2]=0;H[c>>2]=0;H[c+4>>2]=0;a:{if(!f){break a}Ll(c,f);while(1){b:{c:{d:{e:{f:{g:{h:{d=H[H[b+48>>2]+(g<<4)>>2];switch(J[d+4>>1]-5|0){case 11:break c;case 5:break d;case 7:break e;case 6:break f;case 1:break g;case 0:break h;default:break b}}if(H[d+40>>2]){break b}H[c+12>>2]=d;if(Ra[H[H[d>>2]+72>>2]](d)|0){break b}e=H[c+4>>2];if(e>>>0>=(H[c+8>>2]&2147483647)>>>0){Ml(c,c+12|0);break b}H[H[c>>2]+(e<<2)>>2]=d;H[c+4>>2]=e+1;break b}if(H[d+40>>2]){break b}H[c+12>>2]=d;if(Ra[H[H[d>>2]+72>>2]](d)|0){break b}e=H[c+4>>2];if(e>>>0>=(H[c+8>>2]&2147483647)>>>0){Ml(c,c+12|0);break b}H[H[c>>2]+(e<<2)>>2]=d;H[c+4>>2]=e+1;break b}if(Ra[H[H[d>>2]+96>>2]](d)|0){break b}Ra[H[H[a>>2]+36>>2]](a,d);break b}if(Ra[H[H[d>>2]+96>>2]](d)|0){break b}Ra[H[H[a>>2]+36>>2]](a,d);break b}Ra[H[H[a>>2]+64>>2]](a,d);break b}Ra[H[H[a>>2]+52>>2]](a,d)}g=g+1|0;if((g|0)!=(f|0)){continue}break}b=H[c+4>>2];if(!b){break a}dp(a,H[c>>2],b,0)}a=H[c+8>>2];i:{if((a|0)<0|!(a&2147483647)){break i}a=H[c>>2];if(!a){break i}b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,a)}Oa=c+16|0}function sB(a){a=a|0;var b=0,c=0;H[a>>2]=114452;iB(a+7664|0);H[a+16>>2]=0;H[a+20>>2]=0;b=a+16|0;F[b+7632|0]=1;if(I[b+7633|0]){b=H[a+24>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}H[a+24>>2]=0;b=H[a+28>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}H[a+28>>2]=0;b=H[a+32>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}H[a+32>>2]=0}b=H[a+36>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}H[a+36>>2]=0;b=H[a+40>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}H[a+652>>2]=0;H[a+656>>2]=0;H[a+40>>2]=0;H[a+44>>2]=0;b=H[a+640>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b);H[a+640>>2]=0}b=H[a+644>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b);H[a+644>>2]=0}b=H[a+636>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b);H[a+636>>2]=0}H[a+624>>2]=0;H[a+628>>2]=0;H[a+632>>2]=0;b=H[a+640>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b);H[a+640>>2]=0}b=H[a+644>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b);H[a+644>>2]=0}b=H[a+636>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b);H[a+636>>2]=0}H[a+632>>2]=0;H[a+624>>2]=0;H[a+628>>2]=0;return a|0}function ho(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;h=Oa-16|0;Oa=h;e=H[H[((J[a+4>>1]<<2)+73232|0)+72>>2]+a>>2];if(e){e=e-16|0}else{e=0}f=H[((J[a+4>>1]<<2)+73232|0)+72>>2];c=f+a|0;d=H[c+4>>2];g=d>>>24&15;i=I[(d&1?H[c+8>>2]:(H[((g<<2)+76348|0)+12>>2]+c|0)+8|0)|0];j=i&8;a:{if(!(b|!j)){Ra[H[H[a>>2]+128>>2]](a);b=H[((J[a+4>>1]<<2)+73232|0)+72>>2]+a|0;d=H[b+4>>2];g=d>>>24&15;f=H[((g<<2)+76348|0)+12>>2];c=i&247;b:{c:{d:{switch((d>>>30|0)-2|0){case 0:if(I[H[b>>2]+4785|0]){break c}break;case 1:break c;default:break d}}F[h|0]=c;RD(b+f|0,h);break b}d=H[b+8>>2];if(!d){d=Tt(H[b>>2],g);H[b+8>>2]=d}F[d|0]=c;$t(H[b>>2],b);H[b+4>>2]=H[b+4>>2]|1}if(!e|!H[a+16>>2]){break a}qg(a+12|0);break a}if(!b|j){break a}e:{if(!e){e=c+4|0;break e}pg(a+12|0);f=H[((J[a+4>>1]<<2)+73232|0)+72>>2];c=f+a|0;e=c+4|0;d=H[c+4>>2];g=d>>>24&15}b=a+f|0;f=i|8;i=H[((g<<2)+76348|0)+12>>2];f:{g:{h:{switch((d>>>30|0)-2|0){case 0:if(I[H[b>>2]+4785|0]){break g}break;case 1:break g;default:break h}}F[h+8|0]=f;RD(c+i|0,h+8|0);break f}c=H[b+8>>2];if(!c){c=Tt(H[b>>2],g);H[b+8>>2]=c}F[c|0]=f;$t(H[b>>2],b);H[e>>2]=H[e>>2]|1}Ra[H[H[a>>2]+124>>2]](a)}Oa=h+16|0}function Sn(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;h=Oa-16|0;Oa=h;e=H[H[((J[a+4>>1]<<2)+73232|0)+72>>2]+a>>2];if(e){e=e-16|0}else{e=0}f=H[((J[a+4>>1]<<2)+73232|0)+72>>2];c=f+a|0;d=H[c+4>>2];g=d>>>24&15;i=I[(d&1?H[c+8>>2]:(H[((g<<2)+76348|0)+12>>2]+c|0)+8|0)|0];j=i&8;a:{if(!(b|!j)){Ra[H[H[a>>2]+340>>2]](a);b=H[((J[a+4>>1]<<2)+73232|0)+72>>2]+a|0;d=H[b+4>>2];g=d>>>24&15;f=H[((g<<2)+76348|0)+12>>2];c=i&247;b:{c:{d:{switch((d>>>30|0)-2|0){case 0:if(I[H[b>>2]+4785|0]){break c}break;case 1:break c;default:break d}}F[h|0]=c;RD(b+f|0,h);break b}d=H[b+8>>2];if(!d){d=Tt(H[b>>2],g);H[b+8>>2]=d}F[d|0]=c;$t(H[b>>2],b);H[b+4>>2]=H[b+4>>2]|1}if(!e|!H[a+16>>2]){break a}qg(a+12|0);break a}if(!b|j){break a}e:{if(!e){e=c+4|0;break e}pg(a+12|0);f=H[((J[a+4>>1]<<2)+73232|0)+72>>2];c=f+a|0;e=c+4|0;d=H[c+4>>2];g=d>>>24&15}b=a+f|0;f=i|8;i=H[((g<<2)+76348|0)+12>>2];f:{g:{h:{switch((d>>>30|0)-2|0){case 0:if(I[H[b>>2]+4785|0]){break g}break;case 1:break g;default:break h}}F[h+8|0]=f;RD(c+i|0,h+8|0);break f}c=H[b+8>>2];if(!c){c=Tt(H[b>>2],g);H[b+8>>2]=c}F[c|0]=f;$t(H[b>>2],b);H[e>>2]=H[e>>2]|1}Ra[H[H[a>>2]+336>>2]](a)}Oa=h+16|0}function Gi(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;h=Oa-16|0;Oa=h;e=H[H[((J[a+4>>1]<<2)+73232|0)+72>>2]+a>>2];if(e){e=e-16|0}else{e=0}f=H[((J[a+4>>1]<<2)+73232|0)+72>>2];c=f+a|0;d=H[c+4>>2];g=d>>>24&15;i=I[(d&1?H[c+8>>2]:(H[((g<<2)+76348|0)+12>>2]+c|0)+8|0)|0];j=i&8;a:{if(!(b|!j)){Ra[H[H[a>>2]+292>>2]](a);b=H[((J[a+4>>1]<<2)+73232|0)+72>>2]+a|0;d=H[b+4>>2];g=d>>>24&15;f=H[((g<<2)+76348|0)+12>>2];c=i&247;b:{c:{d:{switch((d>>>30|0)-2|0){case 0:if(I[H[b>>2]+4785|0]){break c}break;case 1:break c;default:break d}}F[h|0]=c;RD(b+f|0,h);break b}d=H[b+8>>2];if(!d){d=Tt(H[b>>2],g);H[b+8>>2]=d}F[d|0]=c;$t(H[b>>2],b);H[b+4>>2]=H[b+4>>2]|1}if(!e|!H[a+16>>2]){break a}qg(a+12|0);break a}if(!b|j){break a}e:{if(!e){e=c+4|0;break e}pg(a+12|0);f=H[((J[a+4>>1]<<2)+73232|0)+72>>2];c=f+a|0;e=c+4|0;d=H[c+4>>2];g=d>>>24&15}b=a+f|0;f=i|8;i=H[((g<<2)+76348|0)+12>>2];f:{g:{h:{switch((d>>>30|0)-2|0){case 0:if(I[H[b>>2]+4785|0]){break g}break;case 1:break g;default:break h}}F[h+8|0]=f;RD(c+i|0,h+8|0);break f}c=H[b+8>>2];if(!c){c=Tt(H[b>>2],g);H[b+8>>2]=c}F[c|0]=f;$t(H[b>>2],b);H[e>>2]=H[e>>2]|1}Ra[H[H[a>>2]+288>>2]](a)}Oa=h+16|0}function kZ(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=O(0),h=O(0),i=O(0),j=0,k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0);l=L[b+4>>2];m=L[b>>2];n=L[b+8>>2];j=H[a+12>>2];a:{if(!j){g=O(3.4028234663852886e38);h=O(-3.4028234663852886e38);break a}g=O(O(L[c+8>>2]*n)+O(O(L[c>>2]*m)+O(L[c+4>>2]*l)));h=O(O(L[c+20>>2]*n)+O(O(L[c+12>>2]*m)+O(l*L[c+16>>2])));i=O(O(L[c+32>>2]*n)+O(O(L[c+24>>2]*m)+O(l*L[c+28>>2])));q=O(O(O(g*L[d+8>>2])+O(h*L[d+20>>2]))+O(i*L[d+32>>2]));k=O(O(O(g*L[d+4>>2])+O(h*L[d+16>>2]))+O(i*L[d+28>>2]));i=O(O(O(g*L[d>>2])+O(h*L[d+12>>2]))+O(i*L[d+24>>2]));d=H[a+28>>2];b:{if(!(j&1)){h=O(-3.4028234663852886e38);g=O(3.4028234663852886e38);b=j;break b}g=O(O(L[d+8>>2]*q)+O(O(L[d>>2]*i)+O(k*L[d+4>>2])));h=O(S(g,O(-3.4028234663852886e38)));g=O(R(g,O(3.4028234663852886e38)));d=d+12|0;b=j-1|0}if((j|0)==1){break a}while(1){o=O(O(L[d+8>>2]*q)+O(O(L[d>>2]*i)+O(k*L[d+4>>2])));h=h>o?h:o;p=O(O(L[d+20>>2]*q)+O(O(L[d+12>>2]*i)+O(k*L[d+16>>2])));h=h>p?h:p;g=g>2]*n)+O(O(L[c+36>>2]*m)+O(l*L[c+40>>2])));L[e>>2]=k+g;L[f>>2]=h+g}function HF(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,o=0,p=0;g=Oa-16|0;Oa=g;c=H[a+284>>2];if(c){b=H[33808];d=Ra[H[H[b>>2]+20>>2]](b)|0?41318:55639;f=Ra[H[H[b+12>>2]+8>>2]](b+12|0,c,d,15259,180)|0}else{f=0}H[g+12>>2]=f;b=H[a+268>>2];a:{if(b>>>0>=(H[a+272>>2]&2147483647)>>>0){d=a+4|0;c=H[d+268>>2]&2147483647;h=c?c<<1:1;b=0;b:{if(!h){break b}c=h<<2;if(!(I[d+256|0]|c>>>0>256)){F[d+256|0]=1;b=d;break b}b=0;if(!c){break b}b=H[33808];e=b+12|0;b=(l=e,m=c,n=Ra[H[H[b>>2]+20>>2]](b)|0?41318:55639,o=13582,p=553,k=H[H[e>>2]+8>>2],Ra[k](l|0,m|0,n|0,o|0,p|0)|0)}c=b;e=H[d+264>>2];j=b+(e<<2)|0;if((e|0)>0){i=H[d+260>>2];while(1){H[b>>2]=H[i>>2];i=i+4|0;b=b+4|0;if(j>>>0>b>>>0){continue}break}}H[j>>2]=H[g+12>>2];c:{if(H[d+268>>2]<0){break c}b=H[d+260>>2];if((b|0)==(d|0)){F[d+256|0]=0;break c}if(!b){break c}e=H[33808]+12|0;Ra[H[H[e>>2]+12>>2]](e,b);e=H[d+264>>2]}H[d+268>>2]=h;H[d+260>>2]=c;H[d+264>>2]=e+1;break a}H[H[a+264>>2]+(b<<2)>>2]=f;H[a+268>>2]=b+1}c=((H[a+276>>2]<<6)+f|0)+-64|0;if(f>>>0<=c>>>0){b=H[a+288>>2];while(1){H[c>>2]=b;b=c;c=b+-64|0;if(f>>>0<=c>>>0){continue}break}H[a+288>>2]=b}Oa=g+16|0}function yI(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,o=0,p=0;g=Oa-16|0;Oa=g;c=H[a+284>>2];if(c){b=H[33808];d=Ra[H[H[b>>2]+20>>2]](b)|0?23420:55639;f=Ra[H[H[b+12>>2]+8>>2]](b+12|0,c,d,15259,180)|0}else{f=0}H[g+12>>2]=f;b=H[a+268>>2];a:{if(b>>>0>=(H[a+272>>2]&2147483647)>>>0){d=a+4|0;c=H[d+268>>2]&2147483647;h=c?c<<1:1;b=0;b:{if(!h){break b}c=h<<2;if(!(I[d+256|0]|c>>>0>256)){F[d+256|0]=1;b=d;break b}b=0;if(!c){break b}b=H[33808];e=b+12|0;b=(l=e,m=c,n=Ra[H[H[b>>2]+20>>2]](b)|0?23420:55639,o=13582,p=553,k=H[H[e>>2]+8>>2],Ra[k](l|0,m|0,n|0,o|0,p|0)|0)}c=b;e=H[d+264>>2];j=b+(e<<2)|0;if((e|0)>0){i=H[d+260>>2];while(1){H[b>>2]=H[i>>2];i=i+4|0;b=b+4|0;if(j>>>0>b>>>0){continue}break}}H[j>>2]=H[g+12>>2];c:{if(H[d+268>>2]<0){break c}b=H[d+260>>2];if((b|0)==(d|0)){F[d+256|0]=0;break c}if(!b){break c}e=H[33808]+12|0;Ra[H[H[e>>2]+12>>2]](e,b);e=H[d+264>>2]}H[d+268>>2]=h;H[d+260>>2]=c;H[d+264>>2]=e+1;break a}H[H[a+264>>2]+(b<<2)>>2]=f;H[a+268>>2]=b+1}c=(N(H[a+276>>2],20)+f|0)-20|0;if(f>>>0<=c>>>0){b=H[a+288>>2];while(1){H[c>>2]=b;b=c;c=b-20|0;if(f>>>0<=c>>>0){continue}break}H[a+288>>2]=b}Oa=g+16|0}function vI(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,o=0,p=0;g=Oa-16|0;Oa=g;c=H[a+284>>2];if(c){b=H[33808];d=Ra[H[H[b>>2]+20>>2]](b)|0?32518:55639;f=Ra[H[H[b+12>>2]+8>>2]](b+12|0,c,d,15259,180)|0}else{f=0}H[g+12>>2]=f;b=H[a+268>>2];a:{if(b>>>0>=(H[a+272>>2]&2147483647)>>>0){d=a+4|0;c=H[d+268>>2]&2147483647;h=c?c<<1:1;b=0;b:{if(!h){break b}c=h<<2;if(!(I[d+256|0]|c>>>0>256)){F[d+256|0]=1;b=d;break b}b=0;if(!c){break b}b=H[33808];e=b+12|0;b=(l=e,m=c,n=Ra[H[H[b>>2]+20>>2]](b)|0?32518:55639,o=13582,p=553,k=H[H[e>>2]+8>>2],Ra[k](l|0,m|0,n|0,o|0,p|0)|0)}c=b;e=H[d+264>>2];j=b+(e<<2)|0;if((e|0)>0){i=H[d+260>>2];while(1){H[b>>2]=H[i>>2];i=i+4|0;b=b+4|0;if(j>>>0>b>>>0){continue}break}}H[j>>2]=H[g+12>>2];c:{if(H[d+268>>2]<0){break c}b=H[d+260>>2];if((b|0)==(d|0)){F[d+256|0]=0;break c}if(!b){break c}e=H[33808]+12|0;Ra[H[H[e>>2]+12>>2]](e,b);e=H[d+264>>2]}H[d+268>>2]=h;H[d+260>>2]=c;H[d+264>>2]=e+1;break a}H[H[a+264>>2]+(b<<2)>>2]=f;H[a+268>>2]=b+1}c=(N(H[a+276>>2],68)+f|0)-68|0;if(f>>>0<=c>>>0){b=H[a+288>>2];while(1){H[c>>2]=b;b=c;c=b-68|0;if(f>>>0<=c>>>0){continue}break}H[a+288>>2]=b}Oa=g+16|0}function tI(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,o=0,p=0;g=Oa-16|0;Oa=g;c=H[a+284>>2];if(c){b=H[33808];d=Ra[H[H[b>>2]+20>>2]](b)|0?28806:55639;f=Ra[H[H[b+12>>2]+8>>2]](b+12|0,c,d,15259,180)|0}else{f=0}H[g+12>>2]=f;b=H[a+268>>2];a:{if(b>>>0>=(H[a+272>>2]&2147483647)>>>0){d=a+4|0;c=H[d+268>>2]&2147483647;h=c?c<<1:1;b=0;b:{if(!h){break b}c=h<<2;if(!(I[d+256|0]|c>>>0>256)){F[d+256|0]=1;b=d;break b}b=0;if(!c){break b}b=H[33808];e=b+12|0;b=(l=e,m=c,n=Ra[H[H[b>>2]+20>>2]](b)|0?28806:55639,o=13582,p=553,k=H[H[e>>2]+8>>2],Ra[k](l|0,m|0,n|0,o|0,p|0)|0)}c=b;e=H[d+264>>2];j=b+(e<<2)|0;if((e|0)>0){i=H[d+260>>2];while(1){H[b>>2]=H[i>>2];i=i+4|0;b=b+4|0;if(j>>>0>b>>>0){continue}break}}H[j>>2]=H[g+12>>2];c:{if(H[d+268>>2]<0){break c}b=H[d+260>>2];if((b|0)==(d|0)){F[d+256|0]=0;break c}if(!b){break c}e=H[33808]+12|0;Ra[H[H[e>>2]+12>>2]](e,b);e=H[d+264>>2]}H[d+268>>2]=h;H[d+260>>2]=c;H[d+264>>2]=e+1;break a}H[H[a+264>>2]+(b<<2)>>2]=f;H[a+268>>2]=b+1}c=(N(H[a+276>>2],40)+f|0)-40|0;if(f>>>0<=c>>>0){b=H[a+288>>2];while(1){H[c>>2]=b;b=c;c=b-40|0;if(f>>>0<=c>>>0){continue}break}H[a+288>>2]=b}Oa=g+16|0}function sI(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,o=0,p=0;g=Oa-16|0;Oa=g;c=H[a+284>>2];if(c){b=H[33808];d=Ra[H[H[b>>2]+20>>2]](b)|0?32386:55639;f=Ra[H[H[b+12>>2]+8>>2]](b+12|0,c,d,15259,180)|0}else{f=0}H[g+12>>2]=f;b=H[a+268>>2];a:{if(b>>>0>=(H[a+272>>2]&2147483647)>>>0){d=a+4|0;c=H[d+268>>2]&2147483647;h=c?c<<1:1;b=0;b:{if(!h){break b}c=h<<2;if(!(I[d+256|0]|c>>>0>256)){F[d+256|0]=1;b=d;break b}b=0;if(!c){break b}b=H[33808];e=b+12|0;b=(l=e,m=c,n=Ra[H[H[b>>2]+20>>2]](b)|0?32386:55639,o=13582,p=553,k=H[H[e>>2]+8>>2],Ra[k](l|0,m|0,n|0,o|0,p|0)|0)}c=b;e=H[d+264>>2];j=b+(e<<2)|0;if((e|0)>0){i=H[d+260>>2];while(1){H[b>>2]=H[i>>2];i=i+4|0;b=b+4|0;if(j>>>0>b>>>0){continue}break}}H[j>>2]=H[g+12>>2];c:{if(H[d+268>>2]<0){break c}b=H[d+260>>2];if((b|0)==(d|0)){F[d+256|0]=0;break c}if(!b){break c}e=H[33808]+12|0;Ra[H[H[e>>2]+12>>2]](e,b);e=H[d+264>>2]}H[d+268>>2]=h;H[d+260>>2]=c;H[d+264>>2]=e+1;break a}H[H[a+264>>2]+(b<<2)>>2]=f;H[a+268>>2]=b+1}c=(N(H[a+276>>2],60)+f|0)-60|0;if(f>>>0<=c>>>0){b=H[a+288>>2];while(1){H[c>>2]=b;b=c;c=b-60|0;if(f>>>0<=c>>>0){continue}break}H[a+288>>2]=b}Oa=g+16|0}function NB(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,o=0,p=0;g=Oa-16|0;Oa=g;c=H[a+284>>2];if(c){b=H[33808];d=Ra[H[H[b>>2]+20>>2]](b)|0?26442:55639;f=Ra[H[H[b+12>>2]+8>>2]](b+12|0,c,d,15259,180)|0}else{f=0}H[g+12>>2]=f;b=H[a+268>>2];a:{if(b>>>0>=(H[a+272>>2]&2147483647)>>>0){d=a+4|0;c=H[d+268>>2]&2147483647;h=c?c<<1:1;b=0;b:{if(!h){break b}c=h<<2;if(!(I[d+256|0]|c>>>0>256)){F[d+256|0]=1;b=d;break b}b=0;if(!c){break b}b=H[33808];e=b+12|0;b=(l=e,m=c,n=Ra[H[H[b>>2]+20>>2]](b)|0?26442:55639,o=13582,p=553,k=H[H[e>>2]+8>>2],Ra[k](l|0,m|0,n|0,o|0,p|0)|0)}c=b;e=H[d+264>>2];j=b+(e<<2)|0;if((e|0)>0){i=H[d+260>>2];while(1){H[b>>2]=H[i>>2];i=i+4|0;b=b+4|0;if(j>>>0>b>>>0){continue}break}}H[j>>2]=H[g+12>>2];c:{if(H[d+268>>2]<0){break c}b=H[d+260>>2];if((b|0)==(d|0)){F[d+256|0]=0;break c}if(!b){break c}e=H[33808]+12|0;Ra[H[H[e>>2]+12>>2]](e,b);e=H[d+264>>2]}H[d+268>>2]=h;H[d+260>>2]=c;H[d+264>>2]=e+1;break a}H[H[a+264>>2]+(b<<2)>>2]=f;H[a+268>>2]=b+1}c=(N(H[a+276>>2],20)+f|0)-20|0;if(f>>>0<=c>>>0){b=H[a+288>>2];while(1){H[c>>2]=b;b=c;c=b-20|0;if(f>>>0<=c>>>0){continue}break}H[a+288>>2]=b}Oa=g+16|0}function MB(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,o=0,p=0;g=Oa-16|0;Oa=g;c=H[a+284>>2];if(c){b=H[33808];d=Ra[H[H[b>>2]+20>>2]](b)|0?27928:55639;f=Ra[H[H[b+12>>2]+8>>2]](b+12|0,c,d,15259,180)|0}else{f=0}H[g+12>>2]=f;b=H[a+268>>2];a:{if(b>>>0>=(H[a+272>>2]&2147483647)>>>0){d=a+4|0;c=H[d+268>>2]&2147483647;h=c?c<<1:1;b=0;b:{if(!h){break b}c=h<<2;if(!(I[d+256|0]|c>>>0>256)){F[d+256|0]=1;b=d;break b}b=0;if(!c){break b}b=H[33808];e=b+12|0;b=(l=e,m=c,n=Ra[H[H[b>>2]+20>>2]](b)|0?27928:55639,o=13582,p=553,k=H[H[e>>2]+8>>2],Ra[k](l|0,m|0,n|0,o|0,p|0)|0)}c=b;e=H[d+264>>2];j=b+(e<<2)|0;if((e|0)>0){i=H[d+260>>2];while(1){H[b>>2]=H[i>>2];i=i+4|0;b=b+4|0;if(j>>>0>b>>>0){continue}break}}H[j>>2]=H[g+12>>2];c:{if(H[d+268>>2]<0){break c}b=H[d+260>>2];if((b|0)==(d|0)){F[d+256|0]=0;break c}if(!b){break c}e=H[33808]+12|0;Ra[H[H[e>>2]+12>>2]](e,b);e=H[d+264>>2]}H[d+268>>2]=h;H[d+260>>2]=c;H[d+264>>2]=e+1;break a}H[H[a+264>>2]+(b<<2)>>2]=f;H[a+268>>2]=b+1}c=(N(H[a+276>>2],96)+f|0)-96|0;if(f>>>0<=c>>>0){b=H[a+288>>2];while(1){H[c>>2]=b;b=c;c=b-96|0;if(f>>>0<=c>>>0){continue}break}H[a+288>>2]=b}Oa=g+16|0}function FG(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,o=0,p=0;g=Oa-16|0;Oa=g;c=H[a+284>>2];if(c){b=H[33808];d=Ra[H[H[b>>2]+20>>2]](b)|0?39038:55639;f=Ra[H[H[b+12>>2]+8>>2]](b+12|0,c,d,15259,180)|0}else{f=0}H[g+12>>2]=f;b=H[a+268>>2];a:{if(b>>>0>=(H[a+272>>2]&2147483647)>>>0){d=a+4|0;c=H[d+268>>2]&2147483647;h=c?c<<1:1;b=0;b:{if(!h){break b}c=h<<2;if(!(I[d+256|0]|c>>>0>256)){F[d+256|0]=1;b=d;break b}b=0;if(!c){break b}b=H[33808];e=b+12|0;b=(l=e,m=c,n=Ra[H[H[b>>2]+20>>2]](b)|0?39038:55639,o=13582,p=553,k=H[H[e>>2]+8>>2],Ra[k](l|0,m|0,n|0,o|0,p|0)|0)}c=b;e=H[d+264>>2];j=b+(e<<2)|0;if((e|0)>0){i=H[d+260>>2];while(1){H[b>>2]=H[i>>2];i=i+4|0;b=b+4|0;if(j>>>0>b>>>0){continue}break}}H[j>>2]=H[g+12>>2];c:{if(H[d+268>>2]<0){break c}b=H[d+260>>2];if((b|0)==(d|0)){F[d+256|0]=0;break c}if(!b){break c}e=H[33808]+12|0;Ra[H[H[e>>2]+12>>2]](e,b);e=H[d+264>>2]}H[d+268>>2]=h;H[d+260>>2]=c;H[d+264>>2]=e+1;break a}H[H[a+264>>2]+(b<<2)>>2]=f;H[a+268>>2]=b+1}c=(N(H[a+276>>2],48)+f|0)-48|0;if(f>>>0<=c>>>0){b=H[a+288>>2];while(1){H[c>>2]=b;b=c;c=b-48|0;if(f>>>0<=c>>>0){continue}break}H[a+288>>2]=b}Oa=g+16|0}function iZ(a,b,c){a=a|0;b=b|0;c=c|0;var d=O(0),e=O(0),f=0,g=O(0),h=0,i=0,j=0,k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=0;h=H[a+24>>2];e=L[c>>2];g=L[c+4>>2];d=L[c+8>>2];l=O(O(O(e*L[b+8>>2])+O(g*L[b+20>>2]))+O(d*L[b+32>>2]));m=O(O(O(e*L[b>>2])+O(g*L[b+12>>2]))+O(d*L[b+24>>2]));g=O(O(O(e*L[b+4>>2])+O(g*L[b+16>>2]))+O(d*L[b+28>>2]));e=O(O(L[h+8>>2]*l)+O(O(L[h>>2]*m)+O(g*L[h+4>>2])));c=0;i=H[a+16>>2];if(i>>>0>=2){b=1;while(1){f=N(b,20)+h|0;d=O(O(L[f+8>>2]*l)+O(O(L[f>>2]*m)+O(g*L[f+4>>2])));f=d>e;e=f?d:e;c=f?b:c;b=b+1|0;if((i|0)!=(b|0)){continue}break}}p=H[a+20>>2];a:{if(!p){break a}f=H[a+36>>2];e=O(e*e);b=0;a=-1;while(1){j=f+(b<<1)|0;i=N(I[j|0],20)+h|0;j=N(I[j+1|0],20)+h|0;d=O(L[i+8>>2]+L[j+8>>2]);k=O(L[i>>2]+L[j>>2]);n=O(L[i+4>>2]+L[j+4>>2]);o=O(O(d*l)+O(O(k*m)+O(g*n)));b:{if(!(o>=O(0))){break b}d=O(O(d*d)+O(O(k*k)+O(n*n)));k=O(o*o);if(!(O(e*d)>2]*l)+O(O(L[b>>2]*m)+O(g*L[b+4>>2])))>O(O(L[a+8>>2]*l)+O(O(L[a>>2]*m)+O(g*L[a+4>>2])))?f:c}return c|0}function QG(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,o=0,p=0;g=Oa-16|0;Oa=g;c=H[a+284>>2];if(c){b=H[33808];d=Ra[H[H[b>>2]+20>>2]](b)|0?32248:55639;f=Ra[H[H[b+12>>2]+8>>2]](b+12|0,c,d,15259,180)|0}else{f=0}H[g+12>>2]=f;b=H[a+268>>2];a:{if(b>>>0>=(H[a+272>>2]&2147483647)>>>0){d=a+4|0;c=H[d+268>>2]&2147483647;h=c?c<<1:1;b=0;b:{if(!h){break b}c=h<<2;if(!(I[d+256|0]|c>>>0>256)){F[d+256|0]=1;b=d;break b}b=0;if(!c){break b}b=H[33808];e=b+12|0;b=(l=e,m=c,n=Ra[H[H[b>>2]+20>>2]](b)|0?32248:55639,o=13582,p=553,k=H[H[e>>2]+8>>2],Ra[k](l|0,m|0,n|0,o|0,p|0)|0)}c=b;e=H[d+264>>2];j=b+(e<<2)|0;if((e|0)>0){i=H[d+260>>2];while(1){H[b>>2]=H[i>>2];i=i+4|0;b=b+4|0;if(j>>>0>b>>>0){continue}break}}H[j>>2]=H[g+12>>2];c:{if(H[d+268>>2]<0){break c}b=H[d+260>>2];if((b|0)==(d|0)){F[d+256|0]=0;break c}if(!b){break c}e=H[33808]+12|0;Ra[H[H[e>>2]+12>>2]](e,b);e=H[d+264>>2]}H[d+268>>2]=h;H[d+260>>2]=c;H[d+264>>2]=e+1;break a}H[H[a+264>>2]+(b<<2)>>2]=f;H[a+268>>2]=b+1}c=((H[a+276>>2]<<5)+f|0)-32|0;if(f>>>0<=c>>>0){b=H[a+288>>2];while(1){H[c>>2]=b;b=c;c=b-32|0;if(f>>>0<=c>>>0){continue}break}H[a+288>>2]=b}Oa=g+16|0}function UL(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=O(0),l=0,m=0,n=0,o=0,p=0,q=0,r=0;e=Oa-16|0;Oa=e;f=H[a+52>>2];a:{if(f>>>0>=513){while(1){b=yq(H[H[a+72>>2]+620>>2],80);i=H[a+64>>2];j=H[a+68>>2];k=L[a+60>>2];l=H[a+56>>2];m=H[a+48>>2];n=H[a+44>>2];o=H[a+40>>2];p=H[a+36>>2];q=H[a+32>>2];r=H[a+28>>2];h=H[a+72>>2];g=H[h+632>>2];c=H[h+636>>2];H[b+24>>2]=0;H[b+16>>2]=0;H[b+20>>2]=0;H[b+8>>2]=g;H[b+12>>2]=c;H[b>>2]=117852;g=d<<2;H[b+28>>2]=g+r;H[b+32>>2]=g+q;c=d<<6;H[b+36>>2]=c+p;H[b+40>>2]=c+o;H[b+44>>2]=N(d,48)+n;H[b+48>>2]=g+m;c=f-d|0;H[b+52>>2]=c>>>0<512?c:512;H[b+56>>2]=l;L[b+60>>2]=k;H[b+64>>2]=i;H[b+68>>2]=j;H[b+72>>2]=h;c=H[a+20>>2];H[b+24>>2]=1;H[b+20>>2]=c;if(c){Ra[H[H[c>>2]+16>>2]](c);H[b+16>>2]=H[H[b+20>>2]+16>>2];c=H[b>>2]}else{c=117852}Ra[H[c+20>>2]](b);f=H[a+52>>2];d=d+512|0;if(f>>>0>d>>>0){continue}break}break a}H[e+12>>2]=0;H[e+8>>2]=0;EL(H[a+28>>2],H[a+32>>2],H[a+36>>2],H[a+40>>2],H[a+44>>2],H[a+48>>2],f,H[a+56>>2],L[a+60>>2],e+12|0,e+8|0);b=H[a+64>>2];c=H[b>>2];d=b;b=H[e+12>>2];H[d>>2]=(b|0)>(c|0)?b:c;a=H[a+68>>2];b=H[a>>2];d=a;a=H[e+8>>2];H[d>>2]=(a|0)>(b|0)?a:b}Oa=e+16|0}function mW(a,b){var c=O(0),d=O(0),e=O(0),f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0);c=L[a+16>>2];d=L[a+20>>2];f=L[a+4>>2];e=L[a+8>>2];L[b+36>>2]=O(L[a>>2]+L[a+12>>2])*O(.5);L[b+44>>2]=O(e+d)*O(.5);L[b+40>>2]=O(f+c)*O(.5);d=L[a+20>>2];f=L[a+16>>2];e=L[a+8>>2];h=L[a+12>>2];g=L[a>>2];i=L[a+4>>2];c=L[a+24>>2];L[b+56>>2]=c;L[b+52>>2]=c;j=c;c=O(e-d);d=O(c*c);c=O(g-h);g=O(c*c);c=O(i-f);k=O(W(O(d+O(g+O(c*c)))));L[b+48>>2]=j+O(k*O(.5));e=O(0);h=O(1);c=O(0);d=O(0);j=O(1);g=O(0);f=O(0);i=O(1);a:{if(k==O(0)){break a}c=O(L[a+20>>2]-L[a+8>>2]);h=O(L[a+12>>2]-L[a>>2]);e=O(L[a+16>>2]-L[a+4>>2]);d=O(W(O(O(c*c)+O(O(h*h)+O(e*e)))));if(d>O(0)){d=O(O(1)/d);c=O(c*d);h=O(h*d);e=O(e*d)}if(O(P(e))<=O(.9998999834060669)){j=O(0);f=O(-h);g=f;d=c;i=O(W(O(O(h*h)+O(O(c*c)+O(0)))));if(i>O(0)){d=O(O(1)/i);g=O(d*f);j=O(d*O(0));d=O(c*d)}f=O(O(c*d)+O(g*f));l=O(e*g);i=O(d*O(-e));break a}j=O(0);i=O(-e);d=O(1);f=O(W(O(O(e*e)+O(O(c*c)+O(0)))));if(!(f>O(0))){f=c;break a}g=O(O(1)/f);i=O(g*i);f=O(c*g);l=O(g*O(0));g=O(0)}L[b+24>>2]=l;L[b+12>>2]=d;L[b+8>>2]=c;L[b+4>>2]=e;L[b>>2]=h;L[b+32>>2]=i;L[b+28>>2]=f;L[b+20>>2]=g;L[b+16>>2]=j}function Zn(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=O(0),f=0,g=O(0),h=O(0),i=O(0),j=O(0),k=0,l=0,m=O(0),n=O(0);c=Oa-32|0;Oa=c;d=vg(a);g=L[b+12>>2];h=L[b+8>>2];i=L[b>>2];j=L[b+4>>2];e=O(O(1)/O(W(O(O(g*g)+O(O(h*h)+O(O(i*i)+O(j*j)))))));g=O(g*e);L[c+12>>2]=g;h=O(h*e);L[c+8>>2]=h;j=O(j*e);L[c+4>>2]=j;e=O(i*e);L[c>>2]=e;i=L[b+16>>2];L[c+16>>2]=i;m=L[b+20>>2];L[c+20>>2]=m;n=L[b+24>>2];L[c+24>>2]=n;k=a+48|0;a:{b:{c:{d:{f=H[a+52>>2];switch((f>>>30|0)-2|0){case 1:break b;case 0:break d;default:break c}}if(I[H[k>>2]+4785|0]){break b}}lR(a- -64|0,c);break a}b=H[a+56>>2];if(!b){b=Tt(H[a+48>>2],f>>>24&15);H[a+56>>2]=b}L[b+120>>2]=n;L[b+116>>2]=m;L[b+112>>2]=i;L[b+108>>2]=g;L[b+104>>2]=h;L[b+100>>2]=j;L[b+96>>2]=e;$t(H[a+48>>2],k);H[a+52>>2]=H[a+52>>2]|64}if(d){pt(a+20|0,d+5584|0,a);b=d+5616|0;H[b>>2]=H[b>>2]+1}if(H[a+40>>2]){o5(H[33808],8,10152,101,63681,0);fB(H[a+40>>2],a)}b=0;d=H[a+16>>2];e:{if(!d){k=0;d=0;break e}k=H[d+40>>2];d=H[d+36>>2]}while(1){f=b>>>0>k>>>0?b:k;f:{while(1){if((b|0)==(f|0)){break f}l=b<<3;b=b+1|0;l=d+l|0;if(I[l|0]){continue}break}f=H[l+4>>2];if(!f){break f}Gf(f,a);continue}break}Oa=c+32|0}function kI(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;g=Oa-16|0;Oa=g;c=H[b+28>>2];b=H[b+32>>2];d=c>>>0>b>>>0;H[g+12>>2]=d?c:b;H[g+8>>2]=d?b:c;a=a+1956|0;a:{if(!H[a+36>>2]){break a}e=H[g+12>>2];f=H[g+8>>2];b=e<<14&-65536|f>>>2&65535;b=(b<<15^-1)+b|0;b=N(b>>>10^b,9);b=b>>>6^b;b=(b<<11^-1)+b|0;c=H[a+12>>2]+((H[a+20>>2]-1&(b>>>16^b))<<2)|0;b=H[c>>2];if((b|0)==-1){break a}h=H[a+8>>2];d=H[a+4>>2];i=d+N(b,12)|0;if(!((f|0)==H[i>>2]&(e|0)==H[i+4>>2])){while(1){c=h+(b<<2)|0;b=H[c>>2];if((b|0)==-1){break a}i=d+N(b,12)|0;if((f|0)!=H[i>>2]|(e|0)!=H[i+4>>2]){continue}break}}f=b<<2;H[c>>2]=H[f+h>>2];c=H[a+36>>2]-1|0;H[a+36>>2]=c;H[a+32>>2]=H[a+32>>2]+1;if((b|0)!=(c|0)){h=N(b,12);e=h+d|0;c=d+N(c,12)|0;d=H[c+4>>2];H[e>>2]=H[c>>2];H[e+4>>2]=d;H[e+8>>2]=H[c+8>>2];d=H[a+8>>2];H[d+f>>2]=H[d+(H[a+36>>2]<<2)>>2];c=h+H[a+4>>2]|0;c=H[c+4>>2]<<14&-65536|H[c>>2]>>>2&65535;c=(c<<15^-1)+c|0;c=N(c>>>10^c,9);c=c>>>6^c;c=(c<<11^-1)+c|0;c=H[a+12>>2]+((H[a+20>>2]-1&(c>>>16^c))<<2)|0;e=H[c>>2];f=H[a+36>>2];if((e|0)!=(f|0)){while(1){c=d+(e<<2)|0;e=H[c>>2];if((f|0)!=(e|0)){continue}break}}H[c>>2]=b}H[a+28>>2]=H[a+28>>2]-1}Oa=g+16|0}function xY(a,b,c,d,e,f,g,h,i){var j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=0,t=0,u=O(0),v=O(0),w=O(0),x=O(0),y=O(0);n=O(-3.4028234663852886e38);j=O(3.4028234663852886e38);a:{if(!f){l=O(3.4028234663852886e38);m=O(-3.4028234663852886e38);break a}u=L[i+20>>2];v=L[i+16>>2];w=L[i+12>>2];x=L[i+8>>2];y=L[i+4>>2];l=L[i>>2];i=0;o=O(3.4028234663852886e38);m=O(-3.4028234663852886e38);while(1){t=(i<<3)+e|0;s=N(I[h+i|0],12)+g|0;q=L[s+8>>2];r=L[s>>2];k=L[s+4>>2];p=O(O(u*q)+O(O(w*r)+O(k*v)));L[t+4>>2]=p;k=O(O(x*q)+O(O(l*r)+O(y*k)));L[t>>2]=k;m=m>p?m:p;n=k>2];L[g>>2]=O(j-l)+(O(j-r)>=O(0)?O(9.999999974752427e-7):O(-9.999999974752427e-7));j=L[g+4>>2];L[g+4>>2]=O(j-k)+(O(j-q)>=O(0)?O(9.999999974752427e-7):O(-9.999999974752427e-7));i=i+1|0;if((i|0)!=(f|0)){continue}break}j=k}L[a>>2]=l;L[b>>2]=j;L[c>>2]=O(n+O(9.999999974752427e-7))-l;L[d>>2]=O(m+O(9.999999974752427e-7))-j}function TX(a,b,c){a=a|0;b=b|0;c=c|0;var d=O(0),e=0,f=O(0),g=O(0),h=0,i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),F=O(0),G=O(0),I=O(0),J=O(0),K=O(0),M=O(0),N=O(0),P=O(0),Q=O(0);e=H[b+8>>2];t=L[e+52>>2];u=L[e+36>>2];v=L[e+20>>2];i=L[e+56>>2];w=L[e+40>>2];x=L[e+24>>2];h=H[b+4>>2];j=L[h+72>>2];k=L[h- -64>>2];l=L[h+68>>2];m=L[h+56>>2];n=L[h+52>>2];o=L[h+88>>2];y=L[b+56>>2];z=L[b+24>>2];A=L[b+40>>2];p=L[h+80>>2];B=L[b+48>>2];C=L[b+32>>2];q=L[h+84>>2];D=L[b+52>>2];E=L[b+20>>2];F=L[b+36>>2];G=L[e+48>>2];I=L[e+32>>2];J=L[e>>2];K=L[e+16>>2];M=L[e+4>>2];N=L[e+8>>2];r=L[h+48>>2];P=L[b+16>>2];d=L[c+8>>2];f=L[c>>2];g=L[c+4>>2];H[a+12>>2]=0;Q=i;s=j;j=O(O(y*d)+O(O(z*f)+O(g*A)));i=O(O(B*d)+O(O(P*f)+O(g*C)));d=O(O(D*d)+O(O(E*f)+O(g*F)));f=O(O(s*j)+O(O(k*i)+O(l*d)));g=O(O(o*j)+O(O(p*i)+O(d*q)));b=f>g;d=O(O(m*j)+O(O(r*i)+O(d*n)));c=!(d>f)|!(d>g);d=c?b?s:o:m;f=c?b?k:p:r;g=c?b?l:q:n;L[a+8>>2]=Q+O(O(w*d)+O(O(N*f)+O(x*g)));L[a+4>>2]=t+O(O(u*d)+O(O(M*f)+O(g*v)));L[a>>2]=G+O(O(I*d)+O(O(J*f)+O(g*K)))}function R6(a,b,c){var d=0,e=0,f=0;if(c>>>0>=512){Ka(a|0,b|0,c|0)|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){F[c|0]=I[b|0];b=b+1|0;c=c+1|0;if(!(c&3)){break b}if(c>>>0>>0){continue}break}}d=e&-4;c:{if(d>>>0<64){break c}f=d+-64|0;if(f>>>0>>0){break c}while(1){H[c>>2]=H[b>>2];H[c+4>>2]=H[b+4>>2];H[c+8>>2]=H[b+8>>2];H[c+12>>2]=H[b+12>>2];H[c+16>>2]=H[b+16>>2];H[c+20>>2]=H[b+20>>2];H[c+24>>2]=H[b+24>>2];H[c+28>>2]=H[b+28>>2];H[c+32>>2]=H[b+32>>2];H[c+36>>2]=H[b+36>>2];H[c+40>>2]=H[b+40>>2];H[c+44>>2]=H[b+44>>2];H[c+48>>2]=H[b+48>>2];H[c+52>>2]=H[b+52>>2];H[c+56>>2]=H[b+56>>2];H[c+60>>2]=H[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){H[c>>2]=H[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>>0){c=a;break a}c=a;while(1){F[c|0]=I[b|0];F[c+1|0]=I[b+1|0];F[c+2|0]=I[b+2|0];F[c+3|0]=I[b+3|0];b=b+4|0;c=c+4|0;if(d>>>0>=c>>>0){continue}break}}if(c>>>0>>0){while(1){F[c|0]=I[b|0];b=b+1|0;c=c+1|0;if((e|0)!=(c|0)){continue}break}}return a}function Ow(a,b){var c=O(0),d=O(0),e=O(0),f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=0,n=O(0),o=0,p=0,q=O(0),r=0,s=0,t=0,u=O(0);p=H[a+336>>2];if(p){r=H[a+332>>2];s=H[b+12>>2];t=H[b+4>>2];while(1){a=o<<5;b=H[(a+r|0)+16>>2];f=L[b+112>>2];g=L[b+120>>2];q=L[b+116>>2];h=L[b+4>>2];m=a+t|0;l=L[m+4>>2];i=L[b+12>>2];j=L[b+8>>2];e=L[m>>2];k=L[b>>2];d=L[m+8>>2];n=L[m+24>>2];u=L[m+20>>2];a=a+s|0;c=L[b+124>>2];c=c==O(0)?O(0):O(O(1)/c);L[a>>2]=O(c*L[m+16>>2])+L[a>>2];L[a+4>>2]=O(c*u)+L[a+4>>2];L[a+8>>2]=O(c*n)+L[a+8>>2];c=g==O(0)?O(0):O(O(1)/g);d=O(d+d);e=O(e+e);l=O(l+l);n=O(O(j*d)+O(O(k*e)+O(h*l)));g=O(O(i*i)+O(-.5));c=O(c*O(O(j*n)+O(O(d*g)-O(i*O(O(k*l)-O(e*h))))));c=O(c+c);f=O((f==O(0)?O(0):O(O(1)/f))*O(O(k*n)+O(O(e*g)-O(i*O(O(h*d)-O(l*j))))));f=O(f+f);d=O((q==O(0)?O(0):O(O(1)/q))*O(O(h*n)+O(O(l*g)-O(i*O(O(j*e)-O(d*k))))));d=O(d+d);e=O(O(j*c)+O(O(k*f)+O(h*d)));L[a+16>>2]=L[a+16>>2]+O(O(k*e)+O(O(f*g)+O(i*O(O(h*c)-O(d*j)))));L[a+20>>2]=O(O(h*e)+O(O(d*g)+O(i*O(O(j*f)-O(c*k)))))+L[a+20>>2];L[a+24>>2]=O(O(j*e)+O(O(c*g)+O(i*O(O(k*d)-O(f*h)))))+L[a+24>>2];o=o+1|0;if((p|0)!=(o|0)){continue}break}}}function zU(a,b){var c=O(0),d=O(0),e=O(0),f=O(0),g=O(0),h=O(0),i=O(0);c=L[b+16>>2];d=L[b+20>>2];e=L[b+4>>2];f=L[b+8>>2];L[a+36>>2]=O(L[b>>2]+L[b+12>>2])*O(.5);L[a+44>>2]=O(f+d)*O(.5);L[a+40>>2]=O(e+c)*O(.5);c=O(L[b+20>>2]-L[b+8>>2]);d=O(L[b+12>>2]-L[b>>2]);e=O(L[b+16>>2]-L[b+4>>2]);i=O(W(O(O(c*c)+O(O(d*d)+O(e*e)))));a:{if(i!=O(0)){f=O(O(1)/i);c=O(c*f);L[a+8>>2]=c;g=O(e*f);L[a+4>>2]=g;h=O(d*f);L[a>>2]=h;if(O(P(g))<=O(.9998999834060669)){L[a+12>>2]=c;d=O(-h);L[a+20>>2]=d;H[a+16>>2]=0;e=c;f=d;h=O(W(O(O(h*h)+O(O(c*c)+O(0)))));if(h>O(0)){e=O(O(1)/h);f=O(e*d);L[a+20>>2]=f;L[a+16>>2]=e*O(0);e=O(c*e);L[a+12>>2]=e}L[a+24>>2]=g*f;L[a+32>>2]=e*O(-g);L[a+28>>2]=O(c*e)+O(f*d);break a}H[a+12>>2]=1065353216;H[a+16>>2]=0;e=O(-g);L[a+32>>2]=e;L[a+28>>2]=c;H[a+20>>2]=0;H[a+24>>2]=0;d=O(W(O(O(g*g)+O(O(c*c)+O(0)))));if(!(d>O(0))){break a}d=O(O(1)/d);L[a+32>>2]=d*e;L[a+28>>2]=c*d;L[a+24>>2]=d*O(0);break a}H[a+24>>2]=0;H[a+28>>2]=0;H[a+8>>2]=0;H[a+12>>2]=0;H[a>>2]=1065353216;H[a+4>>2]=0;H[a+32>>2]=1065353216;H[a+16>>2]=1065353216;H[a+20>>2]=0}c=L[b+24>>2];L[a+56>>2]=c;L[a+52>>2]=c;L[a+48>>2]=c+O(i*O(.5))}function BS(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=O(0),i=0,j=O(0),k=0,l=0,m=0;g=Oa-144|0;Oa=g;H[g+128>>2]=2;i=M[c+12>>3];h=L[b+44>>2];j=L[b+40>>2];k=M[c+20>>3];l=M[d+8>>3];m=M[d>>3];L[g+120>>2]=M[d+16>>3]-M[c+28>>3];L[g+116>>2]=l-k;L[g+132>>2]=j;L[g+136>>2]=h*O(.5);L[g+112>>2]=m-i;L[g+96>>2]=L[a+244>>2];L[g+100>>2]=L[a+248>>2];L[g+104>>2]=L[a+252>>2];L[g+108>>2]=L[a+256>>2];d=0;H[g+88>>2]=0;L[g+92>>2]=L[c+48>>2];L[g+72>>2]=L[c+36>>2];L[g+76>>2]=L[c+40>>2];L[g+80>>2]=L[c+44>>2];H[g+64>>2]=0;H[g+68>>2]=1065353216;H[g+56>>2]=0;H[g+60>>2]=0;H[g+32>>2]=0;H[g+36>>2]=0;H[g+40>>2]=0;H[g+44>>2]=0;H[g+24>>2]=0;H[g+28>>2]=0;G[g+20>>1]=0;H[g+16>>2]=-1;H[g+8>>2]=0;H[g+12>>2]=0;H[g+48>>2]=2139095039;h=L[f+36>>2];G[g>>1]=I[a+299|0]?1283:1027;a:{if(!fU(e,h,g+128|0,g+96|0,g+88|0,g+56|0,g+8|0,g)){break a}h=L[g+48>>2];if(h>=L[f+36>>2]){break a}L[f+36>>2]=h;L[f+24>>2]=L[g+36>>2];L[f+28>>2]=L[g+40>>2];h=L[g+44>>2];H[f+40>>2]=-1;H[f+44>>2]=-1;L[f+32>>2]=h;M[f>>3]=M[c+12>>3]+ +L[g+24>>2];M[f+8>>3]=M[c+20>>3]+ +L[g+28>>2];M[f+16>>3]=M[c+28>>3]+ +L[g+32>>2];d=1}Oa=g+144|0;return d|0}function f1(a,b,c,d){var e=0,f=O(0),g=O(0),h=0,i=0,j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0);f=L[d>>2];H[a>>2]=0;i=H[b+384>>2];a:{if(!i){break a}s=O(f*f);while(1){i=i-1|0;d=(i<<6)+b|0;g=L[d+24>>2];l=L[d+40>>2];f=L[d+8>>2];j=L[d>>2];k=L[d+4>>2];m=O(L[c+56>>2]+O(O(L[c+40>>2]*f)+O(O(L[c+8>>2]*j)+O(k*L[c+24>>2]))));o=O(L[c+48>>2]+O(O(L[c+32>>2]*f)+O(O(L[c>>2]*j)+O(k*L[c+16>>2]))));p=L[d+16>>2];q=L[d+32>>2];j=O(L[c+52>>2]+O(O(L[c+36>>2]*f)+O(O(L[c+4>>2]*j)+O(k*L[c+20>>2]))));k=L[d+20>>2];r=L[d+36>>2];f=O(O(l*O(m-g))+O(O(O(o-p)*q)+O(O(j-k)*r)));g=O(g-O(m-O(l*f)));l=O(g*g);g=O(p-O(o-O(q*f)));m=O(g*g);g=O(k-O(j-O(r*f)));if(O(l+O(m+O(g*g)))>s){e=H[b+384>>2]-1|0;H[b+384>>2]=e;e=(e<<6)+b|0;h=H[e+4>>2];H[d>>2]=H[e>>2];H[d+4>>2]=h;H[d+48>>2]=H[e+48>>2];h=H[e+44>>2];H[d+40>>2]=H[e+40>>2];H[d+44>>2]=h;h=H[e+36>>2];H[d+32>>2]=H[e+32>>2];H[d+36>>2]=h;h=H[e+28>>2];H[d+24>>2]=H[e+24>>2];H[d+28>>2]=h;h=H[e+20>>2];H[d+16>>2]=H[e+16>>2];H[d+20>>2]=h;h=H[e+12>>2];H[d+8>>2]=H[e+8>>2];H[d+12>>2]=h;if(i){continue}break a}L[d+44>>2]=f;n=f>2]=n;if(i){continue}break}}}function MQ(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,o=0;f=Oa-16|0;Oa=f;d=H[a+48>>2];a:{if(!d){break a}c=H[H[H[a+4>>2]+40>>2]+2168>>2];a=J[d>>1];if(!(a&2)){G[d>>1]=a|2;H[f+12>>2]=d;a=H[c+8>>2];b:{if(a>>>0>=(H[c+12>>2]&2147483647)>>>0){a=0;b=H[c+12>>2]&2147483647;g=b?b<<1:1;c:{if(!g){break c}b=g<<2;if(!b){break c}a=H[33808];e=a+12|0;a=(k=e,l=b,m=Ra[H[H[a>>2]+20>>2]](a)|0?48478:55639,n=13582,o=553,j=H[H[e>>2]+8>>2],Ra[j](k|0,l|0,m|0,n|0,o|0)|0)}e=H[c+8>>2];i=(e<<2)+a|0;if((e|0)>0){h=H[c+4>>2];b=a;while(1){H[b>>2]=H[h>>2];h=h+4|0;b=b+4|0;if(i>>>0>b>>>0){continue}break}}H[i>>2]=H[f+12>>2];d:{if(H[c+12>>2]<0){break d}b=H[c+4>>2];if(!b){break d}e=H[33808]+12|0;Ra[H[H[e>>2]+12>>2]](e,b);e=H[c+8>>2]}H[c+12>>2]=g;H[c+4>>2]=a;H[c+8>>2]=e+1;break b}H[H[c+4>>2]+(a<<2)>>2]=d;H[c+8>>2]=a+1}G[d+4>>1]=J[d+4>>1]+1}if(H[d+16>>2]){break a}a=JI(c);H[d+16>>2]=a;if(!a){break a}b=H[d+8>>2];H[a+16>>2]=H[b+48>>2];H[a+20>>2]=H[H[d+12>>2]+48>>2];b=H[b+44>>2];H[a+24>>2]=H[((I[b+9|0]<<2)+135180|0)+40>>2]+b;b=a;a=H[H[d+12>>2]+44>>2];H[b+28>>2]=H[((I[a+9|0]<<2)+135180|0)+40>>2]+a}Oa=f+16|0}function jB(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;d=N(b,24)+24|0;if(d){e=H[33808]+12|0;f=Ra[H[H[e>>2]+8>>2]](e,d,20591,8122,61)|0}d=b<<3;if(d){e=H[33808]+12|0;g=Ra[H[H[e>>2]+8>>2]](e,d,20591,8122,62)|0}d=b<<2;a:{if(!d){e=0;d=0;break a}e=H[33808]+12|0;e=Ra[H[H[e>>2]+8>>2]](e,d,20591,8122,63)|0;h=H[33808]+12|0;d=Ra[H[H[h>>2]+8>>2]](h,d,20591,8122,64)|0}h=!d|(!e|(!f|!g));b:{if(h){if(f){a=H[33808]+12|0;Ra[H[H[a>>2]+12>>2]](a,f)}if(g){a=H[33808]+12|0;Ra[H[H[a>>2]+12>>2]](a,g)}if(e){a=H[33808]+12|0;Ra[H[H[a>>2]+12>>2]](a,e)}if(!d){break b}a=H[33808]+12|0;Ra[H[H[a>>2]+12>>2]](a,d);break b}c=H[a+8>>2];if(c){R6(f,c,N(H[a>>2],24))}c=H[a+12>>2];if(c){R6(g,c,H[a>>2]<<3)}c=H[a+20>>2];if(c){R6(e,c,H[a>>2]<<2)}c=H[a+16>>2];if(c){R6(d,c,H[a+4>>2]<<2)}H[a+4>>2]=b;b=H[a+8>>2];if(b){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}H[a+8>>2]=0;b=H[a+12>>2];if(b){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}H[a+12>>2]=0;b=H[a+16>>2];if(b){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}H[a+16>>2]=0;b=H[a+20>>2];if(b){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}H[a+20>>2]=e;H[a+16>>2]=d;H[a+12>>2]=g;H[a+8>>2]=f}return!h}function au(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;e=Oa-16|0;Oa=e;d=H[a+4>>2];h=d&16777215;a:{if(!h){break a}k=I[a+80|0];b=H[a+8>>2];if(!b){b=Tt(H[a>>2],d>>>24&15);H[a+8>>2]=b}f=a+16|0;c=H[a>>2];b:{c:{if(d&1){if(!c){break c}g=c+16|0;i=H[H[g+976>>2]+1024>>2];j=f+32|0;Ra[H[H[i>>2]+48>>2]](i,j);FQ(f,b- -64|0);g=H[H[g+976>>2]+1024>>2];Ra[H[H[g>>2]+44>>2]](g,j)}if(!(d&2)|!c){break b}d=J[b+124>>1];DQ(f,(d|0)==1?b+120|0:H[c+4856>>2]+(H[b+120>>2]<<1)|0,d);c=H[H[c+992>>2]+1024>>2];Ra[H[H[c>>2]+64>>2]](c,f+32|0);break b}FQ(f,b- -64|0)}c=H[a+4>>2];if(c&4){L[a+48>>2]=L[b>>2];L[a+52>>2]=L[b+4>>2];L[a+56>>2]=L[b+8>>2];L[a+60>>2]=L[b+12>>2];L[a- -64>>2]=L[b+16>>2];L[a+68>>2]=L[b+20>>2];L[a+72>>2]=L[b+24>>2]}if(c&8){H[a+32>>2]=H[b+28>>2];H[a+36>>2]=H[b+32>>2];H[a+40>>2]=H[b+36>>2];H[a+44>>2]=H[b+40>>2]}if(c&16){L[a+76>>2]=L[b+44>>2]}if(c&32){L[a+144>>2]=L[b+48>>2]}if(c&64){F[a+80|0]=I[b+52|0]}if(c&128){L[a+148>>2]=L[b+56>>2]}if(c&256){L[a+152>>2]=L[b+60>>2]}b=H[a-12>>2];b=b?b- -64|0:0;if(!b){break a}F[e|0]=k;H[e+8>>2]=h;UI(b,f,e+8|0,e,1)}H[a+8>>2]=0;H[a+4>>2]=I[a+7|0]<<24;Oa=e+16|0}function bO(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=O(0),j=0;h=H[a+24>>2];g=H[H[a+976>>2]+1156>>2];f=H[a+36>>2];a:{if(!f){break a}if(!b){while(1){c=yq(g,40);i=L[a+1084>>2];d=H[a+16>>2];j=H[a+20>>2];H[c+24>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=d;H[c+12>>2]=j;L[c+36>>2]=i;d=f-e|0;H[c+32>>2]=d>>>0<1024?d:1024;H[c+28>>2]=(e<<2)+h;H[c>>2]=119972;H[c+24>>2]=1;d=H[c+16>>2];Ra[H[H[d>>2]+72>>2]](d,c);e=e+1024|0;if(f>>>0>e>>>0){continue}break a}}while(1){c=yq(g,40);i=L[a+1084>>2];d=H[a+16>>2];j=H[a+20>>2];H[c+24>>2]=0;H[c+16>>2]=0;H[c+8>>2]=d;H[c+12>>2]=j;L[c+36>>2]=i;d=f-e|0;H[c+32>>2]=d>>>0<1024?d:1024;H[c+28>>2]=(e<<2)+h;H[c>>2]=119972;H[c+20>>2]=b;H[c+24>>2]=1;Ra[H[H[b>>2]+16>>2]](b);H[c+16>>2]=H[H[c+20>>2]+16>>2];Ra[H[H[c>>2]+20>>2]](c);e=e+1024|0;if(f>>>0>e>>>0){continue}break}}if(I[a+2361|0]&32){c=yq(g,40);e=H[a+1012>>2];g=H[a+16>>2];a=H[a+20>>2];H[c+24>>2]=0;H[c+16>>2]=0;H[c+8>>2]=g;H[c+12>>2]=a;H[c+36>>2]=e;H[c+32>>2]=f;H[c+28>>2]=h;H[c>>2]=120028;H[c+20>>2]=b;H[c+24>>2]=1;if(b){Ra[H[H[b>>2]+16>>2]](b);H[c+16>>2]=H[H[c+20>>2]+16>>2];a=H[c>>2]}else{a=120028}Ra[H[a+20>>2]](c)}}function HC(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=O(0),i=0,j=O(0),k=O(0),l=0,m=0,n=0,o=O(0),p=O(0),q=O(0),r=O(0);i=Oa-16|0;Oa=i;a:{if(!e){break a}F[a+337|0]=1;m=H[a+292>>2];n=H[a+300>>2];while(1){l=g<<2;f=N(H[l+c>>2],24)+d|0;o=L[f+4>>2];j=L[f+16>>2];p=L[f+8>>2];k=L[f+20>>2];h=L[f+12>>2];q=L[f>>2];r=O(O(h-q)*O(.004999999888241291));f=m+N(H[n+(H[b+l>>2]<<2)>>2],24)|0;L[f+12>>2]=h+r;L[f>>2]=q-r;h=k;k=O(O(k-p)*O(.004999999888241291));L[f+20>>2]=h+k;h=j;j=O(O(j-o)*O(.004999999888241291));L[f+16>>2]=h+j;L[f+8>>2]=p-k;L[f+4>>2]=o-j;g=g+1|0;if((g|0)!=(e|0)){continue}break}if(!I[a+336|0]|!H[a+4>>2]){break a}F[a+338|0]=1;m=a+352|0;n=a+52|0;l=H[a+296>>2];g=0;while(1){f=H[H[a+300>>2]+(H[(g<<2)+b>>2]<<2)>>2];H[i+12>>2]=f;b:{c:{if(f>>>0>=K[a+316>>2]){break c}c=H[H[a+312>>2]+(f<<2)>>2];if((c|0)==-1){break c}VA(H[a+4>>2],c);break b}rC(n,l+(f<<3)|0,f)}d:{if(H[a+268>>2]-3>>>0>1){break d}f=H[a+356>>2];if(f>>>0>=(H[a+360>>2]&2147483647)>>>0){qm(m,i+12|0);break d}H[H[a+352>>2]+(f<<2)>>2]=H[i+12>>2];H[a+356>>2]=H[a+356>>2]+1}g=g+1|0;if((g|0)!=(e|0)){continue}break}}Oa=i+16|0}function vS(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=O(0),i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;g=Oa-144|0;Oa=g;H[g+128>>2]=3;i=M[c+12>>3];j=H[b+44>>2];k=H[b+40>>2];l=M[c+20>>3];m=M[d+8>>3];n=M[c+28>>3];o=M[d+16>>3];p=M[d>>3];L[g+140>>2]=L[b+48>>2];L[g+120>>2]=o-n;L[g+116>>2]=m-l;H[g+132>>2]=k;H[g+136>>2]=j;L[g+112>>2]=p-i;L[g+96>>2]=L[a+244>>2];L[g+100>>2]=L[a+248>>2];L[g+104>>2]=L[a+252>>2];L[g+108>>2]=L[a+256>>2];H[g+88>>2]=0;L[g+92>>2]=L[c+48>>2];L[g+72>>2]=L[c+36>>2];L[g+76>>2]=L[c+40>>2];L[g+80>>2]=L[c+44>>2];H[g+64>>2]=0;H[g+68>>2]=1065353216;H[g+56>>2]=0;H[g+60>>2]=0;H[g+32>>2]=0;H[g+36>>2]=0;H[g+40>>2]=0;H[g+44>>2]=0;H[g+24>>2]=0;H[g+28>>2]=0;G[g+20>>1]=0;H[g+16>>2]=-1;H[g+8>>2]=0;H[g+12>>2]=0;H[g+48>>2]=2139095039;h=L[f+36>>2];G[g>>1]=I[a+299|0]?1283:1027;a=fU(e,h,g+128|0,g+96|0,g+88|0,g+56|0,g+8|0,g);if(a){L[f+36>>2]=L[g+48>>2];L[f+24>>2]=L[g+36>>2];L[f+28>>2]=L[g+40>>2];h=L[g+44>>2];H[f+40>>2]=-1;H[f+44>>2]=-1;L[f+32>>2]=h;M[f>>3]=M[c+12>>3]+ +L[g+24>>2];M[f+8>>3]=M[c+20>>3]+ +L[g+28>>2];M[f+16>>3]=M[c+28>>3]+ +L[g+32>>2]}Oa=g+144|0;return a|0}function pE(a,b,c,d,e){H[a>>2]=0;H[a+4>>2]=0;H[a+64>>2]=0;H[a+68>>2]=0;H[a+240>>2]=0;H[a+244>>2]=0;H[a+228>>2]=0;H[a+232>>2]=0;H[a+48>>2]=0;H[a+52>>2]=0;H[a+40>>2]=0;H[a+44>>2]=0;H[a+32>>2]=0;H[a+36>>2]=0;H[a+24>>2]=0;H[a+28>>2]=0;H[a+16>>2]=0;H[a+20>>2]=0;H[a+8>>2]=0;H[a+12>>2]=0;H[a+56>>2]=0;H[a+60>>2]=2048;H[a+72>>2]=0;H[a+76>>2]=0;H[a+248>>2]=0;H[a+80>>2]=0;H[a+84>>2]=2048;S6(a+88|0,0,84);H[a+220>>2]=0;H[a+212>>2]=0;H[a+216>>2]=0;H[a+204>>2]=0;H[a+208>>2]=0;H[a+196>>2]=0;H[a+200>>2]=0;H[a+188>>2]=0;H[a+192>>2]=0;H[a+180>>2]=0;H[a+184>>2]=0;H[a+260>>2]=0;H[a+264>>2]=0;H[a+268>>2]=0;H[a+272>>2]=0;H[a+276>>2]=0;H[a+280>>2]=0;H[a+284>>2]=0;H[a+288>>2]=0;H[a+292>>2]=0;H[a+296>>2]=0;H[a+300>>2]=0;H[a+304>>2]=0;H[a+308>>2]=0;H[a+312>>2]=0;S6(a+320|0,0,72);H[a+436>>2]=0;H[a+440>>2]=0;H[a+428>>2]=0;H[a+432>>2]=0;H[a+420>>2]=0;H[a+424>>2]=0;H[a+412>>2]=0;H[a+416>>2]=0;H[a+404>>2]=0;H[a+408>>2]=0;H[a+396>>2]=0;H[a+400>>2]=0;H[a+464>>2]=e;H[a+468>>2]=0;H[a+452>>2]=d;H[a+448>>2]=c;H[a+444>>2]=b;H[a+456>>2]=0;H[a+252>>2]=0;H[a+256>>2]=0;H[a+172>>2]=0;H[a+176>>2]=0;return a}function Mx(a,b,c,d,e){var f=0,g=0,h=0;f=Oa-16|0;Oa=f;if(!(!c|!d)){h=d;d=H[d>>2];g=H[c>>2]+1|0;H[h>>2]=d>>>0>g>>>0?d:g;H[c>>2]=H[c>>2]+1}a:{b:{if(!e){break b}c=H[a+92>>2];if(!c){break b}d=c-1|0;c=H[H[a+88>>2]+(d<<2)>>2];H[a+92>>2]=d;H[f+12>>2]=c;a=H[b+4>>2];if(a>>>0>=(H[b+8>>2]&2147483647)>>>0){Hx(b,f+12|0);c=H[f+12>>2];break a}H[H[b>>2]+(a<<2)>>2]=c;H[b+4>>2]=a+1;c=H[f+12>>2];break a}c=H[a+116>>2];if(c){d=c-1|0;c=H[H[a+112>>2]+(d<<2)>>2];H[a+116>>2]=d;H[f+8>>2]=c;d=H[b+4>>2];c:{if(d>>>0>=(H[b+8>>2]&2147483647)>>>0){Hx(b,f+8|0);break c}H[H[b>>2]+(d<<2)>>2]=c;H[b+4>>2]=d+1}b=H[a+152>>2]+1|0;H[a+152>>2]=b;c=a;a=H[a+156>>2];H[c+156>>2]=a>>>0>b>>>0?a:b;c=H[f+8>>2];break a}c=0;d=H[a+140>>2];if((d|0)==H[a+144>>2]){break a}H[a+140>>2]=d+1;c=H[33808];c=Ra[H[H[c+12>>2]+8>>2]](c+12|0,16384,20591,8029,234)|0;H[f+4>>2]=c;if(c){d=H[b+4>>2];d:{if(d>>>0>=(H[b+8>>2]&2147483647)>>>0){Hx(b,f+4|0);break d}H[H[b>>2]+(d<<2)>>2]=c;H[b+4>>2]=d+1}b=H[a+152>>2]+1|0;H[a+152>>2]=b;c=a;a=H[a+156>>2];H[c+156>>2]=a>>>0>b>>>0?a:b;c=H[f+4>>2];break a}H[a+140>>2]=H[a+140>>2]-1}Oa=f+16|0;return c}function QS(a){a=a|0;var b=0,c=0;H[a+4>>2]=125104;H[a>>2]=125016;b=H[a+12>>2];if(b){Ra[H[H[b>>2]+4>>2]](b)}H[a+12>>2]=0;b=H[a+184>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+144>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+128>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=H[a+120>>2];if(!b){break a}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+80>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+76>>2];b:{if((b|0)<0|!(b&2147483647)){break b}b=H[a+68>>2];if(!b){break b}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a- -64>>2];c:{if((b|0)<0|!(b&2147483647)){break c}b=H[a+56>>2];if(!b){break c}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+52>>2];d:{if((b|0)<0|!(b&2147483647)){break d}b=H[a+44>>2];if(!b){break d}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+40>>2];e:{if((b|0)<0|!(b&2147483647)){break e}b=H[a+32>>2];if(!b){break e}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+28>>2];f:{if((b|0)<0|!(b&2147483647)){break f}b=H[a+20>>2];if(!b){break f}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}return a|0}function Tz(a,b,c,d){var e=0,f=0,g=0,h=O(0),i=0,j=O(0),k=0,l=0,m=O(0),n=0,o=0,p=0,q=0,r=O(0),s=O(0),t=0,u=0,v=0,w=0;a:{f=H[a+24>>2];i=J[f+2>>1];if(!i){break a}t=I[f|0]==3?112:48;u=f+i|0;g=H[a+28>>2];e=f;while(1){v=e+48|0;k=I[e+1|0];w=I[e+36|0];b:{if(!g){g=0;break b}if(!k){break b}l=(e+i|0)+32|0;q=k&3;o=0;c:{if(k-1>>>0<3){e=0;break c}i=k&252;e=0;p=0;while(1){n=e<<2;r=L[n+l>>2];L[g>>2]=r;s=L[(n|4)+l>>2];L[g+4>>2]=s;j=L[(n|8)+l>>2];L[g+8>>2]=j;h=L[(n|12)+l>>2];L[g+12>>2]=h;m=O(h+O(j+O(s+O(m+r))));e=e+4|0;g=g+16|0;p=p+4|0;if((i|0)!=(p|0)){continue}break}}if(!q){break b}while(1){h=L[(e<<2)+l>>2];L[g>>2]=h;e=e+1|0;g=g+4|0;m=O(m+h);o=o+1|0;if((o|0)!=(q|0)){continue}break}}e=N(k,t)+v|0;if(u>>>0>e>>>0){i=J[e+2>>1];continue}break}if(!(w&1)|J[a+8>>1]!=65535|(J[a+10>>1]!=65535|m==O(0))){break a}j=L[c+28>>2];h=L[d+28>>2];if(!(j>2];d=H[c+72>>2];c=H[f+32>>2];a=H[b+8>>2];H[b+8>>2]=a+1;f=H[b+4>>2]+(a<<5)|0;L[f+8>>2]=h>j?j:h;L[f+4>>2]=m;H[f>>2]=c;c=d<<7;b=e<<7;a=c>>>0>b>>>0;H[f+16>>2]=a?c:b;H[f+12>>2]=a?b:c}}function G0(a,b,c,d,e,f,g,h,i){var j=0,k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=0;j=Oa-96|0;Oa=j;a:{b:{c:{switch(d-2|0){case 2:o=L[h+40>>2];p=L[h+32>>2];q=L[h+36>>2];d=1;if(!(O(O(L[h+56>>2]*o)+O(O(L[h+48>>2]*p)+O(q*L[h+52>>2])))>O(.9998999834060669))){break a}Ra[H[H[a>>2]+16>>2]](j+80|0,a);Ra[H[H[b>>2]+16>>2]](j- -64|0,b);k=O(L[j+88>>2]-L[j+72>>2]);l=O(L[j+80>>2]-L[j+64>>2]);m=O(L[j+84>>2]-L[j+68>>2]);n=O(O(1)/O(W(O(O(k*k)+O(O(l*l)+O(m*m))))));a=O(O(O(k*n)*o)+O(O(O(l*n)*p)+O(q*O(m*n))))>O(.7070000171661377);if(a){b=H[f+4>>2];H[j+32>>2]=H[f>>2];H[j+36>>2]=b;b=H[f+12>>2];H[j+40>>2]=H[f+8>>2];H[j+44>>2]=b;i1(e,i,h,c,j+32|0)}d=!a;break a;case 0:a=H[f+4>>2];H[j+48>>2]=H[f>>2];H[j+52>>2]=a;a=H[f+12>>2];H[j+56>>2]=H[f+8>>2];H[j+60>>2]=a;i1(e,i,h,c,j+48|0);break b;default:break c}}r=I[i+66|0];d=H[g+4>>2];H[j+16>>2]=H[g>>2];H[j+20>>2]=d;d=H[g+12>>2];H[j+24>>2]=H[g+8>>2];H[j+28>>2]=d;d=1;if((wZ(a,b,i+67|0,i+71|0,r,1,j+16|0,h)|0)!=5){break a}a=H[f+4>>2];H[j>>2]=H[f>>2];H[j+4>>2]=a;a=H[f+12>>2];H[j+8>>2]=H[f+8>>2];H[j+12>>2]=a;i1(e,i,h,c,j)}d=0}Oa=j+96|0;return d}function dx(a){a=a|0;var b=0,c=0,d=0;H[a+52>>2]=112932;H[a>>2]=112888;b=H[a- -64>>2];if(b){while(1){d=H[H[a+60>>2]+(c<<2)>>2];if(d){b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,d);b=H[a+64>>2]}c=c+1|0;if(c>>>0>>0){continue}break}}c=0;H[a+64>>2]=0;H[a+72>>2]=0;H[a+56>>2]=0;b=H[a+68>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=H[a+60>>2];if(!b){break a}d=H[33808]+12|0;Ra[H[H[d>>2]+12>>2]](d,b)}H[a+28>>2]=112932;b=H[a+40>>2];if(b){while(1){d=H[H[a+36>>2]+(c<<2)>>2];if(d){b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,d);b=H[a+40>>2]}c=c+1|0;if(c>>>0>>0){continue}break}}c=0;H[a+40>>2]=0;H[a+48>>2]=0;H[a+32>>2]=0;b=H[a+44>>2];b:{if((b|0)<0|!(b&2147483647)){break b}b=H[a+36>>2];if(!b){break b}d=H[33808]+12|0;Ra[H[H[d>>2]+12>>2]](d,b)}H[a+4>>2]=112932;b=H[a+16>>2];if(b){while(1){d=H[H[a+12>>2]+(c<<2)>>2];if(d){b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,d);b=H[a+16>>2]}c=c+1|0;if(c>>>0>>0){continue}break}}H[a+16>>2]=0;H[a+24>>2]=0;H[a+8>>2]=0;c=H[a+20>>2];c:{if((c|0)<0|!(c&2147483647)){break c}c=H[a+12>>2];if(!c){break c}b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,c)}return a|0}function GN(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,o=0,p=0,q=0,r=0,s=O(0),t=0;g=H[a+20>>2];c=H[a+28>>2];e=H[c+292>>2];a:{if(!e){break a}k=c+132|0;l=c+136|0;while(1){f=0;b:{c:{d:{a=d;if(e>>>0<=a>>>0){break d}b=H[c+304>>2];h=H[c+288>>2];while(1){f=H[h+(a<<2)>>2]+f|0;if(b>>>0>>0){break d}a=a+1|0;if((e|0)!=(a|0)){continue}break}break c}if((a|0)==(e|0)){break c}a=a+1|0;break b}a=e;if(!f){break a}}b=yq(H[H[c+312>>2]+1156>>2],88);m=H[c+308>>2];n=H[c+196>>2];o=I[c+124|0];p=H[c+276>>2];q=H[c+280>>2];r=H[c+184>>2];h=H[c+128>>2];s=L[H[c+300>>2]+7152>>2];i=H[c+312>>2];t=H[i+1836>>2];H[b+8>>2]=H[i+1832>>2];H[b+12>>2]=t;H[b+24>>2]=0;H[b>>2]=119156;H[b+36>>2]=i;H[b+40>>2]=c;L[b+44>>2]=s;H[b+48>>2]=h;H[b+52>>2]=l;H[b+56>>2]=d;H[b+60>>2]=a-d;H[b+64>>2]=e;H[b+68>>2]=j;H[b+72>>2]=r;H[b+28>>2]=p;H[b+32>>2]=q;F[b+85|0]=o;H[b+80>>2]=k;H[b+76>>2]=n;F[b+84|0]=(h|0)==(m-1|0);d=H[H[c+312>>2]+1152>>2];H[b+20>>2]=g;H[b+24>>2]=1;H[b+16>>2]=d;j=f+j|0;if(g){Ra[H[H[g>>2]+16>>2]](g);d=H[b>>2]}else{d=119156}Ra[H[d+20>>2]](b);d=a;if(a>>>0>>0){continue}break}}}function rb(a,b){a=a|0;b=O(b);var c=0,d=0,e=0,f=0,g=0,h=O(0),i=O(0),j=O(0);e=Oa-16|0;Oa=e;L[e+12>>2]=b;c=Oa-128|0;Oa=c;H[c+124>>2]=1065353216;H[c+120>>2]=1065353216;H[c+112>>2]=1065353216;H[c+116>>2]=1065353216;H[c+104>>2]=0;H[c+108>>2]=1065353216;H[c+96>>2]=0;H[c+100>>2]=0;L[c+88>>2]=0;L[c+84>>2]=0;L[c+80>>2]=0;d=e+12|0;a:{if(d){H[c+72>>2]=0;f=c- -64|0;H[f>>2]=0;H[f+4>>2]=0;H[c+56>>2]=0;H[c+60>>2]=0;H[c+48>>2]=0;H[c+52>>2]=0;H[c+40>>2]=0;H[c+44>>2]=0;H[c+32>>2]=0;H[c+36>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;b:{if(S4(a,0,d,c+24|0)){if(L[c+72>>2]!=O(0)){T4(c+24|0,c+112|0,c+96|0,c+124|0,c+80|0,a,20805)}g=1;b=L[d>>2];L[c+124>>2]=b;break b}d=H[33808];H[c>>2]=20805;o5(d,4,5194,342,61696,c);b=O(1)}h=L[c+88>>2];i=L[c+84>>2];j=L[c+80>>2];break a}d=H[33808];H[c+16>>2]=20805;o5(d,4,5194,350,61845,c+16|0);b=O(1)}Ra[H[H[a>>2]+116>>2]](a,b);Ra[H[H[a>>2]+128>>2]](a,c+112|0);L[c+48>>2]=h;L[c+44>>2]=i;d=H[c+100>>2];H[c+24>>2]=H[c+96>>2];H[c+28>>2]=d;L[c+40>>2]=j;d=H[c+108>>2];H[c+32>>2]=H[c+104>>2];H[c+36>>2]=d;Ra[H[H[a>>2]+108>>2]](a,c+24|0);Oa=c+128|0;Oa=e+16|0;return g|0}function vW(a,b,c,d,e,f,g,h,i,j){var k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=0;G[a+12>>1]=2;v=L[e>>2]<=O(0);if(v){a:{if(i){G[a+12>>1]=3;b=L[h+12>>2];r=O(O(b*b)+O(-.5));c=L[h+8>>2];m=L[f+8>>2];d=L[h>>2];k=L[f>>2];p=L[h+4>>2];l=L[f+4>>2];q=O(O(c*m)+O(O(d*k)+O(p*l)));n=O(O(O(b*O(O(d*l)-O(k*p)))+O(r*m))+O(c*q));n=O(n+n);o=O(O(d*q)+O(O(r*k)+O(b*O(O(p*m)-O(l*c)))));o=O(o+o);m=O(O(p*q)+O(O(r*l)+O(b*O(O(c*k)-O(m*d)))));k=O(m+m);l=O(O(1)/O(W(O(O(n*n)+O(O(o*o)+O(k*k))))));m=O(n*l);k=O(k*l);l=O(o*l);q=L[g+8>>2];n=L[g>>2];o=L[g+4>>2];u=O(O(c*q)+O(O(d*n)+O(p*o)));s=O(O(O(b*O(O(d*o)-O(n*p)))+O(r*q))+O(c*u));s=O(L[h+24>>2]+O(s+s));t=O(O(p*u)+O(O(r*o)+O(b*O(O(c*n)-O(q*d)))));t=O(L[h+20>>2]+O(t+t));b=O(O(d*u)+O(O(r*n)+O(b*O(O(p*q)-O(o*c)))));c=O(L[h+16>>2]+O(b+b));b=L[e>>2];b:{if(j){s=O(s-O(b*m));t=O(t-O(b*k));c=O(c-O(b*l));break b}m=O(-m);k=O(-k);l=O(-l)}L[a+28>>2]=l;L[a+40>>2]=b;L[a+16>>2]=c;L[a+36>>2]=m;L[a+32>>2]=k;L[a+24>>2]=s;L[a+20>>2]=t;break a}H[a+40>>2]=0;L[a+36>>2]=-d;L[a+32>>2]=-c;L[a+28>>2]=-b}H[a+8>>2]=-1}return v}function Em(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;if(!b){return 0}g=H[a+32>>2];a:{if(g){c=g-1|0;g=H[H[a+28>>2]+(c<<2)>>2];H[a+32>>2]=c;break a}g=H[a+24>>2];H[a+24>>2]=g+1}if(g>>>0<=65534){d=H[a+44>>2];b:{if(d>>>0>g>>>0){i=H[a+40>>2];break b}c=d<<1;c=c>>>0<65535?c:65535;H[a+44>>2]=c;if(c){e=H[33808]+12|0;i=Ra[H[H[e>>2]+8>>2]](e,c<<2,20591,14663,126)|0;c=H[a+44>>2]<<2}else{c=0}c=S6(i,0,c);c:{if(!d){break c}e=0;if(d-1>>>0>=3){m=d&-4;while(1){f=e<<2;H[f+c>>2]=H[f+H[a+40>>2]>>2];h=f|4;H[h+c>>2]=H[h+H[a+40>>2]>>2];h=f|8;H[h+c>>2]=H[h+H[a+40>>2]>>2];f=f|12;H[f+c>>2]=H[f+H[a+40>>2]>>2];e=e+4|0;k=k+4|0;if((k|0)!=(m|0)){continue}break}}d=d&3;if(!d){break c}while(1){f=e<<2;H[f+c>>2]=H[f+H[a+40>>2]>>2];e=e+1|0;l=l+1|0;if((d|0)!=(l|0)){continue}break}}e=H[a+40>>2];if(e){d=H[33808]+12|0;Ra[H[H[d>>2]+12>>2]](d,e)}H[a+40>>2]=c}H[(g<<2)+i>>2]=b;G[b+52>>1]=g}d:{if(g>>>0<65535){if(!H[a+8>>2]){break d}while(1){Iq(H[H[a+4>>2]+(j<<2)>>2],b);j=j+1|0;if(j>>>0>2]){continue}break}break d}o5(H[33808],4,6215,413,60801,0);Ra[H[H[b>>2]>>2]](b);b=0}return b}function Ou(a){a=a|0;var b=0,c=0;H[a>>2]=112252;b=H[a+180>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=H[a+172>>2];if(!b){break a}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}b=H[a+168>>2];b:{if((b|0)<0|!(b&2147483647)){break b}b=H[a+160>>2];if(!b){break b}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}b=H[a+156>>2];c:{if((b|0)<0|!(b&2147483647)){break c}b=H[a+148>>2];if(!b){break c}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}b=H[a+144>>2];d:{if((b|0)<0|!(b&2147483647)){break d}b=H[a+136>>2];if(!b){break d}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}b=H[a+132>>2];e:{if((b|0)<0|!(b&2147483647)){break e}b=H[a+124>>2];if(!b){break e}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}b=H[a+120>>2];f:{if((b|0)<0|!(b&2147483647)){break f}b=H[a+112>>2];if(!b){break f}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}b=H[a+108>>2];g:{if((b|0)<0|!(b&2147483647)){break g}b=H[a+100>>2];if(!b){break g}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}H[a>>2]=112452;b=H[a+88>>2];h:{if((b|0)<0|!(b&2147483647)){break h}b=H[a+80>>2];if(!b){break h}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}return a|0}function cl(a,b,c,d,e,f){a=a|0;b=b|0;c=O(c);d=O(d);e=O(e);f=f|0;var g=0,h=0;a:{b:{c:{d:{a=a+8|0;h=H[a+4>>2];switch((h>>>30|0)-2|0){case 1:break b;case 0:break d;default:break c}}if(I[H[a>>2]+4785|0]){break b}}mE(a+12|0,b,c,d,e,f);break a}g=H[a+8>>2];e:{if(!(h&2097152)){if(!g){g=Tt(H[a>>2],h>>>24&15);H[a+8>>2]=g}L[g+204>>2]=L[a+120>>2];L[g+208>>2]=L[a+124>>2];L[g+212>>2]=L[a+128>>2];H[g+216>>2]=H[a+132>>2];L[g+220>>2]=L[a+136>>2];L[g+224>>2]=L[a+140>>2];L[g+228>>2]=L[a+144>>2];H[g+232>>2]=H[a+148>>2];L[g+236>>2]=L[a+152>>2];L[g+240>>2]=L[a+156>>2];L[g+244>>2]=L[a+160>>2];H[g+248>>2]=H[a+164>>2];L[g+252>>2]=L[a+168>>2];L[g+256>>2]=L[a+172>>2];L[g+260>>2]=L[a+176>>2];H[g+264>>2]=H[a+180>>2];L[g+268>>2]=L[a+184>>2];L[g+272>>2]=L[a+188>>2];L[g+276>>2]=L[a+192>>2];H[g+280>>2]=H[a+196>>2];L[g+284>>2]=L[a+200>>2];L[g+288>>2]=L[a+204>>2];L[g+292>>2]=L[a+208>>2];H[g+296>>2]=H[a+212>>2];break e}if(g){break e}g=Tt(H[a>>2],I[a+7|0]&15);H[a+8>>2]=g}b=(b<<4)+g|0;L[b+208>>2]=d;L[b+204>>2]=c;H[b+216>>2]=f;L[b+212>>2]=e;$t(H[a>>2],a);H[a+4>>2]=H[a+4>>2]|2097152}}function h$(a,b){var c=O(0),d=O(0),e=O(0),f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=O(0);d=L[a>>2];e=L[a+48>>2];a:{if(d>e){f=O(3.4028234663852886e38);g=O(3.4028234663852886e38);h=O(3.4028234663852886e38);i=O(-3.4028234663852886e38);j=O(-3.4028234663852886e38);d=O(-3.4028234663852886e38);break a}f=O(R(d,O(3.4028234663852886e38)));j=O(S(L[a+80>>2],O(-3.4028234663852886e38)));i=O(S(L[a+64>>2],O(-3.4028234663852886e38)));h=O(R(L[a+32>>2],O(3.4028234663852886e38)));g=O(R(L[a+16>>2],O(3.4028234663852886e38)));d=O(S(e,O(-3.4028234663852886e38)))}e=L[a+4>>2];k=L[a+52>>2];if(!(e>k)){c=L[a+84>>2];j=c>2];i=c>2];h=c>h?h:c;c=L[a+20>>2];g=c>g?g:c;f=fk?d:k}e=L[a+8>>2];k=L[a+56>>2];if(!(e>k)){c=L[a+88>>2];j=c>2];i=c>2];h=c>h?h:c;c=L[a+24>>2];g=c>g?g:c;f=fk?d:k}e=L[a+12>>2];k=L[a+60>>2];if(!(e>k)){c=L[a+92>>2];j=c>2];i=c>2];h=c>h?h:c;c=L[a+28>>2];g=c>g?g:c;f=fk?d:k}L[b+20>>2]=j;L[b+16>>2]=i;L[b+12>>2]=d;L[b+8>>2]=h;L[b+4>>2]=g;L[b>>2]=f}function HE(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;c=H[a+448>>2];l=H[c>>2];b=b<<1;g=H[c+20>>2];c=(b>>>0)/(g>>>0)|0;h=H[H[l+(c<<2)>>2]+(b-N(c,g)<<2)>>2]>>>7|0;if((h|0)!=33554431){i=H[a+64>>2];c=H[a+84>>2];d=(b>>>0)/(c>>>0)|0;j=H[i+(d<<2)>>2];k=b-N(c,d)|0;d=j+(k<<3)|0;e=H[a+16>>2]+N(h,24)|0;a:{if((b|0)==H[e>>2]){f=e;e=H[d>>2];H[f>>2]=e;break a}e=H[d+4>>2];f=(e>>>0)/(c>>>0)|0;H[H[i+(f<<2)>>2]+(e-N(c,f)<<3)>>2]=H[d>>2];e=H[d>>2]}if((e|0)!=-1){f=(e>>>0)/(c>>>0)|0;H[(H[i+(f<<2)>>2]+(e-N(c,f)<<3)|0)+4>>2]=H[((k<<3)+j|0)+4>>2]}H[d>>2]=-1;H[((k<<3)+j|0)+4>>2]=-1}d=b|1;b=(d>>>0)/(g>>>0)|0;g=H[H[(b<<2)+l>>2]+(d-N(b,g)<<2)>>2]>>>7|0;if(!((g|0)==33554431|(g|0)==(h|0))){h=H[a+64>>2];b=H[a+84>>2];c=(d>>>0)/(b>>>0)|0;e=H[h+(c<<2)>>2];i=d-N(b,c)|0;c=e+(i<<3)|0;a=H[a+16>>2]+N(g,24)|0;b:{if((d|0)==H[a>>2]){f=a;a=H[c>>2];H[f>>2]=a;break b}a=H[c+4>>2];d=(a>>>0)/(b>>>0)|0;H[H[h+(d<<2)>>2]+(a-N(b,d)<<3)>>2]=H[c>>2];a=H[c>>2]}if((a|0)!=-1){d=(a>>>0)/(b>>>0)|0;H[(H[h+(d<<2)>>2]+(a-N(b,d)<<3)|0)+4>>2]=H[(e+(i<<3)|0)+4>>2]}H[c>>2]=-1;H[(e+(i<<3)|0)+4>>2]=-1}}function __(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=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0);g=Oa-48|0;Oa=g;f=H[a+8>>2];o=L[f+28>>2];p=L[f+16>>2];k=L[f+32>>2];l=L[f+20>>2];m=L[f+4>>2];n=L[f+8>>2];h=L[c>>2];i=L[c+4>>2];q=L[f+12>>2];j=L[c+8>>2];r=L[f+24>>2];L[g+32>>2]=O(O(h*L[f>>2])+O(i*q))+O(j*r);L[g+40>>2]=O(O(h*n)+O(i*l))+O(j*k);L[g+36>>2]=O(O(h*m)+O(i*p))+O(j*o);m=L[f>>2];n=L[f+4>>2];h=L[d>>2];i=L[d+4>>2];j=L[d+8>>2];L[g+24>>2]=O(O(h*L[f+8>>2])+O(l*i))+O(k*j);L[g+20>>2]=O(O(h*n)+O(p*i))+O(o*j);L[g+16>>2]=O(O(h*m)+O(q*i))+O(r*j);i=L[f>>2];j=L[f+4>>2];h=L[e>>2];m=l;l=L[e+4>>2];n=k;k=L[e+8>>2];L[g+8>>2]=O(O(h*L[f+8>>2])+O(m*l))+O(n*k);L[g+4>>2]=O(O(h*j)+O(p*l))+O(o*k);L[g>>2]=O(O(h*i)+O(q*l))+O(r*k);c=1;a:{if(!d_(a+84|0,a+68|0,g+32|0,g+16|0,g)){break a}d=H[b+8>>2];F[a+16|0]=1;a=H[a+12>>2];c=0;if(!a){break a}b=H[a+4>>2];if(b>>>0>=K[a+8>>2]){F[a+20|0]=1;c=1;break a}c=H[a+16>>2];if(c>>>0>=K[a+12>>2]){H[a+4>>2]=b+1;H[H[a>>2]+(b<<2)>>2]=d;c=1;break a}H[a+16>>2]=c+1;c=1}Oa=g+48|0;return c|0}function DM(a,b,c){a=a|0;b=O(b);c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;a:{g=H[a+84>>2];if(!g){break a}if(!c){while(1){c=yq(H[H[a+4>>2]+1156>>2],56);d=H[a+4>>2];e=H[d+1832>>2];h=H[d+1836>>2];i=H[a+80>>2];j=H[a+68>>2];k=H[a+92>>2];l=H[a+104>>2];H[c+24>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+52>>2]=l;H[c+48>>2]=d;L[c+44>>2]=b;d=g-f|0;d=d>>>0<128?d:128;H[c+40>>2]=d;H[c+36>>2]=k+(f<<3);H[c+32>>2]=j+(f<<4);H[c+28>>2]=i+(f<<2);H[c+8>>2]=e;H[c+12>>2]=h;H[c>>2]=119044;H[c+24>>2]=1;e=H[c+16>>2];Ra[H[H[e>>2]+72>>2]](e,c);f=d+f|0;if(g>>>0>f>>>0){continue}break a}}while(1){d=yq(H[H[a+4>>2]+1156>>2],56);e=H[a+4>>2];h=H[e+1836>>2];i=H[e+1832>>2];j=H[a+80>>2];k=H[a+68>>2];l=H[a+92>>2];m=H[a+104>>2];H[d+24>>2]=0;H[d+16>>2]=0;H[d+52>>2]=m;H[d+48>>2]=e;L[d+44>>2]=b;e=g-f|0;e=e>>>0<128?e:128;H[d+40>>2]=e;H[d+36>>2]=l+(f<<3);H[d+32>>2]=k+(f<<4);H[d+28>>2]=j+(f<<2);H[d+8>>2]=i;H[d+12>>2]=h;H[d>>2]=119044;H[d+20>>2]=c;H[d+24>>2]=1;Ra[H[H[c>>2]+16>>2]](c);H[d+16>>2]=H[H[d+20>>2]+16>>2];Ra[H[H[d>>2]+20>>2]](d);f=f+e|0;if(g>>>0>f>>>0){continue}break}}}function nr(a,b){var c=0,d=0,e=0,f=0;e=H[a+8>>2];if(e){f=H[a+4>>2];while(1){c=f+(d<<4)|0;L[c>>2]=L[b>>2]+L[c>>2];L[c+4>>2]=L[b+4>>2]+L[c+4>>2];L[c+8>>2]=L[b+8>>2]+L[c+8>>2];d=d+1|0;if((e|0)!=(d|0)){continue}break}}e=H[a+20>>2];if(e){f=H[a+16>>2];d=0;while(1){c=f+(d<<5)|0;L[c>>2]=L[b>>2]+L[c>>2];L[c+4>>2]=L[b+4>>2]+L[c+4>>2];L[c+8>>2]=L[b+8>>2]+L[c+8>>2];L[c+16>>2]=L[b>>2]+L[c+16>>2];L[c+20>>2]=L[b+4>>2]+L[c+20>>2];L[c+24>>2]=L[b+8>>2]+L[c+24>>2];d=d+1|0;if((e|0)!=(d|0)){continue}break}}e=H[a+32>>2];if(e){f=H[a+28>>2];d=0;while(1){c=f+N(d,48)|0;L[c>>2]=L[b>>2]+L[c>>2];L[c+4>>2]=L[b+4>>2]+L[c+4>>2];L[c+8>>2]=L[b+8>>2]+L[c+8>>2];L[c+16>>2]=L[b>>2]+L[c+16>>2];L[c+20>>2]=L[b+4>>2]+L[c+20>>2];L[c+24>>2]=L[b+8>>2]+L[c+24>>2];L[c+32>>2]=L[b>>2]+L[c+32>>2];L[c+36>>2]=L[b+4>>2]+L[c+36>>2];L[c+40>>2]=L[b+8>>2]+L[c+40>>2];d=d+1|0;if((e|0)!=(d|0)){continue}break}}c=H[a+44>>2];if(c){e=H[a+40>>2];d=0;while(1){a=e+N(d,24)|0;L[a>>2]=L[b>>2]+L[a>>2];L[a+4>>2]=L[b+4>>2]+L[a+4>>2];L[a+8>>2]=L[b+8>>2]+L[a+8>>2];d=d+1|0;if((c|0)!=(d|0)){continue}break}}}function T$(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=O(0),f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=0,r=0,s=0,t=O(0),u=O(0),v=O(0),w=0,x=0,y=0;s=H[a+4>>2];w=H[a+8>>2];x=b>>>5|0;a=w+N(x,12)|0;q=s+N(H[a>>2],12)|0;e=L[q+8>>2];r=N(H[a+4>>2],12)+s|0;f=L[r+8>>2];h=e>f?e:f;a=N(H[a+8>>2],12)+s|0;g=L[a+8>>2];h=g>2];l=L[r+4>>2];i=k>l?k:l;m=L[a+4>>2];i=i>m?i:m;n=L[q>>2];o=L[r>>2];j=n>o?n:o;p=L[a>>2];j=j>p?j:p;e=e>>1&15;if(y){while(1){b=N(a+x|0,12)+w|0;q=N(H[b>>2],12)+s|0;k=L[q+8>>2];h=h>k?h:k;r=N(H[b+4>>2],12)+s|0;l=L[r+8>>2];h=h>l?h:l;b=N(H[b+8>>2],12)+s|0;m=L[b+8>>2];h=h>m?h:m;n=L[q+4>>2];i=i>n?i:n;o=L[r+4>>2];i=i>o?i:o;p=L[b+4>>2];i=i>p?i:p;t=L[q>>2];j=j>t?j:t;u=L[r>>2];j=j>u?j:u;v=L[b>>2];j=j>v?j:v;e=e>2]=0;L[c+8>>2]=e;L[c+4>>2]=f;L[c>>2]=g;H[d+12>>2]=0;L[d+8>>2]=h;L[d+4>>2]=i;L[d>>2]=j}function S$(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=O(0),f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=0,r=0,s=0,t=O(0),u=O(0),v=O(0),w=0,x=0,y=0;s=H[a+4>>2];w=H[a+8>>2];x=b>>>5|0;a=w+N(x,6)|0;q=s+N(J[a>>1],12)|0;e=L[q+8>>2];r=N(J[a+2>>1],12)+s|0;f=L[r+8>>2];h=e>f?e:f;a=N(J[a+4>>1],12)+s|0;g=L[a+8>>2];h=g>2];l=L[r+4>>2];i=k>l?k:l;m=L[a+4>>2];i=i>m?i:m;n=L[q>>2];o=L[r>>2];j=n>o?n:o;p=L[a>>2];j=j>p?j:p;e=e>>1&15;if(y){while(1){b=N(a+x|0,6)+w|0;q=N(J[b>>1],12)+s|0;k=L[q+8>>2];h=h>k?h:k;r=N(J[b+2>>1],12)+s|0;l=L[r+8>>2];h=h>l?h:l;b=N(J[b+4>>1],12)+s|0;m=L[b+8>>2];h=h>m?h:m;n=L[q+4>>2];i=i>n?i:n;o=L[r+4>>2];i=i>o?i:o;p=L[b+4>>2];i=i>p?i:p;t=L[q>>2];j=j>t?j:t;u=L[r>>2];j=j>u?j:u;v=L[b>>2];j=j>v?j:v;e=e>2]=0;L[c+8>>2]=e;L[c+4>>2]=f;L[c>>2]=g;H[d+12>>2]=0;L[d+8>>2]=h;L[d+4>>2]=i;L[d>>2]=j}function pC(a){a=a|0;var b=0,c=0,d=0;H[a>>2]=114548;b=H[a+168>>2];if(b){b=NA(b);c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b);H[a+168>>2]=0}c=H[a+208>>2];if(c){b=0;while(1){d=H[H[a+200>>2]+(b<<3)>>2];if(d){c=NA(d);d=H[33808];Ra[H[H[d+12>>2]+12>>2]](d+12|0,c);c=H[a+208>>2]}b=b+1|0;if(c>>>0>b>>>0){continue}break}}b=H[a+196>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+200>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+192>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=H[a+184>>2];if(!b){break a}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+180>>2];b:{if((b|0)<0|!(b&2147483647)){break b}b=H[a+172>>2];if(!b){break b}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+128>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=a+4|0;bC(b);c=H[b+116>>2];c:{if((c|0)<0|!(c&2147483647)){break c}c=H[b+108>>2];if(!c){break c}d=H[33808];Ra[H[H[d+12>>2]+12>>2]](d+12|0,c)}c=H[b- -64>>2];if(c){d=H[33808];Ra[H[H[d+12>>2]+12>>2]](d+12|0,c)}b=H[b+16>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}return a|0}function eZ(a,b,c){var d=O(0),e=O(0),f=O(0),g=O(0),h=O(0),i=O(0),j=0,k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0);j=Oa-16|0;Oa=j;k=L[b+16>>2];l=L[b+28>>2];m=L[b+24>>2];n=L[b>>2];o=L[b+12>>2];p=L[b+4>>2];g=L[c+48>>2];d=O(g*L[c>>2]);h=L[b+8>>2];e=O(g*L[c+4>>2]);i=L[b+20>>2];f=O(g*L[c+8>>2]);g=L[b+32>>2];L[a+8>>2]=O(O(d*h)+O(e*i))+O(f*g);L[a+4>>2]=O(O(d*p)+O(e*k))+O(f*l);L[a>>2]=O(O(d*n)+O(e*o))+O(f*m);d=L[c+52>>2];e=O(d*L[c+12>>2]);f=O(d*L[c+16>>2]);d=O(d*L[c+20>>2]);L[a+20>>2]=O(O(h*e)+O(i*f))+O(g*d);L[a+16>>2]=O(O(p*e)+O(k*f))+O(l*d);L[a+12>>2]=O(O(n*e)+O(o*f))+O(m*d);d=L[c+56>>2];e=O(d*L[c+24>>2]);f=O(d*L[c+28>>2]);d=O(d*L[c+32>>2]);L[a+32>>2]=O(O(h*e)+O(i*f))+O(g*d);L[a+28>>2]=O(O(p*e)+O(k*f))+O(l*d);L[a+24>>2]=O(O(n*e)+O(o*f))+O(m*d);d=L[b+40>>2];e=L[b+36>>2];f=h;h=L[c+36>>2];q=i;i=L[c+40>>2];r=g;g=L[c+44>>2];L[a+44>>2]=O(O(O(f*h)+O(q*i))+O(r*g))+L[b+44>>2];L[a+40>>2]=d+O(O(O(p*h)+O(k*i))+O(l*g));L[a+36>>2]=e+O(O(O(n*h)+O(o*i))+O(m*g));D5(j,a);L[a+48>>2]=L[j>>2];L[a+52>>2]=L[j+4>>2];L[a+56>>2]=L[j+8>>2];Oa=j+16|0}function tT(a,b){var c=0,d=0,e=0,f=0,g=0;g=H[a+24>>2];a:{if(g){d=H[a+4>>2];c=J[H[a+16>>2]+(d<<1)>>1];H[H[a>>2]+(d<<2)>>2]=b;H[a+4>>2]=d+1;G[H[a+12>>2]+(c<<1)>>1]=d;H[a+24>>2]=g-1;break a}c=H[a+4>>2];if((c|0)==H[a+8>>2]){c=c<<1;c=c>>>0<65535?c:65535;H[a+8>>2]=c;b:{c:{d:{if(!c){g=0;break d}d=H[33808]+12|0;g=Ra[H[H[d>>2]+8>>2]](d,c<<2,20591,5101,94)|0;c=H[a+8>>2]<<1;if(c){break c}}c=0;d=0;break b}d=H[33808]+12|0;d=Ra[H[H[d>>2]+8>>2]](d,c,20591,5101,95)|0;c=H[a+8>>2]<<1;e:{if(!c){c=0;break e}f=H[33808]+12|0;c=Ra[H[H[f>>2]+8>>2]](f,c,20591,5101,96)|0;f=H[a+8>>2]<<1;if(f){e=H[33808]+12|0;e=Ra[H[H[e>>2]+8>>2]](e,f,20591,5101,97)|0}}}R6(g,H[a>>2],H[a+4>>2]<<2);R6(d,H[a+12>>2],H[a+4>>2]<<1);R6(c,H[a+16>>2],H[a+4>>2]<<1);f=R6(e,H[a+20>>2],H[a+4>>2]<<1);e=H[a+4>>2];S6((e<<1)+d|0,255,H[a+8>>2]-e<<1);e=H[a+4>>2];S6((e<<1)+c|0,255,H[a+8>>2]-e<<1);e=H[a+4>>2];S6(f+(e<<1)|0,0,H[a+8>>2]-e<<1);sT(a,g,d,c,f);c=H[a+4>>2]}H[H[a>>2]+(c<<2)>>2]=b;b=c<<1;G[b+H[a+12>>2]>>1]=c;G[b+H[a+16>>2]>>1]=c;H[a+4>>2]=c+1}return J[H[a+20>>2]+(c<<1)>>1]<<16|c}function Bw(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;g=Oa-160|0;Oa=g;a:{if(!H[a+660>>2]){break a}if(b){while(1){b=H[a+656>>2]+(f<<5)|0;b:{if(I[H[b+24>>2]]!=3){xA(b);break b}c=J[b+22>>1];if(c){d=H[b+24>>2];m=d+(c<<4)|0;b=H[b+28>>2];while(1){c=I[d+2|0];n=(c<<2)+12&2032;k=I[d|0]==3;e=(N(c,k?112:48)+d|0)+80|0;o=I[d+3|0];c:{if(!b){b=0;break c}if(!c){break c}l=c&3;i=0;d:{if(c-1>>>0<3){c=0;break d}p=c&252;c=0;j=0;while(1){h=c<<2;L[b>>2]=L[e+h>>2];L[b+4>>2]=L[e+(h|4)>>2];L[b+8>>2]=L[e+(h|8)>>2];L[b+12>>2]=L[e+(h|12)>>2];c=c+4|0;b=b+16|0;j=j+4|0;if((p|0)!=(j|0)){continue}break}}if(!l){break c}while(1){L[b>>2]=L[e+(c<<2)>>2];c=c+1|0;b=b+4|0;i=i+1|0;if((i|0)!=(l|0)){continue}break}}c=e+n|0;e=k?128:64;e:{if(!H[d+56>>2]){break e}d=H[d+60>>2];if(!d){break e}F[d|0]=1}d=c+N(e,o)|0;if(m>>>0>d>>>0){continue}break}}}f=f+1|0;if(f>>>0>2]){continue}break a}}while(1){b=H[a+656>>2]+(f<<5)|0;f:{if(I[H[b+24>>2]]==3){lz(b,g+120|0,g,g);break f}mz(b)}f=f+1|0;if(f>>>0>2]){continue}break}}Oa=g+160|0}function PA(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,r=0,s=0,t=0,u=0;d=H[b+12>>2];if(d){e=H[33808]+12|0;Ra[H[H[e>>2]+12>>2]](e,d)}H[b+12>>2]=0;d=H[c>>2];H[a+40>>2]=d;H[a+44>>2]=H[c+4>>2];c=H[33808];e=c+12|0;b=g7(d,0,28,0);f=b+4|0;b=(q=e,r=Qa?-1:b>>>0>f>>>0?-1:f,s=Ra[H[H[c>>2]+20>>2]](c)|0?39172:55639,t=9670,u=209,p=H[H[e>>2]+8>>2],Ra[p](q|0,r|0,s|0,t|0,u|0)|0);H[b>>2]=d;j=b+4|0;H[a+8>>2]=j;c=0;d=0;k=a+12|0;a=k;i=H[a+8>>2];if(i){l=H[a+4>>2];while(1){a=N(d,12)+l|0;m=H[a+4>>2];if(m){n=H[a>>2];e=0;while(1){a=j+N(c,28)|0;b=n+N(e,36)|0;L[a>>2]=L[b>>2];L[a+4>>2]=L[b+4>>2];L[a+8>>2]=L[b+8>>2];L[a+12>>2]=L[b+12>>2];L[a+16>>2]=L[b+16>>2];L[a+20>>2]=L[b+20>>2];g=0;f=0;o=a;h=H[b+24>>2];if(h){a:{while(1){a=N(g,12)+l|0;b=H[a+4>>2];a=H[a>>2];if(!(a>>>0>h>>>0|h>>>0>=a+N(b,36)>>>0)){b=(h-a|0)/36|0;break a}f=b+f|0;g=g+1|0;if((i|0)!=(g|0)){continue}break}b=-1}a=b+f<<1}else{a=H[b+32>>2]<<1&30|H[b+28>>2]<<5|1}H[o+24>>2]=a;c=c+1|0;e=e+1|0;if((m|0)!=(e|0)){continue}break}}d=d+1|0;if((i|0)!=(d|0)){continue}break}}fX(k)}function ki(a,b,c){var d=0,e=0;a:{b:{c:{d:{e=H[a+4>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break d}}d=H[a>>2];break b}d=H[a>>2];if(I[d+4785|0]){break a}}e=H[d+2428>>2];d=H[a+16>>2];if(d){jG(d)}d=H[a+192>>2];e:{f:{if(d){if(I[d+31|0]){break f}break e}d=H[e+288>>2];if(!d){HF(e);d=H[e+288>>2]}H[e+288>>2]=H[d>>2];H[e+280>>2]=H[e+280>>2]+1}H[d>>2]=0;H[d+4>>2]=0;H[d+56>>2]=0;H[d+60>>2]=0;H[d+48>>2]=0;H[d+52>>2]=0;H[d+40>>2]=0;H[d+44>>2]=0;H[d+32>>2]=0;H[d+36>>2]=0;H[d+24>>2]=0;H[d+28>>2]=0;H[d+16>>2]=0;H[d+20>>2]=0;H[d+8>>2]=0;H[d+12>>2]=0;H[a+192>>2]=d}F[d+12|0]=I[d+12|0]|2;if(b){L[d>>2]=L[b>>2];L[d+4>>2]=L[b+4>>2];L[d+8>>2]=L[b+8>>2]}if(c){L[d+16>>2]=L[c>>2];L[d+20>>2]=L[c+4>>2];L[d+24>>2]=L[c+8>>2]}return}d=H[a+8>>2];if(!d){d=Tt(H[a>>2],e>>>24&15);H[a+8>>2]=d}if(b){L[d+220>>2]=L[b>>2];L[d+224>>2]=L[b+4>>2];L[d+228>>2]=L[b+8>>2];b=65536}else{b=0}if(c){L[d+232>>2]=L[c>>2]+L[d+232>>2];L[d+236>>2]=L[c+4>>2]+L[d+236>>2];L[d+240>>2]=L[c+8>>2]+L[d+240>>2];b=b|131072}$t(H[a>>2],a);H[a+268>>2]=H[a+268>>2]|b}function Zx(a,b,c,d,e,f,g,h,i,j,k,l){var m=O(0),n=O(0),o=O(0);if(l){H[a>>2]=0;H[b>>2]=0;H[c>>2]=0;H[d>>2]=0;return}l=J[e+76>>1];a:{if(!(l&4)){m=O(0);if((l&3)!=3){break a}}m=O(O(O(O(L[j+8>>2]*L[e+8>>2])+O(O(L[j>>2]*L[e>>2])+O(L[j+4>>2]*L[e+4>>2])))+O(O(L[j+24>>2]*L[e+24>>2])+O(O(L[j+16>>2]*L[e+16>>2])+O(L[j+20>>2]*L[e+20>>2]))))-O(O(O(L[k+8>>2]*L[e+40>>2])+O(O(L[k>>2]*L[e+32>>2])+O(L[k+4>>2]*L[e+36>>2])))+O(O(L[k+24>>2]*L[e+56>>2])+O(O(L[k+16>>2]*L[e+48>>2])+O(L[k+20>>2]*L[e+52>>2])))))}n=f<=g?O(0):O(O(1)/f);o=L[e+12>>2];if(l&1){i=L[e+64>>2];m=L[e+68>>2];g=O(O(O(h*h)*i)+O(m*h));h=O(O(O(m*L[e+28>>2])-O(o*i))*h);b:{if(l&2){f=h;h=O(O(1)/O(g+O(1)));f=O(f*O(n*h));L[b>>2]=f;L[a>>2]=f;f=O(n*O(-h));break b}i=h;h=f!=O(0)?O(O(1)/O(O(g*f)+O(1))):O(0);f=O(i*h);L[b>>2]=f;L[a>>2]=f;f=O(-h)}L[c>>2]=g*f;L[d>>2]=O(1)-h;return}L[c>>2]=-n;H[d>>2]=1065353216;c:{if(!(l&4)){break c}f=O(-m);if(!(f>L[e+68>>2])){break c}f=O(O(n*L[e+64>>2])*f);L[a>>2]=f;L[b>>2]=f;return}L[a>>2]=n*O(L[e+28>>2]-O(o*i));L[b>>2]=n*O(L[e+28>>2]-O(L[e+72>>2]*i))}function Rh(a,b){a=a|0;b=b|0;var c=O(0),d=O(0),e=O(0),f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=0,m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0);l=H[b+316>>2]&1024?H[b+56>>2]+144|0:b+112|0;n=L[l+16>>2];o=L[l+24>>2];p=L[l+20>>2];s=L[b+272>>2];t=L[b+276>>2];f=L[b+280>>2];h=L[b+264>>2];d=L[l+8>>2];i=L[b+260>>2];e=L[l+4>>2];g=L[b+268>>2];c=L[l+12>>2];j=L[l>>2];k=L[b+256>>2];L[a+12>>2]=O(h*d)+O(O(i*e)+O(O(g*c)+O(j*k)));L[a+8>>2]=O(j*i)+O(O(O(c*h)-O(g*d))-O(k*e));L[a+4>>2]=O(d*k)+O(O(O(c*i)-O(g*e))-O(h*j));L[a>>2]=O(e*h)+O(O(O(c*k)-O(g*j))-O(i*d));u=f;o=O(o*O(-2));n=O(n*O(-2));p=O(p*O(-2));q=O(O(d*o)+O(O(j*n)+O(e*p)));r=O(O(c*c)+O(-.5));f=O(O(d*q)+O(O(o*r)-O(c*O(O(j*p)-O(n*e)))));f=O(f+f);m=O(O(j*q)+O(O(n*r)-O(c*O(O(e*o)-O(p*d)))));m=O(m+m);c=O(O(e*q)+O(O(p*r)-O(c*O(O(d*n)-O(o*j)))));c=O(c+c);d=O(O(h*f)+O(O(k*m)+O(i*c)));e=O(O(g*g)+O(-.5));L[a+24>>2]=u+O(O(h*d)+O(O(f*e)+O(g*O(O(k*c)-O(m*i)))));L[a+20>>2]=t+O(O(i*d)+O(O(c*e)+O(g*O(O(h*m)-O(f*k)))));L[a+16>>2]=s+O(O(k*d)+O(O(m*e)+O(g*O(O(i*f)-O(c*h)))))}function JU(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=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0);s=O(L[e+4>>2]+L[c+4>>2]);u=L[d+24>>2];i=L[f>>2];g=O(i+i);m=L[f+8>>2];n=L[f+4>>2];j=L[f+12>>2];k=O(j+j);p=L[e+8>>2];o=O(O(O(g*m)-O(n*k))*p);q=L[f+24>>2];t=O(o+q);h=O(u-t);r=L[f+20>>2];v=O(p*O(O(m*k)+O(g*n)));n=O(r+v);m=O(O(q-o)-t);q=L[d+16>>2];o=L[f+16>>2];g=O(O(O(i*g)+O(O(j*k)+O(-1)))*p);p=O(o+g);i=O(q-p);j=O(O(o-g)-p);k=O(O(r-v)-n);r=L[d+20>>2];g=O(r-n);o=O(O(h*m)+O(O(i*j)+O(k*g)));a:{if(o<=O(0)){break a}l=O(O(m*m)+O(O(j*j)+O(k*k)));if(l<=o){h=O(h-m);g=O(g-k);i=O(i-j);l=O(1);break a}l=O(o/l);h=O(h-O(m*l));g=O(g-O(k*l));i=O(i-O(j*l))}c=O(O(h*h)+O(O(i*i)+O(g*g)))>O(s*s);if(!c){h=O(u-O(t+O(m*l)));i=O(q-O(p+O(j*l)));g=O(r-O(n+O(k*l)));n=O(O(h*h)+O(O(i*i)+O(g*g)));l=O(W(n));m=O(1);j=O(0);k=O(0);if(!(n>2]=k;L[a+4>>2]=j;L[a>>2]=m;h=O(s-l);L[b>>2]=h>O(0)?h:O(0)}return!c|0}function fQ(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;c=H[a+28>>2];d=H[c+2460>>2];if(d){a=0;while(1){e=H[(H[c+2456>>2]+(a<<3)|0)+4>>2];if(!(I[e+46|0]&4)){jF(H[c+1e3>>2],H[e+60>>2])}a=a+1|0;if((d|0)!=(a|0)){continue}break}}d=0;e=Oa-16|0;Oa=e;a=H[c+1e3>>2];b=a+168|0;OE(b);QE(b);PE(b);UE(b,a+32|0,0,0);if(H[a+36>>2]){while(1){b=H[H[a+32>>2]+(d<<2)>>2]>>>7|0;H[e+12>>2]=b;a:{if((b|0)==H[a+12>>2]){H[a+12>>2]=b-1;break a}f=H[a+4>>2];if(f>>>0>=(H[a+8>>2]&2147483647)>>>0){qm(a,e+12|0);break a}H[H[a>>2]+(f<<2)>>2]=b;H[a+4>>2]=H[a+4>>2]+1}d=d+1|0;if(d>>>0>2]){continue}break}}H[a+36>>2]=0;Oa=e+16|0;c=H[c+1e3>>2];a=H[c+420>>2];d=H[c+284>>2]-a|0;if(d){e=H[c+280>>2]+(a<<2)|0;a=0;while(1){b=H[c+184>>2]+N(H[e+(a<<2)>>2]>>>7|0,24)|0;f=H[b+20>>2];if(!(!f|!(I[b+4|0]&2))){dG(f+-64|0,1)}a=a+1|0;if((d|0)!=(a|0)){continue}break}}a=H[c+424>>2];d=H[c+296>>2]-a|0;if(d){e=H[c+292>>2]+(a<<2)|0;a=0;while(1){b=H[c+184>>2]+N(H[e+(a<<2)>>2]>>>7|0,24)|0;f=H[H[b+20>>2]+16>>2];if(!(!f|!(I[b+4|0]&2))){zF(f,1)}a=a+1|0;if((d|0)!=(a|0)){continue}break}}}function BM(a,b,c,d){a=a|0;b=O(b);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;a:{h=H[a+44>>2];if(!h){break a}if(!d){while(1){d=yq(H[H[a+4>>2]+1156>>2],56);e=H[a+4>>2];f=H[e+1832>>2];i=H[e+1836>>2];j=H[a+40>>2];k=H[a+52>>2];l=H[a+104>>2];H[d+24>>2]=0;H[d+16>>2]=0;H[d+20>>2]=0;H[d+52>>2]=l;H[d+48>>2]=e;L[d+44>>2]=b;e=h-g|0;e=e>>>0<128?e:128;H[d+40>>2]=e;H[d+36>>2]=k+(g<<3);H[d+32>>2]=(g<<4)+c;H[d+28>>2]=j+(g<<2);H[d+8>>2]=f;H[d+12>>2]=i;H[d>>2]=119044;H[d+24>>2]=1;f=H[d+16>>2];Ra[H[H[f>>2]+72>>2]](f,d);g=e+g|0;if(h>>>0>g>>>0){continue}break a}}while(1){e=yq(H[H[a+4>>2]+1156>>2],56);f=H[a+4>>2];i=H[f+1836>>2];j=H[f+1832>>2];k=H[a+40>>2];l=H[a+52>>2];m=H[a+104>>2];H[e+24>>2]=0;H[e+16>>2]=0;H[e+52>>2]=m;H[e+48>>2]=f;L[e+44>>2]=b;f=h-g|0;f=f>>>0<128?f:128;H[e+40>>2]=f;H[e+36>>2]=l+(g<<3);H[e+32>>2]=(g<<4)+c;H[e+28>>2]=k+(g<<2);H[e+8>>2]=j;H[e+12>>2]=i;H[e>>2]=119044;H[e+20>>2]=d;H[e+24>>2]=1;Ra[H[H[d>>2]+16>>2]](d);H[e+16>>2]=H[H[e+20>>2]+16>>2];Ra[H[H[e>>2]+20>>2]](e);g=g+f|0;if(h>>>0>g>>>0){continue}break}}}function oY(a,b,c,d,e,f){var g=0,h=O(0),i=O(0),j=O(0),k=0;g=Oa-480|0;Oa=g;mZ(lZ(g+184|0,a+4|0),g+408|0);h=L[a+8>>2];i=L[a+4>>2];j=L[a+12>>2];L[g+180>>2]=j;L[g+176>>2]=h;L[g+172>>2]=i;L[g+168>>2]=-j;L[g+164>>2]=-h;L[g+160>>2]=-i;a=0;a:{if(L[b+4>>2]!=O(1)){break a}a=0;if(L[b+8>>2]!=O(1)){break a}a=L[b+12>>2]==O(1)}H[g+144>>2]=0;H[g+148>>2]=1065353216;H[g+136>>2]=0;H[g+140>>2]=0;H[g+128>>2]=0;H[g+132>>2]=1065353216;H[g+120>>2]=0;H[g+124>>2]=0;H[g+112>>2]=1065353216;H[g+116>>2]=1065353216;H[g+96>>2]=1065353216;H[g+100>>2]=0;F[g+152|0]=0;H[g+104>>2]=0;H[g+108>>2]=0;H[g+88>>2]=0;H[g+92>>2]=0;H[g+80>>2]=1065353216;H[g+84>>2]=0;if(!a){yW(g+80|0,b+4|0,b+16|0)}k=g- -64|0;H[k>>2]=0;H[k+4>>2]=1065353216;H[g+56>>2]=0;H[g+60>>2]=0;H[g+48>>2]=0;H[g+52>>2]=1065353216;H[g+40>>2]=0;H[g+44>>2]=0;H[g+32>>2]=1065353216;H[g+36>>2]=1065353216;H[g+16>>2]=1065353216;H[g+20>>2]=0;F[g+72|0]=0;H[g+24>>2]=0;H[g+28>>2]=0;H[g+8>>2]=0;H[g+12>>2]=0;H[g>>2]=1065353216;H[g+4>>2]=0;a=mY(g+408|0,g+160|0,b,c,d,e,f,g,g+80|0,1,a);Oa=g+480|0;return a}function k3(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;if(!H[a+28>>2]){Ra[H[H[b>>2]+8>>2]](b);Ra[H[H[b>>2]+28>>2]](b);return}a:{if(!H[a+28>>2]){break a}while(1){f=0;g=H[a+4>>2]+N(d,28)|0;b:{if(H[g+24>>2]!=135960){break b}e=H[g+12>>2];c=H[e>>2];if(c){H[e>>2]=H[c>>2]}c:{if(c){H[c+4>>2]=b;break c}c=H[33808];e=Ra[H[H[c>>2]+20>>2]](c)|0?21028:55639;e=Ra[H[H[c+12>>2]+8>>2]](c+12|0,27,e,15171,127)|0;if(!e){break b}c=e+11&-8;H[c-4>>2]=c-e;if(!c){break b}F[c+8|0]=0;H[c+4>>2]=b;H[c>>2]=0}f=H[g+20>>2];H[c>>2]=H[f>>2];H[f>>2]=c;f=1}if(!f){d=d+1|0;if(d>>>0>2]){continue}break a}break}a=H[a+20>>2];if(!I[a+76|0]){F[a+76|0]=1;H[a+72>>2]=H[a+72>>2]+1}return}c=H[a+12>>2];d=H[c>>2];if(d){H[c>>2]=H[d>>2]}d:{e:{if(d){H[d+4>>2]=b;break e}d=H[33808];c=Ra[H[H[d>>2]+20>>2]](d)|0?21028:55639;c=Ra[H[H[d+12>>2]+8>>2]](d+12|0,27,c,15171,127)|0;if(!c){break d}d=c+11&-8;H[d-4>>2]=d-c;if(!d){break d}F[d+8|0]=0;H[d+4>>2]=b;H[d>>2]=0}b=H[a+16>>2];H[d>>2]=H[b>>2];H[b>>2]=d;a=H[a+20>>2];if(!I[a+76|0]){F[a+76|0]=1;H[a+72>>2]=H[a+72>>2]+1}}}function pu(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=O(0),j=O(0),k=O(0),l=0;f=Oa-576|0;Oa=f;H[f+560>>2]=0;H[f+564>>2]=1065353216;H[f+552>>2]=0;H[f+556>>2]=0;H[f+544>>2]=0;H[f+548>>2]=1065353216;H[f+536>>2]=0;H[f+540>>2]=0;H[f+528>>2]=1065353216;H[f+532>>2]=1065353216;H[f+512>>2]=1065353216;H[f+516>>2]=0;F[f+568|0]=0;H[f+520>>2]=0;H[f+524>>2]=0;H[f+504>>2]=0;H[f+508>>2]=0;H[f+496>>2]=1065353216;H[f+500>>2]=0;i=L[a+8>>2];j=L[a+4>>2];k=L[a+12>>2];L[f+492>>2]=k;L[f+488>>2]=i;L[f+484>>2]=j;L[f+480>>2]=-k;L[f+476>>2]=-i;L[f+472>>2]=-j;h=lZ(f+176|0,a+4|0);a=f+400|0;mZ(h,a);H[f+160>>2]=0;H[f+164>>2]=1065353216;H[f+152>>2]=0;H[f+156>>2]=0;H[f+144>>2]=0;H[f+148>>2]=1065353216;H[f+136>>2]=0;H[f+140>>2]=0;H[f+128>>2]=1065353216;H[f+132>>2]=1065353216;H[f+112>>2]=1065353216;H[f+116>>2]=0;F[f+168|0]=0;H[f+120>>2]=0;H[f+124>>2]=0;H[f+104>>2]=0;H[f+108>>2]=0;H[f+96>>2]=1065353216;H[f+100>>2]=0;h=a;a=f+72|0;l=c;c=f+96|0;a=hY(h,f,f+472|0,a,l,d,e,g,f+496|0,c,1,KY(b,c,a,f));Oa=f+576|0;return a|0}function eG(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0;H[a>>2]=115344;i=H[a+152>>2];c=H[a+44>>2];d=H[a+40>>2];UF(c,H[d+2412>>2],F[c+44|0]&1);G[a+148>>1]=J[a+148>>1]|8;c=Oa-16|0;Oa=c;b=H[a+164>>2];if(b){IG(H[d+1136>>2],b,0)}b=H[a+44>>2];H[c+8>>2]=b;Pf(d+2200|0,c+8|0);H[c+4>>2]=b;Pf(d+2240|0,c+4|0);if(!(!(I[b+44|0]&16)|K[a+152>>2]>4294967293)){H[c+12>>2]=a;Pf(d+4632|0,c+12|0)}g=H[a+48>>2];f=g+32>>>5|0;a:{if(f>>>0<=(H[d+2436>>2]&2147483647)>>>0){b=H[d+2432>>2];break a}b=H[33808]+12|0;b=Ra[H[H[b>>2]+8>>2]](b,f<<2,20591,14905,438)|0;e=H[d+2432>>2];b:{if(!e){break b}R6(b,e,H[d+2436>>2]<<2);if(H[d+2436>>2]<0){break b}e=H[d+2432>>2];if(!e){break b}h=H[33808]+12|0;Ra[H[H[h>>2]+12>>2]](h,e)}e=H[d+2436>>2];S6((e<<2)+b|0,0,f-e<<2);H[d+2436>>2]=f;H[d+2432>>2]=b}b=(g>>>3&536870908)+b|0;H[b>>2]=H[b>>2]|1<>2];c:{if(c){xF(c,a);if(H[a+160>>2]){break c}}c=H[a+144>>2];if(c&126){break c}ZE(H[d+1e3>>2],c)}if(i>>>0<=4294967293){TN(d,a)}H[a+152>>2]=-1;H[a+156>>2]=-1;H[H[a+44>>2]>>2]=0;WI(a);return a|0}function Wr(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;f=H[a+8>>2]&2147483647;i=f?f<<1:1;a:{if(!i){break a}c=N(i,48);if(!c){break a}g=H[33808];f=g+12|0;g=(k=f,l=c,m=Ra[H[H[g>>2]+20>>2]](g)|0?37984:55639,n=13582,o=553,j=H[H[f>>2]+8>>2],Ra[j](k|0,l|0,m|0,n|0,o|0)|0)}h=H[a+4>>2];e=N(h,48)+g|0;f=H[a>>2];if((h|0)>0){d=f;c=g;while(1){L[c>>2]=L[d>>2];L[c+4>>2]=L[d+4>>2];L[c+8>>2]=L[d+8>>2];H[c+12>>2]=H[d+12>>2];L[c+16>>2]=L[d+16>>2];L[c+20>>2]=L[d+20>>2];L[c+24>>2]=L[d+24>>2];H[c+28>>2]=H[d+28>>2];L[c+32>>2]=L[d+32>>2];L[c+36>>2]=L[d+36>>2];L[c+40>>2]=L[d+40>>2];H[c+44>>2]=H[d+44>>2];d=d+48|0;c=c+48|0;if(e>>>0>c>>>0){continue}break}}L[e>>2]=L[b>>2];L[e+4>>2]=L[b+4>>2];L[e+8>>2]=L[b+8>>2];H[e+12>>2]=H[b+12>>2];L[e+16>>2]=L[b+16>>2];L[e+20>>2]=L[b+20>>2];L[e+24>>2]=L[b+24>>2];H[e+28>>2]=H[b+28>>2];L[e+32>>2]=L[b+32>>2];L[e+36>>2]=L[b+36>>2];L[e+40>>2]=L[b+40>>2];H[e+44>>2]=H[b+44>>2];if(!(!f|H[a+8>>2]<0)){b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,f);h=H[a+4>>2]}H[a+8>>2]=i;H[a>>2]=g;H[a+4>>2]=h+1}function UX(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=O(0),f=O(0),g=0,h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=0,u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0);g=H[b+8>>2];t=d;d=H[b+4>>2];o=L[d+72>>2];e=L[c+8>>2];f=L[c>>2];h=L[c+4>>2];i=O(O(L[b+56>>2]*e)+O(O(L[b+24>>2]*f)+O(h*L[b+40>>2])));p=L[d- -64>>2];j=O(O(L[b+48>>2]*e)+O(O(L[b+16>>2]*f)+O(h*L[b+32>>2])));e=O(O(L[b+52>>2]*e)+O(O(L[b+20>>2]*f)+O(h*L[b+36>>2])));h=L[d+68>>2];f=O(O(o*i)+O(O(p*j)+O(e*h)));q=L[d+88>>2];r=L[d+80>>2];s=L[d+84>>2];k=O(O(q*i)+O(O(r*j)+O(e*s)));b=f>k;l=f;f=L[d+56>>2];m=O(f*i);i=L[d+48>>2];n=O(i*j);j=L[d+52>>2];e=O(m+O(n+O(e*j)));c=!(lk);H[t>>2]=c?b?1:2:0;k=L[g+52>>2];u=L[g+36>>2];v=L[g+20>>2];e=L[g+56>>2];w=L[g+40>>2];x=L[g+24>>2];y=L[g+48>>2];z=L[g+32>>2];A=L[g>>2];B=L[g+16>>2];m=L[g+4>>2];n=L[g+8>>2];H[a+12>>2]=0;l=e;e=c?b?o:q:f;f=c?b?p:r:i;h=c?b?h:s:j;L[a+8>>2]=l+O(O(w*e)+O(O(n*f)+O(x*h)));L[a+4>>2]=k+O(O(u*e)+O(O(m*f)+O(h*v)));L[a>>2]=y+O(O(z*e)+O(O(A*f)+O(h*B)))}function ZM(a){a=a|0;var b=0,c=0;H[a+8>>2]=118912;H[a>>2]=118764;b=H[a+112>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+100>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=H[a+92>>2];if(!b){break a}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+88>>2];b:{if((b|0)<0|!(b&2147483647)){break b}b=H[a+80>>2];if(!b){break b}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+76>>2];c:{if((b|0)<0|!(b&2147483647)){break c}b=H[a+68>>2];if(!b){break c}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+60>>2];d:{if((b|0)<0|!(b&2147483647)){break d}b=H[a+52>>2];if(!b){break d}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+48>>2];e:{if((b|0)<0|!(b&2147483647)){break e}b=H[a+40>>2];if(!b){break e}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+36>>2];f:{if((b|0)<0|!(b&2147483647)){break f}b=H[a+28>>2];if(!b){break f}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+20>>2];g:{if((b|0)<0|!(b&2147483647)){break g}b=H[a+12>>2];if(!b){break g}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}return a|0}function rL(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=O(0),o=O(0),p=O(0);e=(H[a>>2]<<5)+b|0;a=J[e+22>>1];if(a){b=H[e+24>>2];l=b+(a<<4)|0;c=H[e+60>>2];a=H[e+92>>2];i=H[e+124>>2];e=H[e+28>>2];while(1){g=0;d=b;k=d+240|0;h=I[d+1|0];b=h<<4;j=I[d+2|0];m=(((k+b|0)+N(h,160)|0)+(b&0-(F[d+3|0]&1))|0)+(j<<4)|0;if(h){while(1){b=a;f=(g<<4)+k|0;n=L[f+12>>2];o=L[f+8>>2];p=L[f+4>>2];a=0;a:{if(!e){break a}a=e;if(I[d+8|0]<=g>>>0){break a}L[e>>2]=L[f>>2];a=e+4|0}e=a;a=0;f=0;b:{if(!c){break b}f=c;if(I[d+9|0]<=g>>>0){break b}L[c>>2]=p;f=c+4|0}c=f;c:{if(!b){break c}if(I[d+10|0]<=g>>>0){a=b;break c}L[b>>2]=o;a=b+4|0}d:{if(!i){i=0;break d}if(I[d+11|0]<=g>>>0){break d}L[i>>2]=n;i=i+4|0}g=g+1|0;if((h|0)!=(g|0)){continue}break}}b=N(j,208)+m|0;e:{if(!j){break e}f=H[d+220>>2];g=H[d+216>>2];h=H[d+212>>2];if(!(!I[d+8|0]|!H[d+208>>2])){F[H[d+224>>2]]=1}if(!(!I[d+9|0]|!h)){F[H[d+228>>2]]=1}if(!(!I[d+10|0]|!g)){F[H[d+232>>2]]=1}if(!I[d+11|0]|!f){break e}F[H[d+236>>2]]=1}if(b>>>0>>0){continue}break}}}function dT(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;f=Oa-16|0;Oa=f;H[f+8>>2]=b;b=Ym(a+144|0,f+8|0,f+15|0);a:{if(!I[f+15|0]){H[b>>2]=H[f+8>>2];H[b+4>>2]=-1;break a}e=b;b=H[b+4>>2]-1|0;H[e+4>>2]=b;if(b){break a}b:{if(!H[a+180>>2]){break b}i=H[a+156>>2];d=H[f+8>>2];b=(d<<15^-1)+d|0;b=N(b>>>10^b,9);b=b>>>6^b;b=(b<<11^-1)+b|0;c=i+((H[a+164>>2]-1&(b>>>16^b))<<2)|0;b=H[c>>2];if((b|0)==-1){break b}h=H[a+152>>2];g=H[a+148>>2];e=g+(b<<3)|0;if((d|0)!=H[e>>2]){while(1){c=(b<<2)+h|0;b=H[c>>2];if((b|0)==-1){break b}e=g+(b<<3)|0;if((d|0)!=H[e>>2]){continue}break}}d=(b<<2)+h|0;H[c>>2]=H[d>>2];c=H[a+180>>2]-1|0;H[a+180>>2]=c;H[a+176>>2]=H[a+176>>2]+1;if((b|0)!=(c|0)){j=e;e=g+(c<<3)|0;c=H[e>>2];H[j>>2]=c;H[(g+(b<<3)|0)+4>>2]=H[e+4>>2];H[d>>2]=H[(H[a+180>>2]<<2)+h>>2];c=c+(c<<15^-1)|0;c=N(c>>>10^c,9);c=c>>>6^c;c=(c<<11^-1)+c|0;c=((H[a+164>>2]-1&(c>>>16^c))<<2)+i|0;d=H[c>>2];g=H[a+180>>2];if((d|0)!=(g|0)){while(1){c=(d<<2)+h|0;d=H[c>>2];if((g|0)!=(d|0)){continue}break}}H[c>>2]=b}H[a+172>>2]=H[a+172>>2]-1}}Oa=f+16|0}function HW(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=O(f);g=g|0;h=h|0;i=O(i);var j=0,k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0);j=Oa-96|0;Oa=j;l=L[b+4>>2];o=O(l+l);k=L[b+8>>2];p=O(o*k);m=L[b>>2];n=O(m+m);r=L[b+12>>2];q=O(n*r);L[j+60>>2]=p-q;L[j+52>>2]=p+q;m=O(O(1)-O(m*n));p=O(l*o);L[j- -64>>2]=m-p;s=m;m=O(k+k);q=O(k*m);L[j+48>>2]=s-q;k=O(n*k);o=O(o*r);L[j+56>>2]=k+o;l=O(n*l);n=O(m*r);L[j+44>>2]=l-n;L[j+40>>2]=k-o;L[j+36>>2]=l+n;L[j+32>>2]=O(O(1)-p)-q;L[j+68>>2]=L[b+16>>2];L[j+72>>2]=L[b+20>>2];L[j+76>>2]=L[b+24>>2];L[j+80>>2]=L[a+4>>2];L[j+84>>2]=L[a+8>>2];L[j+88>>2]=L[a+12>>2];k=L[e>>2];l=L[e+4>>2];n=L[e+8>>2];G[j+8>>1]=J[h>>1]&64511;L[j+24>>2]=-n;L[j+20>>2]=-l;L[j+16>>2]=-k;a=AW(c,d,a,b,j+32|0,j+16|0,f,g,j+8|0,i);if(a){if(F[g+12|0]&1){i=L[e+8>>2];k=L[e+4>>2];f=L[g+40>>2];L[g+16>>2]=O(f*L[e>>2])+L[g+16>>2];L[g+20>>2]=O(f*k)+L[g+20>>2];L[g+24>>2]=O(f*i)+L[g+24>>2]}H[g+8>>2]=-1;L[g+28>>2]=-L[g+28>>2];L[g+36>>2]=-L[g+36>>2];L[g+32>>2]=-L[g+32>>2]}Oa=j+96|0;return a|0}function BF(a,b,c){var d=O(0),e=0,f=O(0);F[a+10|0]=0;F[a+9|0]=b;F[a+8|0]=1;H[a>>2]=0;H[a+4>>2]=16777215;H[a+176>>2]=0;G[a+174>>1]=0;H[a+44>>2]=0;e=H[33794];f=L[e>>2];d=L[e+4>>2];L[a+16>>2]=L[c>>2];L[a+20>>2]=L[c+4>>2];L[a+24>>2]=L[c+8>>2];L[a+28>>2]=L[c+12>>2];L[a+32>>2]=L[c+16>>2];L[a+36>>2]=L[c+20>>2];L[a+40>>2]=L[c+24>>2];F[a+174|0]=0;G[a+172>>1]=0;L[a+156>>2]=L[19790];L[a+152>>2]=d*O(d*O(2499999936844688e-20));L[a+148>>2]=d*O(d*O(4999999873689376e-20));H[a+140>>2]=1065353216;H[a+144>>2]=1956496814;H[a+132>>2]=1065353216;H[a+136>>2]=1065353216;H[a+124>>2]=1028443341;H[a+128>>2]=1065353216;b=(b|0)==1;L[a+120>>2]=b?O(0):O(.05000000074505806);L[a+116>>2]=b?O(1.0000000331813535e32):O(f*O(f*O(1e4)));L[a+112>>2]=b?O(1e4):O(2500);H[a+104>>2]=0;H[a+108>>2]=2139095039;H[a+96>>2]=0;H[a+100>>2]=0;H[a+88>>2]=0;H[a+92>>2]=-190986834;H[a+80>>2]=0;H[a+84>>2]=0;H[a+72>>2]=0;H[a+76>>2]=1041865114;b=a- -64|0;H[b>>2]=0;H[b+4>>2]=0;H[a+56>>2]=0;H[a+60>>2]=1065353216;H[a+48>>2]=0;H[a+52>>2]=0;H[a+44>>2]=17039616}function UA(a,b,c,d){var e=O(0),f=O(0),g=O(0),h=O(0),i=0,j=0,k=O(0),l=O(0),m=O(0),n=O(0),o=O(0);i=H[a+24>>2];j=i>>>1|0;a:{if(i&1){j=j&15;if(!j){k=O(0x382c5fc0000000);g=O(-0x382c5fc0000000);l=O(-0x382c5fc0000000);m=O(-0x382c5fc0000000);h=O(0x382c5fc0000000);n=O(0x382c5fc0000000);break a}i=(i>>>3&536870908)+c|0;c=N(H[i>>2],24)+b|0;e=L[c+12>>2];n=L[c+8>>2];h=L[c+4>>2];k=L[c>>2];m=L[c+20>>2];l=L[c+16>>2];if((j|0)==1){g=e;break a}d=i+4|0;i=i+(j<<2)|0;o=L[c+24>>2];g=e;while(1){c=N(H[d>>2],24)+b|0;f=L[c+12>>2];g=g>f?g:f;e=e>2];n=f>n?n:f;f=L[c+4>>2];h=f>h?h:f;f=L[c>>2];k=f>k?k:f;f=L[c+24>>2];o=f>2];m=f>2];l=f>2];e=L[b+28>>2];k=e>g?g:e;g=L[b+20>>2];e=L[b+48>>2];m=e>2];e=L[b+44>>2];l=e>2];e=L[b+40>>2];g=e>2];h=L[b+36>>2];n=e>2];h=L[b+32>>2];h=e>2]=g;L[a+8>>2]=n;L[a+4>>2]=h;L[a>>2]=k;L[a+20>>2]=m;L[a+16>>2]=l}function GQ(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;c=H[a+44>>2];if(!(!(c&476)|!(c&4194304))){d=H[H[H[a+4>>2]+40>>2]+2168>>2];f=Oa-16|0;Oa=f;e=a;H[f+12>>2]=a;H[a+44>>2]=H[a+44>>2]|2097152;h=d+16|0;c=H[d+20>>2];g=H[d+28>>2];a:{if((c|0)==(g|0)){H[e+52>>2]=c;if((H[d+24>>2]&2147483647)>>>0<=c>>>0){DI(h,f+12|0);c=H[d+28>>2];break a}H[H[d+16>>2]+(c<<2)>>2]=e;H[d+20>>2]=c+1;break a}j=H[d+16>>2];i=H[j+(g<<2)>>2];H[f+8>>2]=i;H[i+52>>2]=c;b:{if((H[d+24>>2]&2147483647)>>>0<=c>>>0){DI(h,f+8|0);c=H[d+28>>2];break b}H[(c<<2)+j>>2]=i;H[d+20>>2]=c+1;e=H[f+12>>2];c=g}H[e+52>>2]=c;H[H[h>>2]+(c<<2)>>2]=e}H[d+28>>2]=c+1;Oa=f+16|0;H[a+44>>2]=H[a+44>>2]&-4194305}c=H[H[a+32>>2]+4>>2];e=I[H[c+44>>2]+9|0]-1>>>0<2?c:0;g=H[H[H[H[a+4>>2]+40>>2]+1e3>>2]+656>>2];c=H[H[a+28>>2]+4>>2];c:{if(!(I[(g+N(H[(I[H[c+44>>2]+9|0]-1>>>0<2?c:0)+144>>2]>>>7|0,24)|0)+4|0]&2)){c=0;if(!e|!(I[(g+N(H[e+144>>2]>>>7|0,24)|0)+4|0]&2)){break c}}d:{if(H[a+56>>2]){break d}HQ(a,b);if(H[a+56>>2]){break d}return 0}F[a+25|0]=I[a+25|0]|32;c=1}return c}function Fs(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=0,l=0;c=Oa-32|0;Oa=c;g=L[b+12>>2];h=L[b+8>>2];i=L[b>>2];j=L[b+4>>2];f=O(O(1)/O(W(O(O(g*g)+O(O(h*h)+O(O(i*i)+O(j*j)))))));L[c+12>>2]=g*f;L[c+8>>2]=h*f;L[c+4>>2]=j*f;L[c>>2]=i*f;L[c+16>>2]=L[b+16>>2];L[c+20>>2]=L[b+20>>2];L[c+24>>2]=L[b+24>>2];b=a+48|0;e=Oa-16|0;Oa=e;a:{b:{c:{d:{d=a+32|0;k=H[d+4>>2];l=k>>>30|0;switch(l-2|0){case 1:break b;case 0:break d;default:break c}}if(I[H[d>>2]+4785|0]){break b}}L[b+32>>2]=L[c>>2];L[b+36>>2]=L[c+4>>2];L[b+40>>2]=L[c+8>>2];L[b+44>>2]=L[c+12>>2];L[b+48>>2]=L[c+16>>2];L[b+52>>2]=L[c+20>>2];L[b+56>>2]=L[c+24>>2];d=H[d-12>>2];if(!d|(l|0)==1){break a}F[e|0]=I[b- -64|0];H[e+8>>2]=4;UI(d- -64|0,b,e+8|0,e,0);break a}b=H[d+8>>2];if(!b){b=Tt(H[d>>2],k>>>24&15);H[d+8>>2]=b}L[b>>2]=L[c>>2];L[b+4>>2]=L[c+4>>2];L[b+8>>2]=L[c+8>>2];L[b+12>>2]=L[c+12>>2];L[b+16>>2]=L[c+16>>2];L[b+20>>2]=L[c+20>>2];L[b+24>>2]=L[c+24>>2];$t(H[d>>2],d);H[d+4>>2]=H[d+4>>2]|4}Oa=e+16|0;us(a,63586);Oa=c+32|0}function pB(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,o=0;n=Oa-32|0;a:{if(H[a+16>>2]+(H[a+12>>2]+(H[a+8>>2]+(H[a+4>>2]+H[a>>2]|0)|0)|0)>>>0>=16){while(1){H[n+28>>2]=n;b=H[n+28>>2];e=H[b>>2]&2147483640;f=H[b+4>>2]&2147483640|1;j=e>>>0>f>>>0;g=j?e:f;h=H[b+8>>2]&2147483640|2;k=g>>>0>h>>>0;c=k?g:h;d=H[b+12>>2]&2147483640|3;i=c>>>0>d>>>0;l=i?c:d;b=H[b+16>>2]&2147483640|4;m=l>>>0>b>>>0;e=j?f:e;f=k?h:g;j=e>>>0>f>>>0;g=j?e:f;h=i?d:c;k=g>>>0>h>>>0;c=k?g:h;d=m?b:l;i=c>>>0>d>>>0;b=m?l:b;l=i?c:d;m=b>>>0>>0;e=j?f:e;f=k?h:g;j=e>>>0>f>>>0;g=j?e:f;h=i?d:c;k=g>>>0>h>>>0;c=m?b:l;d=k?g:h;i=c>>>0>>0;e=j?f:e;f=k?h:g;j=e>>>0>f>>>0;g=i?c:d;h=j?e:f;k=g>>>0>>0;b=m?l:b;c=i?d:c;d=b>>>0>>0;i=d?b:c;l=k?h:g;m=i>>>0>>0;b=d?c:b;c=m?l:i;d=b>>>0>>0;G[((o<<1)+a|0)+208>>1]=(d?c:b)<<12&28672|((d?b:c)<<9&3584|((m?i:l)<<6&448|((k?g:h)<<3&56|(j?f:e)&7)));o=o+1|0;if((o|0)!=8){continue}break}break a}H[a+208>>2]=1183336072;H[a+212>>2]=1183336072;H[a+216>>2]=1183336072;H[a+220>>2]=1183336072}}function W$(a,b,c){var d=O(0),e=O(0),f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0);x=L[b+52>>2];y=L[c+52>>2];z=L[b+56>>2];n=L[c+56>>2];o=L[c+20>>2];p=L[c+24>>2];h=L[b+20>>2];i=L[b+24>>2];q=L[c+36>>2];d=L[b+36>>2];r=L[c+40>>2];e=L[b+40>>2];A=L[b+48>>2];s=L[c+48>>2];t=L[c+16>>2];j=L[b+16>>2];u=L[c+32>>2];f=L[b+32>>2];v=L[c+8>>2];k=L[b+8>>2];w=L[c>>2];l=L[b>>2];g=L[c+4>>2];m=L[b+4>>2];H[a+60>>2]=0;H[a+44>>2]=0;H[a+28>>2]=0;H[a+12>>2]=0;L[a>>2]=O(k*v)+O(O(l*w)+O(m*g));L[a+40>>2]=O(e*r)+O(O(f*u)+O(d*q));L[a+36>>2]=O(i*r)+O(O(j*u)+O(h*q));L[a+32>>2]=O(k*r)+O(O(l*u)+O(m*q));L[a+24>>2]=O(e*p)+O(O(f*t)+O(d*o));L[a+20>>2]=O(i*p)+O(O(j*t)+O(h*o));L[a+16>>2]=O(k*p)+O(O(l*t)+O(m*o));L[a+8>>2]=O(e*v)+O(O(f*w)+O(d*g));L[a+4>>2]=O(i*v)+O(O(j*w)+O(h*g));g=e;e=O(n-z);n=f;f=O(s-A);s=d;d=O(y-x);L[a+56>>2]=O(g*e)+O(O(n*f)+O(s*d));L[a+52>>2]=O(i*e)+O(O(j*f)+O(d*h));L[a+48>>2]=O(k*e)+O(O(l*f)+O(d*m))}function sN(a,b,c,d){var e=0,f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0);e=H[a+36>>2];if(L[e+124>>2]!=O(0)){a:{if(d){L[e+16>>2]=L[a+16>>2];L[e+20>>2]=L[a+20>>2];L[e+24>>2]=L[a+24>>2];L[e>>2]=L[a>>2];L[e+4>>2]=L[a+4>>2];L[e+8>>2]=L[a+8>>2];L[e+12>>2]=L[a+12>>2];b=O(O(1)-b);break a}j=O(1);f=L[a+20>>2];g=L[a+24>>2];b=O(O(1)-b);L[e+16>>2]=O(b*O(L[e+64>>2]*c))+L[a+16>>2];L[e+24>>2]=g+O(b*O(L[e+72>>2]*c));L[e+20>>2]=f+O(b*O(L[e+68>>2]*c));f=O(b*O(L[e+88>>2]*c));g=O(b*O(L[e+80>>2]*c));c=O(b*O(L[e+84>>2]*c));i=O(W(O(O(f*f)+O(O(g*g)+O(c*c)))));if(i>O(9.999999682655225e-21)){h=f;f=O(O(1)/i);m=O(h*f);k=O(c*f);j=O(g*f)}c=L[a+12>>2];g=O(i*O(.5));f=T5(g);h=Z5(g);j=O(h*j);g=L[a>>2];i=L[a+4>>2];k=O(h*k);l=L[a+8>>2];h=O(h*m);L[e+12>>2]=O(O(O(c*f)-O(j*g))-O(i*k))-O(l*h);L[e+8>>2]=O(O(g*k)+O(O(c*h)+O(f*l)))-O(j*i);L[e+4>>2]=O(O(l*j)+O(O(c*k)+O(f*i)))-O(h*g);L[e>>2]=O(O(i*h)+O(O(c*j)+O(f*g)))-O(k*l)}a=H[a+32>>2];b=O(b*L[a+36>>2]);L[a+36>>2]=b>O(.009999999776482582)?b:O(.009999999776482582)}}function m1(a,b,c,d,e,f,g,h,i,j){var k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0);k=L[j+8>>2];l=O(L[i+8>>2]-e);m=L[j>>2];n=O(L[i>>2]-c);p=O(L[i+4>>2]-d);o=L[j+4>>2];r=O(O(k*l)+O(O(m*n)+O(p*o)));p=O(O(h*l)+O(O(f*n)+O(p*g)));l=O(0);n=O(O(h*h)+O(O(f*f)+O(g*g)));q=O(O(k*k)+O(O(m*m)+O(o*o)));o=O(O(h*k)+O(O(f*m)+O(o*g)));k=O(O(n*q)-O(o*o));a:{if(k==O(0)){break a}k=O(O(O(p*q)-O(o*r))/k);if(kO(1))){break a}l=O(1)}b:{if(q!=O(0)){k=O(0);m=O(O(O(l*o)-r)/q);if(mO(1)){break b}k=l;break b}k=l;if(!(m>O(1))){break b}k=O(0);if(n==O(0)){m=O(1);break b}m=O(1);l=O(O(p+o)/n);if(lO(1))){break b}k=O(1);break b}k=O(0);m=O(0);if(n==O(0)){break b}l=O(p/n);if(lO(1)){break b}k=l}L[a+8>>2]=O(k*h)+e;L[a+4>>2]=O(k*g)+d;L[a>>2]=O(k*f)+c;c=L[i>>2];d=L[j>>2];e=L[i+4>>2];f=L[j+4>>2];L[b+8>>2]=O(m*L[j+8>>2])+L[i+8>>2];L[b+4>>2]=e+O(m*f);L[b>>2]=c+O(m*d)}function BD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=O(0),f=0,g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=0;f=Oa+-64|0;Oa=f;d=1;a:{if(!(H[c+40>>2]&J[a+20>>1])){break a}o=H[c>>2];if(!H[o+588>>2]){break a}k=L[c+20>>2];d=H[a+4>>2];j=O(L[d+8>>2]-L[c+36>>2]);g=O(j+j);j=L[c+12>>2];e=O(L[d>>2]-L[c+28>>2]);h=O(e+e);e=O(L[d+4>>2]-L[c+32>>2]);i=O(e+e);e=L[c+16>>2];m=O(O(k*g)+O(O(j*h)+O(i*e)));l=L[c+24>>2];n=O(O(l*l)+O(-.5));L[f+56>>2]=O(k*m)+O(O(g*n)-O(l*O(O(j*i)-O(h*e))));L[f+52>>2]=O(e*m)+O(O(i*n)-O(l*O(O(k*h)-O(g*j))));L[f+48>>2]=O(j*m)+O(O(h*n)-O(l*O(O(e*g)-O(i*k))));d=H[a+8>>2];g=L[d+8>>2];g=O(g+g);h=L[d>>2];h=O(h+h);i=L[d+4>>2];i=O(i+i);m=O(O(k*g)+O(O(j*h)+O(e*i)));L[f+40>>2]=O(k*m)+O(O(g*n)-O(l*O(O(j*i)-O(h*e))));L[f+36>>2]=O(e*m)+O(O(i*n)-O(l*O(O(k*h)-O(g*j))));L[f+32>>2]=O(j*m)+O(O(h*n)-O(l*O(O(e*g)-O(i*k))));d=H[a+12>>2];L[f+16>>2]=L[d>>2];L[f+20>>2]=L[d+4>>2];L[f+24>>2]=L[d+8>>2];c=H[c+4>>2];d=kC(H[c+12>>2],H[c+8>>2],o,f+48|0,f+32|0,b,H[a+16>>2])}Oa=f- -64|0;return d|0}function eY(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=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=0,r=0,s=O(0),t=O(0);g=Oa-48|0;Oa=g;f=H[a+112>>2];m=L[f+28>>2];n=L[f+16>>2];h=L[f+32>>2];j=L[f+20>>2];r=I[f+72|0];o=L[f+4>>2];p=L[f+8>>2];i=L[c>>2];k=L[c+4>>2];s=L[f+12>>2];l=L[c+8>>2];t=L[f+24>>2];L[g+8>>2]=O(O(i*L[f>>2])+O(k*s))+O(l*t);L[g+16>>2]=O(O(i*p)+O(k*j))+O(l*h);L[g+12>>2]=O(O(i*o)+O(k*n))+O(l*m);k=L[f>>2];l=L[f+4>>2];q=g+8|0;c=q+(r?24:12)|0;i=L[d>>2];o=j;j=L[d+4>>2];p=h;h=L[d+8>>2];L[c+8>>2]=O(O(i*L[f+8>>2])+O(o*j))+O(p*h);L[c+4>>2]=O(O(i*l)+O(n*j))+O(m*h);L[c>>2]=O(O(i*k)+O(s*j))+O(t*h);j=L[f+28>>2];i=L[f+16>>2];k=L[f+24>>2];l=L[f>>2];o=L[f+12>>2];p=L[f+4>>2];c=(r?12:24)+q|0;m=L[e>>2];n=L[e+4>>2];h=L[e+8>>2];L[c+8>>2]=O(O(m*L[f+8>>2])+O(n*L[f+20>>2]))+O(h*L[f+32>>2]);L[c+4>>2]=O(O(m*p)+O(n*i))+O(h*j);L[c>>2]=O(O(m*l)+O(n*o))+O(h*k);c=a+8|0;b=H[b+8>>2];a=H[H[a+108>>2]+56>>2];if(a){a=I[a+b|0]}else{a=56}cY(c,b,q,a);Oa=g+48|0;return 1}function t1(a,b,c,d,e,f,g){var h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0);j=L[c+8>>2];t=L[d+8>>2];g=O(g+O(-.10000000149011612));u=O(O(g*L[f+8>>2])+L[b+8>>2]);h=O(t-u);k=L[c>>2];v=L[d>>2];w=O(O(g*L[f>>2])+L[b>>2]);i=O(v-w);l=L[c+4>>2];x=L[d+4>>2];y=O(O(g*L[f+4>>2])+L[b+4>>2]);g=O(x-y);q=O(O(j*h)+O(O(k*i)+O(l*g)));m=L[e+8>>2];n=L[e>>2];o=L[e+4>>2];i=O(-O(O(m*h)+O(O(n*i)+O(g*o))));g=O(0);r=O(O(j*j)+O(O(k*k)+O(l*l)));s=O(O(m*m)+O(O(n*n)+O(o*o)));p=O(O(j*m)+O(O(k*n)+O(l*o)));h=O(O(r*s)-O(p*p));a:{if(h==O(0)){break a}h=O(O(O(q*s)+O(p*i))/h);if(hO(1))){break a}g=O(1)}i=O(O(O(g*p)+i)/s);b:{if(iO(1)){break b}g=h;break b}if(!(i>O(1))){break b}g=O(0);i=O(1);h=O(O(q+p)/r);if(hO(1))){break b}g=O(1)}L[a+8>>2]=O(u+O(j*g))-O(t+O(m*i));L[a+4>>2]=O(y+O(l*g))-O(x+O(o*i));L[a>>2]=O(w+O(k*g))-O(v+O(n*i))}function QM(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;i=H[b+68>>2];d=i>>>3|0;a:{if((i|0)>=0){d=(d<<4)+c|0;j=I[d+14|0];k=I[d+13|0];Ra[H[H[a>>2]+112>>2]](a,b,c);break a}f=H[a+68>>2];e=d&268435455;d=f+(e<<4)|0;j=I[d+14|0];k=I[d+13|0];g=H[a+84>>2]-1|0;c=H[H[a+80>>2]+(g<<2)>>2];h=e<<3;yJ(H[a+4>>2],h+H[a+92>>2]|0);H[H[a+80>>2]+(e<<2)>>2]=c;e=H[a+92>>2];h=e+h|0;l=g<<3;e=l+e|0;m=H[e+4>>2];H[h>>2]=H[e>>2];H[h+4>>2]=m;e=(g<<4)+f|0;f=H[e+12>>2];H[d+8>>2]=H[e+8>>2];H[d+12>>2]=f;f=H[e+4>>2];H[d>>2]=H[e>>2];H[d+4>>2]=f;d=l+H[a+92>>2]|0;H[d>>2]=0;H[d+4>>2]=0;d=H[a+108>>2];e=H[d+456>>2];H[c+68>>2]=i;b:{if(!(I[c+43|0]&2)|I[c+41|0]&8){break b}d=H[H[H[d+444>>2]>>2]+(H[c- -64>>2]<<2)>>2];if(!d){break b}H[e+(H[d+20>>2]<<2)>>2]=i;d=H[d+16>>2];if(!d){break b}while(1){H[e+(H[d+20>>2]<<2)>>2]=H[c+68>>2];d=H[d+16>>2];if(d){continue}break}}H[a+84>>2]=g;H[a+96>>2]=g;H[a+72>>2]=H[a+72>>2]-1}c:{if(j&2){F[b+43|0]=I[b+43|0]|64;c=1;break c}c=0-(j&1)|0}Ra[H[H[a>>2]+28>>2]](a,b,c,k)}function wx(a,b,c,d,e,f){var g=0,h=0,i=0,j=0,k=0;g=Oa-1008|0;Oa=g;G[H[b+16>>2]+22>>1]=0;i=H[a+4>>2];if(i){h=g+48|0;S6(h,0,960);H[g+988>>2]=2139095039;H[g+972>>2]=-8388609;H[g+908>>2]=2139095039;H[g+892>>2]=-8388609;H[g+828>>2]=2139095039;H[g+812>>2]=-8388609;H[g+748>>2]=2139095039;H[g+732>>2]=-8388609;H[g+668>>2]=2139095039;H[g+652>>2]=-8388609;H[g+588>>2]=2139095039;H[g+572>>2]=-8388609;H[g+508>>2]=2139095039;H[g+492>>2]=-8388609;H[g+428>>2]=2139095039;H[g+412>>2]=-8388609;H[g+348>>2]=2139095039;H[g+332>>2]=-8388609;H[g+268>>2]=2139095039;H[g+252>>2]=-8388609;H[g+188>>2]=2139095039;H[g+172>>2]=-8388609;H[g+108>>2]=2139095039;H[g+92>>2]=-8388609;H[b+4>>2]=1065353216;H[b+8>>2]=1065353216;H[b+12>>2]=1065353216;H[b>>2]=1065353216;H[g+40>>2]=0;H[g+32>>2]=0;H[g+36>>2]=0;j=b,k=Ra[i|0](h,g+32|0,12,b,H[a+8>>2],b+36|0,b- -64|0,I[b+139|0],g+16|0,g)|0,H[j+116>>2]=k;H[b+112>>2]=h;L[b+140>>2]=L[g+32>>2];L[b+144>>2]=L[g+36>>2];L[b+148>>2]=L[g+40>>2];h=vx(b,c,d,e,f)}Oa=g+1008|0;return h} -function Sz(a){var b=O(0),c=0,d=0,e=O(0),f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=0,m=0,n=0,o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=0,x=O(0),y=O(0),z=O(0),A=0,B=O(0),C=0;c=H[a>>2];f=L[c+24>>2];g=L[c+20>>2];h=L[c+16>>2];i=L[c+8>>2];j=L[c+4>>2];k=L[c>>2];a:{a=H[a+24>>2];d=J[a+2>>1];if(!d){break a}w=a+d|0;while(1){n=a+48|0;l=I[a+1|0];m=n+N(l,48)|0;if(l){o=L[a+24>>2];b=L[a+8>>2];x=O(o*b);p=L[a+20>>2];y=O(p*b);q=L[a+16>>2];z=O(q*b);A=((d&65535)+a|0)+32|0;B=L[a+4>>2];d=0;while(1){a=(d<<2)+A|0;b=L[a>>2];e=O(-b);C=a;a=N(d,48)+n|0;r=L[a+44>>2];s=L[a>>2];t=L[a+4>>2];u=L[a+8>>2];v=O(L[a+36>>2]-O(L[a+32>>2]*O(O(O(O(q*k)+O(h*s))+O(O(p*j)+O(g*t)))+O(O(o*i)+O(f*u)))));e=O(b+(er?r:e;L[C>>2]=e;b=O(e-b);i=O(i+O(x*b));j=O(j+O(y*b));k=O(k+O(z*b));b=O(B*b);f=O(f+O(u*b));g=O(g+O(t*b));h=O(h+O(s*b));d=d+1|0;if((l|0)!=(d|0)){continue}break}}if(m>>>0>=w>>>0){break a}d=J[m+2>>1];a=m;continue}}L[c+24>>2]=f;L[c+20>>2]=g;L[c+16>>2]=h;L[c+8>>2]=i;L[c+4>>2]=j;L[c>>2]=k}function GH(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;a:{b:{if(!H[a+36>>2]){break b}d=H[b>>2];f=H[b+4>>2];b=d&65535|f<<16;b=(b<<15^-1)+b|0;b=N(b>>>10^b,9);b=b>>>6^b;b=(b<<11^-1)+b|0;c=H[a+12>>2]+((H[a+20>>2]-1&(b>>>16^b))<<2)|0;b=H[c>>2];if((b|0)==-1){break b}g=H[a+8>>2];e=H[a+4>>2];h=e+N(b,12)|0;if((d|0)==H[h>>2]&(f|0)==H[h+4>>2]){break a}while(1){c=g+(b<<2)|0;b=H[c>>2];if((b|0)==-1){break b}h=e+N(b,12)|0;if((d|0)!=H[h>>2]|(f|0)!=H[h+4>>2]){continue}break}break a}return}f=b<<2;H[c>>2]=H[f+g>>2];c=H[a+36>>2]-1|0;H[a+36>>2]=c;H[a+32>>2]=H[a+32>>2]+1;if((b|0)!=(c|0)){g=N(b,12);d=g+e|0;c=e+N(c,12)|0;e=H[c+4>>2];H[d>>2]=H[c>>2];H[d+4>>2]=e;H[d+8>>2]=H[c+8>>2];e=H[a+8>>2];H[e+f>>2]=H[e+(H[a+36>>2]<<2)>>2];c=g+H[a+4>>2]|0;c=H[c+4>>2]<<16|J[c>>1];c=(c<<15^-1)+c|0;c=N(c>>>10^c,9);c=c>>>6^c;c=(c<<11^-1)+c|0;c=H[a+12>>2]+((H[a+20>>2]-1&(c>>>16^c))<<2)|0;d=H[c>>2];f=H[a+36>>2];if((d|0)!=(f|0)){while(1){c=e+(d<<2)|0;d=H[c>>2];if((f|0)!=(d|0)){continue}break}}H[c>>2]=b}H[a+28>>2]=H[a+28>>2]-1}function fw(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=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=0,n=0;e=Oa+-64|0;Oa=e;F[a+489|0]=1;m=H[a+452>>2];n=H[a+32>>2];f=H[a+264>>2];g=L[c>>2];h=L[c+4>>2];i=L[c+8>>2];j=L[d>>2];k=L[d+4>>2];l=L[d+8>>2];L[e+56>>2]=-l;L[e+52>>2]=-k;H[e+60>>2]=0;L[e+48>>2]=-j;H[e+44>>2]=0;L[e+40>>2]=-i;L[e+36>>2]=-h;L[e+32>>2]=-g;c=(b<<5)+f|0;L[c>>2]=L[c>>2]-g;L[c+4>>2]=L[c+4>>2]-h;L[c+8>>2]=L[c+8>>2]-i;L[c+16>>2]=L[c+16>>2]-j;L[c+20>>2]=L[c+20>>2]-k;L[c+24>>2]=L[c+24>>2]-l;if(b){while(1){gw(e,H[a+396>>2]+N(b,96)|0,(N(b,160)+m|0)+120|0,H[a+384>>2]+N(b,76)|0,e+32|0);H[e+44>>2]=0;H[e+60>>2]=0;g=L[e>>2];L[e+32>>2]=g;h=L[e+4>>2];L[e+36>>2]=h;i=L[e+8>>2];L[e+40>>2]=i;j=L[e+16>>2];L[e+48>>2]=j;k=L[e+20>>2];L[e+52>>2]=k;l=L[e+24>>2];L[e+56>>2]=l;b=H[((b<<5)+n|0)+24>>2];c=(b<<5)+f|0;L[c>>2]=g+L[c>>2];L[c+4>>2]=h+L[c+4>>2];L[c+8>>2]=i+L[c+8>>2];L[c+16>>2]=j+L[c+16>>2];L[c+20>>2]=k+L[c+20>>2];L[c+24>>2]=l+L[c+24>>2];if(b){continue}break}}Oa=e- -64|0}function DE(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;h=Oa-16|0;Oa=h;H[h+12>>2]=b;e=H[a+60>>2];c=(b>>>0)/(e>>>0)|0;f=H[H[a+40>>2]+(c<<2)>>2]+(b-N(c,e)<<4)|0;G[f+4>>1]=J[f+4>>1]|64;g=H[f>>2];d=N(g,12)+a|0;e=d+148|0;c=H[d+152>>2];a:{if(c>>>0>=(H[d+156>>2]&2147483647)>>>0){qm(e,h+12|0);g=H[f>>2];break a}H[H[e>>2]+(c<<2)>>2]=b;H[d+152>>2]=H[d+152>>2]+1}b=(g<<2)+a|0;H[b+172>>2]=H[b+172>>2]+1;if(!g){c=H[h+12>>2];b=H[a+228>>2]+(c>>>3&536870908)|0;H[b>>2]=H[b>>2]|1<>2]<<1;g=e|1;b=H[a+448>>2];d=H[b+20>>2];f=(g>>>0)/(d>>>0)|0;b=H[b>>2];c=(e>>>0)/(d>>>0)|0;e=H[H[b+(c<<2)>>2]+(e-N(c,d)<<2)>>2];c=e>>>7|0;b:{if((c|0)==33554431){break b}b=H[H[b+(f<<2)>>2]+(g-N(d,f)<<2)>>2];g=b>>>7|0;if((g|0)==33554431){break b}f=H[a+16>>2];c=f+N(c,24)|0;d=H[c+16>>2];c:{if(d){break c}d=0;if((I[c+4|0]&38)!=4){break c}EE(a,e);f=H[a+16>>2];d=H[c+16>>2]}H[c+16>>2]=d+1;c=N(g,24)+f|0;d=H[c+16>>2];d:{if(d){break d}d=0;if((I[(N(g,24)+f|0)+4|0]&38)!=4){break d}EE(a,b);d=H[c+16>>2]}H[c+16>>2]=d+1}Oa=h+16|0}function Z1(a,b,c,d,e,f,g){var h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0);l=L[b+8>>2];m=L[b>>2];o=L[b+4>>2];j=O(O(l*e)+O(O(m*c)+O(o*d)));a:{if(!(O(P(j))>=O(9.999999974752427e-7))){h=L[b+12>>2];e=O(1);d=O(0);c=O(0);break a}h=L[b+12>>2];k=O(j*e);i=O(j*c);d=O(j*d);c=O(O(1)/O(W(O(O(h*h)+O(O(k*k)+O(O(i*i)+O(d*d)))))));e=O(h*c);n=O(k*c);d=O(d*c);c=O(i*c)}j=O(O(c*o)+O(O(O(l*e)-O(h*n))-O(m*d)));k=O(O(n*m)+O(O(O(o*e)-O(h*d))-O(l*c)));i=O(O(d*l)+O(O(O(m*e)-O(h*c))-O(o*n)));h=O(O(l*n)+O(O(o*d)+O(O(h*e)+O(m*c))));if(!(h>=O(0))){j=O(-j);k=O(-k);i=O(-i);h=O(-h)}o=O(-n);q=O(-d);r=O(-c);b=f>h;F[g|0]=b;b:{if(!b){f=h;break b}h=O(0);l=O(0);m=O(0);p=O(O(j*j)+O(O(i*i)+O(k*k)));if(p>O(0)){h=O(O(1)/O(W(p)));m=O(j*h);l=O(k*h);h=O(i*h)}i=O(W(O(O(1)-O(f*f))));j=O(i*m);k=O(i*l);i=O(i*h)}L[a+12>>2]=O(O(O(f*e)-O(c*i))-O(k*d))-O(j*n);L[a+8>>2]=O(r*k)+O(O(i*d)+O(O(f*n)+O(e*j)));L[a+4>>2]=O(o*i)+O(O(j*c)+O(O(f*d)+O(e*k)));L[a>>2]=O(q*j)+O(O(k*n)+O(O(f*c)+O(e*i)))}function QX(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=O(0),f=O(0),g=O(0),h=0,i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),F=O(0),G=O(0),I=O(0),J=O(0),K=O(0),M=O(0);d=H[b+8>>2];q=L[d+52>>2];r=L[d+36>>2];s=L[d+20>>2];i=L[d+56>>2];t=L[d+40>>2];u=L[d+24>>2];h=H[b+4>>2];j=L[h+56>>2];k=L[h+52>>2];l=L[h+72>>2];v=L[b+56>>2];w=L[b+24>>2];x=L[b+40>>2];y=L[b+48>>2];z=L[b+32>>2];m=L[h+68>>2];A=L[b+52>>2];B=L[b+20>>2];C=L[b+36>>2];D=L[d+48>>2];E=L[d+32>>2];F=L[d>>2];G=L[d+16>>2];I=L[d+4>>2];J=L[d+8>>2];n=L[h+48>>2];o=L[h+64>>2];K=L[b+16>>2];e=L[c+8>>2];f=L[c>>2];g=L[c+4>>2];H[a+12>>2]=0;M=i;p=j;j=O(O(v*e)+O(O(w*f)+O(g*x)));i=O(O(y*e)+O(O(K*f)+O(g*z)));e=O(O(A*e)+O(O(B*f)+O(g*C)));b=O(O(p*j)+O(O(n*i)+O(k*e)))>O(O(l*j)+O(O(o*i)+O(e*m)));e=b?p:l;f=b?n:o;g=b?k:m;L[a+8>>2]=M+O(O(t*e)+O(O(J*f)+O(u*g)));L[a+4>>2]=q+O(O(r*e)+O(O(I*f)+O(g*s)));L[a>>2]=D+O(O(E*e)+O(O(F*f)+O(g*G)))}function Oh(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0;an(H[33772],a,H[a+8>>2],1);Ph(a);e=H[a+320>>2];e=Ra[H[H[e>>2]+100>>2]](e)|0;c=H[e+84>>2];a:{b:{d=H[e+88>>2];if(!d){break b}while(1){if(H[c+(b<<2)>>2]==(a|0)){break b}b=b+1|0;if((d|0)!=(b|0)){continue}break}break a}if((b|0)==(d|0)){break a}d=d-1|0;H[e+88>>2]=d;H[c+(b<<2)>>2]=H[c+(d<<2)>>2]}c=H[a+328>>2];c:{if(!c){break c}d=H[c+352>>2];b=0;d:{f=H[c+356>>2];if(!f){break d}while(1){if(H[d+(b<<2)>>2]==(a|0)){break d}b=b+1|0;if((f|0)!=(b|0)){continue}break}break c}if((b|0)==(f|0)){break c}g=c;c=f-1|0;H[g+356>>2]=c;H[d+(b<<2)>>2]=H[d+(c<<2)>>2]}b=H[a+324>>2];if(b){Ra[H[H[b>>2]>>2]](b)}b=vg(a);if(b){It(b+16|0,a+48|0,1,0);e:{f:{switch((H[e+4>>2]>>>30|0)-2|0){case 0:if(I[H[e>>2]+4785|0]){break e}break;case 1:break e;default:break f}}c=H[e+12>>2];if(!c){break e}d=H[e+88>>2];if(d>>>0<2){break e}e=H[e+84>>2];b=1;while(1){f=H[e+(b<<2)>>2];h=f,i=uF(c,H[f- -64>>2]),H[h+364>>2]=i;b=b+1|0;if((d|0)!=(b|0)){continue}break}}}wt(a+48|0)}function OM(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;h=Oa-16|0;Oa=h;b=H[b+68>>2];H[h+12>>2]=b;a:{if((b|0)>=0){c=H[a+16>>2];if(c>>>0>=(H[a+20>>2]&2147483647)>>>0){qm(a+12|0,h+12|0);break a}H[H[a+12>>2]+(c<<2)>>2]=b;H[a+16>>2]=H[a+16>>2]+1;break a}g=H[a+84>>2]-1|0;c=H[H[a+80>>2]+(g<<2)>>2];d=H[a+68>>2];e=b>>>3&268435455;f=e<<3;yJ(H[a+4>>2],f+H[a+92>>2]|0);H[H[a+80>>2]+(e<<2)>>2]=c;i=f;f=H[a+92>>2];i=i+f|0;j=g<<3;f=f+j|0;k=H[f+4>>2];H[i>>2]=H[f>>2];H[i+4>>2]=k;e=d+(e<<4)|0;d=d+(g<<4)|0;f=H[d+12>>2];H[e+8>>2]=H[d+8>>2];H[e+12>>2]=f;f=H[d+4>>2];H[e>>2]=H[d>>2];H[e+4>>2]=f;e=H[a+92>>2]+j|0;H[e>>2]=0;H[e+4>>2]=0;d=H[a+108>>2];e=H[d+456>>2];H[c+68>>2]=b;b:{if(!(I[c+43|0]&2)|I[c+41|0]&8){break b}d=H[H[H[d+444>>2]>>2]+(H[c- -64>>2]<<2)>>2];if(!d){break b}H[e+(H[d+20>>2]<<2)>>2]=b;b=H[d+16>>2];if(!b){break b}while(1){H[e+(H[b+20>>2]<<2)>>2]=H[c+68>>2];b=H[b+16>>2];if(b){continue}break}}H[a+84>>2]=g;H[a+96>>2]=g;H[a+72>>2]=H[a+72>>2]-1}Oa=h+16|0}function zH(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0;c=H[H[a+84>>2]+560>>2];b=H[c>>2];if(b){H[c>>2]=H[b>>2]}if(!b){b=H[33808];b=Ra[H[H[b+12>>2]+8>>2]](b+12|0,56,20591,7273,2450)|0;H[b>>2]=0;H[b+4>>2]=0;H[b+48>>2]=0;H[b+52>>2]=0;H[b+40>>2]=0;H[b+44>>2]=0;H[b+32>>2]=0;H[b+36>>2]=0;H[b+24>>2]=0;H[b+28>>2]=0;H[b+16>>2]=0;H[b+20>>2]=0;H[b+8>>2]=0;H[b+12>>2]=0}e=b+4|0;H[a+28>>2]=e;c=H[b+8>>2];f=b+28|0;H[a+52>>2]=f;H[a+32>>2]=c;c=H[b+32>>2];H[a+40>>2]=b+16;H[a+56>>2]=c;c=H[b+20>>2];H[a- -64>>2]=b+40;H[a+44>>2]=c;H[a+68>>2]=H[b+44>>2];c=H[a+80>>2];if(c){while(1){g=H[H[H[a+76>>2]+(d<<2)>>2]+16>>2];if(g){c=H[a+84>>2];cH(g,H[c+400>>2],H[H[c+276>>2]+4>>2],H[H[c+192>>2]+4>>2],H[c+180>>2],c+208|0,c+196|0,e,f);c=H[a+80>>2]}d=d+1|0;if(d>>>0>>0){continue}break}}H[a+36>>2]=H[H[a+28>>2]+4>>2]-H[a+32>>2];H[a+60>>2]=H[H[a+52>>2]+4>>2]-H[a+56>>2];H[a+48>>2]=H[H[a+40>>2]+4>>2]-H[a+44>>2];H[a+72>>2]=H[H[a+64>>2]+4>>2]-H[a+68>>2];a=H[H[a+84>>2]+560>>2];H[b>>2]=H[a>>2];H[a>>2]=b}function YP(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;d=H[a+28>>2];H[d+3704>>2]=1;a=H[d+3460>>2];H[d+3700>>2]=a;if(a){Ra[H[H[a>>2]+16>>2]](a);H[d+3696>>2]=H[H[d+3700>>2]+16>>2]}a=H[d+1e3>>2];H[a+1216>>2]=1;H[a+604>>2]=0;H[a+592>>2]=0;H[a+444>>2]=0;H[a+432>>2]=0;c=d+3680|0;H[a+1212>>2]=c;if(c){Ra[H[H[c>>2]+16>>2]](c);H[a+1208>>2]=H[H[a+1212>>2]+16>>2]}b=a+1132|0;c=a+1192|0;H[b>>2]=c;H[a+1136>>2]=1;Ra[H[H[a+1192>>2]+16>>2]](c);b=H[H[b>>2]+16>>2];H[a+1176>>2]=1;e=a+1128|0;H[e>>2]=b;b=a+1172|0;H[b>>2]=c;Ra[H[H[a+1192>>2]+16>>2]](c);f=a+1168|0;H[f>>2]=H[H[b>>2]+16>>2];b=H[e>>2];Ra[H[H[b>>2]+72>>2]](b,a+1112|0);b=H[f>>2];Ra[H[H[b>>2]+72>>2]](b,a+1152|0);a=H[a+1208>>2];Ra[H[H[a>>2]+72>>2]](a,c);a=H[d+980>>2];d=H[a+332>>2];if(d){c=H[a+328>>2];while(1){d=d-1|0;a=H[c+8>>2];a:{if(!a|I[a+24|0]){break a}b=H[a+56>>2];if(!b){break a}e=H[H[a+4>>2]+40>>2];f=H[H[e+976>>2]+1024>>2];Ra[H[H[f>>2]+36>>2]](f,b);xJ(H[e+976>>2],H[a+56>>2]);H[a+56>>2]=0}c=c+12|0;if(d){continue}break}}}function Aj(a,b,c,d){a=a|0;b=b|0;c=O(c);d=d|0;var e=0,f=0,g=O(0),h=O(0),i=O(0),j=O(0),k=0,l=0,m=O(0);f=H[a+12>>2];e=Oa-96|0;Oa=e;h=L[a+8>>2];if(h!=O(0)){k=VT(f,b),l=d?-65536:-8355712,H[k+4>>2]=l;c=a6(c);H[f+32>>2]=0;H[f>>2]=2;i=O(c*h);b=0;while(1){L[e+80>>2]=i;g=O(O(b>>>0)*O(.19634954631328583));k=e,m=O(Z5(g)*h),L[k+88>>2]=m;k=e,m=O(T5(g)*h),L[k+84>>2]=m;WT(f,e+80|0);b=b+1|0;if((b|0)!=33){continue}break}H[f+32>>2]=0;H[f>>2]=2;c=O(O(-c)*h);b=0;while(1){L[e+64>>2]=c;g=O(O(b>>>0)*O(.19634954631328583));k=e,m=O(Z5(g)*h),L[k+72>>2]=m;k=e,m=O(T5(g)*h),L[k+68>>2]=m;WT(f,e- -64|0);b=b+1|0;if((b|0)!=33){continue}break}H[f+32>>2]=0;H[f>>2]=1;b=0;while(1){H[e+56>>2]=0;H[e+48>>2]=0;H[e+52>>2]=0;a=WT(f,e+48|0);L[e+32>>2]=c;g=O(O(b>>>0)*O(.19634954631328583));j=O(Z5(g)*h);L[e+40>>2]=j;g=O(T5(g)*h);L[e+36>>2]=g;WT(a,e+32|0);H[e+24>>2]=0;H[e+16>>2]=0;H[e+20>>2]=0;a=WT(f,e+16|0);L[e+8>>2]=j;L[e+4>>2]=g;L[e>>2]=i;WT(a,e);b=b+1|0;if((b|0)!=32){continue}break}}Oa=e+96|0}function Zc(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=O(d);e=e|0;f=f|0;g=g|0;var h=0,i=0;i=Oa-16|0;Oa=i;G[i+8>>1]=1027;h=Oa-128|0;Oa=h;H[h+60>>2]=0;H[h+64>>2]=0;G[h+56>>1]=0;H[h+52>>2]=-1;H[h+68>>2]=0;H[h+72>>2]=0;H[h+76>>2]=0;H[h+80>>2]=0;H[h+92>>2]=0;H[h+84>>2]=2139095039;H[h+88>>2]=0;H[h+44>>2]=0;H[h+48>>2]=0;H[h+120>>2]=0;H[h+112>>2]=0;H[h+116>>2]=0;F[h+108|0]=0;H[h+40>>2]=111468;H[h+16>>2]=H[f>>2];H[h+20>>2]=H[f+4>>2];H[h+24>>2]=H[f+8>>2];H[h+28>>2]=H[f+12>>2];G[h+32>>1]=J[f+16>>1];G[h+8>>1]=J[i+8>>1];Ra[H[H[a>>2]+348>>2]](a,b,c,d,h+40|0,h+8|0,h+16|0,g,0)|0;H[e+8>>2]=H[h+52>>2];a=H[h+48>>2];H[e>>2]=H[h+44>>2];H[e+4>>2]=a;G[e+12>>1]=J[h+56>>1];L[e+16>>2]=L[h+60>>2];L[e+20>>2]=L[h- -64>>2];L[e+24>>2]=L[h+68>>2];L[e+28>>2]=L[h+72>>2];L[e+32>>2]=L[h+76>>2];L[e+36>>2]=L[h+80>>2];L[e+40>>2]=L[h+84>>2];a=H[h+92>>2];H[e+44>>2]=H[h+88>>2];H[e+48>>2]=a;a=H[h+100>>2];H[e+52>>2]=H[h+96>>2];H[e+56>>2]=a;H[e+60>>2]=H[h+104>>2];Oa=h+128|0;Oa=i+16|0;return I[h+108|0]}function mf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;d=Oa-32|0;Oa=d;H[a+56>>2]=b;H[a- -64>>2]=H[c>>2];H[a+60>>2]=H[c+4>>2];H[a+68>>2]=H[c+8>>2];c=H[a+8>>2];b=0;a:{if(!c){break a}c=c+H[(J[c+4>>1]<<2)+73232>>2]|0;b=0;if((kg(c,a)|0)!=-1){break a}lg(c,0,a);b=1}b:{c:{d:{c=H[a+12>>2];if(!c){break d}c=c+H[(J[c+4>>1]<<2)+73232>>2]|0;if((kg(c,a)|0)!=-1){break d}lg(c,0,a);break c}if(!b){break b}}c=H[a+12>>2];g=a+16|0;e=H[a+8>>2];e:{if(e){Ra[H[H[e>>2]+52>>2]](d+16|0,e);b=0;if(I[d+16|0]&8){break e}b=Ra[H[H[e>>2]+28>>2]](e)|0;break e}b=0}f:{if(c){Ra[H[H[c>>2]+52>>2]](d+8|0,c);f=0;if(I[d+8|0]&8){break f}f=Ra[H[H[c>>2]+28>>2]](c)|0;break f}f=0}h=b?b:f;c=c?f?h:0:h;b=e?b?c:0:c;g:{if((H[a+20>>2]>>>30|0)-3>>>0<4294967294){break g}c=H[a+16>>2];if(!c){break g}c=c-16|0;if((c|0)==(b|0)){break b}if(c){H[d+20>>2]=a;Pf(c+5892|0,d+20|0);Mt(c+16|0,g)}}if(!b){break b}H[d+24>>2]=a;a=rg(b+5892|0,d+24|0,d+31|0);if(!I[d+31|0]){H[a>>2]=H[d+24>>2]}Lt(b+16|0,g)}Oa=d+32|0}function Yj(a){var b=0,c=0;b=Oa-16|0;Oa=b;a:{b:{c:{d:{e:{f:{switch((H[a+4>>2]>>>30|0)-2|0){case 0:if(I[H[a>>2]+4785|0]){break e}break;case 1:break d;default:break f}}H[a+236>>2]=0;H[a+240>>2]=0;H[a+260>>2]=0;H[a+264>>2]=1;H[a+244>>2]=0;H[a+248>>2]=0;H[a+252>>2]=0;H[a+256>>2]=0;TF(a+16|0);break a}H[a+260>>2]=0;H[a+264>>2]=1;H[b+8>>2]=0;H[b>>2]=0;H[b+4>>2]=0;H[a+236>>2]=0;H[a+240>>2]=0;H[a+244>>2]=0;c=H[a>>2];if(I[c+4785|0]){break c}DF(a+16|0,b);break b}H[a+260>>2]=0;H[a+264>>2]=1;H[b+8>>2]=0;H[b>>2]=0;H[b+4>>2]=0;H[a+236>>2]=0;H[a+240>>2]=0;H[a+244>>2]=0;c=H[a>>2]}$t(c,a);H[a+268>>2]=H[a+268>>2]|4194304}H[b+8>>2]=0;H[b>>2]=0;H[b+4>>2]=0;H[a+248>>2]=0;H[a+252>>2]=0;H[a+256>>2]=0;g:{h:{i:{switch((H[a+4>>2]>>>30|0)-2|0){case 0:c=H[a>>2];if(I[c+4785|0]){break h}default:EF(a+16|0,b);c=H[a+268>>2];break g;case 1:break i}}c=H[a>>2]}$t(c,a);c=H[a+268>>2]|8388608}H[a+268>>2]=c&-1015809;$t(H[a>>2],a);H[a+268>>2]=H[a+268>>2]&-117440513|50331648}Oa=b+16|0}function Tt(a,b){var c=0;a:{switch(b-1|0){case 0:case 1:a=yq(a+4788|0,128);H[a+28>>2]=0;H[a+32>>2]=0;G[a+124>>1]=0;H[a+120>>2]=0;H[a+64>>2]=-1;F[a+52|0]=0;H[a+36>>2]=0;H[a+40>>2]=0;return a;case 4:a=yq(a+4788|0,128);F[a|0]=0;H[a+76>>2]=0;H[a+28>>2]=0;H[a+32>>2]=4;F[a+20|0]=1;H[a+88>>2]=0;H[a+80>>2]=4;H[a+84>>2]=0;F[a+68|0]=1;H[a+24>>2]=a+4;H[a+72>>2]=a+36;return a;case 5:a=yq(a+4788|0,24);G[a+16>>1]=0;return a;case 6:return yq(a+4788|0,28);case 7:return yq(a+4788|0,376);case 8:c=yq(a+4788|0,16);a=c;H[a+8>>2]=-1;H[a+12>>2]=0;H[a>>2]=-1;H[a+4>>2]=0;default:return c;case 2:case 3:break a}}a=yq(a+4788|0,272);F[a|0]=0;H[a+76>>2]=0;H[a+28>>2]=0;H[a+32>>2]=4;F[a+20|0]=1;H[a+220>>2]=0;H[a+224>>2]=0;F[a+184|0]=0;H[a+88>>2]=0;H[a+80>>2]=4;H[a+84>>2]=0;F[a+68|0]=1;H[a+24>>2]=a+4;H[a+72>>2]=a+36;H[a+228>>2]=0;H[a+232>>2]=0;H[a+236>>2]=0;H[a+240>>2]=0;H[a+244>>2]=0;H[a+248>>2]=0;H[a+252>>2]=0;H[a+256>>2]=0;H[a+260>>2]=0;H[a+264>>2]=0;F[a+268|0]=0;return a}function kN(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=O(0),m=0,n=0,o=0,p=0,q=0;if((i7(b)|0)!=1){b=b>>>1|b;b=b>>>2|b;b=b>>>4|b;b=b>>>8|b;b=(b>>>16|b)+1|0}l=O(L[a+24>>2]*O(b>>>0));a:{if(l=O(0)){k=~~l>>>0;break a}k=0}n=H[a+16>>2];e=b+k<<2;e=(0-e&12)+e|0;j=e+N(k,12)|0;if(j){f=H[33808]+12|0;f=Ra[H[H[f>>2]+8>>2]](f,j,20591,14239,372)|0}c=e;e=f;f=b<<2;e=S6(e,255,f);j=c+e|0;f=f+e|0;if(H[a+36>>2]){o=b-1|0;p=H[a+4>>2];while(1){h=N(g,12);i=h+p|0;m=H[i+4>>2];c=m+(m<<15^-1)|0;c=N(c>>>10^c,9);c=c>>>6^c;c=(c<<11^-1)+c|0;q=c>>>16^c;c=H[i>>2];d=(c<<15^-1)+c|0;d=N(d>>>10^d,9);d=d>>>6^d;d=(d<<11^-1)+d|0;d=e+(((q^N(d>>>16^d^1016421269,1000007))&o)<<2)|0;H[f+(g<<2)>>2]=H[d>>2];H[d>>2]=g;h=j+h|0;H[h+4>>2]=m;H[h>>2]=c;H[h+8>>2]=H[i+8>>2];g=g+1|0;if(g>>>0>2]){continue}break}}g=H[a>>2];if(g){i=H[33808]+12|0;Ra[H[H[i>>2]+12>>2]](i,g)}H[a+20>>2]=b;H[a+12>>2]=e;H[a>>2]=e;H[a+8>>2]=f;H[a+16>>2]=k;H[a+4>>2]=j;if(H[a+28>>2]==-1){H[a+28>>2]=n}}function cV(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=O(0),i=0,j=0,k=0,l=0;g=Oa-4256|0;Oa=g;H[g+4200>>2]=-1;i=g+4200|0;hU(i,c);H[g+4144>>2]=-1;k=g+4144|0;hU(k,e);H[g+4136>>2]=0;H[g+4140>>2]=0;e=0;H[g+4112>>2]=0;H[g+8>>2]=1065353216;H[g>>2]=0;H[g+4>>2]=0;c=Oa-176|0;Oa=c;H[c+160>>2]=0;H[c+164>>2]=1065353216;H[c+152>>2]=0;H[c+156>>2]=0;H[c+144>>2]=0;H[c+148>>2]=1065353216;H[c+136>>2]=0;H[c+140>>2]=0;H[c+128>>2]=1065353216;H[c+132>>2]=1065353216;H[c+112>>2]=1065353216;H[c+116>>2]=0;F[c+168|0]=0;H[c+120>>2]=0;H[c+124>>2]=0;H[c+104>>2]=0;H[c+108>>2]=0;H[c+96>>2]=1065353216;H[c+100>>2]=0;j=i;i=c+96|0;l=c+72|0;j=KY(j,i,l,c);h=L[g>>2];L[c+88>>2]=h+L[c+88>>2];L[c+92>>2]=h+L[c+92>>2];L[c+72>>2]=L[c+72>>2]-h;L[c+76>>2]=L[c+76>>2]-h;L[c+80>>2]=L[c+80>>2]-h;L[c+84>>2]=h+L[c+84>>2];d=pY(c,l,k,d,f,h,L[g+4>>2],L[g+8>>2],g+16|0,i,j);Oa=c+176|0;a:{if(!d){break a}if(!NU(a,b,H[g+4112>>2],g+16|0)){break a}e=H[g+4112>>2]!=0}Oa=g+4256|0;return e|0}function bK(a){a=a|0;var b=0,c=0,d=0;H[a>>2]=116488;b=H[a+4>>2];if(b){OJ(b+4|0);OJ(b+96|0);OJ(b+224|0);c=H[b+316>>2];if(c){d=H[33808];Ra[H[H[d+12>>2]+12>>2]](d+12|0,c)}H[b+316>>2]=0;H[b+320>>2]=0;XG(b+340|0);c=H[b+324>>2];if(c){d=H[33808];Ra[H[H[d+12>>2]+12>>2]](d+12|0,c)}H[b+324>>2]=0;H[b+328>>2]=0;c=H[b+332>>2];if(c){d=H[33808];Ra[H[H[d+12>>2]+12>>2]](d+12|0,c)}H[b+332>>2]=0;H[b+336>>2]=0;XG(b+340|0);c=H[b+332>>2];if(c){d=H[33808];Ra[H[H[d+12>>2]+12>>2]](d+12|0,c)}H[b+332>>2]=0;H[b+336>>2]=0;c=H[b+324>>2];if(c){d=H[33808];Ra[H[H[d+12>>2]+12>>2]](d+12|0,c)}H[b+324>>2]=0;H[b+328>>2]=0;NJ(b+224|0);PT(b+188|0);NJ(b+96|0);NJ(b+4|0);c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b);H[a+4>>2]=0}b=H[a+28>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=H[a+20>>2];if(!b){break a}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+16>>2];b:{if((b|0)<0|!(b&2147483647)){break b}b=H[a+8>>2];if(!b){break b}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}return a|0}function M5(a){var b=O(0),c=0,d=0,e=O(0);d=(B(a),v(2));c=d&2147483647;if(c>>>0>=1065353216){if((c|0)==1065353216){return(d|0)>=0?O(0):O(3.141592502593994)}return O(O(0)/O(a-a))}a:{if(c>>>0<=1056964607){b=O(1.570796251296997);if(c>>>0<847249409){break a}b=O(a*a);return O(O(O(O(7.549789415861596e-8)-O(a*O(O(O(O(b*O(O(b*O(-.008656363002955914))+O(-.04274342209100723)))+O(.16666586697101593))*b)/O(O(b*O(-.7066296339035034))+O(1)))))-a)+O(1.570796251296997))}if((d|0)<0){a=O(O(a+O(1))*O(.5));b=O(W(a));a=O(O(1.570796251296997)-O(b+O(O(b*O(O(O(O(a*O(O(a*O(-.008656363002955914))+O(-.04274342209100723)))+O(.16666586697101593))*a)/O(O(a*O(-.7066296339035034))+O(1))))+O(-7.549789415861596e-8))));return O(a+a)}a=O(O(O(1)-a)*O(.5));e=O(W(a));b=(x(2,(B(e),v(2))&-4096),C());a=O(O(O(e*O(O(O(O(a*O(O(a*O(-.008656363002955914))+O(-.04274342209100723)))+O(.16666586697101593))*a)/O(O(a*O(-.7066296339035034))+O(1))))+O(O(a-O(b*b))/O(e+b)))+b);b=O(a+a)}return b}function ME(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;e=Oa-16|0;Oa=e;g=b>>>7|0;h=H[a+16>>2]+N(g,24)|0;c=I[h+4|0];if(!(c&2)){f=H[h>>2];if((f|0)!=-1){while(1){c=f>>>1|0;d=H[a+60>>2];i=(c>>>0)/(d>>>0)|0;d=H[H[a+40>>2]+(i<<2)>>2]+(c-N(d,i)<<4)|0;if(!(I[d+4|0]&4)){DE(a,c);G[d+4>>1]=J[d+4>>1]|4}c=H[a+84>>2];d=(f>>>0)/(c>>>0)|0;f=H[H[H[a+64>>2]+(d<<2)>>2]+(f-N(c,d)<<3)>>2];if((f|0)!=-1){continue}break}c=I[h+4|0]}a:{if(c&4){H[e>>2]=b;if(H[(H[a+16>>2]+N(g,24)|0)+16>>2]){break a}b=H[a+28>>2]+(g<<2)|0;if(H[b>>2]!=33554431){break a}H[b>>2]=H[a+140>>2];b=H[a+140>>2];if(b>>>0>=(H[a+144>>2]&2147483647)>>>0){_E(a+136|0,e);break a}H[H[a+136>>2]+(b<<2)>>2]=H[e>>2];H[a+140>>2]=H[a+140>>2]+1;break a}H[e+8>>2]=b;b=H[a+28>>2]+(g<<2)|0;a=N(I[(H[a+16>>2]+N(g,24)|0)+5|0],12)+a|0;H[b>>2]=H[a+116>>2];b=a+112|0;c=H[a+116>>2];if(c>>>0>=(H[a+120>>2]&2147483647)>>>0){_E(b,e+8|0);break a}H[H[b>>2]+(c<<2)>>2]=H[e+8>>2];H[a+116>>2]=H[a+116>>2]+1}F[h+4|0]=I[h+4|0]|2}Oa=e+16|0}function oz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;g=1;if(b>>>0>1){while(1){c=(g<<5)+a|0;iz(c-32|0);d=H[c-8>>2];a:{if(!d){break a}f=I[d+1|0];if(!f){break a}c=I[d|0]==4?160:96;d=d+48|0;if(f-1>>>0>=3){h=f&252;e=0;while(1){L[d+12>>2]=L[d+28>>2];d=c+d|0;L[d+12>>2]=L[d+28>>2];d=c+d|0;L[d+12>>2]=L[d+28>>2];d=c+d|0;L[d+12>>2]=L[d+28>>2];d=c+d|0;e=e+4|0;if((h|0)!=(e|0)){continue}break}}e=0;f=f&3;if(!f){break a}while(1){L[d+12>>2]=L[d+28>>2];d=c+d|0;e=e+1|0;if((f|0)!=(e|0)){continue}break}}g=g+1|0;if((g|0)!=(b|0)){continue}break}}a=(b<<5)+a|0;iz(a-32|0);b=H[a-8>>2];b:{if(!b){break b}c=I[b+1|0];if(!c){break b}a=I[b|0]==4?160:96;d=b+48|0;if(c-1>>>0>=3){g=c&252;e=0;while(1){L[d+12>>2]=L[d+28>>2];b=a+d|0;L[b+12>>2]=L[b+28>>2];b=a+b|0;L[b+12>>2]=L[b+28>>2];b=a+b|0;L[b+12>>2]=L[b+28>>2];d=a+b|0;e=e+4|0;if((g|0)!=(e|0)){continue}break}}b=c&3;if(!b){break b}e=0;while(1){L[d+12>>2]=L[d+28>>2];d=a+d|0;e=e+1|0;if((b|0)!=(e|0)){continue}break}}}function YG(a){var b=0,c=0,d=0,e=0,f=0,g=0;b=H[a+12>>2];if(b){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b);H[a+12>>2]=0}b=0;c=H[a>>2];e=c<<2;if(e){b=H[33808]+12|0;b=Ra[H[H[b>>2]+8>>2]](b,e,20591,10070,83)|0;c=H[a>>2]}H[a+12>>2]=b;e=0;a:{if(!c){break a}S6(b,255,c<<2);b=H[a>>2];c=b<<3;if(c){b=H[33808]+12|0;f=Ra[H[H[b>>2]+8>>2]](b,c,20591,10070,87)|0;b=H[a>>2]}b=b<<2;if(!b){break a}c=H[33808]+12|0;e=Ra[H[H[c>>2]+8>>2]](c,b,20591,10070,88)|0}b=H[a+8>>2];b:{if(!b){c=H[a+20>>2];break b}R6(f,H[a+20>>2],b<<3);c=H[a+20>>2];if(!H[a+8>>2]){break b}g=H[a+12>>2];b=0;while(1){d=(b<<3)+c|0;d=H[d+4>>2]<<16|J[d>>1];d=(d<<15^-1)+d|0;d=N(d>>>10^d,9);d=d>>>6^d;d=(d<<11^-1)+d|0;d=((H[a+4>>2]&(d>>>16^d))<<2)+g|0;H[(b<<2)+e>>2]=H[d>>2];H[d>>2]=b;b=b+1|0;if(b>>>0>2]){continue}break}}b=H[a+16>>2];if(b){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b);H[a+16>>2]=0;c=H[a+20>>2]}if(c){b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,c);H[a+20>>2]=0}H[a+20>>2]=f;H[a+16>>2]=e}function VS(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;f=Oa-16|0;Oa=f;a:{if(!H[a+72>>2]){break a}while(1){d=H[H[a+68>>2]+(c<<2)>>2];if((Ra[H[H[d>>2]+16>>2]](d)|0)==(b|0)){d=H[a+72>>2]-1|0;H[a+72>>2]=d;e=c<<2;c=H[a+68>>2];H[e+c>>2]=H[c+(d<<2)>>2];break a}c=c+1|0;if(c>>>0>2]){continue}break}}H[f+12>>2]=0;c=Ra[H[H[b>>2]+28>>2]](b)|0;Ra[H[H[c>>2]+96>>2]](c,f+12|0,1,0)|0;b:{if(!H[a+116>>2]){break b}d=H[f+12>>2];c=(d<<15^-1)+d|0;c=N(c>>>10^c,9);c=c>>>6^c;c=(c<<11^-1)+c|0;e=H[a+92>>2]+((H[a+100>>2]-1&(c>>>16^c))<<2)|0;c=H[e>>2];if((c|0)==-1){break b}g=H[a+88>>2];h=H[a+84>>2];if((d|0)!=H[h+(c<<2)>>2]){while(1){e=(c<<2)+g|0;c=H[e>>2];if((c|0)==-1){break b}if((d|0)!=H[(c<<2)+h>>2]){continue}break}}d=(c<<2)+g|0;H[e>>2]=H[d>>2];H[a+116>>2]=H[a+116>>2]-1;H[a+112>>2]=H[a+112>>2]+1;H[d>>2]=H[a+108>>2];H[a+108>>2]=c}c:{if((Ra[H[H[b>>2]>>2]](b)|0)==1){Ra[H[H[b>>2]+104>>2]](b);break c}if(Ra[H[H[b>>2]>>2]](b)|0){break c}Ra[H[H[b>>2]+104>>2]](b)}Oa=f+16|0}function h2(a,b,c,d,e,f,g,h,i,j,k,l,m,n){var o=0,p=0,q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),F=O(0),G=0;o=Oa+-64|0;Oa=o;A=L[h+12>>2];B=L[h+16>>2];C=L[h+8>>2];D=L[m+12>>2];E=L[m+16>>2];F=L[m+8>>2];q=L[m+20>>2];r=L[h+20>>2];s=L[h+24>>2];u=O(O(s*g)+d);t=L[m+24>>2];v=O(t*l);L[o+56>>2]=u+v;w=O(O(s*f)+c);x=O(t*k);L[o+52>>2]=w+x;y=O(O(s*e)+b);z=O(t*j);L[o+48>>2]=y+z;d=O(O(r*g)+d);L[o+40>>2]=d+v;c=O(O(r*f)+c);L[o+36>>2]=c+x;b=O(O(r*e)+b);L[o+32>>2]=b+z;e=d;d=O(q*l);L[o+24>>2]=e+d;e=c;c=O(q*k);L[o+20>>2]=e+c;e=b;b=O(q*j);L[o+16>>2]=e+b;L[o+8>>2]=u+d;L[o+4>>2]=w+c;L[o>>2]=y+b;m=o+48|0;p=o+32|0;b=D>O(0)?O(0):F>O(0)?O(0):E;h=O(t+b)>n?16711680:O(q-b)O(0)?O(0):C>O(0)?O(0):B;h=O(s+b)>i?16711680:O(r-b)>2]+28>>2]](a,m,p,h);G=p;p=o+16|0;Ra[H[H[a>>2]+28>>2]](a,G,p,h);Ra[H[H[a>>2]+28>>2]](a,p,o,h);Ra[H[H[a>>2]+28>>2]](a,o,m,h);Oa=o- -64|0}function FD(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=O(0),k=0,l=0,m=0,n=0,o=0;if((i7(b)|0)!=1){b=b>>>1|b;b=b>>>2|b;b=b>>>4|b;b=b>>>8|b;b=(b>>>16|b)+1|0}j=O(L[a+24>>2]*O(b>>>0));a:{if(j=O(0)){i=~~j>>>0;break a}i=0}l=H[a+16>>2];e=b+i<<2;e=(0-e&12)+e|0;d=e+(i<<3)|0;if(d){g=H[33808]+12|0;c=Ra[H[H[g>>2]+8>>2]](g,d,20591,14239,372)|0}else{c=0}g=e;d=b<<2;e=S6(c,255,d);g=g+e|0;k=d+e|0;if(H[a+36>>2]){m=b-1|0;n=H[a+4>>2];while(1){h=f<<3;d=h+n|0;c=H[d+4>>2];c=(c<<15^-1)+c|0;c=N(c>>>10^c,9);c=c>>>6^c;c=(c<<11^-1)+c|0;o=c>>>16^c;c=H[d>>2];c=(c<<15^-1)+c|0;c=N(c>>>10^c,9);c=c>>>6^c;c=(c<<11^-1)+c|0;c=e+(((o^N(c>>>16^c^1016421269,1000007))&m)<<2)|0;H[k+(f<<2)>>2]=H[c>>2];H[c>>2]=f;h=g+h|0;H[h>>2]=H[d>>2];H[h+4>>2]=H[d+4>>2];f=f+1|0;if(f>>>0>2]){continue}break}}f=H[a>>2];if(f){d=H[33808]+12|0;Ra[H[H[d>>2]+12>>2]](d,f)}H[a+20>>2]=b;H[a+12>>2]=e;H[a>>2]=e;H[a+8>>2]=k;H[a+16>>2]=i;H[a+4>>2]=g;if(H[a+28>>2]==-1){H[a+28>>2]=l}}function xN(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;e=H[a+20>>2];a:{b:{if(!e){break b}g=H[b>>2];d=g+(g<<15^-1)|0;d=N(d>>>10^d,9);d=d>>>6^d;d=(d<<11^-1)+d|0;f=N(d>>>16^d^-57320555,1000007);h=H[b+4>>2];d=h+(h<<15^-1)|0;d=N(d>>>10^d,9);d=d>>>6^d;d=(d<<11^-1)+d|0;f=e-1&(f^(d>>>16^d));d=H[H[a+12>>2]+(f<<2)>>2];if((d|0)==-1){break b}i=a+4|0;k=H[a+8>>2];l=H[a+4>>2];while(1){j=N(d,12)+l|0;if(!(H[j>>2]!=(g|0)|H[j+4>>2]!=(h|0))){F[c|0]=1;break a}d=H[(d<<2)+k>>2];if((d|0)!=-1){continue}break}}F[c|0]=0;if(H[a+36>>2]==H[a+16>>2]){c=e?e<<1:16;if(c>>>0>e>>>0){kN(a,c);e=H[a+20>>2]}c=H[b>>2];c=(c<<15^-1)+c|0;c=N(c>>>10^c,9);c=c>>>6^c;c=(c<<11^-1)+c|0;b=H[b+4>>2];b=(b<<15^-1)+b|0;b=N(b>>>10^b,9);b=b>>>6^b;b=(b<<11^-1)+b|0;f=e-1&(N(c>>>16^c^-57320555,1000007)^(b>>>16^b))}d=H[a+28>>2];H[a+28>>2]=d+1;b=H[a+12>>2]+(f<<2)|0;H[H[a+8>>2]+(d<<2)>>2]=H[b>>2];H[b>>2]=d;H[a+36>>2]=H[a+36>>2]+1;H[a+32>>2]=H[a+32>>2]+1;i=a+4|0}return H[i>>2]+N(d,12)|0}function vM(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;e=H[c+4624>>2];a:{if(J[b+88>>1]>=2){if(!e){break a}h=H[b+84>>2];f=H[b+80>>2];i=J[a+34>>1];b=0;if((e|0)!=1){k=e&-2;g=c+528|0;a=0;while(1){j=(b<<2)+d|0;G[j>>1]=i;G[j+2>>1]=J[h+(J[f+(H[(g+(b<<6)|0)+52>>2]<<1)>>1]<<1)>>1];j=b|1;l=(j<<2)+d|0;G[l>>1]=i;G[l+2>>1]=J[h+(J[f+(H[(g+(j<<6)|0)+52>>2]<<1)>>1]<<1)>>1];b=b+2|0;a=a+2|0;if((k|0)!=(a|0)){continue}break}}if(!(e&1)){break a}a=(b<<2)+d|0;G[a>>1]=i;G[a+2>>1]=J[h+(J[f+(H[((b<<6)+c|0)+580>>2]<<1)>>1]<<1)>>1];return 1}if(!e){break a}c=J[b+34>>1];h=J[a+34>>1];b=0;if(e-1>>>0>=3){i=e&-4;a=0;while(1){f=b<<2;g=f+d|0;G[g+2>>1]=c;G[g>>1]=h;g=(f|4)+d|0;G[g+2>>1]=c;G[g>>1]=h;g=(f|8)+d|0;G[g+2>>1]=c;G[g>>1]=h;f=(f|12)+d|0;G[f+2>>1]=c;G[f>>1]=h;b=b+4|0;a=a+4|0;if((i|0)!=(a|0)){continue}break}}a=e&3;if(!a){break a}while(1){e=(b<<2)+d|0;G[e+2>>1]=c;G[e>>1]=h;b=b+1|0;k=k+1|0;if((a|0)!=(k|0)){continue}break}}return 1}function P2(a,b){a=a|0;b=b|0;var c=0,d=0,e=O(0),f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=0,o=O(0),p=O(0),q=O(0),r=O(0),s=O(0);d=Oa-48|0;Oa=d;c=H[a+76>>2];n=d+40|0;Ra[H[H[c>>2]+28>>2]](c,n,d+44|0);u1(d+8|0,H[(b<<2)+n>>2]);c=N(b,28);b=c+a|0;m=L[b+36>>2];o=L[b+40>>2];p=L[b+44>>2];q=L[d+28>>2];r=L[d+32>>2];s=L[d+24>>2];c=c+H[a+80>>2]|0;i=L[d+16>>2];e=L[b+28>>2];j=L[d+12>>2];f=L[b+24>>2];h=L[d+20>>2];g=L[b+32>>2];k=L[d+8>>2];l=L[b+20>>2];L[c+28>>2]=O(i*e)+O(O(j*f)+O(O(h*g)+O(k*l)));L[c+24>>2]=O(l*j)+O(O(O(h*e)-O(g*i))-O(k*f));L[c+20>>2]=O(e*k)+O(O(O(h*f)-O(g*j))-O(i*l));L[c+16>>2]=O(f*i)+O(O(O(h*l)-O(g*k))-O(j*e));e=O(m-s);e=O(e+e);f=O(o-q);f=O(f+f);g=O(p-r);g=O(g+g);l=O(O(O(O(-k)*e)-O(f*j))-O(i*g));m=O(O(h*h)+O(-.5));L[c+40>>2]=O(O(g*m)+O(h*O(O(j*e)-O(k*f))))-O(i*l);L[c+36>>2]=O(O(f*m)+O(h*O(O(k*g)-O(i*e))))-O(j*l);L[c+32>>2]=O(O(e*m)+O(h*O(O(i*f)-O(j*g))))-O(k*l);a=H[a+76>>2];Ra[H[H[a>>2]+36>>2]](a);Oa=d+48|0}function zj(a,b,c,d,e){a=a|0;b=b|0;c=O(c);d=O(d);e=e|0;var f=0,g=O(0),h=O(0),i=O(0),j=O(0),k=0,l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=0,s=0;k=H[a+12>>2];f=Oa+-64|0;Oa=f;l=L[a+8>>2];if(l!=O(0)){r=VT(k,b),s=e?-65536:-8355712,H[r+4>>2]=s;H[k+32>>2]=0;H[k>>2]=1;q=O(-d);b=0;d=O(0);while(1){L[f+56>>2]=j;L[f+52>>2]=g;L[f+48>>2]=d;d=O(O(b>>>0)*O(.19634954631328583));i=Z5(d);d=T5(d);a=WT(k,f+48|0);h=O(d*c);g=O(i*q);j=O(O(h*h)+O(O(g*g)+O(0)));d=O(O(1)/O(j+O(1)));h=O(O(h+h)*d);i=O(d*O(0));g=O(O(g+g)*d);o=O(g*O(0));m=O(O(h*O(0))+O(O(i+i)+o));d=O(O(O(1)-j)*d);n=O(O(d*d)+O(-.5));p=O(n*O(0));j=O(O(O(h*m)+O(p+O(d*O(O(i*O(0))-O(g+g)))))*l);L[f+40>>2]=j;g=O(O(O(g*m)+O(p+O(d*O(O(h+h)+O(i*O(-0))))))*l);L[f+36>>2]=g;d=O(O(O(i*m)+O(O(n+n)+O(d*O(o+O(h*O(-0))))))*l);L[f+32>>2]=d;a=WT(a,f+32|0);H[f+24>>2]=0;H[f+16>>2]=0;H[f+20>>2]=0;a=WT(a,f+16|0);L[f+8>>2]=j;L[f+4>>2]=g;L[f>>2]=d;WT(a,f);b=b+1|0;if((b|0)!=33){continue}break}}Oa=f- -64|0}function mK(a){var b=0,c=0;b=H[a+76>>2];if(b){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b);H[a+76>>2]=0}b=H[a+112>>2];if(b){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b);H[a+112>>2]=0}b=H[a+108>>2];if(b){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b);H[a+108>>2]=0}b=H[a+104>>2];if(b){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b);H[a+104>>2]=0}b=H[a+100>>2];if(b){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b);H[a+100>>2]=0}b=H[a+96>>2];if(b){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b);H[a+96>>2]=0}b=H[a+12984>>2];if(!((b|0)==(a+12464|0)|!b)){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b);H[a+12984>>2]=0}b=H[a+12988>>2];if(!((b|0)==(a+176|0)|!b)){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b);H[a+12988>>2]=0}b=H[a+12992>>2];if(!((b|0)==(a+6320|0)|!b)){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b);H[a+12992>>2]=0}b=a+12976|0;H[b>>2]=0;H[b+4>>2]=0;PT(a+132|0);b=H[a+124>>2];if(b){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}H[a+124>>2]=0;H[a+128>>2]=0;return a}function mi(a,b,c,d){var e=0,f=0,g=0;a:{switch(b|0){case 0:case 3:g=a+48|0;b:{c:{d:{b=H[a+52>>2];switch((b>>>30|0)-2|0){case 1:break b;case 0:break d;default:break c}}if(I[H[g>>2]+4785|0]){break b}}JF(a- -64|0,c,d);return}e=H[a+56>>2];if(!e){e=Tt(H[a+48>>2],b>>>24&15);H[a+56>>2]=e}b=H[a+316>>2];if(c){H[e+228>>2]=0;H[e+220>>2]=0;H[e+224>>2]=0;f=134217728;b=b&-65537}if(d){H[e+240>>2]=0;H[e+232>>2]=0;H[e+236>>2]=0;f=f|268435456;b=b&-131073}H[a+316>>2]=b|f;$t(H[a+48>>2],g);return;case 1:case 2:g=a+48|0;e:{f:{g:{b=H[a+52>>2];switch((b>>>30|0)-2|0){case 1:break e;case 0:break g;default:break f}}if(I[H[g>>2]+4785|0]){break e}}LF(a- -64|0,c,d);return}e=H[a+56>>2];if(!e){e=Tt(H[a+48>>2],b>>>24&15);H[a+56>>2]=e}b=H[a+316>>2];if(c){H[e+252>>2]=0;H[e+244>>2]=0;H[e+248>>2]=0;f=536870912;b=b&-262145}if(d){H[e+264>>2]=0;H[e+256>>2]=0;H[e+260>>2]=0;f=f|1073741824;b=b&-524289}H[a+316>>2]=b|f;$t(H[a+48>>2],g);break;default:break a}}}function mC(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=Oa-16|0;Oa=g;a:{if(!b){H[g+8>>2]=0;gy(a,0,g+8|0);Dv(a,H[a+4>>2]);break a}e=H[a+8>>2]&2147483647;d=(b>>>2|0)+b|0;b:{if((d>>>0>>1>>>0?e-d>>>0>1024?0:e:e)>>>0>=b>>>0){break b}H[g+12>>2]=0;gy(a,0,g+12|0);Dv(a,H[a+4>>2]);if(d>>>0<=(H[a+8>>2]&2147483647)>>>0){break b}Dv(a,d)}H[a+4>>2]=b;S6(H[a>>2],255,b<<2);j=H[c+40>>2];if(!j){break a}e=H[c>>2];l=H[c+8>>2];while(1){c=N(f,28)+l|0;b=H[c+24>>2];c:{if(!(b&1)){break c}d=b>>>1&15;if(!d){break c}h=H[a>>2];H[h+(H[e+(b>>>3&536870908)>>2]<<2)>>2]=f;if((d|0)==1){break c}b=1;i=d-1|0;m=i&1;if((d|0)!=2){i=i&-2;d=0;while(1){k=b<<2;H[(H[k+(e+(H[c+24>>2]>>>3&536870908)|0)>>2]<<2)+h>>2]=f;H[(H[((e+(H[c+24>>2]>>>3&536870908)|0)+k|0)+4>>2]<<2)+h>>2]=f;b=b+2|0;d=d+2|0;if((i|0)!=(d|0)){continue}break}}if(!m){break c}H[(H[(e+(H[c+24>>2]>>>3&536870908)|0)+(b<<2)>>2]<<2)+h>>2]=f}f=f+1|0;if((j|0)!=(f|0)){continue}break}}Oa=g+16|0}function V$(a,b,c,d,e,f,g){var h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=0,p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=O(0);j=L[a+20>>2];i=L[a+16>>2];k=L[a+24>>2];o=I[a+64|0];p=L[a+48>>2];q=L[d>>2];r=L[a+52>>2];s=L[d+4>>2];t=L[a+56>>2];u=L[d+8>>2];v=L[a+60>>2];w=L[d+12>>2];x=L[a+32>>2];y=L[c>>2];z=L[a+36>>2];A=L[c+4>>2];B=L[a+40>>2];C=L[c+8>>2];D=L[a+44>>2];E=L[c+12>>2];a=1;i=O(L[b+16>>2]-i);h=O(-i);j=O(L[b+20>>2]-j);m=O(-j);k=O(L[b+24>>2]-k);n=O(-k);b=o<<2;l=O(L[e>>2]*L[b+90336>>2]);i=i>h?i:h;h=j>m?j:m;h=i>=h?i:h;i=(k>n?k:n)>=O(0)?i:O(0);a:{if(l<(i<=h?h:i)){break a}h=L[b+90368>>2];i=O(O(E*D)+O(O(C*B)+O(O(y*x)+O(A*z))));if(h>i){break a}j=h;h=O(O(w*v)+O(O(u*t)+O(O(q*p)+O(s*r))));if(j>h){break a}if(i>2])>l;if(h>2])>l}return a}function eO(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;h=H[a+1184>>2];a:{if(!h){break a}i=H[a+2344>>2];if(!i){break a}k=H[a+1180>>2];g=H[a+2368>>2];b=H[g+36>>2];if(b){l=H[a+1192>>2];b:{if(b>>>0<=K[a+1196>>2]){while(1){j=N(e,24)+k|0;if(I[j+20|0]&4){c=H[g+24>>2]&2147483647;d=H[l>>2]+N(e,12)|0;b=H[d>>2];m=b>>>5|0;c:{if(c>>>0>m>>>0){f=1;if(H[H[g+20>>2]+(m<<2)>>2]>>>b&1){break c}}f=0}b=f;f=c;c=H[d+4>>2];d=c>>>5|0;F[j+20|0]=f>>>0<=d>>>0|!(H[H[g+20>>2]+(d<<2)>>2]>>>c&1)?b:b|2}e=e+1|0;if((h|0)!=(e|0)){continue}break}break b}j=H[g+24>>2]&2147483647;l=H[l>>2];while(1){c=l+N(e,12)|0;d=H[c>>2];b=d>>>5|0;d:{if(b>>>0>>0){f=1;if(H[H[g+20>>2]+(b<<2)>>2]>>>d&1){break d}}f=0}b=f;c=H[c+4>>2];d=c>>>5|0;F[(N(e,24)+k|0)+20|0]=d>>>0>=j>>>0|!(H[H[g+20>>2]+(d<<2)>>2]>>>c&1)?b:b|2;e=e+1|0;if((h|0)!=(e|0)){continue}break}}Ra[H[H[i>>2]+16>>2]](i,k,h);break a}Ra[H[H[i>>2]+16>>2]](i,k,h)}H[a+1184>>2]=0;H[H[a+1192>>2]+4>>2]=0}function Y0(a,b,c,d,e,f,g){var h=0,i=O(0),j=O(0),k=0,l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=0,w=0,x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=0;k=I[a+64|0];a:{if(!k){break a}while(1){h=H[a+76>>2]+N(w,48)|0;m=L[f>>2];j=O(L[h+44>>2]-m);if(j<=L[g>>2]){n=L[h+4>>2];o=L[h>>2];p=L[h+8>>2];y=L[d>>2];z=L[e+16>>2];A=L[d+4>>2];q=L[e+20>>2];B=L[d+8>>2];l=L[e+24>>2];r=L[e+8>>2];s=L[e>>2];t=L[e+4>>2];i=L[e+12>>2];k=H[c+4>>2];C=H[c>>2];u=L[c+8>>2];h=(v<<6)+b|0;H[h+28>>2]=0;L[h+8>>2]=u;H[h+52>>2]=-1;L[h+12>>2]=j;H[h>>2]=C;H[h+4>>2]=k;x=l;j=O(O(i*i)+O(-.5));l=O(O(r*p)+O(O(s*o)+O(t*n)));u=O(O(O(i*O(O(s*n)-O(o*t)))+O(p*j))+O(r*l));L[h+24>>2]=O(x+O(u+u))-O(m*B);x=q;q=O(O(t*l)+O(O(j*n)+O(i*O(O(r*o)-O(p*s)))));L[h+20>>2]=O(x+O(q+q))-O(m*A);i=O(O(s*l)+O(O(j*o)+O(i*O(O(t*p)-O(n*r)))));L[h+16>>2]=O(z+O(i+i))-O(m*y);k=I[a+64|0];v=v+1|0}if(v>>>0>63){break a}w=w+1|0;if(k>>>0>w>>>0){continue}break}}H[b+4096>>2]=v}function UB(a,b,c,d){var e=0,f=0,g=0;g=H[b+36>>2];e=H[g>>2];if(e>>>0>=2){a=e;a:{while(1){if(!a){break a}a=a-1|0;if(H[(g+(a<<2)|0)+4>>2]!=(c|0)){continue}break}c=e-1|0;H[g>>2]=c;H[(H[b+36>>2]+(a<<2)|0)+4>>2]=H[(g+(c<<2)|0)+4>>2]}RB(b,d);return 0}if(H[a+588>>2]==(b|0)){H[a+576>>2]=H[a+576>>2]-1;H[b>>2]=H[a+584>>2];H[a+588>>2]=0;H[a+584>>2]=b;return 0}c=H[b+32>>2];g=H[c+36>>2];e=g;if((e|0)==(b|0)){e=H[c+40>>2]}f=H[e+20>>2];H[c+16>>2]=H[e+16>>2];H[c+20>>2]=f;f=H[e+28>>2];H[c+24>>2]=H[e+24>>2];H[c+28>>2]=f;f=H[e+4>>2];H[c>>2]=H[e>>2];H[c+4>>2]=f;f=H[e+12>>2];H[c+8>>2]=H[e+8>>2];H[c+12>>2]=f;b:{if(!H[e+40>>2]){e=H[e+36>>2];H[c+40>>2]=0;H[c+36>>2]=e;break b}f=H[e+36>>2];H[c+36>>2]=f;H[f+32>>2]=c;e=H[e+40>>2];H[c+40>>2]=e;H[e+32>>2]=c}e=H[c+32>>2];if(e){RB(e,d)}b=H[b+36>>2];if(b){H[a+284>>2]=H[a+284>>2]-1;H[b>>2]=H[a+292>>2];H[a+292>>2]=b}if(g){H[a+576>>2]=H[a+576>>2]-1;H[g>>2]=H[a+584>>2];H[a+584>>2]=g}return c}function Nw(a,b){var c=0,d=0,e=0,f=O(0),g=O(0),h=O(0),i=0,j=O(0),k=O(0),l=O(0),m=0,n=0,o=O(0),p=O(0),q=O(0),r=0,s=0;d=H[a+336>>2]-1|0;if(d){n=H[b+32>>2];i=H[b+12>>2];while(1){e=d<<5;b=e+i|0;o=L[b+24>>2];p=L[b+20>>2];c=H[a+340>>2]+N(d,160)|0;j=L[c+120>>2];q=L[b+16>>2];k=L[c+124>>2];l=L[c+128>>2];f=L[b+8>>2];g=L[b+4>>2];c=(H[(e+H[a+332>>2]|0)+24>>2]<<5)+i|0;h=L[b>>2];L[c>>2]=h+L[c>>2];L[c+4>>2]=g+L[c+4>>2];L[c+8>>2]=f+L[c+8>>2];L[c+16>>2]=O(q+O(O(k*f)-O(g*l)))+L[c+16>>2];L[c+20>>2]=O(p+O(O(l*h)-O(f*j)))+L[c+20>>2];L[c+24>>2]=O(o+O(O(j*g)-O(h*k)))+L[c+24>>2];c=H[a+344>>2]+N(d,80)|0;m=I[c+76|0];if(m){r=(H[c+72>>2]<<2)+n|0;s=H[a+272>>2];e=0;while(1){c=(N(d,76)+s|0)+N(e,24)|0;L[(e<<2)+r>>2]=O(O(L[c+20>>2]*L[b+8>>2])+O(O(L[c+12>>2]*L[b>>2])+O(L[c+16>>2]*L[b+4>>2])))+O(O(L[c+8>>2]*L[b+24>>2])+O(O(L[c>>2]*L[b+16>>2])+O(L[c+4>>2]*L[b+20>>2])));e=e+1|0;if((m|0)!=(e|0)){continue}break}}d=d-1|0;if(d){continue}break}}}function Kh(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=H[a+320>>2];if(c){j=a,k=Ra[H[H[b>>2]>>2]](b,-2147483648,c)|0,H[j+320>>2]=k}c=H[a+324>>2];if(c){j=a,k=Ra[H[H[b>>2]>>2]](b,-2147483648,c)|0,H[j+324>>2]=k}c=H[a+328>>2];if(c){j=a,k=Ra[H[H[b>>2]>>2]](b,-2147483648,c)|0,H[j+328>>2]=k}d=J[a+24>>1];if(d){h=(d|0)==1?a+20|0:H[a+20>>2];c=0;while(1){e=h+(c<<2)|0;f=Ra[H[H[b>>2]>>2]](b,-2147483648,H[e>>2])|0;H[e>>2]=f;at(f,a);c=c+1|0;if((d|0)!=(c|0)){continue}break}}ig(a+12|0,b);d=H[a+356>>2];a:{if(!d){break a}c=0;if((d|0)!=1){h=d&-2;f=0;while(1){e=c<<2;g=e+H[a+352>>2]|0;i=H[g>>2];if(i){j=g,k=Ra[H[H[b>>2]>>2]](b,-2147483648,i)|0,H[j>>2]=k}e=H[a+352>>2]+(e|4)|0;g=H[e>>2];if(g){j=e,k=Ra[H[H[b>>2]>>2]](b,-2147483648,g)|0,H[j>>2]=k}c=c+2|0;f=f+2|0;if((h|0)!=(f|0)){continue}break}}if(!(d&1)){break a}a=H[a+352>>2]+(c<<2)|0;c=H[a>>2];if(!c){break a}j=a,k=Ra[H[H[b>>2]>>2]](b,-2147483648,c)|0,H[j>>2]=k}}function Mo(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;e=Oa-16|0;Oa=e;d=Ra[H[H[b>>2]+52>>2]](b)|0;a:{if((d|0)!=(a|0)){a=H[33808];H[e>>2]=17785;o5(a,8,9281,79,64859,e);break a}if((Ra[H[H[b>>2]+52>>2]](b)|0)!=(d|0)){break a}g=b+8|0;i=H[b+36>>2];if(i){while(1){b:{c:{d:{d=H[H[b+40>>2]+(h<<2)>>2];if((Ra[H[H[d>>2]+24>>2]](d)|0)!=2){vt(g,d+H[((J[d+4>>1]<<2)+73232|0)+72>>2]|0,0);e:{switch(Ra[H[H[d>>2]+24>>2]](d)|0){case 1:gp(a,d,c,0);break b;case 0:break d;case 2:break e;default:break b}}o5(H[33808],2,9281,689,18618,0);break b}if(!(Ra[H[H[d>>2]+28>>2]](d)|0)){break b}d=H[d+320>>2];j=H[(Ra[H[H[d>>2]+100>>2]](d)|0)+84>>2];f=0;if(!(Ra[H[H[d>>2]+76>>2]](d)|0)){break c}while(1){vt(g,H[(f<<2)+j>>2]+48|0,0);f=f+1|0;if(Ra[H[H[d>>2]+76>>2]](d)>>>0>f>>>0){continue}break}break c}fp(a,d,c,0);break b}op(a,d,c,0)}h=h+1|0;if((i|0)!=(h|0)){continue}break}}Qt(a+16|0,g);H[e+12>>2]=b;Pf(a+5984|0,e+12|0)}Oa=e+16|0}function CQ(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;e=H[a+20>>2];b=H[a+28>>2];h=H[H[b+976>>2]+1156>>2];a=H[b+988>>2];d=H[a+128>>2];H[b+992>>2]=0;a:{if(H[a+132>>2]?0:d){break a}c=H[b+1160>>2];if(!c){break a}i=b+992|0;d=0;if(!e){while(1){a=yq(h,40);e=H[b+1156>>2];f=H[b+16>>2];g=H[b+20>>2];H[a+24>>2]=0;H[a+16>>2]=0;H[a+20>>2]=0;H[a+8>>2]=f;H[a+12>>2]=g;H[a+36>>2]=i;c=c-d|0;H[a+32>>2]=c>>>0<256?c:256;H[a>>2]=119748;H[a+24>>2]=1;H[a+28>>2]=e+(d<<2);e=H[a+16>>2];Ra[H[H[e>>2]+72>>2]](e,a);d=d+256|0;c=H[b+1160>>2];if(d>>>0>>0){continue}break a}}while(1){a=yq(h,40);f=H[b+1156>>2];g=H[b+16>>2];j=H[b+20>>2];H[a+24>>2]=0;H[a+16>>2]=0;H[a+8>>2]=g;H[a+12>>2]=j;H[a+36>>2]=i;c=c-d|0;H[a+32>>2]=c>>>0<256?c:256;H[a>>2]=119748;H[a+20>>2]=e;H[a+24>>2]=1;H[a+28>>2]=(d<<2)+f;Ra[H[H[e>>2]+16>>2]](e);H[a+16>>2]=H[H[a+20>>2]+16>>2];Ra[H[H[a>>2]+20>>2]](a);d=d+256|0;c=H[b+1160>>2];if(d>>>0>>0){continue}break}}}function Md(a,b){a=a|0;b=b|0;var c=0,d=O(0),e=O(0),f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=0,n=O(0),o=O(0),p=O(0),q=O(0),r=O(0);c=Oa+-64|0;Oa=c;a:{if(Ra[H[H[b>>2]+72>>2]](b)|0){m=Ra[H[H[b>>2]+72>>2]](b)|0;Ra[H[H[m>>2]+76>>2]](c+32|0,m);Ra[H[H[b>>2]+80>>2]](c,b);p=L[c+52>>2];q=L[c+56>>2];l=L[c+24>>2];n=L[c+20>>2];r=L[c+48>>2];o=L[c+16>>2];d=L[c+44>>2];e=L[c+12>>2];f=L[c>>2];h=L[c+32>>2];i=L[c+36>>2];g=L[c+4>>2];j=L[c+40>>2];k=L[c+8>>2];L[a+12>>2]=O(O(O(d*e)-O(f*h))-O(i*g))-O(j*k);L[a+8>>2]=O(O(h*g)+O(O(d*k)+O(j*e)))-O(f*i);L[a+4>>2]=O(O(j*f)+O(O(d*g)+O(i*e)))-O(k*h);L[a>>2]=O(O(i*k)+O(O(d*f)+O(h*e)))-O(g*j);e=O(l+l);f=O(o+o);g=O(n+n);k=O(O(j*e)+O(O(h*f)+O(i*g)));l=O(O(d*d)+O(-.5));L[a+24>>2]=q+O(O(j*k)+O(O(e*l)+O(d*O(O(h*g)-O(f*i)))));L[a+20>>2]=p+O(O(i*k)+O(O(g*l)+O(d*O(O(j*f)-O(e*h)))));L[a+16>>2]=r+O(O(h*k)+O(O(f*l)+O(d*O(O(i*e)-O(g*j)))));break a}Ra[H[H[b>>2]+80>>2]](a,b)}Oa=c- -64|0}function yh(a,b,c){a=a|0;b=b|0;c=O(c);var d=O(0),e=0,f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=0,m=0;e=Oa-32|0;Oa=e;h=O(-8.5070586659632215e37);i=O(8.5070586659632215e37);a:{if(!H[b+100>>2]){j=O(8.5070586659632215e37);f=O(8.5070586659632215e37);k=O(-8.5070586659632215e37);g=O(-8.5070586659632215e37);break a}g=O(-8.5070586659632215e37);k=O(-8.5070586659632215e37);f=O(8.5070586659632215e37);j=O(8.5070586659632215e37);while(1){m=H[H[b+96>>2]+(l<<2)>>2];Ra[H[H[m>>2]+40>>2]](e+8|0,m,O(1.0099999904632568));d=L[e+28>>2];h=d>2];g=d>2];k=d>2];i=d>i?i:d;d=L[e+12>>2];f=d>f?f:d;d=L[e+8>>2];j=d>j?j:d;l=l+1|0;if(l>>>0>2]){continue}break}}d=O(O(i+h)*O(.5));h=O(O(O(h-i)*O(.5))*c);L[a+20>>2]=d+h;i=O(O(f+g)*O(.5));f=O(O(O(g-f)*O(.5))*c);L[a+16>>2]=i+f;g=O(O(j+k)*O(.5));c=O(O(O(k-j)*O(.5))*c);L[a+12>>2]=g+c;L[a+8>>2]=d-h;L[a+4>>2]=i-f;L[a>>2]=g-c;Oa=e+32|0}function TC(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;j=Oa-32|0;Oa=j;f=H[a+4>>2];if(f){h=H[a+292>>2];g=H[a+296>>2];H[j+16>>2]=0;H[j+8>>2]=0;H[j+12>>2]=0;f=UC(g,h,f,b,c,d,e)}else{f=1}if(!(!f|!I[a+336|0]|(H[a+156>>2]+H[a+108>>2]|0)==(0-H[a+216>>2]|0))){f=Oa-48|0;Oa=f;a:{if(H[a+156>>2]!=(0-H[a+108>>2]|0)){h=Oa-32|0;Oa=h;g=1;i=H[a+68>>2];if(!(!i|!H[i+588>>2])){g=H[a+160>>2];k=H[g+8>>2];g=H[g+12>>2];H[h+16>>2]=0;H[h+8>>2]=0;H[h+12>>2]=0;g=kC(g,k,i,b,c,d,e)}i=H[a+116>>2];if(!(!i|!H[i+588>>2]|g^1)){g=H[a+160>>2];k=H[g+8>>2];g=H[g+12>>2];H[h+16>>2]=0;H[h+8>>2]=0;H[h+12>>2]=0;g=kC(g,k,i,b,c,d,e)}Oa=h+32|0;if(!g){break a}}if(!H[a+216>>2]){l=1;break a}H[f+40>>2]=0;H[f+32>>2]=0;H[f+36>>2]=0;H[f+28>>2]=H[a+176>>2];H[f+24>>2]=e;H[f+16>>2]=c;H[f+12>>2]=b;H[f+8>>2]=114572;e=f+32|0;H[f+20>>2]=e;l=UC(H[a+252>>2],H[a+248>>2],H[a+220>>2],b,c,d,f+8|0)}Oa=f+48|0;f=l}Oa=j+32|0;return f|0}function HV(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0);e=Oa-96|0;Oa=e;g=L[b+20>>2];h=L[d+20>>2];i=L[b+24>>2];j=L[d+24>>2];L[e+80>>2]=L[d+16>>2]-L[b+16>>2];L[e+88>>2]=j-i;L[e+84>>2]=h-g;i=L[b+8>>2];j=L[b+4>>2];f=L[b>>2];g=O(f+f);k=L[b+12>>2];h=O(k+k);n=O(O(f*g)+O(O(k*h)+O(-1)));f=L[a+8>>2];o=O(n*f);L[e+64>>2]=o;p=O(f*O(O(i*h)+O(g*j)));L[e+68>>2]=p;q=O(f*O(O(g*i)-O(j*h)));L[e+72>>2]=q;h=L[d+4>>2];j=O(h+h);g=L[d+8>>2];l=O(j*g);f=L[d>>2];i=O(f+f);k=L[d+12>>2];m=O(i*k);L[e+52>>2]=l-m;L[e+44>>2]=l+m;f=O(O(1)-O(f*i));l=O(h*j);L[e+56>>2]=f-l;n=f;f=O(g+g);m=O(g*f);L[e+40>>2]=n-m;g=O(i*g);j=O(j*k);L[e+48>>2]=g+j;h=O(i*h);i=O(f*k);L[e+36>>2]=h-i;L[e+32>>2]=g-j;L[e+28>>2]=h+i;L[e+24>>2]=O(O(1)-l)-m;L[e+16>>2]=-q;L[e+12>>2]=-p;L[e+8>>2]=-o;g=sZ(e- -64|0,e+8|0,e+80|0,c+4|0,e+24|0,0,0);Oa=e+96|0;h=L[a+4>>2];return g<=O(h*h)|0}function Ut(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;g=H[a+4>>2];a:{if(!(g&16777215)){break a}d=H[a+8>>2];if(!d){d=Tt(H[a>>2],g>>>24&15);H[a+8>>2]=d}b:{if(!(g&1)){break b}f=H[d+4>>2];if(!f){break b}j=H[a+16>>2]&16777215;k=H[b+4880>>2]+(H[d>>2]<<2)|0;if((f|0)!=1){l=f&-2;while(1){e=c<<2;i=H[e+k>>2];i=H[(H[i+4>>2]>>>22&60)+76360>>2]+i|0;H[i+4>>2]=I[i+7|0]<<24|j;e=H[(e|4)+k>>2];e=H[(H[e+4>>2]>>>22&60)+76360>>2]+e|0;H[e+4>>2]=I[e+7|0]<<24|j;c=c+2|0;h=h+2|0;if((l|0)!=(h|0)){continue}break}}if(!(f&1)){break b}c=H[(c<<2)+k>>2];c=H[((H[c+4>>2]>>>22&60)+76348|0)+12>>2]+c|0;H[c+4>>2]=I[c+7|0]<<24|j}if(!(g&2)){break a}h=H[d+12>>2];if(!h){break a}g=H[b+4880>>2]+(H[d+8>>2]<<2)|0;c=0;while(1){b=H[g+(c<<2)>>2];f=H[b+4>>2];b=H[((f>>>22&60)+76348|0)+12>>2]+b|0;H[b+4>>2]=H[b+4>>2]|16777215;if((f>>>30|0)-1>>>0<=1){TD(b);h=H[d+12>>2]}c=c+1|0;if(h>>>0>c>>>0){continue}break}}H[a+8>>2]=0;H[a+4>>2]=I[a+7|0]<<24}function $m(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:{if(!H[a+92>>2]){break a}e=(b<<15^-1)+b|0;e=N(e>>>10^e,9);e=e>>>6^e;e=(e<<11^-1)+e|0;e=H[H[a+68>>2]+((H[a+76>>2]-1&(e>>>16^e))<<2)>>2];if((e|0)==-1){break a}f=H[a- -64>>2];a=H[a+60>>2];while(1){if(H[a+(e<<3)>>2]!=(b|0)){e=H[f+(e<<2)>>2];if((e|0)!=-1){continue}break a}break}a=H[(a+(e<<3)|0)+4>>2];if(!I[a+41|0]|!d|!H[a+36>>2]){break a}b=0;e=1;while(1){b:{if(!e){break b}f=H[(b<<2)+c>>2];e=(f<<15^-1)+f|0;e=N(e>>>10^e,9);e=e>>>6^e;e=(e<<11^-1)+e|0;g=H[a+12>>2]+((H[a+20>>2]-1&(e>>>16^e))<<2)|0;e=H[g>>2];if((e|0)==-1){break b}h=H[a+8>>2];i=H[a+4>>2];if((f|0)!=H[i+(e<<2)>>2]){while(1){g=(e<<2)+h|0;e=H[g>>2];if((e|0)==-1){break b}if((f|0)!=H[(e<<2)+i>>2]){continue}break}}f=(e<<2)+h|0;H[g>>2]=H[f>>2];H[a+36>>2]=H[a+36>>2]-1;H[a+32>>2]=H[a+32>>2]+1;H[f>>2]=H[a+28>>2];H[a+28>>2]=e}b=b+1|0;if((b|0)==(d|0)){break a}e=H[a+36>>2];continue}}}function UQ(a){var b=0,c=0,d=0,e=0,f=0;c=H[H[a+28>>2]+4>>2];b=H[H[a+32>>2]+4>>2];b=I[H[b+44>>2]+9|0]-1>>>0<2?b:0;if(!(K[(I[H[c+44>>2]+9|0]-1>>>0<2?c:0)+152>>2]<4294967294|(K[b+152>>2]<4294967294?b:0))){a:{if(H[a+52>>2]==-1){break a}b=H[a+44>>2];H[a+44>>2]=b<<1&4194304|b;c=H[H[H[a+4>>2]+40>>2]+2168>>2];if(b&8388608){CI(c,a);break a}AI(c,a)}b=H[a+56>>2];b:{if(!b){break b}c=H[a+44>>2];c:{if(c&98304){break c}d=I[b+43|0];if(!(d&3)|d&2){break c}H[a+44>>2]=c|65536}c=H[H[a+4>>2]+40>>2];d=H[H[c+976>>2]+1024>>2];Ra[H[H[d>>2]+36>>2]](d,b);xJ(H[c+976>>2],H[a+56>>2]);H[a+56>>2]=0;b=H[a+60>>2];if((b|0)==-1){break b}mF(H[H[H[a+4>>2]+40>>2]+1e3>>2],b)}b=H[H[H[a+4>>2]+40>>2]+1e3>>2];d=H[a+60>>2];e=H[b+80>>2]+(d<<2)|0;f=H[e>>2];if(f){c=H[b+96>>2];d:{if(c>>>0>=(H[b+100>>2]&2147483647)>>>0){kF(b+92|0,e);break d}H[H[b+92>>2]+(c<<2)>>2]=f;H[b+96>>2]=c+1}H[H[b+80>>2]+(d<<2)>>2]=0}F[a+25|0]=I[a+25|0]&223;d=1}return d}function KA(a,b,c){a=a|0;b=b|0;c=c|0;var d=O(0),e=0,f=O(0),g=O(0),h=O(0),i=0,j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=0,v=0,w=O(0);e=Oa-32|0;Oa=e;c=H[c+4>>2]&64?H[c+8>>2]+96|0:c+32|0;w=L[c+16>>2];j=L[c+20>>2];u=H[b+8>>2];v=H[b+4>>2];i=v&4?u:b+48|0;k=L[i+12>>2];l=L[i+8>>2];m=L[i>>2];n=L[i+4>>2];f=L[c+8>>2];o=L[i+24>>2];g=L[c>>2];p=L[i+16>>2];h=L[c+4>>2];q=L[i+20>>2];s=O(O(f*o)+O(O(g*p)+O(h*q)));d=L[c+12>>2];t=O(O(d*d)+O(-.5));r=O(O(O(t*o)+O(d*O(O(g*q)-O(p*h))))+O(f*s));L[e+24>>2]=L[c+24>>2]+O(r+r);r=j;j=O(O(h*s)+O(O(q*t)+O(d*O(O(f*p)-O(o*g)))));L[e+20>>2]=r+O(j+j);L[e+12>>2]=O(d*k)-O(O(f*l)+O(O(g*m)+O(h*n)));L[e+8>>2]=O(f*k)+O(O(O(g*n)-O(m*h))+O(d*l));L[e+4>>2]=O(h*k)+O(O(d*n)+O(O(f*m)-O(l*g)));L[e>>2]=O(g*k)+O(O(d*m)+O(O(h*l)-O(n*f)));d=O(O(g*s)+O(O(p*t)+O(d*O(O(h*o)-O(q*f)))));L[e+16>>2]=w+O(d+d);aU(a,v&1?u- -64|0:b+84|0,e,O(1.0099999904632568));Oa=e+32|0}function lY(a,b,c,d,e,f){var g=0,h=0,i=0,j=0;g=Oa-256|0;Oa=g;h=0;a:{if(L[b+4>>2]!=O(1)){break a}h=0;if(L[b+8>>2]!=O(1)){break a}h=L[b+12>>2]==O(1)}H[g+240>>2]=0;H[g+244>>2]=1065353216;H[g+232>>2]=0;H[g+236>>2]=0;H[g+224>>2]=0;H[g+228>>2]=1065353216;H[g+216>>2]=0;H[g+220>>2]=0;H[g+208>>2]=1065353216;H[g+212>>2]=1065353216;H[g+192>>2]=1065353216;H[g+196>>2]=0;F[g+248|0]=0;H[g+200>>2]=0;H[g+204>>2]=0;H[g+184>>2]=0;H[g+188>>2]=0;H[g+176>>2]=1065353216;H[g+180>>2]=0;if(!h){yW(g+176|0,b+4|0,b+16|0)}H[g+160>>2]=0;H[g+164>>2]=1065353216;H[g+152>>2]=0;H[g+156>>2]=0;H[g+144>>2]=0;H[g+148>>2]=1065353216;H[g+136>>2]=0;H[g+140>>2]=0;H[g+128>>2]=1065353216;H[g+132>>2]=1065353216;H[g+112>>2]=1065353216;H[g+116>>2]=0;F[g+168|0]=0;H[g+120>>2]=0;H[g+124>>2]=0;H[g+104>>2]=0;H[g+108>>2]=0;H[g+96>>2]=1065353216;H[g+100>>2]=0;i=g+72|0;j=b;b=g+96|0;a=mY(g,i,j,c,d,e,f,b,g+176|0,KY(a,b,i,g),h);Oa=g+256|0;return a}function S3(a,b,c,d,e,f){var g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0);$1(d,e,a,b,c);g=L[e+12>>2];h=L[e+8>>2];i=L[e>>2];j=L[e+4>>2];if(O(O(L[d+12>>2]*g)+O(O(L[d+8>>2]*h)+O(O(L[d>>2]*i)+O(L[d+4>>2]*j))))>2]=g;h=O(-h);L[e+8>>2]=h;j=O(-j);L[e+4>>2]=j;i=O(-i);L[e>>2]=i}o=L[d+20>>2];p=L[e+20>>2];q=L[d+24>>2];r=L[e+24>>2];s=L[d+16>>2];t=L[e+16>>2];l=L[d+8>>2];m=L[d+4>>2];k=L[d+12>>2];n=L[d>>2];L[f+12>>2]=O(l*h)+O(O(m*j)+O(O(k*g)+O(n*i)));L[f+8>>2]=O(i*m)+O(O(O(k*h)-O(g*l))-O(n*j));L[f+4>>2]=O(h*n)+O(O(O(k*j)-O(g*m))-O(l*i));L[f>>2]=O(j*l)+O(O(O(k*i)-O(g*n))-O(m*h));g=O(t-s);g=O(g+g);h=O(p-o);h=O(h+h);i=O(r-q);i=O(i+i);j=O(O(O(O(-n)*g)-O(h*m))-O(l*i));o=O(O(k*k)+O(-.5));L[f+24>>2]=O(O(i*o)+O(k*O(O(m*g)-O(n*h))))-O(l*j);L[f+20>>2]=O(O(h*o)+O(k*O(O(n*i)-O(l*g))))-O(m*j);L[f+16>>2]=O(O(g*o)+O(k*O(O(l*h)-O(m*i))))-O(n*j)}function _Q(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0;f=Oa-48|0;Oa=f;if(H[a+8>>2]<0){aI(a);e=f+8|0;b=H[H[a+4>>2]+40>>2];c=H[H[b+976>>2]+1024>>2];Ra[H[H[c>>2]+84>>2]](e,c);qI(H[b+2168>>2],a,4,e,(H[b+2360>>2]&8)>>>3|0)}e=H[H[a+4>>2]+40>>2];b=H[e+1012>>2];Ra[H[H[b>>2]+20>>2]](b,H[a+32>>2]);b=H[a+8>>2];c=H[e+2516>>2]+(b>>>3&268435452)|0;d=H[c>>2];h=c,i=j7(-2,b)&d,H[h>>2]=i;if(H[a+36>>2]!=-1){kR(H[H[H[a+4>>2]+40>>2]+1152>>2],a)}SG(H[H[H[a+4>>2]+40>>2]+2376>>2],H[a+8>>2]&2147483647);d=H[H[a+4>>2]+40>>2];b=H[d+2376>>2];c=H[b+12>>2];a:{if(c){g=c-1|0;c=H[H[b+8>>2]+(g<<2)>>2];H[b+12>>2]=g;break a}c=H[b+4>>2];H[b+4>>2]=c+1}b=c&2147483647;H[a+8>>2]=b|H[a+8>>2]&-2147483648;b=b+1|0;c=H[d+1140>>2];d=H[c+12>>2]&2147483647;if(b>>>0>=d>>>0){b=b|b>>>1;b=b>>>2|b;b=b>>>4|b;b=b>>>8|b;b=(b>>>16|b)+1|0;if(b>>>0>d>>>0){ZH(c,b)}H[c+8>>2]=b}WQ(a);b=H[e+1012>>2];Ra[H[H[b>>2]+16>>2]](b,a+12|0,H[a+32>>2]);Oa=f+48|0}function R3(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=0,o=O(0),p=O(0);e=Oa-128|0;Oa=e;S3(a,b,c,e+96|0,e- -64|0,e+32|0);h=L[e+56>>2];f=L[e+48>>2];j=L[e+52>>2];i=O(O(h*h)+O(O(f*f)+O(j*j)));g=L[a+80>>2];n=i>O(g*g);if(n){i=O(O(1)/O(W(i)));h=O(g*O(h*i));j=O(g*O(j*i));f=O(g*O(f*i))}L[e+24>>2]=h;L[e+20>>2]=j;L[e+16>>2]=f;g=O(L[a+84>>2]*O(.5));h=Z5(g);p=T5(g);a:{b:{c:{if(h>O(.9998999834060669)){j=L[e+44>>2];k=L[e+40>>2];l=L[e+36>>2];f=L[e+32>>2];break c}f=L[e+32>>2];j=L[e+44>>2];d:{if(j>=O(0)){l=L[e+36>>2];i=l;k=L[e+40>>2];m=k;g=f;break d}k=L[e+40>>2];m=O(-k);l=L[e+36>>2];i=O(-l);g=O(-f)}o=O(O(m*m)+O(O(g*g)+O(i*i)));if(!(o>O(h*h))){break c}L[e+12>>2]=p;f=O(O(1)/O(W(o)));L[e+8>>2]=O(h*m)*f;L[e+4>>2]=O(h*i)*f;L[e>>2]=O(h*g)*f;break b}L[e+12>>2]=j;L[e+8>>2]=k;L[e+4>>2]=l;L[e>>2]=f;if(!n){break a}}f2(b,c,e+96|0,e- -64|0,e,a,d)}Oa=e+128|0}function LN(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;d=Oa-16|0;Oa=d;g=H[a+4>>2];h=H[a>>2];f=H[a+16>>2];a:{if(f){i=H[a+12>>2];j=H[a+8>>2];while(1){b:{if((b|0)==(j|0)){break b}e=N(b,12)+i|0;c=H[e+4>>2];if(!c){c=H[e+8>>2];if((c|0)==(h|0)){break b}H[e+8>>2]=c+1;e=H[e>>2];if(!e){break b}H[a+8>>2]=b;c=e+N(c,g)|0;break a}H[e+4>>2]=H[c>>2];H[a+8>>2]=b;break a}b=b+1|0;if((f|0)!=(b|0)){continue}break}}F[a+24|0]=1;H[a+8>>2]=f;H[d+4>>2]=0;H[d+8>>2]=0;b=N(g,h);c:{if(!b){b=0;break c}c=H[33808]+12|0;b=Ra[H[H[c>>2]+8>>2]](c,b,20591,15520,60)|0;f=H[a+16>>2]}H[d>>2]=b;d:{if((H[a+20>>2]&2147483647)>>>0<=f>>>0){a=JN(a+12|0,d);break d}c=H[d+4>>2];b=H[a+12>>2]+N(f,12)|0;H[b>>2]=H[d>>2];H[b+4>>2]=c;H[b+8>>2]=H[d+8>>2];b=H[a+16>>2];H[a+16>>2]=b+1;a=H[a+12>>2]+N(b,12)|0}c=H[a+4>>2];if(c){H[a+4>>2]=H[c>>2];break a}c=0;b=H[a+8>>2];if((b|0)==(h|0)){break a}H[a+8>>2]=b+1;c=H[a>>2]+N(b,g)|0}Oa=d+16|0;return c}function s$(a,b,c){var d=0,e=O(0),f=O(0),g=O(0),h=O(0);d=H[c+4>>2];H[a+12>>2]=1;G[a+6>>1]=3;H[a+8>>2]=128828;H[a>>2]=128732;G[a+4>>1]=H[(d<<2)+89504>>2];H[a+16>>2]=H[c+12>>2];H[a+20>>2]=H[c+68>>2];H[a+24>>2]=H[c+16>>2];H[a+28>>2]=H[c+72>>2];e=L[c+32>>2];f=L[c+36>>2];g=L[c+24>>2];h=L[c+20>>2];L[a+40>>2]=O(L[c+28>>2]+L[c+40>>2])*O(.5);L[a+36>>2]=O(g+f)*O(.5);L[a+32>>2]=O(h+e)*O(.5);e=L[c+32>>2];f=L[c+24>>2];g=L[c+36>>2];h=L[c+20>>2];L[a+52>>2]=O(L[c+40>>2]-L[c+28>>2])*O(.5);L[a+48>>2]=O(g-f)*O(.5);L[a+44>>2]=O(e-h)*O(.5);H[a+56>>2]=H[c+76>>2];L[a+60>>2]=L[c+44>>2];F[a+64|0]=I[c+8|0];H[a+68>>2]=H[c+80>>2];H[a+72>>2]=H[c+48>>2];d=H[c+52>>2];H[a+80>>2]=b;H[a+76>>2]=d;H[a+84>>2]=H[c+56>>2];H[a+88>>2]=H[c+60>>2];b=c- -64|0;H[a+92>>2]=H[b>>2];H[a+96>>2]=H[c+84>>2];H[c+48>>2]=0;H[c+52>>2]=0;H[c+16>>2]=0;H[c+56>>2]=0;H[c+60>>2]=0;H[b>>2]=0;H[c+72>>2]=0;H[c+76>>2]=0;H[c+80>>2]=0;H[c+84>>2]=0}function GW(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=O(f);g=g|0;h=h|0;i=O(i);var j=0,k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0);j=Oa+-64|0;Oa=j;k=L[b+20>>2];n=L[b+16>>2];s=L[b+24>>2];l=L[b>>2];o=O(l+l);m=L[b+8>>2];t=L[b+4>>2];p=L[b+12>>2];q=O(p+p);r=L[a+8>>2];u=O(O(O(o*m)-O(t*q))*r);L[j+52>>2]=s-u;m=O(r*O(O(m*q)+O(o*t)));L[j+48>>2]=k-m;L[j+40>>2]=u+s;L[j+36>>2]=k+m;k=O(r*O(O(l*o)+O(O(p*q)+O(-1))));L[j+44>>2]=n-k;L[j+32>>2]=n+k;L[j+56>>2]=L[a+4>>2];k=L[e>>2];n=L[e+4>>2];l=L[e+8>>2];G[j+8>>1]=J[h>>1]&64511;L[j+24>>2]=-l;L[j+20>>2]=-n;L[j+16>>2]=-k;a=tW(c,d,a,b,j+32|0,j+16|0,f,g,j+8|0,i);if(a){if(F[g+12|0]&1){i=L[e+8>>2];k=L[e+4>>2];f=L[g+40>>2];L[g+16>>2]=O(f*L[e>>2])+L[g+16>>2];L[g+20>>2]=O(f*k)+L[g+20>>2];L[g+24>>2]=O(f*i)+L[g+24>>2]}H[g+8>>2]=-1;L[g+28>>2]=-L[g+28>>2];L[g+36>>2]=-L[g+36>>2];L[g+32>>2]=-L[g+32>>2]}Oa=j- -64|0;return a|0}function y2(a,b){a=a|0;b=b|0;var c=0,d=O(0),e=O(0),f=O(0),g=O(0),h=O(0),i=0,j=O(0),k=O(0),l=O(0),m=O(0);c=Oa+-64|0;Oa=c;b=H[b+76>>2];Ra[H[H[b>>2]+28>>2]](b,c+44|0,c+40|0);u1(c+8|0,H[c+44>>2]);b=H[c+44>>2];d=O(0);a:{if(!b){break a}d=O(0);if(J[b+4>>1]==6){break a}i=c+48|0;Ra[H[H[b>>2]+156>>2]](i,b);Ra[H[H[b>>2]+164>>2]](i,b);f=L[c+52>>2];g=L[c+48>>2];d=L[c+56>>2]}b=H[c+40>>2];e=O(0);b:{if(!b){break b}e=O(0);if(J[b+4>>1]==6){break b}i=c+48|0;Ra[H[H[b>>2]+156>>2]](i,b);Ra[H[H[b>>2]+164>>2]](i,b);h=L[c+56>>2];j=L[c+48>>2];e=L[c+52>>2]}k=L[c+16>>2];d=O(O(h-d)-L[c+32>>2]);h=O(d+d);l=L[c+8>>2];d=O(O(j-g)-L[c+24>>2]);g=O(d+d);d=O(O(e-f)-L[c+28>>2]);e=O(d+d);f=L[c+12>>2];j=O(O(k*h)+O(O(l*g)+O(e*f)));d=L[c+20>>2];m=O(O(d*d)+O(-.5));L[a+8>>2]=O(k*j)+O(O(h*m)-O(d*O(O(l*e)-O(g*f))));L[a+4>>2]=O(f*j)+O(O(e*m)-O(d*O(O(k*g)-O(h*l))));L[a>>2]=O(l*j)+O(O(g*m)-O(d*O(O(f*h)-O(e*k))));Oa=c- -64|0}function ru(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,k=0,l=0;f=Oa-352|0;Oa=f;H[f+336>>2]=0;H[f+340>>2]=1065353216;H[f+328>>2]=0;H[f+332>>2]=0;H[f+320>>2]=0;H[f+324>>2]=1065353216;H[f+312>>2]=0;H[f+316>>2]=0;H[f+304>>2]=1065353216;H[f+308>>2]=1065353216;H[f+288>>2]=1065353216;H[f+292>>2]=0;F[f+344|0]=0;H[f+296>>2]=0;H[f+300>>2]=0;H[f+280>>2]=0;H[f+284>>2]=0;H[f+272>>2]=1065353216;H[f+276>>2]=0;H[f+256>>2]=0;H[f+260>>2]=1065353216;H[f+248>>2]=0;H[f+252>>2]=0;H[f+240>>2]=0;H[f+244>>2]=1065353216;H[f+232>>2]=0;H[f+236>>2]=0;H[f+224>>2]=1065353216;H[f+228>>2]=1065353216;H[f+208>>2]=1065353216;H[f+212>>2]=0;F[f+264|0]=0;H[f+216>>2]=0;H[f+220>>2]=0;H[f+200>>2]=0;H[f+204>>2]=0;H[f+192>>2]=1065353216;H[f+196>>2]=0;i=a;a=f+272|0;j=f+168|0;h=f+72|0;k=KY(i,a,j,h);i=h;h=f+144|0;l=a;a=f+192|0;a=hY(i,f,j,h,c,d,e,g,l,a,k,KY(b,a,h,f));Oa=f+352|0;return a|0}function r1(a,b,c,d,e,f){var g=O(0),h=O(0),i=0,j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0);i=Oa-48|0;Oa=i;g=L[c>>2];j=L[d>>2];h=L[c+4>>2];k=L[d+4>>2];L[i+40>>2]=O(L[d+8>>2]*e)+L[c+8>>2];L[i+36>>2]=h+O(k*e);L[i+32>>2]=g+O(j*e);qZ(i+8|0,i+32|0,f,f+12|0,f+24|0,i+28|0,i+24|0);l=L[i+16>>2];e=O(L[i+40>>2]-l);m=L[i+8>>2];g=O(L[i+32>>2]-m);n=L[i+12>>2];j=O(L[i+36>>2]-n);h=O(W(O(O(e*e)+O(O(g*g)+O(j*j)))));if(h>O(0)){k=O(O(1)/h);e=O(e*k);j=O(j*k);g=O(g*k)}a:{if(!(h>2];j=O(L[f+12>>2]-e);g=L[f+4>>2];h=O(L[f+28>>2]-g);k=O(L[f+24>>2]-e);g=O(L[f+16>>2]-g);e=O(O(j*h)-O(k*g));p=g;g=L[f+8>>2];o=O(L[f+32>>2]-g);q=h;h=O(L[f+20>>2]-g);g=O(O(p*o)-O(q*h));j=O(O(h*k)-O(o*j));h=O(W(O(O(e*e)+O(O(g*g)+O(j*j)))));if(!(h>O(0))){break a}h=O(O(1)/h);e=O(e*h);j=O(j*h);g=O(g*h)}L[a+8>>2]=l;L[a+4>>2]=n;L[a>>2]=m;L[b+8>>2]=e;L[b+4>>2]=j;L[b>>2]=g;Oa=i+48|0}function RX(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=0,l=0,m=0,n=0,o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0);e=H[b+8>>2];n=d;d=H[b+4>>2];k=d+56|0;f=L[c+8>>2];g=L[c>>2];h=L[c+4>>2];i=O(O(L[b+56>>2]*f)+O(O(L[b+24>>2]*g)+O(h*L[b+40>>2])));j=O(O(L[b+48>>2]*f)+O(O(L[b+16>>2]*g)+O(h*L[b+32>>2])));f=O(O(L[b+52>>2]*f)+O(O(L[b+20>>2]*g)+O(h*L[b+36>>2])));c=d+52|0;l=d+72|0;m=d+68|0;b=O(O(L[k>>2]*i)+O(O(L[d+48>>2]*j)+O(f*L[c>>2])))>O(O(L[l>>2]*i)+O(O(L[d+64>>2]*j)+O(f*L[m>>2])));H[n>>2]=b;f=L[(b?k:l)>>2];g=L[(b?d+48|0:d- -64|0)>>2];h=L[(b?c:m)>>2];i=L[e+52>>2];j=L[e+36>>2];o=L[e+20>>2];p=L[e+56>>2];q=L[e+40>>2];r=L[e+24>>2];s=L[e+48>>2];t=L[e+32>>2];u=L[e>>2];v=L[e+16>>2];w=L[e+4>>2];x=L[e+8>>2];H[a+12>>2]=0;L[a+8>>2]=p+O(O(q*f)+O(O(x*g)+O(h*r)));L[a+4>>2]=i+O(O(j*f)+O(O(w*g)+O(h*o)));L[a>>2]=s+O(O(t*f)+O(O(u*g)+O(h*v)))}function Os(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=Oa-48|0;Oa=c;d=Ra[H[H[a>>2]+32>>2]](a)|0;e=Ra[H[H[a>>2]+32>>2]](a)|0;a:{if(!((d|0)!=6&(e|0)!=5|(b|0)!=-1)){o5(H[33808],2,9142,447,61068,0);a=0;break a}b:{if((d|0)==6){H[c+24>>2]=1065353216;H[c+28>>2]=0;H[c+16>>2]=1065353216;H[c+20>>2]=1065353216;H[c+8>>2]=6;H[c+12>>2]=0;Ra[H[H[a>>2]+68>>2]](a,c+8|0)|0;d=H[c+12>>2];d=Ra[H[H[d>>2]+68>>2]](d,b)|0;break b}d=0;if((e|0)!=5){break b}H[c+36>>2]=1065353216;H[c+28>>2]=0;H[c+32>>2]=0;H[c+20>>2]=1065353216;H[c+24>>2]=0;H[c+40>>2]=0;H[c+44>>2]=0;H[c+12>>2]=1065353216;H[c+16>>2]=1065353216;H[c+8>>2]=5;Ra[H[H[a>>2]+64>>2]](a,c+8|0)|0;e=H[c+44>>2];d=0;if(!H[e+68>>2]){break b}d=Ra[H[H[e>>2]+56>>2]](e,b)|0}e=H[33772];c:{if(I[a+36|0]&2){b=H[a+40>>2];a=J[b+124>>1]==1?b+120|0:H[H[a+32>>2]+4856>>2]+(H[b+120>>2]<<1)|0;break c}a=EQ(a+48|0)}a=H[H[e+40>>2]+(J[a+(d<<1)>>1]<<2)>>2]}Oa=c+48|0;return a|0}function eI(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=O(0),k=0,l=0,m=0;if((i7(b)|0)!=1){b=b>>>1|b;b=b>>>2|b;b=b>>>4|b;b=b>>>8|b;b=(b>>>16|b)+1|0}j=O(L[a+24>>2]*O(b>>>0));a:{if(j=O(0)){i=~~j>>>0;break a}i=0}l=H[a+16>>2];e=b+i<<2;e=(0-e&12)+e|0;d=e+N(i,12)|0;if(d){h=H[33808]+12|0;c=Ra[H[H[h>>2]+8>>2]](h,d,20591,14239,372)|0}else{c=0}f=e;d=b<<2;e=S6(c,255,d);h=f+e|0;k=d+e|0;if(H[a+36>>2]){m=b-1|0;while(1){f=N(g,12);d=f+H[a+4>>2]|0;c=H[d+4>>2]<<14&-65536|H[d>>2]>>>2&65535;c=(c<<15^-1)+c|0;c=N(c>>>10^c,9);c=c>>>6^c;c=(c<<11^-1)+c|0;c=e+(((c>>>16^c)&m)<<2)|0;H[k+(g<<2)>>2]=H[c>>2];H[c>>2]=g;c=H[d+4>>2];f=h+f|0;H[f>>2]=H[d>>2];H[f+4>>2]=c;H[f+8>>2]=H[d+8>>2];g=g+1|0;if(g>>>0>2]){continue}break}}g=H[a>>2];if(g){d=H[33808]+12|0;Ra[H[H[d>>2]+12>>2]](d,g)}H[a+20>>2]=b;H[a+12>>2]=e;H[a>>2]=e;H[a+8>>2]=k;H[a+16>>2]=i;H[a+4>>2]=h;if(H[a+28>>2]==-1){H[a+28>>2]=l}}function O1(a){var b=0,c=0,d=O(0),e=O(0);b=Oa-16|0;Oa=b;a=H[a+76>>2];Ra[H[H[a>>2]+28>>2]](a,b+8|0,b+12|0);a=H[b+8>>2];a:{if(!a){break a}if(!(Ra[H[H[a>>2]+28>>2]](a)|0)){break a}a=H[b+8>>2];if((Ra[H[H[a>>2]+24>>2]](a)|0)!=1){break a}a=H[b+8>>2];Ra[H[H[a>>2]+216>>2]](b,a);if(F[b|0]&1){break a}c=Ra[H[H[a>>2]+28>>2]](a)|0;d=O(Ra[H[H[c>>2]+440>>2]](c));e=O(Ra[H[H[a>>2]+292>>2]](a));c=d>e;if(!(Ra[H[H[a>>2]+256>>2]](a)|0?1:c)){break a}Ra[H[H[a>>2]+296>>2]](a);Ra[H[H[a>>2]+288>>2]](a,c?d:e)}a=H[b+12>>2];b:{if(!a){break b}if(!(Ra[H[H[a>>2]+28>>2]](a)|0)){break b}a=H[b+12>>2];if((Ra[H[H[a>>2]+24>>2]](a)|0)!=1){break b}a=H[b+12>>2];Ra[H[H[a>>2]+216>>2]](b,a);if(F[b|0]&1){break b}c=Ra[H[H[a>>2]+28>>2]](a)|0;d=O(Ra[H[H[c>>2]+440>>2]](c));e=O(Ra[H[H[a>>2]+292>>2]](a));c=d>e;if(!(Ra[H[H[a>>2]+256>>2]](a)|0?1:c)){break b}Ra[H[H[a>>2]+296>>2]](a);Ra[H[H[a>>2]+288>>2]](a,c?d:e)}Oa=b+16|0}function O5(a,b){var c=0,d=0,e=0,f=O(0),g=0;if(!(((B(a),v(2))&2147483647)>>>0<2139095041&((B(b),v(2))&2147483647)>>>0<=2139095040)){return O(a+b)}c=(B(b),v(2));if((c|0)==1065353216){return P5(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 O(3.1415927410125732);case 1:break d;default:break c}}return O(-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=O(0);if(c>>>0>d+218103808>>>0){break e}}f=P5(O(P(O(a/b))))}a=f;f:{switch(e|0){case 1:return O(-a);case 2:return O(O(3.1415927410125732)-O(a+O(8.742277657347586e-8)));case 0:break c;default:break f}}return O(O(a+O(8.742277657347586e-8))+O(-3.1415927410125732))}if((d|0)==2139095040){break b}a=L[(e<<2)+93024>>2]}return a}return L[(e<<2)+93008>>2]}return x(2,(B(a),v(2))&-2147483648|1070141403),C()}function UM(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;g=H[a+44>>2];e=H[a+84>>2];c=g+e|0;d=H[a+48>>2]&2147483647;a:{if(c>>>0<=d>>>0){break a}f=d;d=d<<1;d=c>>>0>d>>>0?c:d;if(f>>>0>>0){tO(a+40|0,d)}if(d>>>0<=(H[a+60>>2]&2147483647)>>>0){break a}TM(a+52|0,d)}H[a+44>>2]=c;H[a+56>>2]=c;R6(H[a+40>>2]+(g<<2)|0,H[a+80>>2],e<<2);R6((g<<4)+b|0,H[a+68>>2],e<<4);R6(H[a+52>>2]+(g<<3)|0,H[a+92>>2],e<<3);c=H[a+84>>2];if(c){j=H[a+80>>2];h=H[a+108>>2];d=H[h+456>>2];b=0;while(1){e=H[(b<<2)+j>>2];i=H[a+24>>2]|b+g<<3;H[e+68>>2]=i;f=I[e+43|0];b:{if(!(f&64)){break b}F[e+43|0]=f&191;if(I[e+41|0]&8){break b}f=H[H[H[h+444>>2]>>2]+(H[e- -64>>2]<<2)>>2];if(!f){break b}H[d+(H[f+20>>2]<<2)>>2]=i;c=H[f+16>>2];if(c){while(1){H[d+(H[c+20>>2]<<2)>>2]=H[e+68>>2];c=H[c+16>>2];if(c){continue}break}}c=H[a+84>>2]}b=b+1|0;if(c>>>0>b>>>0){continue}break}}H[a+84>>2]=0;H[a+96>>2]=0;H[a+72>>2]=0}function k4(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=0,o=O(0),p=O(0);e=Oa-128|0;Oa=e;S3(a,b,c,e+96|0,e- -64|0,e+32|0);g=L[e+56>>2];f=L[e+52>>2];i=O(O(g*g)+O(O(f*f)+O(0)));h=L[a+108>>2];n=i>O(h*h);if(n){i=O(O(1)/O(W(i)));g=O(h*O(g*i));f=O(h*O(f*i))}L[e+24>>2]=g;L[e+20>>2]=f;g=O(L[a+112>>2]*O(.5));h=Z5(g);p=T5(g);a:{b:{c:{if(h>O(.9998999834060669)){m=L[e+44>>2];j=L[e+40>>2];k=L[e+36>>2];f=L[e+32>>2];break c}f=L[e+32>>2];m=L[e+44>>2];d:{if(m>=O(0)){k=L[e+36>>2];i=k;j=L[e+40>>2];l=j;g=f;break d}j=L[e+40>>2];l=O(-j);k=L[e+36>>2];i=O(-k);g=O(-f)}o=O(O(l*l)+O(O(g*g)+O(i*i)));if(!(o>O(h*h))){break c}L[e+12>>2]=p;f=O(O(1)/O(W(o)));L[e+8>>2]=O(h*l)*f;L[e+4>>2]=O(h*i)*f;L[e>>2]=O(h*g)*f;break b}L[e+12>>2]=m;L[e+8>>2]=j;L[e+4>>2]=k;L[e>>2]=f;if(!n){break a}}L[e+16>>2]=L[e+48>>2];f2(b,c,e+96|0,e- -64|0,e,a,d)}Oa=e+128|0}function GV(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0);e=Oa+-64|0;Oa=e;s=L[b+20>>2];t=L[d+20>>2];u=L[b+24>>2];v=L[d+24>>2];w=L[b+16>>2];x=L[d+16>>2];g=L[c+8>>2];j=L[d+8>>2];k=L[d>>2];q=L[d+4>>2];m=L[d+12>>2];f=L[b>>2];h=O(f+f);l=L[b+8>>2];r=L[b+4>>2];i=L[b+12>>2];n=O(i+i);o=L[a+8>>2];p=O(O(O(h*l)-O(r*n))*o);L[e+56>>2]=-p;l=O(o*O(O(l*n)+O(h*r)));L[e+52>>2]=-l;f=O(o*O(O(f*h)+O(O(i*n)+O(-1))));L[e+48>>2]=-f;L[e+40>>2]=p+p;L[e+36>>2]=l+l;L[e+32>>2]=f+f;f=O(k+k);h=O(m+m);i=O(g*O(O(j*f)-O(q*h)));L[e+24>>2]=O(v-u)-i;j=O(g*O(O(j*h)+O(f*q)));L[e+20>>2]=O(t-s)-j;g=O(g*O(O(k*f)+O(O(m*h)+O(-1))));L[e+16>>2]=O(x-w)-g;L[e+8>>2]=i+i;L[e+4>>2]=j+j;L[e>>2]=g+g;g=uZ(e+48|0,e+32|0,e+16|0,e,0,0);Oa=e- -64|0;k=O(L[a+4>>2]+L[c+4>>2]);return g<=O(k*k)|0}function hL(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;i=H[a+268>>2];c=a+216|0;g=H[a+280>>2];if(g){while(1){b=(f<<3)+i|0;a=H[b>>2];b=H[b+4>>2];a:{if(!H[c+8>>2]){break a}d=a>>>0>b>>>0;e=d?a:b;b=d?b:a;a=e<<16|b;a=(a<<15^-1)+a|0;a=N(a>>10^a,9);a=a>>6^a;a=(a<<11^-1)+a|0;d=H[c+36>>2]&(a>>16^a);a=H[H[c>>2]+(d<<2)>>2];if((a|0)==1073741823){break a}j=H[c+4>>2];k=H[c+20>>2];while(1){h=(a<<3)+k|0;if(!((b|0)==H[h>>2]&H[h+4>>2]==(e|0))){a=H[(a<<2)+j>>2];if((a|0)!=1073741823){continue}break a}break}TK(c,d,a&536870911);a=H[c+28>>2];a=a>>>1|a;a=a>>>2|a;a=a>>>4|a;a=a>>>8|a;a=(a>>>16|a)+1|0;d=H[c+8>>2];if((a|0)==(d|0)){break a}b=H[c+16>>2];if(b>>>0>a>>>0&(b|0)==(d|0)){break a}d=a>>>0>>0?b:a;H[c+8>>2]=d;H[c+36>>2]=d-1;e=1;b:{if(a>>>0>b>>>0){break b}e=1;if(d>>>0<=H[c+12>>2]>>>2>>>0){break b}e=d>>>0<=H[c+32>>2]>>>2>>>0}SK(c,e)}f=f+1|0;if((g|0)!=(f|0)){continue}break}}} -function xA(a){var b=O(0),c=0,d=O(0),e=0,f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=0,n=O(0),o=O(0),p=O(0),q=0,r=0,s=O(0);e=H[a+28>>2];if(e){c=H[a+24>>2];m=I[c+1|0];if(m){r=I[c|0]==4?160:96;a=c+176|0;while(1){if(I[a+84|0]&2){b=L[a+76>>2];d=L[a>>2];n=L[c+36>>2];k=L[c+32>>2];f=L[a+4>>2];g=O(g+O(b*O(O(O(d*n)-O(k*f))+L[a+40>>2])));l=L[a+8>>2];s=O(l*k);k=L[c+40>>2];o=O(o+O(b*O(O(s-O(k*d))+L[a+36>>2])));p=O(p+O(b*O(L[a+32>>2]+O(O(f*k)-O(n*l)))));h=O(h+O(b*f));i=O(i+O(b*d));j=O(j+O(b*l))}a=a+r|0;q=q+1|0;if((m|0)!=(q|0)){continue}break}}b=L[c+24>>2];d=L[c+16>>2];f=L[c+20>>2];L[e+8>>2]=j;L[e+4>>2]=h;L[e>>2]=i;g=O(g-O(O(d*h)-O(i*f)));L[e+24>>2]=g;d=O(o-O(O(b*i)-O(j*d)));L[e+20>>2]=d;b=O(p-O(O(f*j)-O(h*b)));L[e+16>>2]=b;a=0;a:{if(!I[c+3|0]){break a}a=1;if(L[c+4>>2]>2]>2]=a}}function hw(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0;e=Oa-32|0;Oa=e;F[a+489|0]=1;d=H[a+264>>2];f=H[a+448>>2]-1|0;if(f){i=H[a+444>>2];while(1){h=f<<5;g=h+b|0;gw(e,H[a+396>>2]+N(f,96)|0,(H[a+452>>2]+N(f,160)|0)+120|0,H[a+384>>2]+N(f,76)|0,g);c=(H[(h+i|0)+24>>2]<<5)+b|0;L[c>>2]=L[e>>2]+L[c>>2];L[c+4>>2]=L[e+4>>2]+L[c+4>>2];L[c+8>>2]=L[e+8>>2]+L[c+8>>2];L[c+16>>2]=L[e+16>>2]+L[c+16>>2];L[c+20>>2]=L[e+20>>2]+L[c+20>>2];L[c+24>>2]=L[e+24>>2]+L[c+24>>2];c=d+h|0;L[c>>2]=L[g>>2]+L[c>>2];L[c+4>>2]=L[g+4>>2]+L[c+4>>2];L[c+8>>2]=L[g+8>>2]+L[c+8>>2];L[c+16>>2]=L[g+16>>2]+L[c+16>>2];L[c+20>>2]=L[g+20>>2]+L[c+20>>2];L[c+24>>2]=L[g+24>>2]+L[c+24>>2];f=f-1|0;if(f){continue}break}}L[d>>2]=L[b>>2]+L[d>>2];L[d+4>>2]=L[b+4>>2]+L[d+4>>2];L[d+8>>2]=L[b+8>>2]+L[d+8>>2];L[d+16>>2]=L[b+16>>2]+L[d+16>>2];L[d+20>>2]=L[b+20>>2]+L[d+20>>2];L[d+24>>2]=L[b+24>>2]+L[d+24>>2];Oa=e+32|0}function dz(a){a=a|0;var b=0,c=0,d=0,e=O(0),f=0,g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0);d=H[a+44>>2];g=L[d+56>>2];e=L[d+60>>2];h=L[d+96>>2];i=L[d+92>>2];j=L[d+52>>2];k=L[d+88>>2];l=L[d+84>>2];m=L[d+100>>2];b=H[d+336>>2];c=H[b>>2];if(c){H[b>>2]=H[c>>2]}if(!c){b=H[33808];c=Ra[H[H[b>>2]+20>>2]](b)|0?23054:55639;c=Ra[H[H[b+12>>2]+8>>2]](b+12|0,12195,c,16202,82)|0;b=c+19&-16;H[b-4>>2]=b-c;c=lA(b,H[d+340>>2])}H[c+12052>>2]=0;b=c+11856|0;H[b>>2]=0;H[b+4>>2]=0;d=H[a+40>>2];b=H[d+12128>>2];if(b>>>0>(H[c+12056>>2]&2147483647)>>>0){Cv(c+12048|0,b);d=H[a+40>>2];b=H[d+12128>>2]}H[c+12052>>2]=b;a:{if(!H[a+32>>2]){break a}e=e>2]+(f<<2)>>2];Ra[H[H[b>>2]+144>>2]](b,j,e,H[a+48>>2],c,m,l,k,i,h,H[a+36>>2],d+11836|0,H[H[a+44>>2]+168>>2]);f=f+1|0;if(f>>>0>=K[a+32>>2]){break a}d=H[a+40>>2];continue}}a=H[H[a+44>>2]+336>>2];H[c>>2]=H[a>>2];H[a>>2]=c}function eC(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0;a:{if(!H[a+36>>2]){break a}h=H[a+12>>2];d=H[b>>2];b=(d<<15^-1)+d|0;b=N(b>>>10^b,9);b=b>>>6^b;b=(b<<11^-1)+b|0;f=h+((H[a+20>>2]-1&(b>>>16^b))<<2)|0;b=H[f>>2];if((b|0)==-1){break a}g=H[a+8>>2];e=H[a+4>>2];if((d|0)!=H[e+(b<<3)>>2]){while(1){f=(b<<2)+g|0;b=H[f>>2];if((b|0)==-1){break a}if((d|0)!=H[e+(b<<3)>>2]){continue}break}}H[c>>2]=d;H[c+4>>2]=H[(e+(b<<3)|0)+4>>2];b=f;c=H[f>>2];f=(c<<2)+g|0;H[b>>2]=H[f>>2];b=H[a+36>>2]-1|0;H[a+36>>2]=b;i=1;H[a+32>>2]=H[a+32>>2]+1;if((b|0)!=(c|0)){d=e+(c<<3)|0;e=e+(b<<3)|0;H[d>>2]=H[e>>2];H[d+4>>2]=H[e+4>>2];H[f>>2]=H[(b<<2)+g>>2];b=H[d>>2];b=(b<<15^-1)+b|0;b=N(b>>>10^b,9);b=b>>>6^b;b=(b<<11^-1)+b|0;d=((H[a+20>>2]-1&(b>>>16^b))<<2)+h|0;b=H[d>>2];e=H[a+36>>2];if((b|0)!=(e|0)){while(1){d=(b<<2)+g|0;b=H[d>>2];if((e|0)!=(b|0)){continue}break}}H[d>>2]=c}H[a+28>>2]=H[a+28>>2]-1}return i}function We(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;f=Oa-16|0;Oa=f;if(d){while(1){g=N(i,40)+c|0;j=I[g+24|0];k=H[H[H[g+4>>2]+8>>2]>>2];l=H[H[H[g>>2]+8>>2]>>2];b=J[g+30>>1];a:{if(b&36){h=H[a+8>>2];b:{if(F[134004]&1){b=H[33500];break b}b=pa(2,99816)|0;F[134004]=1;H[33500]=b}e=o6(16);F[e+12|0]=j;H[e+8>>2]=k;H[e+4>>2]=l;H[e>>2]=g;H[f+8>>2]=e;qa(b|0,h|0,11718,f+8|0);break a}if(b&16){if(I[g+28|0]&3){break a}h=H[a+8>>2];c:{if(F[134004]&1){b=H[33500];break c}b=pa(2,99816)|0;F[134004]=1;H[33500]=b}e=o6(16);F[e+12|0]=j;H[e+8>>2]=k;H[e+4>>2]=l;H[e>>2]=g;H[f+8>>2]=e;qa(b|0,h|0,19451,f+8|0);break a}if(!(b&8)){break a}h=H[a+8>>2];d:{if(F[134004]&1){b=H[33500];break d}b=pa(2,99816)|0;F[134004]=1;H[33500]=b}e=o6(16);F[e+12|0]=j;H[e+8>>2]=k;H[e+4>>2]=l;H[e>>2]=g;H[f+8>>2]=e;qa(b|0,h|0,1914,f+8|0)}i=i+1|0;if((i|0)!=(d|0)){continue}break}}Oa=f+16|0}function WU(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=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=0,t=0,u=0;g=Oa-4320|0;Oa=g;h=L[d+20>>2];o=L[d+16>>2];p=L[d+24>>2];j=L[d>>2];k=O(j+j);i=L[d+8>>2];q=L[d+4>>2];l=L[d+12>>2];m=O(l+l);n=L[c+8>>2];r=O(O(O(k*i)-O(q*m))*n);L[g+20>>2]=p-r;i=O(n*O(O(i*m)+O(k*q)));L[g+16>>2]=h-i;L[g+8>>2]=r+p;L[g+4>>2]=h+i;h=O(n*O(O(j*k)+O(O(l*m)+O(-1))));L[g+12>>2]=o-h;L[g>>2]=o+h;L[g+24>>2]=L[c+4>>2];c=g+4288|0;HT(c,g,g+12|0,g+4316|0);H[g+4232>>2]=-1;L[g+56>>2]=L[g+4316>>2];L[g+52>>2]=L[g+24>>2];H[g+48>>2]=2;s=g+4232|0;t=g+48|0;hU(s,t);H[g+4176>>2]=-1;u=g+4176|0;hU(u,e);H[g+4168>>2]=0;H[g+4172>>2]=0;d=0;H[g+4144>>2]=0;H[g+40>>2]=1065353216;H[g+32>>2]=0;H[g+36>>2]=0;a:{if(!$X(s,u,c,f,g+32|0,t)){break a}if(!NU(a,b,H[g+4144>>2],g+48|0)){break a}d=H[g+4144>>2]!=0}Oa=g+4320|0;return d|0}function vD(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;a:{if(!H[a+684>>2]){break a}d=(b<<15^-1)+b|0;d=N(d>>>10^d,9);d=d>>>6^d;d=(d<<11^-1)+d|0;d=H[H[a+660>>2]+((H[a+668>>2]-1&(d>>>16^d))<<2)>>2];if((d|0)==-1){break a}e=H[a+656>>2];f=H[a+652>>2];while(1){if(H[f+(d<<3)>>2]!=(b|0)){d=H[e+(d<<2)>>2];if((d|0)!=-1){continue}break a}break}i=H[(f+(d<<3)|0)+4>>2];j=N(i,44);d=j+H[a+644>>2]|0;e=H[d+4>>2];f=H[H[e+16>>2]+(c<<2)>>2];e=mB(e,c);k=f<<2;c=UB(H[d>>2],H[k+H[H[d+8>>2]>>2]>>2],f,H[H[d+4>>2]+8>>2]);b:{if(!c|H[c+40>>2]){break b}g=H[c+36>>2];if(!H[g>>2]){break b}while(1){H[H[H[d+8>>2]>>2]+(H[((h<<2)+g|0)+4>>2]<<2)>>2]=c;h=h+1|0;g=H[c+36>>2];if(h>>>0>2]){continue}break}}c=H[H[d+8>>2]>>2];H[c+k>>2]=H[c+(e<<2)>>2];if((f|0)!=(e|0)){VB(H[H[H[d+8>>2]>>2]+(f<<2)>>2],e,f)}if(!H[H[H[a+644>>2]+j>>2]+588>>2]){Ra[H[H[a>>2]+4>>2]](a,b);return}uD(a,i)}}function lH(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=O(0),k=0,l=0,m=0;if((i7(b)|0)!=1){b=b>>>1|b;b=b>>>2|b;b=b>>>4|b;b=b>>>8|b;b=(b>>>16|b)+1|0}j=O(L[a+24>>2]*O(b>>>0));a:{if(j=O(0)){i=~~j>>>0;break a}i=0}l=H[a+16>>2];e=b+i<<2;e=(0-e&12)+e|0;d=e+N(i,12)|0;if(d){h=H[33808]+12|0;c=Ra[H[H[h>>2]+8>>2]](h,d,20591,14239,372)|0}else{c=0}f=e;d=b<<2;e=S6(c,255,d);h=f+e|0;k=d+e|0;if(H[a+36>>2]){m=b-1|0;while(1){f=N(g,12);d=f+H[a+4>>2]|0;c=H[d+4>>2]<<16|J[d>>1];c=(c<<15^-1)+c|0;c=N(c>>>10^c,9);c=c>>>6^c;c=(c<<11^-1)+c|0;c=e+(((c>>>16^c)&m)<<2)|0;H[k+(g<<2)>>2]=H[c>>2];H[c>>2]=g;c=H[d+4>>2];f=h+f|0;H[f>>2]=H[d>>2];H[f+4>>2]=c;H[f+8>>2]=H[d+8>>2];g=g+1|0;if(g>>>0>2]){continue}break}}g=H[a>>2];if(g){d=H[33808]+12|0;Ra[H[H[d>>2]+12>>2]](d,g)}H[a+20>>2]=b;H[a+12>>2]=e;H[a>>2]=e;H[a+8>>2]=k;H[a+16>>2]=i;H[a+4>>2]=h;if(H[a+28>>2]==-1){H[a+28>>2]=l}}function dd(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;q5();b=H[33808];d=Ra[H[H[b>>2]+20>>2]](b)|0?29868:55639;b=Ra[H[H[b+12>>2]+8>>2]](b+12|0,188,d,7031,697)|0;d=Oa-16|0;Oa=d;H[b+8>>2]=a;H[b+4>>2]=125104;H[b>>2]=125016;S6(b+12|0,0,92);H[b+112>>2]=0;H[b+116>>2]=0;H[b+104>>2]=1061158912;H[b+108>>2]=-1;Il(b+80|0,64);H[b+144>>2]=0;H[b+148>>2]=0;F[b+140|0]=0;H[b+136>>2]=65792;H[b+128>>2]=0;H[b+132>>2]=1065353216;H[b+120>>2]=0;H[b+124>>2]=0;H[b+152>>2]=0;H[b+156>>2]=0;H[b+160>>2]=0;H[b+164>>2]=0;H[b+176>>2]=0;H[b+180>>2]=0;H[b+168>>2]=1061158912;H[b+172>>2]=-1;om(b+144|0,64);c=H[33808];e=b,f=(h=c+12|0,i=28,j=Ra[H[H[c>>2]+20>>2]](c)|0?33606:55639,k=13721,l=113,g=H[H[c+12>>2]+8>>2],Ra[g](h|0,i|0,j|0,k|0,l|0)|0),H[e+184>>2]=f;c=Oa-16|0;Oa=c;Oa=c+16|0;a=Ra[H[H[a>>2]+28>>2]](a)|0;F[d+8|0]=1;Ra[H[H[a>>2]+132>>2]](a,b+4|0,d+8|0,0);Oa=d+16|0;return b|0}function CK(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;if(f){Ra[H[H[f>>2]+20>>2]](f)}DK(a,d);c=H[a+124>>2];d=H[a+128>>2];b=H[a+88>>2];H[b+68>>2]=H[b+24>>2];H[b+72>>2]=d;H[b- -64>>2]=c;c=H[b>>2];a:{if(!c){break a}d=b+36|0;b=H[b+12>>2];f=0;while(1){e=H[(b+N(f,40)|0)+28>>2];if(e){qK(e,d)}f=f+1|0;if((c|0)!=(f|0)){continue}break}b=H[a+88>>2];d=H[b>>2];if(!d){break a}c=H[b+12>>2];e=0;f=0;if(d-1>>>0>=3){h=d&-4;while(1){g=H[(c+N(f,40)|0)+28>>2];if(g){H[g+116>>2]=0}g=H[(c+N(f|1,40)|0)+28>>2];if(g){H[g+116>>2]=0}g=H[(c+N(f|2,40)|0)+28>>2];if(g){H[g+116>>2]=0}g=H[(c+N(f|3,40)|0)+28>>2];if(g){H[g+116>>2]=0}f=f+4|0;i=i+4|0;if((h|0)!=(i|0)){continue}break}}d=d&3;if(!d){break a}while(1){h=H[(c+N(f,40)|0)+28>>2];if(h){H[h+116>>2]=0}f=f+1|0;e=e+1|0;if((d|0)!=(e|0)){continue}break}}uK(b+36|0,H[b+24>>2],a,b+76|0,b+84|0);S6(H[b+76>>2],0,H[b+80>>2]<<2)}function AU(a,b,c,d,e,f){var g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0);l=L[b>>2];o=L[d>>2];p=L[e>>2];q=L[f>>2];m=L[b+4>>2];n=L[d+4>>2];h=L[e+4>>2];r=L[f+4>>2];g=L[c+4>>2];t=O(g*L[e+8>>2]);j=L[c+8>>2];u=O(j*L[f+8>>2]);i=O(t+u);v=L[b+8>>2];k=L[c>>2];w=O(k*L[d+8>>2]);s=O(v-w);L[a+92>>2]=i+s;x=O(g*h);r=O(j*r);h=O(x+r);y=O(k*n);n=O(m-y);L[a+88>>2]=h+n;p=O(g*p);q=O(j*q);g=O(p+q);o=O(k*o);j=O(l-o);L[a+84>>2]=g+j;k=O(w+v);L[a+80>>2]=i+k;m=O(y+m);L[a+76>>2]=h+m;l=O(o+l);L[a+72>>2]=g+l;L[a+20>>2]=k-i;L[a+16>>2]=m-h;L[a+12>>2]=l-g;L[a+8>>2]=s-i;L[a+4>>2]=n-h;L[a>>2]=j-g;i=O(t-u);L[a+68>>2]=k-i;h=O(x-r);L[a- -64>>2]=m-h;g=O(p-q);L[a+60>>2]=l-g;L[a+56>>2]=s-i;L[a+52>>2]=n-h;L[a+48>>2]=j-g;L[a+44>>2]=i+s;L[a+40>>2]=h+n;L[a+36>>2]=g+j;L[a+32>>2]=i+k;L[a+28>>2]=h+m;L[a+24>>2]=g+l}function uG(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0;H[a+160>>2]=b;a:{if(b){h=H[b+48>>2]&-128|e<<1;H[a+144>>2]=h|1;b=H[a+44>>2];L[b+156>>2]=c;if(I[b+44|0]&32){i=h>>>7|0;g=i+32>>>5|0;b=H[a+40>>2];b:{if(g>>>0<=(H[b+4740>>2]&2147483647)>>>0){e=H[b+4736>>2];break b}e=H[33808]+12|0;e=Ra[H[H[e>>2]+8>>2]](e,g<<2,20591,14905,438)|0;f=H[b+4736>>2];c:{if(!f){break c}R6(e,f,H[b+4740>>2]<<2);if(H[b+4740>>2]<0){break c}f=H[b+4736>>2];if(!f){break c}j=H[33808]+12|0;Ra[H[H[j>>2]+12>>2]](j,f)}f=H[b+4740>>2];S6((f<<2)+e|0,0,g-f<<2);H[b+4740>>2]=g;H[b+4736>>2]=e}b=(h>>>10&4194300)+e|0;H[b>>2]=H[b>>2]|1<>2]>=4294967294){RN(H[a+40>>2],a);bG(a)}dF(H[H[a+40>>2]+1e3>>2],H[a+144>>2]);return}if(!H[a+160>>2]){eF(H[H[a+40>>2]+1e3>>2],H[a+144>>2])}fF(H[H[a+40>>2]+1e3>>2],H[a+144>>2]);if(K[a+152>>2]>4294967293){break a}TN(H[a+40>>2],a);cG(a);return}H[a+144>>2]=-125}}function h7(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;d=a;a:{b:{c:{d:{e:{f:{g:{h:{i:{j:{if(b){if(!c){break j}break i}a=(d>>>0)/(c>>>0)|0;Qa=0;break a}if(!d){break h}break g}if(!(c-1&c)){break f}g=(Q(c)+33|0)-Q(b)|0;e=0-g|0;break d}a=(b>>>0)/0|0;Qa=0;break a}a=32-Q(b)|0;if(a>>>0<31){break e}break c}if((c|0)==1){break b}a=f7(c);c=a&31;if((a&63)>>>0>=32){a=0;b=b>>>c|0}else{a=b>>>c|0;b=((1<>>c}Qa=a;a=b;break a}g=a+1|0;e=63-a|0}a=g&63;f=a&31;if(a>>>0>=32){a=0;h=b>>>f|0}else{a=b>>>f|0;h=((1<>>f}f=a;a=e&63;e=a&31;if(a>>>0>=32){a=d<>>32-e|b<>>31;f=f<<1|h>>>31;i=l-(f+(a>>>0>e>>>0)|0)>>31;j=c&i;h=a-j|0;f=f-(a>>>0>>0)|0;b=b<<1|d>>>31;d=k|d<<1;k=i&1;g=g-1|0;if(g){continue}break}}Qa=b<<1|d>>>31;a=k|d<<1;break a}d=0;b=0}Qa=b;a=d}return a}function Xm(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;f=Oa-16|0;Oa=f;a:{b:{if(!H[a+92>>2]){break b}e=(b<<15^-1)+b|0;e=N(e>>>10^e,9);e=e>>>6^e;e=(e<<11^-1)+e|0;e=H[H[a+68>>2]+((H[a+76>>2]-1&(e>>>16^e))<<2)>>2];if((e|0)==-1){break b}g=H[a- -64>>2];h=H[a+60>>2];while(1){if(H[(e<<3)+h>>2]==(b|0)){break a}e=H[(e<<2)+g>>2];if((e|0)!=-1){continue}break}}e=H[33808];g=Ra[H[H[e>>2]+20>>2]](e)|0?20882:55639;e=Ra[H[H[e+12>>2]+8>>2]](e+12|0,44,g,6215,597)|0;H[e>>2]=0;H[e+4>>2]=0;H[e+32>>2]=0;H[e+36>>2]=0;H[e+24>>2]=1061158912;H[e+28>>2]=-1;H[e+16>>2]=0;H[e+20>>2]=0;H[e+8>>2]=0;H[e+12>>2]=0;Il(e,64);c=I[c|0];F[e+41|0]=d;F[e+40|0]=c;H[f+12>>2]=b;b=Ym(a+56|0,f+12|0,f+11|0);if(!I[f+11|0]){c=H[f+12>>2];H[b+4>>2]=e;H[b>>2]=c;F[a+100|0]=1;break a}a=H[e>>2];if(a){b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,a)}a=H[33808];Ra[H[H[a+12>>2]+12>>2]](a+12|0,e)}Oa=f+16|0}function i3(a){a=a|0;var b=0,c=0;H[a>>2]=130352;if(H[a+28>>2]){while(1){c=H[(H[a+4>>2]+N(b,28)|0)+4>>2];H[c+8>>2]=H[c+8>>2]+1;b=b+1|0;if(b>>>0>2]){continue}break}}F[a+32|0]=1;b=H[a+20>>2];if(!I[b+76|0]){F[b+76|0]=1;H[b+72>>2]=H[b+72>>2]+1}a:{if(!H[a+28>>2]){break a}b=0;while(1){b=b+1|0;c=H[a+28>>2];if(b>>>0>>0){continue}break}if(!c){break a}b=0;while(1){c=H[a+4>>2]+N(b,28)|0;Ra[H[H[c>>2]>>2]](c)|0;b=b+1|0;if(b>>>0>2]){continue}break}}b=H[a+4>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+24>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+20>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+16>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+8>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b-H[b-4>>2]|0)}b=H[a+12>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}return a|0}function HY(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=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=0;f=Oa-48|0;Oa=f;h=H[a+3376>>2];l=L[h+28>>2];m=L[h+16>>2];n=L[h+32>>2];o=L[h+20>>2];p=L[c+8>>2];q=L[c>>2];r=L[c+4>>2];s=L[h+4>>2];t=L[h+8>>2];x=I[h+72|0];c=(x?24:12)+f|0;i=L[d>>2];u=L[h>>2];v=L[h+12>>2];j=L[d+4>>2];w=L[h+24>>2];k=L[d+8>>2];L[c>>2]=O(O(i*u)+O(v*j))+O(w*k);L[c+8>>2]=O(O(i*t)+O(o*j))+O(n*k);L[c+4>>2]=O(O(i*s)+O(m*j))+O(l*k);c=(x?12:24)+f|0;i=L[e>>2];j=L[e+4>>2];k=L[e+8>>2];L[c+8>>2]=O(O(t*i)+O(o*j))+O(n*k);L[c+4>>2]=O(O(i*s)+O(j*m))+O(k*l);L[c>>2]=O(O(i*u)+O(j*v))+O(k*w);FY(a+8|0,H[b+8>>2],O(O(O(q*u)+O(r*v))+O(p*w)),O(O(O(q*s)+O(r*m))+O(p*l)),O(O(O(q*t)+O(r*o))+O(p*n)),L[f+12>>2],L[f+16>>2],L[f+20>>2],L[f+24>>2],L[f+28>>2],L[f+32>>2],g);Oa=f+48|0;return 1}function so(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=O(d);e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;j=Oa-32|0;Oa=j;a:{if(K[a+28>>2]>=K[a+96>>2]){break a}l=a+40|0;k=H[l>>2];H[l>>2]=k?k:-1;if((k|0)==1){o5(H[33808],8,4610,484,56166,0);break a}H[a+28>>2]=H[a+28>>2]+1;k=a+12|0;o=J[g+16>>1];p=H[g+12>>2];q=H[g+8>>2];r=H[g+4>>2];s=H[g>>2];t=J[f>>1];m=H[a+24>>2];g=m+40|0;f=H[a+20>>2]&2147483647;b:{if(g>>>0<=f>>>0){break b}n=N(g,3);if(f>>>0>=n>>>0){break b}qo(k,n)}ro(k,g);f=H[a+12>>2]+H[a+24>>2]|0;F[f+38|0]=0;G[f+36>>1]=e;H[f+32>>2]=i;H[f+28>>2]=h;G[f+24>>1]=o;H[f+20>>2]=p;H[f+16>>2]=q;H[f+12>>2]=r;H[f+8>>2]=s;G[f+4>>1]=t;H[f>>2]=-16;H[a+24>>2]=g;e=H[a+108>>2];H[((e|0)==-16?a+108|0:e+H[a+12>>2]|0)>>2]=m;H[a+108>>2]=m;H[j+28>>2]=0;H[j+20>>2]=0;H[j+24>>2]=0;L[j+16>>2]=d;H[j+12>>2]=c;H[j+8>>2]=b;to(k,j+8|0);H[l>>2]=0}Oa=j+32|0}function tK(a,b){var c=0,d=0,e=0,f=0;a:{if(!a){break a}if(a-1>>>0>=7){f=a&-8;while(1){H[(N(c,40)+b|0)+32>>2]=0;H[(N(c|1,40)+b|0)+32>>2]=0;H[(N(c|2,40)+b|0)+32>>2]=0;H[(N(c|3,40)+b|0)+32>>2]=0;H[(N(c|4,40)+b|0)+32>>2]=0;H[(N(c|5,40)+b|0)+32>>2]=0;H[(N(c|6,40)+b|0)+32>>2]=0;H[(N(c|7,40)+b|0)+32>>2]=0;c=c+8|0;d=d+8|0;if((f|0)!=(d|0)){continue}break}}d=a&7;if(d){while(1){H[(N(c,40)+b|0)+32>>2]=0;c=c+1|0;e=e+1|0;if((d|0)!=(e|0)){continue}break}}if(!a){break a}e=0;while(1){f=N(e,40)+b|0;b:{if(!H[f+28>>2]){e=e+1|0;break b}e=e+1|0;if(e>>>0>=a>>>0){break b}c=e;while(1){d=N(c,40)+b|0;c:{if(!H[d+28>>2]|K[f+16>>2]<=K[d+4>>2]|(K[d+16>>2]<=K[f+4>>2]|K[f+20>>2]<=K[d+8>>2])){break c}if(K[d+20>>2]<=K[f+8>>2]|K[f+24>>2]<=K[d+12>>2]|K[d+24>>2]<=K[f+12>>2]){break c}H[f+32>>2]=1;H[d+32>>2]=1}c=c+1|0;if((c|0)!=(a|0)){continue}break}}if((a|0)!=(e|0)){continue}break}}}function ZI(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=O(0),k=0,l=0,m=0,n=0,o=0,p=0,q=0;if((i7(b)|0)!=1){b=b>>>1|b;b=b>>>2|b;b=b>>>4|b;b=b>>>8|b;b=(b>>>16|b)+1|0}j=O(L[a+24>>2]*O(b>>>0));a:{if(j=O(0)){g=~~j>>>0;break a}g=0}o=H[a+16>>2];d=b+g<<2;d=(0-d&12)+d|0;c=d+(g<<3)|0;if(c){e=H[33808]+12|0;e=Ra[H[H[e>>2]+8>>2]](e,c,20591,14239,372)|0}else{e=0}h=d;c=b<<2;d=S6(e,255,c);k=h+d|0;l=c+d|0;if(H[a+36>>2]){p=b-1|0;q=H[a+4>>2];while(1){c=5381;m=f<<3;n=m+q|0;h=H[n>>2];e=h;i=I[e|0];if(i){while(1){c=i^N(c,33);i=I[e+1|0];e=e+1|0;if(i){continue}break}}c=d+((c&p)<<2)|0;H[(f<<2)+l>>2]=H[c>>2];H[c>>2]=f;c=k+m|0;H[c>>2]=h;H[c+4>>2]=H[n+4>>2];f=f+1|0;if(f>>>0>2]){continue}break}}f=H[a>>2];if(f){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,f)}H[a+20>>2]=b;H[a+12>>2]=d;H[a>>2]=d;H[a+8>>2]=l;H[a+16>>2]=g;H[a+4>>2]=k;if(H[a+28>>2]==-1){H[a+28>>2]=o}}function NV(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=O(0),f=O(0),g=O(0),h=0,i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0),D=O(0),E=O(0),F=O(0);d=H[b+8>>2];l=L[d+52>>2];m=L[d+36>>2];n=L[d+20>>2];o=L[d+56>>2];p=L[d+40>>2];h=H[b+4>>2];f=L[h+56>>2];q=L[b+56>>2];r=L[b+24>>2];s=L[b+40>>2];t=L[b+48>>2];u=L[b+32>>2];v=L[d+24>>2];k=L[h+52>>2];w=L[b+52>>2];x=L[b+20>>2];y=L[b+36>>2];z=L[d+48>>2];A=L[d+32>>2];B=L[d>>2];C=L[d+16>>2];D=L[d+4>>2];E=L[d+8>>2];g=L[h+48>>2];F=L[b+16>>2];e=L[c+8>>2];i=L[c>>2];j=L[c+4>>2];H[a+12>>2]=0;f=O(O(q*e)+O(O(r*i)+O(j*s)))>O(0)?f:O(-f);g=O(O(t*e)+O(O(F*i)+O(j*u)))>O(0)?g:O(-g);e=O(O(w*e)+O(O(x*i)+O(j*y)))>O(0)?k:O(-k);L[a+8>>2]=o+O(O(p*f)+O(O(E*g)+O(v*e)));L[a+4>>2]=l+O(O(m*f)+O(O(D*g)+O(e*n)));L[a>>2]=z+O(O(A*f)+O(O(B*g)+O(e*C)))}function Ev(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:{if(!b){break a}c=N(b,76);if(!c){break a}e=H[33808];f=e+12|0;e=(i=f,j=c,k=Ra[H[H[e>>2]+20>>2]](e)|0?22204:55639,l=13582,m=553,h=H[H[f>>2]+8>>2],Ra[h](i|0,j|0,k|0,l|0,m|0)|0)}f=H[a>>2];c=H[a+4>>2];if((c|0)>0){g=N(c,76)+e|0;d=f;c=e;while(1){L[c>>2]=L[d>>2];L[c+4>>2]=L[d+4>>2];L[c+8>>2]=L[d+8>>2];L[c+12>>2]=L[d+12>>2];L[c+16>>2]=L[d+16>>2];L[c+20>>2]=L[d+20>>2];L[c+24>>2]=L[d+24>>2];L[c+28>>2]=L[d+28>>2];L[c+32>>2]=L[d+32>>2];L[c+36>>2]=L[d+36>>2];L[c+40>>2]=L[d+40>>2];L[c+44>>2]=L[d+44>>2];L[c+48>>2]=L[d+48>>2];L[c+52>>2]=L[d+52>>2];L[c+56>>2]=L[d+56>>2];L[c+60>>2]=L[d+60>>2];L[c- -64>>2]=L[d- -64>>2];L[c+68>>2]=L[d+68>>2];H[c+72>>2]=H[d+72>>2];d=d+76|0;c=c+76|0;if(g>>>0>c>>>0){continue}break}}if(!(!f|H[a+8>>2]<0)){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,f)}H[a+8>>2]=b;H[a>>2]=e}function $c(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=O(e);f=f|0;g=g|0;h=h|0;var i=0,j=0;j=Oa-16|0;Oa=j;G[j+8>>1]=1027;i=Oa-112|0;Oa=i;H[i+60>>2]=0;H[i+64>>2]=0;G[i+56>>1]=0;H[i+52>>2]=-1;H[i+68>>2]=0;H[i+72>>2]=0;H[i+76>>2]=0;H[i+80>>2]=0;H[i+84>>2]=2139095039;H[i+44>>2]=0;H[i+48>>2]=0;H[i+104>>2]=0;H[i+96>>2]=0;H[i+100>>2]=0;F[i+92|0]=0;H[i+40>>2]=111556;H[i+16>>2]=H[g>>2];H[i+20>>2]=H[g+4>>2];H[i+24>>2]=H[g+8>>2];H[i+28>>2]=H[g+12>>2];G[i+32>>1]=J[g+16>>1];G[i+8>>1]=J[j+8>>1];Ra[H[H[a>>2]+352>>2]](a,b,c,d,e,i+40|0,i+8|0,i+16|0,h,0,O(0))|0;H[f+8>>2]=H[i+52>>2];a=H[i+48>>2];H[f>>2]=H[i+44>>2];H[f+4>>2]=a;G[f+12>>1]=J[i+56>>1];L[f+16>>2]=L[i+60>>2];L[f+20>>2]=L[i- -64>>2];L[f+24>>2]=L[i+68>>2];L[f+28>>2]=L[i+72>>2];L[f+32>>2]=L[i+76>>2];L[f+36>>2]=L[i+80>>2];L[f+40>>2]=L[i+84>>2];H[f+44>>2]=H[i+88>>2];Oa=i+112|0;Oa=j+16|0;return I[i+92|0]}function BL(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;a:{if(!b){break a}c=H[33808];d=c+12|0;c=(h=d,i=(b<<6)+131|0,j=Ra[H[H[c>>2]+20>>2]](c)|0?34362:55639,k=13582,l=553,g=H[H[d>>2]+8>>2],Ra[g](h|0,i|0,j|0,k|0,l|0)|0);if(!c){break a}e=c+131&-128;H[e-4>>2]=e-c}c=H[a+4>>2];if((c|0)>0){f=(c<<6)+e|0;d=H[a>>2];c=e;while(1){L[c>>2]=L[d>>2];L[c+4>>2]=L[d+4>>2];L[c+8>>2]=L[d+8>>2];H[c+12>>2]=H[d+12>>2];L[c+16>>2]=L[d+16>>2];L[c+20>>2]=L[d+20>>2];L[c+24>>2]=L[d+24>>2];H[c+28>>2]=H[d+28>>2];L[c+32>>2]=L[d+32>>2];L[c+36>>2]=L[d+36>>2];L[c+40>>2]=L[d+40>>2];L[c+44>>2]=L[d+44>>2];L[c+48>>2]=L[d+48>>2];L[c+52>>2]=L[d+52>>2];L[c+56>>2]=L[d+56>>2];H[c+60>>2]=H[d+60>>2];d=d- -64|0;c=c- -64|0;if(f>>>0>c>>>0){continue}break}}b:{if(H[a+8>>2]<0){break b}c=H[a>>2];if(!c){break b}d=H[33808]+12|0;Ra[H[H[d>>2]+12>>2]](d,c-H[c-4>>2]|0)}H[a+8>>2]=b;H[a>>2]=e}function SZ(a,b,c){a=a|0;b=O(b);c=O(c);var d=O(0),e=O(0),f=O(0),g=0,h=0,i=0;b=b>O(0)?b:O(0);d=O(O(O(1)-O(O(P(O(b+O(1))))*O(9.999999974752427e-7)))+L[a+48>>2]);c=c>O(0)?c:O(0);e=O(O(O(1)-O(O(P(O(c+O(1))))*O(9.999999974752427e-7)))+L[a+52>>2]);d=b>2])+e);a:{if(b=O(0)){h=~~b>>>0;break a}h=0}b=O(c-e);c=O(d-f);g=H[a+60>>2];i=g+(h<<2)|0;b:{if(F[i+2|0]<0){d=O(G[i>>1]);a=H[a+44>>2]+h|0;e=O(G[((a<<2)+g|0)+4>>1]);if(b>c){f=c;c=O(G[((h<<2)+g|0)+4>>1]);b=O(O(f*O(e-c))+O(O(b*O(c-d))+d));break b}f=b;b=O(G[(a<<2)+g>>1]);b=O(O(f*O(e-b))+O(O(c*O(b-d))+d));break b}d=O(G[i+4>>1]);a=H[a+44>>2]+h|0;e=O(G[(a<<2)+g>>1]);if(O(c+b)>1]);b=O(O(f*O(e-c))+O(O(b*O(d-c))+c));break b}f=O(O(1)-c);c=O(G[((a<<2)+g|0)+4>>1]);b=O(O(f*O(d-c))+O(O(O(O(1)-b)*O(e-c))+c))}return O(b)}function zK(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;a=H[a+88>>2];f=H[a>>2];f=c>>>0>f>>>0?f:c;if(f){j=H[a+12>>2]+N(d,40)|0;d=0;while(1){c=N(d,40);a=c+b|0;c=c+j|0;e=H[c+4>>2]<<1;H[a>>2]=(e|0)>=0?e^-1:e&2147483646;e=H[c+8>>2]<<1;H[a+4>>2]=(e|0)>=0?e^-1:e&2147483646;e=H[c+12>>2]<<1;H[a+8>>2]=(e|0)>=0?e^-1:e&2147483646;e=H[c+16>>2]<<1;H[a+12>>2]=(e|0)>=0?e^-1:e&2147483646;e=H[c+20>>2]<<1;H[a+16>>2]=(e|0)>=0?e^-1:e&2147483646;e=H[c+24>>2]<<1;H[a+20>>2]=(e|0)>=0?e^-1:e&2147483646;e=H[c+28>>2];a:{if(e){g=H[c+32>>2]!=0;h=H[e+92>>2];e=H[e+84>>2];i=1;c=H[c+36>>2];break a}H[a>>2]=2122317823;H[a+4>>2]=2122317823;H[a+8>>2]=2122317823;H[a+12>>2]=-25165825;H[a+16>>2]=-25165825;H[a+20>>2]=-25165825;i=0;g=0;e=0;h=0;c=0}F[a+37|0]=g;F[a+36|0]=i;H[a+24>>2]=c;H[a+32>>2]=h;H[a+28>>2]=e;d=d+1|0;if((f|0)!=(d|0)){continue}break}}return f|0}function t$(a){a=a|0;var b=0,c=0;H[a+8>>2]=128828;H[a>>2]=128732;a:{if(!(F[a+6|0]&1)){break a}b=H[a+56>>2];if(b){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}H[a+56>>2]=0;b=H[a+72>>2];if(b){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}H[a+72>>2]=0;b=H[a+76>>2];if(b){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}H[a+76>>2]=0;b=H[a+68>>2];if(b){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}H[a+68>>2]=0;b=H[a+28>>2];if(b){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}H[a+28>>2]=0;b=H[a+24>>2];if(b){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}H[a+24>>2]=0;b=H[a+84>>2];if(b){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}H[a+84>>2]=0;b=H[a+88>>2];if(b){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}H[a+88>>2]=0;b=H[a+92>>2];if(b){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}H[a+92>>2]=0;b=H[a+96>>2];if(!b){break a}U$(b);c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}return a|0}function TK(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0;e=H[a+4>>2];a:{b:{g=H[a>>2];f=g+(b<<2)|0;b=H[f>>2];if((c|0)==(b|0)){break b}while(1){d=b;b=H[e+(b<<2)>>2];if((c|0)!=(b|0)){continue}break}if((d|0)==1073741823){break b}H[e+(d<<2)>>2]=H[e+(c<<2)>>2];break a}H[f>>2]=H[e+(c<<2)>>2]}d=H[a+28>>2]-1|0;if((d|0)!=(c|0)){f=H[a+4>>2];c:{d:{h=H[a+20>>2];b=h+(d<<3)|0;b=H[b+4>>2]<<16|H[b>>2];b=(b<<15^-1)+b|0;b=N(b>>10^b,9);b=b>>6^b;b=(b<<11^-1)+b|0;i=H[a+36>>2]&(b>>16^b);g=g+(i<<2)|0;b=H[g>>2];if((d|0)==(b|0)){break d}while(1){e=b;b=H[f+(b<<2)>>2];if((d|0)!=(b|0)){continue}break}if((e|0)==1073741823){break d}H[f+(e<<2)>>2]=H[f+(d<<2)>>2];break c}H[g>>2]=H[f+(d<<2)>>2]}e=(d<<3)+h|0;f=H[e+4>>2];b=(c<<3)+h|0;H[b>>2]=H[e>>2];H[b+4>>2]=f;b=H[a+24>>2];F[b+c|0]=I[b+d|0];b=H[a>>2]+(i<<2)|0;H[H[a+4>>2]+(c<<2)>>2]=H[b>>2];H[b>>2]=c;d=H[a+28>>2]-1|0}H[a+28>>2]=d}function rH(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;f=Oa-48|0;Oa=f;a:{if(b>>>0<2){break a}j=H[a+392>>2];if(!j){break a}k=H[a+388>>2];l=H[H[a+276>>2]+4>>2];while(1){g=H[k+(i<<2)>>2];h=l+N(H[g>>2],24)|0;L[h>>2]=L[g+36>>2];L[h+4>>2]=L[g+40>>2];L[h+8>>2]=L[g+44>>2];L[h+12>>2]=L[g+48>>2];L[h+16>>2]=L[g+52>>2];L[h+20>>2]=L[g+56>>2];i=i+1|0;if((j|0)!=(i|0)){continue}break}}q=H[a+180>>2];n=H[a+264>>2];g=H[a+260>>2];o=H[a+248>>2];h=H[a+244>>2];p=H[a+232>>2];i=H[a+228>>2];m=H[a+276>>2];j=H[m+8>>2];k=H[H[a+192>>2]+4>>2];l=H[m+4>>2];F[f+44|0]=I[a+365|0]?1:I[m+16|0]!=0;H[f+40>>2]=j;H[f+36>>2]=k;H[f+32>>2]=a+208;H[f+28>>2]=q;H[f+24>>2]=l;H[f+20>>2]=n;H[f+16>>2]=g;H[f+12>>2]=o;H[f+8>>2]=h;H[f+4>>2]=p;H[f>>2]=i;F[a+365|0]=0;b:{if(o?1:n|p){a=H[a+272>>2];Ra[H[H[a>>2]+44>>2]](a,b,c,f,d,e);break b}Ra[H[H[e>>2]+20>>2]](e)}Oa=f+48|0}function c_(a,b){var c=O(0),d=O(0),e=O(0),f=O(0),g=0,h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0);m=L[b+32>>2];i=O(L[a+8>>2]-L[b+44>>2]);h=O(m*i);n=L[b+24>>2];j=O(L[a>>2]-L[b+36>>2]);k=O(L[a+4>>2]-L[b+40>>2]);o=L[b+28>>2];l=O(O(n*j)+O(k*o));p=L[b+20>>2];q=L[b+12>>2];r=L[b+16>>2];e=O(O(p*i)+O(O(q*j)+O(k*r)));c=L[b+48>>2];f=O(-c);s=L[b+8>>2];t=L[b>>2];u=L[b+4>>2];d=O(O(s*i)+O(O(t*j)+O(k*u)));g=1;a:{if(f>d){break a}f=d;g=0;if(!(c>2];d=O(-c);b:{c:{if(d>e){c=d;break c}if(!(c>2];c=O(-d);d:{e:{if(!(h>2];a=0;if(c>O(e*e)){break d}}a=1}return a}function zQ(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;b=H[a+20>>2];c=H[a+28>>2];H[c+1092>>2]=H[c+1092>>2]+1;uH(H[c+980>>2],0,0,H[H[c+976>>2]+1156>>2]);sO(c,b);a:{if(H[H[c+988>>2]+128>>2]){break a}b=H[c+1160>>2];if(!b){break a}a=H[c+980>>2];while(1){e=H[H[H[c+1156>>2]+(g<<2)>>2]+32>>2];if(e){while(1){if(I[H[e+28>>2]- -64|0]&5){h=H[e+8>>2];i=h&2147483647;f=i+32>>>5|0;b:{if(f>>>0<=(H[a+164>>2]&2147483647)>>>0){b=H[a+160>>2];break b}b=H[a+168>>2];b=Ra[H[H[b>>2]+8>>2]](b,f<<2,14905,438)|0;d=H[a+160>>2];c:{if(!d){break c}R6(b,d,H[a+164>>2]<<2);if(H[a+164>>2]<0){break c}d=H[a+160>>2];if(!d){break c}j=H[a+168>>2];Ra[H[H[j>>2]+12>>2]](j,d)}d=H[a+164>>2];S6((d<<2)+b|0,0,f-d<<2);H[a+164>>2]=f;H[a+160>>2]=b}b=(i>>>3&268435452)+b|0;H[b>>2]=H[b>>2]|1<>2];if(e){continue}break}b=H[c+1160>>2]}g=g+1|0;if(g>>>0>>0){continue}break}}}function lt(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0;f=J[a+4>>1];d=H[a+16>>2];a:{if((d|0)==-1){if(!f){break a}h=(f|0)==1?a:H[a>>2];d=a+8|0;c=0;while(1){e=c<<2;g=H[e+h>>2];if(I[(I[g+36|0]&64?H[g+40>>2]+52|0:g+112|0)|0]&2){KD(b,-1,H[e+(J[a+12>>1]==1?d:H[a+8>>2])>>2])}H[e+(J[a+12>>1]==1?d:H[a+8>>2])>>2]=-1;c=c+1|0;if((f|0)!=(c|0)){continue}break}break a}c=(J[c+4>>1]&65527)==5;e=H[b+72>>2];Ra[H[H[e>>2]+4>>2]](e,d);b=N(c,36)+b|0;H[b+32>>2]=H[b+32>>2]+1;b:{if(!f){break b}b=a+8|0;g=J[a+12>>1];c=0;if(f-1>>>0>=3){h=f&65532;d=(g|0)==1;while(1){e=c<<2;H[e+(d?b:H[b>>2])>>2]=-1;H[(e|4)+(d?b:H[b>>2])>>2]=-1;H[(e|8)+(d?b:H[b>>2])>>2]=-1;H[(e|12)+(d?b:H[b>>2])>>2]=-1;c=c+4|0;i=i+4|0;if((h|0)!=(i|0)){continue}break}}f=f&3;if(!f){break b}d=(g|0)==1;while(1){H[(c<<2)+(d?b:H[b>>2])>>2]=-1;c=c+1|0;j=j+1|0;if((f|0)!=(j|0)){continue}break}}H[a+16>>2]=-1}}function d_(a,b,c,d,e){var f=0,g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0);f=Oa-96|0;Oa=f;k=L[e+8>>2];l=L[e+12>>2];m=L[e>>2];n=L[e+4>>2];o=L[d+8>>2];p=L[d+12>>2];q=L[d>>2];r=L[d+4>>2];s=L[c+8>>2];g=L[a+8>>2];t=L[c+12>>2];h=L[a+12>>2];u=L[c>>2];i=L[a>>2];j=L[a+4>>2];L[f+84>>2]=L[c+4>>2]-j;L[f+80>>2]=u-i;L[f+92>>2]=t-h;L[f+88>>2]=s-g;L[f+68>>2]=r-j;L[f+64>>2]=q-i;L[f+76>>2]=p-h;L[f+72>>2]=o-g;L[f+52>>2]=n-j;L[f+48>>2]=m-i;L[f+60>>2]=l-h;L[f+56>>2]=k-g;a=H[f+84>>2];H[f+32>>2]=H[f+80>>2];H[f+36>>2]=a;a=H[f+92>>2];H[f+40>>2]=H[f+88>>2];H[f+44>>2]=a;a=H[f+68>>2];H[f+16>>2]=H[f+64>>2];H[f+20>>2]=a;a=H[f+76>>2];H[f+24>>2]=H[f+72>>2];H[f+28>>2]=a;a=H[f+60>>2];H[f+8>>2]=H[f+56>>2];H[f+12>>2]=a;a=H[f+52>>2];H[f>>2]=H[f+48>>2];H[f+4>>2]=a;a=e_(f+32|0,f+16|0,f,b);Oa=f+96|0;return a}function tq(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;e=H[a+8>>2]&2147483647;i=e?e<<1:1;a:{if(!i){break a}c=i<<5;if(!c){break a}g=H[33808];e=g+12|0;g=(k=e,l=c,m=Ra[H[H[g>>2]+20>>2]](g)|0?37542:55639,n=13582,o=553,j=H[H[e>>2]+8>>2],Ra[j](k|0,l|0,m|0,n|0,o|0)|0)}h=H[a+4>>2];f=(h<<5)+g|0;e=H[a>>2];if((h|0)>0){d=e;c=g;while(1){L[c>>2]=L[d>>2];L[c+4>>2]=L[d+4>>2];L[c+8>>2]=L[d+8>>2];H[c+12>>2]=H[d+12>>2];L[c+16>>2]=L[d+16>>2];L[c+20>>2]=L[d+20>>2];L[c+24>>2]=L[d+24>>2];H[c+28>>2]=H[d+28>>2];d=d+32|0;c=c+32|0;if(f>>>0>c>>>0){continue}break}}L[f>>2]=L[b>>2];L[f+4>>2]=L[b+4>>2];L[f+8>>2]=L[b+8>>2];H[f+12>>2]=H[b+12>>2];L[f+16>>2]=L[b+16>>2];L[f+20>>2]=L[b+20>>2];L[f+24>>2]=L[b+24>>2];H[f+28>>2]=H[b+28>>2];if(!(!e|H[a+8>>2]<0)){b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,e);h=H[a+4>>2]}H[a+8>>2]=i;H[a>>2]=g;H[a+4>>2]=h+1}function vY(a,b){var c=O(0),d=O(0),e=O(0),f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=O(0);c=L[b+8>>2];if(O(P(c))<=O(.9998999834060669)){e=O(O(1)/O(c+O(1)));g=L[b+4>>2];f=O(e*O(-g));d=L[b>>2];h=O(f*d);L[a+12>>2]=h;i=O(f*O(0));L[a+24>>2]=d+i;L[a>>2]=c-O(f*g);f=O(e*O(0));j=O(d*f);L[a+28>>2]=g+j;L[a+16>>2]=O(d*O(e*d))+c;L[a+4>>2]=h+O(0);L[a+32>>2]=O(f*O(0))+c;L[a+20>>2]=j-g;L[a+8>>2]=i-d;return}c=O(O(0)-c);d=O(O(0)-L[b>>2]);g=O(O(1)-L[b+4>>2]);e=O(O(2)/O(O(c*c)+O(O(d*d)+O(g*g))));f=O(O(O(O(d*O(0))+g)-c)*e);h=O(f*d);e=O(-e);i=O(d*e);L[a+12>>2]=h+O(i*g);j=O(f*g);k=O(g*e);L[a+4>>2]=O(j*O(0))+O(k*d);L[a+24>>2]=O(O(i*c)+O(0))-h;L[a+28>>2]=O(O(k*c)+O(1))-j;L[a>>2]=O(O(h*O(0))+O(i*d))+O(1);f=O(f*c);e=O(c*e);L[a+20>>2]=f+O(O(e*g)+O(1));L[a+8>>2]=O(f*O(0))+O(O(e*d)+O(0));L[a+16>>2]=O(j+O(O(k*g)+O(-1)))+O(1);L[a+32>>2]=O(O(O(e*c)+O(-1))-f)+O(1)}function w0(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=0,t=O(0),u=O(0),v=O(0);f=Oa-16|0;Oa=f;e=H[b+8>>2];s=H[b+4>>2];j=L[b+48>>2];k=L[b+32>>2];l=L[b+52>>2];m=L[b+20>>2];n=L[b+36>>2];o=L[b+56>>2];p=L[b+24>>2];q=L[b+40>>2];r=L[b+16>>2];g=L[c+8>>2];h=L[c>>2];i=L[c+4>>2];H[f+12>>2]=0;L[f+8>>2]=O(o*g)+O(O(p*h)+O(i*q));L[f+4>>2]=O(l*g)+O(O(m*h)+O(i*n));L[f>>2]=O(j*g)+O(O(r*h)+O(i*k));b=EU(s,f);H[d>>2]=b;j=L[e+52>>2];k=L[e+20>>2];l=L[e+36>>2];m=L[e+56>>2];b=H[s+152>>2]+N(b,12)|0;g=L[b>>2];n=L[e+24>>2];h=L[b+4>>2];o=L[e+40>>2];i=L[b+8>>2];p=L[e+48>>2];q=L[e+32>>2];r=L[e>>2];t=L[e+16>>2];u=L[e+4>>2];v=L[e+8>>2];H[a+12>>2]=0;L[a+8>>2]=m+O(O(o*i)+O(O(v*g)+O(h*n)));L[a+4>>2]=j+O(O(l*i)+O(O(u*g)+O(h*k)));L[a>>2]=p+O(O(q*i)+O(O(r*g)+O(h*t)));Oa=f+16|0}function W0(a,b){var c=O(0),d=O(0),e=O(0),f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0);c=L[b+8>>2];a:{if(O(P(c))>2];f=O(c+O(d*O(e*e)));h=O(-e);g=L[b+4>>2];j=O(-g);d=O(d*j);k=O(d*e);p=k;i=O(c-O(g*d));break a}c=O(O(0)-c);d=O(O(0)-L[b>>2]);f=O(O(1)-L[b+4>>2]);e=O(O(-2)/O(O(c*c)+O(O(d*d)+O(f*f))));i=O(d*e);g=O(O(O(O(d*O(0))+f)-c)*O(-e));l=O(d*g);k=O(O(f*i)+l);h=O(c*e);m=O(c*g);j=O(O(O(f*h)+m)+O(1));n=O(f*e);o=O(f*g);g=O(O(O(c*n)-o)+O(1));p=O(O(d*n)+O(o*O(0)));e=O(O(O(c*i)-l)+O(0));c=O(O(O(O(c*h)-m)+O(-1))+O(1));h=O(O(O(d*h)+O(m*O(0)))+O(0));f=O(O(O(O(f*n)+o)+O(-1))+O(1));i=O(O(O(d*i)+O(l*O(0)))+O(1))}L[a+32>>2]=h;L[a+16>>2]=p;H[a+12>>2]=0;L[a+8>>2]=e;L[a+4>>2]=k;L[a>>2]=i;H[a+44>>2]=0;L[a+40>>2]=c;L[a+36>>2]=j;H[a+28>>2]=0;L[a+24>>2]=g;L[a+20>>2]=f}function uM(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;e=H[c+4624>>2];a:{if(J[a+88>>1]>=2){if(!e){break a}f=H[a+84>>2];g=H[a+80>>2];a=0;if((e|0)!=1){j=e&-2;k=c+528|0;while(1){h=b<<1;G[h+((a<<2)+d|0)>>1]=J[f+(J[g+(H[(k+(a<<6)|0)+52>>2]<<1)>>1]<<1)>>1];l=h;h=a|1;G[l+((h<<2)+d|0)>>1]=J[f+(J[g+(H[(k+(h<<6)|0)+52>>2]<<1)>>1]<<1)>>1];a=a+2|0;i=i+2|0;if((j|0)!=(i|0)){continue}break}}if(!(e&1)){break a}G[((a<<2)+d|0)+(b<<1)>>1]=J[f+(J[g+(H[((a<<6)+c|0)+580>>2]<<1)>>1]<<1)>>1];return 1}if(!e){break a}c=J[a+34>>1];a=0;if(e-1>>>0>=3){k=e&-4;f=b<<1;while(1){g=a<<2;G[f+(g+d|0)>>1]=c;G[f+((g|4)+d|0)>>1]=c;G[f+((g|8)+d|0)>>1]=c;G[f+((g|12)+d|0)>>1]=c;a=a+4|0;j=j+4|0;if((k|0)!=(j|0)){continue}break}}e=e&3;if(!e){break a}while(1){G[((a<<2)+d|0)+(b<<1)>>1]=c;a=a+1|0;i=i+1|0;if((e|0)!=(i|0)){continue}break}}return 1}function Kx(a){var b=0,c=0,d=0,e=0,f=0,g=0;d=Oa-16|0;Oa=d;H[a+172>>2]=0;H[a+176>>2]=0;c=H[a+8>>2];if(c){e=a+88|0;g=a+112|0;while(1){b=c-1|0;c=H[H[a+4>>2]+(b<<2)>>2];H[a+8>>2]=b;H[d+12>>2]=c;b=H[a+168>>2];f=H[b+16>>2];a:{if(!(c>>>0>>0|c>>>0>=H[b+20>>2]+f>>>0)){b=H[a+92>>2];if(b>>>0>=(H[a+96>>2]&2147483647)>>>0){Hx(e,d+12|0);break a}H[H[a+88>>2]+(b<<2)>>2]=c;H[a+92>>2]=b+1;break a}b=H[a+116>>2];b:{if(b>>>0>=(H[a+120>>2]&2147483647)>>>0){Hx(g,d+12|0);break b}H[H[a+112>>2]+(b<<2)>>2]=c;H[a+116>>2]=b+1}H[a+152>>2]=H[a+152>>2]-1}c=H[a+8>>2];if(c){continue}break}}b=H[a+104>>2];if(b){c=0;while(1){e=H[H[a+100>>2]+(c<<2)>>2];if(e){b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,e);b=H[a+104>>2]}c=c+1|0;if(b>>>0>c>>>0){continue}break}}H[a+92>>2]=0;H[a+104>>2]=0;c=H[a+160>>2];if(c){Lw(H[a+168>>2],c);H[a+160>>2]=0;H[a+164>>2]=0}Oa=d+16|0}function EA(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;f=H[a>>2];j=f+J[a+4>>1]|0;if(f>>>0>>0){while(1){a=(f<<5)+b|0;d=J[a+22>>1];if(d){c=H[a+24>>2];m=c+(d<<4)|0;a=H[a+28>>2];while(1){d=I[c+2|0];n=(d<<2)+12&2032;k=I[c|0]==3;e=(N(d,k?112:48)+c|0)+80|0;o=I[c+3|0];a:{if(!a){a=0;break a}if(!d){break a}l=d&3;h=0;b:{if(d-1>>>0<3){d=0;break b}p=d&252;d=0;i=0;while(1){g=d<<2;L[a>>2]=L[e+g>>2];L[a+4>>2]=L[e+(g|4)>>2];L[a+8>>2]=L[e+(g|8)>>2];L[a+12>>2]=L[e+(g|12)>>2];d=d+4|0;a=a+16|0;i=i+4|0;if((p|0)!=(i|0)){continue}break}}if(!l){break a}while(1){L[a>>2]=L[e+(d<<2)>>2];d=d+1|0;a=a+4|0;h=h+1|0;if((h|0)!=(l|0)){continue}break}}d=e+n|0;e=k?128:64;c:{if(!H[c+56>>2]){break c}c=H[c+60>>2];if(!c){break c}F[c|0]=1}c=d+N(e,o)|0;if(m>>>0>c>>>0){continue}break}}f=f+1|0;if((j|0)!=(f|0)){continue}break}}}function Wk(a,b){a=a|0;b=b|0;var c=0,d=O(0),e=O(0),f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=0,n=O(0),o=O(0),p=O(0),q=O(0),r=O(0);c=Oa-32|0;Oa=c;m=H[b+396>>2];Ra[H[H[m>>2]+112>>2]](c,m);b=H[b+12>>2]&2?H[b+16>>2]:b+24|0;l=L[b+52>>2];n=L[b+48>>2];o=L[b+44>>2];p=L[c+20>>2];q=L[c+24>>2];r=L[c+16>>2];d=L[c+12>>2];e=L[b+40>>2];f=L[b+28>>2];h=L[c>>2];i=L[c+4>>2];g=L[b+32>>2];j=L[c+8>>2];k=L[b+36>>2];L[a+12>>2]=O(O(O(d*e)-O(f*h))-O(i*g))-O(j*k);L[a+8>>2]=O(O(h*g)+O(O(d*k)+O(e*j)))-O(f*i);L[a+4>>2]=O(O(j*f)+O(O(d*g)+O(e*i)))-O(k*h);L[a>>2]=O(O(i*k)+O(O(d*f)+O(e*h)))-O(g*j);e=O(l+l);f=O(o+o);g=O(n+n);k=O(O(j*e)+O(O(h*f)+O(i*g)));l=O(O(d*d)+O(-.5));L[a+24>>2]=q+O(O(j*k)+O(O(e*l)+O(d*O(O(h*g)-O(f*i)))));L[a+20>>2]=p+O(O(i*k)+O(O(g*l)+O(d*O(O(j*f)-O(e*h)))));L[a+16>>2]=r+O(O(h*k)+O(O(f*l)+O(d*O(O(i*e)-O(g*j)))));Oa=c+32|0}function m_(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=Oa-80|0;Oa=d;a:{b:{if(I[a+96|0]){if(!b){break b}e=H[a+4>>2];while(1){f=H[a+8>>2];if(f>>>0>=K[a+12>>2]){F[a+24|0]=1;a=0;break a}b=b-1|0;g=H[a+20>>2];c:{if(g>>>0>=K[a+16>>2]){g=H[c>>2];H[a+8>>2]=f+1;H[e+(f<<2)>>2]=g;break c}H[a+20>>2]=g+1}c=c+4|0;if(b){continue}break}break b}H[d+72>>2]=0;H[d+64>>2]=0;H[d+68>>2]=0;H[d+56>>2]=0;H[d+60>>2]=1065353216;H[d+48>>2]=0;H[d+52>>2]=0;if(!b){break b}g=a+32|0;j=d+32|0;k=d+20|0;while(1){e=d+8|0;h=(f<<2)+c|0;YZ(H[a+28>>2],d+48|0,e,0,0,H[h>>2],0,0);d:{if(!f_(g,e,k,j)){break d}e:{e=H[a+8>>2];if(e>>>0>2]){i=H[a+20>>2];if(i>>>0>2]){break e}h=H[h>>2];H[a+8>>2]=e+1;H[H[a+4>>2]+(e<<2)>>2]=h;break d}F[a+24|0]=1;a=0;break a}H[a+20>>2]=i+1}f=f+1|0;if((f|0)!=(b|0)){continue}break}}a=1}Oa=d+80|0;return a|0}function CL(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:{if(!b){break a}c=H[33808];e=c+12|0;e=(i=e,j=(b<<6)+131|0,k=Ra[H[H[c>>2]+20>>2]](c)|0?41946:55639,l=13582,m=553,h=H[H[e>>2]+8>>2],Ra[h](i|0,j|0,k|0,l|0,m|0)|0);if(!e){break a}f=e+131&-128;H[f-4>>2]=f-e}e=H[a>>2];c=H[a+4>>2];if((c|0)>0){g=(c<<6)+f|0;d=e;c=f;while(1){L[c>>2]=L[d>>2];L[c+4>>2]=L[d+4>>2];L[c+8>>2]=L[d+8>>2];L[c+12>>2]=L[d+12>>2];L[c+16>>2]=L[d+16>>2];L[c+20>>2]=L[d+20>>2];L[c+24>>2]=L[d+24>>2];L[c+28>>2]=L[d+28>>2];L[c+32>>2]=L[d+32>>2];L[c+36>>2]=L[d+36>>2];L[c+40>>2]=L[d+40>>2];L[c+44>>2]=L[d+44>>2];L[c+48>>2]=L[d+48>>2];L[c+52>>2]=L[d+52>>2];L[c+56>>2]=L[d+56>>2];L[c+60>>2]=L[d+60>>2];d=d- -64|0;c=c- -64|0;if(g>>>0>c>>>0){continue}break}}if(!(!e|H[a+8>>2]<0)){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,e-H[e-4>>2]|0)}H[a+8>>2]=b;H[a>>2]=f}function $B(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=O(0),l=0,m=0,n=0;if((i7(b)|0)!=1){b=b>>>1|b;b=b>>>2|b;b=b>>>4|b;b=b>>>8|b;b=(b>>>16|b)+1|0}k=O(L[a+24>>2]*O(b>>>0));a:{if(k=O(0)){j=~~k>>>0;break a}j=0}l=H[a+16>>2];d=b+j<<2;d=(0-d&12)+d|0;h=d+(j<<3)|0;if(h){e=H[33808]+12|0;e=Ra[H[H[e>>2]+8>>2]](e,h,20591,14239,372)|0}c=d;d=e;e=b<<2;d=S6(d,255,e);h=c+d|0;e=e+d|0;if(H[a+36>>2]){m=b-1|0;n=H[a+4>>2];while(1){i=f<<3;g=i+n|0;c=H[g>>2];c=(c<<15^-1)+c|0;c=N(c>>>10^c,9);c=c>>>6^c;c=(c<<11^-1)+c|0;c=d+(((c>>>16^c)&m)<<2)|0;H[e+(f<<2)>>2]=H[c>>2];H[c>>2]=f;i=h+i|0;H[i>>2]=H[g>>2];H[i+4>>2]=H[g+4>>2];f=f+1|0;if(f>>>0>2]){continue}break}}f=H[a>>2];if(f){g=H[33808]+12|0;Ra[H[H[g>>2]+12>>2]](g,f)}H[a+20>>2]=b;H[a+12>>2]=d;H[a>>2]=d;H[a+8>>2]=e;H[a+16>>2]=j;H[a+4>>2]=h;if(H[a+28>>2]==-1){H[a+28>>2]=l}}function ut(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;f=Oa-16|0;Oa=f;c=H[a+4>>2];h=c>>>30|0;a:{if((h|0)==3){break a}d=H[a>>2];e=h-1>>>0<2?d:0;if(!(I[e+4785|0]?e:0)){b=H[((H[b+4>>2]>>>22&60)+76348|0)+12>>2]+b|0;H[b+4>>2]=H[a+16>>2]&16777215|I[b+7|0]<<24;break a}e=H[a+8>>2];if(!e){e=Tt(d,c>>>24&15);H[a+8>>2]=e}c=H[e+8>>2];b:{if((c|0)==-1){break b}d=H[e+12>>2];if(!d){break b}g=H[H[a>>2]+4880>>2]+(c<<2)|0;c=0;while(1){i=g+(c<<2)|0;if(H[i>>2]!=(b|0)){c=c+1|0;if((d|0)!=(c|0)){continue}break b}break}c=d-1|0;H[i>>2]=H[g+(c<<2)>>2];H[e+12>>2]=c}d=H[a>>2];c=H[e>>2];c:{if((c|0)==-1){c=H[d+4884>>2];g=H[a+20>>2];H[f+12>>2]=0;d=d+4880|0;Fq(d,c+g|0,f+12|0);H[e>>2]=c;break c}d=d+4880|0}d=H[d>>2]+(c<<2)|0;c=H[e+4>>2];H[d+(c<<2)>>2]=b;H[e+4>>2]=c+1;if((h|0)!=1){$t(H[a>>2],a);H[a+4>>2]=H[a+4>>2]|1;break a}H[a+4>>2]=H[a+4>>2]|1}Oa=f+16|0}function om(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=O(0),l=0,m=0,n=0,o=0;if((i7(b)|0)!=1){b=b>>>1|b;b=b>>>2|b;b=b>>>4|b;b=b>>>8|b;b=(b>>>16|b)+1|0}k=O(L[a+24>>2]*O(b>>>0));a:{if(k=O(0)){j=~~k>>>0;break a}j=0}m=H[a+16>>2];d=b+j<<2;d=(0-d&12)+d|0;h=d+(j<<3)|0;if(h){e=H[33808]+12|0;e=Ra[H[H[e>>2]+8>>2]](e,h,20591,14239,372)|0}c=d;d=e;e=b<<2;d=S6(d,255,e);h=c+d|0;e=e+d|0;if(H[a+36>>2]){n=b-1|0;o=H[a+4>>2];while(1){i=f<<3;l=i+o|0;g=H[l>>2];c=(g<<15^-1)+g|0;c=N(c>>>10^c,9);c=c>>>6^c;c=(c<<11^-1)+c|0;c=d+(((c>>>16^c)&n)<<2)|0;H[e+(f<<2)>>2]=H[c>>2];H[c>>2]=f;i=h+i|0;H[i>>2]=g;H[i+4>>2]=H[l+4>>2];f=f+1|0;if(f>>>0>2]){continue}break}}f=H[a>>2];if(f){g=H[33808]+12|0;Ra[H[H[g>>2]+12>>2]](g,f)}H[a+20>>2]=b;H[a+12>>2]=d;H[a>>2]=d;H[a+8>>2]=e;H[a+16>>2]=j;H[a+4>>2]=h;if(H[a+28>>2]==-1){H[a+28>>2]=m}}function aD(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(!I[a+338|0]){break a}b=1;if(H[a+268>>2]){break a}b=0;d=H[a+284>>2];if(!d){break a}b=H[a+32>>2];if(b){b=NA(b);c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}b=H[33808];c=b+12|0;b=(f=c,g=64,h=Ra[H[H[b>>2]+20>>2]](b)|0?38814:55639,i=6600,j=691,e=H[H[c>>2]+8>>2],Ra[e](f|0,g|0,h|0,i|0,j|0)|0);MA(b);H[a+40>>2]=d;H[a+32>>2]=b;b=0;d=N(d,24);c=d+24|0;if(c){b=H[33808]+12|0;b=Ra[H[H[b>>2]+8>>2]](b,c,20591,6600,695)|0}H[a+36>>2]=b;R6(b,H[a+292>>2],d);H[a+16>>2]=0;H[a+8>>2]=0;H[a+12>>2]=0;b=1;H[a+48>>2]=H[a+48>>2]+1;H[a+60>>2]=(H[a+60>>2]^-1)&1;H[a+56>>2]=(H[a+56>>2]^-1)&1;d=H[a+20>>2];if(d){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,d)}H[a+20>>2]=0;H[a+24>>2]=0;H[a+8>>2]=4;H[a+268>>2]=1;H[a+28>>2]=0;e=a,j=k7(H[a+36>>2],H[a+40>>2]),H[e+12>>2]=j;H[a+16>>2]=Qa}return b|0}function Tk(a,b){a=a|0;b=b|0;var c=0,d=O(0),e=O(0),f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=0,n=O(0),o=O(0),p=O(0),q=O(0),r=O(0);c=Oa-32|0;Oa=c;m=H[b+392>>2];Ra[H[H[m>>2]+112>>2]](c,m);b=H[b+12>>2]&1?H[b+16>>2]:b+24|0;l=L[b+24>>2];n=L[b+20>>2];o=L[b+16>>2];p=L[c+20>>2];q=L[c+24>>2];r=L[c+16>>2];d=L[c+12>>2];e=L[b+12>>2];f=L[b>>2];h=L[c>>2];i=L[c+4>>2];g=L[b+4>>2];j=L[c+8>>2];k=L[b+8>>2];L[a+12>>2]=O(O(O(d*e)-O(f*h))-O(i*g))-O(j*k);L[a+8>>2]=O(O(h*g)+O(O(d*k)+O(e*j)))-O(f*i);L[a+4>>2]=O(O(j*f)+O(O(d*g)+O(e*i)))-O(k*h);L[a>>2]=O(O(i*k)+O(O(d*f)+O(e*h)))-O(g*j);e=O(l+l);f=O(o+o);g=O(n+n);k=O(O(j*e)+O(O(h*f)+O(i*g)));l=O(O(d*d)+O(-.5));L[a+24>>2]=q+O(O(j*k)+O(O(e*l)+O(d*O(O(h*g)-O(f*i)))));L[a+20>>2]=p+O(O(i*k)+O(O(g*l)+O(d*O(O(j*f)-O(e*h)))));L[a+16>>2]=r+O(O(h*k)+O(O(f*l)+O(d*O(O(i*e)-O(g*j)))));Oa=c+32|0}function EK(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;DK(a,c);c=H[a+124>>2];e=H[a+128>>2];b=H[a+88>>2];H[b+68>>2]=H[b+24>>2];H[b+72>>2]=e;H[b- -64>>2]=c;e=H[b>>2];a:{if(!e){break a}f=b+36|0;b=H[b+12>>2];c=0;while(1){g=H[(b+N(c,40)|0)+28>>2];if(g){qK(g,f)}c=c+1|0;if((e|0)!=(c|0)){continue}break}b=H[a+88>>2];f=H[b>>2];if(!f){break a}e=H[b+12>>2];g=0;c=0;if(f-1>>>0>=3){h=f&-4;while(1){d=H[(e+N(c,40)|0)+28>>2];if(d){H[d+116>>2]=0}d=H[(e+N(c|1,40)|0)+28>>2];if(d){H[d+116>>2]=0}d=H[(e+N(c|2,40)|0)+28>>2];if(d){H[d+116>>2]=0}d=H[(e+N(c|3,40)|0)+28>>2];if(d){H[d+116>>2]=0}c=c+4|0;i=i+4|0;if((h|0)!=(i|0)){continue}break}}f=f&3;if(!f){break a}while(1){h=H[(e+N(c,40)|0)+28>>2];if(h){H[h+116>>2]=0}c=c+1|0;g=g+1|0;if((f|0)!=(g|0)){continue}break}}uK(b+36|0,H[b+24>>2],a,b+76|0,b+84|0);S6(H[b+76>>2],0,H[b+80>>2]<<2)}function vt(a,b,c){var d=0,e=0,f=0,g=0,h=0;g=Oa-16|0;Oa=g;d=H[a+4>>2];e=d>>>30|0;a:{if((e|0)==3){break a}f=H[a>>2];e=e-1>>>0<2?f:0;if(!(I[e+4785|0]?e:0)){b=H[((H[b+4>>2]>>>22&60)+76348|0)+12>>2]+b|0;H[b+4>>2]=H[b+4>>2]|16777215;if(!c|(!H[a>>2]|d>>>0<1073741824)){break a}TD(b);break a}c=H[a+8>>2];if(!c){c=Tt(f,d>>>24&15);H[a+8>>2]=c}b:{d=H[c>>2];if((d|0)==-1){break b}e=H[c+4>>2];if(!e){break b}f=H[H[a>>2]+4880>>2]+(d<<2)|0;d=0;while(1){h=f+(d<<2)|0;if(H[h>>2]!=(b|0)){d=d+1|0;if((e|0)!=(d|0)){continue}break b}break}a=e-1|0;H[h>>2]=H[f+(a<<2)>>2];H[c+4>>2]=a;break a}e=H[a>>2];d=H[c+8>>2];c:{if((d|0)==-1){d=H[e+4884>>2];f=H[a+20>>2];H[g+12>>2]=0;e=e+4880|0;Fq(e,d+f|0,g+12|0);H[c+8>>2]=d;break c}e=e+4880|0}e=H[e>>2]+(d<<2)|0;d=H[c+12>>2];H[e+(d<<2)>>2]=b;H[c+12>>2]=d+1;$t(H[a>>2],a);H[a+4>>2]=H[a+4>>2]|2}Oa=g+16|0}function uo(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=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;h=Oa-32|0;Oa=h;a:{if(K[a+32>>2]>=K[a+104>>2]){break a}k=a+40|0;i=H[k>>2];H[k>>2]=i?i:-1;if((i|0)==1){o5(H[33808],8,4610,505,56304,0);break a}H[a+32>>2]=H[a+32>>2]+1;i=a+12|0;n=J[e+16>>1];o=H[e+12>>2];p=H[e+8>>2];q=H[e+4>>2];r=H[e>>2];l=H[a+24>>2];j=l+40|0;e=H[a+20>>2]&2147483647;b:{if(j>>>0<=e>>>0){break b}m=N(j,3);if(e>>>0>=m>>>0){break b}qo(i,m)}ro(i,j);e=H[a+12>>2]+H[a+24>>2]|0;F[e+38|0]=1;G[e+36>>1]=d;H[e+32>>2]=g;H[e+28>>2]=f;G[e+24>>1]=n;H[e+20>>2]=o;H[e+16>>2]=p;H[e+12>>2]=q;H[e+8>>2]=r;G[e+4>>1]=0;H[e>>2]=-16;H[a+24>>2]=j;d=H[a+108>>2];H[((d|0)==-16?a+108|0:d+H[a+12>>2]|0)>>2]=l;H[a+108>>2]=l;H[h+28>>2]=0;H[h+24>>2]=c;H[h+20>>2]=b;H[h+8>>2]=0;H[h+12>>2]=0;to(i,h+8|0);H[k>>2]=0}Oa=h+32|0}function cL(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(f){Ra[H[H[f>>2]+20>>2]](f)}dL(a,d);H[a+4>>2]=c;f=c;c=H[a+200>>2];d=c<<3;f=Gw(f,d,1);H[a+264>>2]=c;H[a+256>>2]=f;H[a+260>>2]=0;f=Gw(H[a+4>>2],d,1);H[a+276>>2]=c;H[a+268>>2]=f;H[a+272>>2]=0;f=Gw(H[a+4>>2],c<<2,1);H[a+212>>2]=c;H[a+204>>2]=f;H[a+208>>2]=0;f=Gw(H[a+4>>2],d,1);H[a+332>>2]=c;H[a+324>>2]=f;H[a+328>>2]=0;f=Gw(H[a+4>>2],d,1);H[a+380>>2]=c;H[a+372>>2]=f;H[a+376>>2]=0;d=Gw(H[a+4>>2],d,1);H[a+428>>2]=c;H[a+420>>2]=d;H[a+424>>2]=0;H[a+76>>2]=a;H[a+80>>2]=b;H[a+36>>2]=a;H[a+72>>2]=1;H[a+40>>2]=b;H[a+68>>2]=e;if(e){Ra[H[H[e>>2]+16>>2]](e);H[a- -64>>2]=H[H[a+68>>2]+16>>2]}b=a+48|0;H[a+28>>2]=b;H[a+32>>2]=1;Ra[H[H[a+48>>2]+16>>2]](b);H[a+24>>2]=H[H[a+28>>2]+16>>2];c=H[a- -64>>2];Ra[H[H[c>>2]+72>>2]](c,b);b=H[a+24>>2];Ra[H[H[b>>2]+72>>2]](b,a+8|0)}function Ph(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0;d=Oa-16|0;Oa=d;g=a+12|0;b=H[g+4>>2];a:{if(!b){break a}c=H[b+40>>2];if(!c){break a}while(1){c=c-1|0;h=f<<3;e=h+H[b+36>>2]|0;b:{if(!I[e|0]){b=H[e+4>>2];H[(H[b+8>>2]==(a|0)?8:12)+b>>2]=0;e=nf(b);if(e){Mt(e+16|0,b+16|0);H[d+12>>2]=b;Pf(e+5892|0,d+12|0)}b=H[g+4>>2];e=H[b+40>>2]-1|0;H[b+40>>2]=e;b=H[b+36>>2];h=b+h|0;b=b+(e<<3)|0;e=H[b+4>>2];H[h>>2]=H[b>>2];H[h+4>>2]=e;b=H[g+4>>2];if(H[b+40>>2]){break b}if(H[b+44>>2]>=0){Ul(H[33768],b)}b=0;H[g+4>>2]=0;break b}f=f+1|0}if(c){continue}break}}Oa=d+16|0;c=vg(a);if(H[a+40>>2]){o5(H[33808],8,15891,200,63886,0);fB(H[a+40>>2],a)}b=a+20|0;d=J[b+4>>1];f=H[b>>2];if(c){lt(b,c+5584|0,a)}if(d){f=(d|0)==1?b:f;c=0;while(1){bt(H[f+(c<<2)>>2]);c=c+1|0;if((d|0)!=(c|0)){continue}break}}d=H[H[33768]+476>>2];IT(b,d);IT(b+8|0,d);jg(g,a)}function HJ(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;b=Oa-16|0;Oa=b;c=H[33808];d=Ra[H[H[c+12>>2]+8>>2]](c+12|0,4,20591,6858,47)|0;H[d>>2]=116444;H[b+12>>2]=d;c=H[a+8>>2];a:{if(c>>>0>=(H[a+12>>2]&2147483647)>>>0){d=0;c=H[a+12>>2]&2147483647;g=c?c<<1:1;b:{if(!g){break b}e=g<<2;if(!e){break b}d=H[33808];c=d+12|0;d=(j=c,k=e,l=Ra[H[H[d>>2]+20>>2]](d)|0?51298:55639,m=13582,n=553,i=H[H[c>>2]+8>>2],Ra[i](j|0,k|0,l|0,m|0,n|0)|0)}f=H[a+8>>2];e=(f<<2)+d|0;if((f|0)>0){h=H[a+4>>2];c=d;while(1){H[c>>2]=H[h>>2];h=h+4|0;c=c+4|0;if(e>>>0>c>>>0){continue}break}}H[e>>2]=H[b+12>>2];c:{if(H[a+12>>2]<0){break c}e=H[a+4>>2];if(!e){break c}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,e);f=H[a+8>>2]}H[a+12>>2]=g;H[a+4>>2]=d;H[a+8>>2]=f+1;break a}H[H[a+4>>2]+(c<<2)>>2]=d;H[a+8>>2]=c+1}Oa=b+16|0;return H[b+12>>2]}function KY(a,b,c,d){var e=O(0),f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=0,n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0);m=L[a+4>>2]==O(1)&L[a+8>>2]==O(1)&L[a+12>>2]==O(1);if(!m){yW(b,a+4|0,a+16|0)}h=L[b+16>>2];i=L[b+28>>2];j=L[b+24>>2];q=L[b>>2];r=L[b+12>>2];s=L[b+4>>2];a=H[a+40>>2];n=L[a>>2];e=L[b+8>>2];o=L[a+4>>2];f=L[b+20>>2];p=L[a+8>>2];g=L[b+32>>2];t=O(O(O(n*e)+O(o*f))+O(p*g));u=e;e=L[a+12>>2];k=f;f=L[a+16>>2];l=g;g=L[a+20>>2];k=O(O(O(P(O(u*e)))+O(P(O(k*f))))+O(P(O(l*g))));L[c+20>>2]=t+k;l=O(O(O(n*s)+O(o*h))+O(p*i));h=O(O(O(P(O(s*e)))+O(P(O(h*f))))+O(P(O(i*g))));L[c+16>>2]=l+h;i=O(O(O(n*q)+O(o*r))+O(p*j));j=O(O(O(P(O(q*e)))+O(P(O(r*f))))+O(P(O(j*g))));L[c+12>>2]=i+j;L[c+8>>2]=t-k;L[c+4>>2]=l-h;L[c>>2]=i-j;hZ(d,a,b);if(!m){H[d+44>>2]=0;H[d+48>>2]=0;H[d+52>>2]=0;H[d+56>>2]=0}return m}function v0(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=0,s=O(0),t=O(0),u=O(0);e=Oa-16|0;Oa=e;r=H[b+4>>2];d=H[b+8>>2];i=L[b+48>>2];j=L[b+32>>2];k=L[b+52>>2];l=L[b+20>>2];m=L[b+36>>2];n=L[b+56>>2];o=L[b+24>>2];p=L[b+40>>2];q=L[b+16>>2];f=L[c+8>>2];g=L[c>>2];h=L[c+4>>2];H[e+12>>2]=0;L[e+8>>2]=O(n*f)+O(O(o*g)+O(h*p));L[e+4>>2]=O(k*f)+O(O(l*g)+O(h*m));L[e>>2]=O(i*f)+O(O(q*g)+O(h*j));b=EU(r,e);i=L[d+52>>2];j=L[d+20>>2];k=L[d+36>>2];l=L[d+56>>2];b=H[r+152>>2]+N(b,12)|0;f=L[b>>2];m=L[d+24>>2];g=L[b+4>>2];n=L[d+40>>2];h=L[b+8>>2];o=L[d+48>>2];p=L[d+32>>2];q=L[d>>2];s=L[d+16>>2];t=L[d+4>>2];u=L[d+8>>2];H[a+12>>2]=0;L[a+8>>2]=l+O(O(n*h)+O(O(u*f)+O(g*m)));L[a+4>>2]=i+O(O(k*h)+O(O(t*f)+O(g*j)));L[a>>2]=o+O(O(p*h)+O(O(q*f)+O(g*s)));Oa=e+16|0}function i1(a,b,c,d,e){var f=0,g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=0,q=0;f=Oa-32|0;Oa=f;j=L[d+36>>2];k=L[d+40>>2];l=L[d+32>>2];m=L[d+8>>2];n=L[d+4>>2];o=L[d>>2];g=O(L[c+8>>2]-L[d+56>>2]);h=O(L[c>>2]-L[d+48>>2]);i=O(L[c+4>>2]-L[d+52>>2]);L[f+20>>2]=O(L[d+24>>2]*g)+O(O(L[d+16>>2]*h)+O(i*L[d+20>>2]));L[f+16>>2]=O(m*g)+O(O(o*h)+O(i*n));H[f+28>>2]=0;L[f+24>>2]=O(k*g)+O(O(l*h)+O(i*j));g=L[c+40>>2];d=H[c+32>>2];p=H[c+36>>2];L[f+12>>2]=L[c+64>>2];L[f+8>>2]=g;q=H[f+28>>2];H[a+8>>2]=H[f+24>>2];H[a+12>>2]=q;H[f>>2]=d;H[f+4>>2]=p;d=H[f+20>>2];H[a>>2]=H[f+16>>2];H[a+4>>2]=d;d=H[c+28>>2];H[a+24>>2]=H[c+24>>2];H[a+28>>2]=d;d=H[c+20>>2];H[a+16>>2]=H[c+16>>2];H[a+20>>2]=d;d=H[f+12>>2];H[a+40>>2]=H[f+8>>2];H[a+44>>2]=d;d=H[f+4>>2];H[a+32>>2]=H[f>>2];H[a+36>>2]=d;$0(b,f+16|0,c+16|0,f,e);Oa=f+32|0}function X0(a,b,c,d,e){var f=0,g=O(0),h=O(0),i=0,j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=0,t=0,u=O(0),v=O(0),w=0;i=I[a+64|0];a:{if(!i){break a}while(1){f=H[a+76>>2]+N(t,48)|0;h=L[f+44>>2];if(h<=L[e>>2]){k=L[f+20>>2];l=L[f+16>>2];m=L[f+24>>2];v=L[d+16>>2];n=L[d+20>>2];j=L[d+24>>2];o=L[d+8>>2];p=L[d>>2];q=L[d+4>>2];g=L[d+12>>2];i=H[c+4>>2];w=H[c>>2];r=L[c+8>>2];f=(s<<6)+b|0;H[f+28>>2]=0;L[f+8>>2]=r;H[f+52>>2]=-1;L[f+12>>2]=h;H[f>>2]=w;H[f+4>>2]=i;u=j;h=O(O(g*g)+O(-.5));j=O(O(o*m)+O(O(p*l)+O(q*k)));r=O(O(O(g*O(O(p*k)-O(l*q)))+O(m*h))+O(o*j));L[f+24>>2]=u+O(r+r);u=n;n=O(O(q*j)+O(O(h*k)+O(g*O(O(o*l)-O(m*p)))));L[f+20>>2]=u+O(n+n);g=O(O(p*j)+O(O(h*l)+O(g*O(O(q*m)-O(k*o)))));L[f+16>>2]=v+O(g+g);i=I[a+64|0];s=s+1|0}if(s>>>0>63){break a}t=t+1|0;if(i>>>0>t>>>0){continue}break}}H[b+4096>>2]=s}function R0(a,b,c){var d=0,e=0,f=0,g=0,h=O(0),i=O(0),j=O(0),k=0,l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0);l=L[a- -64>>2];m=L[a+80>>2];n=L[a+52>>2];o=L[a+68>>2];p=L[a+84>>2];q=L[a+48>>2];d=H[a+144>>2];h=L[d+32>>2];i=L[d+24>>2];j=L[d+28>>2];L[c+8>>2]=O(L[a+88>>2]*h)+O(O(L[a+56>>2]*i)+O(j*L[a+72>>2]));L[c+4>>2]=O(p*h)+O(O(n*i)+O(j*o));L[c>>2]=O(m*h)+O(O(q*i)+O(j*l));a=I[d+38|0];H[c+12>>2]=a;e=I[d+39|0];H[c+16>>2]=e;f=G[d+36>>1];k=f&32767;H[c+20>>2]=k;g=H[d+40>>2];H[c+24>>2]=g;e=N(e,20)+g|0;H[c+28>>2]=e;e=e+N(a,12)|0;H[c+36>>2]=e;a=N(a,3);g=a+(e+(f<<1&65534)|0)|0;f=(f|0)>=0;H[c+40>>2]=f?0:g;H[c+32>>2]=(a+(e+(k<<1)|0)|0)+(f?0:k<<2);H[c+60>>2]=H[d+44>>2];a=H[d+52>>2];H[c+44>>2]=H[d+48>>2];H[c+48>>2]=a;a=H[d+60>>2];H[c+52>>2]=H[d+56>>2];H[c+56>>2]=a;if(!b){a=c+44|0;H[a>>2]=0;H[a+4>>2]=0;H[a+8>>2]=0;H[a+12>>2]=0}}function AZ(a,b,c,d,e,f,g){var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;k=Oa-512|0;Oa=k;H[k+4>>2]=b;H[k>>2]=a;h=1;a:{while(1){b:{c:{if(I[a+38|0]){h=i;break c}j=F[a+35|0]<<4;l=j+d|0;j=e+j|0;if(O(O(L[a+8>>2]*O(L[c+8>>2]-O(L[l+8>>2]-L[j+8>>2])))+O(O(L[a>>2]*O(L[c>>2]-O(L[l>>2]-L[j>>2])))+O(L[a+4>>2]*O(L[c+4>>2]-O(L[l+4>>2]-L[j+4>>2])))))>2];if(h>>>0>31){break b}H[f+256>>2]=h+1;h=(h<<3)+f|0;H[h+4>>2]=b;H[h>>2]=a;h=i;break c}F[a+38|0]=1;m=a+32|0;n=H[(b<<2)+88600>>2];l=n<<2;b=H[l+88600>>2];j=F[m+b|0];i=(i<<3)+k|0;o=b<<2;b=a+20|0;H[i>>2]=H[o+b>>2];H[(i|4)>>2]=j;i=H[b+l>>2];b=(h<<3)+k|0;H[b+4>>2]=F[m+n|0];H[b>>2]=i;h=h+1|0;if(I[a+39|0]){break c}b=I[a+40|0];a=H[g+520>>2];H[g+520>>2]=a+1;H[((a<<2)+g|0)+264>>2]=b}if(!h){break a}i=h-1|0;a=(i<<3)+k|0;b=H[a+4>>2];a=H[a>>2];continue}break}F[f+260|0]=1}Oa=k+512|0}function aR(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=O(0);e=Oa-32|0;Oa=e;XQ(a,e);f=H[H[a+4>>2]+40>>2];h=H[H[f+976>>2]+1816>>2];i=H[a+8>>2];g=i&2147483647;d=H[h+4>>2]+(g<<5)|0;L[d>>2]=L[e>>2];L[d+4>>2]=L[e+4>>2];L[d+8>>2]=L[e+8>>2];L[d+12>>2]=L[e+12>>2];L[d+16>>2]=L[e+16>>2];L[d+20>>2]=L[e+20>>2];j=L[e+24>>2];H[d+28>>2]=b;L[d+24>>2]=j;F[h+20|0]=1;b=H[f+1140>>2];aU(H[b+4>>2]+N(g,24)|0,H[a+28>>2]+68|0,e,O(1));F[b+16|0]=1;if(!(!c|H[a+8>>2]>=0)){b=g+32>>>5|0;a:{if(b>>>0<=(H[c+4>>2]&2147483647)>>>0){a=H[c>>2];break a}a=H[c+8>>2];a=Ra[H[H[a>>2]+8>>2]](a,b<<2,14905,438)|0;d=H[c>>2];b:{if(!d){break b}R6(a,d,H[c+4>>2]<<2);if(H[c+4>>2]<0){break b}d=H[c>>2];if(!d){break b}f=H[c+8>>2];Ra[H[H[f>>2]+12>>2]](f,d)}d=H[c+4>>2];S6((d<<2)+a|0,0,b-d<<2);H[c+4>>2]=b;H[c>>2]=a}a=(g>>>3&268435452)+a|0;H[a>>2]=H[a>>2]|1<>2];a=H[H[a+4>>2]+44>>2];if(!(!I[a+9|0]|I[a+45|0])){ug(a+16|0,e+32|0,a+48|0,b);return}o=L[a+32>>2];p=L[a+36>>2];q=L[a+40>>2];k=L[e+48>>2];l=L[e+52>>2];m=L[e+56>>2];c=L[a+28>>2];f=L[e+44>>2];g=L[a+24>>2];h=L[e+40>>2];i=L[a+16>>2];d=L[e+32>>2];j=L[a+20>>2];n=L[e+36>>2];L[b+12>>2]=O(c*f)-O(O(g*h)+O(O(i*d)+O(j*n)));L[b+8>>2]=O(g*f)+O(O(O(i*n)-O(d*j))+O(c*h));L[b+4>>2]=O(j*f)+O(O(c*n)+O(O(g*d)-O(h*i)));L[b>>2]=O(i*f)+O(O(c*d)+O(O(j*h)-O(n*g)));f=O(O(c*c)+O(-.5));h=O(O(g*m)+O(O(i*k)+O(j*l)));d=O(O(O(m*f)+O(c*O(O(i*l)-O(k*j))))+O(g*h));L[b+24>>2]=q+O(d+d);d=O(O(j*h)+O(O(l*f)+O(c*O(O(g*k)-O(m*i)))));L[b+20>>2]=p+O(d+d);c=O(O(i*h)+O(O(k*f)+O(c*O(O(j*m)-O(l*g)))));L[b+16>>2]=o+O(c+c)}function Pf(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;a:{if(!H[a+36>>2]){break a}d=H[b>>2];b=(d<<15^-1)+d|0;b=N(b>>>10^b,9);b=b>>>6^b;b=(b<<11^-1)+b|0;c=H[a+12>>2]+((H[a+20>>2]-1&(b>>>16^b))<<2)|0;b=H[c>>2];if((b|0)==-1){break a}e=H[a+8>>2];f=H[a+4>>2];g=f+(b<<2)|0;if((d|0)!=H[g>>2]){while(1){c=e+(b<<2)|0;b=H[c>>2];if((b|0)==-1){break a}g=f+(b<<2)|0;if((d|0)!=H[g>>2]){continue}break}}h=c;c=b<<2;H[h>>2]=H[c+e>>2];d=H[a+36>>2]-1|0;H[a+36>>2]=d;h=1;H[a+32>>2]=H[a+32>>2]+1;if((b|0)!=(d|0)){e=d<<2;H[g>>2]=H[e+f>>2];d=H[a+8>>2];H[d+c>>2]=H[d+e>>2];c=H[c+H[a+4>>2]>>2];c=(c<<15^-1)+c|0;c=N(c>>>10^c,9);c=c>>>6^c;c=(c<<11^-1)+c|0;c=H[a+12>>2]+((H[a+20>>2]-1&(c>>>16^c))<<2)|0;e=H[c>>2];f=H[a+36>>2];if((e|0)!=(f|0)){while(1){c=d+(e<<2)|0;e=H[c>>2];if((f|0)!=(e|0)){continue}break}}H[c>>2]=b}H[a+28>>2]=H[a+28>>2]-1}return h}function JV(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0);e=Oa-80|0;Oa=e;h=L[b+4>>2];j=O(h+h);g=L[b+8>>2];k=O(j*g);f=L[b>>2];i=O(f+f);m=L[b+12>>2];l=O(i*m);L[e+68>>2]=k-l;L[e+60>>2]=k+l;f=O(O(1)-O(f*i));k=O(h*j);L[e+72>>2]=f-k;n=f;f=O(g+g);l=O(g*f);L[e+56>>2]=n-l;g=O(i*g);j=O(j*m);L[e+64>>2]=g+j;h=O(i*h);i=O(f*m);L[e+52>>2]=h-i;L[e+48>>2]=g-j;L[e+44>>2]=h+i;L[e+40>>2]=O(O(1)-k)-l;h=L[d+4>>2];j=O(h+h);g=L[d+8>>2];k=O(j*g);f=L[d>>2];i=O(f+f);m=L[d+12>>2];l=O(i*m);L[e+28>>2]=k-l;L[e+20>>2]=k+l;f=O(O(1)-O(f*i));k=O(h*j);L[e+32>>2]=f-k;n=f;f=O(g+g);l=O(g*f);L[e+16>>2]=n-l;g=O(i*g);j=O(j*m);L[e+24>>2]=g+j;h=O(i*h);i=O(f*m);L[e+12>>2]=h-i;L[e+8>>2]=g-j;L[e+4>>2]=h+i;L[e>>2]=O(O(1)-k)-l;a=_Z(a+4|0,b+16|0,e+40|0,c+4|0,d+16|0,e);Oa=e+80|0;return a|0}function zJ(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0;e=c&134217727;d=H[a+4>>2]&2147483647;a:{if(e>>>0<=d>>>0){g=H[a>>2];e=d;break a}d=H[33808]+12|0;g=Ra[H[H[d>>2]+8>>2]](d,e<<2,20591,14969,438)|0;d=H[a>>2];b:{if(!d){break b}R6(g,d,H[a+4>>2]<<2);if(H[a+4>>2]<0){break b}d=H[a>>2];if(!d){break b}h=H[33808]+12|0;Ra[H[H[h>>2]+12>>2]](h,d)}d=H[a+4>>2];S6((d<<2)+g|0,0,e-d<<2);H[a+4>>2]=e;H[a>>2]=g}d=c>>>0>e>>>0?e:c;c:{if(!d){break c}c=0;a=0;if(d-1>>>0>=3){j=d&2147483644;h=0;while(1){e=a<<2;f=e+g|0;H[f>>2]=H[b+e>>2]|H[f>>2];f=e|4;i=f+g|0;H[i>>2]=H[b+f>>2]|H[i>>2];f=e|8;i=f+g|0;H[i>>2]=H[b+f>>2]|H[i>>2];e=e|12;f=e+g|0;H[f>>2]=H[b+e>>2]|H[f>>2];a=a+4|0;h=h+4|0;if((j|0)!=(h|0)){continue}break}}e=d&3;if(!e){break c}while(1){d=a<<2;h=d+g|0;H[h>>2]=H[b+d>>2]|H[h>>2];a=a+1|0;c=c+1|0;if((e|0)!=(c|0)){continue}break}}}function rB(a,b){var c=O(0),d=O(0),e=O(0),f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=0;c=O(L[a+16>>2]-L[b>>2]);i=L[b+16>>2];e=O(i+L[a+128>>2]);a:{if(c>e){break a}d=O(L[a+20>>2]-L[b+4>>2]);j=L[b+20>>2];f=O(j+L[a+132>>2]);if(d>f){break a}g=O(L[a+24>>2]-L[b+8>>2]);k=L[b+24>>2];h=O(k+L[a+136>>2]);if(ch|(dg)){break a}e=O(O(O(c*L[a+32>>2])+O(d*L[a+48>>2]))+O(g*L[a- -64>>2]));f=O(O(k*L[a+112>>2])+O(O(j*L[a+96>>2])+O(O(i*L[a+80>>2])+L[a>>2])));if(e>f){break a}h=O(O(k*L[a+116>>2])+O(O(j*L[a+100>>2])+O(O(i*L[a+84>>2])+L[a+4>>2])));l=O(O(O(c*L[a+36>>2])+O(d*L[a+52>>2]))+O(g*L[a+68>>2]));if(h>2])+O(d*L[a+56>>2]))+O(g*L[a+72>>2]));d=O(O(k*L[a+120>>2])+O(O(j*L[a+104>>2])+O(O(i*L[a+88>>2])+L[a+8>>2])));if(ed|l>2];if(d>>>0<=b>>>0){H[g+12>>2]=0;d=d<<1;if(d>>>0>(H[f+8>>2]&2147483647)>>>0){aC(f,d)}e=H[f+4>>2];if((e|0)<(d|0)){h=H[f>>2];i=h+(d<<2)|0;e=h+(e<<2)|0;while(1){H[e>>2]=H[g+12>>2];e=e+4|0;if(i>>>0>e>>>0){continue}break}}H[f+4>>2]=d;H[g+8>>2]=0;gy(a+688|0,d,g+8|0)}e=H[a+704>>2];a:{if(e){b:{if(H[c+40>>2]|!c){break b}d=H[c+36>>2];if(!H[d>>2]){break b}b=0;while(1){H[H[f>>2]+(H[((b<<2)+d|0)+4>>2]<<2)>>2]=c;b=b+1|0;d=H[c+36>>2];if(b>>>0>2]){continue}break}}h=e>>>0>1?e:1;c=0;while(1){b=0;e=H[H[a+700>>2]+(c<<2)>>2];d=H[e+36>>2];if(H[d>>2]){while(1){H[H[f>>2]+(H[((b<<2)+d|0)+4>>2]<<2)>>2]=e;b=b+1|0;d=H[e+36>>2];if(b>>>0>2]){continue}break}}c=c+1|0;if((h|0)!=(c|0)){continue}break}break a}H[H[f>>2]+(b<<2)>>2]=c}Oa=g+16|0}function YB(a,b,c,d,e,f,g){var h=0,i=O(0),j=0,k=0;j=d+28|0;k=a+296|0;while(1){h=b;H[h+32>>2]=e;b=H[c+4>>2];e=H[c>>2];i=L[c+8>>2];H[h+12>>2]=0;L[h+8>>2]=i;H[h>>2]=e;H[h+4>>2]=b;i=L[c+20>>2];b=H[c+16>>2];e=H[c+12>>2];H[h+28>>2]=0;L[h+24>>2]=i;H[h+16>>2]=e;H[h+20>>2]=b;if(F[c+24|0]&1){b=H[a+292>>2];if(!b){NB(a+4|0);b=H[a+292>>2]}H[a+292>>2]=H[b>>2];H[a+284>>2]=H[a+284>>2]+1;H[h+36>>2]=b;a=H[c+24>>2];c=a>>>1&15;H[b>>2]=c;if(c){d=(a>>>3&536870908)+f|0;c=0;while(1){e=c<<2;a=H[e+d>>2];H[(b+e|0)+4>>2]=a;H[H[g>>2]+(a<<2)>>2]=h;c=c+1|0;if(c>>>0>2]){continue}break}}}else{b=H[a+584>>2];if(!b){MB(k);b=H[a+584>>2]}H[a+584>>2]=H[b>>2];H[a+576>>2]=H[a+576>>2]+1;b=S6(b,0,96);H[h+40>>2]=b+48;H[h+36>>2]=b;YB(a,b,N(H[c+24>>2]>>>1|0,28)+d|0,d,h,f,g);c=d?N(H[c+24>>2]>>>1|0,28)+j|0:0;b=H[h+40>>2];e=h;continue}break}}function L5(){xa(96932,19531);ya(96956,11876,1,1,0);za(96968,4370,1,-128,127);za(96992,4363,1,-128,127);za(96980,4361,1,0,255);za(97004,1940,2,-32768,32767);za(97016,1931,2,0,65535);za(97028,2306,4,-2147483648,2147483647);za(97040,2297,4,0,-1);za(97072,16684,4,-2147483648,2147483647);za(97084,16675,4,0,-1);e7(97096,2724,-2147483648,2147483647);e7(97108,2723,0,-1);Aa(97120,2717,4);Aa(97132,19074,8);Ba(99856,16770);Ba(92272,55468);Ca(92360,4,16744);Ca(92452,2,16782);Ca(92544,4,16797);Da(99156,11943);Ea(92600,0,55399);Ea(92640,0,55501);Ea(92680,1,55429);Ea(92720,2,55031);Ea(92760,3,55062);Ea(92800,4,55102);Ea(92840,5,55131);Ea(92880,4,55538);Ea(92920,5,55568);Ea(92640,0,55233);Ea(92680,1,55200);Ea(92720,2,55299);Ea(92760,3,55265);Ea(92800,4,55366);Ea(92840,5,55332);Ea(92960,6,55169);Ea(93e3,7,55607)}function az(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;c=H[a+12>>2]&2147483647;g=c?c<<1:1;a:{if(!g){break a}c=g<<5;if(!c){break a}e=H[a>>2];e=Ra[H[H[e>>2]+8>>2]](e,c,13582,553)|0}c=H[a+8>>2];if((c|0)>0){h=(c<<5)+e|0;d=H[a+4>>2];c=e;while(1){f=H[d+4>>2];H[c>>2]=H[d>>2];H[c+4>>2]=f;f=H[d+28>>2];H[c+24>>2]=H[d+24>>2];H[c+28>>2]=f;f=H[d+20>>2];H[c+16>>2]=H[d+16>>2];H[c+20>>2]=f;f=H[d+12>>2];H[c+8>>2]=H[d+8>>2];H[c+12>>2]=f;d=d+32|0;c=c+32|0;if(h>>>0>c>>>0){continue}break}c=H[a+8>>2]}d=H[b+4>>2];c=(c<<5)+e|0;H[c>>2]=H[b>>2];H[c+4>>2]=d;d=H[b+28>>2];H[c+24>>2]=H[b+24>>2];H[c+28>>2]=d;d=H[b+20>>2];H[c+16>>2]=H[b+16>>2];H[c+20>>2]=d;d=H[b+12>>2];H[c+8>>2]=H[b+8>>2];H[c+12>>2]=d;b:{if(H[a+12>>2]<0){break b}b=H[a+4>>2];if(!b){break b}c=H[a>>2];Ra[H[H[c>>2]+12>>2]](c,b)}H[a+12>>2]=g;H[a+4>>2]=e;H[a+8>>2]=H[a+8>>2]+1}function aL(a){a=a|0;var b=0,c=0,d=0;b=H[a+256>>2];if(b){Lw(H[a+4>>2],b)}H[a+264>>2]=0;H[a+256>>2]=0;H[a+260>>2]=0;b=H[a+268>>2];if(b){Lw(H[a+4>>2],b)}H[a+268>>2]=0;H[a+272>>2]=0;H[a+276>>2]=0;H[a+280>>2]=0;b=H[a+204>>2];if(b){Lw(H[a+4>>2],b)}H[a+212>>2]=0;H[a+204>>2]=0;H[a+208>>2]=0;b=H[a+324>>2];if(b){Lw(H[a+4>>2],b)}H[a+324>>2]=0;H[a+328>>2]=0;H[a+332>>2]=0;b=H[a+372>>2];if(b){Lw(H[a+4>>2],b)}H[a+372>>2]=0;H[a+376>>2]=0;H[a+380>>2]=0;b=H[a+420>>2];if(b){Lw(H[a+4>>2],b)}H[a+420>>2]=0;H[a+424>>2]=0;H[a+428>>2]=0;a=a+216|0;b=H[a+28>>2];b=b>>>1|b;b=b>>>2|b;b=b>>>4|b;b=b>>>8|b;b=(b>>>16|b)+1|0;c=H[a+8>>2];a:{if((b|0)==(c|0)){break a}d=H[a+16>>2];if(b>>>0>>0&(c|0)==(d|0)){break a}c=b>>>0>>0?d:b;H[a+8>>2]=c;H[a+36>>2]=c-1;SK(a,c>>>0<=H[a+12>>2]>>>2>>>0|b>>>0>d>>>0?1:c>>>0<=H[a+32>>2]>>>2>>>0)}}function yY(a,b,c,d,e,f,g){var h=0,i=O(0),j=0,k=0,l=0,m=O(0),n=O(0),o=O(0),p=O(0),q=0;h=g;g=(ce|(df?g|4:g;F[h|0]=g;a:{if(g){a=0}else{if((b|0)==3){e=L[a>>2];m=O(c-e);c=O(L[a+8>>2]-e);f=L[a+4>>2];n=O(d-f);d=O(L[a+12>>2]-f);o=O(O(m*c)+O(n*d));e=O(L[a+16>>2]-e);f=O(L[a+20>>2]-f);p=O(O(e*e)+O(f*f));i=O(O(c*e)+O(d*f));e=O(O(m*e)+O(n*f));f=O(O(o*p)-O(i*e));c=O(O(c*c)+O(d*d));d=O(O(e*c)-O(i*o));return f>O(0)&d>O(0)&O(O(f+d)-O(O(c*p)-O(i*i)))>2];while(1){g=a;e=L[a+4>>2];q=k;a=H[a+4>>2];k=(a|0)>=(j|0);b:{if((q|0)==(k|0)){break b}f=L[g>>2];if((!(O(O(e-d)*O(L[h>>2]-f))>O(O(f-c)*O(L[h+4>>2]-e)))|0)==((a|0)>=(j|0)|0)){break b}if((l|0)==1){break a}l=l+1|0}a=g+8|0;h=g;b=b-1|0;if(b){continue}break}}a=l&1}return a}return 0}function fJ(a,b){var c=0,d=0,e=0;a:{b:{c:{d:{e:{f:{c=H[a+72>>2];b=N(b,20);e=c+b|0;switch(H[e+8>>2]){case 1:break d;case 0:break e;case 2:break f;default:break c}}a=H[a+4>>2];Ra[H[H[a>>2]+8>>2]](a,2,19414,7135,431);break a}a=H[a+8>>2];Ra[H[H[a>>2]>>2]](a,H[e>>2]);break b}g:{b=H[e+12>>2];if((b|0)==-1){break g}while(1){b=H[a+60>>2]+(b<<3)|0;d=N(H[b>>2],20)+c|0;c=H[d+4>>2]-1|0;H[d+4>>2]=c;if(!c){fJ(a,H[b>>2])}b=H[b+4>>2];if((b|0)==-1){break g}c=H[a+72>>2];continue}}H[a+52>>2]=H[a+52>>2]-1;break b}c=H[a+4>>2];Ra[H[H[c>>2]+8>>2]](c,2,18466,7135,448);h:{c=H[a+72>>2];b=H[(b+c|0)+12>>2];if((b|0)==-1){break h}while(1){b=H[a+60>>2]+(b<<3)|0;d=N(H[b>>2],20)+c|0;c=H[d+4>>2]-1|0;H[d+4>>2]=c;if(!c){fJ(a,H[b>>2])}b=H[b+4>>2];if((b|0)==-1){break h}c=H[a+72>>2];continue}}H[a+52>>2]=H[a+52>>2]-1}H[e+8>>2]=2}}function b_(a,b,c,d,e,f,g){var h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0);j=L[a+8>>2];k=L[d+8>>2];h=O(j-k);p=O(h*h);l=L[a>>2];m=L[d>>2];h=O(l-m);q=O(h*h);n=L[a+4>>2];o=L[d+4>>2];h=O(n-o);h=O(O(O(W(O(p+O(q+O(h*h)))))-e)+O(-10));h=h>O(0)?h:O(0);p=L[b+8>>2];j=O(j+O(p*h));k=O(k-j);q=L[b>>2];l=O(l+O(q*h));m=O(m-l);r=L[b+4>>2];n=O(n+O(r*h));o=O(o-n);s=O(O(k*k)+O(O(m*m)+O(o*o)));t=O(e*e);a:{b:{if(s<=t){if(!g){break b}L[g+8>>2]=j;L[g+4>>2]=n;L[g>>2]=l;break b}a=0;i=O(O(p*k)+O(O(q*m)+O(r*o)));if(i<=O(0)){break a}c=O(c-h);if(O(i-c)>e){break a}e=O(t-O(s-O(i*i)));if(e>2]=i;if(c>2];e=L[b+8>>2];L[g>>2]=l+O(i*L[b>>2]);L[g+8>>2]=j+O(i*e);L[g+4>>2]=n+O(i*c);i=L[f>>2]}L[f>>2]=h+i;a=1}return a}function jI(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;e=H[a+20>>2];a:{b:{if(!e){break b}g=H[b+4>>2];h=H[b>>2];d=g<<14&-65536|h>>>2&65535;d=(d<<15^-1)+d|0;d=N(d>>>10^d,9);d=d>>>6^d;d=(d<<11^-1)+d|0;f=e-1&(d>>>16^d);d=H[H[a+12>>2]+(f<<2)>>2];if((d|0)==-1){break b}i=a+4|0;k=H[a+8>>2];l=H[a+4>>2];while(1){j=N(d,12)+l|0;if(!(H[j>>2]!=(h|0)|H[j+4>>2]!=(g|0))){F[c|0]=1;break a}d=H[(d<<2)+k>>2];if((d|0)!=-1){continue}break}}F[c|0]=0;if(H[a+36>>2]==H[a+16>>2]){c=e?e<<1:16;if(c>>>0>e>>>0){eI(a,c);e=H[a+20>>2]}b=H[b+4>>2]<<14&-65536|H[b>>2]>>>2&65535;b=(b<<15^-1)+b|0;b=N(b>>>10^b,9);b=b>>>6^b;b=(b<<11^-1)+b|0;f=e-1&(b>>>16^b)}d=H[a+28>>2];H[a+28>>2]=d+1;b=H[a+12>>2]+(f<<2)|0;H[H[a+8>>2]+(d<<2)>>2]=H[b>>2];H[b>>2]=d;H[a+36>>2]=H[a+36>>2]+1;H[a+32>>2]=H[a+32>>2]+1;i=a+4|0}return H[i>>2]+N(d,12)|0}function aH(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0;e=H[a+16>>2];a:{b:{g=H[a+12>>2];f=g+(b<<2)|0;b=H[f>>2];if((c|0)==(b|0)){break b}while(1){d=b;b=H[e+(b<<2)>>2];if((c|0)!=(b|0)){continue}break}if((d|0)==-1){break b}H[e+(d<<2)>>2]=H[e+(c<<2)>>2];break a}H[f>>2]=H[e+(c<<2)>>2]}d=H[a+8>>2]-1|0;if((d|0)!=(c|0)){f=H[a+16>>2];c:{d:{i=H[a+20>>2];h=i+(d<<3)|0;b=H[h+4>>2]<<16|J[h>>1];b=(b<<15^-1)+b|0;b=N(b>>>10^b,9);b=b>>>6^b;b=(b<<11^-1)+b|0;j=H[a+4>>2]&(b>>>16^b);g=g+(j<<2)|0;b=H[g>>2];if((d|0)==(b|0)){break d}while(1){e=b;b=H[f+(b<<2)>>2];if((d|0)!=(b|0)){continue}break}if((e|0)==-1){break d}H[f+(e<<2)>>2]=H[f+(d<<2)>>2];break c}H[g>>2]=H[f+(d<<2)>>2]}d=H[h+4>>2];b=(c<<3)+i|0;H[b>>2]=H[h>>2];H[b+4>>2]=d;b=H[a+12>>2]+(j<<2)|0;H[H[a+16>>2]+(c<<2)>>2]=H[b>>2];H[b>>2]=c;d=H[a+8>>2]-1|0}H[a+8>>2]=d}function RV(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=O(0),f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0),A=O(0),B=O(0),C=O(0);d=H[b+8>>2];k=L[d+52>>2];l=L[d+36>>2];m=L[d+20>>2];f=L[d+56>>2];g=L[d+40>>2];b=H[b+4>>2];h=L[b+88>>2];n=L[b+56>>2];o=L[b+72>>2];p=L[b- -64>>2];q=L[b+80>>2];r=L[d+24>>2];s=L[b+84>>2];c=H[b+152>>2]+N(c,12)|0;e=L[c+8>>2];t=L[b+52>>2];i=L[c>>2];u=L[b+68>>2];j=L[c+4>>2];v=L[d+48>>2];w=L[d+32>>2];x=L[d>>2];y=L[d+16>>2];z=L[d+4>>2];A=L[d+8>>2];B=L[b+48>>2];H[a+12>>2]=0;C=f;f=O(O(h*e)+O(O(n*i)+O(j*o)));h=O(g*f);g=O(O(q*e)+O(O(B*i)+O(j*p)));e=O(O(s*e)+O(O(t*i)+O(j*u)));L[a+8>>2]=C+O(h+O(O(A*g)+O(r*e)));L[a+4>>2]=k+O(O(l*f)+O(O(z*g)+O(e*m)));L[a>>2]=v+O(O(w*f)+O(O(x*g)+O(e*y)))}function NE(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;c=H[a+60>>2];g=(b>>>0)/(c>>>0)|0;g=H[H[a+40>>2]+(g<<2)>>2]+(b-N(c,g)<<4)|0;f=J[g+4>>1];if(f&64){c=N(H[g>>2],12)+a|0;e=H[c+152>>2];a:{if(!e){break a}h=H[c+148>>2];while(1){i=h+(d<<2)|0;if(H[i>>2]!=(b|0)){d=d+1|0;if((e|0)!=(d|0)){continue}break a}break}j=c;c=e-1|0;H[j+152>>2]=c;H[i>>2]=H[h+(c<<2)>>2]}G[g+4>>1]=f&65471}d=b<<1;h=d|1;f=H[a+448>>2];c=H[f+20>>2];e=(h>>>0)/(c>>>0)|0;f=H[f>>2];i=(d>>>0)/(c>>>0)|0;d=H[H[f+(i<<2)>>2]+(d-N(c,i)<<2)>>2];b:{if(d>>>0>4294967167){break b}c=H[H[f+(e<<2)>>2]+(h-N(c,e)<<2)>>2];if(c>>>0>4294967167){break b}j=N(d>>>7|0,24);d=H[a+16>>2];e=j+d|0;H[e+16>>2]=H[e+16>>2]-1;c=d+N(c>>>7|0,24)|0;H[c+16>>2]=H[c+16>>2]-1}if(!H[g>>2]){a=H[a+228>>2]+(b>>>3&536870908)|0;c=H[a>>2];k=a,l=j7(-2,b)&c,H[k>>2]=l}}function KO(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0;g=Oa-288|0;Oa=g;e=H[b>>2];if(e){f=H[a+2416>>2];a:{if(f){HO(a,e,f,c,d);break a}F[g+264|0]=1;H[g+272>>2]=0;H[g+276>>2]=64;f=g+8|0;H[g+268>>2]=f;HO(a,e,f,c,d);c=H[g+276>>2];if((c|0)<0|!(c&2147483647)){break a}c=H[g+268>>2];if((c|0)==(g+8|0)|!c){break a}d=H[33808]+12|0;Ra[H[H[d>>2]+12>>2]](d,c)}d=H[a+2388>>2];e=H[b>>2];b:{if(!e){break b}Ra[H[H[e>>2]>>2]](e)|0;if(I[d+24|0]){MN(H[d+12>>2],H[d+16>>2])}b=0;c=H[d+16>>2]-1|0;if((c|0)<0){break b}j=N(H[d+4>>2],H[d>>2]);i=H[d+12>>2];while(1){f=b+c>>1;h=H[N(f,12)+i>>2];if(!(h>>>0>e>>>0|e>>>0>=h+j>>>0)){b=N(f,12)+i|0;H[e>>2]=H[b+4>>2];H[b+4>>2]=e;if(I[d+24|0]){H[d+8>>2]=f}F[d+24|0]=0;break b}h=e>>>0>h>>>0;b=h?f+1|0:b;c=h?c:f-1|0;if((b|0)<=(c|0)){continue}break}}H[a+2664>>2]=H[a+2664>>2]-1}Oa=g+288|0}function Y_(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=O(0),i=0;f=Oa-128|0;Oa=f;g=H[c+4>>2];i=H[c>>2];h=L[c+8>>2];H[f+124>>2]=0;L[f+120>>2]=h;H[f+112>>2]=i;H[f+116>>2]=g;c=H[d+4>>2];g=H[d>>2];h=L[d+8>>2];H[f+108>>2]=0;L[f+104>>2]=h;H[f+96>>2]=g;H[f+100>>2]=c;c=H[e+4>>2];d=H[e>>2];h=L[e+8>>2];H[f+92>>2]=0;L[f+88>>2]=h;H[f+80>>2]=d;H[f+84>>2]=c;h=L[a+32>>2];c=H[a+28>>2];d=H[a+24>>2];H[f+12>>2]=0;L[f+8>>2]=h;H[f>>2]=d;H[f+4>>2]=c;rZ(f+16|0,f,f+112|0,f+96|0,f+80|0,f- -64|0,f+48|0,f+32|0);Oa=f+128|0;c=1;a:{if(!(L[f+16>>2]<=L[a+20>>2])){break a}d=H[b+8>>2];F[a+16|0]=1;a=H[a+12>>2];c=0;if(!a){break a}b=H[a+4>>2];if(b>>>0>=K[a+8>>2]){F[a+20|0]=1;c=1;break a}c=H[a+16>>2];if(c>>>0>=K[a+12>>2]){H[a+4>>2]=b+1;H[H[a>>2]+(b<<2)>>2]=d;c=1;break a}H[a+16>>2]=c+1;c=1}return c|0}function sn(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=O(0),g=O(0);L[a+296>>2]=L[b>>2];L[a+300>>2]=L[b+4>>2];L[a+304>>2]=L[b+8>>2];e=a+48|0;a:{b:{c:{switch((H[a+52>>2]>>>30|0)-2|0){case 0:d=H[e>>2];if(I[d+4785|0]){break b}default:EF(a- -64|0,b);break a;case 1:break c}}d=H[e>>2]}$t(d,e);H[a+316>>2]=H[a+316>>2]|8388608}d:{if(!vg(a)){break d}d=1;d=L[b>>2]!=O(0)|L[b+4>>2]!=O(0)?d:L[b+8>>2]!=O(0);f=L[a+308>>2];b=H[H[((J[a+4>>1]<<2)+73232|0)+72>>2]+a>>2];if(b){b=b-16|0}else{b=0}g=L[b+5148>>2];b=f>2]!=0?1:b)){break d}f=b?g:f;e:{f:{switch((H[a+52>>2]>>>30|0)-2|0){case 0:b=H[e>>2];if(I[b+4785|0]){break e}default:L[a+308>>2]=f;H[a+312>>2]=0;WF(a- -64|0,f,1);return;case 1:break f}}b=H[e>>2]}L[a+308>>2]=f;H[a+312>>2]=0;$t(b,e);H[a+316>>2]=H[a+316>>2]&-117440513|83886080}}function qn(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=O(0),g=O(0);L[a+284>>2]=L[b>>2];L[a+288>>2]=L[b+4>>2];L[a+292>>2]=L[b+8>>2];e=a+48|0;a:{b:{c:{switch((H[a+52>>2]>>>30|0)-2|0){case 0:d=H[e>>2];if(I[d+4785|0]){break b}default:DF(a- -64|0,b);break a;case 1:break c}}d=H[e>>2]}$t(d,e);H[a+316>>2]=H[a+316>>2]|4194304}d:{if(!vg(a)){break d}d=1;d=L[b>>2]!=O(0)|L[b+4>>2]!=O(0)?d:L[b+8>>2]!=O(0);f=L[a+308>>2];b=H[H[((J[a+4>>1]<<2)+73232|0)+72>>2]+a>>2];if(b){b=b-16|0}else{b=0}g=L[b+5148>>2];b=f>2]!=0?1:b)){break d}f=b?g:f;e:{f:{switch((H[a+52>>2]>>>30|0)-2|0){case 0:b=H[e>>2];if(I[b+4785|0]){break e}default:L[a+308>>2]=f;H[a+312>>2]=0;WF(a- -64|0,f,1);return;case 1:break f}}b=H[e>>2]}L[a+308>>2]=f;H[a+312>>2]=0;$t(b,e);H[a+316>>2]=H[a+316>>2]&-117440513|83886080}}function VX(a,b,c,d,e,f){var g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0),w=O(0),x=O(0),y=O(0),z=O(0);v=L[c>>2];i=L[b>>2];o=O(v-i);m=L[d+4>>2];g=L[b+4>>2];n=O(m-g);h=L[d>>2];p=O(h-i);w=L[c+4>>2];j=O(w-g);r=O(O(o*n)-O(p*j));k=L[a>>2];h=O(h-k);l=L[a+4>>2];g=O(g-l);i=O(i-k);m=O(m-l);s=j;x=L[d+8>>2];j=L[b+8>>2];y=O(x-j);z=L[c+8>>2];q=O(z-j);t=O(O(s*y)-O(n*q));u=L[a+8>>2];j=O(j-u);n=O(x-u);o=O(O(q*p)-O(y*o));p=O(O(r*O(O(h*g)-O(i*m)))+O(O(t*O(O(m*j)-O(g*n)))+O(o*O(O(n*i)-O(j*h)))));l=O(w-l);k=O(v-k);q=O(r*O(O(i*l)-O(k*g)));s=g;g=O(z-u);i=O(q+O(O(t*O(O(s*g)-O(l*j)))+O(o*O(O(j*k)-O(g*i)))));h=O(O(O(r*O(O(k*m)-O(h*l)))+O(O(t*O(O(l*n)-O(m*g)))+O(o*O(O(g*h)-O(n*k)))))+O(p+i));h=h!=O(0)?O(O(1)/h):O(0);L[e>>2]=p*h;L[f>>2]=i*h}function yE(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;d=Oa-16|0;Oa=d;H[d+8>>2]=b;b=b>>>7|0;if((b|0)!=33554431){e=H[a+16>>2];c=e+N(b,24)|0;f=c;c=I[c+4|0];a:{if(c&34){break a}g=H[a+28>>2];if(!(!(c&4)|H[g+(b<<2)>>2]==33554431)){h=e+N(b,24)|0;k=H[h+16>>2];H[h+16>>2]=0;c=c&253;F[f+4|0]=c;b=H[d+8>>2]>>>7|0;b:{if(H[(e+N(b,24)|0)+16>>2]){break b}e=(b<<2)+g|0;i=H[e>>2];if((i|0)==33554431){break b}b=H[a+136>>2];j=H[(b+(H[a+140>>2]<<2)|0)-4>>2];H[(j>>>5&134217724)+g>>2]=i;H[b+(H[e>>2]<<2)>>2]=j;H[a+140>>2]=H[a+140>>2]-1;H[e>>2]=33554431;b=H[d+8>>2]>>>7|0}H[h+16>>2]=k}c=c|32;F[f+4|0]=c;H[(b<<2)+g>>2]=H[a+328>>2];b=H[a+328>>2];if(b>>>0>=(H[a+332>>2]&2147483647)>>>0){_E(a+324|0,d+8|0);c=I[f+4|0];break a}H[H[a+324>>2]+(b<<2)>>2]=H[d+8>>2];H[a+328>>2]=H[a+328>>2]+1}F[f+4|0]=c&190}Oa=d+16|0}function P5(a){var b=0,c=O(0),d=0,e=O(0),f=0,g=O(0);f=(B(a),v(2));b=f&2147483647;if(b>>>0>=1283457024){return((B(a),v(2))&2147483647)>>>0>2139095040?a:(x(2,(B(a),v(2))&-2147483648|1070141402),C())}a:{b:{if(b>>>0<=1054867455){if(b>>>0<964689920){break a}b=-1;d=1;break b}a=O(P(a));c:{if(b>>>0<=1066926079){if(b>>>0<=1060110335){a=O(O(O(a+a)+O(-1))/O(a+O(2)));b=0;d=0;break b}b=1;a=O(O(a+O(-1))/O(a+O(1)));break c}if(b>>>0<=1075576831){b=2;a=O(O(a+O(-1.5))/O(O(a*O(1.5))+O(1)));break c}b=3;a=O(O(-1)/a)}d=0}e=O(a*a);c=O(e*e);g=O(c*O(O(c*O(-.106480173766613))+O(-.19999158382415771)));c=O(e*O(O(c*O(O(c*O(.06168760731816292))+O(.14253635704517365)))+O(.333333283662796)));if(d){return O(a-O(a*O(g+c)))}b=b<<2;a=O(L[b+93040>>2]-O(O(O(a*O(g+c))-L[b+93056>>2])-a));a=(f|0)>=0?a:O(-a)}return a}function nC(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;h=-1;e=-1;f=H[a+4>>2];e=f>>>0>b>>>0?H[H[a>>2]+(b<<2)>>2]:e;h=c>>>0>>0?H[H[a>>2]+(c<<2)>>2]:h;i=H[d+8>>2];a:{if((e|0)==-1){break a}k=i+N(e,28)|0;g=H[k+24>>2];j=g>>>1&15;if(!j){break a}l=H[d>>2]+(g>>>3&536870908)|0;e=0;while(1){f=(e<<2)+l|0;if(H[f>>2]==(b|0)){m=g&-31;g=j-1|0;H[k+24>>2]=m|g<<1;H[f>>2]=-1;H[H[a>>2]+(b<<2)>>2]=-1;if((e|0)==(g|0)){break a}e=H[f>>2];j=f;f=(g<<2)+l|0;H[j>>2]=H[f>>2];H[f>>2]=e;break a}e=e+1|0;if((j|0)!=(e|0)){continue}break}}b:{if((h|0)==-1|(b|0)==(c|0)){break b}e=H[(i+N(h,28)|0)+24>>2];f=e>>>1&15;if(!f){break b}d=H[d>>2]+(e>>>3&536870908)|0;e=0;while(1){i=d+(e<<2)|0;if(H[i>>2]!=(c|0)){e=e+1|0;if((f|0)!=(e|0)){continue}break b}break}H[i>>2]=b;a=H[a>>2];H[a+(b<<2)>>2]=h;H[a+(c<<2)>>2]=-1}}function up(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;b=J[b>>1];a:{if(!(b&3)){break a}i=H[a+5936>>2];if(!i|!d){break a}f=b&2;if(!(b&1)){b=0;if(!f){return 0}f=0;while(1){g=H[H[a+5932>>2]+(b<<2)>>2];if(!(J[g+4>>1]!=5|!g)){if(e>>>0<=h>>>0){H[(f<<2)+c>>2]=g;f=f+1|0}h=h+1|0}b=b+1|0;if(i>>>0<=b>>>0){break a}if(d>>>0>f>>>0){continue}break}break a}b=0;if(!f){f=0;while(1){g=H[H[a+5932>>2]+(b<<2)>>2];if(!(J[g+4>>1]!=6|!g)){if(e>>>0<=h>>>0){H[(f<<2)+c>>2]=g;f=f+1|0}h=h+1|0}b=b+1|0;if(i>>>0<=b>>>0){break a}if(d>>>0>f>>>0){continue}break}break a}f=0;while(1){g=H[H[a+5932>>2]+(b<<2)>>2];j=J[g+4>>1];b:{if((j|0)!=6|!g){if(!g|(j|0)!=5){break b}}if(e>>>0<=h>>>0){H[(f<<2)+c>>2]=g;f=f+1|0}h=h+1|0}b=b+1|0;if(i>>>0<=b>>>0){break a}if(d>>>0>f>>>0){continue}break}}return f|0}function Wt(a){var b=0,c=0,d=0,e=O(0),f=0,g=0,h=O(0),i=O(0),j=0;g=Oa-16|0;Oa=g;b=a+76|0;c=a+88|0;f=a+12|0;d=H[f+60>>2];a:{if(!d){H[b+8>>2]=0;H[b>>2]=0;H[b+4>>2]=0;H[c+8>>2]=0;H[c>>2]=0;H[c+4>>2]=0;break a}j=H[d+48>>2];d=H[H[j+1004>>2]+168>>2]+(H[d+40>>2]<<5)|0;h=L[d>>2];i=L[d+4>>2];e=L[j+1084>>2];L[b+8>>2]=e*L[d+8>>2];L[b+4>>2]=e*i;L[b>>2]=e*h;h=L[d+16>>2];i=L[d+20>>2];L[c+8>>2]=e*L[d+24>>2];L[c+4>>2]=e*i;L[c>>2]=e*h}G[a+100>>1]=G[a+12>>1]&1;c=H[a+4>>2];b:{if(!(c&16777215)){break b}b=H[a+8>>2];if(!b){b=Tt(H[a>>2],c>>>24&15);H[a+8>>2]=b}if(c&1){xG(f,H[b>>2],H[b+4>>2])}if(c&2){yG(f,L[b+8>>2],L[b+12>>2])}if(c&8){e=L[b+20>>2];L[f+56>>2]=e;d=H[f+60>>2];if(d){L[d+44>>2]=e}}if(!(c&4)){break b}G[g+8>>1]=J[a+100>>1]|J[b+16>>1];wG(f,g+8|0)}H[a+8>>2]=0;H[a+4>>2]=I[a+7|0]<<24;Oa=g+16|0}function OV(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=O(0),g=O(0),h=O(0),i=0,j=0,k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0);i=H[b+4>>2];e=H[b+8>>2];j=d;f=L[c+8>>2];g=L[c>>2];h=L[c+4>>2];c=O(O(L[b+52>>2]*f)+O(O(L[b+20>>2]*g)+O(h*L[b+36>>2])))>O(0);d=O(O(L[b+48>>2]*f)+O(O(L[b+16>>2]*g)+O(h*L[b+32>>2])))>O(0);b=O(O(L[b+56>>2]*f)+O(O(L[b+24>>2]*g)+O(h*L[b+40>>2])))>O(0);H[j>>2]=c<<1|d|b<<2;k=L[e+52>>2];l=L[e+36>>2];m=L[e+20>>2];n=L[e+56>>2];o=L[e+40>>2];f=L[i+56>>2];p=L[e+24>>2];g=L[i+52>>2];q=L[e+48>>2];r=L[e+32>>2];s=L[e>>2];t=L[e+16>>2];u=L[e+4>>2];v=L[e+8>>2];h=L[i+48>>2];H[a+12>>2]=0;f=b?f:O(-f);h=d?h:O(-h);g=c?g:O(-g);L[a+8>>2]=n+O(O(o*f)+O(O(v*h)+O(p*g)));L[a+4>>2]=k+O(O(l*f)+O(O(u*h)+O(g*m)));L[a>>2]=q+O(O(r*f)+O(O(s*h)+O(g*t)))}function ZZ(a,b){var c=O(0),d=O(0),e=O(0),f=O(0),g=O(0);d=L[b+16>>2];e=L[b>>2];f=L[b+32>>2];a:{if(f>2]-L[b+28>>2]));e=O(c*O(L[b+24>>2]+L[b+8>>2]));f=O(c*O(L[b+4>>2]+L[b+12>>2]));c=O(g*c);break a}f=O(O(O(O(1)-e)+d)-f);c=O(O(.5)/O(W(f)));d=O(c*O(L[b+24>>2]-L[b+8>>2]));e=O(c*O(L[b+20>>2]+L[b+28>>2]));f=O(f*c);c=O(c*O(L[b+4>>2]+L[b+12>>2]));break a}if(e>2]-L[b+12>>2]));e=O(e*c);f=O(c*O(L[b+20>>2]+L[b+28>>2]));c=O(c*O(L[b+24>>2]+L[b+8>>2]));break a}d=O(f+O(O(e+O(1))+d));c=O(O(.5)/O(W(d)));d=O(d*c);e=O(c*O(L[b+4>>2]-L[b+12>>2]));f=O(c*O(L[b+24>>2]-L[b+8>>2]));c=O(c*O(L[b+20>>2]-L[b+28>>2]))}L[a+12>>2]=d;L[a+8>>2]=e;L[a+4>>2]=f;L[a>>2]=c;return a}function xq(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;c=CO(a+32|0);f=H[c>>2];g=H[H[a+1008>>2]+1156>>2];e=H[c+4>>2];a:{if(!e){break a}if(!b){while(1){b=yq(g,40);H[b+24>>2]=0;H[b>>2]=0;H[b+4>>2]=0;H[b+16>>2]=0;H[b+20>>2]=0;H[b+8>>2]=0;H[b+12>>2]=0;c=e-d|0;H[b+36>>2]=c>>>0<256?c:256;H[b+32>>2]=N(d,24)+f;H[b+28>>2]=a;H[b+24>>2]=1;H[b>>2]=110672;H[b+20>>2]=0;c=H[b+16>>2];Ra[H[H[c>>2]+72>>2]](c,b);d=d+256|0;if(e>>>0>d>>>0){continue}break a}}while(1){c=yq(g,40);H[c+24>>2]=0;H[c>>2]=0;H[c+4>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;h=e-d|0;H[c+36>>2]=h>>>0<256?h:256;H[c+32>>2]=N(d,24)+f;H[c+28>>2]=a;H[c+24>>2]=1;H[c>>2]=110672;H[c+20>>2]=b;Ra[H[H[b>>2]+16>>2]](b);H[c+16>>2]=H[H[c+20>>2]+16>>2];Ra[H[H[c>>2]+20>>2]](c);d=d+256|0;if(e>>>0>d>>>0){continue}break}}}function xg(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=O(0),j=0,k=0,l=0,m=0;l=H[a+16>>2];if((i7(b)|0)!=1){b=b>>>1|b;b=b>>>2|b;b=b>>>4|b;b=b>>>8|b;b=(b>>>16|b)+1|0}h=b<<2;i=O(L[a+24>>2]*O(b>>>0));a:{if(i=O(0)){d=~~i>>>0;break a}d=0}k=d;f=k<<2;d=h+f|0;d=(0-d&12)+d|0;c=d;f=d+f|0;if(f){e=H[33808]+12|0;e=Ra[H[H[e>>2]+8>>2]](e,f,20591,14239,372)|0}d=S6(e,255,h);f=c+d|0;h=d+h|0;if(H[a+36>>2]){m=b-1|0;while(1){e=g<<2;j=H[e+H[a+4>>2]>>2];c=j+(j<<15^-1)|0;c=N(c>>>10^c,9);c=c>>>6^c;c=(c<<11^-1)+c|0;c=d+(((c>>>16^c)&m)<<2)|0;H[e+h>>2]=H[c>>2];H[c>>2]=g;H[e+f>>2]=j;g=g+1|0;if(g>>>0>2]){continue}break}}g=H[a>>2];if(g){e=H[33808]+12|0;Ra[H[H[e>>2]+12>>2]](e,g)}H[a+20>>2]=b;H[a+12>>2]=d;H[a>>2]=d;H[a+8>>2]=h;H[a+16>>2]=k;H[a+4>>2]=f;if(H[a+28>>2]==-1){H[a+28>>2]=l}}function eV(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=O(0),f=0,g=O(0),h=0,i=O(0),j=0,k=O(0),l=O(0),m=O(0);h=Oa-16|0;Oa=h;a=H[a+48>>2];a:{if(H[a+148>>2]){f=gV(a,b);i=L[b>>2];e=L[b+4>>2];g=L[b+8>>2];H[h+12>>2]=0;L[h+8>>2]=-g;L[h+4>>2]=-e;L[h>>2]=-i;j=gV(a,h);a=H[a+152>>2];f=a+N(f,12)|0;i=L[f+8>>2];e=L[f>>2];g=L[f+4>>2];a=N(j,12)+a|0;L[c>>2]=O(L[b+8>>2]*L[a+8>>2])+O(O(L[b>>2]*L[a>>2])+O(L[a+4>>2]*L[b+4>>2]));e=O(O(i*L[b+8>>2])+O(O(e*L[b>>2])+O(g*L[b+4>>2])));break a}f=H[a+152>>2];l=L[b+8>>2];m=L[b>>2];i=L[b+4>>2];e=O(O(L[f+8>>2]*l)+O(O(L[f>>2]*m)+O(L[f+4>>2]*i)));b=I[a+156|0];b:{if(b>>>0<2){g=e;break b}a=1;g=e;while(1){j=f+N(a,12)|0;k=O(O(L[j+8>>2]*l)+O(O(L[j>>2]*m)+O(i*L[j+4>>2])));g=g>2]=g}L[d>>2]=e;Oa=h+16|0}function QD(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;if(e){g=H[f+4>>2];k=g&2147483647;a:{if(!k){break a}h=H[f>>2];l=g&3;g=0;if(k-1>>>0>=3){m=k-l|0;while(1){k=i<<2;g=i7(H[(k|12)+h>>2])+(i7(H[(k|8)+h>>2])+(i7(H[(k|4)+h>>2])+(i7(H[h+k>>2])+g|0)|0)|0)|0;i=i+4|0;n=n+4|0;if((m|0)!=(n|0)){continue}break}}if(l){while(1){g=i7(H[(i<<2)+h>>2])+g|0;i=i+1|0;j=j+1|0;if((l|0)!=(j|0)){continue}break}}if(!g){j=0;break a}i=0;g=0;j=0;while(1){m=h;h=H[(i<<2)+c>>2];b:{if(H[m+(h>>>3&536870908)>>2]>>>h&1){h=H[a+4>>2];j=j<<2;Ra[H[H[h>>2]+12>>2]](h,j+b|0,c+j|0,d,g);i=i+1|0;j=i;g=0;break b}i=i+1|0;g=g+1|0}if((e|0)==(i|0)){e=g}else{h=H[f>>2];continue}break}}f=H[a+4>>2];g=b;b=j<<2;Ra[H[H[f>>2]+12>>2]](f,g+b|0,b+c|0,d,e);a=H[a+8>>2];H[a>>2]=H[a>>2]+1}}function gw(a,b,c,d,e){var f=O(0),g=O(0),h=O(0),i=O(0),j=0,k=O(0),l=O(0),m=O(0),n=0,o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=O(0);k=L[e+24>>2];l=L[e+20>>2];m=L[e+16>>2];g=L[e+8>>2];h=L[e+4>>2];i=L[e>>2];n=H[d+72>>2];if(n){while(1){e=N(j,24)+d|0;f=O(O(O(L[e+20>>2]*g)+O(O(L[e+12>>2]*i)+O(L[e+16>>2]*h)))+O(O(L[e+8>>2]*k)+O(O(L[e>>2]*m)+O(L[e+4>>2]*l))));e=(j<<5)+b|0;o=O(o+O(f*L[e+24>>2]));p=O(p+O(f*L[e+20>>2]));q=O(q+O(f*L[e+16>>2]));r=O(r+O(f*L[e+8>>2]));s=O(s+O(L[e+4>>2]*f));t=O(t+O(L[e>>2]*f));j=j+1|0;if((n|0)!=(j|0)){continue}break}}f=L[c+8>>2];u=L[c>>2];v=L[c+4>>2];H[a+28>>2]=0;H[a+12>>2]=0;g=O(g-r);L[a+8>>2]=g;h=O(h-s);L[a+4>>2]=h;i=O(i-t);L[a>>2]=i;L[a+24>>2]=O(k-o)+O(O(u*h)-O(i*v));L[a+20>>2]=O(l-p)+O(O(f*i)-O(g*u));L[a+16>>2]=O(m-q)+O(O(v*g)-O(h*f))}function BJ(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;k=f;m=d;n=b;o=H[a+976>>2]&2147483647;a:{if(!o){break a}k=H[a+972>>2];b:{while(1){j=H[k+(i<<2)>>2];if(j){break b}i=i+1|0;if((o|0)!=(i|0)){continue}break}k=f;break a}p=H[a+312>>2]-1|0;q=H[a+320>>2];r=H[a+332>>2];k=f;while(1){l=f7(j)|i<<5;j=j-1&j;c:{if(j){break c}h=i+1|0;h=h>>>0>o>>>0?h:o;s=H[a+972>>2];while(1){i=i+1|0;if(o>>>0<=i>>>0){j=0;i=h;break c}j=H[(i<<2)+s>>2];if(!j){continue}break}}if((l|0)==-1){break a}h=H[(l>>>q<<2)+r>>2]+N(l&p,80)|0;l=I[h+43|0];d:{if(l&2){if(!(l&16)){H[n>>2]=h;H[n+4>>2]=H[h+12>>2];n=n+8|0;break d}H[k>>2]=h;H[k+4>>2]=H[h+12>>2];F[h+43|0]=l&239;k=k+8|0;break d}H[m>>2]=h;H[m+4>>2]=H[h+12>>2];m=m+8|0}if(j){continue}break}}H[c>>2]=n-b>>3;H[e>>2]=m-d>>3;H[g>>2]=k-f>>3}function xX(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;if((H[a+268>>2]&2147483647)>>>0>>0){e=0;a:{if(!b){break a}d=b<<2;if(!(I[a+256|0]|d>>>0>256)){F[a+256|0]=1;e=a;break a}e=0;if(!d){break a}e=H[33808];f=e+12|0;e=(j=f,k=d,l=Ra[H[H[e>>2]+20>>2]](e)|0?25032:55639,m=13582,n=553,i=H[H[f>>2]+8>>2],Ra[i](j|0,k|0,l|0,m|0,n|0)|0)}f=H[a+260>>2];d=H[a+264>>2];if((d|0)>0){h=e+(d<<2)|0;d=f;g=e;while(1){H[g>>2]=H[d>>2];d=d+4|0;g=g+4|0;if(h>>>0>g>>>0){continue}break}}b:{if(H[a+268>>2]<0){break b}if((a|0)==(f|0)){F[a+256|0]=0;break b}if(!f){break b}d=H[33808]+12|0;Ra[H[H[d>>2]+12>>2]](d,f)}H[a+268>>2]=b;H[a+260>>2]=e}e=H[a+264>>2];if((e|0)<(b|0)){d=H[a+260>>2];f=d+(b<<2)|0;d=d+(e<<2)|0;while(1){H[d>>2]=H[c>>2];d=d+4|0;if(f>>>0>d>>>0){continue}break}}H[a+264>>2]=b}function X5(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;e=Oa-32|0;Oa=e;f=H[a+28>>2];H[e+16>>2]=f;d=H[a+20>>2];H[e+28>>2]=c;H[e+24>>2]=b;b=d-f|0;H[e+20>>2]=b;f=b+c|0;j=2;a:{b:{b=e+16|0;d=Fa(H[a+60>>2],b|0,2,e+12|0)|0;if(d){H[33811]=d;d=-1}else{d=0}c:{if(!d){while(1){d=H[e+12>>2];if((d|0)==(f|0)){break c}if((d|0)<0){break b}g=H[b+4>>2];h=g>>>0>>0;i=(h<<3)+b|0;g=d-(h?g:0)|0;H[i>>2]=g+H[i>>2];i=(h?12:4)+b|0;H[i>>2]=H[i>>2]-g;f=f-d|0;b=h?b+8|0:b;j=j-h|0;d=Fa(H[a+60>>2],b|0,j|0,e+12|0)|0;if(d){H[33811]=d;d=-1}else{d=0}if(!d){continue}break}}if((f|0)!=-1){break b}}b=H[a+44>>2];H[a+28>>2]=b;H[a+20>>2]=b;H[a+16>>2]=b+H[a+48>>2];a=c;break a}H[a+28>>2]=0;H[a+16>>2]=0;H[a+20>>2]=0;H[a>>2]=H[a>>2]|32;a=0;if((j|0)==2){break a}a=c-H[b+4>>2]|0}Oa=e+32|0;return a|0}function RQ(a,b,c,d){var e=0,f=0,g=0,h=0;a:{e=H[a+44>>2];if(e&32768){break a}H[a+44>>2]=e&-98305|32768;e=H[H[a+28>>2]+4>>2];h=I[H[e+44>>2]+9|0]-1>>>0<2?e:0;e=H[H[a+32>>2]+4>>2];e=I[H[e+44>>2]+9|0]-1>>>0<2?e:0;f=H[a+48>>2];g=J[f+2>>1];G[f+2>>1]=g+1;b:{if(!(g?d:1)){break b}d=H[h+100>>2];H[d+152>>2]=H[d+152>>2]+1;if(!e){break b}d=H[e+100>>2];H[d+152>>2]=H[d+152>>2]+1}d=H[a+44>>2];if(!(d&476)){break a}if(d&4){e=J[H[a+48>>2]+2>>1];MQ(a);NQ(a,4,((e|0)==1)<<2,0,b,1,c)}if(d&8){b=H[H[H[a+4>>2]+40>>2]+2168>>2];c=Oa-16|0;Oa=c;H[c+12>>2]=a;H[a+44>>2]=H[a+44>>2]|2097152;d=H[b+20>>2];H[a+52>>2]=d;c:{if(d>>>0>=(H[b+24>>2]&2147483647)>>>0){DI(b+16|0,c+12|0);break c}H[H[b+16>>2]+(d<<2)>>2]=a;H[b+20>>2]=d+1}Oa=c+16|0;return}if(!(d&448)){break a}BI(H[H[H[a+4>>2]+40>>2]+2168>>2],a)}}function XK(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;f=(b<<3)+8|0;if(f){h=H[33808]+12|0;k=Ra[H[H[h>>2]+8>>2]](h,f,20591,4679,742)|0}f=b<<4;if(f){h=H[33808]+12|0;l=Ra[H[H[h>>2]+8>>2]](h,f,20591,4679,743)|0}h=0;f=b<<2;a:{if(!f){f=0;break a}i=H[33808]+12|0;i=Ra[H[H[i>>2]+8>>2]](i,f,20591,4679,744)|0;g=H[33808]+12|0;f=Ra[H[H[g>>2]+8>>2]](g,f,20591,4679,745)|0}H[a+16>>2]=b;H[a+12>>2]=f;H[a+8>>2]=i;H[a+4>>2]=l;H[a>>2]=k;if(b){m=H[c+4>>2];n=H[c+8>>2];o=H[c>>2];while(1){g=h<<2;c=H[g+d>>2];H[g+i>>2]=H[(c<<2)+e>>2];H[f+g>>2]=c;j=(h<<3)+k|0;g=c<<3;c=g+o|0;H[j>>2]=H[c>>2];H[j+4>>2]=H[c+4>>2];c=(h<<4)+l|0;j=g+n|0;H[c>>2]=H[j>>2];H[c+8>>2]=H[j+4>>2];g=g+m|0;H[c+4>>2]=H[g>>2];H[c+12>>2]=H[g+4>>2];h=h+1|0;if((h|0)!=(b|0)){continue}break}}H[(b<<3)+k>>2]=-1;return a}function T5(a){var b=O(0),c=0,d=0,e=0,f=0;c=Oa-16|0;Oa=c;e=(B(a),v(2));d=e&2147483647;a:{if(d>>>0<=1061752794){b=O(1);if(d>>>0<964689920){break a}b=Q5(+a);break a}if(d>>>0<=1081824209){f=+a;if(d>>>0>=1075235812){b=O(-Q5(((e|0)>=0?-3.141592653589793:3.141592653589793)+f));break a}if((e|0)<0){b=R5(f+1.5707963267948966);break a}b=R5(1.5707963267948966-f);break a}if(d>>>0<=1088565717){if(d>>>0>=1085271520){b=Q5(((e|0)>=0?-6.283185307179586:6.283185307179586)+ +a);break a}if((e|0)<0){b=R5(-4.71238898038469-+a);break a}b=R5(+a+-4.71238898038469);break a}b=O(a-a);if(d>>>0>=2139095040){break a}b:{switch(S5(a,c+8|0)&3){case 0:b=Q5(M[c+8>>3]);break a;case 1:b=R5(-M[c+8>>3]);break a;case 2:b=O(-Q5(M[c+8>>3]));break a;default:break b}}b=R5(M[c+8>>3])}a=b;Oa=c+16|0;return a}function DL(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:{if(!b){break a}c=H[33808];d=c+12|0;c=(i=d,j=N(b,48)+131|0,k=Ra[H[H[c>>2]+20>>2]](c)|0?40836:55639,l=13582,m=553,h=H[H[d>>2]+8>>2],Ra[h](i|0,j|0,k|0,l|0,m|0)|0);if(!c){break a}e=c+131&-128;H[e-4>>2]=e-c}c=H[a+4>>2];if((c|0)>0){g=N(c,48)+e|0;d=H[a>>2];c=e;while(1){L[c>>2]=L[d>>2];L[c+4>>2]=L[d+4>>2];L[c+8>>2]=L[d+8>>2];L[c+12>>2]=L[d+12>>2];L[c+16>>2]=L[d+16>>2];L[c+20>>2]=L[d+20>>2];L[c+24>>2]=L[d+24>>2];f=H[d+32>>2];H[c+28>>2]=H[d+28>>2];H[c+32>>2]=f;f=H[d+40>>2];H[c+36>>2]=H[d+36>>2];H[c+40>>2]=f;H[c+44>>2]=H[d+44>>2];d=d+48|0;c=c+48|0;if(g>>>0>c>>>0){continue}break}}b:{if(H[a+8>>2]<0){break b}c=H[a>>2];if(!c){break b}d=H[33808]+12|0;Ra[H[H[d>>2]+12>>2]](d,c-H[c-4>>2]|0)}H[a+8>>2]=b;H[a>>2]=e}function XJ(a,b,c,d){var e=0,f=0,g=0,h=0;if(K[a+320>>2]>>0){MJ(a+316|0,d)}e=H[a+44>>2];f=e+c|0;d=H[a+48>>2];a:{if(f>>>0>d>>>0){d=d<<1;g=f>>>0>1024?f:1024;d=d>>>0>g>>>0?d:g;H[a+48>>2]=d;g=H[a+40>>2];d=d<<2;if(d){h=H[33808]+12|0;d=Ra[H[H[h>>2]+8>>2]](h,d,20591,10647,890)|0}else{d=0}if(e){R6(d,g,e<<2)}if(!g){break a}h=H[33808]+12|0;Ra[H[H[h>>2]+12>>2]](h,g);break a}d=H[a+40>>2]}H[a+44>>2]=f;H[a+40>>2]=d;b:{if(!c){break b}f=c-1|0;a=(e<<2)+d|0;e=c&3;if(e){d=0;while(1){H[a>>2]=H[b>>2]|-2147483648;a=a+4|0;b=b+4|0;c=c-1|0;d=d+1|0;if((e|0)!=(d|0)){continue}break}}if(f>>>0<3){break b}while(1){H[a>>2]=H[b>>2]|-2147483648;H[a+4>>2]=H[b+4>>2]|-2147483648;H[a+8>>2]=H[b+8>>2]|-2147483648;H[a+12>>2]=H[b+12>>2]|-2147483648;a=a+16|0;b=b+16|0;c=c-4|0;if(c){continue}break}}}function jJ(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;c=H[a+8>>2]&2147483647;f=c?c<<1:1;a:{if(!f){break a}c=N(f,20);if(!c){break a}d=H[33808];e=d+12|0;e=(j=e,k=c,l=Ra[H[H[d>>2]+20>>2]](d)|0?22578:55639,m=13582,n=553,i=H[H[e>>2]+8>>2],Ra[i](j|0,k|0,l|0,m|0,n|0)|0)}c=H[a+4>>2];if((c|0)>0){h=N(c,20)+e|0;c=H[a>>2];d=e;while(1){g=H[c+4>>2];H[d>>2]=H[c>>2];H[d+4>>2]=g;H[d+16>>2]=H[c+16>>2];g=H[c+12>>2];H[d+8>>2]=H[c+8>>2];H[d+12>>2]=g;c=c+20|0;d=d+20|0;if(h>>>0>d>>>0){continue}break}c=H[a+4>>2]}d=N(c,20)+e|0;c=H[b+4>>2];H[d>>2]=H[b>>2];H[d+4>>2]=c;H[d+16>>2]=H[b+16>>2];c=H[b+12>>2];H[d+8>>2]=H[b+8>>2];H[d+12>>2]=c;b:{if(H[a+8>>2]<0){break b}c=H[a>>2];if(!c){break b}b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,c)}H[a+8>>2]=f;H[a>>2]=e;H[a+4>>2]=H[a+4>>2]+1}function lg(a,b,c){var d=0,e=0,f=0,g=0,h=0;g=Oa-16|0;Oa=g;f=H[a+4>>2];if(!f){f=Tl(H[33768]);H[a+4>>2]=f}d=H[f+44>>2];if(!((d|0)>=0|H[f+40>>2]!=(d&2147483647))){f=Tl(H[33768]);e=H[a+4>>2];d=H[e+36>>2];e=H[e+40>>2];if(e>>>0>(H[f+44>>2]&2147483647)>>>0){fg(f,e)}H[f+40>>2]=e;h=H[f+40>>2];if((h|0)>0){e=H[f+36>>2];h=e+(h<<3)|0;while(1){F[e|0]=I[d|0];H[e+4>>2]=H[d+4>>2];d=d+8|0;e=e+8|0;if(h>>>0>e>>>0){continue}break}}d=H[a+4>>2];e=H[d+44>>2];a:{if((e|0)<0|!(e&2147483647)){break a}e=H[d+36>>2];if((e|0)==(d|0)){F[d+32|0]=0;break a}if(!e){break a}d=H[33808]+12|0;Ra[H[H[d>>2]+12>>2]](d,e)}H[a+4>>2]=f;d=H[f+44>>2]}H[g+12>>2]=c;F[g+8|0]=b;a=H[f+40>>2];b:{if(a>>>0>=(d&2147483647)>>>0){gg(f,g+8|0);break b}d=H[f+36>>2]+(a<<3)|0;H[d+4>>2]=c;F[d|0]=b;H[f+40>>2]=a+1}Oa=g+16|0}function cu(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=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0);j=L[d>>2];p=L[d+8>>2];r=L[c+24>>2];i=O(r-L[d+24>>2]);l=O(i+i);m=L[c+16>>2];i=O(m-L[d+16>>2]);i=O(i+i);s=L[c+20>>2];n=O(s-L[d+20>>2]);o=O(n+n);n=L[d+4>>2];q=O(j*O(O(p*l)+O(O(j*i)+O(o*n))));k=i;i=L[d+12>>2];k=O(q+O(O(k*O(O(i*i)+O(-.5)))-O(i*O(O(n*l)-O(o*p)))));l=L[a+4>>2];o=O(k-l);b=o<=L[e>>2];a:{if(!b){break a}a=H[g+4096>>2];if(a>>>0>63){break a}H[g+4096>>2]=a+1;a=(a<<6)+g|0;k=m;m=j;j=O(j+j);q=i;i=O(i+i);m=O(O(m*j)+O(O(q*i)+O(-1)));L[a+16>>2]=k-O(l*m);k=O(O(j*p)-O(n*i));L[a+8>>2]=k;i=O(O(p*i)+O(j*n));L[a+4>>2]=i;L[a>>2]=m;H[a+52>>2]=-1;L[a+12>>2]=o;L[a+24>>2]=r-O(l*k);L[a+20>>2]=s-O(l*i)}return b|0}function QN(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;d=Oa-16|0;Oa=d;a:{if(!b){break a}c=H[a+16>>2];f=H[a>>2];e=N(c,f);if(e>>>0>=b>>>0){break a}g=a+12|0;h=N(H[a+4>>2],f);if(!h){while(1){H[d+8>>2]=0;H[d>>2]=0;H[d+4>>2]=0;b:{if((H[a+20>>2]&2147483647)>>>0<=c>>>0){JN(g,d);break b}c=H[a+12>>2]+N(c,12)|0;H[c>>2]=0;H[c+4>>2]=0;H[c+8>>2]=0;H[a+16>>2]=H[a+16>>2]+1}e=e+f|0;if(e>>>0>=b>>>0){break a}c=H[a+16>>2];continue}}while(1){H[d+8>>2]=0;H[d>>2]=0;H[d+4>>2]=0;c=H[33808]+12|0;j=d,k=Ra[H[H[c>>2]+8>>2]](c,h,20591,15520,60)|0,H[j>>2]=k;c=H[a+16>>2];c:{if(c>>>0>=(H[a+20>>2]&2147483647)>>>0){JN(g,d);break c}i=H[d+4>>2];c=H[a+12>>2]+N(c,12)|0;H[c>>2]=H[d>>2];H[c+4>>2]=i;H[c+8>>2]=H[d+8>>2];H[a+16>>2]=H[a+16>>2]+1}e=e+f|0;if(e>>>0>>0){continue}break}}Oa=d+16|0}function Gz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;b=Oa-32|0;Oa=b;Cz(a,c);d=H[c+16>>2];H[b+16>>2]=d+N(H[a+12>>2],112);H[b+20>>2]=d+N(H[a+44>>2],112);H[b+24>>2]=d+N(H[a+76>>2],112);H[b+28>>2]=d+N(H[a+108>>2],112);H[b>>2]=d+N(H[a+16>>2],112);H[b+4>>2]=d+N(H[a+48>>2],112);H[b+8>>2]=d+N(H[a+80>>2],112);H[b+12>>2]=d+N(H[a+112>>2],112);yz(a,c,b+16|0,b);a=H[c+8>>2];if(a>>>0>H[c+12>>2]-4>>>0){d=H[c+28>>2];a=a+H[d>>2]|0;H[d>>2]=a;d=H[c+8>>2];if(d){g=a-d|0;a=0;while(1){e=H[c+4>>2]+(a<<5)|0;f=H[e+4>>2];d=H[c+20>>2]+(a+g<<5)|0;H[d>>2]=H[e>>2];H[d+4>>2]=f;f=H[e+28>>2];H[d+24>>2]=H[e+24>>2];H[d+28>>2]=f;f=H[e+20>>2];H[d+16>>2]=H[e+16>>2];H[d+20>>2]=f;f=H[e+12>>2];H[d+8>>2]=H[e+8>>2];H[d+12>>2]=f;a=a+1|0;if(a>>>0>2]){continue}break}}H[c+8>>2]=0}Oa=b+32|0}function Fz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;b=Oa-32|0;Oa=b;Az(a,c);d=H[c+16>>2];H[b+16>>2]=d+N(H[a+12>>2],112);H[b+20>>2]=d+N(H[a+44>>2],112);H[b+24>>2]=d+N(H[a+76>>2],112);H[b+28>>2]=d+N(H[a+108>>2],112);H[b>>2]=d+N(H[a+16>>2],112);H[b+4>>2]=d+N(H[a+48>>2],112);H[b+8>>2]=d+N(H[a+80>>2],112);H[b+12>>2]=d+N(H[a+112>>2],112);yz(a,c,b+16|0,b);a=H[c+8>>2];if(a>>>0>H[c+12>>2]-4>>>0){d=H[c+28>>2];a=a+H[d>>2]|0;H[d>>2]=a;d=H[c+8>>2];if(d){g=a-d|0;a=0;while(1){e=H[c+4>>2]+(a<<5)|0;f=H[e+4>>2];d=H[c+20>>2]+(a+g<<5)|0;H[d>>2]=H[e>>2];H[d+4>>2]=f;f=H[e+28>>2];H[d+24>>2]=H[e+24>>2];H[d+28>>2]=f;f=H[e+20>>2];H[d+16>>2]=H[e+16>>2];H[d+20>>2]=f;f=H[e+12>>2];H[d+8>>2]=H[e+8>>2];H[d+12>>2]=f;a=a+1|0;if(a>>>0>2]){continue}break}}H[c+8>>2]=0}Oa=b+32|0}function Z5(a){var b=0,c=0,d=0,e=0;b=Oa-16|0;Oa=b;e=(B(a),v(2));c=e&2147483647;a:{if(c>>>0<=1061752794){if(c>>>0<964689920){break a}a=R5(+a);break a}if(c>>>0<=1081824209){d=+a;if(c>>>0<=1075235811){if((e|0)<0){a=O(-Q5(d+1.5707963267948966));break a}a=Q5(d+-1.5707963267948966);break a}a=R5(-(((e|0)>=0?-3.141592653589793:3.141592653589793)+d));break a}if(c>>>0<=1088565717){d=+a;if(c>>>0<=1085271519){if((e|0)<0){a=Q5(d+4.71238898038469);break a}a=O(-Q5(d+-4.71238898038469));break a}a=R5(((e|0)>=0?-6.283185307179586:6.283185307179586)+d);break a}if(c>>>0>=2139095040){a=O(a-a);break a}b:{switch(S5(a,b+8|0)&3){case 0:a=R5(M[b+8>>3]);break a;case 1:a=Q5(M[b+8>>3]);break a;case 2:a=R5(-M[b+8>>3]);break a;default:break b}}a=O(-Q5(M[b+8>>3]))}Oa=b+16|0;return a}function YI(a){var b=0,c=0,d=0,e=0,f=0;b=H[a+32>>2];if(b){while(1){dR(b,0);b=H[b>>2];if(b){continue}break}}b=H[a+28>>2];d=H[a+20>>2];e=H[a+40>>2];c=I[H[a+44>>2]+9|0]-1|0;a:{b:{if(c>>>0<=1){if(!b){break a}if(K[a+152>>2]>=4294967294){break b}while(1){b=b-1|0;c:{d:{e:{a=H[d>>2];switch(I[a+20|0]){case 1:break d;case 0:break e;default:break c}}LQ(a-4|0);break c}G[a+52>>1]=J[a+52>>1]|32;c=I[a+21|0];if(c&32){break c}a=a-4|0;F[a+25|0]=c|32;ZN(e,a+4|0)}d=d+4|0;if(b){continue}break}break a}if(!b){break a}}c=c>>>0<2;while(1){b=b-1|0;f:{g:{h:{a=H[d>>2];switch(I[a+20|0]){case 0:break g;case 1:break h;default:break f}}G[a+52>>1]=J[a+52>>1]|32;f=I[a+21|0];if(f&32){break f}a=a-4|0;F[a+25|0]=f|32;ZN(e,a+4|0);break f}a=a-4|0;LQ(a);VQ(a,c)}d=d+4|0;if(b){continue}break}}}function iA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;b=Oa-32|0;Oa=b;eA(a);d=H[c+16>>2];H[b+16>>2]=d+N(H[a+12>>2],112);H[b+20>>2]=d+N(H[a+44>>2],112);H[b+24>>2]=d+N(H[a+76>>2],112);H[b+28>>2]=d+N(H[a+108>>2],112);H[b>>2]=d+N(H[a+16>>2],112);H[b+4>>2]=d+N(H[a+48>>2],112);H[b+8>>2]=d+N(H[a+80>>2],112);H[b+12>>2]=d+N(H[a+112>>2],112);aA(a,c,b+16|0,b);a=H[c+8>>2];if(a>>>0>H[c+12>>2]-4>>>0){d=H[c+28>>2];a=a+H[d>>2]|0;H[d>>2]=a;d=H[c+8>>2];if(d){g=a-d|0;a=0;while(1){e=H[c+4>>2]+(a<<5)|0;f=H[e+4>>2];d=H[c+20>>2]+(a+g<<5)|0;H[d>>2]=H[e>>2];H[d+4>>2]=f;f=H[e+28>>2];H[d+24>>2]=H[e+24>>2];H[d+28>>2]=f;f=H[e+20>>2];H[d+16>>2]=H[e+16>>2];H[d+20>>2]=f;f=H[e+12>>2];H[d+8>>2]=H[e+8>>2];H[d+12>>2]=f;a=a+1|0;if(a>>>0>2]){continue}break}}H[c+8>>2]=0}Oa=b+32|0}function hA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;b=Oa-32|0;Oa=b;cA(a);d=H[c+16>>2];H[b+16>>2]=d+N(H[a+12>>2],112);H[b+20>>2]=d+N(H[a+44>>2],112);H[b+24>>2]=d+N(H[a+76>>2],112);H[b+28>>2]=d+N(H[a+108>>2],112);H[b>>2]=d+N(H[a+16>>2],112);H[b+4>>2]=d+N(H[a+48>>2],112);H[b+8>>2]=d+N(H[a+80>>2],112);H[b+12>>2]=d+N(H[a+112>>2],112);aA(a,c,b+16|0,b);a=H[c+8>>2];if(a>>>0>H[c+12>>2]-4>>>0){d=H[c+28>>2];a=a+H[d>>2]|0;H[d>>2]=a;d=H[c+8>>2];if(d){g=a-d|0;a=0;while(1){e=H[c+4>>2]+(a<<5)|0;f=H[e+4>>2];d=H[c+20>>2]+(a+g<<5)|0;H[d>>2]=H[e>>2];H[d+4>>2]=f;f=H[e+28>>2];H[d+24>>2]=H[e+24>>2];H[d+28>>2]=f;f=H[e+20>>2];H[d+16>>2]=H[e+16>>2];H[d+20>>2]=f;f=H[e+12>>2];H[d+8>>2]=H[e+8>>2];H[d+12>>2]=f;a=a+1|0;if(a>>>0>2]){continue}break}}H[c+8>>2]=0}Oa=b+32|0}function ts(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;a:{b:{c:{d:{e:{c=a+116|0;switch(H[c>>2]-4|0){case 1:break c;case 2:break d;case 0:break e;default:break a}}d=(F[a+36|0]&1?H[a+40>>2]- -64|0:c)+32|0;break b}d=(F[a+36|0]&1?H[a+40>>2]- -64|0:c)+4|0;break b}d=(F[a+36|0]&1?H[a+40>>2]- -64|0:c)+36|0}c=H[d>>2];if(!c){break a}Ra[H[H[b>>2]+8>>2]](b,c)}if(I[a+36|0]&2){c=J[H[a+40>>2]+124>>1]}else{d=H[a+116>>2];c=1;f:{if(d-7>>>0<4294967294){break f}c=J[a+168>>1];if((d|0)==5){break f}c=J[a+148>>1]}}e=c&65535;if(e){f=a+48|0;c=0;while(1){g=H[33772];g:{if(I[a+36|0]&2){d=H[a+40>>2];d=J[d+124>>1]==1?d+120|0:H[H[a+32>>2]+4856>>2]+(H[d+120>>2]<<1)|0;break g}d=EQ(f)}Ra[H[H[b>>2]+8>>2]](b,H[H[g+40>>2]+(J[d+(c<<1)>>1]<<2)>>2]);c=c+1|0;if((e|0)!=(c|0)){continue}break}}}function QP(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0;b=H[a+20>>2];a=H[a+28>>2];c=H[a+976>>2];d=H[a+1004>>2];Ra[H[H[d>>2]+16>>2]](d);c=c+24|0;Kx(c);Ix(c);H[a+1172>>2]=0;H[a+1160>>2]=0;H[H[a+976>>2]+1788>>2]=H[c+172>>2];H[a+3140>>2]=b;H[a+3144>>2]=1;if(b){Ra[H[H[b>>2]+16>>2]](b);H[a+3136>>2]=H[H[a+3140>>2]+16>>2]}c=0;d=H[a+36>>2];if(d){f=a+3120|0;g=H[a+24>>2];h=H[H[a+976>>2]+1156>>2];while(1){b=yq(h,40);e=H[a+20>>2];i=H[a+16>>2];H[b+24>>2]=0;H[b+16>>2]=0;H[b+8>>2]=i;H[b+12>>2]=e;e=d-c|0;H[b+32>>2]=e>>>0<1024?e:1024;H[b+28>>2]=(c<<2)+g;H[b>>2]=119804;H[b+20>>2]=f;H[b+24>>2]=1;Ra[H[H[a+3120>>2]+16>>2]](f);H[b+16>>2]=H[H[b+20>>2]+16>>2];Ra[H[H[b>>2]+20>>2]](b);c=c+1024|0;if(d>>>0>c>>>0){continue}break}}b=H[a+3136>>2];Ra[H[H[b>>2]+72>>2]](b,a+3120|0)}function pT(a){a=a|0;var b=0,c=0;H[a>>2]=125172;a:{if(!H[a+480>>2]){break a}b=H[a+424>>2];if(!b){break a}Ra[H[H[b>>2]>>2]](b)}b=H[a+516>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b:{if(!I[a+244|0]){break b}b=H[a+240>>2];if(!b){break b}dT(H[a+248>>2],b)}H[a+240>>2]=0;c:{if(!I[a+256|0]){break c}b=H[a+252>>2];if(!b){break c}dT(H[a+260>>2],b)}H[a+252>>2]=0;b=H[a+128>>2];d:{if((b|0)<0|!(b&2147483647)){break d}b=H[a+120>>2];if(!b){break d}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+116>>2];e:{if((b|0)<0|!(b&2147483647)){break e}b=H[a+108>>2];if(!b){break e}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+104>>2];f:{if((b|0)<0|!(b&2147483647)){break f}b=H[a+96>>2];if(!b){break f}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}return a|0}function dU(a,b,c,d){var e=O(0),f=O(0),g=0,h=O(0),i=O(0),j=O(0),k=O(0);g=Oa-32|0;Oa=g;aU(g+8|0,c,d,O(1));e=L[g+24>>2];f=L[g+20>>2];h=L[g+8>>2];i=L[g+12>>2];j=L[g+16>>2];k=L[g+28>>2];L[a+8>>2]=O(j+k)*O(.5);L[a+4>>2]=O(i+e)*O(.5);L[a>>2]=O(h+f)*O(.5);L[b+8>>2]=O(k-j)*O(.5);L[b+4>>2]=O(e-i)*O(.5);L[b>>2]=O(f-h)*O(.5);e=O(3.4028234663852886e38);a:{b:{switch(H[c>>2]+1|0){case 1:e=O(L[c+4>>2]*O(.75));break a;case 3:e=O(L[c+4>>2]*O(.75));break a;case 4:e=L[c+4>>2];f=L[c+8>>2];e=e>2];e=O((e>2];f=L[c+4>>2];h=L[c+8>>2];f=f>2]- -64>>2]*(e>2];i=L[b+56>>2];j=L[b+52>>2];k=L[b+72>>2];r=b- -64|0;l=L[r>>2];m=L[b+68>>2];n=L[b+88>>2];o=L[b+80>>2];p=L[b+84>>2];q=L[b+48>>2];f=L[c+8>>2];g=L[c>>2];h=L[c+4>>2];H[e+12>>2]=0;L[e+8>>2]=O(n*f)+O(O(o*g)+O(h*p));L[e+4>>2]=O(k*f)+O(O(l*g)+O(h*m));L[e>>2]=O(i*f)+O(O(q*g)+O(h*j));c=EU(b,e);H[d>>2]=c;i=L[r>>2];j=L[b+80>>2];k=L[b+84>>2];l=L[b+52>>2];m=L[b+68>>2];n=L[b+88>>2];c=H[b+152>>2]+N(c,12)|0;f=L[c+8>>2];o=L[b+56>>2];g=L[c>>2];p=L[b+72>>2];h=L[c+4>>2];q=L[b+48>>2];H[a+12>>2]=0;L[a+8>>2]=O(n*f)+O(O(o*g)+O(h*p));L[a+4>>2]=O(k*f)+O(O(l*g)+O(h*m));L[a>>2]=O(j*f)+O(O(q*g)+O(h*i));Oa=e+16|0}function Jt(a,b,c){var d=0,e=0,f=0,g=0,h=0;d=Oa-288|0;Oa=d;H[b+268>>2]=H[b+268>>2]&-100663297;a:{if(!(I[(H[((H[b+4>>2]>>>22&60)+76348|0)+12>>2]+b|0)+8|0]&8)){F[d+264|0]=1;H[d+272>>2]=0;H[d+276>>2]=64;e=d+8|0;H[d+268>>2]=e;f=a;a=H[a+2416>>2];MO(f,b+16|0,a?a+272|0:e,c);f=H[(a?a+536|0:d+272|0)>>2];if(f){g=H[b>>2]+4816|0;h=H[(a?a+532|0:d+268|0)>>2];c=0;while(1){a=H[(c<<2)+h>>2];b=a-16|0;e=a-12|0;a=H[e>>2];if(a&268435456){au(b);H[d+284>>2]=b;Pf(g,d+284|0);a=H[e>>2]&-268435457;H[e>>2]=a}if((a&251658240)==16777216){H[e>>2]=a&1073741823;H[b>>2]=0}et(b);c=c+1|0;if((f|0)!=(c|0)){continue}break}}a=H[d+276>>2];if((a|0)<0|!(a&2147483647)){break a}a=H[d+268>>2];if((a|0)==(d+8|0)|!a){break a}b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,a);break a}Kt(b)}Oa=d+288|0}function GD(a){var b=0,c=0;b=H[a+124>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+72>>2];if(b){Ra[H[H[b>>2]+52>>2]](b)}H[a+72>>2]=0;b=H[a+76>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+36>>2];if(b){Ra[H[H[b>>2]+56>>2]](b)}H[a+36>>2]=0;b=H[a+60>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=H[a+52>>2];if(!b){break a}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+40>>2];if(!(!b|H[a+44>>2]<0)){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}H[a+40>>2]=0;b=H[a>>2];if(b){Ra[H[H[b>>2]+56>>2]](b)}H[a>>2]=0;b=H[a+24>>2];b:{if((b|0)<0|!(b&2147483647)){break b}b=H[a+16>>2];if(!b){break b}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+4>>2];if(!(!b|H[a+8>>2]<0)){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}H[a+4>>2]=0}function fl(a,b,c){a=a|0;b=b|0;c=O(c);var d=0,e=0;a:{b:{c:{d:{a=a+8|0;e=H[a+4>>2];switch((e>>>30|0)-2|0){case 1:break b;case 0:break d;default:break c}}if(I[H[a>>2]+4785|0]){break b}}kE(a+12|0,b,c);break a}d=H[a+8>>2];e:{f:{if(!(e&4194304)){if(!d){d=Tt(H[a>>2],e>>>24&15);H[a+8>>2]=d;if(!d){break e}}L[d+300>>2]=L[a+216>>2];L[d+324>>2]=L[a+240>>2];L[d+304>>2]=L[a+220>>2];L[d+328>>2]=L[a+244>>2];L[d+308>>2]=L[a+224>>2];L[d+332>>2]=L[a+248>>2];L[d+312>>2]=L[a+228>>2];L[d+336>>2]=L[a+252>>2];L[d+316>>2]=L[a+232>>2];L[d+340>>2]=L[a+256>>2];L[d+320>>2]=L[a+236>>2];L[d+344>>2]=L[a+260>>2];break f}if(d){break f}d=Tt(H[a>>2],I[a+7|0]&15);H[a+8>>2]=d}L[((b<<2)+d|0)+324>>2]=c;$t(H[a>>2],a);H[a+4>>2]=H[a+4>>2]|4194304;break a}Tt(H[a>>2],I[a+7|0]&15);X()}}function el(a,b,c){a=a|0;b=b|0;c=O(c);var d=0,e=0;a:{b:{c:{d:{a=a+8|0;e=H[a+4>>2];switch((e>>>30|0)-2|0){case 1:break b;case 0:break d;default:break c}}if(I[H[a>>2]+4785|0]){break b}}jE(a+12|0,b,c);break a}d=H[a+8>>2];e:{f:{if(!(e&4194304)){if(!d){d=Tt(H[a>>2],e>>>24&15);H[a+8>>2]=d;if(!d){break e}}L[d+300>>2]=L[a+216>>2];L[d+324>>2]=L[a+240>>2];L[d+304>>2]=L[a+220>>2];L[d+328>>2]=L[a+244>>2];L[d+308>>2]=L[a+224>>2];L[d+332>>2]=L[a+248>>2];L[d+312>>2]=L[a+228>>2];L[d+336>>2]=L[a+252>>2];L[d+316>>2]=L[a+232>>2];L[d+340>>2]=L[a+256>>2];L[d+320>>2]=L[a+236>>2];L[d+344>>2]=L[a+260>>2];break f}if(d){break f}d=Tt(H[a>>2],I[a+7|0]&15);H[a+8>>2]=d}L[((b<<2)+d|0)+300>>2]=c;$t(H[a>>2],a);H[a+4>>2]=H[a+4>>2]|4194304;break a}Tt(H[a>>2],I[a+7|0]&15);X()}}function SQ(a,b,c,d){var e=0,f=0;e=H[a+44>>2];f=0;a:{if(!(e&32768)){break a}b:{if(!(e&476)){break b}e=(e&524288?272:16)&e;if(e){f=J[H[a+48>>2]+2>>1];MQ(a);NQ(a,e,((f|0)==1)<<3,1,b,0,c)}b=H[H[a+48>>2]+16>>2];if(!(!b|H[b+12>>2]!=H[H[H[a+4>>2]+40>>2]+1088>>2])){G[b+10>>1]=J[b+10>>1]|16}e=H[a+44>>2];if(!(e&10485760)){break b}b=H[H[H[a+4>>2]+40>>2]+2168>>2];c:{if(e&8388608){CI(b,a);break c}AI(b,a)}e=H[a+44>>2]&-1572865}H[a+44>>2]=e&-98305|65536;b=H[H[a+28>>2]+4>>2];c=I[H[b+44>>2]+9|0]-1>>>0<2?b:0;b=H[H[a+32>>2]+4>>2];b=I[H[b+44>>2]+9|0]-1>>>0<2?b:0;e=H[a+48>>2];a=J[e+2>>1]-1|0;G[e+2>>1]=a;d:{if(a&65535?d:1){a=H[c+100>>2];H[a+152>>2]=H[a+152>>2]-1;if(!b){break d}a=H[b+100>>2];H[a+152>>2]=H[a+152>>2]-1;return 1}f=1;if(b){break a}}qG(c);f=0}return f}function OB(a){var b=0,c=0,d=O(0),e=O(0),f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0);a:{b=H[a+32>>2];if(!b){break a}d=L[a+8>>2];e=L[a+4>>2];f=L[a>>2];while(1){c=a;a=b;b:{if(L[a>>2]>f|L[a+4>>2]>e|(L[a+8>>2]>d|L[c+16>>2]>L[a+16>>2])){break b}if(L[c+20>>2]>L[a+20>>2]){break b}if(!(L[c+24>>2]>L[a+24>>2])){break a}}c=H[a+40>>2];f=L[c>>2];e=L[c+4>>2];d=L[c+8>>2];b=H[a+36>>2];g=L[b>>2];h=L[b+4>>2];i=L[b+8>>2];j=L[b+12>>2];k=L[c+12>>2];L[a+12>>2]=ji?i:d;L[a+8>>2]=d;e=e>h?h:e;L[a+4>>2]=e;f=f>g?g:f;L[a>>2]=f;g=L[c+16>>2];h=L[c+20>>2];i=L[c+24>>2];j=L[b+16>>2];k=L[b+20>>2];l=L[b+24>>2];m=L[b+28>>2];n=L[c+28>>2];L[a+28>>2]=m>n?m:n;L[a+24>>2]=i>2]=h>2]=g>2];if(b){continue}break}}} -function xM(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;a:{if(J[b+68>>1]<=1){g=H[c+4624>>2];if(!g){break a}c=J[b+34>>1];a=J[a+34>>1];b=0;if(g-1>>>0>=3){i=g&-4;while(1){f=b<<2;e=f+d|0;G[e+2>>1]=c;G[e>>1]=a;e=(f|4)+d|0;G[e+2>>1]=c;G[e>>1]=a;e=(f|8)+d|0;G[e+2>>1]=c;G[e>>1]=a;f=(f|12)+d|0;G[f+2>>1]=c;G[f>>1]=a;b=b+4|0;j=j+4|0;if((i|0)!=(j|0)){continue}break}}g=g&3;if(!g){break a}while(1){f=(b<<2)+d|0;G[f+2>>1]=c;G[f>>1]=a;b=b+1|0;h=h+1|0;if((g|0)!=(h|0)){continue}break}break a}g=H[c+4624>>2];if(!g){break a}f=H[b- -64>>2];i=H[H[b+60>>2]+44>>2];a=J[a+34>>1];b=0;while(1){e=(b<<2)+d|0;G[e>>1]=a;h=e;e=H[((b<<6)+c|0)+580>>2];G[h+2>>1]=J[f+((I[(i+(e<<1&-4)|0)+(e&1?3:2)|0]&127)<<1)>>1];b=b+1|0;if((g|0)!=(b|0)){continue}break}}return 1}function ep(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;if((H[a+204>>2]&2147483647)>>>0>>0){d=0;a:{if(!b){break a}c=N(b,24);if(!(I[a+192|0]|c>>>0>192)){F[a+192|0]=1;d=a;break a}d=0;if(!c){break a}e=H[33808];d=e+12|0;d=(i=d,j=c,k=Ra[H[H[e>>2]+20>>2]](e)|0?47316:55639,l=13582,m=553,h=H[H[d>>2]+8>>2],Ra[h](i|0,j|0,k|0,l|0,m|0)|0)}e=H[a+196>>2];c=H[a+200>>2];if((c|0)>0){g=d+N(c,24)|0;f=e;c=d;while(1){L[c>>2]=L[f>>2];L[c+4>>2]=L[f+4>>2];L[c+8>>2]=L[f+8>>2];L[c+12>>2]=L[f+12>>2];L[c+16>>2]=L[f+16>>2];L[c+20>>2]=L[f+20>>2];f=f+24|0;c=c+24|0;if(g>>>0>c>>>0){continue}break}}b:{if(H[a+204>>2]<0){break b}if((a|0)==(e|0)){F[a+192|0]=0;break b}if(!e){break b}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,e)}H[a+204>>2]=b;H[a+196>>2]=d}H[a+200>>2]=b}function vN(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;e=H[a+312>>2];h=H[e+964>>2];d=h&2147483647;a:{if(!d){break a}g=H[e+960>>2];a=0;while(1){b=H[g+(a<<2)>>2];if(!b){a=a+1|0;if((d|0)!=(a|0)){continue}break a}break}f=f7(b)|a<<5;c=b&b-1;b:{if(c){break b}b=a+1|0;b=b>>>0>d>>>0?b:d;while(1){a=a+1|0;if(d>>>0<=a>>>0){c=0;a=b;break b}c=H[g+(a<<2)>>2];if(!c){continue}break}}if((f|0)==-1){break a}g=H[e+312>>2]-1|0;i=H[e+320>>2];j=H[e+332>>2];while(1){b=H[(f>>>i<<2)+j>>2]+N(f&g,80)|0;H[b+32>>2]=0;H[b+8>>2]=H[b+8>>2]&-5;if(!c){break a}f=f7(c)|a<<5;c=c-1&c;c:{if(c){break c}b=a+1|0;b=b>>>0>d>>>0?b:d;while(1){a=a+1|0;if(d>>>0<=a>>>0){c=0;a=b;break c}c=H[H[e+960>>2]+(a<<2)>>2];if(!c){continue}break}}if((f|0)!=-1){continue}break}}S6(H[e+960>>2],0,h<<2)}function tF(a){var b=0,c=0;b=H[a>>2];if(b){c=H[a+4>>2];a:{if(H[b+24>>2]==1){c=H[c+2400>>2];break a}c=H[c+2404>>2]}Ra[H[H[b>>2]>>2]](b)|0;H[c+280>>2]=H[c+280>>2]-1;H[b>>2]=H[c+288>>2];H[c+288>>2]=b;ZE(H[H[a+4>>2]+1e3>>2],H[a+48>>2]);H[H[a+8>>2]>>2]=0}b=H[a+60>>2];b:{if((b|0)<0|!(b&2147483647)){break b}b=H[a+52>>2];if(!b){break b}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}b=H[a+44>>2];c:{if((b|0)<0|!(b&2147483647)){break c}b=H[a+36>>2];if(!b){break c}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}b=H[a+32>>2];d:{if((b|0)<0|!(b&2147483647)){break d}b=H[a+24>>2];if(!b){break d}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}b=H[a+20>>2];e:{if((b|0)<0|!(b&2147483647)){break e}b=H[a+12>>2];if(!b){break e}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}return a}function lA(a,b){var c=0,d=0;H[a+11824>>2]=b;H[a>>2]=0;H[a+12132>>2]=0;H[a+12120>>2]=0;H[a+12112>>2]=0;H[a+12116>>2]=0;H[a+12104>>2]=0;H[a+12096>>2]=0;H[a+12088>>2]=0;H[a+12092>>2]=0;H[a+11876>>2]=0;H[a+11880>>2]=0;H[a+11868>>2]=0;H[a+11852>>2]=b;H[a+11892>>2]=0;H[a+11896>>2]=0;c=a+11828|0;H[c>>2]=0;H[c+4>>2]=0;c=a+11836|0;H[c>>2]=0;H[c+4>>2]=0;H[a+11844>>2]=0;c=a+11856|0;H[c>>2]=0;H[c+4>>2]=0;H[a+11848>>2]=b;b=a+11900|0;H[b>>2]=0;H[b+4>>2]=0;c=a+11908|0;H[c>>2]=0;H[c+4>>2]=0;c=a+11916|0;H[c>>2]=0;H[c+4>>2]=0;H[a+11924>>2]=0;S6(a+11976|0,0,96);d=a+12164|0;H[d>>2]=0;H[d+4>>2]=0;d=a+12156|0;H[d>>2]=0;H[d+4>>2]=0;d=a+12148|0;H[d>>2]=0;H[d+4>>2]=0;H[a+12140>>2]=0;H[a+12144>>2]=0;Dv(c,512);if(!(H[b>>2]&2147483520)){Dv(a+11892|0,128)}return a}function cO(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;f=Oa-48|0;Oa=f;h=f+8|0;b=H[H[a+976>>2]+1024>>2];Ra[H[H[b>>2]+84>>2]](h,b);j=(H[a+2360>>2]&8)>>>3|0;b=Oa-32|0;Oa=b;g=H[a+2168>>2];c=H[H[g>>2]+2188>>2];a:{if(!c){break a}G[b+24>>1]=0;G[b+16>>1]=0;if(!(Ra[H[H[c>>2]+8>>2]](c,b+28|0,b+16|0,b+24|0)|0)){break a}while(1){i=H[b+28>>2];e=H[H[H[g+108>>2]>>2]+(i<<2)>>2];d=J[b+24>>1];if((d&3)==3){d=d&65534;G[b+24>>1]=d}G[b+8>>1]=d;H[b+12>>2]=i;G[b+10>>1]=J[b+16>>1];if(!((zI(g,e,b+8|0,1,h,j)|0)!=(e|0)|I[e+24|0])){TQ(e,1)}if(Ra[H[H[c>>2]+8>>2]](c,b+28|0,b+16|0,b+24|0)|0){continue}break}}Oa=b+32|0;b=H[a+2168>>2];H[b+28>>2]=H[b+20>>2];b=H[a+1012>>2];Ra[H[H[b>>2]+40>>2]](b);H[a+1092>>2]=H[a+1092>>2]+1;H[a+1088>>2]=H[a+1088>>2]+1&2147483647;Oa=f+48|0}function SE(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;c=H[a+8>>2]&2147483647;f=c?c<<1:1;a:{if(!f){break a}c=f<<4;if(!c){break a}e=H[33808];d=e+12|0;e=(j=d,k=c,l=Ra[H[H[e>>2]+20>>2]](e)|0?36180:55639,m=13582,n=553,i=H[H[d>>2]+8>>2],Ra[i](j|0,k|0,l|0,m|0,n|0)|0)}c=H[a+4>>2];if((c|0)>0){h=(c<<4)+e|0;d=H[a>>2];c=e;while(1){g=H[d+4>>2];H[c>>2]=H[d>>2];H[c+4>>2]=g;g=H[d+12>>2];H[c+8>>2]=H[d+8>>2];H[c+12>>2]=g;d=d+16|0;c=c+16|0;if(h>>>0>c>>>0){continue}break}c=H[a+4>>2]}d=H[b+4>>2];c=(c<<4)+e|0;H[c>>2]=H[b>>2];H[c+4>>2]=d;d=H[b+12>>2];H[c+8>>2]=H[b+8>>2];H[c+12>>2]=d;b:{if(H[a+8>>2]<0){break b}b=H[a>>2];if(!b){break b}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}H[a+8>>2]=f;H[a>>2]=e;b=a;a=H[a+4>>2];H[b+4>>2]=a+1;return(a<<4)+e|0}function jM(a){a=a|0;var b=0,c=0,d=0,e=O(0),f=O(0),g=0,h=0,i=O(0),j=O(0),k=O(0),l=O(0);c=H[a+48>>2];e=L[c+56>>2];f=L[c+60>>2];i=L[c+52>>2];j=L[c+88>>2];k=L[c+84>>2];l=L[c+100>>2];d=H[c+368>>2];b=H[d>>2];if(b){H[d>>2]=H[b>>2]}if(!b){b=H[33808];d=Ra[H[H[b>>2]+20>>2]](b)|0?23054:55639;d=Ra[H[H[b+12>>2]+8>>2]](b+12|0,12195,d,16202,82)|0;b=d+19&-16;H[b-4>>2]=b-d;b=lA(b,H[c+372>>2])}c=b+11856|0;H[c>>2]=0;H[c+4>>2]=0;if(H[a+32>>2]){e=e>f?f:e;c=0;while(1){g=H[H[a+28>>2]+(c<<2)>>2];d=H[a+56>>2];h=H[a+48>>2];Ra[H[H[g>>2]+148>>2]](g,L[d+92>>2],i,L[d+96>>2],e,H[a+52>>2],b,l,k,j,H[a+36>>2],H[a+40>>2],H[a+44>>2]+11836|0,H[h+168>>2],H[d+80>>2],L[h+612>>2]);c=c+1|0;if(c>>>0>2]){continue}break}}a=H[H[a+48>>2]+368>>2];H[b>>2]=H[a>>2];H[a>>2]=b}function u1(a,b){var c=0,d=O(0),e=O(0),f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0);c=Oa-32|0;Oa=c;a:{if(!b){H[a+16>>2]=0;H[a+20>>2]=0;H[a+8>>2]=0;H[a+12>>2]=1065353216;H[a>>2]=0;H[a+4>>2]=0;H[a+24>>2]=0;break a}b:{if((Ra[H[H[b>>2]+24>>2]](b)|0)!=1){if((Ra[H[H[b>>2]+24>>2]](b)|0)!=2){break b}}Ra[H[H[b>>2]+112>>2]](a,b);break a}Ra[H[H[b>>2]+76>>2]](c,b);d=L[c+20>>2];e=L[c+24>>2];f=L[c+16>>2];h=L[c>>2];i=L[c+4>>2];j=L[c+8>>2];g=L[c+12>>2];L[a+12>>2]=g;L[a+8>>2]=-j;L[a+4>>2]=-i;L[a>>2]=-h;e=O(e*O(-2));f=O(f*O(-2));d=O(d*O(-2));k=O(O(j*e)+O(O(h*f)+O(i*d)));l=O(O(g*g)+O(-.5));L[a+24>>2]=O(j*k)+O(O(e*l)-O(g*O(O(h*d)-O(f*i))));L[a+20>>2]=O(i*k)+O(O(d*l)-O(g*O(O(j*f)-O(e*h))));L[a+16>>2]=O(h*k)+O(O(f*l)-O(g*O(O(i*e)-O(d*j))))}Oa=c+32|0}function YX(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p){var q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=0;t=L[d+12>>2];q=L[d+8>>2];r=L[d>>2];s=L[d+4>>2];u=O(t+O(O(k*q)+O(O(i*r)+O(s*j))));a:{if(O(u*O(t+O(O(n*q)+O(O(l*r)+O(s*m)))))>O(0)){break a}n=O(n-k);l=O(l-i);m=O(m-j);q=O(O(q*n)+O(O(r*l)+O(m*s)));if(q==O(0)){break a}r=k;k=O(u/q);L[p+8>>2]=r-O(n*k);L[p+4>>2]=j-O(m*k);L[p>>2]=i-O(l*k);d=e<<2;e=f<<2;g=O(O(O(L[d+c>>2]*O(L[e+p>>2]-L[a+e>>2]))-O(O(L[d+p>>2]-L[a+d>>2])*L[c+e>>2]))*g);L[o>>2]=g;if(g>2];j=L[h+4>>2];i=O(L[p>>2]-O(g*L[h>>2]));L[p>>2]=i;j=O(L[p+4>>2]-O(g*j));L[p+4>>2]=j;g=O(L[p+8>>2]-O(g*k));L[p+8>>2]=g;v=O(O(O(L[a+8>>2]-g)*O(L[b+8>>2]-g))+O(O(O(L[a>>2]-i)*O(L[b>>2]-i))+O(O(L[a+4>>2]-j)*O(L[b+4>>2]-j))))>2];r=L[d+8>>2];s=L[d>>2];t=L[d+4>>2];v=O(u+O(O(k*r)+O(O(i*s)+O(t*j))));a:{if(O(v*O(u+O(O(n*r)+O(O(l*s)+O(t*m)))))>O(0)){break a}n=O(n-k);l=O(l-i);m=O(m-j);r=O(O(r*n)+O(O(s*l)+O(m*t)));if(r==O(0)){break a}s=k;k=O(v/r);L[p+8>>2]=s-O(n*k);L[p+4>>2]=j-O(m*k);L[p>>2]=i-O(l*k);d=e<<2;e=f<<2;g=O(O(O(L[d+c>>2]*O(L[e+p>>2]-L[a+e>>2]))-O(O(L[d+p>>2]-L[a+d>>2])*L[c+e>>2]))*g);L[o>>2]=g;if(g>2];j=L[h+4>>2];i=O(L[p>>2]-O(g*L[h>>2]));L[p>>2]=i;j=O(L[p+4>>2]-O(g*j));L[p+4>>2]=j;g=O(L[p+8>>2]-O(g*k));L[p+8>>2]=g;w=O(O(O(L[a+8>>2]-g)*O(L[b+8>>2]-g))+O(O(O(L[a>>2]-i)*O(L[b>>2]-i))+O(O(L[a+4>>2]-j)*O(L[b+4>>2]-j))))>2];h=L[b+56>>2];i=L[b+52>>2];j=L[b+72>>2];q=b- -64|0;k=L[q>>2];l=L[b+68>>2];m=L[b+88>>2];n=L[b+80>>2];o=L[b+84>>2];p=L[b+48>>2];e=L[c+8>>2];f=L[c>>2];g=L[c+4>>2];H[d+12>>2]=0;L[d+8>>2]=O(m*e)+O(O(n*f)+O(g*o));L[d+4>>2]=O(j*e)+O(O(k*f)+O(g*l));L[d>>2]=O(h*e)+O(O(p*f)+O(g*i));c=EU(b,d);h=L[q>>2];i=L[b+80>>2];j=L[b+84>>2];k=L[b+52>>2];l=L[b+68>>2];m=L[b+88>>2];c=H[b+152>>2]+N(c,12)|0;e=L[c+8>>2];n=L[b+56>>2];f=L[c>>2];o=L[b+72>>2];g=L[c+4>>2];p=L[b+48>>2];H[a+12>>2]=0;L[a+8>>2]=O(m*e)+O(O(n*f)+O(g*o));L[a+4>>2]=O(j*e)+O(O(k*f)+O(g*l));L[a>>2]=O(i*e)+O(O(p*f)+O(g*h));Oa=d+16|0}function eR(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;e=Oa-16|0;Oa=e;c=H[a+4>>2];f=I[H[c+44>>2]+9|0]-1>>>0<2?c:0;if(f){d=K[f+152>>2]>4294967293}else{d=1}g=H[c+40>>2];h=H[c+28>>2];c=H[c+20>>2];H[e+8>>2]=a;H[e>>2]=c;H[e+4>>2]=c+(h<<2);c=XH(e);a:{if(!c){break a}if(d){f=(f|0)!=0;while(1){d=c+4|0;b:{c:{switch(I[c+24|0]){case 1:G[d+52>>1]=J[d+52>>1]|32;c=I[d+21|0];if(c&32){break b}d=d-4|0;F[d+25|0]=c|32;ZN(g,d+4|0);break b;case 0:break c;default:break b}}d=d-4|0;LQ(d);VQ(d,f)}c=XH(e);if(c){continue}break}break a}while(1){d=c+4|0;d:{e:{switch(I[c+24|0]){case 0:LQ(d-4|0);break d;case 1:break e;default:break d}}G[d+52>>1]=J[d+52>>1]|32;c=I[d+21|0];if(c&32){break d}d=d-4|0;F[d+25|0]=c|32;ZN(g,d+4|0)}c=XH(e);if(c){continue}break}}dR(a,b);Oa=e+16|0}function MT(a,b,c){var d=0,e=0,f=0;a:{b:{c:{d=J[a+4>>1]-1|0;switch(d|0){case 1:break b;case 0:break c;default:break a}}F[a+7|0]=0;G[a+4>>1]=0;H[a>>2]=0;return}d=1-b<<2;b=H[a>>2];d=H[d+b>>2];if(I[a+6|0]){Ra[H[H[c>>2]+4>>2]](c,b,8)}H[a>>2]=d;H[a+4>>2]=16842753;return}G[a+4>>1]=d;e=H[a>>2];f=e+(b<<2)|0;b=d&65535;H[f>>2]=H[(b<<2)+e>>2];if(!I[a+6|0]){b=b-1|0;b=b>>>1|b;b=b>>>2|b;b=b>>>4|b;b=b>>>8|b;b=R6(Ra[H[H[c>>2]>>2]](c,((b>>>16|b)<<2)+4|0)|0,H[a>>2],J[a+4>>1]<<2);if(I[a+6|0]){Ra[H[H[c>>2]+4>>2]](c,H[a>>2],0)}F[a+6|0]=1;H[a>>2]=b;return}d:{if((i7(b)|0)!=1){break d}if(Ra[H[H[c>>2]+8>>2]](c,b<<1,b)|0){break d}d=R6(Ra[H[H[c>>2]>>2]](c,b<<2)|0,H[a>>2],J[a+4>>1]<<2);if(I[a+6|0]){Ra[H[H[c>>2]+4>>2]](c,H[a>>2],b<<3)}F[a+6|0]=1;H[a>>2]=d}}function AD(a,b,c){a=a|0;b=b|0;c=c|0;var d=O(0),e=O(0),f=O(0),g=0,h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=0,o=O(0),p=O(0);b=Oa-48|0;Oa=b;g=1;a:{if(!(H[c+40>>2]&J[a+12>>1])){break a}n=H[c>>2];if(!H[n+588>>2]){break a}k=L[c+20>>2];e=L[c+36>>2];g=H[a+4>>2];f=L[g+108>>2];h=L[c+24>>2];i=L[c+32>>2];j=L[g+104>>2];l=L[c+16>>2];o=L[c+28>>2];d=L[g+112>>2];m=L[c+12>>2];p=L[g+100>>2];H[b+28>>2]=0;L[b+32>>2]=d*d;d=O(f-e);d=O(d+d);e=O(p-o);e=O(e+e);f=O(j-i);f=O(f+f);i=O(O(k*d)+O(O(m*e)+O(l*f)));j=O(O(h*h)+O(-.5));L[b+24>>2]=O(k*i)+O(O(d*j)-O(h*O(O(m*f)-O(e*l))));L[b+20>>2]=O(l*i)+O(O(f*j)-O(h*O(O(k*e)-O(d*m))));L[b+16>>2]=O(m*i)+O(O(e*j)-O(h*O(O(l*d)-O(f*k))));c=H[c+4>>2];g=hC(H[c+12>>2],H[c+8>>2],n,b+16|0,H[a+8>>2])}Oa=b+48|0;return g|0}function sV(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=O(0),f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=0;d=Oa-16|0;Oa=d;b=H[b+4>>2];h=L[b+56>>2];i=L[b+52>>2];j=L[b+72>>2];q=b- -64|0;k=L[q>>2];l=L[b+68>>2];m=L[b+88>>2];n=L[b+80>>2];o=L[b+84>>2];p=L[b+48>>2];e=L[c+8>>2];f=L[c>>2];g=L[c+4>>2];H[d+12>>2]=0;L[d+8>>2]=O(m*e)+O(O(n*f)+O(g*o));L[d+4>>2]=O(j*e)+O(O(k*f)+O(g*l));L[d>>2]=O(h*e)+O(O(p*f)+O(g*i));c=EU(b,d);h=L[q>>2];i=L[b+80>>2];j=L[b+84>>2];k=L[b+52>>2];l=L[b+68>>2];m=L[b+88>>2];c=H[b+152>>2]+N(c,12)|0;e=L[c+8>>2];n=L[b+56>>2];f=L[c>>2];o=L[b+72>>2];g=L[c+4>>2];p=L[b+48>>2];H[a+12>>2]=0;L[a+8>>2]=O(m*e)+O(O(n*f)+O(g*o));L[a+4>>2]=O(j*e)+O(O(k*f)+O(g*l));L[a>>2]=O(i*e)+O(O(p*f)+O(g*h));Oa=d+16|0}function kt(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;c=H[a+44>>2]&2147483647;g=c?c<<1:1;d=0;a:{if(!g){break a}e=g<<3;if(!(I[a+32|0]|e>>>0>32)){F[a+32|0]=1;d=a;break a}d=0;if(!e){break a}c=H[33808];d=c+12|0;d=(j=d,k=e,l=Ra[H[H[c>>2]+20>>2]](c)|0?37420:55639,m=13582,n=553,i=H[H[d>>2]+8>>2],Ra[i](j|0,k|0,l|0,m|0,n|0)|0)}c=H[a+40>>2];if((c|0)>0){h=d+(c<<3)|0;f=H[a+36>>2];c=d;while(1){e=H[f+4>>2];H[c>>2]=H[f>>2];H[c+4>>2]=e;f=f+8|0;c=c+8|0;if(h>>>0>c>>>0){continue}break}c=H[a+40>>2]}e=(c<<3)+d|0;c=H[b+4>>2];H[e>>2]=H[b>>2];H[e+4>>2]=c;b:{if(H[a+44>>2]<0){break b}c=H[a+36>>2];if((c|0)==(a|0)){F[a+32|0]=0;break b}if(!c){break b}b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,c)}H[a+44>>2]=g;H[a+36>>2]=d;H[a+40>>2]=H[a+40>>2]+1}function fD(a,b){var c=0,d=0,e=0,f=0;a:{b:{c:{d:{d=N(b,24)+24|0;e:{f:{if(d){e=H[33808]+12|0;e=Ra[H[H[e>>2]+8>>2]](e,d,20591,8197,152)|0;d=N(b,44);if(d){break f}a=1;f=0;if(!e){break b}break e}d=N(b,44);f=0;if(!d){break b}}c=H[33808]+12|0;c=Ra[H[H[c>>2]+8>>2]](c,d,20591,8197,153)|0;d=S6(c,0,d);if(d?e:0){break c}if(!e){break d}a=!d}b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,e);f=0;if(a){break b}break a}if(d){break a}return 0}c=H[a+8>>2];if(c){R6(e,c,N(H[a>>2],24))}c=H[a+12>>2];if(c){R6(d,c,N(H[a>>2],44))}H[a+4>>2]=b;c=H[a+8>>2];if(c){b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,c)}H[a+8>>2]=0;c=H[a+12>>2];if(c){b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,c)}H[a+12>>2]=d;H[a+8>>2]=e;f=1}return f}a=H[33808]+12|0;Ra[H[H[a>>2]+12>>2]](a,c);return 0}function g6(a,b,c,d){a:{switch(b-9|0){case 0:b=H[c>>2];H[c>>2]=b+4;H[a>>2]=H[b>>2];return;case 6:b=H[c>>2];H[c>>2]=b+4;b=G[b>>1];H[a>>2]=b;H[a+4>>2]=b>>31;return;case 7:b=H[c>>2];H[c>>2]=b+4;H[a>>2]=J[b>>1];H[a+4>>2]=0;return;case 8:b=H[c>>2];H[c>>2]=b+4;b=F[b|0];H[a>>2]=b;H[a+4>>2]=b>>31;return;case 9:b=H[c>>2];H[c>>2]=b+4;H[a>>2]=I[b|0];H[a+4>>2]=0;return;case 16:b=H[c>>2]+7&-8;H[c>>2]=b+8;M[a>>3]=M[b>>3];return;case 17:Ra[d|0](a,c);default:return;case 1:case 4:case 14:b=H[c>>2];H[c>>2]=b+4;b=H[b>>2];H[a>>2]=b;H[a+4>>2]=b>>31;return;case 2:case 5:case 11:case 15:b=H[c>>2];H[c>>2]=b+4;H[a>>2]=H[b>>2];H[a+4>>2]=0;return;case 3:case 10:case 12:case 13:break a}}b=H[c>>2]+7&-8;H[c>>2]=b+8;c=H[b+4>>2];H[a>>2]=H[b>>2];H[a+4>>2]=c}function vz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;d=1;if(b>>>0>1){while(1){e=(d<<5)+a|0;g=H[e-20>>2];h=H[e-16>>2];f=H[c+16>>2];e=e-32|0;kz(e,c);lz(e,c,N(g,112)+f|0,N(h,112)+f|0);d=d+1|0;if((d|0)!=(b|0)){continue}break}}a=(b<<5)+a|0;d=H[a-20>>2];e=H[a-16>>2];b=H[c+16>>2];a=a-32|0;kz(a,c);lz(a,c,b+N(d,112)|0,b+N(e,112)|0);a=H[c+8>>2];if(a>>>0>H[c+12>>2]-4>>>0){b=H[c+28>>2];a=a+H[b>>2]|0;H[b>>2]=a;b=H[c+8>>2];if(b){e=a-b|0;d=0;while(1){b=H[c+4>>2]+(d<<5)|0;f=H[b+4>>2];a=H[c+20>>2]+(d+e<<5)|0;H[a>>2]=H[b>>2];H[a+4>>2]=f;f=H[b+28>>2];H[a+24>>2]=H[b+24>>2];H[a+28>>2]=f;f=H[b+20>>2];H[a+16>>2]=H[b+16>>2];H[a+20>>2]=f;f=H[b+12>>2];H[a+8>>2]=H[b+8>>2];H[a+12>>2]=f;d=d+1|0;if(d>>>0>2]){continue}break}}H[c+8>>2]=0}}function sz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;d=1;if(b>>>0>1){while(1){e=(d<<5)+a|0;g=H[e-20>>2];h=H[e-16>>2];f=H[c+16>>2];e=e-32|0;jz(e,c);lz(e,c,N(g,112)+f|0,N(h,112)+f|0);d=d+1|0;if((d|0)!=(b|0)){continue}break}}a=(b<<5)+a|0;d=H[a-20>>2];e=H[a-16>>2];b=H[c+16>>2];a=a-32|0;jz(a,c);lz(a,c,b+N(d,112)|0,b+N(e,112)|0);a=H[c+8>>2];if(a>>>0>H[c+12>>2]-4>>>0){b=H[c+28>>2];a=a+H[b>>2]|0;H[b>>2]=a;b=H[c+8>>2];if(b){e=a-b|0;d=0;while(1){b=H[c+4>>2]+(d<<5)|0;f=H[b+4>>2];a=H[c+20>>2]+(d+e<<5)|0;H[a>>2]=H[b>>2];H[a+4>>2]=f;f=H[b+28>>2];H[a+24>>2]=H[b+24>>2];H[a+28>>2]=f;f=H[b+20>>2];H[a+16>>2]=H[b+16>>2];H[a+20>>2]=f;f=H[b+12>>2];H[a+8>>2]=H[b+8>>2];H[a+12>>2]=f;d=d+1|0;if(d>>>0>2]){continue}break}}H[c+8>>2]=0}}function Xt(a){var b=0,c=0,d=0;a:{b:{d=H[a+4>>2];c:{if(d&128){if(d&768){break b}L[a+44>>2]=L[a+56>>2];break c}L[a+56>>2]=L[a+44>>2];if(d&768){break b}}b=H[a+12>>2];d:{if(b){b=!H[b+28>>2]|K[H[H[b+24>>2]>>2]+152>>2]>4294967293;break d}b=L[a+44>>2]==O(0)}if(K[a+4>>2]>3221225471){break a}F[a+60|0]=b;break a}if(d&256){H[a+44>>2]=0;break a}L[a+44>>2]=L[a+56>>2]}e:{if(!(d&16776319)){break e}b=H[a+8>>2];if(!b){b=Tt(H[a>>2],I[a+7|0]&15);H[a+8>>2]=b}c=H[a+4>>2];if(c&2){H[a+20>>2]=H[b+4>>2]}if(c&1){H[a+16>>2]=H[b>>2]}if(c&4){H[a+24>>2]=H[b+8>>2]}if(c&8){L[a+32>>2]=L[b+12>>2]}if(c&16){L[a+36>>2]=L[b+16>>2]}if(c&32){G[a+28>>1]=J[b+20>>1]}if(!(c&64)){break e}L[a+40>>2]=L[b+24>>2]}if(d&2048){$D(a+12|0)}H[a+8>>2]=0;H[a+4>>2]=I[a+7|0]<<24}function CG(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;c=H[a+4>>2];f=H[c+4>>2];if((c|0)!=(f|0)){e=1;while(1){g=e;e=e+1|0;d=f;f=H[d+4>>2];if((f|0)!=(d|0)){continue}break}a:{if(!g){break a}H[a+4>>2]=d;e=g-1|0;if(!e){break a}g=g-2|0;h=e&7;b:{if(!h){f=c;break b}a=0;while(1){f=H[c+4>>2];H[c+4>>2]=d;e=e-1|0;c=f;a=a+1|0;if((h|0)!=(a|0)){continue}break}}if(g>>>0<7){break a}while(1){a=H[f+4>>2];H[f+4>>2]=d;c=H[a+4>>2];H[a+4>>2]=d;a=H[c+4>>2];H[c+4>>2]=d;c=H[a+4>>2];H[a+4>>2]=d;a=H[c+4>>2];H[c+4>>2]=d;c=H[a+4>>2];H[a+4>>2]=d;a=H[c+4>>2];H[c+4>>2]=d;f=H[a+4>>2];H[a+4>>2]=d;e=e-8|0;if(e){continue}break}}c=d}if(!(I[c+44|0]&4)){a=Oa-16|0;Oa=a;H[a+8>>2]=c;b=rg(b+336|0,a+8|0,a+15|0);if(!I[a+15|0]){H[b>>2]=H[a+8>>2]}F[c+44|0]=I[c+44|0]|4;Oa=a+16|0}}function sA(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q){var r=O(0);r=L[h+12>>2];L[g>>2]=j<=k?O(0):O(O(1)/j);g=J[h+76>>1];if(g&1){H[a>>2]=0;i=L[h+68>>2];q=L[h+28>>2];k=L[h+64>>2];L[d>>2]=o;m=O(O(i+O(m*k))*m);o=O(O(O(i*q)-O(r*k))*n);i=O(O(i+O(n*k))*n);a:{if(g&2){k=O(O(1)/O(i+O(1)));L[c>>2]=o*k;m=O(m+O(1));i=O(i*O(-k));break a}k=O(O(1)/O(O(i*j)+O(1)));L[c>>2]=O(o*k)*j;m=O(O(m*j)+O(1));i=O(O(i*O(-k))*j)}L[e>>2]=i;L[f>>2]=O(1)-k;L[b>>2]=O(O(-p)*l)*O(O(1)-O(O(1)/m));return}H[e>>2]=-1082130432;H[f>>2]=1065353216;b:{if(!(g&4)){break b}i=O(-i);if(!(i>L[h+68>>2])){break b}H[a>>2]=0;H[b>>2]=0;L[c>>2]=L[h+64>>2]*i;H[d>>2]=0;return}L[b>>2]=O(-p)*l;c:{if(g&128){H[a>>2]=0;i=O(L[h+28>>2]-O(r*q));break c}L[a>>2]=r;i=L[h+28>>2]}L[c>>2]=i;L[d>>2]=o}function mz(a){var b=O(0),c=0,d=0,e=O(0),f=O(0),g=O(0),h=O(0),i=O(0),j=0,k=O(0),l=0,m=O(0),n=O(0),o=0;d=H[a+28>>2];if(d){c=H[a+24>>2];j=I[c+1|0];if(j){o=I[c|0]==4?160:96;a=c+48|0;while(1){if(I[a+92|0]&2){b=L[a+88>>2];e=O(e+O(b*L[a+72>>2]));f=O(f+O(b*L[a+68>>2]));k=O(k+O(b*L[a+64>>2]));g=O(g+O(b*L[a+8>>2]));h=O(h+O(b*L[a+4>>2]));i=O(i+O(b*L[a>>2]))}a=a+o|0;l=l+1|0;if((j|0)!=(l|0)){continue}break}}b=L[c+24>>2];m=L[c+16>>2];n=L[c+20>>2];L[d+8>>2]=g;L[d+4>>2]=h;L[d>>2]=i;e=O(e-O(O(m*h)-O(i*n)));L[d+24>>2]=e;f=O(f-O(O(b*i)-O(g*m)));L[d+20>>2]=f;b=O(k-O(O(n*g)-O(h*b)));L[d+16>>2]=b;a=0;a:{if(!I[c+3|0]){break a}a=1;if(L[c+4>>2]>2]>2]=a}}function aQ(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0;c=Oa+-64|0;Oa=c;a=H[a+28>>2];e=H[H[a+976>>2]+1024>>2];Ra[H[H[e>>2]+84>>2]](c+8|0,e);if(H[a+2472>>2]){f=a+2420|0;e=0;g=(H[a+2360>>2]&8)!=0;while(1){b=H[(H[a+2468>>2]+(e<<3)|0)+4>>2];a:{if(!SQ(b,0,c+8|0,g)|I[b+46|0]&4){break a}d=H[H[b+28>>2]+4>>2];d=I[H[d+44>>2]+9|0]-1>>>0<2?d:0;b=H[H[b+32>>2]+4>>2];b=I[H[b+44>>2]+9|0]-1>>>0<2?b:0;H[c+52>>2]=b;H[c+48>>2]=d;H[c+56>>2]=H[d+48>>2];H[c+60>>2]=H[b+48>>2];b=H[a+2424>>2];if(b>>>0>=(H[a+2428>>2]&2147483647)>>>0){yO(f,c+48|0);break a}d=H[c+52>>2];b=H[a+2420>>2]+(b<<4)|0;H[b>>2]=H[c+48>>2];H[b+4>>2]=d;d=H[c+60>>2];H[b+8>>2]=H[c+56>>2];H[b+12>>2]=d;H[a+2424>>2]=H[a+2424>>2]+1}e=e+1|0;if(e>>>0>2]){continue}break}}Oa=c- -64|0}function pZ(a,b,c,d,e){var f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0);h=O(L[a+8>>2]-L[b+8>>2]);m=O(L[d+32>>2]*h);j=O(L[a>>2]-L[b>>2]);l=O(L[a+4>>2]-L[b+4>>2]);n=O(O(L[d+24>>2]*j)+O(l*L[d+28>>2]));f=O(O(L[d+20>>2]*h)+O(O(L[d+12>>2]*j)+O(l*L[d+16>>2])));g=L[c>>2];k=O(-g);h=O(O(L[d+8>>2]*h)+O(O(L[d>>2]*j)+O(l*L[d+4>>2])));a:{if(k>h){g=O(h+g);i=O(O(g*g)+O(0));break a}if(!(h>g)){k=h;break a}k=O(h-g);i=O(O(k*k)+O(0));k=g}h=O(m+n);g=L[c+4>>2];j=O(-g);b:{if(!(j>f)){if(!(f>g)){g=f;break b}f=O(f-g);i=O(O(f*f)+i);break b}g=O(f+g);i=O(O(g*g)+i);g=j}f=L[c+8>>2];j=O(-f);c:{if(!(j>h)){if(!(f>2]=f;L[e+4>>2]=g;L[e>>2]=k}return i}function TE(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;c=H[a>>2];a:{if((c|0)!=H[a+8>>2]){break a}f=(c<<1)+2|0;if(f>>>0<=c>>>0){break a}c=f<<3;if(c){e=H[33808];d=e+12|0;d=(i=d,j=c,k=Ra[H[H[e>>2]+20>>2]](e)|0?25396:55639,l=15676,m=219,h=H[H[d>>2]+8>>2],Ra[h](i|0,j|0,k|0,l|0,m|0)|0)}else{d=0}c=H[a+4>>2];b:{if(!c){break b}R6(d,c,H[a>>2]<<3);e=H[a+4>>2];if(!e){break b}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,e)}H[a+8>>2]=f;H[a+4>>2]=d;c=H[a>>2]}c:{if(!c){d=0;break c}while(1){e=H[a+4>>2];f=c-1|0;d=f>>>1|0;g=e+(d<<3)|0;if(K[b+4>>2]>=K[g+4>>2]){d=c;break c}e=(c<<3)+e|0;c=H[g+4>>2];H[e>>2]=H[g>>2];H[e+4>>2]=c;c=d;if(f>>>0>1){continue}break}}c=H[a+4>>2]+(d<<3)|0;d=H[b+4>>2];H[c>>2]=H[b>>2];H[c+4>>2]=d;H[a>>2]=H[a>>2]+1}function hZ(a,b,c){var d=0,e=O(0),f=O(0),g=O(0),h=0,i=0,j=0,k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0);k=L[c+16>>2];l=L[c+28>>2];m=L[c+24>>2];n=L[c+12>>2];o=L[c>>2];p=L[c+4>>2];e=L[b+24>>2];f=L[b+28>>2];g=L[b+32>>2];L[a+8>>2]=O(O(e*L[c+8>>2])+O(f*L[c+20>>2]))+O(g*L[c+32>>2]);L[a+4>>2]=O(O(e*p)+O(f*k))+O(g*l);L[a>>2]=O(O(e*o)+O(f*n))+O(g*m);c=I[b+38|0];H[a+12>>2]=c;d=I[b+39|0];H[a+16>>2]=d;i=G[b+36>>1];h=i&32767;H[a+20>>2]=h;j=H[b+40>>2];H[a+24>>2]=j;d=N(d,20)+j|0;H[a+28>>2]=d;d=d+N(c,12)|0;H[a+36>>2]=d;H[a+32>>2]=((d+(h<<1)|0)+N(c,3)|0)+((i|0)>=0?0:h<<2);c=H[b+52>>2];H[a+44>>2]=H[b+48>>2];H[a+48>>2]=c;c=H[b+60>>2];H[a+52>>2]=H[b+56>>2];H[a+56>>2]=c;b=H[b+44>>2];H[a+60>>2]=b;H[a+68>>2]=2615;H[a+64>>2]=(b?2615:2616)+1}function yO(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;c=H[a+8>>2]&2147483647;f=c?c<<1:1;a:{if(!f){break a}c=f<<4;if(!c){break a}e=H[33808];d=e+12|0;e=(j=d,k=c,l=Ra[H[H[e>>2]+20>>2]](e)|0?27016:55639,m=13582,n=553,i=H[H[d>>2]+8>>2],Ra[i](j|0,k|0,l|0,m|0,n|0)|0)}c=H[a+4>>2];if((c|0)>0){h=(c<<4)+e|0;d=H[a>>2];c=e;while(1){g=H[d+4>>2];H[c>>2]=H[d>>2];H[c+4>>2]=g;g=H[d+12>>2];H[c+8>>2]=H[d+8>>2];H[c+12>>2]=g;d=d+16|0;c=c+16|0;if(h>>>0>c>>>0){continue}break}c=H[a+4>>2]}d=H[b+4>>2];c=(c<<4)+e|0;H[c>>2]=H[b>>2];H[c+4>>2]=d;d=H[b+12>>2];H[c+8>>2]=H[b+8>>2];H[c+12>>2]=d;b:{if(H[a+8>>2]<0){break b}b=H[a>>2];if(!b){break b}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}H[a+8>>2]=f;H[a>>2]=e;H[a+4>>2]=H[a+4>>2]+1}function wE(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:{if(!b){break a}d=N(b,44);if(!d){break a}c=H[33808];f=c+12|0;f=(i=f,j=d,k=Ra[H[H[c>>2]+20>>2]](c)|0?39540:55639,l=13582,m=553,h=H[H[f>>2]+8>>2],Ra[h](i|0,j|0,k|0,l|0,m|0)|0)}c=H[a+4>>2];if((c|0)>0){g=N(c,44)+f|0;d=H[a>>2];c=f;while(1){e=H[d+4>>2];H[c>>2]=H[d>>2];H[c+4>>2]=e;H[c+40>>2]=H[d+40>>2];e=H[d+36>>2];H[c+32>>2]=H[d+32>>2];H[c+36>>2]=e;e=H[d+28>>2];H[c+24>>2]=H[d+24>>2];H[c+28>>2]=e;e=H[d+20>>2];H[c+16>>2]=H[d+16>>2];H[c+20>>2]=e;e=H[d+12>>2];H[c+8>>2]=H[d+8>>2];H[c+12>>2]=e;d=d+44|0;c=c+44|0;if(g>>>0>c>>>0){continue}break}}b:{if(H[a+8>>2]<0){break b}c=H[a>>2];if(!c){break b}d=H[33808]+12|0;Ra[H[H[d>>2]+12>>2]](d,c)}H[a+8>>2]=b;H[a>>2]=f}function uu(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=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0);n=L[d>>2];k=L[d+8>>2];r=L[c+24>>2];j=O(r-L[d+24>>2]);s=L[c+16>>2];i=O(s-L[d+16>>2]);t=L[c+20>>2];l=O(t-L[d+20>>2]);o=L[d+4>>2];p=O(n*O(O(k*j)+O(O(n*i)+O(l*o))));m=i;i=L[d+12>>2];j=O(p+O(O(m*O(O(i*i)+O(-.5)))-O(i*O(O(o*j)-O(l*k)))));m=O(j+j);j=L[a+4>>2];p=O(m-j);b=p<=L[e>>2];if(b){a=H[g+4096>>2];H[g+4096>>2]=a+1;a=(a<<6)+g|0;l=O(n+n);q=O(i+i);m=O(O(l*k)-O(o*q));L[a+8>>2]=m;k=O(O(l*o)+O(k*q));L[a+4>>2]=k;H[a+52>>2]=-1;L[a+12>>2]=p;H[a+28>>2]=0;i=O(O(O(n*l)+O(i*q))+O(-1));L[a>>2]=i;L[a+24>>2]=r-O(j*m);L[a+20>>2]=t-O(j*k);L[a+16>>2]=s-O(j*i)}return b|0}function iG(a,b,c,d){var e=O(0),f=0,g=0,h=O(0),i=O(0),j=O(0),k=O(0),l=0,m=O(0),n=O(0),o=O(0);g=Oa-16|0;Oa=g;f=H[a+100>>2];a:{if(!(I[f+28|0]&32)|F[a+92|0]&1){break a}a=H[a+32>>2];if(!a){break a}e=L[f+72>>2];h=O(e*e);e=L[f+64>>2];i=O(e*e);e=L[f+68>>2];h=O(O(W(O(h+O(i+O(e*e)))))*c);i=L[f+88>>2];m=L[f+84>>2];n=L[f+80>>2];while(1){L[g+8>>2]=i;L[g+4>>2]=m;L[g>>2]=n;l=H[a+8>>2]&2147483647;f=H[d+4>>2]+N(l,24)|0;e=O(O(L[f+20>>2]-L[f+8>>2])*O(.5));j=O(e*e);e=O(O(L[f+12>>2]-L[f>>2])*O(.5));k=O(e*e);e=O(O(L[f+16>>2]-L[f+4>>2])*O(.5));j=O(W(O(j+O(k+O(e*e)))));e=L[g+8>>2];k=O(e*e);e=L[g>>2];o=O(e*e);e=L[g+4>>2];L[(l<<2)+b>>2]=O(L[H[a+28>>2]+60>>2]+h)+O(j*O(O(W(O(k+O(o+O(e*e)))))*c));a=H[a>>2];if(a){continue}break}}Oa=g+16|0}function Rj(a){var b=0,c=0,d=O(0),e=0,f=0,g=0;c=0;a:{if((H[a+4>>2]>>>30|0)-3>>>0<4294967294){break a}b=H[a>>2];c=0;if(!b){break a}c=b-16|0}if(H[a+88>>2]){while(1){b=H[H[a+84>>2]+(e<<2)>>2];f=b+48|0;d=L[c+5148>>2];b:{c:{d:{switch((H[b+52>>2]>>>30|0)-2|0){case 0:g=H[f>>2];if(I[g+4785|0]){break c}default:L[b+308>>2]=d;H[b+312>>2]=0;WF(b- -64|0,d,1);break b;case 1:break d}}g=H[f>>2]}L[b+308>>2]=d;H[b+312>>2]=0;$t(g,f);H[b+316>>2]=H[b+316>>2]&-117440513|83886080}e=e+1|0;if(e>>>0>2]){continue}break}}c=H[a>>2];d=L[c+5132>>2];F[a+60|0]=0;L[a+56>>2]=d;e:{f:{switch((H[a+4>>2]>>>30|0)-2|0){case 0:if(I[c+4785|0]){break e}break;case 1:break e;default:break f}}L[a+44>>2]=d;return}$t(c,a);H[a+4>>2]=H[a+4>>2]&-897|640}function Nl(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;e=H[a+20>>2];a:{b:{if(!e){break b}f=H[b>>2];d=f+(f<<15^-1)|0;d=N(d>>>10^d,9);d=d>>>6^d;d=(d<<11^-1)+d|0;g=e-1&(d>>>16^d);d=H[H[a+12>>2]+(g<<2)>>2];if((d|0)==-1){break b}h=a+4|0;j=H[a+8>>2];k=H[a+4>>2];while(1){i=d<<2;if(H[i+k>>2]==(f|0)){F[c|0]=1;break a}d=H[j+i>>2];if((d|0)!=-1){continue}break}}F[c|0]=0;c=-1;d=H[a+28>>2];if((d|0)==-1){d=e?e<<1:16;if(d>>>0>e>>>0){Il(a,d);e=H[a+20>>2];c=H[a+28>>2]}b=H[b>>2];b=(b<<15^-1)+b|0;b=N(b>>>10^b,9);b=b>>>6^b;b=(b<<11^-1)+b|0;g=e-1&(b>>>16^b);d=c}b=H[a+8>>2]+(d<<2)|0;H[a+28>>2]=H[b>>2];c=b;b=H[a+12>>2]+(g<<2)|0;H[c>>2]=H[b>>2];H[b>>2]=d;H[a+36>>2]=H[a+36>>2]+1;H[a+32>>2]=H[a+32>>2]+1;h=a+4|0}return H[h>>2]+(d<<2)|0}function Gt(a,b,c){var d=0,e=0,f=0,g=0,h=0;d=Oa-288|0;Oa=d;a:{if(!(I[(H[((H[b+4>>2]>>>22&60)+76348|0)+12>>2]+b|0)+8|0]&8)){F[d+264|0]=1;H[d+272>>2]=0;H[d+276>>2]=64;e=d+8|0;H[d+268>>2]=e;f=a;a=H[a+2416>>2];KO(f,b+16|0,a?a+272|0:e,c);f=H[(a?a+536|0:d+272|0)>>2];if(f){g=H[b>>2]+4816|0;h=H[(a?a+532|0:d+268|0)>>2];c=0;while(1){a=H[(c<<2)+h>>2];b=a-16|0;e=a-12|0;a=H[e>>2];if(a&268435456){au(b);H[d+284>>2]=b;Pf(g,d+284|0);a=H[e>>2]&-268435457;H[e>>2]=a}if((a&251658240)==16777216){H[e>>2]=a&1073741823;H[b>>2]=0}et(b);c=c+1|0;if((f|0)!=(c|0)){continue}break}}a=H[d+276>>2];if((a|0)<0|!(a&2147483647)){break a}a=H[d+268>>2];if((a|0)==(d+8|0)|!a){break a}b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,a);break a}Ht(b)}Oa=d+288|0}function tp(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0;f=J[b>>1];a:{if(!(f&1)){break a}b=H[a+5936>>2];if(!b){break a}d=H[a+5932>>2];h=b&1;if((b|0)!=1){i=b&-2;while(1){e=c;c=H[(d+(b<<2)|0)-4>>2];e=e+(J[c+4>>1]==6&(c|0)!=0)|0;b=b-2|0;c=H[d+(b<<2)>>2];c=e+(J[c+4>>1]==6&(c|0)!=0)|0;g=g+2|0;if((i|0)!=(g|0)){continue}break}}if(!h){break a}b=H[(d+(b<<2)|0)-4>>2];c=(J[b+4>>1]==6&(b|0)!=0)+c|0}b:{if(!(f&2)){break b}d=H[a+5936>>2];if(!d){break b}a=H[a+5932>>2];c:{if(!(d&1)){b=d;break c}e=c;b=d-1|0;c=H[a+(b<<2)>>2];c=e+(J[c+4>>1]==5&(c|0)!=0)|0}if((d|0)==1){break b}while(1){d=H[(a+(b<<2)|0)-4>>2];c=(J[d+4>>1]==5&(d|0)!=0)+c|0;b=b-2|0;d=H[a+(b<<2)>>2];c=c+(J[d+4>>1]==5&(d|0)!=0)|0;if(b){continue}break}}return c|0}function al(a,b,c,d){a=a|0;b=b|0;c=O(c);d=O(d);var e=0,f=0;a:{b:{c:{d:{a=a+8|0;f=H[a+4>>2];switch((f>>>30|0)-2|0){case 1:break b;case 0:break d;default:break c}}if(I[H[a>>2]+4785|0]){break b}}lE(a+12|0,b,c,d);break a}e=H[a+8>>2];e:{if(!(f&1048576)){if(!e){e=Tt(H[a>>2],f>>>24&15);H[a+8>>2]=e}L[e+156>>2]=L[a+72>>2];L[e+160>>2]=L[a+76>>2];L[e+164>>2]=L[a+80>>2];L[e+168>>2]=L[a+84>>2];L[e+172>>2]=L[a+88>>2];L[e+176>>2]=L[a+92>>2];L[e+180>>2]=L[a+96>>2];L[e+184>>2]=L[a+100>>2];L[e+188>>2]=L[a+104>>2];L[e+192>>2]=L[a+108>>2];L[e+196>>2]=L[a+112>>2];L[e+200>>2]=L[a+116>>2];break e}if(e){break e}e=Tt(H[a>>2],I[a+7|0]&15);H[a+8>>2]=e}b=(b<<3)+e|0;L[b+160>>2]=d;L[b+156>>2]=c;$t(H[a>>2],a);H[a+4>>2]=H[a+4>>2]|1048576}}function xG(a,b,c){var d=0,e=0,f=0,g=0,h=0;a=H[a+60>>2];if(a){d=0;a:{if(!b){break a}d=0;if(!I[b+9|0]){break a}d=H[b>>2]}f=!c|!I[c+9|0]?f:H[c>>2];e=H[H[a+48>>2]+1136>>2];b:{if(!(I[H[a+52>>2]]&6)){c:{if(!d){break c}g=H[d+164>>2];if(!g){break c}IG(e,g,a)}if(!f){break b}g=H[f+164>>2];if(!g){break b}IG(e,g,a);break b}if(F[a+68|0]&1){break b}DG(e,a)}e=0;h=f?f- -64|0:0;H[a+28>>2]=h;g=d?d- -64|0:0;H[a+24>>2]=g;H[a+32>>2]=d?H[g+36>>2]:0;e=f?H[h+36>>2]:e;H[a+60>>2]=d;H[a+36>>2]=e;H[a- -64>>2]=f;d=H[a+48>>2];e=H[d+2408>>2];if(b){d=H[b>>2]}else{d=H[d+2380>>2]}if(c){b=H[c>>2]}else{b=H[H[a+48>>2]+2380>>2]}f=H[e+288>>2];if(!f){QG(e);f=H[e+288>>2]}H[e+288>>2]=H[f>>2];H[e+280>>2]=H[e+280>>2]+1;LG(f,a,d,b);H[a+56>>2]=f}}function GO(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0,k=0;if(c){while(1){j=H[(i<<2)+b>>2]+48|0;g=H[a+2384>>2];h=H[g+12>>2]+N(H[g+8>>2],12)|0;f=H[h+4>>2];a:{if(f){H[h+4>>2]=H[f>>2];break a}b:{f=H[h+8>>2];if((f|0)==H[g>>2]){break b}k=H[g+4>>2];H[h+8>>2]=f+1;h=H[h>>2];if(!h){break b}f=h+N(f,k)|0;break a}f=LN(g)}ZQ(f,d,j);g=((H[j+68>>2]<<2)+a|0)+2676|0;H[g>>2]=H[g>>2]+1;g=H[a+1012>>2];Ra[H[H[g>>2]+16>>2]](g,f+12|0,H[f+32>>2]);if(e){g=N(i,24)+e|0;f=H[H[a+1140>>2]+4>>2]+N(H[f+8>>2]&2147483647,24)|0;L[g>>2]=L[f>>2];L[g+4>>2]=L[f+4>>2];L[g+8>>2]=L[f+8>>2];L[g+12>>2]=L[f+12>>2];L[g+16>>2]=L[f+16>>2];L[g+20>>2]=L[f+20>>2]}f=H[H[a+976>>2]+1024>>2];Ra[H[H[f>>2]+44>>2]](f,j+32|0);i=i+1|0;if((i|0)!=(c|0)){continue}break}}}function F1(a,b,c){a=a|0;b=b|0;c=c|0;b=H[b+80>>2];a:{switch(c|0){case 0:L[a>>2]=L[b+128>>2];L[a+4>>2]=L[b+132>>2];L[a+8>>2]=L[b+136>>2];L[a+12>>2]=L[b+140>>2];L[a+16>>2]=L[b+144>>2];c=H[b+152>>2];H[a+20>>2]=H[b+148>>2];H[a+24>>2]=c;return;case 1:L[a>>2]=L[b+156>>2];L[a+4>>2]=L[b+160>>2];L[a+8>>2]=L[b+164>>2];L[a+12>>2]=L[b+168>>2];L[a+16>>2]=L[b+172>>2];c=H[b+180>>2];H[a+20>>2]=H[b+176>>2];H[a+24>>2]=c;return;case 2:L[a>>2]=L[b+184>>2];L[a+4>>2]=L[b+188>>2];L[a+8>>2]=L[b+192>>2];L[a+12>>2]=L[b+196>>2];L[a+16>>2]=L[b+200>>2];c=H[b+208>>2];H[a+20>>2]=H[b+204>>2];H[a+24>>2]=c;return;default:break a}}H[a>>2]=0;H[a+4>>2]=0;H[a+24>>2]=0;H[a+16>>2]=0;H[a+20>>2]=0;H[a+8>>2]=0;H[a+12>>2]=0;H[a+4>>2]=1073741824}function Lw(a,b){var c=0,d=0,e=0,f=0,g=0;a:{e=H[a+16>>2];if(!(e>>>0<=b>>>0&e+H[a+20>>2]>>>0>b>>>0)){if(!b){break a}a=H[33808];Ra[H[H[a+12>>2]+12>>2]](a+12|0,b);return}g=H[a+4>>2];f=H[a+8>>2];c=f;while(1){e=c;c=c-1|0;d=g+(c<<2)|0;if(K[d>>2]>>0){continue}break}b:{if(e>>>0>=f>>>0){break b}H[d>>2]=H[g+(e<<2)>>2];c=e+1|0;if((f|0)==(c|0)){break b}g=(e^-1)+f&3;if(g){b=0;while(1){H[d+4>>2]=H[H[a+4>>2]+(c<<2)>>2];c=c+1|0;d=d+4|0;b=b+1|0;if((g|0)!=(b|0)){continue}break}}if((f-e|0)-2>>>0<3){break b}while(1){b=c<<2;H[d+4>>2]=H[b+H[a+4>>2]>>2];H[d+8>>2]=H[(b+H[a+4>>2]|0)+4>>2];H[d+12>>2]=H[(b+H[a+4>>2]|0)+8>>2];H[d+16>>2]=H[(b+H[a+4>>2]|0)+12>>2];d=d+16|0;c=c+4|0;if((f|0)!=(c|0)){continue}break}}H[a+8>>2]=f-1}}function S6(a,b,c){var d=0,e=0,f=0;a:{if(!c){break a}F[a|0]=b;e=a+c|0;F[e-1|0]=b;if(c>>>0<3){break a}F[a+2|0]=b;F[a+1|0]=b;F[e-3|0]=b;F[e-2|0]=b;if(c>>>0<7){break a}F[a+3|0]=b;F[e-4|0]=b;if(c>>>0<9){break a}e=0-a&3;f=e+a|0;d=N(b&255,16843009);H[f>>2]=d;b=c-e&-4;c=b+f|0;H[c-4>>2]=d;if(b>>>0<9){break a}H[f+8>>2]=d;H[f+4>>2]=d;H[c-8>>2]=d;H[c-12>>2]=d;if(b>>>0<25){break a}H[f+24>>2]=d;H[f+20>>2]=d;H[f+16>>2]=d;H[f+12>>2]=d;H[c-16>>2]=d;H[c-20>>2]=d;H[c-24>>2]=d;H[c-28>>2]=d;c=b;b=f&4|24;c=c-b|0;if(c>>>0<32){break a}d=g7(d,0,1,1);e=Qa;b=b+f|0;while(1){H[b+24>>2]=d;H[b+28>>2]=e;H[b+16>>2]=d;H[b+20>>2]=e;H[b+8>>2]=d;H[b+12>>2]=e;H[b>>2]=d;H[b+4>>2]=e;b=b+32|0;c=c-32|0;if(c>>>0>31){continue}break}}return a}function j2(a,b,c){var d=O(0),e=O(0),f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0);o=L[b+20>>2];p=L[b+24>>2];l=L[c+20>>2];m=L[c+24>>2];q=L[b+16>>2];n=L[c+16>>2];d=L[b+12>>2];e=L[c+12>>2];f=L[c>>2];h=L[b>>2];i=L[b+4>>2];g=L[c+4>>2];j=L[b+8>>2];k=L[c+8>>2];L[a+12>>2]=O(O(O(d*e)-O(f*h))-O(i*g))-O(j*k);L[a+8>>2]=O(O(h*g)+O(O(d*k)+O(j*e)))-O(f*i);L[a+4>>2]=O(O(j*f)+O(O(d*g)+O(i*e)))-O(k*h);L[a>>2]=O(O(i*k)+O(O(d*f)+O(h*e)))-O(g*j);e=O(m+m);f=O(n+n);g=O(l+l);k=O(O(j*e)+O(O(h*f)+O(i*g)));l=O(O(d*d)+O(-.5));L[a+24>>2]=p+O(O(j*k)+O(O(e*l)+O(d*O(O(h*g)-O(f*i)))));L[a+20>>2]=o+O(O(i*k)+O(O(g*l)+O(d*O(O(j*f)-O(e*h)))));L[a+16>>2]=q+O(O(h*k)+O(O(f*l)+O(d*O(O(i*e)-O(g*j)))))}function AP(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=O(0);if(H[a+32>>2]){h=H[a+40>>2];while(1){b=H[H[(H[h+184>>2]+N(H[H[a+28>>2]+(g<<2)>>2]>>>7|0,24)|0)+20>>2]+16>>2];yF(b);i=L[a+36>>2];e=I[a+44|0];c=0;d=Oa-16|0;Oa=d;H[d+12>>2]=0;if(H[b+28>>2]){while(1){f=H[b>>2];sG(H[H[b+24>>2]+(c<<2)>>2],i,0,0,d+12|0,H[f+40>>2]+(c<<5)|0,!H[f+24>>2],e);c=c+1|0;if(c>>>0>2]){continue}break}}Oa=d+16|0;e=H[b+28>>2];if(e){f=H[b+24>>2];d=0;while(1){b=H[f+(d<<2)>>2];c=H[b+100>>2];L[b+64>>2]=L[c>>2];L[b+68>>2]=L[c+4>>2];L[b+72>>2]=L[c+8>>2];L[b+76>>2]=L[c+12>>2];L[b+80>>2]=L[c+16>>2];L[b+84>>2]=L[c+20>>2];L[b+88>>2]=L[c+24>>2];d=d+1|0;if((e|0)!=(d|0)){continue}break}}g=g+1|0;if(g>>>0>2]){continue}break}}}function qg(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;f=Oa-16|0;Oa=f;a:{a=H[a+4>>2];if(!a){break a}i=H[a+40>>2];j=H[a+36>>2];a=0;while(1){b=a>>>0>i>>>0?a:i;while(1){if((a|0)==(b|0)){break a}c=a<<3;a=a+1|0;c=c+j|0;if(I[c|0]){continue}break}c=H[c+4>>2];if(!c){break a}Ra[H[H[c>>2]+36>>2]](c);e=Oa-16|0;Oa=e;d=H[c+12>>2];g=H[c+8>>2];b:{if(g){Ra[H[H[g>>2]+52>>2]](e+8|0,g);b=0;if(I[e+8|0]&8){break b}b=Ra[H[H[g>>2]+28>>2]](g)|0;break b}b=0}c:{if(d){Ra[H[H[d>>2]+52>>2]](e,d);h=0;if(I[e|0]&8){break c}h=Ra[H[H[d>>2]+28>>2]](d)|0;break c}h=0}Oa=e+16|0;e=b?b:h;d=d?h?e:0:e;b=g?b?d:0:d;if(!b){continue}H[f+8>>2]=c;d=rg(b+5892|0,f+8|0,f+15|0);if(!I[f+15|0]){H[d>>2]=H[f+8>>2]}Lt(b+16|0,c+16|0);continue}}Oa=f+16|0}function HT(a,b,c,d){var e=0,f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0);e=Oa-48|0;Oa=e;j=L[c+8>>2];k=L[b+8>>2];g=O(j-k);l=L[c>>2];m=L[b>>2];h=O(l-m);n=L[c+4>>2];o=L[b+4>>2];i=O(n-o);f=O(W(O(O(g*g)+O(O(h*h)+O(i*i)))));if(d){L[d>>2]=f*O(.5);k=L[b+8>>2];o=L[b+4>>2];n=L[c+4>>2];m=L[b>>2];l=L[c>>2];j=L[c+8>>2]}a:{if(f>2]=0;H[e+16>>2]=1065353216;H[e+20>>2]=0;f=O(O(1)/f);L[e+8>>2]=g*f;L[e+4>>2]=i*f;L[e>>2]=h*f;C5(e+32|0,e+16|0,e);g=L[e+36>>2];h=L[e+32>>2];i=L[e+40>>2];f=L[e+44>>2]}L[a+12>>2]=f;L[a+8>>2]=i;L[a+4>>2]=g;L[a>>2]=h;L[a+24>>2]=O(j+k)*O(.5);L[a+20>>2]=O(n+o)*O(.5);L[a+16>>2]=O(l+m)*O(.5);Oa=e+48|0}function zV(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0);e=Oa-80|0;Oa=e;g=L[d+4>>2];j=O(g+g);f=L[d+8>>2];k=O(j*f);h=L[d>>2];i=O(h+h);m=L[d+12>>2];l=O(i*m);L[e+44>>2]=k-l;L[e+36>>2]=k+l;h=O(O(1)-O(h*i));k=O(g*j);L[e+48>>2]=h-k;n=h;h=O(f+f);l=O(f*h);L[e+32>>2]=n-l;f=O(i*f);j=O(j*m);L[e+40>>2]=f+j;g=O(i*g);i=O(h*m);L[e+28>>2]=g-i;L[e+24>>2]=f-j;L[e+20>>2]=g+i;L[e+16>>2]=O(O(1)-k)-l;L[e+52>>2]=L[d+16>>2];L[e+56>>2]=L[d+20>>2];L[e+60>>2]=L[d+24>>2];L[e+64>>2]=L[c+4>>2];L[e+68>>2]=L[c+8>>2];L[e+72>>2]=L[c+12>>2];f=L[a+4>>2];L[e>>2]=L[b+16>>2];L[e+4>>2]=L[b+20>>2];g=L[b+24>>2];L[e+12>>2]=f;L[e+8>>2]=g;a=c_(e,e+16|0);Oa=e+80|0;return a|0}function J4(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0);f=Oa+-64|0;Oa=f;$1(f+32|0,f,b,c,d);if(e&1){Ra[H[H[a>>2]+8>>2]](a,f+32|0,f)}if(!(!(F[b+128|0]&1)|!(e&2))){i=L[f+40>>2];h=L[f+8>>2];j=L[f+36>>2];k=L[f+4>>2];l=L[f+44>>2];m=L[f+12>>2];n=L[f+32>>2];o=L[f>>2];g=O(O(i*h)+O(O(j*k)+O(O(l*m)+O(n*o))));i=O(O(k*i)+O(O(O(l*o)-O(m*n))-O(j*h)));h=O(W(O(O(g*g)+O(O(O(i*i)+O(0))+O(0)))));if(h!=O(0)){h=O(O(1)/h);g=O(g*h);i=O(i*h)}h=L[b+116>>2];j=L[b+112>>2];k=j;j=L[b+104>>2]>O(0)?O(0):L[b+100>>2]>O(0)?O(0):L[b+108>>2];g=M5(O(R(O(S(g,O(-1))),O(1))));g=O(g+g);g=i>2]+16>>2]](a,f+32|0,h,k,O(k-j)>2]&2147483647;f=c?c<<1:1;a:{if(!f){break a}c=N(f,12);if(!c){break a}e=H[33808];d=e+12|0;e=(j=d,k=c,l=Ra[H[H[e>>2]+20>>2]](e)|0?32762:55639,m=13582,n=553,i=H[H[d>>2]+8>>2],Ra[i](j|0,k|0,l|0,m|0,n|0)|0)}c=H[a+4>>2];if((c|0)>0){g=N(c,12)+e|0;d=H[a>>2];c=e;while(1){h=H[d+4>>2];H[c>>2]=H[d>>2];H[c+4>>2]=h;H[c+8>>2]=H[d+8>>2];d=d+12|0;c=c+12|0;if(g>>>0>c>>>0){continue}break}c=H[a+4>>2]}d=H[b+4>>2];c=N(c,12)+e|0;H[c>>2]=H[b>>2];H[c+4>>2]=d;H[c+8>>2]=H[b+8>>2];b:{if(H[a+8>>2]<0){break b}b=H[a>>2];if(!b){break b}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}H[a+8>>2]=f;H[a>>2]=e;b=a;a=H[a+4>>2];H[b+4>>2]=a+1;return N(a,12)+e|0}function rx(a,b,c,d){var e=O(0),f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=0,q=0,r=O(0);if(J[d+8>>1]==65535){d=H[d+4>>2];h=L[d- -64>>2];i=L[d+40>>2];j=L[d+52>>2];k=L[d+60>>2];l=L[d+36>>2];m=L[d+48>>2];n=L[d+56>>2];o=L[d+44>>2];p=H[b+8>>2];q=H[b+12>>2];e=L[c+8>>2];f=L[c+4>>2];g=L[c>>2];r=L[d+32>>2];c=H[b>>2];b=H[b+4>>2];H[a+28>>2]=0;H[a+8>>2]=p;H[a+12>>2]=q;H[a>>2]=c;H[a+4>>2]=b;L[a+16>>2]=O(n*e)+O(O(r*g)+O(o*f));L[a+20>>2]=O(k*e)+O(O(l*g)+O(m*f));L[a+24>>2]=O(h*e)+O(O(i*g)+O(j*f));return}d=H[b+4>>2];H[a>>2]=H[b>>2];H[a+4>>2]=d;d=H[b+12>>2];H[a+8>>2]=H[b+8>>2];H[a+12>>2]=d;b=H[c+4>>2];H[a+16>>2]=H[c>>2];H[a+20>>2]=b;b=H[c+12>>2];H[a+24>>2]=H[c+8>>2];H[a+28>>2]=b}function iF(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;e=Oa-16|0;Oa=e;b=H[a+28>>2];if(H[b+36>>2]){while(1){c=H[H[b+32>>2]+(d<<2)>>2]>>>7|0;H[e+8>>2]=c;a:{if((c|0)==H[b+12>>2]){H[b+12>>2]=c-1;break a}f=H[b+4>>2];if(f>>>0>=(H[b+8>>2]&2147483647)>>>0){qm(b,e+8|0);b=H[a+28>>2];break a}H[H[b>>2]+(f<<2)>>2]=c;H[b+4>>2]=H[b+4>>2]+1}d=d+1|0;if(d>>>0>2]){continue}break}}d=0;H[b+36>>2]=0;if(H[b+72>>2]){while(1){c=H[H[b+68>>2]+(d<<2)>>2];H[e+12>>2]=c;b:{if((c|0)==H[b+28>>2]){H[b+28>>2]=c-1;break b}f=H[b+20>>2];if(f>>>0>=(H[b+24>>2]&2147483647)>>>0){qm(b+16|0,e+12|0);b=H[a+28>>2];break b}H[H[b+16>>2]+(f<<2)>>2]=c;H[b+20>>2]=H[b+20>>2]+1}d=d+1|0;if(d>>>0>2]){continue}break}}H[b+72>>2]=0;Oa=e+16|0}function gg(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;c=H[a+44>>2]&2147483647;h=c?c<<1:1;d=0;a:{if(!h){break a}e=h<<3;if(!(I[a+32|0]|e>>>0>32)){F[a+32|0]=1;d=a;break a}d=0;if(!e){break a}c=H[33808];d=c+12|0;d=(k=d,l=e,m=Ra[H[H[c>>2]+20>>2]](c)|0?26784:55639,n=13582,o=553,j=H[H[d>>2]+8>>2],Ra[j](k|0,l|0,m|0,n|0,o|0)|0)}f=H[a+40>>2];i=d+(f<<3)|0;g=H[a+36>>2];if((f|0)>0){e=g;c=d;while(1){F[c|0]=I[e|0];H[c+4>>2]=H[e+4>>2];e=e+8|0;c=c+8|0;if(i>>>0>c>>>0){continue}break}}F[i|0]=I[b|0];H[i+4>>2]=H[b+4>>2];b:{if(H[a+44>>2]<0){break b}if((a|0)==(g|0)){F[a+32|0]=0;break b}if(!g){break b}b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,g);f=H[a+40>>2]}H[a+44>>2]=h;H[a+36>>2]=d;H[a+40>>2]=f+1}function rK(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:{if(!b){break a}d=N(b,40);if(!d){break a}c=H[33808];f=c+12|0;f=(i=f,j=d,k=Ra[H[H[c>>2]+20>>2]](c)|0?41224:55639,l=13582,m=553,h=H[H[f>>2]+8>>2],Ra[h](i|0,j|0,k|0,l|0,m|0)|0)}c=H[a+4>>2];if((c|0)>0){g=N(c,40)+f|0;d=H[a>>2];c=f;while(1){e=H[d+4>>2];H[c>>2]=H[d>>2];H[c+4>>2]=e;e=H[d+36>>2];H[c+32>>2]=H[d+32>>2];H[c+36>>2]=e;e=H[d+28>>2];H[c+24>>2]=H[d+24>>2];H[c+28>>2]=e;e=H[d+20>>2];H[c+16>>2]=H[d+16>>2];H[c+20>>2]=e;e=H[d+12>>2];H[c+8>>2]=H[d+8>>2];H[c+12>>2]=e;d=d+40|0;c=c+40|0;if(g>>>0>c>>>0){continue}break}}b:{if(H[a+8>>2]<0){break b}c=H[a>>2];if(!c){break b}d=H[33808]+12|0;Ra[H[H[d>>2]+12>>2]](d,c)}H[a+8>>2]=b;H[a>>2]=f}function bu(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=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0);n=L[a+4>>2];o=L[b+4>>2];p=O(n+o);i=O(p+L[e>>2]);m=O(i*i);q=L[c+24>>2];j=O(q-L[d+24>>2]);r=L[c+16>>2];k=O(r-L[d+16>>2]);s=L[c+20>>2];l=O(s-L[d+20>>2]);i=O(O(j*j)+O(O(k*k)+O(l*l)));a=m<=i;a:{if(a){break a}m=O(W(i));b:{if(m<=O(9999999747378752e-21)){k=O(1);j=O(0);l=O(0);break b}i=O(O(1)/m);j=O(j*i);k=O(k*i);l=O(l*i)}b=H[g+4096>>2];if(b>>>0>63){break a}H[g+4096>>2]=b+1;b=(b<<6)+g|0;i=O(O(O(n+m)-o)*O(-.5));L[b+16>>2]=r+O(i*k);L[b+8>>2]=j;L[b+4>>2]=l;L[b>>2]=k;H[b+52>>2]=-1;L[b+12>>2]=m-p;L[b+24>>2]=q+O(i*j);L[b+20>>2]=s+O(i*l)}return!a|0}function by(a){a=a|0;var b=0,c=0;H[a>>2]=113200;b=H[a+4>>2];a:{if(!b){break a}c=H[b+12>>2];b:{if((c|0)<0|!(c&2147483647)){break b}c=H[b+4>>2];if(!c){break b}b=H[b>>2];Ra[H[H[b>>2]+12>>2]](b,c);b=H[a+4>>2];if(!b){break a}}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}H[a+4>>2]=0;b=H[a+8>>2];c:{if(!b){break c}c=H[b+12>>2];d:{if((c|0)<0|!(c&2147483647)){break d}c=H[b+4>>2];if(!c){break d}b=H[b>>2];Ra[H[H[b>>2]+12>>2]](b,c);b=H[a+8>>2];if(!b){break c}}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}H[a+8>>2]=0;b=H[a+176>>2];e:{if((b|0)<0|!(b&2147483647)){break e}b=H[a+168>>2];if(!b){break e}c=H[a+164>>2];Ra[H[H[c>>2]+12>>2]](c,b)}b=H[a+12>>2];if(b){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}return a|0}function RG(a){var b=0,c=0,d=0;c=I[a+68|0];if(c&1){EG(H[H[a+48>>2]+1136>>2],a);c=I[a+68|0]}if(!(c&8)){MG(H[a+56>>2])}SG(H[H[a+48>>2]+2364>>2],H[a+40>>2]);b=H[a+56>>2];if(b){c=H[H[a+48>>2]+2408>>2];H[c+280>>2]=H[c+280>>2]-1;H[b>>2]=H[c+288>>2];H[c+288>>2]=b}c=H[a+20>>2];if(c){a:{b=H[a+48>>2];b:{d=J[a+8>>1];if(d>>>0<=128){if(!c){break a}d=b+1572|0;H[d>>2]=H[d>>2]-1;b=b+1580|0;H[c>>2]=H[b>>2];break b}if(d>>>0<=256){if(!c){break a}d=b+1864|0;H[d>>2]=H[d>>2]-1;b=b+1872|0;H[c>>2]=H[b>>2];break b}if(d>>>0<=384){if(!c){break a}d=b+2156|0;H[d>>2]=H[d>>2]-1;b=b+2164|0;H[c>>2]=H[b>>2];break b}if(!c){break a}b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,c);break a}H[b>>2]=c}}H[H[a+52>>2]+60>>2]=0;return a}function E1(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=H[a+80>>2];a:{b:{c:{switch(b|0){case 0:b=H[c+4>>2];H[d+128>>2]=H[c>>2];H[d+132>>2]=b;H[d+152>>2]=H[c+24>>2];b=H[c+20>>2];H[d+144>>2]=H[c+16>>2];H[d+148>>2]=b;b=H[c+12>>2];H[d+136>>2]=H[c+8>>2];H[d+140>>2]=b;break b;case 1:b=H[c+4>>2];H[d+156>>2]=H[c>>2];H[d+160>>2]=b;H[d+180>>2]=H[c+24>>2];b=H[c+20>>2];H[d+172>>2]=H[c+16>>2];H[d+176>>2]=b;b=H[c+12>>2];H[d+164>>2]=H[c+8>>2];H[d+168>>2]=b;break b;case 2:break c;default:break a}}b=H[c+4>>2];H[d+184>>2]=H[c>>2];H[d+188>>2]=b;H[d+208>>2]=H[c+24>>2];b=H[c+20>>2];H[d+200>>2]=H[c+16>>2];H[d+204>>2]=b;b=H[c+12>>2];H[d+192>>2]=H[c+8>>2];H[d+196>>2]=b}F[d+477|0]=1;a=H[a+76>>2];Ra[H[H[a>>2]+36>>2]](a)}}function DO(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;a:{if(!b){break a}d=N(b,24);if(!d){break a}c=H[33808];e=c+12|0;e=(j=e,k=d,l=Ra[H[H[c>>2]+20>>2]](c)|0?30542:55639,m=13582,n=553,i=H[H[e>>2]+8>>2],Ra[i](j|0,k|0,l|0,m|0,n|0)|0)}c=H[a+4>>2];if((c|0)>0){h=N(c,24)+e|0;d=H[a>>2];c=e;while(1){f=H[d+4>>2];H[c>>2]=H[d>>2];H[c+4>>2]=f;f=J[d+10>>1]|J[d+12>>1]<<16;g=J[d+6>>1]|J[d+8>>1]<<16;G[c+6>>1]=g;G[c+8>>1]=g>>>16;G[c+10>>1]=f;G[c+12>>1]=f>>>16;G[c+14>>1]=J[d+14>>1];f=H[d+20>>2];H[c+16>>2]=H[d+16>>2];H[c+20>>2]=f;d=d+24|0;c=c+24|0;if(h>>>0>c>>>0){continue}break}}b:{if(H[a+8>>2]<0){break b}c=H[a>>2];if(!c){break b}d=H[33808]+12|0;Ra[H[H[d>>2]+12>>2]](d,c)}H[a+8>>2]=b;H[a>>2]=e}function CC(a){a=a|0;var b=0,c=0;H[a>>2]=114764;DC(a);b=H[a+360>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=H[a+352>>2];if(!b){break a}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}b=H[a+348>>2];b:{if((b|0)<0|!(b&2147483647)){break b}b=H[a+340>>2];if(!b){break b}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}b=H[a+332>>2];c:{if((b|0)<0|!(b&2147483647)){break c}b=H[a+324>>2];if(!b){break c}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}b=H[a+320>>2];d:{if((b|0)<0|!(b&2147483647)){break d}b=H[a+312>>2];if(!b){break d}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}iB(a+284|0);pC(a+52|0);H[a+16>>2]=0;H[a+8>>2]=0;H[a+12>>2]=0;b=H[a+20>>2];if(b){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}H[a+20>>2]=0;return a|0}function rg(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;e=H[a+20>>2];a:{b:{if(!e){break b}f=H[b>>2];d=f+(f<<15^-1)|0;d=N(d>>>10^d,9);d=d>>>6^d;d=(d<<11^-1)+d|0;g=e-1&(d>>>16^d);d=H[H[a+12>>2]+(g<<2)>>2];if((d|0)==-1){break b}h=a+4|0;j=H[a+8>>2];k=H[a+4>>2];while(1){i=d<<2;if(H[i+k>>2]==(f|0)){F[c|0]=1;break a}d=H[j+i>>2];if((d|0)!=-1){continue}break}}F[c|0]=0;if(H[a+36>>2]==H[a+16>>2]){c=e?e<<1:16;if(c>>>0>e>>>0){xg(a,c);e=H[a+20>>2]}b=H[b>>2];b=(b<<15^-1)+b|0;b=N(b>>>10^b,9);b=b>>>6^b;b=(b<<11^-1)+b|0;g=e-1&(b>>>16^b)}d=H[a+28>>2];H[a+28>>2]=d+1;b=H[a+12>>2]+(g<<2)|0;H[H[a+8>>2]+(d<<2)>>2]=H[b>>2];H[b>>2]=d;H[a+36>>2]=H[a+36>>2]+1;H[a+32>>2]=H[a+32>>2]+1;h=a+4|0}return H[h>>2]+(d<<2)|0}function dC(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0;e=H[a+20>>2];a:{b:{if(!e){break b}f=H[b>>2];d=f+(f<<15^-1)|0;d=N(d>>>10^d,9);d=d>>>6^d;d=(d<<11^-1)+d|0;g=e-1&(d>>>16^d);d=H[H[a+12>>2]+(g<<2)>>2];if((d|0)==-1){break b}h=a+4|0;i=H[a+8>>2];j=H[a+4>>2];while(1){if(H[(d<<3)+j>>2]==(f|0)){F[c|0]=1;break a}d=H[(d<<2)+i>>2];if((d|0)!=-1){continue}break}}F[c|0]=0;if(H[a+36>>2]==H[a+16>>2]){c=e?e<<1:16;if(c>>>0>e>>>0){$B(a,c);e=H[a+20>>2]}b=H[b>>2];b=(b<<15^-1)+b|0;b=N(b>>>10^b,9);b=b>>>6^b;b=(b<<11^-1)+b|0;g=e-1&(b>>>16^b)}d=H[a+28>>2];H[a+28>>2]=d+1;b=H[a+12>>2]+(g<<2)|0;H[H[a+8>>2]+(d<<2)>>2]=H[b>>2];H[b>>2]=d;H[a+36>>2]=H[a+36>>2]+1;H[a+32>>2]=H[a+32>>2]+1;h=a+4|0}return H[h>>2]+(d<<3)|0}function Ym(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0;e=H[a+20>>2];a:{b:{if(!e){break b}f=H[b>>2];d=f+(f<<15^-1)|0;d=N(d>>>10^d,9);d=d>>>6^d;d=(d<<11^-1)+d|0;g=e-1&(d>>>16^d);d=H[H[a+12>>2]+(g<<2)>>2];if((d|0)==-1){break b}h=a+4|0;i=H[a+8>>2];j=H[a+4>>2];while(1){if(H[(d<<3)+j>>2]==(f|0)){F[c|0]=1;break a}d=H[(d<<2)+i>>2];if((d|0)!=-1){continue}break}}F[c|0]=0;if(H[a+36>>2]==H[a+16>>2]){c=e?e<<1:16;if(c>>>0>e>>>0){om(a,c);e=H[a+20>>2]}b=H[b>>2];b=(b<<15^-1)+b|0;b=N(b>>>10^b,9);b=b>>>6^b;b=(b<<11^-1)+b|0;g=e-1&(b>>>16^b)}d=H[a+28>>2];H[a+28>>2]=d+1;b=H[a+12>>2]+(g<<2)|0;H[H[a+8>>2]+(d<<2)>>2]=H[b>>2];H[b>>2]=d;H[a+36>>2]=H[a+36>>2]+1;H[a+32>>2]=H[a+32>>2]+1;h=a+4|0}return H[h>>2]+(d<<3)|0}function Im(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;f=Oa-16|0;Oa=f;if(H[a+8>>2]){while(1){c=H[H[a+4>>2]+(g<<2)>>2]+16|0;d=Oa-16|0;Oa=d;if(J[b+52>>1]!=65535){e=J[b+52>>1];H[d+12>>2]=2;G[d+8>>1]=e;e=H[c+4772>>2];a:{if(e>>>0>=(H[c+4776>>2]&2147483647)>>>0){Rt(c+4768|0,d+8|0);break a}h=H[d+12>>2];e=H[c+4768>>2]+(e<<3)|0;H[e>>2]=H[d+8>>2];H[e+4>>2]=h;H[c+4772>>2]=H[c+4772>>2]+1}}Oa=d+16|0;g=g+1|0;if(g>>>0>2]){continue}break}}b=J[b+52>>1];b:{if((b|0)==65535){break b}H[H[a+40>>2]+(b<<2)>>2]=0;H[f+12>>2]=b;if((b|0)==(H[a+24>>2]-1|0)){H[a+24>>2]=b;break b}c=H[a+32>>2];if(c>>>0>=(H[a+36>>2]&2147483647)>>>0){qm(a+28|0,f+12|0);break b}H[H[a+28>>2]+(c<<2)>>2]=b;H[a+32>>2]=H[a+32>>2]+1}Oa=f+16|0}function qo(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;if(b){e=H[33808];c=e+12|0;e=(k=c,l=b,m=Ra[H[H[e>>2]+20>>2]](e)|0?30902:55639,n=13582,o=553,j=H[H[c>>2]+8>>2],Ra[j](k|0,l|0,m|0,n|0,o|0)|0)}else{e=0}d=H[a>>2];f=H[a+4>>2];if((f|0)>0){i=f-1|0;g=f&7;a:{if(!g){c=e;break a}c=e;while(1){F[c|0]=I[d|0];d=d+1|0;c=c+1|0;h=h+1|0;if((h|0)!=(g|0)){continue}break}}if(i>>>0>=7){f=e+f|0;while(1){F[c|0]=I[d|0];F[c+1|0]=I[d+1|0];F[c+2|0]=I[d+2|0];F[c+3|0]=I[d+3|0];F[c+4|0]=I[d+4|0];F[c+5|0]=I[d+5|0];F[c+6|0]=I[d+6|0];F[c+7|0]=I[d+7|0];d=d+8|0;c=c+8|0;if((f|0)!=(c|0)){continue}break}}d=H[a>>2]}if(!(!d|H[a+8>>2]<0)){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,d)}H[a+8>>2]=b;H[a>>2]=e}function LH(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=O(0),j=0,k=0,l=0,m=0,n=O(0),o=O(0),p=O(0),q=O(0),r=O(0);g=Oa-80|0;Oa=g;h=H[a+48>>2];if(I[h+60|0]){fH(h);h=H[a+48>>2]}j=H[h+8>>2];k=H[h+28>>2];l=H[h+24>>2];h=H[h+4>>2];m=H[a+44>>2];c=N(m,24)+c|0;n=L[c>>2];o=L[c+12>>2];p=L[c+16>>2];q=L[c+20>>2];r=L[c+4>>2];i=L[(m<<2)+d>>2];L[g+4>>2]=L[c+8>>2]-i;L[g>>2]=r-i;H[g+64>>2]=-1;H[g+56>>2]=-1;H[g+48>>2]=-1;H[g+40>>2]=-1;H[g+32>>2]=-1;H[g+24>>2]=-1;L[g+12>>2]=i+q;L[g+8>>2]=i+p;c=(B(O(i+o)),v(2));H[g+20>>2]=(c|0)>=0?c|-2147483648:c^-1;c=(B(O(n-i)),v(2));H[g+16>>2]=(c|0)>=0?c|-2147483648:c^-1;a=a+44|0;c=g+16|0;MH(b,f,j,h,l,k,1,a,c,g,e);NH(b,f,1,a,c,g,j,h,l,k,e);Oa=g+80|0}function hy(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:{if(!b){break a}c=H[33808];d=c+12|0;c=(i=d,j=(b<<5)+131|0,k=Ra[H[H[c>>2]+20>>2]](c)|0?40080:55639,l=13582,m=553,h=H[H[d>>2]+8>>2],Ra[h](i|0,j|0,k|0,l|0,m|0)|0);if(!c){break a}f=c+131&-128;H[f-4>>2]=f-c}c=H[a+4>>2];if((c|0)>0){g=(c<<5)+f|0;d=H[a>>2];c=f;while(1){e=H[d+4>>2];H[c>>2]=H[d>>2];H[c+4>>2]=e;e=H[d+28>>2];H[c+24>>2]=H[d+24>>2];H[c+28>>2]=e;e=H[d+20>>2];H[c+16>>2]=H[d+16>>2];H[c+20>>2]=e;e=H[d+12>>2];H[c+8>>2]=H[d+8>>2];H[c+12>>2]=e;d=d+32|0;c=c+32|0;if(g>>>0>c>>>0){continue}break}}b:{if(H[a+8>>2]<0){break b}c=H[a>>2];if(!c){break b}d=H[33808]+12|0;Ra[H[H[d>>2]+12>>2]](d,c-H[c-4>>2]|0)}H[a+8>>2]=b;H[a>>2]=f}function yV(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0);o=L[c+4>>2];p=L[a+4>>2];i=L[d>>2];f=O(i+i);m=L[d+8>>2];n=L[d+4>>2];h=L[d+12>>2];k=O(h+h);l=L[c+8>>2];g=O(O(O(f*m)-O(n*k))*l);j=O(O(L[b+24>>2]-L[d+24>>2])-g);g=O(O(-g)-g);h=O(O(O(i*f)+O(O(h*k)+O(-1)))*l);i=O(O(L[b+16>>2]-L[d+16>>2])-h);h=O(O(-h)-h);f=O(l*O(O(m*k)+O(f*n)));k=O(O(-f)-f);f=O(O(L[b+20>>2]-L[d+20>>2])-f);l=O(O(j*g)+O(O(i*h)+O(k*f)));a:{if(l<=O(0)){break a}m=O(O(g*g)+O(O(h*h)+O(k*k)));if(m<=l){j=O(j-g);f=O(f-k);i=O(i-h);break a}n=g;g=O(l/m);j=O(j-O(n*g));f=O(f-O(k*g));i=O(i-O(h*g))}g=O(O(j*j)+O(O(i*i)+O(f*f)));j=O(p+o);return g<=O(j*j)|0}function rr(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;if(I[a+6352|0]){o5(H[33808],8,9281,2961,65331,0);return}d=a+5584|0;ND(d);e=PD(d,0);d=PD(d,1);F[a+6352|0]=1;if(c){c=H[a+6092>>2];Ra[H[H[c>>2]+8>>2]](c);c=H[a+6092>>2];Ra[H[H[c>>2]+12>>2]](c)}H[a+6192>>2]=1;H[a+6188>>2]=b;H[a+6184>>2]=H[a+6092>>2];if(b){Ra[H[H[b>>2]+16>>2]](b)}b=a+6168|0;if(e){c=a+5764|0;H[c>>2]=b;H[a+5768>>2]=1;Ra[H[H[a+6168>>2]+16>>2]](b);H[a+5760>>2]=H[H[c>>2]+16>>2]}if(d){c=a+5804|0;H[c>>2]=b;H[a+5808>>2]=1;Ra[H[H[a+6168>>2]+16>>2]](b);H[a+5800>>2]=H[H[c>>2]+16>>2]}c=H[a+6184>>2];Ra[H[H[c>>2]+72>>2]](c,b);if(e){b=H[a+5760>>2];Ra[H[H[b>>2]+72>>2]](b,a+5744|0)}if(d){b=H[a+5800>>2];Ra[H[H[b>>2]+72>>2]](b,a+5784|0)}}function BX(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=H[a+268>>2]&2147483647;g=d?d<<1:1;c=0;a:{if(!g){break a}d=g<<2;if(!(I[a+256|0]|d>>>0>256)){F[a+256|0]=1;c=a;break a}c=0;if(!d){break a}c=H[33808];e=c+12|0;c=(j=e,k=d,l=Ra[H[H[c>>2]+20>>2]](c)|0?25032:55639,m=13582,n=553,i=H[H[e>>2]+8>>2],Ra[i](j|0,k|0,l|0,m|0,n|0)|0)}d=H[a+260>>2];e=H[a+264>>2];if((e|0)>0){h=(e<<2)+c|0;e=d;f=c;while(1){H[f>>2]=H[e>>2];e=e+4|0;f=f+4|0;if(h>>>0>f>>>0){continue}break}e=H[a+264>>2]}H[(e<<2)+c>>2]=H[b>>2];b:{if(H[a+268>>2]<0){break b}if((a|0)==(d|0)){F[a+256|0]=0;break b}if(!d){break b}b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,d)}H[a+268>>2]=g;H[a+260>>2]=c;H[a+264>>2]=H[a+264>>2]+1}function oI(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;f=Oa-32|0;Oa=f;i=I[H[b+28>>2]- -64|0]<<3&32;g=H[b+4>>2];g=I[H[g+44>>2]+9|0]-1>>>0<2?g:0;a:{if(!g){break a}g=H[g+44>>2];if(I[g+9|0]!=2){i=i|I[g+44|0]<<4&16|1;break a}i=i|2}b=H[b+28>>2];g=H[b+28>>2];j=H[b+24>>2];k=H[b+20>>2];l=H[b+16>>2];b=I[H[c+28>>2]- -64|0]<<3&32;h=H[c+4>>2];h=I[H[h+44>>2]+9|0]-1>>>0<2?h:0;b:{if(!h){break b}h=H[h+44>>2];if(I[h+9|0]!=2){b=b|I[h+44|0]<<4&16|1;break b}b=b|2}c=H[c+28>>2];h=H[c+24>>2];m=H[c+28>>2];a=H[a+2188>>2];n=H[c+16>>2];c=H[c+20>>2];H[f+28>>2]=g;H[f+24>>2]=j;H[f+20>>2]=k;H[f+16>>2]=l;H[f+8>>2]=h;H[f+12>>2]=m;H[f>>2]=n;H[f+4>>2]=c;Ra[H[H[a>>2]+4>>2]](a,d,i,f+16|0,b,f,e);Oa=f+32|0}function ei(a,b,c){var d=O(0),e=0,f=0,g=O(0);d=L[H[a>>2]+5132>>2];g=L[a+56>>2];e=d>g&c;if((b|c)&I[a+60|0]!=0?1:e){d=e?d:g;if(H[a+88>>2]){while(1){c=H[H[a+84>>2]+(f<<2)>>2];e=c+48|0;a:{b:{c:{switch((H[c+52>>2]>>>30|0)-2|0){case 0:b=H[e>>2];if(I[b+4785|0]){break b}default:L[c+308>>2]=d;H[c+312>>2]=0;WF(c- -64|0,d,1);break a;case 1:break c}}b=H[e>>2]}L[c+308>>2]=d;H[c+312>>2]=0;$t(b,e);H[c+316>>2]=H[c+316>>2]&-117440513|83886080}f=f+1|0;if(f>>>0>2]){continue}break}}F[a+60|0]=0;L[a+56>>2]=d;d:{e:{switch((H[a+4>>2]>>>30|0)-2|0){case 1:c=H[a>>2];break d;case 0:c=H[a>>2];if(I[c+4785|0]){break d}break;default:break e}}L[a+44>>2]=d;return}$t(c,a);H[a+4>>2]=H[a+4>>2]&-897|640}}function LT(a,b,c){var d=0,e=0,f=0;a:{b:{c:{d:{e:{d=J[a+4>>1];switch(d|0){case 1:break d;case 0:break e;default:break c}}F[a+7|0]=1;G[a+4>>1]=1;H[a>>2]=b;return}d=H[a>>2];c=Ra[H[H[c>>2]>>2]](c,8)|0;H[a>>2]=c;H[c>>2]=d;F[a+7|0]=0;e=a+6|0;break b}e=a+6|0;if(!I[a+6|0]){d=d|d>>>1;d=d>>>2|d;d=d>>>4|d;d=d>>>8|d;d=R6(Ra[H[H[c>>2]>>2]](c,((d>>>16|d)<<2)+4|0)|0,H[a>>2],J[a+4>>1]<<2);if(I[a+6|0]){Ra[H[H[c>>2]+4>>2]](c,H[a>>2],0)}H[a>>2]=d;break b}if((i7(d)|0)!=1){break a}if(Ra[H[H[c>>2]+8>>2]](c,d,d<<1)|0){break a}f=R6(Ra[H[H[c>>2]>>2]](c,d<<3)|0,H[a>>2],J[a+4>>1]<<2);if(I[a+6|0]){Ra[H[H[c>>2]+4>>2]](c,H[a>>2],d<<2)}H[a>>2]=f}F[e|0]=1}c=J[a+4>>1];G[a+4>>1]=c+1;H[H[a>>2]+(c<<2)>>2]=b}function rQ(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;e=H[a+28>>2];f=H[e+4688>>2];if(f){a=0;while(1){b=H[H[e+4684>>2]+(a<<2)>>2];a:{if(!(b&1)){break a}b=b&-2;d=H[b+8>>2];c=H[b+4>>2];b=b?b+4|0:0;WD(c,b);WD(d,b);b=I[H[d+44>>2]+9|0];c=H[(I[H[c+44>>2]+9|0]-1>>>0<2?c:0)+100>>2];H[c+148>>2]=H[c+148>>2]+1;if(b-1>>>0>1){break a}b=H[d+100>>2];H[b+148>>2]=H[b+148>>2]+1}a=a+1|0;if((f|0)!=(a|0)){continue}break}}c=H[e+4700>>2];if(c){a=0;while(1){b=H[H[e+4696>>2]+(a<<2)>>2];if(b&1){b=b&-2;d=b+4|0;b:{c:{switch(I[b+24|0]){case 0:GQ(b,0);break b;case 1:pR(b);break b;case 4:NG(d);break b;case 5:break c;default:break b}}nE(d)}WD(H[b+4>>2],d);WD(H[b+8>>2],d)}a=a+1|0;if((c|0)!=(a|0)){continue}break}}}function ZQ(a,b,c){var d=0,e=0,f=0,g=0;H[a+4>>2]=b;H[a>>2]=0;H[a+8>>2]=H[a+8>>2]&2147483647;f=H[b+40>>2];d=H[f+2376>>2];e=H[d+12>>2];a:{if(e){g=e-1|0;e=H[H[d+8>>2]+(g<<2)>>2];H[d+12>>2]=g;break a}e=H[d+4>>2];H[d+4>>2]=e+1}d=e&2147483647;H[a+8>>2]=d|H[a+8>>2]&-2147483648;d=d+1|0;e=H[f+1140>>2];f=H[e+12>>2]&2147483647;if(d>>>0>=f>>>0){d=d|d>>>1;d=d>>>2|d;d=d>>>4|d;d=d>>>8|d;d=(d>>>16|d)+1|0;if(d>>>0>f>>>0){ZH(e,d)}H[e+8>>2]=d}H[a>>2]=H[b+32>>2];H[b+32>>2]=a;H[b+36>>2]=H[b+36>>2]+1;H[a+36>>2]=-1;H[a+28>>2]=c;H[a+16>>2]=-128;c=H[H[H[a+4>>2]+40>>2]+2368>>2];b=H[c+12>>2];b:{if(b){d=b-1|0;b=H[H[c+8>>2]+(d<<2)>>2];H[c+12>>2]=d;break b}b=H[c+4>>2];H[c+4>>2]=b+1}H[a+32>>2]=b;WQ(a)}function sS(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=O(0);g=Oa-48|0;Oa=g;h=H[c+36>>2];if(h){j=H[c+40>>2];i=H[((H[a+96>>2]<<2)+a|0)+100>>2];k=H[a+8>>2];H[g+32>>2]=3;L[g+36>>2]=L[b+40>>2];L[g+40>>2]=L[b+44>>2];L[g+44>>2]=L[b+48>>2];b=H[c+24>>2];x(0,H[c+20>>2]);x(1,b|0);l=+z();b=H[c+32>>2];x(0,H[c+28>>2]);x(1,b|0);m=+z();b=H[c+16>>2];x(0,H[c+12>>2]);x(1,b|0);n=+z();o=M[d>>3];p=M[d+8>>3];q=M[d+16>>3];L[g>>2]=L[a+244>>2];L[g+4>>2]=L[a+248>>2];L[g+8>>2]=L[a+252>>2];r=L[a+256>>2];L[g+24>>2]=q-m;L[g+20>>2]=p-l;L[g+16>>2]=o-n;L[g+12>>2]=r;a=tS(a,c,f,e,g+32|0,g,h,N(j,36)+k|0,h>>>0>i>>>0?i:0)}else{a=0}Oa=g+48|0;return a|0}function _P(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;h=H[a+28>>2];a=H[h+980>>2];i=H[a+332>>2];if(i){j=H[a+328>>2];while(1){i=i-1|0;f=H[j+8>>2];a:{if(!f){break a}b:{d=I[f+24|0];switch(d|0){case 0:case 2:break b;default:break a}}g=H[f+12>>2];a=N(d,12)+h|0;c=H[a+56>>2]-1|0;H[a+56>>2]=c;b=H[a+52>>2];e=g<<2;H[b+e>>2]=H[b+(c<<2)>>2];H[f+12>>2]=-1;if(c>>>0>g>>>0){H[H[e+H[a+52>>2]>>2]+8>>2]=g}c=(d<<2)+h|0;d=H[c+88>>2];c:{if(d>>>0<=g>>>0){break c}b=c;c=d-1|0;H[b+88>>2]=c;if(c>>>0>=K[a+56>>2]){break c}b=e;e=H[a+52>>2];b=b+e|0;d=H[b>>2];k=b;b=e;e=c<<2;b=H[b+e>>2];H[k>>2]=b;H[e+H[a+52>>2]>>2]=d;H[d+8>>2]=c;H[b+8>>2]=g}kI(H[h+2168>>2],f)}j=j+12|0;if(i){continue}break}}}function gZ(a,b,c,d){var e=0,f=0,g=0,h=0,i=O(0),j=0,k=O(0),l=O(0),m=O(0),n=0,o=0,p=O(0),q=0,r=0;j=Oa-32|0;e=j;H[e+24>>2]=0;H[e+28>>2]=0;H[e+16>>2]=0;H[e+20>>2]=0;H[e+8>>2]=0;H[e+12>>2]=0;H[e>>2]=0;H[e+4>>2]=0;k=L[b+8>>2];e=H[a>>2];g=N(e,12)+c|0;l=L[b>>2];m=L[b+4>>2];i=O(O(k*L[g+8>>2])+O(O(l*L[g>>2])+O(m*L[g+4>>2])));q=H[d+20>>2];r=H[d+16>>2];while(1){a:{b=(e<<2)+r|0;d=J[b+2>>1];b=J[b>>1];H[a>>2]=e;if(!b){break a}d=d+q|0;g=e;while(1){b=b-1|0;h=I[d|0];f=1<>>3&28)+j|0;o=H[n>>2];if(!(f&o)){H[n>>2]=f|o;f=N(h,12)+c|0;p=O(O(k*L[f+8>>2])+O(O(l*L[f>>2])+O(m*L[f+4>>2])));f=p>i;i=f?p:i;g=f?h:g}d=d+1|0;if(b&65535){continue}break}b=(e|0)!=(g|0);e=g;if(b){continue}}break}}function DQ(a,b,c){var d=0,e=0;G[a+66>>1]=J[b>>1];a:{switch(H[a+68>>2]-5|0){case 0:b:{if(J[a+120>>1]>=c>>>0){e=c<<1;d=H[a+116>>2];break b}d=H[a+116>>2];if(!(!d|!I[a+65|0])){e=H[33808]+12|0;Ra[H[H[e>>2]+12>>2]](e,d);G[a+120>>1]=0}d=H[33808]+12|0;e=c<<1;d=Ra[H[H[d>>2]+8>>2]](d,e,20591,15033,109)|0;G[a+120>>1]=c;H[a+116>>2]=d;F[a+65|0]=1}R6(d,b,e);G[a+120>>1]=c;return;case 1:c:{if(J[a+100>>1]>=c>>>0){e=c<<1;d=H[a+96>>2];break c}d=H[a+96>>2];if(!(!d|!I[a+65|0])){e=H[33808]+12|0;Ra[H[H[e>>2]+12>>2]](e,d);G[a+100>>1]=0}d=H[33808]+12|0;e=c<<1;d=Ra[H[H[d>>2]+8>>2]](d,e,20591,15033,109)|0;G[a+100>>1]=c;H[a+96>>2]=d;F[a+65|0]=1}R6(d,b,e);G[a+100>>1]=c;break;default:break a}}}function tH(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;c=H[a+8>>2]&2147483647;f=c?c<<1:1;a:{if(!f){break a}c=N(f,12);if(!c){break a}e=H[33808];d=e+12|0;e=(j=d,k=c,l=Ra[H[H[e>>2]+20>>2]](e)|0?31128:55639,m=13582,n=553,i=H[H[d>>2]+8>>2],Ra[i](j|0,k|0,l|0,m|0,n|0)|0)}c=H[a+4>>2];if((c|0)>0){g=N(c,12)+e|0;d=H[a>>2];c=e;while(1){h=H[d+4>>2];H[c>>2]=H[d>>2];H[c+4>>2]=h;H[c+8>>2]=H[d+8>>2];d=d+12|0;c=c+12|0;if(g>>>0>c>>>0){continue}break}c=H[a+4>>2]}d=H[b+4>>2];c=N(c,12)+e|0;H[c>>2]=H[b>>2];H[c+4>>2]=d;H[c+8>>2]=H[b+8>>2];b:{if(H[a+8>>2]<0){break b}b=H[a>>2];if(!b){break b}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}H[a+8>>2]=f;H[a>>2]=e;H[a+4>>2]=H[a+4>>2]+1}function hD(a){a=a|0;var b=0,c=0;H[a>>2]=114876;b=H[a+708>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=H[a+700>>2];if(!b){break a}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+696>>2];b:{if((b|0)<0|!(b&2147483647)){break b}b=H[a+688>>2];if(!b){break b}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+648>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+640>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}H[a+640>>2]=0;b=H[a+644>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}H[a+644>>2]=0;b=H[a+628>>2];c:{if((b|0)<0|!(b&2147483647)){break c}b=H[a+620>>2];if(!b){break c}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}IB(a+4|0);return a|0}function gX(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;c=H[a+8>>2]&2147483647;f=c?c<<1:1;a:{if(!f){break a}c=N(f,12);if(!c){break a}e=H[33808];d=e+12|0;e=(j=d,k=c,l=Ra[H[H[e>>2]+20>>2]](e)|0?40582:55639,m=13582,n=553,i=H[H[d>>2]+8>>2],Ra[i](j|0,k|0,l|0,m|0,n|0)|0)}c=H[a+4>>2];if((c|0)>0){g=N(c,12)+e|0;d=H[a>>2];c=e;while(1){h=H[d+4>>2];H[c>>2]=H[d>>2];H[c+4>>2]=h;H[c+8>>2]=H[d+8>>2];d=d+12|0;c=c+12|0;if(g>>>0>c>>>0){continue}break}c=H[a+4>>2]}d=H[b+4>>2];c=N(c,12)+e|0;H[c>>2]=H[b>>2];H[c+4>>2]=d;H[c+8>>2]=H[b+8>>2];b:{if(H[a+8>>2]<0){break b}b=H[a>>2];if(!b){break b}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}H[a+8>>2]=f;H[a>>2]=e;H[a+4>>2]=H[a+4>>2]+1}function Hy(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:{if(!b){break a}d=N(b,36);if(!d){break a}c=H[33808];f=c+12|0;f=(i=f,j=d,k=Ra[H[H[c>>2]+20>>2]](c)|0?29336:55639,l=13582,m=553,h=H[H[f>>2]+8>>2],Ra[h](i|0,j|0,k|0,l|0,m|0)|0)}c=H[a+4>>2];if((c|0)>0){g=N(c,36)+f|0;d=H[a>>2];c=f;while(1){e=H[d+4>>2];H[c>>2]=H[d>>2];H[c+4>>2]=e;H[c+32>>2]=H[d+32>>2];e=H[d+28>>2];H[c+24>>2]=H[d+24>>2];H[c+28>>2]=e;e=H[d+20>>2];H[c+16>>2]=H[d+16>>2];H[c+20>>2]=e;e=H[d+12>>2];H[c+8>>2]=H[d+8>>2];H[c+12>>2]=e;d=d+36|0;c=c+36|0;if(g>>>0>c>>>0){continue}break}}b:{if(H[a+8>>2]<0){break b}c=H[a>>2];if(!c){break b}d=H[33808]+12|0;Ra[H[H[d>>2]+12>>2]](d,c)}H[a+8>>2]=b;H[a>>2]=f}function Uf(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;if(H[a+36>>2]+(Ra[H[H[b>>2]+76>>2]](b)|0)>>>0>K[a+28>>2]){o5(H[33808],2,8670,249,20102,0);return 0}if(Ra[H[H[b>>2]+96>>2]](b)|0){o5(H[33808],2,8670,255,17678,0);return 0}if(Ra[H[H[b>>2]+24>>2]](b)|0){o5(H[33808],2,8670,261,18782,0);return 0}c=Ra[H[H[b>>2]+100>>2]](b)|0;H[c+96>>2]=a;if(H[c+88>>2]){g=a+8|0;h=H[c+84>>2];while(1){d=H[(e<<2)+h>>2];og(d+H[(J[d+4>>1]<<2)+73232>>2]|0,a);f=H[a+36>>2];H[a+36>>2]=f+1;H[H[a+40>>2]+(f<<2)>>2]=d;ut(g,d+48|0);e=e+1|0;if(e>>>0>2]){continue}break}}a:{if((H[a+12>>2]>>>30|0)-3>>>0<4294967294){break a}a=H[a+8>>2];if(!a){break a}a=a-16|0;if(!a){break a}mp(a,b)}return 1}function wG(a,b){var c=0,d=0,e=0;d=Oa-16|0;Oa=d;c=J[a>>1];e=J[b>>1]|c&1024;G[b>>1]=e;a:{if((c|0)==(e|0)){break a}G[a>>1]=e;a=H[a+60>>2];if(!a){break a}G[d+8>>1]=c;G[d>>1]=J[b>>1];c=J[d>>1];G[a+10>>1]=c;b=J[d+8>>1]&6;c=c&6;b:{if(!(b|!c)){c=H[a+60>>2];b=H[a- -64>>2];if(!((H[c+164>>2]?0:c)|(H[b+164>>2]?0:b))){if(c){CG(H[c+164>>2],H[H[a+48>>2]+1136>>2]);break b}CG(H[b+164>>2],H[H[a+48>>2]+1136>>2]);break b}DG(H[H[a+48>>2]+1136>>2],a);break b}c:{if(!b|c){break c}if(!(F[a+68|0]&1)){b=H[a+60>>2];d:{if(b){b=H[b+164>>2];if(b){break d}}b=H[a- -64>>2];if(!b){break c}b=H[b+164>>2];if(!b){break c}}IG(H[H[a+48>>2]+1136>>2],b,0);break b}EG(H[H[a+48>>2]+1136>>2],a)}}}Oa=d+16|0}function FC(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;if(!e){return 1}if(!(H[a+4>>2]?f:0)){F[a+337|0]=1}d=lB(a+284|0,b,c,d,e);a:{if(!I[a+336|0]|!H[a+4>>2]){break a}F[a+338|0]=1;if(!d|f){break a}c=a+56|0;f=0;while(1){j=H[H[a+300>>2]+(H[(f<<2)+b>>2]<<2)>>2];l=H[a+48>>2];i=H[c>>2];k=c+N(i,48)|0;g=H[k+12>>2];b:{c:{if(g){if(!H[g+588>>2]){break c}break b}g=H[33808];h=Ra[H[H[g>>2]+20>>2]](g)|0?38680:55639;h=Ra[H[H[g+12>>2]+8>>2]](g+12|0,616,h,8969,88)|0;g=HB(h);H[k+12>>2]=h}H[(c+N(i,48)|0)+8>>2]=l}H[c+112>>2]=0;cC(c,(c+N(i,48)|0)+16|0,j,SB(g,j,H[H[c+104>>2]+8>>2],c+108|0));f=f+1|0;if((d|0)!=(f|0)){continue}break}}return(d|0)==(e|0)|0}function ey(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;a:{if(!b){break a}c=H[33808];d=c+12|0;c=(h=d,i=(b<<5)+131|0,j=Ra[H[H[c>>2]+20>>2]](c)|0?21466:55639,k=13582,l=553,g=H[H[d>>2]+8>>2],Ra[g](h|0,i|0,j|0,k|0,l|0)|0);if(!c){break a}e=c+131&-128;H[e-4>>2]=e-c}c=H[a+4>>2];if((c|0)>0){f=(c<<5)+e|0;d=H[a>>2];c=e;while(1){L[c>>2]=L[d>>2];L[c+4>>2]=L[d+4>>2];L[c+8>>2]=L[d+8>>2];H[c+12>>2]=H[d+12>>2];L[c+16>>2]=L[d+16>>2];L[c+20>>2]=L[d+20>>2];L[c+24>>2]=L[d+24>>2];H[c+28>>2]=H[d+28>>2];d=d+32|0;c=c+32|0;if(f>>>0>c>>>0){continue}break}}b:{if(H[a+8>>2]<0){break b}c=H[a>>2];if(!c){break b}d=H[33808]+12|0;Ra[H[H[d>>2]+12>>2]](d,c-H[c-4>>2]|0)}H[a+8>>2]=b;H[a>>2]=e}function Zj(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;c=H[a+28>>2]&2147483647;g=c?c<<1:1;d=0;a:{if(!g){break a}e=g<<2;if(!(I[a+16|0]|e>>>0>16)){F[a+16|0]=1;d=a;break a}d=0;if(!e){break a}c=H[33808];d=c+12|0;d=(j=d,k=e,l=Ra[H[H[c>>2]+20>>2]](c)|0?51052:55639,m=13582,n=553,i=H[H[d>>2]+8>>2],Ra[i](j|0,k|0,l|0,m|0,n|0)|0)}f=H[a+24>>2];e=d+(f<<2)|0;if((f|0)>0){h=H[a+20>>2];c=d;while(1){H[c>>2]=H[h>>2];h=h+4|0;c=c+4|0;if(e>>>0>c>>>0){continue}break}}H[e>>2]=H[b>>2];b:{if(H[a+28>>2]<0){break b}c=H[a+20>>2];if((c|0)==(a|0)){F[a+16|0]=0;break b}if(!c){break b}b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,c);f=H[a+24>>2]}H[a+28>>2]=g;H[a+20>>2]=d;H[a+24>>2]=f+1}function Nr(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;c=H[a+28>>2]&2147483647;g=c?c<<1:1;d=0;a:{if(!g){break a}e=g<<2;if(!(I[a+16|0]|e>>>0>16)){F[a+16|0]=1;d=a;break a}d=0;if(!e){break a}c=H[33808];d=c+12|0;d=(j=d,k=e,l=Ra[H[H[c>>2]+20>>2]](c)|0?50940:55639,m=13582,n=553,i=H[H[d>>2]+8>>2],Ra[i](j|0,k|0,l|0,m|0,n|0)|0)}f=H[a+24>>2];e=d+(f<<2)|0;if((f|0)>0){h=H[a+20>>2];c=d;while(1){H[c>>2]=H[h>>2];h=h+4|0;c=c+4|0;if(e>>>0>c>>>0){continue}break}}H[e>>2]=H[b>>2];b:{if(H[a+28>>2]<0){break b}c=H[a+20>>2];if((c|0)==(a|0)){F[a+16|0]=0;break b}if(!c){break b}b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,c);f=H[a+24>>2]}H[a+28>>2]=g;H[a+20>>2]=d;H[a+24>>2]=f+1}function No(a){a=a|0;var b=0,c=0;H[a>>2]=110736;b=H[a+60>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=H[a+52>>2];if(!b){break a}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}b=H[a+48>>2];b:{if((b|0)<0|!(b&2147483647)){break b}b=H[a+40>>2];if(!b){break b}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}b=H[a+36>>2];c:{if((b|0)<0|!(b&2147483647)){break c}b=H[a+28>>2];if(!b){break c}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}b=H[a+24>>2];d:{if((b|0)<0|!(b&2147483647)){break d}b=H[a+16>>2];if(!b){break d}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}b=H[a+12>>2];e:{if((b|0)<0|!(b&2147483647)){break e}b=H[a+4>>2];if(!b){break e}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}return a|0}function wM(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;a:{if(J[a+68>>1]<=1){f=H[c+4624>>2];if(!f){break a}c=J[a+34>>1];a=0;if(f-1>>>0>=3){h=f&-4;e=b<<1;while(1){g=a<<2;G[e+(g+d|0)>>1]=c;G[e+((g|4)+d|0)>>1]=c;G[e+((g|8)+d|0)>>1]=c;G[e+((g|12)+d|0)>>1]=c;a=a+4|0;i=i+4|0;if((h|0)!=(i|0)){continue}break}}e=f&3;if(!e){break a}while(1){G[((a<<2)+d|0)+(b<<1)>>1]=c;a=a+1|0;j=j+1|0;if((e|0)!=(j|0)){continue}break}break a}e=H[c+4624>>2];if(!e){break a}f=H[a- -64>>2];g=H[H[a+60>>2]+44>>2];a=0;while(1){h=H[((a<<6)+c|0)+580>>2];G[((a<<2)+d|0)+(b<<1)>>1]=J[f+((I[(g+(h<<1&-4)|0)+(h&1?3:2)|0]&127)<<1)>>1];a=a+1|0;if((e|0)!=(a|0)){continue}break}}return 1}function Ns(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;h=H[33772];a:{if(I[a+36|0]&2){f=H[a+40>>2];e=J[f+124>>1];f=(e|0)==1?f+120|0:H[H[a+32>>2]+4856>>2]+(H[f+120>>2]<<1)|0;break a}a=a+48|0;f=EQ(a);g=H[a+68>>2];e=1;b:{if(g-7>>>0<4294967294){break b}e=J[a+120>>1];if((g|0)==5){break b}e=J[a+100>>1]}}a=0;e=e-d|0;e=(e|0)>0?e:0;c=c>>>0>e>>>0?e:c;c:{if(!c){break c}e=(d<<1)+f|0;if((c|0)!=1){f=c&2147483646;d=0;while(1){H[(a<<2)+b>>2]=H[H[h+40>>2]+(J[e+(a<<1)>>1]<<2)>>2];g=a|1;H[(g<<2)+b>>2]=H[H[h+40>>2]+(J[e+(g<<1)>>1]<<2)>>2];a=a+2|0;d=d+2|0;if((f|0)!=(d|0)){continue}break}}if(!(c&1)){break c}H[(a<<2)+b>>2]=H[H[h+40>>2]+(J[e+(a<<1)>>1]<<2)>>2]}return c|0}function GT(a,b,c,d,e,f,g,h){var 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=O(0),w=O(0);p=M[g+16>>3];k=p+ +L[h+8>>2];v=L[f+8>>2];c=O(c*O(.5));b=O(b+d);l=+O(O(O(P(v))*c)+b);u=k+l;j=p+l;u=j>3];m=q+ +L[h+4>>2];d=L[f+4>>2];j=+O(O(O(P(d))*c)+b);o=m+j;r=q+j;r=o>r?o:r;s=M[g>>3];n=s+ +L[h>>2];w=L[f>>2];o=+O(O(O(P(w))*c)+b);t=n+o;i=s+o;t=ik?k:i;m=m-j;i=q-j;m=i>m?m:i;n=n-o;i=s-o;n=i>n?n:i;a:{if(e!=O(0)){q=q-+O(d*e);i=q+j;r=i>r?i:r;s=s-+O(w*e);i=s+o;t=i>t?i:t;p=p-+O(v*e);i=p-l;k=i>3]=t;M[a+16>>3]=k;M[a+8>>3]=m;M[a>>3]=n;M[a+40>>3]=l;M[a+32>>3]=r}function sq(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;d=H[a+8>>2]&2147483647;i=d?d<<1:1;a:{if(!i){break a}c=i<<4;if(!c){break a}e=H[33808];d=e+12|0;e=(k=d,l=c,m=Ra[H[H[e>>2]+20>>2]](e)|0?23648:55639,n=13582,o=553,j=H[H[d>>2]+8>>2],Ra[j](k|0,l|0,m|0,n|0,o|0)|0)}h=H[a+4>>2];g=(h<<4)+e|0;d=H[a>>2];if((h|0)>0){f=d;c=e;while(1){L[c>>2]=L[f>>2];L[c+4>>2]=L[f+4>>2];L[c+8>>2]=L[f+8>>2];H[c+12>>2]=H[f+12>>2];f=f+16|0;c=c+16|0;if(g>>>0>c>>>0){continue}break}}L[g>>2]=L[b>>2];L[g+4>>2]=L[b+4>>2];L[g+8>>2]=L[b+8>>2];H[g+12>>2]=H[b+12>>2];if(!(!d|H[a+8>>2]<0)){b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,d);h=H[a+4>>2]}H[a+8>>2]=i;H[a>>2]=e;H[a+4>>2]=h+1}function e$(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=0,o=O(0);e=Oa+-64|0;Oa=e;n=H[c+36>>2];h=L[b+4>>2];j=O(h+h);g=L[b+8>>2];k=O(j*g);f=L[b>>2];i=O(f+f);m=L[b+12>>2];l=O(i*m);L[e+28>>2]=k-l;L[e+20>>2]=k+l;f=O(O(1)-O(f*i));k=O(h*j);L[e+32>>2]=f-k;o=f;f=O(g+g);l=O(g*f);L[e+16>>2]=o-l;g=O(i*g);j=O(j*m);L[e+24>>2]=g+j;h=O(i*h);i=O(f*m);L[e+12>>2]=h-i;L[e+8>>2]=g-j;L[e+4>>2]=h+i;L[e>>2]=O(O(1)-k)-l;L[e+36>>2]=L[b+16>>2];L[e+40>>2]=L[b+20>>2];L[e+44>>2]=L[b+24>>2];L[e+48>>2]=L[a+4>>2];L[e+52>>2]=L[a+8>>2];L[e+56>>2]=L[a+12>>2];a=Ra[H[(J[n+4>>1]<<2)+128516>>2]](e,n,d,c+4|0,0)|0;Oa=e- -64|0;return a|0}function IG(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0;f=Oa-16|0;Oa=f;d=BG(b);if(I[d+44|0]&4){H[f+4>>2]=d;Pf(a+336|0,f+4|0);F[d+44|0]=I[d+44|0]&251}h=a+296|0;while(1){g=H[d>>2];b=H[g+28>>2];if(b){g=H[g+20>>2];while(1){b=b-1|0;e=H[g>>2];a:{if(I[e+20|0]!=4){break a}e=H[e+24>>2];if((e|0)==(c|0)|!(!H[(H[H[H[e+48>>2]+1004>>2]+168>>2]+(H[e+40>>2]<<5)|0)+12>>2]&(I[H[e+52>>2]]&6)!=0)|F[e+68|0]&1){break a}H[f+8>>2]=e;i=rg(h,f+8|0,f+15|0);if(!I[f+15|0]){H[i>>2]=H[f+8>>2]}F[e+68|0]=I[e+68|0]|1}g=g+4|0;if(b){continue}break}g=H[d>>2]}b=H[d+16>>2];H[g+164>>2]=0;if(H[d+20>>2]){KG(d)}H[a+284>>2]=H[a+284>>2]-1;H[d>>2]=H[a+292>>2];H[a+292>>2]=d;d=b;if(d){continue}break}Oa=f+16|0}function Hi(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0;e=Oa-16|0;Oa=e;a=H[((J[a+4>>1]<<2)+73232|0)+72>>2]+a|0;f=H[a+4>>2];d=H[a+8>>2];g=f>>>24&15;h=a+H[((g<<2)+76348|0)+12>>2]|0;i=I[(f&1?d:h+8|0)|0];a:{if(c){b=b|i;b:{c:{switch((f>>>30|0)-2|0){case 0:if(I[H[a>>2]+4785|0]){break b}break;case 1:break b;default:break c}}F[e|0]=b;RD(h,e);break a}if(!d){d=Tt(H[a>>2],g);H[a+8>>2]=d}F[d|0]=b;$t(H[a>>2],a);H[a+4>>2]=H[a+4>>2]|1;break a}b=(b^-1)&i;d:{e:{switch((f>>>30|0)-2|0){case 0:if(I[H[a>>2]+4785|0]){break d}break;case 1:break d;default:break e}}F[e+8|0]=b;RD(h,e+8|0);break a}if(!d){d=Tt(H[a>>2],g);H[a+8>>2]=d}F[d|0]=b;$t(H[a>>2],a);H[a+4>>2]=H[a+4>>2]|1}Oa=e+16|0}function QU(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=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0);c=Oa-16|0;Oa=c;o=L[f+24>>2];p=L[f+20>>2];t=L[e+4>>2];q=L[f+16>>2];h=L[e+8>>2];j=L[f+8>>2];i=L[f+12>>2];k=L[f+4>>2];g=L[f>>2];xU(c,d);r=L[c+12>>2];l=O(g+g);m=O(i+i);s=O(h*O(O(j*l)-O(k*m)));n=L[c+8>>2];g=O(h*O(O(g*l)+O(O(i*m)+O(-1))));i=L[c>>2];j=O(h*O(O(j*m)+O(l*k)));h=L[c+4>>2];k=O(r+O(O(O(o+s)*n)+O(O(O(q+g)*i)+O(O(p+j)*h))));g=O(r+O(O(O(o-s)*n)+O(O(O(q-g)*i)+O(O(p-j)*h))));g=O((g>k?k:g)-t);d=g>O(0);if(!d){L[a+8>>2]=-n;L[a+4>>2]=-h;L[a>>2]=-i;L[b>>2]=g>2]&2147483647)>>>0>>0){d=0;a:{if(!b){break a}e=b<<2;if(!(I[a+1024|0]|e>>>0>1024)){F[a+1024|0]=1;d=a;break a}d=0;if(!e){break a}c=H[33808];d=c+12|0;d=(h=d,i=e,j=Ra[H[H[c>>2]+20>>2]](c)|0?53872:55639,k=13582,l=553,g=H[H[d>>2]+8>>2],Ra[g](h|0,i|0,j|0,k|0,l|0)|0)}c=H[a+1032>>2];if((c|0)>0){e=d+(c<<2)|0;f=H[a+1028>>2];c=d;while(1){H[c>>2]=H[f>>2];f=f+4|0;c=c+4|0;if(e>>>0>c>>>0){continue}break}}b:{if(H[a+1036>>2]<0){break b}e=H[a+1028>>2];if((e|0)==(a|0)){F[a+1024|0]=0;break b}if(!e){break b}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,e)}H[a+1036>>2]=b;H[a+1028>>2]=d}H[a+1032>>2]=b}function iC(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;if((H[a+1036>>2]&2147483647)>>>0>>0){d=0;a:{if(!b){break a}e=b<<2;if(!(I[a+1024|0]|e>>>0>1024)){F[a+1024|0]=1;d=a;break a}d=0;if(!e){break a}c=H[33808];d=c+12|0;d=(h=d,i=e,j=Ra[H[H[c>>2]+20>>2]](c)|0?53434:55639,k=13582,l=553,g=H[H[d>>2]+8>>2],Ra[g](h|0,i|0,j|0,k|0,l|0)|0)}c=H[a+1032>>2];if((c|0)>0){e=d+(c<<2)|0;f=H[a+1028>>2];c=d;while(1){H[c>>2]=H[f>>2];f=f+4|0;c=c+4|0;if(e>>>0>c>>>0){continue}break}}b:{if(H[a+1036>>2]<0){break b}e=H[a+1028>>2];if((e|0)==(a|0)){F[a+1024|0]=0;break b}if(!e){break b}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,e)}H[a+1036>>2]=b;H[a+1028>>2]=d}H[a+1032>>2]=b}function QC(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;if((H[a+1036>>2]&2147483647)>>>0>>0){d=0;a:{if(!b){break a}e=b<<2;if(!(I[a+1024|0]|e>>>0>1024)){F[a+1024|0]=1;d=a;break a}d=0;if(!e){break a}c=H[33808];d=c+12|0;d=(h=d,i=e,j=Ra[H[H[c>>2]+20>>2]](c)|0?53284:55639,k=13582,l=553,g=H[H[d>>2]+8>>2],Ra[g](h|0,i|0,j|0,k|0,l|0)|0)}c=H[a+1032>>2];if((c|0)>0){e=d+(c<<2)|0;f=H[a+1028>>2];c=d;while(1){H[c>>2]=H[f>>2];f=f+4|0;c=c+4|0;if(e>>>0>c>>>0){continue}break}}b:{if(H[a+1036>>2]<0){break b}e=H[a+1028>>2];if((e|0)==(a|0)){F[a+1024|0]=0;break b}if(!e){break b}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,e)}H[a+1036>>2]=b;H[a+1028>>2]=d}H[a+1032>>2]=b}function Zw(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;c=Oa+-64|0;Oa=c;a:{if(I[a+488|0]){o5(H[33808],8,10222,596,66138,0);break a}d=a+112|0;e=H[b+52>>2];H[c+56>>2]=0;H[c+48>>2]=0;H[c+52>>2]=0;H[c+40>>2]=0;H[c+44>>2]=0;H[c+32>>2]=0;H[c+36>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;H[c+44>>2]=H[b+16>>2];H[c+48>>2]=H[b+24>>2];f=Fw(e,H[a+448>>2],c+16|0);b:{if(F[H[a+476>>2]]&1){H[c+8>>2]=0;H[c>>2]=0;H[c+4>>2]=0;b=c+16|0;zw(d,b);S6(H[c+24>>2],0,H[a+448>>2]<<5);vw(d,c,b);Mw(d,b);Ow(d,b);Nw(d,b);break b}H[c+8>>2]=0;H[c>>2]=0;H[c+4>>2]=0;b=c+16|0;zw(d,b);S6(H[c+24>>2],0,H[a+448>>2]<<5);vw(d,c,b);Mw(d,b);Ow(d,b);Qw(d,b);Rw(d,b)}Lw(e,f)}Oa=c- -64|0}function XE(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;if((H[a+8>>2]&2147483647)>>>0>>0){a:{if(!b){break a}f=b<<2;if(!f){break a}d=H[33808];e=d+12|0;d=(i=e,j=f,k=Ra[H[H[d>>2]+20>>2]](d)|0?52888:55639,l=13582,m=553,h=H[H[e>>2]+8>>2],Ra[h](i|0,j|0,k|0,l|0,m|0)|0)}e=H[a+4>>2];if((e|0)>0){f=(e<<2)+d|0;g=H[a>>2];e=d;while(1){H[e>>2]=H[g>>2];g=g+4|0;e=e+4|0;if(f>>>0>e>>>0){continue}break}}b:{if(H[a+8>>2]<0){break b}f=H[a>>2];if(!f){break b}e=H[33808]+12|0;Ra[H[H[e>>2]+12>>2]](e,f)}H[a+8>>2]=b;H[a>>2]=d}f=H[a+4>>2];if((f|0)<(b|0)){d=H[a>>2];e=d+(b<<2)|0;d=d+(f<<2)|0;while(1){H[d>>2]=H[c>>2];d=d+4|0;if(e>>>0>d>>>0){continue}break}}H[a+4>>2]=b}function UV(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=O(e);f=f|0;g=g|0;h=h|0;var i=O(0),j=O(0),k=O(0),l=O(0);if(b_(c,d,e,b+16|0,L[a+4>>2],h+40|0,h+16|0)){H[h+44>>2]=0;H[h+48>>2]=0;H[h+8>>2]=-1;a:{if(I[f|0]&2){if(L[h+40>>2]==O(0)){e=L[d>>2];i=L[d+4>>2];L[h+36>>2]=-L[d+8>>2];L[h+32>>2]=-i;L[h+28>>2]=-e;g=3;break a}j=L[b+20>>2];i=L[b+24>>2];e=O(L[h+16>>2]-L[b+16>>2]);L[h+28>>2]=e;i=O(L[h+24>>2]-i);L[h+36>>2]=i;j=O(L[h+20>>2]-j);L[h+32>>2]=j;g=3;k=O(W(O(O(i*i)+O(O(e*e)+O(j*j)))));if(!(k>O(0))){break a}l=i;i=O(O(1)/k);L[h+36>>2]=l*i;L[h+32>>2]=j*i;L[h+28>>2]=e*i;break a}H[h+28>>2]=0;H[h+32>>2]=0;H[h+36>>2]=0;g=1}G[h+12>>1]=g;a=1}else{a=0}return a|0}function l4(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0);f=Oa+-64|0;Oa=f;$1(f+32|0,f,b,c,d);if(e&1){Ra[H[H[a>>2]+8>>2]](a,f+32|0,f)}if(!(!(e&2)|!(I[b+116|0]&2))){g=L[f+32>>2];i=L[f+40>>2];h=O(L[f+24>>2]-L[f+56>>2]);h=O(h+h);k=g;g=O(L[f+16>>2]-L[f+48>>2]);g=O(g+g);j=O(L[f+20>>2]-L[f+52>>2]);j=O(j+j);l=L[f+36>>2];m=O(k*O(O(i*h)+O(O(k*g)+O(j*l))));k=g;g=L[f+44>>2];i=O(m+O(O(k*O(O(g*g)+O(-.5)))-O(g*O(O(l*h)-O(j*i)))));g=O(0);c=f+32|0;h=L[b+104>>2];g=L[b+92>>2]>O(0)|L[b+88>>2]>O(0)?g:L[b+96>>2];Ra[H[H[a>>2]+12>>2]](a,c,f,h,i>2];Ra[H[H[a>>2]+12>>2]](a,c,f,h,i>O(h-g))}Oa=f- -64|0}function XV(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=O(e);f=f|0;g=g|0;h=h|0;var i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0);a=Oa-16|0;Oa=a;xU(a,b);b=0;m=L[d+8>>2];j=L[a+8>>2];n=L[d>>2];k=L[a>>2];o=L[d+4>>2];l=L[a+4>>2];i=O(O(m*j)+O(O(n*k)+O(o*l)));a:{if(i>=O(0)|iO(-1.0000000116860974e-7)){break a}p=L[c+8>>2];q=L[c>>2];r=L[c+4>>2];i=O(O(-O(L[a+12>>2]+O(O(p*j)+O(O(q*k)+O(l*r)))))/i);L[h+24>>2]=p+O(m*i);L[h+20>>2]=r+O(o*i);L[h+16>>2]=q+O(n*i);if(i>2]=0;H[h+48>>2]=0;H[h+8>>2]=-1;L[h+40>>2]=i;L[h+28>>2]=k;G[h+12>>1]=3;L[h+36>>2]=j;L[h+32>>2]=l;b=1}Oa=a+16|0;return b|0}function Sx(a,b,c,d){var e=O(0),f=O(0),g=O(0),h=0,i=0;h=J[d+12>>1]|J[c+12>>1];H[a+8>>2]=h;if(!(h&1)){a:{b:{c:{d:{e:{h=I[d+14|0]>>>4|0;i=I[c+14|0]>>>4|0;switch((h>>>0>i>>>0?h:i)|0){case 3:break b;case 2:break c;case 1:break d;case 0:break e;default:break a}}f=O(O(L[c+4>>2]+L[d+4>>2])*O(.5));e=O(O(L[c>>2]+L[d>>2])*O(.5));break a}f=L[c+4>>2];e=L[d+4>>2];f=e>f?f:e;e=L[c>>2];g=L[d>>2];e=e>2]*L[d+4>>2]);e=O(L[c>>2]*L[d>>2]);break a}f=L[c+4>>2];e=L[d+4>>2];f=e>2];g=L[d>>2];e=e>g?e:g}g=L[b>>2];e=O(e*L[b+4>>2]);e=e>O(0)?e:O(0);L[a+4>>2]=e;f=O(f*g);L[a>>2]=O(f-e)>=O(0)?f:e;return}H[a>>2]=0;H[a+4>>2]=0;H[a+8>>2]=h|2}function uk(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;a:{b:{c:{d:{d=a+8|0;f=H[d+4>>2];switch((f>>>30|0)-2|0){case 1:break b;case 0:break d;default:break c}}if(I[H[d>>2]+4785|0]){break b}}eE(d+12|0,b,c);break a}if(!(f&8388608)){e=H[d+8>>2];if(!e){e=Tt(H[d>>2],f>>>24&15);H[d+8>>2]=e}f=d+12|0;H[e+348>>2]=I[f+262|0];H[e+352>>2]=I[f+263|0];H[e+356>>2]=I[f+264|0];H[e+360>>2]=I[f+265|0];H[e+364>>2]=I[f+266|0];H[e+368>>2]=I[f+267|0]}e=H[d+8>>2];if(!e){e=Tt(H[d>>2],I[d+7|0]&15);H[d+8>>2]=e}H[((b<<2)+e|0)+348>>2]=c;$t(H[d>>2],d);H[d+4>>2]=H[d+4>>2]|8388608}a=H[a+396>>2];a=Ra[H[H[a>>2]+248>>2]](a)|0;a=Ra[H[H[a>>2]+100>>2]](a)|0;H[a+104>>2]=H[a+104>>2]+1}function gW(a,b,c,d,e,f,g){var h=0,i=0;h=Oa-16|0;Oa=h;Ra[H[H[g>>2]>>2]](g,h+11|0,1)|0;Ra[H[H[g>>2]>>2]](g,h+10|0,1)|0;Ra[H[H[g>>2]>>2]](g,h+9|0,1)|0;Ra[H[H[g>>2]>>2]](g,h+8|0,1)|0;a:{if(I[h+11|0]!=78|I[h+10|0]!=88|I[h+9|0]!=83){break a}F[f|0]=(I[h+8|0]^-1)&1;Ra[H[H[g>>2]>>2]](g,h+11|0,1)|0;Ra[H[H[g>>2]>>2]](g,h+10|0,1)|0;Ra[H[H[g>>2]>>2]](g,h+9|0,1)|0;Ra[H[H[g>>2]>>2]](g,h+8|0,1)|0;if(I[h+11|0]!=(a&255)|I[h+10|0]!=(b&255)|(I[h+9|0]!=(c&255)|I[h+8|0]!=(d&255))){break a}a=I[f|0];Ra[H[H[g>>2]>>2]](g,h+12|0,4)|0;if(a){a=I[h+15|0];F[h+15|0]=I[h+12|0];F[h+12|0]=a;a=I[h+13|0];F[h+13|0]=I[h+14|0];F[h+14|0]=a}H[e>>2]=H[h+12>>2];i=1}Oa=h+16|0;return i}function KE(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;c=Oa-16|0;Oa=c;H[c+8>>2]=b;f=b>>>7|0;if((f|0)!=33554431){b=H[a+16>>2]+N(f,24)|0;g=b;b=I[b+4|0];a:{if(!(b&32)){e=b;break a}e=b&223;F[g+4|0]=e;d=H[a+28>>2];h=H[a+324>>2];i=H[(h+(H[a+328>>2]<<2)|0)-4>>2];H[d+(i>>>5&134217724)>>2]=H[(f<<2)+d>>2];H[(H[(H[c+8>>2]>>>5&134217724)+d>>2]<<2)+h>>2]=i;H[a+328>>2]=H[a+328>>2]-1;H[(H[c+8>>2]>>>5&134217724)+d>>2]=33554431;if(!(b&4)){break a}H[(H[c+8>>2]>>>5&134217724)+d>>2]=H[a+140>>2];b=H[a+140>>2];if(b>>>0>=(H[a+144>>2]&2147483647)>>>0){_E(a+136|0,c+8|0);e=I[g+4|0];break a}H[H[a+136>>2]+(b<<2)>>2]=H[c+8>>2];H[a+140>>2]=H[a+140>>2]+1}F[g+4|0]=e|1}Oa=c+16|0}function $r(a){a=a|0;var b=0,c=0,d=0,e=O(0),f=0;c=H[a+28>>2];b=c+32|0;a=H[a+20>>2];f=Oa-48|0;Oa=f;e=L[c+6072>>2];if(e!=O(0)){L[b+1080>>2]=e;H[b+4528>>2]=1;H[b+4524>>2]=a;L[b+1084>>2]=e>O(0)?O(O(1)/e):O(0);if(a){Ra[H[H[a>>2]+16>>2]](a);H[b+4520>>2]=H[H[b+4524>>2]+16>>2]}aO(b);GG(H[b+1136>>2],H[b+976>>2]);a=b+4504|0;bO(b,a);c=f+8|0;d=H[H[b+976>>2]+1024>>2];Ra[H[H[d>>2]+84>>2]](c,d);GI(H[b+2168>>2],c,(H[b+2360>>2]&8)>>>3|0);H[b+2356>>2]=H[b+2356>>2]&-7;c=b+4564|0;H[c>>2]=a;H[b+4568>>2]=1;Ra[H[H[b+4504>>2]+16>>2]](a);d=b+4560|0;H[d>>2]=H[H[c>>2]+16>>2];c=H[b+4520>>2];Ra[H[H[c>>2]+72>>2]](c,a);a=H[d>>2];Ra[H[H[a>>2]+72>>2]](a,b+4544|0)}Oa=f+48|0}function pF(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:{if(!b){break a}d=b<<5;if(!d){break a}c=H[33808];f=c+12|0;f=(i=f,j=d,k=Ra[H[H[c>>2]+20>>2]](c)|0?34718:55639,l=13582,m=553,h=H[H[f>>2]+8>>2],Ra[h](i|0,j|0,k|0,l|0,m|0)|0)}c=H[a+4>>2];if((c|0)>0){g=(c<<5)+f|0;d=H[a>>2];c=f;while(1){e=H[d+4>>2];H[c>>2]=H[d>>2];H[c+4>>2]=e;e=H[d+28>>2];H[c+24>>2]=H[d+24>>2];H[c+28>>2]=e;e=H[d+20>>2];H[c+16>>2]=H[d+16>>2];H[c+20>>2]=e;e=H[d+12>>2];H[c+8>>2]=H[d+8>>2];H[c+12>>2]=e;d=d+32|0;c=c+32|0;if(g>>>0>c>>>0){continue}break}}b:{if(H[a+8>>2]<0){break b}c=H[a>>2];if(!c){break b}d=H[33808]+12|0;Ra[H[H[d>>2]+12>>2]](d,c)}H[a+8>>2]=b;H[a>>2]=f}function CO(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;b=H[H[a+2368>>2]+36>>2];g=H[a+1196>>2];h=a+1068|0;d=H[a+2168>>2];j=H[d+4>>2];d=H[d+8>>2];a:{b:{if(d>>>0>(H[a+1076>>2]&2147483647)>>>0){DO(h,d);f=a+1072|0;H[f>>2]=0;break b}f=a+1072|0;H[f>>2]=0;if(!d){break a}}k=(b|0)==(g|0)?1:17;b=0;while(1){g=b+1|0;i=H[(b<<2)+j>>2];b=H[i+16>>2];if(!(I[b+10|0]&2)){c=H[a+1072>>2];e=H[a+1076>>2]&2147483647;if(c>>>0>=e>>>0){DO(h,e?e<<1:1);c=H[f>>2]}H[a+1072>>2]=c+1;c=H[a+1068>>2]+N(c,24)|0;G[c+14>>1]=0;jO(a,c,i,b,k);G[b+4>>1]=J[b+6>>1];c=b;e=J[b+10>>1]&31;b=J[b+8>>1];G[c+10>>1]=e|(b>>>4|0)+((b&15)!=0)<<5}b=g;if((d|0)!=(b|0)){continue}break}}return h}function mw(a,b,c,d){var e=0,f=O(0),g=O(0),h=0,i=O(0),j=O(0),k=O(0),l=O(0),m=0,n=0;e=Oa-32|0;Oa=e;f=L[d+20>>2];g=L[d+24>>2];h=H[b+332>>2];i=L[d>>2];j=L[d+4>>2];k=L[d+8>>2];l=L[d+16>>2];d=(a<<5)+c|0;H[d+28>>2]=0;L[d+16>>2]=-l;H[d+12>>2]=0;L[d+8>>2]=-k;L[d+4>>2]=-j;L[d>>2]=-i;L[d+24>>2]=-g;L[d+20>>2]=-f;if(a){while(1){d=H[b+284>>2]+N(a,96)|0;m=(H[b+340>>2]+N(a,160)|0)+120|0;n=H[b+272>>2]+N(a,76)|0;a=a<<5;gw(e,d,m,n,a+c|0);a=H[(a+h|0)+24>>2];d=(a<<5)+c|0;L[d>>2]=L[e>>2];L[d+4>>2]=L[e+4>>2];f=L[e+8>>2];H[d+12>>2]=0;L[d+8>>2]=f;L[d+16>>2]=L[e+16>>2];L[d+20>>2]=L[e+20>>2];f=L[e+24>>2];H[d+28>>2]=0;L[d+24>>2]=f;if(a){continue}break}}Oa=e+32|0}function Sj(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=0,j=0,k=O(0),l=0,m=O(0);b=b- -64|0;a=H[a+24>>2];if(a){h=Oa+-64|0;Oa=h;j=H[b>>2];b=-2147483648;i=H[a+28>>2];a:{if(!i){break a}l=H[a+24>>2];a=0;while(1){if(H[(a<<2)+l>>2]==(j|0)){b=a;break a}a=a+1|0;if((i|0)!=(a|0)){continue}break}}k=L[f>>2];a=H[g>>2];j=H[g+4>>2];i=H[f+8>>2];f=H[f+4>>2];m=L[g+8>>2];H[h+28>>2]=0;L[h+24>>2]=m;H[h+4>>2]=f;H[h+8>>2]=i;H[h+12>>2]=0;H[h+16>>2]=a;H[h+20>>2]=j;L[h>>2]=k;yv(e,b,h,h+32|0);a=H[h+32>>2];b=H[h+36>>2];L[c+8>>2]=L[h+40>>2];H[c>>2]=a;H[c+4>>2]=b;k=L[h+56>>2];a=H[h+52>>2];H[d>>2]=H[h+48>>2];H[d+4>>2]=a;L[d+8>>2]=k;Oa=h- -64|0}}function iR(a,b){var c=0,d=0,e=0;d=Oa-16|0;Oa=d;c=H[a+4>>2];H[b+36>>2]=c;H[d+12>>2]=b;a:{if(c>>>0>=(H[a+8>>2]&2147483647)>>>0){jR(a,d+12|0);break a}H[H[a>>2]+(c<<2)>>2]=b;H[a+4>>2]=c+1}H[d+12>>2]=-1;c=H[a+16>>2];b:{if(c>>>0>=(H[a+20>>2]&2147483647)>>>0){qm(a+12|0,d+12|0);break b}H[H[a+12>>2]+(c<<2)>>2]=-1;H[a+16>>2]=H[a+16>>2]+1}c=H[b+8>>2]&2147483647;H[d+12>>2]=c;e=H[a+28>>2];c:{if(e>>>0>=(H[a+32>>2]&2147483647)>>>0){qm(a+24|0,d+12|0);break c}H[H[a+24>>2]+(e<<2)>>2]=c;H[a+28>>2]=H[a+28>>2]+1}H[d+12>>2]=b;c=H[a+40>>2];d:{if(c>>>0>=(H[a+44>>2]&2147483647)>>>0){jR(a+36|0,d+12|0);break d}H[H[a+36>>2]+(c<<2)>>2]=b;H[a+40>>2]=c+1}Oa=d+16|0}function WP(a){a=a|0;var b=0,c=0,d=0,e=0;b=H[a+28>>2];a=H[a+20>>2];H[b+3500>>2]=a;H[b+3504>>2]=1;if(a){Ra[H[H[a>>2]+16>>2]](a);H[b+3496>>2]=H[H[b+3500>>2]+16>>2]}c=b+3540|0;d=b+3480|0;H[c>>2]=d;H[b+3544>>2]=1;Ra[H[H[b+3480>>2]+16>>2]](d);c=H[H[c>>2]+16>>2];H[b+3536>>2]=c;Ra[H[H[c>>2]+72>>2]](c,b+3520|0);H[b+3580>>2]=a;H[b+3584>>2]=1;c=b+3560|0;a:{if(!a){a=H[b+3576>>2];break a}Ra[H[H[a>>2]+16>>2]](a);a=H[H[b+3580>>2]+16>>2];H[b+3576>>2]=a}Ra[H[H[a>>2]+72>>2]](a,c);c=H[b+980>>2];a=H[c+332>>2];if(a){c=H[c+328>>2];while(1){a=a-1|0;e=H[c+8>>2];if(!(!e|I[e+24|0])){KQ(e)}c=c+12|0;if(a){continue}break}}a=H[b+3496>>2];Ra[H[H[a>>2]+72>>2]](a,d)}function hW(a,b,c,d,e,f,g){var h=0,i=0;h=Oa-16|0;Oa=h;Ra[H[H[g>>2]>>2]](g,h+11|0,1)|0;Ra[H[H[g>>2]>>2]](g,h+10|0,1)|0;Ra[H[H[g>>2]>>2]](g,h+9|0,1)|0;Ra[H[H[g>>2]>>2]](g,h+8|0,1)|0;a:{if(I[h+11|0]!=73|I[h+10|0]!=67|I[h+9|0]!=69){break a}F[f|0]=(I[h+8|0]^-1)&1;Ra[H[H[g>>2]>>2]](g,h+11|0,1)|0;Ra[H[H[g>>2]>>2]](g,h+10|0,1)|0;Ra[H[H[g>>2]>>2]](g,h+9|0,1)|0;Ra[H[H[g>>2]>>2]](g,h+8|0,1)|0;if(F[h+11|0]!=(a|0)|F[h+10|0]!=(b|0)|(F[h+9|0]!=(c|0)|F[h+8|0]!=(d|0))){break a}a=I[f|0];Ra[H[H[g>>2]>>2]](g,h+12|0,4)|0;if(a){a=I[h+15|0];F[h+15|0]=I[h+12|0];F[h+12|0]=a;a=I[h+13|0];F[h+13|0]=I[h+14|0];F[h+14|0]=a}H[e>>2]=H[h+12>>2];i=1}Oa=h+16|0;return i}function Xw(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;c=Oa+-64|0;Oa=c;a:{if(I[a+488|0]){o5(H[33808],8,10222,515,66229,0);break a}d=a+112|0;e=H[a+448>>2];f=H[b+52>>2];H[c+56>>2]=0;H[c+48>>2]=0;H[c+52>>2]=0;H[c+40>>2]=0;H[c+44>>2]=0;H[c+32>>2]=0;H[c+36>>2]=0;H[c+24>>2]=0;H[c+28>>2]=0;H[c+16>>2]=0;H[c+20>>2]=0;e=Fw(f,e,c+16|0);H[c+40>>2]=H[b+12>>2];H[c+44>>2]=0;b=H[b+24>>2];H[c+32>>2]=0;H[c+48>>2]=b;b:{if(F[H[a+476>>2]]&1){H[c+8>>2]=0;H[c>>2]=0;H[c+4>>2]=0;a=c+16|0;zw(d,a);ww(d,a);vw(d,c,a);Mw(d,a);Ow(d,a);Nw(d,a);break b}H[c+8>>2]=0;H[c>>2]=0;H[c+4>>2]=0;a=c+16|0;zw(d,a);ww(d,a);vw(d,c,a);Mw(d,a);Ow(d,a);Qw(d,a);Rw(d,a)}Lw(f,e)}Oa=c- -64|0}function Uw(a,b,c){a=a|0;b=b|0;c=c|0;var d=O(0),e=0,f=0,g=0,h=0,i=O(0),j=0,k=0,l=0;e=1;j=H[a+448>>2];if(j>>>0>1){k=H[a+456>>2];l=H[a+444>>2];while(1){f=(N(e,24)+c|0)-24|0;g=(H[(N(e,80)+k|0)+72>>2]<<2)+b|0;h=H[((e<<5)+l|0)+20>>2];a:{if(!I[h+258|0]){d=O(0);a=0;break a}d=L[g>>2];a=1}L[f>>2]=d;if(I[h+259|0]){i=L[(a<<2)+g>>2];a=a+1|0}L[f+4>>2]=i;i=O(0);b:{if(!I[h+260|0]){d=O(0);break b}d=L[(a<<2)+g>>2];a=a+1|0}L[f+8>>2]=d;if(I[h+261|0]){i=L[(a<<2)+g>>2];a=a+1|0}L[f+12>>2]=i;i=O(0);c:{if(!I[h+262|0]){d=O(0);break c}d=L[(a<<2)+g>>2];a=a+1|0}L[f+16>>2]=d;L[f+20>>2]=I[h+263|0]?L[(a<<2)+g>>2]:O(0);e=e+1|0;if((j|0)!=(e|0)){continue}break}}}function xB(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=O(0),h=O(0),i=O(0),j=0,k=0,l=0,m=O(0),n=O(0),o=O(0),p=O(0),q=0;if(e){k=H[a+7672>>2];q=H[a+7680>>2];while(1){l=j<<2;f=N(H[l+c>>2],24)+d|0;m=L[f+4>>2];h=L[f+16>>2];n=L[f+8>>2];i=L[f+20>>2];g=L[f+12>>2];o=L[f>>2];p=O(O(g-o)*O(.004999999888241291));f=N(H[(H[b+l>>2]<<2)+q>>2],24)+k|0;L[f+12>>2]=g+p;L[f>>2]=o-p;g=i;i=O(O(i-n)*O(.004999999888241291));L[f+20>>2]=g+i;g=h;h=O(O(h-m)*O(.004999999888241291));L[f+16>>2]=g+h;L[f+8>>2]=n-i;L[f+4>>2]=m-h;j=j+1|0;if((j|0)!=(e|0)){continue}break}F[a+7648|0]=1;H[a+32>>2]=0;H[a+24>>2]=k;H[a+16>>2]=H[a+7664>>2];H[a+28>>2]=H[a+7676>>2]}}function KF(a,b,c,d){var e=0;e=H[a>>2];if(e){kG(e)}e=H[a+176>>2];a:{b:{if(e){if(I[e+31|0]){break b}break a}e=H[b+288>>2];if(!e){HF(b);e=H[b+288>>2]}H[b+288>>2]=H[e>>2];H[b+280>>2]=H[b+280>>2]+1}H[e>>2]=0;H[e+4>>2]=0;H[e+56>>2]=0;H[e+60>>2]=0;H[e+48>>2]=0;H[e+52>>2]=0;H[e+40>>2]=0;H[e+44>>2]=0;H[e+32>>2]=0;H[e+36>>2]=0;H[e+24>>2]=0;H[e+28>>2]=0;H[e+16>>2]=0;H[e+20>>2]=0;H[e+8>>2]=0;H[e+12>>2]=0;H[a+176>>2]=e}F[e+12|0]=I[e+12|0]|4;if(c){L[e+32>>2]=L[c>>2]+L[e+32>>2];L[e+36>>2]=L[c+4>>2]+L[e+36>>2];L[e+40>>2]=L[c+8>>2]+L[e+40>>2]}if(d){L[e+48>>2]=L[d>>2]+L[e+48>>2];L[e+52>>2]=L[d+4>>2]+L[e+52>>2];L[e+56>>2]=L[d+8>>2]+L[e+56>>2]}}function tu(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=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0);l=L[b+4>>2];o=O(L[a+4>>2]+l);i=O(L[e>>2]+o);m=O(i*i);p=L[d+24>>2];i=O(L[c+24>>2]-p);q=L[d+16>>2];n=O(L[c+16>>2]-q);r=L[d+20>>2];k=O(L[c+20>>2]-r);j=O(O(i*i)+O(O(n*n)+O(k*k)));c=m>j;if(c){a=H[g+4096>>2];H[g+4096>>2]=a+1;a=(a<<6)+g|0;H[a+52>>2]=-1;j=O(W(j));L[a+12>>2]=j-o;H[a+28>>2]=0;m=i;i=O(O(1)/j);b=j<=O(9999999747378752e-21);j=b?O(0):O(m*i);L[a+8>>2]=j;k=b?O(0):O(k*i);L[a+4>>2]=k;i=b?O(1):O(n*i);L[a>>2]=i;L[a+24>>2]=p+O(l*j);L[a+20>>2]=r+O(l*k);L[a+16>>2]=q+O(l*i)}return c|0}function IQ(a){a=a|0;var b=0,c=0,d=0;H[a>>2]=123948;b=H[H[a+32>>2]+4>>2];b=I[H[b+44>>2]+9|0]-1>>>0<2?b:0;c=H[H[a+28>>2]+4>>2];c=H[(I[H[c+44>>2]+9|0]-1>>>0<2?c:0)+100>>2];H[c+148>>2]=H[c+148>>2]-1;if(b){b=H[b+100>>2];H[b+148>>2]=H[b+148>>2]-1}b=H[a+56>>2];if(b){c=H[H[a+4>>2]+40>>2];d=H[H[c+976>>2]+1024>>2];Ra[H[H[d>>2]+36>>2]](d,b);xJ(H[c+976>>2],H[a+56>>2]);H[a+56>>2]=0}c=H[a+60>>2];if((c|0)!=-1){b=H[H[a+4>>2]+40>>2];gF(H[b+1e3>>2],c);H[a+60>>2]=-1;YN(b,a+4|0);kI(H[b+2168>>2],a)}b=a+4|0;XD(H[a+4>>2],b);XD(H[a+8>>2],b);if(H[a+52>>2]!=-1){b=H[H[H[a+4>>2]+40>>2]+2168>>2];if(I[a+46|0]&128){CI(b,a);return a|0}AI(b,a)}return a|0}function tR(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:{if(!b){break a}c=N(b,36);if(!c){break a}e=H[33808];f=e+12|0;e=(i=f,j=c,k=Ra[H[H[e>>2]+20>>2]](e)|0?37876:55639,l=13582,m=553,h=H[H[f>>2]+8>>2],Ra[h](i|0,j|0,k|0,l|0,m|0)|0)}f=H[a>>2];c=H[a+4>>2];if((c|0)>0){g=N(c,36)+e|0;d=f;c=e;while(1){L[c>>2]=L[d>>2];L[c+4>>2]=L[d+4>>2];L[c+8>>2]=L[d+8>>2];L[c+12>>2]=L[d+12>>2];L[c+16>>2]=L[d+16>>2];L[c+20>>2]=L[d+20>>2];L[c+24>>2]=L[d+24>>2];L[c+28>>2]=L[d+28>>2];L[c+32>>2]=L[d+32>>2];d=d+36|0;c=c+36|0;if(g>>>0>c>>>0){continue}break}}if(!(!f|H[a+8>>2]<0)){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,f)}H[a+8>>2]=b;H[a>>2]=e}function a$(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=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0);f=Oa-16|0;Oa=f;k=L[d+8>>2];n=L[e+8>>2];h=L[c+8>>2];i=L[c>>2];l=O(i-L[d>>2]);j=L[c+4>>2];m=O(j-L[e+4>>2]);i=O(i-L[e>>2]);j=O(j-L[d+4>>2]);L[f+8>>2]=O(l*m)-O(i*j);k=O(h-k);h=O(h-n);L[f+4>>2]=O(k*i)-O(h*l);L[f>>2]=O(j*h)-O(m*k);g=1;a:{if(!n_(f,c,d,e,a+20|0,a+48|0)){break a}c=H[b+8>>2];F[a+16|0]=1;a=H[a+12>>2];g=0;if(!a){break a}b=H[a+4>>2];if(b>>>0>=K[a+8>>2]){F[a+20|0]=1;g=1;break a}d=H[a+16>>2];if(d>>>0>=K[a+12>>2]){H[a+4>>2]=b+1;H[H[a>>2]+(b<<2)>>2]=c;g=1;break a}H[a+16>>2]=d+1;g=1}Oa=f+16|0;return g|0}function N5(a){var b=0,c=0,d=O(0),e=0;e=(B(a),v(2));c=e&2147483647;if(c>>>0>=1065353216){if((c|0)==1065353216){return O(+a*1.5707963267948966+7.52316384526264e-37)}return O(O(0)/O(a-a))}a:{if(c>>>0<=1056964607){if(c-8388608>>>0<956301312){break a}d=O(a*a);return O(O(a*O(O(O(O(d*O(O(d*O(-.008656363002955914))+O(-.04274342209100723)))+O(.16666586697101593))*d)/O(O(d*O(-.7066296339035034))+O(1))))+a)}a=O(O(O(1)-O(P(a)))*O(.5));b=W(+a);b=b+b*+O(O(O(O(a*O(O(a*O(-.008656363002955914))+O(-.04274342209100723)))+O(.16666586697101593))*a)/O(O(a*O(-.7066296339035034))+O(1)));a=O(1.5707963267948966-(b+b));a=(e|0)>=0?a:O(-a)}return a}function SO(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;c=H[a+268>>2]&2147483647;f=c?c<<1:1;a:{if(!f){c=0;break a}c=f<<2;if(!(I[a+256|0]|c>>>0>256)){F[a+256|0]=1;c=a;break a}d=H[33808]+12|0;d=Ra[H[H[d>>2]+8>>2]](d,c+67|0,20591,13582,553)|0;if(!d){c=0;break a}c=d+67&-64;H[c-4>>2]=c-d}e=H[a+264>>2];h=(e<<2)+c|0;if((e|0)>0){g=H[a+260>>2];d=c;while(1){H[d>>2]=H[g>>2];g=g+4|0;d=d+4|0;if(h>>>0>d>>>0){continue}break}}H[h>>2]=H[b>>2];b:{if(H[a+268>>2]<0){break b}b=H[a+260>>2];if((b|0)==(a|0)){F[a+256|0]=0;break b}if(!b){break b}d=H[33808]+12|0;Ra[H[H[d>>2]+12>>2]](d,b-H[b-4>>2]|0);e=H[a+264>>2]}H[a+268>>2]=f;H[a+260>>2]=c;H[a+264>>2]=e+1}function nJ(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;c=H[a+8>>2]&2147483647;f=c?c<<1:1;a:{if(!f){break a}c=f<<3;if(!c){break a}e=H[33808];d=e+12|0;e=(j=d,k=c,l=Ra[H[H[e>>2]+20>>2]](e)|0?22456:55639,m=13582,n=553,i=H[H[d>>2]+8>>2],Ra[i](j|0,k|0,l|0,m|0,n|0)|0)}c=H[a+4>>2];if((c|0)>0){g=(c<<3)+e|0;d=H[a>>2];c=e;while(1){h=H[d+4>>2];H[c>>2]=H[d>>2];H[c+4>>2]=h;d=d+8|0;c=c+8|0;if(g>>>0>c>>>0){continue}break}c=H[a+4>>2]}d=H[b+4>>2];c=(c<<3)+e|0;H[c>>2]=H[b>>2];H[c+4>>2]=d;b:{if(H[a+8>>2]<0){break b}b=H[a>>2];if(!b){break b}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}H[a+8>>2]=f;H[a>>2]=e;H[a+4>>2]=H[a+4>>2]+1}function lN(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;c=H[a+8>>2]&2147483647;f=c?c<<1:1;a:{if(!f){break a}c=f<<3;if(!c){break a}e=H[33808];d=e+12|0;e=(j=d,k=c,l=Ra[H[H[e>>2]+20>>2]](e)|0?31670:55639,m=13582,n=553,i=H[H[d>>2]+8>>2],Ra[i](j|0,k|0,l|0,m|0,n|0)|0)}c=H[a+4>>2];if((c|0)>0){g=(c<<3)+e|0;d=H[a>>2];c=e;while(1){h=H[d+4>>2];H[c>>2]=H[d>>2];H[c+4>>2]=h;d=d+8|0;c=c+8|0;if(g>>>0>c>>>0){continue}break}c=H[a+4>>2]}d=H[b+4>>2];c=(c<<3)+e|0;H[c>>2]=H[b>>2];H[c+4>>2]=d;b:{if(H[a+8>>2]<0){break b}b=H[a>>2];if(!b){break b}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}H[a+8>>2]=f;H[a>>2]=e;H[a+4>>2]=H[a+4>>2]+1}function jN(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;c=H[a+8>>2]&2147483647;f=c?c<<1:1;a:{if(!f){break a}c=f<<3;if(!c){break a}e=H[33808];d=e+12|0;e=(j=d,k=c,l=Ra[H[H[e>>2]+20>>2]](e)|0?32056:55639,m=13582,n=553,i=H[H[d>>2]+8>>2],Ra[i](j|0,k|0,l|0,m|0,n|0)|0)}c=H[a+4>>2];if((c|0)>0){g=(c<<3)+e|0;d=H[a>>2];c=e;while(1){h=H[d+4>>2];H[c>>2]=H[d>>2];H[c+4>>2]=h;d=d+8|0;c=c+8|0;if(g>>>0>c>>>0){continue}break}c=H[a+4>>2]}d=H[b+4>>2];c=(c<<3)+e|0;H[c>>2]=H[b>>2];H[c+4>>2]=d;b:{if(H[a+8>>2]<0){break b}b=H[a>>2];if(!b){break b}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}H[a+8>>2]=f;H[a>>2]=e;H[a+4>>2]=H[a+4>>2]+1}function hN(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;c=H[a+8>>2]&2147483647;f=c?c<<1:1;a:{if(!f){break a}c=f<<3;if(!c){break a}e=H[33808];d=e+12|0;e=(j=d,k=c,l=Ra[H[H[e>>2]+20>>2]](e)|0?31860:55639,m=13582,n=553,i=H[H[d>>2]+8>>2],Ra[i](j|0,k|0,l|0,m|0,n|0)|0)}c=H[a+4>>2];if((c|0)>0){g=(c<<3)+e|0;d=H[a>>2];c=e;while(1){h=H[d+4>>2];H[c>>2]=H[d>>2];H[c+4>>2]=h;d=d+8|0;c=c+8|0;if(g>>>0>c>>>0){continue}break}c=H[a+4>>2]}d=H[b+4>>2];c=(c<<3)+e|0;H[c>>2]=H[b>>2];H[c+4>>2]=d;b:{if(H[a+8>>2]<0){break b}b=H[a>>2];if(!b){break b}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}H[a+8>>2]=f;H[a>>2]=e;H[a+4>>2]=H[a+4>>2]+1}function gN(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;c=H[a+8>>2]&2147483647;f=c?c<<1:1;a:{if(!f){break a}c=f<<3;if(!c){break a}e=H[33808];d=e+12|0;e=(j=d,k=c,l=Ra[H[H[e>>2]+20>>2]](e)|0?31480:55639,m=13582,n=553,i=H[H[d>>2]+8>>2],Ra[i](j|0,k|0,l|0,m|0,n|0)|0)}c=H[a+4>>2];if((c|0)>0){g=(c<<3)+e|0;d=H[a>>2];c=e;while(1){h=H[d+4>>2];H[c>>2]=H[d>>2];H[c+4>>2]=h;d=d+8|0;c=c+8|0;if(g>>>0>c>>>0){continue}break}c=H[a+4>>2]}d=H[b+4>>2];c=(c<<3)+e|0;H[c>>2]=H[b>>2];H[c+4>>2]=d;b:{if(H[a+8>>2]<0){break b}b=H[a>>2];if(!b){break b}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}H[a+8>>2]=f;H[a>>2]=e;H[a+4>>2]=H[a+4>>2]+1}function ef(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;a:{if(b>>>0>=4294967216){H[33811]=48;b=0;break a}c=b>>>0<11?16:b+11&-8;a=M6(c+28|0);b=0;if(!a){break a}b=a-8|0;b:{if(!(a&15)){a=b;break b}f=a-4|0;g=H[f>>2];a=(a+15&-16)-8|0;a=(a-b>>>0>15?0:16)+a|0;d=a-b|0;e=(g&-8)-d|0;if(!(g&3)){b=H[b>>2];H[a+4>>2]=e;H[a>>2]=b+d;break b}H[a+4>>2]=e|H[a+4>>2]&1|2;e=a+e|0;H[e+4>>2]=H[e+4>>2]|1;H[f>>2]=d|H[f>>2]&1|2;e=b+d|0;H[e+4>>2]=H[e+4>>2]|1;O6(b,d)}b=H[a+4>>2];c:{if(!(b&3)){break c}d=b&-8;if(d>>>0<=c+16>>>0){break c}H[a+4>>2]=c|b&1|2;b=a+c|0;c=d-c|0;H[b+4>>2]=c|3;d=a+d|0;H[d+4>>2]=H[d+4>>2]|1;O6(b,c)}b=a+8|0}return b|0}function Rt(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;c=H[a+8>>2]&2147483647;f=c?c<<1:1;a:{if(!f){break a}c=f<<3;if(!c){break a}e=H[33808];d=e+12|0;e=(j=d,k=c,l=Ra[H[H[e>>2]+20>>2]](e)|0?25130:55639,m=13582,n=553,i=H[H[d>>2]+8>>2],Ra[i](j|0,k|0,l|0,m|0,n|0)|0)}c=H[a+4>>2];if((c|0)>0){g=(c<<3)+e|0;d=H[a>>2];c=e;while(1){h=H[d+4>>2];H[c>>2]=H[d>>2];H[c+4>>2]=h;d=d+8|0;c=c+8|0;if(g>>>0>c>>>0){continue}break}c=H[a+4>>2]}d=H[b+4>>2];c=(c<<3)+e|0;H[c>>2]=H[b>>2];H[c+4>>2]=d;b:{if(H[a+8>>2]<0){break b}b=H[a>>2];if(!b){break b}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}H[a+8>>2]=f;H[a>>2]=e;H[a+4>>2]=H[a+4>>2]+1}function $J(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;c=H[a+8>>2]&2147483647;f=c?c<<1:1;a:{if(!f){break a}c=f<<3;if(!c){break a}e=H[33808];d=e+12|0;e=(j=d,k=c,l=Ra[H[H[e>>2]+20>>2]](e)|0?27804:55639,m=13582,n=553,i=H[H[d>>2]+8>>2],Ra[i](j|0,k|0,l|0,m|0,n|0)|0)}c=H[a+4>>2];if((c|0)>0){g=(c<<3)+e|0;d=H[a>>2];c=e;while(1){h=H[d+4>>2];H[c>>2]=H[d>>2];H[c+4>>2]=h;d=d+8|0;c=c+8|0;if(g>>>0>c>>>0){continue}break}c=H[a+4>>2]}d=H[b+4>>2];c=(c<<3)+e|0;H[c>>2]=H[b>>2];H[c+4>>2]=d;b:{if(H[a+8>>2]<0){break b}b=H[a>>2];if(!b){break b}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}H[a+8>>2]=f;H[a>>2]=e;H[a+4>>2]=H[a+4>>2]+1}function TF(a){var b=0,c=0,d=0,e=0;d=Oa-16|0;Oa=d;H[a+104>>2]=0;H[a+96>>2]=0;H[a+100>>2]=0;H[a+88>>2]=0;H[a+80>>2]=0;H[a+84>>2]=0;c=H[a>>2];if(c){jG(c);kG(c)}b=H[a+176>>2];if(!(!b|I[b+31|0])){H[b+56>>2]=0;H[b+48>>2]=0;H[b+52>>2]=0;H[b+40>>2]=0;H[b+32>>2]=0;H[b+36>>2]=0;H[b+24>>2]=0;H[b+16>>2]=0;H[b+20>>2]=0;H[b+8>>2]=0;H[b>>2]=0;H[b+4>>2]=0}H[a+156>>2]=0;a=H[a>>2];if(a){b=H[H[a+40>>2]+1012>>2];e=I[H[a+44>>2]+9|0];H[d+8>>2]=H[a+144>>2];Ra[H[H[b>>2]+44>>2]](b,(e|0)==2,d+8|0);mG(a,O(0),0)}if(c){if(K[c+152>>2]<=4294967293){TN(H[c+40>>2],c);cG(c)}fF(H[H[c+40>>2]+1e3>>2],H[c+144>>2]);G[c+148>>1]=J[c+148>>1]&63999}Oa=d+16|0}function Rf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;if(H[a+36>>2]==H[a+28>>2]){o5(H[33808],2,8670,146,20174,0);return 0}if(Ra[H[H[b>>2]+72>>2]](b)|0){o5(H[33808],2,8670,152,17597,0);return 0}if(Ra[H[H[b>>2]+28>>2]](b)|0){o5(H[33808],2,8670,158,18706,0);return 0}if((Ra[H[H[b>>2]+24>>2]](b)|0)==2){o5(H[33808],2,8670,164,20374,0);return 0}og(H[(J[b+4>>1]<<2)+73232>>2]+b|0,a);d=H[a+36>>2];H[a+36>>2]=d+1;H[H[a+40>>2]+(d<<2)>>2]=b;a:{if((H[a+12>>2]>>>30|0)-3>>>0<4294967294){break a}d=H[a+8>>2];if(!d){break a}d=d-16|0;if(!d){break a}Qf(a,b,d,c);return 1}if(c){H[c+12>>2]=H[c+12>>2]+1;lg(H[(J[b+4>>1]<<2)+73232>>2]+b|0,3,c)}return 1}function GF(a,b,c,d){var e=0;e=H[a>>2];if(e){jG(e)}e=H[a+176>>2];a:{b:{if(e){if(I[e+31|0]){break b}break a}e=H[b+288>>2];if(!e){HF(b);e=H[b+288>>2]}H[b+288>>2]=H[e>>2];H[b+280>>2]=H[b+280>>2]+1}H[e>>2]=0;H[e+4>>2]=0;H[e+56>>2]=0;H[e+60>>2]=0;H[e+48>>2]=0;H[e+52>>2]=0;H[e+40>>2]=0;H[e+44>>2]=0;H[e+32>>2]=0;H[e+36>>2]=0;H[e+24>>2]=0;H[e+28>>2]=0;H[e+16>>2]=0;H[e+20>>2]=0;H[e+8>>2]=0;H[e+12>>2]=0;H[a+176>>2]=e}F[e+12|0]=I[e+12|0]|2;if(c){L[e>>2]=L[c>>2]+L[e>>2];L[e+4>>2]=L[c+4>>2]+L[e+4>>2];L[e+8>>2]=L[c+8>>2]+L[e+8>>2]}if(d){L[e+16>>2]=L[d>>2]+L[e+16>>2];L[e+20>>2]=L[d+4>>2]+L[e+20>>2];L[e+24>>2]=L[d+8>>2]+L[e+24>>2]}}function sF(a){var b=0,c=0,d=0,e=O(0);c=H[a+44>>2];if(H[c+176>>2]){d=H[c+176>>2];b=I[d+31|0]!=1?d:0}a:{if(L[c+80>>2]!=O(0)|L[c+84>>2]!=O(0)|(L[c+88>>2]!=O(0)|L[c+96>>2]!=O(0))){break a}if(L[c+100>>2]!=O(0)){break a}d=I[a+150|0];a=d&2;e=L[c+104>>2];c=!a&e==O(0);if(!(!a|e!=O(0))){if(!b){return 1}if(L[b>>2]!=O(0)|L[b+4>>2]!=O(0)|(L[b+8>>2]!=O(0)|L[b+16>>2]!=O(0))){break a}if(L[b+20>>2]!=O(0)){break a}c=L[b+24>>2]==O(0)}a=d&4;d=!a&c;b:{if(!a|!c){break b}if(!b){return 1}if(L[b+32>>2]!=O(0)|L[b+36>>2]!=O(0)|(L[b+40>>2]!=O(0)|L[b+48>>2]!=O(0))){break a}d=0;if(L[b+52>>2]!=O(0)){break b}d=L[b+56>>2]==O(0)}return d}return 0}function NU(a,b,c,d){var e=O(0),f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=0,n=0;a:{if(c){while(1){m=(n<<6)+d|0;g=L[m+12>>2];e=O(g*L[m>>2]);h=ei?i:e;e=O(g*L[m+8>>2]);f=f>e?f:e;g=O(g*L[m+4>>2]);l=gj?j:e;k=g>k?k:g;n=n+1|0;if((n|0)!=(c|0)){continue}break}e=O(0);j=O(O((f==O(0)?j:f)+(j==O(0)?f:j))*O(.5));h=O(O((h==O(0)?i:h)+(i==O(0)?h:i))*O(.5));i=O(O((l==O(0)?k:l)+(k==O(0)?l:k))*O(.5));k=O(O(j*j)+O(O(h*h)+O(i*i)));c=0;if(kO(0)){f=O(O(1)/g);l=O(j*f);e=O(h*f);f=O(i*f)}L[a+8>>2]=-l;L[a+4>>2]=-f;L[a>>2]=-e;L[b>>2]=g}c=1}return c}function lB(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0,k=0;a:{if(e){while(1){g=H[a>>2];if((g|0)==H[a+4>>2]){i=g<<1;if(!jB(a,i>>>0>64?i:64)){break a}g=H[a>>2]}H[a>>2]=g+1;i=g;f=H[a+24>>2];if((f|0)!=-1){H[a+24>>2]=H[H[a+16>>2]+(f<<2)>>2];i=f}f=H[a+8>>2]+N(g,24)|0;h=N(j,24)+c|0;L[f>>2]=L[h>>2];L[f+4>>2]=L[h+4>>2];L[f+8>>2]=L[h+8>>2];L[f+12>>2]=L[h+12>>2];L[f+16>>2]=L[h+16>>2];L[f+20>>2]=L[h+20>>2];h=(j<<3)+d|0;k=H[h+4>>2];f=H[a+12>>2]+(g<<3)|0;H[f>>2]=H[h>>2];H[f+4>>2]=k;H[H[a+20>>2]+(g<<2)>>2]=i;H[H[a+16>>2]+(i<<2)>>2]=g;H[(j<<2)+b>>2]=i;j=j+1|0;if((j|0)!=(e|0)){continue}break}}else{e=0}return e}H[(j<<2)+b>>2]=-1;return j}function WK(a,b,c,d,e){var f=0,g=0,h=0,i=0;a:{if(!H[d+8>>2]){break a}f=a>>>0>b>>>0;g=f?a:b;b=f?b:a;a=g<<16|b;a=(a<<15^-1)+a|0;a=N(a>>10^a,9);a=a>>6^a;a=(a<<11^-1)+a|0;a=H[H[d>>2]+((H[d+36>>2]&(a>>16^a))<<2)>>2];if((a|0)==1073741823){break a}h=H[d+4>>2];i=H[d+20>>2];while(1){f=(a<<3)+i|0;if(!((b|0)==H[f>>2]&(g|0)==H[f+4>>2])){a=H[h+(a<<2)>>2];if((a|0)!=1073741823){continue}break a}break}b=H[d+24>>2];g=b+a|0;h=I[g|0];if(!(h&1)){F[g|0]=h|1;b=f-H[d+20>>2]|0;g=b>>>3|0;a=H[e+4>>2];if((a|0)==H[e+8>>2]){UK(e,c);b=f-H[d+20>>2]|0;a=H[e+4>>2]}H[e+4>>2]=a+1;H[H[e>>2]+(a<<2)>>2]=g;a=b>>3;b=H[d+24>>2]}a=a+b|0;F[a|0]=I[a|0]|2}}function wN(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;d=Oa-16|0;Oa=d;c=H[a>>2];b=H[a+12>>2];e=H[(c+(b<<3)|0)+4>>2];if((e|0)==128){b=b+1|0;if((b|0)==H[a+4>>2]){b=H[33808];c=b+12|0;b=(g=c,h=13312,i=Ra[H[H[b>>2]+20>>2]](b)|0?35510:55639,j=16598,k=260,f=H[H[c>>2]+8>>2],Ra[f](g|0,h|0,i|0,j|0,k|0)|0);iN(b);H[d+12>>2]=0;H[d+8>>2]=b;b=H[a+4>>2];a:{if(b>>>0>=(H[a+8>>2]&2147483647)>>>0){jN(a,d+8|0);break a}c=H[d+12>>2];b=H[a>>2]+(b<<3)|0;H[b>>2]=H[d+8>>2];H[b+4>>2]=c;H[a+4>>2]=H[a+4>>2]+1}c=H[a>>2];b=H[a+12>>2]+1|0}H[a+12>>2]=b;H[((b<<3)+c|0)+4>>2]=0;e=0}a=(b<<3)+c|0;H[a+4>>2]=e+1;Oa=d+16|0;return H[a>>2]+N(e,104)|0}function SG(a,b){var c=0,d=0,e=0,f=0,g=0;e=Oa-16|0;Oa=e;H[e+12>>2]=b;f=b+32>>>5|0;a:{if(f>>>0<=(H[a+24>>2]&2147483647)>>>0){c=H[a+20>>2];break a}c=H[33808]+12|0;c=Ra[H[H[c>>2]+8>>2]](c,f<<2,20591,14905,438)|0;d=H[a+20>>2];b:{if(!d){break b}R6(c,d,H[a+24>>2]<<2);if(H[a+24>>2]<0){break b}d=H[a+20>>2];if(!d){break b}g=H[33808]+12|0;Ra[H[H[g>>2]+12>>2]](g,d)}d=H[a+24>>2];S6((d<<2)+c|0,0,f-d<<2);H[a+24>>2]=f;H[a+20>>2]=c}c=(b>>>3&536870908)+c|0;H[c>>2]=H[c>>2]|1<>2];c:{if(b>>>0>=(H[a+40>>2]&2147483647)>>>0){qm(a+32|0,e+12|0);break c}H[H[a+32>>2]+(b<<2)>>2]=H[e+12>>2];H[a+36>>2]=H[a+36>>2]+1}Oa=e+16|0}function Q2(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=Oa-16|0;Oa=d;c=H[a+76>>2];Ra[H[H[c>>2]+28>>2]](c,d+8|0,d+12|0);a:{b:{if(!H[d+8>>2]){L[a+36>>2]=L[a+36>>2]-L[b>>2];L[a+40>>2]=L[a+40>>2]-L[b+4>>2];L[a+44>>2]=L[a+44>>2]-L[b+8>>2];c=H[a+80>>2];L[c+32>>2]=L[c+32>>2]-L[b>>2];L[c+36>>2]=L[c+36>>2]-L[b+4>>2];e=b+8|0;b=c+40|0;break b}if(H[d+12>>2]){break a}c=a- -64|0;L[c>>2]=L[c>>2]-L[b>>2];L[a+68>>2]=L[a+68>>2]-L[b+4>>2];L[a+72>>2]=L[a+72>>2]-L[b+8>>2];c=H[a+80>>2];L[c+60>>2]=L[c+60>>2]-L[b>>2];e=c- -64|0;L[e>>2]=L[e>>2]-L[b+4>>2];e=b+8|0;b=c+68|0}L[b>>2]=L[b>>2]-L[e>>2];a=H[a+76>>2];Ra[H[H[a>>2]+36>>2]](a)}Oa=d+16|0}function h3(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;b=H[33808];c=Ra[H[H[b>>2]+20>>2]](b)|0?33728:55639;b=Ra[H[H[b+12>>2]+8>>2]](b+12|0,28,c,13871,103)|0;H[a+4>>2]=b;H[b>>2]=0;b=H[33808];c=H[33808];c=(f=b+12|0,g=2059,h=Ra[H[H[c>>2]+20>>2]](c)|0?21028:55639,i=15171,j=87,e=H[H[b+12>>2]+8>>2],Ra[e](f|0,g|0,h|0,i|0,j|0)|0);a:{if(c){b=c+11&-8;H[b-4>>2]=b-c;H[a>>2]=b;if(!b){break a}c=1;F[b+8|0]=1;H[b>>2]=0;H[b+4>>2]=0;d=H[a+4>>2];H[b>>2]=H[d>>2];H[d>>2]=b;while(1){b=H[a>>2]+(c<<4)|0;F[b+8|0]=1;H[b>>2]=0;H[b+4>>2]=0;d=H[a+4>>2];H[b>>2]=H[d>>2];H[d>>2]=b;c=c+1|0;if((c|0)!=128){continue}break}break a}H[a>>2]=0}}function zN(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;d=Oa-16|0;Oa=d;c=H[a>>2];b=H[a+12>>2];e=H[(c+(b<<3)|0)+4>>2];if((e|0)==128){b=b+1|0;if((b|0)==H[a+4>>2]){b=H[33808];c=b+12|0;b=(g=c,h=1024,i=Ra[H[H[b>>2]+20>>2]](b)|0?35322:55639,j=16598,k=260,f=H[H[c>>2]+8>>2],Ra[f](g|0,h|0,i|0,j|0,k|0)|0);H[d+12>>2]=0;H[d+8>>2]=b;b=H[a+4>>2];a:{if(b>>>0>=(H[a+8>>2]&2147483647)>>>0){hN(a,d+8|0);break a}c=H[d+12>>2];b=H[a>>2]+(b<<3)|0;H[b>>2]=H[d+8>>2];H[b+4>>2]=c;H[a+4>>2]=H[a+4>>2]+1}c=H[a>>2];b=H[a+12>>2]+1|0}H[a+12>>2]=b;H[((b<<3)+c|0)+4>>2]=0;e=0}a=(b<<3)+c|0;H[a+4>>2]=e+1;Oa=d+16|0;return H[a>>2]+(e<<3)|0}function yN(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;d=Oa-16|0;Oa=d;c=H[a>>2];b=H[a+12>>2];e=H[(c+(b<<3)|0)+4>>2];if((e|0)==128){b=b+1|0;if((b|0)==H[a+4>>2]){b=H[33808];c=b+12|0;b=(g=c,h=8192,i=Ra[H[H[b>>2]+20>>2]](b)|0?34958:55639,j=16598,k=260,f=H[H[c>>2]+8>>2],Ra[f](g|0,h|0,i|0,j|0,k|0)|0);H[d+12>>2]=0;H[d+8>>2]=b;b=H[a+4>>2];a:{if(b>>>0>=(H[a+8>>2]&2147483647)>>>0){gN(a,d+8|0);break a}c=H[d+12>>2];b=H[a>>2]+(b<<3)|0;H[b>>2]=H[d+8>>2];H[b+4>>2]=c;H[a+4>>2]=H[a+4>>2]+1}c=H[a>>2];b=H[a+12>>2]+1|0}H[a+12>>2]=b;H[((b<<3)+c|0)+4>>2]=0;e=0}a=(b<<3)+c|0;H[a+4>>2]=e+1;Oa=d+16|0;return H[a>>2]+(e<<6)|0}function GC(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;e=Oa-16|0;Oa=e;a:{if(!c){break a}F[a+337|0]=1;if(!I[a+336|0]|!H[a+4>>2]){break a}F[a+338|0]=1;h=a+352|0;i=a+52|0;j=H[a+296>>2];while(1){d=H[H[a+300>>2]+(H[(f<<2)+b>>2]<<2)>>2];H[e+12>>2]=d;b:{c:{if(d>>>0>=K[a+316>>2]){break c}g=H[H[a+312>>2]+(d<<2)>>2];if((g|0)==-1){break c}VA(H[a+4>>2],g);break b}rC(i,(d<<3)+j|0,d)}d:{if(H[a+268>>2]-3>>>0>1){break d}d=H[a+356>>2];if(d>>>0>=(H[a+360>>2]&2147483647)>>>0){qm(h,e+12|0);break d}H[H[a+352>>2]+(d<<2)>>2]=H[e+12>>2];H[a+356>>2]=H[a+356>>2]+1}f=f+1|0;if((f|0)!=(c|0)){continue}break}}Oa=e+16|0}function Yz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;if(b){while(1){d=(f<<5)+a|0;g=H[d+12>>2];h=H[d+16>>2];e=H[c+16>>2];Rz(d);Tz(d,c,N(g,112)+e|0,N(h,112)+e|0);f=f+1|0;if((f|0)!=(b|0)){continue}break}}a=H[c+8>>2];if(a>>>0>H[c+12>>2]-4>>>0){b=H[c+28>>2];a=a+H[b>>2]|0;H[b>>2]=a;b=H[c+8>>2];if(b){f=a-b|0;a=0;while(1){d=H[c+4>>2]+(a<<5)|0;e=H[d+4>>2];b=H[c+20>>2]+(a+f<<5)|0;H[b>>2]=H[d>>2];H[b+4>>2]=e;e=H[d+28>>2];H[b+24>>2]=H[d+24>>2];H[b+28>>2]=e;e=H[d+20>>2];H[b+16>>2]=H[d+16>>2];H[b+20>>2]=e;e=H[d+12>>2];H[b+8>>2]=H[d+8>>2];H[b+12>>2]=e;a=a+1|0;if(a>>>0>2]){continue}break}}H[c+8>>2]=0}}function $z(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;if(b){while(1){d=(f<<5)+a|0;g=H[d+12>>2];h=H[d+16>>2];e=H[c+16>>2];Sz(d);Tz(d,c,N(g,112)+e|0,N(h,112)+e|0);f=f+1|0;if((f|0)!=(b|0)){continue}break}}a=H[c+8>>2];if(a>>>0>H[c+12>>2]-4>>>0){b=H[c+28>>2];a=a+H[b>>2]|0;H[b>>2]=a;b=H[c+8>>2];if(b){f=a-b|0;a=0;while(1){d=H[c+4>>2]+(a<<5)|0;e=H[d+4>>2];b=H[c+20>>2]+(a+f<<5)|0;H[b>>2]=H[d>>2];H[b+4>>2]=e;e=H[d+28>>2];H[b+24>>2]=H[d+24>>2];H[b+28>>2]=e;e=H[d+20>>2];H[b+16>>2]=H[d+16>>2];H[b+20>>2]=e;e=H[d+12>>2];H[b+8>>2]=H[d+8>>2];H[b+12>>2]=e;a=a+1|0;if(a>>>0>2]){continue}break}}H[c+8>>2]=0}}function Kn(a){a=a|0;var b=0,c=0,d=0;a:{a=a+48|0;b=H[a>>2];if(b){if(!I[b+4785|0]){zt(b,a,1)}b:{if(I[H[a>>2]+4785|0]){Yj(a);break b}H[a+236>>2]=0;H[a+240>>2]=0;H[a+260>>2]=0;H[a+264>>2]=1;H[a+244>>2]=0;H[a+248>>2]=0;H[a+252>>2]=0;H[a+256>>2]=0;TF(a+16|0)}if(!H[a+192>>2]|(H[a+4>>2]&-1073741824)!=1073741824){break a}b=H[a+192>>2];c=a+16|0;d=I[H[c+176>>2]+31|0]==1;c:{if(d){if(b){break c}break a}if(!H[a+192>>2]|(!b|I[H[c+176>>2]+31|0]==1)){break a}}UF(c,H[H[a>>2]+2428>>2],d);break a}H[a+236>>2]=0;H[a+240>>2]=0;H[a+260>>2]=0;H[a+264>>2]=1;H[a+244>>2]=0;H[a+248>>2]=0;H[a+252>>2]=0;H[a+256>>2]=0;TF(a+16|0)}}function _z(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;if(b){while(1){c=(g<<5)+a|0;Sz(c);c=H[c+24>>2];e=J[c+2>>1];if(e){i=c+e|0;while(1){e=c+48|0;d=I[c+1|0];a:{if(!d){c=e;break a}f=I[c|0]==3?112:48;h=d&3;b:{if(d-1>>>0<3){c=e;break b}j=d&252;d=0;c=e;while(1){L[c+36>>2]=L[c+40>>2];c=c+f|0;L[c+36>>2]=L[c+40>>2];c=c+f|0;L[c+36>>2]=L[c+40>>2];c=c+f|0;L[c+36>>2]=L[c+40>>2];c=c+f|0;d=d+4|0;if((j|0)!=(d|0)){continue}break}}d=0;if(!h){break a}while(1){L[c+36>>2]=L[c+40>>2];c=c+f|0;d=d+1|0;if((h|0)!=(d|0)){continue}break}}if(c>>>0>>0){continue}break}}g=g+1|0;if((g|0)!=(b|0)){continue}break}}}function Xz(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;if(b){while(1){c=(g<<5)+a|0;Rz(c);c=H[c+24>>2];e=J[c+2>>1];if(e){i=c+e|0;while(1){e=c+48|0;d=I[c+1|0];a:{if(!d){c=e;break a}f=I[c|0]==3?112:48;h=d&3;b:{if(d-1>>>0<3){c=e;break b}j=d&252;d=0;c=e;while(1){L[c+36>>2]=L[c+40>>2];c=c+f|0;L[c+36>>2]=L[c+40>>2];c=c+f|0;L[c+36>>2]=L[c+40>>2];c=c+f|0;L[c+36>>2]=L[c+40>>2];c=c+f|0;d=d+4|0;if((j|0)!=(d|0)){continue}break}}d=0;if(!h){break a}while(1){L[c+36>>2]=L[c+40>>2];c=c+f|0;d=d+1|0;if((h|0)!=(d|0)){continue}break}}if(c>>>0>>0){continue}break}}g=g+1|0;if((g|0)!=(b|0)){continue}break}}}function a6(a){var b=0,c=0,d=0,e=0;e=Oa-16|0;Oa=e;c=(B(a),v(2));b=c&2147483647;a:{if(b>>>0<=1061752794){if(b>>>0<964689920){break a}a=$5(+a,0);break a}if(b>>>0<=1081824209){d=+a;if(b>>>0<=1075235811){a=$5(((c|0)>=0?-1.5707963267948966:1.5707963267948966)+d,1);break a}a=$5(((c|0)>=0?-3.141592653589793:3.141592653589793)+d,0);break a}if(b>>>0<=1088565717){d=+a;if(b>>>0<=1085271519){a=$5(((c|0)>=0?-4.71238898038469:4.71238898038469)+d,1);break a}a=$5(((c|0)>=0?-6.283185307179586:6.283185307179586)+d,0);break a}if(b>>>0>=2139095040){a=O(a-a);break a}b=S5(a,e+8|0);a=$5(M[e+8>>3],b&1)}Oa=e+16|0;return a}function ky(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:{if(!b){break a}c=b<<5;if(!c){break a}e=H[33808];f=e+12|0;e=(i=f,j=c,k=Ra[H[H[e>>2]+20>>2]](e)|0?26894:55639,l=13582,m=553,h=H[H[f>>2]+8>>2],Ra[h](i|0,j|0,k|0,l|0,m|0)|0)}f=H[a>>2];c=H[a+4>>2];if((c|0)>0){g=(c<<5)+e|0;d=f;c=e;while(1){L[c>>2]=L[d>>2];L[c+4>>2]=L[d+4>>2];L[c+8>>2]=L[d+8>>2];L[c+12>>2]=L[d+12>>2];L[c+16>>2]=L[d+16>>2];L[c+20>>2]=L[d+20>>2];L[c+24>>2]=L[d+24>>2];L[c+28>>2]=L[d+28>>2];d=d+32|0;c=c+32|0;if(g>>>0>c>>>0){continue}break}}if(!(!f|H[a+8>>2]<0)){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,f)}H[a+8>>2]=b;H[a>>2]=e}function iO(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0;if(H[a+2424>>2]){while(1){c=0;g=0;d=H[a+2436>>2]&2147483647;i=h<<4;b=i+H[a+2420>>2]|0;e=H[b+8>>2];f=e>>>5|0;if(d>>>0>f>>>0){g=H[H[a+2432>>2]+(f<<2)>>2]&1<>2];e=d>>>5|0;if(f>>>0>e>>>0){c=H[H[a+2432>>2]+(e<<2)>>2]&1<>2])}if(!c){break b}break a}c=H[H[b+4>>2]+152>>2];b=H[b>>2];c:{if(K[b+152>>2]>=4294967294){if(c>>>0<4294967294){break c}break a}if(c>>>0<4294967294){break a}}qG(b)}qG(H[(H[a+2420>>2]+i|0)+4>>2])}h=h+1|0;if(h>>>0>2]){continue}break}}H[a+2424>>2]=0;S6(H[a+2432>>2],0,H[a+2436>>2]<<2)}function Cv(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:{if(!b){break a}c=b<<5;if(!c){break a}e=H[33808];f=e+12|0;e=(i=f,j=c,k=Ra[H[H[e>>2]+20>>2]](e)|0?42762:55639,l=13582,m=553,h=H[H[f>>2]+8>>2],Ra[h](i|0,j|0,k|0,l|0,m|0)|0)}f=H[a>>2];c=H[a+4>>2];if((c|0)>0){g=(c<<5)+e|0;d=f;c=e;while(1){L[c>>2]=L[d>>2];L[c+4>>2]=L[d+4>>2];L[c+8>>2]=L[d+8>>2];L[c+12>>2]=L[d+12>>2];L[c+16>>2]=L[d+16>>2];L[c+20>>2]=L[d+20>>2];L[c+24>>2]=L[d+24>>2];L[c+28>>2]=L[d+28>>2];d=d+32|0;c=c+32|0;if(g>>>0>c>>>0){continue}break}}if(!(!f|H[a+8>>2]<0)){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,f)}H[a+8>>2]=b;H[a>>2]=e}function Cj(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:{if(!b){break a}c=b<<5;if(!c){break a}e=H[33808];f=e+12|0;e=(i=f,j=c,k=Ra[H[H[e>>2]+20>>2]](e)|0?37542:55639,l=13582,m=553,h=H[H[f>>2]+8>>2],Ra[h](i|0,j|0,k|0,l|0,m|0)|0)}f=H[a>>2];c=H[a+4>>2];if((c|0)>0){g=(c<<5)+e|0;d=f;c=e;while(1){L[c>>2]=L[d>>2];L[c+4>>2]=L[d+4>>2];L[c+8>>2]=L[d+8>>2];H[c+12>>2]=H[d+12>>2];L[c+16>>2]=L[d+16>>2];L[c+20>>2]=L[d+20>>2];L[c+24>>2]=L[d+24>>2];H[c+28>>2]=H[d+28>>2];d=d+32|0;c=c+32|0;if(g>>>0>c>>>0){continue}break}}if(!(!f|H[a+8>>2]<0)){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,f)}H[a+8>>2]=b;H[a>>2]=e}function vc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;d=H[a+4>>2];if((d|0)!=H[a+8>>2]){L[d>>2]=L[b>>2];L[d+4>>2]=L[b+4>>2];L[d+8>>2]=L[b+8>>2];H[a+4>>2]=d+12;return}a:{f=H[a>>2];c=(d-f|0)/12|0;e=c+1|0;if(e>>>0<357913942){g=c<<1;e=c>>>0<178956970?e>>>0>g>>>0?e:g:357913941;if(e>>>0>=357913942){break a}e=N(e,12);g=o6(e);c=g+N(c,12)|0;L[c>>2]=L[b>>2];L[c+4>>2]=L[b+4>>2];L[c+8>>2]=L[b+8>>2];b=c+12|0;if((d|0)!=(f|0)){while(1){c=c-12|0;d=d-12|0;L[c>>2]=L[d>>2];L[c+4>>2]=L[d+4>>2];L[c+8>>2]=L[d+8>>2];if((d|0)!=(f|0)){continue}break}}H[a+8>>2]=e+g;H[a+4>>2]=b;H[a>>2]=c;if(f){N6(f)}return}q6();X()}ka();X()}function Vg(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=H[a+120>>2];a:{b:{d=H[a+124>>2];if(!d){break b}while(1){if(H[e+(c<<2)>>2]==(b|0)){break b}c=c+1|0;if((d|0)!=(c|0)){continue}break}break a}if((c|0)==(d|0)){break a}d=d-1|0;H[a+124>>2]=d;H[e+(c<<2)>>2]=H[e+(d<<2)>>2]}c=H[a+24>>2];d=H[(Ra[H[H[b>>2]+104>>2]](b)|0)+88>>2];a=0;b=H[c+52>>2];c:{d:{e=H[c+56>>2];if(!e){break d}while(1){if((d|0)==H[(b+N(a,12)|0)+8>>2]){break d}a=a+1|0;if((e|0)!=(a|0)){continue}break}break c}if((a|0)==(e|0)){break c}d=c;c=e-1|0;H[d+56>>2]=c;a=b+N(a,12)|0;b=b+N(c,12)|0;c=H[b+4>>2];H[a>>2]=H[b>>2];H[a+4>>2]=c;H[a+8>>2]=H[b+8>>2]}}function v$(a,b){a=a|0;b=b|0;var c=0;if(H[a+24>>2]){Ra[H[H[b>>2]+12>>2]](b,16);Ra[H[H[b>>2]+8>>2]](b,H[a+24>>2],N(H[a+16>>2],12))}if(H[a+28>>2]){c=I[a+64|0];Ra[H[H[b>>2]+12>>2]](b,16);Ra[H[H[b>>2]+8>>2]](b,H[a+28>>2],N(H[a+20>>2],c&2?6:12))}if(H[a+56>>2]){Ra[H[H[b>>2]+12>>2]](b,16);Ra[H[H[b>>2]+8>>2]](b,H[a+56>>2],H[a+20>>2])}if(H[a+68>>2]){Ra[H[H[b>>2]+12>>2]](b,16);Ra[H[H[b>>2]+8>>2]](b,H[a+68>>2],H[a+20>>2]<<1)}if(H[a+72>>2]){Ra[H[H[b>>2]+12>>2]](b,16);Ra[H[H[b>>2]+8>>2]](b,H[a+72>>2],H[a+20>>2]<<2)}if(H[a+76>>2]){Ra[H[H[b>>2]+12>>2]](b,16);Ra[H[H[b>>2]+8>>2]](b,H[a+76>>2],N(H[a+20>>2],12))}}function qE(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:{if(!b){break a}d=N(b,24);if(!d){break a}c=H[33808];e=c+12|0;e=(i=e,j=d,k=Ra[H[H[c>>2]+20>>2]](c)|0?39436:55639,l=13582,m=553,h=H[H[e>>2]+8>>2],Ra[h](i|0,j|0,k|0,l|0,m|0)|0)}c=H[a+4>>2];if((c|0)>0){g=N(c,24)+e|0;d=H[a>>2];c=e;while(1){f=H[d+4>>2];H[c>>2]=H[d>>2];H[c+4>>2]=f;f=H[d+20>>2];H[c+16>>2]=H[d+16>>2];H[c+20>>2]=f;f=H[d+12>>2];H[c+8>>2]=H[d+8>>2];H[c+12>>2]=f;d=d+24|0;c=c+24|0;if(g>>>0>c>>>0){continue}break}}b:{if(H[a+8>>2]<0){break b}c=H[a>>2];if(!c){break b}d=H[33808]+12|0;Ra[H[H[d>>2]+12>>2]](d,c)}H[a+8>>2]=b;H[a>>2]=e}function VA(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;if(!H[a+52>>2]){c=H[a+40>>2];c=(c>>>5|0)+((c&31)!=0)|0;H[a+56>>2]=c;if(c){d=H[33808]+12|0;d=Ra[H[H[d>>2]+8>>2]](d,c<<2,20591,9670,325)|0;c=H[a+56>>2]<<2}else{c=0}H[a+52>>2]=d;S6(d,0,c)}d=H[a+36>>2];if(!d){d=H[a+40>>2];c=d<<2;a:{if(!c){c=0;break a}d=H[33808]+12|0;c=Ra[H[H[d>>2]+8>>2]](d,c,20591,9670,464)|0;d=H[a+40>>2]}H[a+36>>2]=c;e=d;d=H[a+8>>2];WA(e,c,d,d,d);d=H[a+36>>2]}h=H[a+52>>2];while(1){c=b>>>5|0;e=(c<<2)+h|0;f=H[e>>2];g=1<>2]=f|g;e=H[a+60>>2];H[a+60>>2]=c>>>0>e>>>0?c:e;c=b;b=H[(b<<2)+d>>2];if((c|0)!=(b|0)){continue}}break}}function BG(a){var b=0,c=0,d=0,e=0,f=0,g=0;e=H[a+4>>2];b=H[e+4>>2];if((b|0)!=(e|0)){d=1;while(1){f=d;d=d+1|0;c=b;b=H[c+4>>2];if((b|0)!=(c|0)){continue}break}a:{if(!f){break a}H[a+4>>2]=c;d=f-1|0;if(!d){break a}f=f-2|0;g=d&7;b:{if(!g){b=e;break b}a=0;while(1){b=H[e+4>>2];H[e+4>>2]=c;d=d-1|0;e=b;a=a+1|0;if((g|0)!=(a|0)){continue}break}}if(f>>>0<7){break a}while(1){a=H[b+4>>2];H[b+4>>2]=c;b=H[a+4>>2];H[a+4>>2]=c;a=H[b+4>>2];H[b+4>>2]=c;b=H[a+4>>2];H[a+4>>2]=c;a=H[b+4>>2];H[b+4>>2]=c;b=H[a+4>>2];H[a+4>>2]=c;a=H[b+4>>2];H[b+4>>2]=c;b=H[a+4>>2];H[a+4>>2]=c;d=d-8|0;if(d){continue}break}}e=c}return e}function Tf(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0;if((Ra[H[H[b>>2]+24>>2]](b)|0)==2){o5(H[33808],2,8670,215,19536,0);return 0}a:{b:{if((H[a+12>>2]>>>30|0)-3>>>0<4294967294){break b}c=H[a+8>>2];if(!c){break b}if(c-16|0){break a}}g=H[(J[b+4>>1]<<2)+73232>>2]+b|0;d=H[g+4>>2];if(!d|!H[d+40>>2]){break a}i=H[d+36>>2];c=0;f=1;while(1){c:{h=(e<<3)+i|0;if(!(I[h|0]==3&f)){e=e+1|0;if(e>>>0>2]){continue}if(f){break a}break c}c=H[h+4>>2];f=0;e=e+1|0;if(e>>>0>2]){continue}}break}mg(g,3,c);d=H[c+12>>2]-1|0;H[c+12>>2]=d;if(d){break a}Ra[H[H[c+8>>2]+8>>2]](c+8|0)}return Sf(a,b,1)|0}function RN(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;e=Oa-16|0;Oa=e;f=a+24|0;c=H[a+28>>2];d=H[b+44>>2];H[e+12>>2]=d;a:{if(!(F[d+44|0]&1)){d=c;break a}d=H[a+36>>2];H[a+36>>2]=d+1;if((c|0)==(d|0)){d=c;break a}g=d<<2;h=H[g+H[f>>2]>>2];H[e+12>>2]=h;H[H[h>>2]+152>>2]=c;H[H[f>>2]+g>>2]=H[b+44>>2]}if(I[b+149|0]&16){c=H[a+44>>2];b:{if(c>>>0>=(H[a+48>>2]&2147483647)>>>0){SN(a+40|0,e+12|0);break b}H[H[a+40>>2]+(c<<2)>>2]=H[e+12>>2];H[a+44>>2]=c+1}H[b+156>>2]=c}H[b+152>>2]=d;b=H[a+28>>2];c:{if(b>>>0>=(H[a+32>>2]&2147483647)>>>0){SN(f,e+12|0);break c}H[H[a+24>>2]+(b<<2)>>2]=H[e+12>>2];H[a+28>>2]=b+1}Oa=e+16|0}function fO(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:{if(!b){break a}d=N(b,24);if(!d){break a}c=H[33808];e=c+12|0;e=(i=e,j=d,k=Ra[H[H[c>>2]+20>>2]](c)|0?27268:55639,l=13582,m=553,h=H[H[e>>2]+8>>2],Ra[h](i|0,j|0,k|0,l|0,m|0)|0)}c=H[a+4>>2];if((c|0)>0){g=N(c,24)+e|0;d=H[a>>2];c=e;while(1){f=H[d+4>>2];H[c>>2]=H[d>>2];H[c+4>>2]=f;H[c+16>>2]=H[d+16>>2];f=H[d+12>>2];H[c+8>>2]=H[d+8>>2];H[c+12>>2]=f;F[c+20|0]=I[d+20|0];d=d+24|0;c=c+24|0;if(g>>>0>c>>>0){continue}break}}b:{if(H[a+8>>2]<0){break b}c=H[a>>2];if(!c){break b}d=H[33808]+12|0;Ra[H[H[d>>2]+12>>2]](d,c)}H[a+8>>2]=b;H[a>>2]=e}function nX(a){a=a|0;var b=0,c=0;b=H[a+28>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}H[a+28>>2]=0;b=H[a+32>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}H[a+32>>2]=0;b=H[a+40>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}H[a+40>>2]=0;b=H[a+36>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}H[a+36>>2]=0;H[a+20>>2]=0;H[a+24>>2]=0;b=Oa-16|0;Oa=b;c=H[a+16>>2];H[b+12>>2]=a;c=Pf(c+128|0,b+12|0);Oa=b+16|0;if(c){b=H[a+16>>2];c=J[a+4>>1];a:{if(F[a+6|0]&1){Ra[H[H[a>>2]+16>>2]](a);break a}Ra[H[H[a>>2]+12>>2]](a)|0}nU(b,a,c);return}o5(H[33808],8,8894,126,64698,0)}function DW(a,b,c,d,e,f,g,h,i){var j=0,k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0),v=0;j=Oa-192|0;Oa=j;k=L[d+20>>2];r=L[d+16>>2];s=L[d+24>>2];m=L[d>>2];n=O(m+m);l=L[d+8>>2];t=L[d+4>>2];o=L[d+12>>2];p=O(o+o);q=L[c+8>>2];u=O(O(O(n*l)-O(t*p))*q);L[j+180>>2]=s-u;l=O(q*O(O(l*p)+O(n*t)));L[j+176>>2]=k-l;L[j+168>>2]=u+s;L[j+164>>2]=k+l;k=O(q*O(O(m*n)+O(O(o*p)+O(-1))));L[j+172>>2]=r-k;L[j+160>>2]=r+k;L[j+184>>2]=L[c+4>>2]+O(0);c=j+160|0;d=j+96|0;mW(c,d);v=j+32|0;yU(v,j+144|0,j+132|0,d,e,f);G[j+8>>1]=J[i>>1];a=n1(a,b,c,e,f,h,g,j+16|0,j+8|0,0,v);Oa=j+192|0;return a}function tY(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;c=0;a:{if(!b){break a}e=b<<2;if(!(I[a+4352|0]|e>>>0>4352)){F[a+4352|0]=1;c=a;break a}c=0;if(!e){break a}c=H[33808];d=c+12|0;c=(i=d,j=e,k=Ra[H[H[c>>2]+20>>2]](c)|0?25032:55639,l=13582,m=553,h=H[H[d>>2]+8>>2],Ra[h](i|0,j|0,k|0,l|0,m|0)|0)}e=H[a+4356>>2];d=H[a+4360>>2];if((d|0)>0){g=(d<<2)+c|0;d=e;f=c;while(1){H[f>>2]=H[d>>2];d=d+4|0;f=f+4|0;if(g>>>0>f>>>0){continue}break}}b:{if(H[a+4364>>2]<0){break b}if((a|0)==(e|0)){F[a+4352|0]=0;break b}if(!e){break b}d=H[33808]+12|0;Ra[H[H[d>>2]+12>>2]](d,e)}H[a+4364>>2]=b;H[a+4356>>2]=c}function fg(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;d=0;a:{if(!b){break a}e=b<<3;if(!(I[a+32|0]|e>>>0>32)){F[a+32|0]=1;d=a;break a}d=0;if(!e){break a}c=H[33808];d=c+12|0;d=(i=d,j=e,k=Ra[H[H[c>>2]+20>>2]](c)|0?26784:55639,l=13582,m=553,h=H[H[d>>2]+8>>2],Ra[h](i|0,j|0,k|0,l|0,m|0)|0)}f=H[a+36>>2];c=H[a+40>>2];if((c|0)>0){g=(c<<3)+d|0;e=f;c=d;while(1){F[c|0]=I[e|0];H[c+4>>2]=H[e+4>>2];e=e+8|0;c=c+8|0;if(g>>>0>c>>>0){continue}break}}b:{if(H[a+44>>2]<0){break b}if((a|0)==(f|0)){F[a+32|0]=0;break b}if(!f){break b}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,f)}H[a+44>>2]=b;H[a+36>>2]=d}function Nt(a,b){var c=0,d=0,e=0,f=0;e=a+16|0;c=Oa-16|0;Oa=c;d=H[b+12>>2];if(d){f=H[d>>2];e=H[e+1012>>2];H[c+8>>2]=H[d+48>>2];Ra[H[H[e>>2]+36>>2]](e,f,c+8|0)}Oa=c+16|0;d=a+5012|0;c=Oa-16|0;Oa=c;a:{if(!I[a+4785|0]){H[b+4>>2]=H[b+4>>2]&-769;nO(a+16|0,b+12|0);H[b>>2]=0;H[b+4>>2]=H[b+4>>2]&268435455;break a}b:{c:{a=H[b+4>>2];switch((a>>>30|0)-1|0){case 1:break b;case 0:break c;default:break a}}H[b+4>>2]=a&1073741823;H[c+4>>2]=b;Pf(d,c+4|0);break a}H[b+4>>2]=a|-1073741824;if(a&268435456){break a}H[c+8>>2]=b;a=rg(d,c+8|0,c+15|0);if(I[c+15|0]){break a}H[a>>2]=H[c+8>>2]}Oa=c+16|0;F[b+60|0]=1}function Xe(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;e=Oa-16|0;Oa=e;if(c){while(1){d=N(g,24)+b|0;f=H[d+16>>2];a:{if(f&4){f=H[H[H[d+8>>2]+8>>2]>>2];h=H[a+8>>2];i=H[H[H[d>>2]+8>>2]>>2];b:{if(F[134012]&1){d=H[33502];break b}d=pa(3,99824)|0;F[134012]=1;H[33502]=d}H[e+8>>2]=f;H[e>>2]=i;qa(d|0,h|0,11733,e|0);break a}if(!(f&16)|I[d+20|0]&3){break a}f=H[H[H[d+8>>2]+8>>2]>>2];h=H[a+8>>2];i=H[H[H[d>>2]+8>>2]>>2];c:{if(F[134012]&1){d=H[33502];break c}d=pa(3,99824)|0;F[134012]=1;H[33502]=d}H[e+8>>2]=f;H[e>>2]=i;qa(d|0,h|0,19486,e|0)}g=g+1|0;if((g|0)!=(c|0)){continue}break}}Oa=e+16|0}function LA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;d=Oa+-64|0;Oa=d;g=H[b+8>>2];h=H[b+4>>2];e=H[c+8>>2];f=H[c+268>>2];a:{b:{if((I[(f&16384?e+268|0:c+60|0)|0]&3)!=3){break b}if(f&32768){L[d>>2]=L[e+192>>2];L[d+4>>2]=L[e+196>>2];L[d+8>>2]=L[e+200>>2];L[d+12>>2]=L[e+204>>2];L[d+16>>2]=L[e+208>>2];L[d+20>>2]=L[e+212>>2];L[d+24>>2]=L[e+216>>2];f=d;break a}if(K[c+4>>2]>3221225471){break b}f=d;if(_F(c+16|0,d)){break a}}f=c+208|0}e=H[c+268>>2]&1024?H[c+8>>2]+144|0:c- -64|0;c=d+32|0;ug(f,h&4?g:b+48|0,e,c);aU(a,H[b+4>>2]&1?H[b+8>>2]- -64|0:b+84|0,c,O(1.0099999904632568));Oa=d- -64|0}function OJ(a){var b=0,c=0;H[a+40>>2]=0;H[a+44>>2]=0;H[a+68>>2]=0;b=H[a+36>>2];if(b){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}H[a+36>>2]=0;b=H[a+64>>2];if(b){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}H[a+64>>2]=0;b=H[a+60>>2];if(b){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b);H[a+60>>2]=0}b=H[a+56>>2];if(b){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}H[a+48>>2]=0;H[a+52>>2]=0;H[a+56>>2]=0;H[a+60>>2]=0;b=H[a+84>>2];if(b){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b);H[a+84>>2]=0}b=H[a+80>>2];if(b){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}H[a+72>>2]=0;H[a+76>>2]=0;H[a+80>>2]=0;H[a+84>>2]=0}function MV(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=O(0),f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=0,m=O(0),n=0,o=O(0),p=O(0),q=O(0),r=O(0),s=O(0),t=O(0),u=O(0);d=H[b+8>>2];h=L[d+52>>2];i=L[d+20>>2];j=L[d+36>>2];k=L[d+56>>2];c=(c<<4)+88320|0;l=H[c>>2];m=L[d+24>>2];n=H[c+4>>2];b=H[b+4>>2];e=L[b+52>>2];o=L[d+40>>2];c=H[c+8>>2];f=L[b+56>>2];p=L[d+48>>2];q=L[d>>2];r=L[d+16>>2];s=L[d+32>>2];t=L[d+4>>2];u=L[d+8>>2];g=L[b+48>>2];H[a+12>>2]=0;f=c?f:O(-f);g=l?g:O(-g);e=n?e:O(-e);L[a+8>>2]=k+O(O(o*f)+O(O(u*g)+O(m*e)));L[a+4>>2]=h+O(O(j*f)+O(O(t*g)+O(e*i)));L[a>>2]=p+O(O(s*f)+O(O(q*g)+O(e*r)))}function GK(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0;g=H[a+28>>2];c=H[g+88>>2];d=H[c>>2];a:{if(!d){break a}e=H[c+12>>2];a=0;if(d-1>>>0>=3){f=d&-4;while(1){b=H[(N(a,40)+e|0)+28>>2];if(b){H[b+116>>2]=0}b=H[(N(a|1,40)+e|0)+28>>2];if(b){H[b+116>>2]=0}b=H[(N(a|2,40)+e|0)+28>>2];if(b){H[b+116>>2]=0}b=H[(N(a|3,40)+e|0)+28>>2];if(b){H[b+116>>2]=0}a=a+4|0;h=h+4|0;if((f|0)!=(h|0)){continue}break}}d=d&3;if(!d){break a}while(1){f=H[(N(a,40)+e|0)+28>>2];if(f){H[f+116>>2]=0}a=a+1|0;i=i+1|0;if((d|0)!=(i|0)){continue}break}}uK(c+36|0,H[c+24>>2],g,c+76|0,c+84|0);S6(H[c+76>>2],0,H[c+80>>2]<<2)}function yq(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;f=Oa-16|0;Oa=f;h=H[a+24>>2];c=H[a+20>>2];i=H[a+4>>2];j=H[a+16>>2];e=H[i+(j<<2)>>2];d=c+e|0;d=(d+15&-16)-d|0;if(h>>>0>>0){H[a+20>>2]=0;c=j+1|0;H[a+16>>2]=c;d=H[a+8>>2];if(d>>>0<=c>>>0){a:{if(!h){c=0;break a}g=H[33808]+12|0;c=Ra[H[H[g>>2]+8>>2]](g,h,20591,15453,88)|0;d=H[a+8>>2]}H[f+12>>2]=c;b:{if((H[a+12>>2]&2147483647)>>>0<=d>>>0){Xr(a+4|0,f+12|0);break b}H[H[a+4>>2]+(d<<2)>>2]=c;H[a+8>>2]=d+1}i=H[a+4>>2];c=H[a+16>>2];g=H[a+20>>2]}e=H[(c<<2)+i>>2];d=(e+15&-16)-e|0;c=g}H[a+20>>2]=(b+d|0)+c;Oa=f+16|0;return(c+e|0)+d|0}function _H(a,b,c){var d=0,e=0,f=0,g=0;a:{e=H[a+4>>2];f=H[e+28>>2];if(!f){break a}d=H[e+20>>2];g=d+(f<<2)|0;while(1){b:{e=d+4|0;d=H[d>>2];if(F[d+21|0]&1){f=d-4|0;if(H[d+24>>2]==(a|0)|H[f+32>>2]==(a|0)){break b}}d=e;if((g|0)!=(d|0)){continue}break a}break}c:while(1){d=I[f+25|0];d:{if(!(d&c)){break d}F[f+26|0]=I[f+26|0]|b;if(d&8){break d}VG(f+4|0);F[f+25|0]=I[f+25|0]|8}if((e|0)==(g|0)){break a}while(1){d=e+4|0;e:{e=H[e>>2];if(!(F[e+21|0]&1)){break e}f=e-4|0;if(H[e+24>>2]==(a|0)){e=d;continue c}if(H[f+32>>2]!=(a|0)){break e}e=d;continue c}e=d;if((d|0)!=(g|0)){continue}break}break}}}function Uu(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:{if(!b){break a}c=N(b,28);if(!c){break a}e=H[33808];f=e+12|0;e=(i=f,j=c,k=Ra[H[H[e>>2]+20>>2]](e)|0?33112:55639,l=13582,m=553,h=H[H[f>>2]+8>>2],Ra[h](i|0,j|0,k|0,l|0,m|0)|0)}f=H[a>>2];c=H[a+4>>2];if((c|0)>0){g=N(c,28)+e|0;d=f;c=e;while(1){L[c>>2]=L[d>>2];L[c+4>>2]=L[d+4>>2];L[c+8>>2]=L[d+8>>2];L[c+12>>2]=L[d+12>>2];L[c+16>>2]=L[d+16>>2];L[c+20>>2]=L[d+20>>2];L[c+24>>2]=L[d+24>>2];d=d+28|0;c=c+28|0;if(g>>>0>c>>>0){continue}break}}if(!(!f|H[a+8>>2]<0)){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,f)}H[a+8>>2]=b;H[a>>2]=e}function jv(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;j=Oa+-64|0;Oa=j;l=H[H[a>>2]+128>>2];k=H[c+4>>2];H[j+48>>2]=H[c>>2];H[j+52>>2]=k;k=H[c+12>>2];H[j+56>>2]=H[c+8>>2];H[j+60>>2]=k;c=H[d+4>>2];H[j+32>>2]=H[d>>2];H[j+36>>2]=c;c=H[d+12>>2];H[j+40>>2]=H[d+8>>2];H[j+44>>2]=c;Ra[l|0](a,b,j+48|0,j+32|0,h,i);b=H[H[a>>2]+128>>2];c=H[f+12>>2];H[j+24>>2]=H[f+8>>2];H[j+28>>2]=c;c=H[f+4>>2];H[j+16>>2]=H[f>>2];H[j+20>>2]=c;c=H[g+12>>2];H[j+8>>2]=H[g+8>>2];H[j+12>>2]=c;c=H[g+4>>2];H[j>>2]=H[g>>2];H[j+4>>2]=c;Ra[b|0](a,e,j+16|0,j,h,i);Oa=j- -64|0}function MU(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=O(0),k=0,l=0,m=O(0);g=Oa-4288|0;Oa=g;j=L[d+24>>2];k=H[d+16>>2];l=H[d+20>>2];m=L[c+4>>2];H[g+4232>>2]=-1;L[g+52>>2]=m;d=0;H[g+48>>2]=0;c=g+4232|0;h=g+48|0;hU(c,h);H[g+4176>>2]=-1;i=g+4176|0;hU(i,e);H[g+4168>>2]=0;H[g+4172>>2]=0;H[g+4144>>2]=0;L[g+40>>2]=j;H[g+32>>2]=k;H[g+36>>2]=l;H[g+24>>2]=0;H[g+28>>2]=1065353216;H[g+16>>2]=0;H[g+20>>2]=0;H[g+8>>2]=1065353216;H[g>>2]=0;H[g+4>>2]=0;a:{if(!AY(c,i,g+16|0,f,g,h,0)){break a}if(!NU(a,b,H[g+4144>>2],g+48|0)){break a}d=H[g+4144>>2]!=0}Oa=g+4288|0;return d|0}function gF(a,b){var c=0,d=0,e=0,f=0,g=0;d=Oa-16|0;Oa=d;H[d+12>>2]=b;if((b|0)!=-1){c=H[a+72>>2];a:{if(c>>>0>=(H[a+76>>2]&2147483647)>>>0){qm(a+68|0,d+12|0);break a}H[H[a+68>>2]+(c<<2)>>2]=b;H[a+72>>2]=H[a+72>>2]+1}GE(a+640|0,H[d+12>>2]);b=H[d+12>>2];if(H[H[a+152>>2]+(b>>>3&536870908)>>2]>>>b&1){GE(a+168|0,b);b=H[d+12>>2];c=H[a+152>>2]+(b>>>3&536870908)|0;e=H[c>>2];f=c,g=j7(-2,b)&e,H[f>>2]=g;b=H[d+12>>2]}c=H[a+148>>2];e=(b>>>0)/(c>>>0)|0;H[H[H[a+128>>2]+(e<<2)>>2]+(b-N(c,e)<<2)>>2]=0;e=H[a+44>>2];a=H[a- -64>>2];c=(b>>>0)/(a>>>0)|0;H[H[e+(c<<2)>>2]+(b-N(a,c)<<2)>>2]=0}Oa=d+16|0}function J6(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;if(t6(a,H[b+8>>2],f)){D6(b,c,d,e);return}h=I[b+53|0];g=H[a+12>>2];F[b+53|0]=0;i=I[b+52|0];F[b+52|0]=0;j=a+16|0;F6(j,b,c,d,e,f);k=I[b+53|0];h=h|k;l=I[b+52|0];i=i|l;a:{if((g|0)<2){break a}j=j+(g<<3)|0;g=a+24|0;while(1){if(I[b+54|0]){break a}b:{if(l){if(H[b+24>>2]==1){break a}if(I[a+8|0]&2){break b}break a}if(!k){break b}if(!(F[a+8|0]&1)){break a}}G[b+52>>1]=0;F6(g,b,c,d,e,f);k=I[b+53|0];h=k|h;l=I[b+52|0];i=l|i;g=g+8|0;if(j>>>0>g>>>0){continue}break}}F[b+53|0]=(h&255)!=0;F[b+52|0]=(i&255)!=0}function vQ(a){a=a|0;var b=0,c=0,d=0,e=0;c=H[a+20>>2];a=H[a+28>>2];b=H[a+2352>>2];d=H[b+12>>2];H[b>>2]=H[b+8>>2];H[b+4>>2]=d;S6(b+8|0,0,148);CJ(H[a+976>>2]);H[a+2768>>2]=H[c+16>>2];b=a+2772|0;H[b>>2]=H[b>>2]+1;F[a+2844|0]=1;H[a+2872>>2]=H[c+16>>2];b=a+2876|0;H[b>>2]=H[b>>2]+1;F[a+2948|0]=1;b=a+3980|0;H[b>>2]=c;H[a+3984>>2]=1;Ra[H[H[c>>2]+16>>2]](c);d=a+3976|0;H[d>>2]=H[H[b>>2]+16>>2];H[a+3824>>2]=1;b=a+3820|0;c=a+3960|0;H[b>>2]=c;Ra[H[H[a+3960>>2]+16>>2]](c);e=a+3816|0;H[e>>2]=H[H[b>>2]+16>>2];b=H[d>>2];Ra[H[H[b>>2]+72>>2]](b,c);c=H[e>>2];Ra[H[H[c>>2]+72>>2]](c,a+3800|0)}function pQ(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0;d=H[a+28>>2];f=H[d+4688>>2];if(f){while(1){a=H[H[d+4684>>2]+(e<<2)>>2];a:{if(!(a&1)){break a}a=a&-2;c=H[a+56>>2];g=a;h=H[d+1e3>>2];b=H[H[a+28>>2]+4>>2];i=H[(I[H[b+44>>2]+9|0]-1>>>0<2?b:0)+144>>2];b=H[H[a+32>>2]+4>>2];b=I[H[b+44>>2]+9|0]-1>>>0<2?b:0;if(b){b=H[b+144>>2]}else{b=-128}a=$E(h,c,i,b,a+4|0);H[g+60>>2]=a;if(!c){break a}H[c- -64>>2]=a}e=e+1|0;if((f|0)!=(e|0)){continue}break}}if(!H[d+996>>2]){a=H[d+1e3>>2];H[a+1076>>2]=0;H[a+1064>>2]=0;H[a+916>>2]=0;H[a+904>>2]=0;c=a+640|0;OE(c);QE(c);PE(c);UE(c,a+32|0,0,0)}}function XP(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;e=Oa-48|0;Oa=e;d=H[a+28>>2];a=H[d+2360>>2];b=H[H[d+976>>2]+1024>>2];Ra[H[H[b>>2]+84>>2]](e+8|0,b);f=a&8;b=H[d+980>>2];c=H[b+332>>2];if(c){a=H[b+328>>2];while(1){mI(H[d+2168>>2],H[a>>2],H[a+4>>2],0,H[a+8>>2],e+8|0,(f|0)!=0);a=a+12|0;c=c-1|0;if(c){continue}break}}c=H[b+344>>2];if(c){a=H[b+340>>2];while(1){mI(H[d+2168>>2],H[a>>2],H[a+4>>2],0,0,e+8|0,(f|0)!=0);a=a+12|0;c=c-1|0;if(c){continue}break}}a=H[b+272>>2];Ra[H[H[a>>2]+80>>2]](a);a=H[b+272>>2];Ra[H[H[a>>2]+68>>2]](a);a=H[d+3696>>2];Ra[H[H[a>>2]+72>>2]](a,d+3680|0);Oa=e+48|0}function Hs(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;c=a+48|0;d=Oa-16|0;Oa=d;a:{b:{c:{d:{a=a+32|0;e=H[a+4>>2];f=e>>>30|0;switch(f-2|0){case 1:break b;case 0:break d;default:break c}}if(I[H[a>>2]+4785|0]){break b}}H[c+16>>2]=H[b>>2];H[c+20>>2]=H[b+4>>2];H[c+24>>2]=H[b+8>>2];H[c+28>>2]=H[b+12>>2];a=H[a-12>>2];if(!a|(f|0)==1){break a}F[d|0]=I[c- -64|0];H[d+8>>2]=8;UI(a- -64|0,c,d+8|0,d,0);break a}c=H[a+8>>2];if(!c){c=Tt(H[a>>2],e>>>24&15);H[a+8>>2]=c}H[c+28>>2]=H[b>>2];H[c+32>>2]=H[b+4>>2];H[c+36>>2]=H[b+8>>2];H[c+40>>2]=H[b+12>>2];$t(H[a>>2],a);H[a+4>>2]=H[a+4>>2]|8}Oa=d+16|0}function wJ(a){var b=0,c=0,d=0,e=0,f=0;d=H[a+4>>2];a:{if(!d){break a}if(H[a>>2]){b=1;while(1){c=0;b:{if(!b){b=0;break b}while(1){c=c+1|0;b=H[a>>2];if(c>>>0>>0){continue}break}d=H[a+4>>2]}e=e+1|0;if(e>>>0>>0){continue}break}if(!d){break a}}c=0;while(1){b=H[a+20>>2];e=c<<2;f=H[b+e>>2];if(f){b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,f);d=H[a+4>>2];b=H[a+20>>2]}H[b+e>>2]=0;c=c+1|0;if(c>>>0>>0){continue}break}}H[a+4>>2]=0;b=H[a+12>>2];if(b){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}H[a+12>>2]=0;b=H[a+20>>2];if(b){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b);H[a+20>>2]=0}}function i2(a,b,c,d,e,f,g){var h=O(0),i=O(0),j=0;h=L[b+280>>2]>O(0)?O(0):L[b+276>>2]>O(0)?O(0):L[b+284>>2];i=O(L[b+292>>2]-h);d=O(O5(d,O(f+O(1)))*O(4));j=i>2]+h);a:{if(!g){d=L[b+300>>2];f=L[b+296>>2];g=0;break a}d=L[b+300>>2];h=L[b+280>>2]>O(0)?O(0):L[b+276>>2]>O(0)?O(0):L[b+284>>2];e=O(O5(e,O(f+O(1)))*O(4));f=L[b+296>>2];g=O(d-h)>2];g=j?-65536:g?-65536:-8355712;m2(a,c,e,e,f,d,g);d=L[b+292>>2];m2(a,c,d,d,L[b+296>>2],L[b+300>>2],g);d=L[b+296>>2];m2(a,c,L[b+288>>2],L[b+292>>2],d,d,g);d=L[b+300>>2];m2(a,c,L[b+288>>2],L[b+292>>2],d,d,g)}function YC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;e=H[a+284>>2];if(e){f=H[a+292>>2];while(1){c=N(d,24)+f|0;L[c>>2]=L[c>>2]-L[b>>2];L[c+4>>2]=L[c+4>>2]-L[b+4>>2];L[c+8>>2]=L[c+8>>2]-L[b+8>>2];L[c+12>>2]=L[c+12>>2]-L[b>>2];L[c+16>>2]=L[c+16>>2]-L[b+4>>2];L[c+20>>2]=L[c+20>>2]-L[b+8>>2];d=d+1|0;if((e|0)!=(d|0)){continue}break}}c=H[a+4>>2];if(c){RA(c,b)}if(I[a+336|0]){c=0;RA(H[a+220>>2],b);if(H[a+256>>2]){while(1){RA(H[H[a+252>>2]+(c<<3)>>2],b);c=c+1|0;if(c>>>0>2]){continue}break}}c=H[a+68>>2];if(c){WB(c,b)}c=H[a+116>>2];if(c){WB(c,b)}}a=H[a+32>>2];if(a){RA(a,b)}}function eL(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;dL(a,c);H[a+4>>2]=b;d=b;b=H[a+200>>2];c=b<<3;d=Gw(d,c,1);H[a+264>>2]=b;H[a+256>>2]=d;H[a+260>>2]=0;d=Gw(H[a+4>>2],c,1);H[a+276>>2]=b;H[a+268>>2]=d;H[a+272>>2]=0;d=Gw(H[a+4>>2],b<<2,1);H[a+212>>2]=b;H[a+204>>2]=d;H[a+208>>2]=0;d=Gw(H[a+4>>2],c,1);H[a+332>>2]=b;H[a+324>>2]=d;H[a+328>>2]=0;d=Gw(H[a+4>>2],c,1);H[a+380>>2]=b;H[a+372>>2]=d;H[a+376>>2]=0;c=Gw(H[a+4>>2],c,1);H[a+428>>2]=b;H[a+420>>2]=c;H[a+424>>2]=0;fL(a);Ra[H[H[a+288>>2]+32>>2]](a+288|0);Ra[H[H[a+336>>2]+32>>2]](a+336|0);Ra[H[H[a+384>>2]+32>>2]](a+384|0);gL(a)}function Of(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0;e=Oa-16|0;Oa=e;an(H[33772],a,0,1);f=a+8|0;if(H[a+36>>2]){while(1){d=b<<2;c=H[d+H[a+40>>2]>>2];if((Ra[H[H[c>>2]+24>>2]](c)|0)==2){c=H[H[d+H[a+40>>2]>>2]+320>>2];h=Ra[H[H[c>>2]+100>>2]](c)|0,i=0,H[h+96>>2]=i}d=H[d+H[a+40>>2]>>2];c=(J[d+4>>1]<<2)+73232|0;g=H[c+72>>2];og(d+H[c>>2]|0,0);vt(f,d+g|0,1);b=b+1|0;if(b>>>0>2]){continue}break}}a:{if((H[a+12>>2]>>>30|0)-3>>>0<4294967294){break a}b=H[a+8>>2];if(!b){break a}b=b-16|0;if(!b){break a}Qt(b+16|0,f);H[e+12>>2]=a;Pf(b+5984|0,e+12|0)}wt(a+8|0);Oa=e+16|0}function DV(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0);a=Oa-16|0;Oa=a;l=L[d+24>>2];m=L[d+20>>2];n=L[c+4>>2];o=L[d+16>>2];f=L[c+8>>2];i=L[d+8>>2];g=L[d+12>>2];p=L[d+4>>2];h=L[d>>2];xU(a,b);d=1;Oa=a+16|0;q=L[a+12>>2];j=O(h+h);k=O(g+g);r=O(f*O(O(i*j)-O(p*k)));s=L[a+8>>2];g=O(f*O(O(h*j)+O(O(g*k)+O(-1))));h=L[a>>2];f=O(f*O(O(i*k)+O(j*p)));i=L[a+4>>2];if(!(O(q+O(O(O(l+r)*s)+O(O(O(o+g)*h)+O(O(m+f)*i))))<=n)){d=O(q+O(O(O(l-r)*s)+O(O(O(o-g)*h)+O(O(m-f)*i))))<=n}return d|0}function GS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=O(0),h=O(0),i=O(0);g=L[a+532>>2];h=L[a+524>>2];i=L[a+528>>2];c=H[a+444>>2];H[b+8>>2]=H[a+440>>2];H[b+12>>2]=c;c=H[a+436>>2];H[b>>2]=H[a+432>>2];H[b+4>>2]=c;c=H[a+452>>2];H[b+16>>2]=H[a+448>>2];H[b+20>>2]=c;d=+i;M[b+8>>3]=M[b+8>>3]-d;e=+h;M[b>>3]=M[b>>3]-e;f=+g;M[b+16>>3]=M[b+16>>3]-f;c=H[a+452>>2];H[b+40>>2]=H[a+448>>2];H[b+44>>2]=c;c=H[a+444>>2];H[b+32>>2]=H[a+440>>2];H[b+36>>2]=c;c=H[a+436>>2];H[b+24>>2]=H[a+432>>2];H[b+28>>2]=c;M[b+24>>3]=M[b+24>>3]+e;M[b+32>>3]=M[b+32>>3]+d;M[b+40>>3]=M[b+40>>3]+f;return 1}function FS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=O(0),h=O(0),i=O(0);g=L[a+540>>2];h=L[a+532>>2];i=L[a+536>>2];c=H[a+452>>2];H[b+8>>2]=H[a+448>>2];H[b+12>>2]=c;c=H[a+444>>2];H[b>>2]=H[a+440>>2];H[b+4>>2]=c;c=H[a+460>>2];H[b+16>>2]=H[a+456>>2];H[b+20>>2]=c;d=+i;M[b+8>>3]=M[b+8>>3]-d;e=+h;M[b>>3]=M[b>>3]-e;f=+g;M[b+16>>3]=M[b+16>>3]-f;c=H[a+460>>2];H[b+40>>2]=H[a+456>>2];H[b+44>>2]=c;c=H[a+452>>2];H[b+32>>2]=H[a+448>>2];H[b+36>>2]=c;c=H[a+444>>2];H[b+24>>2]=H[a+440>>2];H[b+28>>2]=c;M[b+24>>3]=M[b+24>>3]+e;M[b+32>>3]=M[b+32>>3]+d;M[b+40>>3]=M[b+40>>3]+f;return 1}function hI(a,b,c,d,e,f,g,h){var i=0,j=0;i=Oa-16|0;Oa=i;a:{if(!(I[b|0]&2)){j=J[b+2>>1];if(!h){G[i+8>>1]=j;g=rI(a,c,d,i+8|0,e,f);break a}e=I[H[d+28>>2]- -64|0]&4;g=H[a+1276>>2];if(!g){sI(a+988|0);g=H[a+1276>>2]}H[a+1276>>2]=H[g>>2];f=a+1268|0;H[f>>2]=H[f>>2]+1;mR(g,e?d:c,e?c:d);G[g+56>>1]=J[g+56>>1]&65504|j&20;break a}h=g;if(!g){h=H[a+1860>>2];if(!h){tI(a+1572|0);h=H[a+1860>>2]}H[a+1860>>2]=H[h>>2];e=a+1852|0;H[e>>2]=H[e>>2]+1}g=uI(h,c,d,(g|0)!=0)}b=H[b+4>>2];if((b|0)!=-1){F[g+25|0]=I[g+25|0]|16;H[H[H[a+108>>2]>>2]+(b<<2)>>2]=g;H[g+36>>2]=b}Oa=i+16|0;return g}function Lt(a,b){var c=0,d=0,e=0;e=a+4972|0;c=Oa-16|0;Oa=c;H[b>>2]=a;d=H[b+4>>2];a:{if(!I[a+4785|0]){H[b+4>>2]=d&268435455|-2147483648;Hf(b,c+12|0,c+8|0);d=a+16|0;e=b+12|0;a=H[c+12>>2];if(a){a=a+H[((H[a+4>>2]>>>22&60)+76348|0)+12>>2]|0}else{a=0}b=H[c+8>>2];if(b){b=b+H[((H[b+4>>2]>>>22&60)+76348|0)+12>>2]|0}else{b=0}kO(d,e,a,b);break a}a=d&1073741823;if(d>>>0>=3221225472){H[b+4>>2]=a|-2147483648;if(d&268435456){break a}H[c+12>>2]=b;Pf(e,c+12|0);break a}H[b+4>>2]=a|1073741824;H[c+12>>2]=b;a=rg(e,c+12|0,c+8|0);if(I[c+8|0]){break a}H[a>>2]=H[c+12>>2]}Oa=c+16|0}function _I(a){a=a|0;var b=0,c=0;H[a>>2]=116212;b=H[a+92>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=H[a+84>>2];if(!b){break a}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+80>>2];b:{if((b|0)<0|!(b&2147483647)){break b}b=H[a+72>>2];if(!b){break b}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+68>>2];c:{if((b|0)<0|!(b&2147483647)){break c}b=H[a+60>>2];if(!b){break c}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+56>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+12>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}return a|0}function _m(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;f=Oa-16|0;Oa=f;a:{if(!H[a+92>>2]){break a}e=(b<<15^-1)+b|0;e=N(e>>>10^e,9);e=e>>>6^e;e=(e<<11^-1)+e|0;e=H[H[a+68>>2]+((H[a+76>>2]-1&(e>>>16^e))<<2)>>2];if((e|0)==-1){break a}g=H[a- -64>>2];a=H[a+60>>2];while(1){if(H[a+(e<<3)>>2]!=(b|0)){e=H[g+(e<<2)>>2];if((e|0)!=-1){continue}break a}break}a=H[(a+(e<<3)|0)+4>>2];b=H[a+36>>2]+d|0;if(b>>>0>K[a+20>>2]){Il(a,b)}if(!d){break a}e=0;while(1){b=(e<<2)+c|0;g=Nl(a,b,f+15|0);if(!I[f+15|0]){H[g>>2]=H[b>>2]}e=e+1|0;if((e|0)!=(d|0)){continue}break}}Oa=f+16|0}function Sg(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;g=Oa-16|0;Oa=g;a:{b:{c:{if((H[a+16>>2]>>>30|0)-3>>>0<4294967294){break c}f=H[a+12>>2];if(!f){break c}if(f-16|0){break b}}o5(H[33808],4,8582,300,65271,0);a=0;break a}if(H[b+56>>2]!=H[a+116>>2]){o5(H[33808],4,8582,308,65485,0);a=0;break a}f=Ra[H[H[a>>2]+24>>2]](a)|0;Ra[H[H[f>>2]+244>>2]](g,f);f=Oa-16|0;Oa=f;a=H[a+24>>2];if(a){L[f>>2]=L[g>>2];L[f+4>>2]=L[g+4>>2];L[f+8>>2]=L[g+8>>2];h=H[a>>2];a=Ra[H[H[h>>2]+88>>2]](h,H[a+52>>2],H[a+56>>2],b,c,d,f,e)|0}else{a=0}Oa=f+16|0}Oa=g+16|0;return a|0}function zS(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=O(0),n=O(0),o=0,p=0,q=0;g=Oa-48|0;Oa=g;h=H[c+36>>2];if(h){j=H[c+40>>2];i=H[((H[a+96>>2]<<2)+a|0)+100>>2];k=H[a+8>>2];H[g+32>>2]=2;l=M[c+12>>3];m=L[b+44>>2];n=L[b+40>>2];o=M[c+20>>3];p=M[d+8>>3];q=M[d>>3];L[g+24>>2]=M[d+16>>3]-M[c+28>>3];L[g+20>>2]=p-o;L[g+36>>2]=n;L[g+40>>2]=m*O(.5);L[g+16>>2]=q-l;L[g>>2]=L[a+244>>2];L[g+4>>2]=L[a+248>>2];L[g+8>>2]=L[a+252>>2];L[g+12>>2]=L[a+256>>2];a=tS(a,c,f,e,g+32|0,g,h,N(j,36)+k|0,h>>>0>i>>>0?i:0)}else{a=0}Oa=g+48|0;return a|0}function qG(a){var b=0,c=0;b=H[a+160>>2];if(b){a=H[b+8>>2];a:{if(!(L[a+32>>2]>2]=.3999999761581421;if(!H[b+16>>2]){break a}a=0;while(1){rG(H[H[b+24>>2]+(a<<2)>>2],O(.3999999761581421));a=a+1|0;if(a>>>0>2]){continue}break}}return}b=H[a+44>>2];if(!(F[b+44|0]&1|!(L[b+156>>2]>2]=.3999999761581421;c=H[H[a+40>>2]+1012>>2];Ra[H[H[c>>2]+44>>2]](c,I[b+9|0]==2,a+144|0);if(K[a+152>>2]>=4294967294){RN(H[a+40>>2],a);bG(a)}dF(H[H[a+40>>2]+1e3>>2],H[a+144>>2]);G[a+92>>1]=J[a+92>>1]&65534}}function sE(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;c=H[a+8>>2]&2147483647;g=c?c<<1:1;a:{if(!g){break a}e=g<<2;if(!e){break a}d=H[33808];c=d+12|0;d=(j=c,k=e,l=Ra[H[H[d>>2]+20>>2]](d)|0?53998:55639,m=13582,n=553,i=H[H[c>>2]+8>>2],Ra[i](j|0,k|0,l|0,m|0,n|0)|0)}f=H[a+4>>2];e=(f<<2)+d|0;if((f|0)>0){h=H[a>>2];c=d;while(1){H[c>>2]=H[h>>2];h=h+4|0;c=c+4|0;if(e>>>0>c>>>0){continue}break}}H[e>>2]=H[b>>2];b:{if(H[a+8>>2]<0){break b}c=H[a>>2];if(!c){break b}b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,c);f=H[a+4>>2]}H[a+8>>2]=g;H[a>>2]=d;H[a+4>>2]=f+1}function rF(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;c=H[a+8>>2]&2147483647;g=c?c<<1:1;a:{if(!g){break a}e=g<<2;if(!e){break a}d=H[33808];c=d+12|0;d=(j=c,k=e,l=Ra[H[H[d>>2]+20>>2]](d)|0?50570:55639,m=13582,n=553,i=H[H[c>>2]+8>>2],Ra[i](j|0,k|0,l|0,m|0,n|0)|0)}f=H[a+4>>2];e=(f<<2)+d|0;if((f|0)>0){h=H[a>>2];c=d;while(1){H[c>>2]=H[h>>2];h=h+4|0;c=c+4|0;if(e>>>0>c>>>0){continue}break}}H[e>>2]=H[b>>2];b:{if(H[a+8>>2]<0){break b}c=H[a>>2];if(!c){break b}b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,c);f=H[a+4>>2]}H[a+8>>2]=g;H[a>>2]=d;H[a+4>>2]=f+1}function rE(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;c=H[a+8>>2]&2147483647;g=c?c<<1:1;a:{if(!g){break a}e=g<<2;if(!e){break a}d=H[33808];c=d+12|0;d=(j=c,k=e,l=Ra[H[H[d>>2]+20>>2]](d)|0?53006:55639,m=13582,n=553,i=H[H[c>>2]+8>>2],Ra[i](j|0,k|0,l|0,m|0,n|0)|0)}f=H[a+4>>2];e=(f<<2)+d|0;if((f|0)>0){h=H[a>>2];c=d;while(1){H[c>>2]=H[h>>2];h=h+4|0;c=c+4|0;if(e>>>0>c>>>0){continue}break}}H[e>>2]=H[b>>2];b:{if(H[a+8>>2]<0){break b}c=H[a>>2];if(!c){break b}b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,c);f=H[a+4>>2]}H[a+8>>2]=g;H[a>>2]=d;H[a+4>>2]=f+1}function nH(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;c=H[a+8>>2]&2147483647;g=c?c<<1:1;a:{if(!g){break a}e=g<<2;if(!e){break a}d=H[33808];c=d+12|0;d=(j=c,k=e,l=Ra[H[H[d>>2]+20>>2]](d)|0?51692:55639,m=13582,n=553,i=H[H[c>>2]+8>>2],Ra[i](j|0,k|0,l|0,m|0,n|0)|0)}f=H[a+4>>2];e=(f<<2)+d|0;if((f|0)>0){h=H[a>>2];c=d;while(1){H[c>>2]=H[h>>2];h=h+4|0;c=c+4|0;if(e>>>0>c>>>0){continue}break}}H[e>>2]=H[b>>2];b:{if(H[a+8>>2]<0){break b}c=H[a>>2];if(!c){break b}b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,c);f=H[a+4>>2]}H[a+8>>2]=g;H[a>>2]=d;H[a+4>>2]=f+1}function mS(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;c=H[a+8>>2]&2147483647;g=c?c<<1:1;a:{if(!g){break a}e=g<<2;if(!e){break a}d=H[33808];c=d+12|0;d=(j=c,k=e,l=Ra[H[H[d>>2]+20>>2]](d)|0?54122:55639,m=13582,n=553,i=H[H[c>>2]+8>>2],Ra[i](j|0,k|0,l|0,m|0,n|0)|0)}f=H[a+4>>2];e=(f<<2)+d|0;if((f|0)>0){h=H[a>>2];c=d;while(1){H[c>>2]=H[h>>2];h=h+4|0;c=c+4|0;if(e>>>0>c>>>0){continue}break}}H[e>>2]=H[b>>2];b:{if(H[a+8>>2]<0){break b}c=H[a>>2];if(!c){break b}b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,c);f=H[a+4>>2]}H[a+8>>2]=g;H[a>>2]=d;H[a+4>>2]=f+1}function kF(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;c=H[a+8>>2]&2147483647;g=c?c<<1:1;a:{if(!g){break a}e=g<<2;if(!e){break a}d=H[33808];c=d+12|0;d=(j=c,k=e,l=Ra[H[H[d>>2]+20>>2]](d)|0?52888:55639,m=13582,n=553,i=H[H[c>>2]+8>>2],Ra[i](j|0,k|0,l|0,m|0,n|0)|0)}f=H[a+4>>2];e=(f<<2)+d|0;if((f|0)>0){h=H[a>>2];c=d;while(1){H[c>>2]=H[h>>2];h=h+4|0;c=c+4|0;if(e>>>0>c>>>0){continue}break}}H[e>>2]=H[b>>2];b:{if(H[a+8>>2]<0){break b}c=H[a>>2];if(!c){break b}b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,c);f=H[a+4>>2]}H[a+8>>2]=g;H[a>>2]=d;H[a+4>>2]=f+1}function jR(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;c=H[a+8>>2]&2147483647;g=c?c<<1:1;a:{if(!g){break a}e=g<<2;if(!e){break a}d=H[33808];c=d+12|0;d=(j=c,k=e,l=Ra[H[H[d>>2]+20>>2]](d)|0?50824:55639,m=13582,n=553,i=H[H[c>>2]+8>>2],Ra[i](j|0,k|0,l|0,m|0,n|0)|0)}f=H[a+4>>2];e=(f<<2)+d|0;if((f|0)>0){h=H[a>>2];c=d;while(1){H[c>>2]=H[h>>2];h=h+4|0;c=c+4|0;if(e>>>0>c>>>0){continue}break}}H[e>>2]=H[b>>2];b:{if(H[a+8>>2]<0){break b}c=H[a>>2];if(!c){break b}b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,c);f=H[a+4>>2]}H[a+8>>2]=g;H[a>>2]=d;H[a+4>>2]=f+1}function bp(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;c=H[a+8>>2]&2147483647;g=c?c<<1:1;a:{if(!g){break a}e=g<<2;if(!e){break a}d=H[33808];c=d+12|0;d=(j=c,k=e,l=Ra[H[H[d>>2]+20>>2]](d)|0?49048:55639,m=13582,n=553,i=H[H[c>>2]+8>>2],Ra[i](j|0,k|0,l|0,m|0,n|0)|0)}f=H[a+4>>2];e=(f<<2)+d|0;if((f|0)>0){h=H[a>>2];c=d;while(1){H[c>>2]=H[h>>2];h=h+4|0;c=c+4|0;if(e>>>0>c>>>0){continue}break}}H[e>>2]=H[b>>2];b:{if(H[a+8>>2]<0){break b}c=H[a>>2];if(!c){break b}b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,c);f=H[a+4>>2]}H[a+8>>2]=g;H[a>>2]=d;H[a+4>>2]=f+1}function Xr(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;c=H[a+8>>2]&2147483647;g=c?c<<1:1;a:{if(!g){break a}e=g<<2;if(!e){break a}d=H[33808];c=d+12|0;d=(j=c,k=e,l=Ra[H[H[d>>2]+20>>2]](d)|0?50070:55639,m=13582,n=553,i=H[H[c>>2]+8>>2],Ra[i](j|0,k|0,l|0,m|0,n|0)|0)}f=H[a+4>>2];e=(f<<2)+d|0;if((f|0)>0){h=H[a>>2];c=d;while(1){H[c>>2]=H[h>>2];h=h+4|0;c=c+4|0;if(e>>>0>c>>>0){continue}break}}H[e>>2]=H[b>>2];b:{if(H[a+8>>2]<0){break b}c=H[a>>2];if(!c){break b}b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,c);f=H[a+4>>2]}H[a+8>>2]=g;H[a>>2]=d;H[a+4>>2]=f+1}function XN(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;c=H[a+8>>2]&2147483647;g=c?c<<1:1;a:{if(!g){break a}e=g<<2;if(!e){break a}d=H[33808];c=d+12|0;d=(j=c,k=e,l=Ra[H[H[d>>2]+20>>2]](d)|0?50448:55639,m=13582,n=553,i=H[H[c>>2]+8>>2],Ra[i](j|0,k|0,l|0,m|0,n|0)|0)}f=H[a+4>>2];e=(f<<2)+d|0;if((f|0)>0){h=H[a>>2];c=d;while(1){H[c>>2]=H[h>>2];h=h+4|0;c=c+4|0;if(e>>>0>c>>>0){continue}break}}H[e>>2]=H[b>>2];b:{if(H[a+8>>2]<0){break b}c=H[a>>2];if(!c){break b}b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,c);f=H[a+4>>2]}H[a+8>>2]=g;H[a>>2]=d;H[a+4>>2]=f+1}function VT(a,b){var c=O(0),d=O(0),e=O(0),f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=0;e=L[b+24>>2];d=L[b+4>>2];f=L[b>>2];g=L[b+12>>2];c=L[b+8>>2];n=H[b+20>>2];b=H[b+16>>2];H[a+48>>2]=0;H[a- -64>>2]=0;H[a+80>>2]=0;H[a+84>>2]=b;H[a+88>>2]=n;H[a+96>>2]=1065353216;L[a+92>>2]=e;e=O(f+f);h=O(d*e);j=O(c+c);k=O(g*j);L[a+40>>2]=h+k;l=O(e*c);i=O(d+d);m=O(g*i);L[a+44>>2]=l-m;L[a+52>>2]=h-k;h=O(i*c);g=O(e*g);L[a+60>>2]=h+g;L[a+68>>2]=l+m;L[a+72>>2]=h-g;f=O(O(1)-O(f*e));c=O(c*j);L[a+56>>2]=f-c;d=O(d*i);L[a+76>>2]=f-d;L[a+36>>2]=O(O(1)-d)-c;return a}function TA(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;c=H[a+8>>2]&2147483647;g=c?c<<1:1;a:{if(!g){break a}e=g<<2;if(!e){break a}d=H[33808];c=d+12|0;d=(j=c,k=e,l=Ra[H[H[d>>2]+20>>2]](d)|0?53738:55639,m=13582,n=553,i=H[H[c>>2]+8>>2],Ra[i](j|0,k|0,l|0,m|0,n|0)|0)}f=H[a+4>>2];e=(f<<2)+d|0;if((f|0)>0){h=H[a>>2];c=d;while(1){H[c>>2]=H[h>>2];h=h+4|0;c=c+4|0;if(e>>>0>c>>>0){continue}break}}H[e>>2]=H[b>>2];b:{if(H[a+8>>2]<0){break b}c=H[a>>2];if(!c){break b}b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,c);f=H[a+4>>2]}H[a+8>>2]=g;H[a>>2]=d;H[a+4>>2]=f+1}function SN(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;c=H[a+8>>2]&2147483647;g=c?c<<1:1;a:{if(!g){break a}e=g<<2;if(!e){break a}d=H[33808];c=d+12|0;d=(j=c,k=e,l=Ra[H[H[d>>2]+20>>2]](d)|0?52190:55639,m=13582,n=553,i=H[H[c>>2]+8>>2],Ra[i](j|0,k|0,l|0,m|0,n|0)|0)}f=H[a+4>>2];e=(f<<2)+d|0;if((f|0)>0){h=H[a>>2];c=d;while(1){H[c>>2]=H[h>>2];h=h+4|0;c=c+4|0;if(e>>>0>c>>>0){continue}break}}H[e>>2]=H[b>>2];b:{if(H[a+8>>2]<0){break b}c=H[a>>2];if(!c){break b}b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,c);f=H[a+4>>2]}H[a+8>>2]=g;H[a>>2]=d;H[a+4>>2]=f+1}function QB(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;c=H[a+8>>2]&2147483647;g=c?c<<1:1;a:{if(!g){break a}e=g<<2;if(!e){break a}d=H[33808];c=d+12|0;d=(j=c,k=e,l=Ra[H[H[d>>2]+20>>2]](d)|0?53592:55639,m=13582,n=553,i=H[H[c>>2]+8>>2],Ra[i](j|0,k|0,l|0,m|0,n|0)|0)}f=H[a+4>>2];e=(f<<2)+d|0;if((f|0)>0){h=H[a>>2];c=d;while(1){H[c>>2]=H[h>>2];h=h+4|0;c=c+4|0;if(e>>>0>c>>>0){continue}break}}H[e>>2]=H[b>>2];b:{if(H[a+8>>2]<0){break b}c=H[a>>2];if(!c){break b}b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,c);f=H[a+4>>2]}H[a+8>>2]=g;H[a>>2]=d;H[a+4>>2]=f+1}function Ml(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;c=H[a+8>>2]&2147483647;g=c?c<<1:1;a:{if(!g){break a}e=g<<2;if(!e){break a}d=H[33808];c=d+12|0;d=(j=c,k=e,l=Ra[H[H[d>>2]+20>>2]](d)|0?48942:55639,m=13582,n=553,i=H[H[c>>2]+8>>2],Ra[i](j|0,k|0,l|0,m|0,n|0)|0)}f=H[a+4>>2];e=(f<<2)+d|0;if((f|0)>0){h=H[a>>2];c=d;while(1){H[c>>2]=H[h>>2];h=h+4|0;c=c+4|0;if(e>>>0>c>>>0){continue}break}}H[e>>2]=H[b>>2];b:{if(H[a+8>>2]<0){break b}c=H[a>>2];if(!c){break b}b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,c);f=H[a+4>>2]}H[a+8>>2]=g;H[a>>2]=d;H[a+4>>2]=f+1}function KN(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;c=H[a+8>>2]&2147483647;g=c?c<<1:1;a:{if(!g){break a}e=g<<2;if(!e){break a}d=H[33808];c=d+12|0;d=(j=c,k=e,l=Ra[H[H[d>>2]+20>>2]](d)|0?48830:55639,m=13582,n=553,i=H[H[c>>2]+8>>2],Ra[i](j|0,k|0,l|0,m|0,n|0)|0)}f=H[a+4>>2];e=(f<<2)+d|0;if((f|0)>0){h=H[a>>2];c=d;while(1){H[c>>2]=H[h>>2];h=h+4|0;c=c+4|0;if(e>>>0>c>>>0){continue}break}}H[e>>2]=H[b>>2];b:{if(H[a+8>>2]<0){break b}c=H[a>>2];if(!c){break b}b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,c);f=H[a+4>>2]}H[a+8>>2]=g;H[a>>2]=d;H[a+4>>2]=f+1}function Hx(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;c=H[a+8>>2]&2147483647;g=c?c<<1:1;a:{if(!g){break a}e=g<<2;if(!e){break a}d=H[33808];c=d+12|0;d=(j=c,k=e,l=Ra[H[H[d>>2]+20>>2]](d)|0?51180:55639,m=13582,n=553,i=H[H[c>>2]+8>>2],Ra[i](j|0,k|0,l|0,m|0,n|0)|0)}f=H[a+4>>2];e=(f<<2)+d|0;if((f|0)>0){h=H[a>>2];c=d;while(1){H[c>>2]=H[h>>2];h=h+4|0;c=c+4|0;if(e>>>0>c>>>0){continue}break}}H[e>>2]=H[b>>2];b:{if(H[a+8>>2]<0){break b}c=H[a>>2];if(!c){break b}b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,c);f=H[a+4>>2]}H[a+8>>2]=g;H[a>>2]=d;H[a+4>>2]=f+1}function G5(a,b,c){var d=0,e=0,f=0,g=0;if(!a){return 0}a:{b:{g=31-Q(a+15|0)|0;e=g>>>0>8?g:8;if(e>>>0<=16){d=H[33808];f=H[d+244>>2]+(e<<2)|0;a=f-32|0;f=f-20|0;d=H[d+244>>2]+(H[d+248>>2]<<2)|0;f=d>>>0>f>>>0?f:d;if(a>>>0>>0){while(1){d=H[a>>2];if(d){break b}a=a+4|0;if(f>>>0>a>>>0){continue}break}d=0;if(e>>>0>30){break a}}a=H[33808];d=Ra[H[H[a+12>>2]+8>>2]](a+12|0,2<>2]+8>>2]](e+12|0,a,20591,b,c)|0;break a}H[a>>2]=H[d>>2];g=(a-H[H[33808]+244>>2]>>2)+8|0}H[d>>2]=g;return d+16|0}function EH(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;c=H[a+8>>2]&2147483647;g=c?c<<1:1;a:{if(!g){break a}e=g<<2;if(!e){break a}d=H[33808];c=d+12|0;d=(j=c,k=e,l=Ra[H[H[d>>2]+20>>2]](d)|0?54220:55639,m=13582,n=553,i=H[H[c>>2]+8>>2],Ra[i](j|0,k|0,l|0,m|0,n|0)|0)}f=H[a+4>>2];e=(f<<2)+d|0;if((f|0)>0){h=H[a>>2];c=d;while(1){H[c>>2]=H[h>>2];h=h+4|0;c=c+4|0;if(e>>>0>c>>>0){continue}break}}H[e>>2]=H[b>>2];b:{if(H[a+8>>2]<0){break b}c=H[a>>2];if(!c){break b}b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,c);f=H[a+4>>2]}H[a+8>>2]=g;H[a>>2]=d;H[a+4>>2]=f+1}function DI(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;c=H[a+8>>2]&2147483647;g=c?c<<1:1;a:{if(!g){break a}e=g<<2;if(!e){break a}d=H[33808];c=d+12|0;d=(j=c,k=e,l=Ra[H[H[d>>2]+20>>2]](d)|0?50316:55639,m=13582,n=553,i=H[H[c>>2]+8>>2],Ra[i](j|0,k|0,l|0,m|0,n|0)|0)}f=H[a+4>>2];e=(f<<2)+d|0;if((f|0)>0){h=H[a>>2];c=d;while(1){H[c>>2]=H[h>>2];h=h+4|0;c=c+4|0;if(e>>>0>c>>>0){continue}break}}H[e>>2]=H[b>>2];b:{if(H[a+8>>2]<0){break b}c=H[a>>2];if(!c){break b}b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,c);f=H[a+4>>2]}H[a+8>>2]=g;H[a>>2]=d;H[a+4>>2]=f+1}function AO(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;f=Oa-48|0;Oa=f;c=H[H[a+976>>2]+1024>>2];Ra[H[H[c>>2]+84>>2]](f+8|0,c);i=H[H[a+1004>>2]+8>>2];j=H[i+8>>2];if(j){while(1){d=H[i+4>>2]+(h<<5)|0;e=H[d>>2];a:{if(!e){break a}c=H[e+44>>2];if(!(c&448)){break a}g=c<<1&1048576;k=g|c&-1572865;H[e+44>>2]=k;b:{if(L[d+20>>2]>O(L[d+8>>2]*L[a+1080>>2])){H[e+44>>2]=k|524288;if(!g){d=64;if(c&64){break b}}if(!g){break a}d=128;if(c&128){break b}break a}if(!g){break a}d=256;if(!(c&256)){break a}}QQ(e,d,0,0,b,f+8|0)}h=h+1|0;if((j|0)!=(h|0)){continue}break}}Oa=f+48|0}function AH(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;c=H[a+8>>2]&2147483647;g=c?c<<1:1;a:{if(!g){break a}e=g<<2;if(!e){break a}d=H[33808];c=d+12|0;d=(j=c,k=e,l=Ra[H[H[d>>2]+20>>2]](d)|0?51810:55639,m=13582,n=553,i=H[H[c>>2]+8>>2],Ra[i](j|0,k|0,l|0,m|0,n|0)|0)}f=H[a+4>>2];e=(f<<2)+d|0;if((f|0)>0){h=H[a>>2];c=d;while(1){H[c>>2]=H[h>>2];h=h+4|0;c=c+4|0;if(e>>>0>c>>>0){continue}break}}H[e>>2]=H[b>>2];b:{if(H[a+8>>2]<0){break b}c=H[a>>2];if(!c){break b}b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,c);f=H[a+4>>2]}H[a+8>>2]=g;H[a>>2]=d;H[a+4>>2]=f+1}function ZT(a,b){var c=0,d=O(0),e=O(0),f=0,g=O(0);c=Oa-32|0;Oa=c;e=L[b+8>>2];g=L[b+4>>2];d=L[b>>2];H[a+4>>2]=H[b+12>>2];H[c+16>>2]=0;H[c+20>>2]=0;L[c+12>>2]=d+O(0);H[c+8>>2]=0;H[c>>2]=0;H[c+4>>2]=0;d=O(O(W(O(O(e*e)+O(O(d*d)+O(g*g)))))*O(.15000000596046448));L[c+24>>2]=d;f=YT(a,c);H[a+4>>2]=H[b+16>>2];e=L[b+4>>2];H[c+8>>2]=0;H[c+12>>2]=0;H[c+20>>2]=0;L[c+16>>2]=e+O(0);H[c>>2]=0;H[c+4>>2]=0;L[c+24>>2]=d;f=YT(f,c);H[a+4>>2]=H[b+20>>2];e=L[b+8>>2];H[c+16>>2]=0;H[c+8>>2]=0;H[c+12>>2]=0;L[c+20>>2]=e+O(0);H[c>>2]=0;H[c+4>>2]=0;L[c+24>>2]=d;YT(f,c);Oa=c+32|0}function dR(a,b){var c=0,d=0,e=0,f=0,g=0;c=H[H[a+4>>2]+40>>2];if(b){aR(a,0,H[c+980>>2]+160|0);return}e=H[a+8>>2];if((e|0)<0){f=e&2147483647;a=f+32>>>5|0;a:{if(a>>>0<=(H[c+2520>>2]&2147483647)>>>0){b=H[c+2516>>2];break a}b=H[33808]+12|0;b=Ra[H[H[b>>2]+8>>2]](b,a<<2,20591,14905,438)|0;d=H[c+2516>>2];b:{if(!d){break b}R6(b,d,H[c+2520>>2]<<2);if(H[c+2520>>2]<0){break b}d=H[c+2516>>2];if(!d){break b}g=H[33808]+12|0;Ra[H[H[g>>2]+12>>2]](g,d)}d=H[c+2520>>2];S6((d<<2)+b|0,0,a-d<<2);H[c+2520>>2]=a;H[c+2516>>2]=b}a=(f>>>3&268435452)+b|0;H[a>>2]=H[a>>2]|1<>2]=c;c=f+160|0;S6(c,0,40);H[f+200>>2]=H[f+204>>2];a:{if((d6(0,b,f+200|0,f+80|0,c,d,e)|0)<0){break a}h=H[a+76>>2]>=0;c=H[a>>2];if(H[a+72>>2]<=0){H[a>>2]=c&-33}b:{c:{d:{if(!H[a+48>>2]){H[a+48>>2]=80;H[a+28>>2]=0;H[a+16>>2]=0;H[a+20>>2]=0;g=H[a+44>>2];H[a+44>>2]=f;break d}if(H[a+16>>2]){break c}}if(Q6(a)){break b}}d6(a,b,f+200|0,f+80|0,f+160|0,d,e)}if(g){Ra[H[a+36>>2]](a,0,0)|0;H[a+48>>2]=0;H[a+44>>2]=g;H[a+28>>2]=0;H[a+16>>2]=0;H[a+20>>2]=0}H[a>>2]=H[a>>2]|c&32;if(!h){break a}}Oa=f+208|0}function gp(a,b,c,d){var e=0,f=0,g=0;e=Oa-16|0;Oa=e;g=b+48|0;f=H[b+52>>2];f=I[(f&1?H[b+56>>2]:(g+H[((f>>>22&60)+76348|0)+12>>2]|0)+8|0)|0]&8;a:{if(!d){break a}H[e+12>>2]=-1;d=ng(b+12|0,e+12|0);if(!d){break a}Sf(d,b,0)}lt(b+20|0,a+5584|0,b);if(!f){pg(b+12|0)}It(a+16|0,g,c,(I[(H[((H[b+52>>2]>>>22&60)+76348|0)+12>>2]+g|0)+8|0]&8)>>>3|0);b=H[b+44>>2];d=a+5936|0;c=H[d>>2]-1|0;H[d>>2]=c;d=H[a+5932>>2];H[d+(b<<2)>>2]=H[d+(c<<2)>>2];b:{if(!c|(b|0)==(c|0)){break b}a=H[H[a+5932>>2]+(b<<2)>>2];if(Ra[H[H[a>>2]+24>>2]](a)>>>0>1){break b}H[a+44>>2]=b}Oa=e+16|0}function fp(a,b,c,d){var e=0,f=0,g=0;e=Oa-16|0;Oa=e;g=b+48|0;f=H[b+52>>2];f=I[(f&1?H[b+56>>2]:(g+H[((f>>>22&60)+76348|0)+12>>2]|0)+8|0)|0]&8;a:{if(!d){break a}H[e+12>>2]=-1;d=ng(b+12|0,e+12|0);if(!d){break a}Sf(d,b,0)}lt(b+20|0,a+5584|0,b);if(!f){pg(b+12|0)}Ft(a+16|0,g,c,(I[(H[((H[b+52>>2]>>>22&60)+76348|0)+12>>2]+g|0)+8|0]&8)>>>3|0);b=H[b+44>>2];d=a+5936|0;c=H[d>>2]-1|0;H[d>>2]=c;d=H[a+5932>>2];H[d+(b<<2)>>2]=H[d+(c<<2)>>2];b:{if(!c|(b|0)==(c|0)){break b}a=H[H[a+5932>>2]+(b<<2)>>2];if(Ra[H[H[a>>2]+24>>2]](a)>>>0>1){break b}H[a+44>>2]=b}Oa=e+16|0}function H6(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;if(t6(a,H[b+8>>2],e)){if(!(H[b+28>>2]==1|H[b+4>>2]!=(c|0))){H[b+28>>2]=d}return}a:{if(t6(a,H[b>>2],e)){if(!(H[b+16>>2]!=(c|0)&H[b+20>>2]!=(c|0))){if((d|0)!=1){break a}H[b+32>>2]=1;return}H[b+32>>2]=d;b:{if(H[b+44>>2]==4){break b}G[b+52>>1]=0;a=H[a+8>>2];Ra[H[H[a>>2]+20>>2]](a,b,c,c,1,e);if(I[b+53|0]){H[b+44>>2]=3;if(!I[b+52|0]){break b}break a}H[b+44>>2]=4}H[b+20>>2]=c;H[b+40>>2]=H[b+40>>2]+1;if(H[b+36>>2]!=1|H[b+24>>2]!=2){break a}F[b+54|0]=1;return}a=H[a+8>>2];Ra[H[H[a>>2]+24>>2]](a,b,c,d,e)}}function BR(a,b){a=a|0;b=b|0;var c=0,d=0,e=O(0),f=0,g=O(0);g=L[a+528>>2];e=L[a+524>>2];c=H[a+436>>2];H[b>>2]=H[a+432>>2];H[b+4>>2]=c;c=H[a+452>>2];H[b+16>>2]=H[a+448>>2];H[b+20>>2]=c;c=H[a+444>>2];H[b+8>>2]=H[a+440>>2];H[b+12>>2]=c;d=+e;M[b>>3]=M[b>>3]-d;M[b+16>>3]=M[b+16>>3]-d;f=+O(e+O(g*O(.5)));M[b+8>>3]=M[b+8>>3]-f;c=H[a+452>>2];H[b+40>>2]=H[a+448>>2];H[b+44>>2]=c;c=H[a+444>>2];H[b+32>>2]=H[a+440>>2];H[b+36>>2]=c;c=H[a+436>>2];H[b+24>>2]=H[a+432>>2];H[b+28>>2]=c;M[b+24>>3]=M[b+24>>3]+d;M[b+32>>3]=M[b+32>>3]+f;M[b+40>>3]=M[b+40>>3]+d;return 1}function AR(a,b){a=a|0;b=b|0;var c=0,d=0,e=O(0),f=0,g=O(0);e=L[a+532>>2];g=L[a+536>>2];c=H[a+452>>2];H[b+8>>2]=H[a+448>>2];H[b+12>>2]=c;c=H[a+444>>2];H[b>>2]=H[a+440>>2];H[b+4>>2]=c;c=H[a+460>>2];H[b+16>>2]=H[a+456>>2];H[b+20>>2]=c;f=+O(e+O(g*O(.5)));M[b+8>>3]=M[b+8>>3]-f;d=+e;M[b>>3]=M[b>>3]-d;M[b+16>>3]=M[b+16>>3]-d;c=H[a+460>>2];H[b+40>>2]=H[a+456>>2];H[b+44>>2]=c;c=H[a+452>>2];H[b+32>>2]=H[a+448>>2];H[b+36>>2]=c;c=H[a+444>>2];H[b+24>>2]=H[a+440>>2];H[b+28>>2]=c;M[b+24>>3]=M[b+24>>3]+d;M[b+32>>3]=M[b+32>>3]+f;M[b+40>>3]=M[b+40>>3]+d;return 1}function jy(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:{if(!b){break a}d=b<<4;if(!d){break a}c=H[33808];e=c+12|0;e=(i=e,j=d,k=Ra[H[H[c>>2]+20>>2]](c)|0?29476:55639,l=13582,m=553,h=H[H[e>>2]+8>>2],Ra[h](i|0,j|0,k|0,l|0,m|0)|0)}c=H[a+4>>2];if((c|0)>0){g=(c<<4)+e|0;d=H[a>>2];c=e;while(1){f=H[d+4>>2];H[c>>2]=H[d>>2];H[c+4>>2]=f;f=H[d+12>>2];H[c+8>>2]=H[d+8>>2];H[c+12>>2]=f;d=d+16|0;c=c+16|0;if(g>>>0>c>>>0){continue}break}}b:{if(H[a+8>>2]<0){break b}c=H[a>>2];if(!c){break b}d=H[33808]+12|0;Ra[H[H[d>>2]+12>>2]](d,c)}H[a+8>>2]=b;H[a>>2]=e}function gi(a,b,c){var d=0,e=0;a:{b:{c:{d:{e=H[a+4>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break d}}d=H[a>>2];break b}d=H[a>>2];if(I[d+4785|0]){break a}}KF(a+16|0,H[d+2428>>2],b,c);return}d=H[a+8>>2];if(!d){d=Tt(H[a>>2],e>>>24&15);H[a+8>>2]=d}if(b){L[d+244>>2]=L[b>>2]+L[d+244>>2];L[d+248>>2]=L[b+4>>2]+L[d+248>>2];L[d+252>>2]=L[b+8>>2]+L[d+252>>2];b=262144}else{b=0}if(c){L[d+256>>2]=L[c>>2]+L[d+256>>2];L[d+260>>2]=L[c+4>>2]+L[d+260>>2];L[d+264>>2]=L[c+8>>2]+L[d+264>>2];b=b|524288}$t(H[a>>2],a);H[a+268>>2]=H[a+268>>2]|b}function fi(a,b,c){var d=0,e=0;a:{b:{c:{d:{e=H[a+4>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break d}}d=H[a>>2];break b}d=H[a>>2];if(I[d+4785|0]){break a}}GF(a+16|0,H[d+2428>>2],b,c);return}d=H[a+8>>2];if(!d){d=Tt(H[a>>2],e>>>24&15);H[a+8>>2]=d}if(b){L[d+220>>2]=L[b>>2]+L[d+220>>2];L[d+224>>2]=L[b+4>>2]+L[d+224>>2];L[d+228>>2]=L[b+8>>2]+L[d+228>>2];b=65536}else{b=0}if(c){L[d+232>>2]=L[c>>2]+L[d+232>>2];L[d+236>>2]=L[c+4>>2]+L[d+236>>2];L[d+240>>2]=L[c+8>>2]+L[d+240>>2];b=b|131072}$t(H[a>>2],a);H[a+268>>2]=H[a+268>>2]|b}function Qx(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;e=Oa-16|0;Oa=e;d=H[b+4>>2];if(d){g=a+88|0;h=a+112|0;while(1){c=d-1|0;d=H[H[b>>2]+(c<<2)>>2];H[b+4>>2]=c;H[e+12>>2]=d;c=H[a+168>>2];f=H[c+16>>2];a:{if(!(d>>>0>>0|d>>>0>=H[c+20>>2]+f>>>0)){c=H[a+92>>2];if(c>>>0>=(H[a+96>>2]&2147483647)>>>0){Hx(g,e+12|0);break a}H[H[a+88>>2]+(c<<2)>>2]=d;H[a+92>>2]=c+1;break a}c=H[a+116>>2];b:{if(c>>>0>=(H[a+120>>2]&2147483647)>>>0){Hx(h,e+12|0);break b}H[H[a+112>>2]+(c<<2)>>2]=d;H[a+116>>2]=c+1}H[a+152>>2]=H[a+152>>2]-1}d=H[b+4>>2];if(d){continue}break}}Oa=e+16|0}function VP(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;b=H[a+28>>2];a=H[a+20>>2];H[b+3620>>2]=a;H[b+3624>>2]=1;d=b+3600|0;a:{if(!a){c=H[b+3616>>2];break a}Ra[H[H[a>>2]+16>>2]](a);c=H[H[b+3620>>2]+16>>2];H[b+3616>>2]=c}Ra[H[H[c>>2]+72>>2]](c,d);H[b+3660>>2]=a;H[b+3664>>2]=1;c=b+3640|0;b:{if(!a){a=H[b+3656>>2];break b}Ra[H[H[a>>2]+16>>2]](a);a=H[H[b+3660>>2]+16>>2];H[b+3656>>2]=a}Ra[H[H[a>>2]+72>>2]](a,c);a=H[b+980>>2];c=H[a+332>>2];if(c){a=H[a+328>>2];while(1){e=a,f=lI(H[b+2168>>2],H[a>>2],H[a+4>>2]),H[e+8>>2]=f;a=a+12|0;c=c-1|0;if(c){continue}break}}}function qm(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=H[a+8>>2]&2147483647;g=d?d<<1:1;a:{if(!g){break a}d=g<<2;if(!d){break a}e=H[33808];c=e+12|0;e=(j=c,k=d,l=Ra[H[H[e>>2]+20>>2]](e)|0?25032:55639,m=13582,n=553,i=H[H[c>>2]+8>>2],Ra[i](j|0,k|0,l|0,m|0,n|0)|0)}d=H[a>>2];c=H[a+4>>2];if((c|0)>0){h=(c<<2)+e|0;c=d;f=e;while(1){H[f>>2]=H[c>>2];c=c+4|0;f=f+4|0;if(h>>>0>f>>>0){continue}break}c=H[a+4>>2]}H[(c<<2)+e>>2]=H[b>>2];if(!(!d|H[a+8>>2]<0)){b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,d)}H[a+8>>2]=g;H[a>>2]=e;H[a+4>>2]=H[a+4>>2]+1}function an(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0;if(I[a+100|0]){g=H[a+92>>2];if(g){e=(b<<15^-1)+b|0;e=N(e>>>10^e,9);e=e>>>6^e;e=(e<<11^-1)+e|0;i=e>>>16^e;j=H[a+60>>2];while(1){h=(f<<3)+j|0;a=H[h+4>>2];a:{if(!(I[a+40|0]&d)){break a}b:{if(!I[a+41|0]){break b}if(!H[a+36>>2]){break a}e=H[H[a+12>>2]+((H[a+20>>2]-1&i)<<2)>>2];if((e|0)==-1){break a}k=H[a+8>>2];a=H[a+4>>2];while(1){e=e<<2;if(H[e+a>>2]==(b|0)){break b}e=H[e+k>>2];if((e|0)!=-1){continue}break}break a}a=H[h>>2];Ra[H[H[a>>2]>>2]](a,b,c,d)}f=f+1|0;if((g|0)!=(f|0)){continue}break}}}}function _E(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=H[a+8>>2]&2147483647;g=d?d<<1:1;a:{if(!g){break a}d=g<<2;if(!d){break a}e=H[33808];c=e+12|0;e=(j=c,k=d,l=Ra[H[H[e>>2]+20>>2]](e)|0?22342:55639,m=13582,n=553,i=H[H[c>>2]+8>>2],Ra[i](j|0,k|0,l|0,m|0,n|0)|0)}d=H[a>>2];c=H[a+4>>2];if((c|0)>0){h=(c<<2)+e|0;c=d;f=e;while(1){H[f>>2]=H[c>>2];c=c+4|0;f=f+4|0;if(h>>>0>f>>>0){continue}break}c=H[a+4>>2]}H[(c<<2)+e>>2]=H[b>>2];if(!(!d|H[a+8>>2]<0)){b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,d)}H[a+8>>2]=g;H[a>>2]=e;H[a+4>>2]=H[a+4>>2]+1}function Ds(a,b){a=a|0;b=b|0;var c=0,d=0;c=a+116|0;d=H[c>>2];if((d|0)==5){a=H[a+36>>2]&1?H[a+40>>2]- -64|0:c;H[b>>2]=H[a>>2];L[b+4>>2]=L[a+4>>2];L[b+8>>2]=L[a+8>>2];L[b+12>>2]=L[a+12>>2];L[b+16>>2]=L[a+16>>2];L[b+20>>2]=L[a+20>>2];L[b+24>>2]=L[a+24>>2];L[b+28>>2]=L[a+28>>2];F[b+32|0]=I[a+32|0];c=I[a+33|0]|I[a+34|0]<<8|(I[a+35|0]<<16|I[a+36|0]<<24);F[b+33|0]=c;F[b+34|0]=c>>>8;F[b+35|0]=c>>>16;F[b+36|0]=c>>>24;a=I[a+36|0]|I[a+37|0]<<8|(I[a+38|0]<<16|I[a+39|0]<<24);F[b+36|0]=a;F[b+37|0]=a>>>8;F[b+38|0]=a>>>16;F[b+39|0]=a>>>24}return(d|0)==5|0}function TN(a,b){var c=0,d=0,e=0,f=0,g=0;d=H[b+152>>2];H[b+152>>2]=-2;g=H[a+28>>2];c=H[a+36>>2];a:{if(c>>>0<=d>>>0){e=d;break a}e=c-1|0;H[a+36>>2]=e;if((c|0)==(g|0)){e=d;break a}if(d>>>0>=e>>>0){e=d;break a}c=H[H[a+24>>2]+(e<<2)>>2];H[H[c>>2]+152>>2]=d;H[H[a+24>>2]+(d<<2)>>2]=c}if(I[b+149|0]&16){f=H[b+156>>2];H[b+156>>2]=-2;c=H[a+44>>2]-1|0;if((c|0)!=(f|0)){b=H[a+40>>2];d=H[b+(c<<2)>>2];H[b+(f<<2)>>2]=d;H[H[d>>2]+156>>2]=f}H[a+44>>2]=c}c=g-1|0;if((c|0)!=(e|0)){b=H[a+24>>2];d=H[b+(c<<2)>>2];H[b+(e<<2)>>2]=d;H[H[d>>2]+152>>2]=e}H[a+28>>2]=c}function Yp(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;if(!I[a+4801|0]){a=a+32|0;a:{b:{if(b){c:{if(K[a+2180>>2]>=c>>>0){d=H[a+2172>>2];break c}d=H[33808]+12|0;d=Ra[H[H[d>>2]+8>>2]](d,c,20591,9345,1434)|0;if(!d){break b}H[a+2180>>2]=c;e=H[a+2172>>2];if(!e){break c}f=H[33808]+12|0;Ra[H[H[f>>2]+12>>2]](f,e)}b=R6(d,b,c);H[a+2176>>2]=c;H[a+2172>>2]=b;break a}b=H[a+2172>>2];if(b){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b);H[a+2172>>2]=0}H[a+2176>>2]=0;H[a+2180>>2]=0;break a}o5(H[33808],16,9345,1443,65698,0)}return}o5(H[33808],8,16043,565,59821,0)}function kG(a){var b=0,c=0,d=0,e=0,f=0,g=0;F[a+150|0]=I[a+150|0]|4;if(I[H[a+44>>2]+9|0]!=2){e=H[a+144>>2];f=e>>>7|0;d=f+32>>>5|0;a=H[a+40>>2];a:{if(d>>>0<=(H[a+2448>>2]&2147483647)>>>0){b=H[a+2444>>2];break a}b=H[33808]+12|0;b=Ra[H[H[b>>2]+8>>2]](b,d<<2,20591,14905,438)|0;c=H[a+2444>>2];b:{if(!c){break b}R6(b,c,H[a+2448>>2]<<2);if(H[a+2448>>2]<0){break b}c=H[a+2444>>2];if(!c){break b}g=H[33808]+12|0;Ra[H[H[g>>2]+12>>2]](g,c)}c=H[a+2448>>2];S6((c<<2)+b|0,0,d-c<<2);H[a+2448>>2]=d;H[a+2444>>2]=b}a=(e>>>10&4194300)+b|0;H[a>>2]=H[a>>2]|1<>2]+9|0]!=2){e=H[a+144>>2];f=e>>>7|0;d=f+32>>>5|0;a=H[a+40>>2];a:{if(d>>>0<=(H[a+2448>>2]&2147483647)>>>0){b=H[a+2444>>2];break a}b=H[33808]+12|0;b=Ra[H[H[b>>2]+8>>2]](b,d<<2,20591,14905,438)|0;c=H[a+2444>>2];b:{if(!c){break b}R6(b,c,H[a+2448>>2]<<2);if(H[a+2448>>2]<0){break b}c=H[a+2444>>2];if(!c){break b}g=H[33808]+12|0;Ra[H[H[g>>2]+12>>2]](g,c)}c=H[a+2448>>2];S6((c<<2)+b|0,0,d-c<<2);H[a+2448>>2]=d;H[a+2444>>2]=b}a=(e>>>10&4194300)+b|0;H[a>>2]=H[a>>2]|1<>2]=0;H[a+76>>2]=0;b=H[a+32>>2];if(!(!b|!H[a+48>>2])){S6(H[a+24>>2],255,b<<2);b=0;d=H[a+20>>2];f=H[a+28>>2];e=f-1|0;if(e){if(f-2>>>0>=3){f=e&-4;while(1){c=b|1;H[(b<<2)+d>>2]=c;g=(c<<2)+d|0;c=b|2;H[g>>2]=c;g=(c<<2)+d|0;c=b|3;H[g>>2]=c;b=b+4|0;H[(c<<2)+d>>2]=b;h=h+4|0;if((f|0)!=(h|0)){continue}break}}e=e&3;if(e){while(1){c=(b<<2)+d|0;b=b+1|0;H[c>>2]=b;i=i+1|0;if((e|0)!=(i|0)){continue}break}}b=H[a+28>>2]-1|0}else{b=0}H[d+(b<<2)>>2]=-1;H[a+48>>2]=0;H[a+40>>2]=0}H[a+52>>2]=0}function IN(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0;b=H[a+28>>2];e=H[b+136>>2];a=H[b+148>>2];d=H[(e+(a<<3)|0)+4>>2]+(a<<7)|0;a:{if(!d){break a}a=0;if((d|0)!=1){i=d&-2;while(1){f=a<<6&8064;c=(a>>>4&268435448)+e|0;g=f+H[c>>2]|0;H[g+52>>2]=0;H[g+44>>2]=0;c=f+H[c>>2]|0;H[c+116>>2]=0;H[c+108>>2]=0;a=a+2|0;h=h+2|0;if((h|0)!=(i|0)){continue}break}}if(!(d&1)){break a}a=H[(a>>>4&268435448)+e>>2]+((a&127)<<6)|0;H[a+52>>2]=0;H[a+44>>2]=0}H[b+164>>2]=0;H[H[b+152>>2]+4>>2]=0;uN(b);a=H[b+300>>2];b=H[H[b+312>>2]+304>>2];H[a>>2]=H[b>>2];H[b>>2]=a}function d$(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=0,n=O(0),o=O(0),p=O(0),q=O(0);e=Oa-32|0;Oa=e;m=H[c+36>>2];f=L[b+20>>2];n=L[b+16>>2];o=L[b+24>>2];h=L[b>>2];i=O(h+h);g=L[b+8>>2];p=L[b+4>>2];j=L[b+12>>2];k=O(j+j);l=L[a+8>>2];q=O(O(O(i*g)-O(p*k))*l);L[e+20>>2]=o-q;g=O(l*O(O(g*k)+O(i*p)));L[e+16>>2]=f-g;L[e+8>>2]=q+o;L[e+4>>2]=f+g;f=O(l*O(O(h*i)+O(O(j*k)+O(-1))));L[e+12>>2]=n-f;L[e>>2]=n+f;L[e+24>>2]=L[a+4>>2];a=Ra[H[(J[m+4>>1]<<2)+128532>>2]](e,m,d,c+4|0,0)|0;Oa=e+32|0;return a|0}function oy(a,b){var c=0,d=0,e=0,f=0,g=0;a:{if(!b){break a}d=b<<5;if(!d){break a}c=H[a>>2];f=Ra[H[H[c>>2]+8>>2]](c,d,13582,553)|0}c=H[a+8>>2];if((c|0)>0){g=(c<<5)+f|0;c=H[a+4>>2];d=f;while(1){e=H[c+4>>2];H[d>>2]=H[c>>2];H[d+4>>2]=e;e=H[c+28>>2];H[d+24>>2]=H[c+24>>2];H[d+28>>2]=e;e=H[c+20>>2];H[d+16>>2]=H[c+16>>2];H[d+20>>2]=e;e=H[c+12>>2];H[d+8>>2]=H[c+8>>2];H[d+12>>2]=e;c=c+32|0;d=d+32|0;if(g>>>0>d>>>0){continue}break}}b:{if(H[a+12>>2]<0){break b}d=H[a+4>>2];if(!d){break b}c=H[a>>2];Ra[H[H[c>>2]+12>>2]](c,d)}H[a+12>>2]=b;H[a+4>>2]=f}function Kt(a){var b=0,c=0,d=0,e=0,f=0;b=Oa-288|0;Oa=b;F[b+264|0]=1;H[b+272>>2]=0;H[b+276>>2]=64;H[b+268>>2]=b+8;e=Jn(a,b+4|0,0);if(e){f=H[a>>2]+4816|0;while(1){a=H[H[b+4>>2]+(d<<2)>>2]+32|0;c=H[a+4>>2];if(c&268435456){au(a);H[b+284>>2]=a;Pf(f,b+284|0);c=H[a+4>>2]&-268435457;H[a+4>>2]=c}if((c&251658240)==16777216){H[a>>2]=0;H[a+4>>2]=c&1073741823}d=d+1|0;if((e|0)!=(d|0)){continue}break}}a=H[b+276>>2];a:{if((a|0)<0|!(a&2147483647)){break a}a=H[b+268>>2];if((a|0)==(b+8|0)|!a){break a}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,a)}Oa=b+288|0}function nZ(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=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0);a=H[a+60>>2];h=L[a+8>>2];j=h;i=O(-h);h=L[b+8>>2];k=L[b>>2];l=L[b+4>>2];g=O(O(L[c+32>>2]*h)+O(O(L[c+24>>2]*k)+O(l*L[c+28>>2])));m=O((g>=O(0)?j:i)*g);g=L[a>>2];j=g;i=O(-g);g=O(O(L[c+8>>2]*h)+O(O(L[c>>2]*k)+O(L[c+4>>2]*l)));j=O((g>=O(0)?j:i)*g);g=O(O(L[c+20>>2]*h)+O(O(L[c+12>>2]*k)+O(l*L[c+16>>2])));i=L[a+4>>2];g=O(m+O(j+O(g*(g>=O(0)?i:O(-i)))));h=O(O(L[c+44>>2]*h)+O(O(L[c+36>>2]*k)+O(l*L[c+40>>2])));L[f>>2]=g+h;L[e>>2]=h-g}function eJ(a){a=a|0;var b=0,c=0,d=0,e=0;c=Oa-16|0;Oa=c;if(H[a+52>>2]){H[c+12>>2]=0;if(H[a+76>>2]){d=a+84|0;while(1){b=H[a+72>>2]+N(b,20)|0;a:{if(H[b+8>>2]==2){break a}e=b;b=H[b+4>>2]-1|0;H[e+4>>2]=b;if(b){break a}b=H[a+88>>2];if(b>>>0>=(H[a+92>>2]&2147483647)>>>0){qm(d,c+12|0);break a}H[H[a+84>>2]+(b<<2)>>2]=H[c+12>>2];H[a+88>>2]=H[a+88>>2]+1}b=H[c+12>>2]+1|0;H[c+12>>2]=b;if(K[a+76>>2]>b>>>0){continue}break}}if(H[a+88>>2]){b=0;while(1){fJ(a,H[H[a+84>>2]+(b<<2)>>2]);b=b+1|0;if(b>>>0>2]){continue}break}}H[a+88>>2]=0}Oa=c+16|0}function SY(a,b){a=a|0;b=b|0;var c=0,d=0;Ra[H[H[b>>2]+12>>2]](b,16);c=G[a+52>>1];d=c&32767;c=(((N(I[a+55|0],20)+(H[a+80>>2]&2147483647)|0)+N(I[a+54|0],15)|0)+(d<<1)|0)+((c|0)>=0?0:d<<2)|0;d=c&3;Ra[H[H[b>>2]+8>>2]](b,H[a+56>>2],(d?4-d|0:0)+c|0);if(H[a+84>>2]){Ra[H[H[b>>2]+12>>2]](b,16);Ra[H[H[b>>2]+8>>2]](b,H[a+84>>2],28);a=H[a+84>>2];if(H[a+4>>2]){Ra[H[H[b>>2]+12>>2]](b,16);Ra[H[H[b>>2]+8>>2]](b,H[a+4>>2],J[a+2>>1]<<1)}if(H[a+16>>2]){Ra[H[H[b>>2]+12>>2]](b,16);Ra[H[H[b>>2]+8>>2]](b,H[a+16>>2],H[a+12>>2]+((H[a+8>>2]<<2)+12&-16)|0)}}}function Ht(a){var b=0,c=0,d=0,e=0,f=0;b=Oa-288|0;Oa=b;F[b+264|0]=1;H[b+272>>2]=0;H[b+276>>2]=64;H[b+268>>2]=b+8;e=$n(a,b+4|0);if(e){f=H[a>>2]+4816|0;while(1){a=H[H[b+4>>2]+(d<<2)>>2]+32|0;c=H[a+4>>2];if(c&268435456){au(a);H[b+284>>2]=a;Pf(f,b+284|0);c=H[a+4>>2]&-268435457;H[a+4>>2]=c}if((c&251658240)==16777216){H[a>>2]=0;H[a+4>>2]=c&1073741823}d=d+1|0;if((e|0)!=(d|0)){continue}break}}a=H[b+276>>2];a:{if((a|0)<0|!(a&2147483647)){break a}a=H[b+268>>2];if((a|0)==(b+8|0)|!a){break a}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,a)}Oa=b+288|0}function FF(a,b){var c=O(0),d=0,e=O(0),f=0,g=O(0),h=O(0),i=O(0),j=O(0);d=Oa-16|0;Oa=d;g=L[b+24>>2];h=L[b>>2];i=L[b+16>>2];j=L[b+20>>2];a:{if(!(!(i!=O(0)|j!=O(0))&g==O(0))){c=L[b+8>>2];e=L[b+4>>2];break a}c=L[b+8>>2];e=L[b+4>>2];if(h!=O(0)|e!=O(0)|c!=O(0)){break a}f=L[b+12>>2]==O(1)}L[a+56>>2]=c;L[a+52>>2]=e;L[a+48>>2]=h;F[a+45|0]=f;c=L[b+12>>2];L[a+72>>2]=g;L[a+68>>2]=j;L[a- -64>>2]=i;L[a+60>>2]=c;a=H[a>>2];if(a){YI(a);b=H[H[a+40>>2]+1012>>2];f=I[H[a+44>>2]+9|0];H[d+8>>2]=H[a+144>>2];Ra[H[H[b>>2]+44>>2]](b,(f|0)==2,d+8|0)}Oa=d+16|0}function v6(a,b){var c=0,d=0,e=0,f=0;c=Oa+-64|0;Oa=c;d=H[a>>2];e=H[d-4>>2];f=H[d-8>>2];H[c+20>>2]=0;H[c+16>>2]=96580;H[c+12>>2]=a;H[c+8>>2]=b;d=0;S6(c+24|0,0,39);a=a+f|0;a:{if(t6(e,b,0)){H[c+56>>2]=1;Ra[H[H[e>>2]+20>>2]](e,c+8|0,a,a,1,0);d=H[c+32>>2]==1?a:0;break a}Ra[H[H[e>>2]+24>>2]](e,c+8|0,a,1,0);b:{switch(H[c+44>>2]){case 0:d=H[c+48>>2]==1?H[c+36>>2]==1?H[c+40>>2]==1?H[c+28>>2]:0:0:0;break a;case 1:break b;default:break a}}if(H[c+32>>2]!=1){if(H[c+48>>2]|H[c+36>>2]!=1|H[c+40>>2]!=1){break a}}d=H[c+24>>2]}Oa=c- -64|0;return d}function Zi(a,b){a=a|0;b=b|0;var c=0,d=O(0),e=O(0),f=O(0),g=0,h=0;c=Oa-16|0;Oa=c;d=L[b>>2];e=L[b+4>>2];f=L[b+8>>2];f=f==O(0)?O(0):O(O(1)/f);L[c+8>>2]=f;e=e==O(0)?O(0):O(O(1)/e);L[c+4>>2]=e;d=d==O(0)?O(0):O(O(1)/d);L[c>>2]=d;g=a+48|0;a:{b:{c:{d:{h=H[a+52>>2];switch((h>>>30|0)-2|0){case 1:break b;case 0:break d;default:break c}}if(I[H[g>>2]+4785|0]){break b}}NF(a- -64|0,c);break a}b=H[a+56>>2];if(!b){b=Tt(H[a+48>>2],h>>>24&15);H[a+56>>2]=b}L[b+104>>2]=f;L[b+100>>2]=e;L[b+96>>2]=d;$t(H[a+48>>2],g);H[a+316>>2]=H[a+316>>2]|2}Oa=c+16|0}function Tw(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;d=1;h=H[a+448>>2];if(h>>>0>1){i=H[a+456>>2];j=H[a+444>>2];while(1){e=(N(d,24)+b|0)-24|0;f=(H[(N(d,80)+i|0)+72>>2]<<2)+c|0;g=H[((d<<5)+j|0)+20>>2];if(I[g+258|0]){L[f>>2]=L[e>>2];a=1}else{a=0}if(I[g+259|0]){L[(a<<2)+f>>2]=L[e+4>>2];a=a+1|0}if(I[g+260|0]){L[(a<<2)+f>>2]=L[e+8>>2];a=a+1|0}if(I[g+261|0]){L[(a<<2)+f>>2]=L[e+12>>2];a=a+1|0}if(I[g+262|0]){L[(a<<2)+f>>2]=L[e+16>>2];a=a+1|0}if(I[g+263|0]){L[(a<<2)+f>>2]=L[e+20>>2]}d=d+1|0;if((h|0)!=(d|0)){continue}break}}}function ak(a,b){var c=0,d=0;L[a+260>>2]=b;a:{b:{c:{d:{d=H[a+4>>2]>>>30|0;switch(d-2|0){case 1:break a;case 0:break c;default:break d}}c=H[a>>2];break b}c=H[a>>2];if(I[c+4785|0]){break a}}if(!(!c|!(b>O(0)))){H[a+264>>2]=0}WF(a+16|0,b,0);return}if(b>O(0)){e:{f:{switch(d-2|0){case 0:c=H[a>>2];if(I[c+4785|0]){break e}default:L[a+260>>2]=b;H[a+264>>2]=0;WF(a+16|0,b,1);return;case 1:break f}}c=H[a>>2]}L[a+260>>2]=b;H[a+264>>2]=0;$t(c,a);H[a+268>>2]=H[a+268>>2]&-117440513|83886080;return}$t(H[a>>2],a);H[a+268>>2]=H[a+268>>2]|16777216}function KK(a){a=a|0;var b=0,c=0,d=0,e=0;c=Oa-16|0;Oa=c;b=H[a+88>>2];d=H[b+84>>2];if(d){e=H[33808]+12|0;Ra[H[H[e>>2]+12>>2]](e,d)}H[b+84>>2]=0;H[b+88>>2]=0;H[b+4208>>2]=0;a:{if(K[a+104>>2]>=1025){H[c+8>>2]=1073741823;H[c+12>>2]=1073741823;b=a+100|0;hK(b,c+8|0);aK(b,H[a+104>>2]);if(H[a+108>>2]&2147482624){break a}aK(b,1024);break a}H[a+104>>2]=0}b:{if(K[a+116>>2]>=1025){H[c+8>>2]=1073741823;H[c+12>>2]=1073741823;b=a+112|0;hK(b,c+8|0);aK(b,H[a+116>>2]);if(H[a+120>>2]&2147482624){break b}aK(b,1024);break b}H[a+116>>2]=0}Oa=c+16|0}function E5(a,b,c,d){var e=O(0),f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0);f=L[c+12>>2];k=L[d+12>>2];h=L[c+8>>2];l=L[d+8>>2];i=L[c>>2];m=L[d>>2];j=L[c+4>>2];n=L[d+4>>2];e=O(O(f*k)+O(O(h*l)+O(O(i*m)+O(j*n))));c=e=O(1.0000000168623835e-16)){g=O(W(g));e=O5(g,e);o=Z5(O(e*b));p=f;f=O(O(1)/g);b=O(f*Z5(O(e*O(O(1)-b))));f=O(f*o);e=c?O(-f):f;f=O(O(p*b)+O(k*e));j=O(O(j*b)+O(n*e));i=O(O(i*b)+O(m*e));h=O(O(h*b)+O(l*e))}L[a+12>>2]=f;L[a+8>>2]=h;L[a+4>>2]=j;L[a>>2]=i}function a3(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;d=Oa-16|0;Oa=d;H[a>>2]=130332;b=H[33808];c=Ra[H[H[b>>2]+20>>2]](b)|0?33850:55639;b=Ra[H[H[b+12>>2]+8>>2]](b+12|0,36,c,16382,229)|0;H[a+4>>2]=b;H[b+16>>2]=0;H[b+8>>2]=0;H[b+20>>2]=0;H[b+24>>2]=0;H[b+28>>2]=0;H[b>>2]=0;H[b+4>>2]=0;H[b+32>>2]=19008;H[b+12>>2]=0;H[a>>2]=130244;h3(a+8|0);b=H[33808];c=H[33808];b=(f=b+12|0,g=28,h=Ra[H[H[c>>2]+20>>2]](c)|0?33728:55639,i=13871,j=103,e=H[H[b+12>>2]+8>>2],Ra[e](f|0,g|0,h|0,i|0,j|0)|0);H[a+20>>2]=b;H[b>>2]=0;H[a+24>>2]=0;Oa=d+16|0}function TJ(a,b){var c=0,d=0,e=0,f=0;c=H[a+384>>2];f=I[c+5|0];c=I[c+4|0];d=a+316|0;e=a+4|0;UJ(a,b,d,e,a+96|0,1,1);UJ(a,b,d,e,a+224|0,f,c);c=H[a+264>>2];f=H[a+164>>2];d=H[a+136>>2];a:{if(!d){break a}e=H[a+292>>2];if(c){VJ(b,H[a+316>>2],d,c,H[a+152>>2],H[a+280>>2],H[a+156>>2],H[a+284>>2],H[a+132>>2],H[a+260>>2])}if(!e){break a}VJ(b,H[a+316>>2],d,e,H[a+152>>2],H[a+304>>2],H[a+156>>2],H[a+308>>2],H[a+132>>2],H[a+288>>2])}if(!(!c|!f)){VJ(b,H[a+316>>2],f,c,H[a+176>>2],H[a+280>>2],H[a+180>>2],H[a+284>>2],H[a+160>>2],H[a+260>>2])}}function OA(a,b){var c=0,d=0,e=0;d=H[a+48>>2];if(d){c=H[d+8>>2];a:{if((c|0)<0|!(c&2147483647)){break a}c=H[d>>2];if(!c){break a}e=H[33808]+12|0;Ra[H[H[e>>2]+12>>2]](e,c)}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,d)}H[a+48>>2]=0;d=H[a+36>>2];if(d){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,d)}H[a+36>>2]=0;d=H[a+8>>2];if(d){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,d-4|0)}H[a+8>>2]=0;fX(a+12|0);d=H[a>>2];if(d){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,d)}H[a+40>>2]=0;H[a>>2]=0;H[a+4>>2]=0;if(b){S6(H[a+52>>2],0,H[a+56>>2]<<2)}H[a+60>>2]=0}function wH(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:{if(!b){break a}d=N(b,12);if(!d){break a}c=H[33808];e=c+12|0;e=(i=e,j=d,k=Ra[H[H[c>>2]+20>>2]](c)|0?31128:55639,l=13582,m=553,h=H[H[e>>2]+8>>2],Ra[h](i|0,j|0,k|0,l|0,m|0)|0)}c=H[a+4>>2];if((c|0)>0){f=N(c,12)+e|0;d=H[a>>2];c=e;while(1){g=H[d+4>>2];H[c>>2]=H[d>>2];H[c+4>>2]=g;H[c+8>>2]=H[d+8>>2];d=d+12|0;c=c+12|0;if(f>>>0>c>>>0){continue}break}}b:{if(H[a+8>>2]<0){break b}c=H[a>>2];if(!c){break b}d=H[33808]+12|0;Ra[H[H[d>>2]+12>>2]](d,c)}H[a+8>>2]=b;H[a>>2]=e}function sK(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:{if(!b){break a}d=N(b,12);if(!d){break a}c=H[33808];e=c+12|0;e=(i=e,j=d,k=Ra[H[H[c>>2]+20>>2]](c)|0?25624:55639,l=13582,m=553,h=H[H[e>>2]+8>>2],Ra[h](i|0,j|0,k|0,l|0,m|0)|0)}c=H[a+4>>2];if((c|0)>0){f=N(c,12)+e|0;d=H[a>>2];c=e;while(1){g=H[d+4>>2];H[c>>2]=H[d>>2];H[c+4>>2]=g;H[c+8>>2]=H[d+8>>2];d=d+12|0;c=c+12|0;if(f>>>0>c>>>0){continue}break}}b:{if(H[a+8>>2]<0){break b}c=H[a>>2];if(!c){break b}d=H[33808]+12|0;Ra[H[H[d>>2]+12>>2]](d,c)}H[a+8>>2]=b;H[a>>2]=e}function gO(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:{if(!b){break a}d=N(b,12);if(!d){break a}c=H[33808];e=c+12|0;e=(i=e,j=d,k=Ra[H[H[c>>2]+20>>2]](c)|0?41810:55639,l=13582,m=553,h=H[H[e>>2]+8>>2],Ra[h](i|0,j|0,k|0,l|0,m|0)|0)}c=H[a+4>>2];if((c|0)>0){f=N(c,12)+e|0;d=H[a>>2];c=e;while(1){g=H[d+4>>2];H[c>>2]=H[d>>2];H[c+4>>2]=g;H[c+8>>2]=H[d+8>>2];d=d+12|0;c=c+12|0;if(f>>>0>c>>>0){continue}break}}b:{if(H[a+8>>2]<0){break b}c=H[a>>2];if(!c){break b}d=H[33808]+12|0;Ra[H[H[d>>2]+12>>2]](d,c)}H[a+8>>2]=b;H[a>>2]=e}function eX(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:{if(!b){break a}d=N(b,12);if(!d){break a}c=H[33808];e=c+12|0;e=(i=e,j=d,k=Ra[H[H[c>>2]+20>>2]](c)|0?40582:55639,l=13582,m=553,h=H[H[e>>2]+8>>2],Ra[h](i|0,j|0,k|0,l|0,m|0)|0)}c=H[a+4>>2];if((c|0)>0){f=N(c,12)+e|0;d=H[a>>2];c=e;while(1){g=H[d+4>>2];H[c>>2]=H[d>>2];H[c+4>>2]=g;H[c+8>>2]=H[d+8>>2];d=d+12|0;c=c+12|0;if(f>>>0>c>>>0){continue}break}}b:{if(H[a+8>>2]<0){break b}c=H[a>>2];if(!c){break b}d=H[33808]+12|0;Ra[H[H[d>>2]+12>>2]](d,c)}H[a+8>>2]=b;H[a>>2]=e}function FQ(a,b){var c=0,d=0,e=0,f=0,g=0;f=H[b>>2];e=52685;a:{b:{c:{g=a+68|0;switch(H[g>>2]-5|0){case 1:break b;case 0:break c;default:break a}}e=J[a+122>>1];c=J[a+120>>1];d=H[a+116>>2];break a}e=J[a+102>>1];c=J[a+100>>1];d=H[a+96>>2]}hU(g,b);if(f-5>>>0<=1){b=((f|0)==5?44:24)+a|0;if(c){G[b+78>>1]=e;G[b+76>>1]=c;H[b+72>>2]=d;return}c=H[33808]+12|0;c=Ra[H[H[c>>2]+8>>2]](c,2,20591,15033,109)|0;G[b+76>>1]=1;H[b+72>>2]=c;G[c>>1]=J[a+66>>1];F[a+65|0]=1;return}if(!(!d|(!c|!I[a+65|0]))){a=H[33808]+12|0;Ra[H[H[a>>2]+12>>2]](a,d)}}function vn(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=O(0),f=O(0);di(a,0,b,c);c=1;c=L[b>>2]!=O(0)|L[b+4>>2]!=O(0)?c:L[b+8>>2]!=O(0);e=L[a+308>>2];b=H[H[((J[a+4>>1]<<2)+73232|0)+72>>2]+a>>2];if(b){b=b-16|0}else{b=0}f=L[b+5148>>2];b=e>2]!=0?1:b){c=a+48|0;e=b?f:e;a:{b:{switch((H[a+52>>2]>>>30|0)-2|0){case 0:b=H[c>>2];if(I[b+4785|0]){break a}default:L[a+308>>2]=e;H[a+312>>2]=0;WF(a- -64|0,e,1);return;case 1:break b}}b=H[c>>2]}L[a+308>>2]=e;H[a+312>>2]=0;$t(b,c);H[a+316>>2]=H[a+316>>2]&-117440513|83886080}}function tn(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=O(0),f=O(0);di(a,b,0,c);c=1;c=L[b>>2]!=O(0)|L[b+4>>2]!=O(0)?c:L[b+8>>2]!=O(0);e=L[a+308>>2];b=H[H[((J[a+4>>1]<<2)+73232|0)+72>>2]+a>>2];if(b){b=b-16|0}else{b=0}f=L[b+5148>>2];b=e>2]!=0?1:b){c=a+48|0;e=b?f:e;a:{b:{switch((H[a+52>>2]>>>30|0)-2|0){case 0:b=H[c>>2];if(I[b+4785|0]){break a}default:L[a+308>>2]=e;H[a+312>>2]=0;WF(a- -64|0,e,1);return;case 1:break b}}b=H[c>>2]}L[a+308>>2]=e;H[a+312>>2]=0;$t(b,c);H[a+316>>2]=H[a+316>>2]&-117440513|83886080}}function QJ(a,b,c){var d=0,e=0,f=0,g=0;d=H[b>>2];b=d>>>3|0;a:{if(d&4){H[H[a+64>>2]+(b<<2)>>2]=-1;H[a+88>>2]=H[a+88>>2]+1;d=H[a+40>>2];g=d+1|0;b=H[a+44>>2];b:{if(g>>>0>b>>>0){b=b<<1;e=g>>>0>1024?g:1024;b=b>>>0>e>>>0?b:e;H[a+44>>2]=b;e=H[a+36>>2];b=b<<2;if(b){f=H[33808]+12|0;b=Ra[H[H[f>>2]+8>>2]](f,b,20591,10647,890)|0}else{b=0}if(d){R6(b,e,d<<2)}if(!e){break b}f=H[33808]+12|0;Ra[H[H[f>>2]+12>>2]](f,e);break b}b=H[a+36>>2]}H[a+40>>2]=g;H[a+36>>2]=b;a=(d<<2)+b|0;break a}a=H[a+36>>2]+(b<<2)|0;c=H[a>>2]}H[a>>2]=c|-2147483648}function Po(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;if(H[(I[a+5580|0]&4?5564:2392)+a>>2]&512){Ra[H[H[a>>2]+400>>2]](a,9281,195)}if(H[a+4656>>2]){o5(H[33808],8,9281,203,56374,0);b=H[a+4656>>2];if((b|0)==1){Ra[H[H[a>>2]+216>>2]](a,1)|0;b=H[a+4656>>2]}if((b|0)==2){Ra[H[H[a>>2]+204>>2]](a,0)}Ra[H[H[a>>2]+220>>2]](a,1,0)|0}b=H[33772];d=H[b+8>>2];a:{if(!d){break a}e=H[b+4>>2];while(1){f=(c<<2)+e|0;if(H[f>>2]!=(a|0)){c=c+1|0;if((d|0)!=(c|0)){continue}break a}break}c=b;b=d-1|0;H[c+8>>2]=b;H[f>>2]=H[(b<<2)+e>>2];Ra[H[H[a>>2]+4>>2]](a)}}function HI(a,b,c,d){var e=0,f=0,g=0,h=0,i=0;h=H[a+48>>2];f=h+15&-16;H[d>>2]=f;e=H[a+52>>2];g=N(b,40)+((((c&15)!=0)<<4)+c&-16)|0;a:{b:{if(e>>>0>=g+f>>>0){b=H[a+44>>2];c=f;break b}b=0;if(I[a- -64|0]){break a}c=e;while(1){c=c<<1;H[a+52>>2]=c;if(H[d>>2]+g>>>0>c>>>0){continue}break}if(c){b=H[33808]+12|0;b=Ra[H[H[b>>2]+8>>2]](b,c,20591,14814,169)|0}else{b=0}i=R6(b,H[a+44>>2],e);e=H[a+44>>2];if(e){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,e)}H[a+44>>2]=i;c=H[d>>2]}H[a+60>>2]=c;H[a+48>>2]=H[a+48>>2]+((g-h|0)+f|0);b=b+c|0}return b}function Fv(a,b){if((H[a+40>>2]&2147483647)>>>0>>0){Gv(a+32|0,b)}H[a+36>>2]=b;if((H[a+52>>2]&2147483647)>>>0>>0){Gv(a+44|0,b)}H[a+48>>2]=b;if((H[a- -64>>2]&2147483647)>>>0>>0){Gv(a+56|0,b)}H[a+60>>2]=b;if((H[a+76>>2]&2147483647)>>>0>>0){Gv(a+68|0,b)}H[a+72>>2]=b;if((H[a+88>>2]&2147483647)>>>0>>0){Gv(a+80|0,b)}H[a+84>>2]=b;if((H[a+100>>2]&2147483647)>>>0>>0){Gv(a+92|0,b)}H[a+96>>2]=b;b=b<<2;S6(H[a+32>>2],0,b);S6(H[a+44>>2],0,b);S6(H[a+56>>2],0,b);S6(H[a+92>>2],0,b);S6(H[a+68>>2],0,b);S6(H[a+80>>2],0,b)}function Eh(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;c=J[a+24>>1];a:{if(!c){break a}f=1;e=a+20|0;d=(c|0)==1;Ra[H[H[b>>2]+8>>2]](b,H[(d?e:H[e>>2])>>2]);if(d){break a}d=c-1|0;h=d&1;if((c|0)!=2){d=d&-2;c=0;while(1){g=f<<2;Ra[H[H[b>>2]+8>>2]](b,H[g+(J[a+24>>1]==1?e:H[a+20>>2])>>2]);Ra[H[H[b>>2]+8>>2]](b,H[((J[a+24>>1]==1?e:H[a+20>>2])+g|0)+4>>2]);f=f+2|0;c=c+2|0;if((d|0)!=(c|0)){continue}break}}if(!h){break a}Ra[H[H[b>>2]+8>>2]](b,H[(f<<2)+(J[a+24>>1]==1?e:H[a+20>>2])>>2])}a=H[a+324>>2];if(a){Ra[H[H[b>>2]+8>>2]](b,a)}}function bX(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=O(0),f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0);b=H[b+4>>2];i=L[b+72>>2];e=L[c+8>>2];j=L[b- -64>>2];f=L[c>>2];k=L[b+68>>2];g=L[c+4>>2];h=O(O(i*e)+O(O(j*f)+O(k*g)));l=L[b+88>>2];m=L[b+80>>2];n=L[b+84>>2];o=O(O(l*e)+O(O(m*f)+O(n*g)));c=h>o;p=h;h=L[b+56>>2];q=O(h*e);e=L[b+48>>2];r=O(e*f);f=L[b+52>>2];g=O(q+O(r+O(f*g)));b=!(po);H[d>>2]=b?c?1:2:0;H[a+12>>2]=0;L[a+8>>2]=b?c?i:l:h;L[a+4>>2]=b?c?k:n:f;L[a>>2]=b?c?j:m:e}function BO(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;j=H[H[a+1140>>2]+4>>2];d=H[a+1152>>2];i=H[d+40>>2];if(i){k=H[d+36>>2];while(1){g=(h<<2)+k|0;e=H[g>>2];f=H[e+36>>2];a:{if((f|0)==-1){break a}f=f<<2;if(H[f+H[d+12>>2]>>2]!=-1){break a}e=H[e+4>>2];e=H[(I[H[e+44>>2]+9|0]-1>>>0<2?e:0)+44>>2];g=Ra[H[H[c>>2]>>2]](c,H[((I[e+9|0]<<2)+135180|0)+40>>2]+e|0,H[33798]+H[H[g>>2]+28>>2]|0)|0;H[f+H[d+12>>2]>>2]=g}h=h+1|0;if((i|0)!=(h|0)){continue}break}}H[d+40>>2]=0;Ra[H[H[b>>2]>>2]](b,H[d+12>>2],H[d+24>>2],j,H[d+4>>2],a+2516|0)}function bH(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;e=1;a:{if(I[a+36|0]){break a}g=H[b+180>>2];if(H[g+(H[a+40>>2]<<2)>>2]==-1){break a}f=H[a+44>>2];if(H[(f<<2)+g>>2]==-1){break a}d=H[a+48>>2];if(!H[d+8>>2]){break a}if(H[d+20>>2]==-1){e=0;d=f>>>5|0;if(d>>>0>=(H[b+164>>2]&2147483647)>>>0|!(H[H[b+160>>2]+(d<<2)>>2]>>>f&1)){break a}}e=b+196|0;f=b+208|0;d=H[b+400>>2];h=H[H[b+192>>2]+4>>2];i=H[H[b+276>>2]+4>>2];b:{if(c){cH(a,d,i,h,g,f,e,c+4|0,c+28|0);break b}cH(a,d,i,h,g,f,e,b+304|0,b+328|0)}e=0}return e|0}function jV(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=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0);if(c){a=H[a+48>>2];while(1){f=N(I[b+g|0],12)+d|0;h=L[f+8>>2];i=L[f>>2];j=L[f+4>>2];k=L[a+80>>2];l=L[a+48>>2];m=L[a+64>>2];n=L[a+84>>2];o=L[a+52>>2];p=L[a+68>>2];q=L[a+88>>2];r=L[a+56>>2];s=L[a+72>>2];f=(g<<4)+e|0;H[f+12>>2]=0;L[f+8>>2]=O(q*h)+O(O(r*i)+O(j*s));L[f+4>>2]=O(n*h)+O(O(o*i)+O(j*p));L[f>>2]=O(k*h)+O(O(l*i)+O(j*m));g=g+1|0;if((g|0)!=(c|0)){continue}break}}}function VN(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0;i=Oa-16|0;Oa=i;H[i+12>>2]=b;j=I[b+20|0];d=N(j,12)+a|0;g=H[d+56>>2];H[b+8>>2]=g;e=d+52|0;f=g;h=H[d+60>>2]&2147483647;if(!h){WN(e,64);h=H[d+60>>2]&2147483647;f=H[d+56>>2]}a:{if(f>>>0>=h>>>0){XN(e,i+12|0);break a}H[H[e>>2]+(f<<2)>>2]=b;H[d+56>>2]=f+1}if(c){c=(j<<2)+a|0;b=H[c+88>>2];if(g>>>0>b>>>0){f=N(j,12)+a|0;d=H[f+52>>2];e=d+(g<<2)|0;a=H[e>>2];h=e;e=d;d=b<<2;e=H[e+d>>2];H[h>>2]=e;H[d+H[f+52>>2]>>2]=a;H[a+8>>2]=b;H[e+8>>2]=g;b=H[c+88>>2]}H[c+88>>2]=b+1}Oa=i+16|0}function Vu(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:{if(!b){break a}c=b<<4;if(!c){break a}d=H[33808];e=d+12|0;d=(i=e,j=c,k=Ra[H[H[d>>2]+20>>2]](d)|0?25838:55639,l=13582,m=553,h=H[H[e>>2]+8>>2],Ra[h](i|0,j|0,k|0,l|0,m|0)|0)}e=H[a>>2];c=H[a+4>>2];if((c|0)>0){g=(c<<4)+d|0;f=e;c=d;while(1){L[c>>2]=L[f>>2];L[c+4>>2]=L[f+4>>2];L[c+8>>2]=L[f+8>>2];L[c+12>>2]=L[f+12>>2];f=f+16|0;c=c+16|0;if(g>>>0>c>>>0){continue}break}}if(!(!e|H[a+8>>2]<0)){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,e)}H[a+8>>2]=b;H[a>>2]=d}function DS(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;h=Oa-16|0;Oa=h;Ra[H[H[c>>2]+156>>2]](h+8|0,c);a:{if(I[h+8|0]&4){break a}g=H[a+4>>2];b:{if(!H[g+36>>2]){break b}f=(c<<15^-1)+c|0;f=N(f>>>10^f,9);f=f>>>6^f;f=(f<<11^-1)+f|0;f=H[H[g+12>>2]+((H[g+20>>2]-1&(f>>>16^f))<<2)>>2];if((f|0)==-1){break b}j=H[g+8>>2];g=H[g+4>>2];while(1){f=f<<2;if(H[f+g>>2]==(c|0)){break a}f=H[f+j>>2];if((f|0)!=-1){continue}break}}a=H[a+8>>2];if(!a){i=2;break a}i=Ra[H[H[a>>2]>>2]](a,b,c,d,e)|0}Oa=h+16|0;return i|0}function JR(a,b){a=a|0;b=O(b);var c=0,d=0,e=0,f=O(0),g=O(0),h=O(0);c=Oa-32|0;Oa=c;f=O(Ra[H[H[a>>2]+116>>2]](a));Ra[H[H[a>>2]+120>>2]](a,b)|0;d=Ra[H[H[a>>2]+16>>2]](a)|0;e=H[d+20>>2];H[c+24>>2]=H[d+16>>2];H[c+28>>2]=e;e=H[d+12>>2];H[c+16>>2]=H[d+8>>2];H[c+20>>2]=e;e=H[d+4>>2];H[c+8>>2]=H[d>>2];H[c+12>>2]=e;g=L[a+36>>2];h=L[a+44>>2];b=O(b-f);M[c+16>>3]=M[c+16>>3]+ +O(O(b*L[a+40>>2])*O(.5));M[c+24>>3]=M[c+24>>3]+ +O(O(b*h)*O(.5));M[c+8>>3]=M[c+8>>3]+ +O(O(b*g)*O(.5));Ra[H[H[a>>2]+12>>2]](a,c+8|0)|0;Oa=c+32|0}function gK(a){a=a|0;var b=0,c=0,d=0,e=0;c=Oa-16|0;Oa=c;b=H[a+4>>2];d=H[b+332>>2];if(d){e=H[33808]+12|0;Ra[H[H[e>>2]+12>>2]](e,d)}H[b+332>>2]=0;H[b+336>>2]=0;a:{if(K[a+12>>2]>=1025){H[c+8>>2]=1073741823;H[c+12>>2]=1073741823;b=a+8|0;hK(b,c+8|0);aK(b,H[a+12>>2]);if(H[a+16>>2]&2147482624){break a}aK(b,1024);break a}H[a+12>>2]=0}b:{if(K[a+24>>2]>=1025){H[c+8>>2]=1073741823;H[c+12>>2]=1073741823;b=a+20|0;hK(b,c+8|0);aK(b,H[a+24>>2]);if(H[a+28>>2]&2147482624){break b}aK(b,1024);break b}H[a+24>>2]=0}Oa=c+16|0}function iv(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;f=Oa-32|0;Oa=f;Ra[H[H[a>>2]+156>>2]](f,a,b);b=H[f+4>>2];H[d>>2]=H[f>>2];H[d+4>>2]=b;b=H[f+12>>2];H[d+8>>2]=H[f+8>>2];H[d+12>>2]=b;b=H[f+20>>2];H[d+16>>2]=H[f+16>>2];H[d+20>>2]=b;b=H[f+28>>2];H[d+24>>2]=H[f+24>>2];H[d+28>>2]=b;Ra[H[H[a>>2]+156>>2]](f,a,c);a=H[f+4>>2];H[e>>2]=H[f>>2];H[e+4>>2]=a;a=H[f+12>>2];H[e+8>>2]=H[f+8>>2];H[e+12>>2]=a;a=H[f+20>>2];H[e+16>>2]=H[f+16>>2];H[e+20>>2]=a;a=H[f+28>>2];H[e+24>>2]=H[f+24>>2];H[e+28>>2]=a;Oa=f+32|0}function u0(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=O(0),f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0);d=H[b+8>>2];h=L[d+52>>2];i=L[d+20>>2];j=L[d+36>>2];k=L[d+56>>2];b=H[H[b+4>>2]+152>>2]+N(c,12)|0;e=L[b>>2];l=L[d+24>>2];f=L[b+4>>2];m=L[d+40>>2];g=L[b+8>>2];n=L[d+48>>2];o=L[d+32>>2];p=L[d>>2];q=L[d+16>>2];r=L[d+4>>2];s=L[d+8>>2];H[a+12>>2]=0;L[a+8>>2]=k+O(O(m*g)+O(O(s*e)+O(f*l)));L[a+4>>2]=h+O(O(j*g)+O(O(r*e)+O(f*i)));L[a>>2]=n+O(O(o*g)+O(O(p*e)+O(f*q)))}function iU(a){a=a|0;var b=0,c=0;H[a>>2]=125444;b=H[a+176>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=H[a+168>>2];if(!b){break a}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+128>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+88>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+48>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+8>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+4>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}return a|0}function zt(a,b,c){var d=0,e=0;d=Oa-272|0;Oa=d;e=H[b+4>>2];a:{if((e&-1073741824)!=-2147483648){break a}F[d+256|0]=1;H[d+264>>2]=0;H[d+268>>2]=64;a=a+16|0;b=H[((e>>>22&60)+76348|0)+12>>2]+b|0;H[d+260>>2]=d;b:{if(c){MO(a,b,d,1);break b}KO(a,b,d,1)}if(H[d+264>>2]){b=0;a=H[d+260>>2];while(1){et(H[a+(b<<2)>>2]-16|0);b=b+1|0;if(b>>>0>2]){continue}break}}a=H[d+268>>2];if((a|0)<0|!(a&2147483647)){break a}a=H[d+260>>2];if((a|0)==(d|0)|!a){break a}b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,a)}Oa=d+272|0}function oP(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;b=H[a+32>>2];if(b){while(1){c=H[a+28>>2];if(!(d+16>>>0>=b>>>0|d+4>>>0>=b>>>0)){c=H[a+28>>2]}c=H[H[(d<<2)+c>>2]>>2];b=J[c+148>>1];if(b&4){e=H[c+44>>2];G[c+148>>1]=b&63999;b=H[e+176>>2];b=I[b+31|0]==1?b:0;e=H[b>>2];f=H[b+4>>2];g=H[b+8>>2];h=H[b+12>>2];i=H[b+20>>2];j=H[b+16>>2];c=H[c+44>>2];L[c+40>>2]=L[b+24>>2];H[c+32>>2]=j;H[c+36>>2]=i;H[c+24>>2]=g;H[c+28>>2]=h;H[c+16>>2]=e;H[c+20>>2]=f}b=H[a+32>>2];d=d+1|0;if(b>>>0>d>>>0){continue}break}}}function JY(a,b,c,d,e,f,g,h,i){var j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0);if(e){H[a>>2]=f;H[b>>2]=g;return}H[b>>2]=d;H[a>>2]=c;if(h){e=0;while(1){F[H[b>>2]+e|0]=e;m=L[i+24>>2];n=L[i>>2];o=L[i+12>>2];p=L[i+28>>2];q=L[i+4>>2];r=L[i+16>>2];c=H[a>>2]+N(e,12)|0;d=N(I[e+g|0],12)+f|0;j=L[d>>2];k=L[d+4>>2];l=L[d+8>>2];L[c+8>>2]=O(O(j*L[i+8>>2])+O(k*L[i+20>>2]))+O(l*L[i+32>>2]);L[c+4>>2]=O(O(j*q)+O(k*r))+O(l*p);L[c>>2]=O(O(j*n)+O(k*o))+O(l*m);e=e+1|0;if((h|0)!=(e|0)){continue}break}}}function dO(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;d=Oa-32|0;Oa=d;a:{if(!H[a+2344>>2]){break a}f=1;f=b?f:H[a+1196>>2]==H[H[a+2368>>2]+36>>2]?1:17;b=H[a+2168>>2];g=H[b+8>>2];if(!g){break a}h=H[b+4>>2];b=0;while(1){i=b+1|0;c=H[(b<<2)+h>>2];b=H[c+16>>2];if(!(I[b+10|0]&2)){G[d+22>>1]=0;e=d+8|0;jO(a,e,c,b,f);c=H[a+2344>>2];Ra[H[H[c>>2]+12>>2]](c,e,H[d+24>>2],H[d+28>>2]);G[b+4>>1]=J[b+6>>1];c=b;e=J[b+10>>1]&31;b=J[b+8>>1];G[c+10>>1]=e|(b>>>4|0)+((b&15)!=0)<<5}b=i;if((g|0)!=(b|0)){continue}break}}Oa=d+32|0}function PX(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=O(0),f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0);d=H[b+8>>2];h=L[d+52>>2];i=L[d+20>>2];j=L[d+36>>2];k=L[d+56>>2];b=H[b+4>>2]+(1-c<<4)|0;e=L[b+48>>2];l=L[d+24>>2];f=L[b+52>>2];m=L[d+40>>2];g=L[b+56>>2];n=L[d+48>>2];o=L[d+32>>2];p=L[d>>2];q=L[d+16>>2];r=L[d+4>>2];s=L[d+8>>2];H[a+12>>2]=0;L[a+8>>2]=k+O(O(m*g)+O(O(s*e)+O(f*l)));L[a+4>>2]=h+O(O(j*g)+O(O(r*e)+O(f*i)));L[a>>2]=n+O(O(o*g)+O(O(p*e)+O(f*q)))}function xO(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:{if(!b){break a}d=b<<3;if(!d){break a}c=H[33808];e=c+12|0;e=(i=e,j=d,k=Ra[H[H[c>>2]+20>>2]](c)|0?25254:55639,l=13582,m=553,h=H[H[e>>2]+8>>2],Ra[h](i|0,j|0,k|0,l|0,m|0)|0)}c=H[a+4>>2];if((c|0)>0){f=(c<<3)+e|0;d=H[a>>2];c=e;while(1){g=H[d+4>>2];H[c>>2]=H[d>>2];H[c+4>>2]=g;d=d+8|0;c=c+8|0;if(f>>>0>c>>>0){continue}break}}b:{if(H[a+8>>2]<0){break b}c=H[a>>2];if(!c){break b}d=H[33808]+12|0;Ra[H[H[d>>2]+12>>2]](d,c)}H[a+8>>2]=b;H[a>>2]=e}function iy(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:{if(!b){break a}d=b<<3;if(!d){break a}c=H[33808];e=c+12|0;e=(i=e,j=d,k=Ra[H[H[c>>2]+20>>2]](c)|0?30668:55639,l=13582,m=553,h=H[H[e>>2]+8>>2],Ra[h](i|0,j|0,k|0,l|0,m|0)|0)}c=H[a+4>>2];if((c|0)>0){f=(c<<3)+e|0;d=H[a>>2];c=e;while(1){g=H[d+4>>2];H[c>>2]=H[d>>2];H[c+4>>2]=g;d=d+8|0;c=c+8|0;if(f>>>0>c>>>0){continue}break}}b:{if(H[a+8>>2]<0){break b}c=H[a>>2];if(!c){break b}d=H[33808]+12|0;Ra[H[H[d>>2]+12>>2]](d,c)}H[a+8>>2]=b;H[a>>2]=e}function dP(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;c=H[a+8>>2]&2147483647;f=c?c<<1:1;a:{if(!f){break a}c=H[33808]+12|0;c=Ra[H[H[c>>2]+8>>2]](c,(f<<2)+67|0,20591,13582,553)|0;if(!c){break a}d=c+67&-64;H[d-4>>2]=d-c}e=H[a+4>>2];h=(e<<2)+d|0;if((e|0)>0){g=H[a>>2];c=d;while(1){H[c>>2]=H[g>>2];g=g+4|0;c=c+4|0;if(h>>>0>c>>>0){continue}break}}H[h>>2]=H[b>>2];b:{if(H[a+8>>2]<0){break b}c=H[a>>2];if(!c){break b}b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,c-H[c-4>>2]|0);e=H[a+4>>2]}H[a+8>>2]=f;H[a>>2]=d;H[a+4>>2]=e+1}function aK(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:{if(!b){break a}d=b<<3;if(!d){break a}c=H[33808];e=c+12|0;e=(i=e,j=d,k=Ra[H[H[c>>2]+20>>2]](c)|0?27804:55639,l=13582,m=553,h=H[H[e>>2]+8>>2],Ra[h](i|0,j|0,k|0,l|0,m|0)|0)}c=H[a+4>>2];if((c|0)>0){f=(c<<3)+e|0;d=H[a>>2];c=e;while(1){g=H[d+4>>2];H[c>>2]=H[d>>2];H[c+4>>2]=g;d=d+8|0;c=c+8|0;if(f>>>0>c>>>0){continue}break}}b:{if(H[a+8>>2]<0){break b}c=H[a>>2];if(!c){break b}d=H[33808]+12|0;Ra[H[H[d>>2]+12>>2]](d,c)}H[a+8>>2]=b;H[a>>2]=e}function TM(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:{if(!b){break a}d=b<<3;if(!d){break a}c=H[33808];e=c+12|0;e=(i=e,j=d,k=Ra[H[H[c>>2]+20>>2]](c)|0?38574:55639,l=13582,m=553,h=H[H[e>>2]+8>>2],Ra[h](i|0,j|0,k|0,l|0,m|0)|0)}c=H[a+4>>2];if((c|0)>0){f=(c<<3)+e|0;d=H[a>>2];c=e;while(1){g=H[d+4>>2];H[c>>2]=H[d>>2];H[c+4>>2]=g;d=d+8|0;c=c+8|0;if(f>>>0>c>>>0){continue}break}}b:{if(H[a+8>>2]<0){break b}c=H[a>>2];if(!c){break b}d=H[33808]+12|0;Ra[H[H[d>>2]+12>>2]](d,c)}H[a+8>>2]=b;H[a>>2]=e}function Zo(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;a:{b:{c:{d=J[b+4>>1];switch(d-5|0){case 0:break b;case 1:break c;default:break a}}if(!H[b+40>>2]){break a}o5(H[33808],8,9281,344,62580,0);return}if(!H[b+40>>2]){break a}o5(H[33808],8,9281,352,62580,0);return}d:{e:{switch(H[(H[((d<<2)+73232|0)+72>>2]+b|0)+4>>2]>>>30|0){case 3:d=H[H[((J[b+4>>1]<<2)+73232|0)+72>>2]+b>>2];if(d){d=d-16|0}else{d=0}if((d|0)!=(a|0)){break d}break;case 0:break e;default:break d}}_o(a,b,c);return}o5(H[33808],8,9281,360,65015,0)}function U5(a){a=a|0;var b=0,c=0,d=0;if(!a){if(H[33494]){b=U5(H[33494])}if(H[33456]){b=U5(H[33456])|b}a=H[33989];if(a){while(1){if(H[a+20>>2]!=H[a+28>>2]){b=U5(a)|b}a=H[a+56>>2];if(a){continue}break}}return b|0}d=H[a+76>>2]>=0;a:{b:{if(H[a+20>>2]==H[a+28>>2]){break b}Ra[H[a+36>>2]](a,0,0)|0;if(H[a+20>>2]){break b}b=-1;break a}b=H[a+8>>2];c=H[a+4>>2];if((b|0)!=(c|0)){b=c-b|0;Ra[H[a+40>>2]](a,b,b>>31,1)|0}b=0;H[a+28>>2]=0;H[a+16>>2]=0;H[a+20>>2]=0;H[a+4>>2]=0;H[a+8>>2]=0;if(!d){break a}}return b|0}function SX(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=O(0),f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0),s=O(0);d=H[b+8>>2];h=L[d+52>>2];i=L[d+20>>2];j=L[d+36>>2];k=L[d+56>>2];b=H[b+4>>2]+(c<<4)|0;e=L[b+48>>2];l=L[d+24>>2];f=L[b+52>>2];m=L[d+40>>2];g=L[b+56>>2];n=L[d+48>>2];o=L[d+32>>2];p=L[d>>2];q=L[d+16>>2];r=L[d+4>>2];s=L[d+8>>2];H[a+12>>2]=0;L[a+8>>2]=k+O(O(m*g)+O(O(s*e)+O(f*l)));L[a+4>>2]=h+O(O(j*g)+O(O(r*e)+O(f*i)));L[a>>2]=n+O(O(o*g)+O(O(p*e)+O(f*q)))}function Vf(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;if(H[a+36>>2]){i=a+8|0;while(1){a:{b:{e=g<<2;f=H[e+H[a+40>>2]>>2];if((Ra[H[H[f>>2]+24>>2]](f)|0)!=2){break b}f=H[a+40>>2];h=f+e|0;e=H[h>>2];if(H[e+320>>2]!=(b|0)){break b}d=H[a+36>>2]-1|0;H[a+36>>2]=d;H[h>>2]=H[f+(d<<2)>>2];d=(J[e+4>>1]<<2)+73232|0;f=H[d+72>>2];og(e+H[d>>2]|0,0);vt(i,e+f|0,c);d=1;break a}g=g+1|0}if(K[a+36>>2]>g>>>0){continue}break}}j=Ra[H[H[b>>2]+100>>2]](b)|0,k=0,H[j+96>>2]=k;if(!d){o5(H[33808],2,8670,310,17516,0)}return d}function Ib(){var a=0;a=o6(120);H[a+72>>2]=1069547520;H[a+64>>2]=1092616192;H[a+68>>2]=1061997773;H[a+56>>2]=1036831949;H[a+60>>2]=1056964608;H[a+32>>2]=0;H[a+36>>2]=1065353216;H[a+96>>2]=0;H[a+100>>2]=0;H[a+48>>2]=0;H[a+52>>2]=0;H[a+8>>2]=0;H[a+12>>2]=0;H[a+76>>2]=0;H[a+80>>2]=0;F[a+92|0]=1;H[a+112>>2]=1056964608;H[a+104>>2]=1065353216;H[a+108>>2]=1056964608;H[a>>2]=98396;H[a+40>>2]=0;H[a+44>>2]=1060437492;H[a+16>>2]=0;H[a+20>>2]=0;H[a+24>>2]=0;H[a+28>>2]=0;H[a+84>>2]=0;H[a+88>>2]=0;return a|0}function yt(a){var b=0,c=0,d=0,e=0,f=0,g=0;c=Oa-16|0;Oa=c;b=H[33808];d=Ra[H[H[b>>2]+20>>2]](b)|0?33606:55639;f=a,g=Ra[H[H[b+12>>2]+8>>2]](b+12|0,28,d,13721,113)|0,H[f>>2]=g;b=Oa-16|0;Oa=b;Oa=b+16|0;H[a+20>>2]=0;H[a+12>>2]=0;H[a+16>>2]=0;H[a+4>>2]=0;H[a+8>>2]=0;H[a+24>>2]=16384;b=H[33808];d=Ra[H[H[b+12>>2]+8>>2]](b+12|0,16384,20591,15453,57)|0;e=H[a+12>>2];b=H[a+8>>2];H[c+12>>2]=d;a:{if(b>>>0>=(e&2147483647)>>>0){Xr(a+4|0,c+12|0);break a}H[H[a+4>>2]+(b<<2)>>2]=d;H[a+8>>2]=b+1}Oa=c+16|0;return a}function YA(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;if(H[c>>2]){h=H[a+36>>2];i=H[a+8>>2];j=H[c+4>>2];g=H[b>>2];d=g;while(1){d=N(d,28)+i|0;e=N(f,28)+j|0;L[d>>2]=L[e>>2];L[d+4>>2]=L[e+4>>2];L[d+8>>2]=L[e+8>>2];L[d+12>>2]=L[e+12>>2];L[d+16>>2]=L[e+16>>2];L[d+20>>2]=L[e+20>>2];e=H[e+24>>2];a:{if(e&1){H[d+24>>2]=e&30|e+(H[a+4>>2]<<5)&-32|1;break a}k=d;d=(e>>>1|0)+g|0;H[k+24>>2]=d<<1;d=(d<<2)+h|0;H[d>>2]=H[b>>2];H[d+4>>2]=H[b>>2]}d=H[b>>2]+1|0;H[b>>2]=d;f=f+1|0;if(f>>>0>2]){continue}break}}}function is(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=d|0;e=O(e);f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=O(k);var l=0,m=0;l=Oa-32|0;Oa=l;m=J[g>>1];if((m&768)==768){o5(H[33808],4,6075,130,11069,0);m=J[g>>1]&-257;G[g>>1]=m}if((m&528)==528){o5(H[33808],4,6075,136,19862,0);m=J[g>>1]&-17;G[g>>1]=m}if(!(!(m&256)|!(k>O(0)))){o5(H[33808],4,6075,144,11198,0);m=J[g>>1];k=O(0)}G[l>>1]=m;L[l+16>>2]=e;H[l+8>>2]=0;L[l+28>>2]=k;H[l+24>>2]=c;H[l+20>>2]=b;H[l+12>>2]=d;a=js(a,l+8|0,f,l,j,h,i,0);Oa=l+32|0;return a|0}function UZ(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=c&1;e=H[b+60>>2];c=c>>>1|0;a:{if(F[(e+(c<<2)|0)+2|0]<0){if(!d){d=G[(c<<2)+e>>1];b=(c+H[b+44>>2]<<2)+e|0;f=G[b+4>>1];b=G[b>>1];c=b;break a}d=c+1|0;b=G[(d+H[b+44>>2]<<2)+e>>1];c=G[(c<<2)+e>>1];d=G[(d<<2)+e>>1];f=d;break a}if(d){f=c+1|0;d=G[(f<<2)+e>>1];b=H[b+44>>2];c=G[(b+c<<2)+e>>1];b=G[(b+f<<2)+e>>1];f=b;break a}d=(c<<2)+e|0;f=G[d+4>>1];b=G[(c+H[b+44>>2]<<2)+e>>1];d=G[d>>1];c=d}H[a+4>>2]=-1082130432;L[a+8>>2]=-O(c-f|0);L[a>>2]=-O(d-b|0)}function PG(a,b){var c=0,d=0,e=0,f=0,g=0;a:{if(!b){break a}c=b<<5;if(!c){break a}e=H[a>>2];f=Ra[H[H[e>>2]+8>>2]](e,c,13582,553)|0}e=H[a+4>>2];c=H[a+8>>2];if((c|0)>0){g=(c<<5)+f|0;d=e;c=f;while(1){L[c>>2]=L[d>>2];L[c+4>>2]=L[d+4>>2];L[c+8>>2]=L[d+8>>2];H[c+12>>2]=H[d+12>>2];L[c+16>>2]=L[d+16>>2];L[c+20>>2]=L[d+20>>2];L[c+24>>2]=L[d+24>>2];H[c+28>>2]=H[d+28>>2];d=d+32|0;c=c+32|0;if(g>>>0>c>>>0){continue}break}}if(!(!e|H[a+12>>2]<0)){c=H[a>>2];Ra[H[H[c>>2]+12>>2]](c,e)}H[a+12>>2]=b;H[a+4>>2]=f}function zM(a,b,c,d,e){var f=0,g=0,h=0;h=Oa-16|0;Oa=h;f=H[c+4624>>2];F[b+12|0]=f;g=I[b+14|0]&-4|(f?2:1);a:{if(!f){G[b+12>>1]=0;F[b+14|0]=g;break a}H[c+7148>>2]=H[c+7148>>2]+1;F[b+14|0]=g;g=f;f=f<<2;Tx(c+528|0,g,c,b+12|0,b,b+4|0,h+14|0,b+8|0,a&1?f:I[c+7138|0]?f:e?f:(a&256)>>>8|0?f:0,H[c+7188>>2],(a&128)>>>7|0,0,d,b+13|0,0,0,0,I[c+7139|0],H[c+7172>>2],H[c+7176>>2],H[c+7180>>2],e);if(I[b+12|0]|!H[c+4624>>2]){break a}G[b+12>>1]=0;F[b+14|0]=I[b+14|0]&252|1;H[c+7148>>2]=H[c+7148>>2]-1}Oa=h+16|0}function r0(a,b,c){a=a|0;b=b|0;c=c|0;var d=O(0),e=O(0),f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0);b=H[b+48>>2];e=L[b+72>>2];i=L[b- -64>>2];j=L[b+68>>2];k=L[b+56>>2];l=L[b+52>>2];f=L[b+88>>2];m=L[b+80>>2];n=L[b+84>>2];o=L[b+48>>2];d=L[c+8>>2];g=L[c>>2];h=L[c+4>>2];H[a+12>>2]=0;p=e;q=f;e=O(O(e*d)+O(O(i*g)+O(j*h)));f=O(O(f*d)+O(O(m*g)+O(n*h)));b=e>f;d=O(O(k*d)+O(O(o*g)+O(l*h)));c=!(d>e)|!(d>f);L[a+8>>2]=c?b?p:q:k;L[a+4>>2]=c?b?j:n:l;L[a>>2]=c?b?i:m:o}function oJ(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=Oa-16|0;Oa=d;f=H[a- -64>>2];e=H[a+72>>2];h=H[b+20>>2];H[d+12>>2]=-1;H[d+8>>2]=h;h=a+60|0;a:{if((H[a+68>>2]&2147483647)>>>0<=f>>>0){nJ(h,d+8|0);break a}i=H[d+12>>2];g=H[a+60>>2]+(f<<3)|0;H[g>>2]=H[d+8>>2];H[g+4>>2]=i;H[a+64>>2]=H[a+64>>2]+1}e=e+N(c,20)|0;c=e+16|0;g=H[e+16>>2];b:{if((g|0)==-1){H[e+16>>2]=f;c=e+12|0;break b}H[(H[h>>2]+(g<<3)|0)+4>>2]=f}H[c>>2]=f;a=H[a+72>>2]+N(H[b+20>>2],20)|0;H[a+4>>2]=H[a+4>>2]+1;Oa=d+16|0}function CF(a,b){var c=0,d=0;c=Oa-16|0;Oa=c;L[a+16>>2]=L[b>>2];L[a+20>>2]=L[b+4>>2];L[a+24>>2]=L[b+8>>2];L[a+28>>2]=L[b+12>>2];L[a+32>>2]=L[b+16>>2];L[a+36>>2]=L[b+20>>2];L[a+40>>2]=L[b+24>>2];a=H[a>>2];if(a){b=H[a+100>>2];L[a+64>>2]=L[b>>2];L[a+68>>2]=L[b+4>>2];L[a+72>>2]=L[b+8>>2];L[a+76>>2]=L[b+12>>2];L[a+80>>2]=L[b+16>>2];L[a+84>>2]=L[b+20>>2];L[a+88>>2]=L[b+24>>2];YI(a);b=H[H[a+40>>2]+1012>>2];d=I[H[a+44>>2]+9|0];H[c+8>>2]=H[a+144>>2];Ra[H[H[b>>2]+44>>2]](b,(d|0)==2,c+8|0)}Oa=c+16|0}function aX(a,b,c){a=a|0;b=b|0;c=c|0;var d=O(0),e=O(0),f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0);b=H[b+4>>2];e=L[b+72>>2];i=L[b- -64>>2];j=L[b+68>>2];k=L[b+56>>2];l=L[b+52>>2];f=L[b+88>>2];m=L[b+80>>2];n=L[b+84>>2];o=L[b+48>>2];d=L[c+8>>2];g=L[c>>2];h=L[c+4>>2];H[a+12>>2]=0;p=e;q=f;e=O(O(e*d)+O(O(i*g)+O(j*h)));f=O(O(f*d)+O(O(m*g)+O(n*h)));b=e>f;d=O(O(k*d)+O(O(o*g)+O(l*h)));c=!(d>e)|!(d>f);L[a+8>>2]=c?b?p:q:k;L[a+4>>2]=c?b?j:n:l;L[a>>2]=c?b?i:m:o}function vZ(a,b,c,d,e,f){var g=0,h=O(0),i=O(0),j=O(0),k=O(0),l=O(0);g=Oa+-64|0;Oa=g;h=L[b>>2];i=L[c>>2];k=L[b+4>>2];j=L[c+4>>2];l=L[b+8>>2];L[g+56>>2]=L[c+8>>2]+l;L[g+52>>2]=j+k;L[g+48>>2]=i+h;i=L[d>>2];j=L[d+4>>2];L[g+40>>2]=l+L[d+8>>2];L[g+36>>2]=k+j;L[g+32>>2]=h+i;qZ(g+8|0,a,b,g+48|0,g+32|0,g+28|0,g+24|0);if(e){L[e>>2]=L[g+28>>2]}if(f){L[f>>2]=L[g+24>>2]}Oa=g- -64|0;h=O(L[g+16>>2]-L[a+8>>2]);i=O(h*h);h=O(L[g+8>>2]-L[a>>2]);j=O(h*h);h=O(L[g+12>>2]-L[a+4>>2]);return O(i+O(j+O(h*h)))}function mB(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;c=H[a+16>>2];g=b<<2;f=H[c+g>>2];e=H[a>>2]-1|0;H[a>>2]=e;if((f|0)!=(e|0)){h=H[H[a+20>>2]+(e<<2)>>2];d=H[a+8>>2];c=d+N(f,24)|0;d=d+N(e,24)|0;L[c>>2]=L[d>>2];L[c+4>>2]=L[d+4>>2];L[c+8>>2]=L[d+8>>2];L[c+12>>2]=L[d+12>>2];L[c+16>>2]=L[d+16>>2];L[c+20>>2]=L[d+20>>2];c=H[a+12>>2];d=c+(f<<3)|0;c=c+(e<<3)|0;i=H[c+4>>2];H[d>>2]=H[c>>2];H[d+4>>2]=i;H[H[a+20>>2]+(f<<2)>>2]=h;c=H[a+16>>2];H[c+(h<<2)>>2]=f}H[c+g>>2]=H[a+24>>2];H[a+24>>2]=b;return e}function KP(a){a=a|0;var b=0,c=0;H[a>>2]=110940;b=H[a+96>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+88>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=H[a+80>>2];if((b|0)==(a+60|0)){F[a+76|0]=0;break a}if(!b){break a}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+56>>2];b:{if((b|0)<0|!(b&2147483647)){break b}b=H[a+48>>2];if((b|0)==(a+28|0)){F[a+44|0]=0;break b}if(!b){break b}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,a)}function QL(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=O(0);a:{b=H[a+32>>2];f=H[a+36>>2];if(b>>>0>=f>>>0){break a}g=L[a+40>>2];a=H[a+28>>2];d=b+1|0;if(f-b&1){c=H[a+12144>>2]+N(b,52)|0;e=H[(H[H[c>>2]+24>>2]<<2)+135116>>2];if(e){Ra[e|0](c,g)}b=b+1|0}if((d|0)==(f|0)){break a}while(1){d=N(b,52);c=d+H[a+12144>>2]|0;e=H[(H[H[c>>2]+24>>2]<<2)+135116>>2];if(e){Ra[e|0](c,g)}d=(d+H[a+12144>>2]|0)+52|0;c=H[(H[H[d>>2]+24>>2]<<2)+135116>>2];if(c){Ra[c|0](d,g)}b=b+2|0;if((f|0)!=(b|0)){continue}break}}}function HA(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=O(d);e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;g=H[a>>2];j=g+J[a+4>>1]|0;if(g>>>0>>0){while(1){a=(g<<5)+b|0;vA(a,d,e,c);f=H[a+24>>2];a:{if(!f){break a}h=I[f+1|0];if(!h){break a}a=f+176|0;if((h|0)!=1){f=I[f|0]==2?96:160;k=h&254;i=0;while(1){if(!(I[a+84|0]&4)){H[a+28>>2]=0}a=a+f|0;if(!(I[a+84|0]&4)){H[a+28>>2]=0}a=a+f|0;i=i+2|0;if((k|0)!=(i|0)){continue}break}}if(!(h&1)|I[a+84|0]&4){break a}H[a+28>>2]=0}g=g+1|0;if((j|0)!=(g|0)){continue}break}}}function wg(a){var b=0,c=0,d=0,e=0,f=0;a:{c=H[33768];if(!H[c+636>>2]){break a}b=(a<<15^-1)+a|0;b=N(b>>>10^b,9);b=b>>>6^b;b=(b<<11^-1)+b|0;d=H[c+612>>2]+((H[c+620>>2]-1&(b>>>16^b))<<2)|0;b=H[d>>2];if((b|0)==-1){break a}e=H[c+608>>2];f=H[c+604>>2];if(H[f+(b<<2)>>2]!=(a|0)){while(1){d=(b<<2)+e|0;b=H[d>>2];if((b|0)==-1){break a}if(H[(b<<2)+f>>2]!=(a|0)){continue}break}}a=(b<<2)+e|0;H[d>>2]=H[a>>2];H[c+636>>2]=H[c+636>>2]-1;H[c+632>>2]=H[c+632>>2]+1;H[a>>2]=H[c+628>>2];H[c+628>>2]=b}}function mJ(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=Oa-16|0;Oa=d;f=H[a- -64>>2];e=H[a+72>>2];b=H[b+20>>2];H[d+12>>2]=-1;H[d+8>>2]=c;h=a+60|0;a:{if((H[a+68>>2]&2147483647)>>>0<=f>>>0){nJ(h,d+8|0);break a}i=H[d+12>>2];g=H[a+60>>2]+(f<<3)|0;H[g>>2]=H[d+8>>2];H[g+4>>2]=i;H[a+64>>2]=H[a+64>>2]+1}e=e+N(b,20)|0;b=e+16|0;g=H[e+16>>2];b:{if((g|0)==-1){H[e+16>>2]=f;b=e+12|0;break b}H[(H[h>>2]+(g<<3)|0)+4>>2]=f}H[b>>2]=f;a=H[a+72>>2]+N(c,20)|0;H[a+4>>2]=H[a+4>>2]+1;Oa=d+16|0}function OS(a,b){a=a|0;b=O(b);var c=0,d=0,e=0,f=O(0),g=O(0),h=O(0);c=Oa-32|0;Oa=c;f=O(Ra[H[H[a>>2]+108>>2]](a));Ra[H[H[a>>2]+120>>2]](a,b)|0;d=Ra[H[H[a>>2]+16>>2]](a)|0;e=H[d+20>>2];H[c+24>>2]=H[d+16>>2];H[c+28>>2]=e;e=H[d+12>>2];H[c+16>>2]=H[d+8>>2];H[c+20>>2]=e;e=H[d+4>>2];H[c+8>>2]=H[d>>2];H[c+12>>2]=e;g=L[a+36>>2];h=L[a+44>>2];b=O(b-f);M[c+16>>3]=M[c+16>>3]+ +O(b*L[a+40>>2]);M[c+24>>3]=M[c+24>>3]+ +O(b*h);M[c+8>>3]=M[c+8>>3]+ +O(b*g);Ra[H[H[a>>2]+12>>2]](a,c+8|0)|0;Oa=c+32|0}function si(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=H[H[((J[a+4>>1]<<2)+73232|0)+72>>2]+a>>2];if(d){d=d-16|0}else{d=0}L[a+296>>2]=L[b>>2];L[a+300>>2]=L[b+4>>2];L[a+304>>2]=L[b+8>>2];e=a+48|0;a:{b:{c:{switch((H[a+52>>2]>>>30|0)-2|0){case 0:f=H[e>>2];if(I[f+4785|0]){break b}default:EF(a- -64|0,b);break a;case 1:break c}}f=H[e>>2]}$t(f,e);H[a+316>>2]=H[a+316>>2]|8388608}if(d){a=H[a+320>>2];d=Ra[H[H[a>>2]+100>>2]](a)|0;a=1;ei(d,L[b>>2]!=O(0)|L[b+4>>2]!=O(0)?a:L[b+8>>2]!=O(0),c)}}function ri(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=H[H[((J[a+4>>1]<<2)+73232|0)+72>>2]+a>>2];if(d){d=d-16|0}else{d=0}L[a+284>>2]=L[b>>2];L[a+288>>2]=L[b+4>>2];L[a+292>>2]=L[b+8>>2];e=a+48|0;a:{b:{c:{switch((H[a+52>>2]>>>30|0)-2|0){case 0:f=H[e>>2];if(I[f+4785|0]){break b}default:DF(a- -64|0,b);break a;case 1:break c}}f=H[e>>2]}$t(f,e);H[a+316>>2]=H[a+316>>2]|4194304}if(d){a=H[a+320>>2];d=Ra[H[H[a>>2]+100>>2]](a)|0;a=1;ei(d,L[b>>2]!=O(0)|L[b+4>>2]!=O(0)?a:L[b+8>>2]!=O(0),c)}}function V6(a){var b=0,c=0;a:{c=X6(a);b=c;b:{if(H[33477]<0){a=T6(a,c,133832);break b}a=T6(a,c,133832)}if((b|0)!=(a|0)){b=a}if((((b|0)!=(c|0)?-1:0)|0)<0){break a}c:{if(H[33478]==10){break c}a=H[33463];if((a|0)==H[33462]){break c}H[33463]=a+1;F[a|0]=10;break a}b=Oa-16|0;Oa=b;F[b+15|0]=10;a=H[33462];d:{if(!a){if(Q6(133832)){break d}a=H[33462]}c=a;a=H[33463];if(!((c|0)==(a|0)|H[33478]==10)){H[33463]=a+1;F[a|0]=10;break d}if((Ra[H[33467]](133832,b+15|0,1)|0)!=1){break d}}Oa=b+16|0}}function SI(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;f=H[a>>2];if(f){e=H[f+40>>2];c=H[e+2384>>2];g=H[c+12>>2];h=H[c+8>>2];d=g+N(h,12)|0;a=H[d+4>>2];a:{if(a){H[d+4>>2]=H[a>>2];break a}b:{a=H[d+8>>2];if((a|0)==H[c>>2]){break b}i=H[c+4>>2];H[d+8>>2]=a+1;d=H[N(h,12)+g>>2];if(!d){break b}a=d+N(a,i)|0;break a}a=LN(c)}ZQ(a,f,b);c=((H[b+68>>2]<<2)+e|0)+2676|0;H[c>>2]=H[c>>2]+1;c=H[e+1012>>2];Ra[H[H[c>>2]+16>>2]](c,a+12|0,H[a+32>>2]);a=H[H[e+976>>2]+1024>>2];Ra[H[H[a>>2]+44>>2]](a,b+32|0)}}function ap(a,b,c,d){var e=0,f=0,g=0;f=Oa-224|0;Oa=f;e=b+48|0;g=H[b+52>>2];a:{if(!(I[(g&1?H[b+56>>2]:(e+H[((g>>>22&60)+76348|0)+12>>2]|0)+8|0)|0]&8)){g=e;e=I[a+4801|0]?0:J[b+24>>1]<9?f:0;Dt(a+16|0,g,0,e,c);nt(b+20|0,a,b,d,e,c);if(!H[b+16>>2]){break a}qg(b+12|0);break a}Dt(a+16|0,e,1,0,c);nt(b+20|0,a,b,d,0,c)}c=H[a+5936>>2];H[b+44>>2]=c;H[f+220>>2]=b;b:{if(c>>>0>=(H[a+5940>>2]&2147483647)>>>0){bp(a+5932|0,f+220|0);break b}H[H[a+5932>>2]+(c<<2)>>2]=b;H[a+5936>>2]=c+1}Oa=f+224|0}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=0,i=0,j=0;g=H[c+4624>>2];a:{if(!g){break a}b=J[b+34>>1];a=J[a+34>>1];c=0;if(g-1>>>0>=3){j=g&-4;while(1){e=c<<2;f=e+d|0;G[f+2>>1]=b;G[f>>1]=a;f=(e|4)+d|0;G[f+2>>1]=b;G[f>>1]=a;f=(e|8)+d|0;G[f+2>>1]=b;G[f>>1]=a;e=(e|12)+d|0;G[e+2>>1]=b;G[e>>1]=a;c=c+4|0;h=h+4|0;if((j|0)!=(h|0)){continue}break}}g=g&3;if(!g){break a}while(1){e=(c<<2)+d|0;G[e+2>>1]=b;G[e>>1]=a;c=c+1|0;i=i+1|0;if((g|0)!=(i|0)){continue}break}}return 1}function PV(a,b){a=a|0;b=b|0;var c=0,d=O(0),e=O(0),f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0),p=O(0),q=O(0),r=O(0);c=H[b+8>>2];g=L[c+52>>2];h=L[c+36>>2];i=L[c+20>>2];j=L[c+56>>2];k=L[c+40>>2];l=L[c+24>>2];m=L[c+4>>2];n=L[c+8>>2];o=L[c+48>>2];p=L[c+32>>2];b=H[b+4>>2];d=L[b+8>>2];q=L[c>>2];e=L[b>>2];r=L[c+16>>2];f=L[b+4>>2];H[a+12>>2]=0;L[a>>2]=o+O(O(p*d)+O(O(q*e)+O(f*r)));L[a+8>>2]=j+O(O(k*d)+O(O(n*e)+O(f*l)));L[a+4>>2]=g+O(O(h*d)+O(O(m*e)+O(f*i)))}function GA(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=O(d);e=e|0;var f=0,g=0,h=0,i=0,j=0;e=H[a>>2];i=e+J[a+4>>1]|0;if(e>>>0>>0){while(1){a=(e<<5)+b|0;wA(a,c,d);f=H[a+24>>2];a:{if(!f){break a}g=I[f+1|0];if(!g){break a}a=f+176|0;if((g|0)!=1){f=I[f|0]==2?96:160;j=g&254;h=0;while(1){if(!(I[a+84|0]&4)){H[a+28>>2]=0}a=a+f|0;if(!(I[a+84|0]&4)){H[a+28>>2]=0}a=a+f|0;h=h+2|0;if((j|0)!=(h|0)){continue}break}}if(!(g&1)|I[a+84|0]&4){break a}H[a+28>>2]=0}e=e+1|0;if((i|0)!=(e|0)){continue}break}}}function Fh(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;a:{c=J[a+24>>1];if(!c){break a}f=1;e=a+20|0;d=(c|0)==1;Ra[H[H[b>>2]+8>>2]](b,H[(d?e:H[e>>2])>>2]);if(d){break a}d=c-1|0;h=d&1;if((c|0)!=2){d=d&-2;c=0;while(1){g=f<<2;Ra[H[H[b>>2]+8>>2]](b,H[g+(J[a+24>>1]==1?e:H[a+20>>2])>>2]);Ra[H[H[b>>2]+8>>2]](b,H[((J[a+24>>1]==1?e:H[a+20>>2])+g|0)+4>>2]);f=f+2|0;c=c+2|0;if((d|0)!=(c|0)){continue}break}}if(!h){break a}Ra[H[H[b>>2]+8>>2]](b,H[(f<<2)+(J[a+24>>1]==1?e:H[a+20>>2])>>2])}}function tf(a,b,c){var d=0,e=0;d=b?H[((H[b+4>>2]>>>22&60)+76348|0)+12>>2]+b|0:d;e=c?H[((H[c+4>>2]>>>22&60)+76348|0)+12>>2]+c|0:e;a:{b:{c:{d:{c=H[a+4>>2];switch((c>>>30|0)-2|0){case 1:break b;case 0:break d;default:break c}}if(I[H[a>>2]+4785|0]){break b}}b=a+12|0;zG(b);xG(b,d,e);break a}b=H[a+8>>2];if(!b){b=Tt(H[a>>2],c>>>24&15);H[a+8>>2]=b}H[b+4>>2]=e;H[b>>2]=d;$t(H[a>>2],a);H[a+4>>2]=H[a+4>>2]|1}H[a+76>>2]=0;H[a+80>>2]=0;H[a+92>>2]=0;H[a+96>>2]=0;H[a+84>>2]=0;H[a+88>>2]=0}function rU(a){a=a|0;var b=0,c=0;H[a>>2]=125540;b=H[a+16>>2];if(b){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}b=H[a+48>>2];if(b){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b);H[a+48>>2]=0}b=H[a+52>>2];if(b){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b);H[a+52>>2]=0}b=H[a+56>>2];if(b){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}b=H[a+60>>2];if(b){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b);H[a+60>>2]=0}b=H[a+64>>2];if(b){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b);H[a+64>>2]=0}return a|0}function C5(a,b,c){var d=O(0),e=O(0),f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0);e=L[b+4>>2];g=O(-e);h=L[b>>2];l=O(-h);f=L[b+8>>2];d=L[c+8>>2];j=L[c>>2];k=L[c+4>>2];m=O(O(f*d)+O(O(h*j)+O(e*k)));a:{if(m>O(-1)){i=O(O(e*d)-O(k*f));f=O(O(f*j)+O(d*l));g=O(O(h*k)+O(j*g));d=O(m+O(1));break a}d=O(0);if(O(P(h))>2]=d*e;L[a+8>>2]=g*e;L[a+4>>2]=f*e;L[a>>2]=i*e}function $o(a,b,c,d){var e=0,f=0,g=0;f=Oa-224|0;Oa=f;e=b+48|0;g=H[b+52>>2];a:{if(!(I[(g&1?H[b+56>>2]:(e+H[((g>>>22&60)+76348|0)+12>>2]|0)+8|0)|0]&8)){g=e;e=I[a+4801|0]?0:J[b+24>>1]<9?f:0;Bt(a+16|0,g,0,e);nt(b+20|0,a,b,d,e,c);if(!H[b+16>>2]){break a}qg(b+12|0);break a}Bt(a+16|0,e,1,0);nt(b+20|0,a,b,d,0,c)}c=H[a+5936>>2];H[b+44>>2]=c;H[f+220>>2]=b;b:{if(c>>>0>=(H[a+5940>>2]&2147483647)>>>0){bp(a+5932|0,f+220|0);break b}H[H[a+5932>>2]+(c<<2)>>2]=b;H[a+5936>>2]=c+1}Oa=f+224|0}function mI(a,b,c,d,e,f,g){var h=0,i=0,j=0;a:{if(!e){if(!H[a+1992>>2]){break a}e=b>>>0>>0;h=e?c:b;c=e?b:c;b=h<<14&-65536|c>>>2&65535;b=(b<<15^-1)+b|0;b=N(b>>>10^b,9);b=b>>>6^b;b=(b<<11^-1)+b|0;e=H[H[a+1968>>2]+((H[a+1976>>2]-1&(b>>>16^b))<<2)>>2];if((e|0)==-1){break a}j=H[a+1964>>2];b=H[a+1960>>2];while(1){i=b+N(e,12)|0;if(!((c|0)==H[i>>2]&H[i+4>>2]==(h|0))){e=H[(e<<2)+j>>2];if((e|0)!=-1){continue}break a}break}e=H[(b+N(e,12)|0)+8>>2]}if(!e){break a}nI(a,e,4,d,1,f,g)}}function Qe(a){a=a|0;var b=O(0),c=O(0),d=O(0),e=0;a:{if(K[a+100>>2]>1|L[a+68>>2]>2]>2]>2]>2];if(c>2]<=O(0)|(!H[a+88>>2]|((B(O(M[a+8>>3])),v(2))&2139095040)==2139095040)){break a}if(((B(O(M[a+16>>3])),v(2))&2139095040)==2139095040|((B(O(M[a+24>>3])),v(2))&2139095040)==2139095040){break a}b=L[a+104>>2];if(b<=O(0)){break a}d=L[a+108>>2];if(d<=O(0)){break a}e=!(O(O(b+b)+d)>1]==65535){e=L[c>>2];d=H[d+4>>2];f=L[c+4>>2];g=L[c+8>>2];h=O(O(O(e*L[d+40>>2])+O(f*L[d+52>>2]))+O(g*L[d- -64>>2]));i=O(O(O(e*L[d+36>>2])+O(f*L[d+48>>2]))+O(g*L[d+60>>2]));e=O(O(O(e*L[d+32>>2])+O(f*L[d+44>>2]))+O(g*L[d+56>>2]));break a}h=L[c+8>>2];i=L[c+4>>2];e=L[c>>2]}c=H[b+4>>2];d=H[b>>2];f=L[b+8>>2];H[a+28>>2]=0;L[a+24>>2]=h;L[a+20>>2]=i;L[a+16>>2]=e;H[a+12>>2]=0;L[a+8>>2]=f;H[a>>2]=d;H[a+4>>2]=c}function as(a){a=a|0;var b=0,c=0,d=0,e=0;c=H[a+20>>2];d=Oa-48|0;Oa=d;a=H[a+28>>2];b=a+32|0;L[b+1080>>2]=L[a+6072>>2];aO(b);GG(H[b+1136>>2],H[b+976>>2]);bO(b,c);a=d+8|0;e=H[H[b+976>>2]+1024>>2];Ra[H[H[e>>2]+84>>2]](a,e);GI(H[b+2168>>2],a,(H[b+2360>>2]&8)>>>3|0);H[b+2356>>2]=H[b+2356>>2]&-7;CJ(H[b+976>>2]);H[b+4564>>2]=c;H[b+4568>>2]=1;a:{if(!c){a=H[b+4560>>2];break a}Ra[H[H[c>>2]+16>>2]](c);a=H[H[b+4564>>2]+16>>2];H[b+4560>>2]=a}Ra[H[H[a>>2]+72>>2]](a,b+4544|0);Oa=d+48|0}function LR(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;c=Oa-32|0;Oa=c;d=H[b+4>>2];H[a+440>>2]=H[b>>2];H[a+444>>2]=d;d=H[b+20>>2];H[a+456>>2]=H[b+16>>2];H[a+460>>2]=d;d=H[b+12>>2];H[a+448>>2]=H[b+8>>2];H[a+452>>2]=d;b=H[a+432>>2];if(b){Ra[H[H[b>>2]+76>>2]](c,b);e=M[a+448>>3];f=M[a+440>>3];L[c+24>>2]=M[a+456>>3];L[c+20>>2]=e;L[c+16>>2]=f;L[c>>2]=L[a+20>>2];L[c+4>>2]=L[a+24>>2];L[c+8>>2]=L[a+28>>2];L[c+12>>2]=L[a+32>>2];a=H[a+432>>2];Ra[H[H[a>>2]+248>>2]](a,c)}Oa=c+32|0;return 1}function vO(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;a:{if(!b){break a}d=b<<2;if(!d){break a}e=H[33808];c=e+12|0;e=(h=c,i=d,j=Ra[H[H[e>>2]+20>>2]](e)|0?49644:55639,k=13582,l=553,g=H[H[c>>2]+8>>2],Ra[g](h|0,i|0,j|0,k|0,l|0)|0)}c=H[a+4>>2];if((c|0)>0){d=(c<<2)+e|0;f=H[a>>2];c=e;while(1){H[c>>2]=H[f>>2];f=f+4|0;c=c+4|0;if(d>>>0>c>>>0){continue}break}}b:{if(H[a+8>>2]<0){break b}d=H[a>>2];if(!d){break b}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,d)}H[a+8>>2]=b;H[a>>2]=e}function uO(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;a:{if(!b){break a}d=b<<2;if(!d){break a}e=H[33808];c=e+12|0;e=(h=c,i=d,j=Ra[H[H[e>>2]+20>>2]](e)|0?50316:55639,k=13582,l=553,g=H[H[c>>2]+8>>2],Ra[g](h|0,i|0,j|0,k|0,l|0)|0)}c=H[a+4>>2];if((c|0)>0){d=(c<<2)+e|0;f=H[a>>2];c=e;while(1){H[c>>2]=H[f>>2];f=f+4|0;c=c+4|0;if(d>>>0>c>>>0){continue}break}}b:{if(H[a+8>>2]<0){break b}d=H[a>>2];if(!d){break b}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,d)}H[a+8>>2]=b;H[a>>2]=e}function tO(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;a:{if(!b){break a}d=b<<2;if(!d){break a}e=H[33808];c=e+12|0;e=(h=c,i=d,j=Ra[H[H[e>>2]+20>>2]](e)|0?49792:55639,k=13582,l=553,g=H[H[c>>2]+8>>2],Ra[g](h|0,i|0,j|0,k|0,l|0)|0)}c=H[a+4>>2];if((c|0)>0){d=(c<<2)+e|0;f=H[a>>2];c=e;while(1){H[c>>2]=H[f>>2];f=f+4|0;c=c+4|0;if(d>>>0>c>>>0){continue}break}}b:{if(H[a+8>>2]<0){break b}d=H[a>>2];if(!d){break b}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,d)}H[a+8>>2]=b;H[a>>2]=e}function ny(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;a:{if(!b){break a}d=b<<2;if(!d){break a}e=H[33808];c=e+12|0;e=(h=c,i=d,j=Ra[H[H[e>>2]+20>>2]](e)|0?54428:55639,k=13582,l=553,g=H[H[c>>2]+8>>2],Ra[g](h|0,i|0,j|0,k|0,l|0)|0)}c=H[a+4>>2];if((c|0)>0){d=(c<<2)+e|0;f=H[a>>2];c=e;while(1){H[c>>2]=H[f>>2];f=f+4|0;c=c+4|0;if(d>>>0>c>>>0){continue}break}}b:{if(H[a+8>>2]<0){break b}d=H[a>>2];if(!d){break b}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,d)}H[a+8>>2]=b;H[a>>2]=e}function my(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;a:{if(!b){break a}d=b<<2;if(!d){break a}e=H[33808];c=e+12|0;e=(h=c,i=d,j=Ra[H[H[e>>2]+20>>2]](e)|0?47876:55639,k=13582,l=553,g=H[H[c>>2]+8>>2],Ra[g](h|0,i|0,j|0,k|0,l|0)|0)}c=H[a+4>>2];if((c|0)>0){d=(c<<2)+e|0;f=H[a>>2];c=e;while(1){H[c>>2]=H[f>>2];f=f+4|0;c=c+4|0;if(d>>>0>c>>>0){continue}break}}b:{if(H[a+8>>2]<0){break b}d=H[a>>2];if(!d){break b}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,d)}H[a+8>>2]=b;H[a>>2]=e}function ly(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;a:{if(!b){break a}d=b<<2;if(!d){break a}e=H[33808];c=e+12|0;e=(h=c,i=d,j=Ra[H[H[e>>2]+20>>2]](e)|0?52076:55639,k=13582,l=553,g=H[H[c>>2]+8>>2],Ra[g](h|0,i|0,j|0,k|0,l|0)|0)}c=H[a+4>>2];if((c|0)>0){d=(c<<2)+e|0;f=H[a>>2];c=e;while(1){H[c>>2]=H[f>>2];f=f+4|0;c=c+4|0;if(d>>>0>c>>>0){continue}break}}b:{if(H[a+8>>2]<0){break b}d=H[a>>2];if(!d){break b}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,d)}H[a+8>>2]=b;H[a>>2]=e}function hT(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;a:{if(!b){break a}d=b<<2;if(!d){break a}e=H[33808];c=e+12|0;e=(h=c,i=d,j=Ra[H[H[e>>2]+20>>2]](e)|0?54122:55639,k=13582,l=553,g=H[H[c>>2]+8>>2],Ra[g](h|0,i|0,j|0,k|0,l|0)|0)}c=H[a+4>>2];if((c|0)>0){d=(c<<2)+e|0;f=H[a>>2];c=e;while(1){H[c>>2]=H[f>>2];f=f+4|0;c=c+4|0;if(d>>>0>c>>>0){continue}break}}b:{if(H[a+8>>2]<0){break b}d=H[a>>2];if(!d){break b}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,d)}H[a+8>>2]=b;H[a>>2]=e}function aC(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;a:{if(!b){break a}d=b<<2;if(!d){break a}e=H[33808];c=e+12|0;e=(h=c,i=d,j=Ra[H[H[e>>2]+20>>2]](e)|0?53592:55639,k=13582,l=553,g=H[H[c>>2]+8>>2],Ra[g](h|0,i|0,j|0,k|0,l|0)|0)}c=H[a+4>>2];if((c|0)>0){d=(c<<2)+e|0;f=H[a>>2];c=e;while(1){H[c>>2]=H[f>>2];f=f+4|0;c=c+4|0;if(d>>>0>c>>>0){continue}break}}b:{if(H[a+8>>2]<0){break b}d=H[a>>2];if(!d){break b}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,d)}H[a+8>>2]=b;H[a>>2]=e}function WN(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;a:{if(!b){break a}d=b<<2;if(!d){break a}e=H[33808];c=e+12|0;e=(h=c,i=d,j=Ra[H[H[e>>2]+20>>2]](e)|0?50448:55639,k=13582,l=553,g=H[H[c>>2]+8>>2],Ra[g](h|0,i|0,j|0,k|0,l|0)|0)}c=H[a+4>>2];if((c|0)>0){d=(c<<2)+e|0;f=H[a>>2];c=e;while(1){H[c>>2]=H[f>>2];f=f+4|0;c=c+4|0;if(d>>>0>c>>>0){continue}break}}b:{if(H[a+8>>2]<0){break b}d=H[a>>2];if(!d){break b}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,d)}H[a+8>>2]=b;H[a>>2]=e}function Qo(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;a:{if(!b){break a}d=b<<2;if(!d){break a}e=H[33808];c=e+12|0;e=(h=c,i=d,j=Ra[H[H[e>>2]+20>>2]](e)|0?49048:55639,k=13582,l=553,g=H[H[c>>2]+8>>2],Ra[g](h|0,i|0,j|0,k|0,l|0)|0)}c=H[a+4>>2];if((c|0)>0){d=(c<<2)+e|0;f=H[a>>2];c=e;while(1){H[c>>2]=H[f>>2];f=f+4|0;c=c+4|0;if(d>>>0>c>>>0){continue}break}}b:{if(H[a+8>>2]<0){break b}d=H[a>>2];if(!d){break b}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,d)}H[a+8>>2]=b;H[a>>2]=e}function PN(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;a:{if(!b){break a}d=b<<2;if(!d){break a}e=H[33808];c=e+12|0;e=(h=c,i=d,j=Ra[H[H[e>>2]+20>>2]](e)|0?52190:55639,k=13582,l=553,g=H[H[c>>2]+8>>2],Ra[g](h|0,i|0,j|0,k|0,l|0)|0)}c=H[a+4>>2];if((c|0)>0){d=(c<<2)+e|0;f=H[a>>2];c=e;while(1){H[c>>2]=H[f>>2];f=f+4|0;c=c+4|0;if(d>>>0>c>>>0){continue}break}}b:{if(H[a+8>>2]<0){break b}d=H[a>>2];if(!d){break b}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,d)}H[a+8>>2]=b;H[a>>2]=e}function Ll(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;a:{if(!b){break a}d=b<<2;if(!d){break a}e=H[33808];c=e+12|0;e=(h=c,i=d,j=Ra[H[H[e>>2]+20>>2]](e)|0?48942:55639,k=13582,l=553,g=H[H[c>>2]+8>>2],Ra[g](h|0,i|0,j|0,k|0,l|0)|0)}c=H[a+4>>2];if((c|0)>0){d=(c<<2)+e|0;f=H[a>>2];c=e;while(1){H[c>>2]=H[f>>2];f=f+4|0;c=c+4|0;if(d>>>0>c>>>0){continue}break}}b:{if(H[a+8>>2]<0){break b}d=H[a>>2];if(!d){break b}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,d)}H[a+8>>2]=b;H[a>>2]=e}function Gy(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;a:{if(!b){break a}d=b<<2;if(!d){break a}e=H[33808];c=e+12|0;e=(h=c,i=d,j=Ra[H[H[e>>2]+20>>2]](e)|0?49918:55639,k=13582,l=553,g=H[H[c>>2]+8>>2],Ra[g](h|0,i|0,j|0,k|0,l|0)|0)}c=H[a+4>>2];if((c|0)>0){d=(c<<2)+e|0;f=H[a>>2];c=e;while(1){H[c>>2]=H[f>>2];f=f+4|0;c=c+4|0;if(d>>>0>c>>>0){continue}break}}b:{if(H[a+8>>2]<0){break b}d=H[a>>2];if(!d){break b}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,d)}H[a+8>>2]=b;H[a>>2]=e}function Gq(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;a:{if(!b){break a}d=b<<2;if(!d){break a}e=H[33808];c=e+12|0;e=(h=c,i=d,j=Ra[H[H[e>>2]+20>>2]](e)|0?49164:55639,k=13582,l=553,g=H[H[c>>2]+8>>2],Ra[g](h|0,i|0,j|0,k|0,l|0)|0)}c=H[a+4>>2];if((c|0)>0){d=(c<<2)+e|0;f=H[a>>2];c=e;while(1){H[c>>2]=H[f>>2];f=f+4|0;c=c+4|0;if(d>>>0>c>>>0){continue}break}}b:{if(H[a+8>>2]<0){break b}d=H[a>>2];if(!d){break b}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,d)}H[a+8>>2]=b;H[a>>2]=e}function Fx(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;a:{if(!b){break a}d=b<<2;if(!d){break a}e=H[33808];c=e+12|0;e=(h=c,i=d,j=Ra[H[H[e>>2]+20>>2]](e)|0?50070:55639,k=13582,l=553,g=H[H[c>>2]+8>>2],Ra[g](h|0,i|0,j|0,k|0,l|0)|0)}c=H[a+4>>2];if((c|0)>0){d=(c<<2)+e|0;f=H[a>>2];c=e;while(1){H[c>>2]=H[f>>2];f=f+4|0;c=c+4|0;if(d>>>0>c>>>0){continue}break}}b:{if(H[a+8>>2]<0){break b}d=H[a>>2];if(!d){break b}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,d)}H[a+8>>2]=b;H[a>>2]=e}function Ex(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;a:{if(!b){break a}d=b<<2;if(!d){break a}e=H[33808];c=e+12|0;e=(h=c,i=d,j=Ra[H[H[e>>2]+20>>2]](e)|0?51180:55639,k=13582,l=553,g=H[H[c>>2]+8>>2],Ra[g](h|0,i|0,j|0,k|0,l|0)|0)}c=H[a+4>>2];if((c|0)>0){d=(c<<2)+e|0;f=H[a>>2];c=e;while(1){H[c>>2]=H[f>>2];f=f+4|0;c=c+4|0;if(d>>>0>c>>>0){continue}break}}b:{if(H[a+8>>2]<0){break b}d=H[a>>2];if(!d){break b}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,d)}H[a+8>>2]=b;H[a>>2]=e}function Eq(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;a:{if(!b){break a}d=b<<2;if(!d){break a}e=H[33808];c=e+12|0;e=(h=c,i=d,j=Ra[H[H[e>>2]+20>>2]](e)|0?52670:55639,k=13582,l=553,g=H[H[c>>2]+8>>2],Ra[g](h|0,i|0,j|0,k|0,l|0)|0)}c=H[a+4>>2];if((c|0)>0){d=(c<<2)+e|0;f=H[a>>2];c=e;while(1){H[c>>2]=H[f>>2];f=f+4|0;c=c+4|0;if(d>>>0>c>>>0){continue}break}}b:{if(H[a+8>>2]<0){break b}d=H[a>>2];if(!d){break b}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,d)}H[a+8>>2]=b;H[a>>2]=e}function Eb(){var a=0;a=o6(120);H[a+72>>2]=1069547520;H[a+64>>2]=1092616192;H[a+68>>2]=1061997773;H[a+56>>2]=1036831949;H[a+60>>2]=1056964608;H[a+32>>2]=0;H[a+36>>2]=1065353216;H[a+96>>2]=0;H[a+100>>2]=1;H[a+48>>2]=0;H[a+52>>2]=0;H[a+8>>2]=0;H[a+12>>2]=0;H[a+76>>2]=0;H[a+80>>2]=0;F[a+92|0]=1;H[a+108>>2]=0;H[a+112>>2]=0;H[a>>2]=98324;H[a+104>>2]=0;H[a+40>>2]=0;H[a+44>>2]=1060437492;H[a+16>>2]=0;H[a+20>>2]=0;H[a+24>>2]=0;H[a+28>>2]=0;H[a+84>>2]=0;H[a+88>>2]=0;return a|0}function py(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0;a:{c=H[a+336>>2];b=H[c>>2];H[c>>2]=0;c=b;if(!b){break a}while(1){e=H[b>>2];d=H[a+180>>2];f=b+12156|0;H[d+600>>2]=H[d+600>>2]+H[f>>2];H[d+604>>2]=H[d+604>>2]+H[b+12160>>2];g=b+12164|0;H[d+608>>2]=H[d+608>>2]+H[g>>2];H[d+612>>2]=H[d+612>>2]+H[b+12168>>2];H[g>>2]=0;H[g+4>>2]=0;H[f>>2]=0;H[f+4>>2]=0;b=e;if(b){continue}break}if(!c){break a}while(1){b=H[c>>2];e=H[a+336>>2];H[c>>2]=H[e>>2];H[e>>2]=c;c=b;if(b){continue}break}}}function n6(a,b){if(!a){return 0}a:{b:{if(a){if(b>>>0<=127){break b}c:{if(!H[H[34012]>>2]){if((b&-128)==57216){break b}break c}if(b>>>0<=2047){F[a+1|0]=b&63|128;F[a|0]=b>>>6|192;a=2;break a}if(!((b&-8192)!=57344&b>>>0>=55296)){F[a+2|0]=b&63|128;F[a|0]=b>>>12|224;F[a+1|0]=b>>>6&63|128;a=3;break a}if(b-65536>>>0<=1048575){F[a+3|0]=b&63|128;F[a|0]=b>>>18|240;F[a+2|0]=b>>>6&63|128;F[a+1|0]=b>>>12&63|128;a=4;break a}}H[33811]=25;a=-1}else{a=1}break a}F[a|0]=b;a=1}return a}function kJ(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Oa-32|0;Oa=d;H[a+52>>2]=H[a+52>>2]+1;H[b+16>>2]=a;Ra[H[H[b>>2]+32>>2]](b);e=H[a+76>>2];H[b+20>>2]=e;H[d+20>>2]=-1;H[d+24>>2]=-1;H[d+12>>2]=1;H[d+16>>2]=c;H[d+8>>2]=b;a:{if((H[a+80>>2]&2147483647)>>>0<=e>>>0){jJ(a+72|0,d+8|0);break a}c=H[a+72>>2]+N(e,20)|0;e=H[d+12>>2];H[c>>2]=H[d+8>>2];H[c+4>>2]=e;H[c+16>>2]=H[d+24>>2];e=H[d+20>>2];H[c+8>>2]=H[d+16>>2];H[c+12>>2]=e;H[a+76>>2]=H[a+76>>2]+1}Oa=d+32|0;return H[b+20>>2]}function Rl(a,b){var c=0,d=0,e=0,f=0;a:{if(!H[a+516>>2]){break a}c=(b<<15^-1)+b|0;c=N(c>>>10^c,9);c=c>>>6^c;c=(c<<11^-1)+c|0;d=H[a+492>>2]+((H[a+500>>2]-1&(c>>>16^c))<<2)|0;c=H[d>>2];if((c|0)==-1){break a}e=H[a+488>>2];f=H[a+484>>2];if(H[f+(c<<2)>>2]!=(b|0)){while(1){d=(c<<2)+e|0;c=H[d>>2];if((c|0)==-1){break a}if(H[(c<<2)+f>>2]!=(b|0)){continue}break}}b=(c<<2)+e|0;H[d>>2]=H[b>>2];H[a+516>>2]=H[a+516>>2]-1;H[a+512>>2]=H[a+512>>2]+1;H[b>>2]=H[a+508>>2];H[a+508>>2]=c}}function Ql(a,b){var c=0,d=0,e=0,f=0;a:{if(!H[a+596>>2]){break a}c=(b<<15^-1)+b|0;c=N(c>>>10^c,9);c=c>>>6^c;c=(c<<11^-1)+c|0;d=H[a+572>>2]+((H[a+580>>2]-1&(c>>>16^c))<<2)|0;c=H[d>>2];if((c|0)==-1){break a}e=H[a+568>>2];f=H[a+564>>2];if(H[f+(c<<2)>>2]!=(b|0)){while(1){d=(c<<2)+e|0;c=H[d>>2];if((c|0)==-1){break a}if(H[(c<<2)+f>>2]!=(b|0)){continue}break}}b=(c<<2)+e|0;H[d>>2]=H[b>>2];H[a+596>>2]=H[a+596>>2]-1;H[a+592>>2]=H[a+592>>2]+1;H[b>>2]=H[a+588>>2];H[a+588>>2]=c}}function Pl(a,b){var c=0,d=0,e=0,f=0;a:{if(!H[a+556>>2]){break a}c=(b<<15^-1)+b|0;c=N(c>>>10^c,9);c=c>>>6^c;c=(c<<11^-1)+c|0;d=H[a+532>>2]+((H[a+540>>2]-1&(c>>>16^c))<<2)|0;c=H[d>>2];if((c|0)==-1){break a}e=H[a+528>>2];f=H[a+524>>2];if(H[f+(c<<2)>>2]!=(b|0)){while(1){d=(c<<2)+e|0;c=H[d>>2];if((c|0)==-1){break a}if(H[(c<<2)+f>>2]!=(b|0)){continue}break}}b=(c<<2)+e|0;H[d>>2]=H[b>>2];H[a+556>>2]=H[a+556>>2]-1;H[a+552>>2]=H[a+552>>2]+1;H[b>>2]=H[a+548>>2];H[a+548>>2]=c}}function Nv(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0;H[a+492>>2]=a;e=H[a+32>>2];H[a+444>>2]=e;f=I[a+76|0];H[a+448>>2]=f;H[a+480>>2]=H[a+40>>2];H[a+484>>2]=J[a+74>>1];b=H[a+60>>2];H[a+476>>2]=b?b+32|0:H[a- -64>>2];c=1;b=0;a:{if(f>>>0<=1){break a}while(1){d=H[a+456>>2]+N(c,80)|0;Kv(d,H[((c<<5)+e|0)+20>>2],1);H[d+72>>2]=b;g=I[d+79|0]+g|0;b=I[d+76|0]+b|0;c=c+1|0;if((f|0)==(c|0)){break a}e=H[a+444>>2];continue}}if(H[a+468>>2]!=(b|0)){Fv(a+112|0,b)}H[a+468>>2]=b;H[a+472>>2]=g}function Nj(a,b,c){a=a|0;b=O(b);c=c|0;var d=0,e=0,f=0,g=0;d=H[a+24>>2];if(d){e=Oa-16|0;Oa=e;if(H[d+28>>2]){f=H[d+12>>2];a=H[d>>2];g=H[d+16>>2];Ra[H[H[a>>2]+12>>2]](a,g)|0;F[a+76|0]=g;H[a+32>>2]=f;Ra[H[H[a>>2]+8>>2]](a)}a=H[d>>2];Ra[H[H[a>>2]+24>>2]](a,H[d+16>>2],e+12|0,e+8|0,e+4|0);a=H[e+8>>2];if(a){f=H[33808];a=Ra[H[H[f+12>>2]+8>>2]](f+12|0,a,20591,7857,439)|0}else{a=0}f=c;c=H[d>>2];mv(a,J[d+16>>1],H[d+12>>2],b,f,H[c+68>>2],J[c+78>>1]);Oa=e+16|0}else{a=0}return a|0}function xf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Oa-16|0;Oa=d;g=a+16|0;e=H[a+20>>2];if(e&4){f=J[H[a+24>>2]+16>>1]&(J[a+116>>1]|-1026)}else{f=J[a+28>>1]&(J[a+116>>1]|-1026)}b=c?f|b:f&(b^-1);a:{b:{c:{switch((e>>>30|0)-2|0){case 0:if(I[H[g>>2]+4785|0]){break b}break;case 1:break b;default:break c}}G[d+8>>1]=b;wG(a+28|0,d+8|0);break a}c=H[a+24>>2];if(!c){c=Tt(H[a+16>>2],e>>>24&15);H[a+24>>2]=c}G[c+16>>1]=b;$t(H[a+16>>2],g);H[a+20>>2]=H[a+20>>2]|4}Oa=d+16|0}function nx(a,b,c){var d=0,e=0,f=O(0);d=Oa-32|0;Oa=d;e=J[a+8>>1];a:{if((e|0)==65535){a=H[a+4>>2];f=O(O(O(L[a+8>>2]*L[b+8>>2])+O(O(L[a>>2]*L[b>>2])+O(L[a+4>>2]*L[b+4>>2])))+O(O(L[a+24>>2]*L[c+8>>2])+O(O(L[a+16>>2]*L[c>>2])+O(L[a+20>>2]*L[c+4>>2]))));break a}a=H[a>>2];Ra[H[H[a>>2]+116>>2]](d,a,e);f=O(O(O(O(L[b>>2]*L[d>>2])+O(L[c>>2]*L[d+16>>2]))+O(O(L[b+4>>2]*L[d+4>>2])+O(L[c+4>>2]*L[d+20>>2])))+O(O(L[b+8>>2]*L[d+8>>2])+O(L[c+8>>2]*L[d+24>>2])))}Oa=d+32|0;return f}function Yy(a){a=a|0;var b=0,c=0,d=0,e=0;if(H[a+32>>2]){while(1){e=H[H[a+28>>2]+(d<<2)>>2]>>>7|0;c=H[(H[H[a+36>>2]+16>>2]+N(e,24)|0)+20>>2];b=H[c+36>>2];d=d+1|0;hz(b- -64|0,b+80|0,L[b+124>>2],b+112|0,b,L[b+76>>2],L[b+128>>2],e,L[b+92>>2],H[a+40>>2]+N(d,112)|0,I[b+158|0]);b=H[c+36>>2];L[c>>2]=L[b>>2];L[c+4>>2]=L[b+4>>2];L[c+8>>2]=L[b+8>>2];L[c+12>>2]=L[b+12>>2];L[c+16>>2]=L[b+16>>2];L[c+20>>2]=L[b+20>>2];L[c+24>>2]=L[b+24>>2];if(K[a+32>>2]>d>>>0){continue}break}}}function fW(a,b,c,d){var e=0,f=0,g=0,h=0;Ra[H[H[d>>2]>>2]](d,a,b<<2)|0;a:{if(!c|!b){break a}d=0;if((b|0)!=1){h=b&-2;c=0;while(1){g=d<<2;e=g+a|0;f=I[e+3|0];F[e+3|0]=I[e|0];F[e|0]=f;f=I[e+1|0];F[e+1|0]=I[e+2|0];F[e+2|0]=f;e=(g|4)+a|0;g=I[e+3|0];F[e+3|0]=I[e|0];f=I[e+2|0];F[e+2|0]=I[e+1|0];F[e+1|0]=f;F[e|0]=g;d=d+2|0;c=c+2|0;if((h|0)!=(c|0)){continue}break}}if(!(b&1)){break a}a=(d<<2)+a|0;b=I[a+3|0];F[a+3|0]=I[a|0];F[a|0]=b;b=I[a+1|0];F[a+1|0]=I[a+2|0];F[a+2|0]=b}}function Te(a){a=a|0;var b=O(0),c=O(0),d=0;a:{if(K[a+100>>2]>1|L[a+68>>2]>2]>2]>2]>2];if(c>2]<=O(0)|(!H[a+88>>2]|((B(O(M[a+8>>3])),v(2))&2139095040)==2139095040)){break a}if(((B(O(M[a+16>>3])),v(2))&2139095040)==2139095040|((B(O(M[a+24>>3])),v(2))&2139095040)==2139095040){break a}b=L[a+104>>2];if(b<=O(0)|L[a+108>>2]<=O(0)|L[a+112>>2]<=O(0)){break a}d=!(O(b+b)>2]=a;d=H[b+4>>2];a:{if(!I[a+4785|0]){H[b+4>>2]=d&268435455|-2147483648;a=H[b+388>>2];H[c+12>>2]=H[b+384>>2]+48;H[c+8>>2]=a+48;oO(b+12|0,H[c+12>>2]+16|0,H[c+8>>2]+16|0);break a}a=d&1073741823;if(d>>>0>=3221225472){H[b+4>>2]=a|-2147483648;if(d&268435456){break a}H[c+12>>2]=b;Pf(e,c+12|0);break a}H[b+4>>2]=a|1073741824;H[c+12>>2]=b;a=rg(e,c+12|0,c+8|0);if(I[c+8|0]){break a}H[a>>2]=H[c+12>>2]}Oa=c+16|0}function ph(a,b){a=a|0;b=O(b);var c=0;a:{a=a+12|0;if(H[a+88>>2]){while(1){ak(H[H[a+84>>2]+(c<<2)>>2]+48|0,b);c=c+1|0;if(c>>>0>2]){continue}break}}L[a+56>>2]=b;b:{c:{d:{switch((H[a+4>>2]>>>30|0)-2|0){default:c=H[a>>2];break c;case 1:break b;case 0:break d}}c=H[a>>2];if(I[c+4785|0]){break b}}if(!(!c|!(b>O(0)))){F[a+60|0]=0}L[a+44>>2]=b;break a}if(b>O(0)){F[a+60|0]=0;$t(H[a>>2],a);H[a+4>>2]=H[a+4>>2]&-897|640;break a}$t(H[a>>2],a);H[a+4>>2]=H[a+4>>2]|128}}function kq(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;if(H[a+4656>>2]!=2){o5(H[33808],8,9281,1950,66597,0);return}c=a+16|0;e=H[c+4968>>2];if(e){c=H[c+4936>>2];while(1){St(H[(d<<2)+c>>2]);d=d+1|0;if((e|0)!=(d|0)){continue}break}}H[a+6124>>2]=b;H[a+4656>>2]=3;if(b){Ra[H[H[b>>2]+16>>2]](b)}H[a+6304>>2]=1;b=a+6104|0;H[a+6300>>2]=b;c=a+6296|0;H[c>>2]=H[a+6092>>2];Ra[H[H[a+6104>>2]+16>>2]](b);d=H[a+6120>>2];Ra[H[H[d>>2]+72>>2]](d,b);b=H[c>>2];Ra[H[H[b>>2]+72>>2]](b,a+6280|0)}function dH(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=1;a:{if(I[a+36|0]){break a}g=H[b+180>>2];if(H[g+(H[a+40>>2]<<2)>>2]==-1|H[(H[a+44>>2]<<2)+g>>2]==-1){break a}e=H[a+48>>2];if(!H[e+8>>2]){break a}f=H[a+52>>2];if(!H[f+8>>2]){break a}b:{if(H[e+20>>2]==-1&H[f+20>>2]==-1){break b}d=b+196|0;e=b+208|0;f=H[b+400>>2];h=H[H[b+192>>2]+4>>2];i=H[H[b+276>>2]+4>>2];if(c){cH(a,f,i,h,g,e,d,c+4|0,c+28|0);break b}cH(a,f,i,h,g,e,d,b+304|0,b+328|0)}d=0}return d|0}function xD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;e=H[a+632>>2];if(e){f=H[a+644>>2];g=H[a+640>>2];while(1){c=N(d,24)+g|0;L[c>>2]=L[c>>2]-L[b>>2];L[c+4>>2]=L[c+4>>2]-L[b+4>>2];L[c+8>>2]=L[c+8>>2]-L[b+8>>2];L[c+12>>2]=L[c+12>>2]-L[b>>2];L[c+16>>2]=L[c+16>>2]-L[b+4>>2];L[c+20>>2]=L[c+20>>2]-L[b+8>>2];c=N(d,44)+f|0;L[c+28>>2]=L[c+28>>2]-L[b>>2];L[c+32>>2]=L[c+32>>2]-L[b+4>>2];L[c+36>>2]=L[c+36>>2]-L[b+8>>2];d=d+1|0;if((e|0)!=(d|0)){continue}break}}WB(a+4|0,b)}function un(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=O(0),f=O(0);ji(a,b,c,d);e=L[a+308>>2];b=H[H[((J[a+4>>1]<<2)+73232|0)+72>>2]+a>>2];if(b){b=b-16|0}else{b=0}f=L[b+5148>>2];b=e>2]?1:b){e=b?f:e;b=a+48|0;a:{b:{switch((H[a+52>>2]>>>30|0)-2|0){case 0:c=H[b>>2];if(I[c+4785|0]){break a}default:L[a+308>>2]=e;H[a+312>>2]=0;WF(a- -64|0,e,1);return;case 1:break b}}c=H[b>>2]}L[a+308>>2]=e;H[a+312>>2]=0;$t(c,b);H[a+316>>2]=H[a+316>>2]&-117440513|83886080}}function lp(a,b){a=a|0;b=b|0;var c=0,d=0;d=Oa-16|0;Oa=d;Ra[H[H[a>>2]+16>>2]](d+8|0,a);a:{b:{if(I[d+9|0]&32){c=1;if(J[b+4>>1]==12){break b}o5(H[33808],8,9281,815,62716,0);break a}c=J[b+4>>1]==12}if(!(!H[a+4656>>2]|!c)){o5(H[33808],8,9281,821,64751,0);break a}c:{d:{e:{c=Ra[H[H[b>>2]+100>>2]](b)|0;switch(H[c+4>>2]>>>30|0){case 0:break d;case 3:break e;default:break c}}if((H[c>>2]-16|0)!=(a|0)){break c}}mp(a,b);break a}o5(H[33808],8,9281,832,65093,0)}Oa=d+16|0}function eh(a){a=a|0;var b=0,c=0,d=0,e=0;d=Oa-16|0;Oa=d;an(H[33772],a,H[a+8>>2],1);b=H[a+100>>2];if(b){while(1){c=(c>>>0)%(b>>>0)|0;b=c<<2;e=H[b+H[a+96>>2]>>2];a:{if(!(Ra[H[H[e>>2]+260>>2]](e)|0)){Oh(H[b+H[a+96>>2]>>2]);break a}c=c+1|0}b=H[a+100>>2];if(b){continue}break}}c=a+12|0;b:{if((H[a+16>>2]>>>30|0)-3>>>0<4294967294){break b}b=H[a+12>>2];if(!b){break b}b=b-16|0;if(!b){break b}Nt(b+16|0,c);H[d+12>>2]=a;Pf(b+5944|0,d+12|0)}H[a+100>>2]=0;wt(c);Oa=d+16|0}function F3(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=O(0),h=O(0),i=O(0);f=Oa+-64|0;Oa=f;$1(f+32|0,f,b,c,d);if(e&1){Ra[H[H[a>>2]+8>>2]](a,f+32|0,f)}a:{if(!(e&2)){break a}d=J[b+100>>1];if(!(d&6)){break a}e=d&4;c=65280;g=O(L[f+24>>2]-L[f+56>>2]);h=O(g*g);g=O(L[f+16>>2]-L[f+48>>2]);i=O(g*g);g=O(L[f+20>>2]-L[f+52>>2]);g=O(W(O(h+O(i+O(g*g)))));c=!(d&2)|!(g>L[b+84>>2])?c:16711680;Ra[H[H[a>>2]+28>>2]](a,f+48|0,f+16|0,!e|!(g>2])?c:255)}Oa=f- -64|0}function xE(a,b,c){var d=0,e=0,f=0;if((H[a+8>>2]&2147483647)>>>0>>0){wE(a,b)}d=H[a+4>>2];if((d|0)<(b|0)){e=H[a>>2];f=e+N(b,44)|0;d=N(d,44)+e|0;while(1){e=H[c+4>>2];H[d>>2]=H[c>>2];H[d+4>>2]=e;H[d+40>>2]=H[c+40>>2];e=H[c+36>>2];H[d+32>>2]=H[c+32>>2];H[d+36>>2]=e;e=H[c+28>>2];H[d+24>>2]=H[c+24>>2];H[d+28>>2]=e;e=H[c+20>>2];H[d+16>>2]=H[c+16>>2];H[d+20>>2]=e;e=H[c+12>>2];H[d+8>>2]=H[c+8>>2];H[d+12>>2]=e;d=d+44|0;if(f>>>0>d>>>0){continue}break}}H[a+4>>2]=b}function Hg(a,b){a=a|0;b=b|0;var c=0,d=0;if(H[a+24>>2]){a=H[b+52>>2];if(a){c=H[a+12>>2];a:{if((c|0)<0|!(c&2147483647)){break a}c=H[a+4>>2];if(!c){break a}d=H[33808];Ra[H[H[d+12>>2]+12>>2]](d+12|0,c)}a=H[a>>2];if(a){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,a)}a=H[b+52>>2];if(a){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,a)}H[b+52>>2]=0}a=H[b+48>>2];if(a){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,a);H[b+48>>2]=0}a=H[33808];Ra[H[H[a+12>>2]+12>>2]](a+12|0,b)}}function Bj(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;H[H[a+12>>2]+4>>2]=d;g=H[a+12>>2];a=H[g+100>>2];f=H[a+20>>2];d=f+1|0;e=H[a+24>>2]&2147483647;a:{if(d>>>0<=e>>>0){break a}h=e;e=e?e<<1:2;e=d>>>0>>0?e:d;if(h>>>0>=e>>>0){break a}Cj(a+16|0,e);f=H[a+20>>2]}H[a+20>>2]=d;a=H[a+16>>2]+(f<<5)|0;L[a>>2]=L[b>>2];L[a+4>>2]=L[b+4>>2];L[a+8>>2]=L[b+8>>2];L[a+16>>2]=L[c>>2];L[a+20>>2]=L[c+4>>2];L[a+24>>2]=L[c+8>>2];b=H[g+4>>2];H[a+12>>2]=b;H[a+28>>2]=b}function yP(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;b=Oa-2064|0;Oa=b;f=H[a+1060>>2];H[b+12>>2]=0;c=H[a+1052>>2];a:{if(!c){break a}e=a+28|0;while(1){c=c-1|0;d=H[e>>2]>>>7|0;b:{if(H[H[f+196>>2]+(d<<2)>>2]==33554431){break b}d=H[f+184>>2]+N(d,24)|0;if(I[d+5|0]){break b}sG(H[d+20>>2]+-64|0,L[a+1056>>2],b+1040|0,b+16|0,b+12|0,0,0,I[a+1068|0])}e=e+4|0;if(c){continue}break}c=H[b+12>>2];if(!c){break a}a=H[a+1064>>2];Ra[H[H[a>>2]+52>>2]](a,b+1040|0,b+16|0,c)}Oa=b+2064|0}function oS(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=O(d);e=O(e);f=f|0;g=g|0;var h=0,i=0,j=0,k=O(0),l=0;j=Oa+-64|0;Oa=j;h=j+8|0;H[h+36>>2]=2;H[h>>2]=125364;H[h+36>>2]=0;H[h>>2]=125300;i=H[b+460>>2];H[h+24>>2]=H[b+456>>2];H[h+28>>2]=i;i=H[b+452>>2];H[h+16>>2]=H[b+448>>2];H[h+20>>2]=i;i=H[b+444>>2];H[h+8>>2]=H[b+440>>2];H[h+12>>2]=i;i=H[b+540>>2];l=H[b+536>>2];k=L[b+532>>2];L[h+40>>2]=k;H[h+44>>2]=l;H[h+48>>2]=i;L[h+32>>2]=k;kS(a,b+8|0,h,c,d,e,f,g,0);Oa=j- -64|0}function bf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;g=H[a+8>>2];a=Oa-32|0;Oa=a;a:{if(F[134028]&1){e=H[33506];break a}e=pa(3,100776)|0;F[134028]=1;H[33506]=e}d=o6(16);H[d>>2]=H[b>>2];H[d+4>>2]=H[b+4>>2];H[d+8>>2]=H[b+8>>2];H[d+12>>2]=H[b+12>>2];H[a+16>>2]=d;b=o6(12);H[b+8>>2]=H[c+8>>2];d=H[c+4>>2];H[b>>2]=H[c>>2];H[b+4>>2]=d;H[a+24>>2]=b;f=+ra(e|0,g|0,4066,a+12|0,a+16|0);sa(H[a+12>>2]);Oa=a+32|0;if(P(f)<2147483648){a=~~f}else{a=-2147483648}return a|0}function Vo(a,b){a=a|0;b=b|0;var c=0,d=0;c=H[b>>2];a:{if(!c){c=0;break a}if((H[a+5940>>2]&2147483647)>>>0>=c>>>0){break a}Qo(a+5932|0,c);c=H[b>>2]}ON(a+32|0,c,H[b+4>>2],H[b+8>>2],H[b+12>>2]);d=H[b+28>>2];c=a+1076|0;H[c>>2]=H[b+24>>2];H[c+4>>2]=d;d=H[b+20>>2];c=a+1068|0;H[c>>2]=H[b+16>>2];H[c+4>>2]=d;d=H[b+12>>2];c=a+1060|0;H[c>>2]=H[b+8>>2];H[c+4>>2]=d;d=H[b+4>>2];c=a+1052|0;H[c>>2]=H[b>>2];H[c+4>>2]=d;c=H[b+12>>2];a=a+5584|0;ED(a,H[b+8>>2]);ED(a+36|0,c)}function bd(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;g=Oa+-64|0;Oa=g;H[g+40>>2]=H[e>>2];H[g+44>>2]=H[e+4>>2];H[g+48>>2]=H[e+8>>2];H[g+52>>2]=H[e+12>>2];G[g+56>>1]=J[e+16>>1]|48;H[g+12>>2]=-1;H[g+32>>2]=0;H[g+24>>2]=0;H[g+28>>2]=0;F[g+20|0]=0;H[g+4>>2]=0;H[g+8>>2]=0;H[g>>2]=124172;Ra[H[H[a>>2]+356>>2]](a,b,c,g,g+40|0,f)|0;a=H[g+16>>2];H[d+8>>2]=H[g+12>>2];H[d+12>>2]=a;a=H[g+8>>2];H[d>>2]=H[g+4>>2];H[d+4>>2]=a;Oa=g- -64|0;return I[g+20|0]}function bB(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0;b=H[a+40>>2];a:{if(!b){break a}d=H[a+44>>2];if((b|0)!=1){h=b&-2;while(1){c=e<<2;f=H[c+d>>2];if((J[f+4>>1]-5&65535)>>>0<=1){H[f+40>>2]=0}c=H[(c|4)+d>>2];if((J[c+4>>1]-5&65535)>>>0<=1){H[c+40>>2]=0}e=e+2|0;g=g+2|0;if((h|0)!=(g|0)){continue}break}}if(!(b&1)){break a}b=H[(e<<2)+d>>2];if((J[b+4>>1]-5&65535)>>>0>1){break a}H[b+40>>2]=0}if(F[a+6|0]&1){Ra[H[H[a>>2]+16>>2]](a);return}Ra[H[H[a>>2]+12>>2]](a)|0}function _4(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=O(0),g=O(0),h=O(0),i=O(0),j=0,k=O(0),l=O(0);e=Oa-128|0;Oa=e;S3(a,b,c,e+96|0,e- -64|0,e+32|0);f=L[e+56>>2];h=L[e+48>>2];i=L[e+52>>2];k=O(O(f*f)+O(O(h*h)+O(i*i)));g=L[a+108>>2];if(k>O(g*g)){l=f;f=O(O(1)/O(W(k)));L[e+24>>2]=g*O(l*f);L[e+20>>2]=g*O(i*f);j=H[e+36>>2];H[e>>2]=H[e+32>>2];H[e+4>>2]=j;j=H[e+44>>2];H[e+8>>2]=H[e+40>>2];H[e+12>>2]=j;L[e+16>>2]=g*O(h*f);f2(b,c,e+96|0,e- -64|0,e,a,d)}Oa=e+128|0}function ZH(a,b){var c=0,d=0,e=0,f=0,g=0;a:{if(!b){break a}c=N(b,24);if(!c){break a}e=H[a>>2];f=Ra[H[H[e>>2]+8>>2]](e,c,13582,553)|0}e=H[a+4>>2];c=H[a+8>>2];if((c|0)>0){g=N(c,24)+f|0;d=e;c=f;while(1){L[c>>2]=L[d>>2];L[c+4>>2]=L[d+4>>2];L[c+8>>2]=L[d+8>>2];L[c+12>>2]=L[d+12>>2];L[c+16>>2]=L[d+16>>2];L[c+20>>2]=L[d+20>>2];d=d+24|0;c=c+24|0;if(g>>>0>c>>>0){continue}break}}if(!(!e|H[a+12>>2]<0)){c=H[a>>2];Ra[H[H[c>>2]+12>>2]](c,e)}H[a+12>>2]=b;H[a+4>>2]=f}function Jr(a){a=a|0;var b=0,c=0;H[a>>2]=110940;b=H[a+96>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+88>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=H[a+80>>2];if((b|0)==(a+60|0)){F[a+76|0]=0;break a}if(!b){break a}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+56>>2];b:{if((b|0)<0|!(b&2147483647)){break b}b=H[a+48>>2];if((b|0)==(a+28|0)){F[a+44|0]=0;return a|0}if(!b){break b}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}return a|0}function Ru(a,b,c){var d=0,e=0,f=0,g=0,h=0;if((H[a+8>>2]&2147483647)>>>0>>0){qo(a,b)}e=H[a+4>>2];a:{if((e|0)>=(b|0)){break a}f=H[a>>2];d=e+f|0;g=b-e&7;if(g){while(1){F[d|0]=I[c|0];d=d+1|0;h=h+1|0;if((g|0)!=(h|0)){continue}break}}if((e^-1)+b>>>0<7){break a}e=b+f|0;while(1){F[d|0]=I[c|0];F[d+1|0]=I[c|0];F[d+2|0]=I[c|0];F[d+3|0]=I[c|0];F[d+4|0]=I[c|0];F[d+5|0]=I[c|0];F[d+6|0]=I[c|0];F[d+7|0]=I[c|0];d=d+8|0;if((e|0)!=(d|0)){continue}break}}H[a+4>>2]=b}function yv(a,b,c,d){var e=0,f=0;e=Oa+-64|0;Oa=e;f=H[c+4>>2];H[e+16>>2]=H[c>>2];H[e+20>>2]=f;f=H[c+12>>2];H[e+24>>2]=H[c+8>>2];H[e+28>>2]=f;f=H[c+20>>2];H[e>>2]=H[c+16>>2];H[e+4>>2]=f;f=H[c+28>>2];H[e+8>>2]=H[c+24>>2];H[e+12>>2]=f;zv(e+32|0,a,b,e+16|0,e);a=H[e+36>>2];H[d>>2]=H[e+32>>2];H[d+4>>2]=a;a=H[e+44>>2];H[d+8>>2]=H[e+40>>2];H[d+12>>2]=a;a=H[e+52>>2];H[d+16>>2]=H[e+48>>2];H[d+20>>2]=a;a=H[e+60>>2];H[d+24>>2]=H[e+56>>2];H[d+28>>2]=a;Oa=e- -64|0}function uE(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:{if(!b){break a}e=b<<2;if(!e){break a}d=H[33808];c=d+12|0;f=(i=c,j=e,k=Ra[H[H[d>>2]+20>>2]](d)|0?22342:55639,l=13582,m=553,h=H[H[c>>2]+8>>2],Ra[h](i|0,j|0,k|0,l|0,m|0)|0)}d=H[a>>2];c=H[a+4>>2];if((c|0)>0){g=(c<<2)+f|0;e=d;c=f;while(1){H[c>>2]=H[e>>2];e=e+4|0;c=c+4|0;if(g>>>0>c>>>0){continue}break}}if(!(!d|H[a+8>>2]<0)){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,d)}H[a+8>>2]=b;H[a>>2]=f}function ek(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=a+8|0;a:{b:{c:{e=H[a+12>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(I[H[d>>2]+4785|0]){break a}}L[a+296>>2]=L[b>>2];L[a+300>>2]=L[b+4>>2];L[a+304>>2]=L[b+8>>2];L[a+308>>2]=L[b+12>>2];return}c=H[a+16>>2];if(!c){c=Tt(H[a+8>>2],e>>>24&15);H[a+16>>2]=c}L[c+56>>2]=L[b>>2];L[c+60>>2]=L[b+4>>2];L[c+64>>2]=L[b+8>>2];L[c+68>>2]=L[b+12>>2];$t(H[a+8>>2],d);H[a+12>>2]=H[a+12>>2]|4}function Gv(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:{if(!b){break a}e=b<<2;if(!e){break a}d=H[33808];c=d+12|0;f=(i=c,j=e,k=Ra[H[H[d>>2]+20>>2]](d)|0?25938:55639,l=13582,m=553,h=H[H[c>>2]+8>>2],Ra[h](i|0,j|0,k|0,l|0,m|0)|0)}d=H[a>>2];c=H[a+4>>2];if((c|0)>0){g=(c<<2)+f|0;e=d;c=f;while(1){L[c>>2]=L[e>>2];e=e+4|0;c=c+4|0;if(g>>>0>c>>>0){continue}break}}if(!(!d|H[a+8>>2]<0)){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,d)}H[a+8>>2]=b;H[a>>2]=f}function Dv(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:{if(!b){break a}e=b<<2;if(!e){break a}d=H[33808];c=d+12|0;f=(i=c,j=e,k=Ra[H[H[d>>2]+20>>2]](d)|0?25032:55639,l=13582,m=553,h=H[H[c>>2]+8>>2],Ra[h](i|0,j|0,k|0,l|0,m|0)|0)}d=H[a>>2];c=H[a+4>>2];if((c|0)>0){g=(c<<2)+f|0;e=d;c=f;while(1){H[c>>2]=H[e>>2];e=e+4|0;c=c+4|0;if(g>>>0>c>>>0){continue}break}}if(!(!d|H[a+8>>2]<0)){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,d)}H[a+8>>2]=b;H[a>>2]=f}function Cq(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:{if(!b){break a}e=b<<1;if(!e){break a}d=H[33808];c=d+12|0;f=(i=c,j=e,k=Ra[H[H[d>>2]+20>>2]](d)|0?23546:55639,l=13582,m=553,h=H[H[c>>2]+8>>2],Ra[h](i|0,j|0,k|0,l|0,m|0)|0)}d=H[a>>2];c=H[a+4>>2];if((c|0)>0){g=(c<<1)+f|0;e=d;c=f;while(1){G[c>>1]=J[e>>1];e=e+2|0;c=c+2|0;if(g>>>0>c>>>0){continue}break}}if(!(!d|H[a+8>>2]<0)){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,d)}H[a+8>>2]=b;H[a>>2]=f}function Ue(a){a=a|0;H[a+96>>2]=0;H[a+72>>2]=1069547520;H[a+64>>2]=1092616192;H[a+68>>2]=1061997773;H[a+56>>2]=1036831949;H[a+60>>2]=1056964608;H[a+32>>2]=0;H[a+36>>2]=1065353216;H[a+48>>2]=0;H[a+52>>2]=0;H[a+8>>2]=0;H[a+12>>2]=0;H[a+76>>2]=0;H[a+80>>2]=0;H[a+112>>2]=1056964608;H[a+104>>2]=1065353216;H[a+108>>2]=1056964608;F[a+92|0]=1;H[a+40>>2]=0;H[a+44>>2]=1060437492;H[a+16>>2]=0;H[a+20>>2]=0;H[a+24>>2]=0;H[a+28>>2]=0;H[a+84>>2]=0;H[a+88>>2]=0}function HU(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=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0);g=O(L[d+24>>2]-L[f+24>>2]);h=O(L[d+16>>2]-L[f+16>>2]);i=O(L[d+20>>2]-L[f+20>>2]);j=O(O(g*g)+O(O(h*h)+O(i*i)));k=O(L[c+4>>2]+L[e+4>>2]);c=j>O(k*k);if(!c){m=O(W(j));n=O(1);if(!(j>2]=o;L[a+4>>2]=l;L[a>>2]=n;g=O(k-m);L[b>>2]=g>O(0)?g:O(0)}return!c|0}function Vs(a,b){a=a|0;b=O(b);var c=0,d=0,e=0,f=0;d=Oa-16|0;Oa=d;e=a+32|0;a:{b:{c:{d:{f=H[a+36>>2];c=f>>>30|0;switch(c-2|0){case 1:break b;case 0:break d;default:break c}}if(I[H[e>>2]+4785|0]){break b}}L[a+184>>2]=b;e=H[e-12>>2];if(!e|(c|0)==1){break a}F[d|0]=I[a+112|0];H[d+8>>2]=256;UI(e- -64|0,a+48|0,d+8|0,d,0);break a}c=H[a+40>>2];if(!c){c=Tt(H[a+32>>2],f>>>24&15);H[a+40>>2]=c}L[c+60>>2]=b;$t(H[a+32>>2],e);H[a+36>>2]=H[a+36>>2]|256}Oa=d+16|0}function Ts(a,b){a=a|0;b=O(b);var c=0,d=0,e=0,f=0;d=Oa-16|0;Oa=d;e=a+32|0;a:{b:{c:{d:{f=H[a+36>>2];c=f>>>30|0;switch(c-2|0){case 1:break b;case 0:break d;default:break c}}if(I[H[e>>2]+4785|0]){break b}}L[a+180>>2]=b;e=H[e-12>>2];if(!e|(c|0)==1){break a}F[d|0]=I[a+112|0];H[d+8>>2]=128;UI(e- -64|0,a+48|0,d+8|0,d,0);break a}c=H[a+40>>2];if(!c){c=Tt(H[a+32>>2],f>>>24&15);H[a+40>>2]=c}L[c+56>>2]=b;$t(H[a+32>>2],e);H[a+36>>2]=H[a+36>>2]|128}Oa=d+16|0}function Hd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Oa-16|0;Oa=d;e=a;a=H[b>>2];if((H[b+4>>2]-a|0)/48>>>0>c>>>0){b=o6(48);c=a+N(c,48)|0;L[b>>2]=L[c>>2];L[b+4>>2]=L[c+4>>2];L[b+8>>2]=L[c+8>>2];L[b+12>>2]=L[c+12>>2];L[b+16>>2]=L[c+16>>2];L[b+20>>2]=L[c+20>>2];L[b+24>>2]=L[c+24>>2];H[b+28>>2]=H[c+28>>2];L[b+32>>2]=L[c+32>>2];L[b+36>>2]=L[c+36>>2];L[b+40>>2]=L[c+40>>2];H[b+44>>2]=H[c+44>>2];H[d+8>>2]=b;a=la(99332,d+8|0)|0}else{a=1}H[e>>2]=a;Oa=d+16|0}function HR(a,b){a=a|0;b=b|0;var c=0,d=0,e=O(0),f=O(0),g=O(0);c=Oa-32|0;Oa=c;d=H[b+20>>2];H[c+24>>2]=H[b+16>>2];H[c+28>>2]=d;d=H[b+12>>2];H[c+16>>2]=H[b+8>>2];H[c+20>>2]=d;d=H[b+4>>2];H[c+8>>2]=H[b>>2];H[c+12>>2]=d;f=L[a+36>>2];g=L[a+44>>2];e=O(O(L[a+536>>2]*O(.5))+O(L[a+52>>2]+L[a+532>>2]));M[c+16>>3]=M[c+16>>3]+ +O(e*L[a+40>>2]);M[c+24>>3]=M[c+24>>3]+ +O(e*g);M[c+8>>3]=M[c+8>>3]+ +O(f*e);a=Ra[H[H[a>>2]+12>>2]](a,c+8|0)|0;Oa=c+32|0;return a|0}function Rs(a,b){a=a|0;b=O(b);var c=0,d=0,e=0,f=0;d=Oa-16|0;Oa=d;e=a+32|0;a:{b:{c:{d:{f=H[a+36>>2];c=f>>>30|0;switch(c-2|0){case 1:break b;case 0:break d;default:break c}}if(I[H[e>>2]+4785|0]){break b}}L[a+176>>2]=b;e=H[e-12>>2];if(!e|(c|0)==1){break a}F[d|0]=I[a+112|0];H[d+8>>2]=32;UI(e- -64|0,a+48|0,d+8|0,d,0);break a}c=H[a+40>>2];if(!c){c=Tt(H[a+32>>2],f>>>24&15);H[a+40>>2]=c}L[c+48>>2]=b;$t(H[a+32>>2],e);H[a+36>>2]=H[a+36>>2]|32}Oa=d+16|0}function Ps(a,b){a=a|0;b=O(b);var c=0,d=0,e=0,f=0;d=Oa-16|0;Oa=d;e=a+32|0;a:{b:{c:{d:{f=H[a+36>>2];c=f>>>30|0;switch(c-2|0){case 1:break b;case 0:break d;default:break c}}if(I[H[e>>2]+4785|0]){break b}}L[a+108>>2]=b;e=H[e-12>>2];if(!e|(c|0)==1){break a}F[d|0]=I[a+112|0];H[d+8>>2]=16;UI(e- -64|0,a+48|0,d+8|0,d,0);break a}c=H[a+40>>2];if(!c){c=Tt(H[a+32>>2],f>>>24&15);H[a+40>>2]=c}L[c+44>>2]=b;$t(H[a+32>>2],e);H[a+36>>2]=H[a+36>>2]|16}Oa=d+16|0}function zR(a){a=a|0;var b=0;a=a+96|0;a:{if(!I[a+156|0]){break a}b=H[a+152>>2];if(!b){break a}dT(H[a+160>>2],b)}H[a+152>>2]=0;b:{if(!I[a+168|0]){break b}b=H[a+164>>2];if(!b){break b}dT(H[a+172>>2],b)}H[a+176>>2]=-1;H[a+48>>2]=-1;H[a+52>>2]=2146435071;H[a+164>>2]=0;H[a+88>>2]=-1;H[a+92>>2]=-1048577;H[a+80>>2]=-1;H[a+84>>2]=-1048577;H[a+72>>2]=-1;H[a+76>>2]=-1048577;b=a- -64|0;H[b>>2]=-1;H[b+4>>2]=2146435071;H[a+56>>2]=-1;H[a+60>>2]=2146435071}function IP(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;if(H[a+52>>2]){c=H[a+40>>2];d=H[a+44>>2];e=H[a+48>>2];while(1){b=H[a+32>>2]+N(f,12)|0;b=hI(H[a+28>>2],H[a+36>>2]+(f<<3)|0,H[b+4>>2],H[b>>2],H[c>>2],H[d>>2],H[e>>2],0);a:{if(!b){break a}b:{switch(I[b+24|0]){case 0:H[d>>2]=H[d>>2]|1;d=d+4|0;if(!H[b+56>>2]){break a}H[c>>2]=H[c>>2]|1;c=c+4|0;break a;case 2:break b;default:break a}}H[e>>2]=H[e>>2]|1;e=e+4|0}f=f+1|0;if(f>>>0>2]){continue}break}}}function CT(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;e=H[a+36>>2];c=b&65535;a:{if(e>>>0<=c>>>0){break a}d=J[H[a+40>>2]+(c<<1)>>1];if((d|0)==65535|d>>>0>=e>>>0|J[H[a+48>>2]+(c<<1)>>1]!=(b>>>16|0)){break a}c=H[H[a+28>>2]+(d<<2)>>2];if(!c){break a}b=c>>>16|0;b:{switch((c&65535)-3|0){case 1:if(b>>>0>=K[a+8>>2]){break a}return(H[a+4>>2]+N(b,72)|0)+8|0;case 0:break b;default:break a}}if(b>>>0>=K[a+20>>2]){break a}f=(H[a+16>>2]+(b<<6)|0)+8|0}return f|0}function pS(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=O(d);e=O(e);f=f|0;g=g|0;var h=0,i=0,j=O(0),k=O(0);h=Oa-48|0;Oa=h;H[h+36>>2]=2;H[h>>2]=125364;H[h+36>>2]=1;H[h>>2]=125332;i=H[b+460>>2];H[h+24>>2]=H[b+456>>2];H[h+28>>2]=i;i=H[b+452>>2];H[h+16>>2]=H[b+448>>2];H[h+20>>2]=i;i=H[b+444>>2];H[h+8>>2]=H[b+440>>2];H[h+12>>2]=i;j=L[b+532>>2];L[h+40>>2]=j;k=L[b+536>>2];L[h+44>>2]=k;L[h+32>>2]=j+O(k*O(.5));kS(a,b+8|0,h,c,d,e,f,g,H[b+540>>2]==1);Oa=h+48|0}function YN(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;f=H[b+8>>2];c=I[b+20|0];e=N(c,12)+a|0;d=H[e+56>>2]-1|0;H[e+56>>2]=d;h=H[e+52>>2];g=f<<2;H[h+g>>2]=H[(d<<2)+h>>2];H[b+8>>2]=-1;if(d>>>0>f>>>0){H[H[H[e+52>>2]+g>>2]+8>>2]=f}a=(c<<2)+a|0;b=H[a+88>>2];a:{if(b>>>0<=f>>>0){break a}c=a;a=b-1|0;H[c+88>>2]=a;if(a>>>0>=K[e+56>>2]){break a}d=H[e+52>>2];c=d+(f<<2)|0;b=H[c>>2];g=c;c=d;d=a<<2;c=H[c+d>>2];H[g>>2]=c;H[d+H[e+52>>2]>>2]=b;H[b+8>>2]=a;H[c+8>>2]=f}}function MJ(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;b=b+1|0;e=H[a+4>>2];c=e?e<<1:256;c=b>>>0>c>>>0?b:c;d=(c|0)!=(c&1073741823)?-1:c<<2;if(d){b=H[33808];f=b+12|0;b=(h=f,i=d,j=Ra[H[H[b>>2]+20>>2]](b)|0?25718:55639,k=10647,l=949,g=H[H[f>>2]+8>>2],Ra[g](h|0,i|0,j|0,k|0,l|0)|0)}else{b=0}if(c){S6(b,255,c<<2)}d=H[a>>2];a:{if(!d){break a}R6(b,d,e<<2);e=H[a>>2];if(!e){break a}d=H[33808]+12|0;Ra[H[H[d>>2]+12>>2]](d,e)}H[a+4>>2]=c;H[a>>2]=b}function LJ(a,b){var c=0,d=0,e=0,f=0;e=H[a>>2];if(e>>>0>>0){d=H[a+12>>2];if(d){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,d);H[a+12>>2]=0}d=H[a+8>>2];if(d){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,d);H[a+8>>2]=0}d=0;c=(b<<3)+48|0;if(c){f=H[33808]+12|0;c=Ra[H[H[f>>2]+8>>2]](f,c,20591,10647,643)|0}else{c=0}H[a+8>>2]=c;c=b<<4;if(c){d=H[33808]+12|0;d=Ra[H[H[d>>2]+8>>2]](d,c,20591,10647,644)|0}H[a+4>>2]=b;H[a+12>>2]=d;H[a>>2]=b}return b>>>0>e>>>0}function ED(a,b){var c=0,d=0,e=0,f=0;c=H[a+8>>2];a:{if(c<<5>>>0>=b>>>0){break a}e=b+31>>>5|0;if(e>>>0<=(c&2147483647)>>>0){break a}c=H[33808]+12|0;c=Ra[H[H[c>>2]+8>>2]](c,e<<2,20591,14969,438)|0;d=H[a+4>>2];b:{if(!d){break b}R6(c,d,H[a+8>>2]<<2);if(H[a+8>>2]<0){break b}d=H[a+4>>2];if(!d){break b}f=H[33808]+12|0;Ra[H[H[f>>2]+12>>2]](f,d)}d=H[a+8>>2];S6(c+(d<<2)|0,0,e-d<<2);H[a+8>>2]=e;H[a+4>>2]=c}a=H[a>>2];if(a){Ra[H[H[a>>2]+44>>2]](a,b)}}function WS(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0;b=H[a+12>>2];if(!b){b=H[33808];c=b+12|0;b=(e=c,f=64,g=Ra[H[H[b>>2]+20>>2]](b)|0?30422:55639,h=7031,i=97,d=H[H[c>>2]+8>>2],Ra[d](e|0,f|0,g|0,h|0,i|0)|0);H[b+4>>2]=0;H[b+8>>2]=0;H[b>>2]=110736;H[b+12>>2]=0;H[b+16>>2]=0;H[b+20>>2]=0;H[b+24>>2]=0;H[b+28>>2]=0;H[b+32>>2]=0;H[b+36>>2]=0;H[b+40>>2]=0;H[b+44>>2]=0;H[b+48>>2]=0;H[b+52>>2]=0;H[b+56>>2]=0;H[b+60>>2]=0;H[a+12>>2]=b}return b|0}function lI(a,b,c){var d=0,e=0,f=0,g=0;a:{if(!H[a+1992>>2]){break a}d=b>>>0>c>>>0;e=d?b:c;c=d?c:b;b=e<<14&-65536|c>>>2&65535;b=(b<<15^-1)+b|0;b=N(b>>>10^b,9);b=b>>>6^b;b=(b<<11^-1)+b|0;b=H[H[a+1968>>2]+((H[a+1976>>2]-1&(b>>>16^b))<<2)>>2];if((b|0)==-1){break a}d=H[a+1964>>2];a=H[a+1960>>2];while(1){f=a+N(b,12)|0;if(!((c|0)==H[f>>2]&H[f+4>>2]==(e|0))){b=H[d+(b<<2)>>2];if((b|0)!=-1){continue}break a}break}g=H[(a+N(b,12)|0)+8>>2]}return g}function oH(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;c=H[a+12>>2]&2147483647;g=c?c<<1:1;a:{if(!g){break a}c=g<<2;if(!c){break a}e=H[a>>2];e=Ra[H[H[e>>2]+8>>2]](e,c,13582,553)|0}c=H[a+4>>2];d=H[a+8>>2];if((d|0)>0){h=(d<<2)+e|0;d=c;f=e;while(1){H[f>>2]=H[d>>2];d=d+4|0;f=f+4|0;if(h>>>0>f>>>0){continue}break}d=H[a+8>>2]}H[(d<<2)+e>>2]=H[b>>2];if(!(!c|H[a+12>>2]<0)){b=H[a>>2];Ra[H[H[b>>2]+12>>2]](b,c)}H[a+12>>2]=g;H[a+4>>2]=e;H[a+8>>2]=H[a+8>>2]+1}function wU(a,b){var c=O(0),d=O(0),e=O(0),f=O(0),g=O(0);d=L[a>>2];e=L[a+4>>2];c=L[a+8>>2];L[b+8>>2]=c;L[b+4>>2]=e;L[b>>2]=d;f=L[a+12>>2];L[b+20>>2]=c;L[b+16>>2]=e;L[b+12>>2]=f;g=L[a+16>>2];L[b+44>>2]=c;L[b+40>>2]=g;L[b+36>>2]=d;L[b+32>>2]=c;L[b+28>>2]=g;L[b+24>>2]=f;c=L[a+20>>2];L[b+92>>2]=c;L[b+88>>2]=g;L[b+84>>2]=d;L[b+80>>2]=c;L[b+76>>2]=g;L[b+72>>2]=f;L[b+68>>2]=c;L[b- -64>>2]=e;L[b+60>>2]=f;L[b+56>>2]=c;L[b+52>>2]=e;L[b+48>>2]=d}function uI(a,b,c,d){var e=0,f=0;e=Oa-16|0;Oa=e;f=UG(a+4|0,H[b+4>>2],H[c+4>>2],2,5);H[a+36>>2]=-1;H[a+32>>2]=c;H[a+28>>2]=b;H[a>>2]=115984;a:{if(d){break a}WO(f);WD(H[f>>2],f);WD(H[a+8>>2],f);VN(H[H[f>>2]+40>>2],f,0);f=H[H[H[f>>2]+40>>2]+2168>>2];b=H[a+28>>2];c=H[a+32>>2];d=b>>>0>c>>>0;H[e+4>>2]=d?b:c;H[e>>2]=d?c:b;b=jI(f+1956|0,e,e+15|0);if(I[e+15|0]){break a}c=H[e+4>>2];d=H[e>>2];H[b+8>>2]=a;H[b>>2]=d;H[b+4>>2]=c}Oa=e+16|0;return a}function og(a,b){var c=0,d=0,e=0,f=0,g=0;a:{d=H[a+4>>2];b:{if(!d){break b}e=H[d+40>>2];if(!e){break b}f=H[d+36>>2];while(1){g=(c<<3)+f|0;if(I[g|0]!=1){c=c+1|0;if((e|0)!=(c|0)){continue}break b}break}c=(c<<3)+f|0;if(H[c+4>>2]){break a}}lg(a,1,b);return}c:{if(!b){b=e-1|0;H[d+40>>2]=b;b=(b<<3)+f|0;d=H[b+4>>2];H[g>>2]=H[b>>2];H[g+4>>2]=d;b=H[a+4>>2];if(H[b+40>>2]){break c}if(H[b+44>>2]>=0){Ul(H[33768],b)}H[a+4>>2]=0;return}H[c+4>>2]=b}}function it(a,b){var c=0,d=0,e=0,f=0;c=Oa-16|0;Oa=c;if(J[a+4>>1]>=2){Ra[H[H[b>>2]+12>>2]](b,16);Ra[H[H[b>>2]+8>>2]](b,H[a>>2],J[a+4>>1]<<2)}a=J[a+4>>1];a:{if(a>>>0<2){break a}Ra[H[H[b>>2]+12>>2]](b,16);e=a&65534;f=a&1;a=0;while(1){H[c+12>>2]=-1;d=c+12|0;Ra[H[H[b>>2]+8>>2]](b,d,4);H[c+12>>2]=-1;Ra[H[H[b>>2]+8>>2]](b,d,4);a=a+2|0;if((e|0)!=(a|0)){continue}break}if(!f){break a}H[c+12>>2]=-1;Ra[H[H[b>>2]+8>>2]](b,c+12|0,4)}Oa=c+16|0}function io(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;d=Oa-16|0;Oa=d;ho(a,(I[b|0]&8)>>>3|0);a=H[((J[a+4>>1]<<2)+73232|0)+72>>2]+a|0;c=H[a+4>>2];e=c>>>24&15;f=H[((e<<2)+76348|0)+12>>2];b=I[b|0];a:{b:{c:{switch((c>>>30|0)-2|0){case 0:if(I[H[a>>2]+4785|0]){break b}break;case 1:break b;default:break c}}F[d+8|0]=b;RD(a+f|0,d+8|0);break a}c=H[a+8>>2];if(!c){c=Tt(H[a>>2],e);H[a+8>>2]=c}F[c|0]=b;$t(H[a>>2],a);H[a+4>>2]=H[a+4>>2]|1}Oa=d+16|0}function Tn(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;d=Oa-16|0;Oa=d;Sn(a,(I[b|0]&8)>>>3|0);a=H[((J[a+4>>1]<<2)+73232|0)+72>>2]+a|0;c=H[a+4>>2];e=c>>>24&15;f=H[((e<<2)+76348|0)+12>>2];b=I[b|0];a:{b:{c:{switch((c>>>30|0)-2|0){case 0:if(I[H[a>>2]+4785|0]){break b}break;case 1:break b;default:break c}}F[d+8|0]=b;RD(a+f|0,d+8|0);break a}c=H[a+8>>2];if(!c){c=Tt(H[a>>2],e);H[a+8>>2]=c}F[c|0]=b;$t(H[a>>2],a);H[a+4>>2]=H[a+4>>2]|1}Oa=d+16|0}function Jq(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;if(!I[a+4801|0]){OO(a+32|0,b,c,d);return}e=(((b>>>0>>0?b:c)<<2)+a|0)+5296|0;H[e>>2]=H[e>>2]|1<<(b>>>0>c>>>0?b:c);e=1<>2]=e|H[f>>2];break a}f=((b<<2)+a|0)+5420|0;H[f>>2]=H[f>>2]&(e^-1)}b=1<>2]=b|H[c>>2];break b}c=((c<<2)+a|0)+5420|0;H[c>>2]=H[c>>2]&(b^-1)}a=a+5580|0;H[a>>2]=H[a>>2]|8}function Ii(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;d=Oa-16|0;Oa=d;Gi(a,(I[b|0]&8)>>>3|0);a=H[((J[a+4>>1]<<2)+73232|0)+72>>2]+a|0;c=H[a+4>>2];e=c>>>24&15;f=H[((e<<2)+76348|0)+12>>2];b=I[b|0];a:{b:{c:{switch((c>>>30|0)-2|0){case 0:if(I[H[a>>2]+4785|0]){break b}break;case 1:break b;default:break c}}F[d+8|0]=b;RD(a+f|0,d+8|0);break a}c=H[a+8>>2];if(!c){c=Tt(H[a>>2],e);H[a+8>>2]=c}F[c|0]=b;$t(H[a>>2],a);H[a+4>>2]=H[a+4>>2]|1}Oa=d+16|0}function I5(a,b){var c=0,d=0,e=0,f=0;c=Oa-16|0;Oa=c;d=H[a+72>>2];a:{if(I[a+76|0]){break a}if((b|0)==-1){while(1){if(I[a+76|0]){break a}if((d|0)==H[a+72>>2]){continue}break a}}wa(c|0,0)|0;e=(b>>>0)/1e3|0;f=H[c+4>>2]+N(N(e,-1e3)+b|0,1e3)|0;b=(f>>>0)/1e6|0;H[c+8>>2]=b+(e+H[c>>2]|0);H[c+12>>2]=N(f+N(b,-1e6)|0,1e3);while(1){if(I[a+76|0]){break a}if((d|0)==H[a+72>>2]){continue}break}}b=1;Oa=c+16|0;return I[a+76|0]?b:H[a+72>>2]!=(d|0)}function af(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;e=Oa-32|0;Oa=e;g=H[a+8>>2];h=H[H[c+8>>2]>>2];a:{if(F[134020]&1){a=H[33504];break a}a=pa(4,100752)|0;F[134020]=1;H[33504]=a}c=o6(16);H[c>>2]=H[b>>2];H[c+4>>2]=H[b+4>>2];H[c+8>>2]=H[b+8>>2];H[c+12>>2]=H[b+12>>2];H[e+24>>2]=d;H[e+16>>2]=h;H[e+8>>2]=c;f=+ra(a|0,g|0,4077,e+4|0,e+8|0);sa(H[e+4>>2]);Oa=e+32|0;if(P(f)<2147483648){a=~~f}else{a=-2147483648}return a|0}function Mr(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;b=H[a+20>>2]-1|0;H[a+20>>2]=b;if(!b){H[a+20>>2]=H[a+20>>2]+1;b=0;F[a+92|0]=0;c=H[a+52>>2];if(c){f=a+60|0;while(1){e=H[a+48>>2]+(b<<2)|0;d=H[a+84>>2];a:{if(d>>>0>=(H[a+88>>2]&2147483647)>>>0){Nr(f,e);c=H[a+52>>2];break a}H[H[a+80>>2]+(d<<2)>>2]=H[e>>2];H[a+84>>2]=d+1}b=b+1|0;if(c>>>0>b>>>0){continue}break}}H[a+52>>2]=0;b=H[a+16>>2];b=Ra[H[H[b>>2]+4>>2]](b)|0;Ra[H[H[b>>2]>>2]](b,a)}}function sD(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;f=H[a+652>>2];e=(c<<15^-1)+c|0;e=N(e>>>10^e,9);e=e>>>6^e;e=(e<<11^-1)+e|0;e=H[H[a+660>>2]+((H[a+668>>2]-1&(e>>>16^e))<<2)>>2];if(H[f+(e<<3)>>2]!=(c|0)){g=H[a+656>>2];while(1){e=H[(e<<2)+g>>2];if(H[(e<<3)+f>>2]!=(c|0)){continue}break}}a=H[(H[a+644>>2]+N(H[((e<<3)+f|0)+4>>2],44)|0)+4>>2];b=H[H[a+16>>2]+(b<<2)>>2];H[d>>2]=H[a+8>>2]+N(b,24);return H[a+12>>2]+(b<<3)|0}function rV(a,b,c){a=a|0;b=b|0;c=c|0;var d=O(0),e=O(0),f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0),n=O(0),o=O(0);b=H[b+4>>2];g=L[b- -64>>2];h=L[b+80>>2];i=L[b+84>>2];j=L[b+52>>2];k=L[b+68>>2];l=L[b+88>>2];c=H[b+152>>2]+N(c,12)|0;d=L[c+8>>2];m=L[b+56>>2];e=L[c>>2];n=L[b+72>>2];f=L[c+4>>2];o=L[b+48>>2];H[a+12>>2]=0;L[a+8>>2]=O(l*d)+O(O(m*e)+O(f*n));L[a+4>>2]=O(i*d)+O(O(j*e)+O(f*k));L[a>>2]=O(h*d)+O(O(o*e)+O(f*g))}function z1(a){a=a|0;var b=O(0),c=0,d=O(0),e=O(0),f=O(0),g=O(0),h=O(0),i=O(0),j=O(0);c=Oa-32|0;Oa=c;Ra[H[H[a>>2]+40>>2]](c,a);b=L[c+12>>2];h=L[c+8>>2];i=L[c+4>>2];g=O(1);d=L[c>>2];if(d!=O(0)){e=O(O(1)/O(W(O(O(b*b)+O(O(O(d*d)+O(0))+O(0))))));g=O(b*e);f=O(e*O(0));e=O(d*e)}j=O(O(e*i)+O(O(O(h*g)-O(b*f))-O(d*f)));b=O(O(h*f)+O(O(i*f)+O(O(b*g)+O(d*e))));a=b>2]+40>>2]](c,a);b=L[c+12>>2];h=L[c+8>>2];i=L[c+4>>2];g=O(1);d=L[c>>2];if(d!=O(0)){e=O(O(1)/O(W(O(O(b*b)+O(O(O(d*d)+O(0))+O(0))))));g=O(b*e);f=O(e*O(0));e=O(d*e)}j=O(O(f*d)+O(O(O(i*g)-O(b*f))-O(h*e)));b=O(O(h*f)+O(O(i*f)+O(O(b*g)+O(d*e))));a=b>2];H[c+24>>2]=H[b+16>>2];H[c+28>>2]=d;d=H[b+12>>2];H[c+16>>2]=H[b+8>>2];H[c+20>>2]=d;d=H[b+4>>2];H[c+8>>2]=H[b>>2];H[c+12>>2]=d;f=L[a+36>>2];g=L[a+44>>2];e=O(L[a+532>>2]+L[a+52>>2]);M[c+16>>3]=M[c+16>>3]+ +O(e*L[a+40>>2]);M[c+24>>3]=M[c+24>>3]+ +O(e*g);M[c+8>>3]=M[c+8>>3]+ +O(f*e);a=Ra[H[H[a>>2]+12>>2]](a,c+8|0)|0;Oa=c+32|0;return a|0}function Kr(a){a=a|0;var b=0,c=0;H[a>>2]=110940;b=H[a+96>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+88>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=H[a+80>>2];if((b|0)==(a+60|0)){F[a+76|0]=0;break a}if(!b){break a}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+56>>2];b:{if((b|0)<0|!(b&2147483647)){break b}b=H[a+48>>2];if((b|0)==(a+28|0)|!b){break b}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}N6(a)}function At(a,b,c){var d=0;d=Oa-16|0;Oa=d;a:{if((H[b+4>>2]&-1073741824)!=-2147483648){break a}b:{if(c){c=Jn(b,d+12|0,d+11|0);LO(a+16|0,H[((H[b+4>>2]>>>22&60)+76348|0)+12>>2]+b|0,H[d+12>>2],c,0,I[d+11|0]);break b}c=$n(b,d+12|0);JO(a+16|0,H[((H[b+4>>2]>>>22&60)+76348|0)+12>>2]+b|0,H[d+12>>2],c,0)}if(!c){break a}b=0;while(1){a=H[H[d+12>>2]+(b<<2)>>2]+16|0;H[a>>2]=H[a>>2]+1;b=b+1|0;if((c|0)!=(b|0)){continue}break}}Oa=d+16|0}function rn(a,b){var c=O(0),d=O(0);a:{c=L[b+260>>2];a=H[H[((J[a+4>>1]<<2)+73232|0)+72>>2]+a>>2];if(a){a=a-16|0}else{a=0}d=L[a+5148>>2];a=c>2]?1:a)){break a}c=a?d:c;b:{c:{switch((H[b+4>>2]>>>30|0)-2|0){case 0:a=H[b>>2];if(I[a+4785|0]){break b}default:L[b+260>>2]=c;H[b+264>>2]=0;WF(b+16|0,c,1);return;case 1:break c}}a=H[b>>2]}L[b+260>>2]=c;H[b+264>>2]=0;$t(a,b);H[b+268>>2]=H[b+268>>2]&-117440513|83886080}}function Se(a){a=a|0;H[a+96>>2]=0;H[a+72>>2]=1069547520;H[a+64>>2]=1092616192;H[a+68>>2]=1061997773;H[a+56>>2]=1036831949;H[a+60>>2]=1056964608;H[a+32>>2]=0;H[a+36>>2]=1065353216;H[a+48>>2]=0;H[a+52>>2]=0;H[a+8>>2]=0;H[a+12>>2]=0;H[a+76>>2]=0;H[a+80>>2]=0;H[a+104>>2]=0;H[a+108>>2]=0;H[a+112>>2]=0;F[a+92|0]=1;H[a+40>>2]=0;H[a+44>>2]=1060437492;H[a+16>>2]=0;H[a+20>>2]=0;H[a+24>>2]=0;H[a+28>>2]=0;H[a+84>>2]=0;H[a+88>>2]=0}function gJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;a:{b:{if(!H[a+48>>2]){break b}f=H[a+32>>2];e=5381;c=I[b|0];if(c){d=b;while(1){e=N(e,33)^c&255;c=I[d+1|0];d=d+1|0;if(c){continue}break}}c=H[H[a+24>>2]+((f-1&e)<<2)>>2];if((c|0)==-1){break b}e=H[a+20>>2];d=H[a+16>>2];while(1){if(!_5(H[d+(c<<3)>>2],b)){break a}c=H[e+(c<<2)>>2];if((c|0)!=-1){continue}break}}return Ra[H[H[a>>2]+28>>2]](a,0,b,1)|0}return H[(d+(c<<3)|0)+4>>2]}function AF(a){var b=0,c=0,d=0,e=0,f=0;c=Oa-16|0;Oa=c;b=H[33808];d=Ra[H[H[b>>2]+20>>2]](b)|0?33606:55639;e=a,f=Ra[H[H[b+12>>2]+8>>2]](b+12|0,28,d,13721,113)|0,H[e>>2]=f;b=Oa-16|0;Oa=b;Oa=b+16|0;H[a+20>>2]=0;H[a+12>>2]=0;H[a+16>>2]=0;H[a+4>>2]=0;H[a+8>>2]=0;d=a+4|0;Fx(d,64);H[c+12>>2]=0;b=H[a+8>>2];a:{if(b>>>0>=(H[a+12>>2]&2147483647)>>>0){Xr(d,c+12|0);break a}H[H[a+4>>2]+(b<<2)>>2]=0;H[a+8>>2]=b+1}Oa=c+16|0;return a}function me(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;c=H[a+4>>2];if((c|0)!=H[a+8>>2]){H[c>>2]=H[b>>2];H[a+4>>2]=c+4;return}a:{f=H[a>>2];g=c-f|0;e=g>>2;c=e+1|0;if(c>>>0<1073741824){d=g>>1;d=e>>>0<536870911?c>>>0>d>>>0?c:d:1073741823;if(d){if(d>>>0>=1073741824){break a}c=o6(d<<2)}else{c=0}e=c+(e<<2)|0;H[e>>2]=H[b>>2];if((g|0)>0){R6(c,f,g)}H[a+8>>2]=c+(d<<2);H[a+4>>2]=e+4;H[a>>2]=c;if(f){N6(f)}return}q6();X()}ka();X()}function ZJ(a,b,c,d){var e=0,f=0,g=0,h=0;h=a+316|0;if(K[a+320>>2]>>0){MJ(h,d)}e=H[a+328>>2];if(e>>>0<=d>>>5>>>0){d=(d+128>>>5|0)+((d&31)!=0)|0;if(d){e=H[33808]+12|0;g=Ra[H[H[e>>2]+8>>2]](e,d<<2,20591,10647,855)|0;e=H[a+328>>2]}if(e){R6(g,H[a+324>>2],e<<2);f=H[a+328>>2]}e=d-f|0;if(e){S6((f<<2)+g|0,0,e<<2)}e=H[a+324>>2];if(e){f=H[33808]+12|0;Ra[H[H[f>>2]+12>>2]](f,e)}H[a+328>>2]=d;H[a+324>>2]=g}PJ(a+224|0,b,c,h)}function Qt(a,b){var c=0,d=0;c=Oa-16|0;Oa=c;a:{if(!I[a+4785|0]){UO(a+16|0,H[b+16>>2]);H[b>>2]=0;H[b+4>>2]=H[b+4>>2]&268435455;break a}d=a+5092|0;b:{c:{a=H[b+4>>2];switch((a>>>30|0)-1|0){case 1:break b;case 0:break c;default:break a}}H[b+4>>2]=a&1073741823;H[c+4>>2]=b;Pf(d,c+4|0);break a}H[b+4>>2]=a|-1073741824;if(a&268435456){break a}H[c+8>>2]=b;a=rg(d,c+8|0,c+15|0);if(I[c+15|0]){break a}H[a>>2]=H[c+8>>2]}Oa=c+16|0}function sM(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;f=H[c+4624>>2];a:{if(!f){break a}a=J[a+34>>1];c=0;if(f-1>>>0>=3){j=f&-4;e=b<<1;while(1){g=c<<2;G[e+(g+d|0)>>1]=a;G[e+((g|4)+d|0)>>1]=a;G[e+((g|8)+d|0)>>1]=a;G[e+((g|12)+d|0)>>1]=a;c=c+4|0;h=h+4|0;if((j|0)!=(h|0)){continue}break}}e=f&3;if(!e){break a}while(1){G[((c<<2)+d|0)+(b<<1)>>1]=a;c=c+1|0;i=i+1|0;if((e|0)!=(i|0)){continue}break}}return 1}function YJ(a,b,c,d){var e=0,f=0,g=0,h=0;h=a+316|0;if(K[a+320>>2]>>0){MJ(h,d)}e=H[a+328>>2];if(e>>>0<=d>>>5>>>0){d=(d+128>>>5|0)+((d&31)!=0)|0;if(d){e=H[33808]+12|0;g=Ra[H[H[e>>2]+8>>2]](e,d<<2,20591,10647,855)|0;e=H[a+328>>2]}if(e){R6(g,H[a+324>>2],e<<2);f=H[a+328>>2]}e=d-f|0;if(e){S6((f<<2)+g|0,0,e<<2)}e=H[a+324>>2];if(e){f=H[33808]+12|0;Ra[H[H[f>>2]+12>>2]](f,e)}H[a+328>>2]=d;H[a+324>>2]=g}PJ(a+96|0,b,c,h)}function TY(a){a=a|0;var b=0,c=0;a:{b=G[a+52>>1];c=b&32767;b=(((N(I[a+55|0],20)+(H[a+80>>2]&2147483647)|0)+N(I[a+54|0],15)|0)+(c<<1)|0)+((b|0)>=0?0:c<<2)|0;c=b&3;if(((c?4-c|0:0)|0)!=(0-b|0)){b=Oa-16|0;Oa=b;c=H[a+128>>2];H[b+12>>2]=a;c=Pf(c+48|0,b+12|0);Oa=b+16|0;if(!c){break a}}b=H[a+128>>2];b:{if(F[a+6|0]&1){Ra[H[H[a>>2]+16>>2]](a);break b}Ra[H[H[a>>2]+12>>2]](a)|0}nU(b,a,2);return}o5(H[33808],8,8422,396,64594,0)}function Jm(a,b){var c=0,d=0,e=0,f=0,g=0;if(H[a+8>>2]){while(1){c=Oa-16|0;Oa=c;e=H[H[a+4>>2]+(f<<2)>>2]+16|0;d=J[b+52>>1];H[c+12>>2]=1;G[c+8>>1]=d;d=H[e+4772>>2];a:{if(d>>>0>=(H[e+4776>>2]&2147483647)>>>0){Rt(e+4768|0,c+8|0);break a}g=H[c+12>>2];d=H[e+4768>>2]+(d<<3)|0;H[d>>2]=H[c+8>>2];H[d+4>>2]=g;H[e+4772>>2]=H[e+4772>>2]+1}Oa=c+16|0;f=f+1|0;if(f>>>0>2]){continue}break}}H[H[a+40>>2]+(J[b+52>>1]<<2)>>2]=b}function Mt(a,b){var c=0,d=0;c=Oa-16|0;Oa=c;a:{if(!I[a+4785|0]){lO(a+16|0,b+12|0);H[b>>2]=0;H[b+4>>2]=H[b+4>>2]&268435455;break a}d=a+4972|0;b:{c:{a=H[b+4>>2];switch((a>>>30|0)-1|0){case 1:break b;case 0:break c;default:break a}}H[b+4>>2]=a&1073741823;H[c+4>>2]=b;Pf(d,c+4|0);break a}H[b+4>>2]=a|-1073741824;if(a&268435456){break a}H[c+8>>2]=b;a=rg(d,c+8|0,c+15|0);if(I[c+15|0]){break a}H[a>>2]=H[c+8>>2]}Oa=c+16|0}function LD(a,b){var c=0;if((b|0)==2){F[a+140|0]=1;return}MD(a);c=H[a>>2];a:{if(b){if(!(!c|H[a+28>>2]!=1)){Ra[H[H[c>>2]+72>>2]](c,1)|0}c=H[a+36>>2];if(!c|H[a- -64>>2]!=1){break a}Ra[H[H[c>>2]+72>>2]](c,1)|0;break a}if(H[a+28>>2]==1){Ra[H[H[c>>2]+72>>2]](c,1)|0;c=H[a>>2]}Ra[H[H[c>>2]+16>>2]](c);c=H[a+36>>2];if(H[a- -64>>2]==1){Ra[H[H[c>>2]+72>>2]](c,1)|0;c=H[a+36>>2]}Ra[H[H[c>>2]+16>>2]](c)}F[a+140|0]=(b|0)!=0}function Hm(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;h=H[a+44>>2];while(1){i=d>>>0>>0?e:d;l=i+1|0;m=H[a+40>>2];a:{b:{while(1){if(f>>>0>=h>>>0){break b}while(1){c:{j=f+1|0;k=H[(f<<2)+m>>2];if(k){break c}f=j;if((h|0)!=(f|0)){continue}break b}break}n=(e|0)!=(i|0);f=j;e=e+1|0;if(n){continue}break}if((c|0)!=(g|0)){break a}g=c}return g|0}H[(g<<2)+b>>2]=k;g=g+1|0;e=l;continue}}function gA(a,b,c){a=a|0;b=b|0;c=c|0;var d=O(0),e=0,f=0;eA(a);a=H[a+24>>2];b=J[a+2>>1];if(b){e=a+b|0;f=I[a|0]==7?176:128;while(1){b=I[a+1|0];c=0;a=a+160|0;if(b){while(1){d=L[a+108>>2];L[a+108>>2]=d>O(0)?d:O(0);d=L[a+104>>2];L[a+104>>2]=d>O(0)?d:O(0);d=L[a+100>>2];L[a+100>>2]=d>O(0)?d:O(0);d=L[a+96>>2];L[a+96>>2]=d>O(0)?d:O(0);a=a+f|0;c=c+1|0;if((b|0)!=(c|0)){continue}break}}if(a>>>0>>0){continue}break}}}function fA(a,b,c){a=a|0;b=b|0;c=c|0;var d=O(0),e=0,f=0;cA(a);a=H[a+24>>2];b=J[a+2>>1];if(b){e=a+b|0;f=I[a|0]==7?176:128;while(1){b=I[a+1|0];c=0;a=a+160|0;if(b){while(1){d=L[a+108>>2];L[a+108>>2]=d>O(0)?d:O(0);d=L[a+104>>2];L[a+104>>2]=d>O(0)?d:O(0);d=L[a+100>>2];L[a+100>>2]=d>O(0)?d:O(0);d=L[a+96>>2];L[a+96>>2]=d>O(0)?d:O(0);a=a+f|0;c=c+1|0;if((b|0)!=(c|0)){continue}break}}if(a>>>0>>0){continue}break}}}function Jx(a){var b=0,c=0,d=0,e=0,f=0,g=0;d=Oa-16|0;Oa=d;e=N(1-H[a+124>>2]|0,12)+a|0;b=H[e+68>>2];H[a+152>>2]=H[a+152>>2]-b;if(b){f=a+112|0;g=e- -64|0;while(1){c=b-1|0;b=H[H[g>>2]+(c<<2)>>2];H[e+68>>2]=c;H[d+12>>2]=b;c=H[a+116>>2];a:{if(c>>>0>=(H[a+120>>2]&2147483647)>>>0){Hx(f,d+12|0);break a}H[H[a+112>>2]+(c<<2)>>2]=b;H[a+116>>2]=c+1}b=H[e+68>>2];if(b){continue}break}}H[a+124>>2]=1-H[a+124>>2];Oa=d+16|0}function sj(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;d=Oa-16|0;Oa=d;a=H[((J[a+4>>1]<<2)+73232|0)+72>>2]+a|0;c=H[a+4>>2];e=c>>>24&15;f=H[((e<<2)+76348|0)+12>>2];b=I[b|0];a:{b:{c:{switch((c>>>30|0)-2|0){case 0:if(I[H[a>>2]+4785|0]){break b}break;case 1:break b;default:break c}}F[d+8|0]=b;RD(a+f|0,d+8|0);break a}c=H[a+8>>2];if(!c){c=Tt(H[a>>2],e);H[a+8>>2]=c}F[c|0]=b;$t(H[a>>2],a);H[a+4>>2]=H[a+4>>2]|1}Oa=d+16|0}function dX(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0;c=Oa-16|0;Oa=c;b=a+4|0;e=H[a+8>>2];if(e){while(1){f=H[b>>2]+N(d,12)|0;g=H[f>>2];if(g){h=H[33808]+12|0;Ra[H[H[h>>2]+12>>2]](h,g-4|0)}H[f>>2]=0;d=d+1|0;if((e|0)!=(d|0)){continue}break}}vH(b,c);eX(b,H[a+8>>2]);H[a+16>>2]=0;H[a+20>>2]=0;a=H[a+12>>2];a:{if((a|0)<0|!(a&2147483647)){break a}a=H[b>>2];if(!a){break a}b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,a)}Oa=c+16|0}function Pt(a,b){var c=0,d=0;c=Oa-16|0;Oa=c;a:{if(!I[a+4785|0]){pO(b+12|0);H[b>>2]=0;H[b+4>>2]=H[b+4>>2]&268435455;break a}d=a+5052|0;b:{c:{a=H[b+4>>2];switch((a>>>30|0)-1|0){case 1:break b;case 0:break c;default:break a}}H[b+4>>2]=a&1073741823;H[c+4>>2]=b;Pf(d,c+4|0);break a}H[b+4>>2]=a|-1073741824;if(a&268435456){break a}H[c+8>>2]=b;a=rg(d,c+8|0,c+15|0);if(I[c+15|0]){break a}H[a>>2]=H[c+8>>2]}Oa=c+16|0}function gk(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=a+8|0;a:{b:{c:{e=H[a+12>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(I[H[d>>2]+4785|0]){break a}}L[a+312>>2]=L[b>>2];L[a+316>>2]=L[b+4>>2];L[a+320>>2]=L[b+8>>2];return}c=H[a+16>>2];if(!c){c=Tt(H[a+8>>2],e>>>24&15);H[a+16>>2]=c}L[c+72>>2]=L[b>>2];L[c+76>>2]=L[b+4>>2];L[c+80>>2]=L[b+8>>2];$t(H[a+8>>2],d);H[a+12>>2]=H[a+12>>2]|8}function Vw(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=O(0),k=O(0),l=O(0),m=O(0);b=a+112|0;tw(a,b,0);xw(b);c=1;g=H[b+336>>2];if(g>>>0>1){i=H[b+340>>2];h=H[b+332>>2];d=H[h+16>>2];while(1){e=H[((c<<5)+h|0)+16>>2];j=L[e+20>>2];k=L[e+24>>2];l=L[d+20>>2];m=L[d+24>>2];f=N(c,160)+i|0;L[f+96>>2]=L[e+16>>2]-L[d+16>>2];L[f+104>>2]=k-m;L[f+100>>2]=j-l;c=c+1|0;if((g|0)!=(c|0)){continue}break}}uw(b);F[a+488|0]=0}function NJ(a){var b=0,c=0;OJ(a);b=H[a+84>>2];if(b){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b);H[a+84>>2]=0}b=H[a+80>>2];if(b){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}H[a+72>>2]=0;H[a+76>>2]=0;H[a+80>>2]=0;H[a+84>>2]=0;b=H[a+60>>2];if(b){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b);H[a+60>>2]=0}b=H[a+56>>2];if(b){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}H[a+48>>2]=0;H[a+52>>2]=0;H[a+56>>2]=0;H[a+60>>2]=0}function Cs(a,b){a=a|0;b=b|0;var c=0,d=0;c=a+116|0;d=H[c>>2];if((d|0)==4){a=H[a+36>>2]&1?H[a+40>>2]- -64|0:c;H[b>>2]=H[a>>2];L[b+4>>2]=L[a+4>>2];L[b+8>>2]=L[a+8>>2];L[b+12>>2]=L[a+12>>2];L[b+16>>2]=L[a+16>>2];L[b+20>>2]=L[a+20>>2];L[b+24>>2]=L[a+24>>2];L[b+28>>2]=L[a+28>>2];H[b+32>>2]=H[a+32>>2];F[b+36|0]=I[a+36|0];c=I[a+37|0]|I[a+38|0]<<8;F[b+37|0]=c;F[b+38|0]=c>>>8;F[b+39|0]=I[a+39|0]}return(d|0)==4|0}function _g(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;a:{d=H[b+24>>2];if(d){b=Oa-32|0;Oa=b;d=H[d>>2];Ra[H[H[d>>2]+180>>2]](b,d,c);L[a>>2]=L[b>>2];L[a+4>>2]=L[b+4>>2];L[a+8>>2]=L[b+8>>2];L[a+12>>2]=L[b+12>>2];L[a+16>>2]=L[b+16>>2];L[a+20>>2]=L[b+20>>2];L[a+24>>2]=L[b+24>>2];L[a+28>>2]=L[b+28>>2];Oa=b+32|0;break a}H[a>>2]=0;H[a+4>>2]=0;H[a+24>>2]=0;H[a+28>>2]=0;H[a+16>>2]=0;H[a+20>>2]=0;H[a+8>>2]=0;H[a+12>>2]=0}}function Sf(a,b,c){var d=0,e=0,f=0,g=0,h=0;g=H[a+36>>2];if(g){e=1;a:{f=H[a+40>>2];b:{if(H[f>>2]==(b|0)){h=f;break b}while(1){d=e;if((d|0)==(g|0)){break a}e=d+1|0;h=f+(d<<2)|0;if(H[h>>2]!=(b|0)){continue}break}e=d>>>0>>0}d=g-1|0;H[a+36>>2]=d;H[h>>2]=H[f+(d<<2)>>2];d=(J[b+4>>1]<<2)+73232|0;f=H[d+72>>2];og(H[d>>2]+b|0,0);vt(a+8|0,b+f|0,c);return e}e=d>>>0>>0}o5(H[33808],2,8670,204,17449,0);return e}function $g(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;a:{d=H[b+24>>2];if(d){b=Oa-32|0;Oa=b;d=H[d>>2];Ra[H[H[d>>2]+184>>2]](b,d,c);L[a>>2]=L[b>>2];L[a+4>>2]=L[b+4>>2];L[a+8>>2]=L[b+8>>2];L[a+12>>2]=L[b+12>>2];L[a+16>>2]=L[b+16>>2];L[a+20>>2]=L[b+20>>2];L[a+24>>2]=L[b+24>>2];L[a+28>>2]=L[b+28>>2];Oa=b+32|0;break a}H[a>>2]=0;H[a+4>>2]=0;H[a+24>>2]=0;H[a+28>>2]=0;H[a+16>>2]=0;H[a+20>>2]=0;H[a+8>>2]=0;H[a+12>>2]=0}}function mg(a,b,c){var d=0,e=0,f=0,g=0,h=0;a:{e=H[a+4>>2];if(!e){break a}f=H[e+36>>2];d=-1;g=H[e+40>>2];b:{if(!g){break b}d=0;while(1){h=(d<<3)+f|0;if(I[h|0]==(b|0)&H[h+4>>2]==(c|0)){break b}d=d+1|0;if((g|0)!=(d|0)){continue}break}d=-1}b=g-1|0;H[e+40>>2]=b;c=(d<<3)+f|0;b=(b<<3)+f|0;d=H[b+4>>2];H[c>>2]=H[b>>2];H[c+4>>2]=d;b=H[a+4>>2];if(H[b+40>>2]){break a}if(H[b+44>>2]>=0){Ul(H[33768],b)}H[a+4>>2]=0}}function Ti(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0;a=H[a+16>>2];a:{if(!a){break a}c=H[a+40>>2];if(!c){break a}d=H[a+36>>2];a=0;if(c-1>>>0>=3){g=c&-4;while(1){h=b;b=a<<3;b=(((h+!I[b+d|0]|0)+!I[(b|8)+d|0]|0)+!I[(b|16)+d|0]|0)+!I[(b|24)+d|0]|0;a=a+4|0;e=e+4|0;if((g|0)!=(e|0)){continue}break}}c=c&3;if(!c){break a}while(1){b=!I[(a<<3)+d|0]+b|0;a=a+1|0;f=f+1|0;if((c|0)!=(f|0)){continue}break}}return b|0}function Tc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Oa-32|0;Oa=d;e=H[b>>2];if(e>>>0<4294967280){a:{b:{if(e>>>0>=11){g=e+16&-16;f=o6(g);H[d+16>>2]=g|-2147483648;H[d+8>>2]=f;H[d+12>>2]=e;break b}F[d+19|0]=e;f=d+8|0;if(!e){break a}}R6(f,b+4|0,e)}F[e+f|0]=0;H[d>>2]=c;Ra[a|0](d+24|0,d+8|0,d);ma(H[d+24>>2]);a=H[d+24>>2];na(a|0);na(H[d>>2]);if(F[d+19|0]<0){N6(H[d+8>>2])}Oa=d+32|0;return a|0}p6();X()}function $A(a){a=a|0;var b=0,c=0;H[a>>2]=114360;a:{if(!(F[a+6|0]&1)){break a}b=H[a+32>>2];if(b){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}b=H[a+16>>2];if(b){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}b=H[a+36>>2];if(b){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}b=H[a+20>>2];if(b){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}b=H[a+44>>2];if(!b){break a}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}return a|0}function x5(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;f=H[a+84>>2];f=Ra[H[H[f>>2]+8>>2]](f,b,c,d,e)|0;if(!f){a=H[a+88>>2];Ra[H[H[a>>2]+8>>2]](a,64,61157,13942,199);return 0}if(!(f&15)){if(H[a+76>>2]){while(1){h=H[H[a+72>>2]+(g<<2)>>2];Ra[H[H[h>>2]>>2]](h,b,c,d,e,f);g=g+1|0;if(g>>>0>2]){continue}break}}return f|0}a=H[a+88>>2];Ra[H[H[a>>2]+8>>2]](a,64,60549,13942,205);return 0}function Mi(a,b){a=a|0;b=b|0;var c=0;c=H[H[((J[a+4>>1]<<2)+73232|0)+72>>2]+a>>2];if(c){c=c-16|0}else{c=0}if(c){o5(H[33808],8,15821,196,57861,0);return}a:{b:{c:{a=H[((J[a+4>>1]<<2)+73232|0)+72>>2]+a|0;c=H[a+4>>2];switch((c>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(I[H[a>>2]+4785|0]){break a}}F[(a+H[((c>>>22&60)+76348|0)+12>>2]|0)+7|0]=b;return}o5(H[33808],8,14318,173,16812,0)}function gH(a){var b=0,c=0,d=0;d=H[a+8>>2];if((d|0)!=H[a+32>>2]){H[a+32>>2]=d;b=H[a+28>>2];if(b){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}b=H[a+24>>2];if(b){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}b=(d<<3)+48|0;if(b){c=H[33808]+12|0;b=Ra[H[H[c>>2]+8>>2]](c,b,20591,7273,976)|0}else{b=0}H[a+24>>2]=b;d=d<<4;if(d){b=H[33808]+12|0;b=Ra[H[H[b>>2]+8>>2]](b,d,20591,7273,977)|0}else{b=0}H[a+28>>2]=b}}function RO(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;d=Oa-16|0;Oa=d;b=H[33808];c=b+12|0;c=(f=c,g=1,h=Ra[H[H[b>>2]+20>>2]](b)|0?25516:55639,i=9345,j=5285,e=H[H[c>>2]+8>>2],Ra[e](f|0,g|0,h|0,i|0,j|0)|0);H[d+12>>2]=c;b=H[a+2288>>2];a:{if(b>>>0>=(H[a+2292>>2]&2147483647)>>>0){KN(a+2284|0,d+12|0);a=H[a+2288>>2];break a}H[H[a+2284>>2]+(b<<2)>>2]=c;c=a;a=b+1|0;H[c+2288>>2]=a}Oa=d+16|0;return a-1&255}function Lx(a){var b=0,c=0,d=0,e=0,f=0;d=Oa-16|0;Oa=d;e=N(1-H[a+136>>2]|0,12)+a|0;b=H[e+20>>2];H[a+152>>2]=H[a+152>>2]-b;if(b){f=a+112|0;while(1){c=b-1|0;b=H[H[e+16>>2]+(c<<2)>>2];H[e+20>>2]=c;H[d+12>>2]=b;c=H[a+116>>2];a:{if(c>>>0>=(H[a+120>>2]&2147483647)>>>0){Hx(f,d+12|0);break a}H[H[a+112>>2]+(c<<2)>>2]=b;H[a+116>>2]=c+1}b=H[e+20>>2];if(b){continue}break}}H[a+136>>2]=1-H[a+136>>2];Oa=d+16|0}function Ix(a){var b=0,c=0,d=0,e=0,f=0;d=Oa-16|0;Oa=d;e=N(1-H[a+128>>2]|0,12)+a|0;b=H[e+44>>2];H[a+152>>2]=H[a+152>>2]-b;if(b){f=a+112|0;while(1){c=b-1|0;b=H[H[e+40>>2]+(c<<2)>>2];H[e+44>>2]=c;H[d+12>>2]=b;c=H[a+116>>2];a:{if(c>>>0>=(H[a+120>>2]&2147483647)>>>0){Hx(f,d+12|0);break a}H[H[a+112>>2]+(c<<2)>>2]=b;H[a+116>>2]=c+1}b=H[e+44>>2];if(b){continue}break}}H[a+128>>2]=1-H[a+128>>2];Oa=d+16|0}function Hf(a,b,c){var d=0,e=0,f=0;d=Oa-16|0;Oa=d;a=a-16|0;Ra[H[H[a>>2]+28>>2]](a,d+12|0,d+8|0);a=0;f=b;b=H[d+12>>2];e=0;a:{if(!b){break a}b:{switch(J[b+4>>1]-5|0){case 0:e=b+48|0;break a;case 8:e=b+48|0;break a;default:break b}}e=b+48|0}H[f>>2]=e;b=H[d+8>>2];c:{if(!b){break c}d:{switch(J[b+4>>1]-5|0){case 0:a=b+48|0;break c;case 8:a=b+48|0;break c;default:break d}}a=b+48|0}H[c>>2]=a;Oa=d+16|0}function Gw(a,b,c){var d=0,e=0,f=0,g=0;d=Oa-16|0;Oa=d;e=b+15&-16;f=H[a+4>>2];b=H[a+8>>2];g=H[(f+(b<<2)|0)-4>>2];a:{if((e|0)<=(g-H[a+16>>2]|0)){c=g-e|0;H[d+12>>2]=c;if(b>>>0>=(H[a+12>>2]&2147483647)>>>0){Xr(a+4|0,d+12|0);b=H[d+12>>2];break a}H[(b<<2)+f>>2]=c;H[a+8>>2]=b+1;b=H[d+12>>2];break a}b=0;if(!c|!e){break a}a=H[33808];b=Ra[H[H[a+12>>2]+8>>2]](a+12|0,e,20591,14391,99)|0}Oa=d+16|0;return b}function AI(a,b){var c=0,d=0,e=0,f=0,g=0;d=H[b+52>>2];c=H[a+28>>2];a:{if(d>>>0>=c>>>0){f=H[a+20>>2];break a}e=c-1|0;f=H[a+20>>2];if(!((e|0)==(d|0)|c>>>0>=f>>>0)){c=H[a+16>>2];g=H[c+(e<<2)>>2];H[c+(d<<2)>>2]=g;H[g+52>>2]=d;d=e}H[a+28>>2]=e}H[b+52>>2]=-1;H[b+44>>2]=H[b+44>>2]&-2097153;c=f-1|0;H[a+20>>2]=c;e=H[a+16>>2];b=d<<2;H[e+b>>2]=H[e+(c<<2)>>2];if(d>>>0>>0){H[H[b+H[a+16>>2]>>2]+52>>2]=d}}function N1(a,b,c){a=a|0;b=b|0;c=c|0;var d=O(0),e=0,f=O(0),g=O(0),h=O(0),i=0,j=0,k=O(0);f=L[b+12>>2];g=L[b+8>>2];h=L[b>>2];d=L[b+4>>2];i=H[b+20>>2];j=H[b+16>>2];e=H[a+80>>2];L[e+424>>2]=L[b+24>>2];H[e+416>>2]=j;H[e+420>>2]=i;k=d;d=O(O(1)/O(W(O(O(f*f)+O(O(g*g)+O(O(h*h)+O(d*d)))))));L[e+404>>2]=k*d;L[e+408>>2]=g*d;L[e+412>>2]=f*d;L[e+400>>2]=h*d;if(c){O1(a)}a=H[a+76>>2];Ra[H[H[a>>2]+36>>2]](a)}function _o(a,b,c){var d=0;a:{if(!c){break a}d=Ra[H[H[b>>2]+20>>2]](b,3783)|0;b:{if(!d){break b}if(!(Ra[H[H[c>>2]+40>>2]](c)|0)){break b}d=d?b:0;if(Ra[H[H[c>>2]+40>>2]](c)>>>0<=Ra[H[H[d>>2]+92>>2]](d)>>>0){break a}}o5(H[33808],4,9281,371,57356,0);return}c:{switch(J[b+4>>1]-5|0){case 1:$o(a,b,c,0);return;case 0:ap(a,b,c,0);return;case 8:o5(H[33808],2,9281,400,18537,0);break;default:break c}}}function jF(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;g=1<>>5<<2;if(!(g&H[h+H[a+152>>2]>>2])){d=H[a+148>>2];c=(b>>>0)/(d>>>0)|0;i=H[H[H[a+128>>2]+(c<<2)>>2]+(b-N(c,d)<<2)>>2];e=H[a+104>>2];c=b<<1;d=H[a+124>>2];f=(c>>>0)/(d>>>0)|0;j=H[H[e+(f<<2)>>2]+(c-N(d,f)<<2)>>2];f=e;c=c|1;e=(c>>>0)/(d>>>0)|0;IE(a+168|0,i,j,H[H[f+(e<<2)>>2]+(c-N(d,e)<<2)>>2],b);a=H[a+152>>2]+h|0;H[a>>2]=H[a>>2]|g}}function Xl(a,b,c){a=a|0;b=b|0;c=c|0;a:{if(c>>>0<=16){if(!b){break a}H[a+288>>2]=H[a+288>>2]-1;H[b>>2]=H[a+296>>2];H[a+296>>2]=b;break a}if(c>>>0<=64){if(!b){break a}H[a+580>>2]=H[a+580>>2]-1;H[b>>2]=H[a+588>>2];H[a+588>>2]=b;break a}if(c>>>0<=256){if(!b){break a}H[a+872>>2]=H[a+872>>2]-1;H[b>>2]=H[a+880>>2];H[a+880>>2]=b;break a}if(!b){break a}a=H[33808];Ra[H[H[a+12>>2]+12>>2]](a+12|0,b)}}function NS(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;c=Oa-48|0;Oa=c;Ra[H[H[a>>2]+136>>2]](a,c)|0;d=M[c+32>>3];e=M[c+24>>3];f=M[c>>3];g=M[c+8>>3];h=M[c+16>>3];i=M[c+40>>3];M[b+16>>3]=(h+i)*.5;M[b+8>>3]=(g+d)*.5;M[b>>3]=(f+e)*.5;L[b+32>>2]=O(i-h)*O(.5);L[b+28>>2]=O(d-g)*O(.5);L[b+24>>2]=O(e-f)*O(.5);L[b+36>>2]=L[a+20>>2];L[b+40>>2]=L[a+24>>2];L[b+44>>2]=L[a+28>>2];L[b+48>>2]=L[a+32>>2];Oa=c+48|0}function wj(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=O(0),f=O(0),g=0;g=H[a+12>>2];d=Oa-32|0;Oa=d;e=L[a+4>>2];if(e!=O(0)){a=VT(g,b);H[d+28>>2]=-2013265784;H[d+20>>2]=-2004353024;H[d+24>>2]=-2013231104;f=O(e*O(1.5));L[d+16>>2]=f;L[d+12>>2]=f;L[d+8>>2]=f;b=a;a=d+8|0;ZT(b,a);b=VT(g,c);H[d+28>>2]=-16776961;H[d+20>>2]=-65536;H[d+24>>2]=-16711936;L[d+16>>2]=e;L[d+12>>2]=e;L[d+8>>2]=e;ZT(b,a)}Oa=d+32|0}function no(a,b){a=a|0;b=b|0;var c=0;c=H[a+40>>2];H[a+40>>2]=c;if(c){o5(H[33808],8,4610,73,1319,0);return}c=H[b+4>>2];H[a+60>>2]=H[b>>2];H[a+64>>2]=c;c=H[b+44>>2];H[a+100>>2]=H[b+40>>2];H[a+104>>2]=c;c=H[b+36>>2];H[a+92>>2]=H[b+32>>2];H[a+96>>2]=c;c=H[b+28>>2];H[a+84>>2]=H[b+24>>2];H[a+88>>2]=c;c=H[b+20>>2];H[a+76>>2]=H[b+16>>2];H[a+80>>2]=c;c=H[b+12>>2];H[a+68>>2]=H[b+8>>2];H[a+72>>2]=c}function ah(a){a=a|0;var b=0,c=0;H[a>>2]=102984;Pl(H[33768],a);b=H[a+128>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=H[a+120>>2];if(!b){break a}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}H[a>>2]=103292;Pl(H[33768],a);b=H[a+104>>2];b:{if((b|0)<0|!(b&2147483647)){break b}b=H[a+96>>2];if((b|0)==(a+76|0)){F[a+92|0]=0;break b}if(!b){break b}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}return a|0}function Qf(a,b,c,d){var e=0;e=Oa-16|0;Oa=e;a:{if((Ra[H[H[b>>2]+24>>2]](b)|0)!=2){ut(a+8|0,H[((J[b+4>>1]<<2)+73232|0)+72>>2]+b|0);_o(c,b,d);break a}if(Ra[H[H[b>>2]+28>>2]](b)|0){break a}b=H[b+320>>2];if(Ra[H[H[b>>2]+76>>2]](b)|0){d=a+8|0;a=0;while(1){Ra[H[H[b>>2]+80>>2]](b,e+12|0,1,a)|0;ut(d,H[e+12>>2]+48|0);a=a+1|0;if(Ra[H[H[b>>2]+76>>2]](b)>>>0>a>>>0){continue}break}}mp(c,b)}Oa=e+16|0}function rD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;e=H[a+652>>2];d=(c<<15^-1)+c|0;d=N(d>>>10^d,9);d=d>>>6^d;d=(d<<11^-1)+d|0;d=H[H[a+660>>2]+((H[a+668>>2]-1&(d>>>16^d))<<2)>>2];if(H[e+(d<<3)>>2]!=(c|0)){f=H[a+656>>2];while(1){d=H[(d<<2)+f>>2];if(H[(d<<3)+e>>2]!=(c|0)){continue}break}}a=H[(H[a+644>>2]+N(H[((d<<3)+e|0)+4>>2],44)|0)+4>>2];return H[a+12>>2]+(H[H[a+16>>2]+(b<<2)>>2]<<3)|0}function T6(a,b,c){var d=0,e=0,f=0;d=H[c+16>>2];a:{if(!d){if(Q6(c)){break a}d=H[c+16>>2]}f=H[c+20>>2];if(d-f>>>0>>0){return Ra[H[c+36>>2]](c,a,b)|0}b:{if(H[c+80>>2]<0){d=0;break b}e=b;while(1){d=e;if(!d){d=0;break b}e=d-1|0;if(I[e+a|0]!=10){continue}break}e=Ra[H[c+36>>2]](c,a,d)|0;if(e>>>0>>0){break a}a=a+d|0;b=b-d|0;f=H[c+20>>2]}R6(f,a,b);H[c+20>>2]=H[c+20>>2]+b;e=b+d|0}return e}function FO(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0;c=Oa-16|0;Oa=c;b=H[a+980>>2];e=H[b+284>>2];g=H[b+280>>2];b=0;H[a+2508>>2]=0;a:{if(!e){break a}h=a+2504|0;while(1){f=H[H[(d<<2)+g>>2]+32>>2];H[c+12>>2]=f;b:{if((H[a+2512>>2]&2147483647)>>>0<=b>>>0){qm(h,c+12|0);break b}H[H[a+2504>>2]+(b<<2)>>2]=f;H[a+2508>>2]=H[a+2508>>2]+1}d=d+1|0;if((e|0)==(d|0)){break a}b=H[a+2508>>2];continue}}Oa=c+16|0}function oV(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=O(0),f=O(0),g=O(0),h=0,i=0,j=0,k=0;k=d;b=H[b+4>>2];d=b+56|0;e=L[c+8>>2];f=L[c>>2];h=b+52|0;g=L[c+4>>2];i=b+72|0;j=b+68|0;c=O(O(L[d>>2]*e)+O(O(L[b+48>>2]*f)+O(L[h>>2]*g)))>O(O(L[i>>2]*e)+O(O(L[b+64>>2]*f)+O(g*L[j>>2])));H[k>>2]=c;e=L[(c?b+48|0:b- -64|0)>>2];f=L[(c?h:j)>>2];g=L[(c?d:i)>>2];H[a+12>>2]=0;L[a+8>>2]=g;L[a+4>>2]=f;L[a>>2]=e}function pt(a,b,c){var d=0,e=0,f=0,g=0;e=Oa-32|0;Oa=e;d=H[a+16>>2];a:{if((d|0)!=-1){a=J[c+4>>1];Ra[H[H[c>>2]+76>>2]](e,c);c=H[b+72>>2];Ra[H[H[c>>2]+8>>2]](c,d,e);a=N((a&65527)==5,36)+b|0;H[a+32>>2]=H[a+32>>2]+1;break a}d=J[a+4>>1];if(!d){break a}g=a+8|0;c=0;while(1){f=H[(c<<2)+(J[a+12>>1]==1?g:H[a+8>>2])>>2];if((f|0)!=-1){HD(b,-1,f)}c=c+1|0;if((d|0)!=(c|0)){continue}break}}Oa=e+32|0}function RT(a,b){var c=0,d=0,e=0,f=0;if(I[a+32|0]){c=H[a+12>>2];if(c){d=H[33808]+12|0;Ra[H[H[d>>2]+12>>2]](d,c)}H[a+12>>2]=0;c=H[a+8>>2];if(c){d=H[33808]+12|0;Ra[H[H[d>>2]+12>>2]](d,c)}H[a+8>>2]=0;b=b<<2;a:{if(!b){H[a+8>>2]=0;b=0;break a}c=H[33808]+12|0;e=a,f=Ra[H[H[c>>2]+8>>2]](c,b,20591,9895,76)|0,H[e+8>>2]=f;c=H[33808]+12|0;b=Ra[H[H[c>>2]+8>>2]](c,b,20591,9895,77)|0}H[a+12>>2]=b}}function b3(a){a=a|0;var b=0,c=0;H[a>>2]=130244;b=H[a+20>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+8>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b-H[b-4>>2]|0)}b=H[a+12>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}H[a>>2]=130332;b=H[a+4>>2];if(H[b+16>>2]==1){H[b+16>>2]=2}b=H[a+4>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}return a|0}function JB(a,b){var c=0;a:{if(!H[b+40>>2]){c=H[b+36>>2];if(!c){break a}H[a+284>>2]=H[a+284>>2]-1;H[c>>2]=H[a+292>>2];H[a+292>>2]=c;break a}JB(a,H[b+36>>2]);JB(a,H[b+40>>2])}c=H[b+32>>2];if(!c){H[a+576>>2]=H[a+576>>2]-1;H[b>>2]=H[a+584>>2];H[a+584>>2]=b;return}b:{if(H[c+40>>2]!=(b|0)){break b}b=H[c+36>>2];if(!b){break b}H[a+576>>2]=H[a+576>>2]-1;H[b>>2]=H[a+584>>2];H[a+584>>2]=b}}function Fn(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;b=b&255|c<<8;c=a+48|0;a:{b:{c:{e=H[a+52>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(I[H[c>>2]+4785|0]){break a}}a=a- -64|0;b=b&65535;G[a+46>>1]=b;a=H[a>>2];if(a){G[a+94>>1]=b}return}d=H[a+56>>2];if(!d){d=Tt(H[a+48>>2],e>>>24&15);H[a+56>>2]=d}G[d+136>>1]=b;$t(H[a+48>>2],c);H[a+316>>2]=H[a+316>>2]|512}function Gx(a,b){var c=0,d=0,e=0,f=0,g=0;d=Oa-16|0;Oa=d;e=H[a+152>>2];if(e>>>0>>0){g=a+112|0;while(1){c=H[33808];f=Ra[H[H[c+12>>2]+8>>2]](c+12|0,16384,20591,8029,99)|0;H[d+12>>2]=f;c=H[a+116>>2];a:{if(c>>>0>=(H[a+120>>2]&2147483647)>>>0){Hx(g,d+12|0);break a}H[H[a+112>>2]+(c<<2)>>2]=f;H[a+116>>2]=c+1}H[a+140>>2]=H[a+140>>2]+1;e=e+1|0;if((e|0)!=(b|0)){continue}break}}Oa=d+16|0}function $N(a,b,c){a:{b:{switch(c-8|0){case 0:if(!b){break a}H[a+380>>2]=H[a+380>>2]-1;H[b>>2]=H[a+388>>2];H[a+388>>2]=b;return;case 8:if(!b){break a}H[a+672>>2]=H[a+672>>2]-1;H[b>>2]=H[a+680>>2];H[a+680>>2]=b;return;case 24:if(!b){break a}H[a+964>>2]=H[a+964>>2]-1;H[b>>2]=H[a+972>>2];H[a+972>>2]=b;return;default:break b}}if(!b){break a}a=H[33808]+12|0;Ra[H[H[a>>2]+12>>2]](a,b)}}function JO(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0,k=0;a:{b:{h=H[a+2388>>2];i=H[h+12>>2];j=H[h+8>>2];g=i+N(j,12)|0;f=H[g+4>>2];if(f){H[g+4>>2]=H[f>>2];break b}c:{d:{f=H[g+8>>2];if((f|0)==H[h>>2]){break d}k=H[h+4>>2];H[g+8>>2]=f+1;g=H[N(j,12)+i>>2];if(!g){break d}f=g+N(f,k)|0;break c}f=LN(h)}if(f){break b}f=0;break a}VI(f,a,b);H[f>>2]=123460}H[a+2664>>2]=H[a+2664>>2]+1;GO(a,c,d,f,e)}function xL(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=O(d);e=e|0;sL((H[a>>2]<<5)+b|0,c,d);c=H[((H[a>>2]<<5)+b|0)+24>>2];if(!(!c|!H[c+4>>2])){b=c+640|0;a=0;while(1){L[b+112>>2]=H[b+352>>2]&4?L[b+112>>2]:O(0);L[b+124>>2]=H[b+364>>2]&4?L[b+124>>2]:O(0);L[b+120>>2]=H[b+360>>2]&4?L[b+120>>2]:O(0);L[b+116>>2]=H[b+356>>2]&4?L[b+116>>2]:O(0);b=b+368|0;a=a+1|0;if(a>>>0>2]){continue}break}}}function XB(a,b){var c=O(0),d=O(0),e=O(0);while(1){c=L[b+4>>2];d=L[b+8>>2];e=L[b+12>>2];L[a+16>>2]=L[a+16>>2]-L[b>>2];L[a+28>>2]=L[a+28>>2]-e;L[a+24>>2]=L[a+24>>2]-d;L[a+20>>2]=L[a+20>>2]-c;c=L[b>>2];d=L[b+4>>2];e=L[b+8>>2];L[a+12>>2]=L[a+12>>2]-L[b+12>>2];L[a+8>>2]=L[a+8>>2]-e;L[a+4>>2]=L[a+4>>2]-d;L[a>>2]=L[a>>2]-c;if(H[a+40>>2]){XB(H[a+36>>2],b);a=H[a+40>>2];continue}break}}function wo(a){a=a|0;var b=0,c=0,d=0,e=0;b=H[a+40>>2];H[a+40>>2]=b;if(b){o5(H[33808],8,4610,577,18330,0);return}b=0;d=H[a+8>>2];e=H[d+6024>>2];a:{b:{c=H[d+6028>>2];if(!c){break b}while(1){if(H[(b<<2)+e>>2]==(a|0)){break b}b=b+1|0;if((c|0)!=(b|0)){continue}break}break a}if((b|0)==(c|0)){break a}c=c-1|0;H[d+6028>>2]=c;H[(b<<2)+e>>2]=H[(c<<2)+e>>2]}if(a){Ra[H[H[a>>2]+48>>2]](a)}}function _T(a,b){var c=0,d=O(0),e=0,f=O(0),g=0,h=O(0),i=0,j=O(0);c=Oa-32|0;Oa=c;e=H[b>>2];H[a+32>>2]=0;H[a>>2]=2;if(e){h=O(O(6.2831854820251465)/O(e>>>0));while(1){f=L[b+4>>2];H[c+24>>2]=0;i=c,j=O(f*T5(d)),L[i+20>>2]=j;i=c,j=O(f*Z5(d)),L[i+16>>2]=j;WT(a,c+16|0);d=O(h+d);g=g+1|0;if(g>>>0>2]){continue}break}}d=L[b+4>>2];H[c+8>>2]=0;L[c+4>>2]=d;H[c>>2]=0;WT(a,c);Oa=c+32|0}function On(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=H[a+56>>2];e=I[(I[a+317|0]&64?d+184|0:a+238|0)|0];b=c?e|b:e&(b^-1);c=a+48|0;a:{b:{c:{e=H[a+52>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(I[H[c>>2]+4785|0]){break a}}F[a+238|0]=b;return}if(!d){d=Tt(H[a+48>>2],e>>>24&15);H[a+56>>2]=d}F[d+184|0]=b;$t(H[a+48>>2],c);H[a+316>>2]=H[a+316>>2]|16384}function IU(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=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0),m=O(0);e=Oa-16|0;Oa=e;h=L[d+24>>2];i=L[d+20>>2];g=L[c+4>>2];j=L[d+16>>2];xU(e,f);l=h;h=L[e+8>>2];m=j;j=L[e>>2];k=i;i=L[e+4>>2];k=O(L[e+12>>2]+O(O(l*h)+O(O(m*j)+O(k*i))));c=g>2]=h;L[a+4>>2]=i;L[a>>2]=j;g=O(g-k);L[b>>2]=g>O(0)?g:O(0)}Oa=e+16|0;return!c|0} -function lx(a){a=a|0;var b=0,c=0,d=0;H[a>>2]=112932;b=H[a+12>>2];if(b){while(1){d=H[H[a+8>>2]+(c<<2)>>2];if(d){b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,d);b=H[a+12>>2]}c=c+1|0;if(c>>>0>>0){continue}break}}H[a+20>>2]=0;H[a+4>>2]=0;H[a+12>>2]=0;b=H[a+16>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=H[a+8>>2];if(!b){break a}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}return a|0}function bY(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;f=Oa-48|0;Oa=f;L[f+8>>2]=L[c>>2];L[f+12>>2]=L[c+4>>2];L[f+16>>2]=L[c+8>>2];L[f+20>>2]=L[d>>2];L[f+24>>2]=L[d+4>>2];L[f+28>>2]=L[d+8>>2];L[f+32>>2]=L[e>>2];L[f+36>>2]=L[e+4>>2];L[f+40>>2]=L[e+8>>2];c=a+8|0;b=H[b+8>>2];d=f+8|0;a=H[H[a+108>>2]+56>>2];if(a){a=I[a+b|0]}else{a=56}cY(c,b,d,a);Oa=f+48|0;return 1} -function EO(a){var b=0,c=0,d=0,e=0,f=0;b=Oa-16|0;Oa=b;a:{if(!H[a+2344>>2]){break a}f=H[a+1244>>2];if(!f){break a}while(1){c=H[H[a+1240>>2]+(e<<2)>>2];if(H[c+60>>2]){H[b+12>>2]=-1;d=H[c+28>>2];d=Ra[H[H[d>>2]+20>>2]](d,b+12|0)|0;c=c+H[33804]|0;H[b+4>>2]=d;H[b>>2]=c;H[b+8>>2]=H[b+12>>2];c=H[a+2344>>2];Ra[H[H[c>>2]>>2]](c,b,1)}e=e+1|0;if((f|0)!=(e|0)){continue}break}}Oa=b+16|0}function UT(a,b){L[a+36>>2]=L[b>>2];L[a+40>>2]=L[b+4>>2];L[a+44>>2]=L[b+8>>2];L[a+48>>2]=L[b+12>>2];L[a+52>>2]=L[b+16>>2];L[a+56>>2]=L[b+20>>2];L[a+60>>2]=L[b+24>>2];L[a- -64>>2]=L[b+28>>2];L[a+68>>2]=L[b+32>>2];L[a+72>>2]=L[b+36>>2];L[a+76>>2]=L[b+40>>2];L[a+80>>2]=L[b+44>>2];L[a+84>>2]=L[b+48>>2];L[a+88>>2]=L[b+52>>2];L[a+92>>2]=L[b+56>>2];L[a+96>>2]=L[b+60>>2];return a}function ZF(a,b){var c=0;L[a+32>>2]=L[a+32>>2]-L[b>>2];L[a+36>>2]=L[a+36>>2]-L[b+4>>2];L[a+40>>2]=L[a+40>>2]-L[b+8>>2];c=H[a+176>>2];if(!(!c|!(F[a+44|0]&1)|!I[c+28|0])){L[c+16>>2]=L[c+16>>2]-L[b>>2];L[c+20>>2]=L[c+20>>2]-L[b+4>>2];L[c+24>>2]=L[c+24>>2]-L[b+8>>2]}a=H[a>>2];if(a){L[a+80>>2]=L[a+80>>2]-L[b>>2];L[a+84>>2]=L[a+84>>2]-L[b+4>>2];L[a+88>>2]=L[a+88>>2]-L[b+8>>2]}}function US(a){a=a|0;var b=0;if(Ra[H[H[a>>2]+8>>2]](a)|0){while(1){VS(a,Ra[H[H[a>>2]+12>>2]](a,0)|0);if(Ra[H[H[a>>2]+8>>2]](a)|0){continue}break}}if(Ra[H[H[a>>2]+32>>2]](a)|0){while(1){b=H[H[a+120>>2]>>2];Ra[H[H[b>>2]+8>>2]](b);if(Ra[H[H[a>>2]+32>>2]](a)|0){continue}break}}b=H[a+8>>2];b=Ra[H[H[b>>2]+28>>2]](b)|0;Ra[H[H[b>>2]+136>>2]](b,a+4|0);Ra[H[H[a>>2]+72>>2]](a);r5()}function EU(a,b){var c=0,d=O(0),e=0,f=O(0),g=O(0),h=O(0),i=O(0),j=0;if(H[a+148>>2]){return gV(a,b)}e=I[a+156|0];if(e>>>0>=2){c=H[a+152>>2];f=L[b+8>>2];g=L[b>>2];h=L[b+4>>2];d=O(O(L[c+8>>2]*f)+O(O(L[c>>2]*g)+O(h*L[c+4>>2])));a=1;while(1){b=N(a,12)+c|0;i=O(O(L[b+8>>2]*f)+O(O(L[b>>2]*g)+O(h*L[b+4>>2])));b=i>d;d=b?i:d;j=b?a:j;a=a+1|0;if((e|0)!=(a|0)){continue}break}}return j}function gY(a,b){var c=0,d=O(0),e=O(0),f=O(0),g=0;d=L[b+8>>2];e=L[b+4>>2];f=L[b>>2];a:{c=H[a>>2];if((c|0)<=0){break a}g=(N(c,12)+a|0)+4|0;b=a+4|0;while(1){if(!(O(P(O(O(d*L[b+8>>2])+O(O(f*L[b>>2])+O(e*L[b+4>>2])))))>O(.9998999834060669))){b=b+12|0;if(g>>>0>b>>>0){continue}break a}break}return}if(c>>>0<=255){H[a>>2]=c+1;a=N(c,12)+a|0;L[a+12>>2]=d;L[a+8>>2]=e;L[a+4>>2]=f}}function Ko(a){var b=0,c=0,d=0;b=H[a+8>>2];if(b){while(1){d=H[H[a+4>>2]+(c<<2)>>2];if(d){b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,d);b=H[a+8>>2]}c=c+1|0;if(c>>>0>>0){continue}break}}b=H[a+12>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=H[a+4>>2];if(!b){break a}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}a=H[a>>2];if(a){b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,a)}}function GR(a,b){a=a|0;b=b|0;var c=0,d=O(0),e=O(0),f=O(0);c=H[b+460>>2];H[a+16>>2]=H[b+456>>2];H[a+20>>2]=c;c=H[b+452>>2];H[a+8>>2]=H[b+448>>2];H[a+12>>2]=c;c=H[b+444>>2];H[a>>2]=H[b+440>>2];H[a+4>>2]=c;e=L[b+44>>2];f=L[b+36>>2];d=O(O(L[b+536>>2]*O(.5))+O(L[b+52>>2]+L[b+532>>2]));M[a+8>>3]=M[a+8>>3]-+O(d*L[b+40>>2]);M[a>>3]=M[a>>3]-+O(f*d);M[a+16>>3]=M[a+16>>3]-+O(d*e)}function mx(a){a=a|0;var b=0,c=0,d=0;H[a>>2]=112932;b=H[a+12>>2];if(b){while(1){d=H[H[a+8>>2]+(c<<2)>>2];if(d){b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,d);b=H[a+12>>2]}c=c+1|0;if(c>>>0>>0){continue}break}}H[a+20>>2]=0;H[a+4>>2]=0;H[a+12>>2]=0;b=H[a+16>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=H[a+8>>2];if(!b){break a}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}N6(a)}function jr(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=H[a+6340>>2];if(!(d>>>0>127|!I[d+135312|0])){e=H[(d<<2)+135440>>2]}d=e>>>0>16777215;if(!(d|!(e&16711680))){o5(H[33808],8,b?b:9281,b?c:2766,60161,0);return}c=e+16777216|0;b=H[a+6340>>2];if(!(b>>>0>127|!I[b+135312|0])){H[(b<<2)+135440>>2]=c}if(!d){b=H[a+6348>>2];while(1){if(H[b+4>>2]){continue}break}}H[a+6344>>2]=135960}function hg(a,b){var c=0,d=0,e=0;d=H[b+4>>2];a:{if(!H[a+4>>2]){break a}c=d+15&-16;H[a+4>>2]=c;e=H[c+36>>2];if(e){H[c+44>>2]=H[c+44>>2]|-2147483648}d=c+48|0;b:{if(!I[c+32|0]){if(!H[c+40>>2]){break b}if(!e){break a}H[c+36>>2]=d;d=(H[c+44>>2]<<3)+d|0;break a}H[c+36>>2]=c;if(H[c+40>>2]){break a}}H[a+4>>2]=0}c=H[d>>2];d=d+4|0;H[b+4>>2]=d;H[a>>2]=c?d:0;H[b+4>>2]=c+H[b+4>>2]}function bV(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;g=Oa-4256|0;Oa=g;H[g+4200>>2]=-1;h=g+4200|0;hU(h,c);H[g+4144>>2]=-1;c=g+4144|0;hU(c,e);H[g+4136>>2]=0;H[g+4140>>2]=0;e=0;H[g+4112>>2]=0;H[g+8>>2]=1065353216;H[g>>2]=0;H[g+4>>2]=0;a:{if(!lY(h,c,d,f,g,g+16|0)){break a}if(!NU(a,b,H[g+4112>>2],g+16|0)){break a}e=H[g+4112>>2]!=0}Oa=g+4256|0;return e|0}function vf(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;c=Oa-16|0;Oa=c;b=J[b>>1];e=a+16|0;a:{b:{c:{d:{f=H[a+20>>2];switch((f>>>30|0)-2|0){case 1:break b;case 0:break d;default:break c}}if(I[H[e>>2]+4785|0]){break b}}G[c+8>>1]=b;wG(a+28|0,c+8|0);break a}d=H[a+24>>2];if(!d){d=Tt(H[a+16>>2],f>>>24&15);H[a+24>>2]=d}G[d+16>>1]=b;$t(H[a+16>>2],e);H[a+20>>2]=H[a+20>>2]|4}Oa=c+16|0}function KS(a,b){a=a|0;b=O(b);var c=0,d=0,e=0,f=O(0),g=O(0);c=Oa-16|0;Oa=c;e=b<=O(0);a:{if(e){break a}L[a+540>>2]=b;if(!H[a+432>>2]){break a}d=rT(a+8|0);H[c+12>>2]=0;H[c+4>>2]=0;H[c+8>>2]=0;H[c>>2]=3;Ra[H[H[d>>2]+44>>2]](d,c)|0;f=L[a+532>>2];g=L[a+536>>2];b=L[a+516>>2];L[c+12>>2]=L[a+540>>2]*b;L[c+8>>2]=g*b;L[c+4>>2]=f*b;Ra[H[H[d>>2]+36>>2]](d,c)}Oa=c+16|0;return!e|0}function JS(a,b){a=a|0;b=O(b);var c=0,d=0,e=0,f=O(0),g=O(0);c=Oa-16|0;Oa=c;e=b<=O(0);a:{if(e){break a}L[a+536>>2]=b;if(!H[a+432>>2]){break a}d=rT(a+8|0);H[c+12>>2]=0;H[c+4>>2]=0;H[c+8>>2]=0;H[c>>2]=3;Ra[H[H[d>>2]+44>>2]](d,c)|0;f=L[a+532>>2];g=L[a+536>>2];b=L[a+516>>2];L[c+12>>2]=L[a+540>>2]*b;L[c+8>>2]=g*b;L[c+4>>2]=f*b;Ra[H[H[d>>2]+36>>2]](d,c)}Oa=c+16|0;return!e|0}function IS(a,b){a=a|0;b=O(b);var c=0,d=0,e=0,f=O(0),g=O(0);c=Oa-16|0;Oa=c;e=b<=O(0);a:{if(e){break a}L[a+532>>2]=b;if(!H[a+432>>2]){break a}d=rT(a+8|0);H[c+12>>2]=0;H[c+4>>2]=0;H[c+8>>2]=0;H[c>>2]=3;Ra[H[H[d>>2]+44>>2]](d,c)|0;f=L[a+532>>2];g=L[a+536>>2];b=L[a+516>>2];L[c+12>>2]=L[a+540>>2]*b;L[c+8>>2]=g*b;L[c+4>>2]=f*b;Ra[H[H[d>>2]+36>>2]](d,c)}Oa=c+16|0;return!e|0}function HB(a){var b=0;H[a+564>>2]=0;H[a+288>>2]=5120;H[a+292>>2]=0;H[a+280>>2]=256;H[a+284>>2]=0;H[a+268>>2]=a+8;F[a+264|0]=1;H[a+272>>2]=0;H[a+276>>2]=64;H[a+584>>2]=0;H[a+588>>2]=0;H[a+576>>2]=0;H[a+580>>2]=24576;H[a+568>>2]=64;H[a+572>>2]=256;H[a+560>>2]=a+300;F[a+556|0]=1;b=a+592|0;H[b>>2]=0;H[b+4>>2]=0;H[b+16>>2]=0;H[b+20>>2]=0;H[b+8>>2]=0;H[b+12>>2]=0;return a}function FJ(a){a=a|0;var b=0,c=0,d=0;H[a>>2]=116396;if(H[a+8>>2]){while(1){c=b<<2;d=H[c+H[a+4>>2]>>2];Ra[H[H[d>>2]>>2]](d)|0;c=H[c+H[a+4>>2]>>2];if(c){d=H[33808]+12|0;Ra[H[H[d>>2]+12>>2]](d,c)}b=b+1|0;if(b>>>0>2]){continue}break}}b=H[a+12>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=H[a+4>>2];if(!b){break a}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}return a|0}function FM(a,b,c,d,e,f){a=a|0;b=O(b);c=c|0;d=d|0;e=e|0;f=f|0;Ra[H[H[f>>2]+20>>2]](f);c=H[a+4>>2];S6(H[c+972>>2],0,H[c+976>>2]<<2);S6(H[c+984>>2],0,H[c+988>>2]<<2);H[c+1012>>2]=0;H[c+1004>>2]=0;H[c+1008>>2]=0;H[c+996>>2]=0;H[c+1e3>>2]=0;c=H[a+4>>2];H[c+1824>>2]=0;H[c+1828>>2]=0;H[c+1760>>2]=0;c=c+1752|0;H[c>>2]=0;H[c+4>>2]=0;Ra[H[H[a>>2]+132>>2]](a,b,H[a+28>>2],e)}function lf(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;c=Oa-32|0;Oa=c;a:{if(Ra[H[H[a>>2]+24>>2]](a)>>>0>2){break a}if(!(Ra[H[H[a>>2]+92>>2]](a)|0)){break a}while(1){Ra[H[H[a>>2]+96>>2]](a,c+28|0,1,e)|0;f=c+8|0;d=H[c+28>>2];Ra[H[H[d>>2]+88>>2]](f,d);H[c+8>>2]=b;d=H[c+28>>2];Ra[H[H[d>>2]+84>>2]](d,f);e=e+1|0;if(Ra[H[H[a>>2]+92>>2]](a)>>>0>e>>>0){continue}break}}Oa=c+32|0}function sT(a,b,c,d,e){var f=0,g=0;f=H[a+20>>2];if(f){g=H[33808]+12|0;Ra[H[H[g>>2]+12>>2]](g,f)}H[a+20>>2]=0;f=H[a+16>>2];if(f){g=H[33808]+12|0;Ra[H[H[g>>2]+12>>2]](g,f)}H[a+16>>2]=0;f=H[a+12>>2];if(f){g=H[33808]+12|0;Ra[H[H[g>>2]+12>>2]](g,f)}H[a+12>>2]=0;f=H[a>>2];if(f){g=H[33808]+12|0;Ra[H[H[g>>2]+12>>2]](g,f)}H[a+20>>2]=e;H[a+16>>2]=d;H[a+12>>2]=c;H[a>>2]=b}function k5(a,b){var c=0,d=0,e=0,f=0;if(b){c=b<<2;if(c){d=H[33808];d=Ra[H[H[d+12>>2]+8>>2]](d+12|0,c,66953,13582,553)|0}else{d=0}}else{d=0}c=H[a+4>>2];if((c|0)>0){e=d+(c<<2)|0;f=H[a>>2];c=d;while(1){H[c>>2]=H[f>>2];f=f+4|0;c=c+4|0;if(e>>>0>c>>>0){continue}break}}if(H[a+8>>2]>=0){e=H[a>>2];if(e){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,e)}}H[a+8>>2]=b;H[a>>2]=d}function GJ(a){a=a|0;var b=0,c=0,d=0;H[a>>2]=116396;if(H[a+8>>2]){while(1){c=b<<2;d=H[c+H[a+4>>2]>>2];Ra[H[H[d>>2]>>2]](d)|0;c=H[c+H[a+4>>2]>>2];if(c){d=H[33808]+12|0;Ra[H[H[d>>2]+12>>2]](d,c)}b=b+1|0;if(b>>>0>2]){continue}break}}b=H[a+12>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=H[a+4>>2];if(!b){break a}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}N6(a)}function qf(a){a=a|0;var b=0,c=0,d=0;d=Oa-16|0;Oa=d;c=0;a:{if((H[a+20>>2]>>>30|0)-3>>>0<4294967294){break a}b=H[a+16>>2];c=0;if(!b){break a}c=b-16|0}an(H[33772],a,0,1);b=H[a+8>>2];if(b){mg(b+H[(J[b+4>>1]<<2)+73232>>2]|0,0,a)}b=H[a+12>>2];if(b){mg(b+H[(J[b+4>>1]<<2)+73232>>2]|0,0,a)}if(c){H[d+12>>2]=a;Pf(c+5892|0,d+12|0);Mt(c+16|0,a+16|0)}wt(a+16|0);Oa=d+16|0}function eH(a){var b=0,c=0;b=H[a+28>>2];if(b){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}H[a+28>>2]=0;b=H[a+24>>2];if(b){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}H[a+24>>2]=0;b=H[a+16>>2];if(b){Ra[H[H[b>>2]+4>>2]](b);H[a+16>>2]=0}b=H[a+12>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=H[a+4>>2];if(!b){break a}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}return a}function I6(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;if(t6(a,H[b+8>>2],e)){if(!(H[b+28>>2]==1|H[b+4>>2]!=(c|0))){H[b+28>>2]=d}return}a:{if(!t6(a,H[b>>2],e)){break a}if(!(H[b+16>>2]!=(c|0)&H[b+20>>2]!=(c|0))){if((d|0)!=1){break a}H[b+32>>2]=1;return}H[b+20>>2]=c;H[b+32>>2]=d;H[b+40>>2]=H[b+40>>2]+1;if(!(H[b+36>>2]!=1|H[b+24>>2]!=2)){F[b+54|0]=1}H[b+44>>2]=4}}function NF(a,b){var c=0,d=0;d=Oa-16|0;Oa=d;c=H[a+176>>2];a:{if(!(!c|I[c+31|0]!=1)){L[c+32>>2]=L[b>>2];L[c+36>>2]=L[b+4>>2];L[c+40>>2]=L[b+8>>2];break a}L[a+128>>2]=L[b>>2];L[a+132>>2]=L[b+4>>2];L[a+136>>2]=L[b+8>>2];a=H[a>>2];if(!a){break a}b=H[H[a+40>>2]+1012>>2];c=I[H[a+44>>2]+9|0];H[d+8>>2]=H[a+144>>2];Ra[H[H[b>>2]+44>>2]](b,(c|0)==2,d+8|0)}Oa=d+16|0}function s0(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=O(0),f=O(0),g=O(0),h=O(0),i=O(0);a=H[a+48>>2];e=L[b+8>>2];f=L[b>>2];h=L[b+4>>2];g=O(O(L[a+56>>2]*e)+O(O(L[a+48>>2]*f)+O(L[a+52>>2]*h)));i=O(O(L[a+72>>2]*e)+O(O(L[a- -64>>2]*f)+O(L[a+68>>2]*h)));e=O(O(L[a+88>>2]*e)+O(O(L[a+80>>2]*f)+O(L[a+84>>2]*h)));a=i>e;f=a?i:e;L[d>>2]=f>2]=e>2]=125524;b=H[a+72>>2];if(b){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}b=H[a+80>>2];if(b){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b);H[a+80>>2]=0}b=H[a+76>>2];if(b){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b);H[a+76>>2]=0}b=H[a+84>>2];if(b){U$(b);c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b);H[a+84>>2]=0}rU(a);return a|0}function Ki(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;a=H[((J[a+4>>1]<<2)+73232|0)+72>>2]+a|0;c=H[a+4>>2];d=c>>>24&15;e=H[((d<<2)+76348|0)+12>>2];a:{b:{switch((c>>>30|0)-2|0){case 0:if(I[H[a>>2]+4785|0]){break a}break;case 1:break a;default:break b}}SD(a+e|0,b);return}c=H[a+8>>2];if(!c){c=Tt(H[a>>2],d);H[a+8>>2]=c}F[c+1|0]=b;$t(H[a>>2],a);H[a+4>>2]=H[a+4>>2]|2}function Ov(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;b=H[a+468>>2];if((b|0)==-1){c=1;b=0;e=H[a+448>>2];a:{if(e>>>0>1){while(1){d=H[a+456>>2]+N(c,80)|0;Kv(d,H[(H[a+444>>2]+(c<<5)|0)+20>>2],1);H[d+72>>2]=b;f=I[d+79|0]+f|0;b=I[d+76|0]+b|0;c=c+1|0;if((e|0)!=(c|0)){continue}break}if(H[a+468>>2]==(b|0)){break a}}Fv(a+112|0,b)}H[a+468>>2]=b;H[a+472>>2]=f}return b|0}function vT(a){a=a|0;var b=0,c=0;H[a>>2]=125212;sT(a+28|0,0,0,0,0);b=H[a+24>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=H[a+16>>2];if(!b){break a}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}b=H[a+12>>2];b:{if((b|0)<0|!(b&2147483647)){break b}b=H[a+4>>2];if(!b){break b}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,a)}function rN(a,b){var c=0,d=0,e=O(0),f=O(0),g=O(0);c=Oa-16|0;Oa=c;d=H[a+36>>2];if(L[d+124>>2]!=O(0)){f=L[d+20>>2];g=L[d+24>>2];e=O(O(1)-b);L[a+16>>2]=O(e*L[a+16>>2])+O(L[d+16>>2]*b);L[a+24>>2]=O(e*L[a+24>>2])+O(g*b);L[a+20>>2]=O(e*L[a+20>>2])+O(f*b);E5(c,b,a,d);L[a>>2]=L[c>>2];L[a+4>>2]=L[c+4>>2];L[a+8>>2]=L[c+8>>2];L[a+12>>2]=L[c+12>>2]}Oa=c+16|0}function Uq(a,b,c){a=a|0;b=b|0;c=O(c);var d=0;if((b|0)>=24){o5(H[33808],4,9281,2477,57962,0);return 0}if(c>2]+(b<<2)|0)+1032>>2]=c;if(!b){L[d+2656>>2]=c}return 1}d=a+5152|0;F[(d+b|0)+96|0]=1;L[d+(b<<2)>>2]=c;a=a+5580|0;H[a>>2]=H[a>>2]|32;return 1}function LS(a,b){a=a|0;b=b|0;var c=0,d=O(0),e=O(0),f=O(0);c=H[b+460>>2];H[a+16>>2]=H[b+456>>2];H[a+20>>2]=c;c=H[b+452>>2];H[a+8>>2]=H[b+448>>2];H[a+12>>2]=c;c=H[b+444>>2];H[a>>2]=H[b+440>>2];H[a+4>>2]=c;e=L[b+44>>2];f=L[b+36>>2];d=O(L[b+532>>2]+L[b+52>>2]);M[a+8>>3]=M[a+8>>3]-+O(d*L[b+40>>2]);M[a>>3]=M[a>>3]-+O(f*d);M[a+16>>3]=M[a+16>>3]-+O(d*e)}function pr(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;e=Oa-16|0;Oa=e;f=a+32|0;H[f+2300>>2]=0;H[e+12>>2]=0;a=f+2296|0;if((H[a+8>>2]&2147483647)>>>0>>0){Ll(a,c)}d=H[a+4>>2];if((d|0)<(c|0)){g=H[a>>2];h=g+(c<<2)|0;d=(d<<2)+g|0;while(1){H[d>>2]=H[e+12>>2];d=d+4|0;if(h>>>0>d>>>0){continue}break}}H[a+4>>2]=c;R6(H[f+2296>>2],b,c<<2);Oa=e+16|0}function pg(a){var b=0,c=0,d=0,e=0,f=0;e=Oa-16|0;Oa=e;a=H[a+4>>2];if(a){f=H[a+36>>2];a=H[a+40>>2]}else{a=0}while(1){c=a>>>0>>0?d:a;a:{while(1){if((d|0)==(c|0)){break a}b=d<<3;d=d+1|0;b=b+f|0;if(I[b|0]){continue}break}c=H[b+4>>2];if(!c){break a}b=nf(c);if(!b){continue}H[e+12>>2]=c;Pf(b+5892|0,e+12|0);Mt(b+16|0,c+16|0);continue}break}Oa=e+16|0}function m6(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;e=H[a+84>>2];f=H[e+4>>2];g=H[a+28>>2];d=H[a+20>>2]-g|0;d=d>>>0>f>>>0?f:d;if(d){R6(H[e>>2],g,d);H[e>>2]=d+H[e>>2];f=H[e+4>>2]-d|0;H[e+4>>2]=f}d=H[e>>2];f=c>>>0>f>>>0?f:c;if(f){R6(d,b,f);d=f+H[e>>2]|0;H[e>>2]=d;H[e+4>>2]=H[e+4>>2]-f}F[d|0]=0;b=H[a+44>>2];H[a+28>>2]=b;H[a+20>>2]=b;return c|0}function W6(a,b){a:{if((b|0)>=1024){a=a*8.98846567431158e307;if(b>>>0<2047){b=b-1023|0;break a}a=a*8.98846567431158e307;b=(b>>>0<3069?b:3069)-2046|0;break a}if((b|0)>-1023){break a}a=a*2.004168360008973e-292;if(b>>>0>4294965304){b=b+969|0;break a}a=a*2.004168360008973e-292;b=(b>>>0>4294964336?b:-2960)+1938|0}x(0,0);x(1,b+1023<<20);return a*+z()}function D6(a,b,c,d){F[a+53|0]=1;a:{if(H[a+4>>2]!=(c|0)){break a}F[a+52|0]=1;c=H[a+16>>2];b:{if(!c){H[a+36>>2]=1;H[a+24>>2]=d;H[a+16>>2]=b;if(H[a+48>>2]!=1){break a}if((d|0)==1){break b}break a}if((b|0)==(c|0)){c=H[a+24>>2];if((c|0)==2){H[a+24>>2]=d;c=d}if(H[a+48>>2]!=1){break a}if((c|0)==1){break b}break a}H[a+36>>2]=H[a+36>>2]+1}F[a+54|0]=1}}function kH(a,b){var c=0,d=0,e=0,f=0,g=0;a:{if(!b){break a}d=b<<2;if(!d){break a}c=H[a>>2];e=Ra[H[H[c>>2]+8>>2]](c,d,13582,553)|0}f=H[a+4>>2];c=H[a+8>>2];if((c|0)>0){g=(c<<2)+e|0;d=f;c=e;while(1){H[c>>2]=H[d>>2];d=d+4|0;c=c+4|0;if(g>>>0>c>>>0){continue}break}}if(!(!f|H[a+12>>2]<0)){c=H[a>>2];Ra[H[H[c>>2]+12>>2]](c,f)}H[a+12>>2]=b;H[a+4>>2]=e}function Cf(a,b){a=a|0;b=O(b);var c=0,d=0,e=0;d=a+16|0;a:{b:{c:{e=H[a+20>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(I[H[d>>2]+4785|0]){break a}}L[a+84>>2]=b;a=H[a+88>>2];if(a){L[a+44>>2]=b}return}c=H[a+24>>2];if(!c){c=Tt(H[a+16>>2],e>>>24&15);H[a+24>>2]=c}L[c+20>>2]=b;$t(H[a+16>>2],d);H[a+20>>2]=H[a+20>>2]|8}function sh(a){a=a|0;var b=0,c=0;if(H[a+100>>2]){while(1){Yj(H[H[a+96>>2]+(b<<2)>>2]+48|0);b=b+1|0;if(b>>>0>2]){continue}break}}b=a+12|0;F[a+72|0]=1;H[a+68>>2]=0;a:{b:{switch((H[a+16>>2]>>>30|0)-2|0){case 0:c=H[b>>2];if(I[c+4785|0]){break a}default:H[a+56>>2]=0;return;case 1:break b}}c=H[b>>2]}$t(c,b);H[a+16>>2]=H[a+16>>2]&-897|384}function nV(a,b,c){a=a|0;b=b|0;c=c|0;var d=O(0),e=O(0),f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0);b=H[b+4>>2];d=L[b+56>>2];e=L[b+52>>2];f=L[b+72>>2];g=L[b+68>>2];h=L[b+48>>2];i=L[c+8>>2];j=L[c+4>>2];k=L[c>>2];l=L[b+64>>2];H[a+12>>2]=0;b=O(O(d*i)+O(O(h*k)+O(e*j)))>O(O(f*i)+O(O(l*k)+O(j*g)));L[a+8>>2]=b?d:f;L[a+4>>2]=b?e:g;L[a>>2]=b?h:l}function UR(a,b){a=a|0;b=b|0;var c=0;c=Oa-32|0;Oa=c;if(!(!(L[a+36>>2]!=L[b>>2]|L[a+40>>2]!=L[b+4>>2])&L[a+44>>2]==L[b+8>>2])){H[c+8>>2]=0;H[c>>2]=1065353216;H[c+4>>2]=0;C5(c+16|0,c,b);L[a+20>>2]=L[c+16>>2];L[a+24>>2]=L[c+20>>2];L[a+28>>2]=L[c+24>>2];L[a+32>>2]=L[c+28>>2];L[a+36>>2]=L[b>>2];L[a+40>>2]=L[b+4>>2];L[a+44>>2]=L[b+8>>2]}Oa=c+32|0}function zG(a){var b=0,c=0;b=H[a+60>>2];if(b){a=H[b+60>>2];a:{b:{if(a){a=H[a+164>>2];if(a){break b}}a=H[b- -64>>2];if(!a){break a}a=H[a+164>>2];if(!a){break a}}IG(H[H[b+48>>2]+1136>>2],a,b)}if(!(I[b+68|0]&8)){MG(H[b+56>>2])}c=H[b+56>>2];if(c){a=H[H[b+48>>2]+2408>>2];H[a+280>>2]=H[a+280>>2]-1;H[c>>2]=H[a+288>>2];H[a+288>>2]=c}H[b+56>>2]=0}}function GE(a,b){var c=0,d=0,e=0,f=0;e=Oa-16|0;Oa=e;H[e+12>>2]=b;c=H[a+60>>2];d=(b>>>0)/(c>>>0)|0;c=H[H[a+40>>2]+(d<<2)>>2]+(b-N(c,d)<<4)|0;d=J[c+4>>1];a:{if(d&2){break a}f=H[a+340>>2];if(f>>>0>=(H[a+344>>2]&2147483647)>>>0){qm(a+336|0,e+12|0);d=J[c+4>>1];break a}H[H[a+336>>2]+(f<<2)>>2]=b;H[a+340>>2]=H[a+340>>2]+1}G[c+4>>1]=d|2;Oa=e+16|0}function nU(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0;a:{e=H[a+172>>2];if(!e){break a}if((e|0)!=1){i=e&-2;while(1){d=f<<2;g=H[d+H[a+168>>2]>>2];Ra[H[H[g>>2]+8>>2]](g,b,c);d=H[H[a+168>>2]+(d|4)>>2];Ra[H[H[d>>2]+8>>2]](d,b,c);f=f+2|0;h=h+2|0;if((i|0)!=(h|0)){continue}break}}if(!(e&1)){break a}a=H[H[a+168>>2]+(f<<2)>>2];Ra[H[H[a>>2]+8>>2]](a,b,c)}}function Wi(a,b){a=a|0;b=O(b);var c=0,d=0,e=0;b=b>O(0)?O(O(1)/b):O(0);d=a+48|0;a:{b:{c:{e=H[a+52>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(I[H[d>>2]+4785|0]){break a}}MF(a- -64|0,b);return}c=H[a+56>>2];if(!c){c=Tt(H[a+48>>2],e>>>24&15);H[a+56>>2]=c}L[c+92>>2]=b;$t(H[a+48>>2],d);H[a+316>>2]=H[a+316>>2]|1}function Kk(a,b,c){a=a|0;b=O(b);c=O(c);var d=0,e=0,f=0;e=a+8|0;a:{b:{c:{f=H[a+12>>2];switch((f>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(I[H[e>>2]+4785|0]){break a}}hE(a+20|0,b,c);return}d=H[a+16>>2];if(!d){d=Tt(H[a+8>>2],f>>>24&15);H[a+16>>2]=d}L[d+152>>2]=c;L[d+148>>2]=b;$t(H[a+8>>2],e);H[a+12>>2]=H[a+12>>2]|262144}function Ck(a,b,c){a=a|0;b=O(b);c=O(c);var d=0,e=0,f=0;e=a+8|0;a:{b:{c:{f=H[a+12>>2];switch((f>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(I[H[e>>2]+4785|0]){break a}}fE(a+20|0,b,c);return}d=H[a+16>>2];if(!d){d=Tt(H[a+8>>2],f>>>24&15);H[a+16>>2]=d}L[d+144>>2]=c;L[d+140>>2]=b;$t(H[a+8>>2],e);H[a+12>>2]=H[a+12>>2]|131072}function kR(a,b){var c=0,d=0;d=H[b+36>>2];H[b+36>>2]=-1;c=H[a>>2];b=d<<2;H[c+b>>2]=H[(c+(H[a+4>>2]<<2)|0)-4>>2];c=H[a+24>>2];H[c+b>>2]=H[(c+(H[a+28>>2]<<2)|0)-4>>2];c=H[a+12>>2];H[c+b>>2]=H[(c+(H[a+16>>2]<<2)|0)-4>>2];c=H[a+4>>2];if((c|0)!=(d+1|0)){H[H[b+H[a>>2]>>2]+36>>2]=d}H[a+4>>2]=c-1;H[a+16>>2]=H[a+16>>2]-1;H[a+28>>2]=H[a+28>>2]-1}function zO(a,b,c){var d=0;d=Oa-16|0;Oa=d;H[d+4>>2]=c;H[d>>2]=b;H[d+8>>2]=H[b+48>>2];H[d+12>>2]=H[c+48>>2];b=H[a+2424>>2];a:{if(b>>>0>=(H[a+2428>>2]&2147483647)>>>0){yO(a+2420|0,d);break a}c=H[d+4>>2];b=H[a+2420>>2]+(b<<4)|0;H[b>>2]=H[d>>2];H[b+4>>2]=c;c=H[d+12>>2];H[b+8>>2]=H[d+8>>2];H[b+12>>2]=c;H[a+2424>>2]=H[a+2424>>2]+1}Oa=d+16|0}function NG(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0;c=H[a+24>>2];b=H[c- -64>>2];e=1;f=1;d=H[c+60>>2];if(d){f=K[d+152>>2]<4294967294}e=b?K[b+152>>2]<4294967294:e;g=d?!(F[H[d+44>>2]+44|0]&1):g;h=b?!(F[H[b+44>>2]+44|0]&1):h;b=0;a:{if(!(e|f)|!(g|h)){break a}F[a+21|0]=I[a+21|0]|32;b=1;if((I[c+68|0]&6)!=2){break a}qO(H[H[a>>2]+40>>2],c)}return b}function yG(a,b,c){var d=0,e=0;L[a+52>>2]=c;L[a+48>>2]=b;a=H[a+60>>2];if(a){d=I[a+68|0];e=b>2]+21|0]&32)){break a}qO(H[a+48>>2],a);break a}if(d&4){rO(H[a+48>>2],a);d=I[a+68|0]}F[a+68|0]=d&253}L[a+4>>2]=c;L[a>>2]=b}}function bq(a,b){a=a|0;b=b|0;a:{b:{switch(J[b+4>>1]-5|0){case 1:cq(b,b+48|0,0,0);return;case 0:a=b+48|0;if(!cq(b,a,0,0)|F[(I[b+317|0]&64?H[b+56>>2]+268|0:b+108|0)|0]&1){break a}rn(b,a);return;case 8:if(!cq(b,b+48|0,0,0)){break a}a=H[b+320>>2];ei(Ra[H[H[a>>2]+100>>2]](a)|0,0,1);return;default:break b}}o5(H[33808],4,9281,1767,63136,0)}}function Af(a,b,c){a=a|0;b=O(b);c=O(c);var d=0,e=0,f=0;e=a+16|0;a:{b:{c:{f=H[a+20>>2];switch((f>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(I[H[e>>2]+4785|0]){break a}}yG(a+28|0,b,c);return}d=H[a+24>>2];if(!d){d=Tt(H[a+16>>2],f>>>24&15);H[a+24>>2]=d}L[d+12>>2]=c;L[d+8>>2]=b;$t(H[a+16>>2],e);H[a+20>>2]=H[a+20>>2]|2}function xU(a,b){var c=O(0),d=O(0),e=O(0),f=O(0),g=O(0),h=O(0),i=O(0),j=O(0),k=O(0),l=O(0);j=L[b+24>>2];k=L[b+20>>2];l=L[b+16>>2];c=L[b>>2];e=O(c+c);d=L[b+8>>2];h=L[b+4>>2];f=L[b+12>>2];g=O(f+f);i=O(O(e*d)-O(h*g));L[a+8>>2]=i;d=O(O(d*g)+O(e*h));L[a+4>>2]=d;c=O(O(c*e)+O(O(f*g)+O(-1)));L[a>>2]=c;L[a+12>>2]=-O(O(j*i)+O(O(l*c)+O(k*d)))}function u6(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;e=Oa+-64|0;Oa=e;d=1;a:{if(t6(a,b,0)){break a}d=0;if(!b){break a}b=v6(b,96628);d=0;if(!b){break a}d=e+8|0;S6(d|4,0,52);H[e+56>>2]=1;H[e+20>>2]=-1;H[e+16>>2]=a;H[e+8>>2]=b;Ra[H[H[b>>2]+28>>2]](b,d,H[c>>2],1);a=H[e+32>>2];if((a|0)==1){H[c>>2]=H[e+24>>2]}d=(a|0)==1}Oa=e- -64|0;return d|0}function WL(a){a=a|0;var b=0,c=0,d=0,e=0;b=Oa-16|0;Oa=b;H[b+12>>2]=0;H[b+8>>2]=0;EL(H[a+28>>2],H[a+32>>2],H[a+36>>2],H[a+40>>2],H[a+44>>2],H[a+48>>2],H[a+52>>2],H[a+56>>2],L[a+60>>2],b+12|0,b+8|0);d=H[a+64>>2];c=H[d>>2];e=d;d=H[b+12>>2];H[e>>2]=(c|0)<(d|0)?d:c;c=H[a+68>>2];a=H[c>>2];d=c;c=H[b+8>>2];H[d>>2]=(a|0)<(c|0)?c:a;Oa=b+16|0}function Hn(a,b){a=a|0;b=O(b);var c=0,d=0,e=0;b=O(S(b,O(0)));d=a+48|0;a:{b:{c:{e=H[a+52>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(I[H[d>>2]+4785|0]){break a}}L[a+172>>2]=b;return}c=H[a+56>>2];if(!c){c=Tt(H[a+48>>2],e>>>24&15);H[a+56>>2]=c}L[c+132>>2]=b;$t(H[a+48>>2],d);H[a+316>>2]=H[a+316>>2]|256}function ir(a){a=a|0;var b=0,c=0,d=0;b=H[a+6340>>2];if(!(b>>>0>127|!I[b+135312|0])){c=H[(b<<2)+135440>>2]}b=c>>>16|0;if(!(b&255)){o5(H[33808],8,9281,2749,60388,0);return}b=b-1&255;d=c&255|(c&65280|(c&-16777216|b<<16));c=H[a+6340>>2];if(!(c>>>0>127|!I[c+135312|0])){H[(c<<2)+135440>>2]=d}if(!b){a=H[a+6348>>2];H[a+4>>2]=H[a+4>>2]-1}}function EE(a,b){var c=0;c=Oa-16|0;Oa=c;H[c+8>>2]=b;b=b>>>7|0;a:{if(H[(H[a+16>>2]+N(b,24)|0)+16>>2]){break a}b=H[a+28>>2]+(b<<2)|0;if(H[b>>2]!=33554431){break a}H[b>>2]=H[a+140>>2];b=H[a+140>>2];if(b>>>0>=(H[a+144>>2]&2147483647)>>>0){_E(a+136|0,c+8|0);break a}H[H[a+136>>2]+(b<<2)>>2]=H[c+8>>2];H[a+140>>2]=H[a+140>>2]+1}Oa=c+16|0}function J1(a,b){a=a|0;b=b|0;var c=0,d=0;d=H[b+4>>2];c=H[a+80>>2];H[c+268>>2]=H[b>>2];H[c+272>>2]=d;H[c+300>>2]=H[b+32>>2];d=H[b+28>>2];H[c+292>>2]=H[b+24>>2];H[c+296>>2]=d;d=H[b+20>>2];H[c+284>>2]=H[b+16>>2];H[c+288>>2]=d;d=H[b+12>>2];H[c+276>>2]=H[b+8>>2];H[c+280>>2]=d;F[H[a+80>>2]+479|0]=1;a=H[a+76>>2];Ra[H[H[a>>2]+36>>2]](a)}function ih(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;b=b&255|c<<8;c=a+12|0;a:{b:{c:{e=H[a+16>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(I[H[c>>2]+4785|0]){break a}}G[a+40>>1]=b;return}d=H[a+20>>2];if(!d){d=Tt(H[a+12>>2],e>>>24&15);H[a+20>>2]=d}G[d+20>>1]=b;$t(H[a+12>>2],c);H[a+16>>2]=H[a+16>>2]|32}function OH(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;c=H[a+48>>2];if(I[c+60|0]){fH(c)}c=H[a+52>>2];if(I[c+60|0]){fH(c);c=H[a+52>>2]}a=H[a+48>>2];d=H[a+8>>2];g=H[a+4>>2];h=H[a+24>>2];a=H[a+28>>2];i=H[c+8>>2];j=H[c+4>>2];k=H[c+24>>2];c=H[c+28>>2];MH(b,f,d,g,h,a,i,j,k,c,e);NH(b,f,i,j,k,c,d,g,h,a,e)}function vi(a,b){a=a|0;b=O(b);var c=0,d=0,e=0;d=a+48|0;b=O(b*b);a:{b:{c:{e=H[a+52>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(I[H[d>>2]+4785|0]){break a}}RF(a- -64|0,b);return}c=H[a+56>>2];if(!c){c=Tt(H[a+48>>2],e>>>24&15);H[a+56>>2]=c}L[c+120>>2]=b;$t(H[a+48>>2],d);H[a+316>>2]=H[a+316>>2]|32}function ti(a,b){a=a|0;b=O(b);var c=0,d=0,e=0;d=a+48|0;b=O(b*b);a:{b:{c:{e=H[a+52>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(I[H[d>>2]+4785|0]){break a}}QF(a- -64|0,b);return}c=H[a+56>>2];if(!c){c=Tt(H[a+48>>2],e>>>24&15);H[a+56>>2]=c}L[c+116>>2]=b;$t(H[a+48>>2],d);H[a+316>>2]=H[a+316>>2]|16}function ij(a,b){a=a|0;b=O(b);var c=0,d=0,e=0;d=a+48|0;b=O(-b);a:{b:{c:{e=H[a+52>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(I[H[d>>2]+4785|0]){break a}}L[a+156>>2]=b;return}c=H[a+56>>2];if(!c){c=Tt(H[a+48>>2],e>>>24&15);H[a+56>>2]=c}L[c+172>>2]=b;$t(H[a+48>>2],d);H[a+316>>2]=H[a+316>>2]|2048}function Es(a,b){a=a|0;b=b|0;var c=0,d=0;c=a+116|0;d=H[c>>2];if((d|0)==6){a=H[a+36>>2]&1?H[a+40>>2]- -64|0:c;H[b>>2]=H[a>>2];c=H[a+8>>2];H[b+4>>2]=H[a+4>>2];H[b+8>>2]=c;c=H[a+16>>2];H[b+12>>2]=H[a+12>>2];H[b+16>>2]=c;F[b+20|0]=I[a+20|0];F[b+23|0]=I[a+23|0];a=I[a+21|0]|I[a+22|0]<<8;F[b+21|0]=a;F[b+22|0]=a>>>8}return(d|0)==6|0}function mn(a,b){a=a|0;b=b|0;var c=0,d=O(0),e=O(0),f=O(0),g=O(0),h=O(0);c=Oa-32|0;Oa=c;e=L[b+12>>2];f=L[b+8>>2];g=L[b>>2];h=L[b+4>>2];d=O(O(1)/O(W(O(O(e*e)+O(O(f*f)+O(O(g*g)+O(h*h)))))));L[c+12>>2]=e*d;L[c+8>>2]=f*d;L[c+4>>2]=h*d;L[c>>2]=g*d;L[c+16>>2]=L[b+16>>2];L[c+20>>2]=L[b+20>>2];L[c+24>>2]=L[b+24>>2];nn(a,c);Oa=c+32|0}function Nn(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=a+48|0;b=I[b|0];a:{b:{c:{e=H[a+52>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(I[H[d>>2]+4785|0]){break a}}F[a+238|0]=b;return}c=H[a+56>>2];if(!c){c=Tt(H[a+48>>2],e>>>24&15);H[a+56>>2]=c}F[c+184|0]=b;$t(H[a+48>>2],d);H[a+316>>2]=H[a+316>>2]|16384}function WY(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;L[b>>2]=L[a+88>>2];L[c>>2]=L[a+92>>2];L[c+4>>2]=L[a+96>>2];L[c+8>>2]=L[a+100>>2];L[c+12>>2]=L[a+104>>2];L[c+16>>2]=L[a+108>>2];L[c+20>>2]=L[a+112>>2];L[c+24>>2]=L[a+116>>2];L[c+28>>2]=L[a+120>>2];L[c+32>>2]=L[a+124>>2];L[d>>2]=L[a+40>>2];L[d+4>>2]=L[a+44>>2];L[d+8>>2]=L[a+48>>2]}function Ch(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;a:{c=H[a+100>>2];if(!c){break a}if((c|0)!=1){g=c&-2;while(1){e=d<<2;Ra[H[H[b>>2]+8>>2]](b,H[e+H[a+96>>2]>>2]);Ra[H[H[b>>2]+8>>2]](b,H[H[a+96>>2]+(e|4)>>2]);d=d+2|0;f=f+2|0;if((g|0)!=(f|0)){continue}break}}if(!(c&1)){break a}Ra[H[H[b>>2]+8>>2]](b,H[H[a+96>>2]+(d<<2)>>2])}}function Nh(a){a=a|0;var b=0,c=0;H[a>>2]=103544;b=H[a+360>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=H[a+352>>2];if((b|0)==(a+332|0)){F[a+348|0]=0;break a}if(!b){break a}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}H[a>>2]=103952;H[a>>2]=104256;ht(a+20|0);H[a>>2]=104560;wg(a);b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,a)}function kp(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=Oa-16|0;Oa=d;a:{if((Ra[H[H[b>>2]+28>>2]](b)|0)!=(a|0)){a=H[33808];H[d>>2]=3836;o5(a,8,9281,79,64859,d);break a}b:{switch(Ra[H[H[b>>2]+24>>2]](b)|0){case 0:fp(a,b,c,1);break a;case 1:gp(a,b,c,1);break a;case 2:break b;default:break a}}o5(H[33808],2,9281,689,18618,0)}Oa=d+16|0}function IR(a,b){var c=O(0),d=0,e=0,f=0,g=0,h=0,i=0,j=O(0),k=O(0);d=M[a+440>>3];j=L[a+36>>2];e=M[a+448>>3];k=L[a+40>>2];f=M[a+456>>3];c=L[a+536>>2];g=+O(O(c*L[a+44>>2])*O(.5));M[b+40>>3]=f+g;h=+O(O(c*k)*O(.5));M[b+32>>3]=e+h;i=+O(O(c*j)*O(.5));M[b+24>>3]=d+i;M[b+16>>3]=f-g;M[b+8>>3]=e-h;M[b>>3]=d-i;L[b+48>>2]=L[a+532>>2]}function Oz(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=Oa-48|0;Oa=a;H[a+20>>2]=g;H[a+12>>2]=f;H[a+24>>2]=i;i=0;H[a+16>>2]=0;if(e){while(1){c=(i<<3)+d|0;f=(H[c>>2]<<5)+b|0;Ra[H[(I[H[f+24>>2]]<<2)+j>>2]](f,J[c+4>>1],a+8|0);i=i+1|0;if((i|0)!=(e|0)){continue}break}}H[h>>2]=0;Oa=a+48|0}function H5(a){var b=0,c=0,d=0,e=0;c=Oa-16|0;Oa=c;a:{if(!a){break a}a=a-16|0;b=H[a>>2];if(b>>>0>=17){b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,a);break a}d=b-8|0;if(d>>>0>=K[H[33808]+248>>2]){e=H[33808];H[c+12>>2]=0;j5(e+244|0,b-7|0,c+12|0)}b=d<<2;H[a>>2]=H[b+H[H[33808]+244>>2]>>2];H[b+H[H[33808]+244>>2]>>2]=a}Oa=c+16|0}function uT(a){a=a|0;var b=0,c=0;H[a>>2]=125212;sT(a+28|0,0,0,0,0);b=H[a+24>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=H[a+16>>2];if(!b){break a}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}b=H[a+12>>2];b:{if((b|0)<0|!(b&2147483647)){break b}b=H[a+4>>2];if(!b){break b}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}return a|0}function iB(a){var b=0,c=0;b=H[a+8>>2];if(b){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}H[a+8>>2]=0;b=H[a+12>>2];if(b){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}H[a+12>>2]=0;b=H[a+16>>2];if(b){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}H[a+16>>2]=0;b=H[a+20>>2];if(b){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}H[a+20>>2]=0}function zn(a,b){a=a|0;b=O(b);var c=0,d=0,e=0;d=a+48|0;a:{b:{c:{e=H[a+52>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(I[H[d>>2]+4785|0]){break a}}YF(a- -64|0,b);return}c=H[a+56>>2];if(!c){c=Tt(H[a+48>>2],e>>>24&15);H[a+56>>2]=c}L[c+176>>2]=b;$t(H[a+48>>2],d);H[a+316>>2]=H[a+316>>2]|4096}function kj(a,b){a=a|0;b=O(b);var c=0,d=0,e=0;d=a+48|0;a:{b:{c:{e=H[a+52>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(I[H[d>>2]+4785|0]){break a}}VF(a- -64|0,b);return}c=H[a+56>>2];if(!c){c=Tt(H[a+48>>2],e>>>24&15);H[a+56>>2]=c}L[c+180>>2]=b;$t(H[a+48>>2],d);H[a+316>>2]=H[a+316>>2]|8192}function dq(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;a:{b:{switch(J[b+4>>1]-5|0){case 1:cq(b,b+48|0,c,d);return;case 0:a=b+48|0;if(!cq(b,a,c,d)|F[(I[b+317|0]&64?H[b+56>>2]+268|0:b+108|0)|0]&1){break a}rn(b,a);return;case 8:break b;default:break a}}if(!cq(b,b+48|0,c,d)){break a}a=H[b+320>>2];ei(Ra[H[H[a>>2]+100>>2]](a)|0,0,1)}}function Id(a,b,c){a=a|0;b=b|0;c=c|0;a=H[a>>2]+N(b,48)|0;L[a>>2]=L[c>>2];L[a+4>>2]=L[c+4>>2];L[a+8>>2]=L[c+8>>2];L[a+12>>2]=L[c+12>>2];L[a+16>>2]=L[c+16>>2];L[a+20>>2]=L[c+20>>2];L[a+24>>2]=L[c+24>>2];H[a+28>>2]=H[c+28>>2];L[a+32>>2]=L[c+32>>2];L[a+36>>2]=L[c+36>>2];L[a+40>>2]=L[c+40>>2];H[a+44>>2]=H[c+44>>2];return 1}function ZP(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;c=Oa-48|0;Oa=c;d=H[a+28>>2];a=H[H[d+976>>2]+1024>>2];Ra[H[H[a>>2]+84>>2]](c+8|0,a);b=H[d+980>>2];a=H[b+332>>2];if(a){b=H[b+328>>2];f=(H[d+2360>>2]&8)!=0;while(1){a=a-1|0;e=H[b+8>>2];if(!(!e|I[e+24|0])){pI(H[d+2168>>2],e,4,0,c+8|0,f)}b=b+12|0;if(a){continue}break}}Oa=c+48|0}function xn(a,b){a=a|0;b=O(b);var c=0,d=0,e=0;d=a+48|0;a:{b:{c:{e=H[a+52>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(I[H[d>>2]+4785|0]){break a}}XF(a- -64|0,b);return}c=H[a+56>>2];if(!c){c=Tt(H[a+48>>2],e>>>24&15);H[a+56>>2]=c}L[c+124>>2]=b;$t(H[a+48>>2],d);H[a+316>>2]=H[a+316>>2]|64}function gj(a,b){a=a|0;b=O(b);var c=0,d=0,e=0;d=a+48|0;a:{b:{c:{e=H[a+52>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(I[H[d>>2]+4785|0]){break a}}L[a+140>>2]=b;return}c=H[a+56>>2];if(!c){c=Tt(H[a+48>>2],e>>>24&15);H[a+56>>2]=c}L[c+128>>2]=b;$t(H[a+48>>2],d);H[a+316>>2]=H[a+316>>2]|128}function Uh(a,b){a=a|0;b=O(b);var c=0,d=0,e=0;d=a+48|0;a:{b:{c:{e=H[a+52>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(I[H[d>>2]+4785|0]){break a}}PF(a- -64|0,b);return}c=H[a+56>>2];if(!c){c=Tt(H[a+48>>2],e>>>24&15);H[a+56>>2]=c}L[c+112>>2]=b;$t(H[a+48>>2],d);H[a+316>>2]=H[a+316>>2]|8}function Sh(a,b){a=a|0;b=O(b);var c=0,d=0,e=0;d=a+48|0;a:{b:{c:{e=H[a+52>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(I[H[d>>2]+4785|0]){break a}}OF(a- -64|0,b);return}c=H[a+56>>2];if(!c){c=Tt(H[a+48>>2],e>>>24&15);H[a+56>>2]=c}L[c+108>>2]=b;$t(H[a+48>>2],d);H[a+316>>2]=H[a+316>>2]|4}function HM(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;a:{if(!c){break a}f=c&1;d=0;if((c|0)!=1){g=c&-2;c=0;while(1){e=d<<2;Ra[H[H[a>>2]+28>>2]](a,H[e+b>>2],0,0);Ra[H[H[a>>2]+28>>2]](a,H[(e|4)+b>>2],0,0);d=d+2|0;c=c+2|0;if((g|0)!=(c|0)){continue}break}}if(!f){break a}Ra[H[H[a>>2]+28>>2]](a,H[(d<<2)+b>>2],0,0)}}function Nx(a,b){var c=0,d=0,e=0;d=Oa-16|0;Oa=d;a:{if(!b){break a}c=H[33808];b=Ra[H[H[c+12>>2]+8>>2]](c+12|0,b,20591,8029,250)|0;H[d+12>>2]=b;if(!b){break a}c=H[a+104>>2];b:{if(c>>>0>=(H[a+108>>2]&2147483647)>>>0){Xr(a+100|0,d+12|0);break b}H[H[a+100>>2]+(c<<2)>>2]=b;H[a+104>>2]=c+1}e=H[d+12>>2]}Oa=d+16|0;return e}function tk(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=a+8|0;a:{b:{c:{e=H[a+12>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(I[H[d>>2]+4785|0]){break a}}dE(a+20|0,b);return}c=H[a+16>>2];if(!c){c=Tt(H[a+8>>2],e>>>24&15);H[a+16>>2]=c}H[c+136>>2]=b;$t(H[a+8>>2],d);H[a+12>>2]=H[a+12>>2]|524288} -function oO(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;d=H[33808];e=d+12|0;d=(g=e,h=28,i=Ra[H[H[d>>2]+20>>2]](d)|0?33222:55639,j=9345,k=1766,f=H[H[e>>2]+8>>2],Ra[f](g|0,h|0,i|0,j|0,k|0)|0);e=H[b>>2];c=H[c>>2];b=UG(d,e,c,5,0);H[d+24>>2]=a;WO(b);WD(H[d>>2],b);WD(H[d+4>>2],b);qF(H[e+160>>2],c,e,d);H[H[d+24>>2]>>2]=d}function IY(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=Oa-48|0;Oa=d;if(b){g=a+4|0;while(1){e=d+36|0;f=H[c>>2];YZ(H[a+3368>>2],H[a+12>>2],d,e,0,f,0,0);FY(g,f,L[d>>2],L[d+4>>2],L[d+8>>2],L[d+12>>2],L[d+16>>2],L[d+20>>2],L[d+24>>2],L[d+28>>2],L[d+32>>2],e);c=c+4|0;b=b-1|0;if(b){continue}break}}Oa=d+48|0;return 1}function qk(a,b){a=a|0;b=O(b);var c=0,d=0,e=0;d=a+8|0;a:{b:{c:{e=H[a+12>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(I[H[d>>2]+4785|0]){break a}}iE(a+20|0,b);return}c=H[a+16>>2];if(!c){c=Tt(H[a+8>>2],e>>>24&15);H[a+16>>2]=c}L[c+124>>2]=b;$t(H[a+8>>2],d);H[a+12>>2]=H[a+12>>2]|16384}function Gk(a,b){a=a|0;b=O(b);var c=0,d=0,e=0;d=a+8|0;a:{b:{c:{e=H[a+12>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(I[H[d>>2]+4785|0]){break a}}L[a+348>>2]=b;return}c=H[a+16>>2];if(!c){c=Tt(H[a+8>>2],e>>>24&15);H[a+16>>2]=c}L[c+120>>2]=b;$t(H[a+8>>2],d);H[a+12>>2]=H[a+12>>2]|8192}function Ek(a,b){a=a|0;b=O(b);var c=0,d=0,e=0;d=a+8|0;a:{b:{c:{e=H[a+12>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(I[H[d>>2]+4785|0]){break a}}L[a+344>>2]=b;return}c=H[a+16>>2];if(!c){c=Tt(H[a+8>>2],e>>>24&15);H[a+16>>2]=c}L[c+116>>2]=b;$t(H[a+8>>2],d);H[a+12>>2]=H[a+12>>2]|4096}function zg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;e=Oa-16|0;Oa=e;d=I[a+73|0];d=c?d|b:d&(b^-1);F[a+73|0]=d;b=a+12|0;a:{b:{c:{switch((H[a+16>>2]>>>30|0)-2|0){case 0:c=H[b>>2];if(I[c+4785|0]){break b}default:F[e+8|0]=d;_D(a+24|0,e+8|0);break a;case 1:break c}}c=H[b>>2]}$t(c,b);H[a+16>>2]=H[a+16>>2]|524288}Oa=e+16|0}function yk(a,b){a=a|0;b=O(b);var c=0,d=0,e=0;d=a+8|0;a:{b:{c:{e=H[a+12>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(I[H[d>>2]+4785|0]){break a}}L[a+332>>2]=b;return}c=H[a+16>>2];if(!c){c=Tt(H[a+8>>2],e>>>24&15);H[a+16>>2]=c}L[c+100>>2]=b;$t(H[a+8>>2],d);H[a+12>>2]=H[a+12>>2]|256}function ok(a,b){a=a|0;b=O(b);var c=0,d=0,e=0;d=a+8|0;a:{b:{c:{e=H[a+12>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(I[H[d>>2]+4785|0]){break a}}gE(a+20|0,b);return}c=H[a+16>>2];if(!c){c=Tt(H[a+8>>2],e>>>24&15);H[a+16>>2]=c}L[c+108>>2]=b;$t(H[a+8>>2],d);H[a+12>>2]=H[a+12>>2]|1024}function nh(a,b){a=a|0;b=O(b);var c=0,d=0,e=0;d=a+12|0;a:{b:{c:{e=H[a+16>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(I[H[d>>2]+4785|0]){break a}}L[a+52>>2]=b;return}c=H[a+20>>2];if(!c){c=Tt(H[a+12>>2],e>>>24&15);H[a+20>>2]=c}L[c+24>>2]=b;$t(H[a+12>>2],d);H[a+16>>2]=H[a+16>>2]|64}function lh(a,b){a=a|0;b=O(b);var c=0,d=0,e=0;d=a+12|0;a:{b:{c:{e=H[a+16>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(I[H[d>>2]+4785|0]){break a}}L[a+48>>2]=b;return}c=H[a+20>>2];if(!c){c=Tt(H[a+12>>2],e>>>24&15);H[a+20>>2]=c}L[c+16>>2]=b;$t(H[a+12>>2],d);H[a+16>>2]=H[a+16>>2]|16}function ik(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=a+8|0;a:{b:{c:{e=H[a+12>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(I[H[d>>2]+4785|0]){break a}}F[a+354|0]=b;return}c=H[a+16>>2];if(!c){c=Tt(H[a+8>>2],e>>>24&15);H[a+16>>2]=c}H[c+132>>2]=b;$t(H[a+8>>2],d);H[a+12>>2]=H[a+12>>2]|65536}function Ak(a,b){a=a|0;b=O(b);var c=0,d=0,e=0;d=a+8|0;a:{b:{c:{e=H[a+12>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(I[H[d>>2]+4785|0]){break a}}L[a+336>>2]=b;return}c=H[a+16>>2];if(!c){c=Tt(H[a+8>>2],e>>>24&15);H[a+16>>2]=c}L[c+104>>2]=b;$t(H[a+8>>2],d);H[a+12>>2]=H[a+12>>2]|512}function _k(a,b){a=a|0;b=O(b);var c=0,d=0,e=0;d=a+8|0;a:{b:{c:{e=H[a+12>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(I[H[d>>2]+4785|0]){break a}}L[a+288>>2]=b;return}c=H[a+16>>2];if(!c){c=Tt(H[a+8>>2],e>>>24&15);H[a+16>>2]=c}L[c+96>>2]=b;$t(H[a+8>>2],d);H[a+12>>2]=H[a+12>>2]|128}function VI(a,b,c){var d=0;H[a+20>>2]=0;H[a+24>>2]=0;H[a+44>>2]=c;H[a+40>>2]=b;H[a>>2]=115200;H[a+28>>2]=0;H[a+32>>2]=0;H[a+36>>2]=0;H[c>>2]=a;H[a>>2]=116180;b=H[b+2372>>2];c=H[b+12>>2];if(c){c=c-1|0;d=H[H[b+8>>2]+(c<<2)>>2];H[b+12>>2]=c;H[a+48>>2]=d;return a}c=b;b=H[b+4>>2];H[c+4>>2]=b+1;H[a+48>>2]=b;return a}function UF(a,b,c){var d=0;d=H[a+176>>2];if(d){if(c){L[a+140>>2]=L[d+44>>2];L[a+128>>2]=L[d+32>>2];L[a+132>>2]=L[d+36>>2];L[a+136>>2]=L[d+40>>2];L[a+120>>2]=L[d+48>>2];L[a+124>>2]=L[d+52>>2];L[a+112>>2]=L[d+56>>2];L[a+116>>2]=L[d+60>>2]}H[b+280>>2]=H[b+280>>2]-1;H[d>>2]=H[b+288>>2];H[b+288>>2]=d;H[a+176>>2]=0}}function OG(a){var b=0,c=0,d=0,e=0,f=0;c=H[a+24>>2];b=H[c- -64>>2];d=H[c+60>>2];if(d){f=!(F[H[d+44>>2]+44|0]&1)}e=b?!(F[H[b+44>>2]+44|0]&1):e;a:{if(!(!(K[d+152>>2]<4294967294?d:0)&(!b|K[b+152>>2]>4294967293))){b=0;if(f|e){break a}}if((I[c+68|0]&6)==6){rO(H[H[a>>2]+40>>2],c)}F[a+21|0]=I[a+21|0]&223;b=1}return b}function Mk(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=a+8|0;a:{b:{c:{e=H[a+12>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(I[H[d>>2]+4785|0]){break a}}F[a+353|0]=b;return}c=H[a+16>>2];if(!c){c=Tt(H[a+8>>2],e>>>24&15);H[a+16>>2]=c}F[c+128|0]=b;$t(H[a+8>>2],d);H[a+12>>2]=H[a+12>>2]|32768}function Mj(a,b){a=a|0;b=O(b);var c=0,d=0,e=0;d=a+12|0;a:{b:{c:{e=H[a+16>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(I[H[d>>2]+4785|0]){break a}}L[a+44>>2]=b;return}c=H[a+20>>2];if(!c){c=Tt(H[a+12>>2],e>>>24&15);H[a+20>>2]=c}L[c+12>>2]=b;$t(H[a+12>>2],d);H[a+16>>2]=H[a+16>>2]|8}function wk(a,b){a=a|0;b=O(b);var c=0,d=0,e=0;d=a+8|0;a:{b:{c:{e=H[a+12>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(I[H[d>>2]+4785|0]){break a}}L[a+272>>2]=b;return}c=H[a+16>>2];if(!c){c=Tt(H[a+8>>2],e>>>24&15);H[a+16>>2]=c}L[c+92>>2]=b;$t(H[a+8>>2],d);H[a+12>>2]=H[a+12>>2]|64}function ss(a,b){a=a|0;b=b|0;var c=0,d=0;a:{b:{c:{d:{c=a+48|0;switch(H[c+68>>2]-5|0){case 1:break c;case 0:break d;default:break a}}Ra[H[H[b>>2]+12>>2]](b,16);d=c+120|0;c=c+116|0;break b}Ra[H[H[b>>2]+12>>2]](b,16);d=c+100|0;c=c+96|0}Ra[H[H[b>>2]+8>>2]](b,H[c>>2],J[d>>1]<<1)}Ra[H[H[b>>2]+16>>2]](b,H[a+192>>2])}function mk(a,b){a=a|0;b=O(b);var c=0,d=0,e=0;d=a+8|0;a:{b:{c:{e=H[a+12>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(I[H[d>>2]+4785|0]){break a}}L[a+328>>2]=b;return}c=H[a+16>>2];if(!c){c=Tt(H[a+8>>2],e>>>24&15);H[a+16>>2]=c}L[c+88>>2]=b;$t(H[a+8>>2],d);H[a+12>>2]=H[a+12>>2]|32}function kk(a,b){a=a|0;b=O(b);var c=0,d=0,e=0;d=a+8|0;a:{b:{c:{e=H[a+12>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(I[H[d>>2]+4785|0]){break a}}L[a+324>>2]=b;return}c=H[a+16>>2];if(!c){c=Tt(H[a+8>>2],e>>>24&15);H[a+16>>2]=c}L[c+84>>2]=b;$t(H[a+8>>2],d);H[a+12>>2]=H[a+12>>2]|16}function Ik(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=a+8|0;a:{b:{c:{e=H[a+12>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(I[H[d>>2]+4785|0]){break a}}F[a+352|0]=b;return}c=H[a+16>>2];if(!c){c=Tt(H[a+8>>2],e>>>24&15);H[a+16>>2]=c}F[c+112|0]=b;$t(H[a+8>>2],d);H[a+12>>2]=H[a+12>>2]|2048}function AN(a,b){var c=O(0),d=O(0),e=O(0),f=O(0),g=O(0),h=O(0),i=O(0);b=H[b+32>>2];a:{if(b){L[a>>2]=L[b>>2];d=L[b+20>>2];e=L[b+28>>2];f=L[b+16>>2];g=L[b+12>>2];h=L[b+8>>2];i=L[b+4>>2];c=L[b+24>>2];break a}H[a>>2]=0;c=O(0)}L[a+28>>2]=e;L[a+16>>2]=f;L[a+12>>2]=g;L[a+8>>2]=h;L[a+4>>2]=i;L[a+24>>2]=c;L[a+20>>2]=d}function wq(a){a=a|0;var b=0,c=0,d=0;b=H[a+28>>2];d=Ra[H[H[b>>2]+136>>2]](b)|0;if(d){b=0;c=H[a+28>>2];Ra[H[H[c>>2]+392>>2]](c,0,0);if(H[a+36>>2]){while(1){c=H[a+32>>2]+N(b,24)|0;Ra[H[H[d>>2]+12>>2]](d,c,H[c+16>>2],H[c+20>>2]);b=b+1|0;if(b>>>0>2]){continue}break}}a=H[a+28>>2];Ra[H[H[a>>2]+396>>2]](a)}}function px(a,b){var c=0,d=0,e=O(0),f=O(0),g=0;c=J[b+8>>1];if((c|0)==65535){b=H[b+4>>2];e=L[b+24>>2];f=L[b+8>>2];c=H[b+16>>2];d=H[b+20>>2];g=H[b+4>>2];b=H[b>>2];H[a+12>>2]=0;H[a>>2]=b;H[a+4>>2]=g;H[a+28>>2]=0;L[a+24>>2]=e;H[a+16>>2]=c;H[a+20>>2]=d;L[a+8>>2]=f;return}d=a;a=H[b>>2];Ra[H[H[a>>2]+116>>2]](d,a,c)}function Kj(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=a+12|0;a:{b:{c:{e=H[a+16>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(I[H[d>>2]+4785|0]){break a}}H[a+36>>2]=b;return}c=H[a+20>>2];if(!c){c=Tt(H[a+12>>2],e>>>24&15);H[a+20>>2]=c}H[c+8>>2]=b;$t(H[a+12>>2],d);H[a+16>>2]=H[a+16>>2]|4}function Ij(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=a+12|0;a:{b:{c:{e=H[a+16>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(I[H[d>>2]+4785|0]){break a}}H[a+32>>2]=b;return}c=H[a+20>>2];if(!c){c=Tt(H[a+12>>2],e>>>24&15);H[a+20>>2]=c}H[c+4>>2]=b;$t(H[a+12>>2],d);H[a+16>>2]=H[a+16>>2]|2}function xs(a,b){a=a|0;b=b|0;var c=0;b=H[b+36>>2]&1?H[b+40>>2]- -64|0:b+116|0;c=H[b+4>>2];H[a>>2]=H[b>>2];H[a+4>>2]=c;c=H[b+36>>2];H[a+32>>2]=H[b+32>>2];H[a+36>>2]=c;c=H[b+28>>2];H[a+24>>2]=H[b+24>>2];H[a+28>>2]=c;c=H[b+20>>2];H[a+16>>2]=H[b+16>>2];H[a+20>>2]=c;c=H[b+12>>2];H[a+8>>2]=H[b+8>>2];H[a+12>>2]=c}function bs(a){a=a|0;var b=0,c=O(0),d=0;d=H[a+28>>2];b=d+32|0;a=H[a+20>>2];c=L[d+6072>>2];if(c!=O(0)){L[b+1080>>2]=c;H[b+4528>>2]=1;H[b+4524>>2]=a;L[b+1084>>2]=c>O(0)?O(O(1)/c):O(0);if(a){Ra[H[H[a>>2]+16>>2]](a);H[b+4520>>2]=H[H[b+4524>>2]+16>>2]}a=b+4504|0;bO(b,a);b=H[b+4520>>2];Ra[H[H[b>>2]+72>>2]](b,a)}}function _i(a,b){a=a|0;b=b|0;var c=0,d=O(0),e=O(0),f=O(0);if(I[b+316|0]&2){b=H[b+56>>2]+96|0}else{c=b- -64|0;b=H[c+176>>2];a:{if(!(!b|I[b+31|0]!=1)){b=b+32|0;break a}b=c+128|0}}d=L[b>>2];e=L[b+4>>2];f=L[b+8>>2];L[a+8>>2]=f==O(0)?O(0):O(O(1)/f);L[a+4>>2]=e==O(0)?O(0):O(O(1)/e);L[a>>2]=d==O(0)?O(0):O(O(1)/d)}function Gj(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=a+12|0;a:{b:{c:{e=H[a+16>>2];switch((e>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(I[H[d>>2]+4785|0]){break a}}H[a+28>>2]=b;return}c=H[a+20>>2];if(!c){c=Tt(H[a+12>>2],e>>>24&15);H[a+20>>2]=c}H[c>>2]=b;$t(H[a+12>>2],d);H[a+16>>2]=H[a+16>>2]|1}function Dn(a){a=a|0;var b=0,c=O(0);b=H[a+48>>2];c=L[b+5132>>2];a:{b:{switch((H[a+52>>2]>>>30|0)-2|0){case 0:if(I[b+4785|0]){break a}break;case 1:break a;default:break b}}L[a+308>>2]=c;H[a+312>>2]=0;WF(a- -64|0,c,1);return}L[a+308>>2]=c;H[a+312>>2]=0;$t(b,a+48|0);H[a+316>>2]=H[a+316>>2]&-117440513|83886080}function kr(a){a=a|0;var b=0,c=0,d=0;b=H[a+6340>>2];if(!(b>>>0>127|!I[b+135312|0])){c=H[(b<<2)+135440>>2]}b=c>>>24|0;if(!b){o5(H[33808],8,9281,2788,60282,0);return}b=b-1|0;d=c&255|(c&65280|(c&16711680|b<<24));c=H[a+6340>>2];if(!(c>>>0>127|!I[c+135312|0])){H[(c<<2)+135440>>2]=d}if(!(b&255)){H[a+6344>>2]=0}}function RA(a,b){var c=0,d=0,e=0;d=H[a+40>>2];if(d){e=H[a+8>>2];while(1){a=N(c,28)+e|0;L[a>>2]=L[a>>2]-L[b>>2];L[a+4>>2]=L[a+4>>2]-L[b+4>>2];L[a+8>>2]=L[a+8>>2]-L[b+8>>2];L[a+12>>2]=L[a+12>>2]-L[b>>2];L[a+16>>2]=L[a+16>>2]-L[b+4>>2];L[a+20>>2]=L[a+20>>2]-L[b+8>>2];c=c+1|0;if((d|0)!=(c|0)){continue}break}}}function Qh(a){a=a|0;var b=0;a:{b=H[a+320>>2];b=Ra[H[H[b>>2]+100>>2]](b)|0;if(!H[b+88>>2]|H[H[b+84>>2]>>2]!=(a|0)){break a}b=H[H[((J[a+4>>1]<<2)+73232|0)+72>>2]+a>>2];if(b){b=b-16|0}else{b=0}if(!b){break a}o5(H[33808],8,8347,141,18872,0);return}if(!H[a+356>>2]){Oh(a);return}o5(H[33808],8,8347,154,19974,0)}function hb(a,b){a=a|0;b=b|0;var c=0,d=0;c=Oa-32|0;Oa=c;d=H[a>>2];a=H[a+4>>2];b=(a>>1)+b|0;if(a&1){d=H[d+H[b>>2]>>2]}Ra[d|0](c,b);a=o6(28);L[a>>2]=L[c>>2];L[a+4>>2]=L[c+4>>2];L[a+8>>2]=L[c+8>>2];L[a+12>>2]=L[c+12>>2];L[a+16>>2]=L[c+16>>2];L[a+20>>2]=L[c+20>>2];L[a+24>>2]=L[c+24>>2];Oa=c+32|0;return a|0}function kn(a){a=a|0;var b=0,c=0,d=0,e=0;c=Oa-16|0;Oa=c;an(H[33772],a,H[a+8>>2],1);d=a+48|0;b=H[a+52>>2];e=I[(d+H[((b>>>22&60)+76348|0)+12>>2]|0)+8|0]&8;b=(b>>>30|0)-1>>>0<2?H[a+48>>2]:0;if(!(!b|!e)){mt(a+20|0,b)}Ph(a);if(b){It(b,d,1,(e|0)!=0);H[c+12>>2]=H[a+44>>2];jp(b-16|0,c+12|0)}wt(d);Oa=c+16|0}function Yn(a){a=a|0;var b=0,c=0,d=0,e=0;c=Oa-16|0;Oa=c;an(H[33772],a,H[a+8>>2],1);d=a+48|0;b=H[a+52>>2];e=I[(d+H[((b>>>22&60)+76348|0)+12>>2]|0)+8|0]&8;b=(b>>>30|0)-1>>>0<2?H[a+48>>2]:0;if(!(!b|!e)){mt(a+20|0,b)}Ph(a);if(b){Ft(b,d,1,(e|0)!=0);H[c+12>>2]=H[a+44>>2];jp(b-16|0,c+12|0)}wt(d);Oa=c+16|0}function Ej(a){a=a|0;var b=0,c=0;H[a>>2]=105192;Pl(H[33768],a);H[a>>2]=105444;Pl(H[33768],a);b=H[a+104>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=H[a+96>>2];if((b|0)==(a+76|0)){F[a+92|0]=0;break a}if(!b){break a}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,a)}function uy(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;c=H[a+16>>2];H[c>>2]=H[c>>2]+b;c=H[a+8>>2];b=b+15&-16;if(b>>>0>=16385){return Nx(H[c>>2],b)|0}a=H[a+4>>2];a:{d=H[c+4>>2];if(d){e=H[c+8>>2];f=b+e|0;if(f>>>0<16385){break a}}a=Ox(H[c>>2],a);H[c+8>>2]=b;H[c+4>>2]=a;return a|0}H[c+8>>2]=f;return d+e|0}function mF(a,b){var c=0,d=0,e=0;c=H[a+148>>2];d=(b>>>0)/(c>>>0)|0;H[H[H[a+128>>2]+(d<<2)>>2]+(b-N(c,d)<<2)>>2]=0;d=H[a+80>>2]+(b<<2)|0;e=H[d>>2];if(e){c=H[a+96>>2];a:{if(c>>>0>=(H[a+100>>2]&2147483647)>>>0){kF(a+92|0,d);break a}H[H[a+92>>2]+(c<<2)>>2]=e;H[a+96>>2]=c+1}H[H[a+80>>2]+(b<<2)>>2]=0}}function KG(a){var b=0,c=0,d=0,e=0;b=H[a+20>>2];while(1){e=H[b+24>>2];while(1){c=H[b+32>>2];if(c){b=c}else{d=H[b+36>>2];c=H[b+28>>2];if(c){H[c+32>>2]=0}H[b+20>>2]=0;H[b+24>>2]=0;H[b+36>>2]=0;H[b+40>>2]=0;H[b+28>>2]=0;H[b+32>>2]=0;b=d?d:c}if(b){continue}break}b=e;if(b){continue}break}H[a+20>>2]=0}function Wp(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;if(L[b>>2]>L[b+12>>2]){o5(H[33808],4,9281,1682,58630,0);return-1}a:{if(!I[(a+16|0)+4785|0]){a=H[a+1012>>2];d=H[a+272>>2];a=Ra[H[H[d>>2]+20>>2]](d,b,c,H[H[a+276>>2]+4>>2],H[H[a+192>>2]+4>>2])|0;break a}o5(H[33808],2,9424,1184,59243,0);a=-1}return a|0}function wT(a){a=a|0;var b=0,c=0,d=0,e=0;d=H[a+56>>2];e=H[d+120>>2];a:{b:{b=H[d+124>>2];if(!b){break b}while(1){if(H[(c<<2)+e>>2]==(a|0)){break b}c=c+1|0;if((b|0)!=(c|0)){continue}break}break a}if((b|0)==(c|0)){break a}b=b-1|0;H[d+124>>2]=b;H[(c<<2)+e>>2]=H[(b<<2)+e>>2]}Ra[H[H[a>>2]+4>>2]](a)}function us(a,b){var c=0,d=0,e=0,f=0;d=Oa-16|0;Oa=d;c=H[a+20>>2];a:{if(!c|!(I[(I[a+36|0]&64?H[a+40>>2]+52|0:a+112|0)|0]&2)){break a}e=vg(c);c=sg(H[a+20>>2]);if(e){f=qt(c,a,d+12|0);HD(e+5584|0,H[d+12>>2],f)}if(!H[c+20>>2]){break a}o5(H[33808],8,9142,236,b,0);fB(H[c+20>>2],H[a+20>>2])}Oa=d+16|0}function uC(a,b,c){var d=0,e=0;d=Oa-32|0;Oa=d;L[d>>2]=L[b>>2];L[d+4>>2]=L[b+4>>2];L[d+8>>2]=L[b+8>>2];L[d+12>>2]=L[b+12>>2];L[d+16>>2]=L[b+16>>2];L[d+20>>2]=L[b+20>>2];F[d+24|0]=1;XT(c,d);e=H[b+24>>2];if(!(e&1)){uC(a,N(e>>>1|0,28)+a|0,c);uC(a,a?(N(H[b+24>>2]>>>1|0,28)+a|0)+28|0:0,c)}Oa=d+32|0}function lJ(a,b){a=a|0;b=b|0;var c=0,d=0;a:{c=H[a+72>>2];b=H[(c+N(H[b+20>>2],20)|0)+12>>2];if((b|0)==-1){break a}while(1){b=H[a+60>>2]+(b<<3)|0;d=N(H[b>>2],20)+c|0;c=H[d+4>>2]-1|0;H[d+4>>2]=c;if(!c){fJ(a,H[b>>2])}b=H[b+4>>2];if((b|0)==-1){break a}c=H[a+72>>2];continue}}H[a+52>>2]=H[a+52>>2]-1}function av(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=H[b+100>>2];b=J[d+4>>1]<<5;b=(b+(b+d|0)|0)+(c<<5)|0;c=H[b+132>>2];H[a>>2]=H[b+128>>2];H[a+4>>2]=c;c=H[b+140>>2];H[a+8>>2]=H[b+136>>2];H[a+12>>2]=c;c=H[b+148>>2];H[a+16>>2]=H[b+144>>2];H[a+20>>2]=c;c=H[b+156>>2];H[a+24>>2]=H[b+152>>2];H[a+28>>2]=c}function _C(a,b,c){var d=0,e=0;d=Oa-32|0;Oa=d;L[d>>2]=L[b>>2];L[d+4>>2]=L[b+4>>2];L[d+8>>2]=L[b+8>>2];L[d+12>>2]=L[b+12>>2];L[d+16>>2]=L[b+16>>2];L[d+20>>2]=L[b+20>>2];F[d+24|0]=1;XT(c,d);e=H[b+24>>2];if(!(e&1)){_C(a,N(e>>>1|0,28)+a|0,c);_C(a,a?(N(H[b+24>>2]>>>1|0,28)+a|0)+28|0:0,c)}Oa=d+32|0}function x1(a){a=a|0;var b=O(0),c=O(0),d=0,e=O(0);d=Oa-32|0;Oa=d;Ra[H[H[a>>2]+40>>2]](d,a);b=L[d>>2];a:{if(b==O(0)){c=O(1);a=0;break a}c=L[d+12>>2];e=O(O(1)/O(W(O(O(c*c)+O(O(O(b*b)+O(0))+O(0))))));c=O(c*e);a=O(b*e)>2];f=H[b+4>>2];g=L[b+8>>2];h=H[b+20>>2];i=H[b+16>>2];L[d+20>>2]=L[b+24>>2];F[d+24|0]=1;H[d+12>>2]=i;H[d+16>>2]=h;L[d+8>>2]=g;H[d>>2]=e;H[d+4>>2]=f;XT(c,d);if(H[b+40>>2]){lC(a,H[b+36>>2],c);lC(a,H[b+40>>2],c)}Oa=d+32|0}function fX(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0;b=Oa-16|0;Oa=b;c=a+4|0;e=H[a+8>>2];if(e){while(1){f=H[c>>2]+N(d,12)|0;g=H[f>>2];if(g){h=H[33808]+12|0;Ra[H[H[h>>2]+12>>2]](h,g-4|0)}H[f>>2]=0;d=d+1|0;if((e|0)!=(d|0)){continue}break}}vH(c,b);eX(c,H[a+8>>2]);H[a+16>>2]=0;H[a+20>>2]=0;Oa=b+16|0}function Mh(a){a=a|0;var b=0,c=0;H[a>>2]=103544;b=H[a+360>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=H[a+352>>2];if((b|0)==(a+332|0)){F[a+348|0]=0;break a}if(!b){break a}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}H[a>>2]=103952;H[a>>2]=104256;ht(a+20|0);H[a>>2]=104560;wg(a);return a|0}function yg(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=Oa-16|0;Oa=c;e=I[b|0];F[a+73|0]=e;b=a+12|0;a:{b:{c:{switch((H[a+16>>2]>>>30|0)-2|0){case 0:d=H[b>>2];if(I[d+4785|0]){break b}default:F[c+8|0]=e;_D(a+24|0,c+8|0);break a;case 1:break c}}d=H[b>>2]}$t(d,b);H[a+16>>2]=H[a+16>>2]|524288}Oa=c+16|0}function Ui(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;e=H[a+16>>2];if(!(!e|!H[e+40>>2])){while(1){h=H[e+36>>2]+(g<<3)|0;if(!(I[h|0]|c>>>0<=f>>>0)){if(d>>>0<=i>>>0){H[(f<<2)+b>>2]=H[h+4>>2];f=f+1|0;e=H[a+16>>2]}i=i+1|0}g=g+1|0;if(g>>>0>2]){continue}break}}return f|0}function h_(a){var b=0,c=0;a:{if(I[a+56|0]){break a}b=H[a+24>>2];if(!b){break a}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}H[a+20>>2]=0;H[a+24>>2]=0;H[a>>2]=0;H[a+28>>2]=0;H[a+32>>2]=0;H[a+36>>2]=0;H[a+40>>2]=0;H[a+44>>2]=0;H[a+48>>2]=0;G[a+50>>1]=0;G[a+52>>1]=0;G[a+54>>1]=0;G[a+56>>1]=0}function LY(a){var b=0,c=0;b=H[a+4>>2];if(b){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}b=H[a+24>>2];if(b){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b);return a}b=H[a+16>>2];if(b){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}b=H[a+20>>2];if(b){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}return a}function Rx(a,b){var c=O(0),d=O(0),e=O(0);c=L[b+8>>2];d=L[a+8>>2];a:{b:{c:{d:{e:{b=I[b+14|0]&15;a=I[a+14|0]&15;switch((a>>>0>>0?b:a)|0){case 3:break b;case 2:break c;case 1:break d;case 0:break e;default:break a}}return O(O(d+c)*O(.5))}return c>d?d:c}return O(d*c)}e=c>2];if(!b|H[a+28>>2]!=1){break a}Ra[H[H[b>>2]+64>>2]](b);b=H[a>>2];Ra[H[H[b>>2]+16>>2]](b)}b:{if(!c){break b}b=H[a+36>>2];if(!b|H[a- -64>>2]!=1){break b}Ra[H[H[b>>2]+64>>2]](b);a=H[a+36>>2];Ra[H[H[a>>2]+16>>2]](a)}}function Tu(a,b,c){var d=0,e=0,f=0;if((H[a+8>>2]&2147483647)>>>0>>0){Vu(a,b)}d=H[a+4>>2];if((d|0)<(b|0)){e=H[a>>2];f=e+(b<<4)|0;d=(d<<4)+e|0;while(1){L[d>>2]=L[c>>2];L[d+4>>2]=L[c+4>>2];L[d+8>>2]=L[c+8>>2];L[d+12>>2]=L[c+12>>2];d=d+16|0;if(f>>>0>d>>>0){continue}break}}H[a+4>>2]=b}function QY(a){a=a|0;var b=0,c=0;H[a>>2]=127632;b=a-8|0;H[b>>2]=127548;if(F[a-2|0]&1){a=H[b+56>>2];if(a){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,a)}H[b+56>>2]=0;a=H[b+84>>2];if(a){a=LY(a);c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,a)}H[b+84>>2]=0}a=H[33808]+12|0;Ra[H[H[a>>2]+12>>2]](a,b)}function Ip(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;if(!I[a+4801|0]){a=a+32|0;if(!(H[a+2344>>2]|!b|!H[a+2236>>2])){e=H[a+2204>>2];while(1){d=H[H[(c<<2)+e>>2]>>2];G[d+148>>1]=J[d+148>>1]|64;c=c+1|0;if(c>>>0>2]){continue}break}}H[a+2344>>2]=b;return}o5(H[33808],2,16043,503,59624,0)}function $b(a,b,c,d){a=a|0;b=O(b);c=O(c);d=O(d);var e=0;e=Oa-32|0;Oa=e;H[e+8>>2]=0;H[e+12>>2]=0;H[e>>2]=0;H[e+4>>2]=0;H[e+4>>2]=1056964608;L[e+20>>2]=c;L[e+24>>2]=b;L[e+16>>2]=d==O(-1)?O(R(O(O(c-b)*O(.49000000953674316)),O(.10000000149011612))):d;Ra[H[H[a>>2]+128>>2]](a,e);Oa=e+32|0}function dl(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;a:{if(!(I[a+14|0]&32)){a=(b<<4)+a|0;L[c>>2]=L[a+128>>2];L[d>>2]=L[a+132>>2];L[e>>2]=L[a+136>>2];a=a+140|0;break a}a=H[a+16>>2]+(b<<4)|0;L[c>>2]=L[a+204>>2];L[d>>2]=L[a+208>>2];L[e>>2]=L[a+212>>2];a=a+216|0}H[f>>2]=H[a>>2]}function XG(a){var b=0,c=0;b=H[a+16>>2];if(b){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b);H[a+16>>2]=0}b=H[a+20>>2];if(b){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b);H[a+20>>2]=0}b=H[a+12>>2];if(b){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b);H[a+12>>2]=0}H[a+8>>2]=0;H[a>>2]=0;H[a+4>>2]=0}function X6(a){var b=0,c=0,d=0;b=a;a:{if(b&3){while(1){if(!I[b|0]){break a}b=b+1|0;if(b&3){continue}break}}while(1){c=b;b=b+4|0;d=H[c>>2];if(!((d^-1)&d-16843009&-2139062144)){continue}break}if(!(d&255)){return c-a|0}while(1){d=I[c+1|0];b=c+1|0;c=b;if(d){continue}break}}return b-a|0}function pR(a){var b=0,c=0;a:{b:{if(I[a+56|0]&32){break b}b=H[H[a+28>>2]+4>>2];b=I[H[b+44>>2]+9|0]-1>>>0<2?b:0;if(K[b+152>>2]<4294967294?b:0){break b}b=H[H[a+32>>2]+4>>2];b=I[H[b+44>>2]+9|0]-1>>>0<2?b:0;c=0;if(!b|K[b+152>>2]>4294967293){break a}}F[a+25|0]=I[a+25|0]|32;c=1}return c}function ZD(a,b){var c=O(0);F[a+40|0]=b;H[a>>2]=0;F[a+36|0]=0;b=H[33794];G[a+16>>1]=260;H[a+12>>2]=4;H[a+4>>2]=4;H[a+8>>2]=4;L[a+20>>2]=L[b>>2]*O(.10000000149011612);c=L[b+4>>2];L[a+32>>2]=L[19790];L[a+28>>2]=c*O(c*O(4999999873689376e-21));L[a+24>>2]=c*O(c*O(4999999873689376e-20))}function Jz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;Iz(a);b=H[a+24>>2];if(H[b+4>>2]){e=I[b|0]==9?368:272;a=b+160|0;c=0;while(1){d=H[a+164>>2];H[a+144>>2]=H[a+160>>2];H[a+148>>2]=d;d=H[a+172>>2];H[a+152>>2]=H[a+168>>2];H[a+156>>2]=d;a=a+e|0;c=c+1|0;if(c>>>0>2]){continue}break}}}function Iq(a,b){var c=0,d=0;c=Oa-16|0;Oa=c;b=J[b+52>>1];H[c+12>>2]=0;G[c+8>>1]=b;a=a+16|0;b=H[a+4772>>2];a:{if((H[a+4776>>2]&2147483647)>>>0<=b>>>0){Rt(a+4768|0,c+8|0);break a}d=H[c+12>>2];b=H[a+4768>>2]+(b<<3)|0;H[b>>2]=H[c+8>>2];H[b+4>>2]=d;H[a+4772>>2]=H[a+4772>>2]+1}Oa=c+16|0}function mo(a){a=a|0;var b=0,c=0;H[a>>2]=109360;b=H[a+20>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=H[a+12>>2];if(!b){break a}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+4>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,a)}function Oj(a,b,c,d){a=a|0;b=b|0;c=O(c);d=d|0;var e=0,f=0,g=0;a=H[a+24>>2];if(a){if(H[a+28>>2]){g=H[a+12>>2];e=H[a>>2];f=H[a+16>>2];Ra[H[H[e>>2]+12>>2]](e,f)|0;F[e+76|0]=f;H[e+32>>2]=g;Ra[H[H[e>>2]+8>>2]](e)}e=J[a+16>>1];f=H[a+12>>2];a=H[a>>2];mv(b,e,f,c,d,H[a+68>>2],J[a+78>>1])}}function L1(a,b){a=a|0;b=b|0;var c=0,d=0;d=H[b+4>>2];c=H[a+80>>2];H[c+240>>2]=H[b>>2];H[c+244>>2]=d;H[c+264>>2]=H[b+24>>2];d=H[b+20>>2];H[c+256>>2]=H[b+16>>2];H[c+260>>2]=d;d=H[b+12>>2];H[c+248>>2]=H[b+8>>2];H[c+252>>2]=d;F[H[a+80>>2]+478|0]=1;a=H[a+76>>2];Ra[H[H[a>>2]+36>>2]](a)}function hr(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;b=0;c=H[a+6340>>2];if(!(c>>>0>127|!I[c+135312|0])){b=H[(c<<2)+135440>>2]}d=b&-16711681|b+65536&16711680;c=H[a+6340>>2];if(!(c>>>0>127|!I[c+135312|0])){H[(c<<2)+135440>>2]=d}if(!(b&16711680)){b=a+6348|0;a=H[b>>2];H[a+4>>2]=H[a+4>>2]+1}}function gU(a,b,c,d,e,f){var g=0,h=0,i=0;g=H[c>>2];h=H[e>>2];a:{if((g|0)>(h|0)){i=0;if(!(Ra[H[(N(h,28)+125616|0)+(g<<2)>>2]](a,b,e,f,c,d)|0)){break a}L[a+8>>2]=-L[a+8>>2];L[a+4>>2]=-L[a+4>>2];L[a>>2]=-L[a>>2];return 1}i=Ra[H[(N(g,28)+125616|0)+(h<<2)>>2]](a,b,c,d,e,f)|0}return i}function Vb(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=O(0),g=0,h=O(0);e=Oa-32|0;Oa=e;f=L[c+8>>2];g=H[c+4>>2];c=H[c>>2];L[e>>2]=L[d>>2];L[e+4>>2]=L[d+4>>2];L[e+8>>2]=L[d+8>>2];h=L[d+12>>2];L[e+24>>2]=f;H[e+16>>2]=c;H[e+20>>2]=g;L[e+12>>2]=h;Ra[H[H[a>>2]+32>>2]](a,b,e);Oa=e+32|0}function AX(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;if(b){while(1){f=(e<<2)+c|0;d=H[a+4>>2];g=H[d+264>>2];a:{if(g>>>0>=(H[d+268>>2]&2147483647)>>>0){BX(d,f);break a}H[H[d+260>>2]+(g<<2)>>2]=H[f>>2];H[d+264>>2]=H[d+264>>2]+1}e=e+1|0;if((e|0)!=(b|0)){continue}break}}return 1}function PY(a){a=a|0;var b=0,c=0;H[a+8>>2]=127632;H[a>>2]=127548;if(F[a+6|0]&1){b=H[a+56>>2];if(b){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}H[a+56>>2]=0;b=H[a+84>>2];if(b){b=LY(b);c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}H[a+84>>2]=0}b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,a)}function rG(a,b){var c=0,d=0;c=H[a+44>>2];if(!(F[c+44|0]&1|!(L[c+156>>2]>2]=b;d=H[H[a+40>>2]+1012>>2];Ra[H[H[d>>2]+44>>2]](d,I[c+9|0]==2,a+144|0);if(K[a+152>>2]>=4294967294){RN(H[a+40>>2],a);bG(a)}dF(H[H[a+40>>2]+1e3>>2],H[a+144>>2]);G[a+92>>1]=J[a+92>>1]&65534}}function Kq(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;a:{if(!(I[b+5580|0]&8)){break a}F[a|0]=0;F[a+1|0]=0;if(!(H[(((c>>>0>>0?c:d)<<2)+b|0)+5296>>2]>>>(c>>>0>d>>>0?c:d)&1)){break a}b=b+5420|0;F[a|0]=(H[b+(c<<2)>>2]&1<>>d;F[a+1|0]=(H[b+(d<<2)>>2]&1<>>c;return}PO(a,b+32|0,c,d)}function FK(a){a=a|0;var b=0,c=0,d=0,e=0;a=H[a+28>>2];b=H[a+124>>2];c=H[a+128>>2];a=H[a+88>>2];H[a+68>>2]=H[a+24>>2];H[a+72>>2]=c;H[a- -64>>2]=b;b=H[a>>2];if(b){c=a+36|0;e=H[a+12>>2];a=0;while(1){d=H[(N(a,40)+e|0)+28>>2];if(d){qK(d,c)}a=a+1|0;if((b|0)!=(a|0)){continue}break}}}function vy(a,b){a=a|0;b=b|0;var c=0,d=0;c=-1;a:{if(b>>>0>16384){break a}a=H[a+12>>2];d=H[a+4>>2];b:{if(d){c=H[a+8>>2];if(c+b>>>0<16385){break b}}d=H[a>>2];d=Mx(d,(d+N(H[d+128>>2],12)|0)+40|0,0,0,0);H[a+8>>2]=0;H[a+4>>2]=d;c=0;if(!d){break a}}H[a+8>>2]=b+c;c=d+c|0}return c|0}function vq(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;if(H[a+4656>>2]!=3){o5(H[33808],8,9281,2210,62124,0);return 0}if(I5(H[a+6060>>2],0-d|0)){d=a+32|0;FO(d);Zt(a+16|0);cO(d);oq(a);EO(d);eO(d);e=c;c=CO(d);H[e>>2]=H[c+4>>2];H[b>>2]=H[c>>2];F[a+6354|0]=1;a=1}else{a=0}return a|0}function qR(a){var b=0,c=0;a:{if(I[a+56|0]&32){break a}b=H[H[a+28>>2]+4>>2];b=I[H[b+44>>2]+9|0]-1>>>0<2?b:0;if(K[b+152>>2]<4294967294?b:0){break a}b=H[H[a+32>>2]+4>>2];b=I[H[b+44>>2]+9|0]-1>>>0<2?b:0;if(K[b+152>>2]<4294967294?b:0){break a}F[a+25|0]=I[a+25|0]&223;c=1}return c}function fB(a,b){var c=0,d=0,e=0,f=0,g=0;c=H[a+40>>2];a:{if(!c){break a}e=H[a+44>>2];while(1){f=(d<<2)+e|0;g=H[f>>2];if((g|0)!=(b|0)){d=d+1|0;if((d|0)!=(c|0)){continue}break a}break}if((J[b+4>>1]-5&65535)>>>0<=1){H[g+40>>2]=0}H[a+40>>2]=c-1;H[f>>2]=H[(c<<2)+e>>2]}F[a+48|0]=0}function _N(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;e=I[b+20|0];g=(e<<2)+a|0;c=H[g+88>>2];if(c>>>0>=2){e=N(e,12)+a|0;f=H[e+52>>2];c=c-1|0;d=f+(c<<2)|0;a=H[d>>2];h=d;d=f;b=H[b+8>>2];f=b<<2;d=H[d+f>>2];H[h>>2]=d;H[f+H[e+52>>2]>>2]=a;H[a+8>>2]=b;H[d+8>>2]=c;c=H[g+88>>2]}H[g+88>>2]=c-1}function ZN(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;d=I[b+20|0];g=(d<<2)+a|0;e=H[g+88>>2];a=N(d,12)+a|0;if(e>>>0>2]){f=H[a+52>>2];c=f+(e<<2)|0;d=H[c>>2];h=c;c=f;b=H[b+8>>2];f=b<<2;c=H[c+f>>2];H[h>>2]=c;H[f+H[a+52>>2]>>2]=d;H[d+8>>2]=b;H[c+8>>2]=e;e=H[g+88>>2]}H[g+88>>2]=e+1}function nA(a){var b=0;H[a+12112>>2]=0;H[a+12116>>2]=0;H[a+12096>>2]=0;H[a+11876>>2]=0;H[a+11880>>2]=0;H[a+11868>>2]=0;H[a+12088>>2]=0;H[a+12092>>2]=0;b=a+11856|0;H[b>>2]=0;H[b+4>>2]=0;b=a+11828|0;H[b>>2]=0;H[b+4>>2]=0;H[a+12132>>2]=H[a+11952>>2];H[a+12140>>2]=H[a+11976>>2]}function MG(a){var b=0,c=0;WG(a,1);c=H[H[a>>2]+40>>2];b=H[a+24>>2];if((I[b+68|0]&6)==6){rO(c,b)}b=H[a+28>>2];if((b|0)!=-1){gF(H[c+1e3>>2],b)}H[a+28>>2]=-1;XD(H[a>>2],a);XD(H[a+4>>2],a);b=H[a+24>>2];c=H[b- -64>>2];b=H[b+60>>2];if(b){tG(b)}if(c){tG(c)}F[a+21|0]=I[a+21|0]&223}function qQ(a){a=a|0;var b=0,c=0,d=0,e=0;c=H[a+28>>2];b=H[H[c+976>>2]+1024>>2];Ra[H[H[b>>2]+104>>2]](b);d=H[c+4676>>2];if(d){a=0;while(1){e=H[H[c+4672>>2]+(a<<2)>>2];if(e&1){Ra[H[H[b>>2]+28>>2]](b,e&-2,0,0)}a=a+1|0;if((d|0)!=(a|0)){continue}break}}Ra[H[H[b>>2]+108>>2]](b)}function ZW(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=O(0),g=O(0),h=O(0),i=0;b=H[b+4>>2];i=d;e=L[c>>2]>O(0);d=L[c+4>>2]>O(0);c=L[c+8>>2]>O(0);H[i>>2]=e|d<<1|c<<2;f=L[b+52>>2];g=L[b+56>>2];h=L[b+48>>2];H[a+12>>2]=0;L[a+8>>2]=c?g:O(-g);L[a+4>>2]=d?f:O(-f);L[a>>2]=e?h:O(-h)}function z$(a,b){a=a|0;b=b|0;var c=O(0),d=O(0),e=O(0),f=O(0),g=O(0),h=O(0);o5(H[33808],8,8502,227,61421,0);c=L[b+44>>2];d=L[b+48>>2];e=L[b+36>>2];f=L[b+32>>2];g=L[b+40>>2];h=L[b+52>>2];L[a+20>>2]=g+h;L[a+16>>2]=e+d;L[a+12>>2]=f+c;L[a+8>>2]=g-h;L[a+4>>2]=e-d;L[a>>2]=f-c}function ub(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=O(0),f=0,g=O(0);d=Oa-32|0;Oa=d;e=L[b+8>>2];f=H[b+4>>2];b=H[b>>2];L[d>>2]=L[c>>2];L[d+4>>2]=L[c+4>>2];L[d+8>>2]=L[c+8>>2];g=L[c+12>>2];L[d+24>>2]=e;H[d+16>>2]=b;H[d+20>>2]=f;L[d+12>>2]=g;Ra[H[H[a>>2]+248>>2]](a,d);Oa=d+32|0}function jp(a,b){var c=0,d=0,e=0;e=H[b>>2];d=a+5936|0;c=H[d>>2]-1|0;H[d>>2]=c;d=H[a+5932>>2];H[d+(e<<2)>>2]=H[(c<<2)+d>>2];a:{if(!c){break a}e=c;c=H[b>>2];if((e|0)==(c|0)){break a}a=H[H[a+5932>>2]+(c<<2)>>2];if(Ra[H[H[a>>2]+24>>2]](a)>>>0>1){break a}H[a+44>>2]=H[b>>2]}}function cR(a){var b=0,c=0,d=0,e=0,f=0;b=H[a+8>>2];if((b|0)<0){d=H[a+4>>2];f=H[H[H[d+40>>2]+980>>2]+180>>2]+((b&2147483647)<<2)|0;b=H[d+44>>2];e=I[b+9|0];c=2;a:{if(e-3>>>0<4294967294){break a}c=2;if(!d){break a}c=F[b+44|0]&1?1:2}H[f>>2]=e?(c|H[d+48>>2]<<2)+4|0:0;_Q(a)}}function ox(a,b){var c=0,d=0,e=O(0),f=O(0),g=O(0);c=Oa-32|0;Oa=c;d=J[b+8>>1];a:{if((d|0)==65535){b=H[b+4>>2];e=L[b+8>>2];f=L[b+4>>2];g=L[b>>2];break a}b=H[b>>2];Ra[H[H[b>>2]+116>>2]](c,b,d);e=L[c+8>>2];f=L[c+4>>2];g=L[c>>2]}L[a+8>>2]=e;L[a+4>>2]=f;L[a>>2]=g;Oa=c+32|0}function dK(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;H[H[a+4>>2]>>2]=c;if(f){Ra[H[H[f>>2]+20>>2]](f)}eK(a,d);c=H[a+32>>2];b=H[a+4>>2];H[b+384>>2]=H[a+36>>2];H[b+368>>2]=c;TJ(b,b+340|0);b=H[a+4>>2];_J(b+340|0,a,b+324|0,b+332|0);S6(H[b+324>>2],0,H[b+328>>2]<<2)}function _R(a,b){a=a|0;b=b|0;var c=0;L[b>>2]=L[a+464>>2];L[b+4>>2]=L[a+468>>2];L[b+8>>2]=L[a+472>>2];H[b+12>>2]=H[a+248>>2];H[b+16>>2]=H[a+260>>2];H[b+20>>2]=H[a+272>>2];c=H[a+420>>2];F[b+30|0]=c>>>8&1;c=c&255;F[b+29|0]=c>>>5&1;F[b+28|0]=c>>>4&1;H[b+24>>2]=I[a+520|0]}function zf(a){var b=0,c=0;a:{if(!I[a+120|0]){break a}b=H[a+56>>2];c=Ra[H[H[b>>2]>>2]](b)|0;b=H[a+88>>2];if(b){R6(H[b+20>>2],c,J[b+8>>1]);c=H[b+60>>2];c=H[H[(c?c:H[b- -64>>2])+40>>2]+1012>>2];Ra[H[H[c>>2]+48>>2]](c,H[H[b+56>>2]+28>>2],b)}if(!b){break a}F[a+120|0]=0}}function YK(a){var b=0,c=0;b=H[a+12>>2];if(b){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}b=H[a+8>>2];if(b){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}b=H[a+4>>2];if(b){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}a=H[a>>2];if(a){b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,a)}}function Nb(a,b){a=a|0;b=b|0;var c=0;c=H[a>>2];a=H[a+4>>2];b=(a>>1)+b|0;if(a&1){c=H[c+H[b>>2]>>2]}a=Ra[c|0](b)|0;b=o6(24);c=H[a+20>>2];H[b+16>>2]=H[a+16>>2];H[b+20>>2]=c;c=H[a+12>>2];H[b+8>>2]=H[a+8>>2];H[b+12>>2]=c;c=H[a+4>>2];H[b>>2]=H[a>>2];H[b+4>>2]=c;return b|0}function Dj(a){a=a|0;var b=0,c=0;H[a>>2]=105192;Pl(H[33768],a);H[a>>2]=105444;Pl(H[33768],a);b=H[a+104>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=H[a+96>>2];if((b|0)==(a+76|0)){F[a+92|0]=0;break a}if(!b){break a}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}return a|0}function lV(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=O(0),f=O(0),g=O(0),h=O(0);e=L[b+8>>2];a=H[a+48>>2];f=L[a+56>>2];g=O(e*(e>O(0)?f:O(-f)));e=L[b>>2];f=L[a+48>>2];h=O(e*(e>O(0)?f:O(-f)));e=L[b+4>>2];f=L[a+52>>2];e=O(g+O(h+O(e*(e>O(0)?f:O(-f)))));L[d>>2]=e;L[c>>2]=-e}function cB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;a:{if(!I[a+48|0]){break a}c=H[a+40>>2];if(!c){break a}while(1){e=H[a+44>>2]+(d<<2)|0;f=H[e>>2];if(f){g=e,h=Ra[H[H[b>>2]>>2]](b,-2147483648,f)|0,H[g>>2]=h;c=H[a+40>>2]}d=d+1|0;if(c>>>0>d>>>0){continue}break}}}function lO(a,b){var c=0,d=0,e=0;e=Oa-16|0;Oa=e;d=H[b+60>>2];if(d){c=H[d+60>>2];c=H[(c?c:H[d- -64>>2])+164>>2];if(c){IG(H[a+1136>>2],c,d)}c=H[a+2396>>2];d=RG(d);H[c+280>>2]=H[c+280>>2]-1;H[d>>2]=H[c+288>>2];H[c+288>>2]=d}H[e+12>>2]=b;Pf(a+1096|0,e+12|0);Oa=e+16|0}function h6(a,b,c){var d=0,e=0,f=0;a:{if(!b){d=a;break a}while(1){d=h7(a,b,10);f=Qa;e=g7(d,f,10,0);c=c-1|0;F[c|0]=a-e|48;e=b>>>0>9;a=d;b=f;if(e){continue}break}}if(d){while(1){c=c-1|0;a=(d>>>0)/10|0;F[c|0]=d-N(a,10)|48;b=d>>>0>9;d=a;if(b){continue}break}}return c}function ig(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;a:{c=H[a+4>>2];if(!c){break a}e=H[c+40>>2];if(!e){break a}while(1){c=H[c+36>>2]+(d<<3)|0;f=H[c+4>>2];if(f){g=c,h=Ra[H[H[b>>2]>>2]](b,-2147483648,f)|0,H[g+4>>2]=h}d=d+1|0;if((e|0)==(d|0)){break a}c=H[a+4>>2];continue}}}function RF(a,b){var c=0,d=0,e=0;d=Oa-16|0;Oa=d;c=H[a+176>>2];a:{if(!(!c|I[c+31|0]!=1)){L[c+60>>2]=b;break a}L[a+116>>2]=b;a=H[a>>2];if(!a){break a}c=H[H[a+40>>2]+1012>>2];e=I[H[a+44>>2]+9|0];H[d+8>>2]=H[a+144>>2];Ra[H[H[c>>2]+44>>2]](c,(e|0)==2,d+8|0)}Oa=d+16|0}function QF(a,b){var c=0,d=0,e=0;d=Oa-16|0;Oa=d;c=H[a+176>>2];a:{if(!(!c|I[c+31|0]!=1)){L[c+56>>2]=b;break a}L[a+112>>2]=b;a=H[a>>2];if(!a){break a}c=H[H[a+40>>2]+1012>>2];e=I[H[a+44>>2]+9|0];H[d+8>>2]=H[a+144>>2];Ra[H[H[c>>2]+44>>2]](c,(e|0)==2,d+8|0)}Oa=d+16|0}function PF(a,b){var c=0,d=0,e=0;d=Oa-16|0;Oa=d;c=H[a+176>>2];a:{if(!(!c|I[c+31|0]!=1)){L[c+52>>2]=b;break a}L[a+124>>2]=b;a=H[a>>2];if(!a){break a}c=H[H[a+40>>2]+1012>>2];e=I[H[a+44>>2]+9|0];H[d+8>>2]=H[a+144>>2];Ra[H[H[c>>2]+44>>2]](c,(e|0)==2,d+8|0)}Oa=d+16|0}function OF(a,b){var c=0,d=0,e=0;d=Oa-16|0;Oa=d;c=H[a+176>>2];a:{if(!(!c|I[c+31|0]!=1)){L[c+48>>2]=b;break a}L[a+120>>2]=b;a=H[a>>2];if(!a){break a}c=H[H[a+40>>2]+1012>>2];e=I[H[a+44>>2]+9|0];H[d+8>>2]=H[a+144>>2];Ra[H[H[c>>2]+44>>2]](c,(e|0)==2,d+8|0)}Oa=d+16|0}function MF(a,b){var c=0,d=0,e=0;d=Oa-16|0;Oa=d;c=H[a+176>>2];a:{if(!(!c|I[c+31|0]!=1)){L[c+44>>2]=b;break a}L[a+140>>2]=b;a=H[a>>2];if(!a){break a}c=H[H[a+40>>2]+1012>>2];e=I[H[a+44>>2]+9|0];H[d+8>>2]=H[a+144>>2];Ra[H[H[c>>2]+44>>2]](c,(e|0)==2,d+8|0)}Oa=d+16|0}function tJ(a,b){var c=0,d=0;d=b+15&-16;c=-1;a:{if(d>>>0>16384){break a}b=H[a+4>>2];b:{if(b){c=H[a+8>>2];if(d+c>>>0<16385){break b}}b=H[a>>2];b=Mx(b,(b+N(H[b+124>>2],12)|0)- -64|0,0,0,0);H[a+8>>2]=0;H[a+4>>2]=b;c=0;if(!b){break a}}H[a+8>>2]=c+d;c=b+c|0}return c}function l6(a,b,c,d){var e=0;e=Oa-160|0;Oa=e;H[e+148>>2]=b?b-1|0:0;a=b?a:e+158|0;H[e+144>>2]=a;e=S6(e,0,144);H[e+76>>2]=-1;H[e+36>>2]=3263;H[e+80>>2]=-1;H[e+44>>2]=e+159;H[e+84>>2]=e+144;a:{if((b|0)<0){H[33811]=61;break a}F[a|0]=0;c6(e,c,d,3261,3262)}Oa=e+160|0}function o5(a,b,c,d,e,f){var g=0;g=Oa-1040|0;Oa=g;H[g+12>>2]=f;if(H[a+192>>2]&b){l6(g+16|0,1024,e,H[g+12>>2]);if(H[a+180>>2]){f=0;while(1){e=H[H[a+176>>2]+(f<<2)>>2];Ra[H[H[e>>2]+8>>2]](e,b,g+16|0,c,d);f=f+1|0;if(f>>>0>2]){continue}break}}}Oa=g+1040|0}function c$(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=O(0),g=O(0);e=Oa-16|0;Oa=e;f=L[a+4>>2];L[e>>2]=L[b+16>>2];L[e+4>>2]=L[b+20>>2];g=L[b+24>>2];L[e+12>>2]=f;L[e+8>>2]=g;a=H[c+36>>2];a=Ra[H[(J[a+4>>1]<<2)+128524>>2]](e,a,d,c+4|0,0)|0;Oa=e+16|0;return a|0}function PE(a){var b=0,c=0,d=0,e=0,f=0;c=H[a+340>>2];if(c){while(1){b=H[H[a+336>>2]+(d<<2)>>2];e=H[a+60>>2];f=(b>>>0)/(e>>>0)|0;if((J[(H[H[a+40>>2]+(f<<2)>>2]+(b-N(e,f)<<4)|0)+4>>1]&11)==3){HE(a,b);FE(a,b);c=H[a+340>>2]}d=d+1|0;if(c>>>0>d>>>0){continue}break}}}function I1(a,b){a=a|0;b=b|0;var c=0;b=H[b+80>>2];L[a>>2]=L[b+268>>2];L[a+4>>2]=L[b+272>>2];L[a+8>>2]=L[b+276>>2];L[a+12>>2]=L[b+280>>2];L[a+16>>2]=L[b+284>>2];c=H[b+292>>2];H[a+20>>2]=H[b+288>>2];H[a+24>>2]=c;c=H[b+300>>2];H[a+28>>2]=H[b+296>>2];H[a+32>>2]=c}function mZ(a,b){H[b+8>>2]=0;H[b+12>>2]=8;H[b>>2]=0;H[b+4>>2]=0;H[b+44>>2]=0;H[b+48>>2]=0;H[b+36>>2]=0;H[b+16>>2]=6;H[b+20>>2]=0;H[b+24>>2]=a+100;H[b+32>>2]=88448;H[b+28>>2]=a+4;H[b+52>>2]=0;H[b+56>>2]=0;a=H[a>>2];H[b+64>>2]=2618;H[b+68>>2]=2619;H[b+60>>2]=a}function H1(a,b){a=a|0;b=b|0;var c=0,d=0;d=H[b+4>>2];c=H[a+80>>2];H[c+212>>2]=H[b>>2];H[c+216>>2]=d;H[c+236>>2]=H[b+24>>2];d=H[b+20>>2];H[c+228>>2]=H[b+16>>2];H[c+232>>2]=d;d=H[b+12>>2];H[c+220>>2]=H[b+8>>2];H[c+224>>2]=d;a=H[a+76>>2];Ra[H[H[a>>2]+36>>2]](a)}function A6(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;if(t6(a,H[b+8>>2],0)){w6(b,c,d);return}e=H[a+12>>2];f=a+16|0;z6(f,b,c,d);a:{if((e|0)<2){break a}e=(e<<3)+f|0;a=a+24|0;while(1){z6(a,b,c,d);if(I[b+54|0]){break a}a=a+8|0;if(e>>>0>a>>>0){continue}break}}}function bv(a,b,c){a=a|0;b=b|0;c=c|0;var d=O(0),e=0,f=O(0),g=0;b=H[b+172>>2]+(c<<5)|0;d=L[b+8>>2];c=H[b+16>>2];e=H[b+20>>2];f=L[b+24>>2];g=H[b+4>>2];b=H[b>>2];H[a+12>>2]=0;H[a>>2]=b;H[a+4>>2]=g;H[a+28>>2]=0;L[a+24>>2]=f;H[a+16>>2]=c;H[a+20>>2]=e;L[a+8>>2]=d}function Ul(a,b){var c=0,d=0;if(b){c=H[b+44>>2];a:{if((c|0)<0|!(c&2147483647)){break a}c=H[b+36>>2];if((c|0)==(b|0)){F[b+32|0]=0;break a}if(!c){break a}d=H[33808];Ra[H[H[d+12>>2]+12>>2]](d+12|0,c)}H[a+460>>2]=H[a+460>>2]-1;H[b>>2]=H[a+468>>2];H[a+468>>2]=b}}function O2(a,b){a=a|0;b=b|0;var c=0;c=Oa-16|0;Oa=c;Ra[H[H[b>>2]+8>>2]](b,H[a+76>>2]);H[c+12>>2]=0;H[c+8>>2]=0;a=H[a+76>>2];Ra[H[H[a>>2]+28>>2]](a,c+12|0,c+8|0);a=H[c+12>>2];if(a){Ra[H[H[b>>2]+8>>2]](b,a)}a=H[c+8>>2];if(a){Ra[H[H[b>>2]+8>>2]](b,a)}Oa=c+16|0}function FI(a){a=a|0;var b=0,c=0,d=0;b=H[a+28>>2];c=H[b+1904>>2];if(c){a=0;if(H[b+1912>>2]>0){while(1){d=H[(a<<2)+c>>2];_N(H[b>>2],d?d+4|0:0);a=a+1|0;if((a|0)>2]){continue}break}c=H[b+1904>>2]}H[b+1912>>2]=0;Lw(H[H[b>>2]+976>>2],c);H[b+1904>>2]=0}}function C1(a,b){a=a|0;b=b|0;var c=0,d=0;d=H[b+4>>2];c=H[a+80>>2];H[c+104>>2]=H[b>>2];H[c+108>>2]=d;d=H[b+20>>2];H[c+120>>2]=H[b+16>>2];H[c+124>>2]=d;d=H[b+12>>2];H[c+112>>2]=H[b+8>>2];H[c+116>>2]=d;F[H[a+80>>2]+476|0]=1;a=H[a+76>>2];Ra[H[H[a>>2]+36>>2]](a)}function x4(a,b){a=a|0;b=b|0;var c=0,d=0;d=H[b+4>>2];c=H[a+80>>2];H[c+92>>2]=H[b>>2];H[c+96>>2]=d;H[c+116>>2]=H[b+24>>2];d=H[b+20>>2];H[c+108>>2]=H[b+16>>2];H[c+112>>2]=d;d=H[b+12>>2];H[c+100>>2]=H[b+8>>2];H[c+104>>2]=d;a=H[a+76>>2];Ra[H[H[a>>2]+36>>2]](a)}function YQ(a){var b=0,c=0;a:{if(H[a+36>>2]!=-1){break a}c=H[a+4>>2];b=I[H[c+44>>2]+9|0]-1>>>0<2?c:0;if((I[H[b+44>>2]+44|0]&3)==3|F[b+92|0]&1|(I[b+149|0]&16|K[b+152>>2]>4294967293)){break a}if(!(I[H[a+28>>2]- -64|0]&2)){break a}iR(H[H[c+40>>2]+1152>>2],a)}}function XH(a){var b=0,c=0,d=0,e=0,f=0;b=H[a>>2];c=H[a+4>>2];a:{if((b|0)!=(c|0)){d=H[a+8>>2];while(1){e=b+4|0;H[a>>2]=e;b=H[b>>2];if(F[b+21|0]&1){f=H[b+24>>2]==(d|0);b=b-4|0;if(f|H[b+32>>2]==(d|0)){break a}}b=e;if((c|0)!=(b|0)){continue}break}}b=0}return b}function Wo(a,b){a=a|0;b=b|0;var c=0,d=0;c=b+1076|0;d=H[c+4>>2];H[a+24>>2]=H[c>>2];H[a+28>>2]=d;c=b+1068|0;d=H[c+4>>2];H[a+16>>2]=H[c>>2];H[a+20>>2]=d;c=b+1060|0;d=H[c+4>>2];H[a+8>>2]=H[c>>2];H[a+12>>2]=d;b=b+1052|0;c=H[b+4>>2];H[a>>2]=H[b>>2];H[a+4>>2]=c}function kV(a,b,c){a=a|0;b=b|0;c=c|0;var d=O(0),e=O(0),f=O(0),g=O(0),h=O(0),i=O(0);b=H[b+48>>2];d=L[b+52>>2];e=L[b+56>>2];g=L[c+4>>2];h=L[c+8>>2];f=L[b+48>>2];i=L[c>>2];H[a+12>>2]=0;L[a>>2]=i>O(0)?f:O(-f);L[a+8>>2]=h>O(0)?e:O(-e);L[a+4>>2]=g>O(0)?d:O(-d)}function YH(a){var b=0,c=0,d=0,e=0,f=0;c=H[a+4>>2];d=H[a>>2];a:{if((c|0)!=(d|0)){e=H[a+8>>2];while(1){c=c-4|0;H[a+4>>2]=c;b=H[c>>2];if(F[b+21|0]&1){f=H[b+24>>2]==(e|0);b=b-4|0;if(f|H[b+32>>2]==(e|0)){break a}}if((c|0)!=(d|0)){continue}break}}b=0}return b}function $u(a,b,c){a=a|0;b=b|0;c=c|0;b=H[b+100>>2]+(c<<5)|0;c=H[b+132>>2];H[a>>2]=H[b+128>>2];H[a+4>>2]=c;c=H[b+140>>2];H[a+8>>2]=H[b+136>>2];H[a+12>>2]=c;c=H[b+148>>2];H[a+16>>2]=H[b+144>>2];H[a+20>>2]=c;c=H[b+156>>2];H[a+24>>2]=H[b+152>>2];H[a+28>>2]=c}function h4(a,b){a=a|0;b=b|0;var c=0,d=0;d=H[b+4>>2];c=H[a+80>>2];H[c+80>>2]=H[b>>2];H[c+84>>2]=d;H[c+104>>2]=H[b+24>>2];d=H[b+20>>2];H[c+96>>2]=H[b+16>>2];H[c+100>>2]=d;d=H[b+12>>2];H[c+88>>2]=H[b+8>>2];H[c+92>>2]=d;a=H[a+76>>2];Ra[H[H[a>>2]+36>>2]](a)}function YW(a,b,c){a=a|0;b=b|0;c=c|0;var d=O(0),e=O(0),f=O(0),g=O(0),h=O(0),i=O(0);b=H[b+4>>2];d=L[b+52>>2];e=L[b+56>>2];g=L[c+4>>2];h=L[c+8>>2];f=L[b+48>>2];i=L[c>>2];H[a+12>>2]=0;L[a>>2]=i>O(0)?f:O(-f);L[a+8>>2]=h>O(0)?e:O(-e);L[a+4>>2]=g>O(0)?d:O(-d)}function WA(a,b,c,d,e){var f=0;H[((d-e|0)/28<<2)+b>>2]=(c-e|0)/28;c=H[d+24>>2];if(!(c&1)){f=e+28|0;while(1){WA(a,b,d,N(c>>>1|0,28)+e|0,e);c=d-e|0;d=e?N(H[d+24>>2]>>>1|0,28)+f|0:0;H[((d-e|0)/28<<2)+b>>2]=(c|0)/28;c=H[d+24>>2];if(!(c&1)){continue}break}}}function OY(a){a=a|0;var b=0,c=0;H[a>>2]=127632;b=a-8|0;H[b>>2]=127548;if(F[a-2|0]&1){a=H[b+56>>2];if(a){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,a)}H[b+56>>2]=0;a=H[b+84>>2];if(a){a=LY(a);c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,a)}H[b+84>>2]=0}return b|0}function fV(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=O(0);if(c){a=0;while(1){f=N(I[a+b|0],12)+d|0;g=H[f+4>>2];h=H[f>>2];i=L[f+8>>2];f=(a<<4)+e|0;H[f+12>>2]=0;L[f+8>>2]=i;H[f>>2]=h;H[f+4>>2]=g;a=a+1|0;if((c|0)!=(a|0)){continue}break}}}function yc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Oa-16|0;Oa=d;e=a;a=H[b>>2];if((H[b+4>>2]-a|0)/12>>>0>c>>>0){b=o6(12);c=a+N(c,12)|0;L[b>>2]=L[c>>2];L[b+4>>2]=L[c+4>>2];L[b+8>>2]=L[c+8>>2];H[d+8>>2]=b;a=la(97840,d+8|0)|0}else{a=1}H[e>>2]=a;Oa=d+16|0}function Xo(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=H[a+5580>>2];e=H[(d&4?5564:2392)+a>>2];b=c?e|b:(b^-1)&e;if(!I[a+4801|0]){H[a+2392>>2]=b;a=a+32|0;F[H[a+976>>2]+1812|0]=(b&64)>>>6;F[H[a+976>>2]+1813|0]=!(b&256);return}H[a+5564>>2]=b;H[a+5580>>2]=d|4}function uq(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;if(H[a+4656>>2]!=3){o5(H[33808],8,9281,2159,62238,0);return 0}a:{if(!I5(H[a+6060>>2],0-b|0)){break a}b=a+32|0;FO(b);Zt(a+16|0);cO(b);oq(a);EO(b);eO(b);dO(b,0);qq(a);d=1;if(!c){break a}H[c>>2]=0}return d|0}function cs(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=O(d);e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0;j=Oa-32|0;Oa=j;H[j+28>>2]=0;H[j+20>>2]=0;H[j+24>>2]=0;L[j+16>>2]=d;H[j+12>>2]=c;H[j+8>>2]=b;G[j>>1]=J[f>>1];a=ds(a,j+8|0,e,j,i,g,h,0);Oa=j+32|0;return a|0}function Rg(a,b){a=a|0;b=b|0;var c=0,d=0;if(H[a+124>>2]){while(1){d=H[H[a+120>>2]+(c<<2)>>2];zf(Ra[H[H[d>>2]+104>>2]](d)|0);c=c+1|0;if(c>>>0>2]){continue}break}}a=H[a+24>>2];if(a){c=H[a>>2];Ra[H[H[c>>2]+84>>2]](c,H[a+52>>2],H[a+56>>2],b)}}function lo(a){a=a|0;var b=0,c=0;H[a>>2]=109360;b=H[a+20>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=H[a+12>>2];if(!b){break a}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[a+4>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}return a|0}function b6(a,b){var c=0,d=0,e=0;A(+a);d=v(1)|0;e=v(0)|0;c=d>>>20&2047;if((c|0)!=2047){if(!c){if(a==0){c=0}else{a=b6(a*0x10000000000000000,b);c=H[b>>2]+-64|0}H[b>>2]=c;return a}H[b>>2]=c-1022;x(0,e|0);x(1,d&-2146435073|1071644672);a=+z()}return a}function Xv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=O(0);b=H[b+312>>2]+(c<<5)|0;c=H[b+20>>2];d=H[b+16>>2];e=L[b+24>>2];H[a+12>>2]=0;L[a+8>>2]=e;H[a>>2]=d;H[a+4>>2]=c;c=H[b+4>>2];d=H[b>>2];e=L[b+8>>2];H[a+28>>2]=0;L[a+24>>2]=e;H[a+16>>2]=d;H[a+20>>2]=c}function Wv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=O(0);b=H[b+228>>2]+(c<<5)|0;c=H[b+20>>2];d=H[b+16>>2];e=L[b+24>>2];H[a+12>>2]=0;L[a+8>>2]=e;H[a>>2]=d;H[a+4>>2]=c;c=H[b+4>>2];d=H[b>>2];e=L[b+8>>2];H[a+28>>2]=0;L[a+24>>2]=e;H[a+16>>2]=d;H[a+20>>2]=c}function TB(a,b,c,d,e){var f=0,g=0;f=Oa-16|0;Oa=f;b=UB(a,b,c,d);H[f+12>>2]=b;a:{if(H[b+40>>2]|!b){break a}g=H[e+4>>2];if(g>>>0>=(H[e+8>>2]&2147483647)>>>0){QB(e,f+12|0);break a}H[H[e>>2]+(g<<2)>>2]=b;H[e+4>>2]=g+1}a=SB(a,c,d,e);Oa=f+16|0;return a}function NY(a){a=a|0;var b=0,c=0;H[a+8>>2]=127632;H[a>>2]=127548;if(F[a+6|0]&1){b=H[a+56>>2];if(b){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}H[a+56>>2]=0;b=H[a+84>>2];if(b){b=LY(b);c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}H[a+84>>2]=0}return a|0}function pH(a){a=a|0;var b=0,c=0,d=0;b=H[a+36>>2];if(b){c=H[a+28>>2];d=H[c+276>>2];c=H[H[c+192>>2]+4>>2];a=H[a+40>>2]+(H[a+32>>2]<<2)|0;b=b-1|0;if(b){while(1){hH(H[a>>2],H[d+4>>2],c);a=a+4|0;b=b-1|0;if(b){continue}break}}hH(H[a>>2],H[d+4>>2],c)}}function Ro(a,b){a=a|0;b=b|0;var c=O(0);c=L[b>>2];if(!I[a+4801|0]){L[a+1084>>2]=c;L[a+1088>>2]=L[b+4>>2];c=L[b+8>>2];H[a+1096>>2]=1;L[a+1092>>2]=c;return}L[a+5548>>2]=c;L[a+5552>>2]=L[b+4>>2];L[a+5556>>2]=L[b+8>>2];a=a+5580|0;H[a>>2]=H[a>>2]|1}function R$(a){a=a|0;var b=0,c=0;H[a>>2]=129124;b=a-8|0;H[b>>2]=129028;a:{if(F[a+188|0]&1){break a}a=H[b+200>>2];if(!a){break a}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,a-H[a-4>>2]|0);H[b+200>>2]=0}t$(b);a=H[33808]+12|0;Ra[H[H[a>>2]+12>>2]](a,b)}function vB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;if(c){e=a+7664|0;while(1){mB(e,H[(d<<2)+b>>2]);d=d+1|0;if((d|0)!=(c|0)){continue}break}F[a+7648|0]=1;H[a+32>>2]=0;H[a+16>>2]=H[a+7664>>2];b=a+7672|0;c=H[b+4>>2];H[a+24>>2]=H[b>>2];H[a+28>>2]=c}}function mR(a,b,c){var d=0;d=UG(a+4|0,H[b+4>>2],H[c+4>>2],1,5);H[a+36>>2]=-1;H[a+32>>2]=c;H[a+28>>2]=b;F[a+58|0]=0;G[a+56>>1]=32;H[a>>2]=124144;b=WO(d);WD(H[d>>2],d);WD(H[a+8>>2],d);c=H[H[d>>2]+40>>2];VN(c,d,b);iI(H[c+2168>>2],a);G[a+52>>1]=0}function XW(a,b,c){a=a|0;b=b|0;c=c|0;var d=O(0),e=O(0),f=O(0),g=0,h=0;c=(c<<4)+88320|0;g=H[c+4>>2];b=H[b+4>>2];d=L[b+52>>2];h=H[c+8>>2];e=L[b+56>>2];c=H[c>>2];f=L[b+48>>2];H[a+12>>2]=0;L[a>>2]=c?f:O(-f);L[a+8>>2]=h?e:O(-e);L[a+4>>2]=g?d:O(-d)}function Q1(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=H[a+80>>2];L[e+428>>2]=L[b>>2];L[e+432>>2]=L[b+4>>2];L[e+436>>2]=L[b+8>>2];L[e+440>>2]=L[c>>2];L[e+444>>2]=L[c+4>>2];L[e+448>>2]=L[c+8>>2];if(d){O1(a)}a=H[a+76>>2];Ra[H[H[a>>2]+36>>2]](a)}function Nd(a,b){a=a|0;b=b|0;var c=0;c=Oa-32|0;Oa=c;Ra[H[a>>2]](c,b);a=o6(28);L[a>>2]=L[c>>2];L[a+4>>2]=L[c+4>>2];L[a+8>>2]=L[c+8>>2];L[a+12>>2]=L[c+12>>2];L[a+16>>2]=L[c+16>>2];L[a+20>>2]=L[c+20>>2];L[a+24>>2]=L[c+24>>2];Oa=c+32|0;return a|0}function PT(a){a=a|0;var b=0,c=0;H[a>>2]=125416;if(I[a+32|0]){b=H[a+12>>2];if(b){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}H[a+12>>2]=0;b=H[a+8>>2];if(b){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}H[a+8>>2]=0}H[a+4>>2]=-2147483648;return a|0}function yJ(a,b){var c=0;c=I[b+7|0];if(c&1){a:{if(c&2){break a}c=H[b>>2];if(I[c+65|0]==1){H[a+924>>2]=H[a+924>>2]-1;H[c>>2]=H[a+932>>2];H[a+932>>2]=c;break a}H[a+632>>2]=H[a+632>>2]-1;H[c>>2]=H[a+640>>2];H[a+640>>2]=c}F[b+7|0]=0;H[b>>2]=0}}function wV(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=O(0),g=O(0),h=O(0);f=O(L[d+24>>2]-L[b+24>>2]);g=O(f*f);f=O(L[d+16>>2]-L[b+16>>2]);h=O(f*f);f=O(L[d+20>>2]-L[b+20>>2]);g=O(g+O(h+O(f*f)));f=O(L[a+4>>2]+L[c+4>>2]);return g<=O(f*f)|0}function Lh(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;c=J[a+24>>1];if(c){g=(c|0)==1?a+20|0:H[a+20>>2];while(1){e=(d<<2)+g|0;f=Ra[H[H[b>>2]>>2]](b,-2147483648,H[e>>2])|0;H[e>>2]=f;at(f,a);d=d+1|0;if((c|0)!=(d|0)){continue}break}}ig(a+12|0,b)}function m5(a){a=a|0;var b=0,c=0;H[a>>2]=133596;H[a+76>>2]=0;b=H[a+80>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=H[a+72>>2];if((b|0)==(a+4|0)){F[a+68|0]=0;return a|0}if(!b){break a}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}return a|0}function l5(a){a=a|0;var b=0,c=0;H[a>>2]=133664;H[a+76>>2]=0;b=H[a+80>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=H[a+72>>2];if((b|0)==(a+4|0)){F[a+68|0]=0;return a|0}if(!b){break a}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}return a|0}function MA(a){var b=0;H[a+8>>2]=0;H[a>>2]=0;H[a+4>>2]=0;b=a+12|0;H[b>>2]=0;H[b+4>>2]=0;H[b+16>>2]=0;H[b+20>>2]=0;H[b+8>>2]=0;H[b+12>>2]=0;H[a+60>>2]=0;H[a+52>>2]=0;H[a+56>>2]=0;H[a+44>>2]=0;H[a+48>>2]=0;H[a+36>>2]=0;H[a+40>>2]=0;return a}function DR(a,b){a=a|0;b=O(b);var c=0,d=0;c=Oa-16|0;Oa=c;L[a+536>>2]=b;if(H[a+432>>2]){d=rT(a+8|0);H[c+4>>2]=0;H[c+8>>2]=0;H[c>>2]=2;Ra[H[H[d>>2]+52>>2]](d,c)|0;L[c+8>>2]=O(b*O(.5))*L[a+516>>2];Ra[H[H[d>>2]+36>>2]](d,c)}Oa=c+16|0;return 1}function XY(a,b){a=a|0;b=b|0;var c=O(0),d=O(0),e=O(0),f=O(0),g=O(0),h=O(0);c=L[b+28>>2];d=L[b+32>>2];e=L[b+20>>2];f=L[b+16>>2];g=L[b+24>>2];h=L[b+36>>2];L[a+20>>2]=g+h;L[a+16>>2]=e+d;L[a+12>>2]=f+c;L[a+8>>2]=g-h;L[a+4>>2]=e-d;L[a>>2]=f-c}function UN(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;d=H[a+24>>2];e=H[a+36>>2];g=e-1|0;f=H[b+152>>2];h=f>>>0>>0;c=h?g:e;H[b+152>>2]=c;c=d+(c<<2)|0;d=H[c>>2];H[c>>2]=H[b+44>>2];H[H[d>>2]+152>>2]=f;H[H[a+24>>2]+(f<<2)>>2]=d;H[a+36>>2]=h?g:e+1|0}function P$(a){a=a|0;var b=0,c=0;H[a+8>>2]=129124;H[a>>2]=129028;a:{if(F[a+196|0]&1){break a}b=H[a+200>>2];if(!b){break a}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b-H[b-4>>2]|0);H[a+200>>2]=0}t$(a);b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,a)}function MY(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=I[a+55|0];if(d>>>0>b>>>0){a=H[a+56>>2]+N(b,20)|0;L[c>>2]=L[a>>2];L[c+4>>2]=L[a+4>>2];L[c+8>>2]=L[a+8>>2];L[c+12>>2]=L[a+12>>2];G[c+16>>1]=I[a+18|0];G[c+18>>1]=J[a+16>>1]}return b>>>0>>0|0}function H$(a,b){a=a|0;b=b|0;var c=O(0),d=O(0),e=O(0),f=O(0),g=O(0),h=O(0);c=L[b+44>>2];d=L[b+48>>2];e=L[b+36>>2];f=L[b+32>>2];g=L[b+40>>2];h=L[b+52>>2];L[a+20>>2]=g+h;L[a+16>>2]=e+d;L[a+12>>2]=f+c;L[a+8>>2]=g-h;L[a+4>>2]=e-d;L[a>>2]=f-c}function EF(a,b){var c=0,d=0;c=Oa-16|0;Oa=c;L[a+96>>2]=L[b>>2];L[a+100>>2]=L[b+4>>2];L[a+104>>2]=L[b+8>>2];a=H[a>>2];if(a){b=H[H[a+40>>2]+1012>>2];d=I[H[a+44>>2]+9|0];H[c+8>>2]=H[a+144>>2];Ra[H[H[b>>2]+44>>2]](b,(d|0)==2,c+8|0)}Oa=c+16|0}function _j(a){a=a|0;var b=0,c=0;H[a>>2]=105444;Pl(H[33768],a);b=H[a+104>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=H[a+96>>2];if((b|0)==(a+76|0)){F[a+92|0]=0;break a}if(!b){break a}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}return a|0}function YD(a,b,c){var d=0,e=0,f=0;d=H[a+28>>2];if(d){d=d-1|0;a=H[a+20>>2];while(1){e=d;d=H[a>>2];f=I[d+21|0];a:{if(!(f&c)){break a}F[d+22|0]=I[d+22|0]|b;if(f&8){break a}VG(d);F[d+21|0]=I[d+21|0]|8}a=a+4|0;d=e-1|0;if(e){continue}break}}}function Gg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;e=Oa-16|0;Oa=e;F[e+8|0]=I[c|0];c=Oa-16|0;Oa=c;d=H[a+24>>2];if(d){F[c+8|0]=I[e+8|0];a=Oa-16|0;Oa=a;d=H[d>>2];F[a+8|0]=I[c+8|0];Ra[H[H[d>>2]+40>>2]](d,b,a+8|0);Oa=a+16|0}Oa=c+16|0;Oa=e+16|0}function Dh(a){a=a|0;var b=0,c=0;H[a>>2]=103292;Pl(H[33768],a);b=H[a+104>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=H[a+96>>2];if((b|0)==(a+76|0)){F[a+92|0]=0;break a}if(!b){break a}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}return a|0}function QT(a){a=a|0;var b=0,c=0;H[a>>2]=125416;if(I[a+32|0]){b=H[a+12>>2];if(b){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}H[a+12>>2]=0;b=H[a+8>>2];if(b){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}H[a+8>>2]=0}H[a+4>>2]=-2147483648;N6(a)}function DF(a,b){var c=0,d=0;c=Oa-16|0;Oa=c;L[a+80>>2]=L[b>>2];L[a+84>>2]=L[b+4>>2];L[a+88>>2]=L[b+8>>2];a=H[a>>2];if(a){b=H[H[a+40>>2]+1012>>2];d=I[H[a+44>>2]+9|0];H[c+8>>2]=H[a+144>>2];Ra[H[H[b>>2]+44>>2]](b,(d|0)==2,c+8|0)}Oa=c+16|0}function Wq(a,b){a=a|0;b=b|0;if(!I[a+4801|0]){QO(a+32|0,b);return}L[a+5272>>2]=L[b>>2];L[a+5276>>2]=L[b+4>>2];L[a+5280>>2]=L[b+8>>2];L[a+5284>>2]=L[b+12>>2];L[a+5288>>2]=L[b+16>>2];L[a+5292>>2]=L[b+20>>2];a=a+5580|0;H[a>>2]=H[a>>2]|64}function VQ(a,b){var c=0;a:{if(H[a+44>>2]&98304|(H[a+56>>2]|!b)){break a}b=H[H[a+32>>2]+4>>2];b=I[H[b+44>>2]+9|0]-1>>>0<2?b:0;if(!b|I[a+46|0]&4){break a}c=H[H[a+4>>2]+40>>2];a=H[H[a+28>>2]+4>>2];zO(c,I[H[a+44>>2]+9|0]-1>>>0<2?a:0,b)}}function n$(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=O(g);h=h|0;i=i|0;j=O(j);var k=0;c=Oa-16|0;Oa=c;d=H[a+36>>2];k=J[d+4>>1];G[c+8>>1]=J[i>>1];a=Ra[H[(k<<2)+128696>>2]](d,a,b,e,f,g,h,c+8|0,j)|0;Oa=c+16|0;return a|0}function l$(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=O(g);h=h|0;i=i|0;j=O(j);var k=0;c=Oa-16|0;Oa=c;d=H[a+36>>2];k=J[d+4>>1];G[c+8>>1]=J[i>>1];a=Ra[H[(k<<2)+128688>>2]](d,a,b,e,f,g,h,c+8|0,j)|0;Oa=c+16|0;return a|0}function Oi(a){a=a|0;var b=0,c=0,d=0;a=H[a+16>>2];a:{b:{if(!a){break b}c=H[a+40>>2];if(!c){break b}d=H[a+36>>2];a=0;while(1){b=H[((a<<3)+d|0)+4>>2];if(I[(a<<3)+d|0]==1){break a}a=a+1|0;if((c|0)!=(a|0)){continue}break}}b=0}return b|0}function kg(a,b){var c=0,d=0,e=0,f=0;c=-1;a=H[a+4>>2];a:{if(!a){break a}d=H[a+40>>2];if(!d){break a}f=H[a+36>>2];a=0;while(1){e=(a<<3)+f|0;if(!(!I[e|0]&H[e+4>>2]==(b|0))){a=a+1|0;if((d|0)!=(a|0)){continue}break a}break}c=a}return c}function f6(a){var b=0,c=0,d=0;if(F[H[a>>2]]-48>>>0>=10){return 0}while(1){d=H[a>>2];c=-1;if(b>>>0<=214748364){c=F[d|0]-48|0;b=N(b,10);c=(c|0)>(2147483647-b|0)?-1:c+b|0}H[a>>2]=d+1;b=c;if(F[d+1|0]-48>>>0<10){continue}break}return b}function N0(a){a=a|0;var b=0,c=0;H[a>>2]=129468;b=H[a+6620>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=H[a+6612>>2];if((b|0)==(a+4560|0)){F[a+6608|0]=0;return a|0}if(!b){break a}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}return a|0}function BI(a,b){var c=0,d=0;c=Oa-16|0;Oa=c;H[c+12>>2]=b;H[b+44>>2]=H[b+44>>2]|8388608;d=H[a+36>>2];H[b+52>>2]=d;a:{if((H[a+40>>2]&2147483647)>>>0<=d>>>0){DI(a+32|0,c+12|0);break a}H[H[a+32>>2]+(d<<2)>>2]=b;H[a+36>>2]=d+1}Oa=c+16|0}function Tv(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;c=Oa-32|0;Oa=c;Uv(c,H[a+336>>2]+N(b,192)|0,d);L[e>>2]=L[c+16>>2];L[e+4>>2]=L[c+20>>2];L[e+8>>2]=L[c+24>>2];L[e+16>>2]=L[c>>2];L[e+20>>2]=L[c+4>>2];L[e+24>>2]=L[c+8>>2];Oa=c+32|0}function OO(a,b,c,d){var e=0,f=0;e=1<>2]|e}else{e=H[f>>2]&(e^-1)}H[f>>2]=e;b=1<>2]}else{b=H[c>>2]&(b^-1)}H[c>>2]=b;H[a+2356>>2]=H[a+2356>>2]|2}function _F(a,b){var c=0;a=H[a+176>>2];if(!(!a|I[a+31|0]!=1|!I[a+28|0])){L[b>>2]=L[a>>2];L[b+4>>2]=L[a+4>>2];L[b+8>>2]=L[a+8>>2];L[b+12>>2]=L[a+12>>2];L[b+16>>2]=L[a+16>>2];L[b+20>>2]=L[a+20>>2];L[b+24>>2]=L[a+24>>2];c=1}return c}function CR(a,b){a=a|0;b=O(b);var c=0,d=0;c=Oa-16|0;Oa=c;L[a+532>>2]=b;if(H[a+432>>2]){d=rT(a+8|0);H[c+4>>2]=0;H[c+8>>2]=0;H[c>>2]=2;Ra[H[H[d>>2]+52>>2]](d,c)|0;L[c+4>>2]=L[a+516>>2]*b;Ra[H[H[d>>2]+36>>2]](d,c)}Oa=c+16|0;return 1}function bc(a,b,c,d,e){a=a|0;b=O(b);c=O(c);d=O(d);e=O(e);var f=0;f=Oa-32|0;Oa=f;H[f+8>>2]=0;H[f+12>>2]=0;H[f+16>>2]=0;L[f+8>>2]=d;H[f>>2]=0;H[f+4>>2]=0;L[f+24>>2]=b;L[f+20>>2]=c;L[f+12>>2]=e;Ra[H[H[a>>2]+128>>2]](a,f);Oa=f+32|0}function CX(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;b=b+8|0;a=H[a+8>>2];c=H[a+264>>2];if(c>>>0>=(H[a+268>>2]&2147483647)>>>0){BX(a,b);return 1}H[H[a+260>>2]+(c<<2)>>2]=H[b>>2];H[a+264>>2]=H[a+264>>2]+1;return 1}function uB(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(!e){return 1}b=lB(a+7664|0,b,c,d,e);F[a+7648|0]=1;H[a+32>>2]=0;c=a+7672|0;d=H[c+4>>2];H[a+24>>2]=H[c>>2];H[a+28>>2]=d;H[a+16>>2]=H[a+7664>>2];return(b|0)==(e|0)|0}function iI(a,b){var c=0,d=0,e=0,f=0;c=Oa-16|0;Oa=c;d=H[b+28>>2];e=H[b+32>>2];f=d>>>0>e>>>0;H[c+4>>2]=f?d:e;H[c>>2]=f?e:d;a=jI(a+1956|0,c,c+15|0);if(!I[c+15|0]){d=H[c+4>>2];e=H[c>>2];H[a+8>>2]=b;H[a>>2]=e;H[a+4>>2]=d}Oa=c+16|0}function Yv(a,b,c){a=a|0;b=b|0;c=c|0;var d=O(0);b=H[b+228>>2]+(c<<5)|0;L[a>>2]=L[b+16>>2];L[a+4>>2]=L[b+20>>2];d=L[b+24>>2];H[a+12>>2]=0;L[a+8>>2]=d;L[a+16>>2]=L[b>>2];L[a+20>>2]=L[b+4>>2];d=L[b+8>>2];H[a+28>>2]=0;L[a+24>>2]=d}function z5(a){a=a|0;var b=0,c=0;H[a>>2]=133596;b=H[a+80>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=H[a+72>>2];if((b|0)==(a+4|0)){F[a+68|0]=0;return a|0}if(!b){break a}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}return a|0}function WF(a,b,c){var d=0,e=0,f=0;d=Oa-16|0;Oa=d;L[a+156>>2]=b;a=H[a>>2];if(a){e=H[H[a+40>>2]+1012>>2];f=I[H[a+44>>2]+9|0];H[d+8>>2]=H[a+144>>2];Ra[H[H[e>>2]+44>>2]](e,(f|0)==2,d+8|0);if(c?1:b>O(0)){pG(a)}mG(a,b,c)}Oa=d+16|0}function B5(a){a=a|0;var b=0,c=0;H[a>>2]=133664;b=H[a+80>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=H[a+72>>2];if((b|0)==(a+4|0)){F[a+68|0]=0;return a|0}if(!b){break a}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}return a|0}function wP(a){a=a|0;var b=0,c=0,d=0,e=0;b=Oa-16|0;Oa=b;c=H[a+32>>2];if(c){d=H[a+28>>2];while(1){e=H[a+36>>2];H[b+8>>2]=H[H[H[d>>2]>>2]+144>>2];Ra[H[H[e>>2]+44>>2]](e,0,b+8|0);d=d+4|0;c=c-1|0;if(c){continue}break}}Oa=b+16|0}function jH(a,b,c){var d=0,e=0,f=0;if((H[a+12>>2]&2147483647)>>>0>>0){kH(a,b)}d=H[a+8>>2];if((d|0)<(b|0)){e=H[a+4>>2];f=e+(b<<2)|0;d=(d<<2)+e|0;while(1){H[d>>2]=H[c>>2];d=d+4|0;if(f>>>0>d>>>0){continue}break}}H[a+8>>2]=b}function _V(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=O(e);f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;i=Oa-16|0;Oa=i;j=H[a+36>>2];k=J[j+4>>1];G[i+8>>1]=J[f>>1];a=Ra[H[(k<<2)+126384>>2]](j,a,b,c,d,e,i+8|0,g,h)|0;Oa=i+16|0;return a|0}function IJ(a){a=a|0;var b=0,c=0,d=0;if(H[a+8>>2]){while(1){b=d<<2;c=H[b+H[a+4>>2]>>2];Ra[H[H[c>>2]>>2]](c)|0;b=H[b+H[a+4>>2]>>2];if(b){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}d=d+1|0;if(d>>>0>2]){continue}break}}}function ng(a,b){var c=0,d=0;a=H[a+4>>2];a:{if(!a){break a}c=H[a+40>>2];if(!c){break a}d=H[a+36>>2];a=0;while(1){if(I[(a<<3)+d|0]==1){H[b>>2]=a;return H[((a<<3)+d|0)+4>>2]}a=a+1|0;if((c|0)!=(a|0)){continue}break}}return 0}function kb(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=Oa-32|0;Oa=c;d=H[b+4>>2];e=H[b>>2];L[c+24>>2]=L[b+8>>2];H[c+16>>2]=e;H[c+20>>2]=d;H[c+8>>2]=0;H[c+12>>2]=1065353216;H[c>>2]=0;H[c+4>>2]=0;Ra[H[H[a>>2]+108>>2]](a,c);Oa=c+32|0}function vE(a,b,c){var d=0,e=0,f=0;if((H[a+8>>2]&2147483647)>>>0>>0){uE(a,b)}d=H[a+4>>2];if((d|0)<(b|0)){e=H[a>>2];f=e+(b<<2)|0;d=(d<<2)+e|0;while(1){H[d>>2]=H[c>>2];d=d+4|0;if(f>>>0>d>>>0){continue}break}}H[a+4>>2]=b}function qU(a){a=a|0;var b=0,c=0;H[a>>2]=125472;a:{if(F[a+180|0]&1){break a}b=H[a+184>>2];if(!b){break a}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b-H[b-4>>2]|0);H[a+184>>2]=0}pU(a);b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,a)}function j_(a,b,c,d){var e=0,f=0,g=O(0),h=O(0);e=Oa-32|0;Oa=e;f=H[a+4>>2];H[e+24>>2]=a;H[e+20>>2]=f;g=L[a+8>>2];h=L[a+12>>2];L[e+16>>2]=O(1)/L[a+16>>2];L[e+8>>2]=O(1)/h;L[e+12>>2]=O(1)/g;YZ(e+8|0,b,d,0,0,c,1,1);Oa=e+32|0}function j5(a,b,c){var d=0,e=0,f=0;if((H[a+8>>2]&2147483647)>>>0>>0){k5(a,b)}d=H[a+4>>2];if((d|0)<(b|0)){e=H[a>>2];f=e+(b<<2)|0;d=(d<<2)+e|0;while(1){H[d>>2]=H[c>>2];d=d+4|0;if(f>>>0>d>>>0){continue}break}}H[a+4>>2]=b}function gy(a,b,c){var d=0,e=0,f=0;if((H[a+8>>2]&2147483647)>>>0>>0){Dv(a,b)}d=H[a+4>>2];if((d|0)<(b|0)){e=H[a>>2];f=e+(b<<2)|0;d=(d<<2)+e|0;while(1){H[d>>2]=H[c>>2];d=d+4|0;if(f>>>0>d>>>0){continue}break}}H[a+4>>2]=b}function gf(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;g=2;c=H[c>>2];a:{if(c>>>0>31){break a}e=H[e>>2];if(e>>>0>31|!I[e+((c<<5)+134032|0)|0]){break a}G[f>>1]=((b|d)&32)>>>5|0?1044:3645;g=0}G[a>>1]=g}function Fq(a,b,c){var d=0,e=0,f=0;if((H[a+8>>2]&2147483647)>>>0>>0){Gq(a,b)}d=H[a+4>>2];if((d|0)<(b|0)){e=H[a>>2];f=e+(b<<2)|0;d=(d<<2)+e|0;while(1){H[d>>2]=H[c>>2];d=d+4|0;if(f>>>0>d>>>0){continue}break}}H[a+4>>2]=b}function Dq(a,b,c){var d=0,e=0,f=0;if((H[a+8>>2]&2147483647)>>>0>>0){Eq(a,b)}d=H[a+4>>2];if((d|0)<(b|0)){e=H[a>>2];f=e+(b<<2)|0;d=(d<<2)+e|0;while(1){H[d>>2]=H[c>>2];d=d+4|0;if(f>>>0>d>>>0){continue}break}}H[a+4>>2]=b}function Bq(a,b,c){var d=0,e=0,f=0;if((H[a+8>>2]&2147483647)>>>0>>0){Cq(a,b)}d=H[a+4>>2];if((d|0)<(b|0)){e=H[a>>2];f=e+(b<<1)|0;d=(d<<1)+e|0;while(1){G[d>>1]=J[c>>1];d=d+2|0;if(f>>>0>d>>>0){continue}break}}H[a+4>>2]=b}function qI(a,b,c,d,e){var f=0,g=0,h=0;f=Oa-16|0;Oa=f;g=H[b+4>>2];h=H[g+28>>2];g=H[g+20>>2];H[f+8>>2]=b;H[f>>2]=g;H[f+4>>2]=g+(h<<2);b=YH(f);if(b){c=c|3;while(1){nI(a,b,c,0,1,d,e);b=YH(f);if(b){continue}break}}Oa=f+16|0}function TT(a,b,c){var d=0,e=0;d=Oa-5120|0;Oa=d;if(!(!b|!c|(c|0)<0)){e=H[a+4>>2]&2147483647;if((e|0)!=(c|0)){if(c>>>0>e>>>0){RT(a,c)}H[a+4>>2]=c|-2147483648}H[a+20>>2]=d;H[a+16>>2]=d+1024;NT(a,b,c)}Oa=d+5120|0;return a}function mt(a,b){var c=0,d=0,e=0;c=J[a+4>>1];if(c){d=(c|0)==1?a:H[a>>2];e=b+4816|0;a=0;while(1){b=H[(a<<2)+d>>2];if(I[b+39|0]&16){xt(e,b+32|0);H[b+36>>2]=H[b+36>>2]&-268435457}a=a+1|0;if((c|0)!=(a|0)){continue}break}}}function Q0(a,b){H[b+8>>2]=0;H[b+12>>2]=8;H[b>>2]=0;H[b+4>>2]=0;H[b+36>>2]=0;H[b+40>>2]=0;H[b+32>>2]=90304;H[b+16>>2]=6;H[b+20>>2]=0;H[b+24>>2]=a+100;H[b+28>>2]=a+4;H[b+44>>2]=0;H[b+48>>2]=0;H[b+52>>2]=0;H[b+56>>2]=0} -function Vi(a,b){a=a|0;b=b|0;b=H[b+316>>2]&1024?H[b+56>>2]+144|0:b+112|0;L[a>>2]=L[b>>2];L[a+4>>2]=L[b+4>>2];L[a+8>>2]=L[b+8>>2];L[a+12>>2]=L[b+12>>2];L[a+16>>2]=L[b+16>>2];L[a+20>>2]=L[b+20>>2];L[a+24>>2]=L[b+24>>2]}function J$(a){a=a|0;var b=0,c=0,d=0;H[a>>2]=128996;b=a-8|0;H[b>>2]=128900;h_(a+116|0);c=H[a+100>>2];if(c){d=H[33808];Ra[H[H[d+12>>2]+12>>2]](d+12|0,c)}H[a+100>>2]=0;t$(b);a=H[33808];Ra[H[H[a+12>>2]+12>>2]](a+12|0,b)}function x$(a){a=a|0;var b=0,c=0;b=H[a+72>>2];a=a-8|0;if(lU(b,a)){b=H[a+80>>2];c=J[a+4>>1];a:{if(F[a+6|0]&1){Ra[H[H[a>>2]+16>>2]](a);break a}Ra[H[H[a>>2]+12>>2]](a)|0}nU(b,a,c);return}o5(H[33808],8,8502,208,64645,0)}function oW(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;b=b+8|0;a=H[a+8>>2];c=H[a+4>>2];if(c>>>0>=(H[a+8>>2]&2147483647)>>>0){qm(a,b);return 1}H[H[a>>2]+(c<<2)>>2]=H[b>>2];H[a+4>>2]=H[a+4>>2]+1;return 1}function jb(a,b){a=a|0;b=b|0;var c=0,d=0;c=Oa-16|0;Oa=c;d=H[a>>2];a=H[a+4>>2];b=(a>>1)+b|0;if(a&1){d=H[d+H[b>>2]>>2]}Ra[d|0](c,b);a=o6(12);L[a>>2]=L[c>>2];L[a+4>>2]=L[c+4>>2];L[a+8>>2]=L[c+8>>2];Oa=c+16|0;return a|0}function hd(){var a=0;a=o6(64);H[a+16>>2]=0;H[a+20>>2]=0;G[a+12>>1]=0;H[a+8>>2]=-1;H[a>>2]=0;H[a+4>>2]=0;H[a+48>>2]=0;H[a+40>>2]=2139095039;H[a+44>>2]=0;H[a+24>>2]=0;H[a+28>>2]=0;H[a+32>>2]=0;H[a+36>>2]=0;return a|0}function g7(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=N(e,f);g=c&65535;h=a&65535;i=N(g,h);f=(i>>>16|0)+N(f,g)|0;e=(f&65535)+N(e,h)|0;Qa=(N(b,c)+j|0)+N(a,d)+(f>>>16)+(e>>>16)|0;return i&65535|e<<16}function XD(a,b){var c=0,d=0,e=0;b=H[(H[b>>2]==(a|0)?12:16)+b>>2];c=H[a+28>>2]-1|0;H[a+28>>2]=c;d=H[a+20>>2];e=b<<2;H[d+e>>2]=H[(c<<2)+d>>2];if(b>>>0>>0){c=a;a=H[H[a+20>>2]+e>>2];H[((c|0)==H[a>>2]?12:16)+a>>2]=b}}function U$(a){var b=0,c=0;if(!I[a+40|0]){b=H[a+24>>2];if(b){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b);H[a+24>>2]=0}b=H[a+28>>2];if(b){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}H[a+28>>2]=0}H[a+20>>2]=0;H[a+24>>2]=0}function Nc(a,b){a=a|0;b=b|0;var c=0,d=0;c=Oa-16|0;Oa=c;d=H[a>>2];a=H[a+4>>2];b=(a>>1)+b|0;if(a&1){d=H[d+H[b>>2]>>2]}Ra[d|0](c,b);a=o6(12);H[a>>2]=H[c>>2];H[a+4>>2]=H[c+4>>2];H[a+8>>2]=H[c+8>>2];Oa=c+16|0;return a|0}function eB(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;if(!I[a+48|0]){o5(H[33808],2,8814,392,64179,0);return 0}e=H[a+40>>2]-d|0;e=(e|0)>0?e:0;c=c>>>0>e>>>0?e:c;if(c){R6(b,H[a+44>>2]+(d<<2)|0,c<<2)}else{c=0}return c|0}function bg(a,b){a=a|0;b=b|0;var c=0,d=0;if(H[a+36>>2]){while(1){c=H[H[a+40>>2]+(d<<2)>>2];if(!(J[c+4>>1]!=13|!c)){c=Ra[H[H[c>>2]+248>>2]](c)|0}Ra[H[H[b>>2]+8>>2]](b,c);d=d+1|0;if(d>>>0>2]){continue}break}}}function g_(a){H[a>>2]=0;H[a+4>>2]=0;G[a+56>>1]=0;H[a+48>>2]=0;H[a+52>>2]=0;H[a+40>>2]=0;H[a+44>>2]=0;H[a+32>>2]=0;H[a+36>>2]=0;H[a+24>>2]=0;H[a+28>>2]=0;H[a+16>>2]=0;H[a+20>>2]=0;H[a+8>>2]=0;H[a+12>>2]=0;return a}function fK(a,b,c){a=a|0;b=b|0;c=c|0;H[H[a+4>>2]>>2]=b;eK(a,c);c=H[a+32>>2];b=H[a+4>>2];H[b+384>>2]=H[a+36>>2];H[b+368>>2]=c;TJ(b,b+340|0);b=H[a+4>>2];_J(b+340|0,a,b+324|0,b+332|0);S6(H[b+324>>2],0,H[b+328>>2]<<2)}function Vq(a,b){a=a|0;b=b|0;if((b|0)<=23){if(!(!(I[a+5580|0]&32)|!I[(a+b|0)+5248|0])){return O(L[((b<<2)+a|0)+5152>>2])}return O(L[(H[a+1008>>2]+(b<<2)|0)+1032>>2])}o5(H[33808],4,9281,2497,57534,0);return O(O(0))}function IT(a,b){var c=0;a:{if(!I[a+6|0]){break a}c=J[a+4>>1];if(c>>>0<2){break a}c=c-1|0;c=c>>>1|c;c=c>>>2|c;c=c>>>4|c;c=c>>>8|c;Ra[H[H[b>>2]+4>>2]](b,H[a>>2],((c>>>16|c)<<2)+4|0)}F[a+6|0]=1;H[a>>2]=0;G[a+4>>1]=0}function Bh(a,b){a=a|0;b=b|0;var c=0,d=0;a:{if(I[a+92|0]){break a}c=H[a+96>>2];if(!c){break a}d=H[a+104>>2];if(!(H[a+100>>2]|d&2147483647)){break a}Ra[H[H[b>>2]+8>>2]](b,c,d<<2)}Ra[H[H[b>>2]+16>>2]](b,H[a+112>>2])}function $5(a,b){var c=0,d=0,e=0;c=a*a;d=c*a;e=c*c;a=d*e*(e*(c*.009465647849436732+.002974357433599673)+(c*.024528318116654728+.05338123784456704))+(d*(c*.13339200271297674+.3333313950307914)+a);return O(b?-1/a:a)}function kf(a){a=a|0;var b=0,c=0;b=Oa-32|0;Oa=b;if(Ra[H[H[a>>2]+24>>2]](a)>>>0<=2){H[b+28>>2]=0;Ra[H[H[a>>2]+96>>2]](a,b+28|0,1,0)|0;a=H[b+28>>2];Ra[H[H[a>>2]+88>>2]](b+8|0,a);c=H[b+8>>2]}Oa=b+32|0;return c&65535}function cE(a,b){L[a+32>>2]=L[b>>2];L[a+36>>2]=L[b+4>>2];L[a+40>>2]=L[b+8>>2];L[a+44>>2]=L[b+12>>2];L[a+48>>2]=L[b+16>>2];L[a+52>>2]=L[b+20>>2];L[a+56>>2]=L[b+24>>2];F[a+273|0]=I[a+273|0]|2;a=H[a>>2];if(a){oE(a)}}function bk(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=H[a+392>>2];if(c){d=a,e=Ra[H[H[b>>2]>>2]](b,-2147483648,c)|0,H[d+392>>2]=e}c=H[a+396>>2];if(c){d=a,e=Ra[H[H[b>>2]>>2]](b,-2147483648,c)|0,H[d+396>>2]=e}H[a+388>>2]=a}function Q$(a){a=a|0;var b=0,c=0;H[a>>2]=129124;b=a-8|0;H[b>>2]=129028;a:{if(F[a+188|0]&1){break a}a=H[b+200>>2];if(!a){break a}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,a-H[a-4>>2]|0);H[b+200>>2]=0}t$(b);return b|0}function CI(a,b){var c=0,d=0,e=0;c=H[b+52>>2];H[b+52>>2]=-1;H[b+44>>2]=H[b+44>>2]&-8388609;b=H[a+36>>2]-1|0;H[a+36>>2]=b;d=H[a+32>>2];e=c<<2;H[d+e>>2]=H[(b<<2)+d>>2];if(b>>>0>c>>>0){H[H[H[a+32>>2]+e>>2]+52>>2]=c}}function tG(a){var b=0,c=0,d=0;c=H[a+28>>2];d=H[a+20>>2];b=H[a+100>>2];H[b+148>>2]=H[b+148>>2]-1;a:{while(1){if(c){c=c-1|0;b=H[d>>2];d=d+4|0;if(I[b+20|0]!=4){continue}break a}break}G[a+148>>1]=J[a+148>>1]&65279}}function hQ(a){a=a|0;var b=0,c=0,d=0;c=Oa-48|0;Oa=c;d=c+8|0;a=H[a+28>>2];b=H[H[a+976>>2]+1024>>2];Ra[H[H[b>>2]+84>>2]](d,b);b=H[a+1004>>2];Ra[H[H[b>>2]+8>>2]](b,H[a+1e3>>2],H[a+2492>>2],H[a+2496>>2],d);Oa=c+48|0}function _n(a,b){a=a|0;b=b|0;b=H[b+52>>2]&64?H[b+56>>2]+96|0:b+80|0;L[a>>2]=L[b>>2];L[a+4>>2]=L[b+4>>2];L[a+8>>2]=L[b+8>>2];L[a+12>>2]=L[b+12>>2];L[a+16>>2]=L[b+16>>2];L[a+20>>2]=L[b+20>>2];L[a+24>>2]=L[b+24>>2]}function $i(a,b){a=a|0;b=b|0;var c=0;if(I[b+316|0]&2){b=H[b+56>>2]+96|0}else{c=b- -64|0;b=H[c+176>>2];a:{if(!(!b|I[b+31|0]!=1)){b=b+32|0;break a}b=c+128|0}}L[a>>2]=L[b>>2];L[a+4>>2]=L[b+4>>2];L[a+8>>2]=L[b+8>>2]}function bE(a,b){L[a+4>>2]=L[b>>2];L[a+8>>2]=L[b+4>>2];L[a+12>>2]=L[b+8>>2];L[a+16>>2]=L[b+12>>2];L[a+20>>2]=L[b+16>>2];L[a+24>>2]=L[b+20>>2];L[a+28>>2]=L[b+24>>2];F[a+273|0]=I[a+273|0]|2;a=H[a>>2];if(a){oE(a)}}function Yl(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;a=0;d=0;a:{if(b>>>0<5){break a}d=1;if(b>>>0<17){break a}d=b>>>0<65?2:3}b=d;b:{if(c>>>0<5){break b}a=1;if(c>>>0<17){break b}a=c>>>0<65?2:3}return(a|0)==(b|0)&c>>>0<65}function Gh(a,b){a=a|0;b=b|0;var c=0,d=0;it(a+20|0,b);eg(a+12|0,b);a:{if(I[a+348|0]){break a}c=H[a+352>>2];if(!c){break a}d=H[a+356>>2];a=H[a+360>>2];if(!(d|a&2147483647)){break a}Ra[H[H[b>>2]+8>>2]](b,c,a<<2)}}function De(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;g=Oa-16|0;Oa=g;h=H[a+4>>2];b=(h>>1)+b|0;a=H[a>>2];a=h&1?H[H[b>>2]+a>>2]:a;F[g+8|0]=I[f|0];a=Ra[a|0](b,c,d,e,g+8|0)|0;Oa=g+16|0;return a|0}function K1(a,b){a=a|0;b=b|0;var c=0;b=H[b+80>>2];L[a>>2]=L[b+240>>2];L[a+4>>2]=L[b+244>>2];L[a+8>>2]=L[b+248>>2];L[a+12>>2]=L[b+252>>2];L[a+16>>2]=L[b+256>>2];c=H[b+264>>2];H[a+20>>2]=H[b+260>>2];H[a+24>>2]=c}function Ih(a,b){a=a|0;b=b|0;var c=0,d=0;jt(a+20|0,b);hg(a+12|0,b);a:{if(I[a+348|0]|!H[a+352>>2]){break a}c=H[a+360>>2];if(!(H[a+356>>2]|c&2147483647)){break a}d=b;b=H[b+4>>2];H[d+4>>2]=b+(c<<2);H[a+352>>2]=b}}function G1(a,b){a=a|0;b=b|0;var c=0;b=H[b+80>>2];L[a>>2]=L[b+212>>2];L[a+4>>2]=L[b+216>>2];L[a+8>>2]=L[b+220>>2];L[a+12>>2]=L[b+224>>2];L[a+16>>2]=L[b+228>>2];c=H[b+236>>2];H[a+20>>2]=H[b+232>>2];H[a+24>>2]=c}function $D(a){var b=0,c=0,d=0;a=H[a>>2];if(a){if(H[a+28>>2]){d=H[a+12>>2];b=H[a>>2];c=H[a+16>>2];Ra[H[H[b>>2]+12>>2]](b,c)|0;F[b+76|0]=c;H[b+32>>2]=d;Ra[H[H[b>>2]+8>>2]](b)}a=H[a>>2];Ra[H[H[a>>2]+100>>2]](a)}}function w6(a,b,c){var d=0;d=H[a+16>>2];if(!d){H[a+36>>2]=1;H[a+24>>2]=c;H[a+16>>2]=b;return}a:{if((b|0)==(d|0)){if(H[a+24>>2]!=2){break a}H[a+24>>2]=c;return}F[a+54|0]=1;H[a+24>>2]=2;H[a+36>>2]=H[a+36>>2]+1}}function w4(a,b){a=a|0;b=b|0;var c=0;b=H[b+80>>2];L[a>>2]=L[b+92>>2];L[a+4>>2]=L[b+96>>2];L[a+8>>2]=L[b+100>>2];L[a+12>>2]=L[b+104>>2];L[a+16>>2]=L[b+108>>2];c=H[b+116>>2];H[a+20>>2]=H[b+112>>2];H[a+24>>2]=c}function s5(a){a=a|0;var b=0;a=H[33808];if(H[33810]==1){a=Ra[H[H[a>>2]+16>>2]](a)|0;b=H[33808];Ra[H[H[b>>2]+28>>2]](b)|0;Ra[H[H[a>>2]+12>>2]](a,H[33808]);H[33810]=0;H[33808]=0;return}o5(a,8,7612,185,56472,0)}function w5(a){a=a|0;var b=0,c=0;H[a>>2]=133596;H[a+76>>2]=0;b=H[a+80>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=H[a+72>>2];if((b|0)==(a+4|0)|!b){break a}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}N6(a)}function O$(a){a=a|0;var b=0,c=0;H[a+8>>2]=129124;H[a>>2]=129028;a:{if(F[a+196|0]&1){break a}b=H[a+200>>2];if(!b){break a}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b-H[b-4>>2]|0);H[a+200>>2]=0}t$(a);return a|0}function D$(a){a=a|0;var b=0,c=0;H[a+8>>2]=128996;H[a>>2]=128900;h_(a+124|0);b=H[a+108>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}H[a+108>>2]=0;t$(a);b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,a)}function B1(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=H[c+4>>2];b=H[a+80>>2]+(b<<4)|0;H[b+304>>2]=H[c>>2];H[b+308>>2]=d;L[b+312>>2]=L[c+8>>2];H[b+316>>2]=H[c+12>>2];F[a+84|0]=1;a=H[a+76>>2];Ra[H[H[a>>2]+36>>2]](a)}function A5(a){a=a|0;var b=0,c=0;H[a>>2]=133664;H[a+76>>2]=0;b=H[a+80>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=H[a+72>>2];if((b|0)==(a+4|0)|!b){break a}c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}N6(a)}function Gs(a,b){a=a|0;b=b|0;b=H[b+36>>2]&4?H[b+40>>2]:b+80|0;L[a>>2]=L[b>>2];L[a+4>>2]=L[b+4>>2];L[a+8>>2]=L[b+8>>2];L[a+12>>2]=L[b+12>>2];L[a+16>>2]=L[b+16>>2];L[a+20>>2]=L[b+20>>2];L[a+24>>2]=L[b+24>>2]}function g4(a,b){a=a|0;b=b|0;var c=0;b=H[b+80>>2];L[a>>2]=L[b+80>>2];L[a+4>>2]=L[b+84>>2];L[a+8>>2]=L[b+88>>2];L[a+12>>2]=L[b+92>>2];L[a+16>>2]=L[b+96>>2];c=H[b+104>>2];H[a+20>>2]=H[b+100>>2];H[a+24>>2]=c}function fs(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;g=Oa-32|0;Oa=g;G[g>>1]=0;H[g+28>>2]=0;H[g+24>>2]=c;H[g+20>>2]=b;H[g+8>>2]=0;H[g+12>>2]=0;a=gs(a,g+8|0,d,g,0,e,f,0);Oa=g+32|0;return a|0}function ys(a,b){a=a|0;b=b|0;var c=0,d=0;c=a+116|0;d=H[c>>2];if((d|0)==3){a=H[a+36>>2]&1?H[a+40>>2]- -64|0:c;H[b>>2]=H[a>>2];L[b+4>>2]=L[a+4>>2];L[b+8>>2]=L[a+8>>2];L[b+12>>2]=L[a+12>>2]}return(d|0)==3|0}function w$(a){a=a|0;var b=0,c=0;if(lU(H[a+80>>2],a)){b=H[a+80>>2];c=J[a+4>>1];a:{if(F[a+6|0]&1){Ra[H[H[a>>2]+16>>2]](a);break a}Ra[H[H[a>>2]+12>>2]](a)|0}nU(b,a,c);return}o5(H[33808],8,8502,208,64645,0)}function i6(a,b,c,d,e){var f=0;f=Oa-256|0;Oa=f;if(!(e&73728|(c|0)<=(d|0))){c=c-d|0;d=c>>>0<256;S6(f,b&255,d?c:256);if(!d){while(1){e6(a,f,256);c=c-256|0;if(c>>>0>255){continue}break}}e6(a,f,c)}Oa=f+256|0}function Nf(a){a=a|0;var b=0,c=0;H[a>>2]=102864;Rl(H[33768],a);a:{if(!(F[a+6|0]&1)){break a}b=H[a+40>>2];if(!b){break a}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,a)}function vH(a,b){var c=0,d=0,e=0;c=H[a+4>>2];if((c|0)<0){d=H[a>>2];c=d+N(c,12)|0;while(1){e=H[b+4>>2];H[c>>2]=H[b>>2];H[c+4>>2]=e;H[c+8>>2]=H[b+8>>2];c=c+12|0;if(d>>>0>c>>>0){continue}break}}H[a+4>>2]=0}function tQ(a){a=a|0;var b=0,c=0,d=0;c=H[a+28>>2];a=H[a+20>>2];b=H[a+16>>2];b=Ra[H[H[b>>2]+4>>2]](b)|0;b=Ra[H[H[b>>2]+4>>2]](b)|0;d=b;b=H[c+976>>2];sH(H[c+980>>2],d,H[b+1156>>2],b,I[c+1148|0],a,c+4e3|0)}function t4(a){a=a|0;var b=0,c=0;H[a>>2]=132180;b=a-12|0;H[b>>2]=131968;if(F[a-6|0]&1){a=H[b+80>>2];if(a){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,a)}H[b+80>>2]=0}a=H[33808]+12|0;Ra[H[H[a>>2]+12>>2]](a,b)}function oE(a){var b=0,c=0,d=0;a=H[H[H[a+24>>2]+364>>2]>>2];b=H[a>>2];F[b+93|0]=1;c=H[H[a+4>>2]+1012>>2];d=b;b=a+48|0;Ra[H[H[c>>2]+64>>2]](c,d,b);c=H[H[a+4>>2]+1012>>2];Ra[H[H[c>>2]+68>>2]](c,H[a>>2],b)}function f5(a){a=a|0;var b=0,c=0;H[a>>2]=133420;b=a-12|0;H[b>>2]=133216;if(F[a-6|0]&1){a=H[b+80>>2];if(a){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,a)}H[b+80>>2]=0}a=H[33808]+12|0;Ra[H[H[a>>2]+12>>2]](a,b)}function _3(a){a=a|0;var b=0,c=0;H[a>>2]=131576;b=a-12|0;H[b>>2]=131392;if(F[a-6|0]&1){a=H[b+80>>2];if(a){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,a)}H[b+80>>2]=0}a=H[33808]+12|0;Ra[H[H[a>>2]+12>>2]](a,b)}function P4(a){a=a|0;var b=0,c=0;H[a>>2]=132832;b=a-12|0;H[b>>2]=132596;if(F[a-6|0]&1){a=H[b+80>>2];if(a){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,a)}H[b+80>>2]=0}a=H[33808]+12|0;Ra[H[H[a>>2]+12>>2]](a,b)}function LF(a,b,c){var d=0;d=H[a>>2];if(d){kG(d)}a=H[a+176>>2];a:{if(!a){break a}F[a+12|0]=I[a+12|0]|4;if(b){H[a+40>>2]=0;H[a+32>>2]=0;H[a+36>>2]=0}if(!c){break a}H[a+56>>2]=0;H[a+48>>2]=0;H[a+52>>2]=0}}function L3(a){a=a|0;var b=0,c=0;H[a>>2]=131028;b=a-12|0;H[b>>2]=130804;if(F[a-6|0]&1){a=H[b+80>>2];if(a){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,a)}H[b+80>>2]=0}a=H[33808]+12|0;Ra[H[H[a>>2]+12>>2]](a,b)}function $2(a){a=a|0;var b=0,c=0;H[a>>2]=130192;b=a-12|0;H[b>>2]=129924;if(F[a-6|0]&1){a=H[b+80>>2];if(a){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,a)}H[b+80>>2]=0}a=H[33808]+12|0;Ra[H[H[a>>2]+12>>2]](a,b)}function ZG(a){var b=0,c=0,d=0;a:{b=H[a+8>>2];b=b>>>1|b;b=b>>>2|b;b=b>>>4|b;b=b>>>8|b;c=b>>>16|b;b=c+1|0;if((b|0)==H[a>>2]){break a}d=H[a+24>>2];if(b>>>0>>0?d:0){break a}H[a+4>>2]=c;H[a>>2]=b;YG(a)}}function HZ(a){a=a|0;var b=0,c=0;H[a>>2]=127808;b=a-8|0;H[b>>2]=127704;if(F[a-2|0]&1){a=H[b+60>>2];if(a){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,a)}H[b+60>>2]=0}a=H[33808]+12|0;Ra[H[H[a>>2]+12>>2]](a,b)}function y5(a,b){a=a|0;b=b|0;var c=0,d=0;if(H[a+76>>2]){while(1){d=H[H[a+72>>2]+(c<<2)>>2];Ra[H[H[d>>2]+4>>2]](d,b);c=c+1|0;if(c>>>0>2]){continue}break}}a=H[a+84>>2];Ra[H[H[a>>2]+12>>2]](a,b)}function v2(a,b,c){a=a|0;b=b|0;c=c|0;b=N(c,28)+b|0;L[a>>2]=L[b+20>>2];L[a+4>>2]=L[b+24>>2];L[a+8>>2]=L[b+28>>2];L[a+12>>2]=L[b+32>>2];L[a+16>>2]=L[b+36>>2];L[a+20>>2]=L[b+40>>2];L[a+24>>2]=L[b+44>>2]}function iP(a){a=a|0;var b=0,c=0,d=O(0),e=0;c=H[a+28>>2];d=L[a+32>>2];e=H[a+40>>2];a=H[a+36>>2];if(H[a+28>>2]){while(1){iG(H[H[a+24>>2]+(b<<2)>>2],c,d,e);b=b+1|0;if(b>>>0>2]){continue}break}}}function JZ(a){a=a|0;var b=0;b=H[a+88>>2];a=a-8|0;if(mU(b,a)){b=H[a+96>>2];a:{if(F[a+6|0]&1){Ra[H[H[a>>2]+16>>2]](a);break a}Ra[H[H[a>>2]+12>>2]](a)|0}nU(b,a,1);return}o5(H[33808],8,9818,101,64535,0)}function f3(a){a=a|0;var b=0,c=0;H[a>>2]=130332;b=H[a+4>>2];if(H[b+16>>2]==1){H[b+16>>2]=2}b=H[a+4>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,a)}function Xi(a){a=a|0;var b=O(0),c=0;if(F[a+316|0]&1){b=L[H[a+56>>2]+92>>2]}else{a=a- -64|0;c=H[a+176>>2];a:{if(!(!c|I[c+31|0]!=1)){b=L[c+44>>2];break a}b=L[a+140>>2]}}return O(b>O(0)?O(O(1)/b):O(0))}function P0(a){a=a|0;var b=0,c=0;H[a>>2]=129468;b=H[a+6620>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=H[a+6612>>2];if((b|0)==(a+4560|0)|!b){break a}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}N6(a)}function M1(a,b){a=a|0;b=b|0;b=H[b+80>>2];L[a>>2]=L[b+400>>2];L[a+4>>2]=L[b+404>>2];L[a+8>>2]=L[b+408>>2];L[a+12>>2]=L[b+412>>2];L[a+16>>2]=L[b+416>>2];L[a+20>>2]=L[b+420>>2];L[a+24>>2]=L[b+424>>2]}function JF(a,b,c){var d=0;d=H[a>>2];if(d){jG(d)}a=H[a+176>>2];a:{if(!a){break a}F[a+12|0]=I[a+12|0]|2;if(b){H[a+8>>2]=0;H[a>>2]=0;H[a+4>>2]=0}if(!c){break a}H[a+24>>2]=0;H[a+16>>2]=0;H[a+20>>2]=0}}function $L(a){a=a|0;var b=0,c=O(0),d=0;c=L[H[a+32>>2]+52>>2];a=H[a+28>>2];b=H[a+84>>2];d=b>>>0<4?b:4;H[a+84>>2]=d;b=H[a+80>>2]+(b-d|0)|0;H[a+80>>2]=b;c=O(c/O(b>>>0));L[a+92>>2]=c;L[a+96>>2]=O(1)/c}function q2(a){a=a|0;var b=0,c=0;H[a+12>>2]=130192;H[a>>2]=129924;if(F[a+6|0]&1){b=H[a+80>>2];if(b){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}H[a+80>>2]=0}b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,a)}function n4(a){a=a|0;var b=0,c=0;H[a+12>>2]=132180;H[a>>2]=131968;if(F[a+6|0]&1){b=H[a+80>>2];if(b){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}H[a+80>>2]=0}b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,a)}function cI(a){a=a|0;var b=0,c=0;H[a>>2]=115984;b=a+4|0;if(H[a+12>>2]!=-1){c=H[H[a+4>>2]+40>>2];YN(c,b);kI(H[c+2168>>2],a)}XD(H[a+4>>2],b);XD(H[a+8>>2],b);b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,a)}function b5(a){a=a|0;var b=0,c=0;H[a+12>>2]=133420;H[a>>2]=133216;if(F[a+6|0]&1){b=H[a+80>>2];if(b){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}H[a+80>>2]=0}b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,a)}function Xq(a,b){a=a|0;b=b|0;b=I[b+5580|0]&64?b+5272|0:H[b+1008>>2]+1128|0;L[a>>2]=L[b>>2];L[a+4>>2]=L[b+4>>2];L[a+8>>2]=L[b+8>>2];L[a+12>>2]=L[b+12>>2];L[a+16>>2]=L[b+16>>2];L[a+20>>2]=L[b+20>>2]}function W3(a){a=a|0;var b=0,c=0;H[a+12>>2]=131576;H[a>>2]=131392;if(F[a+6|0]&1){b=H[a+80>>2];if(b){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}H[a+80>>2]=0}b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,a)}function L4(a){a=a|0;var b=0,c=0;H[a+12>>2]=132832;H[a>>2]=132596;if(F[a+6|0]&1){b=H[a+80>>2];if(b){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}H[a+80>>2]=0}b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,a)}function H3(a){a=a|0;var b=0,c=0;H[a+12>>2]=131028;H[a>>2]=130804;if(F[a+6|0]&1){b=H[a+80>>2];if(b){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}H[a+80>>2]=0}b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,a)}function xV(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;c=Oa-16|0;Oa=c;xU(c,d);Oa=c+16|0;return L[a+4>>2]>=O(L[c+12>>2]+O(O(L[b+24>>2]*L[c+8>>2])+O(O(L[b+16>>2]*L[c>>2])+O(L[b+20>>2]*L[c+4>>2]))))|0}function ZE(a,b){var c=0,d=0;c=Oa-16|0;Oa=c;H[c+8>>2]=b;d=H[a+36>>2];a:{if(d>>>0>=(H[a+40>>2]&2147483647)>>>0){_E(a+32|0,c+8|0);break a}H[H[a+32>>2]+(d<<2)>>2]=b;H[a+36>>2]=H[a+36>>2]+1}Oa=c+16|0}function GZ(a){a=a|0;var b=0,c=0;H[a+8>>2]=127808;H[a>>2]=127704;if(F[a+6|0]&1){b=H[a+60>>2];if(b){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}H[a+60>>2]=0}b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,a)}function wi(a){a=a|0;var b=0,c=O(0);if(I[a+316|0]&32){return O(O(W(L[H[a+56>>2]+120>>2])))}b=a- -64|0;a=H[b+176>>2];a:{if(!(!a|I[a+31|0]!=1)){c=L[a+60>>2];break a}c=L[b+116>>2]}return O(O(W(c)))}function ui(a){a=a|0;var b=0,c=O(0);if(I[a+316|0]&16){return O(O(W(L[H[a+56>>2]+116>>2])))}b=a- -64|0;a=H[b+176>>2];a:{if(!(!a|I[a+31|0]!=1)){c=L[a+56>>2];break a}c=L[b+112>>2]}return O(O(W(c)))}function df(a){a=a|0;var b=0,c=0;H[a>>2]=100732;if(I[a+4|0]){c=H[a+8>>2];a:{if(F[133996]&1){b=H[33498];break a}b=pa(1,99812)|0;F[133996]=1;H[33498]=b}qa(b|0,c|0,2664,0)}na(H[a+8>>2]);return a|0}function dW(a,b){var c=0;c=Oa-16|0;Oa=c;Ra[H[H[b>>2]>>2]](b,c+12|0,4)|0;if(a){a=I[c+15|0];F[c+15|0]=I[c+12|0];F[c+12|0]=a;a=I[c+13|0];F[c+13|0]=I[c+14|0];F[c+14|0]=a}Oa=c+16|0;return H[c+12>>2]}function Ms(a){a=a|0;var b=0,c=0;if(I[a+36|0]&2){b=J[H[a+40>>2]+124>>1]}else{c=H[a+116>>2];b=1;a:{if(c-7>>>0<4294967294){break a}b=J[a+168>>1];if((c|0)==5){break a}b=J[a+148>>1]}}return b&65535}function ii(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;ji(a,b,c,d);a=H[a+320>>2];b=Ra[H[H[a>>2]+100>>2]](a)|0;a=1;a:{if(L[c>>2]!=O(0)){break a}a=1;if(L[c+4>>2]!=O(0)){break a}a=L[c+8>>2]!=O(0)}ei(b,a,1)}function a0(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=O(0);b=H[b+4>>2];c=EU(b,c);H[d>>2]=c;b=H[b+152>>2]+N(c,12)|0;c=H[b+4>>2];d=H[b>>2];e=L[b+8>>2];H[a+12>>2]=0;L[a+8>>2]=e;H[a>>2]=d;H[a+4>>2]=c}function Ze(a){a=a|0;var b=0,c=0;H[a>>2]=99780;if(I[a+4|0]){c=H[a+8>>2];a:{if(F[133996]&1){b=H[33498];break a}b=pa(1,99812)|0;F[133996]=1;H[33498]=b}qa(b|0,c|0,2664,0)}na(H[a+8>>2]);return a|0}function YF(a,b){var c=0,d=0,e=0;c=Oa-16|0;Oa=c;L[a+152>>2]=b;a=H[a>>2];if(a){d=H[H[a+40>>2]+1012>>2];e=I[H[a+44>>2]+9|0];H[c+8>>2]=H[a+144>>2];Ra[H[H[d>>2]+44>>2]](d,(e|0)==2,c+8|0)}Oa=c+16|0}function XF(a,b){var c=0,d=0,e=0;c=Oa-16|0;Oa=c;L[a+148>>2]=b;a=H[a>>2];if(a){d=H[H[a+40>>2]+1012>>2];e=I[H[a+44>>2]+9|0];H[c+8>>2]=H[a+144>>2];Ra[H[H[d>>2]+44>>2]](d,(e|0)==2,c+8|0)}Oa=c+16|0}function VF(a,b){var c=0,d=0,e=0;c=Oa-16|0;Oa=c;L[a+144>>2]=b;a=H[a>>2];if(a){d=H[H[a+40>>2]+1012>>2];e=I[H[a+44>>2]+9|0];H[c+8>>2]=H[a+144>>2];Ra[H[H[d>>2]+44>>2]](d,(e|0)==2,c+8|0)}Oa=c+16|0}function p5(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;if(H[a+76>>2]){while(1){g=H[H[a+72>>2]+(f<<2)>>2];Ra[H[H[g>>2]+8>>2]](g,b,c,d,e);f=f+1|0;if(f>>>0>2]){continue}break}}}function W5(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=Oa-16|0;Oa=e;a=Na(H[a+60>>2],b|0,c|0,d&255,e+8|0)|0;if(a){H[33811]=a;a=-1}else{a=0}Oa=e+16|0;Qa=a?-1:H[e+12>>2];return(a?-1:H[e+8>>2])|0}function Lb(a,b,c,d){a=a|0;b=b|0;c=O(c);d=O(d);var e=0;e=Oa-32|0;Oa=e;H[e+20>>2]=0;G[e+16>>1]=7;H[e+8>>2]=0;H[e+12>>2]=0;Ra[H[H[a>>2]+8>>2]](e+24|0,a,b,c,d,e+8|0,0);Oa=e+32|0;return I[e+24|0]}function JA(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=O(d);e=e|0;c=H[a>>2];a=c+J[a+4>>1]|0;if(a>>>0>c>>>0){while(1){zA((c<<5)+b|0,O(-3.4028234663852886e38),d,e);c=c+1|0;if((a|0)!=(c|0)){continue}break}}}function ue(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=Oa-16|0;Oa=e;f=H[a+4>>2];b=(f>>1)+b|0;a=H[a>>2];a=f&1?H[H[b>>2]+a>>2]:a;F[e+8|0]=I[d|0];a=Ra[a|0](b,c,e+8|0)|0;Oa=e+16|0;return a|0}function p3(a){a=a|0;var b=O(0),c=0,d=O(0),e=O(0);c=Oa-32|0;Oa=c;Ra[H[H[a>>2]+40>>2]](c,a);Oa=c+32|0;b=L[c+24>>2];d=O(b*b);b=L[c+16>>2];e=O(b*b);b=L[c+20>>2];return O(O(W(O(d+O(e+O(b*b))))))}function VD(a){a=a|0;var b=0;H[a+28>>2]=0;H[a>>2]=115200;b=H[a+20>>2];if(!(!b|(b|0)==(a+4|0))){$N(H[a+40>>2],b,H[a+24>>2])}H[a+20>>2]=0;H[a+24>>2]=0;b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,a)}function rd(){var a=0;a=o6(48);H[a+16>>2]=0;H[a+20>>2]=0;G[a+12>>1]=0;H[a+8>>2]=-1;H[a>>2]=0;H[a+4>>2]=0;H[a+40>>2]=2139095039;H[a+24>>2]=0;H[a+28>>2]=0;H[a+32>>2]=0;H[a+36>>2]=0;return a|0}function oU(a){a=a|0;var b=0,c=0;H[a>>2]=125472;a:{if(F[a+180|0]&1){break a}b=H[a+184>>2];if(!b){break a}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b-H[b-4>>2]|0);H[a+184>>2]=0}pU(a);return a|0}function QA(a,b){var c=0,d=0,e=0;d=Oa-16|0;Oa=d;c=H[b+4>>2];if(c){OA(a,1);H[d+8>>2]=0;H[d+12>>2]=0;H[a+4>>2]=c;c=a+12|0;e=d+8|0;if(jX(b,c,e,a)){iX(H[c>>2],b,e,c,H[a>>2])}PA(a,b,e)}Oa=d+16|0}function IA(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=O(d);e=e|0;c=H[a>>2];a=c+J[a+4>>1]|0;if(a>>>0>c>>>0){while(1){rA((c<<5)+b|0,O(-3.4028234663852886e38),d);c=c+1|0;if((a|0)!=(c|0)){continue}break}}}function tr(a,b){a=a|0;b=b|0;if(!I[a+6352|0]){o5(H[33808],8,9281,3019,62342,0);return 0}if(I5(H[a+6068>>2],0-b|0)){ND(a+5584|0);F[H[a+6068>>2]+76|0]=0;F[a+6352|0]=0;a=1}else{a=0}return a|0}function lR(a,b){L[a+16>>2]=L[b>>2];L[a+20>>2]=L[b+4>>2];L[a+24>>2]=L[b+8>>2];L[a+28>>2]=L[b+12>>2];L[a+32>>2]=L[b+16>>2];L[a+36>>2]=L[b+20>>2];L[a+40>>2]=L[b+24>>2];a=H[a>>2];if(a){YI(a)}}function cf(a){a=a|0;var b=0,c=0;H[a>>2]=100732;if(I[a+4|0]){c=H[a+8>>2];a:{if(F[133996]&1){b=H[33498];break a}b=pa(1,99812)|0;F[133996]=1;H[33498]=b}qa(b|0,c|0,2664,0)}na(H[a+8>>2]);N6(a)}function TP(a){a=a|0;var b=0,c=0;b=H[a+28>>2];c=H[b+1004>>2];Ra[H[H[c>>2]+12>>2]](c,H[a+20>>2]);a=H[b+1012>>2];Ra[H[H[a>>2]+72>>2]](a,H[H[b+976>>2]+1816>>2],H[b+1140>>2],H[b+980>>2]+160|0)}function Q6(a){var b=0;b=H[a+72>>2];H[a+72>>2]=b-1|b;b=H[a>>2];if(b&8){H[a>>2]=b|32;return-1}H[a+4>>2]=0;H[a+8>>2]=0;b=H[a+44>>2];H[a+28>>2]=b;H[a+20>>2]=b;H[a+16>>2]=b+H[a+48>>2];return 0}function vU(a){a=a|0;var b=0,c=0;H[a>>2]=125556;h_(a+112|0);b=H[a+96>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}H[a+96>>2]=0;pU(a);b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,a)}function eW(a,b){var c=0;c=Oa-16|0;Oa=c;Ra[H[H[b>>2]>>2]](b,c+8|0,4)|0;if(a){a=I[c+11|0];F[c+11|0]=I[c+8|0];F[c+8|0]=a;a=I[c+9|0];F[c+9|0]=I[c+10|0];F[c+10|0]=a}Oa=c+16|0;return L[c+8>>2]}function _e(a){a=a|0;var b=0,c=0;H[a>>2]=99780;if(I[a+4|0]){c=H[a+8>>2];a:{if(F[133996]&1){b=H[33498];break a}b=pa(1,99812)|0;F[133996]=1;H[33498]=b}qa(b|0,c|0,2664,0)}na(H[a+8>>2]);N6(a)}function So(a,b){a=a|0;b=b|0;var c=0,d=O(0),e=O(0);c=H[b+5580>>2]&1;d=L[(c?b+5548|0:b+1084|0)>>2];e=L[(c?b+5552|0:b+1088|0)>>2];L[a+8>>2]=L[(c?b+5556|0:b+1092|0)>>2];L[a+4>>2]=e;L[a>>2]=d}function Nq(a,b){a=a|0;b=b|0;var c=0;a=a+5584|0;H[a+116>>2]=b;c=H[a>>2];if(!(!c|H[a+28>>2]!=1)){Ra[H[H[c>>2]+68>>2]](c,b)}c=H[a+36>>2];if(!(!c|H[a- -64>>2]!=1)){Ra[H[H[c>>2]+68>>2]](c,b)}}function IZ(a){a=a|0;var b=0;if(mU(H[a+96>>2],a)){b=H[a+96>>2];a:{if(F[a+6|0]&1){Ra[H[H[a>>2]+16>>2]](a);break a}Ra[H[H[a>>2]+12>>2]](a)|0}nU(b,a,1);return}o5(H[33808],8,9818,101,64535,0)}function v4(a){a=a|0;var b=O(0),c=0,d=O(0),e=O(0);c=Oa-16|0;Oa=c;Ra[H[H[a>>2]+48>>2]](c,a);Oa=c+16|0;b=L[c+8>>2];d=O(b*b);b=L[c>>2];e=O(b*b);b=L[c+4>>2];return O(O(W(O(d+O(e+O(b*b))))))}function _5(a,b){var c=0,d=0;c=I[a|0];d=I[b|0];a:{if(!c|(c|0)!=(d|0)){break a}while(1){d=I[b+1|0];c=I[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 As(a,b){a=a|0;b=b|0;var c=0,d=0;c=a+116|0;d=H[c>>2];if((d|0)==2){a=H[a+36>>2]&1?H[a+40>>2]- -64|0:c;c=H[a+4>>2];H[b>>2]=H[a>>2];H[b+4>>2]=c;H[b+8>>2]=H[a+8>>2]}return(d|0)==2|0}function DA(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=O(d);e=O(e);f=f|0;var g=0;g=H[a>>2];a=g+J[a+4>>1]|0;if(a>>>0>g>>>0){while(1){vA((g<<5)+b|0,e,f,c);g=g+1|0;if((a|0)!=(g|0)){continue}break}}}function VB(a,b,c){var d=0,e=0,f=0;a:{d=H[a+36>>2];e=H[d>>2];if(!e){break a}a=0;while(1){f=(a<<2)+d|0;if(H[f+4>>2]!=(b|0)){a=a+1|0;if((e|0)!=(a|0)){continue}break a}break}H[f+4>>2]=c}}function EY(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;FY(a+8|0,H[b+8>>2],L[c>>2],L[c+4>>2],L[c+8>>2],L[d>>2],L[d+4>>2],L[d+8>>2],L[e>>2],L[e+4>>2],L[e+8>>2],g);return 1}function I$(a){a=a|0;var b=0,c=0,d=0;H[a>>2]=128996;b=a-8|0;H[b>>2]=128900;h_(a+116|0);c=H[a+100>>2];if(c){d=H[33808];Ra[H[H[d+12>>2]+12>>2]](d+12|0,c)}H[a+100>>2]=0;t$(b);return b|0}function ke(a,b,c,d,e){a=a|0;b=O(b);c=O(c);d=O(d);e=O(e);var f=0;f=Oa-16|0;Oa=f;L[f+12>>2]=b;L[f+8>>2]=c;L[f+4>>2]=d;L[f>>2]=e;a=Ra[a|0](f+12|0,f+8|0,f+4|0,f)|0;Oa=f+16|0;return a|0}function bl(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;a:{if(I[a+14|0]&16){a=H[a+16>>2]+(b<<3)|0;L[c>>2]=L[a+156>>2];a=a+160|0;break a}a=(b<<3)+a|0;L[c>>2]=L[a+80>>2];a=a+84|0}L[d>>2]=L[a>>2]}function Vh(a){a=a|0;var b=0,c=O(0);if(I[a+316|0]&8){return O(L[H[a+56>>2]+112>>2])}b=a- -64|0;a=H[b+176>>2];a:{if(!(!a|I[a+31|0]!=1)){c=L[a+52>>2];break a}c=L[b+124>>2]}return O(c)}function Th(a){a=a|0;var b=0,c=O(0);if(I[a+316|0]&4){return O(L[H[a+56>>2]+108>>2])}b=a- -64|0;a=H[b+176>>2];a:{if(!(!a|I[a+31|0]!=1)){c=L[a+48>>2];break a}c=L[b+120>>2]}return O(c)}function re(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Oa-16|0;Oa=d;e=H[b+4>>2];b=H[b>>2];if(e-b>>2>>>0>c>>>0){H[d+8>>2]=H[b+(c<<2)>>2];b=la(98252,d+8|0)|0}else{b=1}H[a>>2]=b;Oa=d+16|0}function nv(a){a=a|0;var b=0,c=0;H[a>>2]=112452;b=H[a+88>>2];a:{if((b|0)<0|!(b&2147483647)){break a}b=H[a+80>>2];if(!b){break a}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}return a|0}function np(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=Oa-16|0;Oa=d;a:{if((Ra[H[H[b>>2]+24>>2]](b)|0)!=(a|0)){a=H[33808];H[d>>2]=11630;o5(a,8,9281,79,64859,d);break a}op(a,b,c,1)}Oa=d+16|0}function hK(a,b){var c=0,d=0,e=0;c=H[a+4>>2];if((c|0)<0){d=H[a>>2];c=d+(c<<3)|0;while(1){e=H[b+4>>2];H[c>>2]=H[b>>2];H[c+4>>2]=e;c=c+8|0;if(d>>>0>c>>>0){continue}break}}H[a+4>>2]=0}function Yi(a){a=a|0;var b=0,c=O(0);if(F[a+316|0]&1){return O(L[H[a+56>>2]+92>>2])}b=a- -64|0;a=H[b+176>>2];a:{if(!(!a|I[a+31|0]!=1)){c=L[a+44>>2];break a}c=L[b+140>>2]}return O(c)}function wt(a){var b=0;a:{b:{c:{b=H[a+4>>2];switch((b>>>30|0)-2|0){case 1:break a;case 0:break c;default:break b}}if(I[H[a>>2]+4785|0]){break a}}Vl(a);return}H[a+4>>2]=b|536870912}function dV(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=O(0);b=H[b+48>>2];c=EU(b,c);b=H[b+152>>2]+N(c,12)|0;c=H[b+4>>2];d=H[b>>2];e=L[b+8>>2];H[a+12>>2]=0;L[a+8>>2]=e;H[a>>2]=d;H[a+4>>2]=c}function $$(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=O(0);b=H[b+4>>2];c=EU(b,c);b=H[b+152>>2]+N(c,12)|0;c=H[b+4>>2];d=H[b>>2];e=L[b+8>>2];H[a+12>>2]=0;L[a+8>>2]=e;H[a>>2]=d;H[a+4>>2]=c}function oR(a){a=a|0;var b=0,c=0;H[a>>2]=124144;c=H[H[a+4>>2]+40>>2];b=a+4|0;YN(c,b);kI(H[c+2168>>2],a);XD(H[a+4>>2],b);XD(H[a+8>>2],b);b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,a)}function P1(a,b,c){a=a|0;b=b|0;c=c|0;a=H[a+80>>2];L[b>>2]=L[a+428>>2];L[b+4>>2]=L[a+432>>2];L[b+8>>2]=L[a+436>>2];L[c>>2]=L[a+440>>2];L[c+4>>2]=L[a+444>>2];L[c+8>>2]=L[a+448>>2]}function J5(a){a=a|0;var b=0;H[a+16>>2]=1;H[a+24>>2]=135960;b=H[a+12>>2];H[a+12>>2]=b?b:1;b=H[a+4>>2];a=H[a>>2];if(a){Ra[a|0](b)|0;return 0}if(b){Ra[H[H[b>>2]+8>>2]](b)}return 0}function je(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=O(0),g=O(0),h=O(0);e=o6(16);f=L[a>>2];g=L[b>>2];h=L[c>>2];L[e+12>>2]=L[d>>2];L[e+8>>2]=h;L[e+4>>2]=g;L[e>>2]=f;return e|0}function WG(a,b){var c=0;c=I[a+21|0];if(c&8){if(b){b=H[H[H[a>>2]+40>>2]+2168>>2];c=Oa-16|0;Oa=c;H[c+12>>2]=a;Pf(b+68|0,c+12|0);Oa=c+16|0;c=I[a+21|0]}F[a+21|0]=c&247}F[a+22|0]=0}function P6(a){var b=0,c=0;b=H[33457];c=a+3&-4;a=b+c|0;a:{if(a>>>0<=b>>>0?c:0){break a}if(a>>>0>Sa()<<16>>>0){if(!(Ja(a|0)|0)){break a}}H[33457]=a;return b}H[33811]=48;return-1}function CA(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=O(d);e=O(e);f=f|0;c=H[a>>2];a=c+J[a+4>>1]|0;if(a>>>0>c>>>0){while(1){zA((c<<5)+b|0,d,e,f);c=c+1|0;if((a|0)!=(c|0)){continue}break}}}function C6(a,b){var c=0;a:{if(!b){break a}b=v6(b,96836);if(!b|H[b+8>>2]&(H[a+8>>2]^-1)){break a}if(!t6(H[a+12>>2],H[b+12>>2],0)){break a}c=t6(H[a+16>>2],H[b+16>>2],0)}return c}function AC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Oa-16|0;Oa=d;e=H[a+20>>2];a=SC(H[e+12>>2],H[e+8>>2],H[c>>2],H[a+4>>2],H[a+8>>2],b,H[a+12>>2],H[a+16>>2]);Oa=d+16|0;return a|0}function W_(a){a=a|0;var b=0;H[a>>2]=128276;b=a-4|0;H[b>>2]=128252;if(I[a+172|0]){a=H[b+8>>2];Ra[H[H[a>>2]>>2]](a,b- -64|0,b+128|0,b+140|0,b+152|0,b+60|0,b+164|0)|0}return b|0}function Si(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;a=a+20|0;f=J[a+4>>1];e=f-d|0;e=(e|0)>0?e:0;c=c>>>0>e>>>0?e:c;if(c){R6(b,(d<<2)+((f|0)==1?a:H[a>>2])|0,c<<2)}return c|0}function Q_(a){a=a|0;var b=0;H[a>>2]=128196;b=a-4|0;H[b>>2]=128172;if(I[a+172|0]){a=H[b+8>>2];Ra[H[H[a>>2]>>2]](a,b- -64|0,b+128|0,b+140|0,b+152|0,b+60|0,b+164|0)|0}return b|0}function K_(a){a=a|0;var b=0;H[a>>2]=128116;b=a-4|0;H[b>>2]=128092;if(I[a+172|0]){a=H[b+8>>2];Ra[H[H[a>>2]>>2]](a,b- -64|0,b+128|0,b+140|0,b+152|0,b+60|0,b+164|0)|0}return b|0}function H_(a){a=a|0;var b=0;H[a>>2]=128020;b=a-4|0;H[b>>2]=127996;if(I[a+172|0]){a=H[b+8>>2];Ra[H[H[a>>2]>>2]](a,b- -64|0,b+128|0,b+140|0,b+152|0,b+60|0,b+164|0)|0}return b|0}function AG(a,b){H[a+12>>2]=0;H[a+16>>2]=0;H[a>>2]=b;H[a+20>>2]=0;H[a+24>>2]=0;H[a+28>>2]=0;H[a+32>>2]=0;H[a+36>>2]=0;H[a+40>>2]=0;F[a+44|0]=0;H[a+8>>2]=a;H[a+4>>2]=a;return a}function pz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;c=1;if(b>>>0>1){while(1){d=((c<<5)+a|0)-32|0;iz(d);mz(d);c=c+1|0;if((c|0)!=(b|0)){continue}break}}a=((b<<5)+a|0)-32|0;iz(a);mz(a)}function D1(a,b){a=a|0;b=b|0;b=H[b+80>>2];L[a>>2]=L[b+104>>2];L[a+4>>2]=L[b+108>>2];L[a+8>>2]=L[b+112>>2];L[a+12>>2]=L[b+116>>2];L[a+16>>2]=L[b+120>>2];L[a+20>>2]=L[b+124>>2]}function BA(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=O(d);e=O(e);f=f|0;f=H[a>>2];a=f+J[a+4>>1]|0;if(a>>>0>f>>>0){while(1){wA((f<<5)+b|0,c,e);f=f+1|0;if((a|0)!=(f|0)){continue}break}}}function AA(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=O(d);e=O(e);f=f|0;c=H[a>>2];a=c+J[a+4>>1]|0;if(a>>>0>c>>>0){while(1){rA((c<<5)+b|0,d,e);c=c+1|0;if((a|0)!=(c|0)){continue}break}}}function pe(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=Oa-16|0;Oa=e;f=H[a+4>>2];b=(f>>1)+b|0;a=H[a>>2];a=f&1?H[H[b>>2]+a>>2]:a;H[e+12>>2]=d;Ra[a|0](b,c,e+12|0);Oa=e+16|0}function f4(a,b,c){a=a|0;b=b|0;c=c|0;a:{if(c){c=H[a+80>>2];G[c+116>>1]=J[c+116>>1]|b;break a}c=H[a+80>>2];G[c+116>>1]=J[c+116>>1]&(b^-1)}a=H[a+76>>2];Ra[H[H[a>>2]+36>>2]](a)}function cT(a,b){var c=0;c=Oa-16|0;Oa=c;H[c+8>>2]=b;b=Ym(a+144|0,c+8|0,c+15|0);if(I[c+15|0]){a=H[b+4>>2]+1|0}else{a=H[c+8>>2];H[b+4>>2]=0;H[b>>2]=a;a=1}H[b+4>>2]=a;Oa=c+16|0}function Y4(a,b,c){a=a|0;b=b|0;c=c|0;a:{if(c){c=H[a+80>>2];G[c+112>>1]=J[c+112>>1]|b;break a}c=H[a+80>>2];G[c+112>>1]=J[c+112>>1]&(b^-1)}a=H[a+76>>2];Ra[H[H[a>>2]+36>>2]](a)}function WB(a,b){var c=0,d=0,e=0,f=O(0);c=Oa-16|0;Oa=c;a=H[a+588>>2];if(a){d=H[b+4>>2];e=H[b>>2];f=L[b+8>>2];H[c+12>>2]=0;L[c+8>>2]=f;H[c>>2]=e;H[c+4>>2]=d;XB(a,c)}Oa=c+16|0}function F4(a,b,c){a=a|0;b=b|0;c=c|0;a:{if(c){c=H[a+80>>2];G[c+128>>1]=J[c+128>>1]|b;break a}c=H[a+80>>2];G[c+128>>1]=J[c+128>>1]&(b^-1)}a=H[a+76>>2];Ra[H[H[a>>2]+36>>2]](a)}function C3(a,b,c){a=a|0;b=b|0;c=c|0;a:{if(c){c=H[a+80>>2];G[c+100>>1]=J[c+100>>1]|b;break a}c=H[a+80>>2];G[c+100>>1]=J[c+100>>1]&(b^-1)}a=H[a+76>>2];Ra[H[H[a>>2]+36>>2]](a)}function BT(a,b){a=a|0;b=b|0;var c=0;c=H[a+8>>2];if(c>>>0>b>>>0){return(H[a+4>>2]+N(b,72)|0)+8|0}b=b-c|0;if(b>>>0>2]){a=(H[a+16>>2]+(b<<6)|0)+8|0}else{a=0}return a|0}function cj(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Oa-16|0;Oa=d;e=I[(H[a+316>>2]&16384?H[a+56>>2]+268|0:a+108|0)|0];F[d+8|0]=e;F[d|0]=c?b|e:(b^-1)&e;dj(a,d+8|0,d);Oa=d+16|0}function Mf(a){a=a|0;var b=0,c=0;H[a>>2]=102864;Rl(H[33768],a);a:{if(!(F[a+6|0]&1)){break a}b=H[a+40>>2];if(!b){break a}c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}return a|0}function Ce(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;f=Oa-16|0;Oa=f;H[f+12>>2]=c;F[f+8|0]=I[e|0];a=Ra[H[H[a>>2]+96>>2]](a,b,f+12|0,1,d,f+8|0)|0;Oa=f+16|0;return a|0}function C$(a){a=a|0;var b=0,c=0;H[a+8>>2]=128996;H[a>>2]=128900;h_(a+124|0);b=H[a+108>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}H[a+108>>2]=0;t$(a);return a|0}function $P(a){a=a|0;var b=0;a=H[a+28>>2];if(H[a+2472>>2]){while(1){lF(H[a+1e3>>2],H[H[(H[a+2468>>2]+(b<<3)|0)+4>>2]+60>>2]);b=b+1|0;if(b>>>0>2]){continue}break}}}function s4(a){a=a|0;var b=0,c=0;H[a>>2]=132180;b=a-12|0;H[b>>2]=131968;if(F[a-6|0]&1){a=H[b+80>>2];if(a){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,a)}H[b+80>>2]=0}return b|0}function e5(a){a=a|0;var b=0,c=0;H[a>>2]=133420;b=a-12|0;H[b>>2]=133216;if(F[a-6|0]&1){a=H[b+80>>2];if(a){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,a)}H[b+80>>2]=0}return b|0}function _2(a){a=a|0;var b=0,c=0;H[a>>2]=130192;b=a-12|0;H[b>>2]=129924;if(F[a-6|0]&1){a=H[b+80>>2];if(a){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,a)}H[b+80>>2]=0}return b|0}function Z3(a){a=a|0;var b=0,c=0;H[a>>2]=131576;b=a-12|0;H[b>>2]=131392;if(F[a-6|0]&1){a=H[b+80>>2];if(a){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,a)}H[b+80>>2]=0}return b|0}function O4(a){a=a|0;var b=0,c=0;H[a>>2]=132832;b=a-12|0;H[b>>2]=132596;if(F[a-6|0]&1){a=H[b+80>>2];if(a){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,a)}H[b+80>>2]=0}return b|0}function K3(a){a=a|0;var b=0,c=0;H[a>>2]=131028;b=a-12|0;H[b>>2]=130804;if(F[a-6|0]&1){a=H[b+80>>2];if(a){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,a)}H[b+80>>2]=0}return b|0}function Be(a,b){a=a|0;b=b|0;var c=0;c=H[a>>2];a=H[a+4>>2];b=(a>>1)+b|0;if(a&1){c=H[c+H[b>>2]>>2]}a=Ra[c|0](b)|0;b=o6(8);c=H[a+4>>2];H[b>>2]=H[a>>2];H[b+4>>2]=c;return b|0}function wp(a,b){a=a|0;b=b|0;var c=0;if(!I[a+4801|0]){c=b;a=a+32|0;b=H[a+2312>>2];H[c>>2]=b;return(b?H[a+2308>>2]:0)|0}o5(H[33808],2,16043,721,58778,0);H[b>>2]=0;return 0}function vp(a,b){a=a|0;b=b|0;var c=0;if(!I[a+4801|0]){c=b;a=a+32|0;b=H[a+2300>>2];H[c>>2]=b;return(b?H[a+2296>>2]:0)|0}o5(H[33808],2,16043,704,58868,0);H[b>>2]=0;return 0}function oG(a){a:{if(I[a+149|0]&16|((I[H[a+44>>2]+44|0]&3)==3|K[a+152>>2]>4294967293)){break a}a=H[a+32>>2];if(!a){break a}while(1){YQ(a);a=H[a>>2];if(a){continue}break}}}function X_(a){a=a|0;var b=0;H[a>>2]=128276;b=a-4|0;H[b>>2]=128252;if(I[a+172|0]){a=H[b+8>>2];Ra[H[H[a>>2]>>2]](a,b- -64|0,b+128|0,b+140|0,b+152|0,b+60|0,b+164|0)|0}N6(b)}function R_(a){a=a|0;var b=0;H[a>>2]=128196;b=a-4|0;H[b>>2]=128172;if(I[a+172|0]){a=H[b+8>>2];Ra[H[H[a>>2]>>2]](a,b- -64|0,b+128|0,b+140|0,b+152|0,b+60|0,b+164|0)|0}N6(b)}function L_(a){a=a|0;var b=0;H[a>>2]=128116;b=a-4|0;H[b>>2]=128092;if(I[a+172|0]){a=H[b+8>>2];Ra[H[H[a>>2]>>2]](a,b- -64|0,b+128|0,b+140|0,b+152|0,b+60|0,b+164|0)|0}N6(b)}function I_(a){a=a|0;var b=0;H[a>>2]=128020;b=a-4|0;H[b>>2]=127996;if(I[a+172|0]){a=H[b+8>>2];Ra[H[H[a>>2]>>2]](a,b- -64|0,b+128|0,b+140|0,b+152|0,b+60|0,b+164|0)|0}N6(b)}function FZ(a){a=a|0;var b=0,c=0;H[a>>2]=127808;b=a-8|0;H[b>>2]=127704;if(F[a-2|0]&1){a=H[b+60>>2];if(a){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,a)}H[b+60>>2]=0}return b|0}function ET(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=O(0),g=O(0);f=L[a+44>>2];g=L[a+48>>2];g=f>g?f:g;f=L[a+40>>2];GT(c,g,O(f+f),L[b+276>>2],L[b+288>>2],b+260|0,d,e)}function t_(a){a=a|0;var b=0;H[a+4>>2]=128276;H[a>>2]=128252;if(I[a+176|0]){b=H[a+8>>2];Ra[H[H[b>>2]>>2]](b,a- -64|0,a+128|0,a+140|0,a+152|0,a+60|0,a+164|0)|0}return a|0}function r_(a){a=a|0;var b=0;H[a+4>>2]=128196;H[a>>2]=128172;if(I[a+176|0]){b=H[a+8>>2];Ra[H[H[b>>2]>>2]](b,a- -64|0,a+128|0,a+140|0,a+152|0,a+60|0,a+164|0)|0}return a|0}function q_(a){a=a|0;var b=0;H[a+4>>2]=128116;H[a>>2]=128092;if(I[a+176|0]){b=H[a+8>>2];Ra[H[H[b>>2]>>2]](b,a- -64|0,a+128|0,a+140|0,a+152|0,a+60|0,a+164|0)|0}return a|0}function p_(a){a=a|0;var b=0;H[a+4>>2]=128020;H[a>>2]=127996;if(I[a+176|0]){b=H[a+8>>2];Ra[H[H[b>>2]>>2]](b,a- -64|0,a+128|0,a+140|0,a+152|0,a+60|0,a+164|0)|0}return a|0}function Ub(a,b){a=a|0;b=b|0;var c=0,d=0;c=Oa-16|0;Oa=c;d=M6(4);H[d>>2]=b;a=Ra[H[H[a>>2]+28>>2]](a)|0;Ra[H[H[a>>2]+96>>2]](a,c+12|0,1,0)|0;H[H[c+12>>2]+8>>2]=d;Oa=c+16|0}function QO(a,b){a=H[a+976>>2];L[a+1128>>2]=L[b>>2];L[a+1132>>2]=L[b+4>>2];L[a+1136>>2]=L[b+8>>2];L[a+1140>>2]=L[b+12>>2];L[a+1144>>2]=L[b+16>>2];L[a+1148>>2]=L[b+20>>2]}function l2(a,b,c,d,e){var f=O(0);f=L[b+252>>2]>O(0)?O(0):L[b+248>>2]>O(0)?O(0):L[b+256>>2];d=N5(O(R(O(S(d,O(-1))),O(1))));Ra[H[H[a>>2]+24>>2]](a,c,e,O(e-f)>2])){while(1){Ra[H[H[b>>2]+8>>2]](b,H[H[a+44>>2]+(c<<2)>>2]);c=c+1|0;if(c>>>0>2]){continue}break}}}function Jb(a){a=a|0;var b=0,c=0;b=Oa-16|0;Oa=b;c=Ra[H[H[a>>2]+28>>2]](a)|0;Ra[H[H[c>>2]+96>>2]](c,b+12|0,1,0)|0;N6(H[H[b+12>>2]+8>>2]);Ra[H[H[a>>2]+4>>2]](a);Oa=b+16|0}function uF(a,b){var c=0,d=0;c=H[a+28>>2];if(c){d=H[a+24>>2];a=0;while(1){if(H[(a<<2)+d>>2]==(b|0)){return a}a=a+1|0;if((c|0)!=(a|0)){continue}break}}return-2147483648}function Xp(a,b){a=a|0;b=b|0;a:{if(!I[(a+16|0)+4785|0]){a=H[H[a+1012>>2]+272>>2];a=Ra[H[H[a>>2]+24>>2]](a,b)|0;break a}o5(H[33808],2,9424,1193,59146,0);a=0}return a|0}function Fp(a){a=a|0;var b=0,c=0;H[a+6076>>2]=H[a+6076>>2]+1;a:{if(!I[a+4801|0]){a=RO(a+32|0);break a}b=a+5576|0;c=H[b>>2];H[b>>2]=c+1;a=c+H[a+2320>>2]|0}return a&255}function $n(a,b){var c=0;a=H[((H[a+4>>2]>>>22&60)+76348|0)+12>>2]+a|0;a=H[((I[a+9|0]<<2)+135180|0)+40>>2]+a|0;c=J[a+24>>1];H[b>>2]=(c|0)==1?a+20|0:H[a+20>>2];return c}function vC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Oa-16|0;Oa=d;e=H[a+20>>2];a=UC(H[e+12>>2],H[e+8>>2],H[c>>2],H[a+4>>2],H[a+8>>2],b,H[a+16>>2]);Oa=d+16|0;return a|0}function u4(a){a=a|0;var b=0,c=0;H[a+12>>2]=132180;H[a>>2]=131968;if(F[a+6|0]&1){b=H[a+80>>2];if(b){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}H[a+80>>2]=0}return a|0}function p2(a){a=a|0;var b=0,c=0;H[a+12>>2]=130192;H[a>>2]=129924;if(F[a+6|0]&1){b=H[a+80>>2];if(b){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}H[a+80>>2]=0}return a|0}function k2(a,b,c,d,e,f){var g=0,h=0,i=0,j=O(0),k=O(0),l=0;h=a,i=c,j=O(-f),k=f,l=O(P(O(O5(d,O(e+O(1)))*O(4))))>O(f-b),g=H[H[a>>2]+16>>2],Ra[g](h|0,i|0,O(j),O(k),l|0)}function g5(a){a=a|0;var b=0,c=0;H[a+12>>2]=133420;H[a>>2]=133216;if(F[a+6|0]&1){b=H[a+80>>2];if(b){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}H[a+80>>2]=0}return a|0}function bI(a){a=a|0;var b=0,c=0;H[a>>2]=115984;b=a+4|0;if(H[a+12>>2]!=-1){c=H[H[a+4>>2]+40>>2];YN(c,b);kI(H[c+2168>>2],a)}XD(H[a+4>>2],b);XD(H[a+8>>2],b);return a|0}function V3(a){a=a|0;var b=0,c=0;H[a+12>>2]=131576;H[a>>2]=131392;if(F[a+6|0]&1){b=H[a+80>>2];if(b){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}H[a+80>>2]=0}return a|0}function Q4(a){a=a|0;var b=0,c=0;H[a+12>>2]=132832;H[a>>2]=132596;if(F[a+6|0]&1){b=H[a+80>>2];if(b){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}H[a+80>>2]=0}return a|0}function Od(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Oa-16|0;Oa=d;e=H[a+4>>2];b=(e>>1)+b|0;a=H[a>>2];a=e&1?H[H[b>>2]+a>>2]:a;F[d+8|0]=I[c|0];Ra[a|0](b,d+8|0);Oa=d+16|0}function M3(a){a=a|0;var b=0,c=0;H[a+12>>2]=131028;H[a>>2]=130804;if(F[a+6|0]&1){b=H[a+80>>2];if(b){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}H[a+80>>2]=0}return a|0}function JT(a,b){var c=0,d=0;c=J[a+4>>1];if(c){d=(c|0)==1?a:H[a>>2];a=0;while(1){if(H[(a<<2)+d>>2]==(b|0)){return a}a=a+1|0;if((c|0)!=(a|0)){continue}break}}return-1}function e3(a){a=a|0;var b=0,c=0;H[a>>2]=130332;b=H[a+4>>2];if(H[b+16>>2]==1){H[b+16>>2]=2}b=H[a+4>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}return a|0}function aZ(a){a=a|0;var b=0,c=0,d=0;b=I[a+54|0];d=(H[a+56>>2]+N(I[a+55|0],20)|0)+N(b,12)|0;a=G[a+52>>1];c=a&32767;return((d+(c<<1)|0)+N(b,3)|0)+((a|0)>=0?0:c<<2)|0}function _$(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=O(0);b=H[H[b+4>>2]+152>>2]+N(c,12)|0;c=H[b+4>>2];d=H[b>>2];e=L[b+8>>2];H[a+12>>2]=0;L[a+8>>2]=e;H[a>>2]=d;H[a+4>>2]=c}function T_(a){a=a|0;var b=0;H[a+4>>2]=128276;H[a>>2]=128252;if(I[a+176|0]){b=H[a+8>>2];Ra[H[H[b>>2]>>2]](b,a- -64|0,a+128|0,a+140|0,a+152|0,a+60|0,a+164|0)|0}N6(a)}function SH(a){a=a|0;var b=0,c=0,d=0;b=H[a+32>>2];if(b){while(1){d=H[H[a+28>>2]+(c<<2)>>2];if(I[d+60|0]){fH(d);b=H[a+32>>2]}c=c+1|0;if(b>>>0>c>>>0){continue}break}}}function OT(a){F[a+32|0]=1;H[a+4>>2]=-2147483648;H[a+8>>2]=0;H[a+12>>2]=0;H[a>>2]=125392;H[a+16>>2]=0;H[a+20>>2]=0;H[a+24>>2]=0;H[a+28>>2]=0;H[a>>2]=125416;return a}function N_(a){a=a|0;var b=0;H[a+4>>2]=128196;H[a>>2]=128172;if(I[a+176|0]){b=H[a+8>>2];Ra[H[H[b>>2]>>2]](b,a- -64|0,a+128|0,a+140|0,a+152|0,a+60|0,a+164|0)|0}N6(a)}function J_(a){a=a|0;var b=0;H[a+4>>2]=128116;H[a>>2]=128092;if(I[a+176|0]){b=H[a+8>>2];Ra[H[H[b>>2]>>2]](b,a- -64|0,a+128|0,a+140|0,a+152|0,a+60|0,a+164|0)|0}N6(a)}function E_(a){a=a|0;var b=0;H[a+4>>2]=128020;H[a>>2]=127996;if(I[a+176|0]){b=H[a+8>>2];Ra[H[H[b>>2]>>2]](b,a- -64|0,a+128|0,a+140|0,a+152|0,a+60|0,a+164|0)|0}N6(a)}function EZ(a){a=a|0;var b=0,c=0;H[a+8>>2]=127808;H[a>>2]=127704;if(F[a+6|0]&1){b=H[a+60>>2];if(b){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}H[a+60>>2]=0}return a|0}function ne(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Oa-16|0;Oa=d;e=H[a+4>>2];b=(e>>1)+b|0;a=H[a>>2];a=e&1?H[H[b>>2]+a>>2]:a;H[d+12>>2]=c;Ra[a|0](b,d+12|0);Oa=d+16|0}function Vm(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;a=H[33768];e=H[a+164>>2]-d|0;e=(e|0)>0?e:0;c=c>>>0>e>>>0?e:c;if(c){R6(b,H[a+132>>2]+(d<<2)|0,c<<2)}return c|0} -function ym(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=H[33768];a=H[e+676>>2]-d|0;a=(a|0)>0?a:0;a=a>>>0>>0?a:c;if(a){R6(b,H[e+644>>2]+(d<<2)|0,a<<2)}return a|0}function yf(a,b,c){a=a|0;b=b|0;c=c|0;L[b>>2]=L[a+92>>2];L[b+4>>2]=L[a+96>>2];L[b+8>>2]=L[a+100>>2];L[c>>2]=L[a+104>>2];L[c+4>>2]=L[a+108>>2];L[c+8>>2]=L[a+112>>2]}function Kc(a){a=a|0;var b=0,c=0;b=o6(16);a=H[a>>2];H[b+4>>2]=H[H[H[a>>2]+8>>2]>>2];H[b+8>>2]=H[H[H[a+4>>2]+8>>2]>>2];c=I[a+24|0];H[b>>2]=a;F[b+12|0]=c;return b|0}function Eg(a,b){a=a|0;b=b|0;var c=0;c=H[a+24>>2];if(c){a=H[c>>2];a=Ra[H[H[a>>2]+28>>2]](a)|0;S6(H[b>>2],0,(N(a,(a<<2)+16|0)+N(H[c+16>>2],N(a,24)+240|0)|0)+76|0)}}function Pm(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;a=H[33768];e=H[a+124>>2]-d|0;e=(e|0)>0?e:0;c=c>>>0>e>>>0?e:c;if(c){R6(b,H[a+92>>2]+(d<<2)|0,c<<2)}return c|0}function LQ(a){var b=0,c=0;b=H[a+56>>2];if(b){c=H[H[H[H[a+4>>2]+40>>2]+976>>2]+1024>>2];F[b+42|0]=0;H[b+32>>2]=0;H[b+36>>2]=0;Ra[H[H[c>>2]+40>>2]](c,H[a+56>>2])}}function Dg(a){a=a|0;var b=0;a=H[a+24>>2];if(a){b=H[a>>2];b=Ra[H[H[b>>2]+28>>2]](b)|0;a=(N((b<<2)+16|0,b)+N(H[a+16>>2],N(b,24)+240|0)|0)+76|0}else{a=0}return a|0}function z6(a,b,c,d){var e=0,f=0;e=H[a+4>>2];f=H[a>>2];a=0;a:{if(!c){break a}a=e>>8;if(!(e&1)){break a}a=H[a+H[c>>2]>>2]}Ra[H[H[f>>2]+28>>2]](f,b,a+c|0,e&2?d:2)}function pO(a){var b=0;a=H[a>>2];if(a){XD(H[a>>2],a);XD(H[a+4>>2],a);b=H[a+4>>2];xF(H[b+160>>2],b);H[H[a+24>>2]>>2]=0;b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,a)}}function gP(a){a=a|0;var b=0;if(H[a+548>>2]){while(1){iG(H[((b<<2)+a|0)+36>>2],H[a+28>>2],L[a+32>>2],H[a+552>>2]);b=b+1|0;if(b>>>0>2]){continue}break}}}function _d(a,b,c,d){a=a|0;b=O(b);c=O(c);d=O(d);var e=0;e=Oa-16|0;Oa=e;L[e+12>>2]=b;L[e+8>>2]=c;L[e+4>>2]=d;a=Ra[a|0](e+12|0,e+8|0,e+4|0)|0;Oa=e+16|0;return a|0}function WO(a){var b=0;a:{switch(I[a+20|0]){case 0:return GQ(a-4|0,0);case 1:return pR(a-4|0);case 4:return NG(a);case 5:b=nE(a);break;default:break a}}return b}function Sm(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;a=H[33768];e=H[a+84>>2]-d|0;e=(e|0)>0?e:0;c=c>>>0>e>>>0?e:c;if(c){R6(b,H[a+52>>2]+(d<<2)|0,c<<2)}return c|0}function Mm(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;a=H[33768];e=H[a+44>>2]-d|0;e=(e|0)>0?e:0;c=c>>>0>e>>>0?e:c;if(c){R6(b,H[a+12>>2]+(d<<2)|0,c<<2)}return c|0}function Jn(a,b,c){var d=0;a=a+16|0;a=H[((I[a+9|0]<<2)+135180|0)+40>>2]+a|0;d=J[a+24>>1];H[b>>2]=(d|0)==1?a+20|0:H[a+20>>2];if(c){F[c|0]=H[a+36>>2]!=-1}return d}function hi(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;di(a,0,b,c);a=H[a+320>>2];c=Ra[H[H[a>>2]+100>>2]](a)|0;a=1;ei(c,L[b>>2]!=O(0)|L[b+4>>2]!=O(0)?a:L[b+8>>2]!=O(0),d)}function ci(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;di(a,b,0,c);a=H[a+320>>2];c=Ra[H[H[a>>2]+100>>2]](a)|0;a=1;ei(c,L[b>>2]!=O(0)|L[b+4>>2]!=O(0)?a:L[b+8>>2]!=O(0),d)}function UD(a){a=a|0;var b=0;H[a+28>>2]=0;H[a>>2]=115200;b=H[a+20>>2];if(!(!b|(a+4|0)==(b|0))){$N(H[a+40>>2],b,H[a+24>>2])}H[a+20>>2]=0;H[a+24>>2]=0;return a|0}function TI(a,b,c){var d=0;d=H[a>>2];if(d){a=H[d+32>>2];a:{if(a){while(1){if(H[a+28>>2]==(b|0)){break a}a=H[a>>2];if(a){continue}break}}a=1}IO(H[d+40>>2],a,c)}}function zi(a,b){a=a|0;b=b|0;a=1;a:{if(!_5(13282,b)){break a}if(!_5(1413,b)){break a}if(!_5(3783,b)){break a}if(!_5(3754,b)){break a}a=!_5(b,18401)}return a|0}function yl(a,b){a=a|0;b=O(b);var c=0,d=0;c=Oa-16|0;Oa=c;if(bO(1)){d=H[33808];M[c>>3]=b;o5(d,4,8280,143,66331,c)}L[a+40>>2]=b;Jm(H[33772],a);Oa=c+16|0}function tz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=1;if(b>>>0>1){while(1){kz(((d<<5)+a|0)-32|0,c);d=d+1|0;if((d|0)!=(b|0)){continue}break}}kz(((b<<5)+a|0)-32|0,c)}function qz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=1;if(b>>>0>1){while(1){jz(((d<<5)+a|0)-32|0,c);d=d+1|0;if((d|0)!=(b|0)){continue}break}}jz(((b<<5)+a|0)-32|0,c)}function Qn(a,b){a=a|0;b=b|0;a=1;a:{if(!_5(20639,b)){break a}if(!_5(1413,b)){break a}if(!_5(3783,b)){break a}if(!_5(3754,b)){break a}a=!_5(b,18401)}return a|0}function ON(a,b,c,d,e){var f=0;f=c>>>0>64?c:64;if(f>>>0>(H[a+32>>2]&2147483647)>>>0){PN(a+24|0,f)}QN(H[a+2388>>2],b);QN(H[a+2392>>2],c);QN(H[a+2384>>2],d+e|0)}function DN(a){a=a|0;var b=0,c=0;if(H[a+32>>2]){while(1){c=H[H[a+28>>2]+(b<<2)>>2];pN(c,L[a+36>>2]);H[c+92>>2]=0;b=b+1|0;if(b>>>0>2]){continue}break}}}function pq(a,b){a=a|0;b=b|0;if(H[a+4656>>2]!=1){o5(H[33808],8,9281,2048,66500,0);return 0}if(I5(H[a+6064>>2],0-b|0)){H[a+4656>>2]=2;a=1}else{a=0}return a|0} -function Ji(a,b){a=a|0;b=b|0;var c=0;b=H[((J[b+4>>1]<<2)+73232|0)+72>>2]+b|0;c=H[b+4>>2];F[a|0]=I[(c&1?H[b+8>>2]:(b+H[((c>>>22&60)+76348|0)+12>>2]|0)+8|0)|0]}function vg(a){var b=0;a=H[((J[a+4>>1]<<2)+73232|0)+72>>2]+a|0;a:{if((H[a+4>>2]>>>30|0)-3>>>0<4294967294){break a}a=H[a>>2];if(!a){break a}b=a-16|0}return b}function qO(a,b){var c=0;c=Oa-16|0;Oa=c;H[c+8>>2]=b;a=rg(a+1252|0,c+8|0,c+15|0);if(!I[c+15|0]){H[a>>2]=H[c+8>>2]}a=H[c+8>>2];F[a+68|0]=I[a+68|0]|4;Oa=c+16|0}function nO(a,b){var c=0,d=0,e=0;c=Oa-16|0;Oa=c;d=H[b>>2];if(d){d=tF(d);e=H[33808]+12|0;Ra[H[H[e>>2]+12>>2]](e,d)}H[c+12>>2]=b;Pf(a+1200|0,c+12|0);Oa=c+16|0}function kQ(a){a=a|0;var b=0,c=0;c=H[a+20>>2];a=H[a+28>>2];b=H[H[a+976>>2]+1024>>2];Ra[H[H[b>>2]+16>>2]](b);uH(H[a+980>>2],c,a+4e3|0,H[H[a+976>>2]+1156>>2])}function Ys(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=Oa-16|0;Oa=d;e=I[(H[a+36>>2]&64?H[a+40>>2]+52|0:a+112|0)|0];F[d+8|0]=c?e|b:(b^-1)&e;Xs(a,d+8|0);Oa=d+16|0}function Kp(a,b){a=a|0;b=b|0;if(!I[a+4801|0]){a=H[a+1008>>2];H[a+1020>>2]=b;a=H[a+1024>>2];Ra[H[H[a>>2]+88>>2]](a,b);return}o5(H[33808],2,16043,516,59423,0)}function q$(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=O(f);g=g|0;h=h|0;i=O(i);if(!I[135096]){F[135096]=1;o5(H[33808],8,16299,175,56965,0)}return 0}function JD(a,b,c){var d=0;d=c>>>1|0;if((b|0)==-1){a=H[N(c&1,36)+a>>2];return Ra[H[H[a>>2]+36>>2]](a,d)|0}a=H[a+72>>2];return Ra[H[H[a>>2]+36>>2]](a,d,b)|0}function yF(a){var b=0,c=0;if(H[a+28>>2]){c=H[a+12>>2];b=H[a>>2];a=H[a+16>>2];Ra[H[H[b>>2]+12>>2]](b,a)|0;F[b+76|0]=a;H[b+32>>2]=c;Ra[H[H[b>>2]+8>>2]](b)}}function qP(a){a=a|0;var b=0;if(H[a+32>>2]){while(1){hG(H[H[H[a+28>>2]+(b<<2)>>2]>>2],H[a+36>>2],H[a+40>>2]);b=b+1|0;if(b>>>0>2]){continue}break}}}function nd(a,b){a=a|0;b=b|0;var c=0;c=Oa-16|0;Oa=c;Ra[H[a>>2]](c,b);a=o6(12);L[a>>2]=L[c>>2];L[a+4>>2]=L[c+4>>2];L[a+8>>2]=L[c+8>>2];Oa=c+16|0;return a|0}function aW(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=O(f);g=g|0;h=h|0;i=i|0;if(!I[135096]){F[135096]=1;o5(H[33808],8,16299,175,56965,0)}return 0}function R5(a){var b=0,c=0;b=a*a;c=b*a;return O(c*(b*b)*(b*2718311493989822e-21+-.00019839334836096632)+(c*(b*.008333329385889463+-.16666666641626524)+a))}function Li(a){a=a|0;var b=0;a=H[((J[a+4>>1]<<2)+73232|0)+72>>2]+a|0;b=H[a+4>>2];return I[(b&2?H[a+8>>2]+1|0:(a+H[((b>>>22&60)+76348|0)+12>>2]|0)+10|0)|0]}function Go(a,b,c){a=a|0;b=b|0;c=c|0;b=I[a+128|0];if(!b){F[a+128|0]=1;H[a+60>>2]=1;H[a+124>>2]=H[a+56>>2];H[a+72>>2]=H[a+64>>2];H[a+56>>2]=a+76}return!b|0}function Co(a,b,c){a=a|0;b=b|0;c=c|0;b=I[a+160|0];if(!b){F[a+160|0]=1;H[a+76>>2]=1;H[a+156>>2]=H[a+72>>2];H[a+88>>2]=H[a+80>>2];H[a+72>>2]=a+92}return!b|0}function zs(a,b){a=a|0;b=b|0;var c=0,d=0;c=a+116|0;d=H[c>>2];if(!d){a=H[a+36>>2]&1?H[a+40>>2]- -64|0:c;c=H[a+4>>2];H[b>>2]=H[a>>2];H[b+4>>2]=c}return!d|0}function zp(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=H[a+5980>>2]-d|0;e=(e|0)>0?e:0;c=c>>>0>e>>>0?e:c;if(c){R6(b,H[a+5948>>2]+(d<<2)|0,c<<2)}return c|0}function uU(a){a=a|0;var b=0,c=0;H[a>>2]=125556;h_(a+112|0);b=H[a+96>>2];if(b){c=H[33808];Ra[H[H[c+12>>2]+12>>2]](c+12|0,b)}H[a+96>>2]=0;pU(a);return a|0}function rp(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=H[a+6020>>2]-d|0;e=(e|0)>0?e:0;c=c>>>0>e>>>0?e:c;if(c){R6(b,H[a+5988>>2]+(d<<2)|0,c<<2)}return c|0}function Bp(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=H[a+5928>>2]-d|0;e=(e|0)>0?e:0;c=c>>>0>e>>>0?e:c;if(c){R6(b,H[a+5896>>2]+(d<<2)|0,c<<2)}return c|0}function oc(a,b){a=a|0;b=b|0;var c=0;c=H[a>>2];a=o6(16);b=b+c|0;L[a>>2]=L[b>>2];L[a+4>>2]=L[b+4>>2];L[a+8>>2]=L[b+8>>2];L[a+12>>2]=L[b+12>>2];return a|0}function gT(a,b){var c=0,d=0;c=H[a+4>>2];if((c|0)<0){d=H[a>>2];c=d+(c<<2)|0;while(1){H[c>>2]=H[b>>2];c=c+4|0;if(d>>>0>c>>>0){continue}break}}H[a+4>>2]=0}function VG(a){var b=0,c=0;c=H[H[H[a>>2]+40>>2]+2168>>2];b=Oa-16|0;Oa=b;H[b+8>>2]=a;a=rg(c+68|0,b+8|0,b+15|0);if(!I[b+15|0]){H[a>>2]=H[b+8>>2]}Oa=b+16|0}function pf(a){a=a|0;var b=0;H[a>>2]=102720;if(F[a+6|0]&1){b=H[a+56>>2];Ra[H[H[b>>2]+8>>2]](b)}Ql(H[33768],a);b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,a)}function _h(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=H[a+356>>2]-d|0;e=(e|0)>0?e:0;c=c>>>0>e>>>0?e:c;if(c){R6(b,H[a+352>>2]+(d<<2)|0,c<<2)}return c|0}function Zd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=O(0),f=O(0);d=o6(16);e=L[a>>2];f=L[b>>2];L[d+12>>2]=L[c>>2];L[d+8>>2]=f;L[d+4>>2]=e;H[d>>2]=3;return d|0}function Xg(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=H[a+124>>2]-d|0;e=(e|0)>0?e:0;c=c>>>0>e>>>0?e:c;if(c){R6(b,H[a+120>>2]+(d<<2)|0,c<<2)}return c|0}function Eo(a,b,c){a=a|0;b=b|0;c=c|0;b=I[a+64|0];if(!b){F[a+64|0]=1;H[a+28>>2]=1;H[a+60>>2]=H[a+24>>2];H[a+40>>2]=H[a+32>>2];H[a+24>>2]=a+44}return!b|0}function vh(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=H[a+100>>2]-d|0;e=(e|0)>0?e:0;c=c>>>0>e>>>0?e:c;if(c){R6(b,H[a+96>>2]+(d<<2)|0,c<<2)}return c|0}function mV(a,b,c){a=a|0;b=b|0;c=c|0;b=H[b+4>>2]+(1-c<<4)|0;c=H[b+60>>2];H[a+8>>2]=H[b+56>>2];H[a+12>>2]=c;c=H[b+52>>2];H[a>>2]=H[b+48>>2];H[a+4>>2]=c}function kP(a){a=a|0;var b=0;if(H[a+1060>>2]){while(1){bR(H[((b<<2)+a|0)+36>>2],H[a+28>>2],H[a+32>>2]);b=b+1|0;if(b>>>0>2]){continue}break}}}function Lk(a,b,c){a=a|0;b=b|0;c=c|0;a:{if(I[a+14|0]&4){a=H[a+16>>2];L[b>>2]=L[a+148>>2];a=a+152|0;break a}L[b>>2]=L[a+80>>2];a=a+84|0}L[c>>2]=L[a>>2]}function Ee(a,b,c,d,e){a=a|0;b=b|0;c=O(c);d=O(d);e=O(e);var f=0;f=H[a>>2];a=H[a+4>>2];b=(a>>1)+b|0;if(a&1){f=H[f+H[b>>2]>>2]}return Ra[f|0](b,c,d,e)|0}function Dk(a,b,c){a=a|0;b=b|0;c=c|0;a:{if(I[a+14|0]&2){a=H[a+16>>2];L[b>>2]=L[a+140>>2];a=a+144|0;break a}L[b>>2]=L[a+88>>2];a=a+96|0}L[c>>2]=L[a>>2]}function wB(a,b,c){a=a|0;b=b|0;c=c|0;if(c){F[a+7648|0]=1;H[a+32>>2]=0;H[a+16>>2]=H[a+7664>>2];b=a+7672|0;c=H[b+4>>2];H[a+24>>2]=H[b>>2];H[a+28>>2]=c}}function cW(a,b){var c=0;c=Oa-16|0;Oa=c;Ra[H[H[b>>2]>>2]](b,c+14|0,2)|0;if(a){a=I[c+15|0];F[c+15|0]=I[c+14|0];F[c+14|0]=a}Oa=c+16|0;return J[c+14>>1]}function Zf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=H[a+36>>2]-d|0;e=(e|0)>0?e:0;c=c>>>0>e>>>0?e:c;if(c){R6(b,H[a+40>>2]+(d<<2)|0,c<<2)}return c|0}function ZS(a,b){a=a|0;b=b|0;if(K[a+72>>2]<=b>>>0){o5(H[33808],4,7031,126,1685,0);return 0}a=H[H[a+68>>2]+(b<<2)>>2];return Ra[H[H[a>>2]+16>>2]](a)|0}function A1(a,b,c){a=a|0;b=b|0;c=c|0;b=H[b+80>>2]+(c<<4)|0;c=H[b+308>>2];H[a>>2]=H[b+304>>2];H[a+4>>2]=c;L[a+8>>2]=L[b+312>>2];H[a+12>>2]=H[b+316>>2]}function zC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;b=Oa-16|0;Oa=b;d=H[a+12>>2];a=OC(H[d+12>>2],H[d+8>>2],H[c>>2],H[a+4>>2],H[a+8>>2]);Oa=b+16|0;return a|0}function yC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;b=Oa-16|0;Oa=b;d=H[a+12>>2];a=NC(H[d+12>>2],H[d+8>>2],H[c>>2],H[a+4>>2],H[a+8>>2]);Oa=b+16|0;return a|0}function xC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;b=Oa-16|0;Oa=b;d=H[a+12>>2];a=MC(H[d+12>>2],H[d+8>>2],H[c>>2],H[a+4>>2],H[a+8>>2]);Oa=b+16|0;return a|0}function wC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;b=Oa-16|0;Oa=b;d=H[a+12>>2];a=LC(H[d+12>>2],H[d+8>>2],H[c>>2],H[a+4>>2],H[a+8>>2]);Oa=b+16|0;return a|0}function tv(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p){a=a|0;b=O(b);c=O(c);d=O(d);e=O(e);f=f|0;g=g|0;h=O(h);i=O(i);j=O(j);k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=O(p)}function bt(a){var b=0;H[a+196>>2]=H[a+196>>2]-1;if(H[a+196>>2]<0){H[a+20>>2]=0}b=H[a+16>>2]-1|0;H[a+16>>2]=b;if(!b){Ra[H[H[a+12>>2]+8>>2]](a+12|0)}}function Ok(a){a=a|0;var b=0;an(H[33772],a,0,1);b=a+8|0;a:{if((H[a+12>>2]>>>30|0)-3>>>0<4294967294){break a}a=H[a+8>>2];if(!a){break a}Pt(a,b)}wt(b)}function $W(a,b,c){a=a|0;b=b|0;c=c|0;b=H[b+4>>2]+(c<<4)|0;c=H[b+60>>2];H[a+8>>2]=H[b+56>>2];H[a+12>>2]=c;c=H[b+52>>2];H[a>>2]=H[b+48>>2];H[a+4>>2]=c}function um(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=H[a+8>>2]-d|0;e=(e|0)>0?e:0;c=c>>>0>e>>>0?e:c;if(c){R6(b,H[a+4>>2]+(d<<2)|0,c<<2)}return c|0}function Wd(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=Oa-16|0;Oa=e;Ra[H[a>>2]](e+8|0,b,c,d);ma(H[e+8>>2]);a=H[e+8>>2];na(a|0);Oa=e+16|0;return a|0}function K6(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(t6(a,H[b+8>>2],f)){D6(b,c,d,e);return}a=H[a+8>>2];Ra[H[H[a>>2]+20>>2]](a,b,c,d,e,f)}function EX(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=e|0;f=f|0;g=O(g);h=h|0;i=i|0;j=O(j);k=k|0;l=O(l);return O(O(3.4028234663852886e38))} -function Bf(a,b,c){a=a|0;b=b|0;c=c|0;if(I[a+20|0]&2){a=H[a+24>>2];L[b>>2]=L[a+8>>2];L[c>>2]=L[a+12>>2];return}L[b>>2]=L[a+76>>2];L[c>>2]=L[a+80>>2]}function nz(a,b,c){a=a|0;b=b|0;c=c|0;c=1;if(b>>>0>1){while(1){iz(((c<<5)+a|0)-32|0);c=c+1|0;if((c|0)!=(b|0)){continue}break}}iz(((b<<5)+a|0)-32|0)}function nR(a){a=a|0;var b=0,c=0;H[a>>2]=124144;c=H[H[a+4>>2]+40>>2];b=a+4|0;YN(c,b);kI(H[c+2168>>2],a);XD(H[a+4>>2],b);XD(H[a+8>>2],b);return a|0}function bJ(a,b){a=a|0;b=b|0;var c=0;c=H[b+24>>2]-1|0;H[b+24>>2]=c;if(!c){a=H[a+8>>2];if(a){Ra[H[H[a>>2]>>2]](a,b);return}Ra[H[H[b>>2]+28>>2]](b)}}function Yu(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;a=((N(b,240)+(b<<6)|0)+((b<<2)+60&-64)|0)+272|0;H[c>>2]=a;H[d>>2]=N(b,528)+a;H[e>>2]=N(b,672)}function T3(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;f=Oa+-64|0;Oa=f;if(e&1){e=f+32|0;$1(e,f,b,c,d);Ra[H[H[a>>2]+8>>2]](a,e,f)}Oa=f- -64|0}function Is(a,b){a=a|0;b=b|0;b=H[b+36>>2]&8?H[b+40>>2]+28|0:b- -64|0;H[a>>2]=H[b>>2];H[a+4>>2]=H[b+4>>2];H[a+8>>2]=H[b+8>>2];H[a+12>>2]=H[b+12>>2]}function ot(a,b,c,d,e,f,g,h){b=ID(b,d+32|0,H[((J[e+4>>1]<<2)+73232|0)+72>>2]+e|0,f,H[a+16>>2],g,h);H[(c<<2)+(J[a+12>>1]==1?a+8|0:H[a+8>>2])>>2]=b}function fk(a,b){a=a|0;b=b|0;b=H[b+12>>2]&4?H[b+16>>2]+56|0:b+296|0;L[a>>2]=L[b>>2];L[a+4>>2]=L[b+4>>2];L[a+8>>2]=L[b+8>>2];L[a+12>>2]=L[b+12>>2]}function RD(a,b){var c=0,d=0;a:{c=I[b|0];d=I[a+8|0];if((c|0)==(d|0)){break a}F[a+8|0]=c;a=H[a>>2];if(!a){break a}Ra[H[H[a>>2]+8>>2]](a,d,I[b|0])}}function FA(a,b,c){a=a|0;b=b|0;c=c|0;c=H[a>>2];a=c+J[a+4>>1]|0;if(a>>>0>c>>>0){while(1){xA((c<<5)+b|0);c=c+1|0;if((a|0)!=(c|0)){continue}break}}}function i4(a,b){a=a|0;b=b|0;if(H[a+80>>2]){Ra[H[H[b>>2]+12>>2]](b,16);Ra[H[H[b>>2]+8>>2]](b,H[a+80>>2],128)}Ra[H[H[b>>2]+16>>2]](b,H[a+16>>2])}function Y1(a,b){a=a|0;b=b|0;if(H[a+80>>2]){Ra[H[H[b>>2]+12>>2]](b,16);Ra[H[H[b>>2]+8>>2]](b,H[a+80>>2],480)}Ra[H[H[b>>2]+16>>2]](b,H[a+16>>2])}function G4(a,b){a=a|0;b=b|0;if(H[a+80>>2]){Ra[H[H[b>>2]+12>>2]](b,16);Ra[H[H[b>>2]+8>>2]](b,H[a+80>>2],144)}Ra[H[H[b>>2]+16>>2]](b,H[a+16>>2])}function DG(a,b){var c=0;c=Oa-16|0;Oa=c;H[c+8>>2]=b;a=rg(a+296|0,c+8|0,c+15|0);if(!I[c+15|0]){H[a>>2]=H[c+8>>2]}F[b+68|0]=I[b+68|0]|1;Oa=c+16|0}function D3(a,b){a=a|0;b=b|0;if(H[a+80>>2]){Ra[H[H[b>>2]+12>>2]](b,16);Ra[H[H[b>>2]+8>>2]](b,H[a+80>>2],112)}Ra[H[H[b>>2]+16>>2]](b,H[a+16>>2])}function dE(a,b){var c=0;F[a+274|0]=b;a=H[H[a+364>>2]>>2];if(a){b=H[a>>2];F[b+93|0]=1;c=H[H[a+4>>2]+1012>>2];Ra[H[H[c>>2]+64>>2]](c,b,a+48|0)}}function P3(a,b){a=a|0;b=b|0;if(H[a+80>>2]){Ra[H[H[b>>2]+12>>2]](b,16);Ra[H[H[b>>2]+8>>2]](b,H[a+80>>2],96)}Ra[H[H[b>>2]+16>>2]](b,H[a+16>>2])}function Hr(a){a=a|0;var b=0;b=H[a+20>>2];a=H[H[a+28>>2]>>2];if(!I[a+76|0]){F[a+76|0]=1;H[a+72>>2]=H[a+72>>2]+1}if(b){Ra[H[H[b>>2]+20>>2]](b)}}function tN(a){var b=0;a:{a=H[a+36>>2];b=I[a+158|0];if(!b){break a}if(b&1){H[a+64>>2]=0}if(b&2){H[a+68>>2]=0}if(!(b&4)){break a}H[a+72>>2]=0}}function mG(a,b,c){if(c?1:b>O(0)){dF(H[H[a+40>>2]+1e3>>2],H[a+144>>2]);return}if(!(!sF(a)|H[a+160>>2])){eF(H[H[a+40>>2]+1e3>>2],H[a+144>>2])}}function mE(a,b,c,d,e,f){b=(b<<4)+a|0;H[b+120>>2]=f;L[b+116>>2]=e;L[b+112>>2]=d;L[b+108>>2]=c;F[a+273|0]=I[a+273|0]|32;a=H[a>>2];if(a){oE(a)}}function Q5(a){var b=0;a=a*a;b=a*a;return O(a*b*(a*2439044879627741e-20+-.001388676377460993)+(b*.04166662332373906+(a*-.499999997251031+1)))}function OK(a){a=a|0;a=H[a+28>>2];fL(a);Ra[H[H[a+288>>2]+32>>2]](a+288|0);Ra[H[H[a+336>>2]+32>>2]](a+336|0);Ra[H[H[a+384>>2]+32>>2]](a+384|0)}function _G(a,b){if(b){if((i7(b)|0)!=1){b=b>>>1|b;b=b>>>2|b;b=b>>>4|b;b=b>>>8|b;b=(b>>>16|b)+1|0}H[a+24>>2]=b;H[a>>2]=b;H[a+4>>2]=b-1;YG(a)}}function ND(a){var b=0;if(I[a+140|0]){MD(a);b=H[a>>2];if(b){Ra[H[H[b>>2]+16>>2]](b)}b=H[a+36>>2];if(b){Ra[H[H[b>>2]+16>>2]](b)}F[a+140|0]=0}}function Io(a){a=a|0;H[a+5800>>2]=0;H[a+5784>>2]=110900;H[a>>2]=109632;H[a+5760>>2]=0;H[a+5744>>2]=110900;GD(a+5584|0);Jo(a+16|0);return a|0}function $G(a,b){var c=0;c=H[a+8>>2]+1|0;c=c>>>1|c;c=c>>>2|c;c=c>>>4|c;c=c>>>8|c;c=c>>>16|c;H[a+4>>2]=c;H[a>>2]=c+1;YG(a);return H[a+4>>2]&b}function ql(a){a=a|0;var b=0,c=0;b=a-12|0;c=H[a-4>>2];a:{if(F[a-6|0]&1){Sl(H[33768],b);break a}Ra[H[H[b>>2]+12>>2]](b)|0}an(H[33772],b,c,2)}function dh(a,b){a=a|0;b=b|0;var c=0;a=H[33768];Ra[H[H[b>>2]+12>>2]](b)|0;c=a+3920|0;H[c>>2]=H[c>>2]-1;a=a+3928|0;H[b>>2]=H[a>>2];H[a>>2]=b}function Wu(a,b){a=a|0;b=b|0;var c=0;c=I[a+92|0];if(c){if(I[a+76|0]!=(b|0)){H[a+28>>2]=a;H[a+40>>2]=H[a+80>>2]}F[a+92|0]=0}return(c|0)!=0|0}function Uj(a,b){a=a|0;b=b|0;var c=0;a=H[33768];Ra[H[H[b>>2]+12>>2]](b)|0;c=a+3624|0;H[c>>2]=H[c>>2]-1;a=a+3632|0;H[b>>2]=H[a>>2];H[a>>2]=b}function U2(a){a=a|0;var b=0,c=0;b=H[a+68>>2];if(b){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}a=a-12|0;H[a+80>>2]=0;Ra[H[H[a>>2]+16>>2]](a)}function Bs(a,b){a=a|0;b=b|0;var c=0,d=0;c=a+116|0;d=H[c>>2];if((d|0)==1){H[b>>2]=H[(H[a+36>>2]&1?H[a+40>>2]- -64|0:c)>>2]}return(d|0)==1|0}function wf(a,b){a=a|0;b=b|0;if(I[b+20|0]&4){G[a>>1]=J[H[b+24>>2]+16>>1]&(J[b+116>>1]|-1026);return}G[a>>1]=J[b+28>>1]&(J[b+116>>1]|-1026)}function bR(a,b,c){var d=0;d=H[a+8>>2]&2147483647;b=H[b+4>>2]+(d<<5)|0;XQ(a,b);H[b+28>>2]=0;aU(H[c+4>>2]+N(d,24)|0,H[a+28>>2]+68|0,b,O(1))}function Wc(a,b){a=a|0;b=b|0;var c=0,d=0;c=Oa-16|0;Oa=c;d=H[b+4>>2];H[c+8>>2]=H[b>>2];H[c+12>>2]=d;a=Ra[a|0](c+8|0)|0;Oa=c+16|0;return a|0}function zc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=Oa-16|0;Oa=d;Ra[H[a>>2]](d+8|0,b,c);ma(H[d+8>>2]);a=H[d+8>>2];na(a|0);Oa=d+16|0;return a|0}function sg(a){var b=0;a:{switch(J[a+4>>1]-5|0){case 0:return a+20|0;case 1:return a+20|0;case 8:b=a+20|0;break;default:break a}}return b}function OD(a,b){var c=0;a:{c=N(b,36)+a|0;b=H[c>>2];if(!b|H[c+28>>2]!=1){break a}if(!(Ra[H[H[b>>2]+72>>2]](b,0)|0)){break a}F[a+140|0]=1}}function KZ(a,b){a=a|0;b=b|0;var c=0,d=0;c=H[a+44>>2];d=H[a+40>>2];Ra[H[H[b>>2]+12>>2]](b,16);Ra[H[H[b>>2]+8>>2]](b,H[a+60>>2],N(c,d)<<2)}function gc(a,b,c){a=a|0;b=O(b);c=c|0;var d=0;d=H[H[a>>2]+168>>2];if(b=O(0)){Ra[d|0](a,~~b>>>0,c);return}Ra[d|0](a,0,c)}function ec(a,b,c){a=a|0;b=O(b);c=c|0;var d=0;d=H[H[a>>2]+164>>2];if(b=O(0)){Ra[d|0](a,~~b>>>0,c);return}Ra[d|0](a,0,c)}function te(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=Oa-16|0;Oa=e;a=H[a>>2];H[e+12>>2]=d;a=Ra[a|0](b,c,e+12|0)|0;Oa=e+16|0;return a|0}function jn(a){a=a|0;var b=0;H[a>>2]=107400;H[a>>2]=107752;ht(a+20|0);H[a>>2]=108104;wg(a);b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,a)}function ev(a,b){a=a|0;b=b|0;var c=0,d=0;c=H[a+100>>2];d=J[c+4>>1];a=d<<5;return O(L[(((a+(a+(a+c|0)|0)|0)+(d<<4)|0)+(b<<2)|0)+128>>2])}function cv(a,b,c){a=a|0;b=b|0;c=c|0;H[a>>2]=0;H[a+4>>2]=0;H[a+24>>2]=0;H[a+28>>2]=0;H[a+16>>2]=0;H[a+20>>2]=0;H[a+8>>2]=0;H[a+12>>2]=0}function Xn(a){a=a|0;var b=0;H[a>>2]=108772;H[a>>2]=108976;ht(a+20|0);H[a>>2]=109116;wg(a);b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,a)}function VW(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=O(g);h=h|0;i=i|0;j=O(j);o5(H[33808],8,5927,525,66789,0);return 0}function UW(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=O(g);h=h|0;i=i|0;j=O(j);o5(H[33808],8,5927,510,66789,0);return 0}function Fw(a,b,c){a=Gw(a,N(b,240),0);H[c>>2]=a;H[c+20>>2]=a+(b<<7);H[c+12>>2]=a+N(b,96);H[c+8>>2]=a+(b<<6);H[c+4>>2]=a+(b<<5);return a}function F6(a,b,c,d,e,f){var g=0,h=0;g=H[a+4>>2];h=g>>8;a=H[a>>2];if(g&1){h=H[H[d>>2]+h>>2]}Ra[H[H[a>>2]+20>>2]](a,b,c,d+h|0,g&2?e:2,f)}function $S(a){a=a|0;var b=0;if(H[a+72>>2]){while(1){b=H[H[a+68>>2]>>2];VS(a,Ra[H[H[b>>2]+16>>2]](b)|0);if(H[a+72>>2]){continue}break}}}function qV(a,b){a=a|0;b=b|0;var c=0;b=H[b+4>>2];c=H[b+4>>2];H[a>>2]=H[b>>2];H[a+4>>2]=c;c=H[b+12>>2];H[a+8>>2]=H[b+8>>2];H[a+12>>2]=c}function eo(a,b){a=a|0;b=b|0;a=1;a:{if(!_5(20607,b)){break a}if(!_5(3783,b)){break a}if(!_5(3754,b)){break a}a=!_5(b,18401)}return a|0}function ej(a,b){a=a|0;b=b|0;var c=0;c=Oa-16|0;Oa=c;F[c+8|0]=I[(H[a+316>>2]&16384?H[a+56>>2]+268|0:a+108|0)|0];dj(a,c+8|0,b);Oa=c+16|0}function hE(a,b,c){var d=0,e=O(0);L[a- -64>>2]=c;L[a+60>>2]=b;d=a,e=a6(O(c*O(.25))),L[d+352>>2]=e;d=a,e=a6(O(b*O(.25))),L[d+356>>2]=e}function fe(a,b,c){a=a|0;b=O(b);c=O(c);var d=0;d=Oa-16|0;Oa=d;L[d+12>>2]=b;L[d+8>>2]=c;a=Ra[a|0](d+12|0,d+8|0)|0;Oa=d+16|0;return a|0}function Gf(a,b){var c=0;c=H[a+56>>2];if(H[a+8>>2]==(b|0)){Ra[H[H[c>>2]+12>>2]](c,0)}if(H[a+12>>2]==(b|0)){Ra[H[H[c>>2]+12>>2]](c,1)}}function nQ(a){a=a|0;var b=0,c=0;a=H[a+100>>2];b=H[a+976>>2]+1796|0;c=H[a+980>>2];H[b>>2]=(H[c+332>>2]+H[b>>2]|0)+H[c+344>>2];iO(a)}function fE(a,b,c){var d=0,e=O(0);L[a+76>>2]=c;L[a+68>>2]=b;d=a,e=a6(O(b*O(.25))),L[d+340>>2]=e;d=a,e=a6(O(c*O(.25))),L[d+344>>2]=e}function G6(a,b,c,d,e){var f=0,g=0;f=H[a+4>>2];g=f>>8;a=H[a>>2];if(f&1){g=H[H[c>>2]+g>>2]}Ra[H[H[a>>2]+24>>2]](a,b,c+g|0,f&2?d:2,e)}function mc(a,b){a=a|0;b=b|0;var c=0;c=H[a>>2];a=o6(12);b=b+c|0;L[a>>2]=L[b>>2];L[a+4>>2]=L[b+4>>2];L[a+8>>2]=L[b+8>>2];return a|0}function bW(a,b,c,d,e){Ra[H[H[e>>2]>>2]](e,a,1)|0;Ra[H[H[e>>2]>>2]](e,b,1)|0;Ra[H[H[e>>2]>>2]](e,c,1)|0;Ra[H[H[e>>2]>>2]](e,d,1)|0}function Xb(a,b,c,d){a=a|0;b=b|0;c=O(c);d=O(d);var e=0;e=H[a>>2];a=H[a+4>>2];b=(a>>1)+b|0;if(a&1){e=H[e+H[b>>2]>>2]}Ra[e|0](b,c,d)}function UG(a,b,c,d,e){F[a+22|0]=0;F[a+21|0]=e;F[a+20|0]=d;H[a+16>>2]=-1;H[a+8>>2]=-1;H[a+12>>2]=-1;H[a+4>>2]=c;H[a>>2]=b;return a}function Sq(a,b){a=a|0;b=b|0;if(!I[a+4801|0]){H[H[(a+32|0)+1004>>2]+108>>2]=b;return}H[a+5572>>2]=b;a=a+5580|0;H[a>>2]=H[a>>2]|128}function S2(a){a=a|0;var b=0,c=0;b=H[a+80>>2];if(b){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}H[a+80>>2]=0;Ra[H[H[a>>2]+16>>2]](a)}function vJ(a,b){H[a+8>>2]=0;H[a+16>>2]=0;H[a+20>>2]=0;H[a+48>>2]=b;H[a+52>>2]=0;G[a+44>>1]=257;F[a+42|0]=0;H[a+36>>2]=0;return a}function rT(a){var b=0;b=Oa-16|0;Oa=b;H[b+12>>2]=0;a=H[a+424>>2];Ra[H[H[a>>2]+96>>2]](a,b+12|0,1,0)|0;Oa=b+16|0;return H[b+12>>2]}function lG(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=b&2;b=c&2;if((d|0)!=(b|0)){if(!I[a+150|0]){F[a+150|0]=1}F[H[a+44>>2]+173|0]=b>>>1}}function dc(a,b,c,d){a=a|0;b=b|0;c=O(c);d=d|0;var e=0;e=H[a>>2];a=H[a+4>>2];b=(a>>1)+b|0;if(a&1){e=H[e+H[b>>2]>>2]}Ra[e|0](b,c,d)}function To(a,b){a=a|0;b=O(b);if(!I[a+4801|0]){L[H[(a+32|0)+1004>>2]+84>>2]=-b;return}L[a+5560>>2]=b;a=a+5580|0;H[a>>2]=H[a>>2]|2}function Qq(a,b){a=a|0;b=b|0;if(!I[a+4801|0]){H[H[(a+32|0)+1004>>2]+104>>2]=b;return}H[a+5568>>2]=b;a=a+5580|0;H[a>>2]=H[a>>2]|16}function B_(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=O(d);e=e|0;f=f|0;f=Oa+-64|0;Oa=f;yU(f,b+48|0,b+36|0,b,c,d);o_(f,1,a,e,1);Oa=f- -64|0}function A$(a,b){a=a|0;b=b|0;if(H[a+144>>2]){Ra[H[H[b>>2]+12>>2]](b,16);Ra[H[H[b>>2]+8>>2]](b,H[a+148>>2],H[a+144>>2]<<4)}v$(a,b)}function nf(a){a=a|0;var b=0;a:{if((H[a+20>>2]>>>30|0)-3>>>0<4294967294){break a}a=H[a+16>>2];if(!a){break a}b=a-16|0}return b|0}function nc(a,b,c){a=a|0;b=b|0;c=c|0;a=H[a>>2]+b|0;L[a>>2]=L[c>>2];L[a+4>>2]=L[c+4>>2];L[a+8>>2]=L[c+8>>2];L[a+12>>2]=L[c+12>>2]}function lF(a,b){var c=0,d=0;c=1<>>5<<2;if(c&H[d+H[a+152>>2]>>2]){GE(a+168|0,b);a=H[a+152>>2]+d|0;H[a>>2]=H[a>>2]&(c^-1)}}function hh(a){a=a|0;var b=0;a:{if((H[a+16>>2]>>>30|0)-3>>>0<4294967294){break a}a=H[a+12>>2];if(!a){break a}b=a-16|0}return b|0}function db(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=H[a>>2];a=H[a+4>>2];b=(a>>1)+b|0;if(a&1){e=H[e+H[b>>2]>>2]}Ra[e|0](b,c,d)}function XI(a){a=a|0;var b=0;H[a>>2]=116180;SG(H[H[a+40>>2]+2372>>2],H[a+48>>2]);UD(a);b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,a)}function NA(a){var b=0,c=0;OA(a,0);b=H[a+52>>2];if(b){c=H[33808]+12|0;Ra[H[H[c>>2]+12>>2]](c,b)}H[a+52>>2]=0;dX(a+12|0);return a}function LX(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=e|0;f=f|0;g=O(g);h=h|0;i=i|0;j=j|0;k=k|0;l=O(l);return O(O(1e10))}function Dx(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=O(d);e=O(e);f=O(f);g=O(g);h=O(h);i=i|0;j=j|0;return Cx(a,b,c,d,e,h,i,2,j)|0}function CP(a){a=a|0;var b=0;if(H[a+32>>2]){while(1){gG(H[H[a+28>>2]+(b<<2)>>2],0);b=b+1|0;if(b>>>0>2]){continue}break}}}function Bx(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=O(d);e=O(e);f=O(f);g=O(g);h=O(h);i=i|0;j=j|0;return Cx(a,b,c,d,e,h,i,1,j)|0}function iX(a,b,c,d,e){var f=0;hX(a,b,c,d,e);f=H[a+24>>2];if(f){iX(f,b,c,d,e);iX(f+36|0,b,c,d,e)}H[c+4>>2]=H[c+4>>2]+H[a+32>>2]}function gb(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=H[a>>2];a=H[a+4>>2];b=(a>>1)+b|0;if(a&1){d=H[d+H[b>>2]>>2]}return Ra[d|0](b,c)|0}function dG(a,b){var c=0;a:{if((K[a+152>>2]<4294967294|0)!=(b|0)){c=H[a+40>>2];if(b){RN(c,a);break a}TN(c,a);cG(a)}return}bG(a)}function _f(a){a=a|0;var b=0;a:{if((H[a+12>>2]>>>30|0)-3>>>0<4294967294){break a}a=H[a+8>>2];if(!a){break a}b=a-16|0}return b|0}function WW(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=O(f);g=g|0;h=h|0;i=O(i);o5(H[33808],8,5927,539,66789,0);return 0}function pl(a){a=a|0;var b=0;b=H[a+8>>2];a:{if(F[a+6|0]&1){Sl(H[33768],a);break a}Ra[H[H[a>>2]+12>>2]](a)|0}an(H[33772],a,b,2)}function _v(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if(I[H[(H[a+444>>2]+(b<<5)|0)+16>>2]+159|0]){F[d|0]=3;return}F[d|0]=2;H[c>>2]=a|b}function Yg(a){a=a|0;var b=0;a=H[a+24>>2];if(a){b=H[a+56>>2];a=H[a>>2];a=N(b,Ra[H[H[a>>2]+28>>2]](a)|0)<<2}else{a=0}return a|0}function MZ(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=H[a+60>>2];a=N(H[a+44>>2],H[a+40>>2])<<2;a=a>>>0>c>>>0?c:a;R6(b,d,a);return a|0}function y6(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if(t6(a,H[b+8>>2],0)){w6(b,c,d);return}a=H[a+8>>2];Ra[H[H[a>>2]+28>>2]](a,b,c,d)}function nE(a){var b=0;if(!(K[H[a>>2]+152>>2]>4294967293|K[H[a+4>>2]+152>>2]>4294967293)){F[a+21|0]=I[a+21|0]|32;b=1}return b}function JJ(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if(!b){return 0}a=H[33808]+12|0;return Ra[H[H[a>>2]+8>>2]](a,b,20591,14485,67)|0}function zF(a,b){var c=0;if(H[a+28>>2]){while(1){dG(H[H[a+24>>2]+(c<<2)>>2],b);c=c+1|0;if(c>>>0>2]){continue}break}}}function wF(a,b){var c=0;if(H[a+28>>2]){while(1){gG(H[H[a+24>>2]+(c<<2)>>2],b);c=c+1|0;if(c>>>0>2]){continue}break}}}function o6(a){var b=0;a=a?a:1;a:{while(1){b=M6(a);if(b){break a}b=H[34020];if(b){Ra[b|0]();continue}break}ka();X()}return b}function nl(a){a=a|0;var b=0;H[a>>2]=106528;a=a-12|0;H[a>>2]=106424;Im(H[33772],a);b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,a)}function sv(a,b,c,d,e,f,g,h,i,j,k,l,m){a=a|0;b=O(b);c=O(c);d=d|0;e=e|0;f=O(f);g=O(g);h=O(h);i=O(i);j=O(j);k=k|0;l=l|0;m=m|0}function jk(a,b){a=a|0;b=b|0;b=H[b+12>>2]&8?H[b+16>>2]+72|0:b+312|0;L[a>>2]=L[b>>2];L[a+4>>2]=L[b+4>>2];L[a+8>>2]=L[b+8>>2]}function gG(a,b){a:{if(F[a+92|0]&1){break a}a=H[a+32>>2];if(!a){break a}while(1){aR(a,0,b);a=H[a>>2];if(a){continue}break}}}function eT(a,b){a=a|0;b=b|0;if(K[a+124>>2]<=b>>>0){o5(H[33808],4,7031,278,1623,0);return 0}return H[H[a+120>>2]+(b<<2)>>2]}function ad(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=O(f);g=g|0;h=h|0;i=i|0;return Ra[H[a>>2]](b,c,d,e,f,g,h,i)|0}function EQ(a){var b=0;b=H[a+68>>2];if(b-7>>>0<=4294967293){return a+66|0}if((b|0)==5){return H[a+116>>2]}return H[a+96>>2]}function r$(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=O(d);e=e|0;f=f|0;if(!I[135096]){F[135096]=1;o5(H[33808],8,16299,175,56965,0)}}function qr(a){a=a|0;var b=0;b=Oa-16|0;Oa=b;H[b+8>>2]=111008;BO(a+32|0,a+5712|0,b+8|0);LD(a+5584|0,H[a+5824>>2]);Oa=b+16|0}function FB(a,b,c){a=a|0;b=b|0;c=c|0;b=H[H[a+7680>>2]+(b<<2)>>2];H[c>>2]=H[a+7672>>2]+N(b,24);return H[a+7676>>2]+(b<<3)|0}function B2(a,b){a=a|0;b=b|0;var c=0;c=Oa-16|0;Oa=c;a=H[a+76>>2];G[c+8>>1]=J[b>>1];Ra[H[H[a>>2]+40>>2]](a,c+8|0);Oa=c+16|0}function zl(a,b,c){a=a|0;b=b|0;c=c|0;a:{if(c){G[a+44>>1]=J[a+44>>1]|b;break a}G[a+44>>1]=J[a+44>>1]&(b^-1)}Jm(H[33772],a)}function tt(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;if(!I[135096]){F[135096]=1;o5(H[33808],8,16299,175,56965,0)}return 0}function _b(a,b){a=a|0;b=b|0;var c=0;c=H[a>>2];a=H[a+4>>2];b=(a>>1)+b|0;if(a&1){c=H[c+H[b>>2]>>2]}return O(O(Ra[c|0](b)))}function Ho(a){a=a|0;var b=0;if(I[a+128|0]){b=H[a+64>>2];H[a+64>>2]=H[a+72>>2];H[a+56>>2]=H[a+124>>2];F[a+68|0]=(b|0)!=0}}function Do(a){a=a|0;var b=0;if(I[a+160|0]){b=H[a+80>>2];H[a+80>>2]=H[a+88>>2];H[a+72>>2]=H[a+156>>2];F[a+84|0]=(b|0)!=0}}function Ac(a,b,c){a=a|0;b=b|0;c=c|0;a=H[a>>2]+N(b,12)|0;L[a>>2]=L[c>>2];L[a+4>>2]=L[c+4>>2];L[a+8>>2]=L[c+8>>2];return 1}function of(a){a=a|0;var b=0;H[a>>2]=102720;if(F[a+6|0]&1){b=H[a+56>>2];Ra[H[H[b>>2]+8>>2]](b)}Ql(H[33768],a);return a|0}function rO(a,b){var c=0;c=Oa-16|0;Oa=c;H[c+12>>2]=b;Pf(a+1252|0,c+12|0);a=H[c+12>>2];F[a+68|0]=I[a+68|0]&251;Oa=c+16|0}function ib(a,b,c){a=a|0;b=b|0;c=O(c);var d=0;d=H[a>>2];a=H[a+4>>2];b=(a>>1)+b|0;if(a&1){d=H[d+H[b>>2]>>2]}Ra[d|0](b,c)}function dD(a,b,c){a=a|0;b=b|0;c=c|0;b=H[H[a+300>>2]+(b<<2)>>2];H[c>>2]=H[a+292>>2]+N(b,24);return H[a+296>>2]+(b<<3)|0}function ag(a,b){a=a|0;b=b|0;if(H[a+40>>2]){Ra[H[H[b>>2]+12>>2]](b,16);Ra[H[H[b>>2]+8>>2]](b,H[a+40>>2],H[a+36>>2]<<2)}}function UK(a,b){var c=0;c=R6(Gw(b,H[a+8>>2]<<3,1),H[a>>2],H[a+8>>2]<<2);Lw(b,H[a>>2]);H[a>>2]=c;H[a+8>>2]=H[a+8>>2]<<1}function Ni(a){a=a|0;a=H[((J[a+4>>1]<<2)+73232|0)+72>>2]+a|0;return I[(H[((H[a+4>>2]>>>22&60)+76348|0)+12>>2]+a|0)+7|0]}function Fo(a){a=a|0;var b=0;if(I[a+64|0]){b=H[a+32>>2];H[a+32>>2]=H[a+40>>2];H[a+24>>2]=H[a+60>>2];F[a+36|0]=(b|0)!=0}}function Ef(a){a=a|0;var b=0,c=0;b=H[a+8>>2];if(b){c=J[b+4>>1]!=6}a=H[a+12>>2];if(a){a=J[a+4>>1]!=6}else{a=0}return c|a}function w1(a,b,c){a=a|0;b=b|0;c=c|0;H[(H[a+80>>2]+(b<<2)|0)+80>>2]=c;F[a+84|0]=1;a=H[a+76>>2];Ra[H[H[a>>2]+36>>2]](a)}function ml(a){a=a|0;var b=0;H[a+12>>2]=106528;H[a>>2]=106424;Im(H[33772],a);b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,a)}function mb(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=H[a>>2];a=H[a+4>>2];b=(a>>1)+b|0;if(a&1){d=H[d+H[b>>2]>>2]}Ra[d|0](b,c)}function Xx(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=O(d);e=O(e);f=O(f);g=O(g);h=O(h);i=i|0;return Wx(a,b,c,d,e,h,i,2)|0}function Vx(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=O(d);e=O(e);f=O(f);g=O(g);h=O(h);i=i|0;return Wx(a,b,c,d,e,h,i,1)|0}function TD(a){a:{a=H[a>>2];if(!a){break a}a=H[a+32>>2];if(!a){break a}while(1){_Q(a);a=H[a>>2];if(a){continue}break}}}function K$(a,b){a=a|0;b=b|0;Ra[H[H[b>>2]+12>>2]](b,128);Ra[H[H[b>>2]+8>>2]](b,H[a+200>>2],N(H[a+192>>2],112));v$(a,b)}function $V(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=O(e);f=f|0;g=g|0;h=h|0;o5(H[33808],8,5852,538,66723,0);return 0}function tb(a,b){a=a|0;b=b|0;var c=0;c=H[a>>2];a=H[a+4>>2];b=(a>>1)+b|0;if(a&1){c=H[c+H[b>>2]>>2]}return Ra[c|0](b)|0}function Rc(a,b){a=a|0;b=b|0;var c=0;c=Oa-16|0;Oa=c;H[c+8>>2]=b;a=Ra[a|0](c+8|0)|0;na(H[c+8>>2]);Oa=c+16|0;return a|0}function vk(a,b){a=a|0;b=b|0;if(I[a+14|0]&128){return H[(H[a+16>>2]+(b<<2)|0)+348>>2]}return I[((a+20|0)+b|0)+262|0]}function pb(a,b){a=a|0;b=b|0;var c=0;c=Oa-16|0;Oa=c;Ra[H[H[a>>2]+216>>2]](c+8|0,a);Oa=c+16|0;return(I[c+8|0]&b)!=0|0}function XS(a,b){a=a|0;b=b|0;H[a+16>>2]=H[b>>2];if(!H[b>>2]){b=H[a+12>>2];if(b){Ra[H[H[b>>2]+4>>2]](b)}H[a+12>>2]=0}}function Sl(a,b){var c=0;Ra[H[H[b>>2]+12>>2]](b)|0;c=a+2440|0;H[c>>2]=H[c>>2]-1;a=a+2448|0;H[b>>2]=H[a>>2];H[a>>2]=b}function FT(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;GT(c,L[a+40>>2],L[a+44>>2],L[b+276>>2],L[b+288>>2],b+260|0,d,e)}function Gn(a,b,c){a=a|0;b=b|0;c=c|0;a=J[(H[a+316>>2]&512?H[a+56>>2]+136|0:a+110|0)>>1];H[c>>2]=a>>>8;H[b>>2]=a&255}function nw(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;ow(H[a+444>>2],d,a+112|0,b,e,g,c,f,h)}function $R(a,b){a=a|0;b=b|0;G[b+2>>1]=J[a+412>>1];G[b+4>>1]=J[a+414>>1];G[b>>1]=J[a+418>>1];G[b+6>>1]=J[a+416>>1]}function wI(a,b){if(!H[b+48>>2]){a=xI(a,H[b+28>>2],H[b+32>>2],H[b+44>>2]&476);G[a+4>>1]=J[a+4>>1]+1;H[b+48>>2]=a}}function pW(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;if(!I[135096]){F[135096]=1;o5(H[33808],8,16299,175,56965,0)}}function lQ(a){a=a|0;var b=0,c=0;c=H[a+20>>2];a=H[a+28>>2];b=H[a+980>>2];S6(H[b+160>>2],0,H[b+164>>2]<<2);sO(a,c)}function ee(a,b){a=a|0;b=b|0;var c=0,d=O(0);c=o6(12);d=L[a>>2];L[c+8>>2]=L[b>>2];L[c+4>>2]=d;H[c>>2]=2;return c|0}function _c(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=O(e);f=f|0;g=g|0;h=h|0;return Ra[H[a>>2]](b,c,d,e,f,g,h)|0}function hp(a,b){a=a|0;b=b|0;if(!I[b+48|0]){o5(H[33808],4,9281,453,58228,0);return}dp(a,H[b+44>>2],H[b+40>>2],b)}function Zz(a,b,c){a=a|0;b=b|0;c=c|0;if(b){c=0;while(1){Sz((c<<5)+a|0);c=c+1|0;if((c|0)!=(b|0)){continue}break}}}function Wz(a,b,c){a=a|0;b=b|0;c=c|0;if(b){c=0;while(1){Rz((c<<5)+a|0);c=c+1|0;if((c|0)!=(b|0)){continue}break}}}function Ge(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;return Ra[H[a>>2]](b,c,d,e,f,g,h)|0}function jh(a,b,c){a=a|0;b=b|0;c=c|0;a=J[(H[a+16>>2]&32?H[a+20>>2]+20|0:a+40|0)>>1];H[c>>2]=a>>>8;H[b>>2]=a&255}function Ks(a,b){a=a|0;b=b|0;H[a>>2]=H[b+48>>2];H[a+4>>2]=H[b+52>>2];H[a+8>>2]=H[b+56>>2];H[a+12>>2]=H[b+60>>2]}function Js(a,b){a=a|0;b=b|0;H[a+48>>2]=H[b>>2];H[a+52>>2]=H[b+4>>2];H[a+56>>2]=H[b+8>>2];H[a+60>>2]=H[b+12>>2]}function Ad(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=a,e=oa((F[b+11|0]<0?H[b>>2]:b)|0,100188,H[c>>2])|0,H[d>>2]=e}function xQ(a){a=a|0;var b=0;H[a>>2]=123460;H[H[a+44>>2]>>2]=0;WI(a);b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,a)}function t6(a,b,c){if(!c){return H[a+4>>2]==H[b+4>>2]}if((a|0)==(b|0)){return 1}return!_5(H[a+4>>2],H[b+4>>2])}function t2(a,b,c){a=a|0;b=b|0;c=c|0;a=H[a+76>>2];if(a){Ra[H[H[a>>2]+28>>2]](a,b,c);return}H[b>>2]=0;H[c>>2]=0}function r2(a,b){a=a|0;b=b|0;a=1;a:{if(!_5(2260,b)){break a}if(!_5(2054,b)){break a}a=!_5(b,18401)}return a|0} -function Sc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=a,e=oa((F[b+11|0]<0?H[b>>2]:b)|0,99672,H[c>>2])|0,H[d>>2]=e}function Qp(a,b){a=a|0;b=b|0;if(!I[a+4801|0]){H[H[a+1020>>2]+308>>2]=b;return}o5(H[33808],2,16043,542,58958,0)}function Qk(a,b){a=a|0;b=b|0;a=1;a:{if(!_5(2062,b)){break a}if(!_5(18408,b)){break a}a=!_5(b,18401)}return a|0}function Mp(a,b){a=a|0;b=b|0;if(!I[a+4801|0]){H[H[a+1020>>2]+120>>2]=b;return}o5(H[33808],2,16043,529,59522,0)}function Cd(){var a=0,b=0;a=o6(16);b=a+8|0;H[b>>2]=0;H[b+4>>2]=0;H[a>>2]=0;H[a+4>>2]=0;H[a+8>>2]=-1;return a|0}function o4(a,b){a=a|0;b=b|0;a=1;a:{if(!_5(2222,b)){break a}if(!_5(2054,b)){break a}a=!_5(b,18401)}return a|0}function lE(a,b,c,d){b=(b<<3)+a|0;L[b- -64>>2]=d;L[b+60>>2]=c;F[a+273|0]=I[a+273|0]|16;a=H[a>>2];if(a){oE(a)}}function c5(a,b){a=a|0;b=b|0;a=1;a:{if(!_5(2082,b)){break a}if(!_5(2054,b)){break a}a=!_5(b,18401)}return a|0}function X3(a,b){a=a|0;b=b|0;a=1;a:{if(!_5(2192,b)){break a}if(!_5(2054,b)){break a}a=!_5(b,18401)}return a|0}function PD(a,b){var c=0;b=N(b,36)+a|0;a=H[b>>2];if(!(!a|H[b+28>>2]!=1)){c=Ra[H[H[a>>2]+76>>2]](a)|0}return c}function Og(a,b){a=a|0;b=b|0;var c=0;a=H[a+24>>2];if(a){c=H[a>>2];Ra[H[H[c>>2]+68>>2]](c,H[a+4>>2]+1052|0,b)}}function M4(a,b){a=a|0;b=b|0;a=1;a:{if(!_5(2120,b)){break a}if(!_5(2054,b)){break a}a=!_5(b,18401)}return a|0}function Lg(a,b){a=a|0;b=b|0;var c=0;a=H[a+24>>2];if(a){c=H[a>>2];Ra[H[H[c>>2]+56>>2]](c,H[a+4>>2]+1052|0,b)}}function KL(a){a=a|0;var b=0;b=H[a+28>>2];Ra[H[H[b>>2]+20>>2]](b);a=H[a+20>>2];if(a){Ra[H[H[a>>2]+20>>2]](a)}}function I3(a,b){a=a|0;b=b|0;a=1;a:{if(!_5(2156,b)){break a}if(!_5(2054,b)){break a}a=!_5(b,18401)}return a|0}function y4(a,b,c){a=a|0;b=O(b);c=c|0;L[H[a+80>>2]+80>>2]=b;if(c){O1(a)}a=H[a+76>>2];Ra[H[H[a>>2]+36>>2]](a)}function eb(a,b){a=a|0;b=b|0;var c=0;c=H[a>>2];a=H[a+4>>2];b=(a>>1)+b|0;if(a&1){c=H[c+H[b>>2]>>2]}Ra[c|0](b)}function _L(a){a=a|0;var b=0;b=H[a+20>>2];if(b){Ra[H[H[b>>2]+20>>2]](b)}a=H[a+36>>2];Ra[H[H[a>>2]+20>>2]](a)}function _D(a,b){F[a+36|0]=I[b|0];a=H[a>>2];if(a){b=F[b|0]&1;if(H[a+16>>2]){F[H[H[a+12>>2]+16>>2]+159|0]=b}}}function Vr(a,b,c){a=a|0;b=b|0;c=c|0;a=sg(b);return H[(JT(a,c)<<2)+(J[a+12>>1]==1?a+8|0:H[a+8>>2])>>2]>>>1|0}function Vp(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;a=H[H[a+1012>>2]+272>>2];return Ra[H[H[a>>2]+16>>2]](a,b,c,d)|0}function qJ(a,b){a=a|0;b=b|0;var c=0,d=0;c=H[a+72>>2]+N(b,20)|0;d=H[c+4>>2]-1|0;H[c+4>>2]=d;if(!d){fJ(a,b)}}function lc(a,b,c){a=a|0;b=b|0;c=c|0;a=H[a>>2]+b|0;L[a>>2]=L[c>>2];L[a+4>>2]=L[c+4>>2];L[a+8>>2]=L[c+8>>2]}function ce(a,b){a=a|0;b=O(b);var c=0;c=Oa-16|0;Oa=c;L[c+12>>2]=b;a=Ra[a|0](c+12|0)|0;Oa=c+16|0;return a|0}function KT(a,b){var c=0,d=0;c=J[a+4>>1];if(c>>>0>=2){d=b;b=H[b+4>>2]+15&-16;H[d+4>>2]=b+(c<<2);H[a>>2]=b}}function fS(a){var b=0;a:{if(!I[a+4|0]){break a}b=H[a>>2];if(!b){break a}if(b){dT(H[a+8>>2],b)}}H[a>>2]=0}function Lc(a,b){a=a|0;b=b|0;var c=0;c=Oa-16|0;Oa=c;H[c+12>>2]=b;a=Ra[a|0](c+12|0)|0;Oa=c+16|0;return a|0}function EG(a,b){var c=0;c=Oa-16|0;Oa=c;H[c+12>>2]=b;Pf(a+296|0,c+12|0);F[b+68|0]=I[b+68|0]&254;Oa=c+16|0}function Uo(a){a=a|0;if(I[a+5580|0]&2){return O(L[a+5560>>2])}return O(O(-L[H[(a+32|0)+1004>>2]+84>>2]))}function Qg(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;a=H[a+24>>2];if(a){a=H[a>>2];Ra[H[H[a>>2]+80>>2]](a,b,c,d)}}function wb(a,b){a=a|0;b=b|0;var c=0;c=Oa-16|0;Oa=c;F[c+8|0]=b;Ra[H[H[a>>2]+284>>2]](a,c+8|0);Oa=c+16|0}function gu(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;return AY(a,b,c,d,e,g,h)|0}function V_(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=Oa-16|0;Oa=d;a=S_(a-4|0,b,c,d+12|0);Oa=d+16|0;return a|0}function P_(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=Oa-16|0;Oa=d;a=M_(a-4|0,b,c,d+12|0);Oa=d+16|0;return a|0}function G_(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=Oa-16|0;Oa=d;a=D_(a-4|0,b,c,d+12|0);Oa=d+16|0;return a|0}function zd(a){a=a|0;var b=0;b=o6(12);F[b+4|0]=0;H[b+8>>2]=H[a>>2];H[a>>2]=0;H[b>>2]=100708;return b|0}function wL(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=O(d);e=e|0;pL((H[a>>2]<<5)+b|0,O(-3.4028234663852886e38),d)}function pG(a){if(K[a+152>>2]>=4294967294){RN(H[a+40>>2],a);bG(a)}dF(H[H[a+40>>2]+1e3>>2],H[a+144>>2])}function cd(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;return Ra[H[a>>2]](b,c,d,e,f,g)|0}function K5(a){a=a|0;var b=0,c=0;a=H[a+4>>2];b=X6(a)+1|0;c=M6(b);if(c){a=R6(c,a,b)}else{a=0}return a|0}function td(){var a=0;a=o6(20);H[a>>2]=0;H[a+4>>2]=0;G[a+16>>1]=3;H[a+8>>2]=0;H[a+12>>2]=0;return a|0}function su(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;return lY(a,b,c,d,e,g)|0}function qu(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;return oY(a,b,c,d,e,g)|0}function nu(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;return $X(a,b,c,d,e,g)|0}function Qc(a){a=a|0;var b=0;b=o6(12);F[b+4|0]=0;H[b+8>>2]=H[a>>2];H[a>>2]=0;H[b>>2]=99740;return b|0}function PO(a,b,c,d){var e=0;b=b+2528|0;e=H[b+(c<<2)>>2];F[a+1|0]=H[b+(d<<2)>>2]>>>c&1;F[a|0]=e>>>d&1}function p4(a){a=a|0;var b=0;b=Oa-32|0;Oa=b;Ra[H[H[a>>2]+40>>2]](b,a);Oa=b+32|0;return O(L[b+16>>2])}function h5(a){var b=0;b=H[a>>2];if(!((b|0)==(a+4|0)|!b)){a=H[33808]+12|0;Ra[H[H[a>>2]+12>>2]](a,b)}}function Op(a,b){a=a|0;b=b|0;if(!I[a+4801|0]){H[a+2380>>2]=b;return}o5(H[33808],2,16043,555,59725,0)}function ES(a,b,c){a=a|0;b=b|0;c=c|0;a=H[a+8>>2];if(!a){return 0}return Ra[H[H[a>>2]+4>>2]](a,b,c)|0}function qt(a,b,c){b=JT(a,b);H[c>>2]=H[a+16>>2];return H[(b<<2)+(J[a+12>>1]==1?a+8|0:H[a+8>>2])>>2]}function et(a){var b=0,c=0;b=a-16|0;c=H[b>>2]-1|0;H[b>>2]=c;if(!c){a=a-20|0;Ra[H[H[a>>2]+8>>2]](a)}}function U_(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=Oa-16|0;Oa=d;a=S_(a,b,c,d+12|0);Oa=d+16|0;return a|0}function O_(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=Oa-16|0;Oa=d;a=M_(a,b,c,d+12|0);Oa=d+16|0;return a|0}function KQ(a){var b=0;b=H[a+60>>2];if((b|0)!=-1){gF(H[H[H[a+4>>2]+40>>2]+1e3>>2],b);H[a+60>>2]=-1}}function F_(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=Oa-16|0;Oa=d;a=D_(a,b,c,d+12|0);Oa=d+16|0;return a|0}function Yr(a){a=a|0;var b=0;H[a+16>>2]=0;H[a>>2]=110900;b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,a)}function rl(a){a=a|0;var b=0;b=H[a+16>>2]-1|0;H[a+16>>2]=b;if(!b){Ra[H[H[a+12>>2]+8>>2]](a+12|0)}}function q4(a){a=a|0;var b=0;b=Oa-16|0;Oa=b;Ra[H[H[a>>2]+44>>2]](b,a);Oa=b+16|0;return O(L[b>>2])}function at(a,b){H[a+16>>2]=H[a+16>>2]+1;if(H[a+196>>2]<0){H[a+20>>2]=b}H[a+196>>2]=H[a+196>>2]+1}function Tq(a){a=a|0;if(I[a+5580|0]&128){return H[a+5568>>2]}return H[H[(a+32|0)+1004>>2]+108>>2]}function Bg(a){a=a|0;a=H[a+24>>2];if(a){a=H[a>>2];a=Ra[H[H[a>>2]+28>>2]](a)|0}else{a=0}return a|0}function _x(a){a=a|0;var b=0;Ra[H[H[a>>2]+28>>2]](a)|0;b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,a)}function Rq(a){a=a|0;if(I[a+5580|0]&16){return H[a+5568>>2]}return H[H[(a+32|0)+1004>>2]+104>>2]}function mX(a){a=a|0;var b=0;b=H[a+12>>2]-1|0;H[a+12>>2]=b;if(!b){Ra[H[H[a+8>>2]+8>>2]](a+8|0)}}function Lz(a){a=a|0;var b=0;Ra[H[H[a>>2]+4>>2]](a)|0;b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,a)}function L6(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(t6(a,H[b+8>>2],f)){D6(b,c,d,e)}}function KH(a){a=a|0;var b=0;H[a>>2]=115704;XG(a+8|0);b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,a)}function AM(a){a=a|0;var b=0;b=H[a+20>>2];Ra[H[H[a>>2]>>2]](a)|0;if(b){Ra[H[H[b>>2]+20>>2]](b)}}function e4(a,b){a=a|0;b=b|0;G[H[a+80>>2]+116>>1]=J[b>>1];a=H[a+76>>2];Ra[H[H[a>>2]+36>>2]](a)}function Jg(a,b,c){a=a|0;b=b|0;c=c|0;a=H[a+24>>2];if(a){a=H[a>>2];Ra[H[H[a>>2]+48>>2]](a,b,c)}}function Ig(a,b,c){a=a|0;b=b|0;c=c|0;a=H[a+24>>2];if(a){a=H[a>>2];Ra[H[H[a>>2]+44>>2]](a,b,c)}}function B3(a,b){a=a|0;b=b|0;G[H[a+80>>2]+100>>1]=J[b>>1];a=H[a+76>>2];Ra[H[H[a>>2]+36>>2]](a)}function vG(a,b){a=H[a+32>>2];if(a){while(1){aR(a,1,b);$Q(a);a=H[a>>2];if(a){continue}break}}}function nj(a){a=a|0;H[a>>2]=103952;H[a>>2]=104256;ht(a+20|0);H[a>>2]=104560;wg(a);return a|0}function hn(a){a=a|0;H[a>>2]=107400;H[a>>2]=107752;ht(a+20|0);H[a>>2]=108104;wg(a);return a|0}function d7(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;a=Ra[a|0](b,c,d,e)|0;La(Qa|0);return a|0}function Wn(a){a=a|0;H[a>>2]=108772;H[a>>2]=108976;ht(a+20|0);H[a>>2]=109116;wg(a);return a|0}function $K(a){a=a|0;var b=0;Ra[H[H[a>>2]>>2]](a)|0;b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,a)}function uv(a){a=a|0;S6(H[a+124>>2],0,N(H[a+128>>2],48));S6(H[a+112>>2],0,N(H[a+128>>2],48))}function bj(a,b){a=a|0;b=b|0;L[a>>2]=L[b+296>>2];L[a+4>>2]=L[b+300>>2];L[a+8>>2]=L[b+304>>2]}function aj(a,b){a=a|0;b=b|0;L[a>>2]=L[b+284>>2];L[a+4>>2]=L[b+288>>2];L[a+8>>2]=L[b+292>>2]}function BV(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;o5(H[33808],8,6e3,586,66853,0);return 0}function mU(a,b){var c=0;c=Oa-16|0;Oa=c;H[c+12>>2]=b;a=Pf(a+88|0,c+12|0);Oa=c+16|0;return a}function jx(a,b){a=a|0;b=b|0;a=N(H[a+76>>2],24)+a|0;return Ra[H[H[a+28>>2]>>2]](a+28|0,b)|0}function hl(a,b){a=a|0;b=b|0;return O(L[(b<<2)+(I[a+14|0]&64?H[a+16>>2]+324|0:a+248|0)>>2])}function gl(a,b){a=a|0;b=b|0;return O(L[(b<<2)+(I[a+14|0]&64?H[a+16>>2]+300|0:a+224|0)>>2])}function rM(a){a=a|0;var b=0;b=H[a+28>>2];a=H[H[a+32>>2]+368>>2];H[b>>2]=H[a>>2];H[a>>2]=b}function r5(){var a=0;a=H[33810];if(a){H[33810]=a-1;return}o5(H[33808],8,7612,216,58462,0)}function q5(){var a=0;a=H[33810];if(a){H[33810]=a+1;return}o5(H[33808],8,7612,201,58507,0)}function lU(a,b){var c=0;c=Oa-16|0;Oa=c;H[c+12>>2]=b;a=Pf(a+8|0,c+12|0);Oa=c+16|0;return a}function kE(a,b,c){L[((b<<2)+a|0)+228>>2]=c;F[a+273|0]=I[a+273|0]|8;a=H[a>>2];if(a){oE(a)}}function jf(a,b,c){a=a|0;b=b|0;c=c|0;F[((a<<5)+134032|0)+b|0]=c;F[((b<<5)+134032|0)+a|0]=c}function jE(a,b,c){L[((b<<2)+a|0)+204>>2]=c;F[a+273|0]=I[a+273|0]|4;a=H[a>>2];if(a){oE(a)}}function $k(a){a=a|0;if(I[a+12|0]&128){return O(L[H[a+16>>2]+96>>2])}return O(L[a+288>>2])}function z4(a,b){a=a|0;b=O(b);L[H[a+80>>2]+124>>2]=b;a=H[a+76>>2];Ra[H[H[a>>2]+36>>2]](a)}function xk(a){a=a|0;if(I[a+12|0]&64){return O(L[H[a+16>>2]+92>>2])}return O(L[a+272>>2])}function od(a,b){a=a|0;b=b|0;L[a>>2]=L[b+16>>2];L[a+4>>2]=L[b+20>>2];L[a+8>>2]=L[b+24>>2]}function md(a,b){a=a|0;b=b|0;L[a>>2]=L[b+28>>2];L[a+4>>2]=L[b+32>>2];L[a+8>>2]=L[b+36>>2]}function hG(a,b,c){a=H[a+32>>2];if(a){while(1){bR(a,b,c);a=H[a>>2];if(a){continue}break}}}function b4(a,b){a=a|0;b=O(b);L[H[a+80>>2]+108>>2]=b;a=H[a+76>>2];Ra[H[H[a>>2]+36>>2]](a)}function Zs(a,b){a=a|0;b=b|0;var c=0;c=Oa-16|0;Oa=c;F[c+8|0]=I[b|0];Xs(a,c+8|0);Oa=c+16|0}function WI(a){a=a|0;H[a>>2]=116180;SG(H[H[a+40>>2]+2372>>2],H[a+48>>2]);UD(a);return a|0}function TR(a,b){a=a|0;b=b|0;L[a>>2]=L[b+36>>2];L[a+4>>2]=L[b+40>>2];L[a+8>>2]=L[b+44>>2]}function T1(a,b){a=a|0;b=O(b);L[H[a+80>>2]+468>>2]=b;a=H[a+76>>2];Ra[H[H[a>>2]+36>>2]](a)}function R1(a,b){a=a|0;b=O(b);L[H[a+80>>2]+472>>2]=b;a=H[a+76>>2];Ra[H[H[a>>2]+36>>2]](a)}function Pj(a,b){a=a|0;b=b|0;if(H[a+24>>2]){a=H[33808];Ra[H[H[a+12>>2]+12>>2]](a+12|0,b)}}function Pd(a,b){a=a|0;b=b|0;var c=0;c=o6(4);H[c>>2]=b;Ra[H[H[a>>2]+100>>2]](a,c,1);N6(c)}function B4(a,b){a=a|0;b=O(b);L[H[a+80>>2]+120>>2]=b;a=H[a+76>>2];Ra[H[H[a>>2]+36>>2]](a)}function $3(a,b){a=a|0;b=O(b);L[H[a+80>>2]+112>>2]=b;a=H[a+76>>2];Ra[H[H[a>>2]+36>>2]](a)}function y3(a,b){a=a|0;b=O(b);L[H[a+80>>2]+96>>2]=b;a=H[a+76>>2];Ra[H[H[a>>2]+36>>2]](a)}function we(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 Ra[a|0](b,c,d,e,f)|0}function w3(a,b){a=a|0;b=O(b);L[H[a+80>>2]+92>>2]=b;a=H[a+76>>2];Ra[H[H[a>>2]+36>>2]](a)}function u3(a,b){a=a|0;b=O(b);L[H[a+80>>2]+88>>2]=b;a=H[a+76>>2];Ra[H[H[a>>2]+36>>2]](a)}function s3(a,b){a=a|0;b=O(b);L[H[a+80>>2]+84>>2]=b;a=H[a+76>>2];Ra[H[H[a>>2]+36>>2]](a)}function q3(a,b){a=a|0;b=O(b);L[H[a+80>>2]+80>>2]=b;a=H[a+76>>2];Ra[H[H[a>>2]+36>>2]](a)}function mj(a){a=a|0;a=H[a- -64>>2];if(a){a=H[a+144>>2]>>>7|0}else{a=33554431}return a|0}function Yd(){var a=0;a=o6(16);H[a+4>>2]=0;H[a+8>>2]=0;H[a>>2]=3;H[a+12>>2]=0;return a|0}function RY(a){a=a|0;var b=0;return(I[a+54|0]>64|I[H[a+56>>2]+18|0]>31?b:G[a+52>>1]<0)|0}function K2(a,b){a=a|0;b=O(b);L[H[a+80>>2]+12>>2]=b;a=H[a+76>>2];Ra[H[H[a>>2]+36>>2]](a)}function G$(a,b){a=a|0;b=b|0;a=H[a+68>>2];if(a){a=J[a+(b<<1)>>1]}else{a=65535}return a|0}function uL(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=O(d);e=O(e);f=f|0;sL((H[a>>2]<<5)+b|0,c,e)}function qL(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=O(d);e=O(e);f=f|0;pL((H[a>>2]<<5)+b|0,d,e)}function j7(a,b){var c=0,d=0;c=b&31;d=(-1>>>c&a)<>>a}function cc(a,b,c,d,e,f){a=a|0;b=b|0;c=O(c);d=O(d);e=O(e);f=O(f);Ra[H[a>>2]](b,c,d,e,f)}function Tp(a,b){a=a|0;b=b|0;a=H[H[a+1012>>2]+272>>2];return Ra[H[H[a>>2]+8>>2]](a,b)|0}function SP(a){a=a|0;var b=0;b=H[H[a+28>>2]+1012>>2];Ra[H[H[b>>2]+56>>2]](b,H[a+20>>2])}function I2(a,b){a=a|0;b=O(b);L[H[a+80>>2]+8>>2]=b;a=H[a+76>>2];Ra[H[H[a>>2]+36>>2]](a)}function G2(a,b){a=a|0;b=O(b);L[H[a+80>>2]+4>>2]=b;a=H[a+76>>2];Ra[H[H[a>>2]+36>>2]](a)}function hu(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;return 0} -function hF(a){a=a|0;var b=0;PE(H[a+32>>2]);b=H[a+32>>2];a=H[a+28>>2];UE(b,a+32|0,1,1)}function Cp(a){a=a|0;if(H[a+4656>>2]){o5(H[33808],2,9281,1448,57645,0)}return a+5828|0}function ps(a){a=a|0;var b=0;a=a-12|0;ms(a);b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,a)}function lq(a,b,c,d,e,f){a=a|0;b=O(b);c=c|0;d=d|0;e=e|0;f=f|0;hq(a,b,c,d,e,f,61909,1)}function ll(a){a=a|0;H[a>>2]=106528;a=a-12|0;H[a>>2]=106424;Im(H[33772],a);return a|0}function jq(a,b,c,d,e,f){a=a|0;b=O(b);c=c|0;d=d|0;e=e|0;f=f|0;hq(a,b,c,d,e,f,66398,3)}function fj(a,b){a=a|0;b=b|0;F[a|0]=I[(H[b+316>>2]&16384?H[b+56>>2]+268|0:b+108|0)|0]}function dk(a){a=a|0;var b=0;H[a>>2]=105916;b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,a)}function Zk(a){a=a|0;var b=0;H[a>>2]=106296;b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,a)}function Mn(a,b){a=a|0;b=b|0;F[a|0]=I[(H[b+316>>2]&16384?H[b+56>>2]+184|0:b+238|0)|0]}function Ld(a){a=a|0;var b=0;b=H[a+8>>2];if(b){N6(b);H[a+8>>2]=0}Ra[H[H[a>>2]>>2]](a)}function E2(a,b){a=a|0;b=O(b);L[H[a+80>>2]>>2]=b;a=H[a+76>>2];Ra[H[H[a>>2]+36>>2]](a)}function eE(a,b,c){F[(a+b|0)+262|0]=c;F[a+273|0]=I[a+273|0]|1;a=H[a>>2];if(a){oE(a)}}function Tg(a,b){a=a|0;b=b|0;a=H[a+24>>2];if(a){a=H[a>>2];Ra[H[H[a>>2]+96>>2]](a,b)}}function TS(a){a=a|0;var b=0;a=a-4|0;QS(a);b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,a)}function Pg(a,b){a=a|0;b=b|0;a=H[a+24>>2];if(a){a=H[a>>2];Ra[H[H[a>>2]+72>>2]](a,b)}}function Ng(a,b){a=a|0;b=b|0;a=H[a+24>>2];if(a){a=H[a>>2];Ra[H[H[a>>2]+64>>2]](a,b)}}function Mg(a,b){a=a|0;b=b|0;a=H[a+24>>2];if(a){a=H[a>>2];Ra[H[H[a>>2]+60>>2]](a,b)}}function Mb(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=O(d);e=O(e);return Ra[H[a>>2]](b,c,d,e)|0}function Dp(a){a=a|0;H[a+56>>2]=0;H[a+44>>2]=0;H[a+32>>2]=0;H[a+20>>2]=0;H[a+8>>2]=0}function vd(a,b){a=a|0;b=b|0;var c=0;a=H[a>>2];c=o6(2);G[c>>1]=J[a+b>>1];return c|0}function sk(a){a=a|0;if(I[a+14|0]&8){return H[H[a+16>>2]+136>>2]}return I[a+294|0]}function hk(a){a=a|0;if(F[a+14|0]&1){return H[H[a+16>>2]+132>>2]}return I[a+354|0]}function N2(a){a=a|0;a=H[a+76>>2];if(!a){return 0}return Ra[H[H[a>>2]+24>>2]](a)|0}function Mv(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;H[c>>2]=0;H[d>>2]=0;H[e>>2]=0}function n5(a){a=a|0;var b=0;a=i5(a);b=H[33808];Ra[H[H[b+12>>2]+12>>2]](b+12|0,a)}function iE(a,b){var c=0,d=O(0);L[a+336>>2]=b;c=a,d=a6(O(b*O(.25))),L[c+360>>2]=d}function gE(a,b){var c=0,d=O(0);L[a+320>>2]=b;c=a,d=a6(O(b*O(.25))),L[c+348>>2]=d}function br(a){a=a|0;a=Ra[H[H[a>>2]+388>>2]](a)|0;return Ra[H[H[a>>2]+4>>2]](a)|0}function Ol(a,b){var c=0;c=Oa-16|0;Oa=c;H[c+12>>2]=b;Pf(a+640|0,c+12|0);Oa=c+16|0}function EB(a,b){a=a|0;b=b|0;return H[a+7676>>2]+(H[H[a+7680>>2]+(b<<2)>>2]<<3)|0}function yR(a){a=a|0;var b=0;pT(a);b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,a-8|0)}function xR(a){a=a|0;var b=0;pT(a+8|0);b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,a)}function jj(a){a=a|0;return O(O(-L[(I[a+317|0]&8?H[a+56>>2]+172|0:a+156|0)>>2]))}function _s(a,b){a=a|0;b=b|0;F[a|0]=I[(H[b+36>>2]&64?H[b+40>>2]+52|0:b+112|0)|0]}function Ae(){var a=0;a=o6(8);H[a>>2]=1065353216;H[a+4>>2]=1092616192;return a|0}function z2(a,b,c){a=a|0;b=O(b);c=O(c);a=H[a+76>>2];Ra[H[H[a>>2]+60>>2]](a,b,c)}function qH(a){a=a|0;rH(H[a+28>>2],H[a+32>>2],H[a+36>>2],H[a+20>>2],H[a+40>>2])}function kv(a,b,c,d,e,f,g,h){a=a|0;b=O(b);c=O(c);d=d|0;e=e|0;f=f|0;g=g|0;h=O(h)}function kl(a){a=a|0;H[a+12>>2]=106528;H[a>>2]=106424;Im(H[33772],a);return a|0}function fR(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;a=H[a+4>>2];Ra[H[H[a>>2]>>2]](a,d)}function cD(a,b){a=a|0;b=b|0;return H[a+296>>2]+(H[H[a+300>>2]+(b<<2)>>2]<<3)|0}function bo(a){a=a|0;var b=0;b=H[a+48>>2];if(!(!b|I[b+4785|0])){At(b,a+48|0,0)}}function ao(a){a=a|0;var b=0;b=H[a+48>>2];if(!(!b|I[b+4785|0])){zt(b,a+48|0,0)}}function VZ(a,b,c){a=a|0;b=b|0;c=c|0;return H[a+60>>2]+(N(H[a+44>>2],b)+c<<2)|0}function TZ(a,b){a=a|0;b=b|0;return I[(H[a+60>>2]+(b<<1&-4)|0)+(b&1?3:2)|0]&127}function Ln(a){a=a|0;var b=0;b=H[a+48>>2];if(!(!b|I[b+4785|0])){At(b,a+48|0,1)}}function D2(a,b){a=a|0;b=b|0;var c=0;c=a;a=H[b+76>>2];Ra[H[H[a>>2]+44>>2]](c,a)}function wK(a){a=a|0;var b=0;a=vK(a);b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,a)}function tU(a){a=a|0;var b=0;a=rU(a);b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,a)}function tB(a){a=a|0;var b=0;a=sB(a);b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,a)}function sU(a){a=a|0;var b=0;a=pU(a);b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,a)}function rm(a){a=a|0;var b=0;a=pm(a);b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,a)}function os(a){a=a|0;var b=0;a=ms(a);b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,a)}function oj(a){a=a|0;H[a>>2]=104256;ht(a+20|0);H[a>>2]=104560;wg(a);return a|0}function jo(a){a=a|0;H[a>>2]=108976;ht(a+20|0);H[a>>2]=109116;wg(a);return a|0}function jU(a){a=a|0;var b=0;a=iU(a);b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,a)}function jQ(a){a=a|0;a=H[H[H[a+28>>2]+976>>2]+1024>>2];Ra[H[H[a>>2]+72>>2]](a)}function j3(a){a=a|0;var b=0;a=i3(a);b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,a)}function iD(a){a=a|0;var b=0;a=hD(a);b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,a)}function hj(a){a=a|0;return O(L[(I[a+316|0]&128?H[a+56>>2]+128|0:a+140|0)>>2])}function fG(a){a=a|0;var b=0;a=eG(a);b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,a)}function cK(a){a=a|0;var b=0;a=bK(a);b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,a)}function c3(a){a=a|0;var b=0;a=b3(a);b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,a)}function bh(a){a=a|0;var b=0;a=ah(a);b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,a)}function aB(a){a=a|0;var b=0;a=$A(a);b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,a)}function _l(a){a=a|0;var b=0;a=Zl(a);b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,a)}function _K(a){a=a|0;var b=0;a=ZK(a);b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,a)}function Up(a){a=a|0;a=H[H[a+1012>>2]+272>>2];return Ra[H[H[a>>2]+12>>2]](a)|0}function Un(a){a=a|0;H[a>>2]=107752;ht(a+20|0);H[a>>2]=108104;wg(a);return a|0}function Sp(a){a=a|0;a=H[H[a+1012>>2]+272>>2];return Ra[H[H[a>>2]+36>>2]](a)|0}function SS(a){a=a|0;var b=0;a=QS(a);b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,a)}function Oo(a){a=a|0;var b=0;a=Lo(a);b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,a)}function Kl(a){a=a|0;var b=0;a=Jl(a);b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,a)}function JQ(a){a=a|0;var b=0;a=IQ(a);b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,a)}function F5(a,b,c,d){var e=0;e=Oa-16|0;Oa=e;H[e+12>>2]=d;l6(a,b,c,d);Oa=e+16|0}function EC(a){a=a|0;var b=0;a=CC(a);b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,a)}function Br(a){a=a|0;var b=0;a=No(a);b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,a)}function $I(a){a=a|0;var b=0;a=_I(a);b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,a)}function yn(a){a=a|0;return O(L[(I[a+316|0]&64?H[a+56>>2]+124|0:a+212|0)>>2])}function x6(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if(t6(a,H[b+8>>2],0)){w6(b,c,d)}}function lj(a){a=a|0;return O(L[(I[a+317|0]&32?H[a+56>>2]+180|0:a+208|0)>>2])}function i7(a){var b=0;while(1){if(a){a=a-1&a;b=b+1|0;continue}break}return b}function KJ(a,b){a=a|0;b=b|0;if(b){a=H[33808]+12|0;Ra[H[H[a>>2]+12>>2]](a,b)}}function C2(a,b,c){a=a|0;b=b|0;c=c|0;a=H[a+76>>2];Ra[H[H[a>>2]+48>>2]](a,b,c)}function An(a){a=a|0;return O(L[(I[a+317|0]&16?H[a+56>>2]+176|0:a+216|0)>>2])}function A2(a,b,c){a=a|0;b=b|0;c=c|0;a=H[a+76>>2];Ra[H[H[a>>2]+64>>2]](a,b,c)}function zE(a,b,c,d,e){tE(a,d,c,0,e);H[(H[a+16>>2]+N(e>>>7|0,24)|0)+20>>2]=b}function rk(a){a=a|0;return O(L[(I[a+13|0]&64?H[a+16>>2]+124|0:a+356|0)>>2])}function ac(a,b,c,d,e){a=a|0;b=b|0;c=O(c);d=O(d);e=O(e);Ra[H[a>>2]](b,c,d,e)}function Us(a){a=a|0;return O(L[(I[a+36|0]&128?H[a+40>>2]+56|0:a+180|0)>>2])}function In(a){a=a|0;return O(L[(F[a+317|0]&1?H[a+56>>2]+132|0:a+172|0)>>2])}function Hk(a){a=a|0;return O(L[(I[a+13|0]&32?H[a+16>>2]+120|0:a+348|0)>>2])}function Fk(a){a=a|0;return O(L[(I[a+13|0]&16?H[a+16>>2]+116|0:a+344|0)>>2])}function Ff(a,b){a=a|0;b=b|0;a=H[a+56>>2];return Ra[H[H[a>>2]+20>>2]](a,b)|0}function zk(a){a=a|0;return O(L[(F[a+13|0]&1?H[a+16>>2]+100|0:a+332|0)>>2])}function xt(a,b){var c=0;c=Oa-16|0;Oa=c;H[c+12>>2]=b;Pf(a,c+12|0);Oa=c+16|0}function uc(){var a=0;a=o6(12);H[a+8>>2]=0;H[a>>2]=0;H[a+4>>2]=0;return a|0}function uX(a,b){a=a|0;b=b|0;if(!_5(18451,b)){return 1}return!_5(b,18401)|0}function sc(a){a=a|0;var b=0;if(a){b=H[a>>2];if(b){H[a+4>>2]=b;N6(b)}N6(a)}}function pk(a){a=a|0;return O(L[(I[a+13|0]&4?H[a+16>>2]+108|0:a+340|0)>>2])}function nk(a){a=a|0;return O(L[(I[a+12|0]&32?H[a+16>>2]+88|0:a+328|0)>>2])}function lk(a){a=a|0;return O(L[(I[a+12|0]&16?H[a+16>>2]+84|0:a+324|0)>>2])}function jl(a,b){a=a|0;b=b|0;if(!_5(17371,b)){return 1}return!_5(b,18401)|0}function hB(a,b){a=a|0;b=b|0;if(!_5(18432,b)){return 1}return!_5(b,18401)|0}function gt(a,b){a=a|0;b=b|0;if(!_5(18484,b)){return 1}return!_5(b,18401)|0}function gh(a,b){a=a|0;b=b|0;if(!_5(17408,b)){return 1}return!_5(b,18401)|0}function dg(a,b){a=a|0;b=b|0;if(!_5(17773,b)){return 1}return!_5(b,18401)|0}function be(a){a=a|0;var b=0;b=o6(8);L[b+4>>2]=L[a>>2];H[b>>2]=0;return b|0}function ZY(a,b){a=a|0;b=b|0;if(!_5(13438,b)){return 1}return!_5(b,18401)|0}function Xj(a,b){a=a|0;b=b|0;if(!_5(11615,b)){return 1}return!_5(b,18401)|0}function Ss(a){a=a|0;return O(L[(I[a+36|0]&32?H[a+40>>2]+48|0:a+176|0)>>2])}function Qs(a){a=a|0;return O(L[(I[a+36|0]&16?H[a+40>>2]+44|0:a+108|0)>>2])}function OZ(a,b){a=a|0;b=b|0;if(!_5(19517,b)){return 1}return!_5(b,18401)|0}function Hl(a,b){a=a|0;b=b|0;if(!_5(11982,b)){return 1}return!_5(b,18401)|0}function E$(a,b){a=a|0;b=b|0;if(!_5(13451,b)){return 1}return!_5(b,18401)|0}function Bk(a){a=a|0;return O(L[(I[a+13|0]&2?H[a+16>>2]+104|0:a+336|0)>>2])}function se(a,b,c){a=a|0;b=b|0;c=c|0;H[H[a>>2]+(b<<2)>>2]=H[c>>2];return 1}function mh(a){a=a|0;return O(L[(I[a+16|0]&16?H[a+20>>2]+16|0:a+48|0)>>2])}function lX(a){a=a|0;var b=0;b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,a-8|0)}function Zu(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;yv(H[a+100>>2],b,d,e)}function Ws(a){a=a|0;return O(L[(F[a+37|0]&1?H[a+40>>2]+60|0:a+184|0)>>2])}function Kg(a){a=a|0;a=H[a+24>>2];if(a){a=H[a>>2];Ra[H[H[a>>2]+52>>2]](a)}}function Jf(a,b){a=a|0;b=b|0;if(!_5(2284,b)){return 1}return!_5(b,18401)|0}function wO(a,b){if((H[a+8>>2]&2147483647)>>>0>>0){tO(a,b)}H[a+4>>2]=b}function ro(a,b){if((H[a+8>>2]&2147483647)>>>0>>0){qo(a,b)}H[a+4>>2]=b}function rf(a,b,c){a=a|0;b=b|0;c=c|0;H[b>>2]=H[a+8>>2];H[c>>2]=H[a+12>>2]}function pJ(a,b){a=a|0;b=b|0;a=H[a+72>>2]+N(b,20)|0;H[a+4>>2]=H[a+4>>2]+1}function gD(a,b){if((H[a+8>>2]&2147483647)>>>0>>0){aC(a,b)}H[a+4>>2]=b}function Wb(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;Ra[H[a>>2]](b,c,d,e)}function Nk(a){a=a|0;return I[(I[a+13|0]&128?H[a+16>>2]+128|0:a+353|0)|0]}function Lj(a){a=a|0;return O(L[(I[a+16|0]&8?H[a+20>>2]+12|0:a+44|0)>>2])}function Df(a){a=a|0;return O(L[(I[a+20|0]&8?H[a+24>>2]+20|0:a+84|0)>>2])}function $v(a,b){a=a|0;b=b|0;return O(L[(H[a+452>>2]+N(b,160)|0)+144>>2])}function xK(a,b){a=a|0;b=b|0;F[b+8|0]=1;H[b>>2]=256;H[b+4>>2]=0;return 1}function oh(a){a=a|0;return O(L[(I[a+16|0]&64?H[a+20>>2]:a+28|0)+24>>2])}function Yc(a,b,c){a=a|0;b=O(b);c=c|0;Ra[H[H[a>>2]+200>>2]](a,b,0,0,0,c)}function Bc(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Ra[H[a>>2]](b,c,d)|0}function AE(a,b,c){tE(a,0,0,1,c);H[(H[a+16>>2]+N(c>>>7|0,24)|0)+20>>2]=b}function wQ(a){a=a|0;H[a>>2]=123460;H[H[a+44>>2]>>2]=0;WI(a);return a|0}function go(a,b,c){a=a|0;b=b|0;c=c|0;if((b|0)==8){ho(a,c);b=8}Hi(a,b,c)}function Yo(a,b){a=a|0;b=b|0;H[a>>2]=H[(H[b+5580>>2]&4?5564:2392)+b>>2]}function Rn(a,b,c){a=a|0;b=b|0;c=c|0;if((b|0)==8){Sn(a,c);b=8}Hi(a,b,c)}function Jk(a){a=a|0;return I[(I[a+13|0]&8?H[a+16>>2]+112|0:a+352|0)|0]}function Fi(a,b,c){a=a|0;b=b|0;c=c|0;if((b|0)==8){Gi(a,c);b=8}Hi(a,b,c)}function FR(a,b){a=a|0;b=b|0;if((b|0)<=1){H[a+540>>2]=b}return(b|0)<2|0}function Cl(a,b){a=a|0;b=b|0;F[a+46|0]=I[a+46|0]&15|b<<4;Jm(H[33772],a)}function kX(a){a=a|0;var b=0;b=H[33808]+12|0;Ra[H[H[b>>2]+12>>2]](b,a)}function iK(a,b){a=a|0;b=b|0;H[b>>2]=0;H[b+4>>2]=0;F[b+8|0]=0;return 1}function KR(a){a=a|0;a=a+8|0;VS(H[a+520>>2],Ra[H[H[a>>2]+16>>2]](a)|0)}function $Q(a){if(H[a+36>>2]!=-1){kR(H[H[H[a+4>>2]+40>>2]+1152>>2],a)}}function nG(a){if(!H[a+160>>2]){eF(H[H[a+40>>2]+1e3>>2],H[a+144>>2])}}function PU(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 0}function El(a,b){a=a|0;b=b|0;F[a+46|0]=I[a+46|0]&240|b;Jm(H[33772],a)}function gR(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}function Dc(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Ra[a|0](b,c,d)|0}function yr(a){a=a|0;var b=0;b=H[a+16>>2];Ra[H[H[b>>2]+76>>2]](b,a)}function iq(a){a=a|0;var b=0;b=H[a+16>>2];Ra[H[H[b>>2]+72>>2]](b,a)}function Pv(a,b){a=a|0;b=b|0;return I[(H[a+456>>2]+N(b,80)|0)+76|0]}function Jj(a){a=a|0;return H[(I[a+16|0]&4?H[a+20>>2]:a+28|0)+8>>2]}function Hj(a){a=a|0;return H[(I[a+16|0]&2?H[a+20>>2]:a+28|0)+4>>2]}function y_(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;o_(b,d,a,c,e)}function v1(a,b){a=a|0;b=b|0;return H[(H[a+80>>2]+(b<<2)|0)+80>>2]}function rJ(a,b){a=a|0;b=b|0;return H[(H[a+72>>2]+N(b,20)|0)+4>>2]}function dS(a){a=a|0;return O(O(O(L[a+528>>2]*O(.5))+L[a+524>>2]))}function cS(a){a=a|0;return O(O(O(L[a+536>>2]*O(.5))+L[a+532>>2]))}function Xc(a,b){a=a|0;b=b|0;return Ra[H[H[a>>2]+220>>2]](a,b,0)|0}function Qd(a,b){a=a|0;b=b|0;var c=0;c=M6(4);H[c>>2]=b;H[a+8>>2]=c}function GM(a,b,c){a=a|0;b=O(b);c=c|0;Ra[H[H[a>>2]+136>>2]](a,b,c)}function zq(a,b){a=a|0;b=b|0;F[a+6354|0]=0;qq(a);if(b){H[b>>2]=0}}function hf(a,b){a=a|0;b=b|0;return I[((a<<5)+134032|0)+b|0]!=0|0}function ew(a,b,c){a=a|0;b=b|0;c=c|0;Ra[H[H[b>>2]+116>>2]](a,b,c)}function dv(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;F[d|0]=2;H[c>>2]=a|b}function KB(a){var b=0;b=H[a+588>>2];if(b){JB(a,b);H[a+588>>2]=0}}function Fj(a){a=a|0;return H[(F[a+16|0]&1?H[a+20>>2]:a+28|0)>>2]}function iT(a,b,c){a=a|0;b=b|0;c=O(c);L[a+132>>2]=c;F[a+136|0]=b}function fc(a,b,c,d){a=a|0;b=b|0;c=O(c);d=d|0;Ra[H[a>>2]](b,c,d)}function Yb(a,b,c){a=a|0;b=b|0;c=c|0;Ra[H[H[a>>2]+64>>2]](a,b,c)}function YM(a,b){a=a|0;b=b|0;b=H[b+28>>2];H[a>>2]=0;H[a+32>>2]=b}function Ar(a){a=a|0;a=H[a+20>>2];if(a){Ra[H[H[a>>2]+20>>2]](a)}}function xd(a){a=a|0;var b=0;b=o6(2);G[b>>1]=H[a>>2];return b|0}function vb(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;Ra[H[a>>2]](b,c,d)}function sb(a,b,c){a=a|0;b=b|0;c=O(c);return Ra[H[a>>2]](b,c)|0}function ht(a){var b=0;b=H[H[33768]+476>>2];IT(a,b);IT(a+8|0,b)}function qb(a,b,c){a=a|0;b=b|0;c=c|0;return Ra[H[a>>2]](b,c)|0}function jg(a,b){a=H[a+4>>2];if(a){Sf(H[H[a+36>>2]+4>>2],b,0)}}function ae(){var a=0;a=o6(8);H[a>>2]=0;H[a+4>>2]=0;return a|0}function Td(a){a=a|0;var b=0;b=o6(1);F[b|0]=H[a>>2];return b|0}function Px(a){return Mx(a,(N(H[a+136>>2],12)+a|0)+16|0,0,0,1)}function Al(a,b){a=a|0;b=b|0;G[a+44>>1]=J[b>>1];Jm(H[33772],a)}function y$(a){a=a|0;o5(H[33808],8,8502,220,61318,0);return 0}function rv(a,b,c,d,e,f){a=a|0;b=O(b);c=c|0;d=d|0;e=e|0;f=f|0}function kK(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return-1}function Zg(a,b,c){a=a|0;b=b|0;c=c|0;oi(H[H[a+96>>2]>>2],b,c)}function CV(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return 0}function CM(a,b,c,d){a=a|0;b=O(b);c=c|0;d=d|0;BM(a-8|0,b,c,d)}function ud(a,b,c){a=a|0;b=b|0;c=c|0;G[H[a>>2]+b>>1]=J[c>>1]}function sr(a,b){a=a|0;b=b|0;return I5(H[a+6068>>2],0-b|0)|0}function nq(a,b){a=a|0;b=b|0;return I5(H[a+6064>>2],0-b|0)|0}function mq(a,b){a=a|0;b=b|0;return I5(H[a+6060>>2],0-b|0)|0}function hJ(a,b){a=a|0;b=b|0;return H[H[a+72>>2]+N(b,20)>>2]}function bT(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;aT(a-4|0,b,b,d)}function JM(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;IM(a-8|0,b,c,d)}function Gp(a,b){a=a|0;b=b|0;H[H[(a+32|0)+1004>>2]+112>>2]=b}function ob(a,b){a=a|0;b=b|0;Ra[H[H[a>>2]+188>>2]](a,b,0,1)}function nb(a,b){a=a|0;b=b|0;Ra[H[H[a>>2]+192>>2]](a,b,0,1)}function fr(a){a=a|0;return O(L[H[(a+32|0)+1004>>2]+88>>2])}function XM(a,b){a=a|0;b=b|0;return H[a+60>>2]+(b<<1&-16)|0}function WM(a,b){a=a|0;b=b|0;return H[a+68>>2]+(b<<1&-16)|0}function Ir(a){a=a|0;H[a+16>>2]=0;H[a>>2]=110900;return a|0}function Fc(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;Ra[a|0](b,c,d)}function WC(a,b){a=a|0;b=b|0;H[a+280>>2]=0;H[a+272>>2]=b-3}function U6(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;Qa=0;return 0}function Tb(a,b){a=a|0;b=O(b);Ra[H[H[a>>2]+128>>2]](a,b)|0}function Sb(a,b){a=a|0;b=O(b);Ra[H[H[a>>2]+124>>2]](a,b)|0}function Rb(a,b){a=a|0;b=O(b);Ra[H[H[a>>2]+120>>2]](a,b)|0}function Pb(a,b){a=a|0;b=O(b);Ra[H[H[a>>2]+112>>2]](a,b)|0}function Ec(a,b,c){a=a|0;b=b|0;c=c|0;return Ra[a|0](b,c)|0}function wv(a,b){a=a|0;b=b|0;return H[a+148>>2]+N(b,28)|0}function wl(a,b){a=a|0;b=O(b);L[a+36>>2]=b;Jm(H[33772],a)}function ul(a,b){a=a|0;b=O(b);L[a+32>>2]=b;Jm(H[33772],a)}function jw(a,b){a=a|0;b=b|0;return H[a+496>>2]+N(b,28)|0}function d4(a,b){a=a|0;b=b|0;G[a>>1]=J[H[b+80>>2]+116>>1]}function X4(a,b){a=a|0;b=b|0;G[H[a+80>>2]+112>>1]=J[b>>1]}function W4(a,b){a=a|0;b=b|0;G[a>>1]=J[H[b+80>>2]+112>>1]}function Sy(a){a=a|0;ry(H[a+32>>2],H[a+28>>2],H[a+40>>2])}function Hp(a){a=a|0;return H[H[(a+32|0)+1004>>2]+112>>2]}function FH(a){a=a|0;xH(H[a+32>>2],H[a+20>>2],H[a+28>>2])}function E4(a,b){a=a|0;b=b|0;G[H[a+80>>2]+128>>1]=J[b>>1]}function D4(a,b){a=a|0;b=b|0;G[a>>1]=J[H[b+80>>2]+128>>1]}function A3(a,b){a=a|0;b=b|0;G[a>>1]=J[H[b+80>>2]+100>>1]}function xv(a,b){a=a|0;b=b|0;return H[a+160>>2]+(b<<4)|0}function pi(a,b){a=a|0;b=b|0;Ra[H[H[a>>2]+80>>2]](a,b,1)}function ol(a,b){a=a|0;b=b|0;H[a+48>>2]=a;Em(H[33772],a)}function ld(a,b){a=a|0;b=b|0;return O(O(Ra[H[a>>2]](b)))}function kw(a,b){a=a|0;b=b|0;return H[a+508>>2]+(b<<4)|0}function gr(a){a=a|0;return H[H[(a+32|0)+2168>>2]+56>>2]}function PH(a){a=a|0;H[a>>2]=115704;XG(a+8|0);return a|0}function Lr(a){a=a|0;H[a+20>>2]=H[a+20>>2]+1;F[a+92|0]=1}function CY(a){a=a|0;H[a>>2]=127444;BY(a+8|0);return a|0}function $Y(a){a=a|0;return H[a+56>>2]+N(I[a+55|0],20)|0}function ye(){var a=0;a=o6(4);H[a>>2]=101920;return a|0}function xb(a,b,c){a=a|0;b=b|0;c=O(c);L[H[a>>2]+b>>2]=c}function wr(a,b){a=a|0;b=b|0;Ra[H[H[a>>2]+236>>2]](a,b)}function uV(a,b){a=a|0;b=b|0;L[a>>2]=L[H[b+4>>2]+24>>2]}function s6(a,b,c){a=a|0;b=b|0;c=c|0;return t6(a,b,0)|0}function gn(a,b,c){a=a|0;b=b|0;c=c|0;an(H[33772],b,0,2)}function SD(a,b){F[a+10|0]=b;a=H[a>>2];if(a){YD(a,8,1)}}function OR(a,b){a=a|0;b=O(b);if(b>=O(0)){L[a+56>>2]=b}}function Me(){var a=0;a=o6(4);H[a>>2]=130420;return a|0}function yb(a,b){a=a|0;b=b|0;return O(L[H[a>>2]+b>>2])}function n2(a){a=a|0;a=H[a+76>>2];Ra[H[H[a>>2]>>2]](a)}function WR(a,b){a=a|0;b=O(b);if(b>O(0)){L[a+48>>2]=b}}function SR(a,b){a=a|0;b=O(b);if(b>O(0)){L[a+52>>2]=b}}function Qb(a,b,c){a=a|0;b=b|0;c=O(c);Ra[H[a>>2]](b,c)}function Ob(a,b){a=a|0;b=b|0;Ra[H[H[a>>2]+40>>2]](a,b)}function Kd(a,b){a=a|0;b=b|0;Ra[H[H[a>>2]+76>>2]](a,b)}function Jh(a,b){a=a|0;b=b|0;jt(a+20|0,b);hg(a+12|0,b)}function Jd(a,b){a=a|0;b=b|0;Ra[H[H[a>>2]+68>>2]](a,b)}function Hh(a,b){a=a|0;b=b|0;it(a+20|0,b);eg(a+12|0,b)}function Gb(a,b,c){a=a|0;b=b|0;c=c|0;H[H[a>>2]+b>>2]=c}function xc(a){a=a|0;return(H[a+4>>2]-H[a>>2]|0)/12|0}function qc(a,b,c){a=a|0;b=b|0;c=+c;M[H[a>>2]+b>>3]=c}function lb(a,b,c){a=a|0;b=b|0;c=c|0;Ra[H[a>>2]](b,c)}function jK(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return 0}function L$(a){a=a|0;return Ra[H[H[a>>2]+28>>2]](a)|0}function Gd(a){a=a|0;return(H[a+4>>2]-H[a>>2]|0)/48|0}function Bb(a,b,c){a=a|0;b=b|0;c=c|0;F[H[a>>2]+b|0]=c}function zb(a,b){a=a|0;b=b|0;H[a+84>>2]=b;return b|0}function yy(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0}function qj(a){a=a|0;H[a>>2]=104560;wg(a);return a|0}function ko(a){a=a|0;H[a>>2]=109116;wg(a);return a|0}function ed(a,b){a=a|0;b=b|0;return Ra[H[a>>2]](b)|0}function cJ(a,b){a=a|0;b=b|0;H[b+24>>2]=H[b+24>>2]+1}function Yq(a,b){a=a|0;b=b|0;Gx(H[a+1008>>2]+24|0,b)}function X2(a,b){a=a|0;b=b|0;H[b>>2]=0;return a-12|0}function Vn(a){a=a|0;H[a>>2]=108104;wg(a);return a|0}function Ab(a,b){a=a|0;b=b|0;H[a+88>>2]=b;return b|0}function yd(a){a=a|0;if(a){Ra[H[H[a>>2]+12>>2]](a)}}function rs(a){a=a|0;Ol(H[33768],a-12|0);Vl(a+20|0)}function rc(a,b){a=a|0;b=b|0;return+M[H[a>>2]+b>>3]}function f7(a){if(a){return 31-Q(a-1^a)|0}return 32}function c4(a){a=a|0;return O(L[H[a+80>>2]+108>>2])}function a4(a){a=a|0;return O(L[H[a+80>>2]+112>>2])}function Zb(a){a=a|0;if(a){Ra[H[H[a>>2]+16>>2]](a)}}function U1(a){a=a|0;return O(L[H[a+80>>2]+468>>2])}function S1(a){a=a|0;return O(L[H[a+80>>2]+472>>2])}function Oc(a){a=a|0;if(a){Ra[H[H[a>>2]+28>>2]](a)}}function Lp(a){a=a|0;return H[H[a+1008>>2]+1020>>2]}function Hb(a,b){a=a|0;b=b|0;return H[H[a>>2]+b>>2]}function Gm(a){a=a|0;return H[a+24>>2]-H[a+32>>2]|0}function GY(a){a=a|0;H[a>>2]=127444;BY(a+8|0);N6(a)}function EM(a,b,c){a=a|0;b=O(b);c=c|0;DM(a-8|0,b,c)}function C4(a){a=a|0;return O(L[H[a+80>>2]+120>>2])}function A4(a){a=a|0;return O(L[H[a+80>>2]+124>>2])}function z3(a){a=a|0;return O(L[H[a+80>>2]+96>>2])}function xe(a){a=a|0;if(a){Ra[H[H[a>>2]+4>>2]](a)}}function x3(a){a=a|0;return O(L[H[a+80>>2]+92>>2])}function v3(a){a=a|0;return O(L[H[a+80>>2]+88>>2])}function t3(a){a=a|0;return O(L[H[a+80>>2]+84>>2])}function r3(a){a=a|0;return O(L[H[a+80>>2]+80>>2])}function he(){var a=0;a=o6(4);H[a>>2]=1;return a|0}function _q(a){a=a|0;return H[H[a+1008>>2]+180>>2]}function Zq(a){a=a|0;return H[H[a+1008>>2]+176>>2]}function Rp(a){a=a|0;return H[H[a+1020>>2]+308>>2]}function RM(a,b,c){a=a|0;b=b|0;c=c|0;QM(a-8|0,b,c)}function PM(a,b,c){a=a|0;b=b|0;c=c|0;OM(a-8|0,b,b)}function Np(a){a=a|0;return H[H[a+1020>>2]+120>>2]}function L2(a){a=a|0;return O(L[H[a+80>>2]+12>>2])}function Db(a){a=a|0;if(a){Ra[H[H[a>>2]+8>>2]](a)}}function Cb(a,b){a=a|0;b=b|0;return I[H[a>>2]+b|0]}function AT(a){a=a|0;return H[a+20>>2]+H[a+8>>2]|0}function hx(a,b){a=a|0;b=b|0;return ix(a+4|0,b)|0}function R2(a,b){a=a|0;b=b|0;H[b>>2]=0;return a|0}function Ox(a,b){return Mx(a,b,a+176|0,a+172|0,1)}function JK(a){a=a|0;return H[H[a+88>>2]+4204>>2]}function J2(a){a=a|0;return O(L[H[a+80>>2]+8>>2])}function IK(a){a=a|0;return H[H[a+88>>2]+4208>>2]}function Hc(a,b,c){a=a|0;b=b|0;c=c|0;Ra[a|0](b,c)}function H2(a){a=a|0;return O(L[H[a+80>>2]+4>>2])}function $j(a,b){a=a|0;b=b|0;return!_5(b,18401)|0}function qe(a){a=a|0;return H[a+4>>2]-H[a>>2]>>2}function cp(a,b,c){a=a|0;b=b|0;c=c|0;dp(a,b,c,0)}function YO(a){a=a|0;return H[H[a+4>>2]+1160>>2]}function QQ(a,b,c,d,e,f){MQ(a);NQ(a,b,c,d,e,0,f)}function Gc(a,b){a=a|0;b=b|0;return Ra[a|0](b)|0}function e7(a,b,c,d){Ma(a|0,b|0,8,0,c|0,-1,d|0)}function cX(a,b){a=a|0;b=b|0;H[a>>2]=2139095039}function _6(a){a=a|0;a=Oa-a&-16;Oa=a;return a|0}function Wf(a,b){a=a|0;b=b|0;return Vf(a,b,1)|0}function RZ(a,b){a=a|0;b=b|0;G[a>>1]=J[b+68>>1]}function LE(a,b){if(b>>>0<=4294967167){KE(a,b)}}function Jp(a){a=a|0;return H[(a+32|0)+2344>>2]}function F2(a){a=a|0;return O(L[H[a+80>>2]>>2])}function Bl(a,b){a=a|0;b=b|0;G[a>>1]=J[b+44>>1]}function xm(a){a=a|0;return H[H[33768]+676>>2]}function vv(a,b,c){a=a|0;b=b|0;c=c|0;lv(a,b,c)}function rj(a,b,c){a=a|0;b=b|0;c=c|0;Hi(a,b,c)}function qs(a){a=a|0;Ol(H[33768],a);Vl(a+32|0)}function qi(a,b,c){a=a|0;b=b|0;c=c|0;oi(a,b,c)}function e6(a,b,c){if(!(I[a|0]&32)){T6(b,c,a)}}function ck(a){a=a|0;H[a>>2]=105916;return a|0}function Yk(a){a=a|0;H[a>>2]=106296;return a|0}function Um(a){a=a|0;return H[H[33768]+164>>2]}function Om(a){a=a|0;return H[H[33768]+124>>2]}function $s(a){a=a|0;return H[a+196>>2]>>>31|0}function ls(a,b,c){a=a|0;b=b|0;c=c|0;return 0}function kB(a,b){if(K[a+4>>2]>>0){jB(a,b)}}function c7(a){a=a|0;return(a<<8|a>>>8)&65535}function Wj(a){a=a|0;return(I[a+6|0]&2)>>>1|0}function Rm(a){a=a|0;return H[H[33768]+84>>2]}function Lm(a){a=a|0;return H[H[33768]+44>>2]}function F$(a,b){a=a|0;b=b|0;F[a|0]=I[b+64|0]}function Ag(a,b){a=a|0;b=b|0;F[a|0]=I[b+73|0]}function zz(a,b,c){a=a|0;b=b|0;c=c|0;Az(a,c)}function yK(a){a=a|0;return H[H[a+88>>2]>>2]}function wn(a){a=a|0;return H[a+312>>2]!=0|0}function sl(a){a=a|0;H[a+16>>2]=H[a+16>>2]+1}function l3(a){a=a|0;Ra[H[H[a>>2]+12>>2]](a)}function fF(a,b){LE(a+168|0,b);LE(a+640|0,b)}function eF(a,b){KE(a+168|0,b);KE(a+640|0,b)}function dF(a,b){yE(a+168|0,b);yE(a+640|0,b)}function aJ(a){a=a|0;Ra[H[H[a>>2]+48>>2]](a)}function _r(a){a=a|0;OD(H[a+28>>2]+5584|0,1)}function Zr(a){a=a|0;OD(H[a+28>>2]+5584|0,0)}function Ye(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0}function Y5(a){a=a|0;return Ga(H[a+60>>2])|0}function VY(a){a=a|0;H[a+12>>2]=H[a+12>>2]+1}function Fr(a){a=a|0;Ra[H[H[a>>2]+32>>2]](a)}function Bz(a,b,c){a=a|0;b=b|0;c=c|0;Cz(a,c)}function lr(a){a=a|0;return O(L[a+5148>>2])}function lK(a){a=a|0;Ra[H[H[a>>2]+4>>2]](a)}function cb(a){a=a|0;return H[H[a>>2]-4>>2]}function Rd(a){a=a|0;return H[H[a+8>>2]>>2]}function QZ(a){a=a|0;return O(L[a- -64>>2])}function Lq(a,b){a=a|0;b=b|0;H[a+5824>>2]=b}function Kb(a,b){a=a|0;b=b|0;Ra[H[a>>2]](b)}function GB(a,b){a=a|0;b=b|0;kB(a+7664|0,b)}function Dl(a){a=a|0;return I[a+46|0]>>>4|0}function xp(a,b){a=a|0;b=b|0;F[a+6355|0]=b}function wh(a,b){a=a|0;b=b|0;H[a+112>>2]=b}function kh(a){a=a|0;return I[a+72|0]!=0|0}function eD(a,b){a=a|0;b=b|0;kB(a+284|0,b)}function dA(a,b,c){a=a|0;b=b|0;c=c|0;eA(a)}function ct(a,b){a=a|0;b=b|0;H[a+192>>2]=b}function bS(a){a=a|0;return O(L[a+536>>2])}function bA(a,b,c){a=a|0;b=b|0;c=c|0;cA(a)}function aS(a){a=a|0;return O(L[a+532>>2])}function PS(a){a=a|0;return O(L[a+524>>2])}function N3(a,b){a=a|0;b=b|0;q5();return 1}function Hz(a,b,c){a=a|0;b=b|0;c=c|0;Iz(a)}function HS(a){a=a|0;return O(L[a+540>>2])}function Cn(a){a=a|0;return O(L[a+308>>2])}function Bn(a,b){a=a|0;b=O(b);ak(a+48|0,b)}function $M(a,b){a=a|0;b=b|0;H[a+104>>2]=b}function zy(a,b){a=a|0;b=b|0;H[a+48>>2]=b}function xl(a){a=a|0;return O(L[a+36>>2])}function vl(a){a=a|0;return O(L[a+32>>2])}function vj(a,b){a=a|0;b=b|0;ig(a+12|0,b)}function vR(a){a=a|0;pT(a+8|0);return a|0}function v5(a,b){a=a|0;b=b|0;F[a+188|0]=b}function uj(a,b){a=a|0;b=b|0;hg(a+12|0,b)}function tj(a,b){a=a|0;b=b|0;eg(a+12|0,b)}function qh(a){a=a|0;return O(L[a+68>>2])}function lT(a,b){a=a|0;b=b|0;F[a+139|0]=b}function kd(a){a=a|0;return O(L[a+40>>2])}function kT(a,b){a=a|0;b=b|0;F[a+138|0]=b}function jT(a,b){a=a|0;b=b|0;F[a+137|0]=b}function cN(a,b){a=a|0;b=b|0;H[a+96>>2]=b}function ZR(a,b){a=a|0;b=b|0;H[a+88>>2]=b}function W2(a,b){a=a|0;b=b|0;Q2(a-12|0,b)}function VR(a){a=a|0;return O(L[a+48>>2])}function V2(a,b){a=a|0;b=b|0;P2(a-12|0,b)}function RR(a){a=a|0;return O(L[a+52>>2])}function QR(a,b){a=a|0;b=b|0;H[a+16>>2]=b}function PR(a){a=a|0;return O(L[a+56>>2])}function Jv(a,b,c){R6(b,c,H[a+356>>2]<<2)}function Ci(a,b){a=a|0;b=b|0;H[a+12>>2]=b}function yp(a){a=a|0;return H[a+5980>>2]}function vr(a){a=a|0;return H[a+6092>>2]}function sJ(a,b){a=a|0;b=b|0;H[a+8>>2]=b}function qp(a){a=a|0;return H[a+6020>>2]}function or(a){a=a|0;return H[a+1044>>2]}function ns(a){a=a|0;return ms(a-12|0)|0}function ni(a,b){a=a|0;b=b|0;mi(a,b,0,1)}function m3(a,b){a=a|0;b=b|0;F[a+33|0]=b}function li(a,b){a=a|0;b=b|0;mi(a,b,1,0)}function fq(a){a=a|0;return H[a+2228>>2]}function er(a){a=a|0;return H[a+5648>>2]}function eq(a){a=a|0;return H[a+2224>>2]}function dr(a){a=a|0;return H[a+5612>>2]}function cr(a){a=a|0;return H[a+6096>>2]}function bN(a){a=a|0;a=a-8|0;ZM(a);N6(a)}function ar(a){a=a|0;return H[a+5616>>2]}function aq(a){a=a|0;return H[a+2220>>2]}function _p(a){a=a|0;return H[a+2208>>2]}function Zp(a){a=a|0;return H[a+2204>>2]}function X1(a){a=a|0;return V1(a-12|0)|0}function VM(a,b){a=a|0;b=b|0;UM(a-8|0,b)}function Pp(a){a=a|0;return H[a+2380>>2]}function Oq(a){a=a|0;return H[a+5700>>2]}function Mq(a){a=a|0;return H[a+5824>>2]}function LM(a,b){a=a|0;b=b|0;KM(a-8|0,b)}function Fl(a){a=a|0;return I[a+46|0]&15}function Ap(a){a=a|0;return H[a+5928>>2]}function $q(a){a=a|0;return H[a+1120>>2]}function $p(a){a=a|0;return H[a+2216>>2]}function zh(a){a=a|0;return H[a+108>>2]}function xy(a,b){a=a|0;b=b|0;return b|0}function xh(a){a=a|0;return H[a+112>>2]}function wR(a){a=a|0;pT(a);return a-8|0}function vs(a){a=a|0;return H[a+116>>2]}function uh(a){a=a|0;return H[a+100>>2]}function u$(a){a=a|0;return t$(a-8|0)|0}function oL(a){a=a|0;return H[a+236>>2]}function nL(a){a=a|0;return H[a+268>>2]}function mL(a){a=a|0;return H[a+272>>2]}function lL(a){a=a|0;return H[a+256>>2]}function kL(a){a=a|0;return H[a+260>>2]}function dt(a){a=a|0;return H[a+192>>2]}function aN(a){a=a|0;return ZM(a-8|0)|0}function Zh(a){a=a|0;return H[a+356>>2]}function Yh(a){a=a|0;return H[a+368>>2]}function Xh(a){a=a|0;return H[a+324>>2]}function XR(a){a=a|0;return H[a+488>>2]}function Wh(a){a=a|0;return H[a+320>>2]}function Wg(a){a=a|0;return H[a+124>>2]}function VC(a){a=a|0;DC(a);F[a+337|0]=1}function Uk(a){a=a|0;return H[a+396>>2]}function UH(a){a=a|0;return H[a+284>>2]}function Rk(a){a=a|0;return H[a+392>>2]}function RS(a){a=a|0;return QS(a-4|0)|0}function NR(a){a=a|0;return H[a+432>>2]}function HK(a){a=a|0;return H[a+104>>2]}function Fb(a){a=a|0;return Ra[a|0]()|0}function ER(a){a=a|0;return H[a+540>>2]}function $h(a){a=a|0;return H[a+364>>2]}function zr(a){a=a|0;return H[a+24>>2]}function zo(a){a=a|0;return H[a+44>>2]}function yo(a){a=a|0;return H[a+56>>2]}function xo(a){a=a|0;return H[a+52>>2]}function u5(a){a=a|0;return I[a+188|0]}function tl(a){a=a|0;return H[a+16>>2]}function pV(a,b){a=a|0;b=b|0;H[a>>2]=0}function Z2(a){a=a|0;return H[a+68>>2]}function Yf(a){a=a|0;return H[a+28>>2]}function YS(a){a=a|0;return H[a+72>>2]}function YR(a){a=a|0;return H[a+88>>2]}function Xf(a){a=a|0;return H[a+36>>2]}function WZ(a){a=a|0;return H[a+92>>2]}function W1(a){a=a|0;return H[a+80>>2]}function Ri(a){a=a|0;return J[a+24>>1]}function M2(a){a=a|0;return H[a+76>>2]}function Er(a){a=a|0;return H[a+40>>2]}function Dr(a){a=a|0;return H[a+32>>2]}function Di(a){a=a|0;return H[a+12>>2]}function Cr(a){a=a|0;return H[a+20>>2]}function Ao(a){a=a|0;return H[a+48>>2]}function qv(a,b){a=a|0;b=b|0;return 0}function pd(a){a=a|0;return H[a+8>>2]}function n3(a){a=a|0;return I[a+33|0]}function id(a){a=a|0;return H[a+4>>2]}function hR(a,b){a=a|0;b=b|0;return-1}function bZ(a){a=a|0;return I[a+55|0]}function _Y(a){a=a|0;return I[a+54|0]}function $f(a){a=a|0;return I[a+32|0]}function r4(a){a=a|0;return H[32905]}function jt(a,b){KT(a,b);KT(a+8|0,b)}function gq(a){a=a|0;return H[33772]}function d5(a){a=a|0;return H[33219]}function cn(a){a=a|0;return H[33808]}function Y3(a){a=a|0;return H[32768]}function Ve(a,b,c){a=a|0;b=b|0;c=c|0}function T2(a){a=a|0;return H[32460]}function N4(a){a=a|0;return H[33056]}function J3(a){a=a|0;return H[32611]}function jd(a){a=a|0;return H[a>>2]}function WH(a){a=a|0;yH(H[a+28>>2])}function PK(a){a=a|0;gL(H[a+28>>2])}function MR(a){a=a|0;return a+440|0}function Bi(a){a=a|0;return vg(a)|0}function wd(a){a=a|0;return 100580}function sd(a){a=a|0;return 100140}function qd(a){a=a|0;return 100268}function oo(a){a=a|0;return a+60|0}function mM(a){a=a|0;return 12580} -function le(a){a=a|0;return 100952}function lP(a){a=a|0;return 12212} -function ie(a){a=a|0;return 100872}function ge(a){a=a|0;return 101472}function gd(a){a=a|0;return 100128}function ff(a,b){a=a|0;b=b|0;N6(b)}function fd(a){a=a|0;return 100116}function en(a){a=a|0;return a+48|0}function de(a){a=a|0;return 101416}function bn(a){a=a|0;return a+16|0}function Y2(a){a=a|0;return a-12|0}function Xd(a){a=a|0;return 101296}function Ud(a){a=a|0;return 100260}function Sd(a){a=a|0;return 101144}function Pe(a){a=a|0;return 102656}function Oe(a){a=a|0;return 102616}function Ne(a){a=a|0;return 100768}function Bo(a){a=a|0;return a+44|0}function Bd(a){a=a|0;return 100316}function Ah(a){a=a|0;return a+12|0}function $d(a){a=a|0;return 101360}function ze(a){a=a|0;return 99240}function zP(a){a=a|0;return 12247}function yi(a){a=a|0;return 13282}function xr(a){a=a|0;return 12514}function vP(a){a=a|0;return 13005}function uf(a){a=a|0;F[a+120|0]=1}function tc(a){a=a|0;return 99040}function tX(a){a=a|0;return 18451}function tP(a){a=a|0;return 12822}function rP(a){a=a|0;return 13137}function qM(a){a=a|0;return 12924}function pj(a){a=a|0;jg(a+12|0,a)}function pP(a){a=a|0;return 12749}function oM(a){a=a|0;return 12902}function oF(a){a=a|0;return 12135}function nP(a){a=a|0;return 12715}function nF(a){a=a|0;return 12466}function kM(a){a=a|0;return 12908}function jP(a){a=a|0;return 12153}function jL(a){a=a|0;return 17945}function il(a){a=a|0;return 17371}function iM(a){a=a|0;return 13067}function hc(a){a=a|0;if(a){N6(a)}}function hP(a){a=a|0;return 12644}function gM(a){a=a|0;return 13037}function gB(a){a=a|0;return 18432}function ft(a){a=a|0;return 18484}function fh(a){a=a|0;return 17408}function fP(a){a=a|0;return 12782}function eS(a){a=a|0;return a-8|0}function eM(a){a=a|0;return 12038}function dN(a){a=a|0;return 17973}function co(a){a=a|0;return 20607}function cg(a){a=a|0;return 17773}function cM(a){a=a|0;return 12312}function aM(a){a=a|0;return 12065}function Zy(a){a=a|0;return 11831}function ZO(a){a=a|0;return 12380}function ZL(a){a=a|0;return 12297}function YY(a){a=a|0;return 13438}function Xy(a){a=a|0;return 12020}function Xk(a){a=a|0;return a+8|0}function XL(a){a=a|0;return 12409}function Vy(a){a=a|0;return 12326}function Vj(a){a=a|0;return 11615}function VL(a){a=a|0;return 12489}function Uc(a){a=a|0;return 99216}function Ty(a){a=a|0;return 11361}function TL(a){a=a|0;return 12598}function TH(a){a=a|0;return 11881}function RL(a){a=a|0;return 12232}function RK(a){a=a|0;return 13261}function RH(a){a=a|0;return 11915}function QK(a){a=a|0;return 13223}function QI(a){a=a|0;return 13170}function Py(a){a=a|0;return 17210}function Pn(a){a=a|0;return 20639}function PL(a){a=a|0;return 12989}function Ny(a){a=a|0;return 19464}function NZ(a){a=a|0;return 19517}function NL(a){a=a|0;return 12536}function NK(a){a=a|0;return 13240}function N$(a){a=a|0;return 13486}function MK(a){a=a|0;return 13206}function Ly(a){a=a|0;return 12615}function LL(a){a=a|0;return 12437}function Jc(a){a=a|0;return 99536}function JL(a){a=a|0;return 12892}function JH(a){a=a|0;return 13112}function Ic(a){a=a|0;return 99332}function IH(a){a=a|0;return 12696}function Hq(a){a=a|0;ND(a+5584|0)}function HP(a){a=a|0;return 12968}function HH(a){a=a|0;return 12349}function Gr(a){a=a|0;return 11432}function Gl(a){a=a|0;return 11982}function FP(a){a=a|0;return 12279}function EN(a){a=a|0;return 19314}function Dd(a){a=a|0;return 99396}function DP(a){a=a|0;return 12431}function Cy(a){a=a|0;return 1952} -function CN(a){a=a|0;return 11160}function CJ(a){S6(a+1164|0,0,648)}function BP(a){a=a|0;return 12850}function B$(a){a=a|0;return 13466}function Ay(a){a=a|0;return 17346}function xP(a){a=a|0;return 4045}function pv(a){a=a|0;F[a+92|0]=1}function o2(a){a=a|0;return 2260}function m4(a){a=a|0;return 2222}function bz(a){a=a|0;return 2913}function a5(a){a=a|0;return 2082}function U3(a){a=a|0;return 2192}function Ry(a){a=a|0;return 4018}function Pk(a){a=a|0;return 2062}function K4(a){a=a|0;return 2120}function Iy(a){a=a|0;return 2961}function If(a){a=a|0;return 2284}function IE(a,b,c,d,e){BE(a,0,e)}function G3(a){a=a|0;return 2156}function By(a){a=a|0;return 2799}function rh(a){a=a|0;Rj(a+12|0)}function k7(a,b){Qa=a;return b} -function fb(a){a=a|0;return a|0}function Pc(a){a=a|0;F[a+4|0]=1}function En(a){a=a|0;Yj(a+48|0)}function zL(a){a=a|0;N6(yL(a))}function ve(a){a=a|0;Ra[a|0]()}function qC(a){a=a|0;N6(pC(a))}function oX(a){a=a|0;nX(a-8|0)}function kx(a){a=a|0;N6(dx(a))}function cy(a){a=a|0;N6($x(a))}function _M(a){a=a|0;N6(ZM(a))}function UY(a){a=a|0;TY(a-8|0)}function Pu(a){a=a|0;N6(Ou(a))}function Iv(a){a=a|0;N6(Hv(a))}function pc(){return o6(24)|0}function kc(){return o6(28)|0}function jc(){return o6(16)|0}function ic(){return o6(12)|0}function fo(a){a=a|0;return 0}function PZ(a){a=a|0;return 4}function Lf(a){a=a|0;return 1}function Ai(a){a=a|0;return 2}function a7(){return Oa-Pa|0}function Kf(a,b){a=a|0;b=b|0}function V5(){return 135244}function Re(a){a=a|0;N6(a)}function JE(a,b){BE(a,1,b)}function DH(a){H[a+4>>2]=0}function b7(){return Pa|0}function Z6(a){a=a|0;Oa=a}function Y6(){return Oa|0}function $e(a){a=a|0;X()}function $6(){Pa=137632}function q6(){p6();X()}function p6(){ka();X()}function bb(a){a=a|0}function O3(){r5()}function r6(){X()}function RI(){} -// EMSCRIPTEN_END_FUNCS -e=I;p(_a);var Ra=c([null,bb,cb,db,eb,bb,fb,fb,cb,gb,db,hb,db,bb,fb,fb,cb,bb,fb,fb,cb,ib,db,jb,kb,lb,hb,mb,nb,ob,db,pb,qb,rb,sb,bb,fb,fb,cb,ib,db,eb,tb,ub,vb,wb,lb,bb,cb,gb,eb,bb,cb,xb,yb,zb,qb,Ab,qb,Bb,Cb,Db,fb,fb,cb,Eb,Fb,xb,yb,Gb,Hb,Db,fb,fb,cb,Ib,Fb,xb,yb,bb,cb,Jb,Kb,Lb,Mb,gb,Nb,ib,Ob,lb,mb,Pb,Qb,Rb,Rb,Sb,Tb,Ub,lb,tb,bb,cb,db,Vb,Wb,Xb,Yb,vb,ib,eb,Zb,fb,fb,cb,Zb,fb,fb,cb,_b,$b,ac,bc,cc,dc,ib,ec,fc,Zb,fb,fb,cb,ib,gc,fc,hc,ic,xb,yb,hc,jc,xb,yb,hc,kc,lc,mc,nc,oc,hc,pc,qc,rc,sc,tc,uc,Fb,vc,mb,wc,db,xc,tb,yc,zc,Ac,Bc,gf,Cc,Dc,hf,Ec,jf,Fc,kf,Gc,lf,Hc,hc,Ic,lc,mc,xb,yb,hc,Jc,Kc,Lc,Gb,Hb,Bb,Cb,Mc,Nc,Oc,cb,Oc,fb,fb,cb,Pc,Kb,Qc,Rc,Sc,Tc,hc,Uc,Vc,Wc,lc,mc,bb,cb,mb,db,db,Xc,qb,Yc,fc,Zc,_c,$c,ad,bd,cd,dd,ed,eb,hc,fd,lc,mc,xb,yb,hc,fb,fb,gd,hd,Fb,id,ed,jd,ed,kd,ld,md,nd,od,pd,ed,hc,fb,fb,qd,rd,Fb,id,ed,jd,ed,kd,ld,md,nd,od,pd,ed,hc,sd,td,Fb,ud,vd,hc,wd,xd,Lc,yd,cb,yd,fb,fb,cb,Pc,Kb,zd,Rc,Ad,hc,Bd,Cd,Fb,id,ed,jd,ed,pd,ed,sc,Dd,uc,Fb,Ed,mb,Fd,db,Gd,tb,Hd,zc,Id,Bc,V4,Dc,bb,cb,eb,ib,Jd,lb,Kd,bb,cb,Ld,Kb,Md,Nd,ib,Od,mb,mb,Pd,lb,Qd,lb,Rd,ed,hc,Sd,Td,Lc,hc,Ud,Vd,Wd,hc,fb,fb,Xd,Yd,Fb,Zd,_d,lc,mc,hc,fb,fb,$d,ae,Fb,be,ce,xb,yb,hc,fb,fb,de,ee,fe,xb,yb,hc,fb,fb,ge,he,Fb,hc,ie,je,ke,sc,le,uc,Fb,me,ne,oe,pe,qe,tb,re,zc,se,te,bb,cb,ue,t5,Dc,N3,Ec,O3,ve,g3,Ec,dn,we,xe,cb,xe,fb,fb,cb,ye,Fb,hc,ze,Ae,Fb,xb,yb,bb,cb,eb,xe,cb,eb,Be,gb,Ce,De,Ee,gb,gb,Fe,Ge,He,Ge,Ie,Ge,Je,Ge,Ke,Ge,Le,Ge,xe,cb,xe,fb,fb,cb,Me,Fb,yd,cb,bb,cb,xe,cb,yd,fb,fb,cb,hc,Ne,hc,Oe,hc,Pe,Qe,fb,Re,Se,Te,Re,Ue,Ve,Ve,Ve,We,Xe,Ye,Ze,_e,r6,$e,af,bf,df,cf,$e,fb,Re,ef,ff,qf,If,Wj,of,pf,Jf,nf,rf,sf,uf,vf,wf,xf,yf,Ef,Af,Bf,Cf,Df,Ff,mf,Kf,Lf,Of,cg,Mf,Nf,dg,Rf,Tf,Uf,Wf,Xf,Yf,Zf,_f,$f,ag,bg,eh,fh,ah,bh,gh,hh,ih,jh,kh,lh,mh,nh,oh,ph,qh,rh,sh,th,uh,vh,wh,xh,yh,zh,Ah,Ah,ch,dh,yg,zg,Ag,Bg,Cg,Dg,Eg,Fg,Gg,Hg,Ig,Jg,Kg,Lg,Mg,Ng,Og,Pg,Qg,Rg,Sg,Tg,Ug,Vg,Wg,Xg,Yg,Zg,_g,$g,Bh,Ch,Dh,$e,$j,Qh,yi,Mh,Nh,zi,Ai,Bi,Ci,Di,Ei,Fi,Ii,Ji,Ki,Li,Mi,Ni,Oi,Rh,qi,Pi,Qi,Ri,Si,Ti,Ui,ai,Vi,Wi,Xi,Yi,Zi,_i,$i,Sh,Th,Uh,Vh,aj,ri,bj,si,ti,ui,vi,wi,ci,hi,li,ni,ii,cj,ej,fj,gj,hj,ij,jj,kj,lj,mj,Wh,Xh,Yh,Zh,$h,_h,Gh,Ih,Kh,Eh,bb,bb,Lf,pi,Ph,nj,$e,Hh,Jh,Lh,Fh,oj,$e,Pi,pj,qj,$e,rj,sj,tj,uj,vj,fb,$e,fb,Re,wj,xj,yj,zj,Aj,Bj,eh,Vj,Dj,Ej,Xj,hh,ih,jh,kh,lh,mh,nh,oh,ph,qh,rh,sh,th,uh,vh,wh,xh,yh,zh,Ah,Ah,Tj,Uj,Kj,Jj,Mj,Lj,Gj,Fj,Ij,Hj,Nj,Oj,Pj,Qj,Sj,Bh,Ch,_j,$e,Ok,Pk,ck,dk,Qk,Rk,Sk,Tk,Uk,Vk,Wk,Xk,Xk,ek,fk,gk,jk,ik,hk,kk,lk,mk,nk,yk,zk,Ak,Bk,Ck,Dk,Ek,Fk,Gk,Hk,ok,pk,Ik,Jk,Kk,Lk,Mk,Nk,qk,rk,bk,Kf,Lf,tk,sk,uk,vk,wk,xk,ck,$e,Ok,il,Yk,Zk,jl,Rk,Sk,Tk,Uk,Vk,Wk,Xk,Xk,tk,sk,uk,vk,al,bl,cl,dl,el,fl,gl,hl,wk,xk,_k,$k,bk,Kf,Lf,Yk,$e,rl,Gl,kl,ml,Hl,tl,sl,ul,vl,wl,xl,yl,kd,zl,Al,Bl,Cl,Dl,El,Fl,pl,ol,Kf,ll,nl,ql,Jl,Kl,Wl,Xl,Yl,Zl,_l,pm,rm,sm,cn,Dm,bn,Km,Lm,Mm,Nm,Om,Pm,Qm,Rm,Sm,Tm,Um,Vm,tm,pd,um,vm,zm,Wm,wm,xm,ym,Am,Bm,Cm,Fm,Gm,Hm,Xm,Zm,_m,$m,en,fn,fb,Re,fb,Re,gn,kn,Pn,hn,jn,Qn,Lf,Bi,Ci,Di,Ei,Rn,Tn,Ji,Ki,Li,Mi,Ni,Oi,Rh,ln,Pi,Qi,Ri,Si,Ti,Ui,pn,Vi,Wi,Xi,Yi,Zi,_i,$i,Sh,Th,Uh,Vh,aj,qn,bj,sn,ti,ui,vi,wi,tn,vn,li,ni,un,cj,ej,fj,gj,hj,ij,jj,kj,lj,mj,mn,on,wn,xn,yn,zn,An,Mn,On,Nn,Bn,Cn,Dn,En,Fn,Gn,In,Hn,Hh,Jh,Lh,Fh,Kn,Ln,Ph,hn,$e,Fh,bb,bb,Un,$e,Pi,pj,Vn,$e,rj,sj,tj,uj,vj,$e,Yn,co,Wn,Xn,eo,fo,Bi,Ci,Di,Ei,go,io,Ji,Ki,Li,Mi,Ni,Oi,_n,Zn,Pi,Qi,Ri,Si,Ti,Ui,Hh,Jh,Lh,Fh,ao,bo,Ph,jo,$e,Fh,bb,bb,pj,ko,$e,rj,sj,tj,uj,vj,$e,po,xo,yo,zo,Ao,no,oo,wo,so,uo,vo,lo,mo,Bo,Co,Do,fb,Re,Eo,Fo,fb,Re,Go,Ho,fb,Re,Io,$e,cs,is,fs,Lo,Oo,Po,Xo,Yo,Vo,Wo,gq,$q,lp,np,Zo,cp,hp,kp,ip,pp,Mo,sp,tp,up,vp,yp,zp,Ap,Bp,qp,rp,Jq,Kq,br,cr,Fp,Ip,Jp,Kp,Mp,Lp,Np,Op,Pp,Yp,Zp,_p,$p,aq,bq,dq,eq,fq,jq,kq,lq,mq,pq,uq,vq,xq,zq,Aq,Ro,So,To,Uo,Qp,Rp,fr,Gp,Hp,Uq,Vq,Wq,Xq,Cp,Ep,dr,er,Hq,ur,Nq,Oq,Pq,Lq,Mq,rr,sr,tr,ar,Sp,Tp,Up,Vp,Wp,Xp,vr,hr,ir,jr,kr,Yq,Zq,_q,gr,Qq,Rq,Sq,Tq,lr,mr,fo,or,pr,wp,xp,qr,bb,nq,wr,vr,cr,Ir,Re,wq,xr,yr,iq,zr,Ar,No,Br,pd,id,Cr,tl,Dr,Yf,zo,Er,rq,Dp,Re,Fr,Gr,Hr,bb,$e,Jr,Kr,Fr,zr,Lr,Mr,Cr,Or,bb,Vr,fb,Re,Yr,Dr,Zr,Yr,Dr,_r,Yr,Dr,$r,Yr,Dr,as,Yr,Dr,bs,es,fb,Re,ls,bb,Re,hs,Re,ks,Re,ls,bb,Re,rl,ft,ms,os,gt,tl,sl,vs,ws,xs,ys,zs,As,Bs,Cs,Ds,Es,Cr,Fs,Gs,Hs,Is,Js,Ks,Ls,Ms,Ns,Os,Ps,Qs,Rs,Ss,Ts,Us,Vs,Ws,Ys,Zs,_s,$s,ct,dt,ss,ts,qs,ns,ps,rs,w_,tt,bu,cu,du,eu,fu,gu,hu,iu,ju,ku,lu,mu,fu,nu,ou,pu,qu,ru,su,tu,uu,vu,wu,xu,yu,zu,Au,Bu,Cu,Du,Eu,Fu,Gu,Hu,Iu,Ju,Ku,Ou,Pu,uv,Qu,ov,pv,Yu,fo,qv,ls,Ve,Ve,Ve,bb,Ve,Kf,Kf,Ve,Kf,rv,Ye,Ye,hu,Kf,Kf,bb,Zu,Zu,_u,$u,av,ev,hv,jv,kv,Kf,sv,tv,iv,lv,vv,wv,xv,qv,fo,bv,cv,dv,nv,$e,bb,Wu,Hv,Iv,Nv,Lv,Mv,Ov,Pv,Qv,Rv,Tw,Uw,Vw,Ww,Xw,Yw,Kw,Zw,_w,yw,bx,cx,gx,fx,Ew,Tv,Vv,nw,Wv,Xv,$v,fw,iw,Dw,Bw,sw,qw,dw,bw,ew,jw,kw,pw,Lf,Yv,Zv,_v,hw,hx,jx,dx,kx,ix,lx,mx,xx,Bx,Dx,Yx,Vx,Xx,_x,dy,yy,Kf,py,zy,Ye,$x,cy,uy,vy,fb,Re,xy,Re,Ay,qy,Re,By,wy,by,$e,Re,Cy,Dy,Re,Iy,Jy,Re,Ly,My,Re,Ny,Oy,Re,Py,Qy,Re,Ry,Sy,Re,Ty,Uy,Re,Vy,Wy,Re,Xy,Yy,Re,Zy,_y,Re,bz,cz,Re,bz,dz,qz,nz,tz,zz,Bz,Hz,sz,pz,vz,Fz,Gz,Kz,rz,oz,uz,Dz,Ez,Jz,Lz,fb,Re,Nz,Mz,Oz,Wz,Zz,bA,dA,Uz,Vz,jA,kA,Yz,$z,hA,iA,Uz,Vz,jA,kA,Xz,_z,fA,gA,jA,kA,Lz,Re,Qz,Pz,Oz,KA,LA,bB,gB,$A,aB,hB,eB,Er,cB,dB,uB,vB,wB,xB,yB,Kf,CB,BB,AB,EB,FB,GB,zB,sB,tB,DB,pC,qC,vC,Re,wC,Re,xC,Re,yC,Re,zC,Re,AC,Re,FC,IC,GC,HC,XC,bD,TC,JC,RC,cD,dD,eD,YC,CC,EC,ZC,VC,WC,$C,aD,jD,lD,mD,tD,vD,wD,nD,oD,qD,rD,sD,xD,hD,iD,Ve,fb,Re,yD,Re,yD,Re,zD,Re,AD,fb,Re,BD,fb,Re,CD,QD,fb,Re,UD,VD,Ve,Re,nF,hF,Re,oF,iF,eG,fG,lG,PH,KH,bH,LH,KH,dH,OH,KH,ls,QH,Yr,HH,pH,Yr,IH,qH,Re,JH,FH,$e,Re,RH,SH,Re,TH,zH,Re,UH,VH,Yr,Dr,WH,bI,cI,Re,QI,EI,Yr,Dr,FI,WI,XI,sJ,pd,dJ,eJ,bb,lJ,gJ,iJ,kJ,hJ,aJ,_I,$I,mJ,oJ,pJ,qJ,rJ,bJ,cJ,FJ,GJ,HJ,qv,IJ,fb,Re,JJ,KJ,bK,cK,iK,fo,jK,kK,qv,fo,fo,Ai,lK,dK,Kf,Di,pd,zr,Cr,gK,Ye,fo,bb,fK,vK,wK,xK,yK,zK,AK,BK,IK,JK,Lf,lK,CK,Kf,HK,uh,vs,xh,KK,LK,fo,bb,EK,Yr,MK,FK,Yr,NK,GK,Re,QK,OK,Re,RK,PK,ZK,_K,fo,$K,cL,Kf,kL,lL,mL,nL,aL,bL,oL,hL,eL,Re,jL,iL,_x,AL,yy,Kf,bb,zy,Ye,yL,zL,AA,BA,CA,DA,qL,uL,EA,FA,rL,vL,IA,GA,JA,HA,wL,xL,Re,Vy,HL,Re,Xy,IL,Re,JL,KL,bb,Re,LL,ML,Re,NL,OL,Re,PL,QL,Re,RL,SL,Re,TL,UL,Re,VL,WL,Re,XL,YL,Re,ZL,_L,$L,Re,aM,bM,Re,cM,dM,Re,eM,fM,Re,gM,hM,Re,iM,jM,Re,kM,lM,Re,mM,nM,Re,oM,pM,Re,qM,rM,sM,uM,wM,tM,vM,xM,ZM,_M,$K,FM,bb,GM,bb,IM,HM,MM,NM,Kf,Kf,Kf,Kf,Kf,Kf,fo,bb,SM,WM,YM,$M,bb,bb,Ve,bb,bb,OM,QM,Kf,UM,KM,BM,DM,aN,bN,CM,EM,JM,PM,RM,XM,VM,cN,LM,bb,bb,Re,dN,AM,eN,Re,CN,DN,Re,EN,FN,Yr,Dr,GN,Yr,Dr,HN,Yr,Dr,IN,XO,YO,fb,Re,Re,ZO,_O,fb,$e,Re,fP,gP,Re,hP,iP,Re,jP,kP,Re,lP,mP,Re,nP,oP,Re,pP,qP,Re,rP,sP,Re,tP,uP,Re,vP,wP,Re,xP,yP,Re,zP,AP,Re,BP,CP,Re,DP,EP,Re,FP,GP,Re,HP,IP,Yr,Dr,JP,KP,LP,KP,MP,Yr,Dr,NP,Yr,Dr,OP,Yr,Dr,PP,Yr,Dr,QP,Yr,Dr,RP,Yr,Dr,SP,Yr,Dr,TP,Yr,Dr,UP,Yr,Dr,VP,Yr,Dr,WP,Yr,Dr,XP,Yr,Dr,YP,Yr,Dr,ZP,Yr,Dr,_P,Yr,Dr,$P,Yr,Dr,aQ,Yr,Dr,bQ,Yr,Dr,cQ,Yr,Dr,dQ,Yr,Dr,eQ,Yr,Dr,fQ,Yr,Dr,gQ,Yr,Dr,hQ,Yr,Dr,iQ,Yr,Dr,jQ,Yr,Dr,kQ,Yr,Dr,lQ,Yr,Dr,mQ,KP,nQ,Yr,Dr,oQ,Yr,Dr,pQ,Yr,Dr,qQ,Yr,Dr,rQ,Yr,Dr,sQ,Yr,Dr,tQ,Yr,Dr,uQ,Yr,Dr,vQ,wQ,xQ,Yr,Dr,yQ,Yr,Dr,zQ,Yr,Dr,mQ,Yr,Dr,AQ,Yr,Dr,BQ,Yr,Dr,CQ,IQ,JQ,fb,Re,gR,yy,Ve,Kf,Ve,Ye,Ve,Ve,bb,Ve,Ve,Ye,Kf,Kf,Ve,Ve,Ye,fR,fo,fo,fo,fo,fo,fo,fo,fo,fo,bb,Kf,Kf,hR,Ve,fo,nR,oR,ls,bb,Re,Di,KR,pS,LR,MR,HR,GR,NR,OR,PR,QR,tl,RR,SR,TR,UR,VR,WR,zR,XR,YR,ZR,_R,$R,JR,vR,xR,aS,CR,bS,DR,ER,FR,cS,AR,fb,wR,yR,dS,BR,eS,fb,$e,qS,rS,sS,uS,vS,wS,xS,yS,zS,AS,BS,CS,DS,ES,fb,Re,Di,KR,oS,LR,MR,MS,LS,NR,OR,PR,QR,tl,RR,SR,TR,UR,VR,WR,zR,XR,YR,ZR,_R,$R,OS,vR,xR,aS,bS,HS,IS,JS,KS,aS,FS,fb,wR,yR,PS,GS,eS,$e,US,pd,YS,ZS,_S,$S,WS,XS,Wg,eT,fT,nT,iT,jT,kT,lT,mT,QS,SS,aT,bT,RS,TS,pT,$e,uT,vT,wT,yo,xT,yT,zT,AT,BT,CT,fb,Re,ET,fb,Re,FT,fb,$e,fb,Re,PT,QT,iU,jU,oU,qU,pU,sU,rU,tU,uU,vU,HU,IU,JU,KU,LU,MU,OU,PU,QU,RU,SU,TU,UU,VU,WU,XU,YU,ZU,_U,$U,aV,bV,cV,fb,Re,dV,eV,fV,Re,hV,iV,jV,Re,kV,lV,fV,mV,nV,oV,pV,qV,fb,Re,rV,sV,tV,uV,qV,Re,wV,xV,yV,zV,AV,c$,BV,CV,DV,EV,FV,GV,HV,IV,d$,JV,KV,e$,LV,f$,MV,NV,OV,uV,PV,Re,RV,QV,SV,uV,PV,Re,UV,XV,VV,TV,YV,_V,$V,u_,aW,oW,fb,Re,y_,pW,qW,rW,sW,LW,tW,l$,UW,iW,OW,zW,PW,QW,AW,n$,VW,jW,kW,lW,EW,FW,GW,HW,IW,p$,WW,XW,YW,ZW,uV,qV,Re,$W,aX,bX,cX,qV,Re,mX,tX,fb,kX,uX,pX,rX,sX,Yf,Cr,nX,eS,lX,oX,fb,Re,AX,CX,Re,pW,DX,Re,FX,EX,GX,HX,wX,vX,IX,JX,KX,MX,LX,NX,OX,PX,QX,RX,pV,PV,Re,SX,TX,UX,cX,PV,Re,bY,fb,Re,pW,eY,Re,fb,Re,fY,rY,Re,pW,Re,uY,EY,CY,GY,pW,HY,GY,Re,IY,mX,YY,NY,PY,ZY,_Y,$Y,aZ,bZ,MY,Di,VY,WY,XY,RY,SY,TY,Kf,OY,QY,UY,iZ,jZ,kZ,nZ,oZ,mX,NZ,EZ,GZ,OZ,MZ,LZ,Er,zo,YS,PZ,QZ,RZ,SZ,Di,VY,TZ,UZ,VZ,WZ,KZ,Kf,IZ,FZ,HZ,JZ,tt,x_,tt,v_,tt,fb,Re,m_,C_,Re,D_,p_,E_,F_,G_,bb,H_,I_,D_,q_,J_,F_,G_,K_,L_,M_,r_,N_,O_,P_,Q_,R_,S_,t_,T_,U_,V_,W_,X_,Y_,Re,Z_,Re,__,fb,Re,$_,fb,Re,a$,fb,Re,b$,fb,Re,tt,tt,tt,g$,fb,Re,pW,k$,Re,m$,fb,Re,o$,fb,Re,z_,q$,A_,q$,B_,r$,mX,t$,$e,E$,tl,zr,y$,z$,Cr,Yf,F$,YS,G$,H$,Di,VY,v$,Kf,w$,u$,$e,x$,B$,C$,D$,A$,Lf,I$,J$,N$,O$,P$,L$,M$,K$,fo,Q$,R$,S$,fb,Re,T$,Re,_$,$$,a0,uV,qV,Re,f0,Re,pW,Re,r0,s0,fV,u0,v0,w0,uV,PV,Re,y0,Re,pW,O0,N0,P0,pW,n2,o2,p2,q2,r2,s2,t2,u2,v2,w2,x2,y2,z2,A2,B2,C2,D2,E2,F2,G2,H2,I2,J2,K2,L2,M2,QR,tl,N2,w1,v1,x1,y1,z1,C1,D1,E1,F1,H1,G1,L1,K1,J1,I1,B1,A1,N1,M1,Q1,P1,T1,U1,R1,S1,bb,O2,jK,P2,Q2,V1,R2,fb,S2,W1,Y1,T2,X1,jK,U2,V2,W2,X2,Y2,T2,Z2,_2,$2,_1,e2,g2,$e,W1,Z2,_2,$e,b3,c3,d3,e3,f3,bb,k3,Yf,i3,j3,l3,m3,n3,fb,Re,o3,E3,Ye,F3,n2,G3,M3,H3,I3,s2,t2,u2,v2,w2,x2,y2,z2,A2,B2,C2,D2,E2,F2,G2,H2,I2,J2,K2,L2,M2,QR,tl,N2,p3,q3,r3,s3,t3,u3,v3,w3,x3,y3,z3,B3,C3,A3,bb,O2,jK,P2,Q2,W1,R2,fb,S2,W1,D3,J3,Z2,jK,U2,V2,W2,X2,Y2,J3,Z2,K3,L3,$e,K3,$e,Q3,R3,T3,n2,U3,V3,W3,X3,s2,t2,u2,v2,w2,x2,y2,z2,A2,B2,C2,D2,E2,F2,G2,H2,I2,J2,K2,L2,M2,QR,tl,N2,q3,r3,s3,t3,bb,O2,jK,P2,Q2,W1,R2,fb,S2,W1,P3,Y3,Z2,jK,U2,V2,W2,X2,Y2,Y3,Z2,Z3,_3,$e,Z3,$e,j4,k4,l4,n2,m4,u4,n4,o4,s2,t2,u2,v2,w2,x2,y2,z2,A2,B2,C2,D2,E2,F2,G2,H2,I2,J2,K2,L2,M2,QR,tl,N2,p4,q4,h4,g4,e4,f4,d4,b4,c4,$3,a4,bb,O2,jK,P2,Q2,W1,R2,fb,S2,W1,i4,r4,Z2,jK,U2,V2,W2,X2,Y2,r4,Z2,s4,t4,$e,s4,$e,H4,I4,J4,n2,K4,Q4,L4,M4,s2,t2,u2,v2,w2,x2,y2,z2,A2,B2,C2,D2,E2,F2,G2,H2,I2,J2,K2,L2,M2,QR,tl,N2,x1,v4,x4,w4,y4,r3,s3,t3,u3,v3,E4,F4,D4,B4,C4,z4,A4,bb,O2,jK,P2,Q2,W1,R2,fb,S2,W1,G4,N4,Z2,jK,U2,V2,W2,X2,Y2,N4,Z2,O4,P4,$e,O4,$e,Z4,_4,$4,n2,a5,g5,b5,c5,s2,t2,u2,v2,w2,x2,y2,z2,A2,B2,C2,D2,E2,F2,G2,H2,I2,J2,K2,L2,M2,QR,tl,N2,g4,h4,y1,z1,X4,Y4,W4,b4,c4,bb,O2,jK,P2,Q2,W1,R2,fb,S2,W1,i4,d5,Z2,jK,U2,V2,W2,X2,Y2,d5,Z2,e5,f5,$e,e5,$e,s5,pd,ct,dt,id,u5,v5,i5,n5,m5,w5,x5,y5,z5,$e,l5,A5,p5,B5,$e,J5,Y5,X5,W5,j6,k6,m6,fb,Re,bb,bb,s6,Re,s6,Re,u6,L6,I6,x6,Re,K6,H6,y6,Re,J6,E6,A6,Re,B6,fo,U6]);function Sa(){return E.byteLength/65536|0}function Xa(Ya){Ya=Ya|0;var Ta=Sa()|0;var Ua=Ta+Ya|0;if(Ta=endIdx))++endPtr;if(endPtr-idx>16&&heap.subarray&&UTF8Decoder){return UTF8Decoder.decode(heap.subarray(idx,endPtr))}else{var str="";while(idx>10,56320|ch&1023)}}}return str}function UTF8ToString(ptr,maxBytesToRead){return ptr?UTF8ArrayToString(HEAPU8,ptr,maxBytesToRead):""}function stringToUTF8Array(str,heap,outIdx,maxBytesToWrite){if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i=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;if(u>1114111)warnOnce("Invalid Unicode code point 0x"+u.toString(16)+" encountered when serializing a JS string to a UTF-8 string in wasm memory! (Valid unicode code points should be in range 0-0x10FFFF).");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){assert(typeof maxBytesToWrite=="number","stringToUTF8(str, outPtr, maxBytesToWrite) is missing the third parameter that specifies the length of the output buffer!");return stringToUTF8Array(str,HEAPU8,outPtr,maxBytesToWrite)}function lengthBytesUTF8(str){var len=0;for(var i=0;i=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127)++len;else if(u<=2047)len+=2;else if(u<=65535)len+=3;else len+=4}return len}var UTF16Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf-16le"):undefined;function UTF16ToString(ptr,maxBytesToRead){assert(ptr%2==0,"Pointer passed to UTF16ToString must be aligned to two bytes!");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))}else{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){assert(outPtr%2==0,"Pointer passed to stringToUTF16 must be aligned to two bytes!");assert(typeof maxBytesToWrite=="number","stringToUTF16(str, outPtr, maxBytesToWrite) is missing the third parameter that specifies the length of the output buffer!");if(maxBytesToWrite===undefined){maxBytesToWrite=2147483647}if(maxBytesToWrite<2)return 0;maxBytesToWrite-=2;var startPtr=outPtr;var numCharsToWrite=maxBytesToWrite>1]=codeUnit;outPtr+=2}HEAP16[outPtr>>1]=0;return outPtr-startPtr}function lengthBytesUTF16(str){return str.length*2}function UTF32ToString(ptr,maxBytesToRead){assert(ptr%4==0,"Pointer passed to UTF32ToString must be aligned to four bytes!");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){assert(outPtr%4==0,"Pointer passed to stringToUTF32 must be aligned to four bytes!");assert(typeof maxBytesToWrite=="number","stringToUTF32(str, outPtr, maxBytesToWrite) is missing the third parameter that specifies the length of the output buffer!");if(maxBytesToWrite===undefined){maxBytesToWrite=2147483647}if(maxBytesToWrite<4)return 0;var startPtr=outPtr;var endPtr=startPtr+maxBytesToWrite-4;for(var i=0;i=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=55296&&codeUnit<=57343)++i;len+=4}return len}function writeArrayToMemory(array,buffer){assert(array.length>=0,"writeArrayToMemory array must have a length (should be an array or typed array)");HEAP8.set(array,buffer)}function writeAsciiToMemory(str,buffer,dontAddNull){for(var i=0;i>0]=str.charCodeAt(i)}if(!dontAddNull)HEAP8[buffer>>0]=0}function alignUp(x,multiple){if(x%multiple>0){x+=multiple-x%multiple}return x}var buffer,HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;function updateGlobalBufferAndViews(buf){buffer=buf;Module["HEAP8"]=HEAP8=new Int8Array(buf);Module["HEAP16"]=HEAP16=new Int16Array(buf);Module["HEAP32"]=HEAP32=new Int32Array(buf);Module["HEAPU8"]=HEAPU8=new Uint8Array(buf);Module["HEAPU16"]=HEAPU16=new Uint16Array(buf);Module["HEAPU32"]=HEAPU32=new Uint32Array(buf);Module["HEAPF32"]=HEAPF32=new Float32Array(buf);Module["HEAPF64"]=HEAPF64=new Float64Array(buf)}var TOTAL_STACK=5242880;if(Module["TOTAL_STACK"])assert(TOTAL_STACK===Module["TOTAL_STACK"],"the stack size can no longer be determined at runtime");var INITIAL_MEMORY=Module["INITIAL_MEMORY"]||16777216;if(!Object.getOwnPropertyDescriptor(Module,"INITIAL_MEMORY")){Object.defineProperty(Module,"INITIAL_MEMORY",{configurable:true,get:function(){abort("Module.INITIAL_MEMORY has been replaced with plain INITIAL_MEMORY (the initial value can be provided on Module, but after startup the value is only looked for on a local variable of that name)")}})}assert(INITIAL_MEMORY>=TOTAL_STACK,"INITIAL_MEMORY should be larger than TOTAL_STACK, was "+INITIAL_MEMORY+"! (TOTAL_STACK="+TOTAL_STACK+")");assert(typeof Int32Array!=="undefined"&&typeof Float64Array!=="undefined"&&Int32Array.prototype.subarray!==undefined&&Int32Array.prototype.set!==undefined,"JS engine does not provide full typed array support");if(Module["wasmMemory"]){wasmMemory=Module["wasmMemory"]}else{wasmMemory=new WebAssembly.Memory({"initial":INITIAL_MEMORY/65536,"maximum":2147483648/65536})}if(wasmMemory){buffer=wasmMemory.buffer}INITIAL_MEMORY=buffer.byteLength;assert(INITIAL_MEMORY%65536===0);updateGlobalBufferAndViews(buffer);var wasmTable;function writeStackCookie(){var max=_emscripten_stack_get_end();assert((max&3)==0);HEAP32[max+4>>2]=34821223;HEAP32[max+8>>2]=2310721022;HEAP32[0]=1668509029}function checkStackCookie(){if(ABORT)return;var max=_emscripten_stack_get_end();var cookie1=HEAPU32[max+4>>2];var cookie2=HEAPU32[max+8>>2];if(cookie1!=34821223||cookie2!=2310721022){abort("Stack overflow! Stack cookie has been overwritten, expected hex dwords 0x89BACDFE and 0x2135467, but received 0x"+cookie2.toString(16)+" 0x"+cookie1.toString(16))}if(HEAP32[0]!==1668509029)abort("Runtime error: The application has corrupted its heap memory area (address zero)!")}(function(){var h16=new Int16Array(1);var h8=new Int8Array(h16.buffer);h16[0]=25459;if(h8[0]!==115||h8[1]!==99)throw"Runtime error: expected the system to be little-endian! (Run with -s SUPPORT_BIG_ENDIAN=1 to bypass)"})();var __ATPRERUN__=[];var __ATINIT__=[];var __ATPOSTRUN__=[];var runtimeInitialized=false;var runtimeExited=false;var runtimeKeepaliveCounter=0;function keepRuntimeAlive(){return noExitRuntime||runtimeKeepaliveCounter>0}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(){checkStackCookie();assert(!runtimeInitialized);runtimeInitialized=true;callRuntimeCallbacks(__ATINIT__)}function exitRuntime(){checkStackCookie();runtimeExited=true}function postRun(){checkStackCookie();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)}assert(Math.imul,"This browser does not support Math.imul(), build with LEGACY_VM_SUPPORT or POLYFILL_OLD_MATH_FUNCTIONS to add in a polyfill");assert(Math.fround,"This browser does not support Math.fround(), build with LEGACY_VM_SUPPORT or POLYFILL_OLD_MATH_FUNCTIONS to add in a polyfill");assert(Math.clz32,"This browser does not support Math.clz32(), build with LEGACY_VM_SUPPORT or POLYFILL_OLD_MATH_FUNCTIONS to add in a polyfill");assert(Math.trunc,"This browser does not support Math.trunc(), build with LEGACY_VM_SUPPORT or POLYFILL_OLD_MATH_FUNCTIONS to add in a polyfill");var runDependencies=0;var runDependencyWatcher=null;var dependenciesFulfilled=null;var runDependencyTracking={};function addRunDependency(id){runDependencies++;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}if(id){assert(!runDependencyTracking[id]);runDependencyTracking[id]=1;if(runDependencyWatcher===null&&typeof setInterval!=="undefined"){runDependencyWatcher=setInterval(function(){if(ABORT){clearInterval(runDependencyWatcher);runDependencyWatcher=null;return}var shown=false;for(var dep in runDependencyTracking){if(!shown){shown=true;err("still waiting on run dependencies:")}err("dependency: "+dep)}if(shown){err("(end of list)")}},1e4)}}else{err("warning: run dependency added without ID")}}function removeRunDependency(id){runDependencies--;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}if(id){assert(runDependencyTracking[id]);delete runDependencyTracking[id]}else{err("warning: run dependency removed without ID")}if(runDependencies==0){if(runDependencyWatcher!==null){clearInterval(runDependencyWatcher);runDependencyWatcher=null}if(dependenciesFulfilled){var callback=dependenciesFulfilled;dependenciesFulfilled=null;callback()}}}Module["preloadedImages"]={};Module["preloadedAudios"]={};function abort(what){{if(Module["onAbort"]){Module["onAbort"](what)}}what="Aborted("+what+")";err(what);ABORT=true;EXITSTATUS=1;var e=new WebAssembly.RuntimeError(what);readyPromiseReject(e);throw e}var FS={error:function(){abort("Filesystem support (FS) was not included. The problem is that you are using files from JS, but files were not used from C/C++, so filesystem support was not auto-included. You can force-include filesystem support with -s FORCE_FILESYSTEM=1")},init:function(){FS.error()},createDataFile:function(){FS.error()},createPreloadedFile:function(){FS.error()},createLazyFile:function(){FS.error()},open:function(){FS.error()},mkdev:function(){FS.error()},registerDevice:function(){FS.error()},analyzePath:function(){FS.error()},loadFilesFromDB:function(){FS.error()},ErrnoError:function ErrnoError(){FS.error()}};Module["FS_createDataFile"]=FS.createDataFile;Module["FS_createPreloadedFile"]=FS.createPreloadedFile;var dataURIPrefix="data:application/octet-stream;base64,";function isDataURI(filename){return filename.startsWith(dataURIPrefix)}function isFileURI(filename){return filename.startsWith("file://")}function createExportWrapper(name,fixedasm){return function(){var displayName=name;var asm=fixedasm;if(!fixedasm){asm=Module["asm"]}assert(runtimeInitialized,"native function `"+displayName+"` called before runtime initialization");assert(!runtimeExited,"native function `"+displayName+"` called after runtime exit (use NO_EXIT_RUNTIME to keep it alive after main() exits)");if(!asm[name]){assert(asm[name],"exported native function `"+displayName+"` not found")}return asm[name].apply(null,arguments)}}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){return readBinary(file)}else{throw"both async and sync fetching of the wasm failed"}}catch(err){abort(err)}}function getBinaryPromise(){if(!wasmBinary&&(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER)){if(typeof fetch==="function"&&!isFileURI(wasmBinaryFile)){return fetch(wasmBinaryFile,{credentials:"same-origin"}).then(function(response){if(!response["ok"]){throw"failed to load wasm binary file at '"+wasmBinaryFile+"'"}return response["arrayBuffer"]()}).catch(function(){return getBinary(wasmBinaryFile)})}else{if(readAsync){return new Promise(function(resolve,reject){readAsync(wasmBinaryFile,function(response){resolve(new Uint8Array(response))},reject)})}}}return Promise.resolve().then(function(){return getBinary(wasmBinaryFile)})}function createWasm(){var info={"env":asmLibraryArg,"wasi_snapshot_preview1":asmLibraryArg};function receiveInstance(instance,module){var exports=instance.exports;Module["asm"]=exports;wasmTable=Module["asm"]["__indirect_function_table"];assert(wasmTable,"table not found in wasm exports");addOnInit(Module["asm"]["__wasm_call_ctors"]);removeRunDependency("wasm-instantiate")}addRunDependency("wasm-instantiate");var trueModule=Module;function receiveInstantiationResult(result){assert(Module===trueModule,"the Module object should not be replaced during async compilation - perhaps the order of HTML elements is wrong?");trueModule=null;receiveInstance(result["instance"])}function instantiateArrayBuffer(receiver){return getBinaryPromise().then(function(binary){return WebAssembly.instantiate(binary,info)}).then(function(instance){return instance}).then(receiver,function(reason){err("failed to asynchronously prepare wasm: "+reason);if(isFileURI(wasmBinaryFile)){err("warning: Loading from a file URI ("+wasmBinaryFile+") is not supported in most browsers. See https://emscripten.org/docs/getting_started/FAQ.html#how-do-i-run-a-local-webserver-for-testing-why-does-my-program-stall-in-downloading-or-preparing")}abort(reason)})}function instantiateAsync(){if(!wasmBinary&&typeof WebAssembly.instantiateStreaming==="function"&&!isDataURI(wasmBinaryFile)&&!isFileURI(wasmBinaryFile)&&typeof fetch==="function"){return fetch(wasmBinaryFile,{credentials:"same-origin"}).then(function(response){var result=WebAssembly.instantiateStreaming(response,info);return result.then(receiveInstantiationResult,function(reason){err("wasm streaming compile failed: "+reason);err("falling back to ArrayBuffer instantiation");return instantiateArrayBuffer(receiveInstantiationResult)})})}else{return instantiateArrayBuffer(receiveInstantiationResult)}}if(Module["instantiateWasm"]){try{var exports=Module["instantiateWasm"](info,receiveInstance);return exports}catch(e){err("Module.instantiateWasm callback failed with error: "+e);return false}}instantiateAsync().catch(readyPromiseReject);return{}}var tempDouble;var tempI64;function callRuntimeCallbacks(callbacks){while(callbacks.length>0){var callback=callbacks.shift();if(typeof callback=="function"){callback(Module);continue}var func=callback.func;if(typeof func==="number"){if(callback.arg===undefined){getWasmTableEntry(func)()}else{getWasmTableEntry(func)(callback.arg)}}else{func(callback.arg===undefined?null:callback.arg)}}}function demangle(func){warnOnce("warning: build with -s DEMANGLE_SUPPORT=1 to link in libcxxabi demangling");return func}function demangleAll(text){var regex=/\b_Z[\w\d_]+/g;return text.replace(regex,function(x){var y=demangle(x);return x===y?x:y+" ["+x+"]"})}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)}assert(wasmTable.get(funcPtr)==func,"JavaScript-side Wasm function table mirror is out of date!");return func}function jsStackTrace(){var error=new Error;if(!error.stack){try{throw new Error}catch(e){error=e}if(!error.stack){return"(no stack trace available)"}}return error.stack.toString()}function setWasmTableEntry(idx,func){wasmTable.set(idx,func);wasmTableMirror[idx]=func}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}else{return name}}function createNamedFunction(name,body){name=makeLegalFunctionName(name);return new Function("body","return function "+name+"() {\n"+' "use strict";'+" return body.apply(this, arguments);\n"+"};\n")(body)}var emval_handle_array=[{},{value:undefined},{value:null},{value:true},{value:false}];var emval_free_list=[];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=5;i>2])}var awaitingDependencies={};var typeDependencies={};var InternalError=undefined;function throwInternalError(message){throw new InternalError(message)}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>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(){}var registeredPointers={};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 "'+_embind_repr(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 "'+_embind_repr(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 "'+_embind_repr(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 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 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)}function getInheritedInstance(class_,ptr){ptr=getBasestPointer(class_,ptr);return registeredInstances[ptr]}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 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&®isteredClass.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){assert("dynCall_"+sig in Module,"bad function pointer type - no table for sig '"+sig+"'");if(args&&args.length){assert(args.length===sig.substring(1).replace(/j/g,"--").length)}else{assert(sig.length==1)}var f=Module["dynCall_"+sig];return args&&args.length?f.apply(null,[ptr].concat(args)):f.call(null,ptr)}function dynCall(sig,ptr,args){if(sig.includes("j")){return dynCallLegacy(sig,ptr,args)}assert(getWasmTableEntry(ptr),"missing table entry in dynCall: "+ptr);return getWasmTableEntry(ptr).apply(null,args)}function getDynCaller(sig,ptr){assert(sig.includes("j"),"getDynCaller should only be called with i64 sigs");var argCache=[];return function(){argCache.length=arguments.length;for(var i=0;i0?", ":"")+argsListWired}invokerFnBody+=(returns?"var rv = ":"")+"invoker(fn"+(argsListWired.length>0?", ":"")+argsListWired+");\n";if(needsDestructorStack){invokerFnBody+="runDestructors(destructors);\n"}else{for(var i=isClassMethodFunc?1:2;i>2)+i])}return array}function __embind_register_class_class_function(rawClassType,methodName,argCount,rawArgTypesAddr,invokerSignature,rawInvoker,fn){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}return[]});return[]})}function __embind_register_class_constructor(rawClassType,argCount,rawArgTypesAddr,invokerSignature,invoker,rawConstructor){assert(argCount>0);var rawArgTypes=heap32VectorToArray(argCount,rawArgTypesAddr);invoker=embind__requireFunction(invokerSignature,invoker);whenDependentTypesAreResolved([],[rawClassType],function(classType){classType=classType[0];var humanName="constructor "+classType.name;if(undefined===classType.registeredClass.constructor_body){classType.registeredClass.constructor_body=[]}if(undefined!==classType.registeredClass.constructor_body[argCount-1]){throw new BindingError("Cannot register multiple constructors with identical number of parameters ("+(argCount-1)+") for class '"+classType.name+"'! Overload resolution is currently only performed using the parameter count, not actual type info!")}classType.registeredClass.constructor_body[argCount-1]=function unboundTypeHandler(){throwUnboundTypeError("Cannot construct "+classType.name+" due to unbound types",rawArgTypes)};whenDependentTypesAreResolved([],rawArgTypes,function(argTypes){argTypes.splice(1,0,null);classType.registeredClass.constructor_body[argCount-1]=craftInvokerFunction(humanName,argTypes,null,invoker,rawConstructor);return[]});return[]})}function __embind_register_class_function(rawClassType,methodName,argCount,rawArgTypesAddr,invokerSignature,rawInvoker,context,isPureVirtual){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 validateThis(this_,classType,humanName){if(!(this_ instanceof Object)){throwBindingError(humanName+' with invalid "this": '+this_)}if(!(this_ instanceof classType.registeredClass.constructor)){throwBindingError(humanName+' incompatible with "this" of type '+this_.constructor.name)}if(!this_.$$.ptr){throwBindingError("cannot call emscripten binding method "+humanName+" on deleted object")}return upcastPointer(this_.$$.ptr,this_.$$.ptrType.registeredClass,classType.registeredClass)}function __embind_register_class_property(classType,fieldName,getterReturnType,getterSignature,getter,getterContext,setterArgumentType,setterSignature,setter,setterContext){fieldName=readLatin1String(fieldName);getter=embind__requireFunction(getterSignature,getter);whenDependentTypesAreResolved([],[classType],function(classType){classType=classType[0];var humanName=classType.name+"."+fieldName;var desc={get:function(){throwUnboundTypeError("Cannot access "+humanName+" due to unbound types",[getterReturnType,setterArgumentType])},enumerable:true,configurable:true};if(setter){desc.set=function(){throwUnboundTypeError("Cannot access "+humanName+" due to unbound types",[getterReturnType,setterArgumentType])}}else{desc.set=function(v){throwBindingError(humanName+" is a read-only property")}}Object.defineProperty(classType.registeredClass.instancePrototype,fieldName,desc);whenDependentTypesAreResolved([],setter?[getterReturnType,setterArgumentType]:[getterReturnType],function(types){var getterReturnType=types[0];var desc={get:function(){var ptr=validateThis(this,classType,humanName+" getter");return getterReturnType["fromWireType"](getter(getterContext,ptr))},enumerable:true};if(setter){setter=embind__requireFunction(setterSignature,setter);var setterArgumentType=types[1];desc.set=function(v){var ptr=validateThis(this,classType,humanName+" setter");var destructors=[];setter(setterContext,ptr,setterArgumentType["toWireType"](destructors,v));runDestructors(destructors)}}Object.defineProperty(classType.registeredClass.instancePrototype,fieldName,desc);return[]});return[]})}function __embind_register_constant(name,type,value){name=readLatin1String(name);whenDependentTypesAreResolved([],[type],function(type){type=type[0];Module[name]=type["fromWireType"](value);return[]})}function __emval_decref(handle){if(handle>4&&0===--emval_handle_array[handle].refcount){emval_handle_array[handle]=undefined;emval_free_list.push(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 enumReadValueFromPointer(name,shift,signed){switch(shift){case 0:return function(pointer){var heap=signed?HEAP8:HEAPU8;return this["fromWireType"](heap[pointer])};case 1:return function(pointer){var heap=signed?HEAP16:HEAPU16;return this["fromWireType"](heap[pointer>>1])};case 2:return function(pointer){var heap=signed?HEAP32:HEAPU32;return this["fromWireType"](heap[pointer>>2])};default:throw new TypeError("Unknown integer type: "+name)}}function __embind_register_enum(rawType,name,size,isSigned){var shift=getShiftFromSize(size);name=readLatin1String(name);function ctor(){}ctor.values={};registerType(rawType,{name:name,constructor:ctor,"fromWireType":function(c){return this.constructor.values[c]},"toWireType":function(destructors,c){return c.value},"argPackAdvance":8,"readValueFromPointer":enumReadValueFromPointer(name,shift,isSigned),destructorFunction:null});exposePublicSymbol(name,ctor)}function __embind_register_enum_value(rawEnumType,name,enumValue){var enumType=requireRegisteredType(rawEnumType,"enum");name=readLatin1String(name);var Enum=enumType.constructor;var Value=Object.create(enumType.constructor.prototype,{value:{value:enumValue},constructor:{value:createNamedFunction(enumType.name+"_"+name,function(){})}});Enum.values[enumValue]=Value;Enum[name]=Value}function _embind_repr(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){if(typeof value!=="number"&&typeof value!=="boolean"){throw new TypeError('Cannot convert "'+_embind_repr(value)+'" to '+this.name)}return value},"argPackAdvance":8,"readValueFromPointer":floatReadValueFromPointer(name,shift),destructorFunction:null})}function __embind_register_function(name,argCount,rawArgTypesAddr,signature,rawInvoker,fn){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);if(maxRange===-1){maxRange=4294967295}var shift=getShiftFromSize(size);var fromWireType=function(value){return value};if(minRange===0){var bitshift=32-8*size;fromWireType=function(value){return value<>>bitshift}}var isUnsignedType=name.includes("unsigned");var checkAssertions=function(value,toTypeName){if(typeof value!=="number"&&typeof value!=="boolean"){throw new TypeError('Cannot convert "'+_embind_repr(value)+'" to '+toTypeName)}if(valuemaxRange){throw new TypeError('Passing a number "'+_embind_repr(value)+'" from JS side to C/C++ side to an argument of type "'+name+'", which is outside the valid range ['+minRange+", "+maxRange+"]!")}};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(buffer,data,size)}name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":decodeMemoryView,"argPackAdvance":8,"readValueFromPointer":decodeMemoryView},{ignoreDuplicateRegistrations:true})}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 str;if(stdStringIsUTF8){var decodeStartPtr=value+4;for(var i=0;i<=length;++i){var currentBytePtr=value+4+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>2]=length;if(stdStringIsUTF8&&valueIsOfTypeString){stringToUTF8(value,ptr+4,length+1)}else{if(valueIsOfTypeString){for(var i=0;i255){_free(ptr);throwBindingError("String has UTF-16 code units that do not fit in 8 bits")}HEAPU8[ptr+4+i]=charCode}}else{for(var i=0;i>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_value_object(rawType,name,constructorSignature,rawConstructor,destructorSignature,rawDestructor){structRegistrations[rawType]={name:readLatin1String(name),rawConstructor:embind__requireFunction(constructorSignature,rawConstructor),rawDestructor:embind__requireFunction(destructorSignature,rawDestructor),fields:[]}}function __embind_register_value_object_field(structType,fieldName,getterReturnType,getterSignature,getter,getterContext,setterArgumentType,setterSignature,setter,setterContext){structRegistrations[structType].fields.push({fieldName:readLatin1String(fieldName),getterReturnType:getterReturnType,getter:embind__requireFunction(getterSignature,getter),getterContext:getterContext,setterArgumentType:setterArgumentType,setter:embind__requireFunction(setterSignature,setter),setterContext:setterContext})}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}})}function __emval_allocateDestructors(destructorsRef){var destructors=[];HEAP32[destructorsRef>>2]=Emval.toHandle(destructors);return destructors}var emval_symbols={};function getStringOrSymbol(address){var symbol=emval_symbols[address];if(symbol===undefined){return readLatin1String(address)}else{return symbol}}var emval_methodCallers=[];function __emval_call_method(caller,handle,methodName,destructorsRef,args){caller=emval_methodCallers[caller];handle=Emval.toValue(handle);methodName=getStringOrSymbol(methodName);return caller(handle,methodName,__emval_allocateDestructors(destructorsRef),args)}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>2)+i],"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 params=["retType"];var args=[retType];var argsList="";for(var i=0;i4){emval_handle_array[handle].refcount+=1}}function __emval_new_cstring(v){return Emval.toHandle(getStringOrSymbol(v))}function __emval_new_object(){return Emval.toHandle({})}function __emval_run_destructors(handle){var destructors=Emval.toValue(handle);runDestructors(destructors);__emval_decref(handle)}function __emval_set_property(handle,key,value){handle=Emval.toValue(handle);key=Emval.toValue(key);value=Emval.toValue(value);handle[key]=value}function __emval_take_value(type,argv){type=requireRegisteredType(type,"_emval_take_value");var v=type["readValueFromPointer"](argv);return Emval.toHandle(v)}function _abort(){abort("native code called abort()")}var _emscripten_get_now;if(ENVIRONMENT_IS_NODE){_emscripten_get_now=(()=>{var t=process["hrtime"]();return t[0]*1e3+t[1]/1e6})}else _emscripten_get_now=(()=>performance.now());function _emscripten_memcpy_big(dest,src,num){HEAPU8.copyWithin(dest,src,src+num)}function emscripten_realloc_buffer(size){try{wasmMemory.grow(size-buffer.byteLength+65535>>>16);updateGlobalBufferAndViews(wasmMemory.buffer);return 1}catch(e){err("emscripten_realloc_buffer: Attempted to grow heap from "+buffer.byteLength+" bytes to "+size+" bytes, but got error: "+e)}}function _emscripten_resize_heap(requestedSize){var oldSize=HEAPU8.length;requestedSize=requestedSize>>>0;assert(requestedSize>oldSize);var maxHeapSize=2147483648;if(requestedSize>maxHeapSize){err("Cannot enlarge memory, asked to go up to "+requestedSize+" bytes, but the limit is "+maxHeapSize+" bytes!");return false}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){err("Warning: Enlarging memory arrays, this is not fast! "+[oldSize,newSize]);return true}}err("Failed to grow the heap from "+oldSize+" bytes to "+newSize+" bytes, not enough memory!");return false}function _exit(status){exit(status)}var SYSCALLS={mappings:{},buffers:[null,[],[]],printChar:function(stream,curr){var buffer=SYSCALLS.buffers[stream];assert(buffer);if(curr===0||curr===10){(stream===1?out:err)(UTF8ArrayToString(buffer,0));buffer.length=0}else{buffer.push(curr)}},varargs:undefined,get:function(){assert(SYSCALLS.varargs!=undefined);SYSCALLS.varargs+=4;var ret=HEAP32[SYSCALLS.varargs-4>>2];return ret},getStr:function(ptr){var ret=UTF8ToString(ptr);return ret},get64:function(low,high){if(low>=0)assert(high===0);else assert(high===-1);return low}};function _fd_close(fd){abort("it should not be possible to operate on streams when !SYSCALLS_REQUIRE_FILESYSTEM");return 0}function _fd_seek(fd,offset_low,offset_high,whence,newOffset){abort("it should not be possible to operate on streams when !SYSCALLS_REQUIRE_FILESYSTEM")}function flush_NO_FILESYSTEM(){if(typeof _fflush!=="undefined")_fflush(0);var buffers=SYSCALLS.buffers;if(buffers[1].length)SYSCALLS.printChar(1,10);if(buffers[2].length)SYSCALLS.printChar(2,10)}function _fd_write(fd,iov,iovcnt,pnum){var num=0;for(var i=0;i>2];var len=HEAP32[iov+4>>2];iov+=8;for(var j=0;j>2]=num;return 0}function _gettimeofday(ptr){var now=Date.now();HEAP32[ptr>>2]=now/1e3|0;HEAP32[ptr+4>>2]=now%1e3*1e3|0;return 0}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 ASSERTIONS=true;function intArrayToString(array){var ret=[];for(var i=0;i255){if(ASSERTIONS){assert(false,"Character code "+chr+" ("+String.fromCharCode(chr)+") at offset "+i+" not in 0x00-0xFF.")}chr&=255}ret.push(String.fromCharCode(chr))}return ret.join("")}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(i0){return}stackCheckInit();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"]();assert(!Module["_main"],'compiled without a main, but one is present. if you added it from JS, use Module["onRuntimeInitialized"]');postRun()}if(Module["setStatus"]){Module["setStatus"]("Running...");setTimeout(function(){setTimeout(function(){Module["setStatus"]("")},1);doRun()},1)}else{doRun()}checkStackCookie()}Module["run"]=run;function checkUnflushedContent(){var oldOut=out;var oldErr=err;var has=false;out=err=function(x){has=true};try{var flush=flush_NO_FILESYSTEM;if(flush)flush()}catch(e){}out=oldOut;err=oldErr;if(has){warnOnce("stdio streams had content in them that was not flushed. you should set EXIT_RUNTIME to 1 (see the FAQ), or make sure to emit a newline when you printf etc.");warnOnce("(this may also be due to not including full filesystem support - try building with -s FORCE_FILESYSTEM=1)")}}function exit(status,implicit){EXITSTATUS=status;checkUnflushedContent();if(keepRuntimeAlive()){if(!implicit){var msg="program exited (with status: "+status+"), but EXIT_RUNTIME is not set, so halting execution but not exiting the runtime or preventing further async execution (build with EXIT_RUNTIME=1, if you want a true shutdown)";readyPromiseReject(msg);err(msg)}}else{exitRuntime()}procExit(status)}function procExit(code){EXITSTATUS=code;if(!keepRuntimeAlive()){if(Module["onExit"])Module["onExit"](code);ABORT=true}quit_(code,new ExitStatus(code))}if(Module["preInit"]){if(typeof Module["preInit"]=="function")Module["preInit"]=[Module["preInit"]];while(Module["preInit"].length>0){Module["preInit"].pop()()}}run(); - - - return PHYSX.ready -} -); -})(); -if (typeof exports === 'object' && typeof module === 'object') - module.exports = PHYSX; -else if (typeof define === 'function' && define['amd']) - define([], function() { return PHYSX; }); -else if (typeof exports === 'object') - exports["PHYSX"] = PHYSX; diff --git a/packages/physics-physx/libs/physx.release.js b/packages/physics-physx/libs/physx.release.js deleted file mode 100644 index dfaea2461..000000000 --- a/packages/physics-physx/libs/physx.release.js +++ /dev/null @@ -1,21 +0,0 @@ - -var PHYSX = (() => { - var _scriptDir = typeof document !== 'undefined' && document.currentScript ? document.currentScript.src : undefined; - if (typeof __filename !== 'undefined') _scriptDir = _scriptDir || __filename; - return ( -function(PHYSX) { - PHYSX = PHYSX || {}; - -var Module=typeof PHYSX!=="undefined"?PHYSX:{};var objAssign=Object.assign;var readyPromiseResolve,readyPromiseReject;Module["ready"]=new Promise(function(resolve,reject){readyPromiseResolve=resolve;readyPromiseReject=reject});if(!Object.getOwnPropertyDescriptor(Module["ready"],"_main")){Object.defineProperty(Module["ready"],"_main",{configurable:true,get:function(){abort("You are getting _main on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_main",{configurable:true,set:function(){abort("You are setting _main on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"___getTypeName")){Object.defineProperty(Module["ready"],"___getTypeName",{configurable:true,get:function(){abort("You are getting ___getTypeName on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"___getTypeName",{configurable:true,set:function(){abort("You are setting ___getTypeName on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"___embind_register_native_and_builtin_types")){Object.defineProperty(Module["ready"],"___embind_register_native_and_builtin_types",{configurable:true,get:function(){abort("You are getting ___embind_register_native_and_builtin_types on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"___embind_register_native_and_builtin_types",{configurable:true,set:function(){abort("You are setting ___embind_register_native_and_builtin_types on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"_fflush")){Object.defineProperty(Module["ready"],"_fflush",{configurable:true,get:function(){abort("You are getting _fflush on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"_fflush",{configurable:true,set:function(){abort("You are setting _fflush on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}if(!Object.getOwnPropertyDescriptor(Module["ready"],"onRuntimeInitialized")){Object.defineProperty(Module["ready"],"onRuntimeInitialized",{configurable:true,get:function(){abort("You are getting onRuntimeInitialized on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}});Object.defineProperty(Module["ready"],"onRuntimeInitialized",{configurable:true,set:function(){abort("You are setting onRuntimeInitialized on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js")}})}var moduleOverrides=objAssign({},Module);var arguments_=[];var thisProgram="./this.program";var quit_=(status,toThrow)=>{throw toThrow};var ENVIRONMENT_IS_WEB=typeof window==="object";var ENVIRONMENT_IS_WORKER=typeof importScripts==="function";var ENVIRONMENT_IS_NODE=typeof process==="object"&&typeof process.versions==="object"&&typeof process.versions.node==="string";var ENVIRONMENT_IS_SHELL=!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_NODE&&!ENVIRONMENT_IS_WORKER;if(Module["ENVIRONMENT"]){throw new Error("Module.ENVIRONMENT has been deprecated. To force the environment, use the ENVIRONMENT compile-time option (for example, -s ENVIRONMENT=web or -s ENVIRONMENT=node)")}var scriptDirectory="";function locateFile(path){if(Module["locateFile"]){return Module["locateFile"](path,scriptDirectory)}return scriptDirectory+path}var read_,readAsync,readBinary,setWindowTitle;function logExceptionOnExit(e){if(e instanceof ExitStatus)return;let toLog=e;if(e&&typeof e==="object"&&e.stack){toLog=[e,e.stack]}err("exiting due to exception: "+toLog)}var fs;var nodePath;var requireNodeFS;if(ENVIRONMENT_IS_NODE){if(!(typeof process==="object"&&typeof require==="function"))throw new Error("not compiled for this environment (did you build to HTML and try to run it not on the web, or set ENVIRONMENT to something - like node - and run it someplace else - like on the web?)");if(ENVIRONMENT_IS_WORKER){scriptDirectory=require("path").dirname(scriptDirectory)+"/"}else{scriptDirectory=__dirname+"/"}requireNodeFS=function(){if(!nodePath){fs=require("fs");nodePath=require("path")}};read_=function shell_read(filename,binary){requireNodeFS();filename=nodePath["normalize"](filename);return fs.readFileSync(filename,binary?null:"utf8")};readBinary=function readBinary(filename){var ret=read_(filename,true);if(!ret.buffer){ret=new Uint8Array(ret)}assert(ret.buffer);return ret};readAsync=function readAsync(filename,onload,onerror){requireNodeFS();filename=nodePath["normalize"](filename);fs.readFile(filename,function(err,data){if(err)onerror(err);else onload(data.buffer)})};if(process["argv"].length>1){thisProgram=process["argv"][1].replace(/\\/g,"/")}arguments_=process["argv"].slice(2);process["on"]("uncaughtException",function(ex){if(!(ex instanceof ExitStatus)){throw ex}});process["on"]("unhandledRejection",function(reason){throw reason});quit_=((status,toThrow)=>{if(keepRuntimeAlive()){process["exitCode"]=status;throw toThrow}logExceptionOnExit(toThrow);process["exit"](status)});Module["inspect"]=function(){return"[Emscripten Module object]"}}else if(ENVIRONMENT_IS_SHELL){if(typeof process==="object"&&typeof require==="function"||typeof window==="object"||typeof importScripts==="function")throw new Error("not compiled for this environment (did you build to HTML and try to run it not on the web, or set ENVIRONMENT to something - like node - and run it someplace else - like on the web?)");if(typeof read!="undefined"){read_=function shell_read(f){return read(f)}}readBinary=function readBinary(f){let data;if(typeof readbuffer==="function"){return new Uint8Array(readbuffer(f))}data=read(f,"binary");assert(typeof data==="object");return data};readAsync=function readAsync(f,onload,onerror){setTimeout(()=>onload(readBinary(f)),0)};if(typeof scriptArgs!="undefined"){arguments_=scriptArgs}else if(typeof arguments!="undefined"){arguments_=arguments}if(typeof quit==="function"){quit_=((status,toThrow)=>{logExceptionOnExit(toThrow);quit(status)})}if(typeof print!=="undefined"){if(typeof console==="undefined")console={};console.log=print;console.warn=console.error=typeof printErr!=="undefined"?printErr:print}}else if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){if(ENVIRONMENT_IS_WORKER){scriptDirectory=self.location.href}else 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=""}if(!(typeof window==="object"||typeof importScripts==="function"))throw new Error("not compiled for this environment (did you build to HTML and try to run it not on the web, or set ENVIRONMENT to something - like node - and run it someplace else - like on the web?)");{read_=function(url){var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.send(null);return xhr.responseText};if(ENVIRONMENT_IS_WORKER){readBinary=function(url){var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.responseType="arraybuffer";xhr.send(null);return new Uint8Array(xhr.response)}}readAsync=function(url,onload,onerror){var xhr=new XMLHttpRequest;xhr.open("GET",url,true);xhr.responseType="arraybuffer";xhr.onload=function(){if(xhr.status==200||xhr.status==0&&xhr.response){onload(xhr.response);return}onerror()};xhr.onerror=onerror;xhr.send(null)}}setWindowTitle=(title=>document.title=title)}else{throw new Error("environment detection error")}var out=Module["print"]||console.log.bind(console);var err=Module["printErr"]||console.warn.bind(console);objAssign(Module,moduleOverrides);moduleOverrides=null;if(Module["arguments"])arguments_=Module["arguments"];if(!Object.getOwnPropertyDescriptor(Module,"arguments")){Object.defineProperty(Module,"arguments",{configurable:true,get:function(){abort("Module.arguments has been replaced with plain arguments_ (the initial value can be provided on Module, but after startup the value is only looked for on a local variable of that name)")}})}if(Module["thisProgram"])thisProgram=Module["thisProgram"];if(!Object.getOwnPropertyDescriptor(Module,"thisProgram")){Object.defineProperty(Module,"thisProgram",{configurable:true,get:function(){abort("Module.thisProgram has been replaced with plain thisProgram (the initial value can be provided on Module, but after startup the value is only looked for on a local variable of that name)")}})}if(Module["quit"])quit_=Module["quit"];if(!Object.getOwnPropertyDescriptor(Module,"quit")){Object.defineProperty(Module,"quit",{configurable:true,get:function(){abort("Module.quit has been replaced with plain quit_ (the initial value can be provided on Module, but after startup the value is only looked for on a local variable of that name)")}})}assert(typeof Module["memoryInitializerPrefixURL"]==="undefined","Module.memoryInitializerPrefixURL option was removed, use Module.locateFile instead");assert(typeof Module["pthreadMainPrefixURL"]==="undefined","Module.pthreadMainPrefixURL option was removed, use Module.locateFile instead");assert(typeof Module["cdInitializerPrefixURL"]==="undefined","Module.cdInitializerPrefixURL option was removed, use Module.locateFile instead");assert(typeof Module["filePackagePrefixURL"]==="undefined","Module.filePackagePrefixURL option was removed, use Module.locateFile instead");assert(typeof Module["read"]==="undefined","Module.read option was removed (modify read_ in JS)");assert(typeof Module["readAsync"]==="undefined","Module.readAsync option was removed (modify readAsync in JS)");assert(typeof Module["readBinary"]==="undefined","Module.readBinary option was removed (modify readBinary in JS)");assert(typeof Module["setWindowTitle"]==="undefined","Module.setWindowTitle option was removed (modify setWindowTitle in JS)");assert(typeof Module["TOTAL_MEMORY"]==="undefined","Module.TOTAL_MEMORY has been renamed Module.INITIAL_MEMORY");if(!Object.getOwnPropertyDescriptor(Module,"read")){Object.defineProperty(Module,"read",{configurable:true,get:function(){abort("Module.read has been replaced with plain read_ (the initial value can be provided on Module, but after startup the value is only looked for on a local variable of that name)")}})}if(!Object.getOwnPropertyDescriptor(Module,"readAsync")){Object.defineProperty(Module,"readAsync",{configurable:true,get:function(){abort("Module.readAsync has been replaced with plain readAsync (the initial value can be provided on Module, but after startup the value is only looked for on a local variable of that name)")}})}if(!Object.getOwnPropertyDescriptor(Module,"readBinary")){Object.defineProperty(Module,"readBinary",{configurable:true,get:function(){abort("Module.readBinary has been replaced with plain readBinary (the initial value can be provided on Module, but after startup the value is only looked for on a local variable of that name)")}})}if(!Object.getOwnPropertyDescriptor(Module,"setWindowTitle")){Object.defineProperty(Module,"setWindowTitle",{configurable:true,get:function(){abort("Module.setWindowTitle has been replaced with plain setWindowTitle (the initial value can be provided on Module, but after startup the value is only looked for on a local variable of that name)")}})}assert(!ENVIRONMENT_IS_SHELL,"shell environment detected but not enabled at build time. Add 'shell' to `-s ENVIRONMENT` to enable.");var POINTER_SIZE=4;function warnOnce(text){if(!warnOnce.shown)warnOnce.shown={};if(!warnOnce.shown[text]){warnOnce.shown[text]=1;err(text)}}function convertJsFunctionToWasm(func,sig){if(typeof WebAssembly.Function==="function"){var typeNames={"i":"i32","j":"i64","f":"f32","d":"f64"};var type={parameters:[],results:sig[0]=="v"?[]:[typeNames[sig[0]]]};for(var i=1;i=endIdx))++endPtr;if(endPtr-idx>16&&heap.subarray&&UTF8Decoder){return UTF8Decoder.decode(heap.subarray(idx,endPtr))}else{var str="";while(idx>10,56320|ch&1023)}}}return str}function UTF8ToString(ptr,maxBytesToRead){return ptr?UTF8ArrayToString(HEAPU8,ptr,maxBytesToRead):""}function stringToUTF8Array(str,heap,outIdx,maxBytesToWrite){if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i=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;if(u>1114111)warnOnce("Invalid Unicode code point 0x"+u.toString(16)+" encountered when serializing a JS string to a UTF-8 string in wasm memory! (Valid unicode code points should be in range 0-0x10FFFF).");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){assert(typeof maxBytesToWrite=="number","stringToUTF8(str, outPtr, maxBytesToWrite) is missing the third parameter that specifies the length of the output buffer!");return stringToUTF8Array(str,HEAPU8,outPtr,maxBytesToWrite)}function lengthBytesUTF8(str){var len=0;for(var i=0;i=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127)++len;else if(u<=2047)len+=2;else if(u<=65535)len+=3;else len+=4}return len}var UTF16Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf-16le"):undefined;function UTF16ToString(ptr,maxBytesToRead){assert(ptr%2==0,"Pointer passed to UTF16ToString must be aligned to two bytes!");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))}else{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){assert(outPtr%2==0,"Pointer passed to stringToUTF16 must be aligned to two bytes!");assert(typeof maxBytesToWrite=="number","stringToUTF16(str, outPtr, maxBytesToWrite) is missing the third parameter that specifies the length of the output buffer!");if(maxBytesToWrite===undefined){maxBytesToWrite=2147483647}if(maxBytesToWrite<2)return 0;maxBytesToWrite-=2;var startPtr=outPtr;var numCharsToWrite=maxBytesToWrite>1]=codeUnit;outPtr+=2}HEAP16[outPtr>>1]=0;return outPtr-startPtr}function lengthBytesUTF16(str){return str.length*2}function UTF32ToString(ptr,maxBytesToRead){assert(ptr%4==0,"Pointer passed to UTF32ToString must be aligned to four bytes!");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){assert(outPtr%4==0,"Pointer passed to stringToUTF32 must be aligned to four bytes!");assert(typeof maxBytesToWrite=="number","stringToUTF32(str, outPtr, maxBytesToWrite) is missing the third parameter that specifies the length of the output buffer!");if(maxBytesToWrite===undefined){maxBytesToWrite=2147483647}if(maxBytesToWrite<4)return 0;var startPtr=outPtr;var endPtr=startPtr+maxBytesToWrite-4;for(var i=0;i=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=55296&&codeUnit<=57343)++i;len+=4}return len}function writeArrayToMemory(array,buffer){assert(array.length>=0,"writeArrayToMemory array must have a length (should be an array or typed array)");HEAP8.set(array,buffer)}function writeAsciiToMemory(str,buffer,dontAddNull){for(var i=0;i>0]=str.charCodeAt(i)}if(!dontAddNull)HEAP8[buffer>>0]=0}function alignUp(x,multiple){if(x%multiple>0){x+=multiple-x%multiple}return x}var buffer,HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;function updateGlobalBufferAndViews(buf){buffer=buf;Module["HEAP8"]=HEAP8=new Int8Array(buf);Module["HEAP16"]=HEAP16=new Int16Array(buf);Module["HEAP32"]=HEAP32=new Int32Array(buf);Module["HEAPU8"]=HEAPU8=new Uint8Array(buf);Module["HEAPU16"]=HEAPU16=new Uint16Array(buf);Module["HEAPU32"]=HEAPU32=new Uint32Array(buf);Module["HEAPF32"]=HEAPF32=new Float32Array(buf);Module["HEAPF64"]=HEAPF64=new Float64Array(buf)}var TOTAL_STACK=5242880;if(Module["TOTAL_STACK"])assert(TOTAL_STACK===Module["TOTAL_STACK"],"the stack size can no longer be determined at runtime");var INITIAL_MEMORY=Module["INITIAL_MEMORY"]||16777216;if(!Object.getOwnPropertyDescriptor(Module,"INITIAL_MEMORY")){Object.defineProperty(Module,"INITIAL_MEMORY",{configurable:true,get:function(){abort("Module.INITIAL_MEMORY has been replaced with plain INITIAL_MEMORY (the initial value can be provided on Module, but after startup the value is only looked for on a local variable of that name)")}})}assert(INITIAL_MEMORY>=TOTAL_STACK,"INITIAL_MEMORY should be larger than TOTAL_STACK, was "+INITIAL_MEMORY+"! (TOTAL_STACK="+TOTAL_STACK+")");assert(typeof Int32Array!=="undefined"&&typeof Float64Array!=="undefined"&&Int32Array.prototype.subarray!==undefined&&Int32Array.prototype.set!==undefined,"JS engine does not provide full typed array support");assert(!Module["wasmMemory"],"Use of `wasmMemory` detected. Use -s IMPORTED_MEMORY to define wasmMemory externally");assert(INITIAL_MEMORY==16777216,"Detected runtime INITIAL_MEMORY setting. Use -s IMPORTED_MEMORY to define wasmMemory dynamically");var wasmTable;function writeStackCookie(){var max=_emscripten_stack_get_end();assert((max&3)==0);HEAP32[max+4>>2]=34821223;HEAP32[max+8>>2]=2310721022;HEAP32[0]=1668509029}function checkStackCookie(){if(ABORT)return;var max=_emscripten_stack_get_end();var cookie1=HEAPU32[max+4>>2];var cookie2=HEAPU32[max+8>>2];if(cookie1!=34821223||cookie2!=2310721022){abort("Stack overflow! Stack cookie has been overwritten, expected hex dwords 0x89BACDFE and 0x2135467, but received 0x"+cookie2.toString(16)+" 0x"+cookie1.toString(16))}if(HEAP32[0]!==1668509029)abort("Runtime error: The application has corrupted its heap memory area (address zero)!")}(function(){var h16=new Int16Array(1);var h8=new Int8Array(h16.buffer);h16[0]=25459;if(h8[0]!==115||h8[1]!==99)throw"Runtime error: expected the system to be little-endian! (Run with -s SUPPORT_BIG_ENDIAN=1 to bypass)"})();var __ATPRERUN__=[];var __ATINIT__=[];var __ATPOSTRUN__=[];var runtimeInitialized=false;var runtimeExited=false;var runtimeKeepaliveCounter=0;function keepRuntimeAlive(){return noExitRuntime||runtimeKeepaliveCounter>0}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(){checkStackCookie();assert(!runtimeInitialized);runtimeInitialized=true;callRuntimeCallbacks(__ATINIT__)}function exitRuntime(){checkStackCookie();runtimeExited=true}function postRun(){checkStackCookie();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)}assert(Math.imul,"This browser does not support Math.imul(), build with LEGACY_VM_SUPPORT or POLYFILL_OLD_MATH_FUNCTIONS to add in a polyfill");assert(Math.fround,"This browser does not support Math.fround(), build with LEGACY_VM_SUPPORT or POLYFILL_OLD_MATH_FUNCTIONS to add in a polyfill");assert(Math.clz32,"This browser does not support Math.clz32(), build with LEGACY_VM_SUPPORT or POLYFILL_OLD_MATH_FUNCTIONS to add in a polyfill");assert(Math.trunc,"This browser does not support Math.trunc(), build with LEGACY_VM_SUPPORT or POLYFILL_OLD_MATH_FUNCTIONS to add in a polyfill");var runDependencies=0;var runDependencyWatcher=null;var dependenciesFulfilled=null;var runDependencyTracking={};function addRunDependency(id){runDependencies++;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}if(id){assert(!runDependencyTracking[id]);runDependencyTracking[id]=1;if(runDependencyWatcher===null&&typeof setInterval!=="undefined"){runDependencyWatcher=setInterval(function(){if(ABORT){clearInterval(runDependencyWatcher);runDependencyWatcher=null;return}var shown=false;for(var dep in runDependencyTracking){if(!shown){shown=true;err("still waiting on run dependencies:")}err("dependency: "+dep)}if(shown){err("(end of list)")}},1e4)}}else{err("warning: run dependency added without ID")}}function removeRunDependency(id){runDependencies--;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}if(id){assert(runDependencyTracking[id]);delete runDependencyTracking[id]}else{err("warning: run dependency removed without ID")}if(runDependencies==0){if(runDependencyWatcher!==null){clearInterval(runDependencyWatcher);runDependencyWatcher=null}if(dependenciesFulfilled){var callback=dependenciesFulfilled;dependenciesFulfilled=null;callback()}}}Module["preloadedImages"]={};Module["preloadedAudios"]={};function abort(what){{if(Module["onAbort"]){Module["onAbort"](what)}}what="Aborted("+what+")";err(what);ABORT=true;EXITSTATUS=1;var e=new WebAssembly.RuntimeError(what);readyPromiseReject(e);throw e}var FS={error:function(){abort("Filesystem support (FS) was not included. The problem is that you are using files from JS, but files were not used from C/C++, so filesystem support was not auto-included. You can force-include filesystem support with -s FORCE_FILESYSTEM=1")},init:function(){FS.error()},createDataFile:function(){FS.error()},createPreloadedFile:function(){FS.error()},createLazyFile:function(){FS.error()},open:function(){FS.error()},mkdev:function(){FS.error()},registerDevice:function(){FS.error()},analyzePath:function(){FS.error()},loadFilesFromDB:function(){FS.error()},ErrnoError:function ErrnoError(){FS.error()}};Module["FS_createDataFile"]=FS.createDataFile;Module["FS_createPreloadedFile"]=FS.createPreloadedFile;var dataURIPrefix="data:application/octet-stream;base64,";function isDataURI(filename){return filename.startsWith(dataURIPrefix)}function isFileURI(filename){return filename.startsWith("file://")}function createExportWrapper(name,fixedasm){return function(){var displayName=name;var asm=fixedasm;if(!fixedasm){asm=Module["asm"]}assert(runtimeInitialized,"native function `"+displayName+"` called before runtime initialization");assert(!runtimeExited,"native function `"+displayName+"` called after runtime exit (use NO_EXIT_RUNTIME to keep it alive after main() exits)");if(!asm[name]){assert(asm[name],"exported native function `"+displayName+"` not found")}return asm[name].apply(null,arguments)}}var wasmBinaryFile;wasmBinaryFile="https://mdn.alipayobjects.com/rms/afts/file/A*YbRuSb75ENUAAAAAAAAAAAAAARQnAQ/physx.release.wasm";if(!isDataURI(wasmBinaryFile)){wasmBinaryFile=locateFile(wasmBinaryFile)}function getBinary(file){try{if(file==wasmBinaryFile&&wasmBinary){return new Uint8Array(wasmBinary)}if(readBinary){return readBinary(file)}else{throw"both async and sync fetching of the wasm failed"}}catch(err){abort(err)}}function getBinaryPromise(){if(!wasmBinary&&(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER)){if(typeof fetch==="function"&&!isFileURI(wasmBinaryFile)){return fetch(wasmBinaryFile,{credentials:"same-origin"}).then(function(response){if(!response["ok"]){throw"failed to load wasm binary file at '"+wasmBinaryFile+"'"}return response["arrayBuffer"]()}).catch(function(){return getBinary(wasmBinaryFile)})}else{if(readAsync){return new Promise(function(resolve,reject){readAsync(wasmBinaryFile,function(response){resolve(new Uint8Array(response))},reject)})}}}return Promise.resolve().then(function(){return getBinary(wasmBinaryFile)})}function createWasm(){var info={"env":asmLibraryArg,"wasi_snapshot_preview1":asmLibraryArg};function receiveInstance(instance,module){var exports=instance.exports;Module["asm"]=exports;wasmMemory=Module["asm"]["memory"];assert(wasmMemory,"memory not found in wasm exports");updateGlobalBufferAndViews(wasmMemory.buffer);wasmTable=Module["asm"]["__indirect_function_table"];assert(wasmTable,"table not found in wasm exports");addOnInit(Module["asm"]["__wasm_call_ctors"]);removeRunDependency("wasm-instantiate")}addRunDependency("wasm-instantiate");var trueModule=Module;function receiveInstantiationResult(result){assert(Module===trueModule,"the Module object should not be replaced during async compilation - perhaps the order of HTML elements is wrong?");trueModule=null;receiveInstance(result["instance"])}function instantiateArrayBuffer(receiver){return getBinaryPromise().then(function(binary){return WebAssembly.instantiate(binary,info)}).then(function(instance){return instance}).then(receiver,function(reason){err("failed to asynchronously prepare wasm: "+reason);if(isFileURI(wasmBinaryFile)){err("warning: Loading from a file URI ("+wasmBinaryFile+") is not supported in most browsers. See https://emscripten.org/docs/getting_started/FAQ.html#how-do-i-run-a-local-webserver-for-testing-why-does-my-program-stall-in-downloading-or-preparing")}abort(reason)})}function instantiateAsync(){if(!wasmBinary&&typeof WebAssembly.instantiateStreaming==="function"&&!isDataURI(wasmBinaryFile)&&!isFileURI(wasmBinaryFile)&&typeof fetch==="function"){return fetch(wasmBinaryFile,{credentials:"same-origin"}).then(function(response){var result=WebAssembly.instantiateStreaming(response,info);return result.then(receiveInstantiationResult,function(reason){err("wasm streaming compile failed: "+reason);err("falling back to ArrayBuffer instantiation");return instantiateArrayBuffer(receiveInstantiationResult)})})}else{return instantiateArrayBuffer(receiveInstantiationResult)}}if(Module["instantiateWasm"]){try{var exports=Module["instantiateWasm"](info,receiveInstance);return exports}catch(e){err("Module.instantiateWasm callback failed with error: "+e);return false}}instantiateAsync().catch(readyPromiseReject);return{}}var tempDouble;var tempI64;function callRuntimeCallbacks(callbacks){while(callbacks.length>0){var callback=callbacks.shift();if(typeof callback=="function"){callback(Module);continue}var func=callback.func;if(typeof func==="number"){if(callback.arg===undefined){getWasmTableEntry(func)()}else{getWasmTableEntry(func)(callback.arg)}}else{func(callback.arg===undefined?null:callback.arg)}}}function demangle(func){warnOnce("warning: build with -s DEMANGLE_SUPPORT=1 to link in libcxxabi demangling");return func}function demangleAll(text){var regex=/\b_Z[\w\d_]+/g;return text.replace(regex,function(x){var y=demangle(x);return x===y?x:y+" ["+x+"]"})}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)}assert(wasmTable.get(funcPtr)==func,"JavaScript-side Wasm function table mirror is out of date!");return func}function jsStackTrace(){var error=new Error;if(!error.stack){try{throw new Error}catch(e){error=e}if(!error.stack){return"(no stack trace available)"}}return error.stack.toString()}function setWasmTableEntry(idx,func){wasmTable.set(idx,func);wasmTableMirror[idx]=func}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}else{return name}}function createNamedFunction(name,body){name=makeLegalFunctionName(name);return function(){"use strict";return body.apply(this,arguments)}}var emval_handle_array=[{},{value:undefined},{value:null},{value:true},{value:false}];var emval_free_list=[];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=5;i>2])}var awaitingDependencies={};var typeDependencies={};var InternalError=undefined;function throwInternalError(message){throw new InternalError(message)}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>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(){}var registeredPointers={};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 "'+_embind_repr(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 "'+_embind_repr(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 "'+_embind_repr(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 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 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)}function getInheritedInstance(class_,ptr){ptr=getBasestPointer(class_,ptr);return registeredInstances[ptr]}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 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&®isteredClass.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){assert("dynCall_"+sig in Module,"bad function pointer type - no table for sig '"+sig+"'");if(args&&args.length){assert(args.length===sig.substring(1).replace(/j/g,"--").length)}else{assert(sig.length==1)}var f=Module["dynCall_"+sig];return args&&args.length?f.apply(null,[ptr].concat(args)):f.call(null,ptr)}function dynCall(sig,ptr,args){if(sig.includes("j")){return dynCallLegacy(sig,ptr,args)}assert(getWasmTableEntry(ptr),"missing table entry in dynCall: "+ptr);return getWasmTableEntry(ptr).apply(null,args)}function getDynCaller(sig,ptr){assert(sig.includes("j"),"getDynCaller should only be called with i64 sigs");var argCache=[];return function(){argCache.length=arguments.length;for(var i=0;i>2)+i])}return array}function __embind_register_class_class_function(rawClassType,methodName,argCount,rawArgTypesAddr,invokerSignature,rawInvoker,fn){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}return[]});return[]})}function __embind_register_class_constructor(rawClassType,argCount,rawArgTypesAddr,invokerSignature,invoker,rawConstructor){assert(argCount>0);var rawArgTypes=heap32VectorToArray(argCount,rawArgTypesAddr);invoker=embind__requireFunction(invokerSignature,invoker);whenDependentTypesAreResolved([],[rawClassType],function(classType){classType=classType[0];var humanName="constructor "+classType.name;if(undefined===classType.registeredClass.constructor_body){classType.registeredClass.constructor_body=[]}if(undefined!==classType.registeredClass.constructor_body[argCount-1]){throw new BindingError("Cannot register multiple constructors with identical number of parameters ("+(argCount-1)+") for class '"+classType.name+"'! Overload resolution is currently only performed using the parameter count, not actual type info!")}classType.registeredClass.constructor_body[argCount-1]=function unboundTypeHandler(){throwUnboundTypeError("Cannot construct "+classType.name+" due to unbound types",rawArgTypes)};whenDependentTypesAreResolved([],rawArgTypes,function(argTypes){argTypes.splice(1,0,null);classType.registeredClass.constructor_body[argCount-1]=craftInvokerFunction(humanName,argTypes,null,invoker,rawConstructor);return[]});return[]})}function __embind_register_class_function(rawClassType,methodName,argCount,rawArgTypesAddr,invokerSignature,rawInvoker,context,isPureVirtual){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 validateThis(this_,classType,humanName){if(!(this_ instanceof Object)){throwBindingError(humanName+' with invalid "this": '+this_)}if(!(this_ instanceof classType.registeredClass.constructor)){throwBindingError(humanName+' incompatible with "this" of type '+this_.constructor.name)}if(!this_.$$.ptr){throwBindingError("cannot call emscripten binding method "+humanName+" on deleted object")}return upcastPointer(this_.$$.ptr,this_.$$.ptrType.registeredClass,classType.registeredClass)}function __embind_register_class_property(classType,fieldName,getterReturnType,getterSignature,getter,getterContext,setterArgumentType,setterSignature,setter,setterContext){fieldName=readLatin1String(fieldName);getter=embind__requireFunction(getterSignature,getter);whenDependentTypesAreResolved([],[classType],function(classType){classType=classType[0];var humanName=classType.name+"."+fieldName;var desc={get:function(){throwUnboundTypeError("Cannot access "+humanName+" due to unbound types",[getterReturnType,setterArgumentType])},enumerable:true,configurable:true};if(setter){desc.set=function(){throwUnboundTypeError("Cannot access "+humanName+" due to unbound types",[getterReturnType,setterArgumentType])}}else{desc.set=function(v){throwBindingError(humanName+" is a read-only property")}}Object.defineProperty(classType.registeredClass.instancePrototype,fieldName,desc);whenDependentTypesAreResolved([],setter?[getterReturnType,setterArgumentType]:[getterReturnType],function(types){var getterReturnType=types[0];var desc={get:function(){var ptr=validateThis(this,classType,humanName+" getter");return getterReturnType["fromWireType"](getter(getterContext,ptr))},enumerable:true};if(setter){setter=embind__requireFunction(setterSignature,setter);var setterArgumentType=types[1];desc.set=function(v){var ptr=validateThis(this,classType,humanName+" setter");var destructors=[];setter(setterContext,ptr,setterArgumentType["toWireType"](destructors,v));runDestructors(destructors)}}Object.defineProperty(classType.registeredClass.instancePrototype,fieldName,desc);return[]});return[]})}function __embind_register_constant(name,type,value){name=readLatin1String(name);whenDependentTypesAreResolved([],[type],function(type){type=type[0];Module[name]=type["fromWireType"](value);return[]})}function __emval_decref(handle){if(handle>4&&0===--emval_handle_array[handle].refcount){emval_handle_array[handle]=undefined;emval_free_list.push(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 enumReadValueFromPointer(name,shift,signed){switch(shift){case 0:return function(pointer){var heap=signed?HEAP8:HEAPU8;return this["fromWireType"](heap[pointer])};case 1:return function(pointer){var heap=signed?HEAP16:HEAPU16;return this["fromWireType"](heap[pointer>>1])};case 2:return function(pointer){var heap=signed?HEAP32:HEAPU32;return this["fromWireType"](heap[pointer>>2])};default:throw new TypeError("Unknown integer type: "+name)}}function __embind_register_enum(rawType,name,size,isSigned){var shift=getShiftFromSize(size);name=readLatin1String(name);function ctor(){}ctor.values={};registerType(rawType,{name:name,constructor:ctor,"fromWireType":function(c){return this.constructor.values[c]},"toWireType":function(destructors,c){return c.value},"argPackAdvance":8,"readValueFromPointer":enumReadValueFromPointer(name,shift,isSigned),destructorFunction:null});exposePublicSymbol(name,ctor)}function __embind_register_enum_value(rawEnumType,name,enumValue){var enumType=requireRegisteredType(rawEnumType,"enum");name=readLatin1String(name);var Enum=enumType.constructor;var Value=Object.create(enumType.constructor.prototype,{value:{value:enumValue},constructor:{value:createNamedFunction(enumType.name+"_"+name,function(){})}});Enum.values[enumValue]=Value;Enum[name]=Value}function _embind_repr(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){if(typeof value!=="number"&&typeof value!=="boolean"){throw new TypeError('Cannot convert "'+_embind_repr(value)+'" to '+this.name)}return value},"argPackAdvance":8,"readValueFromPointer":floatReadValueFromPointer(name,shift),destructorFunction:null})}function __embind_register_function(name,argCount,rawArgTypesAddr,signature,rawInvoker,fn){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);if(maxRange===-1){maxRange=4294967295}var shift=getShiftFromSize(size);var fromWireType=function(value){return value};if(minRange===0){var bitshift=32-8*size;fromWireType=function(value){return value<>>bitshift}}var isUnsignedType=name.includes("unsigned");var checkAssertions=function(value,toTypeName){if(typeof value!=="number"&&typeof value!=="boolean"){throw new TypeError('Cannot convert "'+_embind_repr(value)+'" to '+toTypeName)}if(valuemaxRange){throw new TypeError('Passing a number "'+_embind_repr(value)+'" from JS side to C/C++ side to an argument of type "'+name+'", which is outside the valid range ['+minRange+", "+maxRange+"]!")}};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(buffer,data,size)}name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":decodeMemoryView,"argPackAdvance":8,"readValueFromPointer":decodeMemoryView},{ignoreDuplicateRegistrations:true})}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 str;if(stdStringIsUTF8){var decodeStartPtr=value+4;for(var i=0;i<=length;++i){var currentBytePtr=value+4+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>2]=length;if(stdStringIsUTF8&&valueIsOfTypeString){stringToUTF8(value,ptr+4,length+1)}else{if(valueIsOfTypeString){for(var i=0;i255){_free(ptr);throwBindingError("String has UTF-16 code units that do not fit in 8 bits")}HEAPU8[ptr+4+i]=charCode}}else{for(var i=0;i>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_value_object(rawType,name,constructorSignature,rawConstructor,destructorSignature,rawDestructor){structRegistrations[rawType]={name:readLatin1String(name),rawConstructor:embind__requireFunction(constructorSignature,rawConstructor),rawDestructor:embind__requireFunction(destructorSignature,rawDestructor),fields:[]}}function __embind_register_value_object_field(structType,fieldName,getterReturnType,getterSignature,getter,getterContext,setterArgumentType,setterSignature,setter,setterContext){structRegistrations[structType].fields.push({fieldName:readLatin1String(fieldName),getterReturnType:getterReturnType,getter:embind__requireFunction(getterSignature,getter),getterContext:getterContext,setterArgumentType:setterArgumentType,setter:embind__requireFunction(setterSignature,setter),setterContext:setterContext})}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}})}function __emval_allocateDestructors(destructorsRef){var destructors=[];HEAP32[destructorsRef>>2]=Emval.toHandle(destructors);return destructors}var emval_symbols={};function getStringOrSymbol(address){var symbol=emval_symbols[address];if(symbol===undefined){return readLatin1String(address)}else{return symbol}}var emval_methodCallers=[];function __emval_call_method(caller,handle,methodName,destructorsRef,args){caller=emval_methodCallers[caller];handle=Emval.toValue(handle);methodName=getStringOrSymbol(methodName);return caller(handle,methodName,__emval_allocateDestructors(destructorsRef),args)}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>2)+i],"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=function(handle,name,destructors,args){var offset=0;for(var i=0;i4){emval_handle_array[handle].refcount+=1}}function __emval_new_cstring(v){return Emval.toHandle(getStringOrSymbol(v))}function __emval_new_object(){return Emval.toHandle({})}function __emval_run_destructors(handle){var destructors=Emval.toValue(handle);runDestructors(destructors);__emval_decref(handle)}function __emval_set_property(handle,key,value){handle=Emval.toValue(handle);key=Emval.toValue(key);value=Emval.toValue(value);handle[key]=value}function __emval_take_value(type,argv){type=requireRegisteredType(type,"_emval_take_value");var v=type["readValueFromPointer"](argv);return Emval.toHandle(v)}function _abort(){abort("native code called abort()")}var _emscripten_get_now;if(ENVIRONMENT_IS_NODE){_emscripten_get_now=(()=>{var t=process["hrtime"]();return t[0]*1e3+t[1]/1e6})}else _emscripten_get_now=(()=>performance.now());function _emscripten_memcpy_big(dest,src,num){HEAPU8.copyWithin(dest,src,src+num)}function emscripten_realloc_buffer(size){try{wasmMemory.grow(size-buffer.byteLength+65535>>>16);updateGlobalBufferAndViews(wasmMemory.buffer);return 1}catch(e){err("emscripten_realloc_buffer: Attempted to grow heap from "+buffer.byteLength+" bytes to "+size+" bytes, but got error: "+e)}}function _emscripten_resize_heap(requestedSize){var oldSize=HEAPU8.length;requestedSize=requestedSize>>>0;assert(requestedSize>oldSize);var maxHeapSize=2147483648;if(requestedSize>maxHeapSize){err("Cannot enlarge memory, asked to go up to "+requestedSize+" bytes, but the limit is "+maxHeapSize+" bytes!");return false}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}}err("Failed to grow the heap from "+oldSize+" bytes to "+newSize+" bytes, not enough memory!");return false}function _exit(status){exit(status)}var SYSCALLS={mappings:{},buffers:[null,[],[]],printChar:function(stream,curr){var buffer=SYSCALLS.buffers[stream];assert(buffer);if(curr===0||curr===10){(stream===1?out:err)(UTF8ArrayToString(buffer,0));buffer.length=0}else{buffer.push(curr)}},varargs:undefined,get:function(){assert(SYSCALLS.varargs!=undefined);SYSCALLS.varargs+=4;var ret=HEAP32[SYSCALLS.varargs-4>>2];return ret},getStr:function(ptr){var ret=UTF8ToString(ptr);return ret},get64:function(low,high){if(low>=0)assert(high===0);else assert(high===-1);return low}};function _fd_close(fd){abort("it should not be possible to operate on streams when !SYSCALLS_REQUIRE_FILESYSTEM");return 0}function _fd_seek(fd,offset_low,offset_high,whence,newOffset){abort("it should not be possible to operate on streams when !SYSCALLS_REQUIRE_FILESYSTEM")}function flush_NO_FILESYSTEM(){if(typeof _fflush!=="undefined")_fflush(0);var buffers=SYSCALLS.buffers;if(buffers[1].length)SYSCALLS.printChar(1,10);if(buffers[2].length)SYSCALLS.printChar(2,10)}function _fd_write(fd,iov,iovcnt,pnum){var num=0;for(var i=0;i>2];var len=HEAP32[iov+4>>2];iov+=8;for(var j=0;j>2]=num;return 0}function _gettimeofday(ptr){var now=Date.now();HEAP32[ptr>>2]=now/1e3|0;HEAP32[ptr+4>>2]=now%1e3*1e3|0;return 0}function _setTempRet0(val){setTempRet0(val)}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 ASSERTIONS=true;var asmLibraryArg={"_embind_create_inheriting_constructor":__embind_create_inheriting_constructor,"_embind_finalize_value_object":__embind_finalize_value_object,"_embind_register_bigint":__embind_register_bigint,"_embind_register_bool":__embind_register_bool,"_embind_register_class":__embind_register_class,"_embind_register_class_class_function":__embind_register_class_class_function,"_embind_register_class_constructor":__embind_register_class_constructor,"_embind_register_class_function":__embind_register_class_function,"_embind_register_class_property":__embind_register_class_property,"_embind_register_constant":__embind_register_constant,"_embind_register_emval":__embind_register_emval,"_embind_register_enum":__embind_register_enum,"_embind_register_enum_value":__embind_register_enum_value,"_embind_register_float":__embind_register_float,"_embind_register_function":__embind_register_function,"_embind_register_integer":__embind_register_integer,"_embind_register_memory_view":__embind_register_memory_view,"_embind_register_std_string":__embind_register_std_string,"_embind_register_std_wstring":__embind_register_std_wstring,"_embind_register_value_object":__embind_register_value_object,"_embind_register_value_object_field":__embind_register_value_object_field,"_embind_register_void":__embind_register_void,"_emval_call_method":__emval_call_method,"_emval_call_void_method":__emval_call_void_method,"_emval_decref":__emval_decref,"_emval_get_method_caller":__emval_get_method_caller,"_emval_incref":__emval_incref,"_emval_new_cstring":__emval_new_cstring,"_emval_new_object":__emval_new_object,"_emval_run_destructors":__emval_run_destructors,"_emval_set_property":__emval_set_property,"_emval_take_value":__emval_take_value,"abort":_abort,"emscripten_get_now":_emscripten_get_now,"emscripten_memcpy_big":_emscripten_memcpy_big,"emscripten_resize_heap":_emscripten_resize_heap,"exit":_exit,"fd_close":_fd_close,"fd_seek":_fd_seek,"fd_write":_fd_write,"gettimeofday":_gettimeofday,"setTempRet0":_setTempRet0};var asm=createWasm();var ___wasm_call_ctors=Module["___wasm_call_ctors"]=createExportWrapper("__wasm_call_ctors");var _free=Module["_free"]=createExportWrapper("free");var _malloc=Module["_malloc"]=createExportWrapper("malloc");var ___getTypeName=Module["___getTypeName"]=createExportWrapper("__getTypeName");var ___embind_register_native_and_builtin_types=Module["___embind_register_native_and_builtin_types"]=createExportWrapper("__embind_register_native_and_builtin_types");var ___errno_location=Module["___errno_location"]=createExportWrapper("__errno_location");var _fflush=Module["_fflush"]=createExportWrapper("fflush");var _htons=Module["_htons"]=createExportWrapper("htons");var _emscripten_main_thread_process_queued_calls=Module["_emscripten_main_thread_process_queued_calls"]=createExportWrapper("emscripten_main_thread_process_queued_calls");var _ntohs=Module["_ntohs"]=createExportWrapper("ntohs");var _emscripten_stack_init=Module["_emscripten_stack_init"]=function(){return(_emscripten_stack_init=Module["_emscripten_stack_init"]=Module["asm"]["emscripten_stack_init"]).apply(null,arguments)};var _emscripten_stack_get_free=Module["_emscripten_stack_get_free"]=function(){return(_emscripten_stack_get_free=Module["_emscripten_stack_get_free"]=Module["asm"]["emscripten_stack_get_free"]).apply(null,arguments)};var _emscripten_stack_get_end=Module["_emscripten_stack_get_end"]=function(){return(_emscripten_stack_get_end=Module["_emscripten_stack_get_end"]=Module["asm"]["emscripten_stack_get_end"]).apply(null,arguments)};var stackSave=Module["stackSave"]=createExportWrapper("stackSave");var stackRestore=Module["stackRestore"]=createExportWrapper("stackRestore");var stackAlloc=Module["stackAlloc"]=createExportWrapper("stackAlloc");var dynCall_jiji=Module["dynCall_jiji"]=createExportWrapper("dynCall_jiji");if(!Object.getOwnPropertyDescriptor(Module,"intArrayFromString"))Module["intArrayFromString"]=function(){abort("'intArrayFromString' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"intArrayToString"))Module["intArrayToString"]=function(){abort("'intArrayToString' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"ccall"))Module["ccall"]=function(){abort("'ccall' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"cwrap"))Module["cwrap"]=function(){abort("'cwrap' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"setValue"))Module["setValue"]=function(){abort("'setValue' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"getValue"))Module["getValue"]=function(){abort("'getValue' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"allocate"))Module["allocate"]=function(){abort("'allocate' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"UTF8ArrayToString"))Module["UTF8ArrayToString"]=function(){abort("'UTF8ArrayToString' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"UTF8ToString"))Module["UTF8ToString"]=function(){abort("'UTF8ToString' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"stringToUTF8Array"))Module["stringToUTF8Array"]=function(){abort("'stringToUTF8Array' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"stringToUTF8"))Module["stringToUTF8"]=function(){abort("'stringToUTF8' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"lengthBytesUTF8"))Module["lengthBytesUTF8"]=function(){abort("'lengthBytesUTF8' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"stackTrace"))Module["stackTrace"]=function(){abort("'stackTrace' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"addOnPreRun"))Module["addOnPreRun"]=function(){abort("'addOnPreRun' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"addOnInit"))Module["addOnInit"]=function(){abort("'addOnInit' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"addOnPreMain"))Module["addOnPreMain"]=function(){abort("'addOnPreMain' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"addOnExit"))Module["addOnExit"]=function(){abort("'addOnExit' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"addOnPostRun"))Module["addOnPostRun"]=function(){abort("'addOnPostRun' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"writeStringToMemory"))Module["writeStringToMemory"]=function(){abort("'writeStringToMemory' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"writeArrayToMemory"))Module["writeArrayToMemory"]=function(){abort("'writeArrayToMemory' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"writeAsciiToMemory"))Module["writeAsciiToMemory"]=function(){abort("'writeAsciiToMemory' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"addRunDependency"))Module["addRunDependency"]=function(){abort("'addRunDependency' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you")};if(!Object.getOwnPropertyDescriptor(Module,"removeRunDependency"))Module["removeRunDependency"]=function(){abort("'removeRunDependency' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you")};if(!Object.getOwnPropertyDescriptor(Module,"FS_createFolder"))Module["FS_createFolder"]=function(){abort("'FS_createFolder' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"FS_createPath"))Module["FS_createPath"]=function(){abort("'FS_createPath' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you")};if(!Object.getOwnPropertyDescriptor(Module,"FS_createDataFile"))Module["FS_createDataFile"]=function(){abort("'FS_createDataFile' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you")};if(!Object.getOwnPropertyDescriptor(Module,"FS_createPreloadedFile"))Module["FS_createPreloadedFile"]=function(){abort("'FS_createPreloadedFile' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you")};if(!Object.getOwnPropertyDescriptor(Module,"FS_createLazyFile"))Module["FS_createLazyFile"]=function(){abort("'FS_createLazyFile' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you")};if(!Object.getOwnPropertyDescriptor(Module,"FS_createLink"))Module["FS_createLink"]=function(){abort("'FS_createLink' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"FS_createDevice"))Module["FS_createDevice"]=function(){abort("'FS_createDevice' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you")};if(!Object.getOwnPropertyDescriptor(Module,"FS_unlink"))Module["FS_unlink"]=function(){abort("'FS_unlink' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you")};if(!Object.getOwnPropertyDescriptor(Module,"getLEB"))Module["getLEB"]=function(){abort("'getLEB' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"getFunctionTables"))Module["getFunctionTables"]=function(){abort("'getFunctionTables' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"alignFunctionTables"))Module["alignFunctionTables"]=function(){abort("'alignFunctionTables' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"registerFunctions"))Module["registerFunctions"]=function(){abort("'registerFunctions' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"addFunction"))Module["addFunction"]=function(){abort("'addFunction' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"removeFunction"))Module["removeFunction"]=function(){abort("'removeFunction' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"getFuncWrapper"))Module["getFuncWrapper"]=function(){abort("'getFuncWrapper' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"prettyPrint"))Module["prettyPrint"]=function(){abort("'prettyPrint' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"dynCall"))Module["dynCall"]=function(){abort("'dynCall' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"getCompilerSetting"))Module["getCompilerSetting"]=function(){abort("'getCompilerSetting' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"print"))Module["print"]=function(){abort("'print' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"printErr"))Module["printErr"]=function(){abort("'printErr' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"getTempRet0"))Module["getTempRet0"]=function(){abort("'getTempRet0' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"setTempRet0"))Module["setTempRet0"]=function(){abort("'setTempRet0' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"callMain"))Module["callMain"]=function(){abort("'callMain' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"abort"))Module["abort"]=function(){abort("'abort' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"keepRuntimeAlive"))Module["keepRuntimeAlive"]=function(){abort("'keepRuntimeAlive' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"zeroMemory"))Module["zeroMemory"]=function(){abort("'zeroMemory' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"stringToNewUTF8"))Module["stringToNewUTF8"]=function(){abort("'stringToNewUTF8' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"setFileTime"))Module["setFileTime"]=function(){abort("'setFileTime' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"emscripten_realloc_buffer"))Module["emscripten_realloc_buffer"]=function(){abort("'emscripten_realloc_buffer' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"ENV"))Module["ENV"]=function(){abort("'ENV' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"withStackSave"))Module["withStackSave"]=function(){abort("'withStackSave' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"ERRNO_CODES"))Module["ERRNO_CODES"]=function(){abort("'ERRNO_CODES' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"ERRNO_MESSAGES"))Module["ERRNO_MESSAGES"]=function(){abort("'ERRNO_MESSAGES' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"setErrNo"))Module["setErrNo"]=function(){abort("'setErrNo' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"inetPton4"))Module["inetPton4"]=function(){abort("'inetPton4' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"inetNtop4"))Module["inetNtop4"]=function(){abort("'inetNtop4' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"inetPton6"))Module["inetPton6"]=function(){abort("'inetPton6' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"inetNtop6"))Module["inetNtop6"]=function(){abort("'inetNtop6' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"readSockaddr"))Module["readSockaddr"]=function(){abort("'readSockaddr' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"writeSockaddr"))Module["writeSockaddr"]=function(){abort("'writeSockaddr' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"DNS"))Module["DNS"]=function(){abort("'DNS' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"getHostByName"))Module["getHostByName"]=function(){abort("'getHostByName' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"GAI_ERRNO_MESSAGES"))Module["GAI_ERRNO_MESSAGES"]=function(){abort("'GAI_ERRNO_MESSAGES' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"Protocols"))Module["Protocols"]=function(){abort("'Protocols' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"Sockets"))Module["Sockets"]=function(){abort("'Sockets' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"getRandomDevice"))Module["getRandomDevice"]=function(){abort("'getRandomDevice' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"traverseStack"))Module["traverseStack"]=function(){abort("'traverseStack' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"convertFrameToPC"))Module["convertFrameToPC"]=function(){abort("'convertFrameToPC' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"UNWIND_CACHE"))Module["UNWIND_CACHE"]=function(){abort("'UNWIND_CACHE' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"saveInUnwindCache"))Module["saveInUnwindCache"]=function(){abort("'saveInUnwindCache' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"convertPCtoSourceLocation"))Module["convertPCtoSourceLocation"]=function(){abort("'convertPCtoSourceLocation' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"readAsmConstArgsArray"))Module["readAsmConstArgsArray"]=function(){abort("'readAsmConstArgsArray' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"readAsmConstArgs"))Module["readAsmConstArgs"]=function(){abort("'readAsmConstArgs' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"mainThreadEM_ASM"))Module["mainThreadEM_ASM"]=function(){abort("'mainThreadEM_ASM' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"jstoi_q"))Module["jstoi_q"]=function(){abort("'jstoi_q' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"jstoi_s"))Module["jstoi_s"]=function(){abort("'jstoi_s' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"getExecutableName"))Module["getExecutableName"]=function(){abort("'getExecutableName' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"listenOnce"))Module["listenOnce"]=function(){abort("'listenOnce' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"autoResumeAudioContext"))Module["autoResumeAudioContext"]=function(){abort("'autoResumeAudioContext' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"dynCallLegacy"))Module["dynCallLegacy"]=function(){abort("'dynCallLegacy' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"getDynCaller"))Module["getDynCaller"]=function(){abort("'getDynCaller' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"dynCall"))Module["dynCall"]=function(){abort("'dynCall' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"callRuntimeCallbacks"))Module["callRuntimeCallbacks"]=function(){abort("'callRuntimeCallbacks' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"wasmTableMirror"))Module["wasmTableMirror"]=function(){abort("'wasmTableMirror' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"setWasmTableEntry"))Module["setWasmTableEntry"]=function(){abort("'setWasmTableEntry' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"getWasmTableEntry"))Module["getWasmTableEntry"]=function(){abort("'getWasmTableEntry' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"handleException"))Module["handleException"]=function(){abort("'handleException' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"runtimeKeepalivePush"))Module["runtimeKeepalivePush"]=function(){abort("'runtimeKeepalivePush' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"runtimeKeepalivePop"))Module["runtimeKeepalivePop"]=function(){abort("'runtimeKeepalivePop' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"callUserCallback"))Module["callUserCallback"]=function(){abort("'callUserCallback' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"maybeExit"))Module["maybeExit"]=function(){abort("'maybeExit' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"safeSetTimeout"))Module["safeSetTimeout"]=function(){abort("'safeSetTimeout' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"asmjsMangle"))Module["asmjsMangle"]=function(){abort("'asmjsMangle' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"asyncLoad"))Module["asyncLoad"]=function(){abort("'asyncLoad' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"alignMemory"))Module["alignMemory"]=function(){abort("'alignMemory' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"mmapAlloc"))Module["mmapAlloc"]=function(){abort("'mmapAlloc' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"reallyNegative"))Module["reallyNegative"]=function(){abort("'reallyNegative' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"unSign"))Module["unSign"]=function(){abort("'unSign' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"reSign"))Module["reSign"]=function(){abort("'reSign' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"formatString"))Module["formatString"]=function(){abort("'formatString' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"PATH"))Module["PATH"]=function(){abort("'PATH' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"PATH_FS"))Module["PATH_FS"]=function(){abort("'PATH_FS' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"SYSCALLS"))Module["SYSCALLS"]=function(){abort("'SYSCALLS' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"syscallMmap2"))Module["syscallMmap2"]=function(){abort("'syscallMmap2' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"syscallMunmap"))Module["syscallMunmap"]=function(){abort("'syscallMunmap' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"getSocketFromFD"))Module["getSocketFromFD"]=function(){abort("'getSocketFromFD' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"getSocketAddress"))Module["getSocketAddress"]=function(){abort("'getSocketAddress' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"JSEvents"))Module["JSEvents"]=function(){abort("'JSEvents' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"registerKeyEventCallback"))Module["registerKeyEventCallback"]=function(){abort("'registerKeyEventCallback' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"specialHTMLTargets"))Module["specialHTMLTargets"]=function(){abort("'specialHTMLTargets' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"maybeCStringToJsString"))Module["maybeCStringToJsString"]=function(){abort("'maybeCStringToJsString' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"findEventTarget"))Module["findEventTarget"]=function(){abort("'findEventTarget' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"findCanvasEventTarget"))Module["findCanvasEventTarget"]=function(){abort("'findCanvasEventTarget' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"getBoundingClientRect"))Module["getBoundingClientRect"]=function(){abort("'getBoundingClientRect' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"fillMouseEventData"))Module["fillMouseEventData"]=function(){abort("'fillMouseEventData' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"registerMouseEventCallback"))Module["registerMouseEventCallback"]=function(){abort("'registerMouseEventCallback' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"registerWheelEventCallback"))Module["registerWheelEventCallback"]=function(){abort("'registerWheelEventCallback' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"registerUiEventCallback"))Module["registerUiEventCallback"]=function(){abort("'registerUiEventCallback' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"registerFocusEventCallback"))Module["registerFocusEventCallback"]=function(){abort("'registerFocusEventCallback' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"fillDeviceOrientationEventData"))Module["fillDeviceOrientationEventData"]=function(){abort("'fillDeviceOrientationEventData' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"registerDeviceOrientationEventCallback"))Module["registerDeviceOrientationEventCallback"]=function(){abort("'registerDeviceOrientationEventCallback' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"fillDeviceMotionEventData"))Module["fillDeviceMotionEventData"]=function(){abort("'fillDeviceMotionEventData' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"registerDeviceMotionEventCallback"))Module["registerDeviceMotionEventCallback"]=function(){abort("'registerDeviceMotionEventCallback' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"screenOrientation"))Module["screenOrientation"]=function(){abort("'screenOrientation' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"fillOrientationChangeEventData"))Module["fillOrientationChangeEventData"]=function(){abort("'fillOrientationChangeEventData' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"registerOrientationChangeEventCallback"))Module["registerOrientationChangeEventCallback"]=function(){abort("'registerOrientationChangeEventCallback' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"fillFullscreenChangeEventData"))Module["fillFullscreenChangeEventData"]=function(){abort("'fillFullscreenChangeEventData' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"registerFullscreenChangeEventCallback"))Module["registerFullscreenChangeEventCallback"]=function(){abort("'registerFullscreenChangeEventCallback' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"registerRestoreOldStyle"))Module["registerRestoreOldStyle"]=function(){abort("'registerRestoreOldStyle' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"hideEverythingExceptGivenElement"))Module["hideEverythingExceptGivenElement"]=function(){abort("'hideEverythingExceptGivenElement' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"restoreHiddenElements"))Module["restoreHiddenElements"]=function(){abort("'restoreHiddenElements' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"setLetterbox"))Module["setLetterbox"]=function(){abort("'setLetterbox' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"currentFullscreenStrategy"))Module["currentFullscreenStrategy"]=function(){abort("'currentFullscreenStrategy' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"restoreOldWindowedStyle"))Module["restoreOldWindowedStyle"]=function(){abort("'restoreOldWindowedStyle' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"softFullscreenResizeWebGLRenderTarget"))Module["softFullscreenResizeWebGLRenderTarget"]=function(){abort("'softFullscreenResizeWebGLRenderTarget' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"doRequestFullscreen"))Module["doRequestFullscreen"]=function(){abort("'doRequestFullscreen' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"fillPointerlockChangeEventData"))Module["fillPointerlockChangeEventData"]=function(){abort("'fillPointerlockChangeEventData' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"registerPointerlockChangeEventCallback"))Module["registerPointerlockChangeEventCallback"]=function(){abort("'registerPointerlockChangeEventCallback' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"registerPointerlockErrorEventCallback"))Module["registerPointerlockErrorEventCallback"]=function(){abort("'registerPointerlockErrorEventCallback' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"requestPointerLock"))Module["requestPointerLock"]=function(){abort("'requestPointerLock' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"fillVisibilityChangeEventData"))Module["fillVisibilityChangeEventData"]=function(){abort("'fillVisibilityChangeEventData' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"registerVisibilityChangeEventCallback"))Module["registerVisibilityChangeEventCallback"]=function(){abort("'registerVisibilityChangeEventCallback' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"registerTouchEventCallback"))Module["registerTouchEventCallback"]=function(){abort("'registerTouchEventCallback' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"fillGamepadEventData"))Module["fillGamepadEventData"]=function(){abort("'fillGamepadEventData' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"registerGamepadEventCallback"))Module["registerGamepadEventCallback"]=function(){abort("'registerGamepadEventCallback' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"registerBeforeUnloadEventCallback"))Module["registerBeforeUnloadEventCallback"]=function(){abort("'registerBeforeUnloadEventCallback' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"fillBatteryEventData"))Module["fillBatteryEventData"]=function(){abort("'fillBatteryEventData' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"battery"))Module["battery"]=function(){abort("'battery' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"registerBatteryEventCallback"))Module["registerBatteryEventCallback"]=function(){abort("'registerBatteryEventCallback' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"setCanvasElementSize"))Module["setCanvasElementSize"]=function(){abort("'setCanvasElementSize' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"getCanvasElementSize"))Module["getCanvasElementSize"]=function(){abort("'getCanvasElementSize' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"demangle"))Module["demangle"]=function(){abort("'demangle' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"demangleAll"))Module["demangleAll"]=function(){abort("'demangleAll' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"jsStackTrace"))Module["jsStackTrace"]=function(){abort("'jsStackTrace' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"stackTrace"))Module["stackTrace"]=function(){abort("'stackTrace' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"getEnvStrings"))Module["getEnvStrings"]=function(){abort("'getEnvStrings' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"checkWasiClock"))Module["checkWasiClock"]=function(){abort("'checkWasiClock' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"flush_NO_FILESYSTEM"))Module["flush_NO_FILESYSTEM"]=function(){abort("'flush_NO_FILESYSTEM' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"writeI53ToI64"))Module["writeI53ToI64"]=function(){abort("'writeI53ToI64' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"writeI53ToI64Clamped"))Module["writeI53ToI64Clamped"]=function(){abort("'writeI53ToI64Clamped' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"writeI53ToI64Signaling"))Module["writeI53ToI64Signaling"]=function(){abort("'writeI53ToI64Signaling' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"writeI53ToU64Clamped"))Module["writeI53ToU64Clamped"]=function(){abort("'writeI53ToU64Clamped' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"writeI53ToU64Signaling"))Module["writeI53ToU64Signaling"]=function(){abort("'writeI53ToU64Signaling' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"readI53FromI64"))Module["readI53FromI64"]=function(){abort("'readI53FromI64' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"readI53FromU64"))Module["readI53FromU64"]=function(){abort("'readI53FromU64' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"convertI32PairToI53"))Module["convertI32PairToI53"]=function(){abort("'convertI32PairToI53' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"convertU32PairToI53"))Module["convertU32PairToI53"]=function(){abort("'convertU32PairToI53' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"setImmediateWrapped"))Module["setImmediateWrapped"]=function(){abort("'setImmediateWrapped' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"clearImmediateWrapped"))Module["clearImmediateWrapped"]=function(){abort("'clearImmediateWrapped' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"polyfillSetImmediate"))Module["polyfillSetImmediate"]=function(){abort("'polyfillSetImmediate' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"Browser"))Module["Browser"]=function(){abort("'Browser' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"funcWrappers"))Module["funcWrappers"]=function(){abort("'funcWrappers' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"getFuncWrapper"))Module["getFuncWrapper"]=function(){abort("'getFuncWrapper' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"setMainLoop"))Module["setMainLoop"]=function(){abort("'setMainLoop' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"wget"))Module["wget"]=function(){abort("'wget' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"FS"))Module["FS"]=function(){abort("'FS' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"MEMFS"))Module["MEMFS"]=function(){abort("'MEMFS' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"TTY"))Module["TTY"]=function(){abort("'TTY' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"PIPEFS"))Module["PIPEFS"]=function(){abort("'PIPEFS' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"SOCKFS"))Module["SOCKFS"]=function(){abort("'SOCKFS' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"_setNetworkCallback"))Module["_setNetworkCallback"]=function(){abort("'_setNetworkCallback' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"tempFixedLengthArray"))Module["tempFixedLengthArray"]=function(){abort("'tempFixedLengthArray' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"miniTempWebGLFloatBuffers"))Module["miniTempWebGLFloatBuffers"]=function(){abort("'miniTempWebGLFloatBuffers' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"heapObjectForWebGLType"))Module["heapObjectForWebGLType"]=function(){abort("'heapObjectForWebGLType' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"heapAccessShiftForWebGLHeap"))Module["heapAccessShiftForWebGLHeap"]=function(){abort("'heapAccessShiftForWebGLHeap' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"GL"))Module["GL"]=function(){abort("'GL' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"emscriptenWebGLGet"))Module["emscriptenWebGLGet"]=function(){abort("'emscriptenWebGLGet' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"computeUnpackAlignedImageSize"))Module["computeUnpackAlignedImageSize"]=function(){abort("'computeUnpackAlignedImageSize' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"emscriptenWebGLGetTexPixelData"))Module["emscriptenWebGLGetTexPixelData"]=function(){abort("'emscriptenWebGLGetTexPixelData' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"emscriptenWebGLGetUniform"))Module["emscriptenWebGLGetUniform"]=function(){abort("'emscriptenWebGLGetUniform' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"webglGetUniformLocation"))Module["webglGetUniformLocation"]=function(){abort("'webglGetUniformLocation' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"webglPrepareUniformLocationsBeforeFirstUse"))Module["webglPrepareUniformLocationsBeforeFirstUse"]=function(){abort("'webglPrepareUniformLocationsBeforeFirstUse' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"webglGetLeftBracePos"))Module["webglGetLeftBracePos"]=function(){abort("'webglGetLeftBracePos' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"emscriptenWebGLGetVertexAttrib"))Module["emscriptenWebGLGetVertexAttrib"]=function(){abort("'emscriptenWebGLGetVertexAttrib' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"writeGLArray"))Module["writeGLArray"]=function(){abort("'writeGLArray' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"AL"))Module["AL"]=function(){abort("'AL' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"SDL_unicode"))Module["SDL_unicode"]=function(){abort("'SDL_unicode' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"SDL_ttfContext"))Module["SDL_ttfContext"]=function(){abort("'SDL_ttfContext' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"SDL_audio"))Module["SDL_audio"]=function(){abort("'SDL_audio' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"SDL"))Module["SDL"]=function(){abort("'SDL' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"SDL_gfx"))Module["SDL_gfx"]=function(){abort("'SDL_gfx' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"GLUT"))Module["GLUT"]=function(){abort("'GLUT' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"EGL"))Module["EGL"]=function(){abort("'EGL' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"GLFW_Window"))Module["GLFW_Window"]=function(){abort("'GLFW_Window' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"GLFW"))Module["GLFW"]=function(){abort("'GLFW' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"GLEW"))Module["GLEW"]=function(){abort("'GLEW' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"IDBStore"))Module["IDBStore"]=function(){abort("'IDBStore' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"runAndAbortIfError"))Module["runAndAbortIfError"]=function(){abort("'runAndAbortIfError' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"emval_handle_array"))Module["emval_handle_array"]=function(){abort("'emval_handle_array' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"emval_free_list"))Module["emval_free_list"]=function(){abort("'emval_free_list' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"emval_symbols"))Module["emval_symbols"]=function(){abort("'emval_symbols' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"init_emval"))Module["init_emval"]=function(){abort("'init_emval' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"count_emval_handles"))Module["count_emval_handles"]=function(){abort("'count_emval_handles' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"get_first_emval"))Module["get_first_emval"]=function(){abort("'get_first_emval' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"getStringOrSymbol"))Module["getStringOrSymbol"]=function(){abort("'getStringOrSymbol' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"Emval"))Module["Emval"]=function(){abort("'Emval' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"emval_newers"))Module["emval_newers"]=function(){abort("'emval_newers' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"craftEmvalAllocator"))Module["craftEmvalAllocator"]=function(){abort("'craftEmvalAllocator' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"emval_get_global"))Module["emval_get_global"]=function(){abort("'emval_get_global' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"emval_methodCallers"))Module["emval_methodCallers"]=function(){abort("'emval_methodCallers' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"emval_registeredMethods"))Module["emval_registeredMethods"]=function(){abort("'emval_registeredMethods' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"InternalError"))Module["InternalError"]=function(){abort("'InternalError' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"BindingError"))Module["BindingError"]=function(){abort("'BindingError' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"UnboundTypeError"))Module["UnboundTypeError"]=function(){abort("'UnboundTypeError' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"PureVirtualError"))Module["PureVirtualError"]=function(){abort("'PureVirtualError' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"init_embind"))Module["init_embind"]=function(){abort("'init_embind' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"throwInternalError"))Module["throwInternalError"]=function(){abort("'throwInternalError' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"throwBindingError"))Module["throwBindingError"]=function(){abort("'throwBindingError' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"throwUnboundTypeError"))Module["throwUnboundTypeError"]=function(){abort("'throwUnboundTypeError' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"ensureOverloadTable"))Module["ensureOverloadTable"]=function(){abort("'ensureOverloadTable' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"exposePublicSymbol"))Module["exposePublicSymbol"]=function(){abort("'exposePublicSymbol' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"replacePublicSymbol"))Module["replacePublicSymbol"]=function(){abort("'replacePublicSymbol' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"extendError"))Module["extendError"]=function(){abort("'extendError' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"createNamedFunction"))Module["createNamedFunction"]=function(){abort("'createNamedFunction' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"registeredInstances"))Module["registeredInstances"]=function(){abort("'registeredInstances' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"getBasestPointer"))Module["getBasestPointer"]=function(){abort("'getBasestPointer' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"registerInheritedInstance"))Module["registerInheritedInstance"]=function(){abort("'registerInheritedInstance' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"unregisterInheritedInstance"))Module["unregisterInheritedInstance"]=function(){abort("'unregisterInheritedInstance' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"getInheritedInstance"))Module["getInheritedInstance"]=function(){abort("'getInheritedInstance' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"getInheritedInstanceCount"))Module["getInheritedInstanceCount"]=function(){abort("'getInheritedInstanceCount' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"getLiveInheritedInstances"))Module["getLiveInheritedInstances"]=function(){abort("'getLiveInheritedInstances' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"registeredTypes"))Module["registeredTypes"]=function(){abort("'registeredTypes' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"awaitingDependencies"))Module["awaitingDependencies"]=function(){abort("'awaitingDependencies' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"typeDependencies"))Module["typeDependencies"]=function(){abort("'typeDependencies' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"registeredPointers"))Module["registeredPointers"]=function(){abort("'registeredPointers' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"registerType"))Module["registerType"]=function(){abort("'registerType' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"whenDependentTypesAreResolved"))Module["whenDependentTypesAreResolved"]=function(){abort("'whenDependentTypesAreResolved' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"embind_charCodes"))Module["embind_charCodes"]=function(){abort("'embind_charCodes' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"embind_init_charCodes"))Module["embind_init_charCodes"]=function(){abort("'embind_init_charCodes' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"readLatin1String"))Module["readLatin1String"]=function(){abort("'readLatin1String' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"getTypeName"))Module["getTypeName"]=function(){abort("'getTypeName' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"heap32VectorToArray"))Module["heap32VectorToArray"]=function(){abort("'heap32VectorToArray' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"requireRegisteredType"))Module["requireRegisteredType"]=function(){abort("'requireRegisteredType' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"getShiftFromSize"))Module["getShiftFromSize"]=function(){abort("'getShiftFromSize' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"integerReadValueFromPointer"))Module["integerReadValueFromPointer"]=function(){abort("'integerReadValueFromPointer' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"enumReadValueFromPointer"))Module["enumReadValueFromPointer"]=function(){abort("'enumReadValueFromPointer' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"floatReadValueFromPointer"))Module["floatReadValueFromPointer"]=function(){abort("'floatReadValueFromPointer' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"simpleReadValueFromPointer"))Module["simpleReadValueFromPointer"]=function(){abort("'simpleReadValueFromPointer' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"runDestructors"))Module["runDestructors"]=function(){abort("'runDestructors' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"new_"))Module["new_"]=function(){abort("'new_' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"craftInvokerFunction"))Module["craftInvokerFunction"]=function(){abort("'craftInvokerFunction' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"embind__requireFunction"))Module["embind__requireFunction"]=function(){abort("'embind__requireFunction' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"tupleRegistrations"))Module["tupleRegistrations"]=function(){abort("'tupleRegistrations' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"structRegistrations"))Module["structRegistrations"]=function(){abort("'structRegistrations' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"genericPointerToWireType"))Module["genericPointerToWireType"]=function(){abort("'genericPointerToWireType' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"constNoSmartPtrRawPointerToWireType"))Module["constNoSmartPtrRawPointerToWireType"]=function(){abort("'constNoSmartPtrRawPointerToWireType' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"nonConstNoSmartPtrRawPointerToWireType"))Module["nonConstNoSmartPtrRawPointerToWireType"]=function(){abort("'nonConstNoSmartPtrRawPointerToWireType' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"init_RegisteredPointer"))Module["init_RegisteredPointer"]=function(){abort("'init_RegisteredPointer' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"RegisteredPointer"))Module["RegisteredPointer"]=function(){abort("'RegisteredPointer' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"RegisteredPointer_getPointee"))Module["RegisteredPointer_getPointee"]=function(){abort("'RegisteredPointer_getPointee' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"RegisteredPointer_destructor"))Module["RegisteredPointer_destructor"]=function(){abort("'RegisteredPointer_destructor' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"RegisteredPointer_deleteObject"))Module["RegisteredPointer_deleteObject"]=function(){abort("'RegisteredPointer_deleteObject' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"RegisteredPointer_fromWireType"))Module["RegisteredPointer_fromWireType"]=function(){abort("'RegisteredPointer_fromWireType' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"runDestructor"))Module["runDestructor"]=function(){abort("'runDestructor' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"releaseClassHandle"))Module["releaseClassHandle"]=function(){abort("'releaseClassHandle' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"finalizationGroup"))Module["finalizationGroup"]=function(){abort("'finalizationGroup' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"detachFinalizer_deps"))Module["detachFinalizer_deps"]=function(){abort("'detachFinalizer_deps' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"detachFinalizer"))Module["detachFinalizer"]=function(){abort("'detachFinalizer' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"attachFinalizer"))Module["attachFinalizer"]=function(){abort("'attachFinalizer' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"makeClassHandle"))Module["makeClassHandle"]=function(){abort("'makeClassHandle' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"init_ClassHandle"))Module["init_ClassHandle"]=function(){abort("'init_ClassHandle' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"ClassHandle"))Module["ClassHandle"]=function(){abort("'ClassHandle' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"ClassHandle_isAliasOf"))Module["ClassHandle_isAliasOf"]=function(){abort("'ClassHandle_isAliasOf' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"throwInstanceAlreadyDeleted"))Module["throwInstanceAlreadyDeleted"]=function(){abort("'throwInstanceAlreadyDeleted' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"ClassHandle_clone"))Module["ClassHandle_clone"]=function(){abort("'ClassHandle_clone' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"ClassHandle_delete"))Module["ClassHandle_delete"]=function(){abort("'ClassHandle_delete' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"deletionQueue"))Module["deletionQueue"]=function(){abort("'deletionQueue' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"ClassHandle_isDeleted"))Module["ClassHandle_isDeleted"]=function(){abort("'ClassHandle_isDeleted' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"ClassHandle_deleteLater"))Module["ClassHandle_deleteLater"]=function(){abort("'ClassHandle_deleteLater' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"flushPendingDeletes"))Module["flushPendingDeletes"]=function(){abort("'flushPendingDeletes' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"delayFunction"))Module["delayFunction"]=function(){abort("'delayFunction' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"setDelayFunction"))Module["setDelayFunction"]=function(){abort("'setDelayFunction' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"RegisteredClass"))Module["RegisteredClass"]=function(){abort("'RegisteredClass' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"shallowCopyInternalPointer"))Module["shallowCopyInternalPointer"]=function(){abort("'shallowCopyInternalPointer' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"downcastPointer"))Module["downcastPointer"]=function(){abort("'downcastPointer' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"upcastPointer"))Module["upcastPointer"]=function(){abort("'upcastPointer' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"validateThis"))Module["validateThis"]=function(){abort("'validateThis' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"char_0"))Module["char_0"]=function(){abort("'char_0' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"char_9"))Module["char_9"]=function(){abort("'char_9' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"makeLegalFunctionName"))Module["makeLegalFunctionName"]=function(){abort("'makeLegalFunctionName' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"warnOnce"))Module["warnOnce"]=function(){abort("'warnOnce' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"stackSave"))Module["stackSave"]=function(){abort("'stackSave' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"stackRestore"))Module["stackRestore"]=function(){abort("'stackRestore' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"stackAlloc"))Module["stackAlloc"]=function(){abort("'stackAlloc' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"AsciiToString"))Module["AsciiToString"]=function(){abort("'AsciiToString' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"stringToAscii"))Module["stringToAscii"]=function(){abort("'stringToAscii' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"UTF16ToString"))Module["UTF16ToString"]=function(){abort("'UTF16ToString' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"stringToUTF16"))Module["stringToUTF16"]=function(){abort("'stringToUTF16' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"lengthBytesUTF16"))Module["lengthBytesUTF16"]=function(){abort("'lengthBytesUTF16' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"UTF32ToString"))Module["UTF32ToString"]=function(){abort("'UTF32ToString' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"stringToUTF32"))Module["stringToUTF32"]=function(){abort("'stringToUTF32' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"lengthBytesUTF32"))Module["lengthBytesUTF32"]=function(){abort("'lengthBytesUTF32' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"allocateUTF8"))Module["allocateUTF8"]=function(){abort("'allocateUTF8' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};if(!Object.getOwnPropertyDescriptor(Module,"allocateUTF8OnStack"))Module["allocateUTF8OnStack"]=function(){abort("'allocateUTF8OnStack' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")};Module["writeStackCookie"]=writeStackCookie;Module["checkStackCookie"]=checkStackCookie;if(!Object.getOwnPropertyDescriptor(Module,"ALLOC_NORMAL"))Object.defineProperty(Module,"ALLOC_NORMAL",{configurable:true,get:function(){abort("'ALLOC_NORMAL' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")}});if(!Object.getOwnPropertyDescriptor(Module,"ALLOC_STACK"))Object.defineProperty(Module,"ALLOC_STACK",{configurable:true,get:function(){abort("'ALLOC_STACK' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)")}});var calledRun;function ExitStatus(status){this.name="ExitStatus";this.message="Program terminated with exit("+status+")";this.status=status}dependenciesFulfilled=function runCaller(){if(!calledRun)run();if(!calledRun)dependenciesFulfilled=runCaller};function stackCheckInit(){_emscripten_stack_init();writeStackCookie()}function run(args){args=args||arguments_;if(runDependencies>0){return}stackCheckInit();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"]();assert(!Module["_main"],'compiled without a main, but one is present. if you added it from JS, use Module["onRuntimeInitialized"]');postRun()}if(Module["setStatus"]){Module["setStatus"]("Running...");setTimeout(function(){setTimeout(function(){Module["setStatus"]("")},1);doRun()},1)}else{doRun()}checkStackCookie()}Module["run"]=run;function checkUnflushedContent(){var oldOut=out;var oldErr=err;var has=false;out=err=function(x){has=true};try{var flush=flush_NO_FILESYSTEM;if(flush)flush()}catch(e){}out=oldOut;err=oldErr;if(has){warnOnce("stdio streams had content in them that was not flushed. you should set EXIT_RUNTIME to 1 (see the FAQ), or make sure to emit a newline when you printf etc.");warnOnce("(this may also be due to not including full filesystem support - try building with -s FORCE_FILESYSTEM=1)")}}function exit(status,implicit){EXITSTATUS=status;checkUnflushedContent();if(keepRuntimeAlive()){if(!implicit){var msg="program exited (with status: "+status+"), but EXIT_RUNTIME is not set, so halting execution but not exiting the runtime or preventing further async execution (build with EXIT_RUNTIME=1, if you want a true shutdown)";readyPromiseReject(msg);err(msg)}}else{exitRuntime()}procExit(status)}function procExit(code){EXITSTATUS=code;if(!keepRuntimeAlive()){if(Module["onExit"])Module["onExit"](code);ABORT=true}quit_(code,new ExitStatus(code))}if(Module["preInit"]){if(typeof Module["preInit"]=="function")Module["preInit"]=[Module["preInit"]];while(Module["preInit"].length>0){Module["preInit"].pop()()}}run(); - - - return PHYSX.ready -} -); -})(); -if (typeof exports === 'object' && typeof module === 'object') - module.exports = PHYSX; -else if (typeof define === 'function' && define['amd']) - define([], function() { return PHYSX; }); -else if (typeof exports === 'object') - exports["PHYSX"] = PHYSX; diff --git a/packages/physics-physx/libs/physx.release.wasm b/packages/physics-physx/libs/physx.release.wasm deleted file mode 100644 index ec750906ad86ccb4340ed2b05e7b382020f8b645..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2281109 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

r#_ONvG$gGXWH0YlaFrtT)OlsB; zzyF?DYSd6K^>)ncE(vH`=Y4hxTt4;X5@U?B**!6^u56YK5>tRaP2fk3e(}E&N1L^t z@hn|8jB_zhYL;njKulXvH}IksXr}pHyyS5C^<%0UNIp> zC|et{?B@W0159lwstupYY`AE=8zZz3&rv!DcIb(LBiSP?nG8d;Bb%6J)IKM?#NY;Q z*L;*@zY;cv(fpN!QE&xg@j#sR#YbA;!;_LX(a+E__gYxE>_LPNioF0uxi3 zgn;J(9(AWMuQ-)dpcg?ZC{g#2RIoicuae;yc$~u8%h~vzwcvCew%&BKViQ$@~cTjaW5T0pKFnGDp##k$RQ*eXjJKef}!A2z9({c3y1HPA|9 zoH>}xIj)L>vn!tt{5u#__;-lW5HaRy7mx~wE#@luV6Yh360MSW<&I9k(R5qb7RuSV zG_g)`+cx8z*bZYQF+8(3p}GMWwHVej=$X~sf;j@2Wxq?!ewWIAm%fcTJFV<@)UQW- z5N_29Hdru~kJ<>=p_f!oA`GZCg7S&7y|+K6)rkgRVlI}PI|2smAuY;t2lfCPl1qGy zz+$sT#es1zOCz?_wF1*V1r~#^K!21vL^>h)oXj|acci1U?D0e zc9{&SFTOPn`|J z&!|t(AU~B3mY*&1ZyY*Ah+daEEO)AMYIsN>!`M%-fIkZ5OyvRZV1p2GXs287&T_;O zAE>+?1bVMlRH5Dp_Y*|XH3A8(63Y#nE9%gK{5lH#v&d-$f^#qntr845rYe;0eT`SE zJS9}6q^;CRUJ?}z#griaJnEoz%gI4hq$=fjCNHKSEJZjX4Qv{M2<$VI3s}pO@-nkq zEhLPp`T2OyMokato>Fe?%z*Rrw$YdhX(!nGgHv?-5Vs6?-9F4MY^d8uxV8PuP06F& zvN^7&k8wNUw~up+XM=Q2*E4=ei=?z41BZlfe*ZY$Xc}6N#=A5H3sN1r%9FX>`n8ah z^K24gcKTx~N!{V$$yU7X)`I;`F$x!@KOyV163fv31c_z%HA!L_eod0 zf)uKdp#Z_sg4moBOiU>8m=qxD9y(f>>Ielmz{Lvam>ReYK_pfqu#`gnh7*1I7?Z@b zI@HUUmc$`S9>5t-;=4Ab#i*jSC^DwwwpNL0Exiqu`a2QM^4k!{sip`sRwT7DAp6~Dh@nfIgAyDD>!wCPSr_Og#n-nnmtcN#Go2-IaOHkL6N^!;33$Xo+x+5<&j0|+WBRH-C;Bak8n;2 zOE#=d^M#I0qozKur^Q^4E?-KaNIm;-2Sx9ayUra7M;9B&wPtc+C#NPM};R_T3D!! zCtw+5u}^_$e#~^z-85SazL5#2D&yx`Y7JDCql-ZkHJF*lE(UZabbdZ3tM0{IytQZ1 z|7lh_*0XXo0y!J9`_p7>U(6t7q9mdz{)IA@3W|-KEyf#xItkZSxOT!-TaY(WKUhTj z5P*GYGmHZc=J_lKH$nONH@~IOHHvn~E28@eS9|(nD$SC$y}Ru0ky6MMj4c7}@`Rn; zEXxA(botGrae4PQqw?9x0ORT2C5K)hQitQF`?Bw9PoNl)p@m*x&lL2#dztACqiPCy z3J&ORVH=wLP9UQU31_0G6q)ZdiYUS%)(1x=wq^5#%JwE`f_IY`)V-U|3NG|zhYJ?3;nEtp373JrEL>7tab4y7ZNtf%Py|_^ zh%k8LNbOVK?KgK)#O0`xEwoulcp&s{2UDxj_4@mjMTH=EN7R9Z_ zbCiDO$IAs~3EE};#qucVHToC{J%eoEI-zD55q66Dj9_9swfAD0xD1;vQh^q!^fK=F zo`0xes1*#B6i&Fl9J!tW$xG&0{%K~ap6Fa3t%)>ZDZqY1^CvTV^QR8!3WXINB1bO$ z9A)6~({N=!`7!Nisuo)Yzac#@4<^^6QcM66PQ(>j?8GWh`T<&g&!lvfdjy>vns9)6 zvv4_S0)@i=zFC+v$UZzS8e-Jg#&Cd!@=oJxPKFRnXc@>8*^bO&-eP^CSzK#bMs6aR zO{s3faFQrWs{`5c&)GSE+UP{6t7-{g4RM7f+7d1n4Uu**(_V!#B-u}f?V|?Af;D5e z#k|8u;D5k5k3_qSp|7f|upRHkOwWi=eQ*x{oD-c7`Bifvb-`9x?mjS@jO-f?$F;UF z2h8a+gGW1>Gs!VzZY8;s@?Bqw%3qDkzx!fp`^boVAqe?&X*BCYE7<2IZPAQwvL%{j zs1Jsn7SPN^ENxjlO9(J8fi70AE3DON43P{=im__NO%PJ^9L-gW8Y?kpZi0?s?GFpn zfGsE(dacS?YNr{$Q&Es^?7&jzQ*j?<^6EZGa}AGZ?* zRc1$jrJp;<{m%X>CET%Zuj_MU9h)Epmpio1=M^5saY1o1M#KeGEa*zL2Xv*W{kqcp zJXhI^+m$e<4|H(bkT_T0Wju1RDJM#}Z4zV2xT*8JbysFSe1LiLg%@tyb1`>lbLI?c zti_A@`4bVcUAswPHnaUK!&`&az=9v5&k+!}3(N z4LvCo9DC&!4Yn=W==&d;j&+PA^V=`h(=Ou?bouZKLrBIcNP$zU<}M8{4I&?25$~kM zFr6WZ!ti2_hrA3gy}_i%;NiDTq=irPv}-?~)O>H1Q?)peNp%jM;47j~+)!;i#x`Ey z5#Mg8dKRhLDY z(*FTOSwG-ULWbv37?>UG7W=8~o}adeIVoosEUiVA$udX`QueA^MAyw&6Rq+tC_#Hx zcGg;hR(z-VpaGCqc9{?qEKti9n6m*4mX;S;b#N;K;n|AYHwB6p(fXPPxUF zHN3eQUJBy1n&Yoy`p7@bBr9&W-rrKI&yCL5n{BFnwnof$Yh)p*^Dx)=bEN zl`v*biouf)xDX=cb2)qY7#L)%u{+DaW_Ol>jSpEfsJ=m8rDrg{WeUVKXZ0%6_!R-^DN`&+AT0DuRk$qKy^6 zQJ{6yi}}$kg`lhU&do+3-L9W#B5Ww^eMWGNic{>2!)VlNs1Vy(+x-d$0Vx!?SvxJ} zwt`j~P@&U1wXom<;p)9`-0ldrk7|GiNNK<)q(Im}oNC+q7OnP}O9F1-3~&QQWI?z^ z!$OeIp!8T?!h8I%m-cEBrc~?n+q9xuTXko-{qAjg+ zJ8Nu{GOJ0`xt?tXG!nHQNj8B9&BTTVZ5;8nP(zH9RQB)*r35S=_v30OQY~X4ARu-$ zGWyoeVF1mVq6Fh`|FX_uH`9c$Eo{`zVOEPv69{5*O7j!<{7=h+>nUw(fYtVN2QLIx z{+TrUc+8wbcY(>210+~aplAJ42Na> zZE$0ok6CQk5UiwX(1~ugow;gmVK|CMT`&fnsC@q8%h!3`DXQGTz>7-OY-T3X4%oHA zvvvSa*G@KVYDoT#q}MD*U17`^Jl|=@W3`PGK6~Ni4 z$~-ymV(VgH#n2&&ti&F@(`Scjs`R#1px}X3k zERS2Rhe3Q3k9RV&3^E3cMCJSe^ZMn2RdPA6-+_DcQV`sCqu!c%x5-yzXH1Z6+1Yy| zG^_fM2sP>lbLeS;BwrWLXjhzFe&%7FwM&Gt%eQ8aLZ4>MzAV_RcC}tGkLYZR|+Pj zxS1RDe3|_o@2}*6O3y+_>BJHc$d|e!xpzbvlk)7VdD7iCF1s&UVzAln4Ej34sUT@Y zNez{H(JBAxc{Gru{F|p!xBODMoZgle`qQNR?W&N_rLM8cMDp$pqLxFPeZPMdsGonm zHok4AztcaDjc4EU&*gH#?mx~V>|y))468_E%S@}Sa_+Dovw^NVZC>Ygr)4i6nYLwT7bR+MR=|)xuYnPUEqt-w-GTsYIaw&9F&;9}0m+3|Z zj&vhjB}_MBoSANf7lN_k0TUJ=RaSWoNY{;UGq=~3ZbSieqj~8@^XNvYbR(V}O?t8Q z$Y%Z&t=--R-H1wtbR%hC8)Rk23Juv&WyD1D8?;at(XGW`Q9@^6SMOKnTbIDqae3sk zrn)c`Z7)t2&DAGYc0swyTIsN zvSE*)qAGtNQk&ezWR+IQ)J{zj=N_zn{A| zbb8;#3Avr)pWKf>+YOhbPpMFhY(m1ER6#iV2|Yt_zwkoP6gAavtEL0=0pXD~*^^11 z*=8nrs#;-Kq>Sofd5#EQFo{nAD)wDIqqu3PH20*0pew-exU^;jgj#`3+Q?pC_1%DZ zPPV}geo|aoI7o5n;vgl1p`EI57mFrrC*X_#5O@#KRUclG5nR z{NX6_B0toh#EplV_`w^p?ehnJregJ>{(8Bh=|P9z`9eX-^@vz`9<9T(X`>S5E9?CF z!s^d?%BxBH>b$~UEAjm5V$Bhx?u1}CUw%bvC6ToY)-KjcWUo?z^AXgCc{yR3{pG*C z#?OA?yYoY3#4=+cW|~c;jnxVw}3G> zEwsY`n6FOyhOwD;AV9msvr%gSDF`}+6)YuE6=4B;Vn=ibzm%e6Cis)Md`FlG%u_<_ z_>jn~$lkVX(BM&Om1yciA%Nagy;R>_M&)L}D@3GZ)?^YrEKgr_PFOxXc?VAd(>$+W zJS`IhY5;aCkMfVOy9{6DywPS#{zo>;JEvI$ACramO$#C9p;e;skN`cM&W|7xpH^@M z^I}-Ju!vA6t{W`CQ6;c9AQpTG@G@vF;Tw%JM!-&4{VXwO6)Cy1HiGRe(%q*wg6&}R zNcJ|3U@Js9M%fL)sCGm4zBC!V)jVQQRmP^H%U^h5-#_$5bh%B5m(|^!5Y-=a{L=DL zEBw-iPT{Wc{I;Hzx~Q`|mH|jBrXk-suY5}V}fL!-ft(LeRUg6$rsbW2~CoPU<;cSj!ws5X% zjMR#;EP0!5l(N=*#aFD?B+s>f5Yk7aAT9j-{m}^OF8TK^x*pf2g2m{dy zm2F(qYua0`2opJN$~p$Fsi+YtYo>g}g40@!yhszaqJubKL;ET ztYjH3H6P^vz(%2T+BpAQqRwwYq45EAGO5QF$`S;43cLlWU5~CvIIrlVaBz}6ifI$rtJ-zp$jqFqrEGD`hD(NK1qd*`vpP)0)9E#(h zLON>%gG24Xh$ooYCSQZ6S6p-*fk##$TxhaU1(V#w*weu{@GaauC8ZH%?!^)4^`Ifo6w7LLtVZN@YjUeaQ<7b3$R*cFq!3Gr zsNbQC)*p@vUn}t3;xgUDaZ<6g$TKD2Fb7m-f~q`U@~}~!79`~`{7P7aK?x|8>jss1 zZ}m}Ns=BseLcl@)iUqABur-801dI?!k1FILp+Xn5wrM~mhdRwKP2>fzYUE|V8oP{j zWna8+EY9jcVUmk>S{MwHhG^^czQ_}{u4`B?>WQxHk7@oo)v={ zNQm>u$g_=4(1P&5+(=vC}1v zsL})wz)Z#J2xS{%V3io9&oaZhGT?+LM#h}GJ+Z2^O}fUtaKNEFF%Dwz?c**clA zhIls0yg~Uv1g@8*q*!Fxm{Wut9{d8s*3U>C^aG4BA%f3$jGznh2|CR*jd6!DGd@g; zoxe}b%xLeS;iu&W#USk~8IiOgh=l5_i9s{ZqpxB}4`XO6Ve(T0oK*pH)Q4 zzr9#;$HBhGo>1CP^Sg<9Gj}=Np)j6jq^(o6;j^mtY3h_J`eCva-Q`8I z=hI~Mt<2&yKWiadF((&8Fmnf0%vOI5tB+n*aGC6Ju&N@nF!bQQnQ)LD*CUCC``tle zd;sSOhP+V~WJzKXSNoHGN52WVx8Js3%Ws?lkLY;_(3($(IWn_=))A~Ou-__7iCsLF z_hSSP>A*j&EC__sI|?u{@s15kdneTacPPE104o&Uu|s9=K&jR}{L?zg;!aKwhoUH{ zOlu*25LSh`FZ@sxp-$1p%)=r{4>6+1q|66IRKbi`6%HR_4j$o;9|BHs#cWZgMQ{_5 zQZ%hHD~pwO9HHD;DKqY6QpIuU*gY#lD~G@bje<0-3)@wrAdOWbKv?9NA_zf)94F4R z&Z#w(u)`5qU&`2_5?a!&<~yoWFd8K=cndZ{(!4~T-R2uT120((mu;upG($Qe814Ui> z9g9O$7Fm?hgrvuEOr=TpO$jMp&$SbuIEzl)uuLbE5fyLTMkhLhPTX)No!AySaZ8qU z42Osczdj!=DcXn%x_QZ^MTvp*8YfWc;T{teHU@dVV}#T_N5&T3 z0vnt1cDL3h`t4a<8SS3csmzEXzsVr9C}a>n<#{d{Bw!SOh79SA8LUVoenm(mE|V^i z6kE(Mg&)%;Yz_H6DT6IJto?Te7sG0#8dMD75kNf;8-;qQFhxcX7Sh9786WB^NbwLO zW^}>FjzkcXA2v^-3~7L)D^&w?fg(O73l348-mL{2_73j^4(-%8yrXX3DL#`BQIlUI z8vZ)%6l5}w5rL};d5fLjWEvy+5K|NuAiY4KF`x_zotTQHNGG}S0zrcd2QM%f>BUH5 z1Bq3SC4U%5ub%QFFt;(JG+d>}O)}>*9ZgEJ;l9=1K!)Ot{q;KiHZ8am*qgZMWLz#& zAb*{3#y@^;L#%f=bX8FBbF=>h9_+!4Q2%Lil(1%PCDwA(MEi))geKwQNP!TO)V`Ll zDXvpq`NHHVwt!G(wZz&wo`WXNRHM_#J^nIXLzy+QK&=B9n*l(lhm2B^Hu~)3DKr-A znF~QaRir3rqn`fxvQ&v-`OIbyk%G4vv3LtRYmls>ZeZ&=Y!-*B2w)SZV)Hzxgd2vO z4nS;F>4THfz1QWBbd3~}os&X*RBRZ?PV_7EkXRuh+qlqY1&C1nW-jy*#j2n)(_DbM z-~xD4Ud^O7YpqJuX>B-Tb6#Mqj4UuxS__O5NdF{S4|>f8^csGhOlaJ7=vp&z<1v8c z#vKIzao_E4Wc6pk!tc333u>@p#|gI~6V zxOCVS;?iPUh)blQD$<}f8!IW+&Y(7SQRs{f7h@%C1!5%@Mv5znMC?wnzGfxTp~6bt z3_f8of=`oJ$bAjgF-H?|^2A8e-glmy0hmw}VUoB`K*_6Q;6o~RTw=FeVs~9)NAMA1 zfgb6P;`RZBU+9mcrhV}=XotB!L%X8Dg#TEruQ-Dmvh{5fiJwX+Q6B-#rjm|lW}_&t z6eG!jS#NX#$-rl}ITdm=tda~hE&w0fD5i80=ugrl#l4yYbVBr6jYg@0NIN^tT2cRq z3!T1vxW7(=6#Z1f!p^fE^S6pkKitQWV4Al&Fq*d%F_t-GVud^d8q$UnMc)G+hcBy~ zr3|nv6$T#SU@JJLGj|BrKug#dHg^jf;}CTV8)GO~*ccSGurVAkZEseqNKaR5D_E#B z95g1YRVA??>24NCOs0g4F@I3_0oLW1XmHGNg-@CiXBCmW;n4D-<)PkFFcg4VPOGG7_na!IpnK72GT>DF^L* zY1zYe(2EjU2RmqXk!`OCKg}OHOP)79U=RaYAlcunNY>t3opiWiI;!YKUFphJl%z59 zihEmWNh)cB=|Zw+q}Y&$O1NQOc;W zb3{tP2BC_(3A<}^mm`XD3ua{nzmLZzJyt9F%$m0BC!k@rJQ?W_8sA^idIIYaZM%)6 zZaap()i#Vw0+Y90Dhq#FEBN=2U?c&3g1`Igecu!js|Y%`On8YPffsjd7~s)fq6 zFa@5jv>gMcd!$dEk99`?&gzs>I&!2xX@aERIn3e~fDw&sf>UJ+h*_N$=PQ>9t*c5@ z1r)dyM*uohF`?WcV<_$Vu)`l|O&gGr%y4S}2$?0V3UOpr^Hi==JRSF^`p&*;*;h2J zuUPb=UAeZW9+H{L3ZeJNn33O`Dp!+p6zt4TNfLACdx^nbVz7TagMGrho@)mC1l+cP zL67S4r<`1ctV6UR{x&Jn$3$qkFtba;u=N(wkZGEWi{wU0m&YvQM!}F|mV3ko0TQU63lHEL+64^bEqXKB=P4W3YHi*@x*~P_} zTQu8Jz6#;~DNoVmb1r67ls4Pru6$vGm#UgOg-dMY6FIg|8;AlksTBf!w;3BF_^PM* zrjIK*0TSEM_l^raSpKTXKCazuog}I|t?Sl8l;e=k^G#$#!O>u(VPWCQ2DM@28|cKS z09q{}CTzlI29tvrV(W=8twW|w$w@sq8J=Jg+>|`2Cr@gtsU;D_e4IdKmg`Vm@1N59 zr}Twnr=C2mCr^hbR>w1X@(e3#YU$vAZrTr1aE%suyg`PAW65yx?@3I#wHbLyoLyA7r!XrU)VS!HgJDyZcuizW0TE20TQ3ss*iwRp8V zicE%s_|90RY3MQyCFTdIyAR)c_8IU72&P~_ zHB&H;53)p)nV)5dnTp{SGZmw;o2eMCF|Lk%c-qL-5FHwz+Ai#`trn?f4qg}1hv`*s zEkmPNFBj5~I&3Wt0#)qeBJ*!CDOb?Sxf^>WYbWY(du1u!QyQyD1SroIn=>P}7vRQt z$R0_#dTAL|XB~&ds%bz(IQ&oelTd81nCIY9RPS>xlcX_Q#TNweK3nvMOxX#y1vC-Cv`PZ|%5nf2}sqnN)PY!*&q; zp44+)WwGsetSxJ(2}wrBjOx(ttl|#~AG2d2@ z-VjoXiD&ofrv?s5`M{TF?+4DrnP*lz2oU;)>;v_w)92cqPn|_~ZeFH4idG!%PBG}t z&1ck|%R+bd(w!rnB-z)|_U_4uEfi@GxKctV7%hJ{j<5n@7FOgU@3En?>vxs2I#eR$ zs5kdW(#})x{$1;FuMkkRqwMwI=O)e=5DCx`3 zV|4{6#-1LA#nn}VcUSsH+Xqjs^(O#ZeP6&o2JokZa3;XJ5*_M6mQRw>=z26kHAFnh z)l}Q!T5j>EmKVh4Qcw6#@Z6{5* z6cZKcTmIW?IJsas!o9PBulpC_izJLNBHL&q#!f#g5wCT{4+L4T2tm>6I@e@UB9U4ahQ;EIl zu0UCR+6Zt0QJBB_6sjOc$*gQgP;Fkt9buS5xr(nf!yl13041H8jFzrs_LYbYppELmqbQ-X9=3UFo9pOp2Sl%j3pNk8)>oMDmU zi^IZYQ*u?`{1geu4x7Yq>ZW9ljac0FHYHcE|0)%Mvl;C7mA;T6orU77MVm}MEM2*S zXfqW@lbrPl@5J%8V(F^DxW7A({aD_K&2?A<-?60eV@g;_aIl3-FdDvwk5{royT+DF z8Ija%M^kvbm?$Q6R0QiND&Q0omKnvw2{TMd3Y`@q&Pe$z7#`Ey!PCwzAeeuB{@FFc*-VfA;WNOx z5sQzOgScDE>u@Diu6)Zz;l^Hcc|n?~V*IT10)%K2-*2o=sHMsoVsNf(DFZqHDlmxY)NeqT*^q%V7*yS_iLW65=K& zT%XHSKd)kJ3Ary;HDYX6nOKWJY_}@H$uY&sMv*Q>a_XbcRS`Dri}6O0DpHr+C&md8 zt#rB5T!=dscYxz+`^%Ue88e+XqIyeB{Ss6#`$&>MlxC0Uh*pMTb*SF5TD$x+lBU+a z$c&_u9+;_#$#9K8u4g2fzo}fcr>~6LV_Otk5d;hRnOrkvVD>R=VMuEll zo^g+7Cs}V4=9B+nvb2YWMk^-0r|zl}SVK*@8-cJJ>1-3HJybXUciKMNQ46@U(Pv1| z?6!rNG`mec09inFIs;v(yX`{Nx*Z81C)QCBi}{F6U#62kQna#j6B2%D4=w3a3q6jH z!7roCnMC{THIqcdLW)fof_5g7dT8cB`p<4;=1v_j!0A0?f4HyOPSup06rCB z`$@p3;_xbb%It_fUiCt_92y%<)L{X)BRM$w0B)+gLXl42Ly?T^V3y%g@yThh2=2W< zwkU(imK)Nn7LCvFe;8hM6hyJX2T9-qh?;%q6t;yvAd-hXbU$r&zZDqf)V~^c0_csFeM7Y|Gar)xe}g zKo7)lGhFV=-;K(L;_{sjr6F`I^cW}?<2#_KDI0lI51qvXP!!pv(P%UH>~A@(=hJa{ z-#bv2iBrqAEf22|gl;eG?v`jYyGFZB7SgXhBTot_g{-nFPWPz27ooC&I7J=FCp61KK09*M-*T8%_ zwY6l=fnSUrizKzA&`8Faa+^qJ!FF4s=~8L#1ZiR`;g&@tiWiY|=Gp_KB1lNE!1N5` zi$pB98LtN)&?I@K7TVu_fpg&6Z`3r9V^WRs-|Zsy+xpEYxhTe)n;_4Wq8|3TgwVFv zP>^ZcWe7*z0K0{VCR)4Aw{ZRTCsBV)f>YaZyk9y7+e2dz5u}o%(igl-@U#L=Rrey! zMut#sSN_$NnYDQ{C??2V!xRX@A%q=#YLU?nlxSdgx0v_Syyg2k)h7n7Pudn*=VQMi z-od5Eepb^X1_F+nACF)wf}O-x68)p{>P5yVj^7SBH@ibI;xWf~URliXRn;eyVuh%W z?F29No!zc25woSmxiSkVwif%_6h*ldAu|J6r7WRs8WOfmh3BB7N;a;D&<&P)Mw*QB zwdH6LXkI_f1-`j7LLUaal7}i5a;eHW$u`IHcCCLEg5lzvLd3=Rp<6F*uOPe#@V;Bc;)g!<=b)j z=(DK_LK8ZCQ3oj#>Xsi}!?JQ8i620aNe*+Eeo@Jhn&bfWL_E-8kk2&8PXf=v*ca#K z#|b=@fY>Ki#ET9@Q%arH_mD!e)^0quC^L^=;13mh3bd&s7hf))Vv zbU>VP00Ox5m0MggN17fW_woW?=UQ1>3G%Ns6}c$?*cz9iV|0r9m;?~yJ+~7Vt2wDt zD(l4eP^14Z7wDeLmvlkdRTeT-Vs$i`icG|SSu$yr%bn{Wh0oE3gfd;v7@|7g;d3!r zKN8S=D$SSHd*Y9Hcd6q^xVvRfZ#0$aE3rlTkCyGPutEcZ&W(*9dGp6)_|cOXWAYX> zOy0Fk3y#=h3U{Mwugkt*(6d?=+r!YNU*l7AQ=N{D0}?e(A;b(<6CK=7^My2{&K5;P zF~zt31sBvlO)ShI8dDmBQd&bJh{P>GVf$FGdZ7pWP_0305BV%S(*h&Q^w~ zz)O51P}dtT+qW0K1;|U=yBppq7c#Yj*(4C+XP7{2*AF5SEy&&&a%jJqP+c6YTmr^)RBt@d@Cg}&7VL^b^86qSlm_JTYayb{a|!k z&P8NZJ}|ws%6DLTc_J-8{O74J0!GU3D%qmcs_8xD^pdjwTUx&NvAXQnysWJZ+L!}M z1gdg>nxZD<9H|q`R|(uA7?>CK^i4&|q$V*b^~NQar0!4lS7ITu^Z*mZN=-ezF(#8F zMQxP2Oa2)N;J(&$=h^k`;3E zcs2F^?XB{mZ+oA*G8}8pNQ#x3GYn?T7GzWPnx$oYUMwP41}9iQ*_50h$4qdu)%o_? zE#v9K+_IIVTb*yOttW1EzJ1}hI^TZUZ*{&s*@iJD;Cu$;+e~HQkoy=UA&`Xt&bXI$ zBa6M1S_Z-FjmknRs)DJK{I^VK zb%9K_f`WfWC!I}KCKxi*mO4KSlNA$8+z1jIzz&HXIlMMq4;srq%3)qM#~TjRX>jm# zz=2Q#4xX9FXwlhGwTnfIk++?W+6?fD+T2#u=C-0Xw-vRyt*FgyMQv^e)CNb^VJ**2 zLv8bQSwe8@drfe5&+Ah(S4f^n?Pj#0#b~iMW|F1Ffy(-=eEhX&QK{$+Xlbq?fD%d! zPe3ALwLvio@0-UjfoLsDTb)~ub$dp9mtCLNDg&nN@tbe^cD8k31dHrqp>H5cs=;ff z;O6&QxiZ;Ih_QuQ+-`bGDX_P%X+0ZbJFqZM% z011~y_$CSnjG*{iS*08|fM7*OQ5`ExX3|KdOuJyb3q$6&Trg-!wpH`uSf3-O{&JS`uYfon_u@UE4;3OnVpgds~Su3$u;dix5M#s|vxd(*D!t1=L0gCAdL z{&+CS{(VgJwUP*9%LQ&6n$S@h_E29-bYWDQ_#Md6FT8B5SC@OH5GK>N2068Or9QQd-495c2Vv z=C{3nkPH_71#UuXg8z?PPULxqo@1^;^A9Sw7Et20j+jH@-%`%M{g-bkS{pG1fkUiN zc(u!a5K`GphT`D|FxXS+6cJ?FAS_I2uaDQRF zrS&^x)55?PdIC@R-BQYkrpgn90tlKxInGBPxctK(TJO$+Y8l5sK>)1-<3ZC8f9OLh zAn+$-hKMQm8RG~`gY@u1bjc=fAmL`D18)Zg>7^8xAl9ZmleW<$s&xcdyq^%opMeZ_l#yDTSEU1mP<+1bv15 zg0&0P!i?V8P%Wr3ze$kjl}fdS0W>UB5|#MVV5kP!Pl9m2N_f%{PiguAl2nwM@GgRJ zj+VD;$BB%5G;Ga?Rsr@?efU!8rO12}YDkr z%mwX3%9a!+vi>-qWvYNm$Cxt*72@)$`ZR;CFn8pbg4^hJq!M%{ho+-8E-P{Wh_yHo7Agce2Tsk zByB7+N?i8b^sdPQlK#6Cb8sstER>YOqRB~))Y4c6lT&LEO;ek(Nz1ezMW^MYMd8#O zMcC<)9(y{y7(3aY8f zu(7}=q8h{#OZ)s7KrJe&owSko2U-Z2mMOmmEP8e?gV0Vb0VcG$D+dnlC(Uj(x~FeD zCoHw)90J9#bc-d6_M5ol^j%{kd>;NE`)WcaN1%|?1eI_GSlPzV2bxh-Ya8p5t&zmu zO3UVsw^9zcqkog!0Uqh#<;+4o^0WB0#J7Ju^BOH!cKWd9$1;gqhqiM*{+oWpp=DfS zVYbK#1$#G-bZVd-70fRU1+|rw=7EA{FX&N{Wb1C5{gO@2&=b3}p4gqy!nQ#1L+QfH zlp{4@?stUkPWYWpe$*X%yjpgosDxCWaOvZSVjE3~k%d?RoiZU8ugaQ1zo38_2i;vo zxCSE{x_CL*S{}1`R6h0ZL*MUnzCRrMHsyalAR73Jg&`xf z+;tsRlW>J zcwoYX=Lk}9<{%lj4}+x5qvb#%B88!Hjv!5+IY@BwVk{|4G|#FNhGp?6H}glk1a2KV zC#XE@n0VnuX=e+(#ZbwyE6=`G$K%TEWKArnrf+rShaT@^JH&)1xwLyxpeaf7hx|pxw?aRkVTka=1TarRWdEVc{DCR z^W)|3Q8R71l#{VmU|bXzqU?Efe)67%Fu_~0O4yoN7cLr2S~_)&STF@;=| zKem1Y4-eW?|FxA)^)5moUQRr~2Ep!@%8S@3kl@7ZtBXe6yWJS+?0|XseuE z63wJZvCSu7O&V|l7o|1jLi!4HhHVA}#kSfsnQE@bWs^kl(#PNqu6V$acH1;EuY|B3 zRl-F%Fzg%cNa-7GQt2D*Tj`tJ`_ua|+IlTrpP$^_-%8hGIlzzX>Rs%2=k?QF6u_y*InqWbf2?aSmqXa7py>Gmyg|-2(vaH0w!b4Mc zE}^!g@%0AUBpLAmV3vH=T&^K_j*EilxNKAK9H|qOP+wSFsb6`IBpgI}k!*y^)xGt4 z*CG!#mkw$9G0_zl?ShZCM3K?QK4sLZ2E3j(B}EU+Z%XERFY`|?(63hSLS3eNjOb0t z6}_I<*VnI3?}v1m>7nCo!Y%ma3^${>UF2`tr{|-^4+$aDnAM7xvn+5^lr}sr5DJP5 z^|sL4p1mEz2*oHPNvckG+^DxxdiyeayMnh;=e3DP+SC!9yGl}hy(3nREF(%>efW@| z%+2COo_vaOPU?uxS0z7+6+O@GaYX!C(FuymF?O7y1R|2SRYliWQ6;Vh6ao;f=p;oa z#YsPHJFyqV=P?o(p+>dBsTMiaa;Ms~Q%&i|LDK|OGo%^0I!>-h$i+j&*m2nkKXTdT z%(tUwM7qI=G#@*au5_x;L12nr0fD*fgmhf?_KbA#E>7 zE2wiIXhRkEL%{9QBva+!s;T(&`4E?XIvTxJ-ST#BBNaGGJc z6+k4IE>h*#=gGPp!(9B7EaT^Oy=ncD5aZX)y_f59P45-DZ14TBE?4(vbh)zkN(em9 z4#DdXA;{K&2(j8XsnA^SRbKgKT_%_vO!}aYi8;4;Q?J&;2(G3Ge(5erR_Rxc)V;KL z9dnEX2>o?Aq5}ww*3(dikuC92yt3G&AuZM+OOPG1@v34obcCchvFZ^?fVLE`Hr{gj zDj5==zJk}qjJ|CbKgGk@2gMYqJ55$=8vbDa>KX3E77F7f>yU0Oy@kkpggzBnCY%$m) z7E1JvEeC}MBep2T%G4LQv+fiEqqd9LtTo46_gZnOW@6}Ol4;3=O?^KW@T~&&!hN5AATvxWcvEGFI&MGWl*2Tr(PAx#Klej6cH$9x+ISda0>;2`9p5U42^x6p?M->8whEhHSp>7dn1DCX!lRy|xp)Mt;gaH7I9QHg@R3(?K@`3c zS;}Uqs9!eP+*Ty0yS@9MYO>ReFg#3AQwO6JEl_3t8RDv9m zXFESlH&KDD?&{9hl!s6lP_yr}A1iAOe6JRo(Xhp0sYv;Gfbw{j8hA(ACq>Bvv(t(R|mB+nMuWj$I~9RWY<1 znDvlG31b@yHNsS3eub&(OdUkgP?)OBX;{LN^6B?^m?|d!U{!b7xlEWU1qAsdE^(4X z%CKOPh-cE>6WfY}?*n^E0!iH7@_a{g7ptnfhox zyH_T0eQ<+GOS)5YewNG`wW_ce@Zj8ez~*!D9CGTI{QBa{BmR49E40CfUVF3*vpP6c zONZg!}DEgG$6khjiQ=QXN*t7hr_%Kx63vR7hhvx49o-RX^)IQfGLFj zFPy&Af=VgaZhz|j_Ca(<*(Aj%sY6RS7i)#t73!Qes333BOxB;7?Gp0X_0a!yJ% zn|Akt1>LgObzit;v+G#6MP0f-aZKd>L23@!k?RD@FlR22EN@gL2Mn$l>#s>?@jotc_}2zI?e8)SKQ4$dCn+6!LCs7zyJj&&aU5A z*8RS!?)TM8dn@kgW=fW{B_ehrq*}~Tc+A;$OZ3-CcB>z?3oXL{Q#FfexyW1hQa-Hc zG)M_EL?`Bb=!B?&&0rtVVX$A-MG1FG%+{26Sa~_h;}t2w>8ht9MfPvc0qoi2p)&@1 zmX*~KsO4eo_>`glF@@ul4*@ag?Gk2c&b#LZ*u!T57(NS&(W$(e1Hc|Pz#gsu3tq)% zPiU!fasFsXAwynkR3DhvT5k-=n$+P;>s5EHhw3(ULPUqPMl^7{jJCPSIJ4nDO`(OBB}DlDK6#P$)%ibCKCM5YfGB$&1!c z^aNW-(snf=mP(^oV9!Lu09*DmEuUl#?=>naJ4h8|#&n_H4sxkt|t zvPaGWvYksIGv$9EYo4?r^GG#hLLkVw;q1|~fb6iT{K#>16}JbHe4Akf3oa=ZH$mg5aOP75EWZ&umC4XSPu>!)!gSIaSl~m zE;iyr52ZE0`w(}5Pw9p>QcZyu!LRX0C!<}N=~B@-(*NvnC2r#hPcY zY$)L8>t})G`2hY9ZwBGy@l`p}U3mU_h3617on0ZD(XqQRk*Omr?(^TlsLsUMi-R~& zoPDst8!2L5K5 z_VpG+f0YsoV4UV)YPGAGo44~R?9W0~9xa;hW|A9LN48|>`u+&+v9|o_S?*r#!q|ex z_A)0A_u0M2GguohXz?7zad~9vaoM`UV$ag6PY2l8(S3ec#yvZ$gkJ=M>y7P~P7uL@ zBXOU-E`oY^$<8$HAUb?RXRRK_M5zO%bNpYypgN#{Od7IvYChVPdke2|E*wKkIljl+|J&)4yq+KlXp7W zmW(yJqcjmny3^UOY(V-U*lleA+8MN%$^lvVrP-b&YH0>|iCWTI3k>oO*?#6K`ONA7 zZ8i!~Z4`s!Tjbi7R{T~mm^GA&s+o`hQZ;4`bgZPru^4T>U1~vFC!u(k~+5QzDw{$aDyWSC0Ct7@dkrZ2ak+`6>tr zxGXz;DS+W!??{oO??4K>wD_`%eRMXmc&=E9?~kZCUX1HxVRNhJ!^Q}K)x@3vV*pTu zoklqgukxnsP<8l8AgRTWJzBQ1)qDs176<1{>A-j$;H$K)J|F(rU!GVr{Gm-X{P#2b zUmExS#g6*~L9Nx*nT-5LYY@W@9$*2q`BaV}eZ3@zR ze-xp_{Ooi7q7nS!B1-Y*HByS+vyFL!7C61M<2eIp5HRZMkR`Gvc4-X}T!PKCW@yrY{I9yK~j!P^MXrWgsVF2Qq z+pFkmxJ3`WC){qw*c@(IINcX+uf^CLZg*g84!1jJljGs`y4mD`aC`l1aw6Q`faNgU z?wuv6ht^~*?InbfxSY{KDZ|jT4Y*hlJHWeS+^WYmX=gu!Mo=vV?T8;{1RtQPh;H5$ zmV`%L@8&hrc6hf`|9(zelFJZg^z;e~fTDGx_vC*uAkGNH8I_HQOgiW$#&wmx6G35#Bb;6z+-kV`}4)*JMrfSc>YAV*Shy)xR-m*lcD?(%0CsJ z%R%Sqa4)1h6Yh_4&(0?hkZzyy&xPmm*LgnN-^cyD+@pZ<829Y8TlxDb&mN6EKhAUZ z;_dzc?hl6h6WnvYnU#Nt@^^&i5A*!4aIYjUN5j3cyxbGYKSud`ZF_2DS+=Q=7n|E) zjIIsifVfdH4!C49+zQkHApf%g!=++e zHho|@QY_Jff#F%(lC?a*-oozA8^+nsvJNSO4%Ai3QQZNnJ~r4fy-~Be49~KT|Bj3d@a|(_vX2V-U&2aCx6>2<1u7)UvYF z&VZe?G*rm8g39NX6vCtAFW()@hlGop2A24c^fi)>oms`8?k1LH*>bP*UEI@Dc4}2)uJP?@S~+zEYxzoh%UcJ)f4IFNdxO=>8rV%Na;%X; zF$gRCJ7;#I682cR?qqcpA_O*??7wkWgzoMhbE#*_b#IMw!~!dtRmQnj3Bnm(i>qX! z^D19yfH{$44)K&TlP}Y?NuuunT0vCVD(jgHi}H)e!x>O{cD|k?0g4*j{O-2B#V5Re zJH5=?>1+oba>pSp(A@{&Eq0xM{abGYKPQgLN~NgIBL3Wu;pl@GNcs4QsC<81-uW&J zIy$bv+n;H+K=;h;<+Tx#G;yoLMKP<28($Z1HnF1EDSqoP5FQP1E#MW}C@0~FH_cit zVUAvGeq9`8JwwQr=+&gxqN3Jb4x)bbQ1LNJ=zZ%ZOC9Auo{1@a%A%|G$N}ps|0&XN z;c|-Ma%42=;xub?!vF@IrtqVQe}Qb_be4$an`i@%*d$zA;o1q;TvrIm`O7#1Xq@*u znl&+R5XMbJ{pC?K|K_(8x<=6snLt;50=$(`)+h1b-hLai-R`oxry%7s9(Meysa1Id zee-Bs-p$Dp&oVU_3tD`zCady=xabfghAD)|DFrBvSyDvQtbOLXL)KX(+oK=5EunLg zG9QX%NnWU&hx8Xyh5L7wtM)=ffsmGCHx=pI$`#jhJEB{y_{vQ0^_EVjZ!1RjP>t;o zYRYDoV{1)D7}(t$1ryMM4--vH%hgEC!gQ}q4E~VfdM{aj-3ghD_%c*Flt9RP&dpNo zbeHy&B%a4|T@rq4z&rMyeLe$xl-2}zVt^+CJb9a(s4Bo=Wj(3@A9(FCm&ytR;G|=R z)dZv0t+wUl$fF54o$ zPzm496-o=dg1$hEY*&e|YYa>1RLB+P(50PIP{Uv0R{-PaB|mF1kdoYIIt^^aZk(D* zIeFD2mmQHp00aPFTa~~HOP-`lp5QRH=qtEn(UXxSPaw#mG8m>EVDjV}oU9NG4Dd_n zx#YkKe8;jc{(QVbG2>5a9y5YGkqQe%9E5OQg`+-kfnmqR8#wbtp-J07fb!7`#3qKq z#EqCKGBTAr6+w1#dxQq%aXF~U*OmGdX2`A^G)jE9;ADl*G0w=4A?6vwu+BvQPUVQ4 zkf>KotYrVj&OziNJAf%EAHCB9|EnGhIrYhDNYg_?^)ld6|3q-=lQWDt_3=zW6mbao zU*yym&YtKvW1`Jc9jL2dHRod0Fa(-~@UoL$qstnW4EZdzG$LPhvM=t@$v|yi3fM;mfI6To_1dAe z9NzQ^_ej$okQqD$E2cd_yo2ektQQw#Bc&{L%SBpg$4^_Soi{P4v?6?{G*+eVD#c(l zqzY4K0T$=+Xv|f|@CE;J%fg=py2E@%`Tvi-_Ybf0s_uN>^PVH==%Kr-g9tT zL2Y7YauZLI=hoXzA+(v>JoDs_{E_=S`GY@lZO?t;kjv$d&>TQbR4^cd+p5J=1Q;qh zE;ZC`)uMs`K?F4&l^PIWsM>m{23$}F59oqR?&rJqet#V4$dcoDg6DC5=zZUP_Fntf zT5GSh_S$PJrll}g?N?QH4x}J^G1gg^*+7Ii!r2!$ZN%f91>KbYAg`Kfh$xw;QOTAp zw!gu4s5(O_&{_Vblrf5@VUe2&a8@>sL7#%6$uqfqzjr>Je9?Y6pvq^q=z!Xm*5!D; zCO^Q9n?@TgLt6EV@B|%j0JW|hPY8!3Qq;J{6NH?tJmDwHd4f;4#uM7Is{biG;ix|l zWZHlm^&gkb6UG9Zwme}Js)i>V*%o-hk?ohl6Ao`%lP5H{t(PY(+;C-i!u#HSO-@)# zPIz`XPw)xPjVE+H#-4-(1?@~+wxrNpCMh(Z4@m)_mnkVUue_vi{zlWrJXcusAD7J) zmI9o%Tw(D>;|k|)2wdUZjhDg|&fc&lSD3qDyR_^7qg}uaO$?S~ykykI%#z?%uINpoV?YWv5@qCAPyipNb zJ(j%mj>PB9#CTy-L2+2}AD7J#nnsfC?4Otzmo^zgIA044;rymcVF>3ipXLV7wp$MK zwe>QDnSm?I5GFr)O-NXaA-s7xL+}Z08N!;|4$r6Jz%kMSJLuwA>GL2Y0Q53>0*)!r zPnX}pyE5Ajr;UJukTB~%E}JLJ1vqVmgjuK>A>q_O;0dP`a&_I?4$}i`@`QzQ7QU4O|LCING-+Lm25>FGE=BzOoGAv+uvg5Y}P{zrLIy_=M-i z5S~xp1aAFn5fWyf59=a8FH=YulNZsI6%vMwfC5iw`j5-z3Bv(STb|H_s^JM2x&u$R zfPdEdg@p6nYx0DJ?)CD7S-h*Rq>wQ7v1>eGEuQe?a-QH5UU;5BT!0pyu=so^4gkGO zo`Bo?mF5X&jDP}9nDZZ(%@gJWoVGk+4yuMHobC!d;dJ+<@Pt!cYw-j;qPVaaN2P+Z zQU?xMU#bzQ`y<~@exaHo)mSe5Xq^R9~=-p^bYt*z$3CI~G}Tj{z; z7W@nem8$TAjEi?&FuejjKeN0e_u8Y}^@_e@uls6lLH-if}9)}*J9;xeMo|0}f zbm**NsrD2HD+qkrrN1XB9THC3^!lIhq4ute*2UCyk^GZg4I6)r3$BZu7!_qwtS&bx zTJzO{OK=j5-BfJ6pz3`WJNZUs=*;Yj?SZc4y9m&X7qo{UcfZwLDod^@58|ZL8xhiw zl&Om#Ah))&-Knazd>1=X-$hM?X9SuUD!V+d#ld(2AZ=NIL66+=j=%yC363k=@H+ez zn;mP@{~R}sRnj9ItN1;hSVx}Wb>x{hKkL+Yxt(!yFrHgSo>OI7j5o9RmUp^t%d<`^ z!ldU}IEKsJnv;paSv7aJ7CMAPx}UmRUzBG}edrSGp1}X<=2^j4U%v42e>R2|c-Cog z4SCg{hLff|i({VRS#oAJuD6*@1<{VVR`Tk3*0Axc$+Fnf6wImS6Q;bYy% zaWsYU^%BbqKgiP zO!^KuWi034Si*Ip+zMn<@K?qPtH9K>#5?)NM6A~m;<<@@u4%aEEufUfq8;U`N0-1& z7#DMHvT?b5ZZgd#2ftdUlEGU)P( z%0-ValuZVpJp$(kN98PzQDORZL^k!%m%BPm_vdLiR>OsZ7NI%7@P6-Wa*gNKQ#;P2 z5FYY|XRFX3)L2(fGigV(;SXvo>$8qT75WUq6(&vt#08M*I?|4g5~=Gv%ElZjy-$`) zRXew@oG>@dFK@aDuynuxaj&L7H-&59x(<9P<~|*@`QUh&0E(JTNk6JXYSDQs|9T44nci*(oqKX!Qy~mC{pSTz;XXLm(sPrUDm*p{Q>SKO5Uwg>0~_ z!yyqQQxJL$GQaJxao*uS68lKPco12L9(sViw?T!hf1E^#k=dC-I|jz&DWE(u5X8mh zaDNcT_@l21A7pJpF!?gs4$+^-^0Y) zpgn$${gJyszX}8jr&k%f1}5Z5Pn$7CzFam`Hb%$Q$lGYTAEj|Vk;KPCZN~z}vUD8_ zTw~kHexFYJJ!$=(e*XGBk@frJ^W5*#zTc-qzh`~FXG6bF<^4XjdcTL#exEbec^`h6h~5A%INWG8g*{bgIEIK9Q%291Jc;nWq> zfmcmfZVZh?e+05rBH2WUMoork6z{!I;qnrJohutLAzJGEwI@DZ+XAEF@)0BhyRroO z3fvWz!-gBcTq-nb0rqY2s&2Tp#4kBIr6)P60psn1H~}YvkDe>8Eip+1+R3jiL3q~!Lj!+vG4M#89+X`9%@u*JS$P&p3h#a}xL z3NqQxx{*OQv5NPWiR;6fM(SBwUfvS)lfJsn!6)Kw^HwL$wCTv>_b~)jDWV2s%?#h0lwiPuyjt#Bs`>+yM^qt~uTA-WB*WH5i-78zbhQZ1f zEGltD3n<>E1(2Y`6XQXV>uERU=V~kK#lvYOb6!wls5fWM6kl0y8r}f{u=p8@1V$(l zL&J(8LD|r7MLZ7BQzyf#2Z$=+dQG@QA=|RNg|Wj?yJ2*k<7Mn7l$f^AO>Xf~iU#Ae zH>?D}>5r8F=9QQMIC}%OH3V0W;p+Oux+;;7=p!3+Iu{rh;szAi62C;<=l(x8V7$Su z5dygC3)BL`SaAyxwd;WU zEVy6W4#Ypb_%=e3M?ZK)J4$jFTQnEp;_A8 zYiQO9nz47YI-2Rn)zR!!rHE#yf+i)c7m;`x;aB*z$3KYhsxM?wJre&Q>X5#OJ*7u0 zLN?=okc*vd5OP*V(^dK2iSJxh2$?qb8bVe<$Yy*o#%I5-j*^R=MU-6Z^qg-&@rH<{ zNyH(R|7J`OD!(?P&l+;Ms4hGIGL`jvVF??;YXwoJK6L*Bqkv51v=r%T3HZJEXt zCVWNnMJh_UEkeGytzW!Nt&r?BZptEioyKzW5@s&)grgFv>4g%fe4rOv-dczHMIGvw zN-Ubvi44RwGo2=T42^HA@5Yo#tpzs*njb`8={GjSxrzUX}dVrbv{1VHIr zXItJYZF2SfHRdAQUqi)|fuekq-;>rwhDGx`##K69b}50;FOyC$>JtF`75i(X`EW*M zT8GjfguPYnC?t0XXJl>lI<>ZM3L8TNOj6Ti00?Tckj#7n*i@HKfaxT3XUS9#L3hD*>5E@U-i8iZJ>RaJ0 zfl{DNGRmY|?zC^7Wufhk)Eqy6b*C%&j@0QD)L=#n0A{1l01mQdE#C(=JNR-uMMSzX zc$!Kk|I6d)DbU{V6rtfc;OUPIPfyz43FM60kDo_8ozUzWo?>dhd_0{5NLxHL=tMh> zb38p^e7-MBYm<&bI*xWFr11KEJ!7b73(2kDP450LP_$CgPpzV<$$Xo zKe6Iy>0ocAQ>$M+wk2IUvJD{<&MT%E+dO{tO<2rW@b6IwKgv*|st}v3pbEJfGMfF; zGDd!N&bAiGhumj=eym;WDM!7s2&y&vUHl(aOQXkdj6{hq`x}ZX-YDTul$h%Yn+}p3 zxjx3sTQoo!FyzIo%z|Wvv=`#_I69=+p^3`RwuqJHXKf$TmsbP0$EVVz;*SJa)piEb zw}Bj>jD8;QxjJp2=rFE+jGYZoV}q(CG2eeA)|QX~bof>d?su{wWrRY(XvX~Tt{tWK2@ zL_aRWAyR4Gqz-$N5%ucmgiR1$QPv4d*@B?r-s?v#;E5)&(?&6=><`hY zar>&vrH~M`ZAO$K7DLQNv~O3`2T*MQ*4{;2XD*eMSHU&1H&VGq_Uj<~RB*nk$^M1x z#5J;)qt~_7{_0xoQ$6IWCi@q%6W7T88rffcLVg;Z{;DSX7qS!A$o?AHUxj2J0?=RG zWd8zo;u_gsBm1k5?9&+YS2fwcke#?j_SeY%>LdF!i2PMe_Ag{7u95vUvcLMsK8+K9 zRg?V-*@T)a(}3?+HQB$Aow!E!*U0|rBl|R_ z`&CW$FJvdKk^MEYzxv2Njof}!ll=?XiECtkjqI;JvQLAvU)5y)LU!UB*r{ zK;3r^S#KOPh;j-Y!<@Daahwm zTe4HQ4aIqB5F4~pK{U7mLZ=RQ_+A{STfm1(y^nLN#QM|`PRjQ2#>rA5683W(s6hbA z$J`UIO}M>iT|uXl-aKfr4uf)VSPw!>bLVbiVII2^AQM!#qNBFDpH^+s8Ch#j)aYpG zs?J>!$22=C$ry1vNWuw9i_DzH(dLY=qH1&Ul)F`Q4%H4=Zuh~dId6MgyuG*gPpTGH z&P`i577nBWwQBJ@^v1zj&90y1UprLq@~5IT9faJr$ zW0I@P8IQjFh6j#QD>zB*tsHPw92I|U2BTq-aYIZNkdLxVF0EA9*DkGMA?zh@44f6# z0dN~Va&Okz?0^qGs=Q_4gmV$^snjCRq$iOpc23q$(xu=toPEy2pQOK7@D+;>oJDhu?Ywu=q2Md3;ogSAzv}J5@Vr|jrwLSGB_?C9 z#l%#2iV*$i9**Seq&{JcIft$ZIpE4V;$Cr&gKL^hO_xUk{=#CyX=*zYuk;luJcy zkVZHgFu?3tJIk#X&*JBm*t;uZ@&bRm%|SY8E8F0P$2@U*Fnz0l;pzjXaCI$f1{TC&Lqb8DroCdYMSz9TtQDZcbLsjY3wFT)dRYN>j>a z&=8-DeiXtb4TUI7I^Yk@Teg&}jDd=s8t*nd_Ys&XX}F5Fbkx%^^8k#ZX|+WNcy=qH zz1_+8RP{gY6yjTBBf=`WF-x=Su_DjEvd}HWYEURFdNmjiRkY~Q?EK!CV!RE7Mv=YsR{~bw*cx>fx!3EO*2lNwDH}1c#>FA4yXJRb@v!i;%?BsP) zIkcr&=0B}^s@YFd#rht43=UYIqt<(Mz>UJx7>6@5%eZW8azKG*PIEJYZwHWVIkbhp z%?yA3f{zbLo2+@4NH@rn6kC&SI*YvwT%2+(DA$&5U_9xB2D+KDpd@xB4e_HPWWmX4 zXBtdk>@S6OPJ)Y9fOalnWUq4CA?}#J944ooN#dc3hSoJ5KV7tQeBHEj?l&)M&H0~C zJEKL~IkJLwj$S(L9KJHNa|t7RmDA41O4>ORXlGs1@zX^+7Z5&>s#scU->w9Py--BD zvn!D9+$ABMMF~9v(glGAa9V*1!j4t`oqW;vAwspdN$^OcgmQro+-aVWi>XW%7X7nf z@YmI>7j*Dx|1q!2@iwG5tVk5}vnDAU+X&H7k+KmrkdH|=0a%s_D`!>~-gcTY$O}J* z@)|11DEc+cc7K}f)^^$MPqRIqW_z$*w#U6-48{+)+{okR zU*V2?(2GH-t;LH$&+K+@vy`AcG%&l!qC|A$IVt5H=my#~HD-1pMHY7NO3Wtr{eOwv zzZG((g>?yG?5^AI9y!$DqMieaNOu4zM5z12`gH*17LI=XDHF?2)s!XAMvRnfEgf9( zw;#E%d}nF1O1k9Hmd~lE^?QEVceB*```EJYsb$~uh3|@D;#O#t**(h1b&674mWH-f zf<7^J5w`W2_{X4s?Dmg6vNXt9-n@nFMFiJKZm%C#xCkkK*ktYDg;q>^S}JR`71jP)<8n-QS&QG5-O=u> zkw@~^!`Z7EIfTAujg{VZGW*F*=C9K^#92%Ab@EE%(3qI*=p@zwUtl)Sb?cjnZt8R>s^!io$pZBUS#l<-3kj>_RX9hy9X2`|`C;O( z>BcsuL+Zx!*NOb~1h3SUPSWVce3EAKTr=6LW@bu|=d&a?*9v1QgF&+%QL{95CpW2C zT;hl&`;O?_0&$Lvk(-XNhH`IX*^O_>8Y{N3+4pCGr^1+?wdZZ|yibo0U*`dzGQhXR z6Fk+rMV@YHQwFMeUG_Q(e+?CG^O>i%keN$`(%Bu`vR@2LIKZt!?y0w1SV88HbPK&% zc4v>XK{2XwGu%5=2^i~Ub0BlPe(!Ce&5B30b~4LTy(a(&pz313HzPzMDAZ$KC@*ALMR&B zw5s}X8o!?UkEs=&R!;mOgFv;FbhJ)f&%Q=F78B};&p4UCPN`MtfSy^_!#V5W^z~s_ zPLntEaOj3?SS~Cpv}A?OriISug=|=?(ZduEVOh| z-@~yRGW1;tlpXYbuoV(y)nx$vNfx5Dz9;zydU~nX!|j;gc&{ZM^rhiC3_+-w~&{crQDm- za;Nfg^D1{j<>vEpBR6I}T%z22UhI2#J}-9s1jXi5Y$|W@k`kLYk~n;0*7l>khBl6o z^{D`BBCp~^o_YEsKo}Q<>Acts#h%&jn=qdjTgWS(%OQ+x%Lb4;-%^ZTB=4K*9>lpE z^2kT2ZdTQCX7l;{wSjs`1$U%(fAVx_2{zn6d!#8F9 zm^ulFMMF^%1ESC6AZBwA6QrKl>icmrhj92$fG~O!jhM+HG`DB{Sjr*H1K}^XcnD{5 z2y=okB?yZ-1a4N#D0O=_62qjv^+pe2XnWR+V}A;S1wj}kG4x_KhcJ^v;Bq$i>;Dkw z=y(odQ6NUP17a!%v6O>Y%t6eN`tIv}BTnZKCjSfw6N0diLm2y+tQ(_0lXas>>IeTm zG~z-IVt4`&^8zvQGg&`oau8EFh;dSX@b#1*kUPxnX@MC289+?rAQp2F3pt2cQqQI! zPURrR{u~e|1Y$l1G5VscBO@=$IaKtj{#y_Ah<~{MT?OaXB`=San_MV zK)mDc0*G@th*^P{6^Q1GGY}Iwh!Z)8QBpsej>QpjhmIVb1jLd+jOQTca}aYmh$&J( zkS?{8Ifw;;7<(}wW^)k3N!F2Ol67PO5dWNlIGckw`Ims05s0N6#EBflcn)HO)X!}2 z_P1NGNj+rDEHpHQ)^!w@jcP|tv@qC^* z$Ll-(IE>|yde-M9((U$U*oNwLXOdJlja3oqGUdwW$^GKfk>c90a^Svsue=ngzPQt4)FM>Y)O`RhdfdV<$XON>)B zUd5X?3+Qd}S#SF&Kj1$f3hI@rn#tkJ=C5=4>wNyYkiRbGuS+}pjJ1%|(USY%UzyuP zn%pYMzwvXC`}Gc)2{RiTlJwD%m!zd3pV*X^G|gbA`>lUi1KyL%;oZhfeHz9%@eh0~ z^wsAdXsW7b@{;R$>N(Xjb;v3+Jc)x_dimTRr@W*YCt zxBwo?_{l@QE+V6}xJ_{4e)MHigVWTN2=n%qhIVN#t6bV}s~~oP_hP7B?hnuKvYi*W z{no^C)shXq`VFFrtX{MEHn&;3$Ns-%SLB&vSq)bQTpKoHC)r?riZRYCv_5mtpc?E{ z8)|d@#%1}U;Udv@P*-kjcxjmyqQNKJFk=1^%cpCzoOd)Q$Gr?cs@)+FxO>2}5d z4eL8vhBfW}zA0$GdA%y?az`(*?{m=$+WEQVo&W1Et=4%A#08vc?R6Q4Vi z)o0{JeT!dTgWjHQp*Nrd`BJN0SW)eV-?B!v?^<5%?n|$Benqt(ed`+4vYSy{j`lTA zu$ghG-95Xa-r4yz>iwp!Ng(-kf;Z z?<~V;809fxY_rd98#T-x^+;R=iG|NXa*#Pka;_wcwFVpy&y&go@1G3cGkQV~n9t)W z{WcyW_uD>;m75Rw=E8F}JlPV<%CT1!yVrnS-@fsfH>K^XBh#=ikbjgqNRw-N_>i-wvO$**~^xiL;@c8{m~8zm-Q3 z{Vv^(yJv-I+WVrz0qjctN>aogFJB_8bk*<2*H;<0WcmZpLH(9OFs;GGx`|M*g0W zJ53HjIOU(^x$vA1&xP<@49}(TYz9bBqsm9@v?G2M_R+Vysi%zVE$iYRor~N*6}L1b z9G(z~(N5$SHRd$HBp5-B)?BE#YhROn--+-8WN!UB$LQ{3Z*MAmk5Ei-nw&QA3t@Ab z?k*|Y6nNZB*nZ-JTxVl=%7SJGo^m!khxvt+VQm^84zP~%Obf?H^dUe36(7|X?L8Kr z>@!7wSqXhg!#kx-OAB`O<>N4h*MA%BQS(itfsNm-R0OX z24RLfOtXSewCC3)MR$Bax$lU6lP5FK>-YYC%YSwHuOobMi8J~1oV9D_wAaDMTu3~V zC#vrAq5J2;6Vd0|gJeAd%LzBNb8BK>HUFS$B{s_*^iu4f zNGN^DfT_JYl~)Ckx#)5-E}Sv+S97zj+mi2ZeKc5;v3r6uZ#ojk144MVd?=~D>Lxqa z6sEL8N^QmcV8)9Q9pS`QKBa$fy^@0I#!eb>cB&IH1(^oKl3>aMT7)J!&DaAie7j#) zBi3AVDW$wVJd<3rT6^aPE=%MrP|Hu7^Pl>1Of#utxa7`!-lIdSi1WVb$bAaYC2JS1 zT8v$iR5iR0+5@krsyq4)Lp)2~fkPI&utsv~=u~wVl%eX&-Rm>#A;akrl6Uh0%V>1? zIWr&!eb&eP<8g9O?>#9JTdSLO_vOE8*Xo%sM(*$p#a0_7=vr6~Zb2uu;yfb!upc)2 z$9DhNK{o2T%YWVKA3I6hdjKRG-)fArPeyQM)0MN>+x+#k6GlbkI#mDsEkR0v-KedfgtbKWUD#w zl8)E$=f#Iy^eP-RXdLW_LQ4rq{6so-S}-M?W=QNSSfbg3@deIRRdhnC(FrT(=mrv_ z&f^yN5;f?Mtp@og>3KjqOk@qbkWjc6ltm84mW>Ubb*|#aOfBKdsv(yW)$|?W-5|3r z5Y@t`lcH&b;>A!+TH$+dC|E4&JzPSX;A!{}2j-rDBzS!go^02)ZnGamMvYj@6$B&D zFbb#&&V9hwt|BYz3zc{ZXVJV39#_?A*#|k=s>LoRxsH_HNPm4Hz3NzYvfng>QN2~i znJBxrpZCn5mA{MVrWv%H=;(%s&K{g~1KA+D4tMlvBf1VxZ5Mn1K=kC8itbyNrcU?(R6gyVV|Y&f{V91S^!!*dQO zCX5AWlk~)B&#}Yz(4hvj*ev;V80_Ozw@}@K8nT;}J5ucPq+;0jr~l4_?loM!`~}dbgDORiJ&g2(1Bb4Yz~miBNFbx9OQ8lzO*sQJvH3s7xgh zNJr9*=xyCi`qWLi8QUpC9dL(CZ2-KZ;rCg%enDKZlM^iFdRR!o`%nv8mePmGwP6)8 z1a_i{x;k}`j@6eTo)-R0bKajNn1*$xBb3v2>*#)|r6*N2bh=dUQx91C#!Iv`PKUYc zm-_84Ya3~P;y71Jg&e?c9j~r*4!_(|OLx*U$ayWRgkd_aIqR|^S*x{QX@S#KfCJK> zP>YHjGjDp@j;|KWo3Pzl!g`-|I4$+H)>24K>nZj1)>5PED|M!|6q4C`>iR}&sj>By z`ew0IgAqjjV+6)Z?Bwx8Md{RY1O>&fxt;DO60)@XRyn5@`9oh}jhAw$BjK+-~$Ke-mYFSPU#lt!jq4d&|f{@;pFJiS9D zXsUz2s}okh=zW3%tuO&pah5*FT&jUi+0*#_5=A0ZJmDlutCwJmltl{-f2Nlb6i!Q6 zrfxq<*chc1>JM5W-I$>ph#8W81JP76b~?wPw6MU!a{kPYR*JokJi(rDD3SDFQ2xCj7gkli}Pd@xe$OXNcgp(2JEBw0)@ z$TAC}E%6-0wK*4-4DwvJ@j!uodkg4pZ^r4`0ZvOi@sId!|Fy?IcKgSmen&Ok`;QHGK9XhF9uMV`*P-FaSF=#*h>2tGTfZVz{7r6%%HW2A!G%F3aMmQvWn zx*ew*LS1^yDv47OX}(i}&K5Oh+O(zEwuD6;2*ofLf~EYpkDs4#3&`-U*(?!@!wtOd zCOC>rZr&4H;OzJ6AqEA+nC)t8l=-bbkZeT#fyr%j&F=let{z^8{3|A&U3lDscfla@ zpjZ-P`6{tWJuuJf(UFv1re$V}=;aYw5g&3JUWd|CSiRl6*FS#a74FHRz9Y3E$7C!A zF!YLOgT<@j5}8LhB*Z_D-v$z~EZq_9<59gMay+{3h$x+G*@L24k*s^+&CTW%($}q| zLKZtc=pFvC-9I+_2Lzg<%hS>BJf_P}$TdCdGz8W+1L%d&x8tvpOMUnttMJS*RhOXR@@#x9?Y5z3a0HS2*rSs(n^hbPO3eG5@E zb%qzh&_%?4?NnImqMknW*-t!6HdZ~K@W}1u6r~o@G%|v<+DNd%C&F`{-!*NcVftn@ zeW3MeKkcQ@rcFVRC?I6jxcpoGclY7e;i&9Qh#GQ71PnLwV_~=j^ui0PbvQkxehULB z4J}Tm0Jx!lEtFh%&Lz(glgUoh(nE0)V<^&n`05lxIS)fgyJg!G%?|6=S6<=HK|Pr) zbEzDJ0ocbd!blts7zrFC#fj&Ii@4M80=-1w#Ywp&F0q(%32_DV{0h6)tXpo#@2?3> z;^Ux$p2x!TXm}n8&%@z4#8cdX4JYFc>@^v8V4upk!-AghQ1+V)-RAWTmzZqr!A}R5 zVEUh4CzH9*ik!avlz-Pc%8TqK!g!q5ctCbdeNUA%4W|ms8F|#Ef$cv(E#WDKqUkvr zo=5bA(l3a6*!F0s=eqn(`+0Ml#Y9_0Y(g5kXPf@s ztv`GBqiOOSl)R*am)M7%>j*~6N6>H4B>r(v(xZim4I5EC8#b9uvq!?gpwG2~$H-GQ z&z5hGFZD3VpOe4)eH176y?jsq2HAFda1ZJGNxmPj{K)I7EPjk+Nahg_WUS;<5z?(G z!#quUF&k7+W2^wmnU%-T)uUNqRkd`?jh2o$h|$@^v|=%|Px~3&(SBy7EdG2U{CqzA z%xYZx`EX1ry1>$oy_?-yp6bMqzD4Lf-Kg=~FL^@O&*dd$)0)l_4u|g19{oQnjo+HY zdeU<^JTcYUH)d6Pj`7q0jr;HTq@IA13lIu!k2_M{k2Rq7!+y&jp9=Y=!*en`&*&M- zAqMog$<}h`!|%<9ZYK(uhjlhQFN7!Sf!Y+aK3JPrFMJ#I^svi_96hdCu{JHyCSlUJ z(gMvJv1Dsnn%YYG!KtFaWHgbIJ{Smg6;WJJ;%=&)_kETm)#Kh6-x+ zUK!`V(@YYr@KufYj_7nq{IU}H{u@0pU%u*&=u7%ZFuoFAN?%k2IuQ9ZyT&5CyBZc> z5wESsT$4HOc%5VG?-x*8Mc?w-Y`-c6$~YJ(zdr&qQ00is7?e;~JJ?*|)wX=-o9ROg z0DA%6(`~j3^K+5^ZZ+ZPV?XQuqE%+o;B8J~%{MiAtAl-^{|MJd2mGR;ze~`XSWmtD}sZ5)(xS;upPe<-8j8wj$bX4|wF4c`yA$}=d9rewU^0bqz zT^5f7W|^tc-Oaa`5duX*+G=Tjg?tGw$KMZ~YB>0vtrz|N5Xp1D#X0GFNM>a2=6gxm z27R^%_{J9UIFDmbk?j$m?I7RN$H;b{ewSitrMG*aBN&O?Fy;hvjiEx-)XZ#YRduyF zh27+xey@~GSere+$bI>ZB?q376m%B^S~FLmoQuI!!4!t(aH&BbWr7VzrWl>BrNS(uOuIWtT!NJ)X97BD8cNJXug|oae$5-eli1;mJB>Sj1A%VOu)H zmsrwo@K61t;1aAl9qtVBB7FT5;5hRpe^Gl5Wh$GWw?%dZT*WQWPzi&Fl_qopCED^M>)I1p zH{0L{#*uZ$5SWfvNHrZ&OAvFr&61^q3DEl)6LZgXAqm3HM`#T;BE25r6|poyd3?)cu)M0e>=E`jqQpfbSsqmGORaSe(?*ZPTh56PyCvc|QI!?CyV$WAzqMwjY z49r7^_r&+7q-H(a?Y{UvKVhw_o+Q>Ewn(h8*bxhr9y)IVM-JyrV2r|Em=e5Lhpb-i zbL}#QT~2s-bTadRcfv)W6aS8Gj`zY9^&8Teq($4P>*!& z_z6nzOBGxpZ}du5EuLcZG9L;9;7^PZ5cs)a>y_-O)r0%B1JPakTCKNHC8Q_Y@JcX8 z;M(Z{`~=+ev^cfq2!?km^EUT}=MCF+SxnlF{GV^2s)2M_&Jo}Ie&jw> zDyR%~=%Lrm{=9;@8mPMg3>g4XfbaE>-~;>`zL+gZbT|j&d|-r6>>O*^7<43W(fBaF z!8#r>#FL-SD*zFaC7Zr?MCW<>8He*<2qmYfTYWoe5QGo2)O}oEQ+z0x(J?;AG+GAM zQQid$FZxbLm>d;lAoXBxBYiP6`e~ zJUvSz>k!Au5{4)i03Ih?PNySWkFRPvheG6>6pFQi=stdQ$3m;ev(P#(E!PlFXlP!V z&^b)9)kgFl2_R|-W3edT@&z(JV+TL!tXkk}AC{Z?j4~93vrABp&kwBNf`)4sfz0*&>`MW;KN=Q^If3fi#^Ub4!3GdD0%vk9<&EC{tolck@Cg~DL+!&#c!v@~-AyI1 zRkE1YyhOC4XF-_7Q12q&@6mUtb%F1v^zG~1_eS1#W2z#Uk}!XX&~4JXN(+i2ReEW> z$9%jwybeyG44gJu>ZDI3%d7> z-p<<05@ro#Ax@FKu$D;-c{lF!xk`c@GZ=40eB`mcmqpMlXBTSf9KM5pi}$>K(Yjt1 zo4ZgmzdwAmG^t>J(kizaHgdwtHX8fg_|1Wt_lt9m-JJ9nTb2h=qIYZ9 z2#?>qf=BdAKsq6qCvVmP^=-V(-z-K5)%Cl%>{ThV%D0#$xdmRqSs$>h-_6ocm>G*R zjsDpT##sJ3n!k?ZufzFkGkaBiOV-z)O}p$ubv}C)jB|o<_~+C~D>TF_?MPvqE5JCG z=Q^6bs@##E1IEcL$sKQnapdRnzMRT)O=quyF)0{lvLtu96~<%%#`!$gx$IRi&I-oR zVAhultuW4JFkl%cv?JZ`CVoDfl;hc}xX0l^ejR%$zq$+F%Gd9jFU@da$!amwTFhUe zi^-oCojmRhyv>p~=MKrs%Fedj!^6*focNTQe?)A^<7IU>U&4dkw#oHlI)40Va3S7KSs^;YPmE&OPUYw>dQN zoH?R3O}f9-R!!#q#IE5MQ8M2gG3J}C%JD{NBxUHa{a8`>aG z8k#uI`bM1+lDh=$#Ko?|&4YseAQ3&I-lXyIgXqq$LKC{oJgw!3-HB_Njga(cDn@WaQ3S8X-Wm` z{NS|Sj-4@?ocaXAo%S?N`pea9D}R*Nj1~5}p_iv@tk+HFxhC`1li9049Dh00oS_hy zqUN0D*FgIEJjJIdoqu5ZmSdt&!=k~0!SuR?>=m%(d4X--k`3;XhvV0-UN>KWF>*^< zxe5;7lJrVgI$7EiAK~4N-eN-31mCLWsQ;V{pJV=WDtsREpVQ%U+<(r5&!Rdri}~(1 z+NtxO#bWw*P)8Rvr$wavs86ZUgp8R-T-;T4Dg6SVG=-Cg1ry9ieR z=E;>X7qj7YBfHa)b|>=Jg?yH#?N#Hf6IGKM{&|LweG?7+@a}9n&y(8gj^ASXDx{+W zuXD=Y+?{0~&$AyP6*_3izNGA9d3J*_x|_t4miuIydnSi7o40x@FS(SbF6MdXNc}S( zoC&Pnt%Je=#pgwt6RK$;2Qv1GY-~nfk@d4l>PKX!SN|^n#Fj689RIHXnHLbCPP~HW z$Sbn0lQgL$o+s@|gk(L(0eAe#0Pff;I9!&tX-VLQLz$`YoOy*`#X5GV##7{PRmuGp z@ju_}-c&UB2)DrB6ceALHi|ki$ZAFpSRK7=T=gug%RjnP21b@y8cYk1?b!d)7@l(K z78$5~+bcUFcy+}+hM^861h1X6UbkkAz@HP-_8o818rH+lZuhYlzG&0FS()l3U ztR>QV&^vsS_!-ZzS0tO%m_GChnnAO5@ejxNrCxZNcZnltIp+GWeHFc+*1XZ&k!ct# znTxoTkrqpB0R3Jr9VuAklUV1lnC_SFN56Qw(+YT#8t1G`!MQ65M>}nmuYIE?2BzH( zhK?F&%+7{x6QYI^Bf$4yy;9z*%ITW=!i!hT8YKxC#O|-Ys=w4%X0-!U?FXF!h<;+d zQ?i_UHH2w@734kbYfXLqVC??+)2)4_<|?pxq{nytB}lPvWtv#H1gZViQl_Dm+=q|) zYd%`_ptpY;`=e=vfz@fSxcESIYY$SFak1-QmrTiQi$E2wmXb+Zm`e=!{nGGw&{}^H z5M#87X7h8}R(~OoEW~z?LSXH736Lp?)UI7gtGKSK!=&T)@c?1C`%qf|FfX$J)3z`L z9;H#%{g1s?X>Z-e?BQ+6CXaNbUS^3xq^MiHuP&9ID10Ynxywrmi+-7dpVAYPiVjXQ zT?PrS4GjdC?KfHdjd9z!kn9`Pxc7<58=#!zKqK;T{TY>dnFg~a_BHx{F^ZbMkn|`0 zN6ezo7)S=}Eoy8?HrQLGQA=t^o__l2cm8IhAM3yRJV5?E$a+yyvo{UE2799;0#w^W zTnu~LyvJ^jByH;+OdDwDw5E2T(FqSizdzrtK&J#Tr&(N6RNNm`(DGSqB^{j808w*4 z{BUVjdOy029Ruf=#&`cPawlzA0=|G8*ylyfe!nqpFj?%86gGuo?g(T8CCWl)=?@KL zZ(ZIM-PGuX+_pirgz$&}6Yq+evF6M*W66uLSWc69k=cP{+bwKQ%@X{llb7H3iy&z8k}hxn;J}??1^&(TIgg8n?D=&*SLxWrnW2Epmo5OYt5n= z?o=r7D)OL?DVllI`{NCz-X}ac!(1rS!9q;0(<=uV);f{c>R74jCC`LJ_MJA?x;mhy z4Hiv@?X8&W{GBD)KamyElgk`5GWyg#e&Q9S$Ld-JX(*d+w52KvOv`%$6bH`;FdUEn z(Vuyp*E|Q76ChZa5g=Pce6gzV;3`*7d>r$nVx0=8$kD&v0}0|TbxVoKgjP72NOF%3 zDE0&rR1?(+qdS0!;yN|ywnP-y7$Z3R_N@)6=L-LO^t)< zln$-83Js!`TS{BiAkJgS3K5Q6*}h?o22seG0SHqkxRaLLX53`N(teXGT$PHgns@_t zQK}G^dPMpna0ty8HerLiQ*C&RA*}e7dsHv-D|f1{@~hpcTY~OkY@9#UohY)x>S|S5 zYyDlNO%pW(X>)74ANT_vnJrLg8O z?Y8D<58J`rlsj!~5UA3|!l+lSIV5E$FHTM?Saa+OQ;xs@QpiRkYYzMKL8Q_Kx!9TJ zM4p?P8p34wHD^HXT4Bxcee$?(YYq%ds8(%5#0PxalEL z7aJhbF_u-80Elzm#ltwphT30TM=}j!B~u9&u+%7{BNu}{HDN}&SesQw_AA$Zu#rJzP|*Ie#KWs2=7|_rL%-(9$%A=-dCctgzpC3IK~QP5|IQTv=%5K;s00jW{o7vkQOn? ziW&gzw4t{2e(9%BVd?SY+(EAqqfT`pgbcKCkk6RN+#QzOI2~@ zSgx&r+0RW|QM?|;RG7?vQqZA6w3W_w+6q!)rmZljnYLmp2Rf|%ENw+A2N}>-reao( zsW@mWq>aVaBM8BmD^kDx8deT~_?4sT$;2?FsIAQ4s3-iHLg=9_Q|#dE`}I^)Ir?9` zQX$q1GuK0!%EIUJWSILUYAVCe_|k#V!%1B!>8ZUN%|V*_eS6|2yi&dg_nWuBy*_AO znfCe`i(0GK@(4y;ycv0aSv-mj{FpCT#&xJX9@582KVk2!ddODOLnwHrB&7v=u#Wbb z)`H_CVWK{5&CDqbodb@aD=HmQR5~(61yv&`Dl8X8MI{&)K|Gf4ps4(P4~j}rE9vqy zEs+n@J6Dsl-a>7e5u%@8`}u*($>dGgmaHc~>D7w$kTn=Cfe=te);w2`wF$c*b1o2q zl)(tGK_VW01;Gdb$8Rx0m)&w#$ zIv9{ZH~6@i=*Ico|83kx-|Nb^#vIrE~G{X(pHkS{hIWdKnM^|*19*+;na=+1JmytDJQYT9b`vReF4^aWo z=v*R&&Qv%eb*TV6Ru8F%@FTz`{*5N?P)Zf^p5?&fQt8dhLk5$ z#ACh{7!U;XHU5FYK~m%EMe33s$_3eOH-wCZgn?j}pXyMRz4QiZm)(nA=VC$*MzQ1_ zMq*d=k((8|h*j*)l0w%;ka6u)zvLl6Z*7#l)WUns5pt~BK=a)ym6!Ys4avw&|CzC} zmbi*)?+xOjS*+PCFB{6!ZTR*rB?TjKBa;YaS5$LV zi!GU^Z&$cp&f#Ki@a8;^)rvn3l7~%N+Ayd;x0pbPw6!a`MMKLQ;-(3N zW%a+K_HKNzz|4Th;(Ztug^sCsc>=RgkGO45#%+5tZi|lRxvkF~G^A4RzjT)Rau$oc zEcD0Dixw2`b;sUA_Tv6Y)qSYpo{HU9zex|-KhX?w=`5Kf{!ea!`Rm$1eXE#<)eR|O z32fT%o&ai{J1w7$4%7!0W z&ybU7-&?(`6?sM)d96HhXaCGNuV@o=e5Q{!0^~Jn>Yb%~Cv9w$#-UH`?mwDtiIWecWVJJ?Q|MJHhVlkHlisP+? z;^h5eYf#kN?7A4q9dAo=zr7mCoxMRMH-Ez_BsaxSGAnIKZt>_Pt2Tgofk-ZG>@|`b zl2L3(mzc{a)|TY#*VRdG{)QsS&EEh5&E2qq`9txZ} zwr&a(u0Jmn_~)Gky`sY}Qe7-kQ28_mfH?LwVDuy*$NwsgL+5fi;?Y2)g`Uc}k=Zsj z%kIhFTR%M!&_+6iiPs39JXb7Xom#?RBJFgFe$y%XrBjpv1Jf~`qTJrdY+Ep?k@=#H z4W0o!1rwnn1sq5iwb{3Dfq|w0`^1?x6HlrGHY!DrxaA4m-;gR-W1G5z?w`Ky3p@S%k z8hg-~Y;uyR$Z3?f!Frc3psg~1aoi-aznCL|wlm51c~Co924yQVHyq&{`bg4oXX#c=27|2Ohe0!P=q}r60AmO;tt9ls6@5!f%*oibxN<-wHF#@bc_1La*}0yAdvGGcw_VfGhEba7f13C(A`D)s-V+t+6y~l3sL{jK0y|v%%=)KO`>D|e2xq_h{=p8SW zdJ0};JL_G{uV@;oh7W3pu3zj6ZlSNlt4KIkhyvtsk&skhOGX`|X8OX^t& zWxoo`Zk2=6^b(JRq+bNh;dgQ*vH8rIk6Q=qUQqzFoSKPFEF9L}Q?K+zy;1MkxYQB6 zN-!R%Nx?C$qDJw_7=%_ZU#VYcnXDyz62y33#iXMxAHNyaKoYQFeH!kv*i)7M#O~P5 z#tb@m<%E`I6;&++cZl8C&D=REOVxYLT?1faH`C-YO)iHJ6lSYAb~9}!5XsH9%}9mv zP%!mOBgXL1Tras$soG-Oq-AZn@rz7wjDps3rcNAGra^w#%K9PVp-Zf7ws>h(G+WM& zLPI0RMb)DH+FQjHRCK$oUhJj|rqz;I6PY`HWhA}&*gIEZ=?_W#P|XL|W<~?jI=ICF zl>lO`1$mYYDEsv59#EF2H3u{uPaz3@FKVin1bJipG~+@f-(7XE_lI|uHfQU=X3yzy zI}%dsU-yN`eI{~>x6l$hi7)}yDs(#6@E{QSPZ@mqR2Uci8ZPpIPgx-@p{T>0 z%@@h1;4g_ra@x!@%2FOz0_|NI( zY{@So4LV}YWsyu9c(!HOA)I@X>k!aVjMlUja(}CsTTLQ>nwc`vy^kb|tKyP`4+3yf-)TnEd%nRf}Fr8FI-h88K^ z%-Zttw){l8WkFXuEBLOcBTXloC9P9B{Fm`d(|hGiW9jh1T~SY(-feE1%5RZKG@WX! zXEVIrO=RHm!MfHB#Op(iEfQ;NUgZ9PaLe>FGF9+j-|p8A)ytuqTB_uf~KX zfC2DL@%)SYOlKw2M~oESe2DL_>X!!`)qo$;Q7=+95&}rtq zudBBV&|0U$=mDXZjSnq!{IA`yjjpo=e~ebtTaB_XT-^`eiB+jq-DTEQnj^&yAzoO6 z2$=8!HtA?)kM~t#3?IGt@0B%v@8ox!eiRcQP8Q&!01AGXsD26e{m4OKqENncp+wfi z001m2008?001-&~J&PRMSOSpFpfE|Z2$V3e=B$@t6S&mN=<(=4jl-!2+!6sGh(aG= zx}->WdDhBUl`x`KiG&6rtr)lz~p7{~ZVXw>aNQrKQXV|c`p16V%A z@#DSR^=0gaOqwAmU&lPmL{hgs&LAwvL#rXakUBM&$?X>%zqo20`X24h)*&WLkn2b@ z2*Zl^CedGHQ{>j!pet|At7Q`%L)nf+{V--~CVe_$g?^=>cq#gh7% zuV>A|4Jiu8nK{p>yTqt_ND&W_*xJ96Q8U+%HTv1F-4&sfieb0S2H`)NXA*)?4Vtw~ z8^IJqrA)GzV_OKSD1#stsV#RiC92s;cR+$w+di=0wXy{H6%4)5wEH)`sL(@wCt1z{-_`qKm`9R9lBjNfF~(WmyrkqG_#64ifZ>LeAvWUBAQ^m|y5T>0qs2O#?jRfAL;Z?M(0Ez=0T& z7*AkI7%Iqs)m%J&S9Cvv51zo?9zdE$J`OxS9K%AgH~<$vAR|_4DT}3cJs=jbK~@R^ zZI$6&{6Uwk)W$Xgz6?>hFGkF-Ub(n3eeKUv``l-g>PmGQ<3yKSwyXZF zN=(@1g|0&+Zhh=g{t`8)`4bp9->-X=grwAnZgMCuPy*N3Cjxa$zV5aC#V@WkEd0i4 z>io-!ypI?^dm&`s5-An=`#pvCdkgRPh1{7T)Q;ORnD^*piK#adX8 zg9Vg*4kA_QsH(l&^Df;jez7pz(PxEWnw(VE7o~&Rt#z%g z?&oz$-B(?zx}zS_gSt<8J9U3~8*Jxs4@=g@)r7O4^V9BvNv)g4mKYeE52V=i22m}j z>p|7NsNPSYkzDVWT_TfjB{T;>CNyVyKa80*%jxy{uEU4LJbn08pRq~Iqr8Fj%yhT@Ua4OcR;;pTY&!xcm29mWWgkR*83}3q-~|~ z!gs`+f=phI$2cmCjqLYEN#e9Wn-bK0MgTFuvLDy#-Xr6kg7%i zLs{+)1LQ%*v{3Yt#1y*ZnWhvyGL!P%Y#+prS*Ow|XsO|@%da88PkkuZfzgz@o$l=? zR@qj1rZ}aIQX`UR2D)m0XwbXYCH}!yvVN=ihoWLL+xOeJ)nkS}C^$L|2N4V+I}2I1 zO4csoaDpFuuFO!6x$ls3`$cm?u*$lfr&_TYLO@)sN?fc;TvW_>M2j(w+?y|3H5VCq zO+`jt``y0<8xr37+`r)sd8iccbqEa4SpkY0rBnfm=w78Jp-1w3`mTM4^u4d}&RANy zM41)<(JyD&$McNcwvwzJMI~`{|&XmlBR-uq_4)%#|UEvO+<% z0D+4in%e1T;&g=cL87!ZX%0mL^8FooiHPZ8L%T$fO zD!Z{ymRG78w#>`I&7NfKFR!aZbs{k!N)chD3f*+3u>5)K-rNofBLja3ktw3yZRv^B zhTvE*9shS{?|p^iso9Sx9&1F_=@ajlU5>xuh^j%3d%x2acRkVhhSc3CoF`+OIh`NL z=@8!8$o=lbD*K<)U`WQS$@@m{+h^!~FB1qBJOt81WT1?j`WD~dk(>Lkwoz-@?&lk# zkOw;1?$OtsrMo?a1meYyujnIz$pP1daBlf7T@;tL*ayncGz3F~w0VHvrOB$qd)Y5{ zpVh88e;F63t!x|TVcQ(TxVU%;43qOp%jeGgQacIx`H?y|q?`WjHouo6r*?WKCUG_vS;Ca_CMp5(&NA|=C-$t5tXbn;oQ5*zPevawzpx>CA<8Ym4&9V1=ujE(8>~_+`~w;BdH(hN);Aj z$u!a&ZHXCcWJ}0a4(aC+Z_<vK6cz`iBq?sQAV{FrNkXA_q48 zqaX36*9!Xx51(kM5BpScq!Do-v7*Vdo)t-4dabQsMR%0#zC_?dyZzT5itRlRWDGs- zNg|mHnk9P5aY?f>xlc!!c$h8s1=%8Z$Qbkzd~^by*Il6u6%kxDT4c58!sXs+@X!we9nPOgL{!A^dqtvSI=X?%hBE zyUo8>8fBbc{X5r*+!5Wb{7eOYOWbT&;s)S@%sWBqamv+>nnUIg^?>7#x!V8ZqW|Nj z{Ssu9bu%k=+1z&zDBDd*S%!Nic2ALKd!Z-LZ|au|3E!9G&btjW8I{dsq+xo-j3xm; zuzk>AY(~tBT;JN^Jwl z)If|p(!5ydN@==jUY2gzbi0eapp&b|SG;~7l4h_2IGHiir00GvIoQ?7YjkTkcz>LMyK?Cd^_%4A% z61v6D%Z6E?0Fwn|Ap;sQNU1j_ils5@`E8BPS981(|A8m-XvnzsvfCdrk@GC`9rAzeCPZ>MhnU-8_Yx3#VR~P+Opj z5xH!1v^^jII2Q*1m~uP-utD*vK^Laf0En%!Kzn8lTP5U>uASjgAyz$)&GqZ`sMc>t zm>GiJH3$W-;FUKPw#o5VqWtT4~kaY8Ma@H6>4eGBEYF@hkBMapWgV__ZLbH#`jya&baoGE%i(c zGZC7ZwzWF&ZV7kyr*fM3HupokX{w$6@GUs`->K%i6Duw!w9(h&z4C`ejU@2&7eurO_f;?4+Y;%Xi5&Hj;cwgg3gv=PUi3Gj z$Un6r!ZMPw=T2QZjbbvJg)J+%v#^4Ek1dV=@i&osZ;L7m!QE1dbus|ZVacEw7Ru;7{um^db7Dw4!nWY zECelVPSP+7C2zLVm?EA=YBHMlsRARXXH6Cq(d^Me`#~zgs-r zZ(xx0XrtfKyOaK6IsyIKrW49XBjxsTM)mJakUk7lb|x}+bNu) zaS6}6#ot=_CXO+1O|ec#SNI=WWNRP$vpVD|)+5H0`&q~@!u%}kSQ4D?V!sD}i&e{u zbK1T_59@TkFJYWH41v_4huULZ~f^jE}?WAUcm@77y-DB z-nmi8#jgfKVyTRX9;~DYO&xs4#pP98vFux;Rv`GY)E!`CAjk%;i+qa>rJp9;;ZzxZ z?eV|jablTuaucN2V3PnId!$!~*Q`cTj+LatP>nC?k0nWl@(2GVvfVGc46Bd%4P>hi zeM6q_vfv)V3^Tzh`=zMNcsPkG)=Xut0V^4hZan~x@v-Ix5O4*V$d3%MxlCAQEF7VQ ztDEBPZ?7?9<5Q@1@$aEDI>oyDcx5oTBid14Ebhc^2 z?SKps|JgZ&$h|XFm{~d{8PG)pg47N-{>`BLE`B4o!v$3r6K=iiThL+a(5Fm~MWJNf zw8fw!HJLSxbCn(2;_MChdJJ_;Dkl;_omhC(Z@=?|Dl~h`WSs!gA9hqvI-rH*WwLNRDLZ*8nYAK>b~`!c4i_D)^h2% z1|?uUmjZdLhXdUa?e-^p2Eo~hf3@?8b_@uWz)O|(;L2)!B`~!JoF9S1R)q8ny6wf4 z>cku_>l4}$JJZz%`=UCrM|~e;J?Z?z#-@Frh#%kAIh<_b&l?(>_mv(et?SK=EpopC zCpPUXy`c{KhuNX;UZ>x$OSb%nerX?@_jTQG3rVN;D)@QRzUmt&9@)>-U7~ie^d8lQ zo?J15MTifD?Fk-jr~h8`x`9d*$KE5`@P*NNkYG@aeiK+bfz|6e(RS%?7p(%NnP{gi zaB}kBL)?F^xDsG`jYXc3CGlu!V?<7*Dtw|{>2>_j^(ao%)ua!-SSzsPA`=LZah?~@ z7@}oRDS{SK;%1m{t5n=~r!kmu>B4u*wmZX_HO-vOUa#vQgjY$Pof2kh02|EsKW1&gfN7P~OVv`I@&6hDWFtD50PHw_ysi+4Y;bX~{ZQFqorr;z4tVp50K1Q%?a9=pS(2+Z3$N zi~_v6?3dx9$7UdymJ%GeXU(U@CZeDw_)#RW-6-1V7e?~+@?X@|IUG**2Nc_lWRXZ2 z$(%@~yGUNuNFp<77aOTaBgvjcK9butk`_>oX=)wGB4|c(IcSy4MskM-&254im48*%^ z?Gz<)^qbTKcXJ7>+6PGsnbwnvF_I+RPWSZty%(r0ufXxbJ7Ub2EF~3V>=Hq++yoOI z>|g0pNE~9l;9?Jm!A(WAe?q8bT}FULguEkqDG#jA$UJgu>7&_uuwhd>e|q=VKHO3F z;;7_FVJPJ=MR|)9v#fq1IlV@F6=aQyzAPrcmx9o4xRmzJ+|{vZnIINyfSL{Jln~kb zAlQV1{qKYMQ&9oKQ)dA|3$(P*Fn@PPy+ zN~G=A9Z-TKQld9p2`ejWK3SIKv2vo5qYpZ3C8Iq@AGDPAtf+XjK0A`twlP^ujEP|i zP7sHQ;h0Gpa|!fnyVGvY6GvF$smTtro4!EKd=;0bx=l zd-t`p(S_GBR@Od02y+C3sj@$08zLo@$nOXSCpwHR2wE5#r72Vk6hSATol;#$5%Qa5 z#Ny3d*->V3p36DxhslQIap*#B?2o$N-KTYZkCW?&b@%a_mH^gA@+gzGWU55) zH3$XU=tHb|p$p6qHJEoWUm5xE#Hw5}NaPr4tOoVAK}xI8i~$<4;rzy!r{rFnN&2Au;-45!Ooz9L z4GRH)91;0eDuXaK3PEKk@QOoa_05j$=P}n8u)0Xyu77AIk%TPRn^26%l7b>1Domht zuALd<&X$igBdHZ-;NUa^rO~B+!v=sl%j0EOQL0R&3t$5N`(f!l*>@|(jG6woAG08B zCqlI}UobuT$+G@0y5X>Q5)8y2x+z^*DyL7@u@3KFQNicA3n$aC%nWu3=bu056c?IKf8E-i zDUgBmM4u#G|athX}#`4O^A@0Zdn?M<2< zvru|e&3b|tZ}hbuUVF2iYHyaV*%9G30NWUze{)*@g-&BgAo2e|R~j9yF&HikPy;|~ z%Nk_d6;u9>%63d`bBJLxK=`4JdQ3IZlz(i`a=5n zl*S#-$aGBF*>RO)d2me6j^vPJvZE`~&lc7ZLLSoP zQhN3qHvU-!tppDld~c52k!p3vyO|{th0pvczJebsj*}Ub))l2^8#LDj+jwFim_&l| zF1CR=i7<}zzQ3N_W4EB(Uyrh@QK;l@;y#iId=OKXO!}|vu2E6Rb5d7%o-zpbRp`{O zRsACCaek0#B?8t_-USPTy%k%dxPz%txTs%Nj24{d2bs>ujo_?mq1c&HlLW44{2-G$ z5>C%G|NEkUp64m~bBfa>;Ac{+pX+{OETbmAzw95plJwDcK(^2047-~}YmpKZAY9ap9&%;FY@Q6C164$L! zC&oH7>O$OX)H&X(u1%*g;^T-k=G$~iJ4SBs&Zxk3YtyB;L!0KdG}|=8yDqmCX0B{j zqb{2gqnFK%MqS-}JsY*Kr9-2RZf!Q|2=6u5rlqZF)1fUMQHQoR+H_b2t{b9`Z|%^g zb2m2IbcXl0xHg@tCH~Tg%>}a&fzr-{ISI{LPIvolt@6)~0iBZf}#$ggN!qU1(E{{JoJWu{)~TDtFi7 z$R3P$0aKW>+41v8STi&6N_J1<57<6b5baauMk=}uhE-gh2S%!QW!qCzD*1=v(zv#HotE*l-z`4Ge3&^1}PWQTP!ZzDX}I8n0x z#EmevPv<-gchBe?E^oI-56EHJ-X7Au;r8~h?hUs$F8h1Zy*;YS!Y%Ew>F62v_V{$f z(n3(4nC47}y*)Y2%7c`rur7l=cjZPhFde<%z6XkZVmZ0HT+UMDgrz2QE5+PY?l@KnPrfR#X~nUt9c4NX*M_sG z7tVI2f4fl0cI z)zCIY-f!ra+%w7x*gOjh`iZ?d zDcW0+U4(&!g9i_O?Blhy1-#!Qpr5RUt;Pnyj@71iilk%D>AHx*|ZrM!R>9i84{`vYB$*3 zkP&ny*>z)lXjJET^{IM;cF=C(^usG3IDl~};&4x>OCX^m(FpOoRs*h6J5K&>(5KPt zw)8Y-I)nIMl#^}g!mjdWXkC;anj_^iJS1BoFounCZqUs6=wWo zo7h24j7Fk0x+a#op_Qd@h|p|v1DTw5d%G~qao>`sr@42(hr$`ty*x57GaXdNiB)E1TsUgHEtvH zYS_4A*97P>JwZ1N9j~+@yfs@J${CAy9RTt5DUbLYQ{6aG`FI$GFBM-ztA*3eM&@|Y z^JT`3;P4nh|K(w)_HyznPBvR*`h(nI z6v(s<;)qOQkSdWwTI|vg2>h6EKM!pwxn1f;96>l;xCLc^KgF(qQwlKv+^*vNt#2cHZ5&QCJ57)ZaScg zW5=Znn)ujKLAq^bJf@>nVv6e(?ev6yMLj*~U(rub`B&)bw10)L&iGd->ui|dvD~yhinS5*Ogr-fMV`yQ(aXQx8SK8fDYYPL;No;CL4Utwx+TFxX zq&-cGp#qb8L1Y=E?19D*EfI;F90ndR`eng z5ezB9$V7S;FHa6u-VQ>U_IaKTaqZ=KQm1fup3v%&=c*!0^E_qiJnGU#F0Z`u&j~8( z1lE@LD3{eS7IJCbYJKLEC>f7OoDYT2q*w5WfzLz7<#_0zHxK!K@)(hG=0r~8prz6^ zkjgPTxIDI@Yw(yr*VyVM00d4746iAeH+G5_&;fXZe;4!&&>99E@x$iuwy_Q}PMX5Y zZcc_VAWm2=V@Gz(ZN?v7c$sf9_j9_i$6gL@@YsX4&tr;n2|OlYM;-~x$zzvJ0x^d{0z*(C(~2i#W;KHF_#ZaOZ1O+G zL~UEdVA3U&h#o#+TCiwoSbDTbb5pX3Kc+h;WFJl}&xqzr!t=O1aT1$iKcXCCE(eDh z1bo!xfTGdzjYzaK*kt77E2TCZqy-R)&B#+{c{f8k2E=jPnxZ9pC~Yz%Vm`42 zNGuGY79`*WoM$bPx*wrHF%+^>qS-AJU@F8p@(1#q=6XE$3Z*RhSE%7IuhRDm(Z1}T zBaZw{@bbZygAI4VXZn5^|BR`h`XmBi5!R~V+a!yIFY0HeV-|zywR}};-ocOuk85Is zf$~4f?uR2OWHZ_}^1Gw9&1%|Ku&vtm0oKAyU5KXV)DL2J1@B@Ch2(L@#^PEX=+Vuv z(M_4j+VyU%ndsfzfM)#`BemsXj>zMoW!489mD6Duz38wo6Cry$_sv{x+Ex;UA2Nq| zsYtVKCBZr(3AVTCXX_Oi)-i72!Zr;hr^x6|H;rVlUXNjr^4e2NkI-Y*(b=*(rE#5( zj`&yTY=zfXM`u6VgU*U>K?6?TptHvEu5u`X&NL8MilX=zSTBlB`eQz0+JaOg*bmEH z-|RQ=Lk;#Tw6mX$zLp#4O4}s}+`sk0Mz%z`ReE8QKu7Idh})>+LglR*7q;et(l_M7 zKNA-UJ8)1TK2iWPuco(7)|i+v5tDV!k$Tv@kG8;w`s<_drNnLQc9sJs*wWcy`?^y@_6aef7S47=x1ZuSddun~%MRiq}(%Y%VZf zMlCbe_#+K!!3H66e#kXj{?5AtMYBzDC&r?LZC5VP7(f7x-Qcc}xWqb5tByvd@bO_1 z2W`A_&|xb7DuOQ}kk262_{5Y#E}K@I?Mb};(Q-vuJojp-paokV$ph^Y{V-1h9E4>a zSK4Kz@x00tGf@1wQRDI=tG0Um1v9YLxr5s)i9nfS1LP$ zgcQ*hUZD{4U+J&6*gGSUu=}Gqkz?`kTUd7^(WsE>f7Lf7;f`wPYnMCq(2>$-jb}j< zGS(U#Sc4&)rr93#C45dQ2PYii?Cn*J+cgODMvHq%@m`HB1?eY06;>XA?5aVuPd^Ze zzi^Y*MgM~F_piV6rpD`M8n3kePd{oo%+;gvCL5--{GdOQ_a_5snY9gs5}znkP8B(E z;k;DrL{UfWEx%P^t^sZP88t%RK#oPXE)->A40DrLP3|h$zGM>FCJO4M?UE2{vdncn zX0o&yR=hP8oryTP3Td@fVpe9NZgzmnhH;teK@McIF0@-{nG~cIW%B}N2>Ik;f+IR? z{H2kGnb`&nJd>9b!q}LZbajs2=T~xbZG%z?U9pr^xGiyCY)@^E{*GC$hrA({w)oJz zIMKL!o0aJ+uxWb_4UO`(84wB^UDZKF)H!z9=wAgtbQ|Lf@78T(CXMIURCHQ{#d6v01b?l$YhBPbj4?ceoEDys z|D@B>T*9`9ueRCs5e7|Kk=bl_fWF@7Ueq$Asy-W1^dfiL>wtnNG`dF?VnQ_(DsZS# z&AR72Gu6GIG3_@-wcz^mJ$&r7-@jRTT3rClU*N(YddK>eultwGU*Pze4*mjtW&aNM z7x=hH46OI?7x?jFG}zd0&@Q5FZYZ!8h5(MNz9WzsxBtyV89HT0b6fk(4MkZ)vn|CM z`<>E-s3ERls)^nEglwF$&ykLgfNd>G;xp6d6ifo4xVgtOoUYx0m^2aAZ7Y2F4+2imq+kBlx~=e3%w|eiGef_C>H_V*w+K5-fX+r z-Z0do_bE-=#g%vQsu3x+ZR$%+?5Q~-^PJ`w^i+%jDT#gLlKR9P|H@KW`5&@5o*#|b zyswG97~nb3KD&RjWp@Al@4VT)9=(3NFTA)Q#NU@4-8@=Y2z>fI28V$ZsqcKRb$rN^*)LJi+MJx z(Nof**iK}USY6Vw-?W^5Xfpj>T&$Qf@U_(XKMCy=t-N`8!*TUV_l7g;?{{bPlY zlt#QIYZ_ZSpZ}2TclDcaJZot+>%ZUpOJu1&g?@>@!^K#otAyu}SNhZGAny6Rz5jsX zf1ztc%u~;BoLme1eTg37gO(gV*Ze|~&!7TP*Dr;xUy5D740Qcc>iT7{?-#27|5w+ByS4E+%m_>dq3vCMH0NPx~Trs-kOAB2T^H;fI|50c|aP|PG~2dk8?qi}Ey=5$lk0`fxs`0azT4q! zk1fx-;LIYe2xTRrG^i8}_k}k=nW646+<`#dL--i*cpR@F9*>}k@_1Cf$C%lX7r0xH z@UTo67Mv;xIB#GfDtXy^PXSLce2(rZtcJ?)O!}+>EQAV9T70fSt$ZOqgyJtvDX1e` zyHi+JSglY8LXkM+qR$FqLm@%|AV(gZ(cJ~55UdfK0UzSrhiN|S$Ucmi;ynZ#sZ`Cx z95)%h2X5kkiy}A?(9WXiv7e7$w%=SXHY8wSS8&T%AqY9DqF(H)lH;y$5@!s=-`he( z8z6kbBnOGX@DBI5&pr0K$1dgMnpZvU4IX#D9_AbSB7Z%oQyB)S4z>j91y_pYjIy(i zNf-YubE8~;xQhM>9z(bz;DYgVTKZ>C*DCUbcsD}(Nmp(GFlx%2f6fRjfH3FrygNFq zbYJr!8>)a>3#4w&g?2sQ$~;jcifB^a&RS~-jP4^lizggz#*nqJQFTmS)=<@?sxLo8^7Uy9 z5eBIBL-dtyLv)`F5m!|CAtDNGV~FexZNb9X><)I_8(;!u5ed>b*Vclx9TWp;6FkVV zrxj_)WtO4Hgi&x-1ZU1(E@|>=IY$@-kzi1MjepG{H_tMx^@VSEM5u)UluZmad)9Ld zk4Fr(B_Z~a|25g9%QHO3JnG7cLsY(%@fO7|zB+iRZ4eX|D;tCkBk;T3M&NN9fyXtK z8Iw%&mN5x$o=LEucqTDRiZO}38I#zXF^Rnylh~UviM<(<*qbp4Z{S}dlegW$!}kW? zrJf77!+4c?Y=0bOZIS2Cv#nVtar&)aZ&W*@HiIuC>|D!N}9JOiOeywQ% z=bkYA;d#3E_yF)(NYR3*qzy0az5VuZmiljH8nKTq2dgImavRh8I1?&Za4C8b-i<5>?O-3LNi3OD! z0^g|Ke2E7Syob({6koCEf#fV!exeXowAqn7T^pVZKog*L=+6@bt9DC^iacehqc+6- zxss_c4%2SiLgzvu{qrvtvLyr62oN~5(1e=g2{xrmlyLK-v8Ww9%IGLOiYO-*T6jDe zVE?tc*)?MuHbz!9roT-19@GZDpJpj28dq{{Q4@!fE!H2v$KM`MtysQ@LxjF0LcE2{ z%!!jcV2OkWqDR7S^lhO;C)2TH;3l2Vv#Z+)oS2v=J(t42E!08>s;4)K0t?lIeJGjEDo8#EQr-I=E3?9pJ9a;k@z2GsN=sTG8POZ z>#1WPjF`><`19p(z;8IRv|}!3H9>vcjmCcvawI%3`ohD24HXxOx^XRdJlGI8Hu6(A z3}w-p%+h;XWHUvevxy@TC4uhf0rkanvc0yVYEvAo-nBvL-a2V-*l$^wD$QFbRU3>i z4t3Sp{RFL@dp)Y-P>S`A_{OhW@2sC@d$l*Sz1o}EUhPe`SLnpB0ItD zu4Dh*z(Q-SI@|X_8(p~7W!>EQ?jF=%4}17 zmoxF5h<2W`QIz}~#(rVp3kMP3gC@RNXSa**Zx_W#-m$lY{%w&F&yy|sa?UP-cRb!lZ}xW ztGQbdnAcuPMrDhm37NxSpwPKv-~TKnOdk0b#(z3%2Ic$}ZM` zFq%TvV6s^Q!eJu~2nU+na&fB$WH1{LhOT8m+@!5A(;5(ll8H+XR84upJ!^fb1?do{ zwGTXpCaPYg^%BlPibdPm9^n5u zF0ewME2cm3(_u@Y|IL?imAcbp!)(VYA|$RS-qvfSzfeqn8pyDWOMV0Ax;2hkHb#@4+Etnf!nV{?G4?H6H=0SH3JK) z1{aig?k-eLD^DnZRY zSL_8DF|sNjsK^(PpkTZAi}v(-^v}>?7kBfvsTO@wc9F z@qH-U4)w?*?4^sh7*jA>irCY(XEhImCa>d~ zqu@eXcCqlaWtV}N+X%!=Um)rmfw;1>M=M0Cr^(b13LRQXSC8)8AJ5sM>PU~w)~)58 z8(?OsSDOq3>L$pl@3eb2kQp-u(opTi7n_CP6vQ`iN@07RN_io;*t_)+Y+x-NjzU| zEq+>w$J!E?m3U54Z58D_U8*`yWkLpPhTE{GHmr+PqwP+VkRDS?5`V zrE5gh%eUj05>K`z&MR@LE%D-Z60dA;ExxM6(`|{1N?dLx)|;=^khPonZf_^`cJ}55 z%$4S=eP3$iymAvcXWKrXR^oYL7v_7kti)q&iKwq&wk`22Cv4M;Y{KP>uPAY~Epb+f zi_OFHQ;=E1I}Gr11@aT0Kw|j00L~bV&L?(HQ?+<4G^qe z4Ir#%YXeSPTLTFGsq&p^K(Kl>;COojj$K;=RyS&ZVD)Oi5|K>vtTTTjlxY*mGCmgR z?2Xqrk<`04D7|un!xnHa+~6mY%QsMe{}ai152Awxlb&sYKaqhy(>M66+pAl7Te{&I zyS=zUyXKqiy1F%+Kl^T%n?JX9rL%O+e^UoC@Rx|0+aFdbwXDo{N6q> zN3uBygfO}|~CpH3cye|;PHUhEI7luW6LY%ExBGzt^?x!-}TyMc5k#kvgS<;^_=jM2hjJ8aek#G$@GEN%p1 zzAq4S8-bYV3q*Y*5Ld?g!NukAu8cetUFrowT)9f7jTbH~ZhGcPFU4vIfP!k^Ha&GF zryxPFEh)&-%hp(WW{l0lDS~{kmVODH2zwXCJ4Tf~Fu!_i#wBL&d|S3DhnN3`VTo;5 zTiVwAe{=yvx&FvDD=?I!Z*5PTp@~_+*u^Nat7(6pyYFOcW4FKPG$+zx`F5Gs#sLZX zC27_rFfqB={tW1Ywbxd{f{-^UumopQ6Yo(#Im3okEblB_^9(}@HEQ>IrrOw@&^ky^ z&=YB!utZz=VIOr@r(qFrGFL9KXM)N}{)wt}i5sv1;2^k^356o5Viltm+7Yh>@&9F) zUCpv5jyPafj0E3_PON2J>M{EloHdnkK5x_@g9$%~S+9m_bcE-Sako_@?rNFH)=nk6 z3{;XCe&{Qkb(FCUdm6?Z@8NWqtEZxKF`1cJ#{7hMmT>re&sZnNn#2nM>sk(W?K=_h z3M2XY67VPf!y5!ltg1c;n9DL4iW~tSy?zADMG(eZM!?71kJn7Vs~%2A0zNio1blSF z6EN3L^iROtOhI#<^xc?%=Z0Tz0>1QTZxC>Q1pI||0{+7FBj81&2rq%TYUR2};6olx zM*?0LF#?_+_5?i7l}P+THdaGy1~@Xkls%_-_b zUaLZHV>XslKC$*{MGn3f*P!$bnzb%5AMV$t^x<-WT6}FvpGDy~B`*XieW&o=zILVW zi-bp$wK<+Z4LYiWnAH}omPLj*4j_e{36ka!4oxAXlhE``-dm63IV3W9ZT1A#Z zN|#JTuW2!T>^jown#?6etCyndK&zJl(vemTI=f#%lU6U9KmW!$fD|51zI6fma1RZ_ zm42vWX?KvWF97#-1faVW`f2>0E~TgXDxGvGy{$)Sp$*LoE_c3enXg8W7IlE|>AcfM z<@2FM)05X3#Nccw_&v*{A}9pxYJmb3H;gGVx0Dr&5>GQZKsPoWWsK5(VF%9~>}NRv zwcatO4@ZE?SH2L2n-rq(@Hsg}G1A|Czo;C=E>x`d zX0|Aw&04@g*6|{iJn(=sov`9z8aRi?)Y7O*S@RjXKubcuC(BJZcN%i#(U-u4x%M1c z*KFUOY2O~5p3K@q=1%QVR@WYvp+kEtOS3)ay0+(dxAshRXb+h?wMSW9dt8PN?XfJ@ z9>y}3$1FGD-I1Q%%=6S8Tm=N}9@s9VrNsQJjz#n8u7d}-iHnW0%nl}bnvL&}E9(J9*SWi}_Hk|ACd}0%^4~A(@>92g zMR;xuD4iJh>0ZZy%}%fGR^VP8uzb1jk_)= zD5a6k_gi|9{ta;%@tu_dJ1i4%T*Kt7%RPATP6tcxsmZ-uXI%7C?>dNR2VIuUQ{2vA zIJ_<5`OMkiMFlCM9ZPn8rXauAB|N#+u~=qjJ{{2sE-t`RY*>CCWlfjV~1 z?npuR%hp)lHFihPn%(Y*1FDoTI! zPu+>Xu+z?nn=agy@r=6QXFDT!TDwIuY1$bH{qerGosq~LucyWiKR4m_t^4jB|8W>pg|x&5P(+dpCmGTFjl(J*)-YZxr);jGtp zBn#ngDqeQxcV2Sl_a2%Mr59Zwg$VvGb?5Iows!~y{w~_?C-m$18wr0s`1|szTdrk8 z-m>%goz34(UT$!@jkY^=hY7$jdIj5?VNe7C@|KuSU{J9YtS8#5mH^;c)KapYPq;ec z_TOvg_TQ79a(yV5o6OZVN4c}!2>)6s7gM@%Ku5}*MTLiQXPn)gmz>?b7v-jx&B)x( zlT+u(>G#{o)g`>T$%&Y!MNLk{>o7SHGb=wi-FF=(r~6*( zQuOzk}Dc4Vl(U$yfT>jM^;wx4u@(y>c8p^;!YsZR~H(>fM=wUbY5ry170+Q~^$ z<7}cgT?fuS5g2P%oZdN@o*?*Kb?`MRo&bG~nkUx^zzB`NA*OjcJ@k6b-%}CDH_kTX zzgD(p50ERXKu*Q zSHJjO%g|l*OqPuS9~*k6vG!4T*;pHUh&a+%+v}OmL5Y;uX`UVQ%&!`IA2M6Y5)k6A zUN=2cJDC}s9%7td;U6|5<*nNI5vOGi32=!NvM z+q^P5y=V*#xM)%qFgM$9)`1 z_uR)B#^ya4WW6^_VSevOQ8=(tUWsK2ze-y+#FXW|s%RzTKDF6Glgi?|i->omoY`E( zyzJee-8s0z?m+jf)6xgE@R;9ZzfX9N9=0H=@=0nz8xlTee=5i4JRVLn(@T-!>x|nd$V_TwMJER@${{Sz z&;)YT+2XSTX6HhkZDdoXI+-Z5#*MQW;9t_DblU8cSz|g-FnN~y$a4rzMOf38YQdSY zikPX3&P-i&W@kuf4hHHC6^p-JxdsCk@F!{oTXhi#%&ini z>usPOb}I$jYw-qZYpWTk1);@2ZLaAi8og;zLGyu>`bo)&;+(suwG#2_L0UUh6Qq-q#pX}odP#dawv&Kz9$PpXK!%dSjQV&G zWWmiT*ly03AaRq&Wd^0D8q`lQ`gf}|TQWZuZ7^>j%_f{Qa~p36 zHYdqGZIY~Uh9it!g12olh_jI=6T+!V)F2e0A3h*guxlA9vQ<7vOm}ag(5x--D~xJ( z&|VuH?DyIvp`0sBB3Br1OR&g*g`|{i7E$(kh*G*C>F&C*PWQcLQ99pEl!7E}ZWNoM zbfyp0H2QRP~=(<&54jnAiTJ|1US2isQ=r-K8p|xWC z3*(w_AR;-;Wv*ZdTEF;iaS&;91uLjncCwgP7V!qiT)}vC8tE@u*w>sZm`m_8DQ!jB z%3Q&Qt$ekhjWO>ErptI-$aSsOOYckf5wADpZo#H6n5$Jq8~UjhRL&PnnyASomRZm{ z%dCbk825{4zum5|74X%NncCdYsJ$Cd^9E}I4NVnp0JTd?{H9zt2<8sfgwWQkFs&EF zy#8h(?+!Mcv9d7UW&PjLCV_hHT;Ij({7*|vM#dQ@K)#olZWuC+8vI+gB#<%z;Qb2m zNp$d#Mh$r0O3{!vKEo+66G=dYSiDsS+K*@&)l&t!*zcv&jcq#?l>FKM%Yl;uLT#H=s> z{~GrgJUEI`nqMe{Sw8L2IlW*JleOC!EbH(N8J+#Qs7UGpc1RhTMbTZ9x>P_v?6<0s zpb~g<{VBUhh_0yc$#pG1eGM&N?bY%V9b10Vx4f^atmSGd8}(YP(Qt>hE0F@*>k9`) z!8{iN@PXOdA-fG@iZ+!S07r$HaZ%#6=-xYIp zbJcvumeb`8OLxWJMhLSFYKPFAPTXM#$WyoLg1T1YsrqW6%e-`%54jGkuY>MW%cXAR zFZ3#}(#Ofv)a}>Tp*#yc^0;=)b!!L5==ul$K_<&XDQ{#dv2EB%!}(yhFl3i_ZU?bda~-(r8|wSeqce#Vs-CDpa()UwMN z84X_zyOh1m2imT(YhmZIm%5d`&@6ktOW9N1%ARm#d-3k^Zsm_Q>t5+n_fj*<;cOqD z>33ajr^7CV4pR%wQj4xs_cpqc3%=xRv*cWVC1NL!#mFcUBG+scs8=@QKQo5pupbfJ4>#Pa^$ol z;O=#}HokhEMnm)cT!jl=8#3=JFNBWqAvc8URTA~{2$@W!<9#{oAN@zdb?8@<9ETnC zY%Foov1yVVJ)3qY*EDXL?VBvr$?wnV&%!t`Rf;g(~KIE$c7>jV4atJ)P>=7Q|2T%IWE^T^igAsR{qlB|QB zs8v1DmBV;Yh8&*VS1=fL;oq;@HgcwL<#eXp3yq=)4WrtUK-*GnHoKcB4c-m^`vn~J zK`pvaLE8Sw*lZ^JPXE>38#E+hwCr( zKSccwgmyaUvMthB_FmYTsdaAuklssNy!vL1z9tiv_Vv$V;k z-DmyEEkm=}>7Hr9azUMa%KFH9(=7uHyDX}GlmRFA9g?4I;P|PYQ;(YQti#Y#hTvyR zjywE5CEd-?8!^5XfI|+Vt#!J>&-kjl%mTd{;z~c+rS#)Hy5UMc)}{0#eU*N=OX&xC zl-AJf5mktNz!E>XIJ;jq+|z|J?3&!YohZXr{0;sqSbcp{#@+^H?CRMqQN~_3xVwxp z_85j7W$ao{85UQig&JMqJ#KXNcENA2hPcwN&Gd{{s_S^$8ncIIb5DQM9*(&sJ4)bY zk>2|2%%t)pp+=N#PN~tR5918)s7ux-n17MT3}_4vFC$%gmiJI)R`4*jeb@xCq3OS< z;a?<{PI@e2$2R_!h1Kb$zq=M{F(A#0#-3w~FgKU2n_^}3qN1~k4o7yyMD-<4_gC_i zFR9~$zT}DiO0N2nM9<7h9_z29#nq;@%gvHU`YX9id{riRcK|s=r|1~@hAfA5>e4v? zY;dGNyUAWgKnGdOn+=Z?od3c#_&I4yo{32FYvV`(Y1eS1fZV-f-mF`9m@j~|YP&;S zm#5p2f`(T^!{xyu(6}Q7#H zm^(Brxrqa7aVEsiMtw~=XH1ipl~(xI%+Qc}f2I_SEn7rA3sKpTMz?I$4x_~R`;y%H z)drr0NJ9u}Sl*{te39DeF#Y~6iqNw?@Z?HA)1@>Ek{kuDA8l9qi7urd>#OvmT}nUP zSLuhkl-}1@>HE5rMp^Hp-)=#moz2{|!`Ps#_fdMXOWiyAD!r{s>Hbvujn(Fich--$ z>Cqdj@{k0KgI{h(N!RoEF=b5}Wo=k5^|CMK)MJ*K%oc1X{Z0?U5i~;9c8;>CDUoYR z+bC_YMDS&Mdk3wdc_2AMzrJYL>s@-*()E3C=it@`E6FCeMjA;MZtqo09~X}eI+;tV9SPCM~dhWeF2=c_RSev0#`5m8^E zf4BmDOQ}Snng2O&3FMNk^we9Cls4=0hud52wb{5=MRtH)e5=Qmzkhx9tt77PX-z!8 zhs2X@iN}<<+?Keg#M!pQD|eB2@vc^wXYUd!(vvQfaRA8>{WSOdoxPiTtVbSe%25}_xHIOC03jz%J7Z<0M>P!3iQR6Z zW~6twj^E;LKChltOln^0ZC}@Rk$C!!{qfO}WF-DbDG4eog>djCXA$Q>JYC2Hz+N`` zunYzG#`ux0Vg^XR{bO*TV3*S`pA6DJ2-1K5-!Koy^_#Sk%NMpo53o#`xWN)CleMx_ z#Z0DYZsBNSX5#jKOWUY4ji^#??@58s!p3pOb&mESdK!PEY^5_lC*>b26oPQTZoCtp z#)nHI#mo~jjjWZQA4q@gV+@H}$x<{cy@S&4lzSC4t$lIlJM|=~#C)#~v0f@Q@;+>N zL#%=XZ^h*68lH-$XjDr!3$RctN%ROOSf{OBpH}$B#;+qK{Q0%dH<*;2lMuTS90Z7$ zxU5f7PT{A|-${@MoQvYmM4Uk@ntZMNb`%mCAxP){G>bew72Vfqj-nTP^YjKFb`?>| z5K_z~7?8Z&+tZ~qK|h+*+O_m#m(n}>D&5hAp60c<(08r7np5NAppEp1KU{*r$UXL3Zz-mxo~_SxVe(9e3A(t zt%E&=nzX z|1u227nAUI>f_3b^vgTK9Lfij(&w>VcP$Cw$gT8muFC zG|H{;nw4XQcfZOGCZXnQZdB9oIW^^k6O!*3Bl29DItnSSAsL_Ywzf-YoV6d&X~k_Md> zV!%-ux3D)&**4rp;y;f0z(rq4cw4mX9vhV-?pN%79d^IU?$;sr3w03OF!VNJ%!r_z zpXK;hBz7lN^RJ9l?xh{VV0r&-5hb?SFQD5m>g5~I?Ux8AOo48{g353yn?R_V5P*o>6gXvbI@*2i zHzmN}_J%g_IC;Lmd9)%eny~-RTzj;d;lXuMm8lyba3~B4_Fsgu!3ZFkg7{}>cH_s- z=KA1Nl=(vXm-9|VsZ@S4;zAUZvh%EdyjC`4?hbpn;Zoh%OF*a_o=@*PkRCrH-H5oz z5H?Yq4s1tG5uV+NDmz&i(4iv#r*+%Xp?7a@5ZdRUzF-+{Yh82+ZQT$QC=l100A2id)j{67yCo`xFq;=DhZo0qxB7g$-c~t7o z`H&jvDCge)emeTSy*he-P~EORUx&_`Oro@SCZhrK<^4IB5b*6a1v=$`0O z{>KG=qraYW z71fBvY4yfvUqKnhI2X>+cFc4+8@n(WlduqfmqglMin<_yiK{utB~f%~Jw-oi_fM6K zqDzo}j-tK3F_hKjuP2h-&RG$dON#r|5T}A*JV2VT=hi_5A#N8Ev#ElxP$E~g1cPS( z`2Gra95vJ?I$zM-i%gi3%EEJ6&^2Wbv`^X7I{4q1vPTPsW!13_?8QG80fovHt zscYEfwMll}y6*&O=k9X>j+`xrlT9`xhH}JyEWNB8FO2gAEL@zhY2e~SHngDZ#=E0E zJcb|gMhELDSXy;l?f6pjIhFr|#q=A0L3=b=YnS9zbDfw~!fiduq9}M?=$@^~zmXZ=;#+dh*^@@m`QjOhr%b4tAu;0gVBDCt=s_ zfT=*{GXzDX6r9lq(!uAs3oqH94m@Am#9ebUZuiNBdHsGegSGljq(jtLX<{2JvcttZ z^3A0%{l6~<=@+r1G2Y zP&07O9EB)RaRep24f}0MN>2;c8No_6;RL;tC(2uWr_9RqF6`F3D`toEeCT_3dD3KG zt^xh@?($?y@2*VdddH8fcVz3QcUOSct#?-@UGFYSEFl+$pHHv8@=AC>VnsLOI^=%LtxLGtIQ~CsRS+dzU+|awtth2+&H?gi5W=ArSY*mH|a@q)oS!~6u znf9_fcuQ)rW?GZsdZdDVe2`VQ&tqbK&58N72@Q>u}4j<(6MZ8oxjca8}&!_l}0xgoBFoJEuxC=Nr&-jCCgX^v+1xUl?U`Q z?EXZ_*n4EPPR6wVlSI`asHGM7H@U1WGi))#jRtNy($N+6s^Xe9vUw>(?>x8)5UImU zqTM5c%!&a@$(ZyK0*p#T-T(_=BDVmvNUjOnN1((+25Q8C+L3{p+z1qIA8nwVo3x^w z>y*tNJ7oi%Lwp=PE7Ji1NwBHY^b*6)KR2drlOx13Q8mW%h z;=(Tfw4msfObIL|Wo_CQlQEPn1x439WnbkIW<4jsuJDjmoK!%LcHr38x1i|gRI)Au z>D{#=fza9aAnECZ_ksmQcirG@T-FVy)eKs`8|wRaMOV%@yF&1|@6xWY5ZHrZkikKB zJRky73^B%_BwBI*l8{_pL(WXSZsRxzorN|^nNVUjXtm8CYc0RnMsBjB5+H7XY627azpb4>2CttcJyL4N0URLO2ZgJ49|dN=KlVyKd#^PFuwhEkzV zWrw$LjEP=C6bZ!57-zRVQ;q0&usc}g(qEdr8j1^O{Jo?kx^As;@QO_Zfxznt*$8-^w4;1Fv!Y!&Rt7B32OxO2w+Lk0VnRIWjeRi$ zlit|d(jGZ)Bh#?Fy~WcCbf>h5X(kt-5rzsmi*AjZbav3pA;6(E8Swj{>Yt`oE&eiz zX`9=KQ)_u{OYanzknlS}esFg;U8sD!#vM z95XY#BmwFCx3pB@fUl^&Gr8FM6=*37&6|h-e@Q6Wt^3a=Lt) z3@m}t=6T`hM@ZtBkasuuF2vR1-xsd#2FtsHJq&P0m2SJ}x4FFKD@<#wR^29$4wgZ6 zQ&0p}>g9>3_<><<_^fb&VFilJ_EOTf*cyf1#S~lgP&%_^KZEAQ3-TbV2I9x&%$Vm_ zC$bgz)yW7%fC^XNQX3X2=(cTs&TOHCtxntzU31Bje{vm1GvgvZ_>3VE`Lm!szWFUEP)^=x^+$?~$D=&4 z3~wszqt|%!%5oGZBkb|tug#(m3z?sq%b%+iGrMrn_B=}3$tY^iWAG7ps=%b9oep#~ z*(Z^t`i`Z_ZDo}1A9Qx%ve_qD`^hfM)h_Nc;xDTSqZ%$GZtcUM$PKK;&n={5fBYti zRlL_sllN|J6`7k5+RUqWM?#gItYZ?+{!xe9Ku6tY#HX=eF{_N}9Y5?=@ornT;N!q{ zwI!Y4V3xR420y8oh8|lx!d|j3K|nRb(I2=Cgx3K_a(Atct7f$XBwL*{hM!ioGp4Su znHde|7fs1Ln&T8{obc0WA17x>jclCI9a_eTO_`(?i54ohMX6CEpWR@{vaUH>}M;ke(OH_N6p03>TNB*kD;!ewPfDy@XV zs-{H`fS7hc{Wf#ca;E~USVzzSoam`>JruIRQ@ltS9RO7?DJ#U8>-g|~4R5CZIoHc~ zn-ADONZR$*$n`_|2JyBC(bti9QOsU7@gl!Pyx|7K`vcl>vuO|YbtH+sLt{35x<%Ya zn!dm+2qeJgw;K zWPynkghR_>fDc*^RF*;<_?!W%U@Pv>TGCPpwS^3trIOCjK zi@RUF*5dey2|JfUobFr;Bb4Y!Hr=dCF{UnReJNp%8)Az91(fq^>7Jnvhd2nD?OX+W4bzq@z*W1sGhnv(}tZaj5QiEE^`Vo<{I>)@TpH?s0-(w2Y zj%z#h$*Znbsun1pu!N*+=KlWv@k(GO>Gw8ubjLZTz{*kAh@?Q4`rEDP9N-%tmI0Gy zHK5GMMcF#f`aX8>K$sT$`5)Wt$KyHwI#<=#OX=*N`l^_}>-DPz88aj4saHRYH^bZS zDX7WV3+N0B8|M)nq0(~UBQb2ida1>n&aa#~onJX~I=^z}bbd9>>4M^o>5rS+5uId; zmDLF=5&z^SRzi7$&`Lf<9&~;n4D&IQ^-#KSE6T7VPOb1r(yVO$LAE;E9ejSLECZM> zZP9_VXSNNjZBTGqmV}{zhLMMc5uH*E!GTl*N~ZYRcCohuQ8<9|HDX|1(Eck3%)xXY z!UKp@)HWGMN0Bo{J8WQ@oX;(1QmqQeQnoDGDM>f&k55K`uj~#sX<*Iqi5|H{fpxHa zdo=9^``+L_^9-<^>=Ll#*g^B-h0(jCOK=#dyE|HwHQDWfT@A%55p70^5zR8jdq|3Z z7Nad$V!r4=J>H3mETCm*jsBG1b8jGIj-($ftHUFvyk9BB2XCs{VfjIlHtkQJJpj)j zFtp9BUU7q_24h&dR9TXtI#$4<$l}?y{7g?`HFzOnIm7e3I_^|+7SR#yqOOQx7~M{W zLX}rtGX%042V9DNudqMvDuOn+%WW?@?i$c)ErZhJu7TU5#Nn7h;KyYC$CUlpn7alt z?jkfpp1XAGqg_qm8sQjBoJB`5w1On&AW&Uw;WB>ZxQt&pF5_2@%lMV!GJa)SR^qZk z8vcl$Ll~j*j8=4vR%|j_hLH^khAxO;>?Dl{CM$HsQJJSN@hX$IQ60ujvbWNxk%M_L zxxJJzma^>Eo><(fH2s`(Xh}D2+*VtF$#ZgDCM#fq_YNQw;mfao67^A}mWIO~J zQ&>DO+VtBRWb!o660kHYqUWw!)EKQG%nCtrf{Qg9D{HKX{iI31Z5GH1`f>6ozYi#B z0gv-2Xt%W!zvaK6X`wJca1fn|fN3Tb?b)abO*mQl1Juh;M$NM6=X3ndtijpuu`bBP>iDt<1h*j)1CWz8j~{4;c1T$n4Oc4xgBC8e5RA^HSSYwJA7RNHhXd-jY4t|nRtNqz6rZJ|g?J}wg zcq+N9LtNO#T8gA0yP>`&GBA=*qEV+S*s%~97*>CDT7Ew@loi{fHd7vRW*R&^+Bg<~ zuN`A0Ti>wts7l+aWh!NBSN+YZs}*;%m5al%pVv$jAVW+ne?{^ZEee+wnL@x39Wm#G zZ07$YGe7#rb0|}s0E4Wcf*@u^NhR;0-v#`yirPpoquu8RxGC37``yEg_fiGL>6H(_ zfB?Z4NQC5C@V_4b=_ai`QK^pjXSCan{N4dH$?sCS z!<4B832D5ID@vxPR@RDP#jjUfG)j)j+Ujhw>X!~iHCj^U&&xP5ZZ8p0)tT81r;EAsjB*_L|70RvJ31Y|-a)DL|%xkCo)53$2wCXcC z(ck!HlrK0x;HW*9B5{`t%HA-(cV4htf~|O@W;5sI`%rHimRaxFonGk4jb|4wbxQ zsPv8*6^YduJ1t*%ryYRxzmfu5p=rRd2LEJxP3jMW_8$Boz)47%3wD5q5s?UySy9_Y zOu?0J7C0g6h)}CYX!Q{mqp+r1uLZ2rphj)f0&yVzkH|fZWb>bj?4j*N=N)ciiVb}v z2ur0>F)HwPK%$;u7zJ>`LQosXZr%3~e5X{6y3PLC!53-&^g&C6Zxl!5ZG*t0cWOQm z)ELQ2XmtefWx&ywPe~#=kQj(#RN2b5z*nBSAL7FB7NV*TmY9s{UZfui7qrs*d z(8nWpRs+5l)FEi6P&Eew8x3)=8oOUevU36h4~kJ7P!++HhCuQ42U(XKDL+UC>ypMH z-=)^i68yGeh$=H;DcWKf4%0$wgU$WOX*BdjTWGGy$SmZGEzCF{Y5OCE+*N;I)2%{>YpLT|v%nHqy#K&TQ@o@(%~nPpktuOd}Fj17Ck@ z#boD-W3VT?pNGl&m$Es!XT zHGr!F%mS-8Hz@_6_&N>XWsJj6KJA=xo%1Q2cES@%DJSzOSCn$ar=SGlx}}s;`ILnc zDGMc68$F?M%5&Q1v6L0%S@C%$mFJA|obh=q<&^TA@_D9|=dALa^?5AiqVinyc|aac zn95_lusL%Vzp`HL(f9NEe%`~_tCR~$xsXq}s+6lfg^}SqS(=r&A z(lTHVD^E*TETyHpk0?)Fkn0}uqe_`k%1l1xkWvo$l*g23Rw=Xjlw(Rc=2IS5o;jt= z6}j@Pg%=Avu-fdEA#TEAfag&*&)Uyp=!d%g^}oy6Qv5I9Gnv zm&b-GH%pgT*AoD`!wNq30A@Xa(*|Hpo#5*U4*)+Qq>cxm5fp$$13+L@%R1));B`yh zWe?z_2QZ<;x^I>SR{#zffY|{DVBQ13qgyq50H-_vViLmA9)QMO0G15EVGm%z1JI=^ zNKFsmv$BiK4>co5?*Z%*fQuf$k_T|q0IYcc%O1d*0XX6TT<`!0 z8;LCR%{uG>95VoO9!*C)fXfEpqz7=(1HdbaUU~q_9)PYyV@y4O6%XKw0l44+TrvR8 zM9)0pOP&PP$9?`8U|jLlJRpEN&@7}L^O;XsHD{Hb)Ky=M>wEaM;H$an0T7#$3C06B z?g5-O0GB<06CQxB=wVzvfV!TH>%&T%^&MUH0L~bIdEe2K9>BZ-IOPG%cmR(Gz+n&I zga>fe037iEPI&;jrigL%0A@XaCt!46>>_A7=QAHB>!Q!{q{^)+6HktgJJPW_t|&XH z=Y28Vu>{_I9b7YMd7o0^oNweg4`9szEcixV@BnmM8e`%CEO`LWC~?^XIPU>mHUKLg zz(o&00dE--58$u|P=~=T`*O1g&8t553GyEEd1f3l_*$;`+;b*27kw>tJsG!?R?8V* z%W)53)^US}aMeSYHwZ^Pgc%RvltEbY5LP{eCE6*sN!77TI}iEX7ii~MpXadEvf^vO z1A zSCk>WUgZ^?N3V6X?*c%9H|dS*zgD7zL&AI@-e zXbnVh?}dI|CLedCk?+cc%eTXRUG={b`&HlSzD?S%8UG76ZOYC1UwCfwYtH}LlVABM zBH~9!(&exEb<7W%iA@vz@w?30bo?$h(elg6fJJ4zIBqtb^dxbpLbJIjCLC%2OFMGU z+wyRKMLSZJn3152i_nEmP#J3`O!0F*l#5WViiiQQl`C|%ndP`M45i0y87s3~kRGyk ziw=iz*4qleCH57}9Se#)_1xQd@(o)63GVCz_?)MqNk&tW_uidbd@b?fSxV*1I`9`Fdj1OVC@tn6I} z8Hlv){p}DwR!l#XZ<u?!G< z?iM_&mCT_3YG4MWkTX>KTuW!hW&5I~SL13S2Nct%xZs;hVfsOu`3W-*lTF9Gb+||3 z6uB}p?#kA5)<5eRW!apvrE6w3HOycwuhIvVt5Z&dc{R4vW~x3HdRB&4EP>MasZxel zdV)~98ey2TMIv3Nq_Ex*dwtuRhpz$HapZ8is|RRo+nnv>&{rTWPI=5 zmviq&-21PFhBM(U+UNH3+k=}St-OOq{70pm6%x)8WMZa0e}q|<&fo{1&P6a&dMV)V z?%>xWB#Jvs#io(E8^pgk&?wy~3oz)Y$qCwJ<70@cM6;icQvYH!UHbpBe*W!PIOg{x zM%a_kc0qt!Jzi4mao{O5rrq6I!F+|RZx*s;BpJ*0a|f&xQ%@OWQ+_Oc`D&1Us=(f_ zEJHfOg>})2YJ&s{h%ks23Zg6>{E$2V2TmW)@!*rYYP4(M{D1infHGz~d+Ch#JKl%1{$DQ3FGP z8n|VLA`^sq;~2C@4V;>x2G3y*6}F+qYO24GM~!wRg&J)@^6F3{leqX=C`B4*5FLi7 zM|BOd|Ap_t&}5*|ZjQJ@3}Nygi-HKO(@BnMetxG$02m=-H;`nrt=nEjEW{YF@h?WR zYC8nL@nqY`HCI4+aKK<+C&H52hFF(dztC6>8n>Pk$D=dSV+C~#+ZqZgv2~y(NX8bJ>jK$>^?IcCOH%ze! zDU4R(T&%HF^mJO#?pz^#;Xt(l5|D~ys1@bjHlPZewn><#=X8nz@4kFuxl`iEb8W>H z3YOYNdDQS~^aICMib?BcrK5sBn!y(?DTPCU!ZQ2e=G>}72EJ8~N*rh$Ay$tJ&Ta@9 zJ3KN*kpOH%j|(I0{^v0g(o;KmRxLJg@6gUZH13>6anJ>LGSX|o6Nx37&CDuX(LF;0 z8#h_o*{4jw&88NFDG}Ttdk2zD&76VIVyr=H8xYun)gEFVS)NQ)tEkL4gB66Hew-rO z>hV?Z5{J&Y^QL4GHCX3V#CG2`+8GH%A_2Lm`EEf+_}^rp*}G9U@m&~9;(Q|AT%Slc zTZ^lcG)^9^HT>`#3E(nzz(SZbE3F8AC4;YyQVLH{LjNV&Sn?dt01WmRnIziZ0Yip7 zMyvVN4o!OeShf6Jbse+KyveOw`b{1hGn++TfEU$zih% z)dq63stt{@fy#DP8!ArOS;;9oN8S4n8%P#AyYd_RqBp--Y3?XBm15_M|65}arj)Hs z73BU3o5NG63v3KFgYB<1UoSLY&o*CA`B!)axhSd0{}!Y1ICw|EfA3|6nUc2mgnK;Z z9*?-kvpmoq^q>6TpK_`1w}O86vDKifuYC0Um+CLw!_nrcgaiLm?lI{e3As0T)oZeuMWA#sCy)C z3ciJrxXsmsC=23WD}dqKbP)44J@(daZJky3r^Mj9l?`+|+3&n@EhkOUu~6~{$*s-N z!4t0Sb0PnE!5RZ!R}Dpq1vrd zFm7!`6uK3RDfb;|J=|ZZ)NUo5LT&it$*@)O-tE<~W^D-{@qfyF9BKU+w0s;UuK4Zr zp0QNBZjTkgcBwhH-ws_>Dph$3;30B=_u>^y z6=(yh$pTwYp*1Hx@&!3yLyC2z0xo@y_%I>bkd_Rm4FY;ti@OqoTf0NpCvwDH$z4Wj zyX=dOo;;>M4>5T#7vVV$`IQgW#uoHrAGqYP$EC%Vw%7fb(1!nLvox)@`4KUKq*-!%a*L5}8GrINMC;rR;vkco zcIZM%K}9PLD!DCs^d1mm)$OanP>FkofTyEL_YMnaLa{s#*M_E1dA$IK&XA zvTl!_sX?zsfKSyRZ^Pmf!lKdVlVA~Aw-P^OwGYh+nh-cVr#ghLkvY{Y4?=^N2o(KPD)`hb>6l5yyCCeH!P} zW>M|Inw!u#b!P&z>ZFY%t>ilrbW9YEOSGG0Tqh15{FuaQ6_06vfCMMY7Ap8+(>Ud? zEF7%Huoa&Pb4OZroKM4Z3sr_*Kgp*GzVzPWi|=^lm6!fRfBtDwaY))e00G$dw;%j? zr3&XJ;|GB-OgpF*t~*#I>Lj%QZX$_=6R~M^n28VWE7q71{(tt~KgzD_s`I?}zE@SR z>ODzMQpqZ*O7eZzC8;D;Su&`tLRRCt*m3081D;u4YrF=>c&+gt9?3mp8I8xY+KJ1= z1VKb2O64Ger(4OGAR33IfExsuMCn$80d+@!NlcGPtJ4NV#!Uoqh=-VXKHt61eeb?k zPyP|op`Dc|u6y3O=bp3A-uvvc&p!L?GvCw?MlJwJ|uy^YCiF}7K4OMWg=#ujM@ z_11Rb_80)y8T>}n#xZK9H)@ADN9P*1>#AN;^O z0`#LmueKOfw`QwAJBfW+0|Jw{F>8Vp5_8!aa7g05Y^_8!se3bx0;TTGu8?Rabr11U zn>}N1m5n%!Jw_bUzs6qkNJca$jlDI+*juiVH0sj_^1g<=*VtQO-GhwOetYXmJ#K4l z(Bn|+Dn0IRO~T-enGwwpYlQ}?VZbe9>-d(Ki!i0vLgR60kguhUV}Qkcw~&o5W@9EEc*pFu)`Y@x0N~wvs>wFeR$XlkTQ4Tk zG16qLAmdoN5fRaXWb2i&?8qWV$Li_$;sOn>qh{V_>e?Mdd*|^`YZDAKrW*NTAsts8 z3z_=F8ln&+);EOR} zY|$32Yz(cuN6)!|RKKY;qYPEhfeC%m;wRLiA5^k2-B@aDVzHG{aza^fa=kSnrFTIF zRSuCZ(q+)aAJAdA`pL`*AhKyJ(AcuaGb0eRfk1U>zxz00!sAw=VG|jA7R`S!y>iy( zmkmr7{95I+2O@roU+9;bW7cTe@i9(|iW_82eDbHPp$|5XuR{~4FJ$#20OykW-Q$St zku=h~h`Y&jO0q^!W z3Z`QvTaN}P3>b3gThZG!V8ZZ5Wb}ZoHb&q_Fg9N5wc{)xm>GCY|6Zr*M5n)vqQ92t z(_bbA=OCeF_e{2UH^*ZflL{aeHec$db&+ zQoX$!L42heYb^$L*$ANH>4t?YQ;wKoEM0B1PA86~>yKquDPKxi3Ln^K2z&R7J(uEqvau`nWrQ&mupEeDy0Y(m+F5k8+-RSK#bir9tO|E%ArU? zmcFhA6?A{C1H@GXpobAY6MeALia)zrh~(h2D+>KA>zg1)XyujuJ3 z9r`IcguPK9AG%zJHt6mBbZ8m0LG}TXgqS)+7mu+VD0K)jYiUA`h_?Z-?SrC2R<`Jn z6}x=Xu; z7p~U%f*HM-2>~Cm3K86pl|(iJGgF3R8CT0TRGDKfeRbOigmH(XO}zI=C2)Sn{xcZt zKU)j?4<$7V@OV@9pB{r8AhCUDjhTVYXD}>u3711CelrE0n9_}Bj~kDEkiU=IuxMto z`R{wTDbG=Kx3tvS&olkz5hffoN5WV0w|VG+)^>q*I%(901qpYtC#JU)vlMm ztZ2U^5LxNV8cIm8A_?M>73p=r?Xe;ar(4tQG9hi1hzMj{ zVLD>I(X-YuA=TZ4WQ(DaQHYto2^$6zQvHaVkQzK?LLziwI$SEvg3k;)ypG@+Hz7F_ zgJ0NeZhs~-qXqpin@cedYQNFg^ zDokd$Fe~(wA32$l{e7odw%ew5OxnurvSmND+HUF$PCEq_<$hCaG|`FhcC(qk^EjPu zYl*{z@^voSoX@|P!8(s2eW6^zO+b0DJ z0FHen-ON(x)gVuKtmoJu5Y)4R6>c-D>=aukni#ml*d)H>eeMT`T9ClDJNZ6X{hJ>m zIE-cr+hRU>b?`nD+^sr@*%hQr z1Mbdj*k9@1&!GXSIZ}W@@ip=xg1P+$OQJ9W|Px9v6E!Tv^Vze~(mGebmCd)zh7Yer={uqQfo4NtJo|FzwK=R|A9doyjQ;XF4UR8Mhd zc_lxwX@3jI!$Ec17@0|@_%_{XrYBdj>Y9@?A_9LiTeV6IVL`YR3vo2gIxe{zl5 z%*UJa)%%IA1InuhWPd*Z%2@9huv?fU1`cIgX-7>rQ&L;ERv1sxJFtLTfFV*l;>LBc zWD2R}*Tu_~+FEIf*O_MaXWPQQEVQ#OAiEUvT{FicKPX!gsRQ}Y!EC!lso7jXE#}<- z5gs|oeq9WIP)$q1N}W!(yKLH)>u$PE;SAa5#Y18jA6U-qMdDDAU^gwid%B%^uAO>W z0m!*celXn{Hk9eU_Pq-1ZWeYC9ex(}fP@2BZD66+@nIMa?=M5y)#`<47Q_N6c*a;; zbetC6jG|WyZ&uD^1Rq}*GWSaI7=b|?>hQ4qJIu$&8W1ylW7|;77R^E;l@rPuGJ5DV zEt%4KyC7^!>quv|oeFi>9CGbc$tO42_?MK>2q+GH=aCqg4Bg0MR}xkk87+hkqr@(F z5=Iic{Iv=}aJmU}*=+T}P*$5o>(e)7-#&&GMB;BMO}1$-^YACjHbp-C{zJ)3mRdONm{J?wh}|1LqI_=9QwR zM4!IGew7MS<`QKKch9Dmy|km<>PsZuuP48_qtq&O9NsB+%g~j5+LVE%6;vq7F9=ra zqVg3vJMXTu=t;Xy$@Hat@m|Wwjp`f&6pthdG-6&tU!iN%;V4p5P8xIC#3p!9QP- z|LkEn+I$Xxo>>93JPo@f`9<@|vYRNA{8@L<8bF8zA3s`eegqdL4IP?w@e@9da>ycA zRM8K_!CWz1V6GRyTyVjOYuaRd;+g_^;j81<$oY)I=XR(XI$Xw@Xf0aG1=d;B=qr*6 zH~C?zyF7mW=syFs@FSOZCczy!4IF4Lt_vBbIvGDbNFWtgr0rg(jPlP7=@xXNZ&rQ4 zoLSYfb=*_jbrJkajwcpH*uC&@9|EpcoXn}UXIJCZCODB(53=L{{36!3O_CC3!$CJm z2OmVMmn+Ore%w5q)vF2X8@xQ7#R@q|Z1y83YShVT0$h%$TO$_*79v6%4l0W{YWumN zmX?Wl^10Y78g30aWaf4m*@}1wI-6To2UMcM3)(*5<#DU0HN1Q@ET4dctyq3q?$7;X z(n=f+oboXzzM8z@)dt8EWMU|JtyVhW93py{nKN0|)~EidJgjA6(2y=BG({VzK47(R z#Mc$CP!J!>QbB5TUo0X$j1-X`Xc!k#jUqK@wWww$iPv8Hr?>C|kE&8FhC-aa%;%18 zajJuU>Vm()0j;8674f~-sYtE{o~o7V|M1PcArg2`CK1NS^`3N!KA?I8Rw?TNklXE! zX1;PZ@2cfaUpgOgJ-B^Uc1J5b5=AG`?W6#Z_eLQu{3QJ=EAr=monFZwynahW(|$DG zNLCbe$ui%}&;Cf&ismL@F)g%*m8}nu`==)J7*F4N{m0*xEPEt=k1MFlOhIMo2(@2P zV0Ui9*b6fP*G@f}KaT<;S7(JIBQa(ZFjIuI@k&8EWWgzTa8ERmfCq6Hkvfvi&sT}muAPxI%A zfYdy_OiVyiRas}OsW0jF#hRUV3GbTn_t3kqepT0)2{Gu!-g*=bm~pp4cu+fz~5Qjs<|fC${f*rJFvuOA^BBCGeM@w6fSe zZdZHHY}bTI7$?I`{w$|qsMJ71)a#9QUX6P#dI&THX?R_)4Y!x>Ndi|I$ZGrN7iE?KaCL5G|HUzuYN(qJQ1T zOQpZuDg9*s(od91|4pa#$^NC8EDbm6ce!72Y z4JA=Yko;|@^y&VkHOz|AU+t8BrhnHn_uq9&pY31znNsPmbxONs za0%tlluEzWDSfVg-DgXs-B@WHd%l0^XG^6YH6x{!ey)G%bEVQh)G7UZ|I+76rQg>n z{X+lJ&y`9))+v3Vf9dB-rGL0n`o;dGG5EBp^Zrihi~UPqD3$(^PU)BWmwvHbx*`)K z8kinjprr?4JteRatsD)*uxH9let7Ht=1(CBnQ%DyyB+5sUtHQmGotx6KRhK_ioa=P zF5#c5xwwTzYtXC^QdMNADM7_48LNCm@{4<~+VKQkn^Hkj&zM!2U!UY?j-srwFr?zc zQ&~mJY(ExaEwzRG#@>X*|8!t?U0i!$-&#dr;Hma zu@>qe12Hi*eQBk^K?Y0#-3>6?Xc-oIY0=;yKkA}Ppi<$~t`xP%nc^_2P(DB9Yjf!; zI{3J_*?)^2@-w!gltVHzrmrq*l{sE%Omdv-Mq$zs>#Oz&IL?NPmzWpPI!u=r>yg%4jt=vm>MC>ULy7{XdRp)) z*u$KAaiE3X45@Td!9Td-!F=z*{F&#fFaqT`D5K|4z7x=ouCyp(px82tQK99xU&IY- zm(XpY=rj(71d+h9UI+<40q}A2q&A3#H9*75?(Wi~p>W{OyGus3U0M)VwHes_(5kR( zvy&P6XzY;8^NJL$9Tyl)YkkOmW^-1x5ogelabmNvWyMCE(eJU9$eZgUb7CvB6H*U#&Y;mHMg*PyJ*9%+Js zQL)%78WU5& z=l9|Al=1Q=n^ZNrVK}Jx+@=oG1>TjAZ~mgGEiZ3cA|?uP_1va!qPXe7!AyOBvREFwrKX7+*+5HJ{H z3lWBt#80I>>zjb7qIs}agUN1x^CO(+W#ZINW_G}PM6$Ko?V7=Eu(Tr;VNQO%BF(SZ z{VLw3pBJl^`y3Tnlj(M?x&<)BUelCAbn47=}`iYZ!s-c{gR0eZ9q}e zdzW2WANDM}MlQ4L8tGkjsk*T2I^B==PA=uW6PDE@RiALQ#U^*O?0V8aG^skWWZ5;M zWtSBECCe_mYAN;&8+G}CtS5(MS5HpQvMa=y9(ha4t|u?E>^d#pJ5}(WamxkknRCk- z@AgQWTSht(4@S`DwpO_1wHDcrRZsy;%0Ty`%sx=KXlP<~2Q^e}{vK;7No{*!OL2pss+b7p%J0m&%%%;8 z8)p><(2{#+73j{AbF+zdIaJ`rS#As}Rci--?9IMeZV&Q8x6aBV({ec*cDh{N4ZEu8 z_F09x>;Q*O%9h|xrM>Lx@T6AD?9c1euBNacQ$#p>y<-o zSmMk~^L!Z@eol(-W}^G|M9+797mUu~!-t!H(Dh*(n3-rE`|=-mecI{Xq1oho*Q-+h z9-37g&{8Mn{X1(B>rLGJcil}Eq*IL5J<)&Y{KqjS7C0JPFH=H#8eM1bV9~Z(83-tVA_+jg(i{S@B%-G-vKWvBblKm)mHQ=G$ z2$xzJI49!fABCp4%gVA&hAbN73MIHjo!T!EzuP=tz2H;Ef;*$Nv4T-N`39k*< zSM9~T6@AQ5csTLO4e%rO;;8*ywAaVOYwHC2#(>7COvc;jdfZ|ui&;f(=)CcLp9 z&)b^6vflYCC3* z{6nmTgx|K=bc6|`Fk%iAv#IQ}T}I5Fnewg7rUdmV-P$mq*|clHz(gnGm8@zbN&%4D zJ3;-q%gm-1G@CwO%%-HD@wJy0re}Szh66zrzX&=ag-FZM(jGJ_A6tu9$T!LTCG3x5 z^_KP}Pm17)r%#{RWP76AjN+yiZ12fgmPqc5qx%5Sv#2nVIIV;R!es{e|yNhj5R+7oQ(rDKG|$xQ_$cvA#Ie8mY`l=__F;V@L~% zuqn@30-NNy>@ok3+zDix@{HByzf9K4@Cl%&K_)T#Vs2H+$L?bz6NYj{!i%vh@LO!r zhuw4Sh5iLQ6aacL0Q#aEugqy6KLeoh`#tMMtT=FDLA(OInaE;PY8D44f~Kp5iz{We zqK_w6Nx>S-LmTq`^DvkS?!}fg*WI`VrVvY{3SKbXr4teGvsVeFs7G%{lgBd_cn1Pvot0JjhPGAkl8JL4jAYOq-^%%Q6AMKd2F z0I=0%8&#$}3J3rwsgD@TBehF9X<_pb4 z>=otDY|o#^=f7}7uO1wi4FUDhu^-KFnT3##9^bJG(C-PHk~ngc|Jo|ps<0=JKPJ|L zOU&0q*Uc->ajs+V+$6ioS9v5~T^W*ccO1+gTeZIh_vNp^XG4Z5cV!UUYvaC57{Yq_ zg_k}gcEopT-@+6}ga?C-NRBJn>Eb!R$~Lduo17@5;6%3&K~P@4vQk2}<4&&48sa-z z2w3Ee2@ce)RbJJRa#gbXBTA@>9#hq0tNK-SnEe5iBW)HXK|YvZGBkl$N2)GsqKXOn zbXlYl*-c0_gET3^=L+z;tz$KK+Sv5bDl8T<#JVU0u*8SsO6Fn>99Eh=m<3jDjVw@z zWa>d7z8?XF-fvK7kfeM?FZkgo?CkG(zZ2`XygrF#q*`&&c`n}H{8J?J48Hde5Ag7$ z?R9*`U&<_AdM&@hJ<+X7$~8*KWnS-Ju84aXcZIpo?x1(Nrk^_Af@z++#Pm5H z;KOjl8+1FEkSzD!D0b$-k83~ZB!1~z)7F@%|A0387uOmcxX!eEJ1P5qP) z9=%nKG&!o#!?SR`lv5=$MDxq+AqT{2qQ)6tzTMu9(e6*w4R%|ae_nK>$*7d~{+sQF zmE#zV?&_nv9HSZa)YvRT(YiZffd_50b5=w11^#&ON_Tg4vZT~q9hnp(vKE)26@`p= zrXr~}+=mX*)f^_GPj=H(E#G-xmm9oEcy=OBCdQY=(COkz7yrhUobZ(163n;-SHdUM zE3O;@^Mh}RD~(ePFP1XASjzB13aKW%SYE2*N|u_`NncA%>9~@Wo91GBLE>D#vy00O zC3X@(Tg+Ya+fdj1HsCj7qeU5)W7l;qAGRJkdkD{Pc?r#84^*w@uiFtLp$M)8CEsxN zFy=8dSjx~~DMN#?k)Z(<$VQDVcR4P5{{^C$-`Nun*C!`pduv(7Oa3laRb#A>p;j zlxE++0vO8#V<91cUey&?f(009!cr+yk>3yHU}HR-Vf@D6&LnKW9y=fbdj`%FR4lN^ z4dOO0FjKU#M=D@%pp8BF)v!kg5#$B-Vqs66nP$_vuD;XZLS|da2x2L#l2k#4wBnT) z*!cQzA7%_(?B87Lp+jvrfZpJ@kuZ%sg)0cDY+O@^d1llivUHG^J@dGh zky6Ck^Eg*o1lH-|bP0gK>9Uy$2t|z6Jc+U*0jjvP##RZF)PSul%;aJ8vXmj$Qifbo zVIJ26F8=_{jqm2KhIV}^S?BSyzqHAsQCdD z_2w73se?NHQn@b<=DMmnEVFG>8K1=;i&fEO!T89^{HZ_ffFV9JASyZx#O9d6P$|Pu zX~R$v3>CouU7A0-QU|9H(ot$_Q~|)}SRwx4nmk5q*XxI4yFUXR0`_)f9*(6kvBp7K zo5Y-u8k4h}FFVxE-23D0hK>DbMAbSTux9+f?lhhC=584rRZRRmVoCk7#~@!=Eu(A4+=Rl z?0}a{NW^fkE5up#M)h9ESW_6Fpiy-u4w*ebmVV(H;*jC%DaltrrX@xjGE{XzmN;bG zDⅆ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%0A`s=>Ed3F;UL>kdvtfRpE$bYvu3D> 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

?Hv=T(@5u`HMA-cnAoJ=hFoeiO71-t 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%0DtgLv@DDSD{a9slh=a2 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 *)ou$**{tousVNyh(VSweykPfz)Dy*w3!$iffM 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

wa<(b;78-Qq-Aj!Q$gp!=tJAvqVwWG0RdcoDcU9 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⪚T# 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�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 0) { - console.warn("Box character controller `rotation` is not supported in PhysX and will be ignored"); - } - } else if (shape instanceof PhysXCapsuleColliderShape) { - desc = new this._physXPhysics._physX.PxCapsuleControllerDesc(); - desc.radius = shape._radius; - desc.height = shape._halfHeight * 2; - desc.climbingMode = 1; // constraint mode - - if (shape._rotation.lengthSquared() > 0) { - console.warn("Capsule character controller `rotation` is not supported in PhysX and will be ignored"); - } - if (shape._upAxis !== ColliderShapeUpAxis.Y) { - console.warn("Capsule character controller `upAxis` is not supported in PhysX and will be ignored"); - } - } else { - throw "unsupported shape type"; - } - - desc.setMaterial(shape._pxMaterial); - this._pxController = pxManager._getControllerManager().createController(desc); - desc.delete(); - - this._pxController.setUUID(shape._id); - - this._updateNativePosition(); - } - - /** - * @internal - */ - _destroyPXController(): void { - if (this._pxController) { - this._pxController.release(); - this._pxController = null; - } - } - - /** - * @internal - */ - _updateShapePosition(shapePosition: Vector3, worldScale: Vector3): void { - Vector3.multiply(shapePosition, worldScale, this._shapeScaledPosition); - this._updateNativePosition(); - } - - private _updateNativePosition(): void { - const worldPosition = this._worldPosition; - if (this._pxController && worldPosition) { - Vector3.add(worldPosition, this._shapeScaledPosition, PhysXCharacterController._tempVec); - this._pxController.setPosition(PhysXCharacterController._tempVec); - } - } -} diff --git a/packages/physics-physx/src/PhysXCollider.ts b/packages/physics-physx/src/PhysXCollider.ts deleted file mode 100644 index 579d0f757..000000000 --- a/packages/physics-physx/src/PhysXCollider.ts +++ /dev/null @@ -1,87 +0,0 @@ -import { ICollider } from "@galacean/engine-design"; -import { Quaternion, Vector3 } from "@galacean/engine"; -import { PhysXPhysics } from "./PhysXPhysics"; -import { PhysXColliderShape } from "./shape/PhysXColliderShape"; -import { PhysXPhysicsScene } from "./PhysXPhysicsScene"; - -/** - * Abstract class of physical collider. - */ -export abstract class PhysXCollider implements ICollider { - private static _tempTransform: { - translation: Vector3; - rotation: Quaternion; - } = { translation: null, rotation: null }; - - /** @internal */ - _scene: PhysXPhysicsScene = null; - /** @internal */ - _pxActor: any; - /** @internal */ - _shapes = new Array(); - - protected _physXPhysics: PhysXPhysics; - - constructor(physXPhysics: PhysXPhysics) { - this._physXPhysics = physXPhysics; - } - - /** - * {@inheritDoc ICollider.addShape } - */ - addShape(shape: PhysXColliderShape): void { - this._pxActor.attachShape(shape._pxShape); - this._shapes.push(shape); - this._scene?._addColliderShape(shape._id); - } - - /** - * {@inheritDoc ICollider.removeShape } - */ - removeShape(shape: PhysXColliderShape): void { - this._pxActor.detachShape(shape._pxShape, true); - const shapes = this._shapes; - shapes.splice(shapes.indexOf(shape), 1); - this._scene?._removeColliderShape(shape._id); - } - - /** - * {@inheritDoc ICollider.setWorldTransform } - */ - setWorldTransform(position: Vector3, rotation: Quaternion): void { - this._pxActor.setGlobalPose(this._transform(position, rotation), true); - } - - /** - * {@inheritDoc ICollider.getWorldTransform } - */ - getWorldTransform(outPosition: Vector3, outRotation: Quaternion): void { - const transform = this._pxActor.getGlobalPose(); - outPosition.set(transform.translation.x, transform.translation.y, transform.translation.z); - outRotation.set(transform.rotation.x, transform.rotation.y, transform.rotation.z, transform.rotation.w); - } - - /** - * {@inheritDoc ICollider.setCollisionLayer } - */ - setCollisionLayer(layer: number): void { - this._physXPhysics._physX.setGroup(this._pxActor, layer); - } - - /** - * {@inheritDoc ICollider.destroy } - */ - destroy(): void { - this._pxActor.release(); - } - - /** - * @internal - */ - _transform(pos: Vector3, rot: Quaternion): { translation: Vector3; rotation: Quaternion } { - const transform = PhysXCollider._tempTransform; - transform.translation = pos; - transform.rotation = rot.normalize(); - return transform; - } -} diff --git a/packages/physics-physx/src/PhysXDynamicCollider.ts b/packages/physics-physx/src/PhysXDynamicCollider.ts deleted file mode 100644 index d362bb026..000000000 --- a/packages/physics-physx/src/PhysXDynamicCollider.ts +++ /dev/null @@ -1,263 +0,0 @@ -import { IDynamicCollider } from "@galacean/engine-design"; -import { MathUtil, Quaternion, Vector3 } from "@galacean/engine"; -import { PhysXCollider } from "./PhysXCollider"; -import { PhysXPhysics } from "./PhysXPhysics"; - -/** - * The collision detection mode constants used for PhysXDynamicCollider.collisionDetectionMode. - * */ -export enum CollisionDetectionMode { - /** Continuous collision detection is off for this dynamic collider. */ - Discrete, - /** Continuous collision detection is on for colliding with static mesh geometry. */ - Continuous, - /** Continuous collision detection is on for colliding with static and dynamic geometry. */ - ContinuousDynamic, - /** Speculative continuous collision detection is on for static and dynamic geometries */ - ContinuousSpeculative -} - -/** - * A dynamic collider can act with self-defined movement or physical force - */ -export class PhysXDynamicCollider extends PhysXCollider implements IDynamicCollider { - private static _tempTranslation = new Vector3(); - private static _tempRotation = new Quaternion(); - - constructor(physXPhysics: PhysXPhysics, position: Vector3, rotation: Quaternion) { - super(physXPhysics); - const transform = this._transform(position, rotation); - this._pxActor = physXPhysics._pxPhysics.createRigidDynamic(transform); - } - - /** - * {@inheritDoc IDynamicCollider.setLinearDamping } - */ - setLinearDamping(value: number): void { - this._pxActor.setLinearDamping(value); - } - - /** - * {@inheritDoc IDynamicCollider.setAngularDamping } - */ - setAngularDamping(value: number): void { - this._pxActor.setAngularDamping(value); - } - - /** - * {@inheritDoc IDynamicCollider.getLinearVelocity } - */ - getLinearVelocity(out: Vector3): Vector3 { - const velocity = this._pxActor.getLinearVelocity(); - return out.set(velocity.x, velocity.y, velocity.z); - } - - /** - * {@inheritDoc IDynamicCollider.setLinearVelocity } - */ - setLinearVelocity(value: Vector3): void { - this._pxActor.setLinearVelocity(value, true); - } - - /** - * {@inheritDoc IDynamicCollider.getAngularVelocity } - */ - getAngularVelocity(out: Vector3): Vector3 { - const velocity = this._pxActor.getAngularVelocity(); - return out.set( - MathUtil.radianToDegree(velocity.x), - MathUtil.radianToDegree(velocity.y), - MathUtil.radianToDegree(velocity.z) - ); - } - - /** - * {@inheritDoc IDynamicCollider.setAngularVelocity } - */ - setAngularVelocity(value: Vector3): void { - PhysXDynamicCollider._tempTranslation.set( - MathUtil.degreeToRadian(value.x), - MathUtil.degreeToRadian(value.y), - MathUtil.degreeToRadian(value.z) - ); - this._pxActor.setAngularVelocity(PhysXDynamicCollider._tempTranslation, true); - } - - /** - * {@inheritDoc IDynamicCollider.setMass } - */ - setMass(value: number): void { - this._pxActor.setMass(value); - } - - /** - * {@inheritDoc IDynamicCollider.getCenterOfMass } - */ - getCenterOfMass(out: Vector3): Vector3 { - const { translation } = this._pxActor.getCMassLocalPose(); - return out.set(translation.x, translation.y, translation.z); - } - - /** - * {@inheritDoc IDynamicCollider.setCenterOfMass } - */ - setCenterOfMass(position: Vector3): void { - this._pxActor.setCMassLocalPose(position); - } - - /** - * {@inheritDoc IDynamicCollider.setInertiaTensor } - */ - setInertiaTensor(value: Vector3): void { - this._pxActor.setMassSpaceInertiaTensor(value); - } - - /** - * {@inheritDoc IDynamicCollider.getInertiaTensor } - */ - getInertiaTensor(out: Vector3): Vector3 { - const inertia = this._pxActor.getMassSpaceInertiaTensor(); - return out.set(inertia.x, inertia.y, inertia.z); - } - - /** - * {@inheritDoc IDynamicCollider.setMassAndUpdateInertia } - */ - setMassAndUpdateInertia(mass: number): void { - this._pxActor.setMassAndUpdateInertia(mass); - } - - /** - * {@inheritDoc IDynamicCollider.setMaxAngularVelocity } - */ - setMaxAngularVelocity(value: number): void { - this._pxActor.setMaxAngularVelocity(MathUtil.degreeToRadian(value)); - } - - /** - * {@inheritDoc IDynamicCollider.setMaxDepenetrationVelocity } - */ - setMaxDepenetrationVelocity(value: number): void { - this._pxActor.setMaxDepenetrationVelocity(value); - } - - /** - * {@inheritDoc IDynamicCollider.setSleepThreshold } - * @default 1e-5f * PxTolerancesScale::speed * PxTolerancesScale::speed - */ - setSleepThreshold(value: number): void { - this._pxActor.setSleepThreshold(value); - } - - /** - * {@inheritDoc IDynamicCollider.setSolverIterations } - */ - setSolverIterations(value: number): void { - this._pxActor.setSolverIterationCounts(value, 1); - } - - /** - * {@inheritDoc IDynamicCollider.setCollisionDetectionMode } - */ - setCollisionDetectionMode(value: number): void { - const physX = this._physXPhysics._physX; - - switch (value) { - case CollisionDetectionMode.Continuous: - this._pxActor.setRigidBodyFlag(physX.PxRigidBodyFlag.eENABLE_CCD, true); - break; - case CollisionDetectionMode.ContinuousDynamic: - this._pxActor.setRigidBodyFlag(physX.PxRigidBodyFlag.eENABLE_CCD, false); - this._pxActor.setRigidBodyFlag(physX.PxRigidBodyFlag.eENABLE_CCD_FRICTION, true); - break; - case CollisionDetectionMode.ContinuousSpeculative: - this._pxActor.setRigidBodyFlag(physX.PxRigidBodyFlag.eENABLE_CCD, false); - this._pxActor.setRigidBodyFlag(physX.PxRigidBodyFlag.eENABLE_SPECULATIVE_CCD, true); - break; - case CollisionDetectionMode.Discrete: - this._pxActor.setRigidBodyFlag(physX.PxRigidBodyFlag.eENABLE_CCD, false); - this._pxActor.setRigidBodyFlag(physX.PxRigidBodyFlag.eENABLE_CCD_FRICTION, false); - this._pxActor.setRigidBodyFlag(physX.PxRigidBodyFlag.eENABLE_SPECULATIVE_CCD, false); - break; - } - } - - /** - * {@inheritDoc IDynamicCollider.setUseGravity } - */ - setUseGravity(value: boolean): void { - this._pxActor.setActorFlag(this._physXPhysics._physX.PxActorFlag.eDISABLE_GRAVITY, !value); - } - - /** - * {@inheritDoc IDynamicCollider.setIsKinematic } - */ - setIsKinematic(value: boolean): void { - if (value) { - this._pxActor.setRigidBodyFlag(this._physXPhysics._physX.PxRigidBodyFlag.eKINEMATIC, true); - } else { - this._pxActor.setRigidBodyFlag(this._physXPhysics._physX.PxRigidBodyFlag.eKINEMATIC, false); - } - } - - /** - * {@inheritDoc IDynamicCollider.setConstraints } - */ - setConstraints(flags: number): void { - this._pxActor.setRigidDynamicLockFlags(flags); - } - - /** - * {@inheritDoc IDynamicCollider.addForce } - */ - addForce(force: Vector3) { - this._pxActor.addForce({ x: force.x, y: force.y, z: force.z }); - } - - /** - * {@inheritDoc IDynamicCollider.addTorque } - */ - addTorque(torque: Vector3) { - this._pxActor.addTorque({ x: torque.x, y: torque.y, z: torque.z }); - } - - /** - * {@inheritDoc IDynamicCollider.move } - */ - move(positionOrRotation: Vector3 | Quaternion, rotation?: Quaternion): void { - if (rotation) { - this._pxActor.setKinematicTarget(positionOrRotation, rotation); - return; - } - - const tempTranslation = PhysXDynamicCollider._tempTranslation; - const tempRotation = PhysXDynamicCollider._tempRotation; - this.getWorldTransform(tempTranslation, tempRotation); - if (positionOrRotation instanceof Vector3) { - this._pxActor.setKinematicTarget(positionOrRotation, tempRotation); - } else { - this._pxActor.setKinematicTarget(tempTranslation, positionOrRotation); - } - } - - /** - * {@inheritDoc IDynamicCollider.sleep } - */ - sleep(): void { - return this._pxActor.putToSleep(); - } - - /** - * {@inheritDoc IDynamicCollider.isSleeping } - */ - isSleeping(): boolean { - return this._pxActor.isSleeping(); - } - - /** - * {@inheritDoc IDynamicCollider.wakeUp } - */ - wakeUp(): void { - return this._pxActor.wakeUp(); - } -} diff --git a/packages/physics-physx/src/PhysXPhysics.ts b/packages/physics-physx/src/PhysXPhysics.ts deleted file mode 100644 index e5e11a25a..000000000 --- a/packages/physics-physx/src/PhysXPhysics.ts +++ /dev/null @@ -1,310 +0,0 @@ -import { Quaternion, Vector3 } from "@galacean/engine"; -import { - IBoxColliderShape, - ICapsuleColliderShape, - ICharacterController, - ICollision, - IDynamicCollider, - IFixedJoint, - IHingeJoint, - IPhysics, - IPhysicsManager, - IPhysicsMaterial, - IPhysicsScene, - IPlaneColliderShape, - ISphereColliderShape, - ISpringJoint, - IStaticCollider -} from "@galacean/engine-design"; -import { PhysXCharacterController } from "./PhysXCharacterController"; -import { PhysXCollider } from "./PhysXCollider"; -import { PhysXDynamicCollider } from "./PhysXDynamicCollider"; -import { PhysXPhysicsManager } from "./PhysXPhysicsManager"; -import { PhysXPhysicsMaterial } from "./PhysXPhysicsMaterial"; -import { PhysXPhysicsScene } from "./PhysXPhysicsScene"; -import { PhysXStaticCollider } from "./PhysXStaticCollider"; -import { PhysXRuntimeMode } from "./enum/PhysXRuntimeMode"; -import { PhysXFixedJoint } from "./joint/PhysXFixedJoint"; -import { PhysXHingeJoint } from "./joint/PhysXHingeJoint"; -import { PhysXSpringJoint } from "./joint/PhysXSpringJoint"; -import { PhysXBoxColliderShape } from "./shape/PhysXBoxColliderShape"; -import { PhysXCapsuleColliderShape } from "./shape/PhysXCapsuleColliderShape"; -import { PhysXPlaneColliderShape } from "./shape/PhysXPlaneColliderShape"; -import { PhysXSphereColliderShape } from "./shape/PhysXSphereColliderShape"; - -/** - * PhysX object creation. - */ - -export class PhysXPhysics implements IPhysics { - /** @internal PhysX wasm object */ - _physX: any; - /** @internal PhysX Foundation SDK singleton class */ - _pxFoundation: any; - /** @internal PhysX physics object */ - _pxPhysics: any; - - private _runTimeMode: PhysXRuntimeMode; - private _initializeState: InitializeState = InitializeState.Uninitialized; - private _initializePromise: Promise; - private _defaultErrorCallback: any; - private _allocator: any; - private _tolerancesScale: any; - private _wasmModeUrl: string; - private _downgradeModeUrl: string; - - /** - * Create a PhysXPhysics instance. - * @param runtimeMode - Runtime use WebAssembly mode or downgrade JavaScript mode, `Auto` prefers webAssembly mode if supported @see {@link PhysXRuntimeMode} - * @param runtimeUrls - Manually specify the `PhysXRuntimeMode.WebAssembly` mode and `PhysXRuntimeMode.JavaScript` mode URL - */ - constructor(runtimeMode: PhysXRuntimeMode = PhysXRuntimeMode.Auto, runtimeUrls?: PhysXRuntimeUrls) { - this._runTimeMode = runtimeMode; - this._wasmModeUrl = - runtimeUrls?.wasmModeUrl ?? - "https://mdn.alipayobjects.com/rms/afts/file/A*m04iQojeKRgAAAAASWAAAAgAehQnAQ/physx.release.js"; - this._downgradeModeUrl = - runtimeUrls?.javaScriptModeUrl ?? - "https://mdn.alipayobjects.com/rms/afts/file/A*13gEToqpJWcAAAAAgEAAAAgAehQnAQ/physx.release.downgrade.js"; - } - - /** - * Initialize PhysXPhysics. - * @param runtimeMode - Runtime mode - * @returns Promise object - */ - initialize(): Promise { - if (this._initializeState === InitializeState.Initialized) { - return Promise.resolve(); - } else if (this._initializeState === InitializeState.Initializing) { - return this._initializePromise; - } - - let runtimeMode = this._runTimeMode; - const scriptPromise = new Promise((resolve, reject) => { - const script = document.createElement("script"); - document.body.appendChild(script); - script.async = true; - script.onload = resolve; - script.onerror = reject; - if (runtimeMode == PhysXRuntimeMode.Auto) { - const supported = (() => { - try { - if (typeof WebAssembly === "object" && typeof WebAssembly.instantiate === "function") { - const wasmModule = new WebAssembly.Module(Uint8Array.of(0x0, 0x61, 0x73, 0x6d, 0x01, 0x00, 0x00, 0x00)); - if (wasmModule instanceof WebAssembly.Module) - return new WebAssembly.Instance(wasmModule) instanceof WebAssembly.Instance; - } - } catch (e) {} - return false; - })(); - if (supported) { - runtimeMode = PhysXRuntimeMode.WebAssembly; - } else { - runtimeMode = PhysXRuntimeMode.JavaScript; - } - } - - if (runtimeMode == PhysXRuntimeMode.JavaScript) { - script.src = this._downgradeModeUrl; - } else if (runtimeMode == PhysXRuntimeMode.WebAssembly) { - script.src = this._wasmModeUrl; - } - }); - - const initializePromise = new Promise((resolve, reject) => { - scriptPromise - .then( - () => - (window).PHYSX().then((PHYSX) => { - this._init(PHYSX); - this._initializeState = InitializeState.Initialized; - this._initializePromise = null; - console.log("PhysX loaded."); - resolve(); - }, reject), - reject - ) - .catch(reject); - }); - - this._initializePromise = initializePromise; - return initializePromise; - } - - /** - * Destroy PhysXPhysics. - */ - destroy(): void { - this._physX.PxCloseExtensions(); - this._pxPhysics.release(); - this._pxFoundation.release(); - this._defaultErrorCallback.delete(); - this._allocator.delete(); - this._tolerancesScale.delete(); - } - - /** - * {@inheritDoc IPhysics.createPhysicsManager } - */ - createPhysicsManager(): IPhysicsManager { - return new PhysXPhysicsManager(); - } - - /** - * {@inheritDoc IPhysics.createPhysicsScene } - */ - createPhysicsScene( - physicsManager: PhysXPhysicsManager, - onContactBegin?: (collision: ICollision) => void, - onContactEnd?: (collision: ICollision) => void, - onContactStay?: (collision: ICollision) => void, - onTriggerBegin?: (obj1: number, obj2: number) => void, - onTriggerEnd?: (obj1: number, obj2: number) => void, - onTriggerStay?: (obj1: number, obj2: number) => void - ): IPhysicsScene { - const scene = new PhysXPhysicsScene( - this, - physicsManager, - onContactBegin, - onContactEnd, - onContactStay, - onTriggerBegin, - onTriggerEnd, - onTriggerStay - ); - return scene; - } - - /** - * {@inheritDoc IPhysics.createStaticCollider } - */ - createStaticCollider(position: Vector3, rotation: Quaternion): IStaticCollider { - return new PhysXStaticCollider(this, position, rotation); - } - - /** - * {@inheritDoc IPhysics.createDynamicCollider } - */ - createDynamicCollider(position: Vector3, rotation: Quaternion): IDynamicCollider { - return new PhysXDynamicCollider(this, position, rotation); - } - - /** - * {@inheritDoc IPhysics.createCharacterController } - */ - createCharacterController(): ICharacterController { - return new PhysXCharacterController(this); - } - - /** - * {@inheritDoc IPhysics.createPhysicsMaterial } - */ - createPhysicsMaterial( - staticFriction: number, - dynamicFriction: number, - bounciness: number, - frictionCombine: number, - bounceCombine: number - ): IPhysicsMaterial { - return new PhysXPhysicsMaterial(this, staticFriction, dynamicFriction, bounciness, frictionCombine, bounceCombine); - } - - /** - * {@inheritDoc IPhysics.createBoxColliderShape } - */ - createBoxColliderShape(uniqueID: number, size: Vector3, material: PhysXPhysicsMaterial): IBoxColliderShape { - return new PhysXBoxColliderShape(this, uniqueID, size, material); - } - - /** - * {@inheritDoc IPhysics.createSphereColliderShape } - */ - createSphereColliderShape(uniqueID: number, radius: number, material: PhysXPhysicsMaterial): ISphereColliderShape { - return new PhysXSphereColliderShape(this, uniqueID, radius, material); - } - - /** - * {@inheritDoc IPhysics.createPlaneColliderShape } - */ - createPlaneColliderShape(uniqueID: number, material: PhysXPhysicsMaterial): IPlaneColliderShape { - return new PhysXPlaneColliderShape(this, uniqueID, material); - } - - /** - * {@inheritDoc IPhysics.createCapsuleColliderShape } - */ - createCapsuleColliderShape( - uniqueID: number, - radius: number, - height: number, - material: PhysXPhysicsMaterial - ): ICapsuleColliderShape { - return new PhysXCapsuleColliderShape(this, uniqueID, radius, height, material); - } - - /** - * {@inheritDoc IPhysics.createFixedJoint } - */ - createFixedJoint(collider: PhysXCollider): IFixedJoint { - return new PhysXFixedJoint(this, collider); - } - - /** - * {@inheritDoc IPhysics.createHingeJoint } - */ - createHingeJoint(collider: PhysXCollider): IHingeJoint { - return new PhysXHingeJoint(this, collider); - } - - /** - * {@inheritDoc IPhysics.createSpringJoint } - */ - createSpringJoint(collider: PhysXCollider): ISpringJoint { - return new PhysXSpringJoint(this, collider); - } - - /** - * {@inheritDoc IPhysics.getColliderLayerCollision } - */ - getColliderLayerCollision(layer1: number, layer2: number): boolean { - return this._physX.getGroupCollisionFlag(layer1, layer2); - } - - /** - * {@inheritDoc IPhysics.setColliderLayerCollision } - */ - setColliderLayerCollision(layer1: number, layer2: number, isCollide: boolean): void { - this._physX.setGroupCollisionFlag(layer1, layer2, isCollide); - } - - private _init(physX: any): void { - const version = physX.PX_PHYSICS_VERSION; - const defaultErrorCallback = new physX.PxDefaultErrorCallback(); - const allocator = new physX.PxDefaultAllocator(); - const pxFoundation = physX.PxCreateFoundation(version, allocator, defaultErrorCallback); - const tolerancesScale = new physX.PxTolerancesScale(); - const pxPhysics = physX.PxCreatePhysics(version, pxFoundation, tolerancesScale, false, null); - - physX.PxInitExtensions(pxPhysics, null); - this._physX = physX; - this._pxFoundation = pxFoundation; - this._pxPhysics = pxPhysics; - this._defaultErrorCallback = defaultErrorCallback; - this._allocator = allocator; - this._tolerancesScale = tolerancesScale; - } -} - -enum InitializeState { - Uninitialized, - Initializing, - Initialized -} - -interface PhysXRuntimeUrls { - /*** The URL of `PhysXRuntimeMode.WebAssembly` mode. */ - wasmModeUrl?: string; - /*** The URL of `PhysXRuntimeMode.JavaScript` mode. */ - javaScriptModeUrl?: string; -} diff --git a/packages/physics-physx/src/PhysXPhysicsManager.ts b/packages/physics-physx/src/PhysXPhysicsManager.ts deleted file mode 100644 index fe69faa38..000000000 --- a/packages/physics-physx/src/PhysXPhysicsManager.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { IPhysicsManager } from "@galacean/engine-design"; -import { TriggerEvent } from "./PhysXPhysicsScene"; - -export class PhysXPhysicsManager implements IPhysicsManager { - /** @internal */ - _eventMap: Record> = {}; -} diff --git a/packages/physics-physx/src/PhysXPhysicsMaterial.ts b/packages/physics-physx/src/PhysXPhysicsMaterial.ts deleted file mode 100644 index bd307ecac..000000000 --- a/packages/physics-physx/src/PhysXPhysicsMaterial.ts +++ /dev/null @@ -1,83 +0,0 @@ -import { IPhysicsMaterial } from "@galacean/engine-design"; -import { PhysXPhysics } from "./PhysXPhysics"; - -/** - * Physics material describes how to handle colliding objects (friction, bounciness). - */ -export class PhysXPhysicsMaterial implements IPhysicsMaterial { - /** @internal */ - _pxMaterial: any; - - protected _physXPhysics: PhysXPhysics; - - constructor( - physXPhysics: PhysXPhysics, - staticFriction: number, - dynamicFriction: number, - bounciness: number, - frictionCombine: CombineMode, - bounceCombine: CombineMode - ) { - this._physXPhysics = physXPhysics; - const pxMaterial = physXPhysics._pxPhysics.createMaterial(staticFriction, dynamicFriction, bounciness); - pxMaterial.setFrictionCombineMode(frictionCombine); - pxMaterial.setRestitutionCombineMode(bounceCombine); - this._pxMaterial = pxMaterial; - } - - /** - * {@inheritDoc IPhysicsMaterial.setBounciness } - */ - setBounciness(value: number) { - this._pxMaterial.setRestitution(value); - } - - /** - * {@inheritDoc IPhysicsMaterial.setDynamicFriction } - */ - setDynamicFriction(value: number) { - this._pxMaterial.setDynamicFriction(value); - } - - /** - * {@inheritDoc IPhysicsMaterial.setStaticFriction } - */ - setStaticFriction(value: number) { - this._pxMaterial.setStaticFriction(value); - } - - /** - * {@inheritDoc IPhysicsMaterial.setBounceCombine } - */ - setBounceCombine(value: CombineMode) { - this._pxMaterial.setRestitutionCombineMode(value); - } - - /** - * {@inheritDoc IPhysicsMaterial.setFrictionCombine } - */ - setFrictionCombine(value: CombineMode) { - this._pxMaterial.setFrictionCombineMode(value); - } - - /** - * {@inheritDoc IPhysicsMaterial.destroy } - */ - destroy(): void { - this._pxMaterial.release(); - } -} - -/** - * Describes how physics materials of the colliding objects are combined. - */ -enum CombineMode { - /** Averages the friction/bounce of the two colliding materials. */ - Average, - /** Uses the smaller friction/bounce of the two colliding materials. */ - Minimum, - /** Multiplies the friction/bounce of the two colliding materials. */ - Multiply, - /** Uses the larger friction/bounce of the two colliding materials. */ - Maximum -} diff --git a/packages/physics-physx/src/PhysXPhysicsScene.ts b/packages/physics-physx/src/PhysXPhysicsScene.ts deleted file mode 100644 index 293b84473..000000000 --- a/packages/physics-physx/src/PhysXPhysicsScene.ts +++ /dev/null @@ -1,570 +0,0 @@ -import { Ray, Vector3, DisorderedArray, Quaternion } from "@galacean/engine"; -import { ICollision, IPhysicsScene } from "@galacean/engine-design"; -import { PhysXCharacterController } from "./PhysXCharacterController"; -import { PhysXCollider } from "./PhysXCollider"; -import { PhysXPhysics } from "./PhysXPhysics"; -import { PhysXPhysicsManager } from "./PhysXPhysicsManager"; - -/** - * A manager is a collection of colliders and constraints which can interact. - */ -export class PhysXPhysicsScene implements IPhysicsScene { - /** @internal */ - _pxControllerManager: any = null; - - private static _tempPosition: Vector3 = new Vector3(); - private static _tempQuaternion: Quaternion = new Quaternion(); - private static _tempNormal: Vector3 = new Vector3(); - private static _tempPose: { translation: Vector3; rotation: Quaternion } = { - translation: new Vector3(), - rotation: new Quaternion() - }; - private static _tempShapeIDs: number[] = []; - - // Cached geometry objects for reuse - private _boxGeometry: any = null; - private _sphereGeometry: any = null; - private _capsuleGeometry: any = null; - - private _physXPhysics: PhysXPhysics; - private _physXManager: PhysXPhysicsManager; - private _pxRaycastHit: any; - private _pxFilterData: any; - - private _pxScene: any; - private _physXSimulationCallbackInstance: any; - - private readonly _onContactEnter?: (collision: ICollision) => void; - private readonly _onContactExit?: (collision: ICollision) => void; - private readonly _onContactStay?: (collision: ICollision) => void; - private readonly _onTriggerEnter?: (index1: number, index2: number) => void; - private readonly _onTriggerExit?: (index1: number, index2: number) => void; - private readonly _onTriggerStay?: (index1: number, index2: number) => void; - - private _currentEvents: DisorderedArray = new DisorderedArray(); - - private _eventPool: TriggerEvent[] = []; - - constructor( - physXPhysics: PhysXPhysics, - physicsManager: PhysXPhysicsManager, - onContactEnter?: (collision: ICollision) => void, - onContactExit?: (collision: ICollision) => void, - onContactStay?: (collision: ICollision) => void, - onTriggerEnter?: (obj1: number, obj2: number) => void, - onTriggerExit?: (obj1: number, obj2: number) => void, - onTriggerStay?: (obj1: number, obj2: number) => void - ) { - this._physXPhysics = physXPhysics; - this._physXManager = physicsManager; - - const physX = physXPhysics._physX; - - this._pxRaycastHit = new physX.PxRaycastHit(); - this._pxFilterData = new physX.PxQueryFilterData(); - this._pxFilterData.flags = new physX.PxQueryFlags(QueryFlag.STATIC | QueryFlag.DYNAMIC | QueryFlag.PRE_FILTER); - - this._onContactEnter = onContactEnter; - this._onContactExit = onContactExit; - this._onContactStay = onContactStay; - this._onTriggerEnter = onTriggerEnter; - this._onTriggerExit = onTriggerExit; - this._onTriggerStay = onTriggerStay; - - const triggerCallback = { - onContactBegin: (collision) => { - this._onContactEnter(collision); - }, - onContactEnd: (collision) => { - this._onContactExit(collision); - }, - onContactPersist: (collision) => { - this._onContactStay(collision); - }, - onTriggerBegin: (index1, index2) => { - const event = index1 < index2 ? this._getTrigger(index1, index2) : this._getTrigger(index2, index1); - event.state = TriggerEventState.Enter; - this._currentEvents.add(event); - }, - onTriggerEnd: (index1, index2) => { - let event: TriggerEvent; - if (index1 < index2) { - const subMap = this._physXManager._eventMap[index1]; - event = subMap[index2]; - subMap[index2] = undefined; - } else { - const subMap = this._physXManager._eventMap[index2]; - event = subMap[index1]; - subMap[index1] = undefined; - } - event.state = TriggerEventState.Exit; - } - }; - - const pxPhysics = physXPhysics._pxPhysics; - this._physXSimulationCallbackInstance = physX.PxSimulationEventCallback.implement(triggerCallback); - const sceneDesc = physX.getDefaultSceneDesc( - pxPhysics.getTolerancesScale(), - 0, - this._physXSimulationCallbackInstance - ); - this._pxScene = pxPhysics.createScene(sceneDesc); - sceneDesc.delete(); - } - - /** - * {@inheritDoc IPhysicsScene.setGravity } - */ - setGravity(value: Vector3) { - this._pxScene.setGravity(value); - } - - /** - * {@inheritDoc IPhysicsScene.addCollider } - */ - addCollider(collider: PhysXCollider): void { - collider._scene = this; - this._pxScene.addActor(collider._pxActor, null); - const shapes = collider._shapes; - for (let i = 0, n = shapes.length; i < n; i++) { - this._addColliderShape(shapes[i]._id); - } - } - - /** - * {@inheritDoc IPhysicsScene.removeCollider } - */ - removeCollider(collider: PhysXCollider): void { - collider._scene = null; - this._pxScene.removeActor(collider._pxActor, true); - const shapes = collider._shapes; - for (let i = 0, n = shapes.length; i < n; i++) { - this._removeColliderShape(shapes[i]._id); - } - } - - /** - * {@inheritDoc IPhysicsScene.addCharacterController } - */ - addCharacterController(characterController: PhysXCharacterController): void { - characterController._scene = this; - - // Physx have no API to remove/readd cct into scene. - if (!characterController._pxController) { - const shape = characterController._shape; - if (shape) { - const lastPXManager = characterController._pxManager; - if (lastPXManager !== this) { - lastPXManager && characterController._destroyPXController(); - characterController._createPXController(this, shape); - } - this._addColliderShape(shape._id); - } - } - characterController._pxManager = this; - } - - /** - * {@inheritDoc IPhysicsScene.removeCharacterController } - */ - removeCharacterController(characterController: PhysXCharacterController): void { - characterController._scene = null; - characterController._pxManager = null; - characterController._destroyPXController(); - const shape = characterController._shape; - shape && this._removeColliderShape(shape._id); - } - - /** - * {@inheritDoc IPhysicsScene.update } - */ - update(elapsedTime: number): void { - this._simulate(elapsedTime); - this._fetchResults(); - this._fireEvent(); - } - - /** - * {@inheritDoc IPhysicsScene.raycast } - */ - raycast( - ray: Ray, - distance: number, - onRaycast: (obj: number) => boolean, - hit?: (shapeUniqueID: number, distance: number, position: Vector3, normal: Vector3) => void - ): boolean { - const { _pxRaycastHit: pxHitResult } = this; - distance = Math.min(distance, 3.4e38); // float32 max value limit in physX raycast. - - const raycastCallback = { - preFilter: (filterData, index, actor) => { - if (onRaycast(index)) { - return 2; // eBLOCK - } else { - return 0; // eNONE - } - } - }; - - const pxRaycastCallback = this._physXPhysics._physX.PxQueryFilterCallback.implement(raycastCallback); - const result = this._pxScene.raycastSingle( - ray.origin, - ray.direction, - distance, - pxHitResult, - this._pxFilterData, - pxRaycastCallback - ); - - pxRaycastCallback.delete(); - - if (result && hit != undefined) { - const { _tempPosition: position, _tempNormal: normal } = PhysXPhysicsScene; - const { position: pxPosition, normal: pxNormal } = pxHitResult; - position.set(pxPosition.x, pxPosition.y, pxPosition.z); - normal.set(pxNormal.x, pxNormal.y, pxNormal.z); - - hit(pxHitResult.getShape().getUUID(), pxHitResult.distance, position, normal); - } - return result; - } - - /** - * {@inheritDoc IPhysicsScene.boxCast } - */ - boxCast( - center: Vector3, - orientation: Quaternion, - halfExtents: Vector3, - direction: Vector3, - distance: number, - onSweep: (obj: number) => boolean, - outHitResult?: (shapeUniqueID: number, distance: number, position: Vector3, normal: Vector3) => void - ): boolean { - if (!this._boxGeometry) { - this._boxGeometry = new this._physXPhysics._physX.PxBoxGeometry(halfExtents.x, halfExtents.y, halfExtents.z); - } else { - this._boxGeometry.halfExtents = halfExtents; - } - - const pose = PhysXPhysicsScene._tempPose; - pose.translation.copyFrom(center); - pose.rotation.copyFrom(orientation); - return this._sweepSingle(this._boxGeometry, pose, direction, distance, onSweep, outHitResult); - } - - /** - * {@inheritDoc IPhysicsScene.sphereCast } - */ - sphereCast( - center: Vector3, - radius: number, - direction: Vector3, - distance: number, - onSweep: (obj: number) => boolean, - outHitResult?: (shapeUniqueID: number, distance: number, position: Vector3, normal: Vector3) => void - ): boolean { - if (!this._sphereGeometry) { - this._sphereGeometry = new this._physXPhysics._physX.PxSphereGeometry(radius); - } else { - this._sphereGeometry.radius = radius; - } - - const tempQuat = PhysXPhysicsScene._tempQuaternion; - tempQuat.set(0, 0, 0, 1); // Identity quaternion - const pose = { translation: center, rotation: tempQuat }; - return this._sweepSingle(this._sphereGeometry, pose, direction, distance, onSweep, outHitResult); - } - - /** - * {@inheritDoc IPhysicsScene.capsuleCast } - */ - capsuleCast( - center: Vector3, - radius: number, - height: number, - orientation: Quaternion, - direction: Vector3, - distance: number, - onSweep: (obj: number) => boolean, - outHitResult?: (shapeUniqueID: number, distance: number, position: Vector3, normal: Vector3) => void - ): boolean { - if (!this._capsuleGeometry) { - this._capsuleGeometry = new this._physXPhysics._physX.PxCapsuleGeometry(radius, height * 0.5); - } else { - this._capsuleGeometry.radius = radius; - this._capsuleGeometry.halfHeight = height * 0.5; - } - - const pose = PhysXPhysicsScene._tempPose; - pose.translation.copyFrom(center); - pose.rotation.copyFrom(orientation); - return this._sweepSingle(this._capsuleGeometry, pose, direction, distance, onSweep, outHitResult); - } - - /** - * {@inheritDoc IPhysicsScene.overlapBoxAll } - */ - overlapBoxAll( - center: Vector3, - orientation: Quaternion, - halfExtents: Vector3, - onOverlap: (obj: number) => boolean - ): number[] { - if (!this._boxGeometry) { - this._boxGeometry = new this._physXPhysics._physX.PxBoxGeometry(halfExtents.x, halfExtents.y, halfExtents.z); - } else { - this._boxGeometry.halfExtents = halfExtents; - } - - const pose = PhysXPhysicsScene._tempPose; - pose.translation.copyFrom(center); - pose.rotation.copyFrom(orientation); - return this._overlapMultiple(this._boxGeometry, pose, onOverlap); - } - - /** - * {@inheritDoc IPhysicsScene.overlapSphereAll } - */ - overlapSphereAll(center: Vector3, radius: number, onOverlap: (obj: number) => boolean): number[] { - if (!this._sphereGeometry) { - this._sphereGeometry = new this._physXPhysics._physX.PxSphereGeometry(radius); - } else { - this._sphereGeometry.radius = radius; - } - - const tempQuat = PhysXPhysicsScene._tempQuaternion; - tempQuat.set(0, 0, 0, 1); - const pose = { translation: center, rotation: tempQuat }; - return this._overlapMultiple(this._sphereGeometry, pose, onOverlap); - } - - /** - * {@inheritDoc IPhysicsScene.overlapCapsuleAll } - */ - overlapCapsuleAll( - center: Vector3, - radius: number, - height: number, - orientation: Quaternion, - onOverlap: (obj: number) => boolean - ): number[] { - if (!this._capsuleGeometry) { - this._capsuleGeometry = new this._physXPhysics._physX.PxCapsuleGeometry(radius, height * 0.5); - } else { - this._capsuleGeometry.radius = radius; - this._capsuleGeometry.halfHeight = height * 0.5; - } - - const pose = PhysXPhysicsScene._tempPose; - pose.translation.copyFrom(center); - pose.rotation.copyFrom(orientation); - return this._overlapMultiple(this._capsuleGeometry, pose, onOverlap); - } - - /** - * {@inheritDoc IPhysicsScene.destroy } - */ - destroy(): void { - this._boxGeometry?.delete(); - this._sphereGeometry?.delete(); - this._capsuleGeometry?.delete(); - - this._physXSimulationCallbackInstance.delete(); - this._pxRaycastHit.delete(); - this._pxFilterData.flags.delete(); - this._pxFilterData.delete(); - // Need to release the controller manager before release the scene. - this._pxControllerManager?.release(); - this._pxScene.release(); - } - - /** - * @internal - */ - _getControllerManager(): any { - let pxControllerManager = this._pxControllerManager; - if (pxControllerManager === null) { - this._pxControllerManager = pxControllerManager = this._pxScene.createControllerManager(); - } - return pxControllerManager; - } - - /** - * @internal - */ - _addColliderShape(id: number) { - this._physXManager._eventMap[id] = Object.create(null); - } - - /** - * @internal - */ - _removeColliderShape(id: number) { - const { _eventPool: eventPool, _currentEvents: currentEvents } = this; - const { _eventMap: eventMap } = this._physXManager; - currentEvents.forEach((event, i) => { - if (event.index1 == id) { - currentEvents.deleteByIndex(i); - eventPool.push(event); - } else if (event.index2 == id) { - currentEvents.deleteByIndex(i); - eventPool.push(event); - // If the shape is big index, should clear from the small index shape subMap - eventMap[event.index1][id] = undefined; - } - }); - delete eventMap[id]; - } - - private _sweepSingle( - geometry: any, - pose: { translation: Vector3; rotation: Quaternion }, - direction: Vector3, - distance: number, - onSweep: (obj: number) => boolean, - outHitResult?: (shapeUniqueID: number, distance: number, position: Vector3, normal: Vector3) => void - ): boolean { - distance = Math.min(distance, 3.4e38); // float32 max value limit in physx sweep - - const sweepCallback = { - preFilter: (filterData, index, actor) => { - if (onSweep(index)) { - return 2; // eBLOCK - } else { - return 0; // eNONE - } - } - }; - - const pxSweepCallback = this._physXPhysics._physX.PxQueryFilterCallback.implement(sweepCallback); - const pxSweepHit = new this._physXPhysics._physX.PxSweepHit(); - const result = this._pxScene.sweepSingle( - geometry, - pose, - direction, - distance, - pxSweepHit, - this._pxFilterData, - pxSweepCallback - ); - - if (result && outHitResult != undefined) { - const { _tempPosition: position, _tempNormal: normal } = PhysXPhysicsScene; - const { position: pxPosition, normal: pxNormal } = pxSweepHit; - position.set(pxPosition.x, pxPosition.y, pxPosition.z); - normal.set(pxNormal.x, pxNormal.y, pxNormal.z); - outHitResult(pxSweepHit.getShape().getUUID(), pxSweepHit.distance, position, normal); - } - - pxSweepCallback.delete(); - pxSweepHit.delete(); - - return result; - } - - private _overlapMultiple( - geometry: any, - pose: { translation: Vector3; rotation: Quaternion }, - onOverlap: (obj: number) => boolean - ): number[] { - const overlapCallback = { - preFilter: (filterData, index, actor) => (onOverlap(index) ? 2 : 0) - }; - - const pxOverlapCallback = this._physXPhysics._physX.PxQueryFilterCallback.implement(overlapCallback); - const maxHits = 256; - const hits: any = (this._pxScene as any).overlapMultiple( - geometry, - pose, - maxHits, - this._pxFilterData, - pxOverlapCallback - ); - - const result = PhysXPhysicsScene._tempShapeIDs; - result.length = 0; - if (hits) { - // PhysX overlapMultiple returns a collection with size() method - for (let i = 0, n = hits.size(); i < n; i++) { - result.push(hits.get(i).getShape().getUUID()); - } - } - - pxOverlapCallback.delete(); - hits?.delete(); - return result; - } - - private _simulate(elapsedTime: number): void { - this._pxScene.simulate(elapsedTime, true); - } - - private _fetchResults(block: boolean = true): void { - this._pxScene.fetchResults(block); - } - - private _getTrigger(index1: number, index2: number): TriggerEvent { - let event: TriggerEvent; - if (this._eventPool.length) { - event = this._eventPool.pop(); - event.index1 = index1; - event.index2 = index2; - } else { - event = new TriggerEvent(index1, index2); - } - this._physXManager._eventMap[index1][index2] = event; - return event; - } - - private _fireEvent(): void { - const { _eventPool: eventPool, _currentEvents: currentEvents } = this; - currentEvents.forEach((event, i) => { - if (event.state == TriggerEventState.Enter) { - this._onTriggerEnter(event.index1, event.index2); - event.state = TriggerEventState.Stay; - } else if (event.state == TriggerEventState.Stay) { - this._onTriggerStay(event.index1, event.index2); - } else if (event.state == TriggerEventState.Exit) { - currentEvents.deleteByIndex(i); - this._onTriggerExit(event.index1, event.index2); - eventPool.push(event); - } - }); - } -} - -/** - * Filtering flags for scene queries. - */ -enum QueryFlag { - STATIC = 1 << 0, - DYNAMIC = 1 << 1, - PRE_FILTER = 1 << 2, - POST_FILTER = 1 << 3, - ANY_HIT = 1 << 4, - NO_BLOCK = 1 << 5 -} - -/** - * Physics state - */ -enum TriggerEventState { - Enter, - Stay, - Exit -} - -/** - * Trigger event to store interactive object ids and state. - */ -export class TriggerEvent { - state: TriggerEventState; - index1: number; - index2: number; - - constructor(index1: number, index2: number) { - this.index1 = index1; - this.index2 = index2; - } -} diff --git a/packages/physics-physx/src/PhysXStaticCollider.ts b/packages/physics-physx/src/PhysXStaticCollider.ts deleted file mode 100644 index c7f926bc5..000000000 --- a/packages/physics-physx/src/PhysXStaticCollider.ts +++ /dev/null @@ -1,15 +0,0 @@ -import { IStaticCollider } from "@galacean/engine-design"; -import { Quaternion, Vector3 } from "@galacean/engine"; -import { PhysXCollider } from "./PhysXCollider"; -import { PhysXPhysics } from "./PhysXPhysics"; - -/** - * A static collider component that will not move. - * @remarks Mostly used for object which always stays at the same place and never moves around. - */ -export class PhysXStaticCollider extends PhysXCollider implements IStaticCollider { - constructor(physXPhysics: PhysXPhysics, position: Vector3, rotation: Quaternion) { - super(physXPhysics); - this._pxActor = physXPhysics._pxPhysics.createRigidStatic(this._transform(position, rotation)); - } -} diff --git a/packages/physics-physx/src/enum/PhysXRuntimeMode.ts b/packages/physics-physx/src/enum/PhysXRuntimeMode.ts deleted file mode 100644 index 062c495aa..000000000 --- a/packages/physics-physx/src/enum/PhysXRuntimeMode.ts +++ /dev/null @@ -1,11 +0,0 @@ -/** - * PhysX runtime mode. - */ -export enum PhysXRuntimeMode { - /** Use webAssembly mode first, if WebAssembly mode is not supported, roll back to JavaScript mode. */ - Auto, - /** WebAssembly mode. */ - WebAssembly, - /** JavaScript mode. */ - JavaScript -} diff --git a/packages/physics-physx/src/index.ts b/packages/physics-physx/src/index.ts deleted file mode 100644 index aa3dd875c..000000000 --- a/packages/physics-physx/src/index.ts +++ /dev/null @@ -1,7 +0,0 @@ -export { PhysXPhysics } from "./PhysXPhysics"; -export { PhysXRuntimeMode } from "./enum/PhysXRuntimeMode"; - -//@ts-ignore -export const version = `__buildVersion`; - -console.log(`Galacean Engine Physics PhysX Version: ${version}`); diff --git a/packages/physics-physx/src/joint/PhysXFixedJoint.ts b/packages/physics-physx/src/joint/PhysXFixedJoint.ts deleted file mode 100644 index 6ae1100de..000000000 --- a/packages/physics-physx/src/joint/PhysXFixedJoint.ts +++ /dev/null @@ -1,22 +0,0 @@ -import { IFixedJoint } from "@galacean/engine-design"; -import { PhysXCollider } from "../PhysXCollider"; -import { PhysXPhysics } from "../PhysXPhysics"; -import { PhysXJoint } from "./PhysXJoint"; - -/** - * A fixed joint permits no relative movement between two colliders. ie the bodies are glued together. - */ -export class PhysXFixedJoint extends PhysXJoint implements IFixedJoint { - constructor(physXPhysics: PhysXPhysics, collider: PhysXCollider) { - super(physXPhysics); - this._collider = collider; - this._pxJoint = physXPhysics._pxPhysics.createFixedJoint( - collider._pxActor, - PhysXJoint._defaultVec, - PhysXJoint._defaultQuat, - null, - PhysXJoint._defaultVec, - PhysXJoint._defaultQuat - ); - } -} diff --git a/packages/physics-physx/src/joint/PhysXHingeJoint.ts b/packages/physics-physx/src/joint/PhysXHingeJoint.ts deleted file mode 100644 index f0ac12191..000000000 --- a/packages/physics-physx/src/joint/PhysXHingeJoint.ts +++ /dev/null @@ -1,126 +0,0 @@ -import { IHingeJoint } from "@galacean/engine-design"; -import { MathUtil, Quaternion, Vector3 } from "@galacean/engine"; -import { PhysXCollider } from "../PhysXCollider"; -import { PhysXPhysics } from "../PhysXPhysics"; -import { PhysXJoint } from "./PhysXJoint"; - -/** - * A joint which behaves in a similar way to a hinge or axle. - */ -export class PhysXHingeJoint extends PhysXJoint implements IHingeJoint { - protected static _xAxis = new Vector3(1, 0, 0); - - private _axis: Vector3; - private _axisRotationQuaternion = new Quaternion(); - private _connectedAxisRotationQuaternion = new Quaternion(); - - constructor(physXPhysics: PhysXPhysics, collider: PhysXCollider) { - super(physXPhysics); - this._collider = collider; - this._pxJoint = physXPhysics._pxPhysics.createRevoluteJoint( - collider._pxActor, - PhysXJoint._defaultVec, - PhysXJoint._defaultQuat, - null, - PhysXJoint._defaultVec, - PhysXJoint._defaultQuat - ); - } - - override setRotation(value: Quaternion): void { - const axis = this._axis; - this._rotation.copyFrom(value); - axis && this.setAxis(axis); - } - - /** - * {@inheritDoc IHingeJoint.setAxis } - */ - setAxis(value: Vector3): void { - this._axis = value; - const xAxis = PhysXHingeJoint._xAxis; - const axisRotationQuaternion = this._axisRotationQuaternion; - xAxis.set(1, 0, 0); - const angle = Math.acos(Vector3.dot(xAxis, value)); - Vector3.cross(xAxis, value, xAxis); - Quaternion.rotationAxisAngle(xAxis, angle, axisRotationQuaternion); - this._setLocalPose(0, this._anchor, axisRotationQuaternion); - const connectedAxisRotationQuaternion = this._connectedAxisRotationQuaternion; - Quaternion.multiply(this._rotation, axisRotationQuaternion, connectedAxisRotationQuaternion); - this._setLocalPose(1, this._connectedAnchor, connectedAxisRotationQuaternion); - } - - override setAnchor(value: Vector3): void { - this._setLocalPose(0, value, this._axisRotationQuaternion); - this._anchor = value; - } - - /** - * {@inheritDoc IJoint.setConnectedAnchor } - */ - override setConnectedAnchor(value: Vector3): void { - this._setLocalPose(1, value, this._connectedAxisRotationQuaternion); - this._connectedAnchor = value; - } - - /** - * {@inheritDoc IHingeJoint.getAngle } - */ - getAngle(): number { - return MathUtil.radianToDegree(this._pxJoint.getAngle()); - } - - /** - * {@inheritDoc IHingeJoint.getVelocity } - */ - getVelocity(): Readonly { - return this._pxJoint.getVelocity(); - } - - /** - * {@inheritDoc IHingeJoint.setHardLimitCone } - */ - setHardLimit(lowerLimit: number, upperLimit: number, contactDist: number): void { - this._pxJoint.setHardLimit(MathUtil.degreeToRadian(lowerLimit), MathUtil.degreeToRadian(upperLimit), contactDist); - } - - /** - * {@inheritDoc IHingeJoint.setHardLimitCone } - */ - setSoftLimit(lowerLimit: number, upperLimit: number, stiffness: number, damping: number): void { - this._pxJoint.setSoftLimit( - MathUtil.degreeToRadian(lowerLimit), - MathUtil.degreeToRadian(upperLimit), - stiffness, - damping - ); - } - - /** - * {@inheritDoc IHingeJoint.setDriveVelocity } - */ - setDriveVelocity(velocity: number, autowake: boolean = true): void { - this._pxJoint.setDriveVelocity(velocity, autowake); - } - - /** - * {@inheritDoc IHingeJoint.setDriveForceLimit } - */ - setDriveForceLimit(limit: number): void { - this._pxJoint.setDriveForceLimit(limit); - } - - /** - * {@inheritDoc IHingeJoint.setDriveGearRatio } - */ - setDriveGearRatio(ratio: number): void { - this._pxJoint.setDriveGearRatio(ratio); - } - - /** - * {@inheritDoc IHingeJoint.setHingeJointFlag } - */ - setHingeJointFlag(flag: number, value: boolean): void { - this._pxJoint.setRevoluteJointFlag(flag, value); - } -} diff --git a/packages/physics-physx/src/joint/PhysXJoint.ts b/packages/physics-physx/src/joint/PhysXJoint.ts deleted file mode 100644 index 3284eb239..000000000 --- a/packages/physics-physx/src/joint/PhysXJoint.ts +++ /dev/null @@ -1,116 +0,0 @@ -import { IJoint } from "@galacean/engine-design"; -import { Quaternion, Vector3 } from "@galacean/engine"; -import { PhysXCollider } from "../PhysXCollider"; -import { PhysXPhysics } from "../PhysXPhysics"; - -/** - * a base interface providing common functionality for PhysX joints - */ -export class PhysXJoint implements IJoint { - protected static _defaultVec = new Vector3(); - protected static _defaultQuat = new Quaternion(); - - protected _pxJoint: any; - protected _anchor: Vector3; - protected _connectedAnchor: Vector3; - protected _rotation: Quaternion = new Quaternion(); - protected _collider: PhysXCollider; - private _breakForce: number = Number.MAX_VALUE; - private _breakTorque: number = Number.MAX_VALUE; - - protected _physXPhysics: PhysXPhysics; - - constructor(physXPhysics: PhysXPhysics) { - this._physXPhysics = physXPhysics; - } - - /** - * {@inheritDoc IJoint.setConnectedCollider } - */ - setConnectedCollider(value: PhysXCollider): void { - this._pxJoint.setActors(this._collider?._pxActor || null, value?._pxActor || null); - } - - /** - * {@inheritDoc IJoint.setConnectedAnchor } - */ - setAnchor(value: Vector3): void { - this._setLocalPose(0, value, PhysXJoint._defaultQuat); - this._anchor = value; - } - - /** - * {@inheritDoc IJoint.setConnectedAnchor } - */ - setConnectedAnchor(value: Vector3): void { - this._setLocalPose(1, value, this._rotation); - this._connectedAnchor = value; - } - - setRotation(value: Quaternion): void { - this._setLocalPose(1, this._connectedAnchor, value); - this._rotation.copyFrom(value); - } - - /** - * {@inheritDoc IJoint.setMassScale } - */ - setMassScale(value: number): void { - this._pxJoint.setInvMassScale0(1 / value); - } - - /** - * {@inheritDoc IJoint.setConnectedMassScale } - */ - setConnectedMassScale(value: number): void { - this._pxJoint.setInvMassScale1(1 / value); - } - - /** - * {@inheritDoc IJoint.setInertiaScale } - */ - setInertiaScale(value: number): void { - this._pxJoint.setInvInertiaScale0(value); - } - - /** - * {@inheritDoc IJoint.setConnectedInertiaScale } - */ - setConnectedInertiaScale(value: number): void { - this._pxJoint.setInvInertiaScale1(value); - } - - /** - * {@inheritDoc IJoint.setBreakForce } - */ - setBreakForce(value: number): void { - this._breakForce = value; - this._pxJoint.setBreakForce(this._breakForce, this._breakTorque); - } - - /** - * {@inheritDoc IJoint.setBreakTorque } - */ - setBreakTorque(value: number): void { - this._breakTorque = value; - this._pxJoint.setBreakForce(this._breakForce, this._breakTorque); - } - - /** - * {@inheritDoc IJoint.destroy } - */ - destroy(): void { - if (!this._pxJoint) return; - this._pxJoint.release(); - this._collider = null; - } - /** - * Set the joint local pose for an actor. - * @param actor 0 for the first actor, 1 for the second actor. - * @param position the local position for the actor this joint - * @param rotation the local rotation for the actor this joint - */ - protected _setLocalPose(actor: number, position: Vector3, rotation: Quaternion): void { - this._pxJoint.setLocalPose(actor, position, rotation); - } -} diff --git a/packages/physics-physx/src/joint/PhysXSpringJoint.ts b/packages/physics-physx/src/joint/PhysXSpringJoint.ts deleted file mode 100644 index 2276d0573..000000000 --- a/packages/physics-physx/src/joint/PhysXSpringJoint.ts +++ /dev/null @@ -1,61 +0,0 @@ -import { PhysXPhysics } from "../PhysXPhysics"; -import { PhysXJoint } from "./PhysXJoint"; -import { ISpringJoint } from "@galacean/engine-design"; -import { PhysXCollider } from "../PhysXCollider"; -import { Vector3 } from "@galacean/engine"; - -/** - * a joint that maintains an upper or lower bound (or both) on the distance between two points on different objects - */ -export class PhysXSpringJoint extends PhysXJoint implements ISpringJoint { - constructor(physXPhysics: PhysXPhysics, collider: PhysXCollider) { - super(physXPhysics); - this._collider = collider; - this._pxJoint = physXPhysics._pxPhysics.createDistanceJoint( - null, - PhysXJoint._defaultVec, - PhysXJoint._defaultQuat, - collider._pxActor, - PhysXJoint._defaultVec, - PhysXJoint._defaultQuat - ); - this._pxJoint.setDistanceJointFlag(2, true); // enable max distance; - this._pxJoint.setDistanceJointFlag(4, true); // enable min distance; - this._pxJoint.setDistanceJointFlag(8, true); // enable spring; - } - - /** - * {@inheritDoc ISpringJoint.setMinDistance } - */ - setMinDistance(distance: number): void { - this._pxJoint.setMinDistance(distance); - } - - /** - * {@inheritDoc ISpringJoint.setMaxDistance } - */ - setMaxDistance(distance: number): void { - this._pxJoint.setMaxDistance(distance); - } - - /** - * {@inheritDoc ISpringJoint.setTolerance } - */ - setTolerance(tolerance: number): void { - this._pxJoint.setTolerance(tolerance); - } - - /** - * {@inheritDoc ISpringJoint.setStiffness } - */ - setStiffness(stiffness: number): void { - this._pxJoint.setStiffness(stiffness); - } - - /** - * {@inheritDoc ISpringJoint.setDamping } - */ - setDamping(damping: number): void { - this._pxJoint.setDamping(damping); - } -} diff --git a/packages/physics-physx/src/shape/PhysXBoxColliderShape.ts b/packages/physics-physx/src/shape/PhysXBoxColliderShape.ts deleted file mode 100644 index 1a09300b3..000000000 --- a/packages/physics-physx/src/shape/PhysXBoxColliderShape.ts +++ /dev/null @@ -1,73 +0,0 @@ -import { Vector3 } from "@galacean/engine"; -import { IBoxColliderShape } from "@galacean/engine-design"; -import { PhysXPhysics } from "../PhysXPhysics"; -import { PhysXPhysicsMaterial } from "../PhysXPhysicsMaterial"; -import { PhysXColliderShape } from "./PhysXColliderShape"; - -/** - * Box collider shape in PhysX. - */ -export class PhysXBoxColliderShape extends PhysXColliderShape implements IBoxColliderShape { - private static _tempHalfExtents = new Vector3(); - /** @internal */ - _halfSize: Vector3 = new Vector3(); - - constructor(physXPhysics: PhysXPhysics, uniqueID: number, size: Vector3, material: PhysXPhysicsMaterial) { - super(physXPhysics); - const halfSize = this._halfSize; - halfSize.set(size.x * 0.5, size.y * 0.5, size.z * 0.5); - this._pxGeometry = new physXPhysics._physX.PxBoxGeometry(halfSize.x, halfSize.y, halfSize.z); - this._initialize(material, uniqueID); - this._setLocalPose(); - } - - /** - * {@inheritDoc IBoxColliderShape.setSize } - */ - setSize(value: Vector3): void { - const halfSize = this._halfSize; - const tempExtents = PhysXBoxColliderShape._tempHalfExtents; - halfSize.set(value.x * 0.5, value.y * 0.5, value.z * 0.5); - Vector3.multiply(halfSize, this._worldScale, tempExtents); - this._pxGeometry.halfExtents = tempExtents; - this._pxShape.setGeometry(this._pxGeometry); - - this._updateController(tempExtents); - } - - /** - * {@inheritDoc IColliderShape.setRotation } - */ - override setRotation(value: Vector3): void { - super.setRotation(value); - if (this._controllers.length > 0) { - console.warn("Box character controller `rotation` is not supported in PhysX and will be ignored"); - } - } - - /** - * {@inheritDoc IColliderShape.setWorldScale } - */ - override setWorldScale(scale: Vector3): void { - super.setWorldScale(scale); - const tempExtents = PhysXBoxColliderShape._tempHalfExtents; - Vector3.multiply(this._halfSize, this._worldScale, tempExtents); - this._pxGeometry.halfExtents = tempExtents; - this._pxShape.setGeometry(this._pxGeometry); - - this._updateController(tempExtents); - } - - private _updateController(extents: Vector3) { - const controllers = this._controllers; - for (let i = 0, n = controllers.length; i < n; i++) { - const pxController = controllers.get(i)._pxController; - - if (pxController) { - pxController.setHalfHeight(extents.y); - pxController.setHalfSideExtent(extents.x); - pxController.setHalfForwardExtent(extents.z); - } - } - } -} diff --git a/packages/physics-physx/src/shape/PhysXCapsuleColliderShape.ts b/packages/physics-physx/src/shape/PhysXCapsuleColliderShape.ts deleted file mode 100644 index e562c17de..000000000 --- a/packages/physics-physx/src/shape/PhysXCapsuleColliderShape.ts +++ /dev/null @@ -1,175 +0,0 @@ -import { ICapsuleColliderShape } from "@galacean/engine-design"; -import { Quaternion, Vector3 } from "@galacean/engine"; -import { PhysXPhysics } from "../PhysXPhysics"; -import { PhysXPhysicsMaterial } from "../PhysXPhysicsMaterial"; -import { PhysXColliderShape } from "./PhysXColliderShape"; -/** - * Capsule collider shape in PhysX. - */ -export class PhysXCapsuleColliderShape extends PhysXColliderShape implements ICapsuleColliderShape { - /** @internal */ - _radius: number; - /** @internal */ - _halfHeight: number; - /** @internal */ - _upAxis: ColliderShapeUpAxis = ColliderShapeUpAxis.Y; - - constructor( - physXPhysics: PhysXPhysics, - uniqueID: number, - radius: number, - height: number, - material: PhysXPhysicsMaterial - ) { - super(physXPhysics); - - this._radius = radius; - this._halfHeight = height * 0.5; - this._axis = new Quaternion(0, 0, PhysXColliderShape.halfSqrt, PhysXColliderShape.halfSqrt); - this._physXRotation.copyFrom(this._axis); - - this._pxGeometry = new physXPhysics._physX.PxCapsuleGeometry(radius, this._halfHeight); - this._initialize(material, uniqueID); - this._setLocalPose(); - } - - /** - * {@inheritDoc ICapsuleColliderShape.setRadius } - */ - setRadius(value: number): void { - this._radius = value; - const sizeScale = this._worldScale; - switch (this._upAxis) { - case ColliderShapeUpAxis.X: - this._pxGeometry.radius = this._radius * Math.max(sizeScale.y, sizeScale.z); - break; - case ColliderShapeUpAxis.Y: - this._pxGeometry.radius = this._radius * Math.max(sizeScale.x, sizeScale.z); - break; - case ColliderShapeUpAxis.Z: - this._pxGeometry.radius = this._radius * Math.max(sizeScale.x, sizeScale.y); - break; - } - this._pxShape.setGeometry(this._pxGeometry); - - const radius = this._pxGeometry.radius; - const controllers = this._controllers; - for (let i = 0, n = controllers.length; i < n; i++) { - controllers.get(i)._pxController?.setRadius(radius); - } - } - - /** - * {@inheritDoc ICapsuleColliderShape.setHeight } - */ - setHeight(value: number): void { - this._halfHeight = value * 0.5; - const sizeScale = this._worldScale; - switch (this._upAxis) { - case ColliderShapeUpAxis.X: - this._pxGeometry.halfHeight = this._halfHeight * sizeScale.x; - break; - case ColliderShapeUpAxis.Y: - this._pxGeometry.halfHeight = this._halfHeight * sizeScale.y; - break; - case ColliderShapeUpAxis.Z: - this._pxGeometry.halfHeight = this._halfHeight * sizeScale.z; - break; - } - this._pxShape.setGeometry(this._pxGeometry); - - const height = this._pxGeometry.halfHeight * 2; - const controllers = this._controllers; - for (let i = 0, n = controllers.length; i < n; i++) { - controllers.get(i)._pxController?.setHeight(height); - } - } - - /** - * {@inheritDoc ICapsuleColliderShape.setRotation } - */ - override setRotation(value: Vector3): void { - super.setRotation(value); - if (this._controllers.length > 0) { - console.warn("Capsule character controller `rotation` is not supported in PhysX and will be ignored"); - } - } - - /** - * {@inheritDoc ICapsuleColliderShape.setUpAxis } - */ - setUpAxis(upAxis: ColliderShapeUpAxis): void { - const { _rotation: rotation, _axis: axis, _physXRotation: physXRotation } = this; - - this._upAxis = upAxis; - switch (this._upAxis) { - case ColliderShapeUpAxis.X: - axis.set(0, 0, 0, 1); - break; - case ColliderShapeUpAxis.Y: - axis.set(0, 0, PhysXColliderShape.halfSqrt, PhysXColliderShape.halfSqrt); - break; - case ColliderShapeUpAxis.Z: - axis.set(0, PhysXColliderShape.halfSqrt, 0, PhysXColliderShape.halfSqrt); - break; - } - if (rotation) { - Quaternion.rotationYawPitchRoll(rotation.y, rotation.x, rotation.z, physXRotation); - Quaternion.multiply(physXRotation, axis, physXRotation); - } else { - physXRotation.copyFrom(axis); - } - this._setLocalPose(); - - if (this._controllers.length > 0) { - console.warn("Capsule character controller `upAxis` is not supported in PhysX and will be ignored"); - } - } - - /** - * {@inheritDoc IColliderShape.setWorldScale } - */ - override setWorldScale(scale: Vector3): void { - super.setWorldScale(scale); - const sizeScale = this._worldScale; - const geometry = this._pxGeometry; - switch (this._upAxis) { - case ColliderShapeUpAxis.X: - geometry.radius = this._radius * Math.max(sizeScale.y, sizeScale.z); - geometry.halfHeight = this._halfHeight * sizeScale.x; - break; - case ColliderShapeUpAxis.Y: - geometry.radius = this._radius * Math.max(sizeScale.x, sizeScale.z); - geometry.halfHeight = this._halfHeight * sizeScale.y; - break; - case ColliderShapeUpAxis.Z: - geometry.radius = this._radius * Math.max(sizeScale.x, sizeScale.y); - geometry.halfHeight = this._halfHeight * sizeScale.z; - break; - } - this._pxShape.setGeometry(geometry); - - const radius = geometry.radius; - const height = geometry.halfHeight * 2; - const controllers = this._controllers; - for (let i = 0, n = controllers.length; i < n; i++) { - const pxController = controllers.get(i)._pxController; - if (pxController) { - pxController.setRadius(radius); - pxController.setHeight(height); - } - } - } -} - -/** - * The up axis of the collider shape. - */ -export enum ColliderShapeUpAxis { - /** Up axis is X. */ - X, - /** Up axis is Y. */ - Y, - /** Up axis is Z. */ - Z -} diff --git a/packages/physics-physx/src/shape/PhysXColliderShape.ts b/packages/physics-physx/src/shape/PhysXColliderShape.ts deleted file mode 100644 index 5436068b5..000000000 --- a/packages/physics-physx/src/shape/PhysXColliderShape.ts +++ /dev/null @@ -1,185 +0,0 @@ -import { Quaternion, Vector3, DisorderedArray, Vector4, MathUtil } from "@galacean/engine"; -import { IColliderShape } from "@galacean/engine-design"; -import { PhysXCharacterController } from "../PhysXCharacterController"; -import { PhysXPhysics } from "../PhysXPhysics"; -import { PhysXPhysicsMaterial } from "../PhysXPhysicsMaterial"; - -/** - * Flags which affect the behavior of Shapes. - */ -export enum ShapeFlag { - /** The shape will partake in collision in the physical simulation. */ - SIMULATION_SHAPE = 1 << 0, - /** The shape will partake in scene queries (ray casts, overlap tests, sweeps, ...). */ - SCENE_QUERY_SHAPE = 1 << 1, - /** The shape is a trigger which can send reports whenever other shapes enter/leave its volume. */ - TRIGGER_SHAPE = 1 << 2 -} - -/** - * Abstract class for collider shapes. - */ -export abstract class PhysXColliderShape implements IColliderShape { - static readonly halfSqrt: number = 0.70710678118655; - static transform = { - translation: new Vector3(), - rotation: null - }; - - protected static _tempVector4 = new Vector4(); - - /** @internal */ - _controllers: DisorderedArray = new DisorderedArray(); - /** @internal */ - _contractOffset: number = 0.02; - - /** @internal */ - _worldScale: Vector3 = new Vector3(1, 1, 1); - /** @internal */ - _position: Vector3 = new Vector3(); - /** @internal */ - _pxMaterial: any; - /** @internal */ - _pxShape: any; - /** @internal */ - /** @internal */ - _id: number; - /** @internal */ - _rotation: Vector3 = new Vector3(); - - protected _physXPhysics: PhysXPhysics; - protected _pxGeometry: any; - protected _axis: Quaternion = null; - protected _physXRotation: Quaternion = new Quaternion(); - - private _shapeFlags: ShapeFlag = ShapeFlag.SCENE_QUERY_SHAPE | ShapeFlag.SIMULATION_SHAPE; - - constructor(physXPhysics: PhysXPhysics) { - this._physXPhysics = physXPhysics; - } - - /** - * {@inheritDoc IColliderShape.setRotation } - */ - setRotation(value: Vector3): void { - const rotation = this._rotation.set( - MathUtil.degreeToRadian(value.x), - MathUtil.degreeToRadian(value.y), - MathUtil.degreeToRadian(value.z) - ); - Quaternion.rotationYawPitchRoll(rotation.y, rotation.x, rotation.z, this._physXRotation); - this._axis && Quaternion.multiply(this._physXRotation, this._axis, this._physXRotation); - this._physXRotation.normalize(); - this._setLocalPose(); - } - - /** - * {@inheritDoc IColliderShape.setPosition } - */ - setPosition(value: Vector3): void { - if (value !== this._position) { - this._position.copyFrom(value); - } - const controllers = this._controllers; - for (let i = 0, n = controllers.length; i < n; i++) { - controllers.get(i)._updateShapePosition(this._position, this._worldScale); - } - - this._setLocalPose(); - } - - /** - * {@inheritDoc IColliderShape.setWorldScale } - */ - setWorldScale(scale: Vector3): void { - this._worldScale.set(Math.abs(scale.x), Math.abs(scale.y), Math.abs(scale.z)); - this._setLocalPose(); - - const controllers = this._controllers; - for (let i = 0, n = controllers.length; i < n; i++) { - controllers.get(i)._updateShapePosition(this._position, this._worldScale); - } - } - - /** - * {@inheritDoc IColliderShape.setContactOffset } - * @default 0.02f * PxTolerancesScale::length - */ - setContactOffset(offset: number): void { - this._contractOffset = offset; - const controllers = this._controllers; - if (controllers.length) { - for (let i = 0, n = controllers.length; i < n; i++) { - controllers.get(i)._pxController?.setContactOffset(offset); - } - } else { - this._pxShape.setContactOffset(offset); - } - } - - /** - * {@inheritDoc IColliderShape.setMaterial } - */ - setMaterial(value: PhysXPhysicsMaterial): void { - this._pxMaterial = value._pxMaterial; - this._pxShape.setMaterial(this._pxMaterial); - } - - /** - * {@inheritDoc IColliderShape.setIsTrigger } - */ - setIsTrigger(value: boolean): void { - this._modifyFlag(ShapeFlag.SIMULATION_SHAPE, !value); - this._modifyFlag(ShapeFlag.TRIGGER_SHAPE, value); - this._setShapeFlags(this._shapeFlags); - } - - /** - * {@inheritDoc IColliderShape.pointDistance } - */ - pointDistance(point: Vector3): Vector4 { - const info = this._pxGeometry.pointDistance(this._pxShape.getGlobalPose(), point); - const closestPoint = info.closestPoint; - const res = PhysXColliderShape._tempVector4; - res.set(closestPoint.x, closestPoint.y, closestPoint.z, info.distance); - return res; - } - - /** - * {@inheritDoc IColliderShape.destroy } - */ - destroy(): void { - this._pxShape.release(); - this._pxGeometry.delete(); - } - - /** - * @internal - */ - _setShapeFlags(flags: ShapeFlag) { - this._shapeFlags = flags; - const shapeFlags = new this._physXPhysics._physX.PxShapeFlags(this._shapeFlags); - this._pxShape.setFlags(shapeFlags); - shapeFlags.delete(); - } - - protected _setLocalPose(): void { - const transform = PhysXColliderShape.transform; - Vector3.multiply(this._position, this._worldScale, transform.translation); - transform.rotation = this._physXRotation; - this._pxShape.setLocalPose(transform); - } - - protected _initialize(material: PhysXPhysicsMaterial, id: number): void { - this._id = id; - this._pxMaterial = material._pxMaterial; - const shapeFlags = new this._physXPhysics._physX.PxShapeFlags(this._shapeFlags); - this._pxShape = this._physXPhysics._pxPhysics.createShape(this._pxGeometry, material._pxMaterial, true, shapeFlags); - shapeFlags.delete(); - this._pxShape.setUUID(id); - } - - private _modifyFlag(flag: ShapeFlag, value: boolean): void { - this._shapeFlags = value ? this._shapeFlags | flag : this._shapeFlags & ~flag; - } -} diff --git a/packages/physics-physx/src/shape/PhysXPlaneColliderShape.ts b/packages/physics-physx/src/shape/PhysXPlaneColliderShape.ts deleted file mode 100644 index b76a9077b..000000000 --- a/packages/physics-physx/src/shape/PhysXPlaneColliderShape.ts +++ /dev/null @@ -1,20 +0,0 @@ -import { IPlaneColliderShape } from "@galacean/engine-design"; -import { Quaternion } from "@galacean/engine"; -import { PhysXPhysics } from "../PhysXPhysics"; -import { PhysXPhysicsMaterial } from "../PhysXPhysicsMaterial"; -import { PhysXColliderShape } from "./PhysXColliderShape"; - -/** - * Plane collider shape in PhysX. - */ -export class PhysXPlaneColliderShape extends PhysXColliderShape implements IPlaneColliderShape { - constructor(physXPhysics: PhysXPhysics, uniqueID: number, material: PhysXPhysicsMaterial) { - super(physXPhysics); - this._axis = new Quaternion(0, 0, PhysXColliderShape.halfSqrt, PhysXColliderShape.halfSqrt); - this._physXRotation.copyFrom(this._axis); - - this._pxGeometry = new physXPhysics._physX.PxPlaneGeometry(); - this._initialize(material, uniqueID); - this._setLocalPose(); - } -} diff --git a/packages/physics-physx/src/shape/PhysXSphereColliderShape.ts b/packages/physics-physx/src/shape/PhysXSphereColliderShape.ts deleted file mode 100644 index c10f56455..000000000 --- a/packages/physics-physx/src/shape/PhysXSphereColliderShape.ts +++ /dev/null @@ -1,42 +0,0 @@ -import { Vector3 } from "@galacean/engine"; -import { ISphereColliderShape } from "@galacean/engine-design"; -import { PhysXPhysics } from "../PhysXPhysics"; -import { PhysXPhysicsMaterial } from "../PhysXPhysicsMaterial"; -import { PhysXColliderShape } from "./PhysXColliderShape"; - -/** - * Sphere collider shape in PhysX. - */ -export class PhysXSphereColliderShape extends PhysXColliderShape implements ISphereColliderShape { - private _radius: number; - private _maxScale: number = 1; - - constructor(physXPhysics: PhysXPhysics, uniqueID: number, radius: number, material: PhysXPhysicsMaterial) { - super(physXPhysics); - - this._radius = radius; - this._pxGeometry = new physXPhysics._physX.PxSphereGeometry(radius * this._maxScale); - this._initialize(material, uniqueID); - this._setLocalPose(); - } - - /** - * {@inheritDoc ISphereColliderShape.setRadius } - */ - setRadius(value: number): void { - this._radius = value; - this._pxGeometry.radius = value * this._maxScale; - this._pxShape.setGeometry(this._pxGeometry); - } - - /** - * {@inheritDoc IColliderShape.setWorldScale } - */ - override setWorldScale(scale: Vector3): void { - super.setWorldScale(scale); - - this._maxScale = Math.max(Math.abs(scale.x), Math.abs(scale.y), Math.abs(scale.z)); - this._pxGeometry.radius = this._radius * this._maxScale; - this._pxShape.setGeometry(this._pxGeometry); - } -} diff --git a/packages/physics-physx/tsconfig.json b/packages/physics-physx/tsconfig.json deleted file mode 100644 index 588b0055c..000000000 --- a/packages/physics-physx/tsconfig.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "compilerOptions": { - "module": "esnext", - "target": "esnext", - "declaration": true, - "moduleResolution": "node", - "allowSyntheticDefaultImports": true, - "experimentalDecorators": true, - "declarationDir": "types", - "emitDeclarationOnly": true, - "noImplicitOverride": true, - "sourceMap": true, - "incremental": false, - "skipLibCheck": true, - "stripInternal": true - }, - "include": ["src/**/*"] -} diff --git a/packages/shader-lab/README.md b/packages/shader-lab/README.md deleted file mode 100644 index 77420f637..000000000 --- a/packages/shader-lab/README.md +++ /dev/null @@ -1,43 +0,0 @@ -## Installation - -```sh -npm install @galacean/engine-shaderlab -``` - -## Usage - -```typescript -import { ShaderLab } from "@galacean/engine-shaderlab"; - -// Create ShaderLab -const shaderLab = new ShaderLab(); - -// Create engine with shaderLab -const engine = await WebGLEngine.create({ canvas: "canvas", shaderLab }); - -...... - -// Create shader by galacean shader code directly -const shader = Shader.create(galaceanShaderCode); - -....... - -// Run engine -engine.run() -``` - -There are two versions of ShaderLab: `Release` and `Verbose`. The `Verbose` version offers more user-friendly diagnostic information for debug ShaderLab compilation errors, while the Release version provides superior performance. - -you can use `Verbose` version by import: - -```ts -import { ShaderLab } from "@galacean/engine-shaderlab/verbose"; -``` - -## CFG Grammar conflict detection - -The Galacean ShaderLab syntax is defined using Context-Free Grammar (CFG) and is documented within the `\*.y` file. When modifications to the ShaderLab syntax are required, it is recommended to make changes to the existing CFG syntax file, and employ [Bison](https://www.gnu.org/software/bison/manual/bison.html) to detect any potential grammar conflicts. - -```sh -bison ./Parser.y -r all -``` diff --git a/packages/shader-lab/package.json b/packages/shader-lab/package.json deleted file mode 100644 index de6a9daa4..000000000 --- a/packages/shader-lab/package.json +++ /dev/null @@ -1,38 +0,0 @@ -{ - "name": "@galacean/engine-shaderlab", - "version": "0.0.0-experimental-backup.0", - "publishConfig": { - "access": "public", - "registry": "https://registry.npmjs.org" - }, - "repository": { - "url": "https://github.com/galacean/engine.git" - }, - "license": "MIT", - "main": "dist/main.js", - "module": "dist/module.js", - "browser": "dist/browser.min.js", - "debug": "src/index.ts", - "types": "types/index.d.ts", - "scripts": { - "b:types": "tsc" - }, - "umd": { - "name": "Galacean.ShaderLab", - "globals": { - "@galacean/engine": "Galacean" - } - }, - "files": [ - "dist/**/*", - "types/**/*", - "verbose/package.json" - ], - "devDependencies": { - "@galacean/engine-design": "workspace:*", - "@galacean/engine": "workspace:*" - }, - "peerDependencies": { - "@galacean/engine": "workspace:*" - } -} diff --git a/packages/shader-lab/src/GSError.ts b/packages/shader-lab/src/GSError.ts deleted file mode 100644 index da4565bbe..000000000 --- a/packages/shader-lab/src/GSError.ts +++ /dev/null @@ -1,70 +0,0 @@ -import { ShaderPosition } from "./common/ShaderPosition"; -import { ShaderRange } from "./common/ShaderRange"; - -export class GSError extends Error { - static wrappingLineCount = 2; - - constructor( - name: GSErrorName, - message: string, - public readonly location: ShaderRange | ShaderPosition, - public readonly source: string, - public readonly file?: string - ) { - super(message); - this.name = name; - } - - override toString(): string { - let start: ShaderPosition, end: ShaderPosition; - const { message, location, source } = this; - if (!source) { - return message; - } - - if (location instanceof ShaderPosition) { - start = end = location; - } else { - start = location.start; - end = location.end; - } - const lines = source.split("\n"); - - let diagnosticMessage = `${this.name}: ${message}\n\n`; - - // #if _VERBOSE - const lineSplit = "|···"; - - const wrappingLineCount = GSError.wrappingLineCount; - for (let i = start.line - wrappingLineCount, n = end.line + wrappingLineCount; i <= n; i++) { - const line = lines[i]; - diagnosticMessage += lineSplit + `${line}\n`; - - if (i < start.line || i > end.line) continue; - - let remarkStart = 0; - let remarkEnd = line.length; - let paddingLength = lineSplit.length; - if (i === start.line) { - remarkStart = start.column; - paddingLength += start.column; - } - if (i === end.line) { - remarkEnd = end.column; - } - const remarkLength = Math.max(remarkEnd - remarkStart, 1); - - diagnosticMessage += " ".repeat(paddingLength) + "^".repeat(remarkLength) + "\n"; - } - // #endif - - return diagnosticMessage; - } -} - -export enum GSErrorName { - PreprocessorError = "PreprocessorError", - CompilationError = "CompilationError", - ScannerError = "ScannerError", - CompilationWarn = "CompilationWarning" -} diff --git a/packages/shader-lab/src/ParserUtils.ts b/packages/shader-lab/src/ParserUtils.ts deleted file mode 100644 index bcf75b242..000000000 --- a/packages/shader-lab/src/ParserUtils.ts +++ /dev/null @@ -1,66 +0,0 @@ -import { ETokenType, GalaceanDataType, TypeAny } from "./common"; -import { BaseToken as Token } from "./common/BaseToken"; -import { TreeNode } from "./parser/AST"; -import { GrammarSymbol, NoneTerminal } from "./parser/GrammarSymbol"; -// #if _VERBOSE -import { Keyword } from "./common/enums/Keyword"; -import State from "./lalr/State"; -// #endif - -export class ParserUtils { - static unwrapNodeByType(node: TreeNode, type: NoneTerminal): T | undefined { - const child = node.children[0]; - if (child instanceof Token) return; - if (child.nt === type) return child as T; - return ParserUtils.unwrapNodeByType(child, type); - } - - // #if _VERBOSE - /** - * Check if type `tb` is compatible with type `ta`. - */ - static typeCompatible(ta: GalaceanDataType, tb: GalaceanDataType | undefined) { - if (tb == undefined || tb === TypeAny) return true; - if (ta === Keyword.INT) { - return ta === tb || tb === Keyword.UINT; - } - return ta === tb; - } - - static toString(sm: GrammarSymbol) { - if (this.isTerminal(sm)) { - return ETokenType[sm] ?? Keyword[sm]; - } - return NoneTerminal[sm]; - } - // #endif - - static isTerminal(sm: GrammarSymbol) { - return sm < NoneTerminal.START; - } - - /** - * @internal - */ - // #if _VERBOSE - static printStatePool(logPath: string) { - let output = ""; - - console.log("========== Parser Pool =========="); - - let count = 0; - for (const state of State.pool.values()) { - count++; - let tmp = ""; - tmp += `${state.id}: \n`.padEnd(4); - for (const psItem of state.items) { - tmp += " " + psItem.toString() + "\n"; - } - output += tmp; - } - - console.log("state count:", count); - console.log(output); - } - // #endif -} diff --git a/packages/shader-lab/src/Preprocessor.ts b/packages/shader-lab/src/Preprocessor.ts deleted file mode 100644 index 17e907da7..000000000 --- a/packages/shader-lab/src/Preprocessor.ts +++ /dev/null @@ -1,189 +0,0 @@ -import { Logger, ShaderPass } from "@galacean/engine"; -/** @ts-ignore */ -import { ShaderLib } from "@galacean/engine"; - -export enum MacroValueType { - Number, // 1, 1.1 - Symbol, // variable name - FunctionCall, // function call, e.g. clamp(a, 0.0, 1.0) - Other // shaderLab does not check this -} - -export interface MacroDefineInfo { - isFunction: boolean; - name: string; - value: string; - valueType: MacroValueType; - params: string[]; - functionCallName: string; -} - -export interface MacroDefineList { - [macroName: string]: MacroDefineInfo[]; -} - -export class Preprocessor { - private static readonly _includeReg = /^[ \t]*#include +"([\w\d./]+)"/gm; - private static readonly _macroRegex = - /^\s*#define\s+(\w+)[ ]*(\(([^)]*)\))?[ ]+(\(?\w+\)?.*?)(?:\/\/.*|\/\*.*?\*\/)?\s*$/gm; - private static readonly _symbolReg = /^[a-zA-Z_][a-zA-Z0-9_]*$/; - private static readonly _funcCallReg = /^([a-zA-Z_][a-zA-Z0-9_]*)\s*\((.*)\)$/; - private static readonly _macroDefineIncludeMap = new Map(); - - /** - * @internal - */ - static _repeatIncludeSet = new Set(); - - static parse( - source: string, - basePathForIncludeKey: string, - outMacroDefineList: MacroDefineList, - parseMacro = true - ): string { - if (parseMacro) { - this._parseMacroDefines(source, outMacroDefineList); - } - return source.replace(this._includeReg, (_, includeName) => - this._replace(includeName, basePathForIncludeKey, outMacroDefineList) - ); - } - - static getReferenceSymbolNames(macroDefineList: MacroDefineList, macroName: string, out: string[]): void { - out.length = 0; - const infos = macroDefineList[macroName]; - if (!infos) return; - - for (let i = 0; i < infos.length; i++) { - const info = infos[i]; - const valueType = info.valueType; - if (valueType === MacroValueType.FunctionCall || valueType === MacroValueType.Symbol) { - const referencedName = valueType === MacroValueType.FunctionCall ? info.functionCallName : info.value; - if (info.params.indexOf(referencedName) !== -1) continue; - if (out.indexOf(referencedName) === -1) out.push(referencedName); - } else if (valueType === MacroValueType.Other) { - // #if _VERBOSE - Logger.warn( - `Warning: Macro "${info.name}" has an unrecognized value "${info.value}". ShaderLab does not validate this type.` - ); - // #endif - } - } - } - - private static _isNumber(str: string): boolean { - return !isNaN(Number(str)); - } - - private static _isExist(list: MacroDefineInfo[], item: MacroDefineInfo): boolean { - return list.some( - (e) => - e.valueType === item.valueType && - e.value === item.value && - e.isFunction === item.isFunction && - e.functionCallName === item.functionCallName && - e.params.length === item.params.length && - e.params.every((p, i) => p === item.params[i]) - ); - } - - private static _parseMacroDefines(source: string, outMacroList: MacroDefineList): void { - let match: RegExpExecArray | null; - this._macroRegex.lastIndex = 0; - - while ((match = this._macroRegex.exec(source)) !== null) { - const [, name, paramsGroup, paramsStr, valueRaw] = match; - const isFunction = !!paramsGroup && !!valueRaw; - const params = - isFunction && paramsStr - ? paramsStr - .split(",") - .map((p) => p.trim()) - .filter(Boolean) - : []; - const value = valueRaw ? valueRaw.trim() : ""; - - let valueType = MacroValueType.Other; - let functionCallName = ""; - - if (this._isNumber(value)) { - valueType = MacroValueType.Number; - } else if (this._symbolReg.test(value)) { - valueType = MacroValueType.Symbol; - } else { - const callMatch = this._funcCallReg.exec(value); - if (callMatch) { - valueType = MacroValueType.FunctionCall; - functionCallName = callMatch[1]; - } - } - - const info: MacroDefineInfo = { - isFunction, - name, - value, - valueType, - params, - functionCallName - }; - - const arr = outMacroList[name]; - if (arr) { - if (!this._isExist(arr, info)) arr.push(info); - } else { - outMacroList[name] = [info]; - } - } - } - - private static _mergeMacroDefineLists(from: MacroDefineList, to: MacroDefineList): void { - for (const macroName in from) { - if (to[macroName]) { - const target = to[macroName]; - const src = from[macroName]; - for (let i = 0; i < src.length; i++) { - const info = src[i]; - if (!this._isExist(target, info)) target.push(info); - } - } else { - to[macroName] = from[macroName]; - } - } - } - - private static _replace( - includeName: string, - basePathForIncludeKey: string, - outMacroDefineList: MacroDefineList - ): string { - let path: string; - if (includeName[0] === ".") { - // @ts-ignore - path = new URL(includeName, basePathForIncludeKey).href.substring(ShaderPass._shaderRootPath.length); - } else { - path = includeName; - } - - const chunk = (ShaderLib as any)[path]; - if (!chunk) { - Logger.error(`Shader slice "${path}" not founded.`); - return ""; - } - - if (this._repeatIncludeSet.has(path)) { - Logger.warn(`Shader slice "${path}" is included multiple times.`); - } - this._repeatIncludeSet.add(path); - - if (this._macroDefineIncludeMap.has(path)) { - this._mergeMacroDefineLists(this._macroDefineIncludeMap.get(path)!, outMacroDefineList); - } else { - const chunkMacroDefineList: MacroDefineList = {}; - this._parseMacroDefines(chunk, chunkMacroDefineList); - this._macroDefineIncludeMap.set(path, chunkMacroDefineList); - this._mergeMacroDefineLists(chunkMacroDefineList, outMacroDefineList); - } - - return this.parse(chunk, basePathForIncludeKey, outMacroDefineList, false); - } -} diff --git a/packages/shader-lab/src/ShaderLab.ts b/packages/shader-lab/src/ShaderLab.ts deleted file mode 100644 index 16dab2619..000000000 --- a/packages/shader-lab/src/ShaderLab.ts +++ /dev/null @@ -1,120 +0,0 @@ -import { Logger, ShaderMacro, ShaderLanguage } from "@galacean/engine"; -import { IShaderLab, IShaderSource } from "@galacean/engine-design"; -import { IShaderProgramSource } from "@galacean/engine-design/types/shader-lab/IShaderProgramSource"; -import { GLES100Visitor, GLES300Visitor } from "./codeGen"; -import { ShaderPosition, ShaderRange } from "./common"; -import { Lexer } from "./lexer"; -import { MacroParser } from "./macroProcessor/MacroParser"; -import { ShaderTargetParser } from "./parser"; -import { Preprocessor } from "./Preprocessor"; -import { ShaderLabUtils } from "./ShaderLabUtils"; -import { ShaderSourceParser } from "./sourceParser/ShaderSourceParser"; - -export class ShaderLab implements IShaderLab { - private static _parser = ShaderTargetParser.create(); - private static _shaderPositionPool = ShaderLabUtils.createObjectPool(ShaderPosition); - private static _shaderRangePool = ShaderLabUtils.createObjectPool(ShaderRange); - - // #if _VERBOSE - static _processingPassText?: string; - // #endif - - static createPosition(index: number, line?: number, column?: number): ShaderPosition { - const position = this._shaderPositionPool.get(); - position.set( - index, - // #if _VERBOSE - line, - column - // #endif - ); - return position; - } - - static createRange(start: ShaderPosition, end: ShaderPosition): ShaderRange { - const range = this._shaderRangePool.get(); - range.set(start, end); - return range; - } - - _parseShaderSource(sourceCode: string): IShaderSource { - ShaderLabUtils.clearAllShaderLabObjectPool(); - const shaderSource = ShaderSourceParser.parse(sourceCode); - - // #if _VERBOSE - this._logErrors(ShaderSourceParser.errors); - // #endif - - return shaderSource; - } - - _parseShaderPass( - source: string, - vertexEntry: string, - fragmentEntry: string, - backend: ShaderLanguage, - basePathForIncludeKey: string - ): IShaderProgramSource | undefined { - const totalStartTime = performance.now(); - const macroDefineList = {}; - Preprocessor._repeatIncludeSet.clear(); - const noIncludeContent = Preprocessor.parse(source, basePathForIncludeKey, macroDefineList); - Logger.info(`[Task - Pre processor] cost time ${performance.now() - totalStartTime}ms`); - - const lexer = new Lexer(noIncludeContent, macroDefineList); - - const tokens = lexer.tokenize(); - const { _parser: parser } = ShaderLab; - - ShaderLab._processingPassText = noIncludeContent; - - const program = parser.parse(tokens, macroDefineList); - - // #if _VERBOSE - this._logErrors(parser.errors); - // #endif - - if (!program) { - return undefined; - } - - const codeGen = backend === ShaderLanguage.GLSLES100 ? GLES100Visitor.getVisitor() : GLES300Visitor.getVisitor(); - - const codeGenStartTime = performance.now(); - const ret = codeGen.visitShaderProgram(program, vertexEntry, fragmentEntry); - Logger.info(`[Task - CodeGen] cost time: ${performance.now() - codeGenStartTime}ms`); - Logger.info(`[Task - Total compilation] cost time: ${performance.now() - totalStartTime}ms`); - ShaderLab._processingPassText = undefined; - - // #if _VERBOSE - this._logErrors(codeGen.errors); - // #endif - - return ret; - } - - _parseMacros(content: string, macros: ShaderMacro[]): string { - const startTime = performance.now(); - const parsedContent = MacroParser.parse(content, macros); - Logger.info(`[Task - parse macros] cost time: ${performance.now() - startTime}ms`); - - // #if _VERBOSE - this._logErrors(MacroParser._errors); - // #endif - - return parsedContent; - } - - // #if _VERBOSE - /** - * @internal - */ - _logErrors(errors: Error[]) { - if (errors.length === 0 || !Logger.isEnabled) return; - Logger.error(`${errors.length} errors occur!`); - for (const err of errors) { - Logger.error(err.toString()); - } - } - // #endif -} diff --git a/packages/shader-lab/src/ShaderLabUtils.ts b/packages/shader-lab/src/ShaderLabUtils.ts deleted file mode 100644 index 230e19049..000000000 --- a/packages/shader-lab/src/ShaderLabUtils.ts +++ /dev/null @@ -1,37 +0,0 @@ -import { ClearableObjectPool, IPoolElement, Logger } from "@galacean/engine"; -import { GSErrorName } from "./GSError"; -import { ShaderRange } from "./common/ShaderRange"; -import { ShaderPosition } from "./common/ShaderPosition"; -// #if _VERBOSE -import { GSError } from "./GSError"; -// #endif - -export class ShaderLabUtils { - private static _shaderLabObjectPoolSet: ClearableObjectPool[] = []; - - static createObjectPool(type: new () => T) { - const pool = new ClearableObjectPool(type); - ShaderLabUtils._shaderLabObjectPoolSet.push(pool); - return pool; - } - - static clearAllShaderLabObjectPool() { - for (let i = 0, n = ShaderLabUtils._shaderLabObjectPoolSet.length; i < n; i++) { - ShaderLabUtils._shaderLabObjectPoolSet[i].clear(); - } - } - - static createGSError( - message: string, - errorName: GSErrorName, - source: string, - location: ShaderRange | ShaderPosition, - file?: string - ): Error | undefined { - // #if _VERBOSE - return new GSError(errorName, message, location, source, file); - // #else - Logger.error(message); - // #endif - } -} diff --git a/packages/shader-lab/src/TempArray.ts b/packages/shader-lab/src/TempArray.ts deleted file mode 100644 index 3343737ab..000000000 --- a/packages/shader-lab/src/TempArray.ts +++ /dev/null @@ -1,9 +0,0 @@ -import { IPoolElement } from "@galacean/engine"; - -export class TempArray implements IPoolElement { - array: Array = new Array(); - - dispose(): void { - this.array.length = 0; - } -} diff --git a/packages/shader-lab/src/codeGen/CodeGenVisitor.ts b/packages/shader-lab/src/codeGen/CodeGenVisitor.ts deleted file mode 100644 index 35beaa1d9..000000000 --- a/packages/shader-lab/src/codeGen/CodeGenVisitor.ts +++ /dev/null @@ -1,369 +0,0 @@ -import { ShaderPosition, ShaderRange } from "../common"; -import { BaseToken } from "../common/BaseToken"; -import { GSErrorName } from "../GSError"; -import { ASTNode, TreeNode } from "../parser/AST"; -import { NoneTerminal } from "../parser/GrammarSymbol"; -import { ESymbolType, FnSymbol } from "../parser/symbolTable"; -import { NodeChild, StructProp } from "../parser/types"; -import { ParserUtils } from "../ParserUtils"; -import { ShaderLab } from "../ShaderLab"; -import { VisitorContext } from "./VisitorContext"; -// #if _VERBOSE -import { GSError } from "../GSError"; -// #endif -import { Logger, ReturnableObjectPool } from "@galacean/engine"; -import { Keyword } from "../common/enums/Keyword"; -import { TempArray } from "../TempArray"; -import { ICodeSegment } from "./types"; - -/** - * @internal - * The code generator - */ -export abstract class CodeGenVisitor { - // #if _VERBOSE - readonly errors: Error[] = []; - // #endif - - abstract getAttributeProp(prop: StructProp): string; - abstract getVaryingProp(prop: StructProp): string; - abstract getMRTProp(prop: StructProp): string; - - protected static _tmpArrayPool = new ReturnableObjectPool(TempArray, 10); - - defaultCodeGen(children: NodeChild[]) { - const pool = CodeGenVisitor._tmpArrayPool; - let ret = pool.get(); - ret.dispose(); - for (const child of children) { - if (child instanceof BaseToken) { - ret.array.push(child.lexeme); - } else { - ret.array.push(child.codeGen(this)); - } - } - pool.return(ret); - return ret.array.join(" "); - } - - visitPostfixExpression(node: ASTNode.PostfixExpression): string { - const children = node.children; - const derivationLength = children.length; - const context = VisitorContext.context; - - if (derivationLength === 3) { - const postExpr = children[0] as ASTNode.PostfixExpression; - const prop = children[2]; - - if (prop instanceof BaseToken) { - if (context.isAttributeStruct(postExpr.type)) { - const error = context.referenceAttribute(prop); - // #if _VERBOSE - if (error) { - this.errors.push(error); - } - // #endif - return prop.lexeme; - } else if (context.isVaryingStruct(postExpr.type)) { - const error = context.referenceVarying(prop); - // #if _VERBOSE - if (error) { - this.errors.push(error); - } - // #endif - return prop.lexeme; - } else if (context.isMRTStruct(postExpr.type)) { - const error = context.referenceMRTProp(prop); - // #if _VERBOSE - if (error) { - this.errors.push(error); - } - // #endif - return prop.lexeme; - } - - return `${postExpr.codeGen(this)}.${prop.lexeme}`; - } else { - return `${postExpr.codeGen(this)}.${prop.codeGen(this)}`; - } - } else if (derivationLength === 4) { - const identNode = children[0] as ASTNode.PostfixExpression; - const indexNode = children[2] as ASTNode.Expression; - const identLexeme = identNode.codeGen(this); - const indexLexeme = indexNode.codeGen(this); - if (identLexeme === "gl_FragData") { - this._reportError(identNode.location, "Please use MRT struct instead of gl_FragData."); - } - return `${identLexeme}[${indexLexeme}]`; - } - - return this.defaultCodeGen(node.children); - } - - visitVariableIdentifier(node: ASTNode.VariableIdentifier): string { - for (let name of node.referenceGlobalSymbolNames) { - VisitorContext.context.referenceGlobal(name, ESymbolType.Any); - } - - return node.getLexeme(this); - } - - visitFunctionCall(node: ASTNode.FunctionCall): string { - const call = node.children[0] as ASTNode.FunctionCallGeneric; - if (call.fnSymbol instanceof FnSymbol) { - VisitorContext.context.referenceGlobal(call.fnSymbol.ident, ESymbolType.FN); - - const paramList = call.children[2]; - if (paramList instanceof ASTNode.FunctionCallParameterList) { - const astNodes = paramList.paramNodes; - const paramInfoList = call.fnSymbol.astNode.protoType.parameterList; - - const params = astNodes.filter((_, i) => { - const typeInfo = paramInfoList?.[i]?.typeInfo; - return ( - !typeInfo || - (!VisitorContext.context.isAttributeStruct(typeInfo.typeLexeme) && - !VisitorContext.context.isVaryingStruct(typeInfo.typeLexeme) && - !VisitorContext.context.isMRTStruct(typeInfo.typeLexeme)) - ); - }); - - let paramsCode = ""; - - for (let i = 0, length = params.length; i < length; i++) { - const astNode = params[i]; - const code = astNode.codeGen(this); - if (astNode instanceof ASTNode.MacroCallArgBlock || i === 0) { - paramsCode += code; - } else { - paramsCode += `, ${code}`; - } - } - - return `${call.fnSymbol.ident}(${paramsCode})`; - } - } - - return this.defaultCodeGen(node.children); - } - - visitMacroCallFunction(node: ASTNode.MacroCallFunction): string { - const children = node.children; - const paramList = children[2]; - if (paramList instanceof ASTNode.FunctionCallParameterList) { - const astNodes = paramList.paramNodes; - - const params = astNodes.filter((node) => { - if (node instanceof ASTNode.AssignmentExpression) { - const variableParam = ParserUtils.unwrapNodeByType( - node, - NoneTerminal.variable_identifier - ); - if ( - variableParam && - typeof variableParam.typeInfo === "string" && - (VisitorContext.context.isAttributeStruct(variableParam.typeInfo) || - VisitorContext.context.isVaryingStruct(variableParam.typeInfo) || - VisitorContext.context.isMRTStruct(variableParam.typeInfo)) - ) { - return false; - } - } - - return true; - }); - - let paramsCode = ""; - for (let i = 0, length = params.length; i < length; i++) { - const node = params[i]; - const code = node.codeGen(this); - - if (node instanceof ASTNode.MacroCallArgBlock || i === 0) { - paramsCode += code; - } else { - paramsCode += `, ${code}`; - } - } - - return `${node.macroName}(${paramsCode})`; - } else { - return this.defaultCodeGen(node.children); - } - } - - visitStatementList(node: ASTNode.StatementList): string { - const children = node.children as TreeNode[]; - if (children.length === 1) { - return children[0].codeGen(this); - } else { - return `${children[0].codeGen(this)}\n${children[1].codeGen(this)}`; - } - } - - visitSingleDeclaration(node: ASTNode.SingleDeclaration): string { - const type = node.typeSpecifier.type; - if (typeof type === "string") { - VisitorContext.context.referenceGlobal(type, ESymbolType.STRUCT); - } - return this.defaultCodeGen(node.children); - } - - visitGlobalVariableDeclaration(node: ASTNode.VariableDeclaration): string { - const children = node.children; - const fullType = children[0]; - if (fullType instanceof ASTNode.FullySpecifiedType && fullType.typeSpecifier.isCustom) { - VisitorContext.context.referenceGlobal(fullType.type, ESymbolType.STRUCT); - } - return `uniform ${this.defaultCodeGen(children)}`; - } - - visitDeclaration(node: ASTNode.Declaration): string { - const { context } = VisitorContext; - const children = node.children; - const child = children[0]; - - if (child instanceof ASTNode.InitDeclaratorList) { - const typeLexeme = child.typeInfo.typeLexeme; - if (context.isVaryingStruct(typeLexeme) || context.isMRTStruct(typeLexeme)) return ""; - } - return this.defaultCodeGen(children); - } - - visitFunctionParameterList(node: ASTNode.FunctionParameterList): string { - const params = node.parameterInfoList.filter( - (item) => - !item.typeInfo || - (!VisitorContext.context.isAttributeStruct(item.typeInfo.typeLexeme) && - !VisitorContext.context.isVaryingStruct(item.typeInfo.typeLexeme) && - !VisitorContext.context.isMRTStruct(item.typeInfo.typeLexeme)) - ); - - let out = ""; - for (let i = 0, length = params.length; i < length; i++) { - const item = params[i]; - const astNode = item.astNode; - const code = astNode.codeGen(this); - if (astNode instanceof ASTNode.MacroParamBlock || i === 0) { - out += code; - } else { - out += `, ${code}`; - } - } - - return out; - } - - visitFunctionHeader(node: ASTNode.FunctionHeader): string { - const returnType = node.returnType.typeSpecifier.lexeme; - if (VisitorContext.context.isVaryingStruct(returnType)) { - return `void ${node.ident.lexeme}(`; - } - return this.defaultCodeGen(node.children); - } - - visitJumpStatement(node: ASTNode.JumpStatement): string { - const children = node.children; - const cmd = children[0] as BaseToken; - if (cmd.type === Keyword.RETURN) { - const expr = children[1]; - if (expr instanceof ASTNode.Expression) { - const returnVar = ParserUtils.unwrapNodeByType( - expr, - NoneTerminal.variable_identifier - ); - if (VisitorContext.context.isVaryingStruct(returnVar?.typeInfo)) { - return ""; - } - const returnFnCall = ParserUtils.unwrapNodeByType(expr, NoneTerminal.function_call); - if (VisitorContext.context.isVaryingStruct(returnFnCall?.type)) { - return `${expr.codeGen(this)};`; - } - } - } - return this.defaultCodeGen(children); - } - - visitFunctionIdentifier(node: ASTNode.FunctionIdentifier): string { - return this.defaultCodeGen(node.children); - } - - visitStructSpecifier(node: ASTNode.StructSpecifier): string { - const context = VisitorContext.context; - const { varyingStructs, attributeStructs, mrtStructs } = context; - const isVaryingStruct = varyingStructs.indexOf(node) !== -1; - const isAttributeStruct = attributeStructs.indexOf(node) !== -1; - const isMRTStruct = mrtStructs.indexOf(node) !== -1; - - if (isVaryingStruct && isAttributeStruct) { - this._reportError(node.location, "cannot use same struct as Varying and Attribute"); - } - - if (isVaryingStruct && isMRTStruct) { - this._reportError(node.location, "cannot use same struct as Varying and MRT"); - } - - if (isAttributeStruct && isMRTStruct) { - this._reportError(node.location, "cannot use same struct as Attribute and MRT"); - } - - if (isVaryingStruct || isAttributeStruct || isMRTStruct) { - let result: ICodeSegment[] = []; - - result.push( - ...node.macroExpressions.map((item) => ({ - text: item instanceof BaseToken ? item.lexeme : item.codeGen(this), - index: item.location.start.index - })) - ); - - for (const prop of node.propList) { - const name = prop.ident.lexeme; - if (isVaryingStruct && context._referencedVaryingList[name]?.indexOf(prop) >= 0) { - result.push({ - text: `${this.getVaryingProp(prop)}\n`, - index: prop.ident.location.start.index - }); - } else if (isAttributeStruct && context._referencedAttributeList[name]?.indexOf(prop) >= 0) { - result.push({ - text: `${this.getAttributeProp(prop)}\n`, - index: prop.ident.location.start.index - }); - } else if (isMRTStruct && context._referencedMRTList[name]?.indexOf(prop) >= 0) { - result.push({ - text: `${this.getMRTProp(prop)}\n`, - index: prop.ident.location.start.index - }); - } - } - - const text = result - .sort((a, b) => a.index - b.index) - .map((item) => item.text) - .join(""); - - return text; - } else { - return this.defaultCodeGen(node.children); - } - } - - visitFunctionDefinition(fnNode: ASTNode.FunctionDefinition): string { - const fnName = fnNode.protoType.ident.lexeme; - const context = VisitorContext.context; - - if (fnName == context.stageEntry) { - const statements = fnNode.statements.codeGen(this); - return `void main() ${statements}`; - } else { - return this.defaultCodeGen(fnNode.children); - } - } - - protected _reportError(loc: ShaderRange | ShaderPosition, message: string): void { - // #if _VERBOSE - this.errors.push(new GSError(GSErrorName.CompilationError, message, loc, ShaderLab._processingPassText)); - // #else - Logger.error(message); - // #endif - } -} diff --git a/packages/shader-lab/src/codeGen/GLES100.ts b/packages/shader-lab/src/codeGen/GLES100.ts deleted file mode 100644 index 995dccdee..000000000 --- a/packages/shader-lab/src/codeGen/GLES100.ts +++ /dev/null @@ -1,54 +0,0 @@ -import { BaseToken } from "../common/BaseToken"; -import { ASTNode } from "../parser/AST"; -import { StructProp } from "../parser/types"; -import { GLESVisitor } from "./GLESVisitor"; -import { VisitorContext } from "./VisitorContext"; - -export class GLES100Visitor extends GLESVisitor { - private static _singleton: GLES100Visitor; - static getVisitor(): GLES100Visitor { - if (!this._singleton) { - this._singleton = new GLES100Visitor(); - } - return this._singleton; - } - - override getAttributeProp(prop: StructProp): string { - return `attribute ${prop.typeInfo.typeLexeme} ${prop.ident.lexeme};`; - } - - override getVaryingProp(prop: StructProp): string { - return `varying ${prop.typeInfo.typeLexeme} ${prop.ident.lexeme};`; - } - - override getMRTProp(): string { - return null; - } - - override visitPostfixExpression(node: ASTNode.PostfixExpression): string { - const { children } = node; - const postExpr = children[0]; - const { context } = VisitorContext; - if (postExpr instanceof ASTNode.PostfixExpression && context.isMRTStruct(postExpr.type)) { - const propReferenced = children[2] as BaseToken; - const prop = context.mrtList.find((item) => item.ident.lexeme === propReferenced.lexeme); - if (!prop) { - this._reportError(propReferenced.location, `not found mrt property: ${propReferenced.lexeme}`); - return ""; - } - return `gl_FragData[${prop.mrtIndex!}]`; - } - return super.visitPostfixExpression(node); - } - - override visitJumpStatement(node: ASTNode.JumpStatement): string { - if (node.isFragReturnStatement) { - if (VisitorContext.context.mrtStructs.length) { - return ""; - } - const expression = node.children[1] as ASTNode.Expression; - return `gl_FragColor = ${expression.codeGen(this)}`; - } - return super.visitJumpStatement(node); - } -} diff --git a/packages/shader-lab/src/codeGen/GLES300.ts b/packages/shader-lab/src/codeGen/GLES300.ts deleted file mode 100644 index 065f0c166..000000000 --- a/packages/shader-lab/src/codeGen/GLES300.ts +++ /dev/null @@ -1,121 +0,0 @@ -import { EShaderStage } from "../common/enums/ShaderStage"; -import { ASTNode } from "../parser/AST"; -import { ShaderData } from "../parser/ShaderInfo"; -import { StructProp } from "../parser/types"; -import { GLESVisitor } from "./GLESVisitor"; -import { ICodeSegment } from "./types"; -import { VisitorContext } from "./VisitorContext"; - -const V3_GL_FragColor = "GS_glFragColor"; - -export class GLES300Visitor extends GLESVisitor { - private static _singleton: GLES300Visitor; - static getVisitor(): GLES300Visitor { - if (!this._singleton) { - this._singleton = new GLES300Visitor(); - } - return this._singleton; - } - - private _otherCodeArray: ICodeSegment[] = []; - private _fragColorVariableRegistered = false; - - override reset(): void { - super.reset(); - - this._otherCodeArray.length = 0; - this._fragColorVariableRegistered = false; - } - - override getOtherGlobal(data: ShaderData, out: ICodeSegment[]): void { - super.getOtherGlobal(data, out); - - for (let i = 0, n = this._otherCodeArray.length; i < n; i++) { - out.push(this._otherCodeArray[i]); - } - } - - override getAttributeProp(prop: StructProp): string { - return `in ${prop.typeInfo.typeLexeme} ${prop.ident.lexeme};`; - } - - override getVaryingProp(prop: StructProp): string { - const qualifier = VisitorContext.context.stage === EShaderStage.FRAGMENT ? "in" : "out"; - return `${qualifier} ${prop.typeInfo.typeLexeme} ${prop.ident.lexeme};`; - } - - override getMRTProp(prop: StructProp): string { - return `layout(location = ${prop.mrtIndex}) out vec4 ${prop.ident.lexeme};`; - } - - override visitFunctionIdentifier(node: ASTNode.FunctionIdentifier): string { - const children = node.children; - const typeSpecifier = children[0] as ASTNode.TypeSpecifier; - if (typeSpecifier.children.length !== 1) { - return this.defaultCodeGen(children); - } - let ident = node.lexeme; - switch (node.ident) { - case "texture2D": - case "textureCube": - ident = "texture"; - break; - case "texture2DProj": - ident = "textureProj"; - break; - case "texture2DLodEXT": - case "textureCubeLodEXT": - ident = "textureLod"; - break; - case "texture2DGradEXT": - case "textureCubeGradEXT": - ident = "textureGrad"; - break; - case "texture2DProjLodEXT": - ident = "textureProjLod"; - break; - case "texture2DProjGradEXT": - ident = "textureProjGrad"; - break; - case "gl_FragDepthEXT": - ident = "gl_FragDepth"; - break; - } - return ident; - } - - override visitVariableIdentifier(node: ASTNode.VariableIdentifier): string { - const { context } = VisitorContext; - if (context.stage === EShaderStage.FRAGMENT && node.getLexeme(this) === "gl_FragColor") { - if (context.mrtStructs.length) { - this._reportError(node.location, "gl_FragColor cannot be used with MRT (Multiple Render Targets)."); - return; - } - this._registerFragColorVariable(); - return V3_GL_FragColor; - } - return super.visitVariableIdentifier(node); - } - - override visitJumpStatement(node: ASTNode.JumpStatement): string { - if (node.isFragReturnStatement) { - if (VisitorContext.context.mrtStructs.length) { - return ""; - } - this._registerFragColorVariable(); - - const expression = node.children[1] as ASTNode.Expression; - return `${V3_GL_FragColor} = ${expression.codeGen(this)};`; - } - return super.visitJumpStatement(node); - } - - private _registerFragColorVariable() { - if (this._fragColorVariableRegistered) return; - this._otherCodeArray.push({ - text: `out vec4 ${V3_GL_FragColor};`, - index: 0 - }); - this._fragColorVariableRegistered = true; - } -} diff --git a/packages/shader-lab/src/codeGen/GLESVisitor.ts b/packages/shader-lab/src/codeGen/GLESVisitor.ts deleted file mode 100644 index fbf611729..000000000 --- a/packages/shader-lab/src/codeGen/GLESVisitor.ts +++ /dev/null @@ -1,326 +0,0 @@ -import { IShaderInfo } from "@galacean/engine-design"; -import { BaseToken } from "../common/BaseToken"; -import { EShaderStage } from "../common/enums/ShaderStage"; -import { Keyword } from "../common/enums/Keyword"; -import { ASTNode, TreeNode } from "../parser/AST"; -import { ShaderData } from "../parser/ShaderInfo"; -import { ESymbolType, FnSymbol, StructSymbol, SymbolInfo } from "../parser/symbolTable"; -import { CodeGenVisitor } from "./CodeGenVisitor"; -import { ICodeSegment } from "./types"; -import { VisitorContext } from "./VisitorContext"; - -/** - * @internal - */ -export abstract class GLESVisitor extends CodeGenVisitor { - private _globalCodeArray: ICodeSegment[] = []; - private static _lookupSymbol: SymbolInfo = new SymbolInfo("", null); - private static _serializedGlobalKey = new Set(); - - reset(): void { - const { _globalCodeArray: globalCodeArray } = this; - globalCodeArray.length = 0; - GLESVisitor._serializedGlobalKey.clear(); - } - - getOtherGlobal(data: ShaderData, out: ICodeSegment[]): void { - for (const precision of data.globalPrecisions) { - out.push({ text: precision.codeGen(this), index: precision.location.start.index }); - } - } - - visitShaderProgram(node: ASTNode.GLShaderProgram, vertexEntry: string, fragmentEntry: string): IShaderInfo { - // #if _VERBOSE - this.errors.length = 0; - // #endif - VisitorContext.reset(); - this.reset(); - - const shaderData = node.shaderData; - VisitorContext.context._passSymbolTable = shaderData.symbolTable; - - const outerGlobalMacroDeclarations = shaderData.getOuterGlobalMacroDeclarations(); - - return { - vertex: this._vertexMain(vertexEntry, shaderData, outerGlobalMacroDeclarations), - fragment: this._fragmentMain(fragmentEntry, shaderData, outerGlobalMacroDeclarations) - }; - } - - private _vertexMain( - entry: string, - data: ShaderData, - outerGlobalMacroDeclarations: ASTNode.GlobalDeclaration[] - ): string { - const context = VisitorContext.context; - context.stage = EShaderStage.VERTEX; - context.stageEntry = entry; - - const lookupSymbol = GLESVisitor._lookupSymbol; - const symbolTable = data.symbolTable; - lookupSymbol.set(entry, ESymbolType.FN); - const fnSymbols = symbolTable.getSymbols(lookupSymbol, true, []); - if (!fnSymbols.length) throw `no entry function found: ${entry}`; - - const { attributeStructs, attributeList, varyingStructs, varyingList } = context; - fnSymbols.forEach((fnSymbol) => { - const fnNode = fnSymbol.astNode; - const returnType = fnNode.protoType.returnType; - - if (typeof returnType.type === "string") { - lookupSymbol.set(returnType.type, ESymbolType.STRUCT); - const varyingSymbols = symbolTable.getSymbols(lookupSymbol, true, []); - if (!varyingSymbols.length) { - this._reportError(returnType.location, `invalid varying struct: "${returnType.type}".`); - } else { - for (let i = 0; i < varyingSymbols.length; i++) { - const varyingSymbol = varyingSymbols[i]; - const astNode = varyingSymbol.astNode; - varyingStructs.push(astNode); - for (const prop of astNode.propList) { - varyingList.push(prop); - } - } - } - } else if (returnType.type !== Keyword.VOID) { - this._reportError(returnType.location, "vertex main entry can only return struct or void."); - } - - const paramList = fnNode.protoType.parameterList; - const attributeParam = paramList?.[0]; - if (attributeParam) { - const attributeType = attributeParam.typeInfo.type; - if (typeof attributeType === "string") { - lookupSymbol.set(attributeType, ESymbolType.STRUCT); - const attributeSymbols = symbolTable.getSymbols(lookupSymbol, true, []); - if (!attributeSymbols.length) { - this._reportError(attributeParam.astNode.location, `invalid attribute struct: "${attributeType}".`); - } else { - for (let i = 0; i < attributeSymbols.length; i++) { - const attributeSymbol = attributeSymbols[i]; - const astNode = attributeSymbol.astNode; - attributeStructs.push(astNode); - for (const prop of astNode.propList) { - attributeList.push(prop); - } - } - } - } - } - }); - - const globalCodeArray = this._globalCodeArray; - VisitorContext.context.referenceGlobal(entry, ESymbolType.FN); - - this._getGlobalSymbol(globalCodeArray); - this._getCustomStruct(context.attributeStructs, globalCodeArray); - this._getCustomStruct(context.varyingStructs, globalCodeArray); - this._getGlobalMacroDeclarations(outerGlobalMacroDeclarations, globalCodeArray); - this.getOtherGlobal(data, globalCodeArray); - - const globalCode = globalCodeArray - .sort((a, b) => a.index - b.index) - .map((item) => item.text) - .join("\n"); - - VisitorContext.context.reset(false); - this.reset(); - - return globalCode; - } - - private _fragmentMain( - entry: string, - data: ShaderData, - outerGlobalMacroStatements: ASTNode.GlobalDeclaration[] - ): string { - const context = VisitorContext.context; - context.stage = EShaderStage.FRAGMENT; - context.stageEntry = entry; - - const lookupSymbol = GLESVisitor._lookupSymbol; - const { symbolTable } = data; - lookupSymbol.set(entry, ESymbolType.FN); - const fnSymbols = symbolTable.getSymbols(lookupSymbol, true, []); - if (!fnSymbols?.length) throw `no entry function found: ${entry}`; - - fnSymbols.forEach((fnSymbol) => { - const fnNode = fnSymbol.astNode; - const { returnStatement } = fnNode; - - if (returnStatement) { - returnStatement.isFragReturnStatement = true; - } - - const { type: returnDataType, location: returnLocation } = fnNode.protoType.returnType; - if (typeof returnDataType === "string") { - lookupSymbol.set(returnDataType, ESymbolType.STRUCT); - const mrtSymbols = symbolTable.getSymbols(lookupSymbol, true, []); - if (!mrtSymbols.length) { - this._reportError(returnLocation, `invalid mrt struct: ${returnDataType}`); - } else { - for (let i = 0; i < mrtSymbols.length; i++) { - const mrtSymbol = mrtSymbols[i]; - const astNode = mrtSymbol.astNode; - context.mrtStructs.push(astNode); - for (const prop of astNode.propList) { - context.mrtList.push(prop); - } - } - } - } else if (returnDataType !== Keyword.VOID && returnDataType !== Keyword.VEC4) { - this._reportError(returnLocation, "fragment main entry can only return struct or vec4."); - } - }); - - const globalCodeArray = this._globalCodeArray; - VisitorContext.context.referenceGlobal(entry, ESymbolType.FN); - - this._getGlobalSymbol(globalCodeArray); - this._getCustomStruct(context.varyingStructs, globalCodeArray); - this._getCustomStruct(context.mrtStructs, globalCodeArray); - this._getGlobalMacroDeclarations(outerGlobalMacroStatements, globalCodeArray); - this.getOtherGlobal(data, globalCodeArray); - - const globalCode = globalCodeArray - .sort((a, b) => a.index - b.index) - .map((item) => item.text) - .join("\n"); - - context.reset(); - this.reset(); - - return globalCode; - } - - private _getGlobalSymbol(out: ICodeSegment[]): void { - const { _referencedGlobals } = VisitorContext.context; - - const lastLength = Object.keys(_referencedGlobals).length; - if (lastLength === 0) return; - - for (const ident in _referencedGlobals) { - if (GLESVisitor._serializedGlobalKey.has(ident)) continue; - GLESVisitor._serializedGlobalKey.add(ident); - - const symbols = _referencedGlobals[ident]; - for (let i = 0; i < symbols.length; i++) { - const sm = symbols[i]; - const text = sm.astNode.codeGen(this) + (sm.type === ESymbolType.VAR ? ";" : ""); - if (!sm.isInMacroBranch) { - out.push({ - text, - index: sm.astNode.location.start.index - }); - } - } - } - - if (Object.keys(_referencedGlobals).length !== lastLength) { - this._getGlobalSymbol(out); - } - } - - private _getCustomStruct(structNodes: ASTNode.StructSpecifier[], out: ICodeSegment[]): void { - for (const node of structNodes) { - const text = node.codeGen(this); - - if (!node.isInMacroBranch) { - out.push({ text, index: node.location.start.index }); - } - } - } - - private _getGlobalMacroDeclarations(macros: ASTNode.GlobalDeclaration[], out: ICodeSegment[]): void { - const context = VisitorContext.context; - const referencedGlobals = context._referencedGlobals; - const referencedGlobalMacroASTs = context._referencedGlobalMacroASTs; - referencedGlobalMacroASTs.length = 0; - - for (const symbols of Object.values(referencedGlobals)) { - for (const symbol of symbols) { - if (symbol.isInMacroBranch) { - referencedGlobalMacroASTs.push(symbol.astNode); - } - } - } - - for (const macro of macros) { - let text: string; - const child = macro.children[0]; - - if (child instanceof ASTNode.GlobalMacroIfStatement) { - let result: ICodeSegment[] = []; - result.push( - ...macro.macroExpressions.map((item) => ({ - text: item instanceof BaseToken ? item.lexeme : item.codeGen(this), - index: item.location.start.index - })) - ); - - this._visitGlobalMacroIfStatement(child, result); - - text = result - .sort((a, b) => a.index - b.index) - .map((item) => item.text) - .join("\n"); - } else { - text = macro.codeGen(this); - } - - out.push({ - text, - index: macro.location.start.index - }); - } - } - - private _visitGlobalMacroIfStatement(node: TreeNode, out: ICodeSegment[]): void { - const children = node.children; - for (let i = 0; i < children.length; i++) { - const child = children[i]; - if (child instanceof ASTNode.PrecisionSpecifier) { - out.push({ - text: child.codeGen(this), - index: child.location.start.index - }); - } else if (child instanceof ASTNode.FunctionDefinition) { - if (VisitorContext.context._referencedGlobalMacroASTs.indexOf(child) !== -1) { - out.push({ - text: child.getCache(), // code has generated in `_getGlobalSymbol` - index: child.location.start.index - }); - } - } else if (child instanceof ASTNode.StructSpecifier) { - const context = VisitorContext.context; - const stage = context.stage; - if ( - VisitorContext.context._referencedGlobalMacroASTs.indexOf(child) !== -1 || - (stage === EShaderStage.VERTEX - ? context.isAttributeStruct(child.ident?.lexeme) || context.isVaryingStruct(child.ident?.lexeme) - : context.isVaryingStruct(child.ident?.lexeme) || context.isMRTStruct(child.ident?.lexeme)) - ) { - out.push({ - text: child.getCache(), // code has generated in `_getGlobalSymbol` or `_getCustomStruct` - index: child.location.start.index - }); - } - } else if (child instanceof ASTNode.VariableDeclarationList) { - const variableDeclarations = child.variableDeclarations; - for (let i = 0; i < variableDeclarations.length; i++) { - const variableDeclaration = variableDeclarations[i]; - if (VisitorContext.context._referencedGlobalMacroASTs.indexOf(variableDeclaration) !== -1) { - out.push({ - text: variableDeclaration.getCache() + ";", // code has generated in `_getGlobalSymbol` - index: variableDeclaration.location.start.index - }); - } - } - } - - if (child instanceof TreeNode) { - this._visitGlobalMacroIfStatement(child, out); - } - } - } -} diff --git a/packages/shader-lab/src/codeGen/VisitorContext.ts b/packages/shader-lab/src/codeGen/VisitorContext.ts deleted file mode 100644 index 25211f008..000000000 --- a/packages/shader-lab/src/codeGen/VisitorContext.ts +++ /dev/null @@ -1,130 +0,0 @@ -import { BaseToken } from "../common/BaseToken"; -import { EShaderStage } from "../common/enums/ShaderStage"; -import { SymbolTable } from "../common/SymbolTable"; -import { GSErrorName } from "../GSError"; -import { ASTNode, TreeNode } from "../parser/AST"; -import { ESymbolType, SymbolInfo } from "../parser/symbolTable"; -import { StructProp } from "../parser/types"; -import { ShaderLab } from "../ShaderLab"; -import { ShaderLabUtils } from "../ShaderLabUtils"; - -/** @internal */ -export class VisitorContext { - private static _lookupSymbol: SymbolInfo = new SymbolInfo("", null); - private static _singleton: VisitorContext; - static get context() { - return this._singleton; - } - - static reset() { - if (!this._singleton) { - this._singleton = new VisitorContext(); - } - this._singleton.reset(); - } - - attributeStructs: ASTNode.StructSpecifier[] = []; - attributeList: StructProp[] = []; - varyingStructs: ASTNode.StructSpecifier[] = []; - varyingList: StructProp[] = []; - mrtStructs: ASTNode.StructSpecifier[] = []; - mrtList: StructProp[] = []; - - stage: EShaderStage; - stageEntry: string; - - _referencedAttributeList: Record; - _referencedVaryingList: Record; - _referencedMRTList: Record; - _referencedGlobals: Record; - _referencedGlobalMacroASTs: TreeNode[] = []; - - _passSymbolTable: SymbolTable; - - reset(resetAll = true) { - if (resetAll) { - this.attributeStructs.length = 0; - this.attributeList.length = 0; - this.varyingStructs.length = 0; - this.varyingList.length = 0; - this.mrtStructs.length = 0; - this.mrtList.length = 0; - } - - this._referencedAttributeList = Object.create(null); - this._referencedVaryingList = Object.create(null); - this._referencedMRTList = Object.create(null); - this._referencedGlobals = Object.create(null); - this._referencedGlobalMacroASTs.length = 0; - } - - isAttributeStruct(type: string) { - return this.attributeStructs.findIndex((item) => item.ident!.lexeme === type) !== -1; - } - - isVaryingStruct(type: string) { - return this.varyingStructs.findIndex((item) => item.ident!.lexeme === type) !== -1; - } - - isMRTStruct(type: string) { - return this.mrtStructs.findIndex((item) => item.ident!.lexeme === type) !== -1; - } - - referenceAttribute(ident: BaseToken): Error | void { - const lexeme = ident.lexeme; - if (this._referencedAttributeList[lexeme]) return; - - const props = this.attributeList.filter((item) => item.ident.lexeme === lexeme); - if (!props.length) { - return ShaderLabUtils.createGSError( - `referenced attribute not found: ${lexeme}`, - GSErrorName.CompilationError, - ShaderLab._processingPassText, - ident.location - ); - } - this._referencedAttributeList[lexeme] = props; - } - - referenceVarying(ident: BaseToken): Error | void { - const lexeme = ident.lexeme; - if (this._referencedVaryingList[lexeme]) return; - - const props = this.varyingList.filter((item) => item.ident.lexeme === lexeme); - if (!props.length) { - return ShaderLabUtils.createGSError( - `referenced varying not found: ${lexeme}`, - GSErrorName.CompilationError, - ShaderLab._processingPassText, - ident.location - ); - } - this._referencedVaryingList[lexeme] = props; - } - - referenceMRTProp(ident: BaseToken): Error | void { - const lexeme = ident.lexeme; - if (this._referencedMRTList[lexeme]) return; - - const props = this.mrtList.filter((item) => item.ident.lexeme === lexeme); - if (!props.length) { - return ShaderLabUtils.createGSError( - `referenced mrt not found: ${lexeme}`, - GSErrorName.CompilationError, - ShaderLab._processingPassText, - ident.location - ); - } - this._referencedMRTList[lexeme] = props; - } - - referenceGlobal(ident: string, type: ESymbolType): void { - if (this._referencedGlobals[ident]) return; - - this._referencedGlobals[ident] = []; - - const lookupSymbol = VisitorContext._lookupSymbol; - lookupSymbol.set(ident, type); - this._passSymbolTable.getSymbols(lookupSymbol, true, this._referencedGlobals[ident]); - } -} diff --git a/packages/shader-lab/src/codeGen/index.ts b/packages/shader-lab/src/codeGen/index.ts deleted file mode 100644 index 7045b5847..000000000 --- a/packages/shader-lab/src/codeGen/index.ts +++ /dev/null @@ -1,3 +0,0 @@ -export { GLES100Visitor } from "./GLES100"; -export { GLES300Visitor } from "./GLES300"; -export { CodeGenVisitor } from "./CodeGenVisitor"; diff --git a/packages/shader-lab/src/codeGen/types.ts b/packages/shader-lab/src/codeGen/types.ts deleted file mode 100644 index 88825d338..000000000 --- a/packages/shader-lab/src/codeGen/types.ts +++ /dev/null @@ -1,12 +0,0 @@ -import { IShaderSource } from "@galacean/engine-design"; - -export type IRenderState = [ - /** Constant RenderState. */ - Record, - /** Variable RenderState. */ - Record -]; - -export type ITag = IShaderSource["subShaders"][number]["tags"]; - -export type ICodeSegment = { text: string; index: number }; diff --git a/packages/shader-lab/src/common/BaseLexer.ts b/packages/shader-lab/src/common/BaseLexer.ts deleted file mode 100644 index 71b543700..000000000 --- a/packages/shader-lab/src/common/BaseLexer.ts +++ /dev/null @@ -1,241 +0,0 @@ -import { Logger } from "@galacean/engine"; -import { ShaderPosition, ShaderRange } from "."; -import { GSErrorName } from "../GSError"; -import { ShaderLab } from "../ShaderLab"; -import { ShaderLabUtils } from "../ShaderLabUtils"; -import { BaseToken } from "./BaseToken"; - -export type OnToken = (token: BaseToken, scanner: BaseLexer) => void; - -/** - * @internal - */ -export abstract class BaseLexer { - static isDigit(charCode: number): boolean { - return charCode >= 48 && charCode <= 57; // 0-9 - } - - // Check if character is alphabetic or underscore (valid word start) - static isAlpha(charCode: number): boolean { - return ( - charCode === 95 || // _ - (charCode >= 65 && charCode <= 90) || // A-Z - (charCode >= 97 && charCode <= 122) // a-z - ); - } - - // Check if character is alphanumeric (alpha + digit) - static isAlnum(charCode: number): boolean { - return BaseLexer.isAlpha(charCode) || BaseLexer.isDigit(charCode); - } - - static isPreprocessorStartChar(charCode: number): boolean { - return charCode === 35; // # - } - - static isWhiteSpaceChar(charCode: number, includeBreak: boolean): boolean { - // Space || Tab - if (charCode === 32 || charCode === 9) { - return true; - } - return includeBreak && (charCode === 10 || charCode === 13); // \n || \r - } - - protected _currentIndex = 0; - protected _source: string; - - // #if _VERBOSE - protected _column = 0; - protected _line = 0; - // #endif - - get currentIndex(): number { - return this._currentIndex; - } - - get source(): string { - return this._source; - } - - // #if _VERBOSE - get line() { - return this._line; - } - - get column() { - return this._column; - } - // #endif - - constructor(source?: string) { - this._source = source; - } - - setSource(source: string): void { - this._source = source; - this._currentIndex = 0; - // #if _VERBOSE - this._line = this._column = 0; - // #endif - } - - getShaderPosition(backOffset = 0): ShaderPosition { - return ShaderLab.createPosition( - this._currentIndex - backOffset, - // #if _VERBOSE - this._line, - this._column - backOffset - // #endif - ); - } - - isEnd(): boolean { - return this._currentIndex >= this._source.length; - } - - getCurChar(): string { - return this._source[this._currentIndex]; - } - - getCurCharCode(): number { - return this._source.charCodeAt(this._currentIndex); - } - - advance(count: number): void { - // #if _VERBOSE - const source = this._source; - const startIndex = this._currentIndex; - for (let i = 0; i < count; i++) { - if (source[startIndex + i] === "\n") { - this._line += 1; - this._column = 0; - } else { - this._column += 1; - } - } - // #endif - this._currentIndex += count; - } - - skipSpace(includeLineBreak: boolean): void { - while (BaseLexer.isWhiteSpaceChar(this.getCurCharCode(), includeLineBreak)) { - this.advance(1); - } - } - - skipCommentsAndSpace(): void { - const source = this._source; - const length = source.length; - let index = this._currentIndex; - - while (index < length) { - // Skip whitespace - while (index < length && BaseLexer.isWhiteSpaceChar(source.charCodeAt(index), true)) { - index++; - } - - // Check for comments: 47 is '/' - if (index + 1 >= length || source.charCodeAt(index) !== 47) break; - - const nextChar = source.charCodeAt(index + 1); - if (nextChar === 47) { - // Single line comment: 10 is '\n', 13 is '\r' - index += 2; - while (index < length) { - const charCode = source.charCodeAt(index); - if (charCode === 10 || charCode === 13) break; - index++; - } - } else if (nextChar === 42) { - // Multi-line comment: 42 is '*' - index += 2; - while (index + 1 < length && !(source.charCodeAt(index) === 42 && source.charCodeAt(index + 1) === 47)) { - index++; - } - index += 2; // Skip '*/' - } else { - break; // Not a comment, stop - } - } - - this.advance(index - this._currentIndex); - } - - peek(to: number): string { - const offset = this._currentIndex; - return this._source.substring(offset, offset + to); - } - - scanLexeme(lexeme: string): void { - this.skipCommentsAndSpace(); - const length = lexeme.length; - const peek = this.peek(length); - if (peek !== lexeme) { - this.throwError(this.getShaderPosition(0), `Expect lexeme "${lexeme}", but got "${peek}"`); - } - this.advance(length); - } - - scanTwoExpectedLexemes(lexeme1: string, lexeme2: string): string | null { - this.skipCommentsAndSpace(); - - // Check first lexeme - if (this.peek(lexeme1.length) === lexeme1) { - this.advance(lexeme1.length); - return lexeme1; - } - - // Check second lexeme - if (this.peek(lexeme2.length) === lexeme2) { - this.advance(lexeme2.length); - return lexeme2; - } - - return null; - } - - throwError(pos: ShaderPosition | ShaderRange, ...msgs: any[]) { - const error = ShaderLabUtils.createGSError(msgs.join(" "), GSErrorName.ScannerError, this._source, pos); - // #if _VERBOSE - Logger.error(error!.toString()); - // #endif - throw error; - } - - scanPairedChar(left: string, right: string, balanced: boolean, skipLeading: boolean): string { - if (!skipLeading) { - this.scanLexeme(left); - } - - const start = this._currentIndex; - const source = this._source; - const sourceLength = source.length; - - let currentIndex = this._currentIndex; - if (balanced) { - let level = 1; - while (currentIndex < sourceLength) { - const currentChar = source[currentIndex]; - if (currentChar === right && --level === 0) { - break; - } else if (currentChar === left) { - level++; - } - currentIndex++; - } - } else { - while (currentIndex < sourceLength) { - if (source[currentIndex] === right) { - break; - } - currentIndex++; - } - } - - this.advance(currentIndex + 1 - this._currentIndex); - - return source.substring(start, currentIndex); - } - - abstract scanToken(onToken?: OnToken): void; -} diff --git a/packages/shader-lab/src/common/BaseToken.ts b/packages/shader-lab/src/common/BaseToken.ts deleted file mode 100644 index 21d9a2aba..000000000 --- a/packages/shader-lab/src/common/BaseToken.ts +++ /dev/null @@ -1,39 +0,0 @@ -import { ETokenType } from "./types"; -import { ShaderRange, ShaderPosition } from "."; -import { ShaderLab } from "../ShaderLab"; -import { IPoolElement } from "@galacean/engine"; -import { ShaderLabUtils } from "../ShaderLabUtils"; - -export class BaseToken implements IPoolElement { - static pool = ShaderLabUtils.createObjectPool(BaseToken); - - type: T; - lexeme: string; - location: ShaderRange; - - set(type: T, lexeme: string, start?: ShaderPosition); - set(type: T, lexeme: string, location?: ShaderRange); - set(type: T, lexeme: string, arg?: ShaderRange | ShaderPosition) { - this.type = type; - this.lexeme = lexeme; - if (arg) { - if (arg instanceof ShaderRange) { - this.location = arg as ShaderRange; - } else { - const end = ShaderLab.createPosition( - arg.index + lexeme.length, - // #if _VERBOSE - arg.line, - arg.column + lexeme.length - // #endif - ); - this.location = ShaderLab.createRange(arg, end); - } - } - } - - dispose(): void {} -} - -export const EOF = new BaseToken(); -EOF.set(ETokenType.EOF, "/EOF"); diff --git a/packages/shader-lab/src/common/IBaseSymbol.ts b/packages/shader-lab/src/common/IBaseSymbol.ts deleted file mode 100644 index d108ff083..000000000 --- a/packages/shader-lab/src/common/IBaseSymbol.ts +++ /dev/null @@ -1,7 +0,0 @@ -export interface IBaseSymbol { - isInMacroBranch: boolean; - - readonly ident: string; - - equal(other: IBaseSymbol): boolean; -} diff --git a/packages/shader-lab/src/common/ShaderPosition.ts b/packages/shader-lab/src/common/ShaderPosition.ts deleted file mode 100644 index 9dc3820b3..000000000 --- a/packages/shader-lab/src/common/ShaderPosition.ts +++ /dev/null @@ -1,31 +0,0 @@ -import { IPoolElement } from "@galacean/engine"; - -export class ShaderPosition implements IPoolElement { - index: number; - // #if _VERBOSE - line: number; - column: number; - // #endif - - set( - index: number, - // #if _VERBOSE - line: number, - column: number - // #endif - ) { - this.index = index; - // #if _VERBOSE - this.line = line; - this.column = column; - // #endif - } - - dispose(): void { - this.index = 0; - // #if _VERBOSE - this.line = 0; - this.column = 0; - // #endif - } -} diff --git a/packages/shader-lab/src/common/ShaderRange.ts b/packages/shader-lab/src/common/ShaderRange.ts deleted file mode 100644 index 6ead5e85d..000000000 --- a/packages/shader-lab/src/common/ShaderRange.ts +++ /dev/null @@ -1,17 +0,0 @@ -import { IPoolElement } from "@galacean/engine"; -import { ShaderPosition } from "./ShaderPosition"; - -export class ShaderRange implements IPoolElement { - public start: ShaderPosition; - public end: ShaderPosition; - - set(start: ShaderPosition, end: ShaderPosition) { - this.start = start; - this.end = end; - } - - dispose(): void { - this.start.dispose(); - this.end.dispose(); - } -} diff --git a/packages/shader-lab/src/common/SymbolTable.ts b/packages/shader-lab/src/common/SymbolTable.ts deleted file mode 100644 index 89a7ba99b..000000000 --- a/packages/shader-lab/src/common/SymbolTable.ts +++ /dev/null @@ -1,58 +0,0 @@ -import { Logger } from "@galacean/engine"; -import { IBaseSymbol } from "./IBaseSymbol"; - -export class SymbolTable { - private _table: Map = new Map(); - - insert(symbol: T, isInMacroBranch = false): void { - symbol.isInMacroBranch = isInMacroBranch; - - const entry = this._table.get(symbol.ident) ?? []; - for (let i = 0, n = entry.length; i < n; i++) { - if (entry[i].isInMacroBranch) continue; - if (entry[i].equal(symbol)) { - Logger.warn("Replace symbol:", symbol.ident); - entry[i] = symbol; - return; - } - } - - entry.push(symbol); - this._table.set(symbol.ident, entry); - } - - getSymbol(symbol: T, includeMacro = false): T | undefined { - const entry = this._table.get(symbol.ident); - if (entry) { - for (let i = entry.length - 1; i >= 0; i--) { - const item = entry[i]; - if (!includeMacro && item.isInMacroBranch) continue; - if (item.equal(symbol)) return item; - } - } - } - - getSymbols(symbol: T, includeMacro = false, out: T[]): T[] { - out.length = 0; - this._getSymbols(symbol, includeMacro, out); - - return out; - } - - /** - * @internal - */ - _getSymbols(symbol: T, includeMacro = false, out: T[]): T[] { - const entry = this._table.get(symbol.ident); - - if (entry) { - for (let i = entry.length - 1; i >= 0; i--) { - const item = entry[i]; - if (!includeMacro && item.isInMacroBranch) continue; - if (item.equal(symbol)) out.push(item); - } - } - - return out; - } -} diff --git a/packages/shader-lab/src/common/SymbolTableStack.ts b/packages/shader-lab/src/common/SymbolTableStack.ts deleted file mode 100644 index 5052fc4bc..000000000 --- a/packages/shader-lab/src/common/SymbolTableStack.ts +++ /dev/null @@ -1,53 +0,0 @@ -import { IBaseSymbol } from "./IBaseSymbol"; -import { SymbolTable } from "./SymbolTable"; - -export class SymbolTableStack> { - stack: T[] = []; - - /** - * @internal - */ - _macroLevel = 0; - - get scope(): T { - return this.stack[this.stack.length - 1]; - } - - get isInMacroBranch(): boolean { - return this._macroLevel > 0; - } - - pushScope(scope: T): void { - this.stack.push(scope); - } - - clear(): void { - this.stack.length = 0; - } - - popScope(): T | undefined { - return this.stack.pop(); - } - - insert(symbol: S): void { - this.scope.insert(symbol, this.isInMacroBranch); - } - - lookup(symbol: S, includeMacro = false): S | undefined { - for (let i = this.stack.length - 1; i >= 0; i--) { - const symbolTable = this.stack[i]; - const result = symbolTable.getSymbol(symbol, includeMacro); - if (result) return result; - } - return undefined; - } - - lookupAll(symbol: S, includeMacro = false, out: S[]): S[] { - out.length = 0; - for (let i = this.stack.length - 1; i >= 0; i--) { - const symbolTable = this.stack[i]; - symbolTable._getSymbols(symbol, includeMacro, out); - } - return out; - } -} diff --git a/packages/shader-lab/src/common/enums/Keyword.ts b/packages/shader-lab/src/common/enums/Keyword.ts deleted file mode 100644 index 54787a705..000000000 --- a/packages/shader-lab/src/common/enums/Keyword.ts +++ /dev/null @@ -1,115 +0,0 @@ -export enum Keyword { - CONST = 0, - BOOL, - FLOAT, - DOUBLE, - INT, - UINT, - BREAK, - CONTINUE, - DO, - ELSE, - FOR, - IF, - WHILE, - DISCARD, - RETURN, - BVEC2, - BVEC3, - BVEC4, - IVEC2, - IVEC3, - IVEC4, - UVEC2, - UVEC3, - UVEC4, - VEC2, - VEC3, - VEC4, - VEC4_ARRAY, - MAT2, - MAT3, - MAT4, - MAT2X3, - MAT2X4, - MAT3X2, - MAT3X4, - MAT4X2, - MAT4X3, - IN, - OUT, - INOUT, - CENTROID, - SAMPLER2D, - SAMPLER3D, - SAMPLER_CUBE, - SAMPLER2D_SHADOW, - SAMPLER_CUBE_SHADOW, - SAMPLER2D_ARRAY, - SAMPLER2D_ARRAY_SHADOW, - I_SAMPLER2D, - I_SAMPLER3D, - I_SAMPLER_CUBE, - I_SAMPLER2D_ARRAY, - U_SAMPLER2D, - U_SAMPLER3D, - U_SAMPLER_CUBE, - U_SAMPLER2D_ARRAY, - STRUCT, - LAYOUT, - LOCATION, - VOID, - - PRECISION, - PRECISE, - HIGHP, - MEDIUMP, - LOWP, - INVARIANT, - SMOOTH, - FLAT, - NOPERSPECTIVE, - - // Common Tokens - True, - False, - LeftBrace, - RightBrace, - Equal, - - // Source Parser Tokens - GSRenderQueueType, - GSBlendState, - GSDepthState, - GSStencilState, - GSRasterState, - GSEditorProperties, - GSEditorMacros, - GSEditor, - GSTags, - GSVertexShader, - GSFragmentShader, - GSSubShader, - GSPass, - GSBlendFactor, - GSBlendOperation, - GSBool, - GSNumber, - GSColor, - GSCompareFunction, - GSStencilOperation, - GSCullMode, - GSUsePass, - - // Macros - MACRO_IF, - MACRO_IFDEF, - MACRO_IFNDEF, - MACRO_ELSE, - MACRO_ELIF, - MACRO_ENDIF, - MACRO_UNDEF, - MACRO_DEFINE_EXPRESSION, - MACRO_CONDITIONAL_EXPRESSION, - MACRO_CALL -} diff --git a/packages/shader-lab/src/common/enums/ShaderStage.ts b/packages/shader-lab/src/common/enums/ShaderStage.ts deleted file mode 100644 index c4e6aa943..000000000 --- a/packages/shader-lab/src/common/enums/ShaderStage.ts +++ /dev/null @@ -1,5 +0,0 @@ -export enum EShaderStage { - VERTEX, - FRAGMENT, - ALL -} diff --git a/packages/shader-lab/src/common/index.ts b/packages/shader-lab/src/common/index.ts deleted file mode 100644 index db478114e..000000000 --- a/packages/shader-lab/src/common/index.ts +++ /dev/null @@ -1,6 +0,0 @@ -import { ShaderRange } from "./ShaderRange"; -import { ShaderPosition } from "./ShaderPosition"; - -export { ShaderRange, ShaderPosition }; -export * from "./types"; -export * from "./enums/Keyword"; diff --git a/packages/shader-lab/src/common/types.ts b/packages/shader-lab/src/common/types.ts deleted file mode 100644 index 236b9af5d..000000000 --- a/packages/shader-lab/src/common/types.ts +++ /dev/null @@ -1,151 +0,0 @@ -import { Keyword } from "./enums/Keyword"; - -export enum ETokenType { - ID = 1000, - FLOAT_CONSTANT, - INT_CONSTANT, - STRING_CONST, - /** << */ - LEFT_OP, - /** \>> */ - RIGHT_OP, - /** ++ */ - INC_OP, - /** -- */ - DEC_OP, - /** <= */ - LE_OP, - /** \>= */ - GE_OP, - /** == */ - EQ_OP, - /** != */ - NE_OP, - /** && */ - AND_OP, - /** || */ - OR_OP, - /** ^^ */ - XOR_OP, - /** *= */ - MUL_ASSIGN, - /** /= */ - DIV_ASSIGN, - /** += */ - ADD_ASSIGN, - /** -= */ - SUB_ASSIGN, - /** %= */ - MOD_ASSIGN, - /** <<= */ - LEFT_ASSIGN, - /** >>= */ - RIGHT_ASSIGN, - /** &= */ - AND_ASSIGN, - /** ^= */ - XOR_ASSIGN, - /** |= */ - OR_ASSIGN, - /** ( */ - LEFT_PAREN, - /** ) */ - RIGHT_PAREN, - /** [ */ - LEFT_BRACKET, - /** ] */ - RIGHT_BRACKET, - /** { */ - LEFT_BRACE, - /** } */ - RIGHT_BRACE, - /** . */ - DOT, - /** , */ - COMMA, - COLON, - /** = */ - EQUAL, - /** ; */ - SEMICOLON, - /** ! */ - BANG, - /** \- */ - DASH, - /** ~ */ - TILDE, - PLUS, - /** \* */ - STAR, - /** / */ - SLASH, - /** % */ - PERCENT, - /** < */ - LEFT_ANGLE, - /** \> */ - RIGHT_ANGLE, - VERTICAL_BAR, - /** ^ */ - CARET, - /** & */ - AMPERSAND, - /** ? */ - QUESTION, - - NotWord, - - /** ε */ - EPSILON = 1998, - EOF = 1999 -} - -export const TypeAny = 3000; - -export type GalaceanDataType = - | Keyword.VOID - | Keyword.FLOAT - | Keyword.BOOL - | Keyword.INT - | Keyword.UINT - | Keyword.VEC2 - | Keyword.VEC3 - | Keyword.VEC4 - | Keyword.BVEC2 - | Keyword.BVEC3 - | Keyword.BVEC4 - | Keyword.IVEC2 - | Keyword.IVEC3 - | Keyword.IVEC4 - | Keyword.UVEC2 - | Keyword.UVEC3 - | Keyword.UVEC4 - | Keyword.MAT2 - | Keyword.MAT3 - | Keyword.MAT4 - | Keyword.MAT2X3 - | Keyword.MAT2X4 - | Keyword.MAT3X2 - | Keyword.MAT3X4 - | Keyword.MAT4X2 - | Keyword.MAT4X3 - | Keyword.SAMPLER2D - | Keyword.SAMPLER3D - | Keyword.SAMPLER_CUBE - | Keyword.SAMPLER2D_SHADOW - | Keyword.SAMPLER_CUBE_SHADOW - | Keyword.SAMPLER2D_ARRAY - | Keyword.SAMPLER2D_ARRAY_SHADOW - | Keyword.I_SAMPLER2D - | Keyword.I_SAMPLER3D - | Keyword.I_SAMPLER_CUBE - | Keyword.I_SAMPLER2D_ARRAY - | Keyword.U_SAMPLER2D - | Keyword.U_SAMPLER3D - | Keyword.U_SAMPLER_CUBE - | Keyword.U_SAMPLER2D_ARRAY - | Keyword.VEC4_ARRAY - | typeof TypeAny - | string; - -export type TokenType = ETokenType | Keyword; diff --git a/packages/shader-lab/src/index.ts b/packages/shader-lab/src/index.ts deleted file mode 100644 index f848ba967..000000000 --- a/packages/shader-lab/src/index.ts +++ /dev/null @@ -1,13 +0,0 @@ -export { ShaderLab } from "./ShaderLab"; - -export * from "./GSError"; - -//@ts-ignore -export const version = `__buildVersion`; - -let mode = "Release"; -// #if _VERBOSE -mode = "Verbose"; -// #endif - -console.log(`Galacean Engine ShaderLab Version: ${version} | Mode: ${mode}`); diff --git a/packages/shader-lab/src/lalr/CFG.ts b/packages/shader-lab/src/lalr/CFG.ts deleted file mode 100644 index 19c3af6b6..000000000 --- a/packages/shader-lab/src/lalr/CFG.ts +++ /dev/null @@ -1,1082 +0,0 @@ -// Context Free Grammar of Galacean ShaderLab -import { ETokenType } from "../common"; -import { Keyword } from "../common/enums/Keyword"; -import { ASTNode } from "../parser/AST"; -import { Grammar } from "../parser/Grammar"; -import { GrammarSymbol, NoneTerminal } from "../parser/GrammarSymbol"; -import SemanticAnalyzer, { TranslationRule } from "../parser/SemanticAnalyzer"; -import GrammarUtils from "./Utils"; - -const productionAndRules: [GrammarSymbol[], TranslationRule | undefined][] = [ - ...GrammarUtils.createProductionWithOptions( - NoneTerminal.gs_shader_program, - [[NoneTerminal.global_declaration], [NoneTerminal.gs_shader_program, NoneTerminal.global_declaration]], - ASTNode.GLShaderProgram.pool - ), - - ...GrammarUtils.createProductionWithOptions( - NoneTerminal.global_declaration, - [ - [NoneTerminal.precision_specifier], - [NoneTerminal.variable_declaration_statement], - [NoneTerminal.struct_specifier], - [NoneTerminal.function_definition], - [NoneTerminal.global_macro_if_statement], - [NoneTerminal.macro_undef], - [Keyword.MACRO_DEFINE_EXPRESSION] - ], - ASTNode.GlobalDeclaration.pool - ), - - ...GrammarUtils.createProductionWithOptions( - NoneTerminal.macro_call_symbol, - [[Keyword.MACRO_CALL]], - ASTNode.MacroCallSymbol.pool - ), - - ...GrammarUtils.createProductionWithOptions( - NoneTerminal.macro_call_function, - [ - [NoneTerminal.macro_call_symbol, ETokenType.LEFT_PAREN, ETokenType.RIGHT_PAREN], - [ - NoneTerminal.macro_call_symbol, - ETokenType.LEFT_PAREN, - NoneTerminal.function_call_parameter_list, - ETokenType.RIGHT_PAREN - ] - ], - ASTNode.MacroCallFunction.pool - ), - - ...GrammarUtils.createProductionWithOptions( - NoneTerminal.macro_undef, - [ - [Keyword.MACRO_UNDEF, ETokenType.ID], - [Keyword.MACRO_UNDEF, Keyword.MACRO_CALL] - ], - ASTNode.MacroUndef.pool - ), - - ...GrammarUtils.createProductionWithOptions( - NoneTerminal.macro_push_context, - [ - [Keyword.MACRO_IF, Keyword.MACRO_CONDITIONAL_EXPRESSION], - [Keyword.MACRO_IFDEF, ETokenType.ID], - [Keyword.MACRO_IFNDEF, ETokenType.ID], - [Keyword.MACRO_IFDEF, NoneTerminal.macro_call_symbol], - [Keyword.MACRO_IFNDEF, NoneTerminal.macro_call_symbol] - ], - ASTNode.MacroPushContext.pool - ), - - ...GrammarUtils.createProductionWithOptions( - NoneTerminal.macro_pop_context, - [[Keyword.MACRO_ENDIF]], - ASTNode.MacroPopContext.pool - ), - - ...GrammarUtils.createProductionWithOptions( - NoneTerminal.macro_elif_expression, - [[Keyword.MACRO_ELIF, Keyword.MACRO_CONDITIONAL_EXPRESSION]], - ASTNode.MacroElifExpression.pool - ), - - ...GrammarUtils.createProductionWithOptions( - NoneTerminal.macro_else_expression, - [[Keyword.MACRO_ELSE]], - ASTNode.MacroElseExpression.pool - ), - - ...GrammarUtils.createProductionWithOptions( - NoneTerminal.global_macro_declaration, - [[NoneTerminal.global_declaration], [NoneTerminal.global_macro_declaration, NoneTerminal.global_declaration]], - ASTNode.GlobalMacroDeclaration.pool - ), - - ...GrammarUtils.createProductionWithOptions( - NoneTerminal.global_macro_if_statement, - [ - [NoneTerminal.macro_push_context, NoneTerminal.global_macro_declaration, NoneTerminal.global_macro_branch], - [NoneTerminal.macro_push_context, NoneTerminal.global_macro_branch] - ], - ASTNode.GlobalMacroIfStatement.pool - ), - - ...GrammarUtils.createProductionWithOptions( - NoneTerminal.global_macro_branch, - [ - [NoneTerminal.macro_pop_context], - [NoneTerminal.macro_elif_expression, NoneTerminal.global_macro_declaration, NoneTerminal.global_macro_branch], - [NoneTerminal.macro_else_expression, NoneTerminal.global_macro_declaration, NoneTerminal.macro_pop_context], - [NoneTerminal.macro_elif_expression, NoneTerminal.global_macro_branch], - [NoneTerminal.macro_else_expression, NoneTerminal.macro_pop_context] - ], - ASTNode.GlobalMacroBranch.pool - ), - - ...GrammarUtils.createProductionWithOptions( - NoneTerminal.variable_declaration, - [ - [NoneTerminal.fully_specified_type, ETokenType.ID], - [NoneTerminal.fully_specified_type, ETokenType.ID, NoneTerminal.array_specifier], - [NoneTerminal.fully_specified_type, ETokenType.ID, ETokenType.EQUAL, NoneTerminal.initializer] - ], - ASTNode.VariableDeclaration.pool - ), - - ...GrammarUtils.createProductionWithOptions( - NoneTerminal.variable_declaration_list, - [ - [NoneTerminal.variable_declaration], - [NoneTerminal.variable_declaration_list, ETokenType.COMMA, ETokenType.ID], - [NoneTerminal.variable_declaration_list, ETokenType.COMMA, ETokenType.ID, NoneTerminal.array_specifier] - ], - ASTNode.VariableDeclarationList.pool - ), - - ...GrammarUtils.createProductionWithOptions(NoneTerminal.variable_declaration_statement, [ - [NoneTerminal.variable_declaration_list, ETokenType.SEMICOLON] - ]), - - ...GrammarUtils.createProductionWithOptions( - NoneTerminal.ext_builtin_type_specifier_nonarray, - [ - [Keyword.VOID], - [Keyword.FLOAT], - [Keyword.BOOL], - [Keyword.INT], - [Keyword.UINT], - [Keyword.VEC2], - [Keyword.VEC3], - [Keyword.VEC4], - [Keyword.BVEC2], - [Keyword.BVEC3], - [Keyword.BVEC4], - [Keyword.IVEC2], - [Keyword.IVEC3], - [Keyword.IVEC4], - [Keyword.UVEC2], - [Keyword.UVEC3], - [Keyword.UVEC4], - [Keyword.MAT2], - [Keyword.MAT3], - [Keyword.MAT4], - [Keyword.MAT2X3], - [Keyword.MAT2X4], - [Keyword.MAT3X2], - [Keyword.MAT3X4], - [Keyword.MAT4X2], - [Keyword.MAT4X3], - [Keyword.SAMPLER2D], - [Keyword.SAMPLER3D], - [Keyword.SAMPLER_CUBE], - [Keyword.SAMPLER2D_SHADOW], - [Keyword.SAMPLER_CUBE_SHADOW], - [Keyword.SAMPLER2D_ARRAY], - [Keyword.SAMPLER2D_ARRAY_SHADOW], - [Keyword.I_SAMPLER2D], - [Keyword.I_SAMPLER3D], - [Keyword.I_SAMPLER_CUBE], - [Keyword.I_SAMPLER2D_ARRAY], - [Keyword.U_SAMPLER2D], - [Keyword.U_SAMPLER3D], - [Keyword.U_SAMPLER_CUBE], - [Keyword.U_SAMPLER2D_ARRAY] - ], - ASTNode.ExtBuiltinTypeSpecifierNonArray.pool - ), - - ...GrammarUtils.createProductionWithOptions( - NoneTerminal.type_specifier_nonarray, - [[ETokenType.ID], [NoneTerminal.ext_builtin_type_specifier_nonarray]], - ASTNode.TypeSpecifierNonArray.pool - ), - - ...GrammarUtils.createProductionWithOptions( - NoneTerminal.fully_specified_type, - [[NoneTerminal.type_specifier], [NoneTerminal.type_qualifier, NoneTerminal.type_specifier]], - ASTNode.FullySpecifiedType.pool - ), - - ...GrammarUtils.createProductionWithOptions( - NoneTerminal.type_specifier, - [ - [NoneTerminal.type_specifier_nonarray], - [NoneTerminal.ext_builtin_type_specifier_nonarray, NoneTerminal.array_specifier] - ], - ASTNode.TypeSpecifier.pool - ), - - ...GrammarUtils.createProductionWithOptions( - NoneTerminal.type_qualifier, - [[NoneTerminal.single_type_qualifier], [NoneTerminal.type_qualifier, NoneTerminal.single_type_qualifier]], - ASTNode.TypeQualifier.pool - ), - - ...GrammarUtils.createProductionWithOptions( - NoneTerminal.single_type_qualifier, - [ - [NoneTerminal.storage_qualifier], - [NoneTerminal.precision_qualifier], - [NoneTerminal.interpolation_qualifier], - [NoneTerminal.invariant_qualifier], - [Keyword.PRECISE] - ], - ASTNode.SingleTypeQualifier.pool - ), - - ...GrammarUtils.createProductionWithOptions( - NoneTerminal.storage_qualifier, - [[Keyword.CONST], [Keyword.IN], [Keyword.INOUT], [Keyword.OUT], [Keyword.CENTROID]], - // #if _VERBOSE - ASTNode.StorageQualifier.pool - // #endif - ), - - ...GrammarUtils.createProductionWithOptions( - NoneTerminal.interpolation_qualifier, - [[Keyword.SMOOTH], [Keyword.FLAT]], - // #if _VERBOSE - ASTNode.InterpolationQualifier.pool - // #endif - ), - - ...GrammarUtils.createProductionWithOptions( - NoneTerminal.invariant_qualifier, - [[Keyword.INVARIANT]], - // #if _VERBOSE - ASTNode.InvariantQualifier.pool - // #endif - ), - - ...GrammarUtils.createProductionWithOptions( - NoneTerminal.precision_qualifier, - [[Keyword.HIGHP], [Keyword.MEDIUMP], [Keyword.LOWP]], - // #if _VERBOSE - ASTNode.PrecisionQualifier.pool - // #endif - ), - - ...GrammarUtils.createProductionWithOptions( - NoneTerminal.struct_specifier, - [ - [ - Keyword.STRUCT, - ETokenType.ID, - ETokenType.LEFT_BRACE, - NoneTerminal.struct_declaration_list, - ETokenType.RIGHT_BRACE, - ETokenType.SEMICOLON - ], - [ - Keyword.STRUCT, - ETokenType.LEFT_BRACE, - NoneTerminal.struct_declaration_list, - ETokenType.RIGHT_BRACE, - ETokenType.SEMICOLON - ] - ], - ASTNode.StructSpecifier.pool - ), - - ...GrammarUtils.createProductionWithOptions( - NoneTerminal.struct_declaration_list, - [[NoneTerminal.struct_declaration], [NoneTerminal.struct_declaration_list, NoneTerminal.struct_declaration]], - ASTNode.StructDeclarationList.pool - ), - - ...GrammarUtils.createProductionWithOptions( - NoneTerminal.struct_declaration, - [ - [NoneTerminal.type_specifier, NoneTerminal.struct_declarator_list, ETokenType.SEMICOLON], - [ - NoneTerminal.type_qualifier, - NoneTerminal.type_specifier, - NoneTerminal.struct_declarator_list, - ETokenType.SEMICOLON - ], - [ - NoneTerminal.layout_qualifier, - NoneTerminal.type_specifier, - NoneTerminal.struct_declarator, - ETokenType.SEMICOLON - ], - [NoneTerminal.macro_struct_declaration] - ], - ASTNode.StructDeclaration.pool - ), - - ...GrammarUtils.createProductionWithOptions( - NoneTerminal.macro_struct_declaration, - [ - [NoneTerminal.macro_push_context, NoneTerminal.struct_declaration_list, NoneTerminal.macro_struct_branch], - [NoneTerminal.macro_push_context, NoneTerminal.macro_struct_branch] - ], - ASTNode.MacroStructDeclaration.pool - ), - - ...GrammarUtils.createProductionWithOptions( - NoneTerminal.macro_struct_branch, - [ - [NoneTerminal.macro_pop_context], - [NoneTerminal.macro_elif_expression, NoneTerminal.struct_declaration_list, NoneTerminal.macro_struct_branch], - [NoneTerminal.macro_else_expression, NoneTerminal.struct_declaration_list, NoneTerminal.macro_pop_context], - [NoneTerminal.macro_elif_expression, NoneTerminal.macro_struct_branch], - [NoneTerminal.macro_else_expression, NoneTerminal.macro_pop_context] - ], - ASTNode.MacroStructBranch.pool - ), - - ...GrammarUtils.createProductionWithOptions( - NoneTerminal.layout_qualifier, - [ - [ - Keyword.LAYOUT, - ETokenType.LEFT_PAREN, - Keyword.LOCATION, - ETokenType.EQUAL, - ETokenType.INT_CONSTANT, - ETokenType.RIGHT_PAREN - ] - ], - ASTNode.LayoutQualifier.pool - ), - - ...GrammarUtils.createProductionWithOptions( - NoneTerminal.struct_declarator_list, - [ - [NoneTerminal.struct_declarator], - [NoneTerminal.struct_declarator_list, ETokenType.COMMA, NoneTerminal.struct_declarator] - ], - ASTNode.StructDeclaratorList.pool - ), - - ...GrammarUtils.createProductionWithOptions( - NoneTerminal.struct_declarator, - [[ETokenType.ID], [ETokenType.ID, NoneTerminal.array_specifier]], - ASTNode.StructDeclarator.pool - ), - - ...GrammarUtils.createProductionWithOptions( - NoneTerminal.array_specifier, - [ - [ETokenType.LEFT_BRACKET, ETokenType.RIGHT_BRACKET], - [ETokenType.LEFT_BRACKET, NoneTerminal.integer_constant_expression, ETokenType.RIGHT_BRACKET] - ], - ASTNode.ArraySpecifier.pool - ), - - ...GrammarUtils.createProductionWithOptions( - NoneTerminal.integer_constant_expression_operator, - [[ETokenType.PLUS], [ETokenType.DASH], [ETokenType.STAR], [ETokenType.SLASH], [ETokenType.PERCENT]], - ASTNode.IntegerConstantExpressionOperator.pool - ), - - ...GrammarUtils.createProductionWithOptions( - NoneTerminal.integer_constant_expression, - [ - [NoneTerminal.variable_identifier], - [ETokenType.INT_CONSTANT], - [ - NoneTerminal.integer_constant_expression, - NoneTerminal.integer_constant_expression_operator, - ETokenType.INT_CONSTANT - ], - [ - NoneTerminal.integer_constant_expression, - NoneTerminal.integer_constant_expression_operator, - NoneTerminal.variable_identifier - ] - ], - ASTNode.IntegerConstantExpression.pool - ), - - ...GrammarUtils.createProductionWithOptions( - NoneTerminal.conditional_expression, - [ - [NoneTerminal.logical_or_expression], - [ - NoneTerminal.logical_or_expression, - ETokenType.QUESTION, - NoneTerminal.expression, - ETokenType.COLON, - NoneTerminal.assignment_expression - ] - ], - // #if _VERBOSE - ASTNode.ConditionalExpression.pool - // #endif - ), - - ...GrammarUtils.createProductionWithOptions( - NoneTerminal.logical_or_expression, - [ - [NoneTerminal.logical_xor_expression], - [NoneTerminal.logical_or_expression, ETokenType.OR_OP, NoneTerminal.logical_xor_expression] - ], - // #if _VERBOSE - ASTNode.LogicalOrExpression.pool - // #endif - ), - - ...GrammarUtils.createProductionWithOptions( - NoneTerminal.logical_xor_expression, - [ - [NoneTerminal.logical_and_expression], - [NoneTerminal.logical_xor_expression, ETokenType.XOR_OP, NoneTerminal.logical_and_expression] - ], - // #if _VERBOSE - ASTNode.LogicalXorExpression.pool - // #endif - ), - - ...GrammarUtils.createProductionWithOptions( - NoneTerminal.logical_and_expression, - [ - [NoneTerminal.inclusive_or_expression], - [NoneTerminal.logical_and_expression, ETokenType.AND_OP, NoneTerminal.inclusive_or_expression] - ], - // #if _VERBOSE - ASTNode.LogicalAndExpression.pool - // #endif - ), - - ...GrammarUtils.createProductionWithOptions( - NoneTerminal.inclusive_or_expression, - [ - [NoneTerminal.exclusive_or_expression], - [NoneTerminal.inclusive_or_expression, ETokenType.VERTICAL_BAR, NoneTerminal.exclusive_or_expression] - ], - // #if _VERBOSE - ASTNode.InclusiveOrExpression.pool - // #endif - ), - - ...GrammarUtils.createProductionWithOptions( - NoneTerminal.exclusive_or_expression, - [ - [NoneTerminal.and_expression], - [NoneTerminal.exclusive_or_expression, ETokenType.CARET, NoneTerminal.and_expression] - ], - // #if _VERBOSE - ASTNode.ExclusiveOrExpression.pool - // #endif - ), - - ...GrammarUtils.createProductionWithOptions( - NoneTerminal.and_expression, - [ - [NoneTerminal.equality_expression], - [NoneTerminal.and_expression, ETokenType.AMPERSAND, NoneTerminal.equality_expression] - ], - // #if _VERBOSE - ASTNode.AndExpression.pool - // #endif - ), - - ...GrammarUtils.createProductionWithOptions( - NoneTerminal.equality_expression, - [ - [NoneTerminal.relational_expression], - [NoneTerminal.equality_expression, ETokenType.EQ_OP, NoneTerminal.relational_expression], - [NoneTerminal.equality_expression, ETokenType.NE_OP, NoneTerminal.relational_expression] - ], - // #if _VERBOSE - ASTNode.EqualityExpression.pool - // #endif - ), - - ...GrammarUtils.createProductionWithOptions( - NoneTerminal.relational_expression, - [ - [NoneTerminal.shift_expression], - [NoneTerminal.relational_expression, ETokenType.LEFT_ANGLE, NoneTerminal.shift_expression], - [NoneTerminal.relational_expression, ETokenType.RIGHT_ANGLE, NoneTerminal.shift_expression], - [NoneTerminal.relational_expression, ETokenType.LE_OP, NoneTerminal.shift_expression], - [NoneTerminal.relational_expression, ETokenType.GE_OP, NoneTerminal.shift_expression] - ], - // #if _VERBOSE - ASTNode.RelationalExpression.pool - // #endif - ), - - ...GrammarUtils.createProductionWithOptions( - NoneTerminal.shift_expression, - [ - [NoneTerminal.additive_expression], - [NoneTerminal.shift_expression, ETokenType.LEFT_OP, NoneTerminal.additive_expression], - [NoneTerminal.shift_expression, ETokenType.RIGHT_OP, NoneTerminal.additive_expression] - ], - // #if _VERBOSE - ASTNode.ShiftExpression.pool - // #endif - ), - - ...GrammarUtils.createProductionWithOptions( - NoneTerminal.additive_expression, - [ - [NoneTerminal.multiplicative_expression], - [NoneTerminal.additive_expression, ETokenType.PLUS, NoneTerminal.multiplicative_expression], - [NoneTerminal.additive_expression, ETokenType.DASH, NoneTerminal.multiplicative_expression] - ], - // #if _VERBOSE - ASTNode.AdditiveExpression.pool - // #endif - ), - - ...GrammarUtils.createProductionWithOptions( - NoneTerminal.multiplicative_expression, - [ - [NoneTerminal.unary_expression], - [NoneTerminal.multiplicative_expression, ETokenType.STAR, NoneTerminal.unary_expression], - [NoneTerminal.multiplicative_expression, ETokenType.SLASH, NoneTerminal.unary_expression], - [NoneTerminal.multiplicative_expression, ETokenType.PERCENT, NoneTerminal.unary_expression] - ], - // #if _VERBOSE - ASTNode.MultiplicativeExpression.pool - // #endif - ), - - ...GrammarUtils.createProductionWithOptions( - NoneTerminal.unary_expression, - [ - [NoneTerminal.postfix_expression], - [ETokenType.INC_OP, NoneTerminal.unary_expression], - [ETokenType.DEC_OP, NoneTerminal.unary_expression], - [NoneTerminal.unary_operator, NoneTerminal.unary_expression] - ], - // #if _VERBOSE - ASTNode.UnaryExpression.pool - // #endif - ), - - ...GrammarUtils.createProductionWithOptions( - NoneTerminal.unary_operator, - [[ETokenType.PLUS], [ETokenType.DASH], [ETokenType.BANG], [ETokenType.TILDE]], - // #if _VERBOSE - ASTNode.UnaryOperator.pool - // #endif - ), - - ...GrammarUtils.createProductionWithOptions( - NoneTerminal.postfix_expression, - [ - [NoneTerminal.primary_expression], - [NoneTerminal.postfix_expression, ETokenType.LEFT_BRACKET, NoneTerminal.expression, ETokenType.RIGHT_BRACKET], - [NoneTerminal.function_call], - [NoneTerminal.postfix_expression, ETokenType.DOT, ETokenType.ID], - [NoneTerminal.postfix_expression, ETokenType.DOT, NoneTerminal.function_call], - [NoneTerminal.postfix_expression, ETokenType.INC_OP], - [NoneTerminal.postfix_expression, ETokenType.DEC_OP] - ], - ASTNode.PostfixExpression.pool - ), - - ...GrammarUtils.createProductionWithOptions( - NoneTerminal.primary_expression, - [ - [NoneTerminal.variable_identifier], - [ETokenType.INT_CONSTANT], - [ETokenType.FLOAT_CONSTANT], - [Keyword.True], - [Keyword.False], - [ETokenType.LEFT_PAREN, NoneTerminal.expression, ETokenType.RIGHT_PAREN] - ], - ASTNode.PrimaryExpression.pool - ), - - ...GrammarUtils.createProductionWithOptions( - NoneTerminal.expression, - [ - [NoneTerminal.assignment_expression], - [NoneTerminal.expression, ETokenType.COMMA, NoneTerminal.assignment_expression] - ], - ASTNode.Expression.pool - ), - - ...GrammarUtils.createProductionWithOptions( - NoneTerminal.assignment_expression, - [ - [NoneTerminal.conditional_expression], - [NoneTerminal.unary_expression, NoneTerminal.assignment_operator, NoneTerminal.assignment_expression] - ], - ASTNode.AssignmentExpression.pool - ), - - ...GrammarUtils.createProductionWithOptions( - NoneTerminal.assignment_operator, - [ - [ETokenType.EQUAL], - [ETokenType.MUL_ASSIGN], - [ETokenType.DIV_ASSIGN], - [ETokenType.MOD_ASSIGN], - [ETokenType.ADD_ASSIGN], - [ETokenType.SUB_ASSIGN], - [ETokenType.LEFT_ASSIGN], - [ETokenType.RIGHT_ASSIGN], - [ETokenType.AND_ASSIGN], - [ETokenType.XOR_ASSIGN], - [ETokenType.OR_ASSIGN] - ], - // #if _VERBOSE - ASTNode.AssignmentOperator.pool - // #endif - ), - - ...GrammarUtils.createProductionWithOptions( - NoneTerminal.function_call, - [[NoneTerminal.function_call_generic]], - ASTNode.FunctionCall.pool - ), - - ...GrammarUtils.createProductionWithOptions( - NoneTerminal.function_call_generic, - [ - [ - NoneTerminal.function_identifier, - ETokenType.LEFT_PAREN, - NoneTerminal.function_call_parameter_list, - ETokenType.RIGHT_PAREN - ], - [NoneTerminal.function_identifier, ETokenType.LEFT_PAREN, ETokenType.RIGHT_PAREN], - [NoneTerminal.function_identifier, Keyword.VOID, ETokenType.RIGHT_PAREN] - ], - ASTNode.FunctionCallGeneric.pool - ), - - ...GrammarUtils.createProductionWithOptions( - NoneTerminal.function_call_parameter_list, - [ - [NoneTerminal.assignment_expression], - [NoneTerminal.function_call_parameter_list, ETokenType.COMMA, NoneTerminal.assignment_expression], - [NoneTerminal.macro_call_arg_block], - [NoneTerminal.function_call_parameter_list, NoneTerminal.macro_call_arg_block] - ], - ASTNode.FunctionCallParameterList.pool - ), - - ...GrammarUtils.createProductionWithOptions( - NoneTerminal.macro_call_arg_case_list, - [ - [NoneTerminal.assignment_expression], - [ETokenType.COMMA, NoneTerminal.assignment_expression], - [NoneTerminal.macro_call_arg_block], - [NoneTerminal.macro_call_arg_case_list, NoneTerminal.macro_call_arg_block], - [NoneTerminal.macro_call_arg_case_list, ETokenType.COMMA, NoneTerminal.assignment_expression] - ], - ASTNode.MacroCallArgCaseList.pool - ), - - ...GrammarUtils.createProductionWithOptions( - NoneTerminal.macro_call_arg_block, - [ - [NoneTerminal.macro_push_context, NoneTerminal.macro_call_arg_branch], - [NoneTerminal.macro_push_context, NoneTerminal.macro_call_arg_case_list, NoneTerminal.macro_call_arg_branch] - ], - ASTNode.MacroCallArgBlock.pool - ), - - ...GrammarUtils.createProductionWithOptions( - NoneTerminal.macro_call_arg_branch, - [ - [NoneTerminal.macro_pop_context], - [NoneTerminal.macro_elif_expression, NoneTerminal.macro_call_arg_case_list, NoneTerminal.macro_call_arg_branch], - [NoneTerminal.macro_else_expression, NoneTerminal.macro_call_arg_case_list, NoneTerminal.macro_pop_context], - [NoneTerminal.macro_elif_expression, NoneTerminal.macro_call_arg_branch], - [NoneTerminal.macro_else_expression, NoneTerminal.macro_pop_context] - ], - ASTNode.MacroCallArgBranch.pool - ), - - ...GrammarUtils.createProductionWithOptions( - NoneTerminal.function_identifier, - [[NoneTerminal.type_specifier]], - ASTNode.FunctionIdentifier.pool - ), - - ...GrammarUtils.createProductionWithOptions( - NoneTerminal.function_definition, - [[NoneTerminal.function_prototype, NoneTerminal.compound_statement_no_scope]], - ASTNode.FunctionDefinition.pool - ), - - ...GrammarUtils.createProductionWithOptions( - NoneTerminal.function_prototype, - [[NoneTerminal.function_declarator, ETokenType.RIGHT_PAREN]], - ASTNode.FunctionProtoType.pool - ), - - ...GrammarUtils.createProductionWithOptions( - NoneTerminal.function_declarator, - [[NoneTerminal.function_header], [NoneTerminal.function_header, NoneTerminal.function_parameter_list]], - ASTNode.FunctionDeclarator.pool - ), - - ...GrammarUtils.createProductionWithOptions( - NoneTerminal.function_header, - [[NoneTerminal.fully_specified_type, ETokenType.ID, ETokenType.LEFT_PAREN]], - ASTNode.FunctionHeader.pool - ), - - ...GrammarUtils.createProductionWithOptions( - NoneTerminal.function_parameter_list, - [ - [NoneTerminal.parameter_declaration], - [NoneTerminal.function_parameter_list, ETokenType.COMMA, NoneTerminal.parameter_declaration], - [NoneTerminal.macro_param_block], - [NoneTerminal.function_parameter_list, NoneTerminal.macro_param_block] - ], - ASTNode.FunctionParameterList.pool - ), - - ...GrammarUtils.createProductionWithOptions( - NoneTerminal.macro_param_case_list, - [ - [NoneTerminal.parameter_declaration], - [ETokenType.COMMA, NoneTerminal.parameter_declaration], - [NoneTerminal.macro_param_block], - [NoneTerminal.macro_param_case_list, NoneTerminal.macro_param_block], - [NoneTerminal.macro_param_case_list, ETokenType.COMMA, NoneTerminal.parameter_declaration] - ], - ASTNode.MacroParamCaseList.pool - ), - - ...GrammarUtils.createProductionWithOptions( - NoneTerminal.macro_param_block, - [ - [NoneTerminal.macro_push_context, NoneTerminal.macro_parameter_branch], - [NoneTerminal.macro_push_context, NoneTerminal.macro_param_case_list, NoneTerminal.macro_parameter_branch] - ], - ASTNode.MacroParamBlock.pool - ), - - ...GrammarUtils.createProductionWithOptions( - NoneTerminal.macro_parameter_branch, - [ - [NoneTerminal.macro_pop_context], - [NoneTerminal.macro_elif_expression, NoneTerminal.macro_param_case_list, NoneTerminal.macro_parameter_branch], - [NoneTerminal.macro_else_expression, NoneTerminal.macro_param_case_list, NoneTerminal.macro_pop_context], - [NoneTerminal.macro_elif_expression, NoneTerminal.macro_parameter_branch], - [NoneTerminal.macro_else_expression, NoneTerminal.macro_pop_context] - ], - ASTNode.MacroParameterBranch.pool - ), - - ...GrammarUtils.createProductionWithOptions( - NoneTerminal.parameter_declaration, - [ - [NoneTerminal.type_qualifier, NoneTerminal.parameter_declarator], - [NoneTerminal.parameter_declarator], - [NoneTerminal.macro_call_symbol], - [NoneTerminal.macro_call_function] - ], - ASTNode.ParameterDeclaration.pool - ), - - ...GrammarUtils.createProductionWithOptions( - NoneTerminal.parameter_declarator, - [ - [NoneTerminal.type_specifier, ETokenType.ID], - [NoneTerminal.type_specifier, ETokenType.ID, NoneTerminal.array_specifier] - ], - ASTNode.ParameterDeclarator.pool - ), - - ...GrammarUtils.createProductionWithOptions( - NoneTerminal.statement_list, - [[NoneTerminal.statement], [NoneTerminal.statement_list, NoneTerminal.statement]], - ASTNode.StatementList.pool - ), - - ...GrammarUtils.createProductionWithOptions( - NoneTerminal.statement, - [[NoneTerminal.compound_statement], [NoneTerminal.simple_statement]], - // #if _VERBOSE - ASTNode.Statement.pool - // #endif - ), - - ...GrammarUtils.createProductionWithOptions( - NoneTerminal.compound_statement_no_scope, - [ - [ETokenType.LEFT_BRACE, ETokenType.RIGHT_BRACE], - [ETokenType.LEFT_BRACE, NoneTerminal.statement_list, ETokenType.RIGHT_BRACE] - ], - ASTNode.CompoundStatementNoScope.pool - ), - - ...GrammarUtils.createProductionWithOptions( - NoneTerminal.compound_statement, - [ - [ETokenType.LEFT_BRACE, ETokenType.RIGHT_BRACE], - [NoneTerminal.scope_brace, NoneTerminal.statement_list, NoneTerminal.scope_end_brace] - ], - // #if _VERBOSE - ASTNode.CompoundStatement.pool - // #endif - ), - - ...GrammarUtils.createProductionWithOptions( - NoneTerminal.simple_statement, - [ - [NoneTerminal.declaration], - [NoneTerminal.expression_statement], - [NoneTerminal.selection_statement], - [NoneTerminal.iteration_statement], - [NoneTerminal.jump_statement], - [NoneTerminal.macro_if_statement], - [NoneTerminal.macro_undef], - [Keyword.MACRO_DEFINE_EXPRESSION] - ], - // #if _VERBOSE - ASTNode.SimpleStatement.pool - // #endif - ), - - ...GrammarUtils.createProductionWithOptions( - NoneTerminal.declaration, - [ - [NoneTerminal.function_prototype, ETokenType.SEMICOLON], - [NoneTerminal.init_declarator_list, ETokenType.SEMICOLON], - [ - Keyword.PRECISION, - NoneTerminal.precision_qualifier, - NoneTerminal.ext_builtin_type_specifier_nonarray, - ETokenType.SEMICOLON - ], - [NoneTerminal.type_qualifier, ETokenType.ID, ETokenType.SEMICOLON], - [NoneTerminal.type_qualifier, ETokenType.ID, NoneTerminal.identifier_list, ETokenType.SEMICOLON] - ], - ASTNode.Declaration.pool - ), - - ...GrammarUtils.createProductionWithOptions( - NoneTerminal.identifier_list, - [ - [ETokenType.COMMA, ETokenType.ID], - [NoneTerminal.identifier_list, ETokenType.COMMA, ETokenType.ID] - ], - ASTNode.IdentifierList.pool - ), - - ...GrammarUtils.createProductionWithOptions( - NoneTerminal.init_declarator_list, - [ - [NoneTerminal.single_declaration], - [NoneTerminal.init_declarator_list, ETokenType.COMMA, ETokenType.ID], - [NoneTerminal.init_declarator_list, ETokenType.COMMA, ETokenType.ID, NoneTerminal.array_specifier], - [ - NoneTerminal.init_declarator_list, - ETokenType.COMMA, - ETokenType.ID, - NoneTerminal.array_specifier, - ETokenType.EQUAL, - NoneTerminal.initializer - ], - [NoneTerminal.init_declarator_list, ETokenType.COMMA, ETokenType.ID, ETokenType.EQUAL, NoneTerminal.initializer] - ], - ASTNode.InitDeclaratorList.pool - ), - - ...GrammarUtils.createProductionWithOptions( - NoneTerminal.single_declaration, - [ - [NoneTerminal.fully_specified_type, ETokenType.ID], - [NoneTerminal.fully_specified_type, ETokenType.ID, NoneTerminal.array_specifier], - [ - NoneTerminal.fully_specified_type, - ETokenType.ID, - NoneTerminal.array_specifier, - ETokenType.EQUAL, - NoneTerminal.initializer - ], - [NoneTerminal.fully_specified_type, ETokenType.ID, ETokenType.EQUAL, NoneTerminal.initializer] - ], - ASTNode.SingleDeclaration.pool - ), - - ...GrammarUtils.createProductionWithOptions( - NoneTerminal.initializer, - [ - [NoneTerminal.assignment_expression], - [ETokenType.LEFT_BRACE, NoneTerminal.initializer_list, ETokenType.RIGHT_BRACE] - ], - // #if _VERBOSE - ASTNode.Initializer.pool - // #endif - ), - - ...GrammarUtils.createProductionWithOptions( - NoneTerminal.initializer_list, - [[NoneTerminal.initializer], [NoneTerminal.initializer_list, ETokenType.COMMA, NoneTerminal.initializer]], - // #if _VERBOSE - ASTNode.InitializerList.pool - // #endif - ), - - ...GrammarUtils.createProductionWithOptions( - NoneTerminal.expression_statement, - [[ETokenType.SEMICOLON], [NoneTerminal.expression, ETokenType.SEMICOLON]], - // #if _VERBOSE - ASTNode.ExpressionStatement.pool - // #endif - ), - - // dangling else ambiguity - ...GrammarUtils.createProductionWithOptions( - NoneTerminal.selection_statement, - [ - [Keyword.IF, ETokenType.LEFT_PAREN, NoneTerminal.expression, ETokenType.RIGHT_PAREN, NoneTerminal.statement], - [ - Keyword.IF, - ETokenType.LEFT_PAREN, - NoneTerminal.expression, - ETokenType.RIGHT_PAREN, - NoneTerminal.statement, - Keyword.ELSE, - NoneTerminal.statement - ] - ], - // #if _VERBOSE - ASTNode.SelectionStatement.pool - // #endif - ), - - ...GrammarUtils.createProductionWithOptions( - NoneTerminal.iteration_statement, - [ - [Keyword.WHILE, ETokenType.LEFT_PAREN, NoneTerminal.condition, ETokenType.RIGHT_PAREN, NoneTerminal.statement], - [ - Keyword.FOR, - ETokenType.LEFT_PAREN, - NoneTerminal.for_init_statement, - NoneTerminal.for_rest_statement, - ETokenType.RIGHT_PAREN, - NoneTerminal.statement - ] - ], - // #if _VERBOSE - ASTNode.IterationStatement.pool - // #endif - ), - - ...GrammarUtils.createProductionWithOptions( - NoneTerminal.precision_specifier, - [ - [ - Keyword.PRECISION, - NoneTerminal.precision_qualifier, - NoneTerminal.ext_builtin_type_specifier_nonarray, - ETokenType.SEMICOLON - ] - ], - ASTNode.PrecisionSpecifier.pool - ), - - ...GrammarUtils.createProductionWithOptions( - NoneTerminal.for_init_statement, - [[NoneTerminal.expression_statement], [NoneTerminal.declaration]], - // #if _VERBOSE - ASTNode.ForInitStatement.pool - // #endif - ), - - ...GrammarUtils.createProductionWithOptions( - NoneTerminal.condition, - [ - [NoneTerminal.expression], - [NoneTerminal.fully_specified_type, ETokenType.ID, ETokenType.EQUAL, NoneTerminal.initializer] - ], - // #if _VERBOSE - ASTNode.Condition.pool - // #endif - ), - - ...GrammarUtils.createProductionWithOptions( - NoneTerminal.for_rest_statement, - [ - [NoneTerminal.conditionopt, ETokenType.SEMICOLON], - [NoneTerminal.conditionopt, ETokenType.SEMICOLON, NoneTerminal.expression] - ], - // #if _VERBOSE - ASTNode.ForRestStatement.pool - // #endif - ), - - ...GrammarUtils.createProductionWithOptions( - NoneTerminal.conditionopt, - [[ETokenType.EPSILON], [NoneTerminal.condition]], - // #if _VERBOSE - ASTNode.ConditionOpt.pool - // #endif - ), - - ...GrammarUtils.createProductionWithOptions( - NoneTerminal.jump_statement, - [ - [Keyword.CONTINUE, ETokenType.SEMICOLON], - [Keyword.BREAK, ETokenType.SEMICOLON], - [Keyword.RETURN, ETokenType.SEMICOLON], - [Keyword.RETURN, NoneTerminal.expression, ETokenType.SEMICOLON], - [Keyword.DISCARD, ETokenType.SEMICOLON] - ], - ASTNode.JumpStatement.pool - ), - - ...GrammarUtils.createProductionWithOptions( - NoneTerminal.scope_brace, - [[ETokenType.LEFT_BRACE]], - ASTNode.ScopeBrace.pool - ), - - ...GrammarUtils.createProductionWithOptions( - NoneTerminal.scope_end_brace, - [[ETokenType.RIGHT_BRACE]], - ASTNode.ScopeEndBrace.pool - ), - - ...GrammarUtils.createProductionWithOptions( - NoneTerminal.variable_identifier, - [[ETokenType.ID], [NoneTerminal.macro_call_symbol], [NoneTerminal.macro_call_function]], - ASTNode.VariableIdentifier.pool - ), - - // Macros ... - ...GrammarUtils.createProductionWithOptions( - NoneTerminal.macro_if_statement, - [ - [NoneTerminal.macro_push_context, NoneTerminal.statement_list, NoneTerminal.macro_branch], - [NoneTerminal.macro_push_context, NoneTerminal.macro_branch] - ], - ASTNode.MacroIfStatement.pool - ), - - ...GrammarUtils.createProductionWithOptions( - NoneTerminal.macro_branch, - [ - [NoneTerminal.macro_pop_context], - [NoneTerminal.macro_elif_expression, NoneTerminal.statement_list, NoneTerminal.macro_branch], - [NoneTerminal.macro_else_expression, NoneTerminal.statement_list, NoneTerminal.macro_pop_context], - [NoneTerminal.macro_elif_expression, NoneTerminal.macro_branch], - [NoneTerminal.macro_else_expression, NoneTerminal.macro_pop_context] - ], - ASTNode.MacroBranch.pool - ) -]; - -const createGrammar = () => - Grammar.create( - NoneTerminal.gs_shader_program, - productionAndRules.map((item) => item[0]) - ); - -const addTranslationRule = (sa: SemanticAnalyzer) => { - for (let i = 0; i < productionAndRules.length; i++) { - const rule = productionAndRules[i][1]; - if (rule) { - sa.addTranslationRule(i, rule); - } - } -}; - -export { addTranslationRule, createGrammar }; diff --git a/packages/shader-lab/src/lalr/LALR1.ts b/packages/shader-lab/src/lalr/LALR1.ts deleted file mode 100644 index a333c67ca..000000000 --- a/packages/shader-lab/src/lalr/LALR1.ts +++ /dev/null @@ -1,226 +0,0 @@ -import { Logger } from "@galacean/engine"; -import { ETokenType } from "../common"; -import { Keyword } from "../common/enums/Keyword"; -import { Grammar } from "../parser/Grammar"; -import { GrammarSymbol, NoneTerminal, Terminal } from "../parser/GrammarSymbol"; -import State from "./State"; -import StateItem from "./StateItem"; -import { default as GrammarUtils, default as Utils } from "./Utils"; -import { ActionInfo, ActionTable, EAction, GotoTable, StateActionTable, StateGotoTable } from "./types"; - -/** - * The [LALR1](https://web.stanford.edu/class/archive/cs/cs143/cs143.1128/handouts/140%20LALR%20Parsing.pdf) Parser generator - */ -export class LALR1 { - readonly firstSetMap: Map> = new Map(); - readonly followSetMap: Map> = new Map(); - - readonly actionTable: StateActionTable = new Map(); - readonly gotoTable: StateGotoTable = new Map(); - private grammar: Grammar; - - /** For circle detect */ - private _firstSetNTStack: NoneTerminal[] = []; - - constructor(grammar: Grammar) { - this.grammar = grammar; - } - - generate() { - this.computeFirstSet(); - this.buildStateTable(); - } - - private buildStateTable() { - const startStateItemCore = [new StateItem(this.grammar.productions[0], 0, [ETokenType.EOF])]; - const startState = State.create(startStateItemCore); - this._extendState(startState); - } - - private _extendState(state: State) { - if (!state.needReInfer) return; - this._closure(state); - const newStates = this._inferNextState(state); - for (const ns of newStates) { - this._extendState(ns); - } - } - - private _closure(state: State) { - for (const core of state.cores) { - if (!core.canReduce()) { - this._extendStateItem(state, core); - } - } - state.closured = true; - return state; - } - - private _extendStateItem(state: State, item: StateItem) { - if (GrammarUtils.isTerminal(item.curSymbol)) return; - - const productionList = this.grammar.getProductionList(item.curSymbol); - - if (item.nextSymbol) { - let newLookaheadSet = new Set(); - let lastFirstSet: Set | undefined; - let terminalExist = false; - // when A :=> a.BC, a; ==》 B :=> .xy, First(Ca) - // newLookAhead = First(Ca) - for (let i = 1, nextSymbol = item.symbolByOffset(1); !!nextSymbol; nextSymbol = item.symbolByOffset(++i)) { - if (GrammarUtils.isTerminal(nextSymbol)) { - newLookaheadSet.add(nextSymbol); - terminalExist = true; - break; - } - lastFirstSet = this.firstSetMap.get(nextSymbol)!; - for (const t of lastFirstSet) { - newLookaheadSet.add(t); - } - if (!lastFirstSet.has(ETokenType.EPSILON)) break; - } - if (!terminalExist && lastFirstSet?.has(ETokenType.EPSILON)) { - for (const t of item.lookaheadSet) { - newLookaheadSet.add(t); - } - } - - for (const production of productionList) { - const newItem = state.createStateItem(production, 0); - if (!state.items.has(newItem) || !Utils.isSubSet(newLookaheadSet, newItem.lookaheadSet)) { - state.items.add(newItem); - newItem.addLookahead(newLookaheadSet); - this._extendStateItem(state, newItem); - } - } - } else { - for (const production of productionList) { - const newItem = state.createStateItem(production, 0); - if (!state.items.has(newItem) || !Utils.isSubSet(item.lookaheadSet, newItem.lookaheadSet)) { - state.items.add(newItem); - newItem.addLookahead(item.lookaheadSet); - this._extendStateItem(state, newItem); - } - } - } - } - - private _inferNextState(state: State): Set { - const coreMap: Map> = new Map(); - const stateActionTable: ActionTable = this.actionTable.get(state.id) ?? new Map(); - const stateGotoTable: GotoTable = this.gotoTable.get(state.id) ?? new Map(); - - this.actionTable.set(state.id, stateActionTable); - this.gotoTable.set(state.id, stateGotoTable); - - for (const stateItem of state.items) { - if (stateItem.canReduce()) { - let action: ActionInfo; - if (stateItem.production.goal !== NoneTerminal.START) { - action = { - action: EAction.Reduce, - target: stateItem.production.id - }; - } else { - action = { action: EAction.Accept }; - } - - for (const t of stateItem.lookaheadSet) { - this._addAction(stateActionTable, t, action); - } - } else { - const nextItem = stateItem.advance(); - Utils.addMapSetItem(coreMap, stateItem.curSymbol, nextItem); - } - - stateItem.needReInfer = false; - } - - const newStates = new Set(); - for (const [gs, cores] of coreMap.entries()) { - const newState = State.create(Array.from(cores)); - if (GrammarUtils.isTerminal(gs)) { - this._addAction(stateActionTable, gs, { - action: EAction.Shift, - target: newState.id - }); - } else { - stateGotoTable.set(gs, newState.id); - } - - newStates.add(newState); - } - - return newStates; - } - - /** Resolve shift-reduce/reduce-reduce conflict detect */ - private _addAction(table: ActionTable, terminal: Terminal, action: ActionInfo) { - const exist = table.get(terminal); - if (exist && !Utils.isActionEqual(exist, action)) { - // Resolve dangling else ambiguity - if (terminal === Keyword.ELSE && exist.action === EAction.Shift && action.action === EAction.Reduce) { - return; - } else { - // #if _VERBOSE - Logger.warn( - `conflict detect: \n`, - Utils.printAction(exist), - "\n", - Utils.printAction(action) - ); - // #endif - } - } - table.set(terminal, action); - } - - // https://people.cs.pitt.edu/~jmisurda/teaching/cs1622/handouts/cs1622-first_and_follow.pdf - private computeFirstSet() { - for (const production of this.grammar.productions.slice(1)) { - this._computeFirstSetForNT(production.goal); - } - } - - private _computeFirstSetForNT(NT: NoneTerminal) { - // circle detect - const idx = this._firstSetNTStack.findIndex((item) => item === NT); - if (idx !== -1) { - const computingFS = this.firstSetMap.get(NT)!; - const len = this._firstSetNTStack.length; - for (let i = len - 1; i > idx; i--) { - const curNT = this._firstSetNTStack[i]; - this.firstSetMap.set(curNT, computingFS); - } - return computingFS; - } - this._firstSetNTStack.push(NT); - - const productionList = this.grammar.getProductionList(NT); - const firstSet = new Set(); - this.firstSetMap.set(NT, firstSet); - if (this.grammar.isNullableNT(NT)) firstSet.add(ETokenType.EPSILON); - - for (const production of productionList) { - let i = 0; - for (; i < production.derivation.length; i++) { - const gs = production.derivation[i]; - if (GrammarUtils.isTerminal(gs)) { - firstSet.add(gs); - break; - } - - const succeedFirstSet = this._computeFirstSetForNT(gs); - - for (const item of succeedFirstSet) { - if (item !== ETokenType.EPSILON) firstSet.add(item); - } - if (!this.grammar.isNullableNT(gs)) break; - } - if (i === production.derivation.length) firstSet.add(ETokenType.EPSILON); - } - - this._firstSetNTStack.pop(); - return firstSet; - } -} diff --git a/packages/shader-lab/src/lalr/Production.ts b/packages/shader-lab/src/lalr/Production.ts deleted file mode 100644 index 848a7ccb8..000000000 --- a/packages/shader-lab/src/lalr/Production.ts +++ /dev/null @@ -1,17 +0,0 @@ -import { NoneTerminal, GrammarSymbol } from "../parser/GrammarSymbol"; - -export default class Production { - private static _id = 0; - static pool: Map = new Map(); - - readonly goal: NoneTerminal; - readonly derivation: GrammarSymbol[]; - readonly id: number; - - constructor(goal: NoneTerminal, derivation: GrammarSymbol[]) { - this.goal = goal; - this.derivation = derivation; - this.id = Production._id++; - Production.pool.set(this.id, this); - } -} diff --git a/packages/shader-lab/src/lalr/State.ts b/packages/shader-lab/src/lalr/State.ts deleted file mode 100644 index 6ef782249..000000000 --- a/packages/shader-lab/src/lalr/State.ts +++ /dev/null @@ -1,79 +0,0 @@ -import { Terminal } from "../parser/GrammarSymbol"; -import Production from "./Production"; -import StateItem from "./StateItem"; - -export default class State { - static closureMap: Map = new Map(); - static pool: Map = new Map(); - static _id = 0; - - readonly id: number; - readonly cores: Set; - private _items: Set; - get items() { - return this._items; - } - - closured = false; - get needReInfer() { - for (const core of this.cores) { - if (core.needReInfer) return true; - } - return false; - } - - private _stateItemPool: Map = new Map(); - - static create(cores: StateItem[]) { - const cacheKey = this.getMapKey(cores); - const state = this.closureMap.get(cacheKey); - if (state) { - for (const core of cores) { - // merge lookahead - state.createStateItem(core.production, core.position, core.lookaheadSet); - } - return state; - } - - const newState = new State(cores); - this.closureMap.set(cacheKey, newState); - return newState; - } - - // TODO: any optimization? - static getMapKey(cores: StateItem[]) { - return cores.map((item) => `${item.production.id},${item.position}`).join(";"); - } - - private constructor(cores: Iterable) { - this.id = State._id++; - this._items = new Set([...cores]); - this.cores = new Set([...cores]); - for (const it of cores) { - const itemMapKey = this.getStateItemMapKey(it.production, it.position); - this._stateItemPool.set(itemMapKey, it); - } - State.pool.set(this.id, this); - } - - // TODO: any optimization? - getStateItemMapKey(production: Production, position: number) { - return `${production.id},${position}`; - } - - createStateItem(production: Production, position: number, lookaheadSet: Iterable = new Set()) { - const mapId = this.getStateItemMapKey(production, position); - const item = this._stateItemPool.get(mapId); - if (item) { - for (const la of lookaheadSet) { - if (item.lookaheadSet.has(la)) continue; - item.lookaheadSet.add(la); - item.needReInfer = true; - } - return item; - } - const newItem = new StateItem(production, position, lookaheadSet); - this._stateItemPool.set(mapId, newItem); - return newItem; - } -} diff --git a/packages/shader-lab/src/lalr/StateItem.ts b/packages/shader-lab/src/lalr/StateItem.ts deleted file mode 100644 index c065e7d1c..000000000 --- a/packages/shader-lab/src/lalr/StateItem.ts +++ /dev/null @@ -1,78 +0,0 @@ -import { ETokenType } from "../common"; -import { NoneTerminal, Terminal } from "../parser/GrammarSymbol"; -import Production from "./Production"; -import GrammarUtils from "./Utils"; - -export default class StateItem { - static _id = 0; - - readonly production: Production; - readonly position: number; - readonly lookaheadSet: Set; - readonly id: number; - - _needReInfer = true; - get needReInfer() { - return this._needReInfer; - } - set needReInfer(v: boolean) { - this._needReInfer = v; - } - - get curSymbol() { - return this.production.derivation[this.position]; - } - get nextSymbol() { - return this.production.derivation[this.position + 1]; - } - - constructor(production: Production, position: number, lookahead: Iterable) { - this.production = production; - this.position = position; - this.lookaheadSet = new Set(); - for (const la of lookahead) { - this.lookaheadSet.add(la); - } - this.id = StateItem._id++; - } - - addLookahead(ts: Iterable) { - for (const t of ts) { - if (this.lookaheadSet.has(t)) continue; - this.lookaheadSet.add(t); - this.needReInfer = true; - } - } - - symbolByOffset(offset: number) { - return this.production.derivation[this.position + offset]; - } - - canReduce() { - if (this.position > this.production.derivation.length - 1) return true; - else { - for (let i = this.position; i < this.production.derivation.length; i++) { - if (this.production.derivation[i] !== ETokenType.EPSILON) return false; - } - return true; - } - } - - advance() { - // #if _VERBOSE - if (this.canReduce()) throw `Error: advance reduce-able parsing state item`; - // #endif - return new StateItem(this.production, this.position + 1, this.lookaheadSet); - } - - // #if _VERBOSE - toString() { - const coreItem = this.production.derivation.map((item) => GrammarUtils.toString(item)); - coreItem[this.position] = "." + (coreItem[this.position] ?? ""); - - return `${NoneTerminal[this.production.goal]} :=> ${coreItem.join("|")} ;${Array.from(this.lookaheadSet) - .map((item) => GrammarUtils.toString(item)) - .join("/")}`; - } - // #endif -} diff --git a/packages/shader-lab/src/lalr/Utils.ts b/packages/shader-lab/src/lalr/Utils.ts deleted file mode 100644 index fef2fbec9..000000000 --- a/packages/shader-lab/src/lalr/Utils.ts +++ /dev/null @@ -1,76 +0,0 @@ -import { ETokenType, ShaderRange } from "../common"; -import { ASTNode, TreeNode } from "../parser/AST"; -import { TranslationRule } from "../parser/SemanticAnalyzer"; -import { NoneTerminal, GrammarSymbol } from "../parser/GrammarSymbol"; -import Production from "./Production"; -import { ActionInfo, EAction } from "./types"; -import { ShaderLab } from "../ShaderLab"; -import { ClearableObjectPool, IPoolElement } from "@galacean/engine"; -import { NodeChild } from "../parser/types"; -import { Keyword } from "../common/enums/Keyword"; - -export default class GrammarUtils { - static isTerminal(sm: GrammarSymbol) { - return sm < NoneTerminal.START; - } - - static toString(sm: GrammarSymbol) { - if (this.isTerminal(sm)) { - return ETokenType[sm] ?? Keyword[sm]; - } - return NoneTerminal[sm]; - } - - static createProductionWithOptions( - goal: NoneTerminal, - options: GrammarSymbol[][], - /** the ast node */ - astTypePool?: ClearableObjectPool< - { set: (loc: ShaderRange, children: NodeChild[]) => void } & IPoolElement & TreeNode - > - ) { - const ret: [GrammarSymbol[], TranslationRule | undefined][] = []; - for (const opt of options) { - ret.push([ - [goal, ...opt], - function (sa, ...children) { - if (!children[0]) return; - const start = children[0].location.start; - const end = children[children.length - 1].location.end; - const location = ShaderLab.createRange(start, end); - ASTNode.get(astTypePool ?? ASTNode.TrivialNode.pool, sa, location, children); - } - ]); - } - return ret; - } - - static addMapSetItem(map: Map>, k: K, v: T) { - const set = map.get(k) ?? new Set(); - set.add(v); - map.set(k, set); - } - - static isSubSet(sa: Set, sb: Set) { - for (const item of sa) { - if (!sb.has(item)) return false; - } - return true; - } - - static isActionEqual(a: ActionInfo, b: ActionInfo) { - return a.action === b.action && a.target === b.target; - } - - // #if _VERBOSE - static printAction(actionInfo: ActionInfo) { - const production = Production.pool.get(actionInfo.target!); - return ` ${this.printProduction(production)}>`; - } - - static printProduction(production: Production) { - const deriv = production.derivation.map((gs) => GrammarUtils.toString(gs)).join("|"); - return `${NoneTerminal[production.goal]} :=> ${deriv}`; - } - // #endif -} diff --git a/packages/shader-lab/src/lalr/index.ts b/packages/shader-lab/src/lalr/index.ts deleted file mode 100644 index 0867c6e74..000000000 --- a/packages/shader-lab/src/lalr/index.ts +++ /dev/null @@ -1,2 +0,0 @@ -export { LALR1 } from "./LALR1"; -export * from "./CFG"; diff --git a/packages/shader-lab/src/lalr/types.ts b/packages/shader-lab/src/lalr/types.ts deleted file mode 100644 index 7a5c37513..000000000 --- a/packages/shader-lab/src/lalr/types.ts +++ /dev/null @@ -1,17 +0,0 @@ -import { NoneTerminal, Terminal } from "../parser/GrammarSymbol"; - -export type StateActionTable = Map; -export type ActionTable = Map; -export type StateGotoTable = Map; -export type GotoTable = Map; - -export enum EAction { - Shift = 0, - Reduce, - Accept -} - -export interface ActionInfo { - action: EAction; - target?: number; -} diff --git a/packages/shader-lab/src/lexer/Lexer.ts b/packages/shader-lab/src/lexer/Lexer.ts deleted file mode 100644 index e78068aa5..000000000 --- a/packages/shader-lab/src/lexer/Lexer.ts +++ /dev/null @@ -1,534 +0,0 @@ -import { ETokenType } from "../common"; -import { BaseLexer } from "../common/BaseLexer"; -import { BaseToken, EOF } from "../common/BaseToken"; -import { Keyword } from "../common/enums/Keyword"; -import { MacroDefineList } from "../Preprocessor"; -import { ShaderLab } from "../ShaderLab"; - -/** - * The Lexer of ShaderLab Compiler - */ -export class Lexer extends BaseLexer { - private static _lexemeTable = >{ - const: Keyword.CONST, - bool: Keyword.BOOL, - float: Keyword.FLOAT, - double: Keyword.DOUBLE, - int: Keyword.INT, - uint: Keyword.UINT, - break: Keyword.BREAK, - continue: Keyword.CONTINUE, - do: Keyword.DO, - else: Keyword.ELSE, - for: Keyword.FOR, - if: Keyword.IF, - while: Keyword.WHILE, - discard: Keyword.DISCARD, - return: Keyword.RETURN, - bvec2: Keyword.BVEC2, - bvec3: Keyword.BVEC3, - bvec4: Keyword.BVEC4, - ivec2: Keyword.IVEC2, - ivec3: Keyword.IVEC3, - ivec4: Keyword.IVEC4, - uvec2: Keyword.UVEC2, - uvec3: Keyword.UVEC3, - uvec4: Keyword.UVEC4, - vec2: Keyword.VEC2, - vec3: Keyword.VEC3, - vec4: Keyword.VEC4, - mat2: Keyword.MAT2, - mat3: Keyword.MAT3, - mat4: Keyword.MAT4, - in: Keyword.IN, - out: Keyword.OUT, - inout: Keyword.INOUT, - sampler2D: Keyword.SAMPLER2D, - samplerCube: Keyword.SAMPLER_CUBE, - sampler3D: Keyword.SAMPLER3D, - sampler2DShadow: Keyword.SAMPLER2D_SHADOW, - samplerCubeShadow: Keyword.SAMPLER_CUBE_SHADOW, - sampler2DArray: Keyword.SAMPLER2D_ARRAY, - sampler2DArrayShadow: Keyword.SAMPLER2D_ARRAY_SHADOW, - isampler2D: Keyword.I_SAMPLER2D, - isampler3D: Keyword.I_SAMPLER3D, - isamplerCube: Keyword.I_SAMPLER_CUBE, - isampler2DArray: Keyword.I_SAMPLER2D_ARRAY, - usampler2D: Keyword.U_SAMPLER2D, - usampler3D: Keyword.U_SAMPLER3D, - usamplerCube: Keyword.U_SAMPLER_CUBE, - usampler2DArray: Keyword.U_SAMPLER2D_ARRAY, - struct: Keyword.STRUCT, - void: Keyword.VOID, - true: Keyword.True, - false: Keyword.False, - precision: Keyword.PRECISION, - precise: Keyword.PRECISE, - highp: Keyword.HIGHP, - mediump: Keyword.MEDIUMP, - lowp: Keyword.LOWP, - invariant: Keyword.INVARIANT, - flat: Keyword.FLAT, - smooth: Keyword.SMOOTH, - noperspective: Keyword.NOPERSPECTIVE, - centroid: Keyword.CENTROID, - layout: Keyword.LAYOUT, - location: Keyword.LOCATION, - - // Macros ... - "#if": Keyword.MACRO_IF, - "#ifdef": Keyword.MACRO_IFDEF, - "#ifndef": Keyword.MACRO_IFNDEF, - "#else": Keyword.MACRO_ELSE, - "#elif": Keyword.MACRO_ELIF, - "#endif": Keyword.MACRO_ENDIF, - "#undef": Keyword.MACRO_UNDEF - }; - - private _needScanMacroConditionExpression = false; - - *tokenize() { - while (!this.isEnd()) { - yield this.scanToken(); - } - return EOF; - } - - constructor( - source: string, - public macroDefineList: MacroDefineList - ) { - super(source); - } - - override scanToken(): BaseToken { - this.skipCommentsAndSpace(); - if (this.isEnd()) { - return EOF; - } - - if (this._needScanMacroConditionExpression) { - this._needScanMacroConditionExpression = false; - return this._scanMacroConditionExpression(); - } - - const curCharCode = this.getCurCharCode(); - if (BaseLexer.isPreprocessorStartChar(curCharCode)) { - return this._scanDirectives(); - } - if (BaseLexer.isAlpha(curCharCode)) { - return this._scanWord(); - } - if (BaseLexer.isDigit(curCharCode)) { - return this._scanNum(); - } - - const start = this.getShaderPosition(); - const token = BaseToken.pool.get(); - let curChar: string; - - switch (this.getCurChar()) { - case "<": - this.advance(1); - curChar = this.getCurChar(); - if (curChar === "<") { - this.advance(1); - if (this.getCurChar() === "=") { - this.advance(1); - token.set(ETokenType.LEFT_ASSIGN, "<<=", start); - break; - } - token.set(ETokenType.LEFT_OP, "<<", start); - break; - } else if (curChar === "=") { - this.advance(1); - token.set(ETokenType.LE_OP, "<=", start); - break; - } - token.set(ETokenType.LEFT_ANGLE, "<", start); - break; - - case ">": - this.advance(1); - curChar = this.getCurChar(); - if (curChar === ">") { - this.advance(1); - if (this.getCurChar() === "=") { - this.advance(1); - token.set(ETokenType.RIGHT_ASSIGN, ">>=", start); - break; - } - token.set(ETokenType.RIGHT_OP, ">>", start); - break; - } else if (curChar === "=") { - this.advance(1); - token.set(ETokenType.GE_OP, ">=", start); - break; - } - token.set(ETokenType.RIGHT_ANGLE, ">", start); - break; - - case "+": - this.advance(1); - curChar = this.getCurChar(); - if (curChar === "+") { - this.advance(1); - token.set(ETokenType.INC_OP, "++", start); - break; - } else if (curChar === "=") { - this.advance(1); - token.set(ETokenType.ADD_ASSIGN, "+=", start); - break; - } - token.set(ETokenType.PLUS, "+", start); - break; - - case "-": - this.advance(1); - curChar = this.getCurChar(); - if (curChar === "-") { - this.advance(1); - token.set(ETokenType.DEC_OP, "--", start); - break; - } else if (curChar === "=") { - this.advance(1); - token.set(ETokenType.SUB_ASSIGN, "-=", start); - break; - } - token.set(ETokenType.DASH, "-", start); - break; - - case "=": - this.advance(1); - if (this.getCurChar() === "=") { - this.advance(1); - token.set(ETokenType.EQ_OP, "==", start); - break; - } - token.set(ETokenType.EQUAL, "=", start); - break; - - case "!": - this.advance(1); - if (this.getCurChar() === "=") { - this.advance(1); - token.set(ETokenType.NE_OP, "!=", start); - break; - } - token.set(ETokenType.BANG, "!", start); - break; - - case "&": - this.advance(1); - curChar = this.getCurChar(); - if (curChar === "&") { - this.advance(1); - token.set(ETokenType.AND_OP, "&&", start); - break; - } else if (curChar === "=") { - this.advance(1); - token.set(ETokenType.ADD_ASSIGN, "&=", start); - break; - } - token.set(ETokenType.AMPERSAND, "&", start); - break; - - case "|": - this.advance(1); - curChar = this.getCurChar(); - if (curChar === "|") { - this.advance(1); - token.set(ETokenType.OR_OP, "||", start); - break; - } else if (curChar === "=") { - this.advance(1); - token.set(ETokenType.OR_ASSIGN, "|=", start); - break; - } - token.set(ETokenType.VERTICAL_BAR, "|", start); - break; - - case "^": - this.advance(1); - curChar = this.getCurChar(); - if (curChar === "^") { - this.advance(1); - token.set(ETokenType.XOR_OP, "^^", start); - break; - } else if (curChar === "=") { - this.advance(1); - token.set(ETokenType.XOR_ASSIGN, "^=", start); - break; - } - token.set(ETokenType.CARET, "^", start); - break; - - case "*": - this.advance(1); - if (this.getCurChar() === "=") { - this.advance(1); - token.set(ETokenType.MUL_ASSIGN, "*=", start); - break; - } - - token.set(ETokenType.STAR, "*", start); - break; - - case "/": - this.advance(1); - if (this.getCurChar() === "=") { - this.advance(1); - - token.set(ETokenType.DIV_ASSIGN, "/=", start); - break; - } - - token.set(ETokenType.SLASH, "/", start); - break; - - case "%": - this.advance(1); - if (this.getCurChar() === "=") { - this.advance(1); - - token.set(ETokenType.MOD_ASSIGN, "%=", start); - break; - } - - token.set(ETokenType.PERCENT, "%", start); - break; - - case "(": - this.advance(1); - - token.set(ETokenType.LEFT_PAREN, "(", start); - break; - case ")": - this.advance(1); - - token.set(ETokenType.RIGHT_PAREN, ")", start); - break; - case "{": - this.advance(1); - - token.set(ETokenType.LEFT_BRACE, "{", start); - break; - case "}": - this.advance(1); - - token.set(ETokenType.RIGHT_BRACE, "}", start); - break; - case "[": - this.advance(1); - - token.set(ETokenType.LEFT_BRACKET, "[", start); - break; - case "]": - this.advance(1); - - token.set(ETokenType.RIGHT_BRACKET, "]", start); - break; - case ".": - this.advance(1); - if (BaseLexer.isDigit(this.getCurCharCode())) { - return this._scanNumAfterDot(); - } - - token.set(ETokenType.DOT, ".", start); - break; - case ",": - this.advance(1); - - token.set(ETokenType.COMMA, ",", start); - break; - case ":": - this.advance(1); - - token.set(ETokenType.COLON, ":", start); - return token; - case ";": - this.advance(1); - - token.set(ETokenType.SEMICOLON, ";", start); - break; - case "~": - this.advance(1); - - token.set(ETokenType.TILDE, "~", start); - break; - case "?": - this.advance(1); - - token.set(ETokenType.QUESTION, "?", start); - break; - case '"': - this.advance(1); - return this._scanStringConst(); - - default: - this.throwError(this.getShaderPosition(0), `Unexpected character ${this.getCurChar()}`); - } - return token; - } - - private _scanStringConst(): BaseToken { - const start = this.getShaderPosition(); - const buffer: string[] = []; - while (this.getCurChar() !== '"') { - buffer.push(this.getCurChar()); - this.advance(1); - } - this.advance(1); - const range = ShaderLab.createRange(start, this.getShaderPosition()); - - const token = BaseToken.pool.get(); - token.set(ETokenType.STRING_CONST, buffer.join(""), range); - return token; - } - - private _scanNumAfterDot(): BaseToken { - const buffer = ["."]; - while (BaseLexer.isDigit(this.getCurCharCode())) { - buffer.push(this.getCurChar()); - this.advance(1); - } - this._scanFloatSuffix(buffer); - const token = BaseToken.pool.get(); - token.set(ETokenType.FLOAT_CONSTANT, buffer.join(""), this.getShaderPosition(buffer.length)); - return token; - } - - private _scanUtilBreakLine(outBuffer: string[]): void { - while (this.getCurChar() !== "\n" && !this.isEnd()) { - outBuffer.push(this.getCurChar()); - this.advance(1); - } - } - - private _scanDirectives(): BaseToken { - const buffer: string[] = [this.getCurChar()]; - const start = this.getShaderPosition(); - this.advance(1); - while (BaseLexer.isAlpha(this.getCurCharCode())) { - buffer.push(this.getCurChar()); - this.advance(1); - } - const token = BaseToken.pool.get(); - const word = buffer.join(""); - - // If it is a macro definition or conditional expression, we need to skip the rest of the line - if (word === "#define") { - this._scanUtilBreakLine(buffer); - const word = buffer.join("") + "\n"; - token.set(Keyword.MACRO_DEFINE_EXPRESSION, word, start); - } else { - const kt = Lexer._lexemeTable[word]; - token.set(kt ?? ETokenType.ID, word, start); - if (word === "#if" || word === "#elif") { - this._needScanMacroConditionExpression = true; - } - } - - return token; - } - - private _scanMacroConditionExpression(): BaseToken { - const buffer = new Array(); - const start = this.getShaderPosition(); - this._scanUtilBreakLine(buffer); - const word = buffer.join(""); - const token = BaseToken.pool.get(); - token.set(Keyword.MACRO_CONDITIONAL_EXPRESSION, word, start); - return token; - } - - private _scanWord(): BaseToken { - const buffer: string[] = [this.getCurChar()]; - const start = this.getShaderPosition(); - this.advance(1); - while (BaseLexer.isAlnum(this.getCurCharCode())) { - buffer.push(this.getCurChar()); - this.advance(1); - } - const token = BaseToken.pool.get(); - const word = buffer.join(""); - const kt = Lexer._lexemeTable[word]; - - if (this.macroDefineList[word]) { - token.set(Keyword.MACRO_CALL, word, start); - } else { - token.set(kt ?? ETokenType.ID, word, start); - } - return token; - } - - private _scanNum(): BaseToken { - const buffer: string[] = []; - while (BaseLexer.isDigit(this.getCurCharCode())) { - buffer.push(this.getCurChar()); - this.advance(1); - } - const curChar = this.getCurChar(); - if (curChar === ".") { - buffer.push(curChar); - this.advance(1); - while (BaseLexer.isDigit(this.getCurCharCode())) { - buffer.push(this.getCurChar()); - this.advance(1); - } - this._scanFloatSuffix(buffer); - - const token = BaseToken.pool.get(); - token.set(ETokenType.FLOAT_CONSTANT, buffer.join(""), this.getShaderPosition(buffer.length)); - return token; - } else { - if (curChar === "e" || curChar === "E") { - this._scanFloatSuffix(buffer); - - const token = BaseToken.pool.get(); - token.set(ETokenType.FLOAT_CONSTANT, buffer.join(""), this.getShaderPosition(buffer.length)); - return token; - } else { - this._scanIntegerSuffix(buffer); - - const token = BaseToken.pool.get(); - token.set(ETokenType.INT_CONSTANT, buffer.join(""), this.getShaderPosition(buffer.length)); - return token; - } - } - } - - private _scanFloatSuffix(buffer: string[]): void { - let curChar = this.getCurChar(); - if (curChar === "e" || curChar === "E") { - buffer.push(curChar); - this.advance(1); - curChar = this.getCurChar(); - if (curChar === "+" || curChar === "-") { - buffer.push(curChar); - this.advance(1); - curChar = this.getCurChar(); - } - if (!BaseLexer.isDigit(this.getCurCharCode())) - this.throwError(this.getShaderPosition(0), "lexing error, invalid exponent suffix."); - - do { - buffer.push(curChar); - this.advance(1); - curChar = this.getCurChar(); - } while (BaseLexer.isDigit(this.getCurCharCode())); - } - if (curChar === "f" || curChar === "F") { - buffer.push(curChar); - this.advance(1); - } - } - - private _scanIntegerSuffix(buffer: string[]): void { - const curChar = this.getCurChar(); - if (curChar === "u" || curChar === "U") { - buffer.push(curChar); - this.advance(1); - } - } -} diff --git a/packages/shader-lab/src/lexer/index.ts b/packages/shader-lab/src/lexer/index.ts deleted file mode 100644 index c3e7ce1cf..000000000 --- a/packages/shader-lab/src/lexer/index.ts +++ /dev/null @@ -1 +0,0 @@ -export * from "./Lexer"; diff --git a/packages/shader-lab/src/macroProcessor/MacroDefine.ts b/packages/shader-lab/src/macroProcessor/MacroDefine.ts deleted file mode 100644 index fca0054b0..000000000 --- a/packages/shader-lab/src/macroProcessor/MacroDefine.ts +++ /dev/null @@ -1,41 +0,0 @@ -import { ShaderRange } from "../common"; -import { BaseToken } from "../common/BaseToken"; -import { ShaderLabUtils } from "../ShaderLabUtils"; -// #if _VERBOSE -import { GSErrorName } from "../GSError"; -// #endif - -export class MacroDefine { - private _replaceRegex?: RegExp; - private readonly _argsLexemes?: string[]; - - get isFunction(): boolean { - return !!this.args; - } - - constructor( - public readonly macro: BaseToken, - public readonly body?: BaseToken, - public readonly location?: ShaderRange, - public readonly args?: BaseToken[] - ) { - if (args?.length > 0) { - this._argsLexemes = this.args.map((item) => item.lexeme); - this._replaceRegex = new RegExp(`\\b(${this._argsLexemes.join("|")})\\b`, "g"); - } - } - - expandFunctionBody(args: string[]): string { - if (args.length !== this.args?.length) { - throw ShaderLabUtils.createGSError("mismatched function macro", GSErrorName.PreprocessorError, "", this.location); - } - - if (args.length === 0) { - return this.body.lexeme; - } - - return this.body.lexeme.replace(this._replaceRegex, (m) => { - return args[this._argsLexemes.indexOf(m)]; - }); - } -} diff --git a/packages/shader-lab/src/macroProcessor/MacroParser.ts b/packages/shader-lab/src/macroProcessor/MacroParser.ts deleted file mode 100644 index d845102e1..000000000 --- a/packages/shader-lab/src/macroProcessor/MacroParser.ts +++ /dev/null @@ -1,669 +0,0 @@ -import { ShaderMacro } from "@galacean/engine"; -import { ShaderPosition, ShaderRange } from "../common"; -import { BaseToken } from "../common/BaseToken"; -import { GSErrorName } from "../GSError"; -import { ShaderLab } from "../ShaderLab"; -import { ShaderLabUtils } from "../ShaderLabUtils"; -import { MacroParserConstant, MacroParserKeyword, MacroParserToken } from "./constants"; -import { MacroDefine } from "./MacroDefine"; -import MacroParserLexer from "./MacroParserLexer"; -import { PpUtils } from "./Utils"; -// #if _VERBOSE -import PpSourceMap, { BlockInfo } from "./sourceMap"; -// #endif -import { BaseLexer } from "../common/BaseLexer"; - -export interface ExpandSegment { - // #if _VERBOSE - block?: BlockInfo; - // #endif - rangeInBlock: ShaderRange; - replace: string; -} - -/** @internal */ -export class MacroParser { - static lexer: MacroParserLexer; - - private static _definedMacros: Map = new Map(); - private static _expandSegmentsStack: ExpandSegment[][] = [[]]; - - private static _expandVisitedMacros: Record = {}; - private static _expandVersionId: number = 1; - - // #if _VERBOSE - static _errors: Error[] = []; - // #endif - - static parse(source: string, macros: ShaderMacro[]): string | null { - MacroParser._reset(); - - for (const macro of macros) { - MacroParser._addPredefinedMacro(macro.name, macro.value); - } - - this.lexer = new MacroParserLexer(source); - return MacroParser._parseDirectives(this.lexer); - } - - private static _reset() { - this._expandSegmentsStack.length = 0; - this._expandSegmentsStack.push([]); - - this._definedMacros.clear(); - this._addPredefinedMacro("GL_ES"); - - // #if _VERBOSE - this._errors.length = 0; - // #endif - } - - private static _addPredefinedMacro(macro: string, value?: string) { - const token = BaseToken.pool.get(); - token.set(MacroParserToken.id, macro); - - let macroBody: BaseToken | undefined; - if (value != undefined) { - macroBody = BaseToken.pool.get(); - macroBody.set(MacroParserToken.id, value); - } - - this._definedMacros.set(macro, new MacroDefine(token, macroBody)); - } - - private static _parseDirectives(lexer: MacroParserLexer): string | null { - let directive: BaseToken | undefined; - while ((directive = lexer.scanToken())) { - switch (directive.type) { - case MacroParserToken.id: - this._parseMacro(lexer, directive); - break; - case MacroParserKeyword.define: - this._parseDefine(lexer); - break; - case MacroParserKeyword.undef: - this._parseUndef(lexer); - break; - case MacroParserKeyword.if: - this._parseIfDirective(lexer, MacroParserKeyword.if); - break; - case MacroParserKeyword.ifndef: - this._parseIfDirective(lexer, MacroParserKeyword.ifndef); - break; - case MacroParserKeyword.ifdef: - this._parseIfDirective(lexer, MacroParserKeyword.ifdef); - break; - } - } - // #if _VERBOSE - if (this._errors.length > 0) return null; - // #endif - - return PpUtils.expand(this._getExpandSegments(), lexer.source, lexer.sourceMap); - } - - private static _getExpandSegments(): ExpandSegment[] { - return this._expandSegmentsStack[this._expandSegmentsStack.length - 1]; - } - - private static _reportError(loc: ShaderRange | ShaderPosition, message: string, source: string, file?: string) { - const error = ShaderLabUtils.createGSError(message, GSErrorName.PreprocessorError, source, loc, file); - // #if _VERBOSE - this._errors.push(error); - // #endif - } - - private static _parseIfDirective(lexer: MacroParserLexer, directiveType: MacroParserKeyword): void { - const directiveLength = - directiveType === MacroParserKeyword.if ? 3 : directiveType === MacroParserKeyword.ifdef ? 6 : 7; // #if = 3, #ifdef = 6, #ifndef = 7 - const start = lexer.currentIndex - directiveLength; - let skipMacro = false; - - let shouldInclude: MacroParserConstant; - if (directiveType === MacroParserKeyword.if) { - shouldInclude = this._parseConstantExpression(lexer); - } else { - const macroToken = lexer.scanWord(); - const lexeme = macroToken.lexeme; - if (lexeme.startsWith("GL_")) { - skipMacro = true; - } else { - const defined = this._definedMacros.get(lexeme); - shouldInclude = directiveType === MacroParserKeyword.ifdef ? !!defined : !defined; - } - } - - lexer.skipSpace(true); - const { body, nextDirective } = lexer.scanMacroBranchBody(); - - if (skipMacro) return; - - if (shouldInclude) { - const end = - nextDirective.type === MacroParserKeyword.endif ? lexer.getShaderPosition(0) : lexer.scanRemainMacro(); - const expanded = this._expandMacroChunk(body.lexeme, body.location, lexer); - this._addContentReplace( - lexer.file, - ShaderLab.createPosition(start), - end, - expanded.content, - lexer.blockRange, - expanded.sourceMap - ); - } else { - this._addEmptyReplace(lexer, start); - this._processConditionalDirective(nextDirective.type, lexer); - } - } - - private static _processConditionalDirective( - directive: MacroParserKeyword.elif | MacroParserKeyword.else | MacroParserKeyword.endif, - scanner: MacroParserLexer - ) { - if (directive === MacroParserKeyword.endif) { - return; - } - - const start = scanner.currentIndex; - - if (directive === MacroParserKeyword.else) { - const { body } = scanner.scanMacroBranchBody(); - const expanded = this._expandMacroChunk(body.lexeme, body.location, scanner); - this._addContentReplace( - scanner.file, - ShaderLab.createPosition(start), - scanner.getShaderPosition(0), - expanded.content, - scanner.blockRange, - expanded.sourceMap - ); - } else if (directive === MacroParserKeyword.elif) { - const constantExpr = this._parseConstantExpression(scanner); - const { body, nextDirective } = scanner.scanMacroBranchBody(); - if (constantExpr) { - const end = - nextDirective.type === MacroParserKeyword.endif ? scanner.currentIndex : scanner.scanRemainMacro().index; - const expanded = this._expandMacroChunk(body.lexeme, body.location, scanner); - this._addContentReplace( - scanner.file, - ShaderLab.createPosition(start), - ShaderLab.createPosition(end), - expanded.content, - scanner.blockRange, - expanded.sourceMap - ); - } else { - this._addContentReplace( - scanner.file, - ShaderLab.createPosition(start), - ShaderLab.createPosition(scanner.currentIndex), - "", - scanner.blockRange - ); - this._processConditionalDirective(nextDirective.type, scanner); - } - } - } - - private static _parseConstantExpression(scanner: MacroParserLexer): MacroParserConstant { - scanner.skipSpace(true); - return this._parseLogicalOrExpression(scanner); - } - - private static _parseLogicalOrExpression(scanner: MacroParserLexer): MacroParserConstant { - const operand1 = this._parseLogicalAndExpression(scanner); - const operator = scanner.peek(2); - if (operator && operator === "||") { - scanner.advance(2); - scanner.skipSpace(false); - const operand2 = this._parseLogicalOrExpression(scanner); - return operand1 || operand2; - } - return operand1; - } - - private static _parseLogicalAndExpression(scanner: MacroParserLexer): MacroParserConstant { - const operand1 = this._parseEqualityExpression(scanner); - const operator = scanner.peek(2); - if (operator && operator === "&&") { - scanner.advance(2); - scanner.skipSpace(false); - const operand2 = this._parseLogicalAndExpression(scanner); - return operand1 && operand2; - } - return operand1; - } - - private static _parseEqualityExpression(scanner: MacroParserLexer): MacroParserConstant { - const operand1 = this._parseRelationalExpression(scanner); - const operator = scanner.peek(2); - if (operator && ["==", "!="].includes(operator)) { - scanner.advance(2); - scanner.skipSpace(false); - const operand2 = this._parseEqualityExpression(scanner); - switch (operator) { - case "==": - return operand1 === operand2; - case "!=": - return operand1 !== operand2; - } - } - return operand1; - } - - private static _parseRelationalExpression(scanner: MacroParserLexer): MacroParserConstant { - const operand1 = this._parseShiftExpression(scanner) as number; - let operator = scanner.peek(2); - if (operator[1] !== "=") operator = operator[0]; - if (operator && [">", "<", ">=", "<="].includes(operator)) { - const opPos = scanner.getShaderPosition(0); - scanner.advance(operator.length); - scanner.skipSpace(false); - const operand2 = this._parseRelationalExpression(scanner) as number; - if (typeof operand1 !== typeof operand2 && typeof operand1 !== "number") { - this._reportError(opPos, "invalid operator in relation expression.", scanner.source, scanner.file); - return; - } - switch (operator) { - case ">": - return operand1 > operand2; - case "<": - return operand1 < operand2; - case ">=": - return operand1 >= operand2; - case "<=": - return operand1 <= operand2; - } - } - return operand1; - } - - private static _parseShiftExpression(scanner: MacroParserLexer): MacroParserConstant { - const operand1 = this._parseAdditiveExpression(scanner) as number; - const operator = scanner.peek(2); - if (operator && [">>", "<<"].includes(operator)) { - const opPos = scanner.getShaderPosition(0); - scanner.advance(2); - scanner.skipSpace(false); - const operand2 = this._parseShiftExpression(scanner) as number; - if (typeof operand1 !== typeof operand2 && typeof operand1 !== "number") { - this._reportError(opPos, "invalid operator in shift expression.", scanner.source, scanner.file); - return; - } - switch (operator) { - case ">>": - return operand1 >> operand2; - case "<<": - return operand1 << operand2; - } - } - - return operand1; - } - - private static _parseAdditiveExpression(scanner: MacroParserLexer): MacroParserConstant { - const operand1 = this._parseMulticativeExpression(scanner) as number; - if ([">", "<"].includes(scanner.getCurChar())) { - const opPos = scanner.getShaderPosition(0); - scanner.advance(1); - - const operator = scanner.getCurChar(); - scanner.skipSpace(false); - const operand2 = this._parseAdditiveExpression(scanner) as number; - if (typeof operand1 !== typeof operand2 && typeof operand1 !== "number") { - this._reportError(opPos, "invalid operator.", scanner.source, scanner.file); - return false; - } - switch (operator) { - case "+": - return operand1 + operand2; - case "-": - return operand1 - operand2; - } - } - return operand1; - } - - private static _parseMulticativeExpression(scanner: MacroParserLexer): MacroParserConstant { - const operand1 = this._parseUnaryExpression(scanner) as number; - scanner.skipSpace(false); - if (["*", "/", "%"].includes(scanner.getCurChar())) { - const opPos = scanner.getShaderPosition(0); - const operator = scanner.getCurChar(); - scanner.skipSpace(false); - const operand2 = this._parseMulticativeExpression(scanner) as number; - if (typeof operand1 !== typeof operand2 && typeof operand1 !== "number") { - this._reportError(opPos, "invalid operator.", scanner.source, scanner.file); - return; - } - switch (operator) { - case "*": - return operand1 * operand2; - case "/": - return operand1 / operand2; - case "%": - return operand1 % operand2; - } - } - return operand1; - } - - private static _parseUnaryExpression(scanner: MacroParserLexer) { - const operator = scanner.getCurChar(); - if (["+", "-", "!"].includes(operator)) { - const opPos = scanner.getShaderPosition(0); - scanner.advance(1); - scanner.skipSpace(false); - const parenExpr = this._parseParenthesisExpression(scanner); - if ((operator === "!" && typeof parenExpr !== "boolean") || (operator !== "!" && typeof parenExpr !== "number")) { - this._reportError(opPos, "invalid operator.", scanner.source, scanner.file); - } - - switch (operator) { - case "+": - return parenExpr; - case "-": - return -parenExpr; - case "!": - return !parenExpr; - } - } - return this._parseParenthesisExpression(scanner); - } - - private static _parseParenthesisExpression(scanner: MacroParserLexer): MacroParserConstant { - if (scanner.getCurChar() === "(") { - scanner.advance(1); - scanner.skipSpace(false); - const ret = this._parseConstantExpression(scanner); - scanner.scanToChar(")"); - scanner.advance(1); - return ret; - } - return this._parseConstant(scanner); - } - - private static _parseConstant(scanner: MacroParserLexer): MacroParserConstant { - if (BaseLexer.isAlpha(scanner.getCurCharCode())) { - const id = scanner.scanWord(); - if (id.type === MacroParserKeyword.defined) { - const withParen = scanner.peekNonSpace() === "("; - const macro = scanner.scanWord(); - if (withParen) { - scanner.scanToChar(")"); - scanner.advance(1); - } - return !!this._definedMacros.get(macro.lexeme); - } else { - const macro = this._definedMacros.get(id.lexeme); - - if (!macro) { - return false; - } - - if (!macro.body) { - return true; - } - - if (macro.isFunction) { - this._reportError(id.location, "invalid function macro usage", scanner.source, scanner.file); - } - const value = Number(macro.body.lexeme); - if (!Number.isInteger(value)) { - this._reportError(id.location, `invalid const macro: ${id.lexeme}`, scanner.source, scanner.file); - } - return value; - } - } else if (BaseLexer.isDigit(scanner.getCurCharCode())) { - const integer = scanner.scanInteger(); - return Number(integer.lexeme); - } else { - this._reportError( - scanner.getShaderPosition(0), - `invalid token: ${scanner.getCurChar()}`, - scanner.source, - scanner.file - ); - } - } - - private static _parseMacroFunctionArgs( - source: string, - startIndex: number, - macroName: string - ): { args: string[]; endIndex: number } { - const length = source.length; - let i = startIndex + macroName.length; - - // Find opening parenthesis - while (i < length && source.charCodeAt(i) !== 40) i++; - - // Parse function arguments - const args: string[] = []; - let level = 1; - let argStart = i + 1; - let k = argStart; - - while (k < length && level > 0) { - const charCode = source.charCodeAt(k); - if (charCode === 40) { - level++; - } else if (charCode === 41) { - if (--level === 0) { - const arg = source.substring(argStart, k).trim(); - if (arg.length > 0) args.push(arg); - break; - } - } else if (charCode === 44 && level === 1) { - const arg = source.substring(argStart, k).trim(); - if (arg.length > 0) args.push(arg); - argStart = k + 1; - } - k++; - } - - return { args, endIndex: k + 1 }; - } - - private static _expandMacroBody(body: string): string { - const visitedMacros = this._expandVisitedMacros; - const currentVersionId = ++this._expandVersionId; - let expandedBody = body; - let hasExpansion = true; - - while (hasExpansion) { - hasExpansion = false; - const length = expandedBody.length; - let i = 0; - - while (i < length) { - const charCode = expandedBody.charCodeAt(i); - if (!BaseLexer.isAlpha(charCode)) { - i++; - continue; - } - - const start = i; - while (i < length && BaseLexer.isAlnum(expandedBody.charCodeAt(i))) { - i++; - } - - const macroName = expandedBody.substring(start, i); - const macro = this._definedMacros.get(macroName); - - if (!macro || visitedMacros[macroName] === currentVersionId) { - continue; - } - - // Prevent circular references - visitedMacros[macroName] = currentVersionId; - - let replacement: string; - let endIndex: number; - - if (!macro.isFunction) { - replacement = macro.body?.lexeme ?? ""; - endIndex = i; - } else { - const { args, endIndex: newEndIndex } = this._parseMacroFunctionArgs(expandedBody, start, macroName); - replacement = macro.expandFunctionBody(args); - endIndex = newEndIndex; - } - - expandedBody = expandedBody.substring(0, start) + replacement + expandedBody.substring(endIndex); - hasExpansion = true; - break; - } - } - - return expandedBody; - } - - /** - * Recursively expand macro body and expansion. - */ - private static _expandMacroChunk( - chunk: string, - loc: ShaderRange, - parentScanner: MacroParserLexer - ): { - content: string; - // #if _VERBOSE - sourceMap: PpSourceMap; - // #endif - }; - private static _expandMacroChunk( - chunk: string, - loc: ShaderRange, - file: string - ): { - content: string; - // #if _VERBOSE - sourceMap: PpSourceMap; - // #endif - }; - private static _expandMacroChunk( - chunk: string, - loc: ShaderRange, - scannerOrFile: MacroParserLexer | string - ): { - content: string; - // #if _VERBOSE - sourceMap: PpSourceMap; - // #endif - } { - this._expandSegmentsStack.push([]); - let scanner: MacroParserLexer; - if (typeof scannerOrFile === "string") { - scanner = new MacroParserLexer(chunk, scannerOrFile); - } else { - scanner = new MacroParserLexer(chunk, scannerOrFile.file, loc); - } - - const ret = this._parseDirectives(scanner); - this._expandSegmentsStack.pop(); - return { - content: ret, - // #if _VERBOSE - sourceMap: scanner.sourceMap - // #endif - }; - } - - private static _addEmptyReplace(lexer: MacroParserLexer, start: number) { - this._addContentReplace( - lexer.file, - ShaderLab.createPosition(start), - lexer.getShaderPosition(0), - "", - lexer.blockRange - ); - } - - private static _addContentReplace( - sourceFile: string, - start: ShaderPosition, - end: ShaderPosition, - content: string, - sourceRange?: ShaderRange, - sourceMap?: PpSourceMap - ): void { - // #if _VERBOSE - const block = new BlockInfo(sourceFile, sourceRange, sourceMap); - // #endif - - const range = ShaderLab.createRange(start, end); - this._getExpandSegments().push({ - // #if _VERBOSE - block, - // #endif - rangeInBlock: range, - replace: content - }); - } - - private static _parseDefine(lexer: MacroParserLexer): void { - const start = lexer.getShaderPosition(7); - const macroName = lexer.scanWord(); - - const { lexeme, location } = macroName; - let { end } = location; - if (this._definedMacros.get(lexeme) && lexeme.startsWith("GL_")) { - this._reportError(location, `Redefined macro: ${lexeme}`, lexer.source, lexer.file); - } - - let macroArgs: BaseToken[] | undefined; - if (lexer.getCurChar() === "(") { - macroArgs = lexer.scanWordsUntilTerminator(")"); - end = lexer.getShaderPosition(0); - } - const macroBody = lexer.scanMacroBody(); - const range = ShaderLab.createRange(start, end); - const macroDefine = new MacroDefine(macroName, macroBody, range, macroArgs); - this._definedMacros.set(lexeme, macroDefine); - - this._addContentReplace(lexer.file, start, lexer.getShaderPosition(0), "", lexer.blockRange); - } - - private static _parseUndef(lexer: MacroParserLexer): void { - const start = lexer.getShaderPosition(6); - const macroName = lexer.scanWord(); - this._definedMacros.delete(macroName.lexeme); - - this._addContentReplace(lexer.file, start, lexer.getShaderPosition(0), "", lexer.blockRange); - } - - private static _parseMacro(lexer: MacroParserLexer, token: BaseToken) { - const macro = this._definedMacros.get(token.lexeme); - if (macro) { - const { location } = token; - if (macro.isFunction) { - const { args, endIndex } = this._parseMacroFunctionArgs(lexer.source, location.start.index, token.lexeme); - const macroBodyExpanded = macro.expandFunctionBody(args); - const expandedContent = this._expandMacroBody(macroBodyExpanded); - - const remainingLength = endIndex - location.end.index; - lexer.advance(remainingLength); - - this._addContentReplace( - lexer.file, - location.start, - lexer.getShaderPosition(0), - expandedContent, - lexer.blockRange - ); - } else { - const macroContent = macro.body?.lexeme ?? ""; - const expandedContent = this._expandMacroBody(macroContent); - - this._addContentReplace(lexer.file, location.start, location.end, expandedContent, lexer.blockRange); - } - } - } - - // #if _VERBOSE - static convertSourceIndex(index: number) { - return this.lexer.sourceMap.map(index); - } - // #endif -} diff --git a/packages/shader-lab/src/macroProcessor/MacroParserLexer.ts b/packages/shader-lab/src/macroProcessor/MacroParserLexer.ts deleted file mode 100644 index aa278d088..000000000 --- a/packages/shader-lab/src/macroProcessor/MacroParserLexer.ts +++ /dev/null @@ -1,309 +0,0 @@ -import { ShaderPosition, ShaderRange } from "../common"; -// #if _VERBOSE -import PpSourceMap from "./sourceMap"; -// #endif -import { BaseLexer } from "../common/BaseLexer"; -import { BaseToken, EOF } from "../common/BaseToken"; -import { ShaderLab } from "../ShaderLab"; -import { MacroParserKeyword, MacroParserToken } from "./constants"; - -export type OnToken = (token: BaseToken, scanner: MacroParserLexer) => void; - -export default class MacroParserLexer extends BaseLexer { - private static _isPpCharacters(charCode: number): boolean { - return ( - charCode === 35 || // # - BaseLexer.isAlnum(charCode) // _, A-Z, a-z, 0-9 - ); - } - - private static _lexemeTable = >{ - "#define": MacroParserKeyword.define, - "#undef": MacroParserKeyword.undef, - "#if": MacroParserKeyword.if, - "#ifdef": MacroParserKeyword.ifdef, - "#ifndef": MacroParserKeyword.ifndef, - "#else": MacroParserKeyword.else, - "#elif": MacroParserKeyword.elif, - "#endif": MacroParserKeyword.endif, - defined: MacroParserKeyword.defined - }; - - private macroLvl = 0; - - // #if _VERBOSE - readonly sourceMap = new PpSourceMap(); - readonly file: string; - readonly blockRange?: ShaderRange; - // #endif - - constructor( - source: string, - // #if _VERBOSE - file = "__main__", - blockRange?: ShaderRange - // #endif - ) { - super(source); - // #if _VERBOSE - this.file = file; - this.blockRange = blockRange; - // #endif - } - - scanWordsUntilTerminator(terminatorChar: string): BaseToken[] { - const tokens: BaseToken[] = []; - while (true) { - this.skipSpace(true); - if (BaseLexer.isAlpha(this.getCurCharCode())) { - tokens.push(this.scanWord()); - } else if (this.getCurChar() === terminatorChar) { - this.advance(1); - return tokens; - } else { - this.advance(1); - } - } - } - - scanWord(): BaseToken { - // Skip all non-alphabetic characters, primarily used for handling defined(MACRO) syntax - while (!BaseLexer.isAlpha(this.getCurCharCode()) && !this.isEnd()) { - this.advance(1); - } - - if (this.isEnd()) { - return EOF; - } - - const start = this._currentIndex; - while (BaseLexer.isAlnum(this.getCurCharCode()) && !this.isEnd()) { - this.advance(1); - } - const end = this._currentIndex; - const word = this._source.slice(start, end); - if (end === start) { - this.throwError(this.getShaderPosition(0), "no word found."); - } - - const token = BaseToken.pool.get(); - const tokenType = MacroParserLexer._lexemeTable[word] ?? MacroParserToken.id; - token.set(tokenType, word, this.getShaderPosition(word.length)); - return token; - } - - override scanToken(): BaseToken | undefined { - this.skipCommentsAndSpace(); - if (this.isEnd()) { - return; - } - const source = this._source; - let start = this._currentIndex; - let found = false; - for (var n = source.length; this._currentIndex < n; ) { - if (MacroParserLexer._isPpCharacters(source.charCodeAt(this._currentIndex))) { - this.advance(1); - found = true; - } else { - if (found) { - break; - } - this.advance(1); - this.skipCommentsAndSpace(); - start = this._currentIndex; - } - } - - const lexeme = source.slice(start, this._currentIndex); - const token = BaseToken.pool.get(); - const type = MacroParserLexer._lexemeTable[lexeme] ?? MacroParserToken.id; - token.set(type, lexeme, this.getShaderPosition(this._currentIndex - start)); - - if (type === MacroParserKeyword.if || type === MacroParserKeyword.ifdef || type === MacroParserKeyword.ifndef) { - this.macroLvl++; - } else if (type === MacroParserKeyword.endif) { - this.macroLvl--; - } - - return token; - } - - scanQuotedString(): BaseToken { - this.skipSpace(true); - const source = this._source; - const sourceLength = source.length; - const start = this.getShaderPosition(0); - - let index = this._currentIndex; - - // Check for opening quote - if (source.charCodeAt(index) !== 34) { - // 34 = '"' - this.throwError(start, "Unexpected char, expected '\"'"); - } - - const contentStart = ++index; // Skip opening quote and record start - - // Fast scan to closing quote - while (index < sourceLength && source.charCodeAt(index) !== 34) { - index++; - } - - if (index >= sourceLength) { - this.throwError(this.getShaderPosition(0), "Unexpected char, expected '\"'"); - } - - const lexeme = source.slice(contentStart, index); - this.advance(index + 1 - this._currentIndex); // Skip to after closing quote - - const token = BaseToken.pool.get(); - token.set(MacroParserToken.string_const, lexeme, start); - return token; - } - - scanToChar(char: string) { - const source = this._source; - while (source[this._currentIndex] !== char && !this.isEnd()) { - this.advance(1); - } - } - - scanMacroBranchBody(): { - body: BaseToken; - nextDirective: BaseToken; - } { - const shaderPosition = this.getShaderPosition(0); - const startLevel = this.macroLvl; - - let nextDirective = this.scanToken()!; - while (true) { - const { type } = nextDirective; - if (type === MacroParserKeyword.endif && startLevel - 1 === this.macroLvl) { - break; - } else if ( - (type === MacroParserKeyword.elif || type === MacroParserKeyword.else) && - startLevel === this.macroLvl - ) { - break; - } - nextDirective = this.scanToken()!; - } - - const lexeme = this._source.slice(shaderPosition.index, this._currentIndex - nextDirective.lexeme.length - 1); - const body = BaseToken.pool.get(); - body.set(MacroParserToken.chunk, lexeme, shaderPosition); - return { body, nextDirective }; - } - - scanPairedBlock(lc: string, rc: string): void { - this.scanToChar(lc); - let level = 0; - const source = this._source; - - do { - const curChar = source[this._currentIndex]; - - if (curChar === lc) { - level++; - } else if (curChar === rc) { - level--; - } - this.advance(1); - } while (level > 0); - } - - /** - * @returns end ShaderPosition - */ - scanRemainMacro(): ShaderPosition { - const startLvl = this.macroLvl; - let directive = this.scanToken()!; - while (!this.isEnd() && (directive.type !== MacroParserKeyword.endif || startLvl - 1 !== this.macroLvl)) { - directive = this.scanToken()!; - } - return this.getShaderPosition(0); - } - - peekNonSpace() { - let current = this._currentIndex; - while (/\s/.test(this._source[current])) { - current += 1; - } - return this._source[current]; - } - - scanInteger() { - const start = this._currentIndex; - while (BaseLexer.isDigit(this.getCurCharCode())) { - this.advance(1); - } - if (this._currentIndex === start) { - this.throwError(this.getShaderPosition(0), "no integer found"); - } - const integer = this._source.slice(start, this._currentIndex); - - const token = BaseToken.pool.get(); - token.set(MacroParserToken.int_constant, integer, this.getShaderPosition(0)); - return token; - } - - scanMacroBody(): BaseToken { - this.skipSpace(false); - let lexeme = ""; - const source = this._source; - const sourceLength = source.length; - - const start = this.getShaderPosition(0); - while (this._currentIndex < sourceLength) { - const charCode = source.charCodeAt(this._currentIndex); - - // Check for line break (terminates macro definition), break when encounter "\n" - if (charCode === 10) { - break; - } - - // Check for comments (both single-line and multi-line) - if (charCode === 47) { - const nextIndex = this._currentIndex + 1; - if (nextIndex < sourceLength) { - const nextCharCode = source.charCodeAt(nextIndex); - - // Single-line comment (terminates macro definition), break when encounter "//" - if (nextCharCode === 47) { - break; - } - - // Multi-line comment (skip but don't terminate) - if (nextCharCode === 42) { - this.advance(2); // Skip "/*" - - // Skip until end of multi-line comment - while (this._currentIndex + 1 < sourceLength) { - const currentIndex = this._currentIndex; - if (source.charCodeAt(currentIndex) === 42 && source.charCodeAt(currentIndex + 1) === 47) { - this.advance(2); // Skip "*/ - break; - } - this.advance(1); - } - - lexeme += " "; // Replace comment with space - continue; - } - } - } - - // Accumulate useful character - lexeme += source[this._currentIndex]; - this.advance(1); - } - - if (lexeme === "") { - return null; - } - - const valueToken = BaseToken.pool.get(); - valueToken.set(MacroParserToken.line_remain, lexeme, ShaderLab.createRange(start, this.getShaderPosition(0))); - return valueToken; - } -} diff --git a/packages/shader-lab/src/macroProcessor/Utils.ts b/packages/shader-lab/src/macroProcessor/Utils.ts deleted file mode 100644 index 557163296..000000000 --- a/packages/shader-lab/src/macroProcessor/Utils.ts +++ /dev/null @@ -1,41 +0,0 @@ -import { ExpandSegment } from "./MacroParser"; -// #if _VERBOSE -import PpSourceMap, { MapRange } from "./sourceMap"; -// #endif - -export class PpUtils { - static expand( - segments: ExpandSegment[], - source: string, - // #if _VERBOSE - sourceMap?: PpSourceMap - //#endif - ) { - const ret: string[] = []; - let startIdx = 0; - let generatedIdx = 0; - - for (const seg of segments) { - const originSlice = source.slice(startIdx, seg.rangeInBlock.start.index); - ret.push(originSlice, seg.replace); - - const generatedIdxEnd = generatedIdx + originSlice.length + seg.replace.length; - - // #if _VERBOSE - const mapRange = new MapRange(seg.block, seg.rangeInBlock, { - start: generatedIdx + originSlice.length, - end: generatedIdxEnd - }); - sourceMap?.addMapRange(mapRange); - // #endif - - startIdx = seg.rangeInBlock.end.index; - generatedIdx = generatedIdxEnd; - } - ret.push(source.slice(startIdx)); - const result = ret.join(""); - - // Replace multiple consecutive newlines with a single newline to clean up the output - return result.replace(/\n\s*\n+/g, "\n"); - } -} diff --git a/packages/shader-lab/src/macroProcessor/constants.ts b/packages/shader-lab/src/macroProcessor/constants.ts deleted file mode 100644 index 28f8bc66e..000000000 --- a/packages/shader-lab/src/macroProcessor/constants.ts +++ /dev/null @@ -1,58 +0,0 @@ -export enum MacroParserToken { - id, - line_remain, - chunk, - int_constant, - string_const, - /** \>> */ - right_op, - /** << */ - left_op, - left_paren, - right_paren, - /** \>= */ - ge, - /** <= */ - le, - /** == */ - eq, - /** != */ - neq, - /** && */ - and, - /** || */ - or, - /** < */ - left_angle, - /** \> */ - right_angle, - /** \* */ - star, - /** + */ - plus, - /** \- */ - dash, - /** ! */ - bang, - /** \/ */ - slash, - /** % */ - percent, - - EOF = 100 -} - -export enum MacroParserKeyword { - define = 101, - undef, - if, - ifdef, - ifndef, - else, - elif, - endif, - - defined -} - -export type MacroParserConstant = boolean | number; diff --git a/packages/shader-lab/src/macroProcessor/index.ts b/packages/shader-lab/src/macroProcessor/index.ts deleted file mode 100644 index 9acedbaed..000000000 --- a/packages/shader-lab/src/macroProcessor/index.ts +++ /dev/null @@ -1 +0,0 @@ -export * from "./MacroParser"; diff --git a/packages/shader-lab/src/macroProcessor/sourceMap/index.ts b/packages/shader-lab/src/macroProcessor/sourceMap/index.ts deleted file mode 100644 index 44ea26abc..000000000 --- a/packages/shader-lab/src/macroProcessor/sourceMap/index.ts +++ /dev/null @@ -1,78 +0,0 @@ -import { ShaderRange } from "../../common/ShaderRange"; - -// #if _VERBOSE -export class BlockInfo { - readonly sourceFile: string; - readonly rangeInFile?: ShaderRange; - readonly sourceMap?: PpSourceMap; - - constructor(sourceFile?: string, rangeInFile?: ShaderRange, sourceMap?: PpSourceMap) { - this.sourceFile = sourceFile ?? "__main__"; - this.rangeInFile = rangeInFile; - this.sourceMap = sourceMap; - } -} - -export class MapRange { - sourceLoc: { block: BlockInfo; rangeInBlock: ShaderRange }; - generatedLoc: { start: number; end: number }; - - constructor(sourceBlock: BlockInfo, rangeInBlock: ShaderRange, generatedLoc: { start: number; end: number }) { - this.sourceLoc = { block: sourceBlock, rangeInBlock }; - this.generatedLoc = generatedLoc; - } - - getSourceIndex(generatedIdx: number) { - const { block, rangeInBlock } = this.sourceLoc; - if (block.sourceMap) { - if (block.sourceFile !== "__main__") return block.sourceMap.map(generatedIdx - this.generatedLoc.start); - else if (rangeInBlock) { - return { - sourceFile: block.sourceFile, - index: (block.rangeInFile?.start.index ?? 0) + rangeInBlock.start.index - }; - } - } - - return { - index: generatedIdx - this.generatedLoc.start + rangeInBlock.start.index + (block.rangeInFile?.start.index ?? 0), - sourceFile: this.sourceLoc.block.sourceFile - }; - } -} - -export default class PpSourceMap { - readonly mapRanges: MapRange[] = []; - - static rangeContains(range: MapRange["generatedLoc"], index: number) { - return range.start <= index && range.end > index; - } - - addMapRange(mapRange: MapRange) { - this.mapRanges.push(mapRange); - } - - /** - * @returns index - */ - map(index: number): { sourceFile: string; index: number } { - let curRange: MapRange | undefined; - for (const range of this.mapRanges) { - const { generatedLoc } = range; - if (PpSourceMap.rangeContains(generatedLoc, index)) { - return range.getSourceIndex(index); - } else if (range.generatedLoc.start < index) { - curRange = range; - continue; - } else { - break; - } - } - if (!curRange) return { sourceFile: "__main__", index }; - return { - index: index - curRange.generatedLoc.end + curRange.sourceLoc.rangeInBlock.end.index, - sourceFile: curRange.sourceLoc.block.sourceFile - }; - } -} -// #endif diff --git a/packages/shader-lab/src/parser/AST.ts b/packages/shader-lab/src/parser/AST.ts deleted file mode 100644 index 4c90c0144..000000000 --- a/packages/shader-lab/src/parser/AST.ts +++ /dev/null @@ -1,1659 +0,0 @@ -import { ClearableObjectPool, IPoolElement } from "@galacean/engine"; -import { CodeGenVisitor } from "../codeGen"; -import { ETokenType, GalaceanDataType, ShaderRange, TokenType, TypeAny } from "../common"; -import { BaseToken } from "../common/BaseToken"; -import { Keyword } from "../common/enums/Keyword"; -import { ParserUtils } from "../ParserUtils"; -import { Preprocessor } from "../Preprocessor"; -import { ShaderLabUtils } from "../ShaderLabUtils"; -import { BuiltinFunction, BuiltinVariable, NonGenericGalaceanType } from "./builtin"; -import { NoneTerminal } from "./GrammarSymbol"; -import SemanticAnalyzer from "./SemanticAnalyzer"; -import { ShaderData } from "./ShaderInfo"; -import { ESymbolType, FnSymbol, StructSymbol, VarSymbol } from "./symbolTable"; -import { IParamInfo, NodeChild, StructProp, SymbolType } from "./types"; - -function ASTNodeDecorator(nonTerminal: NoneTerminal) { - return function (ASTNode: T) { - ASTNode.prototype.nt = nonTerminal; - (ASTNode).pool = ShaderLabUtils.createObjectPool(ASTNode); - }; -} - -export abstract class TreeNode implements IPoolElement { - static pool: ClearableObjectPool void }>; - - /** The non-terminal in grammar. */ - nt: NoneTerminal; - private _children: NodeChild[]; - private _parent: TreeNode; - private _location: ShaderRange; - private _codeCache: string; - - /** - * Parent pointer for AST traversal. - * @remarks - * The parent pointer is only reliable after the entire AST has been constructed. - * DO NOT rely on `parent` during the `semanticAnalyze` phase, as the AST may still be under construction. - * It is safe to use `parent` during code generation or any phase after AST construction. - */ - get parent(): TreeNode { - return this._parent; - } - - get children() { - return this._children; - } - - get location() { - return this._location; - } - - set(loc: ShaderRange, children: NodeChild[]): void { - this._location = loc; - this._children = children; - for (const child of children) { - if (child instanceof TreeNode) { - child._parent = this; - } - } - - this.init(); - } - - init() {} - - dispose(): void {} - - setCache(code: string): string { - this._codeCache = code; - return code; - } - - getCache(): string { - return this._codeCache; - } - - // Visitor pattern interface for code generation - codeGen(visitor: CodeGenVisitor) { - const code = visitor.defaultCodeGen(this.children); - this.setCache(code); - return code; - } - - /** - * Do semantic analyze right after the ast node is generated. - */ - semanticAnalyze(sa: SemanticAnalyzer) {} -} - -export namespace ASTNode { - type MacroExpression = - | MacroPushContext - | MacroPopContext - | MacroElseExpression - | MacroElifExpression - | MacroUndef - | BaseToken; - - export type ASTNodePool = ClearableObjectPool< - { set: (loc: ShaderRange, children: NodeChild[]) => void } & IPoolElement & TreeNode - >; - - export function _unwrapToken(node: NodeChild) { - if (node instanceof BaseToken) { - return node; - } - throw "not token"; - } - - export function get(pool: ASTNodePool, sa: SemanticAnalyzer, loc: ShaderRange, children: NodeChild[]) { - const node = pool.get(); - node.set(loc, children); - node.semanticAnalyze(sa); - sa.semanticStack.push(node); - } - - @ASTNodeDecorator(NoneTerminal._ignore) - export class TrivialNode extends TreeNode {} - - @ASTNodeDecorator(NoneTerminal.scope_brace) - export class ScopeBrace extends TreeNode { - override semanticAnalyze(sa: SemanticAnalyzer): void { - sa.pushScope(); - } - } - - @ASTNodeDecorator(NoneTerminal.scope_end_brace) - export class ScopeEndBrace extends TreeNode { - override semanticAnalyze(sa: SemanticAnalyzer): void { - sa.popScope(); - } - } - - @ASTNodeDecorator(NoneTerminal.jump_statement) - export class JumpStatement extends TreeNode { - isFragReturnStatement: boolean; - - override init(): void { - this.isFragReturnStatement = false; - } - - override semanticAnalyze(sa: SemanticAnalyzer): void { - if (ASTNode._unwrapToken(this.children![0]).type === Keyword.RETURN) { - sa.curFunctionInfo.returnStatement = this; - } - } - - override codeGen(visitor: CodeGenVisitor): string { - return this.setCache(visitor.visitJumpStatement(this)); - } - } - - // #if _VERBOSE - @ASTNodeDecorator(NoneTerminal.conditionopt) - export class ConditionOpt extends TreeNode {} - - @ASTNodeDecorator(NoneTerminal.for_rest_statement) - export class ForRestStatement extends TreeNode {} - - @ASTNodeDecorator(NoneTerminal.condition) - export class Condition extends TreeNode {} - - @ASTNodeDecorator(NoneTerminal.for_init_statement) - export class ForInitStatement extends TreeNode {} - - @ASTNodeDecorator(NoneTerminal.iteration_statement) - export class IterationStatement extends TreeNode {} - - @ASTNodeDecorator(NoneTerminal.selection_statement) - export class SelectionStatement extends TreeNode {} - - @ASTNodeDecorator(NoneTerminal.expression_statement) - export class ExpressionStatement extends TreeNode {} - // #endif - - export abstract class ExpressionAstNode extends TreeNode { - protected _type?: GalaceanDataType; - set type(t: GalaceanDataType | undefined) { - this._type = t; - } - get type() { - return this._type ?? TypeAny; - } - - override init(): void { - this._type = undefined; - } - } - - // #if _VERBOSE - @ASTNodeDecorator(NoneTerminal.initializer_list) - export class InitializerList extends ExpressionAstNode { - override semanticAnalyze(sa: SemanticAnalyzer): void { - const init = this.children[0] as Initializer | InitializerList; - this.type = init.type; - } - } - - @ASTNodeDecorator(NoneTerminal.initializer) - export class Initializer extends ExpressionAstNode { - override semanticAnalyze(sa: SemanticAnalyzer): void { - if (this.children.length === 1) { - this.type = (this.children[0]).type; - } else { - this.type = (this.children[1]).type; - } - } - } - // #endif - - @ASTNodeDecorator(NoneTerminal.single_declaration) - export class SingleDeclaration extends TreeNode { - typeSpecifier: TypeSpecifier; - arraySpecifier?: ArraySpecifier; - - override init(): void { - this.typeSpecifier = undefined; - this.arraySpecifier = undefined; - } - - override semanticAnalyze(sa: SemanticAnalyzer): void { - const children = this.children; - const childrenLen = children.length; - const fullyType = children[0] as FullySpecifiedType; - const typeSpecifier = fullyType.typeSpecifier; - this.typeSpecifier = typeSpecifier; - this.arraySpecifier = typeSpecifier.arraySpecifier; - - const id = children[1] as BaseToken; - - let sm: VarSymbol; - if (childrenLen === 2 || childrenLen === 4) { - const symbolType = new SymbolType(fullyType.type, typeSpecifier.lexeme, this.arraySpecifier); - const initializer = children[3] as Initializer; - - sm = new VarSymbol(id.lexeme, symbolType, false, initializer); - } else { - const arraySpecifier = children[2] as ArraySpecifier; - // #if _VERBOSE - if (arraySpecifier && this.arraySpecifier) { - sa.reportError(arraySpecifier.location, "Array of array is not supported."); - } - // #endif - this.arraySpecifier = arraySpecifier; - const symbolType = new SymbolType(fullyType.type, typeSpecifier.lexeme, this.arraySpecifier); - const initializer = children[4] as Initializer; - - sm = new VarSymbol(id.lexeme, symbolType, false, initializer); - } - sa.symbolTableStack.insert(sm); - } - - override codeGen(visitor: CodeGenVisitor): string { - return this.setCache(visitor.visitSingleDeclaration(this)); - } - } - - @ASTNodeDecorator(NoneTerminal.fully_specified_type) - export class FullySpecifiedType extends TreeNode { - typeSpecifier: TypeSpecifier; - type: GalaceanDataType; - - override semanticAnalyze(_: SemanticAnalyzer): void { - const children = this.children; - this.typeSpecifier = (children.length === 1 ? children[0] : children[1]) as TypeSpecifier; - this.type = this.typeSpecifier.type; - } - } - - @ASTNodeDecorator(NoneTerminal.type_qualifier) - export class TypeQualifier extends TreeNode {} - - @ASTNodeDecorator(NoneTerminal.single_type_qualifier) - export class SingleTypeQualifier extends TreeNode { - qualifier: Keyword; - lexeme: string; - - override semanticAnalyze(sa: SemanticAnalyzer): void { - const child = this.children[0]; - if (child instanceof BaseToken) { - this.qualifier = child.type as Keyword; - this.lexeme = child.lexeme; - } else { - this.qualifier = (child).qualifier; - this.lexeme = (child).lexeme; - } - } - } - - abstract class BasicTypeQualifier extends TreeNode { - qualifier: Keyword; - lexeme: string; - - override semanticAnalyze(sa: SemanticAnalyzer): void { - const token = this.children[0] as BaseToken; - this.qualifier = token.type as Keyword; - this.lexeme = token.lexeme; - } - } - - // #if _VERBOSE - @ASTNodeDecorator(NoneTerminal.storage_qualifier) - export class StorageQualifier extends BasicTypeQualifier {} - - @ASTNodeDecorator(NoneTerminal.precision_qualifier) - export class PrecisionQualifier extends BasicTypeQualifier {} - - @ASTNodeDecorator(NoneTerminal.interpolation_qualifier) - export class InterpolationQualifier extends BasicTypeQualifier {} - - @ASTNodeDecorator(NoneTerminal.invariant_qualifier) - export class InvariantQualifier extends BasicTypeQualifier {} - // #endif - - @ASTNodeDecorator(NoneTerminal.type_specifier) - export class TypeSpecifier extends TreeNode { - type: GalaceanDataType; - lexeme: string; - arraySize?: number; - isCustom: boolean; - - override init(): void { - this.arraySize = undefined; - } - get arraySpecifier(): ArraySpecifier { - return this.children[1] as ArraySpecifier; - } - - override semanticAnalyze(sa: SemanticAnalyzer): void { - const children = this.children; - const firstChild = children[0] as TypeSpecifierNonArray; - this.type = firstChild.type; - this.lexeme = firstChild.lexeme; - this.arraySize = (children?.[1] as ArraySpecifier)?.size; - this.isCustom = typeof this.type === "string"; - } - } - - @ASTNodeDecorator(NoneTerminal.array_specifier) - export class ArraySpecifier extends TreeNode { - size: number | undefined; - override semanticAnalyze(sa: SemanticAnalyzer): void { - const integerConstantExpr = this.children[1] as IntegerConstantExpression; - this.size = integerConstantExpr.value; - } - } - - @ASTNodeDecorator(NoneTerminal.integer_constant_expression_operator) - export class IntegerConstantExpressionOperator extends TreeNode { - compute: (a: number, b: number) => number; - lexeme: string; - - override semanticAnalyze(sa: SemanticAnalyzer): void { - const operator = this.children[0] as BaseToken; - this.lexeme = operator.lexeme; - switch (operator.type) { - case ETokenType.PLUS: - this.compute = (a, b) => a + b; - break; - case ETokenType.DASH: - this.compute = (a, b) => a - b; - break; - case ETokenType.STAR: - this.compute = (a, b) => a * b; - break; - case ETokenType.SLASH: - this.compute = (a, b) => a / b; - break; - case ETokenType.PERCENT: - this.compute = (a, b) => a % b; - break; - default: - sa.reportError(operator.location, `not implemented operator ${operator.lexeme}`); - } - } - } - - @ASTNodeDecorator(NoneTerminal.integer_constant_expression) - export class IntegerConstantExpression extends TreeNode { - value?: number; - - override init(): void { - this.value = undefined; - } - - override semanticAnalyze(sa: SemanticAnalyzer): void { - if (this.children.length === 1) { - const child = this.children[0]; - if (child instanceof BaseToken) { - this.value = Number(child.lexeme); - } - // #if _VERBOSE - else { - const id = child as VariableIdentifier; - if (!ParserUtils.typeCompatible(Keyword.INT, id.typeInfo)) { - sa.reportError(id.location, "Invalid integer."); - return; - } - } - // #endif - } - } - } - - @ASTNodeDecorator(NoneTerminal.type_specifier_nonarray) - export class TypeSpecifierNonArray extends TreeNode { - type: GalaceanDataType; - lexeme: string; - - override init(): void { - const tt = this.children[0]; - if (tt instanceof BaseToken) { - this.type = tt.lexeme; - this.lexeme = tt.lexeme; - } else { - this.type = (tt as ExtBuiltinTypeSpecifierNonArray).type as GalaceanDataType; - this.lexeme = (tt as ExtBuiltinTypeSpecifierNonArray).lexeme; - } - } - } - - @ASTNodeDecorator(NoneTerminal.ext_builtin_type_specifier_nonarray) - export class ExtBuiltinTypeSpecifierNonArray extends TreeNode { - type: TokenType; - lexeme: string; - - override init(): void { - const token = this.children[0] as BaseToken; - this.type = token.type; - this.lexeme = token.lexeme; - } - } - - @ASTNodeDecorator(NoneTerminal.init_declarator_list) - export class InitDeclaratorList extends TreeNode { - typeInfo: SymbolType; - - override semanticAnalyze(sa: SemanticAnalyzer): void { - let sm: VarSymbol; - const children = this.children; - const childrenLength = children.length; - if (childrenLength === 1) { - const { typeSpecifier, arraySpecifier } = children[0] as SingleDeclaration; - this.typeInfo = new SymbolType(typeSpecifier.type, typeSpecifier.lexeme, arraySpecifier); - } else { - const initDeclList = children[0] as InitDeclaratorList; - this.typeInfo = initDeclList.typeInfo; - } - - if (childrenLength === 3 || childrenLength === 5) { - const id = children[2] as BaseToken; - sm = new VarSymbol(id.lexeme, this.typeInfo, false, this); - sa.symbolTableStack.insert(sm); - } else if (childrenLength === 4 || childrenLength === 6) { - const typeInfo = this.typeInfo; - const arraySpecifier = this.children[3] as ArraySpecifier; - // #if _VERBOSE - if (typeInfo.arraySpecifier && arraySpecifier) { - sa.reportError(arraySpecifier.location, "Array of array is not supported."); - } - // #endif - typeInfo.arraySpecifier = arraySpecifier; - const id = children[2] as BaseToken; - sm = new VarSymbol(id.lexeme, typeInfo, false, this); - sa.symbolTableStack.insert(sm); - } - } - } - - @ASTNodeDecorator(NoneTerminal.identifier_list) - export class IdentifierList extends TreeNode { - idList: BaseToken[] = []; - - override init(): void { - this.idList.length = 0; - } - - override semanticAnalyze(sa: SemanticAnalyzer): void { - const { children, idList: curIdList } = this; - if (children.length === 2) { - curIdList.push(children[1] as BaseToken); - } else { - const list = children[0] as IdentifierList; - const id = children[2] as BaseToken; - const listIdLength = list.idList.length; - curIdList.length = listIdLength + 1; - - for (let i = 0; i < listIdLength; i++) { - curIdList[i] = list.idList[i]; - } - curIdList[listIdLength] = id; - } - } - } - - @ASTNodeDecorator(NoneTerminal.declaration) - export class Declaration extends TreeNode { - override codeGen(visitor: CodeGenVisitor): string { - return this.setCache(visitor.visitDeclaration(this)); - } - } - - @ASTNodeDecorator(NoneTerminal.function_prototype) - export class FunctionProtoType extends TreeNode { - ident: BaseToken; - returnType: FullySpecifiedType; - parameterList: IParamInfo[]; - paramSig: GalaceanDataType[] | undefined; - - override semanticAnalyze(sa: SemanticAnalyzer): void { - const declarator = this.children[0] as FunctionDeclarator; - this.ident = declarator.ident; - this.returnType = declarator.returnType; - this.parameterList = declarator.parameterInfoList; - this.paramSig = declarator.paramSig; - } - } - - @ASTNodeDecorator(NoneTerminal.function_declarator) - export class FunctionDeclarator extends TreeNode { - ident: BaseToken; - returnType: FullySpecifiedType; - parameterInfoList: IParamInfo[] | undefined; - paramSig: GalaceanDataType[] | undefined; - - override semanticAnalyze(sa: SemanticAnalyzer): void { - sa.curFunctionInfo.returnStatement = null; - sa.curFunctionInfo.header = this; - - const children = this.children; - const header = children[0] as FunctionHeader; - const parameterList = children[1] as FunctionParameterList | undefined; - this.ident = header.ident; - this.returnType = header.returnType; - this.parameterInfoList = parameterList?.parameterInfoList; - this.paramSig = parameterList?.paramSig; - } - } - - @ASTNodeDecorator(NoneTerminal.function_header) - export class FunctionHeader extends TreeNode { - ident: BaseToken; - returnType: FullySpecifiedType; - - override semanticAnalyze(sa: SemanticAnalyzer): void { - sa.pushScope(); - const children = this.children; - this.ident = children[1] as BaseToken; - this.returnType = children[0] as FullySpecifiedType; - } - - override codeGen(visitor: CodeGenVisitor): string { - return this.setCache(visitor.visitFunctionHeader(this)); - } - } - - @ASTNodeDecorator(NoneTerminal.function_parameter_list) - export class FunctionParameterList extends TreeNode { - parameterInfoList: IParamInfo[] = []; - paramSig: GalaceanDataType[] = []; - - override init(): void { - this.parameterInfoList.length = 0; - this.paramSig.length = 0; - } - - override semanticAnalyze(sa: SemanticAnalyzer): void { - const children = this.children; - const { parameterInfoList, paramSig } = this; - - if (children[0] instanceof ParameterDeclaration) { - const decl = children[0]; - parameterInfoList.push({ ident: decl.ident, typeInfo: decl.typeInfo, astNode: decl }); - paramSig.push(decl.typeInfo?.type ?? TypeAny); - } else if (children[2] instanceof ParameterDeclaration) { - const list = children[0] as FunctionParameterList; - const decl = children[2]; - - parameterInfoList.push(...list.parameterInfoList, { - ident: decl.ident, - typeInfo: decl.typeInfo, - astNode: decl - }); - paramSig.push(...list.paramSig, decl.typeInfo?.type ?? TypeAny); - } else if (children[0] instanceof FunctionParameterList && children[1] instanceof MacroParamBlock) { - parameterInfoList.push(...children[0].parameterInfoList, { astNode: children[1] }); - paramSig.push(...children[0].paramSig, TypeAny); - } else if (children[0] instanceof MacroParamBlock) { - parameterInfoList.push({ astNode: children[0] }); - paramSig.push(TypeAny); - } - } - - override codeGen(visitor: CodeGenVisitor): string { - return this.setCache(visitor.visitFunctionParameterList(this)); - } - } - - @ASTNodeDecorator(NoneTerminal.macro_param_case_list) - export class MacroParamCaseList extends TreeNode {} - - @ASTNodeDecorator(NoneTerminal.macro_param_block) - export class MacroParamBlock extends TreeNode {} - - @ASTNodeDecorator(NoneTerminal.macro_parameter_branch) - export class MacroParameterBranch extends TreeNode {} - - @ASTNodeDecorator(NoneTerminal.parameter_declaration) - export class ParameterDeclaration extends TreeNode { - // Some syntax is not recognized, eg. - // `#define TEXTURE2D_SHADOW_PARAM(shadowMap) mediump sampler2D shadowMap` - typeInfo?: SymbolType; - ident?: BaseToken; - - override init(): void { - this.typeInfo = undefined; - this.ident = undefined; - } - - override semanticAnalyze(sa: SemanticAnalyzer): void { - const children = this.children; - let parameterDeclarator: ParameterDeclarator | undefined; - - if (children[0] instanceof ParameterDeclarator) { - parameterDeclarator = children[0]; - } else if (children[1] instanceof ParameterDeclarator) { - parameterDeclarator = children[1]; - } - - if (parameterDeclarator) { - this.typeInfo = parameterDeclarator.typeInfo; - this.ident = parameterDeclarator.ident; - const varSymbol = new VarSymbol( - parameterDeclarator.ident.lexeme, - parameterDeclarator.typeInfo, - false, - parameterDeclarator - ); - sa.symbolTableStack.insert(varSymbol); - } - } - } - - @ASTNodeDecorator(NoneTerminal.parameter_declarator) - export class ParameterDeclarator extends TreeNode { - ident: BaseToken; - typeInfo: SymbolType; - - override semanticAnalyze(sa: SemanticAnalyzer): void { - const children = this.children; - this.ident = children[1] as BaseToken; - const typeSpecifier = children[0] as TypeSpecifier; - const arraySpecifier = children[2] as ArraySpecifier; - this.typeInfo = new SymbolType(typeSpecifier.type, typeSpecifier.lexeme, arraySpecifier); - } - } - - // #if _VERBOSE - @ASTNodeDecorator(NoneTerminal.simple_statement) - export class SimpleStatement extends TreeNode {} - - @ASTNodeDecorator(NoneTerminal.compound_statement) - export class CompoundStatement extends TreeNode {} - // #endif - - @ASTNodeDecorator(NoneTerminal.compound_statement_no_scope) - export class CompoundStatementNoScope extends TreeNode {} - - // #if _VERBOSE - @ASTNodeDecorator(NoneTerminal.statement) - export class Statement extends TreeNode {} - // #endif - - @ASTNodeDecorator(NoneTerminal.statement_list) - export class StatementList extends TreeNode { - override codeGen(visitor: CodeGenVisitor): string { - return this.setCache(visitor.visitStatementList(this)); - } - } - - @ASTNodeDecorator(NoneTerminal.function_definition) - export class FunctionDefinition extends TreeNode { - returnStatement?: ASTNode.JumpStatement; - protoType: FunctionProtoType; - statements: CompoundStatementNoScope; - isInMacroBranch: boolean; - - override init(): void { - this.returnStatement = undefined; - } - - override semanticAnalyze(sa: SemanticAnalyzer): void { - const children = this.children; - this.protoType = children[0] as FunctionProtoType; - this.statements = children[1] as CompoundStatementNoScope; - - sa.popScope(); - const sm = new FnSymbol(this.protoType.ident.lexeme, this); - sa.symbolTableStack.insert(sm); - this.isInMacroBranch = sa.symbolTableStack.isInMacroBranch; - - const { curFunctionInfo } = sa; - const { header, returnStatement } = curFunctionInfo; - if (header.returnType.type === Keyword.VOID) { - if (returnStatement) { - sa.reportError(header.returnType.location, "Return in void function."); - } - } else { - if (!returnStatement) { - sa.reportError(header.returnType.location, `No return statement found.`); - } else { - this.returnStatement = returnStatement; - } - } - curFunctionInfo.header = undefined; - curFunctionInfo.returnStatement = undefined; - } - - override codeGen(visitor: CodeGenVisitor): string { - return this.setCache(visitor.visitFunctionDefinition(this)); - } - } - - @ASTNodeDecorator(NoneTerminal.function_call) - export class FunctionCall extends ExpressionAstNode { - override semanticAnalyze(sa: SemanticAnalyzer): void { - this.type = (this.children[0] as FunctionCallGeneric).type; - } - - override codeGen(visitor: CodeGenVisitor): string { - return this.setCache(visitor.visitFunctionCall(this)); - } - } - - @ASTNodeDecorator(NoneTerminal.function_call_generic) - export class FunctionCallGeneric extends ExpressionAstNode { - fnSymbol: FnSymbol | StructSymbol | undefined; - - override init(): void { - super.init(); - this.fnSymbol = undefined; - } - - override semanticAnalyze(sa: SemanticAnalyzer): void { - const functionIdentifier = this.children[0] as FunctionIdentifier; - if (functionIdentifier.isBuiltin) { - this.type = functionIdentifier.ident; - } else { - const fnIdent = functionIdentifier.ident; - - let paramSig: NonGenericGalaceanType[] | undefined; - if (this.children.length === 4) { - const paramList = this.children[2]; - if (paramList instanceof FunctionCallParameterList) { - paramSig = paramList.paramSig as any; - } - } - // #if _VERBOSE - const builtinFn = BuiltinFunction.getFn(fnIdent, paramSig); - if (builtinFn) { - this.type = builtinFn.realReturnType; - return; - } - // #endif - - const lookupSymbol = SemanticAnalyzer._lookupSymbol; - lookupSymbol.set(fnIdent, ESymbolType.FN, undefined, undefined, paramSig); - - const fnSymbol = sa.symbolTableStack.lookup(lookupSymbol, true) as FnSymbol; - - if (!fnSymbol) { - // #if _VERBOSE - sa.reportError(this.location, `No overload function type found: ${functionIdentifier.ident}`); - // #endif - return; - } - this.type = fnSymbol?.dataType?.type; - this.fnSymbol = fnSymbol; - } - } - } - - @ASTNodeDecorator(NoneTerminal.function_call_parameter_list) - export class FunctionCallParameterList extends TreeNode { - paramSig: GalaceanDataType[] = []; - paramNodes: Array = []; - - override init(): void { - this.paramSig.length = 0; - this.paramNodes.length = 0; - } - - override semanticAnalyze(sa: SemanticAnalyzer): void { - const { children, paramSig, paramNodes } = this; - if (children[0] instanceof AssignmentExpression) { - const expr = children[0]; - paramSig.push(expr.type); - paramNodes.push(expr); - } else if (children[2] instanceof AssignmentExpression) { - const list = children[0] as FunctionCallParameterList; - const decl = children[2] as AssignmentExpression; - paramSig.push(...list.paramSig, decl.type); - paramNodes.push(...list.paramNodes, decl); - } else if (children[0] instanceof FunctionCallParameterList && children[1] instanceof MacroCallArgBlock) { - paramSig.push(...children[0].paramSig, TypeAny); - paramNodes.push(...children[0].paramNodes, children[1]); - } else if (children[0] instanceof MacroCallArgBlock) { - paramSig.push(TypeAny); - paramNodes.push(children[0]); - } - } - } - - @ASTNodeDecorator(NoneTerminal.macro_call_arg_case_list) - export class MacroCallArgCaseList extends TreeNode {} - @ASTNodeDecorator(NoneTerminal.macro_call_arg_block) - export class MacroCallArgBlock extends TreeNode {} - @ASTNodeDecorator(NoneTerminal.macro_call_arg_branch) - export class MacroCallArgBranch extends TreeNode {} - - @ASTNodeDecorator(NoneTerminal.precision_specifier) - export class PrecisionSpecifier extends TreeNode { - override semanticAnalyze(sa: SemanticAnalyzer): void { - if (!sa.symbolTableStack.isInMacroBranch) { - sa.shaderData.globalPrecisions.push(this); - } - } - } - - @ASTNodeDecorator(NoneTerminal.function_identifier) - export class FunctionIdentifier extends TreeNode { - ident: GalaceanDataType; - lexeme: string; - isBuiltin: boolean; - - override semanticAnalyze(sa: SemanticAnalyzer): void { - const typeSpecifier = this.children[0] as TypeSpecifier; - - this.ident = typeSpecifier.type; - this.lexeme = typeSpecifier.lexeme; - this.isBuiltin = typeof this.ident !== "string"; - } - - override codeGen(visitor: CodeGenVisitor): string { - return this.setCache(visitor.visitFunctionIdentifier(this)); - } - } - - @ASTNodeDecorator(NoneTerminal.assignment_expression) - export class AssignmentExpression extends ExpressionAstNode { - // #if _VERBOSE - override semanticAnalyze(sa: SemanticAnalyzer): void { - if (this.children.length === 1) { - const expr = this.children[0] as ConditionalExpression; - this.type = expr.type ?? TypeAny; - } else { - const expr = this.children[2] as AssignmentExpression; - this.type = expr.type ?? TypeAny; - } - } - // #endif - } - - // #if _VERBOSE - @ASTNodeDecorator(NoneTerminal.assignment_operator) - export class AssignmentOperator extends TreeNode {} - // #endif - - @ASTNodeDecorator(NoneTerminal.expression) - export class Expression extends ExpressionAstNode { - // #if _VERBOSE - override semanticAnalyze(sa: SemanticAnalyzer): void { - if (this.children.length === 1) { - const expr = this.children[0] as AssignmentExpression; - this.type = expr.type; - } else { - const expr = this.children[2] as AssignmentExpression; - this.type = expr.type; - } - } - // #endif - } - - @ASTNodeDecorator(NoneTerminal.primary_expression) - export class PrimaryExpression extends ExpressionAstNode { - override semanticAnalyze(sa: SemanticAnalyzer): void { - if (this.children.length === 1) { - const id = this.children[0]; - if (id instanceof VariableIdentifier) { - this.type = id.typeInfo ?? TypeAny; - } else { - switch ((id).type) { - case ETokenType.INT_CONSTANT: - this._type = Keyword.INT; - break; - case ETokenType.FLOAT_CONSTANT: - this.type = Keyword.FLOAT; - break; - case Keyword.True: - case Keyword.False: - this.type = Keyword.BOOL; - break; - } - } - } else { - const expression = this.children[1] as Expression; - this.type = expression.type; - } - } - } - - @ASTNodeDecorator(NoneTerminal.postfix_expression) - export class PostfixExpression extends ExpressionAstNode { - override init(): void { - super.init(); - if (this.children.length === 1) { - const child = this.children[0] as PrimaryExpression | FunctionCall; - this.type = child.type; - } - } - - override codeGen(visitor: CodeGenVisitor): string { - return this.setCache(visitor.visitPostfixExpression(this)); - } - } - - // #if _VERBOSE - @ASTNodeDecorator(NoneTerminal.unary_operator) - export class UnaryOperator extends TreeNode {} - - @ASTNodeDecorator(NoneTerminal.unary_expression) - export class UnaryExpression extends ExpressionAstNode { - override init(): void { - this.type = (this.children[0] as PostfixExpression).type; - } - } - - @ASTNodeDecorator(NoneTerminal.multiplicative_expression) - export class MultiplicativeExpression extends ExpressionAstNode { - override init(): void { - super.init(); - if (this.children.length === 1) { - this.type = (this.children[0] as UnaryExpression).type; - // TODO: Temporarily remove type deduce due to generic function type issue. - // } else { - // const exp1 = this.children[0] as MultiplicativeExpression; - // const exp2 = this.children[2] as UnaryExpression; - // if (exp1.type === exp2.type) { - // this.type = exp1.type; - // } - } - } - } - - @ASTNodeDecorator(NoneTerminal.additive_expression) - export class AdditiveExpression extends ExpressionAstNode { - override init(): void { - super.init(); - if (this.children.length === 1) { - this.type = (this.children[0] as MultiplicativeExpression).type; - // TODO: Temporarily remove type deduce due to generic function type issue. - // } else { - // const exp1 = this.children[0] as AdditiveExpression; - // const exp2 = this.children[2] as MultiplicativeExpression; - // if (exp1.type === exp2.type) { - // this.type = exp1.type; - // } - } - } - } - - @ASTNodeDecorator(NoneTerminal.shift_expression) - export class ShiftExpression extends ExpressionAstNode { - override semanticAnalyze(sa: SemanticAnalyzer): void { - const expr = this.children[0] as ExpressionAstNode; - this.type = expr.type; - } - } - - @ASTNodeDecorator(NoneTerminal.relational_expression) - export class RelationalExpression extends ExpressionAstNode { - override semanticAnalyze(sa: SemanticAnalyzer): void { - if (this.children.length === 1) { - this.type = (this.children[0]).type; - } else { - this.type = Keyword.BOOL; - } - } - } - - @ASTNodeDecorator(NoneTerminal.equality_expression) - export class EqualityExpression extends ExpressionAstNode { - override semanticAnalyze(sa: SemanticAnalyzer): void { - if (this.children.length === 1) { - this.type = (this.children[0]).type; - } else { - this.type = Keyword.BOOL; - } - } - } - - @ASTNodeDecorator(NoneTerminal.and_expression) - export class AndExpression extends ExpressionAstNode { - override semanticAnalyze(sa: SemanticAnalyzer): void { - if (this.children.length === 1) { - this.type = (this.children[0]).type; - } else { - this.type = Keyword.UINT; - } - } - } - - @ASTNodeDecorator(NoneTerminal.exclusive_or_expression) - export class ExclusiveOrExpression extends ExpressionAstNode { - override semanticAnalyze(sa: SemanticAnalyzer): void { - if (this.children.length === 1) { - this.type = (this.children[0]).type; - } else { - this.type = Keyword.UINT; - } - } - } - - @ASTNodeDecorator(NoneTerminal.inclusive_or_expression) - export class InclusiveOrExpression extends ExpressionAstNode { - override semanticAnalyze(sa: SemanticAnalyzer): void { - if (this.children.length === 1) { - this.type = (this.children[0]).type; - } else { - this.type = Keyword.UINT; - } - } - } - - @ASTNodeDecorator(NoneTerminal.logical_and_expression) - export class LogicalAndExpression extends ExpressionAstNode { - override semanticAnalyze(sa: SemanticAnalyzer): void { - if (this.children.length === 1) { - this.type = (this.children[0]).type; - } else { - this.type = Keyword.BOOL; - } - } - } - - @ASTNodeDecorator(NoneTerminal.logical_xor_expression) - export class LogicalXorExpression extends ExpressionAstNode { - override semanticAnalyze(sa: SemanticAnalyzer): void { - if (this.children.length === 1) { - this.type = (this.children[0]).type; - } else { - this.type = Keyword.BOOL; - } - } - } - - @ASTNodeDecorator(NoneTerminal.logical_or_expression) - export class LogicalOrExpression extends ExpressionAstNode { - override semanticAnalyze(sa: SemanticAnalyzer): void { - if (this.children.length === 1) { - this.type = (this.children[0]).type; - } else { - this.type = Keyword.BOOL; - } - } - } - - @ASTNodeDecorator(NoneTerminal.conditional_expression) - export class ConditionalExpression extends ExpressionAstNode { - override semanticAnalyze(sa: SemanticAnalyzer): void { - if (this.children.length === 1) { - this.type = (this.children[0]).type; - } - } - } - // #endif - - @ASTNodeDecorator(NoneTerminal.struct_specifier) - export class StructSpecifier extends TreeNode { - ident?: BaseToken; - propList: StructProp[]; - macroExpressions: MacroExpression[]; - isInMacroBranch: boolean; - - override init(): void { - this.ident = undefined; - } - - override semanticAnalyze(sa: SemanticAnalyzer): void { - const children = this.children; - this.isInMacroBranch = sa.symbolTableStack.isInMacroBranch; - if (children.length === 6) { - this.ident = children[1] as BaseToken; - sa.symbolTableStack.insert(new StructSymbol(this.ident.lexeme, this)); - - this.propList = (children[3] as StructDeclarationList).propList; - this.macroExpressions = (children[3] as StructDeclarationList).macroExpressions; - } else { - this.propList = (children[2] as StructDeclarationList).propList; - this.macroExpressions = (children[2] as StructDeclarationList).macroExpressions; - } - } - - override codeGen(visitor: CodeGenVisitor) { - return this.setCache(visitor.visitStructSpecifier(this)); - } - } - - @ASTNodeDecorator(NoneTerminal.struct_declaration_list) - export class StructDeclarationList extends TreeNode { - propList: StructProp[] = []; - macroExpressions: MacroExpression[] = []; - - override init(): void { - this.propList.length = 0; - this.macroExpressions.length = 0; - } - - override semanticAnalyze(sa: SemanticAnalyzer): void { - const { children, propList, macroExpressions } = this; - - if (children.length === 1) { - propList.push(...(children[0] as StructDeclaration).props); - macroExpressions.push(...(children[0] as StructDeclaration).macroExpressions); - } else { - propList.push(...(children[0] as StructDeclarationList).propList); - propList.push(...(children[1] as StructDeclaration).props); - macroExpressions.push(...(children[0] as StructDeclarationList).macroExpressions); - macroExpressions.push(...(children[1] as StructDeclaration).macroExpressions); - } - } - } - - @ASTNodeDecorator(NoneTerminal.struct_declaration) - export class StructDeclaration extends TreeNode { - props: StructProp[] = []; - macroExpressions: MacroExpression[] = []; - - private _typeSpecifier?: TypeSpecifier; - private _declaratorList?: StructDeclaratorList; - - override init(): void { - this._typeSpecifier = undefined; - this._declaratorList = undefined; - this.props.length = 0; - this.macroExpressions.length = 0; - } - - override semanticAnalyze(sa: SemanticAnalyzer): void { - const { children, props, macroExpressions } = this; - - if (children.length === 1) { - const macroStructDeclaration = children[0] as MacroStructDeclaration; - const macroProps = macroStructDeclaration.props; - - for (let i = 0, length = macroProps.length; i < length; i++) { - macroProps[i].isInMacroBranch = true; - props.push(macroProps[i]); - } - - macroExpressions.push(...macroStructDeclaration.macroExpressions); - - return; - } - - if (children.length === 3) { - this._typeSpecifier = children[0] as TypeSpecifier; - this._declaratorList = children[1] as StructDeclaratorList; - } else { - this._typeSpecifier = children[1] as TypeSpecifier; - this._declaratorList = children[2] as StructDeclaratorList; - } - - const firstChild = children[0]; - const { type, lexeme } = this._typeSpecifier; - const isInMacroBranch = sa.symbolTableStack.isInMacroBranch; - if (firstChild instanceof LayoutQualifier) { - const declarator = children[2] as StructDeclarator; - const typeInfo = new SymbolType(type, lexeme); - const prop = new StructProp(typeInfo, declarator.ident, firstChild.index, isInMacroBranch); - props.push(prop); - } else { - const declaratorList = this._declaratorList.declaratorList; - const declaratorListLength = declaratorList.length; - props.length = declaratorListLength; - for (let i = 0; i < declaratorListLength; i++) { - const declarator = declaratorList[i]; - const typeInfo = new SymbolType(type, lexeme, declarator.arraySpecifier); - const prop = new StructProp(typeInfo, declarator.ident, undefined, isInMacroBranch); - props[i] = prop; - } - } - } - } - - @ASTNodeDecorator(NoneTerminal.macro_struct_declaration) - export class MacroStructDeclaration extends TreeNode { - props: StructProp[] = []; - macroExpressions: MacroExpression[] = []; - - override init(): void { - this.props.length = 0; - this.macroExpressions.length = 0; - } - - override semanticAnalyze(): void { - const children = this.children; - - this.macroExpressions.push(children[0] as MacroPushContext); - - if (children.length === 3) { - this.props.push(...(children[1] as StructDeclarationList).propList); - this.props.push(...(children[2] as MacroStructBranch).props); - this.macroExpressions.push(...(children[1] as StructDeclarationList).macroExpressions); - this.macroExpressions.push(...(children[2] as MacroStructBranch).macroExpressions); - } else { - this.props.push(...(children[1] as MacroStructBranch).props); - this.macroExpressions.push(...(children[1] as MacroStructBranch).macroExpressions); - } - } - } - - @ASTNodeDecorator(NoneTerminal.macro_struct_branch) - export class MacroStructBranch extends TreeNode { - props: StructProp[] = []; - macroExpressions: MacroExpression[] = []; - - override init(): void { - this.props.length = 0; - this.macroExpressions.length = 0; - } - - override semanticAnalyze(): void { - const children = this.children; - const lastNode = children[children.length - 1]; - - this.macroExpressions.push(children[0] as MacroPopContext | MacroElseExpression | MacroElifExpression); - - if (children[1] instanceof StructDeclarationList) { - this.props.push(...children[1].propList); - this.macroExpressions.push(...children[1].macroExpressions); - } - - if (lastNode instanceof MacroStructBranch) { - this.props.push(...lastNode.props); - this.macroExpressions.push(...lastNode.macroExpressions); - } - - if (children.length > 1 && lastNode instanceof MacroPopContext) { - this.macroExpressions.push(lastNode); - } - } - } - - @ASTNodeDecorator(NoneTerminal.layout_qualifier) - export class LayoutQualifier extends TreeNode { - index: number; - - override semanticAnalyze(sa: SemanticAnalyzer): void { - this.index = Number((this.children[4]).lexeme); - } - } - - @ASTNodeDecorator(NoneTerminal.struct_declarator_list) - export class StructDeclaratorList extends TreeNode { - declaratorList: StructDeclarator[] = []; - - override init(): void { - this.declaratorList.length = 0; - } - - override semanticAnalyze(sa: SemanticAnalyzer): void { - const { children, declaratorList } = this; - if (children.length === 1) { - declaratorList.push(children[0] as StructDeclarator); - } else { - const list = children[0] as StructDeclaratorList; - const declarator = children[1] as StructDeclarator; - const listLength = list.declaratorList.length; - declaratorList.length = listLength + 1; - for (let i = 0; i < listLength; i++) { - declaratorList[i] = list.declaratorList[i]; - } - declaratorList[listLength] = declarator; - } - } - } - - @ASTNodeDecorator(NoneTerminal.struct_declarator) - export class StructDeclarator extends TreeNode { - ident: BaseToken; - arraySpecifier: ArraySpecifier | undefined; - - override init(): void { - this.arraySpecifier = undefined; - } - - override semanticAnalyze(sa: SemanticAnalyzer): void { - const children = this.children; - this.ident = children[0] as BaseToken; - this.arraySpecifier = children[1] as ArraySpecifier; - } - } - - @ASTNodeDecorator(NoneTerminal.variable_declaration) - export class VariableDeclaration extends TreeNode { - type: FullySpecifiedType; - isStatic: boolean; - - override init(): void { - this.isStatic = false; - } - - override semanticAnalyze(sa: SemanticAnalyzer): void { - const children = this.children; - const type = children[0] as FullySpecifiedType; - const ident = children[1] as BaseToken; - this.type = type; - const sm = new VarSymbol(ident.lexeme, new SymbolType(type.type, type.typeSpecifier.lexeme), true, this); - - sa.symbolTableStack.insert(sm); - - if (children.length === 4) { - this.isStatic = true; - } - } - - override codeGen(visitor: CodeGenVisitor): string { - if (this.isStatic) { - return super.codeGen(visitor); - } else { - return this.setCache(visitor.visitGlobalVariableDeclaration(this)); - } - } - } - - @ASTNodeDecorator(NoneTerminal.variable_declaration_list) - export class VariableDeclarationList extends TreeNode { - type: FullySpecifiedType; - variableDeclarations: VariableDeclaration[] = []; - - override init(): void { - this.variableDeclarations.length = 0; - } - - override semanticAnalyze(sa: SemanticAnalyzer): void { - const { children } = this; - const length = children.length; - const child = children[0] as VariableDeclaration | VariableDeclarationList; - const type = child.type; - this.type = type; - - if (child instanceof VariableDeclaration) { - this.variableDeclarations.push(child); - } else { - this.variableDeclarations.push(...child.variableDeclarations); - - const ident = children[2] as BaseToken; - - const newVariable = VariableDeclaration.pool.get() as VariableDeclaration; - if (length === 3) { - // variable_declaration_list ',' id - newVariable.set(ident.location, [type, ident]); - } else { - // variable_declaration_list ',' id array_specifier - newVariable.set(ident.location, [type, ident, children[3] as ArraySpecifier]); - } - newVariable.semanticAnalyze(sa); - this.variableDeclarations.push(newVariable); - } - } - } - - @ASTNodeDecorator(NoneTerminal.variable_identifier) - export class VariableIdentifier extends TreeNode { - // @todo: typeInfo may be multiple types - typeInfo: GalaceanDataType; - referenceGlobalSymbolNames: string[] = []; - - private _symbols: Array = []; - - override init(): void { - this.typeInfo = TypeAny; - this.referenceGlobalSymbolNames.length = 0; - this._symbols.length = 0; - } - - override semanticAnalyze(sa: SemanticAnalyzer): void { - const child = this.children[0] as BaseToken | MacroCallSymbol | MacroCallFunction; - const referenceGlobalSymbolNames = this.referenceGlobalSymbolNames; - const symbols = this._symbols; - const lookupSymbol = SemanticAnalyzer._lookupSymbol; - let needFindNames: string[]; - - if (child instanceof BaseToken) { - needFindNames = [child.lexeme]; - } else { - needFindNames = (child as MacroCallSymbol | MacroCallFunction).referenceSymbolNames; - } - - for (let i = 0; i < needFindNames.length; i++) { - const name = needFindNames[i]; - - if (sa.macroDefineList[name]) { - continue; - } - - // only `macro_call` CFG can reference fnSymbols, others fnSymbols are referenced in `function_call_generic` CFG - if (!(child instanceof BaseToken) && BuiltinFunction.isExist(name)) { - continue; - } - - const builtinVar = BuiltinVariable.getVar(name); - if (builtinVar) { - this.typeInfo = builtinVar.type; - continue; - } - - lookupSymbol.set(name, ESymbolType.Any); - sa.symbolTableStack.lookupAll(lookupSymbol, true, symbols); - - if (!symbols.length) { - // #if _VERBOSE - sa.reportWarning(this.location, `Please sure the identifier "${name}" will be declared before used.`); - // #endif - } else { - this.typeInfo = symbols[0].dataType?.type; - const currentScopeSymbol = sa.symbolTableStack.scope.getSymbol(lookupSymbol, true); - if (currentScopeSymbol) { - if ( - (currentScopeSymbol instanceof FnSymbol || currentScopeSymbol.isGlobalVariable) && - referenceGlobalSymbolNames.indexOf(name) === -1 - ) { - referenceGlobalSymbolNames.push(name); - } - } else if ( - symbols.some((s) => s instanceof FnSymbol || s.isGlobalVariable) && - referenceGlobalSymbolNames.indexOf(name) === -1 - ) { - referenceGlobalSymbolNames.push(name); - } - } - } - } - - override codeGen(visitor: CodeGenVisitor): string { - return this.setCache(visitor.visitVariableIdentifier(this)); - } - - getLexeme(visitor: CodeGenVisitor): string { - const child = this.children[0] as BaseToken | MacroCallSymbol | MacroCallFunction; - if (child instanceof BaseToken) { - return child.lexeme; - } else { - return child.codeGen(visitor); - } - } - } - - @ASTNodeDecorator(NoneTerminal.gs_shader_program) - export class GLShaderProgram extends TreeNode { - shaderData: ShaderData; - - override semanticAnalyze(sa: SemanticAnalyzer): void { - this.shaderData = sa.shaderData; - this.shaderData.symbolTable = sa.symbolTableStack.scope; - } - } - - @ASTNodeDecorator(NoneTerminal.global_declaration) - export class GlobalDeclaration extends TreeNode { - macroExpressions: Array = []; - - override init(): void { - this.macroExpressions.length = 0; - } - - override semanticAnalyze(sa: SemanticAnalyzer): void { - const child = this.children[0]; - - if (child instanceof MacroUndef || child instanceof GlobalMacroIfStatement || child instanceof BaseToken) { - sa.shaderData.globalMacroDeclarations.push(this); - - if (child instanceof GlobalMacroIfStatement) { - this.macroExpressions.push(...child.macroExpressions); - } else { - this.macroExpressions.push(child); - } - } - } - } - - @ASTNodeDecorator(NoneTerminal.macro_undef) - export class MacroUndef extends TreeNode { - override codeGen(visitor: CodeGenVisitor) { - return this.setCache(super.codeGen(visitor) + "\n"); - } - } - - @ASTNodeDecorator(NoneTerminal.macro_push_context) - export class MacroPushContext extends TreeNode { - override semanticAnalyze(sa: SemanticAnalyzer): void { - sa.symbolTableStack._macroLevel++; - } - - override codeGen(visitor: CodeGenVisitor) { - return this.setCache("\n" + super.codeGen(visitor) + "\n"); - } - } - - @ASTNodeDecorator(NoneTerminal.macro_pop_context) - export class MacroPopContext extends TreeNode { - override semanticAnalyze(sa: SemanticAnalyzer): void { - sa.symbolTableStack._macroLevel--; - } - - override codeGen(visitor: CodeGenVisitor) { - return this.setCache("\n" + super.codeGen(visitor) + "\n"); - } - } - - @ASTNodeDecorator(NoneTerminal.macro_elif_expression) - export class MacroElifExpression extends TreeNode { - override codeGen(visitor: CodeGenVisitor) { - return this.setCache("\n" + super.codeGen(visitor) + "\n"); - } - } - - @ASTNodeDecorator(NoneTerminal.macro_else_expression) - export class MacroElseExpression extends TreeNode { - override codeGen(visitor: CodeGenVisitor) { - return this.setCache("\n" + super.codeGen(visitor) + "\n"); - } - } - - @ASTNodeDecorator(NoneTerminal.global_macro_declaration) - export class GlobalMacroDeclaration extends TreeNode { - macroExpressions: MacroExpression[] = []; - - override init(): void { - this.macroExpressions.length = 0; - } - - override semanticAnalyze(sa: SemanticAnalyzer): void { - const children = this.children; - const macroExpressions = this.macroExpressions; - - if (children.length === 1) { - macroExpressions.push(...(children[0] as GlobalDeclaration).macroExpressions); - } else { - macroExpressions.push(...(children[0] as GlobalMacroDeclaration).macroExpressions); - macroExpressions.push(...(children[1] as GlobalDeclaration).macroExpressions); - } - } - - override codeGen(visitor: CodeGenVisitor) { - const children = this.children as TreeNode[]; - if (children.length === 1) { - return this.setCache(children[0].codeGen(visitor)); - } else { - return this.setCache(`${children[0].codeGen(visitor)}\n${children[1].codeGen(visitor)}`); - } - } - } - - @ASTNodeDecorator(NoneTerminal.global_macro_if_statement) - export class GlobalMacroIfStatement extends TreeNode { - macroExpressions: MacroExpression[] = []; - - override init(): void { - this.macroExpressions.length = 0; - } - - override semanticAnalyze(sa: SemanticAnalyzer): void { - const children = this.children; - const macroExpressions = this.macroExpressions; - - if (children.length === 3) { - macroExpressions.push(children[0] as MacroPushContext); - macroExpressions.push(...(children[1] as GlobalMacroDeclaration).macroExpressions); - macroExpressions.push(...(children[2] as GlobalMacroBranch).macroExpressions); - } else { - macroExpressions.push(children[0] as MacroPushContext); - macroExpressions.push(...(children[1] as GlobalMacroBranch).macroExpressions); - } - } - } - - @ASTNodeDecorator(NoneTerminal.global_macro_branch) - export class GlobalMacroBranch extends TreeNode { - macroExpressions: MacroExpression[] = []; - - override init(): void { - this.macroExpressions.length = 0; - } - - override semanticAnalyze(sa: SemanticAnalyzer): void { - const children = this.children; - const lastNode = children[children.length - 1]; - - const macroExpressions = this.macroExpressions; - macroExpressions.push(children[0] as MacroPopContext | MacroElseExpression | MacroElifExpression); - - if (children[1] instanceof GlobalMacroDeclaration) { - macroExpressions.push(...children[1].macroExpressions); - } - - if (lastNode instanceof GlobalMacroBranch) { - macroExpressions.push(...lastNode.macroExpressions); - } - - if (children.length > 1 && lastNode instanceof MacroPopContext) { - macroExpressions.push(lastNode); - } - } - } - - @ASTNodeDecorator(NoneTerminal.macro_if_statement) - export class MacroIfStatement extends TreeNode {} - - @ASTNodeDecorator(NoneTerminal.macro_branch) - export class MacroBranch extends TreeNode {} - - @ASTNodeDecorator(NoneTerminal.macro_call_symbol) - export class MacroCallSymbol extends TreeNode { - referenceSymbolNames: string[] = []; - macroName: string; - - override init(): void { - this.referenceSymbolNames.length = 0; - } - - override semanticAnalyze(sa: SemanticAnalyzer): void { - const children = this.children; - const macroName = (children[0] as BaseToken).lexeme; - - this.macroName = macroName; - - Preprocessor.getReferenceSymbolNames(sa.macroDefineList, macroName, this.referenceSymbolNames); - } - } - - @ASTNodeDecorator(NoneTerminal.macro_call_function) - export class MacroCallFunction extends TreeNode { - referenceSymbolNames: string[]; - macroName: string; - - override semanticAnalyze(sa: SemanticAnalyzer): void { - const child = this.children[0] as MacroCallSymbol; - - this.referenceSymbolNames = child.referenceSymbolNames; - this.macroName = child.macroName; - } - - override codeGen(visitor: CodeGenVisitor) { - return this.setCache(visitor.visitMacroCallFunction(this)); - } - } -} diff --git a/packages/shader-lab/src/parser/Grammar.ts b/packages/shader-lab/src/parser/Grammar.ts deleted file mode 100644 index bd5383797..000000000 --- a/packages/shader-lab/src/parser/Grammar.ts +++ /dev/null @@ -1,34 +0,0 @@ -import { ETokenType } from "../common"; -import { NoneTerminal, GrammarSymbol } from "./GrammarSymbol"; -import Production from "../lalr/Production"; - -export class Grammar { - readonly productions: Production[]; - - readonly startSymbol: NoneTerminal; - - static create(start: NoneTerminal, productions: GrammarSymbol[][]) { - const _ps = productions.map((gsl) => { - return new Production(gsl[0], gsl.slice(1)); - }); - return new Grammar(start, _ps); - } - - constructor(start: NoneTerminal, productions: Production[]) { - this.startSymbol = start; - productions.unshift(new Production(NoneTerminal.START, [start])); - this.productions = productions; - } - - getProductionList(nonTerminal: NoneTerminal) { - return this.productions.filter((item) => item.goal === nonTerminal); - } - - isNullableNT(NT: NoneTerminal) { - return this.productions.find((item) => item.goal === NT && item.derivation[0] === ETokenType.EPSILON); - } - - getProductionByID(pid: number) { - return Production.pool.get(pid); - } -} diff --git a/packages/shader-lab/src/parser/GrammarSymbol.ts b/packages/shader-lab/src/parser/GrammarSymbol.ts deleted file mode 100644 index 7d5952d65..000000000 --- a/packages/shader-lab/src/parser/GrammarSymbol.ts +++ /dev/null @@ -1,139 +0,0 @@ -import { TokenType } from "../common"; - -export type Terminal = TokenType; - -export enum NoneTerminal { - START = 2000, - // galacean - gs_shader_program, - - // glsl - global_declaration, - variable_declaration, - variable_declaration_list, - variable_declaration_statement, - array_specifier_list, - array_specifier, - ext_builtin_type_specifier_nonarray, - precision_specifier, - variable_identifier, - variable_identifier_node, - primary_expression, - postfix_expression, - integer_expression, - function_call, - function_call_generic, - function_call_header_no_parameters, - function_call_header_with_parameters, - function_call_parameter_list, - function_call_header, - function_identifier, - constructor_identifier, - unary_expression, - unary_operator, - multiplicative_expression, - additive_expression, - shift_expression, - relational_expression, - equality_expression, - and_expression, - inclusive_or_expression, - exclusive_or_expression, - logical_and_expression, - logical_xor_expression, - logical_or_expression, - conditional_expression, - assignment_expression, - assignment_operator, - expression, - integer_constant_expression, - integer_constant_expression_operator, - declaration, - function_prototype, - function_declarator, - function_header_with_parameters, - function_header, - function_parameter_list, - parameter_declarator, - parameter_declaration, - parameter_qualifier, - parameter_type_specifier, - init_declarator_list, - single_declaration, - fully_specified_type, - type_qualifier, - single_type_qualifier, - storage_qualifier, - precision_qualifier, - interpolation_qualifier, - invariant_qualifier, - type_specifier, - type_specifier_nonarray, - type_specifier_no_prec, - basic_type, - struct_specifier, - struct_declaration_list, - struct_declaration, - layout_qualifier, - struct_declarator_list, - struct_declarator, - identifier_list, - decl_identifier, - initializer, - initializer_list, - declaration_statement, - simple_statement, - compound_statement_no_scope, - statement_with_scope, - compound_statement, - statement, - statement_list, - iteration_statement_no_new_scope, - expression_statement, - selection_statement, - selection_rest_statement, - condition, - conditionopt, - iteration_statement, - for_init_statement, - for_rest_statement, - jump_statement, - external_declaration, - function_definition, - field_selection, - bool_constant, - function_identifier_node, - typename_identifier_node, - scope_brace, - scope_end_brace, - - // Macro - macro_undef, - macro_push_context, - macro_pop_context, - macro_elif_expression, - macro_else_expression, - global_macro_if_statement, - global_macro_declaration, - global_macro_branch, - macro_struct_declaration, - macro_struct_branch, - macro_if_statement, - macro_branch, - macro_param_case_list, - macro_param_block, - macro_parameter_branch, - macro_call_arg_case_list, - macro_call_arg_block, - macro_call_arg_branch, - - // Macro call - macro_call_symbol, - macro_call_function, - - _ignore -} - -export type GrammarSymbol = Terminal | NoneTerminal; - -export type Derivation = GrammarSymbol[]; diff --git a/packages/shader-lab/src/parser/SemanticAnalyzer.ts b/packages/shader-lab/src/parser/SemanticAnalyzer.ts deleted file mode 100644 index 45b83621f..000000000 --- a/packages/shader-lab/src/parser/SemanticAnalyzer.ts +++ /dev/null @@ -1,94 +0,0 @@ -import { ShaderRange } from "../common"; -import { SymbolTable } from "../common/SymbolTable"; -import { SymbolTableStack } from "../common/SymbolTableStack"; -import { GSError, GSErrorName } from "../GSError"; -import { SymbolInfo } from "../parser/symbolTable"; -import { ShaderLab } from "../ShaderLab"; -import { ASTNode, TreeNode } from "./AST"; -import { ShaderData } from "./ShaderInfo"; -import { NodeChild } from "./types"; - -import { Logger } from "@galacean/engine"; -import { MacroDefineList } from "../Preprocessor"; - -export type TranslationRule = (sa: SemanticAnalyzer, ...tokens: NodeChild[]) => T; - -/** - * @internal - * The semantic analyzer of `ShaderLab` compiler. - * - Build symbol table - * - Static analysis - */ -export default class SemanticAnalyzer { - /** - * @internal - */ - static _lookupSymbol: SymbolInfo = new SymbolInfo("", null); - - semanticStack: TreeNode[] = []; - acceptRule?: TranslationRule = undefined; - symbolTableStack: SymbolTableStack> = new SymbolTableStack(); - curFunctionInfo: { - header?: ASTNode.FunctionDeclarator; - returnStatement?: ASTNode.JumpStatement; - } = {}; - private _shaderData = new ShaderData(); - private _translationRuleTable: Map = new Map(); - - private _macroDefineList: MacroDefineList; - - // #if _VERBOSE - readonly errors: Error[] = []; - // #endif - - get shaderData() { - return this._shaderData; - } - - get macroDefineList(): MacroDefineList { - return this._macroDefineList; - } - - constructor() { - this.pushScope(); - } - - reset(macroDefineList: MacroDefineList) { - this._macroDefineList = macroDefineList; - this.semanticStack.length = 0; - this._shaderData = new ShaderData(); - this.symbolTableStack.clear(); - this.pushScope(); - // #if _VERBOSE - this.errors.length = 0; - // #endif - } - - pushScope() { - this.symbolTableStack.pushScope(new SymbolTable()); - } - - popScope() { - return this.symbolTableStack.popScope(); - } - - addTranslationRule(pid: number, rule: TranslationRule) { - this._translationRuleTable.set(pid, rule); - } - - getTranslationRule(pid: number) { - return this._translationRuleTable.get(pid); - } - - reportError(loc: ShaderRange, message: string): void { - // #if _VERBOSE - this.errors.push(new GSError(GSErrorName.CompilationError, message, loc, ShaderLab._processingPassText)); - // #else - Logger.error(message); - // #endif - } - - reportWarning(loc: ShaderRange, message: string): void { - Logger.warn(new GSError(GSErrorName.CompilationWarn, message, loc, ShaderLab._processingPassText).toString()); - } -} diff --git a/packages/shader-lab/src/parser/ShaderInfo.ts b/packages/shader-lab/src/parser/ShaderInfo.ts deleted file mode 100644 index f607626f1..000000000 --- a/packages/shader-lab/src/parser/ShaderInfo.ts +++ /dev/null @@ -1,17 +0,0 @@ -import { SymbolInfo, SymbolTable } from "../parser/symbolTable"; -import { ASTNode } from "./AST"; - -export class ShaderData { - symbolTable: SymbolTable; - - vertexMain: ASTNode.FunctionDefinition; - fragmentMain: ASTNode.FunctionDefinition; - - globalPrecisions: ASTNode.PrecisionSpecifier[] = []; - - globalMacroDeclarations: ASTNode.GlobalDeclaration[] = []; - - getOuterGlobalMacroDeclarations(): ASTNode.GlobalDeclaration[] { - return this.globalMacroDeclarations.filter((node) => node.parent instanceof ASTNode.GLShaderProgram); - } -} diff --git a/packages/shader-lab/src/parser/ShaderTargetParser.ts b/packages/shader-lab/src/parser/ShaderTargetParser.ts deleted file mode 100644 index d2441877f..000000000 --- a/packages/shader-lab/src/parser/ShaderTargetParser.ts +++ /dev/null @@ -1,143 +0,0 @@ -import { Logger } from "@galacean/engine"; -import { ETokenType } from "../common"; -import { BaseToken } from "../common/BaseToken"; -import { GSError, GSErrorName } from "../GSError"; -import { LALR1 } from "../lalr"; -import { addTranslationRule, createGrammar } from "../lalr/CFG"; -import { EAction, StateActionTable, StateGotoTable } from "../lalr/types"; -import { MacroDefineList } from "../Preprocessor"; -import { ParserUtils } from "../ParserUtils"; -import { ShaderLab } from "../ShaderLab"; -import { ShaderLabUtils } from "../ShaderLabUtils"; -import { ASTNode, TreeNode } from "./AST"; -import { Grammar } from "./Grammar"; -import { GrammarSymbol, NoneTerminal } from "./GrammarSymbol"; -import SematicAnalyzer from "./SemanticAnalyzer"; -import { TraceStackItem } from "./types"; - -/** - * The syntax parser and sematic analyzer of `ShaderLab` compiler - */ -export class ShaderTargetParser { - readonly actionTable: StateActionTable; - readonly gotoTable: StateGotoTable; - readonly grammar: Grammar; - readonly sematicAnalyzer: SematicAnalyzer; - private _traceBackStack: (TraceStackItem | number)[] = []; - - private get curState() { - return this._traceBackStack[this._traceBackStack.length - 1] as number; - } - private get stateActionTable() { - return this.actionTable.get(this.curState)!; - } - private get stateGotoTable() { - return this.gotoTable.get(this.curState); - } - - // #if _VERBOSE - /** @internal */ - get errors() { - return this.sematicAnalyzer.errors; - } - // #endif - - static _singleton: ShaderTargetParser; - - static create() { - if (!this._singleton) { - const grammar = createGrammar(); - const generator = new LALR1(grammar); - generator.generate(); - this._singleton = new ShaderTargetParser(generator.actionTable, generator.gotoTable, grammar); - addTranslationRule(this._singleton.sematicAnalyzer); - } - - return this._singleton; - } - - private constructor(actionTable: StateActionTable, gotoTable: StateGotoTable, grammar: Grammar) { - this.actionTable = actionTable; - this.gotoTable = gotoTable; - this.grammar = grammar; - this.sematicAnalyzer = new SematicAnalyzer(); - } - - parse(tokens: Generator, macroDefineList: MacroDefineList): ASTNode.GLShaderProgram | null { - this.sematicAnalyzer.reset(macroDefineList); - const start = performance.now(); - const { _traceBackStack: traceBackStack, sematicAnalyzer } = this; - traceBackStack.push(0); - - let nextToken = tokens.next(); - let loopCount = 0; - while (true) { - loopCount += 1; - const token = nextToken.value; - - const actionInfo = this.stateActionTable.get(token.type); - if (actionInfo?.action === EAction.Shift) { - traceBackStack.push(token, actionInfo.target!); - nextToken = tokens.next(); - } else if (actionInfo?.action === EAction.Accept) { - Logger.info( - `[Task - AST compilation] Accept! State automata run ${loopCount} times! cost time ${ - performance.now() - start - }ms` - ); - sematicAnalyzer.acceptRule?.(sematicAnalyzer); - return sematicAnalyzer.semanticStack.pop() as ASTNode.GLShaderProgram; - } else if (actionInfo?.action === EAction.Reduce) { - const target = actionInfo.target!; - const reduceProduction = this.grammar.getProductionByID(target)!; - const translationRule = sematicAnalyzer.getTranslationRule(reduceProduction.id); - - const values: (TreeNode | BaseToken)[] = []; - - for (let i = reduceProduction.derivation.length - 1; i >= 0; i--) { - if (reduceProduction.derivation[i] === ETokenType.EPSILON) continue; - traceBackStack.pop(); - const token = traceBackStack.pop(); - if (token instanceof BaseToken) { - values.unshift(token); - } else { - const astNode = sematicAnalyzer.semanticStack.pop()!; - values.unshift(astNode); - } - } - translationRule?.(sematicAnalyzer, ...values); - - const gotoTable = this.stateGotoTable; - traceBackStack.push(reduceProduction.goal); - - const nextState = gotoTable?.get(reduceProduction.goal)!; - traceBackStack.push(nextState); - continue; - } else { - const error = ShaderLabUtils.createGSError( - `Unexpected token ${token.lexeme}`, - GSErrorName.CompilationError, - ShaderLab._processingPassText, - token.location - ); - // #if _VERBOSE - this.sematicAnalyzer.errors.push(error); - // #endif - return null; - } - } - } - - // #if _VERBOSE - private _printStack(nextToken: BaseToken) { - let str = ""; - for (let i = 0; i < this._traceBackStack.length - 1; i++) { - const state = this._traceBackStack[i++]; - const token = this._traceBackStack[i]; - str += `State${state} - ${(token).lexeme ?? ParserUtils.toString(token as GrammarSymbol)}; `; - } - str += `State${this._traceBackStack[this._traceBackStack.length - 1]} --- ${nextToken.lexeme}`; - Logger.info(str); - } - // #endif -} diff --git a/packages/shader-lab/src/parser/TargetParser.y b/packages/shader-lab/src/parser/TargetParser.y deleted file mode 100644 index 148cbd35c..000000000 --- a/packages/shader-lab/src/parser/TargetParser.y +++ /dev/null @@ -1,642 +0,0 @@ -// For cfg conflict test, used by bison - -%token id -%token INT_CONSTANT -%token FLOAT_CONSTANT -%token true -%token false - -%token void -%token float -%token int -%token mat4 -%token struct -%token highp -%token mediemp -%token lowp - -%token const -%token in -%token out -%token inout -%token centroid - -%token SMOOTH -%token FLAT - -%token PRECISE -%token PRECISION - -%token INVARIANT -%token layout -%token location - -%token or -%token xor -%token and -%token eq -%token neq -%token ge -%token le -%token left_op -%token right_op -%token INC_OP -%token DEC_OP - -%token MUL_ASSIGN -%token DIV_ASSIGN -%token MOD_ASSIGN -%token ADD_ASSIGN -%token SUB_ASSIGN -%token LEFT_ASSIGN -%token RIGHT_ASSIGN -%token AND_ASSIGN -%token XOR_ASSIGN -%token OR_ASSIGN - -%token IF ELSE WHILE FOR - -%token CONTINUE BREAK RETURN DISCARD - -%token MACRO_IF MACRO_IFDEF MACRO_IFNDEF MACRO_ELIF MACRO_ELSE MACRO_ENDIF -%token MACRO_UNDEF -%token MACRO_DEFINE_EXPRESSION MACRO_CONDITIONAL_EXPRESSION -%token MACRO_CALL - - -%% -gs_shader_program: - global_declaration - | gs_shader_program global_declaration - ; - -macro_call_symbol: - MACRO_CALL - ; - -macro_call_function: - macro_call_symbol '(' ')' - | macro_call_symbol '(' function_call_parameter_list ')' - ; - -macro_undef: - MACRO_UNDEF id - | MACRO_UNDEF MACRO_CALL - ; - -macro_push_context: - MACRO_IF MACRO_CONDITIONAL_EXPRESSION - | MACRO_IFDEF id - | MACRO_IFNDEF id - | MACRO_IFDEF macro_call_symbol - | MACRO_IFNDEF macro_call_symbol - ; - -macro_pop_context: - MACRO_ENDIF - ; - -macro_elif_expression: - MACRO_ELIF MACRO_CONDITIONAL_EXPRESSION - ; - -macro_else_expression: - MACRO_ELSE - ; - -global_declaration: - precision_specifier - | variable_declaration_statement - | struct_specifier - | function_definition - | global_macro_if_statement - | macro_undef - | MACRO_DEFINE_EXPRESSION - ; - -global_macro_declaration: - global_declaration - | global_macro_declaration global_declaration - - -global_macro_if_statement: - macro_push_context global_macro_declaration global_macro_branch - | macro_push_context global_macro_branch - ; - -global_macro_branch: - macro_pop_context - | macro_elif_expression global_macro_declaration global_macro_branch - | macro_else_expression global_macro_declaration macro_pop_context - | macro_elif_expression global_macro_branch - | macro_else_expression macro_pop_context - ; - - -variable_declaration: - fully_specified_type id - | fully_specified_type id array_specifier - | fully_specified_type id '=' initializer - ; - -variable_declaration_list: - variable_declaration - | variable_declaration_list ',' id - | variable_declaration_list ',' id array_specifier - ; - -variable_declaration_statement: - variable_declaration_list ';' - -variable_identifier: - id - | macro_call_symbol - | macro_call_function - ; - -precision_specifier: - PRECISION precision_qualifier ext_builtin_type_specifier_nonarray ';' - ; - -ext_builtin_type_specifier_nonarray: - void - | float - | int - | mat4 - ; - -type_specifier_nonarray: - ext_builtin_type_specifier_nonarray - | id - ; - -struct_specifier: - struct id '{' struct_declaration_list '}' ; - | struct '{' struct_declaration_list '}' ; - ; - -struct_declaration_list: - struct_declaration - | struct_declaration_list struct_declaration - ; - -struct_declaration: - type_specifier struct_declarator_list ';' - | type_qualifier type_specifier struct_declarator_list ';' - | layout_qualifier type_specifier struct_declarator ';' - | macro_struct_declaration - ; - -macro_struct_declaration: - macro_push_context struct_declaration_list macro_struct_branch - | macro_push_context macro_struct_branch - ; - -macro_struct_branch: - macro_pop_context - | macro_elif_expression struct_declaration_list macro_struct_branch - | macro_else_expression struct_declaration_list macro_pop_context - | macro_elif_expression macro_struct_branch - | macro_else_expression macro_pop_context - ; - -layout_qualifier: - layout '(' location '=' INT_CONSTANT ')' - | layout '(' location '=' id ')' - - -struct_declarator_list: - struct_declarator - | struct_declarator_list ',' struct_declarator - ; - -struct_declarator: - id - | id array_specifier - ; - -array_specifier: - '[' ']' - | '[' integer_constant_expression ']' - ; - -type_specifier: - type_specifier_nonarray - | ext_builtin_type_specifier_nonarray array_specifier - ; - -precision_qualifier: - highp - | mediemp - | lowp - ; - -type_qualifier: - single_type_qualifier - | type_qualifier single_type_qualifier - ; - -single_type_qualifier: - storage_qualifier - | precision_qualifier - | interpolation_qualifier - | invariant_qualifier - | PRECISE - ; - -storage_qualifier: - const - | in - | out - | inout - | centroid - ; - -interpolation_qualifier: - SMOOTH - | FLAT - ; - -invariant_qualifier: - INVARIANT - ; - -integer_constant_expression_operator: - '+' - | '-' - | '*' - | '/' - | '%' - ; - -integer_constant_expression: - variable_identifier - | INT_CONSTANT - | integer_constant_expression integer_constant_expression_operator INT_CONSTANT - | integer_constant_expression integer_constant_expression_operator variable_identifier - ; - -conditional_expression: - logical_or_expression - | logical_or_expression '?' expression ':' assignment_expression - ; - -logical_or_expression: - logical_xor_expression - | logical_or_expression or logical_xor_expression - ; - -logical_xor_expression: - logical_and_expression - | logical_xor_expression xor logical_and_expression - ; - -logical_and_expression: - inclusive_or_expression - | logical_and_expression and inclusive_or_expression - ; - -inclusive_or_expression: - exclusive_or_expression - | inclusive_or_expression '|' exclusive_or_expression - ; - -exclusive_or_expression: - and_expression - | exclusive_or_expression '^' and_expression - ; - -and_expression: - equality_expression - | and_expression '&' equality_expression - ; - -equality_expression: - relational_expression - | equality_expression eq relational_expression - | equality_expression neq relational_expression - ; - -relational_expression: - shift_expression - | relational_expression '<' shift_expression - | relational_expression '>' shift_expression - | relational_expression le shift_expression - | relational_expression ge shift_expression - ; - -shift_expression: - additive_expression - | shift_expression left_op additive_expression - | shift_expression right_op additive_expression - ; - -additive_expression: - multiplicative_expression - | additive_expression '+' multiplicative_expression - | additive_expression '-' multiplicative_expression - ; - -multiplicative_expression: - unary_expression - | multiplicative_expression '*' unary_expression - | multiplicative_expression '/' unary_expression - | multiplicative_expression '%' unary_expression - ; - -unary_expression: - postfix_expression - | INC_OP unary_expression - | DEC_OP unary_expression - | unary_operator unary_expression - -unary_operator: - '+' - | '-' - | '!' - | '~' - ; - -postfix_expression: - primary_expression - | postfix_expression '[' expression ']' - | function_call - | postfix_expression '.' id - | postfix_expression '.' function_call - | postfix_expression INC_OP - | postfix_expression DEC_OP - ; - -primary_expression: - variable_identifier - | INT_CONSTANT - | FLOAT_CONSTANT - | true - | false - | '(' expression ')' - ; - -expression: - assignment_expression - | expression ',' assignment_expression - ; - -assignment_expression: - conditional_expression - | unary_expression assignment_operator assignment_expression - ; - -assignment_operator: - '=' - | MUL_ASSIGN - | DIV_ASSIGN - | MOD_ASSIGN - | ADD_ASSIGN - | SUB_ASSIGN - | LEFT_ASSIGN - | RIGHT_ASSIGN - | AND_ASSIGN - | XOR_ASSIGN - | OR_ASSIGN - ; - -function_call: - function_call_generic - ; - -function_call_generic: - function_identifier '(' function_call_parameter_list ')' - | function_identifier '(' ')' - | function_identifier '(' void ')' - ; - -function_call_parameter_list: - assignment_expression - | function_call_parameter_list ',' assignment_expression - | macro_call_arg_block - | function_call_parameter_list macro_call_arg_block - ; - - -macro_call_arg_case_list: - assignment_expression - | ',' assignment_expression - | macro_call_arg_block - | macro_call_arg_case_list macro_call_arg_block - | macro_call_arg_case_list ',' assignment_expression - ; - -macro_call_arg_block: - macro_push_context macro_call_arg_branch - | macro_push_context macro_call_arg_case_list macro_call_arg_branch - ; - -macro_call_arg_branch: - macro_pop_context - | macro_elif_expression macro_call_arg_case_list macro_call_arg_branch - | macro_else_expression macro_call_arg_case_list macro_pop_context - | macro_elif_expression macro_call_arg_branch - | macro_else_expression macro_pop_context - ; - -function_identifier: - type_specifier - ; - -function_definition: - function_prototype compound_statement_no_scope - ; - -function_prototype: - function_declarator ')' - ; - -function_declarator: - function_header - | function_header function_parameter_list - ; - -function_header: - fully_specified_type id '(' - ; - -fully_specified_type: - type_specifier - | type_qualifier type_specifier - ; - - -function_parameter_list: - parameter_declaration - | function_parameter_list ',' parameter_declaration - | macro_param_block - | function_parameter_list macro_param_block - ; - -macro_param_case_list: - parameter_declaration - | ',' parameter_declaration - | macro_param_block - | macro_param_case_list macro_param_block - | macro_param_case_list ',' parameter_declaration - ; - -macro_param_block: - macro_push_context macro_parameter_branch - | macro_push_context macro_param_case_list macro_parameter_branch - ; - -macro_parameter_branch: - macro_pop_context - | macro_elif_expression macro_param_case_list macro_parameter_branch - | macro_else_expression macro_param_case_list macro_pop_context - | macro_elif_expression macro_parameter_branch - | macro_else_expression macro_pop_context - ; - - -parameter_declaration: - type_qualifier parameter_declarator - | parameter_declarator - | macro_call_symbol - | macro_call_function - ; - -parameter_declarator: - type_specifier id - | type_specifier id array_specifier - ; - -statement_list: - statement - | statement_list statement - ; - -statement: - compound_statement - | simple_statement - ; - -compound_statement_no_scope: - '{' '}' - | '{' statement_list '}' - -compound_statement: - '{' '}' - | scope_brace statement_list scope_end_brace - ; - -simple_statement: - declaration - | expression_statement - | selection_statement - | iteration_statement - | jump_statement - | macro_if_statement - | macro_undef - | MACRO_DEFINE_EXPRESSION - ; - -declaration: - function_prototype ';' - | init_declarator_list ';' - | type_qualifier id ';' - | type_qualifier id identifier_list ';' - | precision_specifier - ; - -identifier_list: - ',' id - | identifier_list ',' id - ; - -init_declarator_list: - single_declaration - | init_declarator_list ',' id - | init_declarator_list ',' id array_specifier - | init_declarator_list ',' id array_specifier '=' initializer - | init_declarator_list ',' id '=' initializer - ; - -single_declaration: - fully_specified_type id - | fully_specified_type id array_specifier - | fully_specified_type id '=' initializer - | fully_specified_type id array_specifier '=' initializer - ; - -initializer: - assignment_expression - | '{' initializer_list '}' - ; - -initializer_list: - initializer - | initializer_list ',' initializer - ; - -expression_statement: - ';' - | expression ';' - ; - -// Dangling else ambiguity -selection_statement: - IF '(' expression ')' statement - | IF '(' expression ')' statement ELSE statement - ; - -macro_if_statement: - macro_push_context statement_list macro_branch - | macro_push_context macro_branch - ; - -macro_branch: - macro_pop_context - | macro_elif_expression statement_list macro_branch - | macro_else_expression statement_list macro_pop_context - | macro_elif_expression macro_branch - | macro_else_expression macro_pop_context - ; - -iteration_statement: - WHILE '(' condition ')' statement - | FOR '(' for_init_statement for_rest_statement ')' statement - ; - -for_init_statement: - expression_statement - | declaration - ; - -condition: - expression - | fully_specified_type id '=' initializer - ; - -for_rest_statement: - conditionopt ';' - | conditionopt ';' expression - ; - -conditionopt: - /** empty */ - | condition - ; - -jump_statement: - CONTINUE ';' - | BREAK ';' - | RETURN ';' - | RETURN expression ';' - | DISCARD ';' - ; - -scope_brace: - '{' - ; - -scope_end_brace: - '}' - ; -%% diff --git a/packages/shader-lab/src/parser/builtin/functions.ts b/packages/shader-lab/src/parser/builtin/functions.ts deleted file mode 100644 index 46c0d49d2..000000000 --- a/packages/shader-lab/src/parser/builtin/functions.ts +++ /dev/null @@ -1,647 +0,0 @@ -import { GalaceanDataType, TypeAny } from "../../common"; -import { Keyword } from "../../common/enums/Keyword"; -import { EShaderStage } from "../../common/enums/ShaderStage"; - -export enum EGenType { - GenType = 200, - GenIntType, - GenUintType, - GenBoolType, - Mat, - BoolVec, - IntVec, - UintVec, - Vec, - GVec4, - GSampler2D, - GSampler3D, - GSamplerCube, - GSampler2DArray -} - -export type NonGenericGalaceanType = Exclude; -type BuiltinType = NonGenericGalaceanType | EGenType; - -function isGenericType(t: BuiltinType) { - return t >= EGenType.GenType && t <= EGenType.GSampler2DArray; -} - -const BuiltinFunctionTable: Map = new Map(); - -export class BuiltinFunction { - ident: string; - readonly args: BuiltinType[]; - readonly scope: EShaderStage; - - private _returnType: BuiltinType; - private _realReturnType: NonGenericGalaceanType; - - get realReturnType(): NonGenericGalaceanType { - return this._realReturnType; - } - - private constructor(ident: string, returnType: BuiltinType, scope: EShaderStage, ...args: BuiltinType[]) { - this.ident = ident; - this._returnType = returnType; - this.args = args; - this.scope = scope; - } - - static getReturnType(fn: BuiltinFunction, genType?: NonGenericGalaceanType) { - if (!isGenericType(fn._returnType)) return fn._returnType as NonGenericGalaceanType; - return genType; - } - - static _create(ident: string, returnType: BuiltinType, ...args: BuiltinType[]) { - const fn = new BuiltinFunction(ident, returnType, EShaderStage.ALL, ...args); - const list = BuiltinFunctionTable.get(ident) ?? []; - list.push(fn); - BuiltinFunctionTable.set(ident, list); - } - - static _createWithScop(ident: string, returnType: BuiltinType, scope: EShaderStage, ...args: BuiltinType[]) { - const fn = new BuiltinFunction(ident, returnType, scope, ...args); - const list = BuiltinFunctionTable.get(ident) ?? []; - list.push(fn); - BuiltinFunctionTable.set(ident, list); - } - - // TODO: correct the type deduce, consider the following case: - // It incorrectly inferred the type of the following expression as float, which should be vec3. - // max(scatterAmt.xyz,0.0001) - static getFn(ident: string, parameterTypes: NonGenericGalaceanType[]): BuiltinFunction | undefined { - const list = BuiltinFunctionTable.get(ident); - if (list) { - for (let length = list.length, i = 0; i < length; i++) { - const fn = list[i]; - const fnArgs = fn.args; - const argLength = fnArgs.length; - if (argLength !== parameterTypes.length) continue; - // Try to match generic parameter type. - let returnType = TypeAny; - let found = true; - for (let i = 0; i < argLength; i++) { - const curFnArg = fnArgs[i]; - if (isGenericType(curFnArg)) { - if (returnType === TypeAny) returnType = parameterTypes[i]; - } else { - if (curFnArg !== parameterTypes[i] && parameterTypes[i] !== TypeAny) { - found = false; - break; - } - } - } - if (found) { - fn._realReturnType = returnType; - return fn; - } - } - } - } - - static isExist(ident: string) { - return !!BuiltinFunctionTable.get(ident); - } -} - -BuiltinFunction._create("radians", EGenType.GenType, EGenType.GenType); -BuiltinFunction._create("degrees", EGenType.GenType, EGenType.GenType); -BuiltinFunction._create("sin", EGenType.GenType, EGenType.GenType); -BuiltinFunction._create("cos", EGenType.GenType, EGenType.GenType); -BuiltinFunction._create("tan", EGenType.GenType, EGenType.GenType); -BuiltinFunction._create("asin", EGenType.GenType, EGenType.GenType); -BuiltinFunction._create("acos", EGenType.GenType, EGenType.GenType); -BuiltinFunction._create("atan", EGenType.GenType, EGenType.GenType, EGenType.GenType); -BuiltinFunction._create("atan", EGenType.GenType, EGenType.GenType); -BuiltinFunction._create("sinh", EGenType.GenType, EGenType.GenType); -BuiltinFunction._create("cosh", EGenType.GenType, EGenType.GenType); -BuiltinFunction._create("tanh", EGenType.GenType, EGenType.GenType); -BuiltinFunction._create("asinh", EGenType.GenType, EGenType.GenType); -BuiltinFunction._create("acosh", EGenType.GenType, EGenType.GenType); -BuiltinFunction._create("atanh", EGenType.GenType, EGenType.GenType); - -BuiltinFunction._create("pow", EGenType.GenType, EGenType.GenType, EGenType.GenType); -BuiltinFunction._create("exp", EGenType.GenType, EGenType.GenType); -BuiltinFunction._create("log", EGenType.GenType, EGenType.GenType); -BuiltinFunction._create("exp2", EGenType.GenType, EGenType.GenType); -BuiltinFunction._create("log2", EGenType.GenType, EGenType.GenType); -BuiltinFunction._create("sqrt", EGenType.GenType, EGenType.GenType); -BuiltinFunction._create("inversesqrt", EGenType.GenType, EGenType.GenType); - -BuiltinFunction._create("abs", EGenType.GenType, EGenType.GenType); -BuiltinFunction._create("abs", EGenType.GenIntType, EGenType.GenIntType); -BuiltinFunction._create("sign", EGenType.GenType, EGenType.GenType); -BuiltinFunction._create("sign", EGenType.GenIntType, EGenType.GenIntType); -BuiltinFunction._create("floor", EGenType.GenType, EGenType.GenType); -BuiltinFunction._create("trunc", EGenType.GenType, EGenType.GenType); -BuiltinFunction._create("round", EGenType.GenType, EGenType.GenType); -BuiltinFunction._create("roundEven", EGenType.GenType, EGenType.GenType); -BuiltinFunction._create("ceil", EGenType.GenType, EGenType.GenType); -BuiltinFunction._create("fract", EGenType.GenType, EGenType.GenType); -BuiltinFunction._create("mod", EGenType.GenType, EGenType.GenType, Keyword.FLOAT); -BuiltinFunction._create("mod", EGenType.GenType, EGenType.GenType, EGenType.GenType); -BuiltinFunction._create("min", EGenType.GenType, EGenType.GenType, EGenType.GenType); -BuiltinFunction._create("min", EGenType.GenType, EGenType.GenType, Keyword.FLOAT); -BuiltinFunction._create("min", EGenType.GenIntType, EGenType.GenIntType, EGenType.GenIntType); -BuiltinFunction._create("min", EGenType.GenIntType, EGenType.GenIntType, Keyword.INT); -BuiltinFunction._create("min", EGenType.GenUintType, EGenType.GenUintType, EGenType.GenUintType); -BuiltinFunction._create("min", EGenType.GenUintType, EGenType.GenUintType, Keyword.UINT); -BuiltinFunction._create("max", EGenType.GenType, EGenType.GenType, EGenType.GenType); -BuiltinFunction._create("max", EGenType.GenType, EGenType.GenType, Keyword.FLOAT); -BuiltinFunction._create("max", EGenType.GenIntType, EGenType.GenIntType, EGenType.GenIntType); -BuiltinFunction._create("max", EGenType.GenIntType, EGenType.GenIntType, Keyword.INT); -BuiltinFunction._create("clamp", EGenType.GenType, EGenType.GenType, EGenType.GenType, EGenType.GenType); -BuiltinFunction._create("clamp", EGenType.GenType, EGenType.GenType, Keyword.FLOAT, Keyword.FLOAT); -BuiltinFunction._create("clamp", EGenType.GenIntType, EGenType.GenIntType, EGenType.GenIntType, EGenType.GenIntType); -BuiltinFunction._create("clamp", EGenType.GenIntType, EGenType.GenIntType, Keyword.INT, Keyword.INT); -BuiltinFunction._create( - "clamp", - EGenType.GenUintType, - EGenType.GenUintType, - EGenType.GenUintType, - EGenType.GenUintType -); -BuiltinFunction._create("clamp", EGenType.GenUintType, EGenType.GenUintType, Keyword.UINT, Keyword.UINT); -BuiltinFunction._create("mix", EGenType.GenType, EGenType.GenType, EGenType.GenType, EGenType.GenType); -BuiltinFunction._create("mix", EGenType.GenType, EGenType.GenType, EGenType.GenType, Keyword.FLOAT); -BuiltinFunction._create("mix", EGenType.GenType, EGenType.GenType, EGenType.GenType, EGenType.GenBoolType); -BuiltinFunction._create("step", EGenType.GenType, EGenType.GenType, EGenType.GenType); -BuiltinFunction._create("step", EGenType.GenType, Keyword.FLOAT, EGenType.GenType); -BuiltinFunction._create("smoothstep", EGenType.GenType, EGenType.GenType, EGenType.GenType, EGenType.GenType); -BuiltinFunction._create("smoothstep", EGenType.GenType, Keyword.FLOAT, Keyword.FLOAT, EGenType.GenType); -BuiltinFunction._create("isnan", EGenType.GenBoolType, EGenType.GenType); -BuiltinFunction._create("isinf", EGenType.GenBoolType, EGenType.GenType); -BuiltinFunction._create("floatBitsToInt", EGenType.GenType, EGenType.GenType); -BuiltinFunction._create("floatBitsToUint", EGenType.GenUintType, EGenType.GenType); -BuiltinFunction._create("intBitsToFloat", EGenType.GenType, EGenType.GenIntType); -BuiltinFunction._create("uintBitsToFloat", EGenType.GenType, EGenType.GenUintType); - -BuiltinFunction._create("packSnorm2x16", Keyword.UINT, Keyword.VEC2); -BuiltinFunction._create("unpackSnorm2x16", Keyword.VEC2, Keyword.UINT); -BuiltinFunction._create("packUnorm2x16", Keyword.UINT, Keyword.VEC2); -BuiltinFunction._create("unpackUnorm2x16", Keyword.VEC2, Keyword.UINT); -BuiltinFunction._create("packHalf2x16", Keyword.UINT, Keyword.VEC2); -BuiltinFunction._create("unpackHalf2x16", Keyword.VEC2, Keyword.UINT); - -BuiltinFunction._create("length", Keyword.FLOAT, EGenType.GenType); -BuiltinFunction._create("distance", Keyword.FLOAT, EGenType.GenType, EGenType.GenType); -BuiltinFunction._create("dot", Keyword.FLOAT, EGenType.GenType, EGenType.GenType); -BuiltinFunction._create("cross", Keyword.VEC3, Keyword.VEC3, Keyword.VEC3); -BuiltinFunction._create("normalize", EGenType.GenType, EGenType.GenType); -BuiltinFunction._create("faceforward", EGenType.GenType, EGenType.GenType, EGenType.GenType, EGenType.GenType); -BuiltinFunction._create("reflect", EGenType.GenType, EGenType.GenType, EGenType.GenType); -BuiltinFunction._create("refract", EGenType.GenType, EGenType.GenType, EGenType.GenType, Keyword.FLOAT); -BuiltinFunction._create("matrixCompMult", EGenType.Mat, EGenType.Mat, EGenType.Mat); -BuiltinFunction._create("outerProduct", Keyword.MAT2, Keyword.VEC2, Keyword.VEC2); -BuiltinFunction._create("outerProduct", Keyword.MAT3, Keyword.VEC3, Keyword.VEC3); -BuiltinFunction._create("outerProduct", Keyword.MAT4, Keyword.VEC4, Keyword.VEC4); - -BuiltinFunction._create("outerProduct", Keyword.MAT2X3, Keyword.VEC3, Keyword.VEC2); -BuiltinFunction._create("outerProduct", Keyword.MAT3X2, Keyword.VEC2, Keyword.VEC3); - -BuiltinFunction._create("outerProduct", Keyword.MAT2X4, Keyword.VEC4, Keyword.VEC2); -BuiltinFunction._create("outerProduct", Keyword.MAT4X2, Keyword.VEC2, Keyword.VEC4); - -BuiltinFunction._create("outerProduct", Keyword.MAT3X4, Keyword.VEC4, Keyword.VEC3); -BuiltinFunction._create("outerProduct", Keyword.MAT4X3, Keyword.VEC3, Keyword.VEC4); - -BuiltinFunction._create("transpose", Keyword.MAT2, Keyword.MAT2); -BuiltinFunction._create("transpose", Keyword.MAT3, Keyword.MAT3); -BuiltinFunction._create("transpose", Keyword.MAT4, Keyword.MAT4); -BuiltinFunction._create("transpose", Keyword.MAT2X3, Keyword.MAT3X2); -BuiltinFunction._create("transpose", Keyword.MAT3X2, Keyword.MAT2X3); -BuiltinFunction._create("transpose", Keyword.MAT4X2, Keyword.MAT2X4); -BuiltinFunction._create("transpose", Keyword.MAT2X4, Keyword.MAT4X2); -BuiltinFunction._create("transpose", Keyword.MAT3X4, Keyword.MAT4X3); -BuiltinFunction._create("transpose", Keyword.MAT4X3, Keyword.MAT3X4); - -BuiltinFunction._create("determinant", Keyword.FLOAT, Keyword.MAT2); -BuiltinFunction._create("determinant", Keyword.FLOAT, Keyword.MAT3); -BuiltinFunction._create("determinant", Keyword.FLOAT, Keyword.MAT4); - -BuiltinFunction._create("inverse", Keyword.MAT2, Keyword.MAT2); -BuiltinFunction._create("inverse", Keyword.MAT3, Keyword.MAT3); -BuiltinFunction._create("inverse", Keyword.MAT4, Keyword.MAT4); - -BuiltinFunction._create("lessThan", EGenType.BoolVec, EGenType.Vec, EGenType.Vec); -BuiltinFunction._create("lessThan", EGenType.BoolVec, EGenType.IntVec, EGenType.IntVec); -BuiltinFunction._create("lessThan", EGenType.BoolVec, EGenType.UintVec, EGenType.UintVec); - -BuiltinFunction._create("lessThanEqual", EGenType.BoolVec, EGenType.Vec, EGenType.Vec); -BuiltinFunction._create("lessThanEqual", EGenType.BoolVec, EGenType.IntVec, EGenType.IntVec); -BuiltinFunction._create("lessThanEqual", EGenType.BoolVec, EGenType.UintVec, EGenType.UintVec); - -BuiltinFunction._create("greaterThan", EGenType.BoolVec, EGenType.Vec, EGenType.Vec); -BuiltinFunction._create("greaterThan", EGenType.BoolVec, EGenType.IntVec, EGenType.IntVec); -BuiltinFunction._create("greaterThan", EGenType.BoolVec, EGenType.UintVec, EGenType.UintVec); - -BuiltinFunction._create("greaterThanEqual", EGenType.BoolVec, EGenType.Vec, EGenType.Vec); -BuiltinFunction._create("greaterThanEqual", EGenType.BoolVec, EGenType.IntVec, EGenType.IntVec); -BuiltinFunction._create("greaterThanEqual", EGenType.BoolVec, EGenType.UintVec, EGenType.UintVec); - -BuiltinFunction._create("equal", EGenType.BoolVec, EGenType.Vec, EGenType.Vec); -BuiltinFunction._create("equal", EGenType.BoolVec, EGenType.IntVec, EGenType.IntVec); -BuiltinFunction._create("equal", EGenType.BoolVec, EGenType.UintVec, EGenType.UintVec); -BuiltinFunction._create("equal", EGenType.BoolVec, EGenType.BoolVec, EGenType.BoolVec); - -BuiltinFunction._create("notEqual", EGenType.BoolVec, EGenType.Vec, EGenType.Vec); -BuiltinFunction._create("notEqual", EGenType.BoolVec, EGenType.IntVec, EGenType.IntVec); -BuiltinFunction._create("notEqual", EGenType.BoolVec, EGenType.UintVec, EGenType.UintVec); -BuiltinFunction._create("notEqual", EGenType.BoolVec, EGenType.BoolVec, EGenType.BoolVec); - -BuiltinFunction._create("any", Keyword.BOOL, EGenType.BoolVec); -BuiltinFunction._create("all", Keyword.BOOL, EGenType.BoolVec); -BuiltinFunction._create("not", EGenType.BoolVec, EGenType.BoolVec); - -BuiltinFunction._create("textureSize", Keyword.IVEC2, EGenType.GSampler2D, Keyword.INT); -BuiltinFunction._create("textureSize", Keyword.IVEC3, EGenType.GSampler3D, Keyword.INT); -BuiltinFunction._create("textureSize", Keyword.IVEC2, EGenType.GSamplerCube, Keyword.INT); - -BuiltinFunction._create("textureSize", Keyword.IVEC2, Keyword.SAMPLER2D_SHADOW, Keyword.INT); -BuiltinFunction._create("textureSize", Keyword.IVEC2, Keyword.SAMPLER_CUBE_SHADOW, Keyword.INT); - -BuiltinFunction._create("textureSize", Keyword.IVEC3, EGenType.GSampler2DArray, Keyword.INT); -BuiltinFunction._create("textureSize", Keyword.IVEC3, Keyword.SAMPLER2D_ARRAY_SHADOW, Keyword.INT); - -BuiltinFunction._create("texture2D", Keyword.VEC4, Keyword.SAMPLER2D, Keyword.VEC2); -BuiltinFunction._create("texture2D", Keyword.VEC4, Keyword.SAMPLER2D, Keyword.VEC2, Keyword.FLOAT); - -BuiltinFunction._create("texture", EGenType.GVec4, EGenType.GSampler2D, Keyword.VEC2, Keyword.FLOAT); -BuiltinFunction._create("texture", EGenType.GVec4, EGenType.GSampler2D, Keyword.VEC2); -BuiltinFunction._create("texture", EGenType.GVec4, EGenType.GSampler3D, Keyword.VEC3, Keyword.FLOAT); -BuiltinFunction._create("texture", EGenType.GVec4, EGenType.GSampler3D, Keyword.VEC3); - -BuiltinFunction._create("texture", EGenType.GVec4, EGenType.GSamplerCube, Keyword.VEC3, Keyword.FLOAT); -BuiltinFunction._create("texture", EGenType.GVec4, EGenType.GSamplerCube, Keyword.VEC3); - -BuiltinFunction._create("texture", Keyword.FLOAT, Keyword.SAMPLER2D_SHADOW, Keyword.VEC3, Keyword.FLOAT); -BuiltinFunction._create("texture", Keyword.FLOAT, Keyword.SAMPLER2D_SHADOW, Keyword.VEC3); - -BuiltinFunction._create("texture", Keyword.FLOAT, Keyword.SAMPLER_CUBE_SHADOW, Keyword.VEC4, Keyword.FLOAT); -BuiltinFunction._create("texture", Keyword.FLOAT, Keyword.SAMPLER_CUBE_SHADOW, Keyword.VEC4); - -BuiltinFunction._create("texture", EGenType.GVec4, Keyword.SAMPLER2D_ARRAY, Keyword.VEC3, Keyword.FLOAT); -BuiltinFunction._create("texture", EGenType.GVec4, Keyword.SAMPLER2D_ARRAY, Keyword.VEC3); - -BuiltinFunction._create("texture", Keyword.FLOAT, Keyword.SAMPLER2D_ARRAY_SHADOW, Keyword.VEC4); - -BuiltinFunction._create("textureProj", EGenType.GVec4, EGenType.GSampler2D, Keyword.VEC3, Keyword.FLOAT); -BuiltinFunction._create("textureProj", EGenType.GVec4, EGenType.GSampler2D, Keyword.VEC3); -BuiltinFunction._create("textureProj", EGenType.GVec4, EGenType.GSampler2D, Keyword.VEC4, Keyword.FLOAT); -BuiltinFunction._create("textureProj", EGenType.GVec4, EGenType.GSampler2D, Keyword.VEC4); -BuiltinFunction._create("textureProj", EGenType.GVec4, EGenType.GSampler3D, Keyword.VEC4, Keyword.FLOAT); -BuiltinFunction._create("textureProj", EGenType.GVec4, EGenType.GSampler3D, Keyword.VEC4); - -BuiltinFunction._create("textureProj", Keyword.FLOAT, Keyword.SAMPLER2D_SHADOW, Keyword.VEC4, Keyword.FLOAT); -BuiltinFunction._create("textureProj", Keyword.FLOAT, Keyword.SAMPLER2D_SHADOW, Keyword.VEC4); - -BuiltinFunction._create("textureLod", EGenType.GVec4, EGenType.GSampler2D, Keyword.VEC2, Keyword.FLOAT); -BuiltinFunction._create("textureLod", EGenType.GVec4, EGenType.GSampler3D, Keyword.VEC3, Keyword.FLOAT); -BuiltinFunction._create("textureLod", EGenType.GVec4, EGenType.GSamplerCube, Keyword.VEC3, Keyword.FLOAT); -BuiltinFunction._create("textureLod", Keyword.FLOAT, Keyword.SAMPLER2D_SHADOW, Keyword.VEC3, Keyword.FLOAT); -BuiltinFunction._create("textureLod", EGenType.GVec4, EGenType.GSampler2DArray, Keyword.VEC3, Keyword.FLOAT); -BuiltinFunction._create("texture2DLodEXT", EGenType.GVec4, EGenType.GSampler2D, Keyword.VEC2, Keyword.FLOAT); -BuiltinFunction._create("texture2DLodEXT", EGenType.GVec4, EGenType.GSampler3D, Keyword.VEC3, Keyword.FLOAT); - -BuiltinFunction._create("textureCube", Keyword.SAMPLER_CUBE, Keyword.VEC3); -BuiltinFunction._create("textureCube", Keyword.SAMPLER_CUBE, Keyword.VEC3, Keyword.FLOAT); -BuiltinFunction._create("textureCube", EGenType.GVec4, EGenType.GSamplerCube, Keyword.VEC3, Keyword.FLOAT); -BuiltinFunction._create("textureCubeLod", Keyword.SAMPLER_CUBE, Keyword.VEC3, Keyword.FLOAT); -BuiltinFunction._create("textureCubeLodEXT", EGenType.GVec4, EGenType.GSamplerCube, Keyword.VEC3, Keyword.FLOAT); - -BuiltinFunction._create( - "textureOffset", - EGenType.GVec4, - EGenType.GSampler2D, - Keyword.VEC2, - Keyword.IVEC2, - Keyword.FLOAT -); -BuiltinFunction._create("textureOffset", EGenType.GVec4, EGenType.GSampler2D, Keyword.VEC2, Keyword.IVEC2); - -BuiltinFunction._create( - "textureOffset", - EGenType.GVec4, - EGenType.GSampler3D, - Keyword.VEC3, - Keyword.IVEC3, - Keyword.FLOAT -); -BuiltinFunction._create("textureOffset", EGenType.GVec4, EGenType.GSampler3D, Keyword.VEC3, Keyword.IVEC3); - -BuiltinFunction._create( - "textureOffset", - Keyword.FLOAT, - Keyword.SAMPLER2D_SHADOW, - Keyword.VEC3, - Keyword.IVEC2, - Keyword.FLOAT -); -BuiltinFunction._create("textureOffset", Keyword.FLOAT, Keyword.SAMPLER2D_SHADOW, Keyword.VEC3, Keyword.IVEC2); -BuiltinFunction._create( - "textureOffset", - EGenType.GVec4, - EGenType.GSampler2DArray, - Keyword.VEC3, - Keyword.IVEC2, - Keyword.FLOAT -); -BuiltinFunction._create("textureOffset", EGenType.GVec4, EGenType.GSampler2DArray, Keyword.VEC3, Keyword.IVEC2); - -BuiltinFunction._create("texelFetch", EGenType.GVec4, EGenType.GSampler2D, Keyword.IVEC2, Keyword.INT); -BuiltinFunction._create("texelFetch", EGenType.GVec4, EGenType.GSampler3D, Keyword.IVEC3, Keyword.INT); -BuiltinFunction._create("texelFetch", EGenType.GVec4, EGenType.GSampler2DArray, Keyword.IVEC3, Keyword.INT); - -BuiltinFunction._create( - "texelFetchOffset", - EGenType.GVec4, - EGenType.GSampler2D, - Keyword.IVEC2, - Keyword.INT, - Keyword.IVEC2 -); -BuiltinFunction._create( - "texelFetchOffset", - EGenType.GVec4, - EGenType.GSampler3D, - Keyword.IVEC3, - Keyword.INT, - Keyword.IVEC3 -); -BuiltinFunction._create( - "texelFetchOffset", - EGenType.GVec4, - EGenType.GSampler2DArray, - Keyword.IVEC3, - Keyword.INT, - Keyword.IVEC2 -); - -BuiltinFunction._create( - "textureProjOffset", - EGenType.GVec4, - EGenType.GSampler2D, - Keyword.VEC3, - Keyword.IVEC2, - Keyword.FLOAT -); -BuiltinFunction._create("textureProjOffset", EGenType.GVec4, EGenType.GSampler2D, Keyword.VEC3, Keyword.IVEC2); - -BuiltinFunction._create( - "textureProjOffset", - EGenType.GVec4, - EGenType.GSampler2D, - Keyword.VEC4, - Keyword.IVEC2, - Keyword.FLOAT -); -BuiltinFunction._create("textureProjOffset", EGenType.GVec4, EGenType.GSampler2D, Keyword.VEC4, Keyword.IVEC2); - -BuiltinFunction._create( - "textureProjOffset", - EGenType.GVec4, - EGenType.GSampler3D, - Keyword.VEC4, - Keyword.IVEC3, - Keyword.FLOAT -); -BuiltinFunction._create("textureProjOffset", EGenType.GVec4, EGenType.GSampler3D, Keyword.VEC4, Keyword.IVEC3); - -BuiltinFunction._create( - "textureProjOffset", - Keyword.FLOAT, - Keyword.SAMPLER2D_SHADOW, - Keyword.VEC4, - Keyword.IVEC2, - Keyword.FLOAT -); -BuiltinFunction._create("textureProjOffset", Keyword.FLOAT, Keyword.SAMPLER2D_SHADOW, Keyword.VEC4, Keyword.IVEC2); - -BuiltinFunction._create( - "textureLodOffset", - EGenType.GVec4, - EGenType.GSampler2D, - Keyword.VEC2, - Keyword.FLOAT, - Keyword.IVEC2 -); -BuiltinFunction._create( - "textureLodOffset", - EGenType.GVec4, - EGenType.GSampler3D, - Keyword.VEC3, - Keyword.FLOAT, - Keyword.IVEC3 -); - -BuiltinFunction._create( - "textureLodOffset", - Keyword.FLOAT, - Keyword.SAMPLER2D_SHADOW, - Keyword.VEC3, - Keyword.FLOAT, - Keyword.IVEC2 -); -BuiltinFunction._create( - "textureLodOffset", - EGenType.GVec4, - EGenType.GSampler2DArray, - Keyword.VEC3, - Keyword.FLOAT, - Keyword.IVEC2 -); - -BuiltinFunction._create("textureProjLod", EGenType.GVec4, EGenType.GSampler2D, Keyword.VEC3, Keyword.FLOAT); -BuiltinFunction._create("textureProjLod", EGenType.GVec4, EGenType.GSampler2D, Keyword.VEC4, Keyword.FLOAT); -BuiltinFunction._create("textureProjLod", EGenType.GVec4, EGenType.GSampler3D, Keyword.VEC4, Keyword.FLOAT); -BuiltinFunction._create("textureProjLod", Keyword.FLOAT, Keyword.SAMPLER2D_SHADOW, Keyword.VEC4, Keyword.FLOAT); - -BuiltinFunction._create( - "textureProjLodOffset", - EGenType.GVec4, - EGenType.GSampler2D, - Keyword.VEC3, - Keyword.FLOAT, - Keyword.IVEC2 -); -BuiltinFunction._create( - "textureProjLodOffset", - EGenType.GVec4, - EGenType.GSampler2D, - Keyword.VEC4, - Keyword.FLOAT, - Keyword.IVEC2 -); -BuiltinFunction._create( - "textureProjLodOffset", - EGenType.GVec4, - EGenType.GSampler3D, - Keyword.VEC4, - Keyword.FLOAT, - Keyword.IVEC3 -); -BuiltinFunction._create( - "textureProjLodOffset", - Keyword.FLOAT, - Keyword.SAMPLER2D_SHADOW, - Keyword.VEC4, - Keyword.FLOAT, - Keyword.IVEC2 -); - -BuiltinFunction._create("textureGrad", EGenType.GVec4, EGenType.GSampler2D, Keyword.VEC2, Keyword.VEC2, Keyword.VEC2); -BuiltinFunction._create("textureGrad", EGenType.GVec4, EGenType.GSampler3D, Keyword.VEC3, Keyword.VEC3, Keyword.VEC3); -BuiltinFunction._create("textureGrad", EGenType.GVec4, EGenType.GSamplerCube, Keyword.VEC3, Keyword.VEC3, Keyword.VEC3); - -BuiltinFunction._create( - "textureGrad", - Keyword.FLOAT, - Keyword.SAMPLER2D_SHADOW, - Keyword.VEC3, - Keyword.VEC2, - Keyword.VEC2 -); -BuiltinFunction._create( - "textureGrad", - Keyword.FLOAT, - Keyword.SAMPLER_CUBE_SHADOW, - Keyword.VEC4, - Keyword.VEC3, - Keyword.VEC3 -); - -BuiltinFunction._create( - "textureGrad", - EGenType.GVec4, - EGenType.GSampler2DArray, - Keyword.VEC3, - Keyword.VEC2, - Keyword.VEC2 -); -BuiltinFunction._create( - "textureGrad", - Keyword.FLOAT, - Keyword.SAMPLER2D_ARRAY_SHADOW, - Keyword.VEC4, - Keyword.VEC2, - Keyword.VEC2 -); - -BuiltinFunction._create( - "textureGradOffset", - EGenType.GVec4, - EGenType.GSampler2D, - Keyword.VEC2, - Keyword.VEC2, - Keyword.VEC2, - Keyword.IVEC2 -); -BuiltinFunction._create( - "textureGradOffset", - EGenType.GVec4, - EGenType.GSampler3D, - Keyword.VEC3, - Keyword.VEC3, - Keyword.VEC3, - Keyword.IVEC3 -); -BuiltinFunction._create( - "textureGradOffset", - Keyword.FLOAT, - Keyword.SAMPLER2D_SHADOW, - Keyword.VEC3, - Keyword.VEC2, - Keyword.VEC2, - Keyword.IVEC2 -); -BuiltinFunction._create( - "textureGradOffset", - EGenType.GVec4, - EGenType.GSampler2DArray, - Keyword.VEC3, - Keyword.VEC2, - Keyword.VEC2, - Keyword.IVEC2 -); -BuiltinFunction._create( - "textureGradOffset", - Keyword.FLOAT, - Keyword.SAMPLER2D_ARRAY_SHADOW, - Keyword.VEC3, - Keyword.VEC2, - Keyword.VEC2, - Keyword.IVEC2 -); - -BuiltinFunction._create( - "textureProjGrad", - EGenType.GVec4, - EGenType.GSampler2D, - Keyword.VEC3, - Keyword.VEC2, - Keyword.VEC2 -); -BuiltinFunction._create( - "textureProjGrad", - EGenType.GVec4, - EGenType.GSampler2D, - Keyword.VEC4, - Keyword.VEC2, - Keyword.VEC2 -); -BuiltinFunction._create( - "textureProjGrad", - EGenType.GVec4, - EGenType.GSampler3D, - Keyword.VEC4, - Keyword.VEC3, - Keyword.VEC3 -); -BuiltinFunction._create( - "textureProjGrad", - Keyword.FLOAT, - Keyword.SAMPLER2D_SHADOW, - Keyword.VEC4, - Keyword.VEC2, - Keyword.VEC2 -); - -BuiltinFunction._create( - "textureProjGradOffset", - EGenType.GVec4, - EGenType.GSampler2D, - Keyword.VEC3, - Keyword.VEC2, - Keyword.VEC2, - Keyword.IVEC2 -); -BuiltinFunction._create( - "textureProjGradOffset", - EGenType.GVec4, - EGenType.GSampler2D, - Keyword.VEC4, - Keyword.VEC2, - Keyword.VEC2, - Keyword.IVEC2 -); -BuiltinFunction._create( - "textureProjGradOffset", - EGenType.GVec4, - EGenType.GSampler3D, - Keyword.VEC4, - Keyword.VEC3, - Keyword.VEC3, - Keyword.IVEC3 -); -BuiltinFunction._create( - "textureProjGradOffset", - Keyword.FLOAT, - Keyword.SAMPLER2D_SHADOW, - Keyword.VEC4, - Keyword.VEC2, - Keyword.VEC2, - Keyword.IVEC2 -); -BuiltinFunction._createWithScop("dFdx", EGenType.GenType, EShaderStage.FRAGMENT, EGenType.GenType); -BuiltinFunction._createWithScop("dFdy", EGenType.GenType, EShaderStage.FRAGMENT, EGenType.GenType); -BuiltinFunction._createWithScop("fwidth", EGenType.GenType, EShaderStage.FRAGMENT, EGenType.GenType); diff --git a/packages/shader-lab/src/parser/builtin/index.ts b/packages/shader-lab/src/parser/builtin/index.ts deleted file mode 100644 index 8ddbf1af9..000000000 --- a/packages/shader-lab/src/parser/builtin/index.ts +++ /dev/null @@ -1,2 +0,0 @@ -export * from "./functions"; -export * from "./variables"; diff --git a/packages/shader-lab/src/parser/builtin/variables.ts b/packages/shader-lab/src/parser/builtin/variables.ts deleted file mode 100644 index c1443ad95..000000000 --- a/packages/shader-lab/src/parser/builtin/variables.ts +++ /dev/null @@ -1,50 +0,0 @@ -import { GalaceanDataType } from "../../common"; -import { Keyword } from "../../common/enums/Keyword"; -import { EShaderStage } from "../../common/enums/ShaderStage"; - -export const BuiltinVariableTable: Map = new Map(); - -export class BuiltinVariable { - type: GalaceanDataType; - lexeme: string; - scope: EShaderStage; - - private constructor(type: GalaceanDataType, lexeme: string, scope: EShaderStage) { - this.type = type; - this.lexeme = lexeme; - this.scope = scope; - } - - static createVariable(lexeme: string, type: GalaceanDataType, scope = EShaderStage.ALL) { - const item = new BuiltinVariable(type, lexeme, scope); - BuiltinVariableTable.set(lexeme, item); - } - - static getVar(ident: string): BuiltinVariable { - return BuiltinVariableTable.get(ident); - } -} - -BuiltinVariable.createVariable("gl_VertexID", Keyword.INT, EShaderStage.VERTEX); -BuiltinVariable.createVariable("gl_InstanceID", Keyword.INT, EShaderStage.VERTEX); -BuiltinVariable.createVariable("gl_Position", Keyword.VEC4, EShaderStage.VERTEX); -BuiltinVariable.createVariable("gl_PointSize", Keyword.FLOAT, EShaderStage.VERTEX); - -BuiltinVariable.createVariable("gl_FragCoord", Keyword.VEC4, EShaderStage.FRAGMENT); -BuiltinVariable.createVariable("gl_FrontFacing", Keyword.BOOL, EShaderStage.FRAGMENT); -BuiltinVariable.createVariable("gl_FragDepth", Keyword.FLOAT, EShaderStage.FRAGMENT); -BuiltinVariable.createVariable("gl_PointCoord", Keyword.VEC2, EShaderStage.FRAGMENT); -BuiltinVariable.createVariable("gl_FragColor", Keyword.VEC4, EShaderStage.FRAGMENT); -BuiltinVariable.createVariable("gl_FragData", Keyword.VEC4_ARRAY, EShaderStage.FRAGMENT); - -BuiltinVariable.createVariable("gl_MaxVertexAttribs", Keyword.INT); -BuiltinVariable.createVariable("gl_MaxVertexUniformVectors", Keyword.INT); -BuiltinVariable.createVariable("gl_MaxVertexOutputVectors", Keyword.INT); -BuiltinVariable.createVariable("gl_MaxFragmentInputVectors", Keyword.INT); -BuiltinVariable.createVariable("gl_MaxVertexTextureImageUnits", Keyword.INT); -BuiltinVariable.createVariable("gl_MaxCombinedTextureImageUnits", Keyword.INT); -BuiltinVariable.createVariable("gl_MaxTextureImageUnits", Keyword.INT); -BuiltinVariable.createVariable("gl_MaxFragmentUniformVectors", Keyword.INT); -BuiltinVariable.createVariable("gl_MaxDrawBuffers", Keyword.INT); -BuiltinVariable.createVariable("gl_MinProgramTexelOffset", Keyword.INT); -BuiltinVariable.createVariable("gl_MaxProgramTexelOffset", Keyword.INT); diff --git a/packages/shader-lab/src/parser/index.ts b/packages/shader-lab/src/parser/index.ts deleted file mode 100644 index a7a9a085d..000000000 --- a/packages/shader-lab/src/parser/index.ts +++ /dev/null @@ -1,2 +0,0 @@ -export { ShaderTargetParser } from "./ShaderTargetParser"; -export { Grammar } from "./Grammar"; diff --git a/packages/shader-lab/src/parser/symbolTable/FnSymbol.ts b/packages/shader-lab/src/parser/symbolTable/FnSymbol.ts deleted file mode 100644 index d0c1aef76..000000000 --- a/packages/shader-lab/src/parser/symbolTable/FnSymbol.ts +++ /dev/null @@ -1,15 +0,0 @@ -import { ASTNode } from "../AST"; -import { SymbolDataType } from "./SymbolDataType"; -import { ESymbolType, SymbolInfo } from "./SymbolInfo"; - -export class FnSymbol extends SymbolInfo { - declare astNode: ASTNode.FunctionDefinition; - - constructor(lexeme: string, astNode: ASTNode.FunctionDefinition) { - const type = new SymbolDataType( - astNode.protoType.returnType.type, - astNode.protoType.returnType.typeSpecifier.lexeme - ); - super(lexeme, ESymbolType.FN, astNode, type); - } -} diff --git a/packages/shader-lab/src/parser/symbolTable/StructSymbol.ts b/packages/shader-lab/src/parser/symbolTable/StructSymbol.ts deleted file mode 100644 index 678721ee4..000000000 --- a/packages/shader-lab/src/parser/symbolTable/StructSymbol.ts +++ /dev/null @@ -1,10 +0,0 @@ -import { ASTNode } from "../AST"; -import { ESymbolType, SymbolInfo } from "./SymbolInfo"; - -export class StructSymbol extends SymbolInfo { - declare astNode: ASTNode.StructSpecifier; - - constructor(lexeme: string, astNode: ASTNode.StructSpecifier) { - super(lexeme, ESymbolType.STRUCT, astNode); - } -} diff --git a/packages/shader-lab/src/parser/symbolTable/SymbolDataType.ts b/packages/shader-lab/src/parser/symbolTable/SymbolDataType.ts deleted file mode 100644 index 98fa3f304..000000000 --- a/packages/shader-lab/src/parser/symbolTable/SymbolDataType.ts +++ /dev/null @@ -1,10 +0,0 @@ -import { GalaceanDataType } from "../../common"; -import { ASTNode } from "../AST"; - -export class SymbolDataType { - constructor( - public type: GalaceanDataType, - public typeLexeme: string, - public arraySpecifier?: ASTNode.ArraySpecifier - ) {} -} diff --git a/packages/shader-lab/src/parser/symbolTable/SymbolInfo.ts b/packages/shader-lab/src/parser/symbolTable/SymbolInfo.ts deleted file mode 100644 index 7160171fa..000000000 --- a/packages/shader-lab/src/parser/symbolTable/SymbolInfo.ts +++ /dev/null @@ -1,64 +0,0 @@ -import { IBaseSymbol } from "../../common/IBaseSymbol"; -import { GalaceanDataType, TypeAny } from "../../common/types"; -import { ASTNode } from "../AST"; -import { SymbolDataType } from "./SymbolDataType"; - -export enum ESymbolType { - VAR, - FN, - STRUCT, - Any -} - -export type SymbolAstNode = - | ASTNode.Initializer - | ASTNode.StructSpecifier - | ASTNode.FunctionDefinition - | ASTNode.ParameterDeclarator - | ASTNode.InitDeclaratorList - | ASTNode.VariableDeclaration; - -export class SymbolInfo implements IBaseSymbol { - constructor( - public ident: string, - public type: ESymbolType, - public astNode?: SymbolAstNode, - public dataType?: SymbolDataType, - public paramSignature?: GalaceanDataType[], - public isInMacroBranch = false - ) {} - - set( - ident: string, - symbolType: ESymbolType, - astNode?: SymbolAstNode, - dataType?: SymbolDataType, - paramSignature?: GalaceanDataType[] - ) { - this.ident = ident; - this.type = symbolType; - this.astNode = astNode; - this.dataType = dataType; - this.paramSignature = paramSignature; - } - - equal(symbol: SymbolInfo): boolean { - if (symbol.type !== ESymbolType.Any && this.type !== symbol.type) return false; - if (this.type === ESymbolType.FN) { - if (!symbol.astNode && !symbol.paramSignature) return true; - - const params = (this.astNode).protoType.paramSig; - const comparedParams = symbol.paramSignature ?? (symbol.astNode).protoType.paramSig; - const length = params?.length; - if (length !== comparedParams?.length) return false; - for (let i = 0; i < length; i++) { - const t1 = params[i], - t2 = comparedParams[i]; - if (t1 === TypeAny || t2 === TypeAny) continue; - if (t1 !== t2) return false; - } - return true; - } - return true; - } -} diff --git a/packages/shader-lab/src/parser/symbolTable/VarSymbol.ts b/packages/shader-lab/src/parser/symbolTable/VarSymbol.ts deleted file mode 100644 index 4d34843e0..000000000 --- a/packages/shader-lab/src/parser/symbolTable/VarSymbol.ts +++ /dev/null @@ -1,27 +0,0 @@ -import { ASTNode } from "../AST"; -import { SymbolDataType } from "./SymbolDataType"; -import { ESymbolType, SymbolInfo } from "./SymbolInfo"; - -export class VarSymbol extends SymbolInfo { - declare astNode: - | ASTNode.Initializer - | ASTNode.ParameterDeclarator - | ASTNode.InitDeclaratorList - | ASTNode.VariableDeclaration; - - readonly isGlobalVariable: boolean; - - constructor( - ident: string, - dataType: SymbolDataType, - isGlobalVariable: boolean, - initAst: - | ASTNode.Initializer - | ASTNode.ParameterDeclarator - | ASTNode.InitDeclaratorList - | ASTNode.VariableDeclaration - ) { - super(ident, ESymbolType.VAR, initAst, dataType); - this.isGlobalVariable = isGlobalVariable; - } -} diff --git a/packages/shader-lab/src/parser/symbolTable/index.ts b/packages/shader-lab/src/parser/symbolTable/index.ts deleted file mode 100644 index cdb7d2493..000000000 --- a/packages/shader-lab/src/parser/symbolTable/index.ts +++ /dev/null @@ -1,6 +0,0 @@ -export * from "././../../common/SymbolTable"; -export * from "./FnSymbol"; -export * from "./StructSymbol"; -export * from "./SymbolDataType"; -export * from "./SymbolInfo"; -export * from "./VarSymbol"; diff --git a/packages/shader-lab/src/parser/types.ts b/packages/shader-lab/src/parser/types.ts deleted file mode 100644 index df3190881..000000000 --- a/packages/shader-lab/src/parser/types.ts +++ /dev/null @@ -1,31 +0,0 @@ -import { GalaceanDataType } from "../common"; -import { BaseToken } from "../common/BaseToken"; -import { ASTNode, TreeNode } from "./AST"; -import { NoneTerminal } from "./GrammarSymbol"; - -export type TraceStackItem = NoneTerminal | BaseToken; - -export class SymbolType { - constructor( - public type: GalaceanDataType, - public typeLexeme: string, - public arraySpecifier?: ASTNode.ArraySpecifier - ) {} -} - -export class StructProp implements IParamInfo { - constructor( - public typeInfo: SymbolType, - public ident: BaseToken, - public mrtIndex?: number, - public isInMacroBranch = false - ) {} -} - -export type NodeChild = TreeNode | BaseToken; - -export type IParamInfo = { - ident?: BaseToken; - typeInfo?: SymbolType; - astNode?: ASTNode.ParameterDeclaration | ASTNode.MacroParamBlock; -}; diff --git a/packages/shader-lab/src/sourceParser/ShaderSourceFactory.ts b/packages/shader-lab/src/sourceParser/ShaderSourceFactory.ts deleted file mode 100644 index 0c08a48ff..000000000 --- a/packages/shader-lab/src/sourceParser/ShaderSourceFactory.ts +++ /dev/null @@ -1,48 +0,0 @@ -import { IRenderStates, IShaderPassSource, IShaderSource, ISubShaderSource } from "@galacean/engine-design"; - -export class ShaderSourceFactory { - static createRenderStates(): IRenderStates { - return { - constantMap: {}, - variableMap: {} - }; - } - - static createShaderSource(name: string): IShaderSource { - return { - name, - subShaders: [], - pendingContents: [], - renderStates: this.createRenderStates() - }; - } - - static createSubShaderSource(name: string): ISubShaderSource { - return { - name, - passes: [], - pendingContents: [], - tags: {}, - renderStates: this.createRenderStates() - }; - } - - static createShaderPassSource(name: string): IShaderPassSource { - return { - name, - pendingContents: [], - tags: {}, - renderStates: this.createRenderStates() - } as IShaderPassSource; - } - - static createUsePass(name: string): IShaderPassSource { - return { - name, - pendingContents: [], - isUsePass: true, - tags: {}, - renderStates: this.createRenderStates() - } as IShaderPassSource; - } -} diff --git a/packages/shader-lab/src/sourceParser/ShaderSourceParser.ts b/packages/shader-lab/src/sourceParser/ShaderSourceParser.ts deleted file mode 100644 index a8f04e8c6..000000000 --- a/packages/shader-lab/src/sourceParser/ShaderSourceParser.ts +++ /dev/null @@ -1,541 +0,0 @@ -import { - BlendFactor, - BlendOperation, - Color, - CompareFunction, - CullMode, - Logger, - RenderQueueType, - RenderStateElementKey, - StencilOperation -} from "@galacean/engine"; -import { IRenderStates, IShaderPassSource, IShaderSource, IStatement, ISubShaderSource } from "@galacean/engine-design"; -import { ETokenType, ShaderPosition, ShaderRange } from "../common"; -import { BaseToken } from "../common/BaseToken"; -import { SymbolTableStack } from "../common/SymbolTableStack"; -import { GSErrorName } from "../GSError"; -// #if _VERBOSE -import { GSError } from "../GSError"; -// #endif -import { BaseLexer } from "../common/BaseLexer"; -import { Keyword } from "../common/enums/Keyword"; -import { SymbolTable } from "../common/SymbolTable"; -import { ShaderLabUtils } from "../ShaderLabUtils"; -import { ShaderSourceFactory } from "./ShaderSourceFactory"; -import { ShaderSourceSymbol } from "./ShaderSourceSymbol"; -import SourceLexer from "./SourceLexer"; - -/** - * @internal - */ -export class ShaderSourceParser { - static readonly errors = new Array(); - - private static _renderStateConstMap = >>{ - RenderQueueType, - CompareFunction, - StencilOperation, - BlendOperation, - BlendFactor, - CullMode - }; - private static _symbolTableStack = new SymbolTableStack>(); - private static _lexer = new SourceLexer(); - private static _lookupSymbol = new ShaderSourceSymbol("", null); - - static parse(sourceCode: string): IShaderSource { - const startTime = performance.now(); - - // Clear previous data - this.errors.length = 0; - this._symbolTableStack.clear(); - this._pushScope(); - - const lexer = this._lexer; - lexer.setSource(sourceCode); - - const shaderSource = this._parseShader(lexer); - - const shaderPendingContents = shaderSource.pendingContents; - const shaderRenderStates = shaderSource.renderStates; - for (let i = 0, n = shaderSource.subShaders.length; i < n; i++) { - const subShader = shaderSource.subShaders[i]; - const curSubShaderGlobalStatements = shaderPendingContents.concat(subShader.pendingContents); - const globalSubShaderStates = { - constantMap: { ...shaderRenderStates.constantMap }, - variableMap: { ...shaderRenderStates.variableMap } - }; - this._mergeRenderStates(globalSubShaderStates, subShader.renderStates); - - for (let j = 0, m = subShader.passes.length; j < m; j++) { - const pass = subShader.passes[j]; - const globalPassRenderStates = { - constantMap: { ...globalSubShaderStates.constantMap }, - variableMap: { ...globalSubShaderStates.variableMap } - }; - this._mergeRenderStates(globalPassRenderStates, pass.renderStates); - pass.renderStates = globalPassRenderStates; - - if (pass.isUsePass) continue; - const passGlobalStatements = curSubShaderGlobalStatements.concat(pass.pendingContents); - pass.contents = passGlobalStatements.map((item) => item.content).join("\n"); - } - } - - Logger.info(`[Task - Source compilation] cost time ${performance.now() - startTime}ms`); - return shaderSource; - } - - private static _parseShader(lexer: SourceLexer): IShaderSource { - // Parse shader header - lexer.scanLexeme("Shader"); - const name = lexer.scanPairedChar('"', '"', false, false); - const shaderSource = ShaderSourceFactory.createShaderSource(name); - lexer.scanLexeme("{"); - - let braceLevel = 1; - lexer.skipCommentsAndSpace(); - let start = lexer.getShaderPosition(0); - - const { pendingContents } = shaderSource; - while (true) { - const token = lexer.scanToken(); - switch (token.type) { - case Keyword.GSSubShader: - this._addPendingContents(start, token.lexeme.length, pendingContents); - const subShader = this._parseSubShader(); - shaderSource.subShaders.push(subShader); - start = lexer.getShaderPosition(0); - break; - case Keyword.GSEditorProperties: - case Keyword.GSEditorMacros: - case Keyword.GSEditor: - this._addPendingContents(start, token.lexeme.length, pendingContents); - lexer.scanPairedChar("{", "}", true, false); - start = lexer.getShaderPosition(0); - break; - case Keyword.LeftBrace: - ++braceLevel; - break; - case Keyword.RightBrace: - if (--braceLevel === 0) { - this._addPendingContents(start, token.lexeme.length, pendingContents); - this._popScope(); - return shaderSource; - } - break; - default: - start = this._parseRenderState(token, start, pendingContents, shaderSource.renderStates); - } - } - } - - private static _parseRenderStateDeclarationOrAssignment(outRenderStates: IRenderStates, stateToken: BaseToken): void { - const lexer = this._lexer; - const token = lexer.scanToken(); - if (token.type === ETokenType.ID) { - // Declaration - lexer.scanLexeme("{"); - const renderState = this._parseRenderStateProperties(stateToken.lexeme); - const symbol = new ShaderSourceSymbol(token.lexeme, stateToken.type, renderState); - this._symbolTableStack.insert(symbol); - } else if (token.lexeme === "=") { - // Check if it's direct assignment syntax sugar or variable assignment - const nextToken = lexer.scanToken(); - - let renderState: IRenderStates; - if (nextToken.lexeme === "{") { - // Syntax: DepthState = { ... } - renderState = this._parseRenderStateProperties(stateToken.lexeme); - } else { - // Syntax: DepthState = customDepthState; - lexer.scanLexeme(";"); - const lookupSymbol = this._lookupSymbol; - lookupSymbol.set(nextToken.lexeme, stateToken.type); - const sm = this._symbolTableStack.lookup(lookupSymbol); - if (!sm?.value) { - this._createCompileError(`Invalid "${stateToken.lexeme}" variable: ${nextToken.lexeme}`, nextToken.location); - // #if _VERBOSE - return; - // #endif - } - renderState = sm.value as IRenderStates; - } - this._mergeRenderStates(outRenderStates, renderState); - } - } - - private static _mergeRenderStates(outTarget: IRenderStates, source: IRenderStates): void { - // For each key in the source, remove it from the opposite map in target to ensure proper override - const { constantMap: targetConstantMap, variableMap: targetVariableMap } = outTarget; - const { constantMap: sourceConstantMap, variableMap: sourceVariableMap } = source; - - for (const key in sourceConstantMap) { - delete targetVariableMap[key]; - targetConstantMap[key] = sourceConstantMap[key]; - } - - for (const key in sourceVariableMap) { - delete targetConstantMap[key]; - targetVariableMap[key] = sourceVariableMap[key]; - } - } - - private static _parseVariableDeclaration(): void { - const lexer = this._lexer; - const token = lexer.scanToken(); - lexer.scanLexeme(";"); - const symbol = new ShaderSourceSymbol(token.lexeme, token.type); - this._symbolTableStack.insert(symbol); - } - - private static _pushScope(): void { - const symbolTable = new SymbolTable(); - this._symbolTableStack.pushScope(symbolTable); - } - - private static _popScope(): void { - this._symbolTableStack.popScope(); - } - - private static _parseRenderStateProperties(state: string): IRenderStates { - const lexer = this._lexer; - const renderStates = ShaderSourceFactory.createRenderStates(); - while (lexer.getCurChar() !== "}") { - this._parseRenderStateProperty(state, renderStates); - lexer.skipCommentsAndSpace(); - } - lexer.advance(1); - return renderStates; - } - - private static _createCompileError(message: string, location?: ShaderPosition | ShaderRange): void { - const error = this._lexer.createCompileError(message, location); - // #if _VERBOSE - this.errors.push(error); - // #endif - } - - private static _parseRenderStateProperty(stateLexeme: string, out: IRenderStates): void { - const lexer = this._lexer; - const propertyToken = lexer.scanToken(); - const propertyLexeme = propertyToken.lexeme; - let stateElementKey = propertyLexeme; - if (stateLexeme === "BlendState" && propertyLexeme !== "BlendColor" && propertyLexeme !== "AlphaToCoverage") { - let keyIndex = 0; - const scannedLexeme = lexer.scanTwoExpectedLexemes("[", "="); - if (scannedLexeme === "[") { - keyIndex = lexer.scanNumber(); - lexer.scanLexeme("]"); - lexer.scanLexeme("="); - } else if (scannedLexeme !== "=") { - this._createCompileError(`Invalid syntax, expect '[' or '=', but got unexpected token`); - // #if _VERBOSE - lexer.scanToCharacter(";"); - return; - // #endif - } - stateElementKey += keyIndex; - } else { - lexer.scanLexeme("="); - } - - const renderStateElementKey = RenderStateElementKey[stateLexeme + stateElementKey]; - if (renderStateElementKey === undefined) { - this._createCompileError(`Invalid render state property ${propertyLexeme}`); - // #if _VERBOSE - lexer.scanToCharacter(";"); - return; - // #endif - } - - lexer.skipCommentsAndSpace(); - let propertyValue: number | string | boolean | Color; - - const curCharCode = lexer.getCurCharCode(); - if (BaseLexer.isDigit(curCharCode) || curCharCode === 46) { - // Digit or '.' - propertyValue = lexer.scanNumber(); - } else { - const valueToken = lexer.scanToken(); - const valueTokenType = valueToken.type; - - if (valueTokenType === Keyword.True) { - propertyValue = true; - } else if (valueTokenType === Keyword.False) { - propertyValue = false; - } else if (valueTokenType === Keyword.GSColor) { - propertyValue = lexer.scanColor(); - } else if (lexer.getCurChar() === ".") { - lexer.advance(1); - const constValueToken = lexer.scanToken(); - propertyValue = this._renderStateConstMap[valueToken.lexeme]?.[constValueToken.lexeme]; - if (propertyValue == undefined) { - this._createCompileError( - `Invalid engine constant: ${valueToken.lexeme}.${constValueToken.lexeme}`, - constValueToken.location - ); - // #if _VERBOSE - lexer.scanToCharacter(";"); - return; - // #endif - } - } else { - propertyValue = valueToken.lexeme; - const lookupSymbol = this._lookupSymbol; - lookupSymbol.set(valueToken.lexeme, ETokenType.ID); - if (!this._symbolTableStack.lookup(lookupSymbol)) { - this._createCompileError(`Invalid ${stateLexeme} variable: ${valueToken.lexeme}`, valueToken.location); - // #if _VERBOSE - lexer.scanToCharacter(";"); - return; - // #endif - } - } - } - lexer.scanLexeme(";"); - if (typeof propertyValue === "string") { - out.variableMap[renderStateElementKey] = propertyValue; - } else { - out.constantMap[renderStateElementKey] = propertyValue; - } - } - - private static _parseRenderQueueDeclarationOrAssignment(renderStates: IRenderStates): void { - const lexer = this._lexer; - const token = lexer.scanToken(); - if (token.type === ETokenType.ID) { - // Declaration - lexer.scanLexeme(";"); - const symbol = new ShaderSourceSymbol(token.lexeme, Keyword.GSRenderQueueType); - this._symbolTableStack.insert(symbol); - return; - } - - if (token.lexeme !== "=") { - this._createCompileError(`Invalid syntax, expect character '=', but got ${token.lexeme}`, token.location); - // #if _VERBOSE - return; - // #endif - } - const word = lexer.scanToken(); - lexer.scanLexeme(";"); - const value = this._renderStateConstMap.RenderQueueType[word.lexeme]; - const key = RenderStateElementKey.RenderQueueType; - if (value == undefined) { - renderStates.variableMap[key] = word.lexeme; - const lookupSymbol = this._lookupSymbol; - lookupSymbol.set(word.lexeme, Keyword.GSRenderQueueType); - const sm = this._symbolTableStack.lookup(lookupSymbol); - if (!sm) { - this._createCompileError(`Invalid RenderQueueType variable: ${word.lexeme}`, word.location); - // #if _VERBOSE - return; - // #endif - } - } else { - renderStates.constantMap[key] = value; - } - } - - private static _addPendingContents( - start: ShaderPosition, - backOffset: number, - outPendingContents: IStatement[] - ): void { - const lexer = this._lexer; - if (lexer.hasPendingContent) { - const endIndex = lexer.currentIndex - backOffset; - outPendingContents.push({ - range: { start, end: { ...lexer.getShaderPosition(0), index: endIndex - 1 } }, - content: lexer.source.substring(start.index, endIndex - 1) - }); - lexer.hasPendingContent = false; - } - } - - private static _parseSubShader(): ISubShaderSource { - const lexer = this._lexer; - this._pushScope(); - - let braceLevel = 1; - const name = lexer.scanPairedChar('"', '"', false, false); - const subShaderSource = ShaderSourceFactory.createSubShaderSource(name); - lexer.scanLexeme("{"); - - lexer.skipCommentsAndSpace(); - let start = lexer.getShaderPosition(0); - - while (true) { - const token = lexer.scanToken(); - switch (token.type) { - case Keyword.GSPass: - this._addPendingContents(start, token.lexeme.length, subShaderSource.pendingContents); - const pass = this._parsePass(); - subShaderSource.passes.push(pass); - start = lexer.getShaderPosition(0); - break; - case Keyword.GSUsePass: - this._addPendingContents(start, token.lexeme.length, subShaderSource.pendingContents); - const name = lexer.scanPairedChar('"', '"', false, false); - subShaderSource.passes.push(ShaderSourceFactory.createUsePass(name)); - start = lexer.getShaderPosition(0); - break; - case Keyword.LeftBrace: - ++braceLevel; - break; - case Keyword.RightBrace: - if (--braceLevel === 0) { - this._addPendingContents(start, token.lexeme.length, subShaderSource.pendingContents); - this._popScope(); - return subShaderSource; - } - break; - default: - start = this._parseRenderStateAndTags( - token, - start, - subShaderSource.pendingContents, - subShaderSource.renderStates, - subShaderSource.tags - ); - } - } - } - - private static _parseTags(tags: Record): void { - const lexer = this._lexer; - lexer.scanLexeme("{"); - while (true) { - const ident = lexer.scanToken(); - lexer.scanLexeme("="); - const value = lexer.scanPairedChar('"', '"', false, false); - lexer.skipCommentsAndSpace(); - - tags[ident.lexeme] = value; - - if (lexer.peek(1) === "}") { - lexer.advance(1); - return; - } - lexer.scanLexeme(","); - } - } - - private static _parsePass(): IShaderPassSource { - this._pushScope(); - const lexer = this._lexer; - - const name = lexer.scanPairedChar('"', '"', false, false); - const passSource = ShaderSourceFactory.createShaderPassSource(name); - lexer.scanLexeme("{"); - let braceLevel = 1; - - lexer.skipCommentsAndSpace(); - let start = lexer.getShaderPosition(0); - - while (true) { - const token = lexer.scanToken(); - switch (token.type) { - case Keyword.GSVertexShader: - case Keyword.GSFragmentShader: - this._addPendingContents(start, token.lexeme.length, passSource.pendingContents); - lexer.scanLexeme("="); - const entry = lexer.scanToken(); - if (passSource[token.lexeme]) { - const error = ShaderLabUtils.createGSError( - "Reassign main entry", - GSErrorName.CompilationError, - lexer.source, - lexer.getShaderPosition(0) - ); - // #if _VERBOSE - Logger.error(error.toString()); - throw error; - // #endif - } - const key = token.type === Keyword.GSVertexShader ? "vertexEntry" : "fragmentEntry"; - passSource[key] = entry.lexeme; - lexer.scanLexeme(";"); - start = lexer.getShaderPosition(0); - break; - case Keyword.LeftBrace: - ++braceLevel; - break; - case Keyword.RightBrace: - if (--braceLevel === 0) { - this._addPendingContents(start, token.lexeme.length, passSource.pendingContents); - this._popScope(); - return passSource; - } - break; - default: - start = this._parseRenderStateAndTags( - token, - start, - passSource.pendingContents, - passSource.renderStates, - passSource.tags - ); - } - } - } - - private static _parseRenderStateAndTags( - token: BaseToken, - start: ShaderPosition, - outGlobalContents: IStatement[], - outRenderStates: IRenderStates, - outTags: Record - ): ShaderPosition { - switch (token.type) { - case Keyword.GSTags: - this._addPendingContents(start, token.lexeme.length, outGlobalContents); - this._parseTags(outTags); - start = this._lexer.getShaderPosition(0); - break; - default: - start = this._parseRenderState(token, start, outGlobalContents, outRenderStates); - } - return start; - } - - private static _parseRenderState( - token: BaseToken, - start: ShaderPosition, - outGlobalContents: IStatement[], - outRenderStates: IRenderStates - ): ShaderPosition { - switch (token.type) { - case Keyword.GSBlendState: - case Keyword.GSDepthState: - case Keyword.GSRasterState: - case Keyword.GSStencilState: - this._addPendingContents(start, token.lexeme.length, outGlobalContents); - this._parseRenderStateDeclarationOrAssignment(outRenderStates, token); - start = this._lexer.getShaderPosition(0); - break; - case Keyword.GSBlendFactor: - case Keyword.GSBlendOperation: - case Keyword.GSBool: - case Keyword.GSNumber: - case Keyword.GSColor: - case Keyword.GSCompareFunction: - case Keyword.GSStencilOperation: - case Keyword.GSCullMode: - this._addPendingContents(start, token.lexeme.length, outGlobalContents); - this._parseVariableDeclaration(); - start = this._lexer.getShaderPosition(0); - break; - case Keyword.GSRenderQueueType: - this._addPendingContents(start, token.lexeme.length, outGlobalContents); - this._parseRenderQueueDeclarationOrAssignment(outRenderStates); - start = this._lexer.getShaderPosition(0); - break; - default: - // Unrecognized tokens are defined as pending content - this._lexer.hasPendingContent = true; - } - return start; - } -} diff --git a/packages/shader-lab/src/sourceParser/ShaderSourceParser.y b/packages/shader-lab/src/sourceParser/ShaderSourceParser.y deleted file mode 100644 index 462110ea8..000000000 --- a/packages/shader-lab/src/sourceParser/ShaderSourceParser.y +++ /dev/null @@ -1,152 +0,0 @@ -// For cft conflict test, used by bison - -%token shader -%token subshader -%token pass -%token string_const -%token id -%token render_queue_type -%token blend_state -%token depth_state -%token stencil_state -%token raster_state -%token tags -%token INT_CONSTANT -%token FLOAT_CONSTANT -%token true -%token false -%token engine_type -%token render_state_prop_type -%token UsePass -%token Color_init -%token VertextShader -%token FragmentShader - -%token plain_statements - -%% -shader_program: - shader string_const '{' shader_statements '}' - ; - -shader_statements: - shader_statement - | shader_statement shader_statements - ; - -shader_statement: - plain_statements - | global_declaration_in_shader - | subshader string_const '{' subshader_statements '}' - ; - -subshader_statements: - subshader_statement - | subshader_statement subshader_statements - ; - -subshader_statement: - global_declaration - | UsePass string_const - | pass string_const '{' pass_statements '}' - | plain_statements - ; - -pass_statements: - global_declaration - | plain_statements - | main_shader_assignment - ; - -main_shader_assignment: - VertextShader '=' id ';' - FragmentShader '=' id ';' - ; - -global_declaration_in_shader: - // Engine type - variable_declaration - | render_state_assignment - | render_state_declaration - ; - - -global_declaration: - // Engine type - variable_declaration - | render_queue_assignment - | render_state_assignment - | render_state_declaration - | tag_specifier - ; - -tag_specifier: - tags '{' tag_assignment_list '}' - ; - -tag_assignment_list: - /** empty */ - | tag_assignment - | tag_assignment_list ',' tag_assignment - ; - -tag_assignment: - id '=' tag_value - ; - -tag_value: - string_const - | INT_CONSTANT - | true - | false - ; - -render_queue_assignment: - render_queue_type '=' id ';' - ; - -variable_type: - engine_type - | render_state_prop_type - | render_queue_type - ; - -render_state_assignment: - render_state_declarator '=' id ';' - ; - -render_state_declaration: - render_state_declarator id '{' render_state_prop_list '}' - ; - -variable_declaration: - variable_type id ';' - ; - -render_state_declarator: - blend_state - | depth_state - | stencil_state - | raster_state - ; - -render_state_prop_list: - render_state_prop_assignment - | render_state_prop_assignment render_state_prop_list - ; - -render_state_prop_assignment: - render_state_prop '=' id ';' - render_state_prop '=' true ';' - render_state_prop '=' false ';' - render_state_prop '=' INT_CONSTANT ';' - render_state_prop '=' FLOAT_CONSTANT ';' - render_state_prop '=' id '.' id ';' - render_state_prop '=' Color_init; - ; - -render_state_prop: - render_state_prop_type '[' INT_CONSTANT ']' - | render_state_prop_type - ; -%% diff --git a/packages/shader-lab/src/sourceParser/ShaderSourceSymbol.ts b/packages/shader-lab/src/sourceParser/ShaderSourceSymbol.ts deleted file mode 100644 index cbdb196dd..000000000 --- a/packages/shader-lab/src/sourceParser/ShaderSourceSymbol.ts +++ /dev/null @@ -1,21 +0,0 @@ -import { IBaseSymbol } from "../common/IBaseSymbol"; - -export class ShaderSourceSymbol implements IBaseSymbol { - public isInMacroBranch: boolean = false; - - constructor( - public ident: string, - public type: number, - public value?: any - ) {} - - set(ident: string, type: number, value?: any): void { - this.ident = ident; - this.type = type; - this.value = value; - } - - equal(other: ShaderSourceSymbol): boolean { - return this.type === other.type; - } -} diff --git a/packages/shader-lab/src/sourceParser/SourceLexer.ts b/packages/shader-lab/src/sourceParser/SourceLexer.ts deleted file mode 100644 index f0a5bfe7e..000000000 --- a/packages/shader-lab/src/sourceParser/SourceLexer.ts +++ /dev/null @@ -1,215 +0,0 @@ -import { Color } from "@galacean/engine"; -import { ETokenType, ShaderPosition, ShaderRange } from "../common"; -import { BaseLexer } from "../common/BaseLexer"; -import { BaseToken } from "../common/BaseToken"; -import { Keyword } from "../common/enums/Keyword"; -import { GSErrorName } from "../GSError"; -import { ShaderLab } from "../ShaderLab"; -import { ShaderLabUtils } from "../ShaderLabUtils"; - -export default class SourceLexer extends BaseLexer { - hasPendingContent = false; - - private static _keywordLexemeTable = >{ - RenderQueueType: Keyword.GSRenderQueueType, - BlendState: Keyword.GSBlendState, - DepthState: Keyword.GSDepthState, - StencilState: Keyword.GSStencilState, - RasterState: Keyword.GSRasterState, - EditorProperties: Keyword.GSEditorProperties, - EditorMacros: Keyword.GSEditorMacros, - Editor: Keyword.GSEditor, - Tags: Keyword.GSTags, - VertexShader: Keyword.GSVertexShader, - FragmentShader: Keyword.GSFragmentShader, - SubShader: Keyword.GSSubShader, - Pass: Keyword.GSPass, - BlendFactor: Keyword.GSBlendFactor, - BlendOperation: Keyword.GSBlendOperation, - Bool: Keyword.GSBool, - Number: Keyword.GSNumber, - Color: Keyword.GSColor, - CompareFunction: Keyword.GSCompareFunction, - StencilOperation: Keyword.GSStencilOperation, - CullMode: Keyword.GSCullMode, - UsePass: Keyword.GSUsePass, - - true: Keyword.True, - false: Keyword.False - }; - - private static _symbolLexemeTable = >{ - "{": Keyword.LeftBrace, - "}": Keyword.RightBrace, - "=": Keyword.Equal - }; - - private static _isWordSeparatorChar(charCode: number): boolean { - return ( - charCode === 123 || // { - charCode === 125 || // } - charCode === 61 || // = - charCode === 59 || // ; - charCode === 46 || // . CullMode.Back - charCode === 91 || // [ Enabled[0], - charCode === 40 // ( Color(1.0, 1.0, 1.0, 1.0); - ); - } - - private static _scanDigits(source: string, startIndex: number): number { - let currentIndex = startIndex; - while (currentIndex < source.length) { - const charCode = source.charCodeAt(currentIndex); - if (BaseLexer.isDigit(charCode)) { - currentIndex++; - } else { - break; - } - } - return currentIndex; - } - - scanNumber(): number { - this.skipCommentsAndSpace(); - const start = this._currentIndex; - const source = this._source; - let index = this._currentIndex; - - // Scan integer part - index = SourceLexer._scanDigits(source, index); - - // Scan decimal part if present - if (source[index] === ".") { - index = SourceLexer._scanDigits(source, index + 1); - } - - this.advance(index - this._currentIndex); - return Number(source.substring(start, index)); - } - - scanColor(): Color { - this.scanLexeme("("); - - let r = 0; - let g = 0; - let b = 0; - let a = 1; - - r = this.scanNumber(); - this.skipCommentsAndSpace(); - if (this.peek(1) !== ")") { - this.scanLexeme(","); - g = this.scanNumber(); - this.skipCommentsAndSpace(); - if (this.peek(1) !== ")") { - this.scanLexeme(","); - b = this.scanNumber(); - this.skipCommentsAndSpace(); - if (this.peek(1) !== ")") { - this.scanLexeme(","); - a = this.scanNumber(); - this.skipCommentsAndSpace(); - } - } - } - - this.scanLexeme(")"); - return new Color(r, g, b, a); - } - - override scanToken(): BaseToken { - while (true) { - this.skipCommentsAndSpace(); - - if (this.isEnd()) { - return; - } - - const start = this.getShaderPosition(0); - if (BaseLexer.isAlpha(this.getCurCharCode())) { - const wordToken = this._scanWord(start); - if (wordToken !== null) { - return wordToken; - } - this.hasPendingContent = true; - continue; // Continue loop to scan next token if word was invalid - } - - const currentChar = this.getCurChar(); - const symbolKeyword = SourceLexer._symbolLexemeTable[currentChar]; - if (symbolKeyword !== undefined) { - this.advance(1); - const token = BaseToken.pool.get(); - token.set(symbolKeyword, currentChar, start); - return token; - } - - // Skip unrecognized character and continue - this.advance(1); - } - } - - // #if _VERBOSE - scanToCharacter(char: string): void { - while (this.getCurChar() !== char && !this.isEnd()) { - this.advance(1); - } - this.advance(1); - } - // #endif - - createCompileError(message: string, location?: ShaderPosition | ShaderRange) { - return ShaderLabUtils.createGSError( - message, - GSErrorName.CompilationError, - this.source, - location ?? this.getShaderPosition(0) - ); - } - - private _scanWord(start: ShaderPosition): BaseToken | null { - // Scan the complete word first - while (BaseLexer.isAlnum(this.getCurCharCode()) && !this.isEnd()) { - this.advance(1); - } - const end = this.getShaderPosition(0); - - // Validate both boundaries in one optimized call - if (!this._validateWordBoundaries(start.index, end.index)) { - return null; // Invalid word due to boundary violation - } - - const lexeme = this._source.substring(start.index, end.index); - const tokenType = SourceLexer._keywordLexemeTable[lexeme] ?? ETokenType.ID; - const range = ShaderLab.createRange(start, end); - const token = BaseToken.pool.get(); - token.set(tokenType, lexeme, range); - return token; - } - - private _validateWordBoundaries(startIndex: number, endIndex: number): boolean { - const source = this._source; - - // Check previous boundary - if (startIndex > 0) { - const prevCharCode = source.charCodeAt(startIndex - 1); - if (!this._isValidWordBoundary(prevCharCode)) { - return false; - } - } - - // Check next boundary - if (endIndex < source.length) { - const nextCharCode = source.charCodeAt(endIndex); - if (!this._isValidWordBoundary(nextCharCode)) { - return false; - } - } - - return true; - } - - private _isValidWordBoundary(charCode: number): boolean { - return BaseLexer.isWhiteSpaceChar(charCode, true) || SourceLexer._isWordSeparatorChar(charCode); - } -} diff --git a/packages/shader-lab/src/sourceParser/index.ts b/packages/shader-lab/src/sourceParser/index.ts deleted file mode 100644 index f066c4964..000000000 --- a/packages/shader-lab/src/sourceParser/index.ts +++ /dev/null @@ -1 +0,0 @@ -export { ShaderSourceParser } from "./ShaderSourceParser"; diff --git a/packages/shader-lab/tsconfig.json b/packages/shader-lab/tsconfig.json deleted file mode 100644 index f959fa90c..000000000 --- a/packages/shader-lab/tsconfig.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "compilerOptions": { - "module": "esnext", - "target": "esnext", - "declaration": true, - "moduleResolution": "node", - "allowSyntheticDefaultImports": true, - "experimentalDecorators": true, - "declarationDir": "types", - "emitDeclarationOnly": true, - "noImplicitOverride": true, - "sourceMap": true, - "incremental": false, - "skipLibCheck": true, - "stripInternal": true - }, - "include": ["src/**/*"], - "ts-node": { - "compilerOptions": { - "module": "commonjs", - "esModuleInterop": true - }, - "files": true - } -} diff --git a/packages/shader-lab/verbose/package.json b/packages/shader-lab/verbose/package.json deleted file mode 100644 index 6a46602bd..000000000 --- a/packages/shader-lab/verbose/package.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "license": "MIT", - "main": "../dist/main.verbose.js", - "module": "../dist/module.verbose.js", - "browser": "../dist/browser.verbose.min.js", - "debug": "../src/index.ts", - "types": "../types/index.d.ts", - "umd": { - "name": "Galacean.ShaderLab", - "globals": { - "@galacean/engine": "Galacean" - } - } -} diff --git a/rollup.config.js b/rollup.config.js index 7c24b8d00..00fabe269 100644 --- a/rollup.config.js +++ b/rollup.config.js @@ -24,8 +24,8 @@ const pkgs = fs }; }); -const shaderLabPkg = pkgs.find((item) => item.pkgJson.name === "@galacean/engine-shaderlab"); -pkgs.push({ ...shaderLabPkg, verboseMode: true }); +// const shaderLabPkg = pkgs.find((item) => item.pkgJson.name === "@galacean/engine-shaderlab"); +// pkgs.push({ ...shaderLabPkg, verboseMode: true }); // toGlobalName const extensions = [".js", ".jsx", ".ts", ".tsx"]; @@ -170,6 +170,7 @@ switch (BUILD_TYPE) { function getUMD() { const configs = pkgs.filter((pkg) => pkg.pkgJson.umd); + console.log(configs); return configs .map((config) => makeRollupConfig({ ...config, type: "umd" })) .concat(